System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种AXI总线转通用数据流的传输系统技术方案_技高网

一种AXI总线转通用数据流的传输系统技术方案

技术编号:42689096 阅读:27 留言:0更新日期:2024-09-10 12:37
本申请涉及数字信息的传输技术领域,特别是涉及一种AXI总线转通用数据流的传输系统。其包括编码模块、解码模块和配置模块,编码模块用于将AXI总线格式的数据转换为通用数据流格式的数据,解码模块用于将通用数据流格式的数据转换为AXI总线格式的数据;编码器模块包括位移拼接器、组包模块和第一缓冲器,位移拼接器用于对1个时钟周期内的AXI总线对应的所有预设通道的数据进行拼接,并将拼接后得到的拼接数据发送给组包模块;组包模块用于接收所述拼接数据,为所述拼接数据设置1个包头和1个包尾,并将设置包头和包尾后得到的数据包发送给第一缓冲器或发送给远端。本发明专利技术能够提高整个数据流通道的数据利用率。

【技术实现步骤摘要】

本专利技术涉及数字信息的传输,特别是涉及一种axi总线转通用数据流的传输系统。


技术介绍

1、axi总线即advanced extensible interface(高级可扩展接口),它是由arm定义的一种接口协议,该协议属于amba标准,主要用于满足高性能存储器映射需求。axi协议定义了5条通道,分别是读地址通道ar、读数据通道r、写地址通道aw、写数据通道w和写返回通道b。请求的发起者与响应的接收者记为axi master(主端),请求的接收者与响应的发起者即为axi slave(从端)。5条通道之间互相独立,各自分别采用valid ready的握手方式完成master与slave之间的数据交互。通道之间仅依靠i d号完成地址与数据之间的对应关系。

2、通用数据流主要指应用于高速流数据传输的协议,如axi stream、ucie等。通用数据流传输不分读写,也没有地址接口,仅有数据信息。

3、当本端上层的axi总线请求想要与远端的axi接口进行交互时,往往需要借助高速的串行数据通道进行传输,即本端的axi请求需要先转换为通用数据流格式的数据,然后这些转换后的数据流通过高速串行通道发送至远端,最后远端将接收到的数据流再转换成axi总线格式发送至上层。同理对于远端的axi响应数据,也是采用同样的方式最终回到本端。

4、由于通用数据流协议接口没有地址接口,仅有数据接口,现有的方案往往将一个时钟周期内各通道的信号各自进行拼接成包,插入包头与填充比特后直接向通用数据流发送该包。

5、以32bit位宽的读数据通道r为例:将其中的4bit rid,32bit rdata,2bit rresp,1bit rlast按照固定顺序拼接成39bit的包,然后拼接3bit包头(共有5个通道5种包,因此需要3bit来区分),最后拼接6bi t填充比特作为包尾,使得整个包的长度为byte的倍数,向通用数据流发送。同理对于其他通道也采用相同的方式进行打包处理。

6、上述现有的方案存在以下问题:为每个通道都插入了包头与填充比特,使得整个数据流通道的数据利用率不高;而且,由于在一个时钟周期内,数据流产生的一笔数据内可能有多个包头,这不仅大大增加了拆包的逻辑复杂度,而且需要多个时钟周期才能完成拆包,增加了拆包的延时。


技术实现思路

1、本专利技术目的在于,提供一种axi总线转通用数据流的传输系统,以解决上述现有的方案存在的问题。

2、根据本专利技术,提供了一种axi总线转通用数据流的传输系统,所述传输系统包括编码模块、解码模块和配置模块,所述编码模块用于将axi总线格式的数据转换为通用数据流格式的数据,所述解码模块用于将通用数据流格式的数据转换为axi总线格式的数据。

3、所述编码器模块包括位移拼接器、组包模块和第一缓冲器,所述位移拼接器用于对1个时钟周期内的axi总线对应的所有预设通道的数据进行拼接,并将拼接后得到的拼接数据发送给组包模块。

4、所述组包模块用于接收所述拼接数据,为所述拼接数据设置1个包头和1个包尾,并将设置包头和包尾后得到的数据包发送给第一缓冲器或发送给远端。

5、所述第一缓冲器用于临时存储未发送给远端的数据包。

6、所述解码器模块包括拆包模块和第二缓冲器,所述拆包模块包括包头定位模块和数据拆分模块,所述包头定位模块用于定位数据包中的包头位置;所述数据拆分模块用于将数据包中除包头以外的数据进行拆分,并将拆分后得到的axi总线对应的每一预设通道的数据发送给第二缓冲器或发送给请求的接收方。

7、所述第二缓冲模块用于临时存储未发送给请求的接收方的axi总线对应的每一预设通道的数据。

8、所述配置模块包括包头控制模块、长度控制模块和缓冲器控制模块,所述包头控制模块用于控制数据包的包头的长度;所述长度控制模块用于控制axi总线对应的每一预设通道的数据的长度;所述缓冲器控制模块用于控制第一缓冲模块和第二缓冲模块的大小。

9、本专利技术与现有技术相比,其至少具有以下有益效果:

10、本专利技术的axi总线转通用数据流的传输系统包括编码模块、解码模块和配置模块,其中编码模块包括位移拼接器和组包模块,位移拼接器用于对1个时钟周期内的axi总线对应的所有预设通道的数据进行拼接,组包模块用于对拼接后得到的拼接数据设置1个包头和包尾,由此,1个时钟周期内的axi总线对应的是一个数据包,后期解码模块中的拆包模块对数据包进行拆包时也只有1个包头,可以解决现有的方案中单独为每一通道打包导致的使得整个数据流通道的数据利用率不高和拆包困难的问题。

11、而且,本专利技术的配置模块可以对包头的长度、每一预设通道的数据的长度、第一缓冲模块和第二缓冲模块的大小进行灵活配置,可以使传输系统适用于不同的数据传输环境,有利于进一步提高传输效率。

本文档来自技高网...

【技术保护点】

1.一种AXI总线转通用数据流的传输系统,其特征在于,所述传输系统包括编码模块、解码模块和配置模块,所述编码模块用于将AXI总线格式的数据转换为通用数据流格式的数据,所述解码模块用于将通用数据流格式的数据转换为AXI总线格式的数据;

2.根据权利要求1所述的AXI总线转通用数据流的传输系统,其特征在于,所述包头控制模块用于执行以下步骤:

3.根据权利要求2所述的AXI总线转通用数据流的传输系统,其特征在于,S200还包括:如果qi=1,则判断AXI总线的第i个通道为预设通道;否则,判断AXI总线的第i个通道不为预设通道。

4.根据权利要求1所述的AXI总线转通用数据流的传输系统,其特征在于,所述长度控制模块用于执行以下步骤:

5.根据权利要求4所述的AXI总线转通用数据流的传输系统,其特征在于,包尾的长度的获取过程包括:

6.根据权利要求2所述的AXI总线转通用数据流的传输系统,其特征在于,pi的获取过程包括:

7.根据权利要求2所述的AXI总线转通用数据流的传输系统,其特征在于,AXI总线的第1个通道为读地址通道,AXI总线的第2个通道为读数据通道,AXI总线的第3个通道为写地址通道,AXI总线的第4个通道为写数据通道,AXI总线的第5个通道为写返回通道。

8.根据权利要求2所述的AXI总线转通用数据流的传输系统,其特征在于,所述通用数据流为AXI stream协议或UCIE协议。

...

【技术特征摘要】

1.一种axi总线转通用数据流的传输系统,其特征在于,所述传输系统包括编码模块、解码模块和配置模块,所述编码模块用于将axi总线格式的数据转换为通用数据流格式的数据,所述解码模块用于将通用数据流格式的数据转换为axi总线格式的数据;

2.根据权利要求1所述的axi总线转通用数据流的传输系统,其特征在于,所述包头控制模块用于执行以下步骤:

3.根据权利要求2所述的axi总线转通用数据流的传输系统,其特征在于,s200还包括:如果qi=1,则判断axi总线的第i个通道为预设通道;否则,判断axi总线的第i个通道不为预设通道。

4.根据权利要求1所述的axi总线转通用数据流的传输系统,其特征在于,所述长度控...

【专利技术属性】
技术研发人员:侯健潮于彬宋楠万鹏陈聪
申请(专利权)人:上海合见工业软件集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1