发明名称 |
一种硬件封包的基于PCIe的DMA传输方法 |
摘要 |
本发明涉及一种数据传输方法,具体涉及一种基于PCIe的DMA传输方法。一种硬件封包的基于PCIe的DMA传输方法,在基于PCIe总线的板卡设备中,以板卡设备向X86平台传输数据一方为发送侧,以X86平台向板卡设备传输数据为接收侧;其特征在于:包括以下步骤:(1)为发送侧以及接收侧分别设立独立的数据封包控制单元;(2)获取PCIe链路上的Payload<sub>max</sub>;(3)确定首个数据包中携带的最大有效数据量Payload<sub>first</sub>并在起始系统物理地址开始以Payload<sub>max</sub>进行传输,直至剩余数据量不足Payload<sub>max</sub>则停止使用Payload<sub>max</sub>进行传输;(4)确定最后一个数据包中的有效数据量Payload<sub>last</sub>,并传递剩余数据。通过本发明提供的方法,软件的处理负担得以大幅降低,从而保证了数据传输过程更加的流畅和高效。 |
申请公布号 |
CN105320625A |
申请公布日期 |
2016.02.10 |
申请号 |
CN201510669692.3 |
申请日期 |
2015.10.16 |
申请人 |
陕西海泰电子有限责任公司 |
发明人 |
郭恩全;郑霖 |
分类号 |
G06F13/28(2006.01)I;G06F13/38(2006.01)I |
主分类号 |
G06F13/28(2006.01)I |
代理机构 |
西安亿诺专利代理有限公司 61220 |
代理人 |
康凯 |
主权项 |
一种硬件封包的基于PCIe的DMA传输方法,在基于PCIe总线的板卡设备中,以板卡设备向X86平台传输数据一方为发送侧,以X86平台向板卡设备传输数据为接收侧;其特征在于:包括以下步骤:(1)为发送侧以及接收侧分别设立独立的数据封包控制单元;(2)获取PCIe链路上的Payload<sub>max</sub>;(3)确定首个数据包中携带的最大有效数据量Payload<sub>first</sub>并在起始系统物理地址开始以Payload<sub>max</sub>进行传输,直至剩余数据量不足Payload<sub>max</sub>则停止使用Payload<sub>max</sub>进行传输;(4)确定最后一个数据包中的有效数据量Payload<sub>last</sub>,并传递剩余数据。 |
地址 |
710075 陕西省西安市高新区团结南路35号航海科技园十、十一层 |