AMBA、AHB、APB总线简介

 

 转载日记:
 
AMBA 简介
随着深亚微米工艺技术日益成熟,集成电路芯片的规模越来越大。数字 IC 从基于时序驱动的设计方法,发展到基于 IP 复用的设计方法,并在 SOC 设计中得到了广泛应用。在基于 IP 复用的 SoC 设计中,片上总线设计是最关键的问题。为此,业界出现了很多片上总线标准。其中,由 ARM 公司推出的 AMBA 片上总线受到了广大 IP 开发商和 SoC 系统集成者的青睐,已成为一种流行的工业标准片上结构。 AMBA 规范主要包括了 AHB(Advanced High performance Bus) 系统总线和 APB(Advanced Peripheral Bus) 外围总线。 
AMBA 片上总线
       AMBA 2.0
规范包括四个部分: AHB ASB APB Test Methodology AHB 的相互连接采用了传统的带有主模块和从模块的共享总线,接口与互连功能分离,这对芯片上模块之间的互连具有重要意义。 AMBA 已不仅是一种总线,更是一种带有接口模块的互连体系。下面将简要介绍比较重要的 AHB APB 总线。
基于 AMBA 的片上系统
       一个典型的基于 AMBA 总线的系统框图如图3所示。
       大多数挂在总线上的模块 ( 包括处理器 ) 只是单一属性的功能模块:主模块或者从模块。主模块是向从模块发出读写操作的模块,如 CPU DSP 等;从模块是接受命令并做出反应的模块,如片上的 RAM AHB APB 桥等。另外,还有一些模块同时具有两种属性,例如直接存储器存取 (DMA) 在被编程时是从模块,但在系统读传输数据时必须是主模块。如果总线上存在多个主模块,就需要仲裁器来决定如何控制各种主模块对总线的访问。虽然仲裁规范是 AMBA 总线规范中的一部分,但具体使用的算法 RTL 设计工程师决定,其中两个最常用的算法是固定优先级算法和循环制算法。 AHB 总线上最多可以有 16 个主模块和任意多个从模块,如果主模块数目大于 16 ,则需再加一层结构 ( 具体参阅 ARM 公司推出的 Multi-layer AHB 规范 ) APB 桥既是 APB 总线上唯一的主模块,也是 AHB 系统总线上的从模块。其主要功能是锁存来自 AHB 系统总线的地址、数据和控制信号,并提供二级译码以产生 APB 外围设备的选择信号,从而实现 AHB 协议到 APB 协议的转换。
=================================================================
=================================================================
AHB 简介
       AHB 主要用于高性能模块 ( CPU DMA DSP ) 之间的连接,作为 SoC 的片上系统总线,它包括以下一些特性:单个时钟边沿操作;非三态的实现方式;支持突发传输;支持分段传输;支持多个主控制器;可配置 32 ~128 位总线宽度;支持字节、半字节和字的传输。 AHB 系统由主模块、从模块和基础结构 (Infrastructure)3 部分组成,整个 AHB 总线上的传输都由主模块发出,由从模块负责回应。基础结构则由仲裁器 (arbiter) 、主模块到从模块的多路器、从模块到主模块的多路器、译码器 (decoder) 、虚拟从模块 (dummy Slave) 、虚拟主模块 (dummy Master) 所组成。其互连结构如图 1 所示。

=================================================================
=================================================================
APB 简介
       APB 主要用于低带宽的周边外设之间的连接,例如 UART 1284 等,它的总线架构不像 AHB 支持多个主模块,在 APB 里面唯一的主模块就是 APB 桥。其特性包括:两个时钟周期传输;无需等待周期和回应信号;控制逻辑简单,只有四个控制信号。 APB 上的传输可以用如图2所示的状态图来说明。
       1) 系统初始化为 IDLE 状态,此时没有传输操作,也没有选中任何从模块。

       2)
当有传输要进行时, PSELx 1 PENABLE 0 ,系统进入 SETUP 状态,并只会在 SETUP 状态停留一个周期。当 PCLK 的下一个上升沿时到来时,系统进入 ENABLE 状态。
 
       3) 系统进入 ENABLE 状态时,维持之前在 SETUP 状态的 PADDR PSEL PWRITE 不变,并将 PENABLE 置为 1 。传输也只会在 ENABLE 状态维持一个周期,在经过 SETUP ENABLE 状态之后就已完成。之后如果没有传输要进行,就进入 IDLE 状态等待;如果有连续的传输,则进入 SETUP 状态。
 

 

       

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值