Rabbit 6000 User’s Manual
digi.com
250
Figure 24.2 Bus-Sharing Mode
Memory-to-memory transfers proceed at the maximum transfer rate unless they are gated by an external
request signal or the internal timed request. Transfers to or from a number of internal I/O addresses are
controlled by transfer request signals. These transfer request signals are connected automatically as a func-
tion of the internal I/O address loaded into the DMA channel. Note that if both the source and the destina-
tion are internal I/O, the source register’s transfer request is used by the DMA channel and not the
destination register’s request.
The DMA channels support both byte and word transfers, although most I/O transfers are byte only (the
Ethernet, Wi-Fi, and USB ports are special cases). When the 16-bit bus is enabled and the DMA source or
destination address is a network port data register, the DMA will attempt to transfer words if the memory
address is aligned. The same is true for memory-to-memory transfers if both the source and the destination
addresses are aligned.
There are two inputs available for requests linked to external I/O devices, DREQ0 and DREQ1. These two
external requests may be assigned to any DMA channel. These requests may also be used by a channel that
has an internal I/O as a destination. In this case, the external request acts as a “flow control” signal for the
DMA transfers because the external request is “ANDed” with the automatically connected internal
request.
To facilitate periodic DMA transfers, there is also an internal
timed request
. This request is generated from
a programmable 16-bit counter and may be assigned to any DMA channel. As in the case of the external
requests, this request is “ANDed” with any internal or external request that is also assigned to that DMA
channel. This periodic request can be programmed to transfer one byte or an entire buffer. The single-byte
option is useful for driving an output port to create a sampled waveform, while the entire-buffer option can
be used, for example, to send precisely timed serial messages over a serial port.
The DMA Timed Request is generated by a 16-bit down-counter clocked by the peripheral clock divided
by two. The counter counts down from the limit programmed into the DMA Timed Request Divider regis-
ters to zero and then reloads. The timed request is generated by the reload condition.
The DMA operation is controlled by memory structures called buffer descriptors. The current buffer descrip-
tor resides in the registers of the DMA channel, but may have been either placed there by the processor or
loaded directly by the DMA channel itself. Buffer descriptors may be used singly to transfer one block of
data, or they may be linked together for “scatter-gather” operation. Each DMA channel also contains an
“initial address” that points to the first buffer descriptor in memory and allows the DMA channel to rewind
itself automatically in the case of a transmit retry by the network port. Each buffer descriptor contains a
Содержание 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...