什么是AMB上总线?
随着深亚微米工艺技术日益成熟,集成电路芯片的规模越来越大。数字IC从基于时序驱动的设计方法,发展到基于IP复用的设计方法,并在SOC设计中得到了广泛应用。在基于IP复用的SoC设计中,片上总线设计是最关键的问题。为此,业界出现了很多片上总线标准。其中,由ARM公司推出的AMB上总线受到了广大IP开发商和SoC系统集成者的青睐,已成为一种流行的工业标准片上结构。AMBA规范主要包括了AHB(Advanced High performance Bus)系统总线和APB(Advanced Peripheral Bus)外围总线。
AMB上总线
AMBA 2.0规范包括四个部分:AHB、ASB、APB和Test Methodology。AHB的相互连接采用了传统的带有主模块和从模块的共享总线,接口与互连功能分离,这对芯片上模块之间的互连具有重要意义。AMBA已不仅是一种总线,更是一种带有接口模块的互连体系。下面将简要介绍比较重要的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状态。
基于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协议的转换。
文章出处:http://www.diybl.com/course/6_system/linux/Linuxjs/200875/130391.html
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dragonfly0939/archive/2009/02/15/3894145.aspx
分享到:
相关推荐
arm AMBA 总线 简介,非常实用的入门资料
ARM amba总线驱动介绍,适合初学者。
介绍ARM CPU采用的AMBA总线的结构及应用,对AMBA总线工作原理、分类、设计等进行了详细分析。
ARM AMBA总线协议文档,中文版 包含AHB、APB、ASB协议的读写操作实现
ARM AMBA AXI总线原理分析,详细说明了AXI总线原理;
AMBA总线的规范,解密版本,可打印可修改。 ARM研发的AMBA(Advanced Microcontroller Bus Architecture)提供一 种特殊的机制,可将RISC处理器集成在其它IP芯核和外设中,2.0版AMBA标准定义了三组总线:AHB(AMBA高...
基于AMBA规范的总线VERILOG HDL 源代码
AMBA(Advanced Microcontroller Bus Architecture)先进的微控制器总线架构是一个免费、开放的标准,用于SoC内部功能模块之间的互连和管理。对成功设计一个有大量控制器和外设的多核处理器有很大的帮助。AMBA标准是...
给需要深入了解arm内部架构的朋友,可以看看这份文档,很深入的讲解了总线的原理,这样当你再看CM3/4/7内核手册时,看到内核总线架构图,就明白了他们到底是怎样工作的;
ARM总线规范+AMBA 2.0 IP核实现+AMBA DDR2总线控制实现,1.0/2.0 AMBA总线规范及IP实现及应用;7个文档
综合分析对比了Silicore的Wishbone、IBM的CoreConnect和ARM的AMBA 总线的技术特点。Wishbone总线配置简单、灵活,有丰富的免费资源。CoreConneet 总线构造完整、通用,功能强大,但是对于嵌入式应用来说可能太复杂。...
摘 要:AMBA总线是目前主流的片上总线。本文给出的双层AMBA总线设计能极大地提高总线带宽,并使系统架构更为灵活。文章详细介绍了此设计的实现,并从两个方面对两种总线方式进行了比较。 关键词:双层AMBA总线;总线...
AMBA总线,AMBA总线中文资料,使用与学习arm 、xilinx fpga 等
arm最新的总线协议,里面包含了最新的axi,ahb,apb总线,以及最新的ace总线,是了解soc系统总线的最好的入门资料
arm amba总线协议,在移动终端、低功耗领域都离不开arm总线协议。
包含:AMBA® 4 AXI4-Stream Protocol、AMBA® AXI and ACE Protocol、AMBA® CXS Protocol Specification、AMBA® Low Power Interface、ARM® AMBA® 5 AHB Protocol、ARM® AMBA® 5 CHI Architecture、Arm® ...
该控制器集成于基于AMBA总线的Garfield系列芯片SEP4020中,采用硬件描述语言(verilog)实现。利用EDA工具VCS,Design Compiler对该控制器进行仿真、综合。设计采用Altera公司的FPGA进行验证,并采用SMIC 0.18μm工艺流片...
AXI 是ARM 新推出的新一代AMBA 片上总线,AXI 的一序列新特点满足了高性能、高带宽、高速度的现代SoC 设计的要求。本文介绍了AXI 的新特性,并和旧一代总线标准AHB 性能做了详细的比较,同时给出了AXI 的典型应用。 ...
做ARM硬件和写驱动的必须手册
AMBA总线是ARM公司体系结构中的总线,该中文版本对英文不好的学生非常有价值