热血青春种子:Early tx threshold这个属性有什么用 数值越大越好吗

来源:百度文库 编辑:神马品牌网 时间:2024/05/09 11:03:22
Early tx threshold这个属性有什么用 数值越大越好吗

RTL8139(A/B)使用四个描述符来定义传输路径,每个路径有一个固定的I/O偏移地址,四个描述符互相组合,确定当时的状态。当描述符写入后,PCI操作把数据包送入描述符描述的发送FIFO(先入先出)内存,发送FIFO是芯片上一个2K字节的缓冲区,它的作用是保存准备送到电缆上的数据。在这个缓冲区中的数据将在达到初始传输限值时发送到电缆上,初始传输限值也用描述符描述。
一个传送描述符包括两个寄存器,分别是传送开始地址(TSAD0-3)即数据包的物理地址(数据包必须存在于连续的物理内存)和传送状态寄存器(TSD0-3),在这里面,最重要的就是传送状态寄存器(TSD0-3),它的各项意义就不一一说明了,只写和我们有关的。当TSD0-3的Bit为21-16时,状态寄存器表示ERTXTH5-0,它描述Early Tx Threshold,这个东东描述开始传输时的Tx FIFO限值,当Tx FIFO中的字节数达到这个限值,或者FIFO中包含至少一个完整的包时,RTL8139(A/B)传送这个包。这个限值不能超过2K字节。
包传送的过程是:
1. 把包拷贝到连续的内存缓冲区中;
2. 写入活动的描述符:
写入缓冲区开始物理地址;
写入传送状态:包的大小、初始传输限值、清除TSD的OWN bit。
3. 当FIFO中数据达到初始传输限值,芯片开始移动数据进入电缆;
4. 当所有的包移入FIFO,OWN bit被设置为1;
5. 当所有的包移入电缆,,TOK(在TSD中)被设置为1;
6. 如果TOK(IMR)被设置为1,TOK(ISR)被设置,则中断被触发;
7. 响应中断,将清空TOK(ISR)状态图表(TOK,OWN)。