发明名称 一种基于能力预测的防阻塞多通道数据传输方法
摘要 本发明提供的一种基于能力预测的防阻塞多通道数据传输方法,包括数据接收和数据发送两部分,采用了多级缓存结构和主动式DMA技术并结合了能力预测机制。本发明的技术方案减少了CPU同外设之间的交互信息,降低了带宽的占用,释放了CPU资源并节省了芯片资源,从而避免了多功能外设各虚拟设备间的相互阻塞并保证了各虚拟设备的传输带宽。
申请公布号 CN103389950A 申请公布日期 2013.11.13
申请号 CN201310301485.3 申请日期 2013.07.15
申请人 武汉中元华电科技股份有限公司 发明人 程辉辉;邓政;王涛;郑容;高保红;袁成伟
分类号 G06F12/08(2006.01)I;G06F13/38(2006.01)I 主分类号 G06F12/08(2006.01)I
代理机构 武汉开元知识产权代理有限公司 42104 代理人 唐正玉
主权项 一种基于能力预测的防阻塞多通道数据传输方法,其特征在于,所述方法包括数据接收和数据发送两部分,其中,所述数据接收包括如下步骤:步骤1.1:在CPU中创建地址缓存,将地址缓存的相关信息写入可编程逻辑器件;步骤1.2:在CPU中创建报文缓存,将报文缓存的地址依次写入地址缓存中,并更新可编程逻辑器件中地址缓存的写指针;步骤1.3:实时判断地址缓存中是否存储有报文缓存的地址信息,并且判断可编程逻辑器件的一级缓存是否有缓存能力;步骤1.4:如果地址缓存中存储有报文缓存的地址信息并且一级缓存有缓存能力,则将报文缓存的地址信息从地址缓存中搬移到一级缓存中,并更新地址缓存的读指针;否则转入步骤1.3;步骤1.5:当多通道中的某一通道有数据到达时,判断该通道对应的一级缓存中是否有地址信息;步骤1.6:如果一级缓存中有地址信息,则采用一级缓存中的地址对数据进行封装后发送给CPU并更新一级缓存的缓存能力;否则不对数据进行封装和发送;所述数据发送包括如下步骤:步骤2.1:在CPU中创建指令缓存,将指令缓存的相关信息写入可编程逻辑器件;步骤2.2:当应用层有数据发送时,将待发送数据的相关信息写入所述指令缓存中,并更新可编程逻辑器件中指令缓存的写指针;步骤2.3:实时判断指令缓存中是否有可取的指令,并且判断可编程逻辑器件的一级缓存是否有缓存能力;步骤2.4:如果指令缓存中存储有可取的指令并且一级缓存有缓存能力,则将可取的指令从指令缓存中搬移到一级缓存中,并更新指令缓存的 读指针;否则转入步骤2.3;步骤2.5:从多通道中的某一通道的一级缓存中取出指令并与该通道的发送能力做比较;步骤2.6:如果该发送通道的发送能力大于等于待发送数据的长度,则减少该通道的发送能力,然后将待发送数据从CPU内存载入到可编程逻辑器件的数据缓存中,最后将待发送数据从该通道进行发送。
地址 430223 湖北省武汉市东湖开发区华工科技园六路6号