DMA Controller
8-30
Am186™CC/CH/CU Microcontrollers User’s Manual
Figure 8-7
SmartDMA Channel Memory Management
Figure 8-6 shows a descriptor ring with four entries. When OWN = 1, the SmartDMA
channel owns the descriptor entry and can take data out or put data in the buffer. When
OWN = 0, software owns the descriptor entry and the SmartDMA channel cannot access
the buffer. This means in a transmit buffer, data is valid when OWN = 1; and in a receive
buffer, data is valid when OWN = 0 (subject to any status error bit settings).
Descriptor ring entries are always accessed in order. In a transmit, the hardware always
follows the software; in a receive, software follows the hardware. If a SmartDMA channel
reaches a buffer whose OWN bit is not 1, the SmartDMA enters poll mode and waits for
software to set the OWN bit. It does not advance past a buffer whose OWN bit is not set.
Keeping this in mind, the example in Figure 8-6 indicates the following for a transmit or a
receive.
8.5.7.3.1
Transmit Descriptor Ring
If Figure 8-6 is a transmit descriptor ring, then software wrote the complete packet x (which
spans buffers 1, 2, and 3 pointed to by descriptors 1, 2, and 3). After writing the complete
packet, software set the OWN bit in each of the three descriptors. The OWN bits should be
set in order, from the last descriptor in the packet to the first (3, then 2, then 1), to guarantee
correct transmission of the packet. The channel has already transmitted the data from buffer
1 and is currently processing buffer 2. While packet x is being transmitted, software is writing
data to buffer 4 for transmission of the next packet, packet y.
SmartDMA Channel Transmit Ring Address
Registers (SDxTRCAL and SDxTRAH)
Transmit Descriptor Ring
Transmit Buffer 1 Address
Transmit Descriptor Ring Address
Number of entries (N) in
transmit buffer descriptor ring
SmartDMA Channel Transmit Ring Count
Registers (SDxTRCAL)
Transmit Buffer 1 Status/Config
Transmit Buffer 1 Byte Count
Transmit Buffer 1(Unused)
Transmit Buffer 2 Address
Transmit Buffer 2 Status/Config
Transmit Buffer 2 Byte Count
Transmit Buffer 2(Unused)
Transmit Buffer N Address
Transmit Buffer N Status/Config
Transmit Buffer N Byte Count
Transmit Buffer N (Unused)
.
.
.
Transmit
Data
Buffer
1
Transmit
Data
Buffer
2
Transmit
Data
Buffer
N
Transmit Data Buffer Queue
SmartDMA Channel Receive Ring Address
Registers (SDxRRCAL and SDxRRAH)
Receive Descriptor Ring
Receive Buffer 1 Address
Receive Descriptor Ring Address
Number of entries (N) in
receive buffer descriptor ring
SmartDMA Channel Receive Ring Count
Registers (SDxRRCAL)
Receive Buffer 1 Status/Config
Receive Buffer 1 Byte Count
Receive Buffer 1 Message Count
Receive Buffer 2 Address
Receive Buffer 2 Status/Config
Receive Buffer 2 Byte Count
Receive Buffer 2 Message Count
Receive Buffer N Address
Receive Buffer N Status/Config
Receive Buffer N Byte Count
Receive Buffer N Message Count
.
.
.
Receive
Data
Buffer
1
Receive
Data
Buffer
2
Receive
Data
Buffer
N
Receive Data Buffer Queue
TRANSMITTER
RECEIVER
Содержание Am186 CC
Страница 1: ...Am186 CC CH CU Microcontrollers User s Manual Order 21914B...
Страница 4: ...iv Am186 CC CH CU Microcontrollers User s Manual...
Страница 18: ...Table of Contents xviii Am186 CC CH CU Microcontrollers User s Manual...
Страница 24: ...Introduction xxiv Am186 CC CH CU Microcontrollers User s Manual...
Страница 39: ...Architectural Overview Am186 CC CH CU Microcontrollers User s Manual 1 15 Figure 1 6 32 Channel Linecard CH CC...
Страница 40: ...Architectural Overview 1 16 Am186 CC CH CU Microcontrollers User s Manual...
Страница 86: ...System Overview 3 36 Am186 CC CH CU Microcontrollers User s Manual...
Страница 92: ...Emulator Support 4 6 Am186 CC CH CU Microcontrollers User s Manual...
Страница 112: ...DRAM Controller 6 8 Am186 CC CH CU Microcontrollers User s Manual...
Страница 134: ...Interrupts 7 22 Am186 CC CH CU Microcontrollers User s Manual...
Страница 186: ...Programmable I O Signals 9 8 Am186 CC CH CU Microcontrollers User s Manual...
Страница 200: ...Watchdog Timer 11 6 Am186 CC CH CU Microcontrollers User s Manual...
Страница 232: ...Asynchronous Serial Ports UARTs 13 24 Am186 CC CH CU Microcontrollers User s Manual...
Страница 242: ...Synchronous Serial Port SSI 14 10 Am186 CC CH CU Microcontrollers User s Manual...
Страница 264: ...High Level Data Link Control HDLC 15 22 Am186 CC CH CU Microcontrollers User s Manual...
Страница 332: ...Universal Serial Bus USB 18 34 Am186 CC CH CU Microcontrollers User s Manual...
Страница 348: ...Register Summary A 16 Am186 CC CH CU Microcontrollers User s Manual...
Страница 376: ...Index Index 18 Am186 CC CH CU Microcontrollers User s Manual...