![Texas Instruments AM1808 Technical Reference Manual Download Page 1118](http://html.mh-extra.com/html/texas-instruments/am1808/am1808_technical-reference-manual_10945581118.webp)
LF1
RF1
LF2
RF2
CLK
FS
AXR[4]
LS1
RS1
LS2
RS2
AXR[5]
C1
LFE1
AXR[6]
C2
LFE2
AXEVT
AREVT
AXEVT
AREVT
AXEVT
AREVT
AXEVT
AREVT
AXEVT
AREVT
LF3
LS3
C3
Transmit
Receive
1118
SPRUH82C – April 2013 – Revised September 2016
Copyright © 2013–2016, Texas Instruments Incorporated
Multichannel Audio Serial Port (McASP)
Accessing the XRBUF through the DMA port is different because the CPU/DMA only needs to access one
single address. When accessing through the peripheral configuration bus, the CPU/DMA must provide the
exact XBUF
n
or RBUF
n
address for each access.
When transmitting, DMA/CPU must write data to each serializer configured as "active" and "transmit"
within each time slot. Failure to do so results in a buffer underrun condition (
). Similarly
when receiving, data must be read from each serializer configured as "active" and "receive" within each
time slot. Failure to do results in a buffer overrun condition (
).
24.0.21.3.4 Using the CPU for McASP Servicing
The CPU can be used to service the McASP through interrupt (upon AXINT/ARINT interrupts) or through
polling the XDATA bit in the XSTAT register. As discussed in
and
,
the CPU can access either through the DMA port or through the peripheral configuration port.
To use the CPU to service the McASP through interrupts, the XSTAT/RSTAT bit must be enabled in the
respective XINTCTL/RINTCTL registers, to generate interrupts AXINT/ARINT to the CPU upon data ready.
24.0.21.3.5 Using the DMA for McASP Servicing
The most typical scenario is to use the DMA to service the McASP through the DMA port, although the
DMA can also service the McASP through the peripheral configuration port. Use AXEVT/AREVT that is
triggered upon each XDATA/RDATA transition from 0 to 1.
shows an example audio system with six audio channels (LF, RF, LS, RS, C, and LFE)
transmitted from three AXR[n] pins on the McASP and shows when events AXEVT and AREVT are
triggered.
Figure 24-27. DMA Events in an Audio Example–Two Events
In
, a DMA event AXEVT/AREVT is triggered on each time slot. In the example, AXEVT is
triggered for each of the transmit audio channel time slot (time slot for channels LF, LS, and C; and time
slot for channels RF, RS, LFE). Similarly, AREVT is triggered for each of the receive audio channel time
slot. This allows for the use of a single DMA to transmit all audio channels, and a single DMA to receive
all audio channels.
Note the difference between DMA event generation and the CPU interrupt generation. DMA events are
generated automatically upon data ready; whereas CPU interrupt generation needs to be enabled in the
XINTCTL/RINTCTL register.