AMBA-总线-介绍2.0
- 格式:ppt
- 大小:2.95 MB
- 文档页数:98
AMBA发展历史
AMBA(Advanced Microcontroller Bus Architecture)是一种用于在微控制器和其他系统中实现高性能、低功耗互连的总线架构。
下面是AMBA的发展历史:
1. AMBA 1.0:于1995年发布,包括ASB(Advanced System Bus)和APB(Advanced Peripheral Bus)两种总线协议。
ASB提供高速数据传输和低功耗,而APB则提供简单的单周期访问。
2. AMBA 2.0:于2001年发布,引入了AHB(Advanced High-performance Bus)协议,用于高速数据传输。
AHB提供了更好的带宽和更低的延迟,适用于需要快速响应的应用场景。
3. AMBA 3.0:于2007年发布,引入了AXI(Advanced eXtensible Interface)协议,用于高级可扩展性和灵活性。
AXI 支持各种不同的数据传输大小和地址映射方式,适用于不同的应用场景。
4. AMBA 4.0:于2013年发布,进一步增强了AMBA的性能和可扩展性。
AMBA 4.0引入了AHB3和AXI4协议,支持更高的带宽和更低的延迟,并提供更灵活的协议配置选项。
总的来说,AMBA的发展历程是从简单的ASB和APB
协议到更复杂的AHB和AXI协议,不断地提高性能和可扩展性,以适应不断发展的应用需求。
AMBA(Advanced Microcontroller Bus Architecture)总线是ARM公司提出的一种开放式、高性能的总线标准,常用于嵌入式系统中。
在AMBA总线中,latency(延迟)通常指的是数据从一个设备传输到另一个设备所需的时间,具体定义如下:1. 传输延迟:AMBA总线上的传输延迟是指数据或信号从一个AMBA总线的主设备传输到从设备(或相反)所需的时间。
这包括了信号传输、寻址和响应等过程中所耗费的时间。
2. 处理延迟:除了传输延迟外,AMBA总线上的处理延迟还包括了数据在从设备内部进行处理(如缓存、寄存器等)所需的时间。
这个延迟通常取决于从设备的性能和处理能力。
AMBA总线是一种用于连接嵌入式系统不同功能模块(如处理器、内存、外设等)的开放式总线标准。
在AMBA总线中,latency(延迟)可以分为以下几个方面的定义和优化:1. 传输延迟:AMBA总线上的传输延迟包括了信号从一个设备传输到另一个设备所需的时间。
具体包括以下几个阶段:- 请求发起:当主设备发送请求时,信号需要经过总线来到达目标从设备。
这个过程涉及总线中的传输延迟,包括信号的传输速度和总线的带宽。
- 寻址:一旦请求到达目标从设备,目标设备需要解析请求并确定具体的寻址信息,以确定数据的来源或目标地址。
这个解析过程可能需要一定的时间。
- 响应返回:从设备接收到请求后,需要进行相应的操作,并将结果或响应发送回主设备。
这个过程也会产生一定的延迟。
降低传输延迟的方法包括提高总线的工作频率、增加总线的带宽、优化总线协议和信号传输机制等。
例如,采用更高速的总线规范(如AMBA AXI),使用更快的总线时钟频率,以及采用高性能的总线接口和物理层技术(如串行化)等。
2. 处理延迟:除了传输延迟外,AMBA总线上的处理延迟还包括了数据在从设备内部进行处理所需的时间。
这个延迟取决于从设备的性能和处理能力,例如从设备内部的存储器读写延迟、计算或操作的执行时间等。
AMBA(Advanced Microcontroller Bus Architecture),即高级微控制器总线体系。
目前,AMBA总线标准一共有四套版本,各个版本的协议都沿用至今。
1)第一套AMBA 1.0总线。
2)第二套AMBA 2.0总线。
3)第三套AMBA 3.0 AXI总线。
4)第四套AMBA4.0总线。
➢AMBA1.0只包含ASB总线和APB总线,这时候的总线协议都是三态总线,但是三态总线要设计者花很多的精力去注意时钟。
➢AMBA2.0总线新增了AHB总线,并且采用了分享型的互连结构,增加了新的特性。
➢为了顺应快速发展的SoC技术,ARM公司推出了具有更强灵活性的AMBA3.0 AXI总线。
➢2010年ARM公司发布了SoC片上总线标准的新版本AMBA4.0总线,由AXI4、AXI4-Lite、AXI4-Stream三种标准构成。
AMBA4.0规范是多家企业共同为行业而设定的,包括业界领先的OEM厂商、半导体及EDA供应商等。
AMBA4.0规范的特殊设计将使嵌入式系统达到过去只有台式电脑、笔记本电脑和网络设备才能达到的水准。
1AMBA 2.0版本标准2.0版AMBA标准定义了三种不同的总线:●AHB(Advanced High-performance Bus)高级高性能总线;●ASB(Advanced System Bus)高级系统总线;●APB(Advanced Peripheral Bus)高级外设总线。
典型的基于AMBA总线的系统框图如图:大多数挂在总线上的模块(包括处理器)只是单一属性的功能模块:主模块或者从模块。
主模块是向从模块发出读写操作的模块,如CPU,DSP等;从模块是接受命令并做出反应的模块,如片上的RAM,AHB/APB 桥等。
另外,还有一些模块同时具有两种属性,例如直接存储器存取(DMA)在被编程时是从模块,但在系统读传输数据时必须是主模块。
如果总线上存在多个主模块,就需要仲裁器来决定如何控制各种主模块对总线的访问。
AMBA总线介绍AMBA 2.0规范包括四个部分:AHB、ASB、APB和Test Methodology。
AHB的相互连接采用了传统的带有主模块和从模块的共享总线,接口与互连功能分离,这对芯片上模块之间的互连具有重要意义。
AMBA已不仅是一种总线,更是一种带有接口模块的互连体系。
AHBAHB=Advanced High Performance Bus,译作高级高性能总线。
如同USB(Universal Serial Bus)一样,也是一种总线接口。
特性:突发连续传输分步传输单周期内主控制器处理单时钟边沿操作非三态操作支持64位,128位总线AHB主要用于高性能模块(如CPU、高速RAM、Nand Flash DMA和DSP等)之间的连接,如图一所示。
作为SoC的片上系统总线,它包括以下一些特性:单个时钟边沿操作;非三态的实现方式;支持突发传输;支持分段传输;支持多个主控制器;可配置32位~128位总线宽度;支持字节、半字和字的传输。
AHB 系统由主模块、从模块和基础结构(Infrastructure)3部分组成,整个AHB总线上的传输都由主模块发出,由从模块负责回应。
基础结构则由仲裁器(arbiter)、主模块到从模块的多路器、从模块到主模块的多路器、译码器(decoder)、虚拟从模块(dummy Slave)、虚拟主模块(dummy Master)所组成。
其互连结构如图二所示AHB主控制器:主控制器可以通过地址和控制信息,可以进行初始化,读,写操作。
在同一时间,总线上只能有一个主控制器。
AHB从设备:从设备通常是指在其地址空间内,响应主控制器发出的读写控制操作的被动设备。
通过操作的成功与否反馈给其主控制器,完成数据的传输控制。
AHB仲裁器:仲裁器根据用户的配置,确保在总线上同一时间只有一个主控制器拥有总线控制权限。
AHB总线上只能有一个仲裁器。
AHB译码器:译码器解析在总线上传输的地址和控制信息。
AMBA总线介绍ARM 研发的AMBA(Advanced Microcontroller Bus Architecture)提供一种特殊的机制,可将RISC 处理器集成在其它IP 芯核和外设中,2.0 版AMBA 标准定义了三组总线:AHB(AMBA 高性能总线)、ASB(AMBA 系统总线)、和APB(AMBA 外设总线)。
AHB 用来研发宽带宽处理器芯核的片上总线。
the Advanced High-performance Bus(AHB)应用于高性能、高时钟频率的系统模块,它构成了高性能的系统骨干总线(back-bone bus )。
它主要支持的特性是:* 数据突发传输(burst transfer )*数据分割传输(split transaction )*流水线方式*一个周期内完成总线主设备(master )对总线控制权的交接*单时钟沿操作*内部无三态实现*更宽的数据总线宽度(最低32 位,最高可达1024 位,但推荐不要超过256 位)ASB the Advanced System Bus 是第一代AMBA 系统总线,同AHB 相比,它数据宽度要小一些,它支持的典型数据宽度为8 位、16 位、32 位。
它的主要特征如下:* 流水线方式* 数据突发传送* 多总线主设备* 内部有三态实现the Advanced Peripheral Bus(APB)是本地二级总线(local secondary bus ),通过桥和AHB/ASB 相连。
它主要是为了满足不需要高性能流水线接口或不需要高带宽接口的设备的互连。
APB 的总线信号经改进后全和时钟上升沿相关,这种改进的主要优点如下:* 更易达到高频率的操作* 性能和时钟的占空比无关* STA 单时钟沿简化了* 无需对自动插入测试链作特别考虑* 更易与基于周期的仿真器集成APB 只有一个APB 桥,它将来自AHB/ASB 的信号转换为合适的形式以满足挂在APB 上的设备的要求。
001AMBA总线概述AMBA总线协议是⼀套由ARM提供的互连规范,该规范标准化了各种IP之间的芯⽚通信机制。
这些设计通常有⼀个或多个微处理器以及集成其他⼀些组件——内部存储器或外部存储器桥、DSP、DMA、加速器和各种其他外围设备,如USB、UART、PCIE、I2C等。
AMBA协议的主要⽬的是⽤⼀种标准和⾼效的⽅法来重⽤这些跨多个设计的IP。
学习AMBA协议的第⼀步是了解这些不同的协议在哪⾥使⽤,是如何演进的,以及它们适合什么样SOC设计。
⼀、AMBA总线发展史AMBA是由公司研发推出的⼀种⾼级微控制器总线架构(Advanced Microcontroller Bus Architecture)。
AMBA 1.0ASB 和 APBAMBA 2.0AHB, ASB 和 APBAMBA 3.0AMBA Advanced eXtensible Interface (AXI)AMBA 4.0AXI4,AXI4-lite,AXI4-stream,ACE,ACE-liteAMBA 5.0AXI5,AXI5-lite,ACE5,ACE5-lite,ACE5-liteDVM下图展⽰了传统基于AMBA2.0的SOC设计,它使⽤AHB(⾼级⾼性能)协议进⾏⾼带宽互连,以及针对低带宽外围互连的APB(⾼级外围总线)协议。
随随着越来越多的IP集成到SOC设计中,读写共享的AHB、APB总线已经⽆法满⾜互联需求了。
2003年,AMBA3.0引⼊了点对点连接协议——AXI(⾼级可扩展接⼝)。
此外在2010年,⼜推出了⼀个增强版——AXI4。
下图说明了协议的演变以及⾏业中的SOC设计趋势。
下图说明了如何使⽤AXI互连来构建各种IP通信的的SOC。
与以前的AHB/ASB总线相⽐,AXI互连有助于提⾼连接数量。
在移动和智能⼿机时代发⽣了进⼀步的演进,SOC集成了2/4/8核处理器和共享cache,并且需要跨内存⼦系统的硬件管理⼀致性。
Introduction to AMBA Bus System工研院 / 系統晶片技術㆗心工程師吳欣龍1. 前言本篇文章主要是介紹ARM Limited.公司所推出的AMBA 協定(Advanced Micro-controller Bus Architecture)。
AMBA協定目前是open 且free的,讀者可從ARM的網站()㆘載完整的Specification。
這篇文章並沒有打算說明完整的AMBA協定內容,詳細的Spec.還是請讀者閱讀ARM所提供的文件。
原本的AMBA協定包含了㆕大部分: AHB, ASB, APB, Test Methodology,限於篇幅的關係,我們挑選較重要的AHB, APB加以基本的介紹,並探討AHB的㆒些重要的特性。
2. AMBA 概述AMBA協定的目㆞是為了要推出on-chip bus的規範,㆒開始AMBA 1.0只有ASB與APB,為了節省面積,所以這時候的bus協定都是tristate的bus,而到後來2.0的AHB為了能更方便設計者(trisate bus要花更多精力去注意timing),因此改用bus改用multiplexor的架構,並增加了新的特性。
㆒個以AMBA架構的SOC,㆒般來說包含了 high-performance的system bus - AHB與low-power的peripheral bus - APB。
System bus是負責連接例如ARM之類的embedded processor與DMA controller,on-chip memory 和其他 interface,或其他需要high bandwidth 的元件。
而peripheral bus則是用來連接系統的周邊元件,其protocol相對AHB來講較為簡單,與AHB之間則透過Bridge相連,期望能減少system bus的loading。
㆒個典型的AMBA架構如圖2.1:圖2.13. AHB簡介ARM當初訂定AHB (Advanced High-Performance Bus)主要是想讓它能夠用來當作SOC的z single-clock edge operationz non-tristate implementationz burst transfersz split transactionz multiple bus master以㆘我們將簡單的介紹AHB 的協定及這些特性。
本文源于哥,断奶了在学习中做的笔记,希望分享后大家一起学习讨论。
2013/4/27GRLIB IP Core User’s ManualGBLIB IP 核用户手册(AMBA总线部分)一.AHBCTRL - AMBA AHB控制器,支持即插即用1.1 overview(概述)根据AMBA2.0标准AMBA AHB控制器的组合包括AHB仲裁器、总线多路复用器和从解码器。
该控制器支持多达16个AHB的master,16个AHB的slave。
Master和slave 的最大数量定义在GRLIB.AMBA包,在VHDL常数NAHBSLV的和NAH BMST。
它也可以通过设置nahbm nahbs VHDL generics。
1.2 operation(操作)1.2.1 arbitration(仲裁器)AHB控制器支持两个仲裁算法:固定优先级和循环配置资源。
这个选择是通过VHDL generic rrobin决定的。
在固定优先级模式(rrobin= 0),总线请求的优先级等于主总线指数,指数为0的优先级最低。
如果没有master请求总线,master0(由VHDL generic defmast的设置)将被授予。
在循环配置模式下,优先旋转1步后,每个AHB传输。
如果没有master请总线,最后的所有者将被授予(bus parking)。
VHDL generic mprio的可以可以用来指定一个或多个master时,应优先配置core为循环模式。
在递增突发下,AMBA 2.0规范建议master保持总线请求直到最后一次访问结束,不然他会失去总线所有权。
对于固定长度突发,这个AHB master将被授予总线知道整个突发完成,或者在第一次访问之后立即释放总线请求。
然而对于这项工作的,VHDLgeneric fixbrst的应该被设置为1。
1.2.2 decoding(解码器)slave解码器(一代的HSEL)在这个用户手册中是使用即插即拔的方法在这个用户手册中。
计算机基本知识AMBA总线介绍一:背景介绍ARM公司定义了AMBA(Advanced Microcontroller Bus Architecture)总线规范,它是一组针对基于ARM核的、片上系统之间通信而设计的标准协议。
因为ARM处理器的广泛使用而拥有众多第三方支持,被ARM公司90%以上的合作伙伴采用。
在AMBA总线规范中,定义了AHB ,APB ,ASB这3种总线。
最初的AMBA总线是ASB和APB。
在它的第二个版本中,ARM引入了AHB。
(l)AHB:Advanced High Performace Bus,用于高性能系统模块的连接,支持突发模式数据传输和事务分割;(2)ASB:Advanced System Bus,也用于高性能系统模块的连接,支持突发模式数据传输,这是较老的系统总线格式,后来由AHB总线替代;(3)APB:Advanced PeriPheral Bus,用于较低性能外设的简单连接,一般是接在AHB或ASB系统总线上的第二级总线。
图1 典型的基于AMBA总线的系统[1]一个以AMBA 为架构的SOC,图1是个典型的系统架构,一般来说包含了high-performance 的system bus –AHB以及low speed, low power 的peripheral bus - APB 。
System bus 是负责连接例如ARM 之类的embedded processor 以及DMA controller,on-chip memory 和其他interface,或其他需要high bandwidth的模块。
而peripheral bus 则是用来连接系统的外围慢速模块,其协议规则相对AHB来说较为简单,它以AHB之间则通过Bridge 相连,期望能減少system bus 的loading。
二:结构以及仲裁原理1 .AHB BusAHB System是由Master,Slave,Infrastructure 三部分所组成。
[导读]为了在嵌入式系统设计中实现对SDRAM存储器的访问,本文提出了一种基于AMBA-AHB总线规范的SDRAM控制器设计方案。
方案首先简要介绍了AMBA总线规范,然后在完成整个存储控制器的整体框架设计的基础上给出了SDRAM控制器的实现原理以及详细的子模块划分。
整个控制器的设计已用Verilog HDL语言实现并通过了Modelsim仿真和FPGA验证。
仿真结果表明所设计的控制器符合SDRAM内部指令操作,并且满足了严格的时序要求。
0 引言随着大规模集成电路和高速、低功耗、高密度存储技术的发展,SDRAM动态存储器因容量大、速度快、价格低廉等优点,现已成为PC内存的主流。
然而SDRAM存储器内部控制逻辑十分复杂,时序要求也非常严格,因此需要设计专门的SDRAM 控制器来实现系统对SDRAM 的访问。
存储控制器是嵌入式微处理器中AMBA-AHB总线与片外存储设备之间的接口,完成总线主设备(CPU或DMA)与片外存储设备(SDRAM或SRAM)的数据传输,其功能与性能决定着嵌入式微处理器所支持的外部存储器的类型以及外部存储器的访问速度,进而决定着整个嵌入式系统的处理速度。
AMBA总线规范成为嵌入了式微处理器内片上总线的标准,设计基于AMBA总线标准,支持嵌入式系统常用存储器类型的存储控制器IP具有非常大的现实意义。
1 AMBA 总线简介典型的基于AMBA总线的微控制器架构如图1所示。
它包含一个作为系统骨架的AHB(Advanced High-Performance Bus)或ASB总线,可实现CPU或DMA模块与片外存储器之间的大量数据通信,以获得大的带宽。
另外,在这条高性能总线上还有一个桥接器以连接低带宽的APB,而在APB上连接着大多数的系统外设。
用户可以各自独立设计基于这个规范的微处理器以及外围IP,提高了系统的开发效率及模块的可重用型[6]。
其中,AHB 总线是一种支持多总线主机的高性能总线,用于高性能、高时钟频率的系统,它保证了处理器与片外存储器的有效连接。