AHB5与APB4对之前版本AHB2与APB2的升级比较——AMBA协议阅读笔记

时间:2024-04-07 15:08:08

目录

1.AHB2 to AHB5

2.APB2 to APB4


AMBA:Advanced Microcontroller Bus Architecture

AHB:Advanced High-performance Bus

APB:Advanced Peripheral Bus

下面放一张讲座的PPT资料,展示AMBA家族的发展历程(截止2019)。

AHB5与APB4对之前版本AHB2与APB2的升级比较——AMBA协议阅读笔记
图1 AMBA演进历程

 可以看到,目前最新的为AHB5与APB4,我之前接触到的是AHB2,APB2,其实新版本的内容与老版本整体读写流程都没有变,主要多了辅助信号,以及一些特殊操作需要的信号,因此只要掌握某个版本的可以吗不要纠结哪个版本。下面分别就协议本身罗列一下加深记忆(目前还没有机会接触到协议代码,姑且看看时序图哈哈)。

1.AHB2 to AHB5

AHB5的协议文件编号ARM IHI 0033B.b (ID102715)。

原来AHB APB ASB都在一个pdf里,现在都单独一个pdf...([1]ARM官网)

基本的读写传输信号没有变,haddr,hwrite,hsize,hburst,htrans,hport,hwdata---7,hrdata,hresp,hready--3。hmastlock标识锁定总线,原来是hlock。
a)原来的hport位宽由[3:0]变成[6:0],变成扩展内存类型Extended_Memory_Types property,并且需要相关设备与接口支持。

AHB5与APB4对之前版本AHB2与APB2的升级比较——AMBA协议阅读笔记
图2 AHB5对HPORT的升级

b)增加了关于安全传输Secure_Transfers的信号  hnonsec,是地址阶段的信号,与haddr有相同的约束。其有效意味着Non-secure transfer。

c)增加了独立传输Exclusive_Transfers的信号,hexcl:master to slave,有效表示这是一次独立传输,与haddr有相同的约束;hexokey :slave to master的回复信号,与hresp有相同的约束。另外与hmaster [m:0]信号用来标识主机。(咱也不知道这是用到什么场景下的)

d)去掉了AHB2中的arbiter信号hbusreqx,hlock,hgrantx,AHB5中没有定义arbiter,指向了另一个文件Multi-layer AHB Technical Overview (ARM DVI 0045),这里面也没有仲裁信号的定义。

e)取消了split传输,对应的信号hsplit[15:0]。

版本更新摘要

AHB5与APB4对之前版本AHB2与APB2的升级比较——AMBA协议阅读笔记
图3 更新摘要

2.APB2 to APB4

APB4的协议文件编号ARM IHI 0024C (ID041610)。

这个文件名称AMBA® APB Protocol Version: 2.0,但注意是在最上面那张图里对应的是APB4。

添加的信号写得很清楚(不要动手写了哈哈)

AHB5与APB4对之前版本AHB2与APB2的升级比较——AMBA协议阅读笔记
图3  APB版本