一、Intel 82599的BD结构
1、文档名称“82599-10-gbe-controller-datasheet.pdf”,可以从intel官网上下载。
https://www.intel.cn/content/www/cn/zh/embedded/products/networking/82599-10-gbe-controller-datasheet.html?wapkw=82599
2、接收BD结构分为两种,一种是传统的BD结构,一种是高级的BD结构。
传统的BD结构就可以有助于理解收发流程
(1)最重要的BD成员是接收地址、报文长度、状态位。
接收地址用于指示DMA将报文放到内存中哪个物理位置。
报文长度表示此次接收报文的长度。
状态位用于硬件和软件之间的交互,此BD的处理情况,硬件是否可以继续用这个BD接收?
(2)BD状态位的分析
最重要的就是DD和EOP,分别表示硬件接收了报文,还是软件已经处理了报文,其他字段只是辅助性的。
3、发送BD,也分为两种格式,一种是传统的,一种是高级的。我们只分析传统格式即可。
4、发送流程:基本思路是软件填bd, 硬件发送完成后通过中断反馈状态信息。
二、powerpc 830的BD结构
1、接收BD结构
2、发送BD结构