WM8941
Pre Production
COMPANDING
The WM8941 supports A-law and µ-law companding on both transmit (ADC) and receive (DAC)
sides. Companding can be enabled on the DAC or ADC audio interfaces by writing the appropriate
value to the DAC_COMP or ADC_COMP register bits respectively. If packed mode companding is
desired the WL8 register bit is available. It will override the normal audio interface WL bits to give an
8-bit word length. Refer to Table 44 Audio Interface Control for setting the output word length.
REGISTER BIT
ADDRESS
LABEL
DEFAULT
DESCRIPTION
Digital loopback function
R5
6
DAC_LOOPBAC
K
0
Companding
control
0=No DAC loopback
1=Loopback enabled, DAC audio interface
output is fed directly into ADC audio
interface input.
4:3 DAC_COMP
2:1 ADC_COMP
0
0
0
DAC decompanding
00=off
01=reserved
10=µ-law
11=A-law
ADC companding
00=off
01=reserved
10=µ-law
11=A-law
0
ADC_LOOPBAC
K
Digital loopback function
0=No ADC loopback
1=Loopback enabled, ADC data output is
fed directly into DAC data input.
Table 51 Companding Control
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 + µ)
-1 ≤ x ≤ 1
A-law (where A=87.6 for Europe):
F(x) = A|x| / ( 1 + lnA) } for x ≤ 1/A
F(x) = ( 1 + lnA|x|) / (1 + lnA) } for 1/A ≤ x ≤ 1
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.
PP, Rev 3.3, December 2007
66
w