DC綜合流程學(xué)習(xí)教案_第1頁(yè)
DC綜合流程學(xué)習(xí)教案_第2頁(yè)
DC綜合流程學(xué)習(xí)教案_第3頁(yè)
DC綜合流程學(xué)習(xí)教案_第4頁(yè)
DC綜合流程學(xué)習(xí)教案_第5頁(yè)
已閱讀5頁(yè),還剩17頁(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)介

1、會(huì)計(jì)學(xué)1DC綜合流程綜合流程第一頁(yè),編輯于星期六:五點(diǎn) 四十一分。綜合概述技術(shù)庫(kù)概述綜合基本步驟提綱第1頁(yè)/共22頁(yè)第二頁(yè),編輯于星期六:五點(diǎn) 四十一分。 邏輯綜合:決定設(shè)計(jì)電路邏輯門的相互連接。 邏輯綜合的目的:決定電路門級(jí)結(jié)構(gòu)、尋求時(shí)序和與面積的平衡、尋求功 耗與時(shí)序的平衡、增強(qiáng)電路的測(cè)試性。 邏輯綜合的過(guò)程:Translation 、map 、optimization Translation是指把設(shè)計(jì)的HDL描述轉(zhuǎn)化為GTECH庫(kù)元件組成的邏輯電路 Mapping是指將GTECH庫(kù)元件映射到某一特定的半導(dǎo)體工藝庫(kù)上,此時(shí) 的電路網(wǎng)表包含了相關(guān)的工藝參數(shù) Optimization是根據(jù)設(shè)計(jì)

2、者設(shè)定的時(shí)延、面積、線負(fù)載模型等綜合約束條 件對(duì)電路網(wǎng)表進(jìn)一步優(yōu)化的過(guò)程第2頁(yè)/共22頁(yè)第三頁(yè),編輯于星期六:五點(diǎn) 四十一分。綜合庫(kù)中定義了operation condition、wire_load model、Gate(輸入輸出,功能,時(shí)序參數(shù),面積等等);operating_conditions(typical) process: 1; temperature: 25; voltage: 1.8; tree_type: balanced_tree wire_load(smic18_wl10) resistance: 8.5e-8; capacitance: 1.5e-4; area: 0.

3、7; slope: 66.667; fanout_length(1,66.667); 第3頁(yè)/共22頁(yè)第四頁(yè),編輯于星期六:五點(diǎn) 四十一分。 第4頁(yè)/共22頁(yè)第五頁(yè),編輯于星期六:五點(diǎn) 四十一分。源文件的準(zhǔn)備主要是檢查rtl的書寫規(guī)范,時(shí)鐘域劃分是否合理,一般有專業(yè)的工具進(jìn)行檢查第5頁(yè)/共22頁(yè)第六頁(yè),編輯于星期六:五點(diǎn) 四十一分。 目標(biāo)庫(kù)設(shè)定使用target_library和link_library變量來(lái)指定符號(hào)庫(kù)。 符號(hào)庫(kù)設(shè)定使用symbol_library變量來(lái)指定符號(hào)庫(kù)。target_library:synthetic_library:綜合庫(kù),它包含了一些可綜合的與工藝無(wú)關(guān)的IP。li

4、nk_library:鏈接庫(kù),DC不使用該庫(kù)中的cells進(jìn)行映射,它是DC在讀入綜合后網(wǎng)表時(shí)用來(lái)參考的庫(kù),RAM,ROM,PAD,macros都應(yīng)包含在這個(gè)庫(kù),目標(biāo)庫(kù)和綜合庫(kù)也必須包含在其中。 symbol_library:指定的符號(hào)庫(kù),使用GUI時(shí)會(huì)調(diào)用。search_path:指明庫(kù)文件的位置,這樣在添加上面的庫(kù)時(shí)就不用寫絕對(duì)路徑。 set target_library typical.db sp018N.db“第6頁(yè)/共22頁(yè)第七頁(yè),編輯于星期六:五點(diǎn) 四十一分。read與analyze&elaborate都可以用來(lái)讀入RTL代碼。推薦使用analyze&elabora

5、teanalyze&elaborate允許設(shè)計(jì)者在設(shè)計(jì)的GTECH建立之前,首先去分析設(shè)計(jì)的語(yǔ)法錯(cuò)誤和進(jìn)行HDL代碼轉(zhuǎn)換。GTECH由“soft macros” 比如adders, comparators等組成,這些組件來(lái)自synopsys 的synthetic lib,每種組件具有多種結(jié)構(gòu)。 Analyze做語(yǔ)法的檢查并產(chǎn)生一個(gè)“.syn”文件,存儲(chǔ)于work路徑下的定義的設(shè)計(jì)庫(kù)內(nèi),可供后來(lái)elaborate使用。對(duì)于一個(gè)analyzed過(guò)的設(shè)計(jì),只需用elaborate重新輸入,節(jié)省時(shí)間。Read就不行。以下是兩個(gè)命令的比較: 類別 analyze&elaborate re

6、ad 格式 verilog 或VHDLverilog 、VHDL、EDIF、db等所有格式 用途綜合verilog 或VHDL的RTL設(shè)計(jì)讀網(wǎng)表,設(shè)計(jì)預(yù)編譯 設(shè)計(jì)庫(kù)用-library選項(xiàng)定義設(shè)計(jì)庫(kù)名,存儲(chǔ)“.syn”文件用缺省的設(shè)置,不能存儲(chǔ)中間結(jié)果Generics(vhdl)可以對(duì)parameter進(jìn)行操作不能對(duì)parameter進(jìn)行操作Architecture(vhdl)可以進(jìn)行結(jié)構(gòu)化的操作不可用第7頁(yè)/共22頁(yè)第八頁(yè),編輯于星期六:五點(diǎn) 四十一分。設(shè)計(jì)環(huán)境包括operating condition、wire load和system interface三部分第8頁(yè)/共22頁(yè)第九頁(yè),編輯于星

7、期六:五點(diǎn) 四十一分。1、operating condition operating condition包括工作溫度、工作電壓、制造工藝,通過(guò)命令set_operating_condition來(lái)設(shè)定 命令set_operating_conditions min BEST max WORST用于指示DC對(duì)WORST和BEST條件,同時(shí)優(yōu)化。WORST用于對(duì)setup-time進(jìn)行優(yōu)化,BEST用于對(duì)hold-time進(jìn)行優(yōu)化,當(dāng)BEST和WORST都滿足時(shí),TYPICAL也就可以滿足。 例:set_operating_conditions -min fast_1v32cm40 -max slow

8、_1v08c125 通過(guò)命令report_lib lib_name查看使用的庫(kù)信息。第9頁(yè)/共22頁(yè)第十頁(yè),編輯于星期六:五點(diǎn) 四十一分。2、wire load set_wire_load_model 用于設(shè)置線負(fù)載模型估計(jì)連線負(fù)載,線負(fù)載模型是根據(jù)cell的扇出數(shù)查表得到線長(zhǎng),再用線長(zhǎng)乘以單位線長(zhǎng)的電阻和電容值得到的負(fù)載電阻電容值的,第10頁(yè)/共22頁(yè)第十一頁(yè),編輯于星期六:五點(diǎn) 四十一分。2、wire load set_wire_load_mode 三種模式top、enclosed、segmentedtop:所有層次子模塊的wire_load和top-level相同,綜合策略為top-do

9、wn可選擇此模式編譯子模塊。enclosed:子模塊net的wire_load和enclosed 它的最小模塊相同,推薦用于在layout后logical and physical hierarchy相似的設(shè)計(jì);segmented:子模塊之間net的wire_load和enclosed該net的模塊相同,需技術(shù)庫(kù)提供segmented wire_load,一般用于跨層次的net;第11頁(yè)/共22頁(yè)第十二頁(yè),編輯于星期六:五點(diǎn) 四十一分。2、wire load 對(duì)于wire load mode三種模式示意圖第12頁(yè)/共22頁(yè)第十三頁(yè),編輯于星期六:五點(diǎn) 四十一分。3、system interfa

10、ceset_drive:用來(lái)指定input port的驅(qū)動(dòng)強(qiáng)度,它指定的是一個(gè)阻抗值,用來(lái)計(jì)算從這個(gè)port到被它驅(qū)動(dòng)的cell之間的路徑延時(shí),0表示最大驅(qū)動(dòng),通常用于clock ports。 例:set_drive 0 $PROCLKset_driving_cell:用來(lái)模擬驅(qū)動(dòng)input port的cell的驅(qū)動(dòng)阻抗,用于計(jì)算輸入信號(hào)的transition time做DRC的檢查,一般在分模塊綜合時(shí)使用,頂層則設(shè)置為PAD或用buffer隔離。 例:set_driving_cell -lib_cell DFFRX2 -no_design_rule get_ports RX_DDC_PDC_

11、SDAT_16B 選項(xiàng)-no_design_rule是指DFFRX2自身的DRC檢查不做。set_load:用于定義net或port的電容負(fù)載,保證輸出路徑的時(shí)序,主要用input port和output port,在頂層則設(shè)置為PAD的電容值或用buffer隔離,在庫(kù)中獲得。第13頁(yè)/共22頁(yè)第十四頁(yè),編輯于星期六:五點(diǎn) 四十一分。綜合策略包括top-down和bottom-up綜合策略Top-down綜合策略優(yōu)點(diǎn): 1、僅需top_level的約束; 2、將整個(gè)設(shè)計(jì)作為整體優(yōu)化,可獲得較好的結(jié)果; Top-down綜合策略缺點(diǎn) 1、編譯時(shí)間長(zhǎng); 2、子模塊的改變需要整個(gè)設(shè)計(jì)在綜合; 3、如

12、果設(shè)計(jì)包含多個(gè)時(shí)鐘或生成時(shí)鐘邏輯,則不能很好執(zhí)行。Bottom-up綜合策略的優(yōu)點(diǎn): 1、每一個(gè)子模塊都由自己的Scripts文件,便于管理; 2、子模塊的改變不需要整個(gè)設(shè)計(jì)全部重新綜合; 3、不需要關(guān)心設(shè)計(jì)類型,如:多時(shí)鐘或產(chǎn)生時(shí)鐘; 4、一般來(lái)說(shuō),可獲得好的結(jié)果; Bottom-up綜合策略的缺點(diǎn) 1、需要更新維護(hù)多個(gè)scripts; 2、Top的關(guān)鍵路徑也許在子模塊并非關(guān)鍵路徑; 3、需要incrementally編譯。第14頁(yè)/共22頁(yè)第十五頁(yè),編輯于星期六:五點(diǎn) 四十一分。設(shè)計(jì)約束包括rule constraints和optimization constraints兩種rule co

13、ntraints: 1、set_max_transition: 2、set_fanout_load:對(duì)design,net,output port進(jìn)行操作,設(shè)定的不是具體的電容值 3、set_max_capacitance:定義輸出管腳可以驅(qū)動(dòng)的最大電容值optimization contraints: 1、create_clock:用于定義時(shí)鐘的周期和波形 2、set_input_delay:定義信號(hào)相對(duì)于時(shí)鐘的到達(dá)時(shí)間 3、set_output_delay:定義從輸出端口數(shù)據(jù)不可用開始距離后一個(gè)時(shí)鐘沿的時(shí)間第15頁(yè)/共22頁(yè)第十六頁(yè),編輯于星期六:五點(diǎn) 四十一分。1、多次使用同一模塊進(jìn)行綜

14、合時(shí),有兩種方法解決同一模塊多次使用的問(wèn)題:uniquify方法與compile-once-dont-touch方法。 Uniquify方法操作步驟: 1、uniquify設(shè)計(jì); 2、compile設(shè)計(jì)。 dc_shell current_design top dc_shell uniquify dc_shell compile 第16頁(yè)/共22頁(yè)第十七頁(yè),編輯于星期六:五點(diǎn) 四十一分。1、 compile-once-dont-touch方法操作步驟: 1、charactirize 環(huán)境最差的一個(gè)子模塊; 2、在此環(huán)境下綜合此模塊; 3、使用set_donot_touch命令設(shè)置所有的此模塊例

15、化得模塊; 4、綜合;dc_shell current_design topdc_shell characterize U2/U3dc_shell current_design Cdc_shell compiledc_shell current_design topdc_shell set_dont_touch U2/U3 U2/U4dc_shell compile 第17頁(yè)/共22頁(yè)第十八頁(yè),編輯于星期六:五點(diǎn) 四十一分。2、綜合 利用compiler命令啟動(dòng)Design Compiler的綜合和優(yōu)化進(jìn)程,有幾個(gè)可選的編譯選項(xiàng)。特別的map_effort選項(xiàng)可以設(shè)置為low、mediu或hi

16、gh。 初步編譯,如果你想對(duì)設(shè)計(jì)面積和性能有一個(gè)快速的概念,將map_effort設(shè)置為low;默認(rèn)編譯,如果你在進(jìn)行設(shè)計(jì)開發(fā),將map_effort設(shè)置為medium;當(dāng)在進(jìn)行最后設(shè)計(jì)實(shí)現(xiàn)編譯時(shí),將map_effort設(shè)置為high。通常設(shè)置map_effort為medium。 Compile -map_effort low/medium/high 第18頁(yè)/共22頁(yè)第十九頁(yè),編輯于星期六:五點(diǎn) 四十一分。 通常Design Compiler根據(jù)設(shè)計(jì)綜合和優(yōu)化的結(jié)果生成眾多的報(bào)告。根據(jù)諸如面積、約束和時(shí)序報(bào)告來(lái)分析和解決任何設(shè)計(jì)問(wèn)題,或者改進(jìn)綜合結(jié)果。 需要的報(bào)告: report_design:報(bào)告用戶的綜合環(huán)境,包括operating condition、wire load report_constraint:用戶定義的constraint report_timing -nworts num :所有路徑中最差的路徑。 第19頁(yè)/共22頁(yè)第二十頁(yè),編輯于星期六:五點(diǎn) 四十一分。利用write命令來(lái)保存綜合過(guò)的設(shè)計(jì),Design Compiler在

溫馨提示

  • 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)論