【SoC设计指南 基于Arm Cortex-M】学习笔记2——AHB概述

AHB信号

AHB系统在内核时钟HCLK信号驱动下运行,AHB总线上连接的寄存器访问均在AHB的上升沿触发。AHB总线信号中有一个低电平有效的复位信号HRESETn,即HRESETn信号为低电平时,AHB系统立即复位。
典型AHB系统主要信号如下:
在这里插入图片描述
在这里插入图片描述
HREADYOUT信号与HREADY信号在不是同一个信号线。

AHB基本操作

单主机多从机AHB总线系统实例
在这里插入图片描述
AHB传输过程采用流水线结构,即当前传输的地址区间可以与上一次传输的数据区间重叠。
如图:
在这里插入图片描述
HREADY信号是与数据区间信号配合使用的,HESL信号是与地址区间信号配合使用。
HREADYOUT信号由AHB从机发出,用于表示从机是否已经准备好接收或者发送数据,准备好是高电平,否则是低电平。

HREADY信号是一个系统范围内的信号,用于指示当前AHB总线上是否有未完成的传输。当所有从机都准备好接收或者发送数据,HREADY信号为高电平;有一个从机没准备好,HREADY就置为低电平。
HREADY信号由从机多路复用器根据所有从机的HREADYOUT信号生成的。
在这里插入图片描述
AHB从机数据流水线传输时序波形如下:
在这里插入图片描述
某个从机在发送地址区间信号时,对应从机的HSEL信号变成高电平,发送结束变成低电平。
某个从机在发送数据区间信号时,对应HREADYOUT信号变成低电平,发送结束变成高电平。
所有从机的HREADYOUT信号都是高电平时,HREADY为低电平,表示数据区间信号空闲。有一个从机的HREADYOUT信号为低电平时,HREADY为高电平,表示总线上有数据区间信号。

最小AHB系统

最小AHB系统所需的AHB基础组件:
在这里插入图片描述

在这里插入图片描述
如果AHB系统分为多个子系统,则可能需要多个AHB解码器
在这里插入图片描述

多总线主机的处理

具有两个AHB主机和两个AHB从机的AHB系统如下:
在这里插入图片描述
总线仲裁器控制多个主机通过多路复用器共用一根总线。
AHB主机发送数据之前,应先通过HBUSREQ信号发送总线请求,仲裁器授权后,会通过HGRANT信号握手回应:
● AHB主机必须先向仲裁器发送总线请求信号HBUSREQ。
● 在仲裁器完成仲裁后,如果允许数据传输,则会将总线授权信号HGRANT返回给对应AHB主机。
● 数据在当前连接总线上传输。
● 数据传输过程中如果HGRANT信号被取消,主机必须停止发起新的传输。
为了解决多个AHB总线主机试图同时访问某个AHB总线从机的冲突,每个连接到AHB从机的主机端口都有一个仲裁器。如果某AHB总线主机欲传输数据到某从机,而该从机正在与其他主机进行数据传输,此时该主机会将数据保存到输入级缓冲器中,待该从机的传输结束后再进行传输。在这种情况下,不再需要使用HBUSREQ和HGRANT信号了。
在这里插入图片描述
使用总线矩阵,不同的AHB总线主机可以同时访问不同AHB总线从机,这可以大幅提高数据传输带宽。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值