首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >AMBA AHB面试题连载(二)

AMBA AHB面试题连载(二)

作者头像
tech life
发布于 2021-08-06 15:29:20
发布于 2021-08-06 15:29:20
1.7K0
举报

3、什么时候可以提前终止burst传输?

在一个Burst 传输中的任何一拍,slave返回非OKAY响应之后Bursts 传输可以提前终止,或者仲裁器将HGRANT给其他master。但是请注意,除非收到相应的仲裁器或slave响应提示,否则master不能主动地决定终止burst传输。

4、HTRANS能在HREADY值拉低时改变吗?

一般来说,AHB master 不应在HREADY拉低时改变控制信号。但允许在以下条件下更改HTRANS:

1、HTRANS=IDLE

AHB master 正在执行内部操作,并且尚未开始进行总线传输。但是,在AHB等待状态(HREADY低)期间,master 决定开始总线传输,并在下一个周期中将HTRANS更改为NONSEQ。

2、HTRANS=BUSY

HTRANS被用来给master 来完成内部操作,这可能是完全独立于HREADY信号。因此,HTRANS可以在HREADY为低的周期中改变为任何值(SEQ:继续完成burst传输;NONSEQ:开始新的传输)。

3、HRESP=SPLIT/RETRY

如AHB规范中所述,非OKER响应需要两个周期才能完成(具体参见AMBA SPEC)。master 必须在SPLIT/RETRY响应的第二个周期的HTRANS上置起IDLE 。

4、HRESP=ERROR

和SPLIT/RETRY响应的处理需要两个周期一样,ERROR也需要两个周期处理,即在第二个周期刷新未进行传输的地址和控制信号。此时,第二个周期的HTRANS可以是IDLE或者继续完成当前的传输,这不是严格规定的。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-29,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档