您好,欢迎访问三七文档
如何读懂时序图The68000ReadCycleAlanClements2AlanClements3ActualbehaviorofaDflip-flopTimingDiagramofaSimpleFlip-FlopIdealizedformofthetimingdiagramDataholdtimeDatasetuptimeMaxtimeforoutputtobecomevalidafterclock4AnalternativeformofthetimingdiagramGeneralformofthetimingdiagramAlanClementsTheClock•Amicroprocessorrequiresaclockthatprovidesastreamoftimingpulsestocontrolitsinternaloperations一个微处理器需要时钟,提供一系列的计时脉冲来控制它的内部操作•A68000memoryaccesstakesaminimumofeightclockstatesnumberedfromclockstateS0toclockstateS7一个6800芯片的储存器最小能过接收8个从S0到S7的时钟脉冲.6AmemoryaccessbeginsinclockstateS0andendsinstateS7AlanClementsAlanClements7Themostimportantparameteroftheclockisthedurationofacycle,tCYC.AlanClements8AddressTiming地址时序•Weareinterestedinwhenthe68000generatesanewaddressforuseinthecurrentmemoryaccess我们感兴趣的是当6800芯片能够生成一个新的地址供当前的内存访问•Thenextslideshowstherelationshipbetweenthenewaddressandthestateofthe68000’sclock下面展示的是新的地址跟6800芯片时钟的关系AlanClements1:S0在没有初始化的时候,地址总线总是包涵新的地址。2:S1这个状态说明一个新的地址可以供内存访问AlanClementsAddressTiming地址时序•Let’slookatthesequenceofeventsthatgovernthetimingoftheaddressbus让我们看看事件发生的顺序,管理时间的地址总线•The“old”addressisremovedinstateS0旧的地址已经从S0中移除•Theaddressbusisfloatedforashorttime,andtheCPUputsoutanewaddressinstateS1地址要先存在一小段时间后,CPU才能把心的地址状态写入S1中12AlanClementsAlanClements13TheoldaddressisremovedinclockstateS0andtheaddressbusfloatedAlanClements我们感兴趣的是地址生效的那个时间点。这个时间是在S0失效后,tCLAV秒后。tCLAVThedesignerisinterestedinthepointatwhichtheaddressfirstbecomesvalid.ThispointistCLAVsecondsafterthefallingedgeofS0.AlanClementsAddressandAddressStrobe地址跟地址选通•Weareinterestedintherelationshipbetweenthetimeatwhichtheaddressisvalidandthetimeatwhichtheaddressstrobe,AS*,isasserted我们感兴趣的事在地址总线能够访问时,地址选通是否有效。•WhenAS*isactive-lowitindicatesthattheaddressisvalid当AS*低电平有效时地址才是有效的。AlanClements上图说明:1:当地址有效的时候把AS低电平信号.2:当地址要改变前,要把AS变成高电平•Wenowlookatthetimingoftheclock,theaddress,andtheaddressstrobe从上面的时序图可以看出到,时钟脉冲,地址信号,片选脉冲;3者的关系。16AlanClements17AlanClements当AS变成低电平的时候,时钟脉冲在S2处AS*goeslowinclockstateS2AlanClementsTheDataStrobes数据选通•The68000hastwodatastrobesLDS*andUDS*.Theseselectthelowerbyteortheupperbyteofawordduringamemoryaccess6800芯片有两个数据选通信号LDS(低)和UDS(高).内存通过选择LDS和UDS来访问数据。•Tokeepthingssimple,wewilluseasingledatastrobe,DS*为了让事情看起来简单,我们只要选通DS就可以了。(DS的高8位是UDS低8位是LDS)•ThetimingofDS*inareadcycleisthesameastheaddressstrobe,AS*DS的读数据跟AS读地址的时序是一样的。AlanClements19AlanClementsTheDataBus数据总线•DuringareadcyclethememoryprovidestheCPUwithdata当读数据期间,内存给CPU提供数据•Thenextslideshowsthedatabusandthetimingofthedatasignal.上图显示了数据总线跟数据的关系•Notethatvaliddatadoesnotappearonthedatabusuntilneartheendofthereadcycle注意到可访问的数据没有出现在数据总线,直到读完数据。20Thedatastrobe,isassertedatthesametimeasAS*inareadcycleAlanClementsAlanClements21AnalyzingtheTimingDiagram分析时序图•Wearegoingtoredrawthetimingdiagramtoremoveclutter让我们从头到脚分析这个时序图让头脑不那么乱•Wearen’tinterestedinthesignalpathsthemselves,onlyintherelationshipbetweenthesignals我们不能单单从一条信号线来分析了,我们得从整体上来分析。AlanClements我们感兴趣的是时钟脉冲,AS/DS(地址选通/数据选通)和数据在读周期AlanClements在地址开始有效的时候,内存就可以访问数据了。在地址可访问,内存可以接收数据的时间是tacc秒。AlanClementsCalculatingtheAccessTime计算访问时间•Weneedtocalculatethememory’saccesstime我们必须计算内存的访问时间•Byknowingtheaccesstime,wecanusetheappropriatememorycomponent通过了解访问时间,我们可以适当使用内存•Equally,ifweselectagivenmemorycomponent,wecancalculatewhetheritsaccesstimeisadequateforaparticularsystem同样,如果我们选择一个特定内存组件,我们可以计算出它的访问时间是否足够用来在一个特定的系统AlanClements2728AlanClements在tDICL后,数据必须有效。AlanClements我们知道在地址和数据可以访问的时候之间的时间是tacc秒AlanClements地址数据在tCLAV后能被访问AlanClements在地址有效,从S0到S6结束,数据就别俘获了。AlanClementsAlanClements3334TimingExample•68000clock8MHztCYC=125ns•68000CPUtCLAV=70ns•68000CPUtDICL=15ns•Whatistheminimumtacc?•3tCYC=tCLAV+tacc+tDICL•375=70+tacc+15•tacc=290nsAlanClements35
本文标题:如何读懂时序图
链接地址:https://www.777doc.com/doc-5137856 .html