首页 IC Mask Design.pdf

IC Mask Design.pdf

IC Mask Design.pdf

上传者: wanglongfei_2002 2011-06-21 评分1 评论0 下载7 收藏0 阅读量899 暂无简介 简介 举报

简介:本文档为《IC Mask Designpdf》,可适用于硬件技术领域,主题内容包含ChapterPreviewHere’swhatyou’regoingtoseeinthischapter:Closelookatautomated符等。

ChapterPreviewHere’swhatyou’regoingtoseeinthischapter:CloselookatautomatedlayoutsoftwareWhyautomatedlayoutonlyworkswithcertaincellsKnowingthecircuitreallydoeswhatitshouldHowtoknowinadvanceifyourfloorplanchoiceisgoodAutomatedprogramsgettingstuckTroubleshootingtipsWhichnetstowirefirstWhichnetstowirebyhandTechniquestoguaranteeruleperfectlayoutFlowchartofdigitallayoutproceduresLotsoffeedbackloopsHowtokeepthepowermovingthroughbigcellsChickenoreggwiringandtimingcircleDidyoureallybuildwhatyoudesignedHowtobuildquickiechipsfortestingOpeningThoughtsonDigitalLayoutThemajorityofintegratedcircuitsbuilttodayarelargeImeanreallyhugeCMOSdigitalchipsOnechipmighthaveliterallymillionsoftransistorsinitIt’sbeyondanysinglemaskdesigner’scapabilitiestolayoutachiplikethatbyhandinanyreasonabletimeframe,atleastConsequently,themajorityoflargedigitalchipsarelaidoutwiththeassistanceofcomputeraidedtoolsCHAPTERDigitalLayoutSource:ICMaskDesignEssentialLayoutTechniquesDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteUnderstandinghowtheseautomateddigitallayouttoolsoperateallowsyoutodevelopskillfuldailyhabitsinyourworkeveninyouranalogworkIfyouunderstandhowthesoftwareoperates,youcanlayoutbettercircuitsfaster,compensateforsoftwareinadequacies,andsteerclearofroadblocksbeforetheyhappenDesignProcessLet’sbuildadigitalchipInthischapter,wewillfollowadesignteamastheyprogressfromconcept,throughcircuittesting,andfinallytotheactualgateplacementandwiringofadigitalchip,usingasuiteofsoftwaretoolsLet’sstartIt’sthecircuitdesigner’smovefirstVerifyingtheCircuitryLogicCircuitdesignerstypicallyuselanguagescalledVHDLorVerilogtodesigntheirenormousdigitalcircuitsVHDLstandsforVHSIC(VeryHighSpeedIntegratedCircuits)HardwareDescriptionLanguage,anIEEEstandardsinceVerilogisanotherproprietarylogicdescriptionlanguageWewilluseVHDLinourexamplesCircuitdesignersusetheVHDLlanguagetocreateachipthatexistsfirstasonlyadatabaseofnumbersThecircuitdesigner’sVHDLfilesareveryClikeThefilesessentiallysay,forexample,“Iwantacircuitfunctionthataddstwobitnumberstogether”Inthisway,theVHDLfilesdescribeourmicroprocessor,ourdigitalfunctions,orwhateverfunctionsweneedTheseVHDLdatafilesarethensubmittedtoacomputersimulator,whichteststhechipcircuitrywhileitisstillinsoftwareformThelogicfunctionsoftheVHDLcoderunveryquickly,muchfasterthanatraditionaltransistorlevelSPICEsimulation(butnotasfastastherealsilicon)TheVHDLsimulatorneedstohaveprocessspecificsoftwaredescriptionsofeachlogicfunctionitwantstouse,suchasrisetime,falltime,gatepropagationdelaysThisinformation,aswellasotherdeviceparameters,isstoredasaseriesoffilesthattheVHDLsimulatorcanaccessAlongwiththeseelectricaldescriptions,therearealsophysicalrepresentationsofeachofthegatesthatthesimulatorandlogicsynthesizercanuseAllofthesefilesarecollectivelyknownasastandardcelllibraryorlogiclibrary|CHAPTERThecomputerlanguage,CDigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteBylookingattheresultsoftheseVHDLsimulations,wecanmakeadjustmentstothecircuitrybeforewecommitthechiptoactualsiliconThisisagreatsavingCompilingaNetlistOncethecircuitdesignerhasfinishedverifyinghislogicdesign,hewillputhisVHDLcodethroughasiliconcompilerorlogicsynthesizerThecompilertranslatesthehighlevelClikecodeintoafilethatcontainsalltherequiredlogicfunctions,aswellashowtheyaretobeconnectedtoeachotherThefilebasicallysays,“Inordertoaddtwobitnumberstogether,Ineedgatesandhere’showtheyshouldbeconnected”Inthisway,allourlogicfunctionsarecreatedandcrossreferencedDigitalLayout|VHDLCodeSegmentarchitectureSTRUCTUREofTESTiscomponentandxport(A,B,C,D:instdulogic:=‘’Y:outstdulogic)endcomponentconstantVCC:stdulogic:=‘’signalT,Q:stdulogicvector(downto)beginT()<=VCCA:andxportmap(A=>Q(),B=>Q(),Y=>T())A:andxportmap(A=>Q(),B=>Q(),C=>Q(),D=>Q(),Y=>T())Count<=QThecompanythatissupplyingyoursiliconusuallyprovidesastandardcelllibraryTheoretically,youaregivenalibrary,whichisperfect,andwillstayperfectHowever,updatestothelibrarycanoccurquitefrequentlyChangestothelibrarycancauseaonceperfectchiptostopfunctioning,especiallyifmistakeshavebeenmadeintheupdatesUpdatingalibrarymidprojectisusuallyabadmoveDigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteAtthispoint,weknowwhatgatesweneed,andweknowhowtheymustbeeventuallywiredtoeachotherThisfile,calledanetlist,willdriveyourautomatedlayouttools|CHAPTERNetlistSegmentmoduletest(in,in,out)inputin,inoutputoutwirenet,net,netANDXU(Z(net),A(net),B(net))ANDXU(Z(net),A(net),B(net),C(net),D(net))endmoduleAsthecircuitdesignerbeginstocompiletheVHDLcode,hewillcontrolvariousswitchesTheswitchescontrolparameterssuchasarea,power,andspeedDependingonchiprequirements,thecircuitdesignermightdecidetocompiletheVHDLtoprioritizeonlyspeed,onlyarea,onlypower,orsomespecificcombinationoftheseinterestsResultswillvarydependingonthesepriorities,soheinputsthesechoicestothecompilerbeforeitbeginsDriveStrengthThecompilercancreatenetsthatareextremelylargeTheremaybehundredsofthousandsofcellsononeparticularnet,forinstanceThemorecellswehaveonanet,themorepowerweneedtodrivethemIfwetrytodrivetoomanygatesfromasinglesource,wemightoverloadourdrivingtransistorsOurcircuitwillnotworkTherefore,beforewecanstartlayout,weneedtomodifythenetlisttomakesurethattheselargenetsareadequatelydrivenTodothis,wereplacethecellsthataredrivingthenetwithcellsofidenticallogicfunctionthathavelargerdrivingcapabilityDrivingcapabilityisreferredtoasthedrivestrength,orfanout,ofthecellThefanoutnumberindicateshowmanydevicesagatecandriveAdrivinggatecanbeanycellinalibraryForexample,wemightseethatourcelllibraryhasordifferentsizesofinvertersTheseinverterselectionsmightbereferredtoasx,x,orxinvertersThesedesignationsontheinvertersrefertothedrivestrengthofeachinverterSinceaxcantypicallydrivetwogates,axwoulddrivefourgates,andaxwoulddriveeightgatesDigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteDigitalLayout|Figure–Oneinverterdrivestwoloads,soaxdrivesloads,andaxdrivesloadsYoumightwonderwhywedon’tjustbuildonehugegatetocoverallcircuiteventualitiesWecoulddothatHowever,wewouldwastecircuitareaandburnmorepowerthanisnecessaryThewisesttechniqueistobesurethatyoucandrivewhatyouneed,andnomoreSo,duringthecompilationprocess,thecompilerexaminesthenumberofgatesoneachnetandadjuststhesizeofthegatedrivingeachnetaccordinglyIfthenetistoolargetobedrivenbyourmaximumdrivestrengthdevice,thecompilerwillbreakthenetintosmallersectionsthatareeasiertodriveBufferCellsIfthecompilerbreaksalargenetintosmaller,moreeasilydrivensections,itwillinsertadditionalgatestodriveeachsmallernewlycreatednetTheseextragateswerenotpartoftheoriginallogicThecircuitdesignerdidnotaddthemYoudidnotaddthemThecomputermadethedecisionbyitselfTheseextragatesarecalledbuffercellsBuffercellshelpdrivegateandwiringcapacitanceAbuffercellhasnologicfunctionassociatedwithitWhateverlogicsignalisfedintothebuffercellappearsatitsoutputInthenextsection,wewillseeanexampleofhowthecompilerusestheseconceptstodrivealargeclocknetClockTreeSynthesisMostdigitalcircuitshaveaclockwaveformthatclicksawayinthebackgroundEveryfunctionissynchronizedtothatclickThewiringnetsforthisclocktimingsignalarecalledclocknetsAclocknetisusuallyverylargeTypically,thenetconnectstothousandsofgatesItisimpossibletocreateacellwithenoughdrivestrengthtodriveallthegatesonaclocknet,sowehavetodosomeextraworktogettheclocknettofunctionWesplittheclocknetintosmallersectionsandaddbuffercells,asmentionedpreviouslyThenetissplitintoabranchingoutpattern,calledaclocktreeEstablishingthetreeiscalledclocktreesynthesisDigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteToillustratehowthetreeconceptworks,let’slookatasmallexampleLet’ssayacertainclocknethassixgatesonit,andthemaximumdrivestrengthourlibraryoffersisafanoutofonlythreeTherefore,wecannotexpectonegatetodrivetheentireclocknetSo,webreakthenetintotwosmallersections,anddriveeachsectionseparately|CHAPTERFigure–AddingbufferstosmallersetsofgatestohelpdrivethesignalYoucanseeinFigure–,thatthecompileraddedtwolowerlevelbufferstothecircuit,onebuffertodriveeachsetofthreegatesThecompileralsoaddedanotherhigherlevelbuffertodrivethetwolowerlevelbuffersSo,threeextracellshavebeenaddedtoourcircuitIfourclocknetwasevenlarger,thecompilerwouldcontinuebranchinginthismanner,splittingthenetandaddingadditionalbuffercells,eachonedrivingnomorethanthreeothersYoucanseehowthiswouldformaverylargetreewithmanylevelsFigure–LargenetsarebrokenintomanysmallersectionsthatcanmoreeasilybedrivenDigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteWithalargenumberofaddedbuffercells,theextracellswillintroduceextradelaysthatwerenotaccountedforintheoriginalsimulationsNotonlythat,butotherlargenetsmayrequirethissamesortoftreesynthesisaswell,addingevenmorebuffercells,alsocreatingdelaysTherefore,oncetheclocknetissynthesized,andanyotherlargefanoutnetsarebuffered,weneedtoresimulateourdesignusingthecompilednetlistCompilingcreatesaneedtoresimulateThissortofiterationiscommoninchipdevelopmentThegoodnewsisthatitisnotaneverendingstoryAtsomepoint,youwillhaveafinishednetlistWearenowreadytostartthelayoutprocessWebeginwithfloorplanningLayoutProcessWearenowreadytouseasuite,orpackage,ofautomatedsoftwaretoolscalledtheplaceandroutetoolsPlaceandroutetoolscoverthegamutofhigherlevelandlowerlevelsoftwareassistanceleadingtoyourfinallayoutAsthenameimplies,theseprogramsgenerallyplacethegatesandroutethewires,inadditiontootherhelpfulfunctionsFloorplanningThefirstpieceofsoftwarewewillusefromtheplaceandroutetoolsuiteiscalledthefloorplanningtoolItwillhelpyoucreateareasoffunctionalityonyourchip,determinetheconnectivitybetweentheseareas,determineyourIOpadplacements,andgiveyoufeedbackonhoweasyyourfloorplanmightbetowireThefloorplanningtoolgetsitsconnectivityandgateinformationbasedonthenetlistfile,createdbythecompilersoftwareLet’sfollowthefloorplanningtoolinmoredetail,beginningwithyourinitialdecisionsBlockPlacementTypically,yourchipwillbedividedintovariousfunctionalareasForexample,ifyouareworkingonalargedigitalchip,theremightbeamicroprocessorunitinyourchip(MPU),perhapsafloatingpointunit(FPU),maybeaRAMblockandaROMblockWhereyoulocateeachareaoffunctionalityisyourdecision,notthecomputer’sYoumightsay,“Ok,allofthegatesforthemicroprocessorIwantinthebottomlefthandcornerAllthegatesfortheRAMIwantinthetoprightcorner”AndsoonYouwillhaveachancetochangethesedecisionslater,onceyouseehowyourdecisionsmightaffectyourlayout,particularlythewiringDigitalLayout|DigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteGateGroupingOnceyourareasoffunctionalityarespecified,thefirsttaskyouwouldwanttodoisgathertogether,tosomedegree,thegatesusedineachblockYouwouldnotwantFPUgatesscatteredthroughouttheROMorRAMblocks,forexampleAssociatedgatesshouldallbelocatedneareachotherThefloorplanningtoolbeginsbyhelpingyougatheryourgatestogetherTheexactplacementofeachgateisnotdeterminedatthispointWedonotyetneedthislevelofdetailBesides,wemightbechangingourblockplacementdecisionsatsomelaterpointSogeneralvicinityplacementisgoodenoughfornowBlockLevelConnectivityNext,yourfloorplanningtoolwillhelpyouplacetheinputandoutput(IO)cellsofyourchipForinstance,youwouldwantalltheinputsthatgototheFPUclosetotheFPUblockinthecornerTohelpyouwiththis,sometoolswillactuallyplacetheIOcellsintheappropriateareasautomaticallyothertoolswillprovidegraphicfeedbackforyoubasedonyourplacementdecisions|CHAPTERFigure–InputsandoutputscanbelocatedneartheirappropriatecellblockThefloorplanningtoolalsoshowsbasicwiringconnectionsthatmusttravelbetweenblocksItwillshowconnectionsbetweentheFPUandtheRAMblocks,forexampleFigure–ChipshavewelldefinedareasoffunctionalityDigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteUsingFlylinesTypically,thefloorplanningtoolwillshowyouallthewiringlinescomingfromeachblockconnectingtotheIOpadsandtootherblocksAllthesemyriadofwiringlinesarewhatmosttoolscallrat’snestsorflylinesAsyouclick,drag,andresizeblocksaroundyourcomputermonitor,youwillseeallthesewiringconnectionsmovingaroundinrealtimewithyourcursorAsyoudragyourblocksaroundwithyourcursor,watchthelinesIfthelinesbecomebadlycrossedoverandgenerallymessy,youknowthatitwillbetoughtowirethecircuitryIftherearenocrossoversoftheflylines,thenitwillbeeasytowireDigitalLayout|Theautomatedsoftwareprogramssuchasthesimulatorandplaceandroutetoolsmakechoicesaconscientioushumanwithenoughtimewouldmake,giventhesameinformation(Wehope)However,youcanseethatconstanthumaninterventionandmonitoringareessentialThesoftwareneveroperateswithouthumansupervision(you)YouhavebroadlydefinedwhereyouwantyourhighlevelsoffunctionalityandyourinputsandyouroutputsYouhavepredeterminedsomebasiclayoutinstructionsforthesoftware,dependingonthechipspecifications,thesizeofthefinalpackageinwhichtheywillbeplaced,thespecificcircuitry,andultimately,onyourunderstandingofhowthesoftwareoperatesThetoolsneverruncompletelybythemselvesThehumanbrainmustoverseetheworkingofthetoolsorthetoolsbecomeuselessFigure–NeatflylinesindicategoodfloorplanningJustasspellcheckerskneadahumanayeDigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteYouwillmakechangestoyourblockfloorplansothatyourrat’snesteventuallylooksasclean,nice,andwireableaspossibleYoumightdecidetorelocateentireareasoffunctionalityYoumightbringonesmallblockacrosstotheothersideandfititbetweentwolargerblocksYoumightbringacenterblocktotheoutside,oranoutsideblocktothecenterWhenyoufinallyhaveablockdiagramwhichgivesyounice,simplewiring,yousaveyourfloorplanningoutputfilesTimingChecksSincethefinalfloorplanningtooloutputfilesspecifywherethegateswillbegenerallylocated,theplacementtoolroughlyknowshowlongallthewireswillbeThesewiringlengthestimationsarebasedonthephysicaldimensionsofthedigitallibraryUsingthisinformation,yourfloorplanningtoolcanoutputanestimatedwirelengthfilethatgoesbackintothedigitalcircuitsimulatorYounowcanrunsomesimulationstodeterminehowyourestimatedwiringlengthswillaffectyourdigitalcircuitYoumustcheckthepossibilitythatlongwireswillslowthecircuitsignalstoomuch,affectingthecircuittiming|CHAPTERFigure–ThefloorplantimingloopAsChrisalwayssays,“Idon’tcareifitworks,aslongasitlooksgood”DigitalLayoutDownloadedfromDigitalEngineeringLibraryMcGrawHill(wwwdigitalengineeringlibrarycom)CopyrightTheMcGrawHillCompaniesAllrightsreservedAnyuseissubjecttotheTermsofUseasgivenatthewebsiteIfthewirelengthsareindeedoverlyaffectingthecircuittiming,thedesignerwillneedtomodifyhisdesign,basedonyourfloorplanHewillchangethenetlistHemightplacehigherpoweredcellsintheblocktodrivetheextrawiringcapacitances,forexampleAsthedesignerworkstobetterorganizethedesign,notonlyisiteasiertowire,butyouwillfindthechipoperatesbetterintheendYougoaroundthisfloorplanandtimingcheckloopacoupleoftimesThesimulatorwilleventuallyletyouknowwhenyouhavemetthetimingcriteriaSo,atsomepoint,youdecideyoufinallyhaveagooddesignYouthenmoveontocementingyourdevicesinplace,sotospeakThefinetuningnowbeginsthatwehavebeenputtingoffPlacementWecannownaildowntheexactpositionsofallthelogicgateswithineachblock,usingaplacementtoolInthenextsection,wewill

职业精品

XX有限公司(薪资福利管理制度).doc

公司采购流程管理制度制定方法.doc

招聘管理与面试技巧.ppt

公司采购流程管理制度.doc

用户评论

0/200
    暂无评论
上传我的资料

精彩专题

相关资料换一换

资料评价:

/ 404
所需积分:5 立即下载

意见
反馈

返回
顶部