MPC563XM Reference Manual, Rev. 1
Freescale Semiconductor
151
Preliminary—Subject to Change Without Notice
7.4
Functional Description
This section provides an overview of the microarchitecture and functional operation of the DMA module.
7.4.1
DMA Microarchitecture
The DMA module is partitioned into two major modules: the dma_engine and the transfer control
descriptor local memory. Additionally, the dma_engine is further partitioned into four submodules, which
are detailed below.
•
dma_engine
—
addr_path
: This module implements registered versions of two channel transfer control
descriptors: channel "x" and channel “y”, and is responsible for all the master bus address
calculations. All the implemented channels provide the exact same functionality. This
hardware structure allows the data transfers associated with one channel to be preempted after
the completion of a read/write sequence if a higher priority channel service request is asserted
while the first channel is active. Once a channel is activated, it runs until the minor loop is
completed unless preempted by a higher priority channel. This capability provides a
mechanism (optionally enabled by DCHPRIn[ECP]) where a large data move operation can be
preempted to minimize the time another channel is blocked from execution.
When any other channel is activated, the contents of its transfer control descriptor is read from
the local memory and loaded into the registers of the other addr_path.channel_{x,y}. Once the
inner minor loop completes execution, the addr_path hardware writes the new values for the
TCDn.{saddr, daddr, citer} back into the local memory. If the major iteration count is
exhausted, additional processing is performed, including the final address pointer updates,
reloading the TCDn.citer field, and a possible fetch of the next TCDn from memory as part of
a scatter/gather operation.
—
data_path
: This module implements the actual bus master read/write datapath. It includes 32
bytes of register storage (matching the maximum transfer size) and the necessary mux logic to
support any required data alignment. The AMBA-AHB read data bus is the primary input, and
the AHB write data bus is the primary output.
int_maj
Enable an interrupt when major iteration
count completes
If this flag is set, the channel generates an interrupt
request by setting the appropriate bit in the DMAINT
register when the current major iteration count
reaches zero.
0 The end-of-major loop interrupt is disabled.
1 The end-of-major loop interrupt is enabled.
start
Channel start
If this flag is set, the channel is requesting service.
The DMA hardware automatically clears this flag
after the channel begins execution.
0 The channel is not explicitly started.
1 The channel is explicitly started via a software
initiated service request.
Name
Description
Value
Содержание MPC5632M
Страница 22: ...MPC563XM Reference Manual Rev 1 22 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 62: ...MPC563XM Reference Manual Rev 1 62 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 92: ...MPC563XM Reference Manual Rev 1 92 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 168: ...MPC563XM Reference Manual Rev 1 168 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 242: ...MPC563XM Reference Manual Rev 1 242 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 302: ...MPC563XM Reference Manual Rev 1 302 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 410: ...MPC563XM Reference Manual Rev 1 410 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 440: ...MPC563XM Reference Manual Rev 1 440 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 464: ...MPC563XM Reference Manual Rev 1 464 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 554: ...MPC563XM Reference Manual Rev 1 554 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 590: ...MPC563XM Reference Manual Rev 1 590 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 622: ...MPC563XM Reference Manual Rev 1 622 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 716: ...MPC563XM Reference Manual Rev 1 716 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 1114: ...MPC563XM Reference Manual Rev 1 1114 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 1144: ...MPC563XM Reference Manual Rev 1 1144 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 1266: ...MPC563XM Reference Manual Rev 1 1266 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 1316: ...MPC563XM Reference Manual Rev 1 1316 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 1348: ...MPC563XM Reference Manual Rev 1 1348 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 1362: ...MPC563XM Reference Manual Rev 1 1362 Freescale Semiconductor Preliminary Subject to Change Without Notice ...
Страница 1382: ...MPC563XM Reference Manual Rev 1 1382 Freescale Semiconductor Preliminary Subject to Change Without Notice ...