31 |
TX_PRC,Transmit in Process,发送进行中。
- 0x0:DMA 空闲,DMA 完成当前的描述符的数据发送;
- 0x1:DMA 发送进行中。
|
30 |
EN_TX_COMP_INT,Enable Transmit Complete
Interrupt,使能发送完成中断,此位只有在 BIT29 有效时才有效。
- 0x0:未使能;
- 0x1:使能,此位只有在 BIT29 有效
|
29 |
END_DES,End Descriptor,最后一个描述符。
- 0x0:无效;
- 0x1:有效,表示此描述符为最后一个描述符
|
28 |
START_DES,Start Descriptor,第一个描述符。
- 0x0:无效;
- 0x1:有效,表示此描述符为第一个描述符
|
27 |
DIS_CRC,Disable CRC,禁止 CRC 功能时生效,只需在第一个描述符设置此位即可。 |
26 |
DIS_PAD,Disable Padding,禁止补0功能时生效,只需在第一个描述符设置此位即可。
- 0x0:无效;
- 0x1:有效,禁止对帧长低于64 bytes进行补0
|
25 |
EN_TX_TMSTMP,Enable Transmit
Timestamp,使能发送添加时间戳功能,只需在第一个描述符设置此位即可。 |
24 |
EN_CRC_REP,Enable CRC
Replacement,使能CRC替代功能。这里需要软件保证发送帧的内容包含了CRC,使能CRC替代功能后,会进行CRC重新计算并替代。另外为了避免CRC重复,需要DIS_CRC
=1 禁止CRC插入。在第一个描述符设置此位即可。 |
23:22 |
EN_CIC,Enable Checksum Insertion
Control,使能校验和插入功能,只需在第一个描述符设置此位即可。
- 0x0:禁止校验和插入。
- 0x1:开启IP Header校验和计算以及插入功能。
- 0x2:开启IP
Header、Payload校验和的计算及插入功能,未开启伪Header的校验和计算。
- 0x3:开启IP
Header、Payload校验和的计算及插入功能,并且开启伪Header的校验和计算。
|
21 |
TX_END_RNG,Transmit End of Ring,DMA
发送环的末端,表示此描述符为DMA发送环的最后一个描述符,结束后跳回起始描述符。 |
20 |
EN_DMA_CHN_MODEnable DMA Chain Mode,使能DMA Chain模式。
- 0x0:未使能,采用 DMA Ring 模式
- 0x1:使能,采用 DMA Chain 模式
|
19:18 |
VLAN_TAG_CTL,VLAN Tag Control,VLAN 标签控制,只需在第一个描述符设置此位即可。
- 0x0:无效操作。
- 0x1:删除发送帧中的 VLAN 标签内容。
- 0x2:插入 VLAN 标签,标签内容。
- 0x3:替代 VLAN 标签。
|
17 |
TX_TMSTMP_STS,Transmit Timestamp
Status,发送时间戳状态,此域只有在最后一个描述符有效。
- 0x0:无操作
- 0x1:完成发送时间戳的捕捉,时间戳写入在 TDES6 和 TDES7。
|
16 |
IP_HD_ERR,IP Header
Error,此位置1表示MAC检测发送的IP报文的Header存在错误,此域只有在最后一个描述符有效。 |
15 |
TXERR_STS,Transmit Error
Status,发送错误状态指示位。0x0:无错误;0x1:出现错误,错误源可能由于BIT16/14/13/12/11/10/9/8/2/1相应的错误状态引起 |
14 |
JAB_TO_ERR,Jabber Timout
Error,发送Jabber超时错误,此位只有在Jabber检测功能未禁止的情况下有效。0x0:无异常;0x1:出现发送超时错误 |
13 |
TXFIFO_FLSH_ERR,TXFIFO Flush
Error,清除错误,出现软件清除TXFIFO的帧数据的操作导致的错误。0x0:无异常;0x1:出现错误状态 |
12 |
IP_PL_ERR,IP Payload Error,此位置1指示MAC检测到发送的TCP、UDP、ICMP
IP数据包payload存在错误。 |
11 |
LOS_CR,Loss Carrier,此位置1指示在帧发送发生了载波丢失,此位只有在半双工模式下有效。 |
10 |
NO_CR,No
Carrier,此位置1指示在发送的过程中,PHY的载波侦听CS信号并没有生效,即没有检测到载波。 |
9 |
LT_COL,Late
Collision,此位置1指示由于碰撞导致发送终止,此碰撞发生在碰撞窗口之后。此位在TXFIFO_UF_ERR =
1的时候无效。 |
8 |
EXS_COL,Excessive
Collision,此位置1指示当前帧尝试发送的过程中,由于连续的16次碰撞的产生终止发送帧。如果取消重传(DIS_RETRY
= 1),只要出现1次的碰撞,此位则立即置1。 |
7 |
VLAN_STS,VLAN
Status,VLAN帧状态。0x0:发送帧为非VLAN帧;0x1:发送帧为VLAN帧 |
6:3 |
COL_CNT,Collision Count,此域指示在发送前发生多少次碰撞。此域在TDES0. Bit8
=1的时候无效。 |
2 |
EX_DEF_ERR,Excessive Deferral
Error,发送终止由于回退时间过长,此位只有在EN_DEF_CHECK =
1的情况下有效。0x0:未发生错误;0x1:出现回退过量错误 |
1 |
TXFIFO_UF_ERR,TXFIFO Underflow
Error,TXFIFO下溢出错误,DMA从Buffer地址读取帧数据错误。0x0:未出现错误;0x1:发生下溢出错误 |
0 |
DEF_STS,Defer
Status,回退状态,在发送前检测到载波而引起的回退,此位只对于半双工模式有效。0x0:未出现回退;0x1:发送时出现回退 |