AXI协议学习总结(二)

一、交易标识符ID

  •  AXI交易标识符ID,主机用这些ID来判别必须按顺序返回的交易。
  • 同一ID的交易必须按顺序返回,不同ID的交易可以乱序 。
  • AXI通过使用ID,主机可以不等待一笔交易完成就发起多笔交易。起到提升系统性能的作用,实现多笔交易的并行处理。
  • 从机需要返回合适的BID或者RID来响应主机的ID。

二、AXI中的outstanding传输

outstanding传输: 也可以称为AXI超前传输,表示这次事务还没完成,可以先发起别的事务,即outstanding操作是不需要等待前一笔传输完成就可以发送下一笔操作

在不考虑乱序和交织的情况下,AXI事务都是顺序完成的,这时多事务在传输上不需要其他信号来实现,直接根据write channel或者read channel的last信号或者response channel的信号来判断分割事务就行

超前传输需要master和slave都支持超前传输,其中outstanding depth表示了主机超前传输的性能,表示同一时刻最多支持多少个AXI 事务。

如果slave不支持outstanding如何响应?

  • AXI 从机可选地支持outstanding,假设从机不支持超前传输,只需要在接收到 第一个事务指令 后,置低 AxREADY 信号,阻止主机outstanding传输。在返回完成第一个事务传输数据后,再置高 AxREADY 信号,接收下一事务。

三、乱序 out of order传输

乱序传输:表示当有多个事务在传输时,有的事务可能先准备好,因此可以先发送在总线上,通过ID号来区分数据和响应来自哪一个事务,乱序指得是事务乱序,而不是说的master,即多个不同master可以发起多个不同的事务,单个master也可以发起多个不同的事务

说明:

  • 不同事务的AxID如果一致,那么这些事务就不能实现out of order,只能进行顺序完成。(因此需要重排序模型,重排序模型包括了事务缓冲区和数据缓冲区,事务缓冲区存放在途需要完成的事务,对于slave来说,其可能对于不同事务完成的时间不同,因此事务准备好了与事务缓冲区的首个事务比较,如果匹配就输出,如果不匹配就进入数据缓冲区)
  • 如果不同事务AxID不同,那么这些事务之间可以乱序。那么不同AxID事务的数据,对于AXI读来说,如何判断返回的数据属于哪个事务呢,是通过RID来进行匹配的,也就是说,在完成乱序传输的时候,需要RIDARID保持一致,以标识不同事务的数据
  • 那么对于实际情况来说,在实际传输中,可能有的事务AxID是不同的,有的是相同的,这是如何解决的?答:对于ID相同的就顺序完成,对于ID不同的可以乱序
  • 在实际应用中,在slave的实现中,为每个ARID准备了一个事务缓冲区和数据缓冲区,以支持相同ID和不同ID的数据顺序传输和乱序传输。

特殊的写乱序:在AXI4中取消了WID,所以写地址和写数据的顺序必须一致

四、 交织interleaving 传输

交织传输:表示实现不同transaction中的beat的交替传输,但同一transaction的beat是需要按照顺序进行传输的, AXI4不再支持写交织。(依然需要根据ID号来判断数据属于哪个事务)

例如事务A指令为A,数据是a0,a1,a2,事务B指令是B,数据是b0,b1,b2,

支持交织数据总线数据顺序就可以是a0,b0,a1,b1,a2,b2(或者其他顺序)

不支持交织数据总线数据顺序就只能是a0,a1,a2,b0,b1,b2或者b0,b1,b2,a0,a1,a2

  • 9
    点赞
  • 83
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
AMBA协议是指Advanced Microcontroller Bus Architecture(高级微控制器总线结构)协议,其中包括多个不同的总线协议,用于在现代SoC(系统级芯片)设计中实现高效的内部通信。其中,AMBA的第四代是AXI(Advanced eXtensible Interface)协议AXI协议是AMBA协议中的一种,被广泛应用于现代SoC设计中。它提供了一种高性能,灵活且可扩展的总线接口,用于在处理器、外设设备和内存之间进行高效的数据传输。AXI协议具有多个特性,包括支持高带宽、流水线设计、分层模型和端到端数据保护等。 AXI协议的主要特点包括: 1. 高带宽:AXI协议支持高频率的数据传输,能够满足现代SoC设计对于大量数据的处理需求。 2. 流水线设计:AXI协议使用流水线技术,可以同时进行多个传输操作,提高了总线的效率和吞吐量。 3. 分层模型:AXI协议采用分层的结构,可以灵活地连接多个从属设备,并支持多个处理器之间的共享内存访问。 4. 端到端数据保护:AXI协议引入了一些机制,如校验和和错误检测,以确保数据在传输过程中的完整性和可靠性。 总的来说,AMBA协议中的AXI协议是一种用于现代SoC设计的高性能、灵活和可扩展的总线接口协议,通过提供高带宽、流水线设计和端到端数据保护等特性,满足了现代SoC设计对于高效数据传输的需求。 <span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [AMBA协议- AXI协议指南(1)](https://blog.csdn.net/ygyglg/article/details/129937804)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值