![Freescale Semiconductor MCF54455 Reference Manual Download Page 448](http://html1.mh-extra.com/html/freescale-semiconductor/mcf54455/mcf54455_reference-manual_2330541448.webp)
Enhanced Direct Memory Access (eDMA)
Freescale Semiconductor
19-33
b) Write longword to location 0x2000
first iteration of the minor loop.
c) Read byte from location 0x1004, read byte from location 0x1005, read byte from 0x1006, read
byte from 0x1007.
d) Write longword to location 0x2004
second iteration of the minor loop.
e) Read byte from location 0x1008, read byte from location 0x1009, read byte from 0x100A, read
byte from 0x100B.
f) Write longword to location 0x2008
third iteration of the minor loop.
g) Read byte from location 0x100C, read byte from location 0x100D, read byte from 0x100E,
read byte from 0x100F.
h) Write longword to location 0x200C
last iteration of the minor loop
major loop complete.
6. The eDMA engine writes: TCD
n
_SADDR = 0x1000, TCD
n
_DADDR = 0x2000, TCD
n
_CITER
= 1 (TCD
n
_BITER).
7. The eDMA engine writes: TCD
n
_CSR[ACTIVE] = 0, TCD
n
_CSR[DONE] = 1, EDMA_INT[
n
]
= 1.
8. The channel retires and the eDMA goes idle or services the next channel.
19.6.4.2
Multiple Requests
Besides transferring 32 bytes via two hardware requests, the next example is the same as previous. The
only fields that change are the major loop iteration count and the final address offsets. The eDMA is
programmed for two iterations of the major loop transferring 16 bytes per iteration. After the channel’s
hardware requests are enabled in EDMA_ERQ, the slave device initiates channel service requests.
TCD
n
_CITER = TCD
n
_BITER = 2
TCD
n
_SLAST = –32
TCD
n
_DLAST_SGA = –32
This would generate the following sequence of events:
1. First hardware (eDMA peripheral) request for channel service.
2. The channel is selected by arbitration for servicing.
3. eDMA engine writes: TCD
n
_CSR[DONE] = 0, TCD
n
_CSR[START] = 0, TCD
n
_CSR[ACTIVE]
= 1.
4. eDMA engine reads: channel TCD
n
data from local memory to internal register file.
5. The source to destination transfers are executed as follows:
a) Read byte from location 0x1000, read byte from location 0x1001, read byte from 0x1002, read
byte from 0x1003.
b) Write longword to location 0x2000
first iteration of the minor loop.
c) Read byte from location 0x1004, read byte from location 0x1005, read byte from 0x1006, read
byte from 0x1007.
d) Write longword to location 0x2004
second iteration of the minor loop.
e) Read byte from location 0x1008, read byte from location 0x1009, read byte from 0x100A, read
byte from 0x100B.
Summary of Contents for MCF54455
Page 33: ...xxviii Freescale Semiconductor ...
Page 67: ...Freescale Semiconductor 1 ...
Page 125: ...Freescale Semiconductor 1 ...
Page 145: ...Enhanced Multiply Accumulate Unit EMAC 5 21 Freescale Semiconductor ...
Page 173: ...Cache 6 28 Freescale Semiconductor ...
Page 179: ...Static RAM SRAM 7 6 Freescale Semiconductor ...
Page 207: ...Power Management 9 16 Freescale Semiconductor ...
Page 323: ...Reset Controller Module 13 8 Freescale Semiconductor ...
Page 389: ...Pin Multiplexing and Control 16 44 Freescale Semiconductor ...
Page 575: ...PCI Bus Controller 22 58 Freescale Semiconductor ...
Page 600: ...Advanced Technology Attachment ATA Freescale Semiconductor 23 25 ...
Page 601: ...Freescale Semiconductor 1 ...
Page 842: ...I2 C Interface Freescale Semiconductor 33 16 ...
Page 843: ...Freescale Semiconductor 1 ...
Page 921: ...Revision History A 6 Freescale Semiconductor ...