微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > AHB总线问答

AHB总线问答

时间:12-15 来源:互联网 点击:

候执行一次传输。而这恰巧又是在锁定传输的最后一次传输的数据相位上。

此时,仲裁器可以将改变HGRANT 信号授予另一个主设备,但是如果在最后一次锁定传输的数据相位上收到一个RETRY 响应,那么仲裁器将会继续驱动HGRANT 信号以确保那个执行锁定传输的主设备继续获得总线;如果在最后一次锁定传输的数据相位上收到一个SPLIT 响应,那么仲裁器将会将总线授予一个虚拟的主设备。

总体:对于一个允许断电或者时钟停止的从设备,需要什么样的系统支持?

应用于:AHB

如果系统视图访问一个断电的或者时钟停止的从设备,你必须确保这次访问能够唤醒电源供电或恢复时钟,或者配置AHB 译码器所有这种类型的访问重定向到一个虚拟从设备,这样以避免系统访问一个无效的从设备时永远等停在那里。

这种方式的重定向需要确保随机IDLE地址的访问将会有HREADY 为高,HRESP=OKAY 的默认响应,但是对于真正的访问(NONSEQ 或者SEQ)将会有ERROR 响应。

总体:什么时候可以发生突发传输提前结束?

应用于:AHB

突发传输提前结束或是因为仲裁器在突发传输过程中改变HGRANT 信号,或是因为从设备在任一传输节拍中给出非OKAY 响应。注意虽然主设备不能决定一个定长的突发传输直到主设备被仲裁器或者从设备提示要这样做。

所有的AHB 主设备,从设备和仲裁器都必须设计成支持突发传输提前结束。

总体:HTRANS 信号可以在HREADY 为低时改变吗?

应用于:AHB

一般来说,AHB 主设备不应该在HREADY 信号为低的时候改变控制信号,但是在以下情况,允许改变HTRANS 信号:

  • HTRANS = IDLE

AHB 主设备在执行一个内部操作并且没有发起一次总线传输。但是在AHB 等待状态下(HREADY 为低),主设备可能会决定需要一次总线传输然后在下一个周期将HTRANS 改为NONSEQ。

  • HTRANS = BUSY

HTRANS 在此时正是给予主设备一定时间以完成其内部操作,而这可能是与HREADY 信号无关的(例如,AHB 中的等待状态)。因此HTRANS 信号可以在下一个周期改变为任意合法的值,如,在突发传输需要继续时改为SEQ,在突发传输结束时改为IDLE,在需要发起一个单独的传输时改为NONSEQ。

  • HRESP = SPLIT/RETRY

正如AHB 规范中所述,主设备必须在双周期响应SPLIT和RETRY的第二个周期保持HTRANS为IDLE,所以HTRANS 会在第二个周期中从第一个周期中的值改变为IDLE。

  • HRESP = ERROR

主设备允许在回应ERROR 响应时改变HTRANS 信号,就像回应SPLIT/RETRY响应一样,并且取消当前突发传输中的后续传输(即使HTRANS当前表示的是定长突发传输)。在这种情况下,HTRANS 信号在第响应的二个周期改变为IDLE。或者主设备也可以允许继续当前传输。

总体:BUSY 传输可以发生在突发传输之后吗?

应用于:AHB

BUSY 传输只能发生在不定长突发传输(INCR)的结束。

BUSY 传输不能发生在定长突发传输(SINGLE,INCR4,WAP4,INCR8,WAP8,INCR16,WAP16)的结束。

总体:主设备可以在传输等待中改变地址和控制信号吗?

应用于:AHB

可以的。如果地址和控制信号表示的是一个IDLE 传输,那么主设备可以在HREADY 为低的时候将传输改为一个真正的传输(NONSEQ)。

但是如果主设备当前正表示一个真正的传输(NONSEQ或者SEQ),那么主设备不能在传输等待中取消这次传输,除非主设备接收到SPLIT。RETRY或者ERROR 响应。

总体:AHB 主设备可以直接连到AHB 从设备吗?

应用于:AHB

任何不支持SPLIT 响应的从设备都可以直接连到AHB 主设备上。如果从设备确实有使用SPLIT 响应,那么一个简化版的中采取还是需要的。
如果一个AHB 主设备直接连到AHB 从设备,那么必须确保从设备在复位的时候维持HREADY 信号为高,并且从设备选择信号HSEL 永远维持为高。

总体:所有的从设备都必须支持BUSY 传输类型吗?

应用于:AHB

是的。所有从设备都必须支持BUSY 传输类型以确保它能够与任何主设备兼容。

总体:地址必须对齐吗?即使是IDLE 传输?

应用于:AHB

是的。地址应高根据传输宽度(HSIZE)对齐,即使是IDLE 传输。这会避免在仿真的时候,总线监视器发出的警告。

总体:在AHB 系统中可以支持多少个主设备?

应用于:AHB

AHB 规范中提供了最多16 个主设备,然而,这还包括一个虚拟主设备,即真正的总线主设备最多之后15 个。习惯上总线主机号0 被分配给虚拟总线主机。

总体:AHB到APB的桥接器如何处理不是32-bits 的访问?

应用于:AHB,APB

桥接器应该简单的将整个32-bit 的数据都传输过去。但是请注意,当进行小于32-bit的数据传输时,确保外设正处在APB 数据总线上的正确比特位上。

总体:HREADY 信号是从设备的输入信号还

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

网站地图

Top