You are on page 1of 15

TIA/EIA-136-440

Figure 1.

Definition of Threshold and Hysteresis for Codec Mode


Adaptation

C/(I+N)norm
CODEC_MODE_4
THR_3 + HYST_3 = THR_MX_Up(3)
THR_3

= THR_MX_Dn(4)

CODEC_MODE_3
THR_2 + HYST_2 = THR_MX_Up(2)
THR_2

CODEC_MODE_2

= THR_MX_Dn(3)

THR_1 + HYST_1 = THR_MX_Up(1)


THR_1

CODEC_MODE_1

= THR_MX_Dn(2)

There are only two rules for the switching thresholds.


The switching threshold values shall be given by the network in a ascending order such
that:
THR_1 THR_2 THR_3
and:

(THR_1 HYST_1) (THR_2 HYST_2) (THR_3 HYST_3)


The thresholds and hysteresises use the following format:
Table 1.

Definition of Threshold and Hysteresis

Parameter
name

Description

Range

Bits

THR_1/2/3

Lowerthresholdsforswitching
betweenmodejandj1

063

HYST_1/2/3

Hysteresisvaluestoobtainthehigher
thresholdsforswitchingbetweenmode
jandj+1

015

A threshold (THR) is given as an absolute value in 0.5 dB steps. The THR values
between 0 and 63 shall be mapped to normalized C/(I+N) values as follows:

TIA/EIA-136-440

Table 2.

Encoding of Thresholds
Value
(integer)

Encoding
(binary)

Threshold

THR1/2/3

000000

0.0dB

THR1/2/3

000001

0.5dB

THR1/2/3

000010

1.0dB

THR1/2/3

62

111110

31.0dB

THR1/2/3

63

111111

31.5dB

NOTE: The threshold for codec mode j should be set to a normalized C/(I+N) value
where the speech quality of speech codec mode j-1 is better.
A hysteresis parameter is given 0.5 dB steps. The HYST values between 0 and 15 shall be
encoded as follows:
Table 3.

Encoding of Hysteresis
Value
(integer)

Encoding
(binary)

Hysteresis

HYST1/2/3

0000

0.0dB

HYST1/2/3

0001

0.5dB

HYST1/2/3

0010

1.0dB

HYST1/2/3

14

1110

7.0dB

HYST1/2/3

15

1111

7.5dB

If a common hysteresis is signaled, then this value shall be used for all hysteresises.
If a handoff is made without signaling new thresholds and hysteresises, then the
thresholds and hysteresises from before the handoff shall be used.

1.1

Inband Signaling
The inband signaling for AMR on full-rate and AMR on half-rate downlink uses the same
alternating transmission of Codec Mode Indication and Codec Mode Command/Request
as for GSM.
For AMR on half-rate uplink, since two speech frames are encoded and transmitted
together, both Codec Mode Indication and Codec Mode Request are transmitted every
time together with the speech data.

TIA/EIA-136-440

Channel coding for the inband channel is defined in Section Error: Reference source not
found for the uplink and in Section Error: Reference source not found for the downlink.

1.2

Out-of-Band Signaling
There are two types of out-of-band signaling carried in FACCH messages; codec mode
information during DTX and AMR Configuration using FACCH.

1.2.1 Inband Signaling During DTX


When DTX is used, both Codec Mode Indication and Codec Mode Command/Request
shall be transmitted together with the AMR comfort noise FACCH message, as defined in
TIA/EIA-136-133.
When the speech encoder goes from DTX-low to DTX-high, the applied codec mode
shall be the same as indicated in the last comfort noise message, unless the codec is also
transmitting a new Codec Mode Indication in the first speech frame after DTX-low.
ONSET frames, as defined in GSM 06.93, are not used.

1.2.2 AMR Configuration Using FACCH


The AMR Active Codec Set, Initial Codec Mode, upper and lower decision thresholds
and hysteresises may be changed during an ongoing call without interruption of the
speech transmission by using the Countdown Status IE in the AMR Configuration Order
FACCH message.
The configuration is done by sending FACCH messages, see EIA/TIA 136-133.

1.3

Codec Mode Adaptation

1.3.1 Channel Quality Measure


Codec mode adaptation is based on a normalized, one-dimensional measure of the
channel quality, called the Quality Indicator. For reference purposes, the Quality Indicator
is defined as an equivalent carrier-to-impairment ratio, C /( I N ) norm . The MS and BS
shall continuously update the Quality Indicator estimates.
The Quality Indicator may be derived from an estimate of the current carrier-toimpairment ratio, C /( I N ) est , or an estimate of the current raw bit error rate,

BERest . A fixed normalization factor may be applied between the estimate,


C /( I N ) est or BERest , and the Quality Indicator to compensate for higher receiver
performance, see Section 1.3.3.
A second normalization factor should be applied to normalize the estimate with respect to
different channel types, such that, with given C /( I N ) norm and given codec mode,

TIA/EIA-136-440

the FER after channel decoding becomes independent of the channel type. An example of
channel quality measuring is given in Annex A.

1.3.2 Generation of Codec Mode Commands and Requests


For codec mode adaptation, the channel Quality Indicators are mapped to Codec Mode
Commands/Requests, by quantizing the Quality Indicators. The output values of the
quantizer shall represent the different codec modes.
Hysteresis in the mapping from Quality Indicators to Codec Mode Commands/Requests
should be used to prevent undesirable fast switching of Codec Mode Commands/
Requests. The hysteresis in the mapping is defined in the following way:
The previously sent Codec Mode Command, CMC (respectively Codec Mode Request,
CMR) is used as the current state of the adaptation logic. For each state, lower and upper
thresholds THR_MC_Dn(CMC) and THR_MC_Up(CMC) for the downlink, and
THR_MR_Dn(CMR) and THR_MR_Up(CMR) for the uplink are defined, see Section
Error: Reference source not found. If the measure falls below the lower threshold, the
next lower Codec Mode Command/Request commanding/requesting a more robust codec
mode shall be generated. If the measure exceeds the upper threshold, then the next higher
Codec Mode Command/Request commanding/requesting a less robust codec mode shall
be issued: otherwise, the previous Codec Mode Command/Request shall be repeated.
The degree of hysteresis is controlled by appropriately setting the upper and lower
decision thresholds. The thresholds shall be defined by layer 3 signaling at call setup, and
may be modified at handoff or during an ongoing call, as defined in Section 1.2.2. An
example of decision thresholds is given in Annex B.
For reasons of channel error robustness of the codec mode information, both Codec Mode
Commands and Requests shall be restricted to change at maximum to their nearest
neighbors within the Active Codec Set. This means that mode switches to modes that are
not direct neighbors to the previously transmitted mode shall be avoided. Exceptions may
occur at handoff and when the AMR configuration is changed.

1.3.3 Reference C/(I+N) Performance


These tables show the reference C/(I+N) in dB corresponding to 1% FER for every mode.
Table 4.
Link
Mode
MR122
MR102
MR795
MR74
MR67
MR59
MR515
MR475

Reference C/(I+N) Performance for Full-Rate


Downlink
(2-slot interleaving)
10 Hz
180 Hz
18.7
12.2
16.6
10.4
15.1
9.1
14.7
8.2
14.0
8.0
13.5
7.1
12.0
5.8
11.6
5.0

Uplink
(2-slot interleaving)
10 Hz
180 Hz
20.5
13.3
17.1
10.7
16.0
9.9
15.6
9.0
14.9
8.4
14.3
7.4
12.7
6.1
12.3
5.8

TIA/EIA-136-440

Table 5.
Link
Mode
MR795
MR74
MR67
MR59
MR515
MR475

Reference C/(I+N) Performance for Half-Rate


Downlink
10 Hz
180 Hz
22.1
16.2
20.0
14.9
18.9
14.4
16.9
12.5
15.1
10.5
14.3
9.8

Uplink
10 Hz
180 Hz
26.0
18.5
23.3
15.6
21.7
14.3
19.2
13.0
16.4
11.1
15.7
10.6

The difference between this reference performance and the performance of the used
receiver gives the normalization factor to be used when compensating for differences in
receiver performance.

1.3.4 Performance Requirements


The following sections define the link adaptation behavior for both the MS and the BS.
1.3.4.1 Performance of the Codec Mode Request Generation
For a flat fading channel without DTX activated, the MS shall produce Codec Mode
Requests with the following accuracy:

When a carrier-to-impairment ratio, C/(I+N), of 4 dB higher than a defined upper


threshold is applied to the antenna connector, the MS shall request a higher mode
with a probability exceeding 90%. This shall be measured immediately after a
settling-time of 200 ms.

When a carrier-to-impairment ratio, C/(I+N), of 4 dB lower than a defined lower


threshold is applied to the antenna connector, the MS shall request a lower mode
with a probability exceeding 90%. This shall be measured immediately after a
settling-time of 200 ms.

1.3.4.2 MS Response to the Codec Mode Command


The MS shall after the reception of a Codec Mode Command apply the corresponding
codec mode in uplink direction for the next possible speech frame, and no more than
three speech frames later. This shall be independent of whether TFO is ongoing or not. If
the Codec Mode Command would require a change of the uplink codec mode by more
than one step within the defined Active Codec Set, then the MS shall perform the
transition from the currently used codec mode into the commanded codec mode in
several steps, one step occurring during every second speech frame. Exceptions may
occur only at call setup and after handoff and when the AMR configuration is modified.
1.3.4.3 BS Response to the Codec Mode Request
The BS should apply the requested mode for the earliest possible speech frame, unless
the BS intends to override the Codec Mode Request from the MS due to network control
needs.

TIA/EIA-136-440

1.4

Transmitter/Receiver Inband Channel Synchronization


The alternating transmission of codec mode information for full-rate downlink, full-rate
uplink and half-rate downlink requires that the transmitter and receiver be synchronized.
For half-rate uplink there is no need for synchronization of the speech encoder and
decoder since both Codec Mode Indication and Codec Mode Request are sent with every
pair of speech frames in the same time slot.
To assist the synchronization process, 8PSK full-rate channels and 8PSK half-rate
channels will always use different synchronization words for the two time slots in the pair
of time slots in the TDMA frame that is used for the channel, see TIA/EIA-136-131.
In a TDMA frame, we will refer to:
Sending CMI in time slot 1,2 or 3 and sending CMC/CMR in time slot 4,5 or 6 as the
odd phase
Sending CMC/CMR in time slot 1,2 or 3 and sending CMI in time slot 4,5 or 6 as the
even phase.
The speech encoder shall synchronize the codec mode switching to the Codec Mode
Indication, so that the new codec mode is used only when a new Codec Mode Indication
is sent. Thus, the codec mode, indicated by the Codec Mode Indication, is valid both for
the current and for the following speech frame. For half-rate uplink, since two speech
frames are channel encoded and transmitted together as a pair, the Codec Mode
Indication applies to both speech frames.
The default phase for full-rate downlink and half-rate downlink shall be odd. The
default phase is used at call setup and after every handoff. The phase may be changed by
sending the AMR phase change order FACCH message, see TIA/EIA-136-133. In case of
handoff failure and fall back to the previous BS, the phase used before the handoff
attempt shall restored.
The phase in the full-rate uplink is odd and is never changed.

TIA/EIA-136-440

2.

Optimization for Tandem Free Operation


The following sections define procedures to enhance tandem free operation (TFO).

2.1

Operation with Ongoing TFO


If tandem free operation is ongoing, the speech signal has to be transmitted over two
radio links, first uplink (MS1 to BS1) and then downlink (BS2 to MS2), respectively
symmetrically in the reverse direction. The optimal Codec Mode in direction MS1 to
MS2 shall be derived from the Codec Mode Command for the first uplink (CMC1, within
BS1). The optimal Codec Mode Request is derived for the second downlink (CMR2
within MS2) in the following way:
MS2 shall send the CMR2 to BS2 in the usual way. BS2 shall either accept this CMR2
(default) or may modify it according to network control needs: CMR2. Then BS2 shall
send the CMR2 further uplink to its TRAU2, to TRAU1 and downlink to BS1. BS1
combines the received CMR2 with its own derived CMC1 by taking the minimum of
both values. If needed, BS1 may modify this minimum value according to own network
control (--> CMC1) and shall send it finally downlink to MS1 as CMC. The identical
procedure shall be performed in the reverse direction.

2.2

DTX with Ongoing TFO


To support DTX during TFO with other AMR capable systems, the following are
required:

2.3

If an AMR Implicit Comfort Noise FACCH message is generated by a TDMA


mobile, it shall be forwarded to the other mobile. A SID_FIRST message, for
example as defined in GSM 06.93, may have to be generated by the TDMA BS to be
transmitted to the other BS.

If a SID_FIRST frame is received in the TDMA BS from, for example, a GSM MS,
the BS shall replace it with an AMR Implicit Comfort Noise FACCH message, which
is then sent to the TDMA MS.

ONSET frames, as defined in GSM, are not forwarded to the TDMA MS, nor are
they generated by the TDMA MS.

Comfort Noise in DL with TFO


In case of TFO with other AMR capable systems, the base station shall do the following
in DL to support DTX:

The base station shall pass the comfort noise parameters to the mobile as FACCH
messages.

The BS shall send FACCH filler messages in-between the Comfort Noise FACCH
messages.

The MS shall support comfort noise generation in DL.

TIA/EIA-136-440

2.4

Operation during Handoff with Ongoing TFO


Before and during a handoff, at one or both sides of the MS-to-MS connection, it may be
necessary to freeze the codec mode adaptation for a short while; e.g. to optimize the
common Active Codec Set, or to allow fast (re-)synchronization of speech and channel
codecs in the BSs and MSs, or to optimize the CMI/CMC phase in downlink. Therefore,
both BSs may enable or disable the codec mode adaptation by sending the freeze order
FACCH message. As long as the codec mode adaptation is frozen to a specific codec
mode, indicated by the codec mode IE in the freeze order, then this codec mode shall be
used in both directions as long as tandem free operation is ongoing, otherwise tandem
free operation shall be discontinued. The Codec Mode Requests from the MSs may be
taken into account so as to decide whether to continue TFO or not, but not for codec
mode adaptation.

TIA/EIA-136-440

3.

Channel Coding
The channel error control for the speech codec data defined in this standard employs
three techniques for the mitigation of channel errors.

The first technique is to use a convolutional code to protect the more vulnerable bits
of the speech codec data stream.

The second technique interleaves the transmitted data for each speech codec frame
over two or three time slots to mitigate the effects of Rayleigh fading.

The third technique employs the use of a cyclic redundancy check over some of the
most perceptually significant bits of the speech codec output.

After the error correction is applied at the receiver, these cyclic redundancy bits are
checked to see if the most perceptually significant bits were received properly.
The channel error control for the inband signaling defined in this standard employs two
techniques for the mitigation of channel errors.

The first technique is to use a block code to protect the information.

The second technique interleaves the transmitted data for each speech codec frame
over two or three time slots, in the same way as is done for the speech data.

For the MS, it is mandatory to support both 2-slot interleaving and 3-slot interleaving.

TIA/EIA-136-440

3.1

3.2

Definitions of Terms, Nomenclature and Assumptions


S

Datablockoutputfromsubjectivesorting

S1

Datablockoutputfromsubjectivesortingforfirstframein
HRUL(twospeechframesareencodedsimultaneously)

S2

Datablockoutputfromsubjectivesortingforsecondframe
inHRUL(twospeechframesareencodedsimultaneously)

Paritybits(7),outputfromCRCcalculation

P1

Paritybits(7),outputfromCRCcalculationforfirstframein
HRUL(twospeechframesareencodedsimultaneously)

P2

Paritybits(7),outputfromCRCcalculationforsecond
frameinHRUL(twospeechframesareencoded
simultaneously)

Codedbits,outputfromconvolutionalencoder

ID

Inputinbandbits(2forfullrateuplink,fullratedownlink
andhalfratedownlink,2+2forhalfrateuplink)

IC

Codedinbandbits(16forfullrateuplinkandfullrate
downlink,8forhalfratedownlink,8+8forhalfrateuplink)

Blockofmergedbits(codedbitsC,class2bitsandcoded
inbandbitsIC).

Blockofbitstobeconvolutionallyencoded,consistsofthe
class1bitsandthe7CRCbits

G0..G3

Polynomialsforconvolutionalencodingforuplink,
constraintlengthK=6.

G4..G7

Polynomialsforconvolutionalencodingfordownlink,
constraintlengthK=7.

Overview
The channel encoding is done in the following steps:
1.

Subjective ordering of the bits from the speech encoder; the most sensitive bit is
placed first in the output block and the least sensitive bit is placed last. See Section
3.4.

2.

Classification to class 1 and class 2 (if applicable) bits. The class 1 bits are the bits
that use the convolutional code for error correction. The class 2 bits (if used; not all
full-rate modes use class 2 bits) are sent unprotected over the channel. See Sections
3.5.1 and Error: Reference source not found.

3.

Calculation of CRC. The class 1 bits are further divided into two classes: the
perceptually most sensitive bits, the class 1a bits, over which the CRC is calculated,
and the remaining class 1 bits which are called the class 1b bits. See Sections 3.5.2
and Error: Reference source not found.

4.

Convolutional encoding with a rate 1/2, 1/3 or 1/4 convolutional code for the class 1
bits and the CRC bits. See Sections 3.5.3 and Error: Reference source not found.

10

TIA/EIA-136-440

5.

Channel encoding for the inband channel. See Sections Error: Reference source not
found and Error: Reference source not found.

6.

Puncturing and mapping to 8PSK symbols. See Sections Error: Reference source not
found and Error: Reference source not found.

7.

Interleaving. See Sections Error: Reference source not found and Error: Reference
source not found.

8.

Mapping to time slot format. See Sections Error: Reference source not found and
Error: Reference source not found.

The channel decoding is the reversed process. The fact that the inband channel is decoded
before the speech data allows decoding of the speech data with knowledge of the applied
mode.

3.3

Interleaving Options
If the MS support AMR on full-rate, it shall support the following interleaving formats:
Table 6.

Interleaving Formats for Full-rate

Formatnumber

Description

1
(default)

2slotinterleavingfortheuplink
2slotinterleavingforthedownlink

2slotinterleavingfortheuplink
3slotinterleavingforthedownlink

3slotinterleavingfortheuplink
2slotinterleavingforthedownlink

3slotinterleavingfortheuplink
3slotinterleavingforthedownlink

The interleaving format to be used is defined at call setup and may be changed at handoff, see Extended Voice Mode in TIA/EIA-136-123.
If the MS support AMR on half-rate, it shall support the following interleaving format:
Table 7.

Interleaving Format for Half-rate

Formatnumber

Description

1
(mandatory)

2slotinterleavingfortheuplink
3slotinterleavingforthedownlink

11

TIA/EIA-136-440

3.4

Subjective Ordering
The first step in the error correction process is to sort the speech codec bits into
subjective sensitivity order, so that the most sensitive bits are placed first in the
subjectively sorted vector and the least sensitive bits are placed last in the subjectively
sorted vector. See the following GSM specifications, see Section Error: Reference source
not found:
GSM05.03,version7.1.1
Tables714

Channelcoding

The subjective ordering is defined in the above referenced document and is identical for
both uplink, downlink, full-rate and half-rate. The sorting procedure produces the block
S(0)...S(N-1), where N is the number of bits produced by the speech encoder for each
mode as shown in the table below:
Table 8.

Speech Encoder Frame Size for Each Mode


Mode

Numberofbitsineachframe
(N)

MR122

244

MR102

204

MR795

159

MR74

148

MR67

134

MR59

118

MR515

103

MR475

95

.
The ordering algorithm is in pseudo code as:
Fork=0toN1
S(k):=input_data(table(k)+1);

where input data is the speech encoded bits produced by the speech encoder in the order
described in GSM 06.90, and table(k) is read line by line left to right.
Note that input_data is a vector from 1N, while the sorting table has values from
0N-1.

12

TIA/EIA-136-440

3.5

Channel Coding Mobile Station


An overview of the full-rate and half-rate uplink channel encoding is given in Figure 2.
and Figure 3..
Figure 2.

Speech
frame
95..244
bits

Subjective
ordering
In:
95..244 bits
Out:
95..244 bits

class 1a

Overview of the Full-rate Uplink Channel Encoding

CRC
7 bits

Convolutional
code
In:
102..191 bits
Out:
360..501 bits

class 1b

Puncturing and
mapping to
symbols
In:
406..521 bits
Out:
124 symbols

class 2
Inband
data
2 bits

Symbol
interleaving
In:
124 symbols
Out:
124 symbols

Block code
In: 2 bits
Out: 16 bits

Figure 3.

2 Speech
frame
190..318
bits

Subjective
ordering
In:
190..318
bits
Out:
190..318
bits

class 1a

class 1b

class 2
Inband
data
4 bits

Overview of the Half-rate Uplink Channel Encoding

CRC
7+7
bits

Convolutional
code
In:
180..218 bits
Out:
370..446 bits

Puncturing and
mapping to
symbols
In:
410..560 bits
Out:
129 symbols
(some bits
unused)

Symbol
interleaving
In:
129 symbols
Out:
129 symbols

Block code
In: 2+2 bits
Out: 8+8 bits

13

TIA/EIA-136-440

3.5.1 Speech Data Classes


The second step in the error correction process is the separation of the N-bit speech codec
frames information into class 1 bits and class 2 bits (if applicable). The class 1 bits are
further divided into class 1a and class 1b bits. The following bit classifications are used:
Table 9.

Bit Classification for Full-rate Uplink

Mode

Numberof
bitsclass1
(N1)

Numberof
bitsclass1a
(N1A)

Numberof
bitsclass1b
(N1B)

Numberof
bitsclass2
(N2)

MR122

184

81

103

60

MR102

168

65

103

36

MR795

155

70

85

MR74

148

55

93

MR67

134

55

79

MR59

118

55

63

MR515

103

45

58

MR475

95

40

55

Table 10.

Bit Classification for Half-rate Uplink

Mode

Numberof
bitsclass1
(N1)

Numberof
bitsclass1a
(N1A)

Numberof
bitsclass1b
(N1B)

Numberof
bitsclass2
(N2)

MR795

98

74

24

61

MR74

96

55

41

52

MR67

102

55

47

32

MR59

98

55

43

20

MR515

83

45

38

20

MR475

83

40

43

12

The class 1a bits are the first bits in the subjectively sorted vector. Then comes the class
1b bits. The class 2 bits are the last bits in the subjectively sorted vector.

3.5.2 Cyclic Redundancy Check (CRC)


The 7 bit CRC is calculated over the first N 1A bits of the bits received from the subjective
sorting, S(0)..S(N-1). The 7 parity bits are generated by the cyclic generator polynomial
(identical to TIA/EIA-136-410):

g( X ) 1 X X 2 X 4 X 5 X 7

14

TIA/EIA-136-440

from the first N1A bits of class 1, where N 1A refers to number of bits in protection class 1a
as shown above for each codec mode. The encoding of the cyclic code is performed in a
systematic form, which means that, in GF(2), the polynomial:

S (0) X ( N1 A 6 ) S (1) X ( N1 A 5) ... S ( N 1 A 1) X 7 P (0) X 6 ... P(5) X P (6)


where P (0, P (1),..., P (6) are the parity bits, when divided by g ( X ) , yields a
remainder equal to 0.

3.5.3 Convolutional Encoding


Before convolutional encoding, a new block of data, U, is created as shown in the
following manner:
For full-rate uplink: The first N1A bits in U are copied from the first N 1A bits of S. The
following 7 bits in U are the parity bits from the CRC calculation (P(0)P(6)). Finally,
the last N1B bits are copied from S to U. This means that the number of bits in U is N 1+7,
where 7 comes from the 7 CRC bits. A more formal description:

15

You might also like