电子说
最近一直在学习AHB,茶余饭后,写个总结。
AMBA 多年来不断发展(发家史)以满足处理器和新技术的需求,如下图所示:
1999 年,AMBA 2 添加了 AMBA 高性能总线 (AHB),这是一种单时钟边缘协议。AHB 上的简单transaction由地址阶段和后续数据阶段组成。对目标设备的访问通过 MUX 进行控制,一次允许访问一个manager。AHB 是为了提高性能而流水线化的。
2003 年,Arm 推出了第三代 AMBA 3,包括 AHB-Lite。AHB-Lite 是 AHB 的一个子集。该子集简化了具有单个manager的总线的设计。这个时候就没有仲裁器和让人头疼的split传输,皆大欢喜。
2016年,AHB-Lite协议更新为AHB5,补充Armv8-M架构,将TrustZone安全基础从处理器扩展到系统。AHB5的前半段和之前的版本基本一毛一样,后半段就增加一系列的骚操作。扩展了Protect信号,加入了Security信号,加入了Exclusive 传输以及原子操作(反正只看协议没看明白写的啥)。
Protect信号绝对是加量不加价,其中HPROT[4]、HPROT[5]、HPROT[6]:
HPROT[4]:代表这个transfer能不能在cache里面查找;
HPROT[5]:transfer如果发生Miss的时候,能不能分配cache line;
HPROT[6]:代表region是 master独有的还是被几个master共同share。
Security:我的理解是主要针对新兴的车载芯片或者加密芯片而定义的。从硬件层面保证了数据不被篡改,进一步提高了数据的安全性。至于怎么玩,后面再深入探讨。
Exclusive传输和原子操作,由于太抽象和复杂,后面单篇幅一起交流学习。
全部0条评论
快来发表一下你的评论吧 !