关闭

关闭

关闭

封号提示

内容

首页 数字集成电路设计1

数字集成电路设计1.doc

数字集成电路设计1

song建立
2017-09-17 0人阅读 0 0 0 暂无简介 举报

简介:本文档为《数字集成电路设计1doc》,可适用于工程科技领域

数字集成电路设计IntroductionDesigningefficient,reliable,robustdigitalcircuitsrequiresadherencetotheprinciplesofgooddesignpracticeForthemostparttheseareapplicableregardlessofwhethertheimplementationisdiscreteorcustomisedBadlydesigneddigitalcircuitryhasatendencytogeneratetiminghazardssuchasspikesandglitchesWhilstadesignmayexhibitcorrectfunctionalitymanyoftheproblemsassociatedwithpoorreliabilityareattributedtothewayinwhichthesehazardsarehandledItisvitallyimportantthatdesignsintendedforimplementationonASICsmustconformtoalltheacceptedrulesofbestpracticefordigitaldesignFailuretodosocanresultindesignsthatareunsafe,difficulttotestandwhoseoperationcannotbeguaranteedMaskprogrammabledevicesinparticulararehighriskwhenattemptingtoachievearightfirsttimedesignForthisreasonthesiliconfoundrywillinsistthatthedesignercompletesasignoffformindicatingcompliancewithallthefoundrydefinedrecommendationsIncaseswherenoncomplianceoccursthesemustbediscussedwiththefoundrydesigncentreandappropriateauthorisationobtainedbeforiseffectbycalculatingtheoverallpropagationdelayofacomponentwithreferencetoadditionaldelaydataasintheexamplebelowUnloadedTrackTotalLoadDelayUnitCellTypeTransitionDelayLoadsDelayDelayValueLoad(ns)(ns)(ns)(ns)INVERTERlowhighhighlowThesimulatorperformsthefollowingcalculation:TotalDelay(lowhigh)=Unloadeddelay(UnitLoadsxDelayUnitLoadsxLoads)TrackDelay=ns(xnsx)ns=nsTotalDelay(highlow)=ns(xnsx)ns=nsTheLoadValueindicatestheloadingeffectacomponentinputexertsontheoutputofanothercomponentfromwhichitisbeingdrivenTypicallyaninvertercircuitistakenasthereferencesinceitcomprisestheminimumnumberoftransistors(PMOSandNMOS)withtheinputsignalconnectedtothegatesofbothdevicesMorecomplexfunctionswillhavehigherloadvaluesForexampleanEXCLUSIVEORcomponentimplementingthefunctionA'BAB'asacomplexgatewillhavealoadvalueof,eachinputfeedingPMOSandNMOStransistorintheANDORstructureplusPMOSandNMOStransistorconfiguredasainvertertoprovidetheNOTfunctionThusintheexampleaninverterfeedssimilarcomponentssotheloadingisxIfitwerefeedingEXCLUSIVEORgatestheloadingwouldbexTheDelayUnitLoadisavalueprovidedbythesiliconfoundry,usuallyobtainedfromparametrictestingofcircuitsamplesTheLoadsfigureisobtainedfromtheschematicTheTrackDelayisobtainedafterlayouthasbeencompletedsowillnotbepresentindesignsimulationsbutwillbeincorporatedintoafinalpostlayoutsimulationThesimulatorwillindicatetheeffectofsignalloadingSomeCADsystemsimposealimitonthenumberofloadsthatcanbeconnectedtoasignalandcheckforthisduringthedesignprocessOthersleaveittothedesignerAgoodruleofthumbistolimitthenumberofloadstoNotonlywillthisminimisetiminghazardsbutwillalsoassisttherouterduringthelayoutprocesssinceashortlengthofinterconnectiseasiertoroutethanalongonebacktotopBufferingStrategiesToeliminateorminimisetheeffectsofsignalloading,designersshouldconsideranappropriatesignalbufferingstrategybothtoequalisetheloadandprovideincreaseddrivecapabilityNonRecommendedBufferingShownherearetwoexamplesofnonrecommendedbufferingInthelefthandexamplesomeclocklinesarebuffered,othersarenotClocksignalstravellingthroughthebufferedlineswillbedelayedrelativetothosethatarenotConsequentlysomeofthelogicelementsbeingfedfromthecircuitwillreceivetheclockbeforeothers,aneffectknownas'clockskew'IntherighthandexampleunequalloadinginthebufferingcircuitwillagainproducedifferentialdelaysintheclocklinesresultinginclockskewFigureNonRecommendedBufferingRecommendedBufferingAcorrectlydesignedbufferingcircuitwillprovidethesamedepthofbufferingineachlineandthesamefanoutonallbuffersThisisknownasBalancedTreeBufferingMoreover,inordertokeepsignaledgessharpbuffersmustbelightlyloadedThisarrangementisreferredtoasGeometricTreeBufferingNote,however,thatevenwhentheseprincipleshavebeenappliedatthecircuitdesignstage,thelayoutprocesscanproducedifferingtrackingcapacitanceswhichwillintroduceimbalanceintothefanoutForthisreasonisitessentialthatafinalpostlayoutsimulationthatincludestheseadditionaldelaysisperformedandthedesigntimingcheckedThecircuitbelowshowsanexampleofBalancedTreeBufferinginwhichallclocklinesareequallyloadedFigureRecommendedBufferingbacktotopSystemResetsDesignsimplementedonASICsarerequiredtobebroughttoaknownstatewithinagivennumberofclockcyclesThisisnecessarybothfornormaloperationwhereacircuithastobeinitialisedtoagivenstartingconditionandalsoduringtestingbeforeasequenceoftestpatternscanbeappliedTherecommendedmethodofachievingthisistoapplyanasynchronoussystemresettoallsequentialelementsinthecircuitRecommendedSystemResetHereanexternalsystemresetisappliedviaaninputpintotheresetinputsofallsequentialelementssothattheentirecircuitcanbeinitialisedsimultaneouslyTheresetsignalcanbeprovidedbyanexternalpoweroncircuitorresetbuttonorbothAlternativelysomeASICtopologiesprovideapoweronresetperipheralpadspecificallyforthispurposeWhenthisfacilityisusedaseparateresetmustalsobeincorporatedfortestpurposessinceitisusuallynecessarytoreinitialisethecircuitseveraltimesduringatestrunFigureRecommendedSystemResetbacktotopLocalResetsSynchronousdesignsarealwaysrecommendedforimplementationonASICsAnyasynchronousoperationimmediatelyincreasesthepotentialfortiminghazardsandmakestestingdifficultInsituationswheresectionsofsequentiallogicrequirealocalresetthisshouldalwaysbedonesynchronouslyNonRecommendedLocalResetThecircuitbelowdetailsacommontechniqueemployedtoasynchronouslyresetsequentialelementssuchascountersThecircuitviolatestherulesofsynchronousdesignThesecondflipflopcanchangestateatatimeotherthantheactiveclockedgeThereisalsoapotentialraceconditionbetweentheclockandtheresetofthisflipflopFigureNonRecommendedLocalResetNonRecommendedLocalResetSimilarproblemsoccurwhencombinationallogicisusedtogeneratearesetAcommonapplicationofthisdesignstyleistheuseofdecodinglogicontheoutputsofacounterTypicallyANDORgateswillbeusedtodetectarequiredstateinthecountingsequenceandprovideanasynchronousresetbacktothecounterresetinputsFigureNonRecommendedLocalResetRecommendedLocalResetTherecommendedalternativetoprovidingasynchronousresetstothesetypeofcircuitsistoclocktheflipfloptotherequiredzerostateThiseffectivelyproducesasynchronousresetInthiscircuitallflipflopsaresynchronisedtotheclockAresetrequiredonthesecondflipflopasaresultofsignalrgoingactivewillnowoccuronthenextrisingedgeoftheclockFigureRecommendedLocalResetbacktotopSystemClocksGreatcarehastobetakenwhenhandlingclocksinsequentialdesignsUnwantedspikes,glitches,clippedpulsewidthsandadditionalclockpulsesallprovidepotentialforcircuitfailureFeedingclocksintocombinationallogicforfurtherprocessingcausesnoendoftiminghazardsHerearetwoexamplesofthistechniqueNonRecommendedGatedClocksInthelefthandcircuittheintentionwasprobablytoinhibitenabletheclockTheensignal,however,arriveslateattheANDgateinputandtheresultisanunwantedglitchIntherighthandcircuittheintentionwastoswitchbetweenckandckThectrlsignaloccurringasitdoesclipsthebeginningofbothclocksresultingintwounwantedglitchesFigureNonRecommendedGatedClocksTherearemanymoreeffectsthatcanoccurdependingonthestateandtimingofthesignalsinvolvedFurthermoretheinclusionofcombinationalprocessinglogicaddsdelaytotheresultantsignalsresultinginvariableamountsofclockskewNowwehaveasituationwherethesequentialelementsinthecircuitarebeingclockedatdifferingtimesrelativetotheinitialmasterclockRecommendedGatedClocksIncircumstanceswhereclockshavetobegatedwithenablesignalstheuseofasequentialelementwithabuiltinenableinputisrecommendedIfthisisnotavailablethecircuitoppositeachievesthesamefunctionalityInthisarrangementthegatingfunctionpreviouslyprovidedbytheANDgateisnowimplementedbythemultiplexorThecircuit,however,isnowcompletelysynchronouswiththemasterclockfeedingdirectlyintotheflipflopWiththeenablesignalensetlowthecurrentstateoftheflipflopisretainedonarisingclockedgewithensethighnewdataisloadedFigureRecommendedGatedClocksbacktotopLocalClocksAswithresetsitispossibletogenerateasynchronousclocksignalsfromsectionsofsequentiallogicandthesecanviolatetheprinciplesofsynchronousdesignNonRecommendedLocalClocksAcommontechniqueincounterdesignistogenerateaclockfromtheoutputtransitionofanothersequentialelementThefollowingripplecounterprovidesanexampleinwhichageneratedclockfromonestageimplementsatogglefunctioninthenextThesecondflipflopisclockedonlywhenthefirstflipflopchangesfromalogictoalogicTherearetwoproblemswiththisarrangementThegeneratedclocktothesecondflipflopisskewedbytheclocktoqpropagationdelayofthefirstflipflopandalsothesecondflipflopcannotbeclockedoneveryedgeofthemasterclockAgainthiswillcauseproblemswithtestingmethodologiesFigureNonRecommendedLocalClocksRecommendedLocalClocksThecircuitbelowprovidestheequivalentfunctionAgainthecircuitisfullysynchronousWhenthetoggleinputislowtheflipflopretainsitscurrentstatewhenthetoggleinputishightheflipflopassumesitsoppositestateIncounterdesignthetoggleinputcanbeprovidedfromtheqoutputofthepreviousstageflipflopFigureNonRecommendedLocalClocksbacktotopClockingStrategiesWhenspeediscriticalinadigitalsystem,designersoftenresorttodubiousclockingstrategiesinanefforttomaximiseperformanceAnapparentlyattractivetechniqueforincreasingtherateofdatathroughputinacircuitisthatofDoubleEdgedClockinginwhichflipflopsinacircuitcanbeclockedoneithertherisingorfallingedgeoftheclockNonRecommendedStrategyThecircuitbelowshowsafirstflipflopactivatedbythetrueversionoftheclockwhilstaninverterfeedsasecondflipflopelsewhereinthecircuitwithaninvertedversionBothdevicesaresensitivetorisingclockedgesbuttheoveralleffectistoclockthefirstflipflopatthebeginningoftheclockpulseandthesecondattheendFigureNonRecommendedStrategyTheproblemswithemployingthiskindoftechniquerelatetosynchronousresetting,setupandholdtimeviolations,determinationofcriticalpathsandimplementationoftestmethodologiesSynchronousresetting(iewhereflipflopsareresetonthecoincidentoccurrenceofaclockedgeandaresetsignal)isimpossiblesincenotalldevicesareclockedonthesameedgeSetuptimes(iethetimebeforeaclockedgethatdatahastobepresent)andholdtimes(iethetimeafteraclockedgethatdatahastoremain)areindangerofbeingviolatedastimingbecomesfinelytunedCriticaldelaypathsthroughthecircuitaredifficulttoassesswithmultipletimingregimespresentTestmethodologiessuchasscanpathinwhichpatternsareinsertedintoacircuitviaitsflipflopelementsareimpossibleagainbecauseallflipflopshavetobeclockedatthesametimeIngeneralthistechniquerarelyworkswellinadesignAttemptsto'borrowtime'inonepartofacircuitoftenresultincomplicationsoccurringsomewhereelseAbettersolutionistouseasingleedgedclockingschemewithahigherclockfrequencyNonRecommendedStrategySimilarproblemsoccurwhendoubleedgedclockingtechniquesareusedinmoreformaldesignarrangementsThiscircuitdetailsapipelinedstructureinwhichdatafromafirststoragelevelisprocessedbycombinationallogicforsubsequenttransmissiontoasecondstoragelevelThearrangementsuggestsadesignthatisvery'edgy'Anyincrease,forexampleinthepropagationdelaysofthecombinationallogic,couldresultincircuitfailureFigureNonRecommendedStrategyRecommendedStrategyAgainabettersolutionistorevertbacktoasingleedgedclockingschemeasshownoppositeThecircuitisclockedattwicethefrequencyofthedoubleedgedversiontoachievethesamethroughputFigureRecommendedStrategybacktotopDelayCircuitsDigitaldesignersoftenutiliselogiccomponentssuchasinvertersandbufferstoachievesomerequireddelayandassumethatthiscanbedoneonASICsExamplesincludetheaddingofdelaysincombinationalcircuitrytoequalisepropagationdelaysandremoveglitchesorthedelayingofaclockedgetoaflipflopinordertoallowmoretimeforthedatainputtosettleItisalsotemptingtotryandreproducethefunctionalityofpulsegenerators,monostablesandmultivibratorsonsiliconusingdelayelementsThesepracticesarenotgenerallyrecommendedThedelayofanylogiccomponentonanASICcannotbeguaranteedItwillvarywithtemperature,powersupplyvoltageanddifferentfabricationrunsLogicsimulatorsenabletheeffectsofthesevariationstobeobservedbyallowingthesimulationtobeimplementedatminimum,typicalandmaximumoperatingconditionsTypicalreferstonominaloperatingtemperatureandpowersupplyvoltageMinimumwillmultiplyallthecomponentdelaysonthechipbyascalingfactorofaroundtodefinetheshortestcircuitdelayswhilstmaximumwilluseafactorofaroundtodefinethelongestdelaysInthiswaythedesignercantolerancethecircuitovertheentireoperatingrangeofthefabricationprocessAgooddesignwillbestablethroughoutAbaddesignthatpassedasimulationundertypicalconditionsislikelytofailatthispointwhenthevariabledelaysmovetiminghazardsintocontentionNonRecommendedPulseGeneratorThecircuitbelowusesinverterstoimplementadelayontheInputTriggersignalThesettledstatewiththissignalsetlowproducesalogiconthetopinputtotheANDgate,alogiconthebottominputandalogiconthePulseoutputWhentheInputTriggergoeshighbothinputstotheANDgatewillbemomentarilyhigh,producingalogiconthePulseoutputAfteratimeequaltothepropagationdelayofthedelaylinethetopinputoftheANDgatewillgolowandthepulseisterminatedThemainproblemwiththiscircuitisthatvariationsintheinverterdelayspreviouslydescribedwillaffectthewidthoftheoutputpulseandthiscannotnowbeconsistentlyguaranteedFigureNonRecommendedPulseGeneratorNonRecommendedPulseGeneratorHerethedelaycomponentsareusedinthefeedbackpathofaflipfloptocontrolanactivelowresetinputInthestablestatetheflipflopwillberesetandthePulsesignalwillbesetlowUpontheapplicationofapositivegoingclockedgetheqoutputoftheflipflopwillassumethelogicstate,settingthePulsesignalhighTheqboutputwillassumethelogicstateThiswillultimatelypropagatethroughtheinvertersresettingtheflipflopandproducingapulseontheqoutputequalinwidthtothedelaythroughthedelaycomponentsAsinthepreviouscircuittheproblemwiththiskindofarrangementisthedifficultyinmaintainingaconsistentpulsewidthwithvaryingcomponentdelaysFigureNonRecommendedPulseGeneratorTherearealsofundamentaldesigndeficiencieswiththecircuitThereisnoindependentexternalresettotheflipflopsotheinitialstateoftheoutputatswitchonisunpredictableItcouldbealogicoritcouldbealogicThecircuitcanneitherbesimulatedduringthedesignphasenortestedduringmanufactureThesimulatorwillnotbeabletopredictthestateoftheoutputattimet=(ieatpoweron)andwilldisplaythisasindeterminateThisconditionwillbepropagatedthroughouttheentiresimulationsincethesimulatorrequiresaknowninitialstatetopredictallsubsequentstatesLikewiseatesterwillrequireallflipflopstobesettoaknowninitialstatebeforethetestpatternsareappliedsothatthecomparisonbetweenexpectedandcapturedoutputvaluesisvalidAdesignsignoffatthefoundrycannotthereforetakeplaceInpractice,however,thecircuitwillassumeastablestateonpoweronShouldthePulseoutputbealogictheqboutputoftheflipflopwillbealogic,theresetfeedbacksignalrwillbeaninactivelogicandtheflipflopwillremaininitspresentstateIfontheotherhandthePulseoutputisalogiconpowerup,rwillultimatelysettletoalogicaftertheqbhaspropagatedthroughthedelayline,theflipflopwillresetandthePulseoutputwillassumealogicTwoeffectsrelatingtotheoperationofthecircuitshouldbenotedFirstly,ifthepoweronconditionisthissecondcase(thePulseoutputisalogiconpowerup)anegativegoingedgewillbegeneratedonthePulseoutputThiscouldbeseriousifthissignalisbeingusedasaclocktosomeothersequentiallogicSecondlysincethecircuithasnoresetthatcouldbeappliedexternallyfromapinonthechip(egfromasystemresetbuttonorpowerupcircuit)thereisnowayofreinitialisingthedesignshouldithangupduringoperationNonRecommendedMultivibratorThiscircuitusesadelaylinetoproduceaseriesofpulsescontrolledbyatriggerinputThestablestateiswhentheTriggersignalislow,thetopinputtotheANDgateishighandtheoutputisalogicWhentheTriggerinputgoeshightheoutputwillgomomentarilytoalogicuntilthisvalueworksitswaythroughthedelaylinetoproducealogiconthetopinputoftheANDgateandthepulseterminatesThewholecyclerepeatsitselfforaslongastheTriggersignalisactiveAgaintheproblemwiththiscircuitisthewidthofthemonostablepulsesandtheirproportionalitytotheinverterdelaysFigureNonRecommendedMultivibratorRecommendedPulseGeneratorThefollowingcircuitutilisessynchronoustechniquestoensureaconsistentpulsewidthsynchronisedtotheclockperiodAssumingthataresethasoccurred,theqoutputofthefirstflipwillbelogicwhilsttheqboutputofthesecondflipflopwillbelogicandthepulseoutputfromtheANDgatewillbelowWhenthetriggerinputishighandarisingedgeoccursontheclockinputck,thefirstflipflopwillgohighwhilstthesecondwilltakeonthestateofthefirstbeforetheclockedgeoccurrediealogicHenceitsqboutputwillbelogicandwithbothinputsoftheANDgateatthisvalueitspulseoutputwillgohighOnthenextrisingedgeoftheclockifthetriginputisnowlowthefirstflipwillgolow,thesecondwillsethighwithitsqboutputlowandthepulseoutputoftheANDgatereturnstologicFigureRecommendedPulseGeneratorbacktotopSpikesandGlitchesManydesignersviewingsimulationoutputresultsforthefirsttimearehorrifiedtoseespikesandglitchesinwaveformsEvenafteradherencetotheprinciplesofbestpracticetherewillstillbemanyoccasionswhenthesehazardsoccurEachtimealogiccircuitisclocked,anewstateisdefinedandthiswillrequiretimetosettleasthevariouspropagationdelaysthroughthelogicexpireDuringthisunstableperiodtherecouldbeallmannerofhazardsTheprinciplesofsynchronousdesignaredevisedsuchthatnoneofthisactivityiscoincidentwithaclockedgeandcannotthereforeaffecttheintendedoperationofthecircuitFigureSpikesandGlitchesCircuitInstabilityApositivegoingedgeonaclocksignalcausesachangeinthevalueofacountsignalsomewhereinthecircuitAfteraninitialdelaytwhenthecircuitdpropagationdelaysstarttotakeeffectthissignalwillbegintochangeTherethenfollowsaperiodofinstabilityuntilallpropagationdelayshaveexpiredNoneofthisinstabilitycaneffecttheoperationofthecircuitsinceitoccursaftertheclockedgeThesignalremainsinastablestateforaperiodoftimetuntilthenextclockedge,afterwhichanotherchangeofstateoccurssTwoconditionsarerelevanttothesuccessfuloperationofthisarrangement)AsignalbeingfedtothedatainputofaflipflopmustbesettledbeforetheSetupTimeoftheflipflopAnychangeafterthistimecanstoreanincorrectvalue)AsignalbeingfedbackfromtheoutputofaflipflopdirectlyorthroughlogictoitsinputmustnotchangestatewithintheHoldTimeoftheflipflopIfthisoccursthenewvaluewilloverwritethecurrentvaluebacktotopLevelandEdgeTriggeredDevicesHazardsindigitalcircuitscanalsobegeneratedandpropagatedbythewrongchoiceofflipflopsInmostcasesthisrelatestotheuseofleveltriggeredratherthanedgetriggereddevicesInaleveltriggeredflipflopthestateofthedatainputiscapturedthroughoutthewholetimetheclockisactiveFigureLevelandEdgeTriggeredDevicesGeneratedHazardThecircuitbelowdetailsaleveltriggereddeviceutilisedinafeedbackloopThisisacommonarrangementinprocessordesignwhere,forexample,aregistermayfeedintoanadderandbacktoitselfWhentheclockinputgoesactivethecombinationallogicprocessesthestateoftheflipflopoutputandfeedsbackanewvaluetothedatainputIfthisnewvalueisdifferentfromtheoldvaluetheflipflopchangesstate,presentingthisnewvaluetothecombinationallogicforfurtherprocessingThewholeactivityrepeatsitselfcontinuallyuntiltheclockinputgoesinactive,generatinganoscillatingsignalknownasaRaceConditionFigureGeneratedHazardPropagatedHazardInthiscircuitaleveltriggereddeviceisusedtocapturedatafromtheoutputofcombinationallogicwhichhasgeneratedhazardsduetovaryingpropagationdelaysinitscircuitryWhentheclockinputgoesactivethecurrentstateoftheflipflopdatainputiscapturedandpresentedtotheoutputSometimelaterthedatainputchangestoanewvalueandagainthisistransmittedtotheoutputDuringthetimethattheclockisactivetheflipflopisperformingthefunctionofaTransparentLatchwherebyanychangeininputvalueisimmediatelytransferredtotheoutputInthiswayanunstableinputsignalpresentedtotheflipflopwillbepropagatedtoothercircuitryfedbyitsoutputBothofthesetypesofhazardcanbeeliminatedbyreplacingtheleveltriggereddeviceswithedgetriggereddevicesNowtheinputdatawillbecapturedonlyonaclockedgesoanyvariationinthedatainputofthedevicewillnotbetransmittedtotheoutputAsageneralruleitisalwayswisesttouseedgetriggereddevicesinsynchronousdesignsTypicallyleveltriggeredschematicsymbolsarecharacterisedbyhavingaboxadjacenttotheclockpinwhilstedgetriggereddevicesemployachevronbacktotopSummaryThefollowingsummarisestherulesofbestpracticefordigitaldesign,Keepdesignssynchronous,Useedgetriggereddevices,Tieoffallunusedinputs,Avoidtheuseofcomponentsasdelays,Avoidgatingclocks,Avoiddoubleedgeclockingstrategies,Alwaysprovideasystemreset,Powerupheavilyloadedandcriticalsignals,Simulaterigorouslybeforeandafterlayout,AdheretotheASICfoundry'srecommendation

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

评分:

/39

意见
反馈

立即扫码关注

爱问共享资料微信公众号

返回
顶部

举报
资料