ARM AMBA AXI 系列
文章平均质量分 90
全面介绍 ARM AXI/AHB/APB/CHI总线
余额抵扣
助学金抵扣
还需支付
¥79.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
主公讲 ARM
竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【ARM AMBA AXI 入门 21.1 -- AXI partial 访问和软件的按字节访问关系】
维度软件按字节访问是否触发硬件 partial access总线支持 partial是 → 部分更新成功会正确触发总线不支持 partial是 → 整笔失败或异常会导致问题软件对硬件的依赖高(靠WSTRB是是否总是安全否(视硬件支持情况)需验证或规避软件的按字节访问是否有效,取决于硬件是否支持 partial access。支持WSTRB的 slave 才能正确响应 partial write。软件可通过字节读写 + 验证读回值判断是否支持。原创 2025-07-07 21:36:12 · 205 阅读 · 0 评论 -
【ARM AMBA AXI 入门 21 -- AXI partial 访问和 narrow 访问的区别】
项目Partial Access(部分访问)Narrow Access(窄口访问)目的在总线数据位宽范围内,只访问其中部分字节主设备自身位宽 < 总线位宽,只能传输小数据块主设备位宽与总线一致(如 64-bit)小于总线(如 32-bit master 连 64-bit 总线)有效字节控制方式使用WSTRBRSTRB来指定哪些字节有效通过AWSIZEARSIZE指定总线传输宽度是否需要桥接否是,通常需要宽度适配器或interconnect 自动分裂拼接是否跨beat访问。原创 2025-07-07 21:26:57 · 324 阅读 · 0 评论 -
【ARM AMBA AXI 入门 20 -- AXI AxDOMAIN 信号详细介绍】
AXI 协议是 AMBA(Advanced Microcontroller Bus Architecture)的一个子集,提供了高效的数据传输机制。独立的读写数据通道:读写操作可以并发进行,提高了总线的利用率。支持突发传输:可以一次性传输多个数据,提高了数据传输效率。低延迟:通过分离地址和数据传输通道,实现低延迟的数据传输。:写地址信号,用于传输写操作的地址。:读地址信号,用于传输读操作的地址。:写数据信号,用于传输写操作的数据。:读数据信号,用于传输读操作的数据。原创 2024-07-26 22:38:31 · 1122 阅读 · 0 评论 -
【ARM AMBA AXI 入门 19 -- ARM 低功耗 Q_Channel 与 P_Channel 详细介绍】
AMBA提供了,低功耗的接口。用于实现power控制功能。目前,AMBA里面,包含2种低功耗接口。Q-Channel:实现简单的power控制,如上电,下电;P-Channel:实现复杂的power控制,如全上电,半上电,1/4上电等。ARM引入这2种低功耗接口,是为了满足不同的应用场景下,对power的控制。在一些场景下,组件只有两种 power状态,分别为power-uppower-down。因此对这种组件的power控制,只需要对其上电,断电即可。用Q-Channel,即可实现。原创 2023-10-24 17:43:25 · 1916 阅读 · 2 评论 -
【ARM AMBA AXI 入门 5.1 - QoS是什么?QoS是怎么工作的? 】
在传统的IP网络中,所有的报文都被无区别地等同对待,每个路由器对所有的报文均采用先进先出(FIFO)的策略进行处理,尽最大的努力(best-effort)将报文送到目的地,但对报文传送的可靠性、传送延迟等性能不提供任何保证。随着IP网络上新应用的不断出现,对IP网络的服务质量也提出了新的要求,传统IP网络的“尽力服务”已不能满足应用的需要,如VoIP业务,如果报文传送延时太长,将是用户所不能接受的。为IP网络提供支持QoS(Quality of Service)的能力是解决问题的可行方法。原创 2024-07-16 23:18:20 · 1175 阅读 · 0 评论 -
【嵌入式开发学习必备专栏 Cache | MMU | AMBA BUS | CoreSight | Trace32 | CoreLink | ARM GCC | CSH】
嵌入式学习必备专栏: ARM Core 的详细介绍, Cache 与 MMU/MPU专栏,Coresight 专栏,劳德巴赫 trace32 专栏, AXI/APB/AHB/ACE/CHI总线专栏、CoreLink 专栏,CSH/BASH/TCL专栏,芯片设计入门专栏、ARM GCC 编译专栏,VIM工具专栏原创 2023-12-30 12:25:07 · 4366 阅读 · 1 评论 -
【ARM AMBA AXI 入门 18 - AXI4 NSAID 和 NS 详细介绍】
在支持 TrustZone 的 ARM 处理器中,资源(比如内存区域、外设等)可以被划分为安全(Secure)和非安全(Non-Secure)两种状态。安全资源只能被安全世界(Secure World,通常指运行在异常级别 EL3 或安全监视器模式下的软件)访问,而非安全资源可以被非安全世界(Non-Secure World,执行在较低异常级别上的普通操作系统和应用)访问。当NS信号标记为0时,表示当前事务是安全的,即事务的发起者在安全世界中。当NS信号标记为1。原创 2023-11-30 19:13:42 · 1141 阅读 · 0 评论 -
【ARM AMBA AXI 入门 17 - AXI4 AWUSER | ARUSER 详细介绍】
在 ARM AMBA AXI 协议中可以包含一组用户自定义信号,叫做 User signals,比如AWUSER和ARUSER信号,它们分别与写地址(AW)和读地址(AR)通道相关。增加的信号可以增加一个transaction的信息,这种情况通常是在已经存在 AXI signals 没法满足需求是才会存在的。通常是避免使用 User signals的,因为AXI 并没有定义这些功能。AWUSERARUSERWUSERRUSER和BUSER是用户自定义的信号,它们允许传输额外的控制和状态信息。原创 2023-11-27 14:34:05 · 2232 阅读 · 0 评论 -
【ARM AMBA5 CHI 3 -- CHI 协议层详细介绍 】
系统中的每个组件都被分配一个唯一的节点ID。CHI使用系统地址映射(SAM)将物理地址转换为目标节点ID。为了能够确定发出请求的目标节点ID,每个RN和HN都必须具有SAM。以下图示展示了RN SAM将物理地址映射到HN节点ID,以及HN SAM将物理地址映射到SN节点ID:地址为的事务通过节点0中的 RN SAM;RN SAM确定目标为节点 5;事务路由到节点 5 的HN;HN接收到事务;HN通过其HN SAM传递地址,并确定目标为节点2;事务被路由到节点 2 的 SN。原创 2023-10-20 20:26:29 · 1648 阅读 · 0 评论 -
【ARM AMBA5 CHI 2 -- CHI 链路层详细介绍 】
目前有六个版本的 CHI 协议,CHI-A 是 CHI 协议的第一个版本。它提供了一个传输层,具有减少拥塞的功能。新通道、CHI 术语和组件命名的定义;请求、监听过滤器和缓存状态转换的示例;事务排序、独占访问和分布式虚拟内存(DVM)操作的规则;CHI-B 问题扩展了 CHI-A,但不能直接向后兼容 CHI-A。更大的物理地址宽度;原子事务;DVM 的 VMID 扩展;通道字段、事务结构和可靠性、可用性和可维护性(RAS)特性的描述;原创 2023-10-10 11:27:39 · 2285 阅读 · 0 评论 -
【ARM AMBA5 CHI 1 -- CHI 基础学习 】
CHI 的全称是 Coherent Hub Interface。所以从名字就能看出,CHI要解决什么问题了。按照惯例,开始之前放一张AMBA的全家福。CHI协议是AMBA的第五代协议,可以说是ACE协议的进化版,将所有的信息传输采用包(packet)的形式来完成。从CHI开始协议分层了,这是跟以往的总线协议不同的;为了更多组件互连,ARM想要定义一个统一的接口。现代的SoC功能越来越丰富,包含的组件越来越多,处理器,处理器簇、图形处理器、存储控制器、I/O桥、PCIe子系统和CHI互联线等。原创 2023-09-05 19:58:08 · 2402 阅读 · 0 评论 -
【ARM AMBA AXI 入门 16 - AXI 写响应通道 BVALID | BREADY | BRESP 详细介绍】
当定实现了 写事务延迟功能, AWSNOOP 和 BRESP 必须定义足够的 bits 来满足各种情况的编码。该特性允许主设备(Master)指明一个写事务是否可以被推迟,这通常与系统的负载和带宽管理有关。这是一个主设备(Master)发出的信号,表示主设备已经准备好接收写响应。当主设备准备处理从设备发回的写响应时,它将。这是从设备发出的一个 2 位宽的信号,表示对之前写事务的响应状态。(写响应)信号是有效的。这是一个从设备(Slave)发出的信号,表明与当前写事务相关的。主设备在接收到响应后,必须根据。原创 2023-11-21 15:43:40 · 4047 阅读 · 0 评论 -
【ARM AMBA AXI 入门 13 -- AXI 协议中 RRESP 信号详细介绍】
支持可共享高速缓存意味着系统能够确保不同核心的高速缓存之间数据的一致性,即使在多个核心同时读写同一内存区域的情况下。这通常发生在支持写回缓存的系统中,当一个缓存行被处理器修改后,它将被标记为 “dirty”。在支持高速缓存的系统中,预取操作常用于提前加载数据到高速缓存中,以期望减少未来对该数据访问的延迟。信号用来表示读取事务的响应状态,它由从设备(Slave)发往主设备(Master)来通知读取操作的完成情况。信号是一个 2 位的编码字段,用于指示读取操作是否成功完成,或者在操作过程中是否遇到了错误。原创 2023-11-21 15:02:37 · 2921 阅读 · 0 评论 -
【ARM AMBA AXI 入门 15 -- AXI-Lite 详细介绍】
AXI Full 是一种高性能的总线协议,它设计用于处理大量的数据传输和复杂的交互。它支持高带宽和低延迟的数据传输。支持窄位传输(Narrow Transfer)和非对齐传输(Unaligned Transfer)。支持分离的读写数据通道,即读写操作可以同时进行。支持多个未完成的读写事务(Outstanding Transactions)和乱序事务(Out-of-Order Transactions)。支持突发传输(Burst Transfers),可以一次传输多达 256 个数据项。原创 2023-11-21 10:59:26 · 1315 阅读 · 0 评论 -
【ARM AMBA AXI 入门 14 -- AXI 窄位传输 | 非对齐传输| 大小端传输】
在 AXI 总线协议中,支持多种数据传输,包括窄位传输、非对齐传输和大小端传输。在设计 AXI 总线接口时,处理器的大小端模式需要和外设协商一致,或者设计转换逻辑来处理不同的大小端需求。例如,如果总线宽度是 64 位,但实际只需要传输 32 位的数据,这种情况下,可以进行窄位传输。非对齐传输是指数据的起始地址不是其数据宽度的整数倍。是一个按字节分布的位掩码,每一位对应数据总线上的一个字节。大小端指的是多字节值在内存中的排列顺序。假设有一个 64 位的 AXI 数据总线,希望只写入其中的 32 位。原创 2023-11-20 19:15:26 · 3675 阅读 · 0 评论 -
【ARM AMBA AXI 入门 3 - AXI 协议中的 Outstanding transfer 】
从应用角度来思考这个问题:比如传输一段数据,假设没有 outstanding,必须要等到地址握手成功了才可以传输数据,而每一次握手过程中都不能保证主从机此刻都准备好,那这样在数据传输过程中就难免会有气泡,难以实现真正的全流水和满性能。所以从设计的角度,我们就有多发几个地址的需求,比如我们可以发出去10个地址,尽管我们还没给数据,但是可以让从机知道,我们接下来要向这些地址写数据,这样就可以不用刻板地遵循,每次都要写地址握手成功再写数据。所以,outstanding 就是发出去的地址数量。原创 2023-06-10 16:20:41 · 3406 阅读 · 4 评论 -
【ARM AMBA AXI 入门 8 - AXI 协议中 RID/ARID/AWID/WID 信号】
如果 SoC 中是多主机多从机的结构,支持 outstanding 及 out-of-order传输特性(见前文介绍) 会极大的提高总线互连的利用率,主机可以对不同地址或从机进行连续访问,而从机返回数据的先后可以不按照主机的发出事务顺序。一般从机的数据准备时间不由主机控制,数据就绪顺序与事务到达顺序不一致是可能的。因此需要相应的机制来标识数据所属的事务。而这,就是通过信号来实现的。同时 Transaction ID 这组信号在AXI3与AXI4中的区别也很大。原创 2023-06-14 14:25:22 · 3984 阅读 · 0 评论 -
【ARM AMBA AXI 入门 10 - AXI 总线 DATA信号与 STRB 信号之间的关系 】
每个字节有一个相关的STRB信号,每一个STRB信号对应的字节是按照字节地址对齐的。:当进行写操作时,DATA 信号传输要写入的数据,而STRB信号指示在DATA信号中哪些字节是有效的。例如,如果DATA信号传输的是32位数据,但只有低16位是有效的,那么STRB信号就应该设置为“例如,如果DATA信号传输的是64位数据,且所有位都是有效的,那么那么STRB信号的值就应该为“位(对应前两个STRB信号)是有效的,而高16位(对应后两个STRB信号)是无效的。信号在AXI协议中有特殊的含义和关系。原创 2023-08-23 20:23:53 · 2656 阅读 · 2 评论 -
【ARM AMBA AXI 入门 1 -- AXI 握手协议入门】
AXI 标准协议有五路独立的数据通道,这些通道都只支持单向传输读地址通道:主机在读地址通道上写入想要读取的数据的地址以及控制信息;读数据通道:从机在接收到地址后,将该地址上的数据通过读数据通道发送给主机;写地址通道:主机在写地址通道上写地址和控制信息;在写地址操作结束之后,即主机确保从机已经获得了此次传输的地址和控制信息后,才开始在写数据通道上写数据;写数据通道;写回复通道:从机在写回复通道上,将此次写传输的状态回复给主机。每一路数据通道都遵循双向握手机制,即使用VALID和READY。原创 2023-06-06 10:00:32 · 1998 阅读 · 0 评论 -
【ARM AMBA AXI 入门 2 - AXI协议中的 BURST Transfer】
在地址总线上进行一次地址传输后,进行多次数据传输( data transfer),第一次地址传输中的地址作为起始地址,根据突发传输类型的不同,后续数据的存储地址在起始地址的基础上递增(INCR 模式);或者首先递增,到达上限地址后回到起始地址,继续递增(WRAP 模式);又或者后续数据都将不断写入起始地址,刷新起始地址上的数据(FIXED 模式)。原创 2023-06-06 15:43:34 · 2829 阅读 · 2 评论 -
【ARM AMBA AXI 入门 4 - AXI 协议中的 Out-of-Order transfer and interleave 介绍 】
如果 master 在自己的写数据总线上,依次发出 WDATA2_0,WDATA1_0,WDATA2_1,WDATA1_1,WDATA2_2,WDATA2_3,WDATA1_2,WDATA1_3,这就叫写 out of order且 interleave;比如,不允许出现WDATA2_1,WDATA1_0,WDATA2_0,WDATA1_1,WDATA2_2,WDATA2_3,WDATA1_2,WDATA1_3这样的。这样的数据是有可能的,这就是读的。这样的数据是有可能的,这就是。原创 2023-06-10 17:18:53 · 2147 阅读 · 0 评论 -
【ARM AMBA AXI 入门 9 - AXI 总线 AxPROT 与安全之间的关系 】
ARMv8 架构中的AXI(Advanced eXtensible Interface)总线与NS(Non-Secure)位密切相关。NS位是指在ARM TrustZone安全扩展中定义的一种状态,用于区分安全和非安全的处理器执行环境。AXI总线可以通过NS位来实现安全和非安全处理器之间的隔离和通信。具体来说,AXI总线上的每个事务都包括一个NS位,用于指示该事务所属的处理器执行环境。当一个非安全处理器向一个安全设备发起事务时,该事务的NS位应该设置为非安全。原创 2023-06-19 12:21:47 · 3264 阅读 · 0 评论 -
【ARM AMBA AXI 入门 11 - AXI 总线 AWCACHE 和 ARCACHE 介绍】
当 AWCACHE[3] 信号置低,但 AWCACHE[2] 置高时,该位置上的数据可能因为其他主机的操作、或者本机的读事务缓存于 cache 中,同样需要首先查找 cache。我们接着引申,假设数据已经被缓存在中间组件中了,如果相邻的缓存事务中的数据正好要被写入相邻的地址(换句话说在一个 cache line 中),那么如果能把不同数据聚合起来,这样一来岂不是能减少写入数据的次数,减少对总线的占用?传输事务在通过系统缓存时,如果该事务命中缓存表项,即可直接得到结果,避免访问外部存储带来的缺失代价。原创 2023-09-11 20:14:41 · 3917 阅读 · 1 评论 -
【ARM AMBA AXI 入门 12 -- AXI协议中的 WLAST 与 RLAST】
例如,如果要进行一个长度为 4 的突发写操作,那么在第一个、第二个和第三个数据传输周期中,WLAST 信号都会为 0,表示突发传输还没有结束。在第四个数据传输周期中,WLAST 信号会变为 1,表示突发传输结束。总线协议中的 WLAST 信号是一个重要的信号,它在 AXI 协议中用来标识一个突发(Burst)传输的最后一个数据传输周期。在 AXI 协议中,可以通过突发模式进行高效的大数据量传输。信号为 1 时,表示当前的数据传输周期是突发传输的最后一个周期。需要注意的是,WLAST 信号只在写操作中使用。原创 2023-11-06 18:37:20 · 2079 阅读 · 0 评论 -
【ARM AMBA AXI 入门 7 - AXI 协议中的独占访问 使用背景介绍】
本文主要介绍了 AXI 总线中的独占访问使用的原因及背景,已经软件中如何利用独占访问机制的原创 2022-11-07 21:02:43 · 2289 阅读 · 4 评论 -
【ARM AMBA AXI 入门 5 - AXI 协议中的 QoS信号及User信号介绍 】
在芯片设计中,以内存带宽为例,对于手机 SoC 或通用的图像 GPU而言,显示接口模块显然需要稍高一些的优先级,否则打游戏时显示图像不流畅会极大的影响用户体验。要注意的是,如果是不同厂家的 IP,在集成时千万要看好了USER信号的具体用法,很有可能不兼容,不能直连。增加的 QoS 信号可以在这句话的基础上进一步指导 Transaction 的执行顺序,通常情况下,高优先级, QOS信号数值也会大一些。就是在资源有限的情况下,尽可能的保证高优先级的模块或组件获得足够的资源,比如内存带宽。原创 2023-06-12 14:53:26 · 4568 阅读 · 0 评论 -
【ARM AMBA AXI 入门 6 - AXI3 协议中的锁定访问之AxLOCK信号】
信号来指示事务是锁定的事务时,互连(Interconnect)必须确保只有该主机可以访问目标从属区域,直到来自同一主机的未锁定事务完成。当 M0 使用 一个 lock 信号来说明当前的访问时锁定访问时,互联会使用仲裁器来保证只有M0可以访问从属目标区域。中考虑到大多数组件并不需要锁定的事务,而且锁定事务对于互连设计和 QoS 带来挑战,因此。在主机启动读或写事务的锁定序列之前,它必须确保没有其他事务等待完成。下图用了 M0 和 M1 来展示 AXI 锁定访问。AXI3 支持 Locked access,原创 2023-06-13 16:09:17 · 1439 阅读 · 0 评论
分享