www.ti.com
Functional Description
22.3.10.3 Formatter
22.3.10.3.1 Transmit Bit Stream Data Alignment
The McASP transmitter supports serial formats of:
• Slot (or Time slot) size = 8, 12, 16, 20, 24, 28, 32 bits.
• Word size ≤ Slot size.
• Alignment: when more bits/slot than bits/words, then:
– Left aligned = word shifted first, remaining bits are pad.
– Right aligned = pad bits are shifted first, word occupies the last bits in slot.
• Order: order of bits shifted out:
– MSB: most-significant bit of word is shifted out first, last bit is LSB.
– LSB: least-significant bit of word is shifted out last, last bit is MSB.
Hardware support for these serial formats comes from the programmable options in the transmit bitstream
format register (XFMT):
• XRVRS: bit reverse (1) or no bit reverse (0).
• XROT: rotate right by 0, 4, 8, 12, 16, 20, 24, or 28 bits.
• XSSZ: transmit slot size of 8, 12, 16, 20, 24, 28, or 32 bits.
XSSZ should always be programmed to match the slot size of the serial stream. The word size is not
directly programmed into the McASP, but rather is used to determine the rotation needed in the XROT
field.
Table 22-8 and Figure 22-29 show the XRVRS and XROT fields for each serial format and for both integer
and Q31 fractional internal representations.
This discussion assumes that all slot size (SLOT in Table 22-8) and word size (WORD in Table 22-8)
options are multiples of 4, since the transmit rotate right unit only supports rotation by multiples of 4.
However, the bit mask/pad unit does allow for any number of significant digits. For example, a Q31
number may have 19 significant digits (word) and be transmitted in a 24-bit slot; this would be formatted
as a word size of 20 bits and a slot size of 24 bits. However, it is possible to set the bit mask unit to only
pass the 19 most-significant digits (program the mask value to FFFF E000h). The digits that are not
significant can be set to a selected pad value, which can be any one of the significant digits, a fixed value
of 0, or a fixed value of 1.
The transmit bit mask/pad unit operates on data as an initial step of the transmit format unit (see
Figure 22-24), and the data is aligned in the same representation as it is written to the transmitter by the
processor (typically Q31 or integer).
Table 22-8. Transmit Bitstream Data Alignment
XFMT Bit
Bit Stream Internal Numeric
Figure 22-29 Bit Stream Order Alignment Representation XROT
(1)
XRVRS
(a)
(2)
MSB first Left aligned Q31 fraction 0 1
(b) MSB first Right aligned Q31 fraction SLOT - WORD 1
(c) LSB first Left aligned Q31 fraction 32 - WORD 0
(d) LSB first Right aligned Q31 fraction 32 - SLOT 0
(e)
(2)
MSB first Left aligned Integer WORD 1
(f) MSB first Right aligned Integer SLOT 1
(g) LSB first Left aligned Integer 0 0
(h) LSB first Right aligned Integer (32 - (SLOT - WORD)) % 32 0
(1)
WORD = Word size rounded up to the nearest multiple of 4; SLOT = slot size; % = modulo operator
(2)
To transmit in I2S format, use MSB first, left aligned, and also select XDATDLY = 01 (1 bit delay)
3805
SPRUH73H–October 2011–Revised April 2013 Multichannel Audio Serial Port (McASP)
Submit Documentation Feedback
Copyright © 2011–2013, Texas Instruments Incorporated