AHB总线总结--课件

上传人:文**** 文档编号:240743861 上传时间:2024-05-04 格式:PPT 页数:64 大小:3.38MB
返回 下载 相关 举报
AHB总线总结--课件_第1页
第1页 / 共64页
AHB总线总结--课件_第2页
第2页 / 共64页
AHB总线总结--课件_第3页
第3页 / 共64页
点击查看更多>>
资源描述
1AHB Introduction1PPT课件2Topic1nWhat is the AHB?What is the AHB?2PPT课件3AMBA介绍nAdvanced Microcontroller Bus ArchitectureAdvanced Microcontroller Bus Architecture片上总线的标准n定义了三种总线定义了三种总线AHB(Advanced High-performance Bus)ASB(Advanced System Bus)APB(Advanced Peripheral Bus)3PPT课件4一个典型的AMBA系统n处理器和其它主设备处理器和其它主设备/从设备都是可以替换的从设备都是可以替换的4PPT课件5AHBn高速总线,高性能高速总线,高性能n流水线操作流水线操作n可支持多个总线主设备(最多可支持多个总线主设备(最多1616个)个)n支持支持burstburst传输传输n总线带宽:总线带宽:8 8、1616、3232、6464、128bits128bitsn上升沿触发操作上升沿触发操作5PPT课件Topic2What constitutes the AHB?What constitutes the AHB?66PPT课件7AHB组成部分nAHB AHB 主设备(主设备(mastermaster)发起一次读/写操作某一时刻只允许一个主设备使用总线nAHBAHB从设备(从设备(slaveslave)响应一次读/写操作通过地址映射来选择使用哪一个从设备nAHBAHB仲裁器(仲裁器(arbiterarbiter)允许某一个主设备控制总线在AMBA协议中没有定义仲裁算法nAHBAHB译码器(译码器(decoderdecoder)通过地址译码来决定选择哪一个从设备7PPT课件8InternalConnectionofAHB发起一个请求给仲裁器驱动地址和控制信号允许某个主设备控制总线选中所需的从设备拉高HREADY信号,总线传输完成8PPT课件9AHB信号9PPT课件10基本AHB信号nHCLKHCLK总线时钟nHRESETnHRESETn总线复位,低电平有效nHADDR31:0HADDR31:032位系统地址总线nHWDATA31:0HWDATA31:0写数据总线,从主设备写到从设备nHRDATA31:0HRDATA31:0读数据总线,从从设备读到主设备10PPT课件11基本AHB信号(续)nHTRANSHTRANS指出当前传输的类型NONSEQ、SEQ、IDLE、BUSYnHSIZEHSIZE指出当前传输的大小nHBURSTHBURST指出传输的burst类型nHRESPHRESP从设备发给主设备的总线传输状态OKAY、ERROR、RETRY、SPLITnHREADYHREADY高:从设备指出传输结束低电平:从设备需延长传输周期11PPT课件Topic3nHow can you make a transfer on AHB?How can you make a transfer on AHB?1212PPT课件13BasicAHBtransfern两个阶段两个阶段Address Phase,只有一个有效周期Data Phase,由HBURST信号决定需要几个有效周期n流水线传送流水线传送先是有效地址周期,然后是有效数据周期13PPT课件14MasterreleaseaddressandcontrolSlavesampletheaddressandcontrolMastersamplethedataIfslavehasntreadytoreceivedata,howtodealwithit?基本AHB传输一次无需等待状态的简单传输14PPT课件15NotreadyNotreadyReadyOnetransferneedatleasttwocycles,howtopromoteitsefficiency?Note:accordingtospec,slaveshouldntinsertmorethan16waitcycles!基本AHB传输(续)需要两个等待周期的简单传输15PPT课件16PipelineAAddressADataBAddressBDataCAddressCDataSlavedecodeseverytransfer,onetransferonwait,howtodecreasethewaitcycles?基本AHB传输(续)16PPT课件17BurstTransferAAA+4A+4A+8A+8A+12A+12HBURSTshowsthebursttypes:SingleTransferIncrementingtransferwithunspecifiedlength4-beat8-beat16-beatSlavehasknowthatmasterneed4data,A/A+4/A+8/A+12Duringbursttransfer,ifslaveisnotready,thenhready=0;butifmasterisnotready,howtodo?基本AHB传输(续)17PPT课件18传输类型nHTRANS1:0HTRANS1:0:传输类型:传输类型四种类型:IDLE、BUSY、NONSEQ、SEQn0000:IDLEIDLE主设备占用总线,但没进行传输两次burst传输中间主设备可发IDLEn0101:BUSYBUSY主设备占用总线,但是在burst传输过程中还没有准备好进行下一次传输一次burst传输中间主设备可发BUSY18PPT课件19传输类型(续)n1010:NOSEQNOSEQ表明一次单个数据的传输或者一次burst传输的第一个数据地址和控制信号与上一次传输无关n1111:SEQSEQ表明burst传输接下来的数据地址和上一次传输的地址是相关的19PPT课件20ThefirsttransferMasterisbusyThesubsequenttransferThesubsequenttransferSlaveisnotreadyThesubsequenttransfer传输类型举例20PPT课件21BURST传输nAHB Burst AHB Burst 操作操作4beat、8beat、16beat、单个字节传输、未定义长度的传输支持incrementing和wrapping两种burst传输nIncrementing burstIncrementing burst地址是上一次的传输地址加1个传输单位nWrapping burstWrapping burst例:4beat的wrapping burst 字传输(4byte):0 x34-0 x38-0 x3c-0 x30应用场合:Cache填充21PPT课件22地址计算举例n根据根据HSIZEHSIZE和和HBURSTHBURST来计算地址来计算地址n例:起始地址是例:起始地址是0 x480 x48,HSEZE=010(32bits)HSEZE=010(32bits)22PPT课件23INCR8BurstHCLKSEQNSEQSEQSEQSEQSEQINCR80 x600 x680 x640 x6c0 x740 x70HTRANSHBURSTHADDRHRDATAd1d0d2d4d3d50 x780 x7cSEQSEQd6d723PPT课件24WRAP8BurstHCLKSEQNSEQSEQSEQSEQSEQWRAP80 x700 x780 x740 x7c0 x640 x60HTRANSHBURSTHADDRHRDATAd5d4d6d0d7d10 x680 x6cSEQSEQd2d3startofline24PPT课件25INCR4Burst25PPT课件26WRAP4Burst26PPT课件27例:未定义长度的Burst传输27PPT课件28注意!nBurstBurst传输不能穿越传输不能穿越1K1K边界边界一个从设备最小的地址间隙是1KBNONSEQ-SEQ-1KB Boundary-NONSEQ-SEQ n主设备不能试图开始一个可能穿越主设备不能试图开始一个可能穿越1K1K边界的边界的INCRINCR传输传输28PPT课件29INCRBurstover1kboundaryHCLKSEQNSEQSEQNSEQSEQSEQINCR0 x3F00 x3F80 x3F40 x3FC0 x4040 x400HTRANSHBURSTHADDRHRDATAd1d0d2d4d3d50 x408 0 x40CSEQSEQd6d7start of 1k page29PPT课件Topic4Talking about slaver in detail?Talking about slaver in detail?3030PPT课件31地址译码(续)31PPT课件32从设备响应n所访问的从设备所访问的从设备必须响应必须响应这次传输这次传输n从设备可能返回的响应:从设备可能返回的响应:完成这次传输插入等待状态(HREADY信号)发出错误信号表示这次传输失败分离传输,使得总线可用于其他传输(SPLIT)32PPT课件33从设备响应信号nHREADYHREADY:transfer donetransfer donenHRESP1:0HRESP1:0:transfer responsetransfer response00:OKAY成功01:ERROR失败10:RETRY传输未完成请求主设备重新开始一个传输11:SPLIT传输未完成请求主设备分离一次传输33PPT课件34两周期的响应nHRESP1:0HRESP1:0OKAY:单周期响应ERROR:两周期响应RETRY:两周期响应SPLIT:两周期响应n总总线线的的流流水水特特性性需需要要从从设设备备两两个个周周期期的的响响应应。可可以以使使得得主主设备有足够的时间处理下一次传输。设备有足够的时间处理下一次传输。34PPT课件35SlaveResponsesMem AMem BMem DMem CSlaveProcessorAMBAWrite Mem A35PPT课件36SlaveResponsesMem AMem BMem DMem CSlaveProcessorAMBAWrite Mem EI couldnt write it because of no mem E!36PPT课件37SlaveResponsesMem AMem BMem DMem CSlaveProcessorAMBAWrite Mem AI couldnt write it now for busy!You could retry write it latter!BUSYBUSY37PPT课件38例:Retry响应38PPT课件39RETRY和SPLIT的不同n主要区别在于仲裁的方式主要区别在于仲裁的方式RETRY:arbiter会继续使用通常的优先级SPLIT:arbiter会调整优先级方案以便其他请求总线的主设备可以访问总线n总线主设备应该用同样的方式处理总线主设备应该用同样的方式处理RETRYRETRY响应和响应和SPLITSPLIT响应响应39PPT课件40数据总线n不是三态总线,读数据总线和写数据总线分开不是三态总线,读数据总线和写数据总线分开n印第安序印第安序在AMBA定义中没有定义主设备和从设备应该采用同样的印第安序不支持动态印第安序n对对于于IPIP设设计计,只只有有应应用用面面比比较较广广泛泛的的应应用用程程序序才才支持两种印第安序。支持两种印第安序。40PPT课件41小印第安数据的有效字节41PPT课件42大印第安数据的有效字节42PPT课件Topic5nTalking about slaver in detail?Talking about slaver in detail?4343PPT课件44多个主设备IamfirstIamfirst!44PPT课件45AHB仲裁信号45PPT课件46仲裁信号(续)nHBUSREQHBUSREQ总线请求nHLOCKxHLOCKx:高电平:主设备请求锁定总线nHGRANTxHGRANTx指出主设备x可访问总线主设备x控制总线:HGRANTx=1且HREADY=146PPT课件47仲裁信号(续)nHMASTER3:0HMASTER3:0指出哪个主设备正在进行传输,提供进行split的信息nHMASTLOCKHMASTLOCK指出主设备正在进行一次锁定传输nHSPLITx15:0HSPLITx15:0从设备用这个信号告诉仲裁器哪个主设备允许重新尝试一次split传输。每一位对应一个主设备47PPT课件48仲裁举例(1)n没有等待状态的没有等待状态的grantgrant48PPT课件49仲裁举例(2)n有等待状态的有等待状态的grantgrant49PPT课件50仲裁举例(3)nBurstBurst传输之后移交总线传输之后移交总线50PPT课件51总线主设备Grant信号51PPT课件52几点说明n对于固定长度的对于固定长度的burstburst传输,不必持续请求总线传输,不必持续请求总线n对对于于未未定定义义长长度度的的burstburst传传输输,主主设设备备应应该该持持续续送送出出requestrequest信号,直到开始最后一次传输。信号,直到开始最后一次传输。n如如果果没没有有主主设设备备请请求求总总线线,则则给给default default Master Master grantgrant信号,且信号,且HTRANS=IDLEHTRANS=IDLE52PPT课件53Split传输过程n由主设备开始传输由主设备开始传输n如如果果从从设设备备需需要要多多个个周周期期才才能能获获取取数数据据,则则从从设设备备给给出出一一个个SPLITSPLIT传传输输响响应应,从设备记录主设备号:从设备记录主设备号:HMASTERHMASTERn接着仲裁器改变主设备的优先级接着仲裁器改变主设备的优先级n仲裁器仲裁器grantgrant其他的主设备,总线主设备移交。其他的主设备,总线主设备移交。n当从设备准备结束本次传输,将设置给仲裁器的当从设备准备结束本次传输,将设置给仲裁器的HSPLITxHSPLITx信号的相应位信号的相应位n仲裁器恢复优先级仲裁器恢复优先级n仲裁器仲裁器grantgrant主设备,这样主设备可以重新开始传输主设备,这样主设备可以重新开始传输n结束结束53PPT课件54防止Deadlockn当当多多个个不不同同的的主主设设备备试试图图访访问问同同一一个个从从设设备备,这这个个从从设设备备发发出出了了SPLITSPLIT或或RETRYRETRY信信号号,这这是是很很可可能能发发生生deadlockdeadlockn给给出出RETRYRETRY响响应应的的从从设设备备在在某某一一时时刻刻只只能能由由一一个个主主设备访问设备访问可以使用一些硬件保护机制,比如ERROR54PPT课件Topic6See it again.See it again.5555PPT课件56AHBMaster56PPT课件57AHBSlaver57PPT课件58AHBArbiter58PPT课件59AHBDecoder59PPT课件Topic7Making a conclusion.Making a conclusion.6060PPT课件61AHB总结(1)n主要组成部分主要组成部分Master、slaves、arbiter、decodern传输的过程传输的过程流水线机制Address phase和data phasen如何提高性能如何提高性能Burst read/writen仲裁机制仲裁机制总线控制器的移交61PPT课件62AHB总结(2)nSlaveSlave短时间内无法响应短时间内无法响应HREADY信号拉低nSlaveSlave长时间内无法响应长时间内无法响应插入SPLIT/RETRYnMasterMaster不能进行传输不能进行传输插入BUSY62PPT课件63nArbiterArbiter的优先级可以配置的优先级可以配置nSlaveSlave长长时时间间不不能能响响应应的的话话,一一般般不不支支持持SPLITSPLIT响响应应,使使用用RETRYRETRY响应响应n总总线线上上如如果果只只有有一一个个mastermaster的的话话,可可以以使使用用AHB AHB litelite协协议议,不用不用arbiterarbiterAHB 总结(3)63PPT课件64MyQuestions1.What 1.What is is the the Dummy Dummy Master Master,and,and its its function?function?2.What 2.What is is the the HPROT3:0,and HPROT3:0,and its its function?function?3.Why 3.Why bursting bursting transfer transfer can can not not across across the 1k boundary?the 1k boundary?64PPT课件
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!