AMBA、AHB、APB、AXI总线介绍和对比

一、引出

        研究STM32H7的总线系统,对AXI、AHB、APB、ASB有点兴趣,于是去简单了解了一下,总结如下:

        说到AXI、AHB、APB、ASB就得先说AMBA(Advanced Microcontroller Bus Architecture高级处理器总线架构),它是ARM推出的一种片上总线标准,AMBA规范主要包括了:

    AHB (Advanced High-performance Bus) 高级高性能总线

    ASB (Advanced System Bus) 高级系统总线

    APB (Advanced Peripheral Bus) 高级外围总线

    AXI (Advanced eXtensible Interface) 高级可拓展接口

1、AHB主要是针对高效率、高频宽及快速系统模块所设计的总线,它可以连接如微处理器、芯片上或芯片外的内存模块和DMA等高效率模块。

2、ASB 总线适用于连接高性能的系统模块。它的读/写数据总线采用的是同一条双向数据总线,可以在某些高速且不必要使用AHB 总线的场合作为系统总线,可以支持处理器、片上存储器和片外处理器接口及与低功耗外部宏单元之间的连接。

3、APB主要用在低速且低功率的外围,可针对外围设备作功率消耗及复杂接口的最佳化。APB在AHB和低带宽的外围设备之间提供了通信的桥梁,所以APB是AHB或ASB的二级拓展总线。

4、AXI:高速度、高带宽,管道化互联,单向通道,只需要首地址,读写并行,支持乱序,支持非对齐操作,有效支持初始延迟较高的外设,连线非常多。

几种AMBA总线的性能对比分析:

二、下面一个典型的基于AMBA总线的SOC系统架构:

        从上面的架构图可知:

        1、这个SOC架构以AHB为主干,上面挂着CPU、片上内存和其他DMA设备。

        2、AHB主要是针对高效率、高频宽及快速系统模块所设计的总线,它可以连接如微处理器、芯片上或芯片外的内存模块和DMA等高效率模块。

        3、AMBA中的APB主要用在低速且低功率的外围,可针对外围设备功率消耗及复杂接口的最佳化。

        4、APB在AHB和低带宽的外围设备之间提供了通信的桥梁,所以APB是AHB或者ASB的二级扩展总线。

 

三、下面来介绍一下AHB总线组成:

在上图中:

Master(主机):能够发起读写操作,提供地址和控制信号,同一时间只有1个Master会被激活。

Slave(从机):在给定的地址范围内对读写操作作响应,并对Master返回成功、失败或者等待等状态。

Arbiter(仲裁机):负责保证总线上一次只有1个Master在工作。仲裁协议是规定的,但是仲裁算法可以根据应用决定。

Decoder(解码器):负责对地址进行解码,并提供片选信号到各Slave。

每个AHB都需要1个仲裁器和1个中央解码器。

 

四、APB总线

        主要应用在低带宽的外设上,如UART、 I2C,它的架构不像AHB总线是多主设备的架构,APB总线的唯一主设备是APB桥(与AXI或APB相连),因此不需要仲裁一些Request/grant信号。APB的协议也十分简单,甚至不是流水的操作,固定两个时钟周期完成一次读或写的操作。其特性包括:两个时钟周期传输,无需等待周期和回应信号,控制逻辑简单,只有四个控制信号。APB上的传输可用如图所示的状态图来说明。

1、系统初始化为IDLE状态,此时没有传输操作,也没有选中任何从模块。

2、当有传输要进行时,PSELx=1,,PENABLE=0,系统进入SETUP状态,并只会在SETUP状态停留一个周期。当PCLK的下一个上升沿到来时,系统进入ENABLE状态。

3、系统进入ENABLE状态时,维持之前在SETUP状态的PADDR、PSEL、PWRITE不变,并将PENABLE置为1。传输也只会在ENABLE状态维持一个周期,在经过SETUP与ENABLE状态之后就已完成。之后如果没有传输要进行,就进入IDLE状态等待;如果有连续的传输,则进入SETUP状态。

 

 

参考:

https://blog.csdn.net/ivy_reny/article/details/56274412

https://wenku.baidu.com/view/f56ec4808762caaedd33d4e8.html?sxts=1560500521295

  • 10
    点赞
  • 122
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值