AMR basics in GSM
This page describes AMR(Adaptive Multi-Rate) basics in GSM technology. It covers various speech codec AMR rates supported in GSM.
AMR(Adaptive Multi-Rate) concept is used in GSM mobile, where speech codec rate is changed based on signal quality(i.e. C/I). Different rates are available based on redundancy required to be introduced based on carrier to interference ratio(C/I), which provides less or more error correction capability.
In AMR, speech codec can be changed either by network or by GSM mobile.It is changed every two speech frames. If it is mobile initiated then, Mobile sends CMR(Codec Mode Request) to the network(i.e. BTS) and BTS responds with CMI(Codec Mode Indication). If it is network initiated then, BTS sends CMC(Codec Mode Command) to the mobile.
There are 14 modes in AMR speech codec, 8 in full rate(AMR narroband) and 6 in half rate(AMR wideband).
AMR uses DTx(discontinuous transmission) along with VAD(voice activity detection) and CNG(comfort noise generator to reduce
BW(bandwidth) usage.
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 |
The AMR is based on the fact that in poor C/I:
• Speech coding can be decreased in order to improve channel coding
• Overall result is an improved voice quality (in terms of FER)
• For AMR, the speech and channel coding data rates are dynamically adapted to best fit
the current RF channel conditions.
AMR consists on a family of codec with different Channel Coding operating in GSM Full Rate (FR) and Half Rate (HR). The aim is to improve channel (FR/HR) quality by adapting the most appropriate channel codec based on the current radio conditions.
With AMR, the speech capacity is increased by using the half rate (HR) mode and still 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 capable (theoretically) of switching its bit-rate every 20 ms speech frame upon command.
Frame Formats in AMR
TCH/AFS Frame Format | Description |
---|---|
SID_UPDATE | Used to convey comfort noise parameters during DTX |
SID_FIRST | Marker to define end of speech,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 |
---|---|
SID_UPDATE | Used to convey comfort noise parameters during DTX |
SID_UPDATE_INH | Used to inhibit second part of a SID_UPDATE frame if there is speech onset |
SID_FIRST_P1 | First part of marker to define end of speech,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 marker to define end of speech,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
• The protection classes are :
• Class 1a - Data protected with the CRC 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 given by BTS to MS during call setup and/or handover
by layer3 signalling.
• These channel parameters can be changed during a call using RATSCCH signalling.
• AMR Channel Parameters are:
• ACS (Active Codec Set)
• Thresholds/Hysteresis is the one used to move from one codec mode to the other by changing C/I.
• ICM (Inital Codec Mode)
• ACS
• set of 1 to 4 codecs to be used during the communication.
The link-rate adaptation will be done among these codecs.
• The same ACS is valid for UL and DL (this does not means that
the same codec is used simultaneously for UL and DL)
• Generally represented as a bit-field of 8 bits, each one 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.
Reference
3GPP 51.010 specifications, 26.16.2
GSM RELATED LINKS
GSM protocol stack GSM physical layer GPRS protocol stack GPRS tutorial