ANALOG SUBSYSTEM
M3
CPU
C28
CPU
BUS
C28
DMA
BUS
M3
uDMA
BUS
M3
SYSTEM
BUS
ADCINT(8:1)
ADCINT
(4:1)
ACIB
COMPARE
AIO_MUX2
AIO_MUX1
ANALOG SUBSYSTEM
C28x
DMA
C28x
DMA
M3
CPU
C28
CPU
BUS
C28
DMA
BUS
M3
uDMA
BUS
M3
SYSTEM
BUS
ADCINT(8:1)
ADCINT
(4:1)
ACIB
COMPARE
AIO_MUX2
AIO_MUX1
ADC1
RESULT
REGISTES
ADC1
RESULT
REGISTES
ADC2
RESULT
REGISTES
ADC2
RESULT
REGISTES
C28x
CPU
C28x
CPU
M3
uDMA
M3
uDMA
CPU Arbitration
955
SPRUHE8E – October 2012 – Revised November 2019
Copyright © 2012–2019, Texas Instruments Incorporated
C28 Direct Memory Access (DMA) Module
NOTE:
If the CPU is performing a read-modify-write operation and the DMA performs a write to the
same location, the DMA write may be lost if the operation occurs in between the CPU read
and the CPU write. For this reason, it is advised not to mix such CPU accesses with DMA
accesses to the same locations.
In the case of RAM, a ping-pong scheme can be implemented to avoid the CPU and the DMA accessing
the same RAM block concurrently, thus avoiding any stalls or corruption issues.
11.4.1 Arbitration when Accessing the Analog Subsystem
The DMA read cycles to the analog subsystem must pass through the analog common interface bus
(ACIB) when accessing ADC result registers. The analog subsystem can be accessed by four masters –
C28 CPU, C28 DMA, M3 CPU, and M3 DMA. In a case where multiple masters are simultaneously
attempting to access analog subsystem peripherals, an arbitration procedure will occur. The amount of
time that DMA bus cycles may be delayed depends on how many of the other three masters are trying to
access the analog subsystem at the same time. The ACIB bus arbiter uses the round-robin algorithm to
determine which bus cycle gets through and which bus cycles have to wait at a given time.
illustrates this process.
Figure 11-5. Arbitration when Accessing ACIB
11.5 Channel Priority
Two priority schemes exist when determining channel priority: Round-robin mode and Channel 1 high-
priority mode.
11.5.1 Round-Robin Mode
In this mode, all channels have
equal
priority and each enabled channel is serviced in round-robin fashion
as follows: