微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > 微电子学习交流 > 讨论个AHB的问题

讨论个AHB的问题

时间:12-12 整理:3721RD 点击:

你们说了好多HReady应该为高为低,但没有说到本质。Slave输出的HReady代表了Slave是否空闲,也就是说是否可以接受访问。只有当HReady为1的时候,Master可以发Request,也可以不发Request。当Master发Request的时候,只有在Slave的HReady为高的时候才是成功的访问,当HReady为0的时候,Slave无法接收这个访问,因此要维持Request直到HReady高为止。
总之,Slave的HReady为0为1,是和Master没有关系的。

RE

嗯,对,Slave的HReady为0为1是由slave自身决定的
“数据phase才根据HREADY决定是否延迟”这句话有逻辑错误,应该反下,数据phase决定Hready是否为低。

hready是slave控制的。所以要不要所存addr slave自己决定。
不过绝大多数master都不会发了一个addr,你没回ready,过了一个会儿,等不耐烦了,换了个addr。
所以即使没hready, htrans有效时,slave也可以把addr 采样下来,提前给后面用。前提是master不能带反悔功能。

AHB效率就是不高,所以才出了AXI,outstanding的概念

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top