一种AXI总线的ID压缩装置及方法制造方法及图纸

技术编号:36512214 阅读:12 留言:0更新日期:2023-02-01 15:41
本发明专利技术公开了一种AXI总线的ID压缩装置及方法。AXI总线的ID压缩装置包括映射关系生成模块、第一映射模块和第二映射模块;映射关系生成模块用于生成与主机侧地址通道ID对应的新ID,以及生成主机侧地址通道ID与新ID的映射关系表;第一映射模块用于根据映射关系生成模块生成的新ID,生成从机侧地址通道ID;第二映射模块用于根据从机侧响应ID查找映射关系表,生成主机侧响应ID。本发明专利技术能够非常简便地对AXI总线的ID进行压缩,并且不会影响原有AXI总线传输的性能。线传输的性能。线传输的性能。

【技术实现步骤摘要】
一种AXI总线的ID压缩装置及方法


[0001]本专利技术属于数据处理
,更具体地,涉及一种AXI总线的ID压缩装置及方法。

技术介绍

[0002]AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线,目前在SoC模块互联中被广泛应用。AXI总共有五个通道,分别为写地址通道(Write Address Channel,AW Channel)、写数据通道(Write Data Channel,W Channel)、写响应通道 (Write Response Channel,B Channel)、读地址通道(Read Address Channel,AR Channel)和读响应通道(Read Response Channel,R Channel)。
[0003]AXI总线的ID在AXI总线传输当中起到了标记传输序号的作用,读地址通道与读响应通道之间、以及写地址通道与写响应通道之间均依靠ID进行标识和匹配。AXI传输的发起者(即主机,Master)会有一个Master侧的ID,AXI传输的接收者(即从机,Slave)会有一个Slave侧的ID,具体传输的ID由Master侧决定。Master以及Slave一般都是一些具体的IP,例如ARM Core、SLC、DDR等,AXI总线的ID宽度可以配置,然而配置的AXI总线的ID位宽都有限制,并不是完全随意的。并且,为了避免总线死锁,在一些总线类的IP(例如CoreLink)中会对传递到Slave侧的ID位宽进行扩展。
[0004]当Master侧的ID位宽小于Slave侧的ID位宽时,从Master到Slave的ID可以选择在Slave侧进行补0,从Slave到Master的ID可以在Master侧截取,很容易解决这一类ID位宽不匹配的问题。而当Master侧的ID位宽大于Slave侧的ID位宽时,却无法这么做,因为从Master到Slave的ID如果进行截取的话会丢失信息,Master无法根据Slave回复的ID将请求以及响应的数据匹配上,导致无法进行正常传输。因此,当这种场景发生时,需要对AXI 总线的ID进行压缩。
[0005]而如果使用哈希的方式进行ID的散列,将压缩前的ID与压缩后的ID进行映射,则有可能出现哈希碰撞,导致两个不同的ID转换出来相同的ID,进而导致无法根据Slave回复的ID准确度查找出原始的ID。此外,在常见的系统中,AXI的Outstanding能力(是指AXI的Master不需要等到response,就可以持续发写命令的个数,也即是“在路上”的写命令个数)总是比ID的位宽所能表示的传输个数要小得多,因此,这样的完全映射也是不必要的。

技术实现思路

[0006]针对现有技术的以上缺陷或改进需求,本专利技术提供了一种AXI总线的ID压缩装置及方法,能够非常简便地对AXI总线的ID进行压缩,并且不会影响原有AXI总线传输的性能。
[0007]为实现上述目的,按照本专利技术的一个方面,提供了一种AXI总线的ID压缩装置,包括:映射关系生成模块、第一映射模块和第二映射模块;映射关系生成模块用于生成与主机
侧地址通道ID对应的新ID,以及生成主机侧地址通道ID与新ID的映射关系表;第一映射模块用于根据映射关系生成模块生成的新ID,生成从机侧地址通道ID;第二映射模块用于根据从机侧响应ID查找映射关系表,生成主机侧响应ID。
[0008]在一些实施方式中,AXI总线的ID压缩装置还包括计数器;映射关系生成模块还用于基于计数器的计数值生成索引,并将生成的索引写入映射关系表。
[0009]在一些实施方式中,在从机不会乱序返回时,映射关系生成模块还用于将收到的主机侧地址通道ID写入映射关系表中与当前索引对应的位置,并基于计数器的当前计数值,生成与当前主机侧地址通道ID对应的新ID;计数器的计数值在写入当前主机侧地址通道ID以及生成当前主机侧地址通道ID对应的新ID的过程中保持不变,在当前主机侧地址通道ID写入以及当前主机侧地址通道ID对应的新ID生成之后发生改变。
[0010]在一些实施方式中,在从机不会乱序返回时,映射关系生成模块还用于将生成的新ID发送给第一映射模块,而不将生成的新ID写入映射关系表。
[0011]在一些实施方式中,在从机会乱序返回时,映射关系生成模块还用于将收到的主机侧地址通道ID写入映射关系表中与当前索引对应的位置,检查映射关系表中是否存在与当前主机侧地址通道ID相同的旧ID,以及根据检查结果,按照不同的规则生成与当前主机侧地址通道ID对应的新ID,并将生成的新ID写入映射关系表中与当前索引对应的位置;其中,旧ID是指映射关系表中已有的主机侧地址通道ID;计数器的计数值在写入当前主机侧地址通道ID以及当前主机侧地址通道ID对应的新ID的过程中保持不变,在当前主机侧地址通道ID以及当前主机侧地址通道ID对应的新ID写入之后发生改变。
[0012]在一些实施方式中,在映射关系表中不存在与当前主机侧地址通道ID相同的旧ID时,映射关系生成模块基于计数器的当前计数值,生成与当前主机侧地址通道ID对应的新ID。
[0013]在一些实施方式中,在映射关系表中存在与当前主机侧地址通道ID相同的旧ID时,映射关系生成模块生成与当前主机侧地址通道ID对应的新ID,并使得生成的新ID等于相同的旧ID中与计数器的当前计数值对应的索引表项的索引距离最小的旧ID对应的新ID。
[0014]在一些实施方式中,在从机会乱序返回时,第二映射模块还用于根据从机侧响应ID对应的新ID,查找映射关系生成表,获取目标索引表项,目标索引表项中的新ID与从机侧响应ID对应的新ID一致;以及在仅存在一个目标索引表项时,将目标索引表项中的旧ID作为主机侧响应ID输出至主机;在存在多个目标索引表项时,选取该多个目标索引表项中与计数器的当前计数值对应的索引表项的索引距离最大者,将该索引距离最大的目标索引表项中的旧ID作为主机侧响应ID输出至主机。
[0015]在一些实施方式中,映射关系生成模块还用于在从机会乱序返回时,将有效标志位写入映射关系表,每个索引表项均包含有效标志位,有效标志位用于指示其所对应的索引表项是否处于有效状态。
[0016]在一些实施方式中,映射关系生成模块还用于将当前主机侧地址通道ID以及与当前主机侧地址通道ID对应的新ID写入映射关系表后,使得对应的有效标志位指示当前索引表项处于有效状态;以及将目标索引表项中的旧ID作为主机侧响应ID输出至主机后,使得对应的有效标志位指示该旧ID所在的目标索引表项处于无效状态。
[0017]根据本专利技术的另一方面,提供了一种片上系统,包括主机、从机以及上述AXI总线
的ID压缩装置。
[0018]根据本专利技术的又一方面,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种AXI总线的ID压缩装置,其特征在于,包括:映射关系生成模块、第一映射模块和第二映射模块;所述映射关系生成模块用于生成与主机侧地址通道ID对应的新ID,以及生成主机侧地址通道ID与新ID的映射关系表;所述第一映射模块用于根据所述映射关系生成模块生成的新ID,生成从机侧地址通道ID;所述第二映射模块用于根据从机侧响应ID查找映射关系表,生成主机侧响应ID。2.如权利要求1所述的AXI总线的ID压缩装置,其特征在于,还包括计数器;所述映射关系生成模块还用于基于所述计数器的计数值生成索引,并将生成的索引写入映射关系表。3.如权利要求2所述的AXI总线的ID压缩装置,其特征在于,在从机不会乱序返回时,所述映射关系生成模块还用于将收到的主机侧地址通道ID写入映射关系表中与当前索引对应的位置,并基于所述计数器的当前计数值,生成与当前主机侧地址通道ID对应的新ID;所述计数器的计数值在写入当前主机侧地址通道ID以及生成当前主机侧地址通道ID对应的新ID的过程中保持不变,在当前主机侧地址通道ID写入以及当前主机侧地址通道ID对应的新ID生成之后发生改变。4.如权利要求3所述的AXI总线的ID压缩装置,其特征在于,在从机不会乱序返回时,所述映射关系生成模块还用于将生成的新ID发送给所述第一映射模块,而不将生成的新ID写入映射关系表。5.如权利要求2所述的AXI总线的ID压缩装置,其特征在于,在从机会乱序返回时,所述映射关系生成模块还用于将收到的主机侧地址通道ID写入映射关系表中与当前索引对应的位置,检查映射关系表中是否存在与当前主机侧地址通道ID相同的旧ID,以及根据检查结果,按照不同的规则生成与当前主机侧地址通道ID对应的新ID,并将生成的新ID写入映射关系表中与当前索引对应的位置;其中,旧ID是指映射关系表中已有的主机侧地址通道ID;所述计数器的计数值在写入当前主机侧地址通道ID以及当前主机侧地址通道ID对应的新ID的过程中保持不变,在当前主机侧地址通道ID以及当前主机侧地址通道ID对应的新ID写入之后发生改变。6.如权利要求5所述的AXI总线的ID压缩装置,其特征在于,在映射关系表中不存在与当前主机侧地址通道ID相同的旧ID时,所述映射关系生成模块基于所述计数器的当前计数值,生成与当前主机侧地址通道ID对应的新ID。7.如权利要求5所述的AXI总线的ID压缩装置,其特征在于,在映射关系表中存在与当前主机侧地址通道ID相同的旧ID时,所述映射关系生成模块生成与当前主机侧地址通道ID对应的新ID,并使得生成的新ID等于相同的旧ID中与所述计数器的当前计数值对应的索引表项的索引距离最小的旧ID对应的新ID。8.如权利要求5至7中任一项所述的AXI总线的ID压缩装置,其特征在于,在从机会乱序返回时,所述第二映射模块还用于根据从机侧响应ID对应的新ID,查找映射关系生成表,获取目标索引表项,目标索引表项中的新ID与从机侧响应ID对应的新ID一致;以及在仅存在一个目标索引表项时,将目标索引表项中的旧ID作为主机侧响应ID输出至主机;在存在多个目标索引表项时,选取该多个目标索引表项中与所述计数器的当前计数值对应的索引表项的索引距离最大者,将该索引距离最大的目标索引表项中的旧ID作为主机侧响应ID输出至主机。9.如权利要求8所述的AXI总线的ID压缩装置,其特征在于,所述映射关系生成模块还
用于在从机会乱序返回时,将有效标志位写入映射关系表,每个索引表项均包含有效标志位,有效标志位用于指示其所对应的索引表项是否处于有效状态。10.如权利要求9所述的AXI总线的ID压缩装置,其特征在于,所述映射关系生成模块还用于将当前主机侧地址通道ID以及与当前主机侧地址通道ID对应的新ID写入映射关系表后,使得对应的有效标志位指示当前索引表项处于有效状态;以及将目标索引表项中的旧ID作为主机侧响...

【专利技术属性】
技术研发人员:杨明杰黄宇浩何颖姚意盛
申请(专利权)人:芯动微电子科技珠海有限公司
类型:发明
国别省市:

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

1