AMR Basics in GSM: Adaptive Multi-Rate Explained
Advertisement
This page describes the basics of Adaptive Multi-Rate (AMR) in GSM technology.
Overview of AMR
The Adaptive Multi-Rate (AMR) concept is utilized in GSM mobile systems, where the speech codec rate is dynamically adjusted based on the signal quality, specifically the Carrier-to-Interference ratio (C/I).
Different rates are available, each offering a varying degree of redundancy depending on the required error correction capability as determined by the C/I. In AMR, the speech codec can be changed either by the network or by the GSM mobile device itself. This adjustment occurs every two speech frames.
Codec Mode Request and Indication
If the change is initiated by the mobile device:
- The Mobile sends a Codec Mode Request (CMR) to the network (i.e., the BTS - Base Transceiver Station).
- The BTS responds with a Codec Mode Indication (CMI).
If the change is initiated by the network:
- The BTS sends a Codec Mode Command (CMC) to the mobile device.
AMR Modes
There are 14 modes in the AMR speech codec:
- 8 in full rate (AMR narrowband)
- 6 in half rate (AMR wideband)
AMR uses Discontinuous Transmission (DTx) in conjunction with Voice Activity Detection (VAD) and Comfort Noise Generation (CNG) to reduce bandwidth usage.
AMR Speech Codec Rates
AMR Speech codec rate | Channel type (Full rate (FR) / Half rate (HR)) |
---|---|
4.75 | FR/HR |
5.15 | FR/HR |
5.9 | FR/HR |
6.7 | FR/HR |
7.4 | FR/HR |
7.95 | FR/HR |
10.2 | FR |
12.2 | FR |
AMR Operation in Poor C/I Conditions
AMR is based on the principle that when the C/I ratio is poor:
- Speech coding complexity can be decreased to enhance channel coding.
- The overall result is improved voice quality in terms of Frame Error Rate (FER).
For AMR, the speech and channel coding data rates are dynamically adapted to best suit the prevailing RF channel conditions.
AMR and Channel Coding
AMR consists of a family of codecs with different channel coding schemes operating in GSM Full Rate (FR) and Half Rate (HR) channels. The aim is to improve the channel (FR/HR) quality by adapting the most appropriate channel codec based on the current radio conditions.
With AMR, speech capacity is increased by using the half rate (HR) mode while maintaining the quality level of current FR calls. The idea behind the AMR codec concept is that it is capable of adapting its operation optimally according to the prevailing channel conditions. The speech coder is theoretically capable of switching its bit-rate every 20 ms speech frame upon command.
Frame Formats in AMR
TCH/AFS Frame Format Description
Description | |
---|---|
SID_UPDATE | Used to convey comfort noise parameters during DTX |
SID_FIRST | Marker to define the end of speech and the start of DTX |
ONSET | Used to signal the codec mode for the first speech frame after DTX |
RATSCCH | Frames used to convey RATSCCH messages |
SPEECH | Speech frames |
TCH/AHS Frame Format Description
Description | |
---|---|
SID_UPDATE | Used to convey comfort noise parameters during DTX |
SID_UPDATE_INH | Used to inhibit the second part of a SID_UPDATE frame if there is speech onset |
SID_FIRST_P1 | First part of the marker to define the end of speech and the start of DTX |
SID_FIRST_INH | Used to inhibit the second part of a SID_FIRST_P1 frame if there is a speech onset |
SID_FIRST_P2 | Second part of the marker to define the end of speech and the start of DTX |
ONSET | Used to signal the codec mode for the first speech frame after DTX |
SPEECH | Speech frames |
RATSCCH_MARKER | Marker to identify RATSCCH frames |
RATSCCH_DATA | Frame that conveys the actual RATSCCH message |
AMR Bit Rates and Protection Classes
- The protection classes are:
- Class 1a: Data protected with CRC (Cyclic Redundancy Check) and the convolution code
- Class 1b: Data protected with the convolution code
- Class 2: Data sent without protection
AMR Thresholds and Hysteresis Values
- Thresholds (6-bits per threshold): steps: 0.5 dB, range: 0 to 63
- Hysteresis (4-bits per hysteresis): steps: 0.5 dB, range: 0 to 15
- Thresholds and hysteresis are used for the link rate adaptation
- Hysteresis values are given to prevent toggling between neighboring codec modes.
Setup Procedures for AMR
- AMR Channel Parameters are provided by the BTS to the MS (Mobile Station) during call setup and/or handover using layer3 signaling.
- These channel parameters can be changed during a call using RATSCCH signaling.
- AMR Channel Parameters include:
- ACS (Active Codec Set)
- Thresholds/Hysteresis: Used to move from one codec mode to another by changing the C/I.
- ICM (Initial Codec Mode)
Active Codec Set (ACS)
- ACS is a set of 1 to 4 codecs to be used during communication.
- The link-rate adaptation will be done among these codecs.
- The same ACS is valid for UL (Uplink) and DL (Downlink). This does not mean that the same codec is used simultaneously for UL and DL.
- Generally represented as a bit-field of 8 bits, each bit representing a codec: 12.2 ->10.2->7.95->7.40->6.70->5.90->5.15->4.75
Example: If ACS = 0xA5, then ACS is (12.2, 7.95, 5.90, 4.75), where CODEC_MODE1 (lowest bit rate) = 4.75, CODEC_MODE2 = 5.90, and so on.
References
3GPP 51.010 specifications, 26.16.2