SPRUII0F May 2019 – June 2024 TMS320F28384D , TMS320F28384D-Q1 , TMS320F28384S , TMS320F28384S-Q1 , TMS320F28386D , TMS320F28386D-Q1 , TMS320F28386S , TMS320F28386S-Q1 , TMS320F28388D , TMS320F28388S
31 | 30 | 29 | 28 | 27:26 | 25:23 | 22:19 | 18 | 17:16 | 15 | 14:0 |
---|---|---|---|---|---|---|---|---|---|---|
OWN | CTXT | FD | LD | CPC | SAIC | SLOTNUM or THL | TSE | CIC/TPL | TPL | FL/TPL |
Bit | Name | Description |
---|---|---|
31 | OWN | Own Bit |
When this bit is set, the bit indicates that the DMA owns the descriptor. When this bit is reset, the bit indicates that the application owns the descriptor. The DMA clears this bit after the transfer of data given in the associated buffers. completes | ||
30 | CTXT | Context Type |
This bit can be set to 1'b0 for normal descriptor. | ||
29 | FD | First Descriptor |
When this bit is set, the bit indicates that the buffer contains the first segment of a packet. | ||
28 | LD | Last Descriptor |
When this bit is set, the bit indicates that the buffer contains the last segment of the packet. When this bit is set, the B1L or B2L field can have a non-zero value. | ||
27-26 | CPC | CRC Pad Control |
This field controls the CRC and Pad Insertion for Tx packet. This field is valid only when the first descriptor bit (TDES3[29]) is set. The following list describes the values of Bits[27:26]: | ||
00: CRC and Pad Insertion | ||
The MAC appends the cyclic redundancy check (CRC) at the end of the transmitted packet of length greater than or equal to 60 bytes. The MAC automatically appends padding and CRC to a packet with length less than 60 bytes. | ||
01: CRC Insertion (Disable Pad Insertion) | ||
The MAC appends the CRC at the end of the transmitted packet but the MAC does not append padding. The application can make sure that the padding bytes are present in the packet being transferred from the Transmit Buffer, that is, the packet being transferred from the Transmit Buffer is of length greater than or equal to 60 bytes. | ||
10: Disable CRC Insertion | ||
The MAC does not append the CRC at the end of the transmitted packet. The application can make sure that the padding and CRC bytes are present in the packet being transferred from the Transmit Buffer. | ||
11: CRC Replacement | ||
The MAC replaces the last four bytes of the transmitted packet with recalculated CRC bytes. The application can make sure that the padding and CRC bytes are present in the packet being transferred from the Transmit Buffer. | ||
This field is valid only for the first descriptor. | ||
Note: When the TSE bit is set, the MAC ignores this field because the CRC and pad insertion is always done for segmentation. | ||
25-23 | SAIC | SA Insertion Control |
These bits request the MAC to add or replace the Source Address field in the Ethernet packet with the value given in the MAC Address 0 register. The application must set the CRC Pad Control bits appropriately when SA Insertion Control is enabled for the packet. | ||
Bit 25 specifies the MAC Address Register (1 or 0) value that is used for Source Address insertion or replacement. | ||
The following list describes the values of Bits[24:23]: | ||
00: Do not include the source address | ||
01: Include or insert the source address. For reliable transmission, the application must provide frames without source addresses. | ||
10: Replace the source address. For reliable transmission, the application must provide frames with source addresses. | ||
11: Reserved | ||
These bits are valid when the First Segment control bit (TDES3[29]) is set. | ||
This field is valid only for the first descriptor. | ||
22-19 | SLOTNUM or THL | SLOTNUM: Slot Number Control Bits in AV Mode |
These bits indicate the slot interval that the data can be fetched from the corresponding buffers addressed by TDES0 or TDES1. | ||
When the Transmit descriptor is fetched, the DMA compares the slot number value in this field with the slot interval maintained in the RSN field DMA_CH#_Slot_Function_Control_Status. The DMA fetches the data from the buffers only if a value matches. These bits are valid only for the AV channels. | ||
THL: TCP/UDP Header Length | ||
If the TSE bit is set, this field contains the length of the TCP/UDP header. The minimum value of this field must be 5 for TCP header. The value must be equal to 2 for UDP header. | ||
This field is valid only for the first descriptor. | ||
18 | TSE | TCP Segmentation Enable |
When this bit is set, the DMA performs the TCP/UDP segmentation or UDP fragmentation for a packet depending on the TSE_MODE[1:0] bit of the DMA_CH(#i)_Tx_Control Register. This bit is valid only if the FD bit is set. | ||
17-16 | CIC/TPL | Checksum Insertion Control or TCP Payload Length |
These bits control the checksum calculation and insertion. The following list describes the bit encoding: | ||
00: Checksum Insertion Disabled. | ||
01: Only IP header checksum calculation and insertion are enabled. | ||
10: IP header checksum and payload checksum calculation and insertion are enabled, but pseudo-header checksum is not calculated in hardware. | ||
11: IP Header checksum and payload checksum calculation and insertion are enabled, and pseudo-header checksum is calculated in hardware. | ||
This field is valid when the Enable Transmit TCP/IP Checksum Offload option is selected and the TSE bit is reset. | ||
When the TSE bit is set, this field contains the upper bits [17:16] of the TCP Payload (or IP Payload for UDP fragmentation). This allows the TCP/UDP packet length field to be spanned across TDES3[17:0] to provide 256KB packet length support. | ||
This field is valid only for the first descriptor. | ||
15 | TPL | Reserved or TCP Payload Length |
When the TSE bit is reset, this bit is reserved. When the TSE bit is set, this is Bit 15 of the TCP payload length [17:0]. | ||
This field is valid only when the Enable TCP Segmentation Offloading for TCP/IP Packets option is selected while configuring the core. | ||
14-0 | FL/TPL | Frame Length or TCP Payload Length |
This field is equal to the length of the packet to be transmitted in bytes. When the TSE bit is not set, this field is equal to the total length of the packet to be transmitted: | ||
Ethernet Header Length + TCP /IP Header Length – Preamble Length – SFD Length + Ethernet Payload Length | ||
When the TSE bit is set, this field is equal to the lower 15 bits of the TCP payload length in case of segmentation and IP payload in case of UDP fragmentation. | ||
In case of segmentation, this length does not include Ethernet header or TCP/UDP/IP header length. In case of fragmentation, this length does not include Ethernet header and IP header. When DWRR/WFQ algorithm is NOT enabled, value written into this field is not used when TSE = 0. |