Rabbit 6000 User’s Manual
digi.com
249
24. DMA C
HANNELS
24.1 Overview
There are 16 independent DMA channels on the Rabbit 6000. All 16 channels are identical, and are capable
of transferring data between memory, external I/O, or internal I/O. The priority among the channels can be
either fixed or rotating, and the DMA use of the external bus can be limited to guarantee interrupt latency or
CPU throughput. The DMA channels are capable of special handling for the last byte of data when sending
data to selected internal I/O addresses (such as the HDLC serial ports or to the Ethernet peripheral), and
can also transfer end-of-frame status after transferring data from selected internal I/O addresses.
The DMA channels can watch the data being transferred, and can terminate a transfer when a particular
byte is matched. A mask is available for the byte match to allow termination only on particular bit settings
in the data instead of an exact byte match.
There are two DMA transfer methods available in the Rabbit 6000 — the bus-interleaving mode and the
bus-sharing mode. If all sources and destinations are internal to the device, the bus-interleaving mode
should be used. In this mode, the pipelined functionality of the internal SRAM allows both DMA and code
execution to occur simultaneously, as shown in Figure 24.1. This mode is different from the DMA func-
tionality in previous processors, and is enabled by default whenever possible.
Figure 24.1 Bus-Interleaving Mode
The other mode is used whenever an external device is used for the source or destination, and matches the
DMA behavior of the Rabbit 4000 and 5000 processors. In this bus-sharing mode, the memory bus alter-
nates between DMA and processor use, as shown in Figure 24.2. When DMA is active, the CPU is not
processing instructions, and vice-versa.
Содержание 6000
Страница 1: ...Rabbit 6000 Microprocessor User s Manual 90001108_J...
Страница 11: ...Rabbit 6000 User s Manual digi com 11 1 3 Block Diagram Figure 1 1 Rabbit 6000 Block Diagram...
Страница 43: ...Rabbit 6000 User s Manual digi com 43 4 1 1 Block Diagram...
Страница 57: ...Rabbit 6000 User s Manual digi com 57 5 1 1 Block Diagram...
Страница 88: ...Rabbit 6000 User s Manual digi com 88 7 2 Block Diagram...
Страница 115: ...Rabbit 6000 User s Manual digi com 115 11 1 1 Block Diagram...
Страница 127: ...Rabbit 6000 User s Manual digi com 127 12 1 1 Block Diagram...
Страница 138: ...Rabbit 6000 User s Manual digi com 138 13 1 1 Block Diagram...
Страница 154: ...Rabbit 6000 User s Manual digi com 154 15 1 1 Block Diagram...
Страница 163: ...Rabbit 6000 User s Manual digi com 163 16 1 1 Block Diagram...
Страница 170: ...Rabbit 6000 User s Manual digi com 170 17 1 1 Block Diagram...
Страница 177: ...Rabbit 6000 User s Manual digi com 177 18 1 1 Block Diagram...
Страница 186: ...Rabbit 6000 User s Manual digi com 186 19 1 1 Block Diagram...
Страница 230: ...Rabbit 6000 User s Manual digi com 230 22 2 Block Diagram...
Страница 234: ...Rabbit 6000 User s Manual digi com 234 Figure 22 3 Sample Slow A D Converter Circuit...
Страница 287: ...Rabbit 6000 User s Manual digi com 287 25 1 1 Block Diagram...
Страница 310: ...Rabbit 6000 User s Manual digi com 310 26 1 1 Block Diagram...
Страница 323: ...Rabbit 6000 User s Manual digi com 323 28 1 1 Block Diagram...
Страница 351: ...Rabbit 6000 User s Manual digi com 351 31 1 4 Block Diagram...
Страница 361: ...Rabbit 6000 User s Manual digi com 361 32 1 1 Block Diagram...
Страница 369: ...Rabbit 6000 User s Manual digi com 369 33 2 Block Diagram...
Страница 390: ...Rabbit 6000 User s Manual digi com 390 35 1 1 Block Diagram...
Страница 408: ...Rabbit 6000 User s Manual digi com 408...
Страница 410: ...Rabbit 6000 User s Manual digi com 410...
Страница 411: ...Rabbit 6000 User s Manual digi com 411...
Страница 420: ...Rabbit 6000 User s Manual digi com 420 Figure 37 1 Memory Read and Write Cycles...