專用集成電路設(shè)計(jì)方法講義4-邏輯綜合課件_第1頁(yè)
專用集成電路設(shè)計(jì)方法講義4-邏輯綜合課件_第2頁(yè)
專用集成電路設(shè)計(jì)方法講義4-邏輯綜合課件_第3頁(yè)
專用集成電路設(shè)計(jì)方法講義4-邏輯綜合課件_第4頁(yè)
專用集成電路設(shè)計(jì)方法講義4-邏輯綜合課件_第5頁(yè)
已閱讀5頁(yè),還剩177頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

專用集成電路設(shè)計(jì)方法

第4部分邏輯綜合2008-11-18貸翻寵涎偏過(guò)絆玫就淖酌肥囚小賈劣胞攤邪錢挫梳妝煎頃潮尿齡午糯貞羹專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合1專用集成電路設(shè)計(jì)方法

第4部分邏輯綜合貸翻寵涎偏過(guò)絆玫就內(nèi)容邏輯綜合概述綜合環(huán)境的設(shè)置DC綜合流程簡(jiǎn)介時(shí)序分析基礎(chǔ)邏輯綜合中的時(shí)序約束設(shè)計(jì)DC的使用方式雖芝蠢啦勇鹵托療譬酪霉愛(ài)凝咖讓噶冗盎富確曠話籃墜化神距娜填默至蒲專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合2內(nèi)容邏輯綜合概述雖芝蠢啦勇鹵托療譬酪霉愛(ài)凝咖讓噶冗盎富確曠話什么是邏輯綜合?定義:根據(jù)一個(gè)系統(tǒng)功能和性能的要求,在一個(gè)包含眾多結(jié)構(gòu)、功能、性能均為已知的邏輯元件的單元庫(kù)的支持下,尋找一個(gè)邏輯網(wǎng)絡(luò)結(jié)構(gòu)的最佳實(shí)現(xiàn)方案的設(shè)計(jì)方法。東千冒芳鹵敦嘴透轉(zhuǎn)翁土左敦橋蝸?zhàn)o(hù)借敖索檄桌勘碰琉澈答仟享崔賊頃劈專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合3什么是邏輯綜合?定義:根據(jù)一個(gè)系統(tǒng)功能和性能的要求,在一個(gè)包邏輯綜合的基本步驟(1)三個(gè)步驟:翻譯(Translation)優(yōu)化(Optimization)映射(Mapping)熒旱胰屁捷媚諸糠跺晃渴路植筏棒挪腥磺實(shí)總胎涅惹壹亨婉忙鞘盛慣掛彩專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合4邏輯綜合的基本步驟(1)三個(gè)步驟:熒旱胰屁捷媚諸糠跺晃渴路邏輯綜合的基本步驟(2)翻譯(Translation)把電路的HDL描述轉(zhuǎn)化為與工藝無(wú)關(guān)的功能塊組成的邏輯電路的過(guò)程讀入電路的RTL級(jí)描述,將語(yǔ)言翻譯成每條語(yǔ)句所對(duì)應(yīng)的功能塊以及功能塊之間的拓?fù)浣Y(jié)構(gòu)這一過(guò)程的結(jié)果是在綜合器內(nèi)部生成電路的布爾函數(shù)的表達(dá)式,不做任何的邏輯重組和優(yōu)化唇樸琵區(qū)蛙慰找燒錦狹多惕揚(yáng)誣擲斂拽呀芽魏躊雕還沫酷嬌彎簧慶蹄國(guó)制專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合5邏輯綜合的基本步驟(2)翻譯(Translation)唇邏輯綜合的基本步驟(3)優(yōu)化(Optimization)基于所施加的一定時(shí)序和面積的約束條件,綜合器按照一定的算法對(duì)轉(zhuǎn)譯結(jié)果作邏輯重組和優(yōu)化。映射(Mapping)根據(jù)所施加的一定的時(shí)序和面積的約束條件,綜合器從目標(biāo)工藝庫(kù)中搜索符合條件的單元來(lái)構(gòu)成實(shí)際電路這時(shí)得到的電路包含了具體的制造工藝參數(shù)。紛今絲撻緞郝硼輪價(jià)夠矮梁锨踏去碑彥抒贊力捉斗蠻予疆口銻咖膽郴揉揩專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合6邏輯綜合的基本步驟(3)優(yōu)化(Optimization)綜合工具FPGA綜合Synplicity:Synplify,Amplify,CertifyMentorGraphics:LeonardoSpectrumSynopsys:FPGAExpress,FPGACompilerXilinx:XSTASIC綜合Synopsys:DesignCompiler蘆念惰蛇恫堅(jiān)沾酗批掏噬漣劫起票兩鴛瘟力侵娩裂俱爹悍襪主瀝柿彌胳楚專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合7綜合工具FPGA綜合蘆念惰蛇恫堅(jiān)沾酗批掏噬漣劫起票兩鴛瘟力侵DesignCompiler的綜合過(guò)程RTLdesignentryEnvironmentconstraintsDesignandclockconstraintsCompiledesignintomappedgatesOptimizedesignAnalyzethesynthesisresultsanddebugpotentialproblemsReportconstraintsSavedesignnetlist汀誤了勞經(jīng)佐左憲論瓶籬浸孺栓脾踞仁溫展念押揀招辯豈醋歸屈贖衡衛(wèi)粵專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合8DesignCompiler的綜合過(guò)程RTLdesign綜合技術(shù)帶來(lái)的好處設(shè)計(jì)師可以采用更高層次的設(shè)計(jì)方法由于邏輯綜合工具的使用,高層次的設(shè)計(jì)可以很快地轉(zhuǎn)換為門級(jí)電路設(shè)計(jì)邏輯綜合技術(shù)使與工藝無(wú)關(guān)的設(shè)計(jì)成為可能綜合工具可以按照約束設(shè)置對(duì)設(shè)計(jì)進(jìn)行自動(dòng)優(yōu)化,要得到有不同性能指標(biāo)的結(jié)果,有時(shí)候僅僅需要修改綜合時(shí)的約束設(shè)置渭莢渡檀存茂孿搏鎖匿躁榴譯睡組畢軍齒廢乾鄂孿喝牟攤梆諧嚨姨寺馱附專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合9綜合技術(shù)帶來(lái)的好處設(shè)計(jì)師可以采用更高層次的設(shè)計(jì)方法渭莢渡檀存對(duì)工程師的要求盡管邏輯綜合為數(shù)字設(shè)計(jì)帶來(lái)了顯而易見(jiàn)的好處,使設(shè)計(jì)者再也不用去手工“搭建”自己的產(chǎn)品,但并不等于設(shè)計(jì)者可以對(duì)電路的具體實(shí)現(xiàn)毫不關(guān)心。為了綜合出滿足規(guī)格定義的產(chǎn)品,工程師在進(jìn)行代碼編寫(xiě)時(shí)必須考慮代碼的可綜合性,良好的代碼風(fēng)格可以得到性能更好的設(shè)計(jì)。邏輯綜合本身就是一個(gè)復(fù)雜的過(guò)程,環(huán)境和約束的設(shè)定、測(cè)試和時(shí)序問(wèn)題的分析和解決都需要設(shè)計(jì)工程師具有專門的知識(shí)和技能。塔銜狼猿狡啤踐鞘盒琉寫(xiě)稅弄襄蟹摳稅瀉嗓尉鬼娜繕述臃撤綽夢(mèng)架紙瘸咯專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合10對(duì)工程師的要求盡管邏輯綜合為數(shù)字設(shè)計(jì)帶來(lái)了顯而易見(jiàn)的好處,使內(nèi)容邏輯綜合概述綜合環(huán)境的設(shè)置DC綜合流程簡(jiǎn)介時(shí)序分析基礎(chǔ)邏輯綜合中的時(shí)序約束設(shè)計(jì)DC的使用方式苞集到卸瞳叁撕弄餾閻董每示筑懲摔燎酷蔥巫鯉摹托膝答益眷蒸漫妙筋倒專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合11內(nèi)容邏輯綜合概述苞集到卸瞳叁撕弄餾閻董每示筑懲摔燎酷蔥巫鯉摹啟動(dòng)文件SynopsysDC需要一個(gè)啟動(dòng)文件來(lái)定義工藝庫(kù)的路徑和其他用于邏輯綜合的參數(shù)文件名必須為“.synopsys_dc.setup”,通過(guò)向相關(guān)環(huán)境變量賦值,定義技術(shù)庫(kù)的位置及參數(shù)DC在啟動(dòng)時(shí),按下列順序讀入啟動(dòng)文件Synopsysinstallationdirectory(用于存放Synopsys技術(shù)獨(dú)立庫(kù)及保存一些公共變量,不包含設(shè)計(jì)相關(guān)的數(shù)據(jù))Usershomedirector(保存一些對(duì)單個(gè)用戶有效的變量)Projectworkingdirectory(保存與當(dāng)前設(shè)計(jì)直接相關(guān)的變量)按以上順序依次讀取setup文件,最后一個(gè)讀取的setup文件將覆蓋前面讀取的setup文件雷萍茵佐垂毒任前碰臃鰓僳醚斧冰關(guān)談前中飯吟瑟售糊攬簧睜商峪新審園專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合12啟動(dòng)文件SynopsysDC需要一個(gè)啟動(dòng)文件來(lái)定義工藝庫(kù)的工藝庫(kù)工藝庫(kù):生產(chǎn)線所提供的全部標(biāo)準(zhǔn)器件模型由于不同生產(chǎn)線的加工環(huán)境不同,各種標(biāo)準(zhǔn)器件(如與非門、或非門等)的工業(yè)參數(shù)會(huì)有差異,因此,每個(gè)生產(chǎn)線都必須向市場(chǎng)提供自己的庫(kù)。換句話說(shuō),設(shè)計(jì)單位準(zhǔn)備在哪條生產(chǎn)線上投片就必須使用該生產(chǎn)線的庫(kù)進(jìn)行綜合。不同工藝線的工藝技術(shù)是不同的,如0.25微米技術(shù)和0.13微米技術(shù),因此即使同一個(gè)工廠的不同工藝線使用的工藝庫(kù)也是完全不同的。啟動(dòng)文件必須定義與工藝庫(kù)相關(guān)的變量search_path:搜索路徑,指明庫(kù)文件的位置target_library:目標(biāo)庫(kù)link_library:鏈接庫(kù)symbol_library:符號(hào)庫(kù)(顯示電路圖,用于標(biāo)識(shí)器件、單元)罷讓由福哇酷甲竹憾蹄身孰痊孩隧牲巴唱棒滁春絲批稻蛀磁洞某皂伍恫謹(jǐn)專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合13工藝庫(kù)工藝庫(kù):生產(chǎn)線所提供的全部標(biāo)準(zhǔn)器件模型罷讓由福哇酷甲竹目標(biāo)庫(kù)(Targetlibrary)目標(biāo)庫(kù):將RTL級(jí)的HDL映射到門級(jí)時(shí)所需要的標(biāo)準(zhǔn)單元綜合庫(kù),它是由芯片制造商(Foundry)提供的,包含了物理信息的單元模型。通常芯片制造商提供的基本電路有:與非、或非、非門等基本的邏輯單元單元;還有選擇器、與或非、或非與等較復(fù)雜的組合邏輯,以及鎖存器和觸發(fā)器等時(shí)序單元。Targetlibrary的文件名應(yīng)包含在linklibrary的文件清單中,用于DC讀取門級(jí)網(wǎng)表。通常target_library定義為標(biāo)準(zhǔn)單元的db格式的庫(kù)文件。著損捏崖靛悄蠢恨柞插談徐煮煩稻緒臻漿患楔寸故拳持偏系蒂稿潤(rùn)盂溯癸專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合14目標(biāo)庫(kù)(Targetlibrary)目標(biāo)庫(kù):將RTL級(jí)的連接庫(kù)(Linklibrary)連接庫(kù):可以是同targetlibaray一樣的單元庫(kù),也可以是已經(jīng)綜合到門級(jí)的底層模塊的設(shè)計(jì)。作用如下:自底向上(bottom-up)的綜合過(guò)程中,上一層的設(shè)計(jì)調(diào)用底層已經(jīng)綜合的模塊時(shí),將從link_library中尋找并連接起來(lái)。link_library定義為:標(biāo)準(zhǔn)單元的db格式的庫(kù)文件,pad的db格式的庫(kù)文件,再加上RAM、ROM等宏模塊的庫(kù)文件等。綜合工具在綜合時(shí)不再綜合生成pad、RAM和ROM,而是直接實(shí)例化到門級(jí)網(wǎng)表中。target_library是link_library的子集。臟諒篆酷諜塞奧割雄散呢峽期鈉萊客娜鑷雖喬酮鈔錐透師效按祭蠅嚇牲基專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合15連接庫(kù)(Linklibrary)連接庫(kù):可以是同targtarget_libraryvs.link_library目標(biāo)庫(kù)(target_library):是DC在mapping時(shí)將設(shè)計(jì)映射到特定工藝所使用的庫(kù),就是使用目標(biāo)庫(kù)中的元件綜合成設(shè)計(jì)的門級(jí)網(wǎng)表。連接庫(kù)(link_library):是提供門級(jí)網(wǎng)表實(shí)例化的基本單元,也就是門級(jí)網(wǎng)表實(shí)例化的元件或單元都來(lái)自該庫(kù)。連接庫(kù)定義為標(biāo)準(zhǔn)單元的db格式的庫(kù)文件加上paddb格式的庫(kù)文件,加上ROM,RAM等宏單元庫(kù)文件”。簡(jiǎn)單地講,所有用到的庫(kù)都要放到link_library,因?yàn)镈C自動(dòng)到那里去找;只有作綜合用的庫(kù)放在target_library中,象ROM,PAD等不用綜合的就不要放進(jìn)去了。黔霖押膽倍蝗棉驕雍土靠鎂床閉粘翔攜篷挾榔藻遍賊遜賢穆郭坪虱冪棺娥專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合16target_libraryvs.link_librar設(shè)計(jì)工具庫(kù)(DesignWareLibrary)設(shè)計(jì)工具庫(kù):Synopsys公司提供的知識(shí)產(chǎn)權(quán)(IP,IntellectualProperty)庫(kù)。舉例算術(shù)邏輯單元(ALU)AMBA總線構(gòu)造(BusFabric)、外圍設(shè)備(Peripherals)內(nèi)存包(Memoryportfolio)通用總線和標(biāo)準(zhǔn)I/O接口(USB,PCI,PCIExpress)微控制器(例如8051和6811)微處理器和DSP核心烈橇賜逆依壘匯康眷嗡巳聶嗆膏疏獨(dú)遣計(jì)幌悼珠閩鑷柞凸皇銹叮般惋猴勃專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合17設(shè)計(jì)工具庫(kù)(DesignWareLibrary)設(shè)計(jì)工具GTECH庫(kù)當(dāng)DC將源代碼讀入時(shí),設(shè)計(jì)轉(zhuǎn)化為一種中間格式,由GTECH庫(kù)中的組件和設(shè)計(jì)工具庫(kù)構(gòu)成。GTECH工藝庫(kù)和設(shè)計(jì)工具庫(kù)一樣,是工藝無(wú)關(guān)的,幫助我們開(kāi)發(fā)與工藝無(wú)關(guān)的組件。GTECH工藝庫(kù)包含在文件gtech.db中琺搏傀鎮(zhèn)適閩遮距桓漲落捏苯控徒箔膛蛻羊奇繳文父撐澗濘輿商撇敞攘茨專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合18GTECH庫(kù)當(dāng)DC將源代碼讀入時(shí),設(shè)計(jì)轉(zhuǎn)化為一種中間格式,由setup文件舉例.synopsys_dc.setupsetcompany"ASICDesignCo."setdesigner"Designer"settechnology"TSMC0.25um"settarget_library{tcb773stc.db}setlink_library{*tcb773stc.db}setsymbol_library{tcb773s.sdb}setsynthetic_library{standard.sldbdw_foundation.sldb}setlink_library"$link_library$synthetic_library"#DefineDCsearchpathsetsearch_path"../../TSMC/lib./scripts./unmapped./mapped$search_path"aliashhistoryaliasrc"report_constraint-all_violators"aliasrtreport_timing#specifydirectoryforintermediatefilesfromanalyzedefine_design_libDEFAULT-path./analyzed其它環(huán)境變量的設(shè)置參看DC的操作手冊(cè)。柯贛峪焉順長(zhǎng)之贖浮灌韋工禿疫銜諜計(jì)醉痹們躬姐琴娜漚淤成嚷幢羨舶紗專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合19setup文件舉例.synopsys_dc.setupset內(nèi)容邏輯綜合概述綜合環(huán)境的設(shè)置DC綜合流程簡(jiǎn)介時(shí)序分析基礎(chǔ)邏輯綜合中的時(shí)序約束設(shè)計(jì)DC的使用方式哪鋼欲喉非閱蘿羽職氮般本女互蜂殊繼烏酮嚏郡鱗溝滄征囚屜褥緊卞舜商專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合20內(nèi)容邏輯綜合概述哪鋼欲喉非閱蘿羽職氮般本女互蜂殊繼烏酮嚏郡鱗設(shè)計(jì)輸入DC提供了下面兩種方式讀入設(shè)計(jì):analyze&elaborate命令analyze命令可以分析、翻譯RTL代碼,并將中間結(jié)果存入指定的庫(kù)中elaborate命令用于為設(shè)計(jì)建立一個(gè)結(jié)構(gòu)級(jí)的,與工藝無(wú)關(guān)的描述,為下一步的工藝映射做好準(zhǔn)備read命令read一步完成analyze&elaborate的工作類別analyze&elaborateread輸入格式Verilog和VHDLRTL級(jí)代碼所有格式:Verilog、VHDL、EDIF和db等等主要用途邏輯綜合RTL級(jí)Verilog和VHDL代碼讀入網(wǎng)表文件、預(yù)編譯好的設(shè)計(jì)等等設(shè)計(jì)庫(kù)用-library選項(xiàng)定義設(shè)計(jì)庫(kù)名(而不是直接從dc_shell中執(zhí)行),存儲(chǔ)“.syn”文件使用缺省的設(shè)置,不能保存中間結(jié)果類屬(VHDL語(yǔ)言中)在elaborate設(shè)計(jì)的時(shí)候,可以設(shè)置generic語(yǔ)句的參數(shù)不能用于傳遞參數(shù)結(jié)構(gòu)(VHDL語(yǔ)言中)在elaborate設(shè)計(jì)的時(shí)候,可以定義結(jié)構(gòu)在elaborate設(shè)計(jì)的時(shí)候,不能夠定義結(jié)構(gòu)read命令和analyze&elaborate命令的不同之處勃陶鵝娃娘吝擻廬問(wèn)滴仍芋羨萬(wàn)誤澗顱飾御哄頻徹佐首剔臆悲切革臥豺盂專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合21設(shè)計(jì)輸入DC提供了下面兩種方式讀入設(shè)計(jì):類別analyze連接(Link)功能:將設(shè)計(jì)中調(diào)用的子模塊與連接庫(kù)中定義的模塊建立對(duì)應(yīng)關(guān)系命令:link鏈接可以由link命令顯式完成,也可在后面步驟的compile命令隱式完成建議每次設(shè)計(jì)輸入以后用link命令執(zhí)行一次鏈接投昌液打縷聽(tīng)呵塵斥掣店忠寅厚顫膊魁譽(yù)錠銻袖量弛砒箱升磁晉河戴案銜專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合22連接(Link)功能:將設(shè)計(jì)中調(diào)用的子模塊與連接庫(kù)中定義的設(shè)定約束條件(Constraints)約束條件分兩類:環(huán)境約束條件設(shè)計(jì)約束條件綜合環(huán)境包括工藝、電壓和溫度范圍,必需的驅(qū)動(dòng)強(qiáng)度,驅(qū)動(dòng)類型等,見(jiàn)右圖揭腔末叮灼燎據(jù)糧覽猜建病聲哇貞收贈(zèng)爸骯楞瀑鄒征芹丑倪肥蹈霖勺居吵專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合23設(shè)定約束條件(Constraints)約束條件分兩類:揭腔設(shè)置工作條件(1)命令:set_operating_conditions綜合庫(kù)包括最差、典型和最好三種條件。在綜合階段使用最差條件,以最大建立時(shí)間(setuptime)來(lái)優(yōu)化設(shè)計(jì)。使用最好條件來(lái)清除保持時(shí)間(holdtime)的違規(guī)。一般的工藝庫(kù)包括:max(slow)、typical、min(fast)庫(kù)。囤甘紹請(qǐng)瘍睦洶不聳疽腮挫鐐那估澎匡科醛佰碗叔暇痊恬吩賠斬那鞍當(dāng)菩專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合24設(shè)置工作條件(1)命令:set_operating_con設(shè)置工作條件(2)工藝(Process)偏差在流片階段,wafer在流水線上要經(jīng)過(guò)幾十道工序,這些工序在控制上會(huì)有一些偏差,這些偏差都會(huì)導(dǎo)致器件的性能的變化。一般在邏輯電路上表現(xiàn)為驅(qū)動(dòng)能力,或者信號(hào)延時(shí)的變化。姐鑄慣守梨項(xiàng)荒矮夷嗣諜會(huì)轅喲綢彌汞咖拒應(yīng)焚惦垣宅況肩貌玖涼暢嗡鬧專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合25設(shè)置工作條件(2)工藝(Process)偏差姐鑄慣守梨項(xiàng)設(shè)置工作條件(3)溫度(Temperature)當(dāng)溫度變化時(shí),會(huì)導(dǎo)致溝道電流強(qiáng)度的變化,從而影響邏輯電路的驅(qū)動(dòng)能力和信號(hào)延時(shí)。電壓(Voltage)電壓比較高時(shí),邏輯電路單元的驅(qū)動(dòng)能力增強(qiáng),信號(hào)延時(shí)變小從而可以運(yùn)行在比較高的工作頻率下。命令舉例:dc_shell-t>set_operating_conditionsWORST捍黔做投密吩蟻塢戈邪佩償膝嫂旗繪癡陪攆瞪定吼絆鳴沒(méi)引閃耙叢靳嫁殊專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合26設(shè)置工作條件(3)溫度(Temperature)捍黔做投設(shè)定線負(fù)載模型(WireLoadModel)命令:set_wire_load_model(連)線負(fù)載模型估計(jì)了線長(zhǎng)和扇出對(duì)于電阻、電容和線的面積的影響程度。半導(dǎo)體廠家根據(jù)特定生產(chǎn)線的統(tǒng)計(jì)信息開(kāi)發(fā)線負(fù)載模型。線負(fù)載模型包括面積、電容和電阻每單位長(zhǎng)度的系數(shù)和一個(gè)扇出到長(zhǎng)度的表格,用來(lái)估算線長(zhǎng)(扇出的數(shù)目決定了名義上的長(zhǎng)度)。如果沒(méi)有反標(biāo)的線延遲,DC用線負(fù)載模型來(lái)預(yù)測(cè)線長(zhǎng)和延遲。DC根據(jù)下列因素來(lái)決定設(shè)計(jì)應(yīng)用哪種線形負(fù)載模型(按先后順序排列):用戶自定義、根據(jù)設(shè)計(jì)面積自動(dòng)選擇、工藝庫(kù)里的默認(rèn)值。例子:dc_shell-t>set_wire_load_model–nameMEDIUM繳錄枝磺膳疤賂秉柒裙戰(zhàn)存擰軀魯蔥樂(lè)淖境濁資椒秸豺哪扣睬韋藉矽驢炙專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合27設(shè)定線負(fù)載模型(WireLoadModel)命令:se設(shè)定線負(fù)載模式(WireLoadMode)命令:set_wire_load_modeDC在決定穿越層次界限的連線所采用的線負(fù)載模型時(shí)支持三種模式:包圍(Enclosed)分段(Segmented)頂部(Top)命令舉例:dc_shell>set_wire_load_modeenclosed恍濱退嚷貪禾燭傈皺哩邢隆型管瀝粥聶誅寞鄲危賊到蔡奸租芋呻播澈羹臟專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合28設(shè)定線負(fù)載模式(WireLoadMode)命令:set設(shè)定輸入端口的驅(qū)動(dòng)命令:set_driving_cell為了準(zhǔn)確計(jì)算輸入電路的時(shí)序,DC需要知道到達(dá)輸入端口的信號(hào)的轉(zhuǎn)換時(shí)間(transitiontime).默認(rèn)情況下,DC假設(shè)外部信號(hào)的轉(zhuǎn)換時(shí)間為0;也可以通過(guò)set_driving_cell在輸入端口設(shè)置一個(gè)驅(qū)動(dòng)單元。例子:dc_shell-t>set_drive1.5{I1I2}dc_shell-t>set_driving_cell-cellIV{I3}墳吱災(zāi)碼橋緘欽蟻筷殲狽憲拱咸柴議捶淘峻歧汲迪乞趕焚胰朔生峽焰曉玩專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合29設(shè)定輸入端口的驅(qū)動(dòng)命令:set_driving_cell例子設(shè)定輸入和輸出端口負(fù)載利用端口負(fù)載,DC可以為輸出端口選擇適當(dāng)大小的驅(qū)動(dòng)能力,也可以用來(lái)計(jì)算輸入端口的延時(shí)。如果負(fù)載取得過(guò)小,下級(jí)電路無(wú)法正常工作,負(fù)載取得過(guò)大,會(huì)增大上一電路的難度。在缺省情況下,DC假定輸入輸出端口的容性負(fù)載為0。可以用set_load命令設(shè)定輸入、輸出端口的容性負(fù)載值。去褲澗琺是孜果鉆愿箱筆前沈湃狄悸龜娘慨侗橫醫(yī)擠倚霄婦家景露蔡盆汁專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合30設(shè)定輸入和輸出端口負(fù)載利用端口負(fù)載,DC可以為輸出端口選擇適設(shè)定輸出端口的扇出負(fù)載在DC中可以用set_fanout_load命令來(lái)設(shè)定輸出端口外部的扇出負(fù)載總和。扇出負(fù)載不同于負(fù)載,它是一個(gè)無(wú)量綱的數(shù)值。注:負(fù)載則是指電容值的大小。耪柿揖登拐攫唇襯只凰濁丑如韋額志縷幀蛤沈綠番雨嚴(yán)顧閑碳為瑪瞳偏骨專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合31設(shè)定輸出端口的扇出負(fù)載在DC中可以用set_fanout_l設(shè)計(jì)約束條件兩種設(shè)計(jì)約束設(shè)計(jì)規(guī)則約束設(shè)計(jì)優(yōu)化約束設(shè)計(jì)規(guī)則約束反映了工藝方面的限制條件由工藝庫(kù)提供設(shè)計(jì)優(yōu)化約束定義了時(shí)序上和面積上的優(yōu)化目標(biāo)術(shù)遜敞魔烏喚惱雨釘敬盞錠吹弛頁(yè)玲敞苑訪稈速吭邦呸豪竅羌適完凋罪剛專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合32設(shè)計(jì)約束條件兩種設(shè)計(jì)約束術(shù)遜敞魔烏喚惱雨釘敬盞錠吹弛頁(yè)玲敞苑設(shè)計(jì)規(guī)則約束(1)設(shè)計(jì)規(guī)則的約束設(shè)置要限定在工藝庫(kù)中器件的參數(shù)范圍之內(nèi)。從優(yōu)化的優(yōu)先級(jí)來(lái)說(shuō),設(shè)計(jì)規(guī)則的約束比其它的相關(guān)約束要高。在綜合手段的實(shí)現(xiàn)中,設(shè)計(jì)規(guī)則的設(shè)置是很有講究的。設(shè)計(jì)規(guī)則涉及到一些物理參數(shù)的設(shè)置,比如電容、0->1(1->0)跳變時(shí)間、扇出。這些物理參數(shù)之間是相互聯(lián)系、相互影響的。例如,如果電容過(guò)大,導(dǎo)致充放電時(shí)間過(guò)長(zhǎng),也就是0->1(1->0)跳變時(shí)間過(guò)長(zhǎng);如果扇出過(guò)大,又會(huì)導(dǎo)致電容過(guò)大。竄惶憐凌弛諒羌移埃榷件扁懶刊斥裳灣糞峙曹濾廣嘗前距卵靛蝎秦豹霞伺專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合33設(shè)計(jì)規(guī)則約束(1)設(shè)計(jì)規(guī)則的約束設(shè)置要限定在工藝庫(kù)中器件的設(shè)計(jì)規(guī)則約束(2)有三種設(shè)計(jì)規(guī)則的約束:最大電容(maxcapacitance)最大扇出(maxfanout)最大跳變(maxtransition)三者相互聯(lián)系,相互影響,用來(lái)控制設(shè)計(jì)中的緩沖(buffering)設(shè)定最大電容值命令:set_max_capacitance最大電容(maxcapacitance)的約束提供了一種直接的方式,來(lái)直接控制設(shè)計(jì)中線網(wǎng)(net)上的電容。在編譯過(guò)程中,綜合器確保最大電容沒(méi)有違規(guī)(violation),DC把線負(fù)載的電容和與連線相關(guān)的pin的電容相加計(jì)算輸出端口的電容,并且把它與最大電容的值比較,確保小于最大電容的值。左銳巢鱗鑄悟衛(wèi)繞未锨宮峻冤趁禁野物貪夸巢詭暖助焦宗賈暮凋欺政川骸專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合34設(shè)計(jì)規(guī)則約束(2)有三種設(shè)計(jì)規(guī)則的約束:左銳巢鱗鑄悟衛(wèi)繞未設(shè)計(jì)規(guī)則約束(3)設(shè)定最大扇出命令:set_max_fanout最大扇出(maxfanout)是對(duì)端口可以驅(qū)動(dòng)的負(fù)載數(shù)目的估量。輸出端口Z驅(qū)動(dòng)2個(gè)反向器、一個(gè)輸出端口、一個(gè)或非門。每個(gè)器件的輸入端均具有fanout_load的屬性,該屬性由反向器所在的工藝庫(kù)的工藝來(lái)決定它的參數(shù)范圍。腕萌審鞏粵湘撐插精膿虎疚翔瓷娠劍碾乍漣狀擅宛汕錠碰狗埃棗摹嬸戊末專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合35設(shè)計(jì)規(guī)則約束(3)設(shè)定最大扇出命令:set_max_fan設(shè)計(jì)規(guī)則約束(4)設(shè)定最大跳變命令:set_max_transition最大跳變(maxtransition)指的是0->1(1->0)所花費(fèi)的最長(zhǎng)時(shí)間。產(chǎn)生機(jī)制很簡(jiǎn)單:電容(C)和電阻(R)的乘積。但是如何對(duì)電容和電阻進(jìn)行建模,快速獲得合理的數(shù)值,卻很困難。最大跳變(maxtransition)的定義:引腳的驅(qū)動(dòng)強(qiáng)度乘以它驅(qū)動(dòng)的連線上所有電容負(fù)載的總和的最大值伴夠窿徊稻瘤貉涯釬渝泉拔掖粕農(nóng)嘛肄羊膚扔去瘁娶隆犯匯躁憫捂藍(lán)硫喪專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合36設(shè)計(jì)規(guī)則約束(4)設(shè)定最大跳變命令:set_max_tra設(shè)定面積約束綜合過(guò)程進(jìn)行優(yōu)化的依據(jù)之一一旦確定了面積約束條件,在綜合時(shí),就將該條件通知綜合工具,綜合工具利用各種可能的規(guī)則和算法,盡可能地減少該設(shè)計(jì)的面積通過(guò)命令set_max_area來(lái)給設(shè)計(jì)設(shè)置約束在實(shí)際綜合中,set_max_area0,其意義在于在滿足時(shí)序的前期下,使面積達(dá)到最小沿槽墅楓諒湊拙域馱夠翔鴛耳詞門崇喀選逐降藏輝樹(shù)勻以敏讓供漱齡宴工專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合37設(shè)定面積約束綜合過(guò)程進(jìn)行優(yōu)化的依據(jù)之一沿槽墅楓諒湊拙域馱夠翔施加時(shí)序約束根據(jù)網(wǎng)表中每個(gè)連接元件的延時(shí)模型,對(duì)節(jié)點(diǎn)進(jìn)行定時(shí)分析,給出最好和最壞的延時(shí)情況,然后檢查電路所有的延時(shí)約束條件是否滿足要求。如果符合時(shí)序約束要求,就可以進(jìn)行工藝映射,進(jìn)行器件實(shí)現(xiàn)了。時(shí)序約束的設(shè)計(jì)是邏輯綜合的重點(diǎn)和難點(diǎn),將詳細(xì)講解。瘁勞驕稻蹈憎特冒礬產(chǎn)拾繼滇披經(jīng)桑伍霧妊澤臭李染做夸協(xié)洗生巋杰喜鍘專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合38施加時(shí)序約束根據(jù)網(wǎng)表中每個(gè)連接元件的延時(shí)模型,對(duì)節(jié)點(diǎn)進(jìn)行定時(shí)編譯(1)命令:compile編譯策略:Top-downhierarchicalcompileBottom-upcompileTop-downhierarchicalcompile將整個(gè)設(shè)計(jì)作為一個(gè)模塊進(jìn)行編譯,僅需頂層約束。對(duì)一些設(shè)計(jì)如:?jiǎn)螘r(shí)鐘的設(shè)計(jì),很適用。允許一次編譯大于100Kgate的設(shè)計(jì)。對(duì)于大型設(shè)計(jì),可將子模塊合并成一組,然后展開(kāi)進(jìn)行編譯,可以改善時(shí)序。優(yōu)點(diǎn):僅需toplevel的約束將整個(gè)設(shè)計(jì)作為整體優(yōu)化,可獲得較好的結(jié)果缺點(diǎn):編譯時(shí)間長(zhǎng)子模塊的改變需要整個(gè)設(shè)計(jì)再綜合如果設(shè)計(jì)包含多個(gè)時(shí)鐘或生成時(shí)鐘邏輯,則不能很好執(zhí)行郝而皿怎袱復(fù)媚扛扁區(qū)源擔(dān)需禁口揪痙瘓吸正韶俗丹燃淺睡督鄲腑村批覓專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合39編譯(1)命令:compile郝而皿怎袱復(fù)媚扛扁區(qū)源擔(dān)需禁編譯(2)Bottom-upcompile各個(gè)模塊可獨(dú)立編譯,適合于劃分合理、各個(gè)模塊的時(shí)序約束能夠被明確定義的設(shè)計(jì)優(yōu)點(diǎn):每一個(gè)子模塊都由自己的腳本(scripts)文件,可以靈活修改子模塊的改變不需要整個(gè)設(shè)計(jì)全部重新綜合不需要關(guān)心設(shè)計(jì)類型,如:多時(shí)鐘或產(chǎn)生時(shí)鐘一般來(lái)說(shuō),可獲得好的結(jié)果;缺點(diǎn):需要更新維護(hù)多個(gè)腳本(scripts)文件頂層的關(guān)鍵路徑也許在子模塊并非關(guān)鍵路徑第廚仁唉蒂度塹丙晤褲苫尚恬辱唯朝樸甭儀稍曬流充煥驅(qū)購(gòu)酥攫重歸迅滬專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合40編譯(2)Bottom-upcompile第廚仁唉蒂度塹時(shí)序分析編譯(compile)結(jié)束后,通過(guò)產(chǎn)生的DC時(shí)序報(bào)告來(lái)具體分析診斷時(shí)序的違規(guī)(violations)時(shí)序報(bào)告包括四個(gè)部分:路徑信息部分、路徑延時(shí)部分、路徑所要求時(shí)間部分、計(jì)算總結(jié)部分蘑窯糞蠢鳳裁義俐蘋(píng)蛾鴦慢恫抗夫膛幟擴(kuò)迅調(diào)姻瞅謾錐販剛承廣啟印火毒專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合41時(shí)序分析編譯(compile)結(jié)束后,通過(guò)產(chǎn)生的DC時(shí)序內(nèi)容邏輯綜合概述綜合環(huán)境的設(shè)置DC綜合流程簡(jiǎn)介時(shí)序分析基礎(chǔ)邏輯綜合中的時(shí)序約束設(shè)計(jì)DC的使用方式潤(rùn)兒燕凄鉤議臀繹俗妻夾涸措吝泛歹漲鎬頂翠懂幼襟隔蠶粘杉雙哨嘯輥名專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合42內(nèi)容邏輯綜合概述潤(rùn)兒燕凄鉤議臀繹俗妻夾涸措吝泛歹漲鎬頂翠懂幼數(shù)字系統(tǒng)中的時(shí)序問(wèn)題時(shí)序問(wèn)題數(shù)字系統(tǒng)中的開(kāi)關(guān)事件(邏輯運(yùn)算、數(shù)據(jù)存儲(chǔ),等等)的發(fā)生在時(shí)間上具有先后順序必須使系統(tǒng)中所有的事件按預(yù)先確定的次序正確執(zhí)行同步系統(tǒng)產(chǎn)生時(shí)鐘信號(hào)(clocking),用以協(xié)調(diào)把數(shù)據(jù)寫(xiě)入存儲(chǔ)元件的時(shí)間異步系統(tǒng)完全取消本地時(shí)鐘采用自定時(shí)的異步電路,通過(guò)握手協(xié)議實(shí)現(xiàn)模塊間正確的操作次序雛牙劃溯嘛冒揉父怯氫錦晦泰秤撫鹿樹(shù)媚斌薩屑碗幸銘雷裸繭剎吮炔碑瑯專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合43數(shù)字系統(tǒng)中的時(shí)序問(wèn)題時(shí)序問(wèn)題雛牙劃溯嘛冒揉父怯氫錦晦泰秤撫鹿時(shí)鐘的非理想情況時(shí)鐘偏差(ClockSkew)定義:空間上兩個(gè)不同點(diǎn)處、時(shí)序上等同的兩個(gè)時(shí)鐘沿在到達(dá)時(shí)間上的偏差由時(shí)鐘路徑上的失配及時(shí)鐘負(fù)載上的差別引起,取決于數(shù)據(jù)與時(shí)鐘布線的方向,時(shí)鐘偏差可正可負(fù)具有確定性(從一個(gè)周期至下一個(gè)周期是時(shí)不變的)時(shí)鐘偏差不會(huì)引起周期的變化,只會(huì)引起相移(相位偏移)時(shí)鐘抖動(dòng)(ClockJitter)定義:空間上同一個(gè)點(diǎn)處時(shí)鐘周期隨時(shí)間的變化抖動(dòng)是一個(gè)平均值為零的隨機(jī)變量絕對(duì)抖動(dòng)(tjitter):某點(diǎn)處一個(gè)時(shí)鐘邊沿相對(duì)于理想?yún)⒄諘r(shí)鐘邊沿在最壞情況下偏差的絕對(duì)值j點(diǎn)i點(diǎn)未峨埠峨局火諄軸盒蓬腰濕窮黃曠粒脊魚(yú)糧鄲弘剖明渠輸熔洶遂膿阜族浪專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合44時(shí)鐘的非理想情況時(shí)鐘偏差(ClockSkew)j點(diǎn)i點(diǎn)未峨時(shí)鐘不確定性的來(lái)源錘佩欄孩就皮藍(lán)冗菇銻豁光遷訪濱承開(kāi)幾框僑侖豪曹拷掠班變督幫道摻姿專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合45時(shí)鐘不確定性的來(lái)源錘佩欄孩就皮藍(lán)冗菇銻豁光遷訪濱承開(kāi)幾框僑侖時(shí)序參數(shù)時(shí)鐘周期:T建立(set-up)時(shí)間:tsu保持(hold)時(shí)間:thold時(shí)鐘至輸出(clk-q)時(shí)間:tclk-q(tclk-q,min,tclk-q,max)數(shù)據(jù)至輸出(d-q)時(shí)間:td-q(td-q,min,td-q,max)喀煽月郝探糕契生梭孕憂邏閘拐談咀汝政爪揩狠宙奶同凡沙資驅(qū)驅(qū)眶典賞專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合46時(shí)序參數(shù)時(shí)鐘周期:T喀煽月郝探糕契生梭孕憂邏閘拐談咀汝政爪揩建立時(shí)間和保持時(shí)間建立時(shí)間(SetupTime):指時(shí)鐘信號(hào)的有效沿到來(lái)之前,數(shù)據(jù)輸入信號(hào)必須到達(dá)的最小時(shí)間長(zhǎng)度,保證該單元正確工作。保持時(shí)間(HoldTime):指時(shí)鐘信號(hào)的有效沿或其它特定信號(hào)到來(lái)之后,數(shù)據(jù)輸入信號(hào)必須保持穩(wěn)定的最小時(shí)間長(zhǎng)度,保證該單元正確工作。徑擬奉搞轍嬰段巡黔遞乳陣喚蓑喝余頤樂(lè)膘現(xiàn)捐無(wú)再背繳泅伴嗚卉荔道列專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合47建立時(shí)間和保持時(shí)間建立時(shí)間(SetupTime):指時(shí)鐘存在時(shí)鐘偏差時(shí)的系統(tǒng)時(shí)序(1)約束條件1:R2的輸入數(shù)據(jù)必須在時(shí)鐘的有效沿之前保持穩(wěn)定因此要求:據(jù)此可得:哲酬州舟秒狗落鍛華居勸犬氟俊誦滓巴象葵對(duì)涪灘沽朋緒齲姜誼冰渠果正專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合48存在時(shí)鐘偏差時(shí)的系統(tǒng)時(shí)序(1)約束條件1:R2的輸入數(shù)據(jù)必須存在時(shí)鐘偏差時(shí)的系統(tǒng)時(shí)序(2)約束條件2:避免R2的前后兩次輸入信號(hào)出現(xiàn)競(jìng)爭(zhēng)因此要求:即:嗅裹曰晨疹鉀氯責(zé)姥瘋愈鉻娶咽頸還蹭駒湊鐘謝匆蝦節(jié)辨清尾瞅每決賃晝專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合49存在時(shí)鐘偏差時(shí)的系統(tǒng)時(shí)序(2)約束條件2:避免R2的前后兩次正時(shí)鐘偏差(PositiveSkew)發(fā)送邊沿(launchedge)在接收邊沿(captureedge)之前到達(dá)正的時(shí)鐘偏差使得系統(tǒng)有可能提高時(shí)鐘頻率但正的時(shí)鐘偏差可能引起信號(hào)競(jìng)爭(zhēng)扭沛猜萬(wàn)妻遮裔純碩儡戎皿上碴伐嘲鉸卒拓七般冬刮半弗勾咕蝶泡湊機(jī)搜專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合50正時(shí)鐘偏差(PositiveSkew)發(fā)送邊沿(laun負(fù)時(shí)鐘偏差(NegativeSkew)接收邊沿(launchedge)在發(fā)送邊沿(captureedge)之前到達(dá)負(fù)的時(shí)鐘偏差會(huì)降低系統(tǒng)的時(shí)鐘性能由于邊沿2領(lǐng)先于邊沿1,因此不會(huì)發(fā)生信號(hào)競(jìng)爭(zhēng)臍幌肆簽舒嬸爛僧沒(méi)飄恤寓袱釜摸駿鞭鋪稈大顱判斯票胞并坑肅夜晦滴揉專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合51負(fù)時(shí)鐘偏差(NegativeSkew)接收邊沿(laun時(shí)鐘分布網(wǎng)絡(luò)時(shí)鐘分布已成為主要的設(shè)計(jì)問(wèn)題日益增大的芯片尺寸,不斷提高的時(shí)鐘頻率采用逐級(jí)增大的緩沖器來(lái)驅(qū)動(dòng)全局時(shí)鐘,供給所有模塊采用分布式樹(shù)結(jié)構(gòu)二叉樹(shù)或H樹(shù)使每個(gè)模塊可以得到完好的時(shí)鐘,能與模塊的延時(shí)很好地匹配,或者使時(shí)鐘的分配可以安排得使任何RC延時(shí)發(fā)生在SafeSlew的方向上(如與數(shù)據(jù)流的方向相反)H樹(shù)由于所有的子功能塊與時(shí)鐘源是等距離的,因此對(duì)于每一個(gè)子功能塊,時(shí)鐘信號(hào)被延遲一個(gè)相同的數(shù)量二叉樹(shù)逐級(jí)增大的緩沖器H樹(shù)矩溢脅整奪酸角晉茫逞彰氏拄蛆顧忘尿旦快款豹雁隱剿粵冬開(kāi)威彰霄渠彎專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合52時(shí)鐘分布網(wǎng)絡(luò)時(shí)鐘分布已成為主要的設(shè)計(jì)問(wèn)題二叉樹(shù)逐級(jí)增大的緩沖內(nèi)容邏輯綜合概述綜合環(huán)境的設(shè)置DC綜合流程簡(jiǎn)介時(shí)序分析基礎(chǔ)邏輯綜合中的時(shí)序約束設(shè)計(jì)DC的使用方式笆縷趕典桌酬堤銑食即錯(cuò)殘似寶盲嗆一潮簍味塑鄰無(wú)皋直賣甘泊鈞添簍郭專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合53內(nèi)容邏輯綜合概述笆縷趕典桌酬堤銑食即錯(cuò)殘似寶盲嗆一潮簍味塑鄰定義時(shí)鐘(1)定義時(shí)鐘的周期與波形(占空比)命令格式:create_clock[-nameclock_name][-add][source_objects][-periodperiod_value][-waveformedge_list]-period選項(xiàng)指定時(shí)鐘周期,單位ns-waveform選項(xiàng)指定時(shí)鐘邊沿的開(kāi)始位置,單位ns例1:在端口clk上定義一個(gè)周期為20ns、占空比為40%的時(shí)鐘信號(hào)dc_shell-t>create_clock-period20-waveform{08}clk例2:在端口clk上定義一個(gè)頻率為25MHz、占空比為50%的時(shí)鐘信號(hào)dc_shell-t>create_clockclk-period40霧鎮(zhèn)沮妥倆盼咎亭訪塵沏睬隔行菌嗚啃飲屠宦留蘆宰仰灌泉左喀鴕飾卸肝專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合54定義時(shí)鐘(1)定義時(shí)鐘的周期與波形(占空比)霧鎮(zhèn)沮妥倆盼咎定義時(shí)鐘(2)指定時(shí)鐘網(wǎng)絡(luò)的延時(shí)采用set_clock_uncertainty和set_clock_latency命令對(duì)時(shí)鐘樹(shù)的延時(shí)量進(jìn)行建模不確定性(uncertainty):兩個(gè)寄存器時(shí)鐘引腳之間的相對(duì)延時(shí),即clockskew延時(shí)(latency):寄存器時(shí)鐘引腳與時(shí)鐘源之間的絕對(duì)延時(shí)例1:為時(shí)鐘信號(hào)clk設(shè)置1.2ns的網(wǎng)絡(luò)延遲dc_shell-t>set_clock_latency1.2clk例2:為時(shí)鐘信號(hào)clk設(shè)置0.8ns的源延遲dc_shell-t>set_clock_latency0.8-sourceclk例3:為時(shí)鐘信號(hào)clk設(shè)置0.2ns的不確定性偏差dc_shell-t>set_clock_uncertainty0.2clk例4:在跳變沿兩側(cè)為時(shí)鐘信號(hào)clk各設(shè)置0.2ns的不確定性偏差dc_shell-t>set_clock_uncertainty-setup0.2clkdc_shell-t>set_clock_uncertainty-hold0.2clk時(shí)鐘樹(shù)(網(wǎng)絡(luò))進(jìn)綢乳撿蟲(chóng)亦果密瀕衡睫忍惦復(fù)遂糯庶淆謬?yán)^劇胺測(cè)噓雹流盅掂杰晚篇痘專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合55定義時(shí)鐘(2)指定時(shí)鐘網(wǎng)絡(luò)的延時(shí)時(shí)鐘樹(shù)(網(wǎng)絡(luò))進(jìn)綢乳撿蟲(chóng)亦果定義時(shí)鐘(3)如果設(shè)計(jì)中有內(nèi)部產(chǎn)生的時(shí)鐘,如時(shí)鐘分頻器或者倍頻器,定義時(shí)鐘時(shí)要用到命令create_generated_clock命令格式:create_generated_clock[–nameclock_name][–sourceclock_source][–divide_byfactor|-multiply_byfactor]定義了時(shí)鐘以后,要對(duì)時(shí)鐘設(shè)置set_dont_touch屬性,禁止往時(shí)鐘上加入緩沖相應(yīng)的命令是:set_dont_touch_network[get_clocksClk]原因:綜合時(shí),一個(gè)時(shí)鐘源驅(qū)動(dòng)了很多門,由于所帶的負(fù)載太多,時(shí)鐘信號(hào)的邊緣會(huì)很差。如果為時(shí)鐘插入緩沖(Buffer)之后,時(shí)鐘的驅(qū)動(dòng)能力會(huì)增強(qiáng),而且保持時(shí)鐘信號(hào)的邊緣陡峭,但是這樣做會(huì)使得在不同路徑上出現(xiàn)時(shí)鐘偏移,從而帶來(lái)時(shí)序上的問(wèn)題。因此在綜合時(shí),將clock看作是理想的時(shí)鐘,禁止加緩沖。奪肝豎里餌剖獵很倪臭梆相更差察毆奉店之倉(cāng)析給新誅雷諷薄豪佑會(huì)迂瘟專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合56定義時(shí)鐘(3)如果設(shè)計(jì)中有內(nèi)部產(chǎn)生的時(shí)鐘,如時(shí)鐘分頻器或者倍指定I/O的時(shí)序要求定義了時(shí)鐘之后,兩個(gè)相鄰寄存器之間的時(shí)間路徑已經(jīng)被約束——默認(rèn)為一個(gè)時(shí)鐘周期輸入端口的時(shí)序約束如果已知輸入端口的外部電路的延遲,就能計(jì)算留給輸入端內(nèi)部邏輯的最大允許延遲DC命令:set_input_delay輸出端口的時(shí)序約束指定了輸出端口外部電路的延遲,DC就能得到留給輸出端口的最大延遲DC命令:set_output_delay輛黑勞嗣紉但審蔭暗牢蠕副旗鄖頤拾雕夢(mèng)沉六灶感爺撻噬肅芳彎敞操嗆畝專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合57指定I/O的時(shí)序要求定義了時(shí)鐘之后,兩個(gè)相鄰寄存器之間的時(shí)間設(shè)定輸入延遲(1)set_input_delay設(shè)置輸入端口的輸入延遲,可規(guī)定時(shí)鐘沿之后數(shù)據(jù)據(jù)需要穩(wěn)定的時(shí)間,作為輸入信號(hào)的建立或保持時(shí)間需求定義信號(hào)相對(duì)于時(shí)鐘的到達(dá)時(shí)間(指一個(gè)信號(hào)在時(shí)鐘沿之后多少時(shí)間到達(dá))規(guī)定輸入信號(hào)在時(shí)鐘有效沿后多長(zhǎng)時(shí)間后才保持穩(wěn)定(或說(shuō)數(shù)據(jù)有效),對(duì)輸入路徑進(jìn)行時(shí)間約束Td+TM代靡財(cái)貢禾梧春檔脾觀潔錘嶺榨虎擊慎辱玲寄輛困簡(jiǎn)豌灼顫溺繕遜澈虜癰專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合58設(shè)定輸入延遲(1)set_input_delayTd+設(shè)定輸入延遲(2)下圖說(shuō)明了輸入延遲的定義和時(shí)序關(guān)系訛背逝向恬發(fā)氦罩駁豺湛吏徊圓釬愿簾蘊(yùn)言操沙狠期縫家腹耽鹼拉醞侖晦專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合59設(shè)定輸入延遲(2)下圖說(shuō)明了輸入延遲的定義和時(shí)序關(guān)系訛背逝設(shè)定輸出延遲set_output_delay輸出信號(hào)在時(shí)鐘有效沿前多長(zhǎng)時(shí)間開(kāi)始保持穩(wěn)定(或者說(shuō)數(shù)據(jù)有效),對(duì)輸出路徑進(jìn)行時(shí)間約束怔遷低托端硅查竭矮應(yīng)艷慈咬便勺單咱藤豹曙秀赤顯陷細(xì)侶潭屑尋撫潰幼專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合60設(shè)定輸出延遲set_output_delay怔遷低托端硅查竭設(shè)定I/O延遲舉例:dc_shell-t>set_input_delay20-clockCLKDATA_INdc_shell-t>set_output_delay15-clockCLKDATA_OUT在工程設(shè)計(jì)中,inputdelay和outputdelay通常取時(shí)鐘周期的40-60%飲族顆蕪咸慶匿計(jì)呆蛻塔嘴甸竣活拒鍵述而苫盛愉眺改限冕膿篷賺哨足葵專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合61設(shè)定I/O延遲舉例:在工程設(shè)計(jì)中,inputdelay和o指定組合邏輯通路的延時(shí)要求采用set_max_delay和set_min_delay命令來(lái)定義某條組合邏輯路徑(不含時(shí)序單元)的最大和最小延時(shí)例1:RESET信號(hào)的延時(shí)不能超過(guò)5nsdc_shell-t>set_max_delay5-fromRESET例2:從IN2至OUT2的路徑的最小延時(shí)是10nsdc_shell-t>set_min_delay10-fromIN2-toOUT2高昂沸鼎慶截擅郎濁多沮汞血署合怨擎逼擻扔夷蔣吩丙菇熏障載鯉哩呀些專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合62指定組合邏輯通路的延時(shí)要求采用set_max_delay和s說(shuō)明時(shí)序例外情況應(yīng)用于異步路徑或不遵循單時(shí)鐘時(shí)序的路徑用set_false_path命令指定設(shè)計(jì)中的假路徑,從而在時(shí)序優(yōu)化時(shí)不考慮它們U1-配置寄存器,可以從雙向總線(DATA)對(duì)其進(jìn)行讀寫(xiě)由于不允許同時(shí)進(jìn)行讀寫(xiě),U1/G-U1/D是一條功能上的假路徑dc_shell-t>set_false_path-fromU1/G-toU1/D鴛蚌肌褪衍玄憨旨測(cè)鰓贖僵閹嘴匆蘇歉韓努啥婆喚索伎耶隘損連枉丑綁澆專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合63說(shuō)明時(shí)序例外情況應(yīng)用于異步路徑或不遵循單時(shí)鐘時(shí)序的路徑U1-時(shí)序約束設(shè)計(jì)舉例create_clock-period20-waveform{515}clkacreate_clock-period30-waveform{1025}clkbset_input_delay10.4-clockclkain1set_input_delay6.4-clockclkb-add_delayin1set_output_delay1.6-clockclka-minout1set_output_delay4.8-clockclka-maxout1嶄潰瘍矽蹦亢茫況締做撓義挾扣辮糕猖臼募芒咖淳鹵射陌兔幽掀苦羔鉚踴專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合64時(shí)序約束設(shè)計(jì)舉例create_clock-period2內(nèi)容邏輯綜合概述綜合環(huán)境的設(shè)置DC綜合流程簡(jiǎn)介時(shí)序分析基礎(chǔ)邏輯綜合中的時(shí)序約束設(shè)計(jì)DC的使用方式疾焉插腎隸涵剖煽黃閱搓結(jié)星悟淤貍蜒舉搪千仍贓軸團(tuán)鵬希聰亂詢絨株別專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合65內(nèi)容邏輯綜合概述疾焉插腎隸涵剖煽黃閱搓結(jié)星悟淤貍蜒舉搪千仍贓兩種使用方式(1)圖形界面方式在Unix下執(zhí)行dc_shell,啟動(dòng)DC的命令行界面執(zhí)行design_analyzer&即可啟動(dòng)相應(yīng)的圖形界面帚段焊凄屎妙您甥漂斌悔喬串釘疤工粳彤?dāng)⒍嚅e盧灑命添繳竹亮磋經(jīng)逞什專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合66兩種使用方式(1)圖形界面方式帚段焊凄屎妙您甥漂斌悔喬串釘兩種使用方式(2)腳本(Scripts)方式在Unix環(huán)境下,輸入dc_shell啟動(dòng)DC工具dc_shell>includescripts/<scriptsfilename>.sc>reports/<scriptsfilename>.rpt賞激玻灑酗獻(xiàn)輿態(tài)伺健信士拆臥枉搭魔斃庫(kù)夾候坊腆什列自攏備懸侄駭孵專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合67兩種使用方式(2)腳本(Scripts)方式賞激玻灑酗獻(xiàn)圖形界面:設(shè)置庫(kù)文件Stepup->Defaults鵲紫柬盤裹擰幽醛雅泵限蠢片汽椅最驅(qū)噸妻鮮筍倍砰蟻瘋兄腺喧摧詹棺如專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合68圖形界面:設(shè)置庫(kù)文件Stepup->Defaults鵲紫柬盤圖形界面:設(shè)計(jì)讀入(1)設(shè)計(jì)的讀入:analyze+elaborate旺岔傻妄岔往放炔分捶沼肯標(biāo)飼泰鉤思砰酗諾犧能花踩娟扁助殖普像目狐專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合69圖形界面:設(shè)計(jì)讀入(1)設(shè)計(jì)的讀入:analyze+e圖形界面:設(shè)計(jì)讀入(2)設(shè)計(jì)的讀入:read且乎揚(yáng)韭瀕滿版跟禿冰燦規(guī)攪腹測(cè)聳馱查邪怯淚師謾奉絹蹈瘓預(yù)灰莆瑟煥專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合70圖形界面:設(shè)計(jì)讀入(2)設(shè)計(jì)的讀入:read且乎揚(yáng)韭瀕滿版圖形界面:鏈接鏈接將設(shè)計(jì)中調(diào)用的子模塊與鏈接庫(kù)中定義的模塊建立對(duì)應(yīng)關(guān)系罰雇松抵誦琶也豪賭遠(yuǎn)撲肚散媒仟越苛沂香跌陶崎顯藩憾幾甫午禹堰諸重專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合71圖形界面:鏈接鏈接罰雇松抵誦琶也豪賭遠(yuǎn)撲肚散媒仟越苛沂香跌陶?qǐng)D形界面:添加約束(1)環(huán)境約束綜栗弗牟秦索沈徐酣為是楚抖流藤藩夯跪鈞劃館殖賊幾旬員行池喬妄榮漫專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合72圖形界面:添加約束(1)環(huán)境約束綜栗弗牟秦索沈徐酣為是楚抖圖形界面:添加約束(2)連線負(fù)載模型控柿滲良羨堯餾郴猿持耍葷份機(jī)菇泡餌鋅更撒僳坎騷碘絞稱嚙悸檻二上參專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合73圖形界面:添加約束(2)連線負(fù)載模型控柿滲良羨堯餾郴猿持耍圖形界面:添加約束(3)設(shè)置輸出負(fù)載設(shè)置車煙茬纏前謠嫂超覓入弓垂仕凹洶撼契瓷羔勺慨辛焙痰絢膜雍胡池洶烷待專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合74圖形界面:添加約束(3)設(shè)置輸出負(fù)載設(shè)置車煙茬纏前謠嫂超覓圖形界面:添加約束(4)設(shè)置輸入驅(qū)動(dòng)輿苗總禹證擴(kuò)奸概挽瑪炊技莎杰英奄邦履消拱碘拆野刪廄峪劑輿講達(dá)焦怔專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合75圖形界面:添加約束(4)設(shè)置輸入驅(qū)動(dòng)輿苗總禹證擴(kuò)奸概挽瑪炊圖形界面:添加約束(5)創(chuàng)建時(shí)鐘縫蠶鹼乳平汕鍛廖模禾釣會(huì)貞必遺洋濰師抄仔歇盡燙捏污冀疤謝吶龐孝員專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合76圖形界面:添加約束(5)創(chuàng)建時(shí)鐘縫蠶鹼乳平汕鍛廖模禾釣會(huì)貞圖形界面:添加約束(6)設(shè)置輸入延時(shí)絡(luò)喪心科卞勝偶治化遜秤蛹幻陪撬剃繁批刑才棍夯噓偷困哼糞帶衣褪燕兇專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合77圖形界面:添加約束(6)設(shè)置輸入延時(shí)絡(luò)喪心科卞勝偶治化遜秤圖形界面:添加約束(7)設(shè)置輸出延時(shí)棒衙廷暑乘鞍嘿醚衫佳乏茄弛程騰圃粹擊彰屢郎奇戍屎葉邢考巋煥劃粘賜專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合78圖形界面:添加約束(7)設(shè)置輸出延時(shí)棒衙廷暑乘鞍嘿醚衫佳乏圖形界面:添加約束(8)組合電路的時(shí)延約束猶艙階嗆姻撮滅耶枕任效俄祭少晨麓緝巡熒棧室賞汾潦卯脯擒暑桓哈正酚專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合79圖形界面:添加約束(8)組合電路的時(shí)延約束猶艙階嗆姻撮滅耶圖形界面:添加約束(9)設(shè)計(jì)的面積約束脈療斑侯涌押菱射硬帶蠢肉潰榆寅竭僵昂釘另幽購(gòu)掀摳紉寵液垃葷作污著專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合80圖形界面:添加約束(9)設(shè)計(jì)的面積約束脈療斑侯涌押菱射硬帶圖形界面:設(shè)計(jì)綜合設(shè)計(jì)綜合莊章寺豈徒辯沉櫻杉傲抑笑術(shù)智蔡憊輛卉瀝怨址罷慣苞飲酵榮踩倔穗慨匣專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合81圖形界面:設(shè)計(jì)綜合設(shè)計(jì)綜合莊章寺豈徒辯沉櫻杉傲抑笑術(shù)智蔡憊輛圖形界面:結(jié)果報(bào)告設(shè)計(jì)結(jié)果報(bào)告-報(bào)告面積和時(shí)序信息宏緘補(bǔ)琴胯口鷗選遙篇嫡暑柜褐粳宇伶皇椒迂挎仇柑耀編月氫躲迪諾住購(gòu)專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合82圖形界面:結(jié)果報(bào)告設(shè)計(jì)結(jié)果報(bào)告-報(bào)告面積和時(shí)序信息宏緘補(bǔ)琴胯圖形界面:設(shè)計(jì)保存設(shè)計(jì)的保存釉鵝峙受蝶膛螞乳莊尼費(fèi)圭親撿訴悄妙粥戶掇凹港卒箍娛癸謎裁既該躊瘴專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合83圖形界面:設(shè)計(jì)保存設(shè)計(jì)的保存釉鵝峙受蝶膛螞乳莊尼費(fèi)圭親撿訴悄圖形界面:時(shí)序描述文件導(dǎo)出時(shí)序描述文件的導(dǎo)出描述了設(shè)計(jì)的時(shí)序情況主要用于進(jìn)行綜合后的動(dòng)態(tài)仿真糾虞養(yǎng)明最術(shù)價(jià)物燼主凌御烏倔譯頻炬狠屹銘瘓眼穎冊(cè)誓暴癬辟蔓擁瀑泊專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合84圖形界面:時(shí)序描述文件導(dǎo)出時(shí)序描述文件的導(dǎo)出糾虞養(yǎng)明最術(shù)價(jià)物圖形界面:時(shí)序約束文件導(dǎo)出時(shí)序約束文件的導(dǎo)出帶有關(guān)鍵路徑的時(shí)延約束信息,主要供后端工具進(jìn)行時(shí)延驅(qū)動(dòng)的布局布線惶胖精宙茫澀蘸滄培竿甕苛宿扶毯酷管餃上莢蘭褥虧瞬躍屬控另吵愉馭鋇專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合85圖形界面:時(shí)序約束文件導(dǎo)出時(shí)序約束文件的導(dǎo)出惶胖精宙茫澀蘸滄腳本方式(1)設(shè)計(jì)讀入生成未映射的db設(shè)計(jì)文件的腳本文件:db_gen.scr/*thisscriptreadsthevhdlfilesandgeneratesdbfiles*//*ddfsMODULE*/remove_design-designsanalyze-formatvhdl-libDEFAULT{source/froma.vhd,source/fromb.vhd,

source/croma.vhd,source/cromb.vhd,source/ddfs.vhd}>reports/analyze_elaborate.rptelaborateddfs-arch"ddfs"-libDEFAULT-update>>reports/analyze_elaborate.rptcurrent_designddfswrite-formatdb-hierarchy-outputunmapped/ddfs.db>>reports/analyze_elaborate.rptquit聲蛹哲榨具餐易驟癥芭任嫁沸繳蓉陜號(hào)妒蹦購(gòu)聚匿琵障公亡草勸啥瓷謊陵專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合86腳本方式(1)設(shè)計(jì)讀入/*thisscriptrea腳本方式(2)子模塊約束腳本文件:constraints.scrMAX_INPUT_LOAD=load_of(REF_LOAD)*2CLOCK_PERIOD=10/*thegoalis10ns*/CLOCK_UNCERTAINTY=0.4INPUT_DELAY=3.0OUTPUT_DELAY=3.0reset_designcreate_clock-periodCLOCK_PERIODfind(port,clk)set_dont_touch_networkfind(port,clk)set_clock_uncertaintyCLOCK_UNCERTAINTYfind(port,clk)set_input_delayINPUT_DELAY-max-clockclkall_inputs()-find(port,clk)set_output_delayOUTPUT_DELAY-max-clockclkall_outputs()set_operating_conditionsOPERATING_CONDITIONSset_wire_loadWIRE_LOAD_MODELset_driving_cell-lib_cellREF_DRIVER_CELL-pinREF_DRIVER_PINall_inputs()-find(port,clk)set_max_capacitanceMAX_INPUT_LOADall_inputs()-find(port,clk)set_loadMAX_INPUT_lOADall_outputs()扁肝姥特捂褒腫闖起感唁假稀許紅醉鋒損翁充刊稻溶乏戴沂踐湛口巳條禁專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合87腳本方式(2)子模塊約束腳本文件:constraints.腳本方式(3)頂層模塊約束腳本文件:constraints_ddfs.scrMAX_INPUT_LOAD=load_of(REF_LOAD)*2CLOCK_PERIOD=10/*thegoalis10ns*/CLOCK_UNCERTAINTY=0.4INPUT_DELAY=3.0OUTPUT_DELAY=3.0reset_designcreate_clock-periodCLOCK_PERIOD-name"clk_sys"find(port,clk)set_dont_touch_networkfind(port,{clk})set_clock_uncertaintyCLOCK_UNCERTAINTYfind(port,clk)set_input_delayINPUT_DELAY-max-clockclk_sysall_inputs()-find(port,{clk})set_output_delayOUTPUT_DELAY-max-clockclk_sysall_outputs()set_operating_conditionsOPERATING_CONDITIONSset_wire_loadWIRE_LOAD_MODEL/*set_driving_cell-lib_cellREF_DRIVER_CELL-pinREF_DRIVER_PINall_inputs()-find(port,clk)*//*set_max_capacitanceMAX_INPUT_LOADall_inputs()-find(port,clk)*/set_loadMAX_INPUT_lOADall_outputs()偉系怨聯(lián)撾瘁驅(qū)篆戌肆沼鷗辛廉蕪跋邪撲妖惡描暑迅頹燒塞庚岸稍勒屑將專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合88腳本方式(3)頂層模塊約束腳本文件:constraints腳本方式(4)邏輯綜合腳本文件:runit.scr/*Followingdirctoriesmustbemakedbeforeexcutingthisfile*/SOURCE_DIR="unmapped/"SCRIPT_DIR="scripts/"MAPPED_DIR="mapped/"REPORTS_DIR="reports/"SIMULATION_DIR="simulation/“/*Followingvariablesissetaccordingthespecifiedlibraryyouused*/OPERATING_CONDITIONS="TYPICAL"WIRE_LOAD_MODEL="0x150k"REF_DRIVER_PIN="YN"REF_DRIVER_CELL="ND02D1"REF_LOAD="csmc06core.db:csmc06core/IN01D1/A“remove_design-designsread-formatdbunmapped/ddfs.db覓胰烈堿丘也憶澇趣拇飽伙道鴨瀑輩勒蕉靠磚閨韭答決雕貞葦彩饑華撻骸專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合89腳本方式(4)邏輯綜合腳本文件:runit.scr/*F腳本方式(5)邏輯綜合腳本文件:runit.scr(cont’d)DESIGN_LIST={froma,fromb,croma,cromb}foreach(module,DESIGN_LIST){current_design=modulelinkincludeSCRIPT_DIR+constraints.scruniquifycompile-map_efforthighchange_names-ruleverilog-hierarchywrite-formatverilog-outputMAPPED_DIR+module+".v"-hierarchywrite_constraints-formatsdf-v2.1-max_path_timing-max_paths20-outputMAPPED_DIR+module+"_constraints.sdf"write_timing-formatsdf-v2.1-outputMAPPED_DIR+module+".sdf"write-formatdb-outputMAPPED_DIR+module+".db"-hierarchyreport_constraint-all_violators>REPORTS_DIR+module+".rpt"report_timing-delaymax-pathfull>>REPORTS_DIR+module+".rpt"}朽謂坎都踩止所探主躲使蘭憫閱瀕糠怕剖腸您剔搪鵝蚊鍵店言皆禾形宏貢專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合90腳本方式(5)邏輯綜合腳本文件:runit.scr(co腳本方式(6)邏輯綜合腳本文件:runit.scr(cont’d)current_designddfslinkincludeSCRIPT_DIR+constraints_ddfs.scrset_dont_touchfind(reference,{froma,fromb,croma,cromb})check_design/*compile*/change_names-ruleverilog-hierarchywrite-formatverilog-outputMAPPED_DIR+"ddfs.v"-hierarchywrite_constraints-formatsdf-v2.1-max_path_timing-max_paths20-output MAPPED_DIR+"ddfs_constraints.sdf"change_names-rulevhdl-hierarchywrite-formatvhdl-outputSIMULATION_DIR+"ddfs.vhd"-hierarchywrite_timing-formatsdf-outputSIMULATION_DIR+"ddfs.sdf"write-formatdb-outputMAPPED_DIR+"ddfs.db"-hierarchyreport_constraint-all_violators>REPORTS_DIR+"ddfs.rpt"report_timing-delaymax-pathfull>>REPORTS_DIR+"ddfs.rpt"quit板炭炕個(gè)賴啊膿滇翟缽污傀啊粉氦索澇絞呈注未寇帕俺將戒癱榔藉寂促拭專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合91腳本方式(6)邏輯綜合腳本文件:runit.scr(co專用集成電路設(shè)計(jì)方法

第4部分邏輯綜合2008-11-18貸翻寵涎偏過(guò)絆玫就淖酌肥囚小賈劣胞攤邪錢挫梳妝煎頃潮尿齡午糯貞羹專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合92專用集成電路設(shè)計(jì)方法

第4部分邏輯綜合貸翻寵涎偏過(guò)絆玫就內(nèi)容邏輯綜合概述綜合環(huán)境的設(shè)置DC綜合流程簡(jiǎn)介時(shí)序分析基礎(chǔ)邏輯綜合中的時(shí)序約束設(shè)計(jì)DC的使用方式雖芝蠢啦勇鹵托療譬酪霉愛(ài)凝咖讓噶冗盎富確曠話籃墜化神距娜填默至蒲專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合93內(nèi)容邏輯綜合概述雖芝蠢啦勇鹵托療譬酪霉愛(ài)凝咖讓噶冗盎富確曠話什么是邏輯綜合?定義:根據(jù)一個(gè)系統(tǒng)功能和性能的要求,在一個(gè)包含眾多結(jié)構(gòu)、功能、性能均為已知的邏輯元件的單元庫(kù)的支持下,尋找一個(gè)邏輯網(wǎng)絡(luò)結(jié)構(gòu)的最佳實(shí)現(xiàn)方案的設(shè)計(jì)方法。東千冒芳鹵敦嘴透轉(zhuǎn)翁土左敦橋蝸?zhàn)o(hù)借敖索檄桌勘碰琉澈答仟享崔賊頃劈專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合94什么是邏輯綜合?定義:根據(jù)一個(gè)系統(tǒng)功能和性能的要求,在一個(gè)包邏輯綜合的基本步驟(1)三個(gè)步驟:翻譯(Translation)優(yōu)化(Optimization)映射(Mapping)熒旱胰屁捷媚諸糠跺晃渴路植筏棒挪腥磺實(shí)總胎涅惹壹亨婉忙鞘盛慣掛彩專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合95邏輯綜合的基本步驟(1)三個(gè)步驟:熒旱胰屁捷媚諸糠跺晃渴路邏輯綜合的基本步驟(2)翻譯(Translation)把電路的HDL描述轉(zhuǎn)化為與工藝無(wú)關(guān)的功能塊組成的邏輯電路的過(guò)程讀入電路的RTL級(jí)描述,將語(yǔ)言翻譯成每條語(yǔ)句所對(duì)應(yīng)的功能塊以及功能塊之間的拓?fù)浣Y(jié)構(gòu)這一過(guò)程的結(jié)果是在綜合器內(nèi)部生成電路的布爾函數(shù)的表達(dá)式,不做任何的邏輯重組和優(yōu)化唇樸琵區(qū)蛙慰找燒錦狹多惕揚(yáng)誣擲斂拽呀芽魏躊雕還沫酷嬌彎簧慶蹄國(guó)制專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合96邏輯綜合的基本步驟(2)翻譯(Translation)唇邏輯綜合的基本步驟(3)優(yōu)化(Optimization)基于所施加的一定時(shí)序和面積的約束條件,綜合器按照一定的算法對(duì)轉(zhuǎn)譯結(jié)果作邏輯重組和優(yōu)化。映射(Mapping)根據(jù)所施加的一定的時(shí)序和面積的約束條件,綜合器從目標(biāo)工藝庫(kù)中搜索符合條件的單元來(lái)構(gòu)成實(shí)際電路這時(shí)得到的電路包含了具體的制造工藝參數(shù)。紛今絲撻緞郝硼輪價(jià)夠矮梁锨踏去碑彥抒贊力捉斗蠻予疆口銻咖膽郴揉揩專用集成電路設(shè)計(jì)方法講義4_邏輯綜合專用集成電路設(shè)計(jì)方法講義4_邏輯綜合97邏輯綜合的基本步驟(3)優(yōu)化(Optimization)綜合工具FPGA綜合Synplic

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論