EDA365电子论坛网
标题: 用ARM芯片开发的看过来!今天来总结下AMBA总线 [打印本页]
作者: geronimo123 时间: 2020-5-21 09:50
标题: 用ARM芯片开发的看过来!今天来总结下AMBA总线
本帖最后由 geronimo123 于 2020-5-21 09:50 编辑 & z. o% {9 s8 K& k4 b2 ], k
' O) R% E' ]8 G$ A6 m; A之前接触过AMBA,以为只是ARM自家的私有的总线呢,后来得知,这是个相对通用的总线,所以来总结学习一下。% ? L! T3 |% N, G J" c1 t' Q
什么是AMBA总线3 G4 R% v' B Q! j2 I
AMBA,是一种开放的协议,主要用于SoC内部和ASIC,用于连接各种功能模块,简称AMBA总线。
3 _$ W7 H2 ^1 n8 a4 f
其是ARM最开始设计出来的。AMBA是相对使用比较广的片内总线技术,不单单是ARM专有的。
AMBA总线的仲裁
很明显,如果总线上存在多个主模块,就需要仲裁器来决定如何控制各种主模块对总线的访问。
AMAB也不例外。
AMBA总线仲裁的相关案例和应用
而对于AMBA总线仲裁的相关应用,之前接触过AMS的SoC AS3536中,就有关于对应的优先顺序的设置:
即,对应的ARB寄存器,可以设置,AHB总线上面的数据的优先级。
& |5 [' V+ k0 w
ARMI:ARM的指令
ARMD:ARM的数据
DMAC:DMA控制器
BRIDGE:AHB/APB 桥(Bridge)
可以通过配置,决定他们的优先级顺序。
另外,还有一个ARB:
这两个寄存器有啥区别?有待再学习。( s5 k0 O4 B1 s1 L e) o
AMBA总线应用举例
SoC AS2525中用到了AMBA
AMS的AS3525是基于ARM922TDMI的:
第一次得知,其中的片内总线用的是AMBA,以为是ARM专有的总线呢。+ I3 z' r3 t# K1 B
后来才知道,AMBA是相对用的比较广的片内总线,被多家公司所采用的,不单单是ARM公司。
APM86491 SoC中用了AMBA
也有AHB和APB。* d& G1 ^& J |- t2 S( p
Cortex M0+也用AMBA的AHB和APB
多个AMBA组件:AXI3/4, ACE, AHB, APB
S3C6410中也用了AMBA
ARM Cortex-M0、Cortex-M3 和 Cortex-M4 处理器的示例系统也用到AMBA
S3C2412也用到AMBA
Diamond Core CPU也用到了AMBA
LEON中也有用AHBA
- F, d3 _% }9 ?【本文转自网络,感谢原作者的分享】
* j7 u* k* _6 M+ e, B
作者: fantasyqqq 时间: 2020-5-21 10:56
来学习了,AHB和APB是什么
作者: nevadaooo 时间: 2020-5-21 16:03
谢谢楼主分享
| 欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) |
Powered by Discuz! X3.2 |