AMBAAHBAPBAXI协议对比分析.pptx
纲要1AMBA概述AHB协议APB协议AXI协议APB/AHB/AXI对比第1页/共20页AMBA概述2AMBA(Advanced Microcontroller Bus Architecture):高级微处理器总线架构AHB(Advanced High-performance Bus):高级高性能总线ASB(Advanced System Bus):高级系统总线APB(Advanced Peripheral Bus):高级外围总线AXI(Advanced eXtensible Interface):高级可扩展接口这些内容加起来就定义出一套为了高性能SOC 而设计的片上通信的标准第2页/共20页一个典型的基于AMBA 总线的SOC 系统架构3这种SOC架构以AHB为主干,挂上CPU,片上内存,和其它DMA设备。第3页/共20页4AHB 主要是针对高效率、高频宽及快速系统模块所设计的总线,它可以连接如微处理器、芯片上或芯片外的内存模块和DMA等高效率模块AMBA 中的APB 主要用在低速且低功率的外围,可针对外围设备作功率消耗及复杂接口的最佳化APB在AHB和低带宽的外围设备之间提供了通信的桥梁,所以APB是AHB或者ASB的二级扩展总线第4页/共20页AHB的组成5Master:能够发起读写操作,提供地址和控制信号,同一时间只有1 个Master会被激活。Slave:在给定的地址范围内对读写操作作响应,并对Master返回成功,失败或者等待等状态。Arbiter:负责保证总线上一次只有1个Master在工作。仲裁协议是规定的,但是仲裁算法可以根据应用决定。Decoder:负责对地址进行解码,并提供片选信号到各Slave。每一个AHB 都需要1个仲裁器和1个中央解码器。第5页/共20页AHB总线互连6第6页/共20页7发起一个请求给仲裁器驱动地址和控制信号允许某个主设备控制总线仅选中的从设备响应地址/控制信号拉高HREADY信号,总线传输完成第7页/共20页8AHB基本信号HADDR:32位系统地址总线HTRANS:M指示传输状态,NONSEQ、SEQ、IDLE、BUSYHWRITE:传输方向:1-写,0-读HSIZE:传输单位HBURST:传输的burst类型HWDATA:写数据总线,从M写到S第8页/共20页9HREADY:S应答M是否读写操作传输完成:1-传输完成,0-需延长传输周期。需要注意的是,HREADY 做为总线上的信号,它是M和S 的输入;同时每个S 需要输出自己的HREADY。所以对于S 会有两个HREADY 信号,一个来自总线的输入,一个自己给到多路器的输出。HRESP:S应答当前传输状态,OKAY、ERROR、RETRY、SPLITHRDATA:读数据总线,从S读到M第9页/共20页10AHB基本传输两个阶段地址周期(AP),只有一个cycle数据周期(DP),由HREADY信号决定需要几个cycle流水线传送先是地址周期,然后是数据周期第10页/共20页11Master发出地址和控制信号Slave 采样地址和控制信号Master 采样读数据一次无需等待状态的简单传输第11页/共20页12Not readyNot readyReadySlave拉低READY不能超过16拍需要两个等待周期的简单传输第12页/共20页13PipelineA AddressA DataB AddressB DataC AddressC Data第13页/共20页14AAA+4A+4A+8A+8A+12A+12HBURST shows the burst types:Single TransferIncrementing transfer with unspecified length(INCR)4-beat 8-beat16-beatSlave has know that master need 4 data,A/A+4/A+8/A+12During burst transfer,if slave not ready,then hready=0;but if master is not ready,how to do?Burst类型第14页/共20页15传输类型HTRANS1:0:当前传输的状态IDLE、BUSY、NONSEQ、SEQ00:IDLE主设备占用总线,但没进行传输两次burst传输中间主设备发IDLE01:BUSY主设备占用总线,但是在burst传输过程中还没有准备好进行下一次传输一次burst传输中间主设备发BUSY第15页/共20页16传输类型(续)10:NOSEQ表明一次单个数据的传输或者一次burst传输的第一个数据地址和控制信号与上一次传输无关11:SEQ表明burst传输接下来的数据地址和上一次传输的地址是相关的第16页/共20页17The first transfer Master is busyThe subsequent transferThe subsequent transferSlave is not readyThe subsequent transfer传输类型举例第17页/共20页18其它AHB控制信号HWRITE高电平:写低电平:读HSIZE2:0000:8bits 100:128bits001:16bits 101:256bits010:32bits 110:512bits011:64bits 111:1024bits最大值受总线的配置所限制通常使用32bits(010)第18页/共20页APB/AHB/AXI对比APBAHBAXI低功耗高速度高速度,高带宽管道化互联单向通道只需首地址读写并行支持乱序支持非对齐操作有效支持初始延迟较高的外设 连线非常多19第19页/共20页20感谢您的观赏!第20页/共20页