Cirrus Logic WM8940 Manual page 59

Mono codec with speaker driver
Table of Contents

Advertisement

Rev 4.4
Companding involves using a piecewise linear approximation of the following equations (as set out by
ITU-T G.711 standard) for data compression:
-law (where =255 for the U.S. and Japan):
F(x) = ln( 1 + |x|) / ln( 1 + )
A-law (where A=87.6 for Europe):
F(x) = A|x| / ( 1 + lnA)
F(x) = ( 1 + lnA|x|) / (1 + lnA)
The companded data is also inverted as recommended by the G.711 standard (all 8 bits are inverted
for -law, all even data bits are inverted for A-law). The data will be transmitted as the first 8 MSB's of
data.
Companding converts 13 bits (-law) or 12 bits (A-law) to 8 bits using non-linear quantization. The
input data range is separated into 8 levels, allowing low amplitude signals better precision than that of
high amplitude signals. This is to exploit the operation of the human auditory system, where louder
sounds do not require as much resolution as quieter sounds. The companded signal is an 8-bit word
containing sign (1-bit), exponent (3-bits) and mantissa (4-bits).
BIT7
BIT[6:4]
SIGN
EXPONENT
Table 51 8-bit Companded Word Composition
120
100
80
60
40
20
0
0
0.1
0.2
Figure 31 u-Law Companding
-1 ≤ x ≤ 1
 for x ≤ 1/A
 for 1/A ≤ x ≤ 1
MANTISSA
u-law Companding
0.3
0.4
0.5
0.6
0.7
Normalised Input
WM8940
BIT[3:0]
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0.8
0.9
1
59

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the WM8940 and is the answer not in the manual?

Table of Contents