AMBA总线概述

系统芯片各个模块之间需要接口连接(公共资源–高速公路),不可能每个城市两两之间都建公路。AMBA(Advanced Microcontroller Bus Architecture) 总线是由ARM公司提出的一种开放性的片上总线标准,它独立于处理器和工艺技术,作为子系统模块之间共享的的通信链路。

AMBA总线主要有三种总线(通道):

AHB:Advanced High-performance Bus,用于高性能、高时钟工作频率模块;

APB:Advanced Peripheral Bus,用于低速、低功耗外设模块,接口简单;外设模块如uart,spi,timer,i2c

AXI:Advanced eXtensible Interface,用于高性能,高带宽,低延迟的片内总线,目前最新和性能最好的总线标准。

总线AXIAHBAPB
总线宽度8,16,32,64,128,256,512,102432,64,128,2568,16,32
地址宽度323232
通道特性读写地址通道,读写数据通道均独立 ,支持读写并行操作读写地址通道共用读写数据通道,不支持读写并行操作读写地址通道共用读写数据通道,不支持读写并行操作
体系结构多主/从设备,仲裁机制多主/从设备,仲裁机制单主/多从设备,无仲裁机制
数据协议支持流水/burst传输,支持乱序访问,大小端对齐,非对齐操作支持流水/burst传输,支持乱序访问,大小端对齐,不支持非对齐操作一次读/写传输占两个时钟周期,不支持burst传输
时序同步同步同步
互联多路多路无定义

总线宽度:总线能够一次性传送的二进制数据位数,例如8bit、16bit、32bit、64bit等
下面是一个典型的AMBA结构
一个典型的AMBA结构
AHB组成部分:
1.主设备master
发起读写操作,提供地址和控制信号;某一时刻只允许一个主设备使用总线,例如CPU,DMA,DSP
2.从设备slave
通过地址映射对读写操作做出响应,对master返回成功、失败和等待状态
3.仲裁器arbiter
负责保证总线只有一个master,允许哪一个主设备控制总线,比如CPU和DMA同时发起,仲裁器会选择让CPU先用总线,让DMA等一会
4.译码器decoder
通过地址译码来决定选择哪一个从设备

APB组成部分:
1.AHB2APB Bridge
可以锁存总线所有的地址,数据和控制信号
进行二级译码来产生APB从设备选择信号
2.APB上所有的其他模块都是APB从设备

DMA在Soc系统中,通过AHB总线跟CPU协同工作,下面是实现memory到memory的数据传输流程
在这里插入图片描述
AHB 信号

名称来源描述
HCLK时钟源时钟为所有总线传输提供时基。所有信号时序都和HCLK 的上升沿相关。
HRESETn复位控制器总线复位信号低有效并用来复位系统和总线。这是唯一的低有效的信号。
HADDR[31:0]主设备32 位系统地址总线。
HTRANS[1:0] 传输类型主设备表示当前传输的类型,可以是不连续NONSEQ、连续SEQ、空闲IDLE和忙BUSY。
HWRITE 传输方向主设备当该信号为高(1)时表示一个写传输,为低(0)的时候表示一个读传输。
HSIZE[2:0] 传输大小主设备表示传输的大小,典型情况是字节(8 位)、半字(16位)或者是字(32 位)。
HBURST[2:0] 突发类型主设备表示传输是否组成了突发的一部分。支持四个、八个或者 16 个节拍的突发传输并且突发传输可以是增量或者是回环。SINGLE、INCR、WRAP4、INCR4等
HPROT[3:0] 保护控制主设备提供总线访问的附加信息并且主要是打算给那些希望执行某种保护级别的模块使用的。这个信号指示当前传输是否为预取指或者数据传输,同时也表示传输是保护模式访问还是用户模式访问。对带存储器管理单元的总线主机而言这些信号也用来指示当前传输是高速缓存的(cache)还是缓冲的(buffer)
HWDATA[31:0] 写数据总线主设备写数据总线用来在写操作期间从M到S传输数据。建议最小的数据总线宽度为 32 位。然而,在要求高带宽运行时扩展(数据总线)还是很容易的。
HSELx 从机选择译码器每个 AHB 从机都有自己独立的从机选择信号并且用该信号来表示当前传输是否是打算送给选中的从机。该信号是地址总线的简单组合译码。
HRDATA[31:0] 读数据总线从设备读数据总线用来在读操作期间从S向M传输数据。建议最小的数据总线宽度为 32 位。然而,在要求高带宽运行时扩展(数据总线)还是很容易的。
HREADY传输完成从设备S应答M是够读写操作完成,1-传输完成,0-需要延长传输周期。当 HREADY 为高时表示总线上的传输已经完成。在扩展传输时该信号可能会被拉低。注意:总线上的从机要求 HREADY 作为输入输出信号。
HRESP[1:0]传输响应从设备S应答当前传输状态。提供四种不同的响应:OKEY、ERROR、RETRY(不影响master优先级) 和 SPLIT(给aribter反应,)。

AHB基本传输:两个阶段,地址周期(AP)和数据周期(DP),而且是先地址后数据周期
地址周期只有一个周期,数据周期由HREADY决定需要几个周期
流水线传送

APB基本传输:唯一主设备是APB的bridge,不需要仲裁一些信号,两个时钟周期传输,完成一次读或写的操作,无需等待周期和回应信号,控制逻辑简单,只有四个控制信号
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
总结:地址线、写信号线、选择线将同写操作时一样保持不变;
从端需要在ENABLE周期内,返回PRDATA;
PRDATA将在ENABLE周期的下一个周期被采样

  • 12
    点赞
  • 134
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值