CS4281 Programming Manual
DS308PRM1
91
Confidential Draft
3/7/00
The PC only supports bytes, words, and double
words (dwords). The 20-bit data format is stored as
one dword per channel. As shown in Figure 26, 20-
bit playback data format is MSB aligned. Stereo
20-bit data always require two PCI transfers to
complete, where the DMA engine performs two
PCI transfers to get one stereo 20-bit sample. The
formatter block transfers data to the FIFOs as it is
received.
Since 20-bit data format is stored one dword per
channel, the capture data format writes the entire
32-bit dword by placing zeros in the unused LSB’s,
as illustrated in Figure 27.
The formatter Byte Swizzler for the playback di-
rection is illustrated in Figure 28. The Byte Swiz-
zler takes the PCI bus data and converts it to the
proper internal format needed for the FIFOs. For
stereo data, a sample could come across the PCI
bus a channel at a time. For this case the DMA en-
gine indicates to the formatter that the only Ch1 is
valid. The Byte Swizzler formats Channel One
properly and sends the data on to the FIFO. When
the second channel arrives, the DMA engine indi-
cates that Ch2 is valid, the Byte Swizzler formats
Channel Two properly and sends the second chan-
nel to the FIFO causing the FIFO to increment its
pointer since it now has both channels. The data out
of the Byte Swizzler is shown in three sections for
each channel x (1 or 2): ChxH is the high byte,
ChxL is the low byte, and Chxr is the residual nib-
ble forming the 20-bit word.
PCI Bus
20-bit signed
Byte Swizzler / channel swapper
0
19
20
39
Left
Right
20-bit signed
FIFO
20-bit mono
msb
msb
31
23
15
7
0
PCI Bus
20-bit signed
Byte Swizzler / channel swapper
0
19
20
39
Left
Right
20-bit signed
FIFO
20-bit Ch1
msb
msb
2 PCI
cycles
20-bit Ch2
1
2
31
23
15
7
0
Figure 26. 20-Bit PCI Playback Data Transfers
PCI Bus
20-bit signed
Byte Swizzler / channel swapper
0
19
20
39
Left
Right
20-bit signed
FIFO
20-bit Ch1
msb
msb
2 PCI
cycles
20-bit Ch2
1
2
31
23
15
7
0
00h
0h
00h
0h
31
23
15
7
0
PCI Bus
20-bit signed
0
19
20
39
Left
Right
20-bit signed
FIFO
msb
msb
Byte Swizzler / channel swapper
00h
20-bit mono
0h
Figure 27. 20-Bit Little-Endian PCI Capture Data Transfers
D
ra
ft
Содержание CS4281
Страница 8: ...Confidential Draft 3 7 00 CS4281 Programming Manual 8 DS308PRM1 D r a f t...
Страница 12: ...Confidential Draft 3 7 00 CS4281 Programming Manual 12 DS308PRM1 D r a f t...
Страница 24: ...Confidential Draft 3 7 00 CS4281 Programming Manual 24 DS308PRM1 D r a f t...
Страница 34: ...Confidential Draft 3 7 00 CS4281 Programming Manual 34 DS308PRM1 D r a f t...
Страница 44: ...Confidential Draft 3 7 00 CS4281 Programming Manual 44 DS308PRM1 D r a f t...
Страница 114: ...Confidential Draft 3 7 00 CS4281 Programming Manual 114 DS308PRM1 D r a f t...
Страница 192: ...Confidential Draft 3 7 00 CS4281 Programming Manual 192 DS308PRM1 D r a f t...