本申请涉及芯片内部不同模块之间的数据传输,更具体地,涉及一种基于axi协议的数据分组传输的方法、支持该方法进行片内互联的片上系统以及采用该片上系统的芯片。
背景技术:
1、axi(高级可扩展接口)是一种面向高性能、高带宽、低延迟的片内总线,axi总线也是一种多通道传输总线,将地址、读数据、写数据、握手信号在不同的通道中发送,不同的访问之间顺序可以打乱。它的地址/控制和数据相位是分离的,支持不对齐的数据传输。axi协议作为arm标准的接口协议,主要应用于片内系统互联,可实现不同ip之间通过标准的互联总线进行交互。然而,对于现有的基于axi协议的数据传输方案,其数据传输效率仍存在较大的提升空间。
技术实现思路
1、本申请的实施例提供了一种基于axi协议的数据分组传输的方法,该方法包括:对不同通道的数据进行组包,所述不同通道包括写地址通道、写数据通道、写响应通道、读地址通道和读数据通道;以及通过固定位宽的数据链路传输组包后的数据。
2、在一些实施例中,基于axi协议的数据分组传输的方法还包括:对所述不同通道中的每个通道的数据独立封包从而获得所述不同通道的封包数据,所述对不同通道的数据进行组包包括:对所述不同通道的封包数据进行组包。
3、在一些实施例中,基于axi协议的数据分组传输的方法中对所述不同通道的封包数据进行组包包括:依据所述写地址通道、所述写数据通道、所述读地址通道、所述写响应通道以及所述读数据通道的顺序对所述不同通道的封包数据进行组包。
4、在一些实施例中,基于axi协议的数据分组传输的方法中对所述不同通道中的每个通道的数据独立封包从而获得所述不同通道的封包数据包括:对所述写地址通道、所述读地址通道和所述写响应通道的数据分别独立封包,以固定所述写地址通道、所述读地址通道和所述写响应通道的封包数据的长度。
5、在一些实施例中,基于axi协议的数据分组传输的方法中对所述不同通道中的每个通道的数据独立封包从而获得所述不同通道的封包数据包括:对所述写数据通道和所述读数据通道的数据分别独立封包,使得所述写数据通道的封包数据和所述读数据通道的封包数据分别包括指示相应通道的封包数据的长度的字段。
6、在一些实施例中,基于axi协议的数据分组传输的方法中对所述不同通道中的每个通道的数据独立封包从而获得所述不同通道的封包数据包括:对所述写数据通道数据独立封包从而获得第一类型写数据通道封包数据和第二类型写数据通道封包数据,其中所述第一类型写数据通道封包数据包括写数据有效性字段,所述写数据有效性字段用于指示所述写数据通道的数据针对数据接收端的有效性,所述第二类型写数据通道封包数据不包括写数据有效性字段,所述第二类型写数据通道封包数据所包括的写数据通道的数据对所述数据接收端均有效。
7、在一些实施例中,基于axi协议的数据分组传输的方法中所述通过固定位宽的数据链路传输组包后的数据包括:在每个传输周期以固定位宽数据链路传输组包后的数据,且响应于所述写地址通道、所述写数据通道、所述读地址通道、所述写响应通道以及所述读数据通道中任一通道的待传输数据当前周期未传输完,下一周期继续传输。
8、在一些实施例中,基于axi协议的数据分组传输的方法中所述在每个传输周期以固定位宽数据链路传输组包后的数据包括:响应于当前周期所有待传输数据的数据量的总和小于所述固定位宽,在所述待传输数据后插入空占位符使得当前周期传输的数据量的总和等于所述固定位宽。
9、在一些实施例中,所述不同通道中的每个通道的封包数据包括用于区分不同通道的封包数据的信号类型字段,基于axi协议的数据分组传输的方法还包括:根据所述不同通道中各个通道的封包数据的信号类型字段和封包数据的长度从所述数据链路分别提取所述写地址通道、所述写数据通道、所述写响应通道、所述读地址通道和所述读数据通道的封包数据。
10、在一些实施例中,基于axi协议的数据分组传输的还包括:将提取到的所述写地址通道、所述写数据通道、所述写响应通道、所述读地址通道和所述读数据通道的封包数据分别恢复为所述写地址通道、所述写数据通道、所述写响应通道、所述读地址通道和所述读数据通道的数据。
11、本申请的另一实施例提供了一种片上系统,该片上系统支持如前述基于axi协议的数据分组传输方法的实施例中任一实施例所述的方法进行片内互联。
12、本申请的又一实施例提供了一种芯片,该芯片采用如上述实施例所述的片上系统。
13、根据下文描述的实施例,本申请的这些和其它优点将变得清楚,并且参考下文描述的实施例来阐明本申请的这些和其它优点。
1.一种基于axi协议的数据分组传输的方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其中所述方法还包括:
3.根据权利要求2所述的方法,其中对所述不同通道的封包数据进行组包包括:
4.根据权利要求2所述的方法,其中对所述不同通道中的每个通道的数据独立封包从而获得所述不同通道的封包数据包括:
5.根据权利要求2所述的方法,其中对所述不同通道中的每个通道的数据独立封包从而获得所述不同通道的封包数据包括:
6.根据权利要求2所述的方法,其中对所述不同通道中的每个通道的数据独立封包从而获得所述不同通道的封包数据包括:
7.根据权利要求3所述的方法,所述通过固定位宽的数据链路传输组包后的数据包括:
8.根据权利要求7所述的方法,其中所述在每个传输周期以固定位宽数据链路传输组包后的数据包括:
9.根据权利要求2-8中任一项所述的方法,其中所述不同通道中的每个通道的封包数据包括用于区分不同通道的封包数据的信号类型字段,其中所述方法还包括:
10.根据权利要求9所述的方法,其中所述方法还包括:
11.一种片上系统,其特征在于,所述片上系统支持如权利要求1-10中任一项所述的基于axi协议的数据分组传输的方法进行片内互联。
12.一种芯片,其特征在于,所述芯片采用如权利要求11所述的片上系统。