Preliminary
www.ti.com
Architecture
3.2.5.5
Receive Buffer Descriptor Format
A receive (RX) buffer descriptor (
) is a contiguous block of four 32-bit data words aligned on a
32-bit boundary that describes a packet or a packet fragment.
shows the receive buffer
descriptor described by a C structure.
Figure 3-7. Receive Buffer Descriptor Format
Word 0
31
0
Next Descriptor Pointer
Word 1
31
0
Buffer Pointer
Word 2
31
16 15
0
Buffer Offset
Buffer Length
Word 3
31
30
29
28
27
26
25
24
SOP
EOP
OWNER
EOQ
TDOWNCMPLT
PASSCRC
JABBER
OVERSIZE
23
22
21
20
19
18
17
16
FRAGMENT
UNDERSIZED
CONTROL
OVERRUN
CODEERROR
ALIGNERROR
CRCERROR
NOMATCH
15
0
Packet Length
3.2.5.5.1 Next Descriptor Pointer
This pointer points to the 32–bit word aligned memory address of the next buffer descriptor in the receive
queue. This pointer is used to create a linked list of buffer descriptors. If the value of this pointer is zero,
then the current buffer is the last buffer in the queue. The software application must set this value prior to
adding the descriptor to the active receive list. This pointer is not altered by the EMAC.
The value of pNext should never be altered once the descriptor is in an active receive queue, unless its
current value is NULL. If the pNext pointer is initially NULL, and more empty buffers can be added to the
pool, the software application may alter this pointer to point to a newly appended descriptor. The EMAC
will use the new pointer value and proceed to the next descriptor unless the pNext value has already been
read. In this latter case, the receiver will halt the receive channel in question, and the software application
may restart it at that time. The software can detect this case by checking for an end of queue (EOQ)
condition flag on the updated packet descriptor when it is returned by the EMAC.
3.2.5.5.2 Buffer Pointer
The buffer pointer is the byte-aligned memory address of the memory buffer associated with the buffer
descriptor. The software application must set this value prior to adding the descriptor to the active receive
list. This pointer is not altered by the EMAC.
421
SPRUGX9 – 15 April 2011
EMAC/MDIO Module
© 2011, Texas Instruments Incorporated
Содержание TMS320C6A816 Series
Страница 2: ...Preliminary 2 SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 92: ...92 Read This First SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1122: ...1122 Multichannel Audio Serial Port McASP SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1562: ...1562 Real Time Clock RTC SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1658: ...1658 Timers SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1750: ...1750 UART IrDA CIR Module SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...
Страница 1984: ...1984 Universal Serial Bus USB SPRUGX9 15 April 2011 Submit Documentation Feedback 2011 Texas Instruments Incorporated...