PCIE-SRIO数据交互处理方法与流程

文档序号:26050366发布日期:2021-07-27 15:25阅读:来源:国知局

技术特征:

1.一种pcie-srio数据交互处理方法,其特征在于,包括:在处理器的内存空间划分容量为128mb的空间用于数据,为nwrite/nread/message/swrite各划分16mb的空间;

其中,nwrite为srio协议中的写事务,其作用是向目标设备的存储器指定地址中写入数据;

nread为srio协议中的读事务,其作用是从目标设备的存储器指定地址中读出数据;

message为srio协议中的消息事务,在某些情况下,本地设备不具备访问目标设备的存储器的能力,通过消息(message)可以实现数据从本地设备到目标设备的传递;

swrite为srio协议中的大数据流写事务,其作用是通过类dma操作的方式来实现高效的大数据量迁移。

2.根据权利要求1所述的pcie-srio数据交互处理方法,其特征在于,nwrite操作时,其内部16mb空间以1024字节为单位划分为16384个存储单元,包括以下操作步骤:

步骤11,处理器写入需要发送的数据目标地址、数据包大小和数据内容写入到nwrite内存的第n个存储单元;

步骤12,处理器通过控制与状态处理单元通知系统有nwrite类型的操作需要处理;

步骤13,系统通过axi_mm主接口单元从nwrite内存的第n个存储单元中读取数据并发送给nwrite处理单元;

步骤14,nwrite处理单元对数据进行解析,按照srio协议所要求的格式进行打包并发送给srio接口;

步骤15,数据发送成功,通过控制与状态处理单元通知处理器;数据发送失败,通过控制与状态处理单元通知处理器;

步骤16,无论nwrite发送数据成功/失败,系统内部的nwrite操作计数器自动完成加1操作,以便于下次进行nwrite操作时自动从第n+1个存储单元获取数据(当当前处理的nwrite存储单元为16384时,则下一次处理的存储单元为1)。

3.根据权利要求1所述的pcie-srio数据交互处理方法,其特征在于,nread操作时,其内部16mb空间以1024字节为单位划分为16384个存储单元,包括以下操作步骤:

步骤21,处理器写入需要读取的数据目标地址、数据包大小和数据内容写入到nread内存的第n个存储单元;

步骤22,处理器通过控制与状态处理单元通知系统有nread类型的srio操作需要处理;

步骤23,系统通过axi_mm主接口单元从nread内存的第n个存储单元中读取数据并发送给nread处理单元;

步骤24,nread处理单元对数据进行解析,按照srio协议所要求的格式进行打包并发送给srio接口;

步骤25,远端设备通过srio接口将读取的数据结果发送给nread处理单元;

步骤26,nread处理单元将数据按照nread存储单元的数据存储结构进行打包处理;

步骤27,通过axi_mm主接口处理单元将nread处理单元打包好的数据写回到nread的第n个存储单元;

步骤28,通过控制与状态处理单元通知处理器nread操作完成;

步骤29,如果在超时时间内未接收到远端设备所返回的nread数据,通过控制与状态处理单元通知处理器nread操作超时;

步骤210,无论nread操作成功/失败,系统内部的nread操作计数器自动完成加1操作,以便于下次进行nread操作时自动从第n+1个存储单元获取数据(当当前处理的nread存储单元为16384时,则下一次处理的存储单元为1)。

4.根据权利要求1所述的pcie-srio数据交互处理方法,其特征在于,message操作时,其内部16mb空间以8192字节为单位划分为2048个存储单元,包括以下操作步骤:

步骤31,处理器写入message的邮箱号、优先级和数据内容写入到message内存的第n个存储单元;

步骤32,处理器通过控制与状态处理单元通知系统有message类型的srio操作需要处理;

步骤33,系统通过axi_mm主接口单元从message内存的第n个存储单元中读取数据并发送给message处理单元;

步骤34,message处理单元对数据进行解析,按照srio协议所要求的格式进行打包并发送给srio接口;

步骤35,远端设备通过srio接口将message接收应答发送给message处理单元;

步骤36,当所有message分段发送并得到响应后,message处理单元通过控制与状态处理单元通知处理器message操作完成;

步骤37,如果在超时时间内未接收到远端设备所返回的message应答,通过控制与状态处理单元通知处理器message操作超时;

步骤38,无论message操作成功/失败,系统内部的message操作计数器自动完成加1操作,以便于下次进行message操作时自动从第n+1个存储单元获取数据(当当前发送的message存储单元为2048时,则下一次处理的存储单元为1)。

5.根据权利要求1所述的pcie-srio数据交互处理方法,其特征在于,swrite操作时,其内部16mb空间以1m字节为单位划分为16个存储单元,包括以下操作步骤:

步骤41,处理器写入swrite的目标地址、优先级和数据内容写入到swrite内存的第n个存储单元;

步骤42,处理器通过控制与状态处理单元通知系统有swrite类型的srio操作需要处理;

步骤43,系统通过axi_mm主接口单元从swrite内存的第n个存储单元中读取数据并发送给swrite处理单元;

步骤44,swrite处理单元对数据进行解析,按照srio协议所要求的格式进行打包并发送给srio接口;

步骤45,数据发送成功,通过控制与状态处理单元通知处理器;数据发送失败,通过控制与状态处理单元通知处理器;

步骤46,无论swrite发送数据成功/失败,系统内部的swrite操作计数器自动完成加1操作,以便于下次进行swrite操作时自动从第n+1个存储单元获取数据(当当前处理的swrite存储单元为8时,则下一次处理的存储单元为1)。


技术总结
本发明提供了PCIE‑SRIO数据交互处理方法,包括:在处理器的内存空间划分容量为128MB的空间用于数据,为NWRITE/NREAD/MESSAGE/SWRITE各划分16MB的空间;其中,NWRITE为SRIO协议中的写事务,其作用是向目标设备的存储器指定地址中写入数据。由于采用了上述技术方案,本发明在不增加处理器负担的同时,可有效的降低程序的开发难度和复杂度。

技术研发人员:张欣;王震;陈超;薛爱伦;李美光;黄剑波
受保护的技术使用者:成都实时技术股份有限公司
技术研发日:2021.05.12
技术公布日:2021.07.27
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1