景芯SoC系统中AXI4 AXI3兼容性及exclusive access

发布网友 发布时间:2024-10-21 15:47

我来回答

1个回答

热心网友 时间:6分钟前

AXI4和AXI3是SoC设计中的总线协议,负责处理器与其他外设之间的数据传输。两者存在以下主要区别:

1. AXI4增加Burst Length

AXI3的最大突发长度为16 beats,而AXI4最大可达256 beats,AxLEN位宽也增加到8位。需要注意的是,这种扩展主要针对INCR突发类型,而WRAP和FIXED突发类型的最大长度仍然在16 beats。在大型SoC系统中,AXI4和AXI3常混用,若总线从AXI4转为AXI3,则len直接从[7:0]截位为[3:0],需要控制源头激励,len不能大于15。否则会无响应进而挂死,推荐使用协议桥来完成转换。

2. AXI4引入QoS

AXI4引入了新的信号来支持服务质量(QoS),如4bit的AWQOS和ARQOS信号,允许系统根据事务重要性分配不同服务级别。主要针对不同写/读事务的优先级,如果不使用,建议设置为default value 4'b0000。AXI4协议没有规定QoS的用法,一般由具体SoC架构特性决定,协议中希望互联组件中有可配置寄存器,在传输中可以修改Qos信号值。一般尽量在系统级统一规划QoS,并且设置为可编程QoS。QoS值越大,优先级越高。

3. AXI4取消锁定事务

AXI4去除了对锁定事务的支持,以提高协议简洁性。在AXI3中,锁定事务允许主设备锁定从设备的访问,直到完成其事务。AXI4中,AxLOCK信号从2位减少到了1位,不再支持Locked access,只支持Normal access、Exclusive access。

4. AXI4升级AxCACHE

AXI4中AWCACHE和ARCACHE信号的含义发生变化,以适应ARM CPU架构的发展和对内存属性更复杂的定义。AXI4将cache bit改名为modifiable,更新RA、WA的概念,将不用的allocate bit改为other allocate。

5. AXI4升级写响应

AXI4规定了更严格的写响应条件,必须等到地址通路和数据通路都准备好,并且明确了要等WLAST信号后,从设备才能发出BVALID进行写响应,这保证了事务真正完成时才发送响应。AXI4必须等到AWVALID,AWREADY,WVALID, WREADY, and WLAST 都为高后,SLAVE才能发BVALID进行写响应,进一步避免了deadlock。

6. AXI4升级AxUSER

AXI4定义了USER信号的位宽和用法,以支持更广泛的应用。AXI4在写控制通道、写数据通道、写反馈通道和读控制通道中引入了额外的用户自定义信号,如AWUSER、WUSER、BUSER、ARUSER和RUSER,以支持更广泛的应用场景。

7. AXI4取消WID

AXI4取消WID,写通道不再支持write data interleave功能。这样可以减少pin count,减少设计复杂度。

8. AXI4新增AxREGION

AXI4增加了2个4bit AxREGION信号,主要作用是简化slave中的address decode,由interconnect在做address decode时产生,同样必须在4k范围内。AxREGION是可选的功能,一般用的较少。

总结,AXI4和AXI3在互联时需要注意信号的兼容性,例如AWID、AxLOCK、AxLEN等信号的处理方式有所不同。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com