AMBA5 AHB协议规范(AHB5,AHB-Lite)中文版-第五章 从机响应信号

第五章

从机响应信号
介绍从机响应信号。它包括以下部分:
– 从机传输响应on page 5-56.

5.1 Slave transfer responses

在主机开始传输后,控制传输的进展。在传输开始后,主机不能取消传输。
对于支持AHB5 Exclusive_Transfers属性的组件,请参阅8-72页的Exclusive访问信号,了解额外的HEXOKAY传输响应信号的详细信息。
当被访问时,从机必须提供一个响应来指示传输的状态。传输状态由HRESP信号提供。
HRESP状态如表5-1所示。
由表5-1可知,完整的传输响应是HRESP和HREADYOUT信号的组合。
表5-1 HRESP信号响应
|HRESP| Response| Description|
| 0 | OKAY |传输已经成功完成,或者从站需要额外的周期来完成请求。HREADYOUT信号指示传输是挂起还是完成。|
|1| ERROR|传输过程中发生错误。必须向主机发出错误条件的信号,以便它意识到传输已不成功。对于在第二个周期中HREADYOUT生效,需要两个周期的响应。|
基于HRESP和HREADYOUT信号状态的完整传输响应如表5-2所示。

这意味着从机可以通过以下三种方式完成传输:
– 立即完成传输。
– 发出错误信号,表示传输失败。
– 插入一个或多个等待状态以使时间能够完成传输。
这三个从机传输响应描述如下:
– 传输完成。
– 待处理传输。
– 错误响应 on page 5-57.

5.1.1 Transfer done

当HREADY为高且HRESP OK时,表示传输成功完成。

5.1.2 Transfer pending

典型的从机使用HREADYOUT将适当数量的等待状态插入到传输的数据阶段。然后使用HREADYOUT HIGH和一个表示传输成功完成的OKAY响应完成出传输。
当从机在完成响应之前插入许多等待状态时,它必须将HRESP驱动到OKAY。
Note
通常,在完成传输之前,每个从机必须有一个预定的最大等待状态数。这允许计算访问总线的最大延迟。
建议从机不要插入超过16个等待状态,以防止任何单个访问在大量的时钟周期内锁定总线。然而,该建议不适用于某些设备,例如串行引导ROM。这种类型的设备通常只在系统启动时访问,如果使用大于16个等待状态,对系统性能的影响可以忽略不计。

5.1.3 ERROR response

从机使用ERROR响应来指示相关传输的某种形式的错误条件。通常,这表示保护错误,例如试图写入只读内存位置。
虽然OKAY响应可以在一个周期内给出,但ERROR响应需要两个周期。为了启动ERROR响应,从机驱动HRESP HIGH指示ERROR,同时驱动HREADYOUT LOW以扩展传输一个额外的周期。在下一个周期中,HREADYOUT被驱动为HIGH以结束传输,而HRESP仍然被驱动为HIGH以表示ERROR。
由于总线的流水线特性,需要两个周期的响应。当从机开始发出错误响应时,接下来的传输地址已经被广播到总线上了。两个周期的响应为主机提供了足够的时间来取消下一次访问,并在下一次传输开始之前将HTRANS[1:0]驱动到IDLE。
如果从机需要两个以上的周期来提供ERROR响应,那么可以在传输开始时插入额外的等待状态。在此期间,HREADY为LOW,响应必须设置为OKAY。
图5-1显示了具有错误响应的传输。

在图5 - 1:
T1-T2 从机插入一个等待状态并提供一个OKAY响应。
T2-T3 从机插入一个错误响应。因为HREADY是LOW,这是错误响应的第一个周期。
T3-T4 从机发出一个ERROR响应。因为HREADY当前是高,这是错误响应的最后一个周期。
主机将传输类型更改为IDLE。这取消了T2时刻从机注册到地址B的预定事务。
T4-T5 从机以OK响应。
如果从机提供了一个ERROR响应,那么主机可以取消突发中剩余的传输。然而,这不是一个严格的要求,对于主机来说,在突发中继续剩余的传输是可以接受的。

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值