在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 8142|回复: 8

[讨论] 求教AHB AXI和WISHBONE的一些问题

[复制链接]
发表于 2010-12-4 16:25:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x

1 AMBA AHB字节选通的问题

比如我一个memory32位宽的。ARM是字节对齐操作,通过地址低两位来选择哪个字节,也就是说我的控制器在接收ARM地址后先要右移两位来确定地址,因为最低两们并不代表实际地址。读的时候可以理解,不管你ARM要哪个字节,我直接把32位数送给你,你自己通过低两位判断。但写的时候呢?我控制器怎么知道你是字节选通还是半字选通还是全字操作。因为你低两位总共只有4种选择。那么是不是ARM在高地址传达是字节选通还是全字传输?

2 AXI协议中没看到他说仲裁。是没有仲裁还是他简略没说,master也没有总线请求信号,他不可能是两两相连吧。master 有数据ID,那么如果有仲裁的话,也应该把master号加上去吧,就像AHB一样。

3 AIX的非对齐传输。我感觉他的非对齐其实也是对齐的,只是它可以首地址不对齐,然后通过strobe来选择有效数据。然后之后的地址也是对齐的。比如0x01开始,他第一笔数只要了0x01-0x03的数据,第二笔同样是从0x04开始的。不知道我这样理解对不对?

还有就是,即使他字节选通已经单独作为一个信号了,干嘛还要通过SIZE来算地址递增。比如我一32memory,你每次地址加1就可以连续读32位的单元,通过stobe来选择想要的就行了,你加4在我memory这看来不就是地址增4了吗,我还得再把他移回来。


4 WISHBONE的问题,最困惑的是,WISHBONE看了过后貌似他就没规定个啥,什么用户都可以自己选择,也没说清楚个什么。还有,在他的时序里面访问slav貌似都是一个周期完成的。他说为提高速度实行的是slave异步提供响应,那你采样控制信号总是同步的吧,比如,第一个上升沿你master发出指令,slave肯定是在第二个上升沿采样信号,再快你master也得在第三上升沿采样响应吧,怎么可能第一个上升沿发指令下个上升沿就完成了。他上面基本都是在一个周期内完成,反正我接触的存储设备是不可能这样的,比如一个SSRAM,write仅一个时钟周期是可以的,但从你发出指令到采样ACK拉高至少两个周期吧(第一上升沿master发出指令,第二上升沿slave采样,并将ACK拉高,第三上升沿master才能采样到ACK为高)。更加说读了,读还比写多一时钟周期,SSRAM采样到读得到下个周期才能提供有效数据。不知道我的理解有没有错,请教大虾指教。还有就是他的WRAP地址递增方式,不知道他的地址是什么算的?这个不像AMBA那么简单明了



以上就是小弟的问题,请大虾们多多指教

 楼主| 发表于 2010-12-5 23:30:50 | 显示全部楼层
咋没人来说两句呢
发表于 2011-7-10 10:20:19 | 显示全部楼层
1.写的时候也是由HSIZE来指定传输长度,若长度为字,则A[1:0]不用管,始终为00,若为半字,则A[0]不用管,始终为0.
2.master应该就是以握手信号来申请总线的,互联结构中含有arbiter,arbiter用来仲裁各个通道接到总线的先后顺序,而不是单独仲裁master接入的顺序。
3.只有在narrow transfer才用到选通信号,hsize用来指示用来指示一次选通8个byte lane还是16个byte lane。
发表于 2011-7-28 17:22:32 | 显示全部楼层
axi非对齐传输,你说的是一种特殊情况即:burst size 和bus size 相同。如两者不同时,其实每次传输基本上都是非对齐的!
发表于 2013-5-7 17:09:32 | 显示全部楼层
都是大牛
发表于 2013-12-29 12:36:51 | 显示全部楼层
关于AMBA3.0 AXI协议的几点疑问~~
access, system
关于AMBA 3.0_AXI协议的几点疑问,欢迎大虾赐教~~小弟最近在研究AMBA3.0协议,关于AXI有些疑问:
1. burst 方式中,有一种是固定地址(FIXED-ADDRESS),即FIFO访问方式,解释是说:当FIFO装满或空时,重复访问同一个地址。这种方式是在什么时候使  用?
2. system cache中,bufferrable 和 cacheable有什么区别?当cacheble分给读和写时,有个write-throgu和write-back,这两个有什么区别?
3. Atomic accesses中exclusive access和locked access有什么区别?在exclusive access中semaphore type是什么意思?(它的解释是不影响总线的延迟,不需要保持锁定。怎么实现的。)
4. Protection unit中,normal access、privileged access、secure access、non-secure access有什么区别?这个里面的normal模式和burst 方式中的normal模式有什么区别?protection有什么作用?只是问master提供保护信息?
5.order(out-of-order)中,允许多个地址访问和乱序回应,是否只是通过ID号来区别?ID[3:0]最多只支持同时16个地址请求?
6.AXI协议中的仲裁和解码是什么时候发生的?解码是发生在slave内,还是有专门的解码模块?

希望大虾们能不吝赐教~~小弟先谢过了~~
发表于 2014-11-15 16:53:19 | 显示全部楼层
好东西啊
发表于 2018-12-21 12:33:56 | 显示全部楼层
发表于 2018-12-21 14:39:33 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-16 19:33 , Processed in 0.024900 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表