AXI协议(一)
最近弄Zynq,不懂AXI协议Zynq很难玩儿的转。这些笔记主要攻克AXI中的一些难题。
所有的AXI4包含了5个不同的通道:
(1)读/写地址通道(Read/Write address channel, AR/AW):读、写传输每个都有自己的地址通道,对应的地址通道承载着对应传输的地址控制信息。
(2)读数据通道(Read data channel, R):读数据通道承载着读数据和读响应信号包括数据总线(8/16/32/64/128/256/512/1024bit)和指示读传输完成的读响应信号。
(3)写数据通道(Write data channel, W):写数据通道的数据信息被认为是缓冲(buffered)了的,“主”无需等待“从”对上次写传输的确认即可发起一次新的写传输。写通道包括数据总线(8/16...1024bit)和字节线(用于指示8bit 数据信号的有效性)。
(4)写响应通道(Write response channel, B):“从”使用写响应通道对写传输进行响应。所有的写传输需要写响应通道的完成信号。
从上面5个通道分离(Separate read/write channels------AXI主要特征一)可以看出,相比于AHP的一个通道完成所有的工作,这种5个通道独立操作,能提高performance。
AXI的控制和数据通道分离,可以带来很多好处。地址和控制信息相对数据的相位独立,可以先发地址,然后再是数据,Master访问slave的时候,可以不等需要的操作完成,就发出下一个操作,甚至多个操作。这样,可以让slave在控制流的处理上流水起来,达到提速的作用,也就是 outstanding 操作(Multiple outstanding addresses------AXI主要特征二)。支持多少个outstanding,由资源利用率来决定,ARM处理器典型值32。同时对于master,需要对不同的地址和slave就行访问,所以可以对不同的slave 连续操作。而这样的操作,由于slave 返回数据的先后可能不按照master 发出控制的先后进行(Flexible relationship between the write address and data--------AXI主要特征三),导致出现了乱序操作(out of order--------AXI主要特征五 ),让master最快收到想要的响应。同时,AXI还支持不对齐传输(unaligned data transfers--------AXI主要特征四)。AXI4协议基于猝发式传输机制(Burst transactions ------AXI主要特征六),不需要像AHB那样,每传一笔数据就指定一个地址,只需要对这次burst制定首地址。在master向slave写数据过程中,AXI提供一个额外的写响应通道,通过写响应通道,salve向master发出信号表示写交易完成。
最新文章
- 设计模式--组合模式Composite(结构型)
- winform中dataGridView高度自适应填充完数据的高度
- springaop实现登陆验证
- Windows操作 - Photoshop为图片添加透明立体水印
- BZOJ 1146: [CTSC2008]网络管理Network 树链剖分+线段树+平衡树
- hdu 3929 Big Coefficients 容斥原理
- 跟我学SpringMVC目录汇总贴、PDF下载、源码下载
- 如何学习java
- js弹窗登录效果(源码)--web前端
- HashMap和ConcurrentHashMap实现原理及源码分析
- [WinForm]C# .net防止一个程序(WinForm)重复运行的方法。
- The logback manual #03# Configuration
- Python之路,第六篇:Python入门与基础6
- hdu6441	 Find Integer (费马大定理)
- JDK官网下载教程
- c#linq去除重复项并将相同数据的数量字段值相加
- IntelliJ IDEA 2018.3注册码
- php之快速入门学习-3(print和echo)
- poj_2774 后缀数组
- WPF中Image控件的Source属性的设置