版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
EDA技術(shù)和工具ElectronicDesignAutomation:TechniquesandTools后端設(shè)計(layout)熊曉明xmxiong@2013年contents集成電路設(shè)計和EDAASIC設(shè)計流程前端設(shè)計工藝庫HDL邏輯綜合與優(yōu)化各項設(shè)計指標(biāo)的平衡(trade-off)測試設(shè)計(DFT)后端設(shè)計(layout)實體綜合(physicalcompiler)ECO和ManualEditing動態(tài)時序仿真靜態(tài)時序分析版圖驗證(DesignRuleChecking)后端設(shè)計、物理設(shè)計、實體設(shè)計(physicaldesign、backenddesign、layout)感謝:Prof.ErnestS.KuhofUC,Berkeley參考書數(shù)字集成電路物理設(shè)計(國家集成電路工程領(lǐng)域工程碩士系列教材)作者: 陳春章//艾霞//王國雄出版社: 科學(xué)出版社出版時間: 2008年08月 印刷時間: 2008年08月ISBN: 9787030220318VLSIPhysicalDesign:FromGraphPartitioningtoTimingClosure[精裝]AndrewB.Kahng(作者),JensLienig(作者),IgorL.Markov(作者),JinHu(作者)出版社:Springer;Edition.(2010年12月1日)精裝:324頁語種:英語ISBN:904819590X參考書VLSIDesignCycleSystemSpecificationArchitecturalDesignLogicDesignCircuitDesignPhysicalDesignFunctionalDesignFabricationPackagingFall2010ElectronicDesignAutomationIV-6Fall2010ElectronicDesignAutomationPhysicalDesignConvertthenetlistintoageometricrepresentation.Theoutcomeiscalledalayout.Fall2010ElectronicDesignAutomationIV-7Fall2010ElectronicDesignAutomation8物理設(shè)計是把電路信息轉(zhuǎn)換成foundry廠可用于掩膜的版圖信息的過程,它包括數(shù)據(jù)準(zhǔn)備、布局、時鐘樹綜合、布線及DRC、LVS等步驟如右圖所示常用的布局布線工具有Synopsys公司的ICCompiler和Candance公司的SOC-Enconter。
PhysicalDesignCycleCircuitPartitioningFloorplanning&PlacementRoutingLayoutCompactionExtractionandVerificationFall2010ElectronicDesignAutomationIV-9Fall2010ElectronicDesignAutomation工具:ICCompiler內(nèi)容:partitioning、floorplanningplacementclocktreesynthesisrouting物理設(shè)計GeneralICCompilerFlowSynthesisDataSetupDesignPlanningPlacementClockTreeSynthesisRoutingChipFinishing
ThisUnit12圖113圖21415庫的建立做物理設(shè)計首先要建立referencelibraryReferencelibrary包括以下幾部分:standcelllibrary、padlibrary、macrocell(或IPlibrary)。Standcell包括inverters、buffers、ands、ors、nands、muxes、flip-flops等Padcell包括信號pad、電源地padMacro即設(shè)計中用到的一些宏模塊下頁以圖講解standcell、padcell、macro16四個conner位于芯片的四個角,起到連接四邊IOpad的作用。物理設(shè)計物理設(shè)計物理設(shè)計FloorplanningSetupaplanforagoodlayout.Placethemodules(modulescanbeblocks,functionalunits,etc.)atanearlystagewhendetailslikeshape,area,I/Opinpositionsofthemodules,…,arenotyetfixed.DeadspaceFall2010ElectronicDesignAutomationIV-20Fall2010ElectronicDesignAutomationFall2010ElectronicDesignAutomationFloorplanningProblemGivencircuitmodules(orcells)andtheirconnections,determinetheapproximatelocationofcircuitelementsConsistentwithahierarchical/buildingblockdesignmethodologyModules(resultofpartitioning):Fixedarea,generallyrectangularFixedaspectratiohardmacro(akafixed-shapedblocks)
fixed/floatingterminals(pins)
Rotationmightbeallowed/deniedFlexibleshapesoftmacro(akasoftmodules)(w1,h1)(wN,hN)IV-21Fall2010ElectronicDesignAutomationFall2010ElectronicDesignAutomationFloorplanning(cont.)Objectives:MinimizeareaDeterminebestshapeofsoftmodulesMinimizetotalwirelengthtomakesubsequentroutingphaseeasy
(shortwirelengthroughlytranslatesintoroutability)Additionalcostcomponents:Wirecongestion(exactroutabilitymeasure)WiredelaysPowerconsumptionPossibleadditionalconstraints:FixedlocationforsomemodulesFixeddie,orrangeofdieaspectratioNP-hardIV-22Fall2010ElectronicDesignAutomation23布圖規(guī)劃floorplan(布圖規(guī)劃)的主要內(nèi)容包含了對芯片大?。╠iesize)的規(guī)劃、芯片設(shè)計輸入輸出(IO)單元的規(guī)劃、宏模塊的規(guī)劃、電源網(wǎng)絡(luò)的設(shè)計等floorplan在整個流程中具有十分重要的地位,因為floorplan一旦確定,則整個芯片的面積就定下來了,同時它也與整個設(shè)計的timing和布通率(布線能否布通)有著密切的關(guān)系?;旧狭鞒讨械姆磸?fù)主要是發(fā)生在這一步中。如果這一步做得比較好,則后面oncepass的幾率就比較高,反之如果回溯到這一步,則花費的時間開銷就會很大。floorplan是物理設(shè)計中手工程度很大的工作24布圖規(guī)劃通常情況下,一個芯片由corearea和padarea組成25布圖規(guī)劃Padarea由以下幾個部分組成:1、Input/Output/InOutpads如右圖中Reset2、Powerpadsandconnerpads右圖上右上角那個CornerUR為一個connerpadsConnerpads的作用是連接其兩邊的Pads(連接襯底以及襯底以上的各個層)VDDVSS為Powerpads,其對外連接供電的封裝引腳,對芯片則起到供電的作用,Powerpads可以分為對core供電的pads和對IOpads供電的pads,所有的Pad都是由晶體管以及各層金屬構(gòu)成的,Pad也是一個cell。26布圖規(guī)劃3、PadsfillersPadsfillers為圖中Filler所示,其作用為連接兩個兩鄰的pads(從襯底到各層金屬的相連)P/Grings所有信號pads、電源地pads、fillers、conners都是有電源地的引腳的,用金屬線把這些引腳相連,形成padarea上的一個環(huán),稱為P/Grings,如果所有的pads都是無縫排列的,那么pads上的自身的金屬已經(jīng)相互連接成了P/Gring。FloorplanAfterInitializationUnplacedMacrocellsUnplacedStandardcellsCoreareawithsiterowsPeripherywithI/OpadcellsStartingFloorplan28布圖規(guī)劃Floorplan階段在corearea內(nèi)要確定macro的位置,可以通過飛線顯示macro的pins與io或其它macro的pins的連接關(guān)系,來幫助確定macro的位置Floorplan要進(jìn)行預(yù)布線,即布電源地網(wǎng)絡(luò)。概述里面已經(jīng)講到從floorplan
placement
clocktreesynthesisrouting的流程。有兩個地方做了布線的工作即floorplan階段的電源地網(wǎng)絡(luò)的布線、routing階段的信號的詳細(xì)布線。PlacementExactplacementofthemodules(modulescanbegates,standardcells,etc.)whendetailsofthemoduledesignareknown.Thegoalistominimizethedelay,totalareaandinterconnectcost.vFeedthroughStandardcelltype1Standardcelltype2Fall2010ElectronicDesignAutomationIV-29Fall2010ElectronicDesignAutomationFall2010ElectronicDesignAutomationFall2010ElectronicDesignAutomationFall2010ElectronicDesignAutomation33布局在floorplan結(jié)束后,芯片的大小,電源網(wǎng)絡(luò),macro的位置已經(jīng)確定了,接下來的工作是標(biāo)準(zhǔn)單元的布局工作。布局工作是時序驅(qū)動(timingdriven)的,即布局出來的結(jié)果要滿足時序的要求。ICC時序分析采用靜態(tài)時序分析(STA),STA必須要獲得單元延時(celldelay)和線延時(netdelay)34布局ICC會計算每個單元的延時和每條線的延時單元的延時信息由foundry提供的單元庫文件提供為了計算線延時,ICC必需知道每條線的寄生電阻和寄生電容35布局在布局階段,實際的金屬線是不存在的,故需要有一種估計的方法估計線延時。在由RTL代碼到門級網(wǎng)表的綜合過程中,也需要用到STA,綜合階段對延時的估計基于WLM(WireLoadModel)。根據(jù)fanout估計R和C,這顯然和最終的版圖的實際結(jié)果有很大出入。36布局布局過程中,每個單元是有自己的物理位置的,我們就不再采用WLM去估計延時了,我們采用虛擬布線(virtualrouting)技術(shù)去估計延時。37布局綜合階段的時鐘信號和高扇出信號被定義成理想的和don’t_touch(綜合工具不對其進(jìn)行插buffer的操作)的布局階段對高扇出(如reset、set、enable等)要進(jìn)行高扇出綜合(HFS)。ICC布局階段的一個命令place_opt內(nèi)嵌了自動高扇出綜合(AutomaticHighFanoutSynthesis)時鐘樹的處理是在place之后,CTS(ClockTreeSynthesis)階段進(jìn)行時鐘樹綜合的在布局階段我們需要模擬時鐘樹的影響38利用理想的時鐘網(wǎng)絡(luò)顯然過于樂觀,為了進(jìn)一步接近實際的時鐘,skew,latency,transition的影響應(yīng)當(dāng)被模擬進(jìn)來3940布局實際的時鐘樹網(wǎng)絡(luò)無法保證時鐘源點到該時鐘域內(nèi)所有寄存器的clk端的延時是絕對相等的,時鐘源點到不同寄存器的clk端的延時之差稱之為skew(偏斜),我們用set_clock_uncertainty這個命令去模擬skew的影響。如set_clock_uncertainty0.3,單位是ns(取決.tf工藝文件里面所設(shè)單位)時鐘域內(nèi)寄存器的clk端可以稱之為匯點(sink),時鐘源點(source)到匯點的延時稱為latency,我們可以用set_clock_latency命令去模擬源點到匯點的延時,如:set_clock_latency1實際的時鐘信號跳變時間是不可能為零的,所以我們可以用set_clock_transition去模擬這個跳變時間如set_clock_transition0.141布局Corearea內(nèi)標(biāo)準(zhǔn)單元并不是可以隨意擺放的,所有的標(biāo)準(zhǔn)單元被設(shè)計成等高不等寬的,這樣所有的標(biāo)準(zhǔn)單元可以被放入同樣的placementrow里面,如圖所示42TimingdrivenplacementPlacement是時序驅(qū)動的,關(guān)鍵路徑上單元會被放得近一些,placement是時序驅(qū)動的同時,也是擁塞驅(qū)動(congestiondriven)的,標(biāo)準(zhǔn)單元的信號連接最終需要布線的,如果一個區(qū)域內(nèi)布線要求大于布線資源的話,就導(dǎo)致了擁塞,顯然標(biāo)準(zhǔn)單元過密集得擺放在一起就容易導(dǎo)致?lián)砣?,timing和congestion就變成了一對折衷的因素了。43在macro周圍我們會打上placementblockage,工具不會在placementblockage區(qū)域內(nèi)擺放標(biāo)準(zhǔn)單元,macro處pin處需要較多的布線資源,如果macro周圍較近區(qū)域被放置了標(biāo)準(zhǔn)單元,就可能導(dǎo)致?lián)砣漠a(chǎn)生。故需要在macro周圍打上blockage,在實驗視頻中可以看到這一步。布局44時鐘樹綜合(CTS)在大規(guī)模集成電路中,大部分時序元件的數(shù)據(jù)傳輸是由時鐘同步控制的時鐘頻率決定了數(shù)據(jù)處理和傳輸?shù)乃俣龋瑫r鐘頻率是電路性能的最主要的標(biāo)志。在集成電路進(jìn)入深亞微米階段,決定時鐘頻率的主要因素有兩個,一是組合邏輯部分的最長電路延時,二是同步元件內(nèi)的時鐘偏斜(clockskew),隨著晶體管尺寸的減小,組合邏輯電路的開關(guān)速度不斷提高,時鐘偏斜成為影響電路性能的制約因素。時鐘樹綜合的主要目的是減小時鐘偏斜。以一個時鐘域為例,一個時鐘源點(source)最終要扇出到很多寄存器的時鐘端(sink),從時鐘源扇出很大,負(fù)載很大,時鐘源是無法驅(qū)動后面如此之多的負(fù)載的。這樣就需要一個時鐘樹結(jié)構(gòu),通過一級一級的buffer去驅(qū)動最終的葉子結(jié)點(寄存器)。CTS流程46在未進(jìn)行時鐘樹綜合之前,時鐘樹未生成,時鐘結(jié)構(gòu)邏輯上如上圖所示,一個時鐘源端最終扇出到很多寄存器的時鐘端。47上圖是時鐘樹綜合好之后的結(jié)果,上圖中有三級buffer構(gòu)成了一個時鐘樹。48在sdc文件中用create_clock命令創(chuàng)建時鐘,同時定義了時鐘源點如:Create_clock[get_pinsU_TOP_PAD/Pad_inout_PF5_CAM_PCLK/C]–nameCPCK-period10–waveform{05}這條命令在U_TOP_PAD/Pad_inout_PF5_CAM_PCLK/C這個pin處創(chuàng)建了時鐘,這個pin就是名為CPCK的時鐘的時鐘源點時鐘樹綜合(CTS)49由于時鐘樹的重要性,工具采用不同于一般布線規(guī)則的時鐘樹自己的布線規(guī)則時鐘樹綜合(CTS)50首先定義nondefaultroutingrule再指定CTS使用定義的my_route_rule-layer_list定義了CTS使用哪幾層金屬走線時鐘樹綜合(CTS)51ICC在placement階段提供了一個命令place_opt,請參看run_icc_record.tcl,可以看出placement階段腳本結(jié)構(gòu)是先進(jìn)行一系列的設(shè)置,再通過place_opt命令讓工具根據(jù)設(shè)計者的設(shè)置約束等完成布局工作。ICC在時鐘樹綜合階段也提供了一個命令clock_opt,clock_opt命令根據(jù)設(shè)計者的設(shè)置和約束自動完成時鐘樹綜合的工作。布線階段也有一個類似的命令:route_opt整個流程中,除了floorplan階段需要較多的手工活之外,placement、CTS、routing階段可以說就是設(shè)計者通過修改腳本和約束,然后讓工具自動完成工作。這也是ICCompiler工具強(qiáng)大之處。時鐘樹綜合(CTS)52CTS在placement之后完成,就有可能對原來的placement的結(jié)果產(chǎn)生影響,如clock
Buffers插入之后,就有可能導(dǎo)致?lián)砣漠a(chǎn)生,為了插入clockbuffers可能會輕微移動原來的placement階段放置的標(biāo)準(zhǔn)單元,原來的placement是時序驅(qū)動的,移動就可能導(dǎo)致時序的不滿足,產(chǎn)生違規(guī)(violation)。53Clock_opt完成之后,一般都應(yīng)該使用一個命令psynopt去做一次增量優(yōu)化,psynopt這個命令的作用就是在原有基礎(chǔ)上做增量優(yōu)化。在placement階段,place_opt之后,也需要用psynopt做一次增量優(yōu)化,可以參考看run_icc_record.tcl腳本。在做完CTS之后,實驗中也就是跑完run_icc_record.tcl里面至CTS部分結(jié)束,可以報出時序信息,通過以下命令報時序信息:report_constraint–all報出所有時序違規(guī)(violations),我們暫且只關(guān)注setup違規(guī),setup違規(guī)直接制約頻率能跑多高,對于hold的違規(guī)只需要通過插buffer增加延時就可以解決。report_clocks報出時鐘的信息report_timing–from-to報出具體路徑的時序信息以上命令都可以加-help選項查看幫助信息,如report_timing–help想查看一個命令的詳細(xì)用法,可以man命令,如manreport_timing時鐘樹綜合(CTS)時鐘樹綜合總結(jié)RoutingCompletetheinterconnectionsbetweenmodules.Factorslikecriticalpath,clockskew,wirespacing,etc.,areconsidered.Includeglobalroutinganddetailedrouting.FeedthroughType1standardcel1Type2standardcellvFall2010ElectronicDesignAutomationIV-55Fall2010ElectronicDesignAutomationFall2010ElectronicDesignAutomationFall2010ElectronicDesignAutomation58Routing59Routing時鐘樹結(jié)束之后,接下來的工作是布線(routing)Floorplan階段,生成電源地網(wǎng)絡(luò)時已經(jīng)完成了電源地網(wǎng)絡(luò)的布線,routing階段主要是標(biāo)準(zhǔn)單元的信號線的連接,floorplan階段給標(biāo)準(zhǔn)單元供電的rail已經(jīng)生成,place結(jié)束后標(biāo)準(zhǔn)單元上下兩邊都放在了rail上面。實驗中采用6層金屬工藝,層與層之間通過via孔相連60先介紹基于格點的布線理論Routing61在上頁圖中,黃色和藍(lán)色的虛線稱之為track,track是沒有實際寬度的,但兩條track之間有間距稱之為pitch,基于格點的布線要求所有的金屬走線要走在track之上,而實際走出的金屬線稱之為trace,trace是有寬度的。不同的金屬線走線方向是不同的,奇數(shù)層金屬默認(rèn)走水平方向,偶數(shù)層默認(rèn)走豎直方向。兩條track的交點稱之為gridpoint標(biāo)準(zhǔn)單元的高寬都被設(shè)計成了pitch的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 北京市七年級上冊道德與法治期末試題及答案解答
- 二手房中介居間服務(wù)合同2024專業(yè)版
- 二零二五年度牛奶品牌線上線下整合營銷合同4篇
- 二零二五年度二手房買賣合同(含房產(chǎn)維修基金結(jié)算)3篇
- 2025年度房地產(chǎn)項目融資擔(dān)保合同范本二2篇
- 2025年差價管理合同
- 2025版門衛(wèi)室信息化改造項目合同范本4篇
- 2025年中鐵金控融資租賃有限公司招聘筆試參考題庫含答案解析
- 2025年度寵物寵物醫(yī)院寵物疫苗接種服務(wù)合同3篇
- 二零二五年度校園場地租賃與教育資源共享合同3篇
- 【語文】第23課《“蛟龍”探?!氛n件 2024-2025學(xué)年統(tǒng)編版語文七年級下冊
- 加強(qiáng)教師隊伍建設(shè)教師領(lǐng)域?qū)W習(xí)二十屆三中全會精神專題課
- 2024-2025學(xué)年人教版數(shù)學(xué)七年級上冊期末復(fù)習(xí)卷(含答案)
- 2024年決戰(zhàn)行測5000題言語理解與表達(dá)(培優(yōu)b卷)
- 四年級數(shù)學(xué)上冊人教版24秋《小學(xué)學(xué)霸單元期末標(biāo)準(zhǔn)卷》考前專項沖刺訓(xùn)練
- 中國游戲發(fā)展史課件
- (完整版)減數(shù)分裂課件
- 銀行辦公大樓物業(yè)服務(wù)投標(biāo)方案投標(biāo)文件(技術(shù)方案)
- 第01講 直線的方程(九大題型)(練習(xí))
- 微粒貸逾期還款協(xié)議書范本
- 人教版七年級上冊數(shù)學(xué)全冊課時練習(xí)帶答案
評論
0/150
提交評論