![數(shù)字電路自動(dòng)化設(shè)計(jì) PPT課件_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/9/42fb475e-81dc-4b1d-9776-77d2f06fbd4e/42fb475e-81dc-4b1d-9776-77d2f06fbd4e1.gif)
![數(shù)字電路自動(dòng)化設(shè)計(jì) PPT課件_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/9/42fb475e-81dc-4b1d-9776-77d2f06fbd4e/42fb475e-81dc-4b1d-9776-77d2f06fbd4e2.gif)
![數(shù)字電路自動(dòng)化設(shè)計(jì) PPT課件_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/9/42fb475e-81dc-4b1d-9776-77d2f06fbd4e/42fb475e-81dc-4b1d-9776-77d2f06fbd4e3.gif)
![數(shù)字電路自動(dòng)化設(shè)計(jì) PPT課件_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/9/42fb475e-81dc-4b1d-9776-77d2f06fbd4e/42fb475e-81dc-4b1d-9776-77d2f06fbd4e4.gif)
![數(shù)字電路自動(dòng)化設(shè)計(jì) PPT課件_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-4/9/42fb475e-81dc-4b1d-9776-77d2f06fbd4e/42fb475e-81dc-4b1d-9776-77d2f06fbd4e5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、1,數(shù)字電路自動(dòng)化設(shè)計(jì),2,Design Flow,LEDA VCS DC, ISE FM PT ICC, Astro PrimeRail DFT Compiler StarRC Virtuoso, Cadence,3,綜合的定義,邏輯綜合:決定設(shè)計(jì)電路邏輯門的相互連接。 邏輯綜合的目的:決定電路門級結(jié)構(gòu)、尋求時(shí)序和與面積的平衡、尋求功耗與時(shí)序的平衡、增強(qiáng)電路的測試性。 邏輯綜合的過程:首先,綜合工具分析HDL代碼,用一種模型(GTECH) ,對HDL進(jìn)行映射,這個(gè)模型是與技術(shù)庫無關(guān)的;然后,在設(shè)計(jì)者的控制下,對這個(gè)模型進(jìn)行邏輯優(yōu)化;最后一步,進(jìn)行邏輯映射和門級優(yōu)化,將邏輯根據(jù)約束,映射為專門
2、的技術(shù)目標(biāo)單元庫(target cell library)中的cell,形成了綜合后的網(wǎng)表。,4,ASIC design flow,Verified RTL,Design Constraints,IP and Library Models,Logic Synthesis optimization designer =“name”; technology=“0.25 micron” search_path=search_path+“.” “/usr/golden/library/std_cells” “/usr/golden /library/pads” target_library =std_
3、cells_lib.db link_library =“*”,std_cells_lib.db,pad_lib.db symbol_library =std_cells.sdb,pad_lib.sdb,7,ASIC design flow,Synthesis:利用約束完成設(shè)計(jì)的門及實(shí)現(xiàn)及掃描插入 Constrain scripts /* Create real clock if clock port is found */ if (find(port, clk) = clk) clk_name = clk create_clock -period clk_period clk /* Creat
4、e virtual clock if clock port is not found */ if (find(port, clk) = ) clk_name = vclk create_clock -period clk_period -name vclk ,8,ASIC design flow,Constrain scripts(續(xù)) /* Apply default drive strengths and typical loads for I/O ports */ set_load 1.5 all_outputs() set_driving_cell -cell IV all_input
5、s() /* If real clock, set infinite drive strength */ if (find(port, clk) = clk) set_drive 0 clk /* Apply default timing constraints for modules */ set_input_delay 1.2 all_inputs() -clock clk_name set_output_delay 1.5 all_outputs() -clock clk_name set_clock_skew -minus_uncertainty 0.45 clk_name /* Se
6、t operating conditions */ set_operating_conditions WCCOM /* Turn on Auto Wireload selection Library must support this feature */ auto_wire_load_selection = true,9,ASIC design flow,Compile and scan insert的scripts,采用bottom_up的編譯方法 set_fix_multiple_port_net buffer_constants all compile scan check_test
7、create_test_pattern sample 10 preview_scan insert_scan check_test 如果模塊內(nèi)的子模塊具有dont_touch 屬性需添加如下命令,因要插入掃描 remove_attribute find(-hierarchy design,”*”)dont_touch Write netlist remove_unconnected_ports find(-hierarchy cell,”*”) change_names hierarchy rules BORG set_dont_touch current_design write herar
8、chy output active_design+”.db” write format verilog hierarchy output active_design+”.sv”,10,ASIC design flow,Pre_layout 的 STA :用DC的靜態(tài)時(shí)序分析引擎做block的STA,用PrimeTime做full_chip的STA。 Setup_time分析 Hold_time分析 其時(shí)序約束和提供給DC做邏輯綜合的約束相同。靜態(tài)時(shí)序分析同綜合一樣,是一個(gè)迭代的過程,和cell的位置及布線關(guān)系密切,通常都執(zhí)行多次,直到滿足需要。,11,ASIC design flow,SDF
9、generation,pre_layout的SDF文件,用于pre_layout timing仿真,同時(shí)還需提供時(shí)序約束文件(SDF格式)給layout tool做布局布線。script文件如下: active_design=tap_controller read active_design current_design active_design link Create_clock period 33 waveform 0 16.5 tck Set_dont_touch_network tck trst set_clock_skew delay 2.0 minus_uncertainty 3
10、.0 tck set_driving_cell cell BUFF1X pin Z all_inputs() set_drive 0 tck trst set_input_delay 20.0 clock tck max all_inputs() set_output_delay 10.0 clock tck max all_outputs() write_timing format sdf-v2.1 -output active_design+”.sdf” write_constraints format sdf cover_design -output constraints.sdf,12
11、,ASIC design flow,Verification 利用SDF文件進(jìn)行動(dòng)態(tài)時(shí)序仿真:利用功能仿真時(shí)。用verilog 編寫的test_bench 文件 形式驗(yàn)證:利用數(shù)學(xué)算法檢查設(shè)計(jì)的邏輯的等效性,靜態(tài)驗(yàn)證,需要的時(shí)間比動(dòng)態(tài)仿真少,驗(yàn)證全面。在這里驗(yàn)證RTL描述與gate_level網(wǎng)表的邏輯等效性。 Floorolanning and global Routing; Estimated 寄生電容和RC delay的抽??; 利用抽取的參數(shù)靜態(tài)時(shí)序分析,若時(shí)序不滿足要求,生成custom wire_load 做incremental synthesis即post_layout的優(yōu)化,采
12、用reoptimize_design in_place命令,其script文件需反標(biāo)抽取的參數(shù)到設(shè)計(jì); Detail routing; real寄生電容和RC delay的抽??; 利用抽取的參數(shù)靜態(tài)時(shí)序分析,修正hold_time如需要做post_layout的優(yōu)化; 生成post_layout的SDF文件,做gate_level仿真驗(yàn)證;,13,ASIC design flow,ECO Engineering change order,不屬于正常的ASIC流程,一般只有在ASIC設(shè)計(jì)的后期,需要改變網(wǎng)表,可利用ECO,例如,在tape-out(sign-off)以后,遇見設(shè)計(jì)的硬件bug。采
13、用ECO可僅對設(shè)計(jì)的一小部分重新布線不影響chip其他部分的位置及時(shí)序,通常,修改不能大于10%。 最新版本的DC提供由ECO compiler, 可使設(shè)計(jì)者手工修改網(wǎng)表,節(jié)省時(shí)間。 一些layout工具也具有ECO功能。,14,DC介紹,Synopsys Design Compiler,是一個(gè)基于UNIX系統(tǒng),通過命令行進(jìn)行交互的綜合工具,除了綜合之外,它還含有一個(gè)靜態(tài)時(shí)序分析引擎及FPGA和LTL(links-to-layout)的解決方案。我們就以下幾個(gè)方面對DC做以介紹: script文件:由DC的命令構(gòu)成,可使DC自動(dòng)完成綜合的整個(gè)過程。 DC支持的對象、變量、屬性 DC支持的文件格
14、式及類型 DC在HDL代碼中的編譯開關(guān),控制綜合過程 Translate_off/translate_on:指示DC終止或開始verilog 源代碼轉(zhuǎn)換的位置。 full_case:阻止case語句在不完全條件下生成latch。,15,綜合環(huán)境建立,在綜合之前必須用setup文件配置綜合的環(huán)境,下面,我們就以下幾個(gè)方面對setup文件進(jìn)行介紹: setup文件的位置 setup文件的內(nèi)容 setup文件舉例,16,綜合環(huán)境建立,setup文件的位置: 由一個(gè)setup文件提供,文件名必須為“.synopsys_dc.setup”,通過向相關(guān)環(huán)境變量賦值,定義技術(shù)庫的位置及綜合需要參數(shù)。 set
15、up文件的位置如下: Synopsys installation directory:它用于卸載Synopsys 技術(shù)獨(dú)立庫及別的參數(shù),不包含設(shè)計(jì)相關(guān)的數(shù)據(jù)。 Users home director:用的setup信息。 Project working directory:設(shè)計(jì)的setup信息 DC按以上順序依次讀取setup文件,最后一個(gè)讀取的setup文件將覆蓋前面讀取的setup文件。 將設(shè)計(jì)相關(guān)的startup文件放于Project working directory下。,17,綜合環(huán)境建立,Startup文件必須定義如下變量: Search_path:指明庫文件的位置 Target_
16、library:既技術(shù)庫,由生產(chǎn)廠家提供,該庫中的cells,被 DC用于邏輯映射。 Target library的文件名應(yīng)包含在Link library的文件清單中,用于DC讀取門級網(wǎng)表。 Link_ library:該庫中的cells,DC無法進(jìn)行映射,例如:RAM,ROM及Pad,在RTL設(shè)計(jì)中,這些cells以實(shí)例化的方式引用。 Symbol_library:該庫文件包含技術(shù)庫中cells的圖形表示,用于DA生成門級示意圖。 Target_library和Link _library為設(shè)計(jì)者提供了將門級網(wǎng)表從一種技術(shù)在映射 到另一種技術(shù)的方法,將舊的Target library文件名包含
17、在Link_library的文件清單中,而Target_library包含新的Target library文件名,利用translate命令實(shí)現(xiàn)。,18,綜合環(huán)境建立,設(shè)計(jì)相關(guān)的startup 文件的例子: .synopsys_dc.setup 文件 company =“zte corporation”; designer =“name”; technology=“0.25 micron” search_path=search_path+“.” “/usr/golden/library/std_cells” “/usr/golden /library/pads” target_library
18、=std_cells_lib.db link_library =“*”,std_cells_lib.db,pad_lib.db symbol_library =std_cells.sdb,pad_lib.sdb 其它的環(huán)境變量的設(shè)置參看DC的操作手冊。,19,邏輯綜合的過程,DC通過Script文件,自動(dòng)完成模塊的綜合過程,其內(nèi)容如下: RTL design entry Environment constraints Design and clock constraints Compile design into mapped gates Optimizing design analyze t
19、he synthesis results and debug potential problems. Save design netlist Report constraints (Optional) Apply critical path constraints (Optional) Second compile to improve critical paths (Optional) Second path compile constraint report,20,Environment constraints,功能:定義設(shè)計(jì)的工藝參數(shù),I/O端口屬性,統(tǒng)計(jì)wire-load模型。下圖解釋
20、了描述設(shè)計(jì)環(huán)境約束的DC命令:,Top level,21,Environment constraints,Set_operating_conditions 用于描述操作條件:process,voltage,temperature, cell和wire 的delay和操作條件呈線性關(guān)系。如: Set_operating_conditions WORST(或TYPICAL、BEST) 命令set_operating_conditions min BEST max WORST 用于指示DC對設(shè)計(jì)的WORST和BEST條件,同時(shí)優(yōu)化。,22,Environment constraints,Set_wi
21、re_load -mode 向DC提供wire_load信息,通常技術(shù)庫里包含許多負(fù)載模型,每一種wire-load模型都代表一定模塊的尺寸,模擬模塊內(nèi)部nets的delay,用戶也可以創(chuàng)建自己的wire_load模型去模擬各設(shè)計(jì)模塊的net loading。這有三種wire-load mode:top,enclosed,segmented,用于模擬各設(shè)計(jì)層次的net wire_load的關(guān)系。 Top:所有層次子模塊的wire_load和top-level相同,如果用戶計(jì)劃flatten設(shè)計(jì)去layout可選擇此模式編譯子模塊; Enclosed:子模塊net的wire_load和enclo
22、sed 它的最小模塊相同,推薦用于在layout后logical and physical hierarchy相似的設(shè)計(jì); Segmented:子模塊之間net的wire_load和enclosed該net的模塊相同,需技術(shù)庫提供Segmented wire_load,一般不常用; wire_load模型的選擇很重要,太悲觀或太樂觀的模型都將產(chǎn)生綜合的迭帶,在 pre-layout的綜合中應(yīng)選用悲觀的模型。命令格式如下: dc_shellset_wire_load MEDIUM mode top,23,Environment constraints,24,Environment constra
23、ints,Set_load 定義nets或ports的電容負(fù)載,為了保證輸出路徑的時(shí)序,例如:,25,Environment constraints,Set_drive :主要用于模塊的input port,0表是最大的驅(qū)動(dòng)強(qiáng)度通常用于clock port,例如:set_drive 0 CLK RST。 set_driving_cell -cell -pin :模擬input port驅(qū)動(dòng)cell的驅(qū)動(dòng)阻抗,為了保證輸出路徑的時(shí)序,確定輸入信號的transition time例如:,26,Environment constraints,Set_min_library -min_version
24、允許用戶同時(shí)設(shè)置worst-case和best-case libraries,從而在初步編譯時(shí),DC修正hold-time沖突時(shí),驗(yàn)證setup-time沖突。也可用于在編譯時(shí)修正hold-time沖突。 DRC的設(shè)計(jì)規(guī)則約束:set_max_transition set_max_capacitance set_max_fanout 這些約束用于的input ports,output ports或current_design,一般在技術(shù)庫內(nèi)部設(shè)置.當(dāng)技術(shù)庫的內(nèi)部設(shè)置不能滿足時(shí),可用以上命令設(shè)置。例如; set_max_transition 0.3 current_design set_max_
25、capacitance 1.5 find(port,”out1”) set_max_fanout 3.0 all_outputs(),27,design and clock constraints,功能:描述設(shè)計(jì)的目標(biāo),包括時(shí)序和面積約束,要注意約束必須是可實(shí)現(xiàn)的,否則會(huì)導(dǎo)致面積超額,功耗增加或時(shí)序不能滿足要求。設(shè)計(jì)約束的DC命令如下:,set_output_delay on output,28,design and clock constraints,主要包括兩點(diǎn) 約束綜合模塊的最大面積( set_max_area ) 約束綜合模塊timing path(Create_clock, Set_
26、input_delay, Set_output_delay),29,design and clock constraints,時(shí)鐘描述 時(shí)鐘的描述在設(shè)計(jì)中很關(guān)鍵,傳統(tǒng)上,在clock source 加很大的buffer去驅(qū)動(dòng)整個(gè)時(shí)鐘網(wǎng)絡(luò),布線時(shí),使時(shí)鐘網(wǎng)絡(luò)成魚骨狀,用于減少時(shí)鐘網(wǎng)絡(luò)延時(shí)和clock_skew。對于VDSM,傳統(tǒng)的方法已不適用,而是由layout工具根據(jù)cell的位置綜合時(shí)鐘樹,以滿足我們對時(shí)鐘的需求。下面,我們介紹一下描述時(shí)鐘的DC命令。 時(shí)鐘DC命令介紹 Create_clock:用于定義時(shí)鐘的周期和波形(duty及起始沿); 例如:create_clock period 4
27、0 waveform0 20 CLK周期40ns 上升沿0 ns,下降沿20 ns; 對于僅包含組合邏輯的模塊,為了定義該模塊的延時(shí)約束,需創(chuàng)造一個(gè)虛擬時(shí)鐘定義相對于虛擬時(shí)鐘的輸入輸出延時(shí)。例如: create_clock -name vTEMP_CLK -period 20 Set_clock_transition:在pre_layout必須設(shè)置一個(gè)固定的transition值(由技術(shù)庫提供),因?yàn)闀r(shí)鐘網(wǎng)有很大的fanout.這樣可使DC根據(jù)該時(shí)鐘計(jì)算實(shí)際的延時(shí)值。,30,design and clock constraints,Set_clock_skew:設(shè)置時(shí)鐘的skew及delay,
28、pre_layout 和post_layout命令選項(xiàng)不一樣。-propagated選項(xiàng)讓DC計(jì)算時(shí)鐘的skew。,31,design and clock constraints,例如:Set_clock_skew uncertainty 0.5 CLK,32,design and clock constraints,Pre-layout時(shí)鐘DC 命令介紹: 估計(jì)時(shí)鐘樹的延時(shí)和抖動(dòng),DC命令如下: create_clock period 40 waveform 0 20 CLK Set_clock_skew delay 2.5 uncertainty 0.5 CLK Set_clock_tra
29、nsition 0.2 CLK set_dont_touch_network CLK set_drive 0 CLK 考慮到layout后時(shí)鐘網(wǎng)絡(luò)的變化可若下設(shè)置時(shí)鐘skew: set_clock_skew delay 2.5 minus_uncertainty 2.0 plus_uncertainty 0.2 CLK minus_uncertainty用于setup-time的計(jì)算, plus_uncertainty 用于hole-time的計(jì)算. 一個(gè)cell的delay使根據(jù)input signal的斜率和output pin的電容負(fù)載決定,對于時(shí)鐘信號,因?yàn)閏lock network的
30、fanout 很大,從而造成clock network 末端門的時(shí)鐘信號的clock transition time很慢,使DC計(jì)算的門延時(shí)失真。,33,design and clock constraints,post-layout時(shí)鐘DC命令介紹: 這個(gè)階段,用戶不需定義時(shí)鐘的延時(shí)和抖動(dòng),他們由時(shí)鐘樹決定。 clock transition time也不需定義。如果layout 工具提供與DC的直接接口,則直接將包含有時(shí)鐘樹的網(wǎng)表回饋給DC,不需在script文件中對時(shí)鐘的延時(shí)和抖動(dòng)進(jìn)行描述,如果layout 工具不能實(shí)現(xiàn)此功能,則需用戶從layout 工具提取時(shí)鐘的延時(shí)和抖動(dòng)信息,描述命
31、令同pre_layout.如果含有時(shí)鐘樹的網(wǎng)表能夠移植到DC,則clock的命令描述如下: create_clock period 40 waveform 0 20 CLK set_clock_skew propagated minus_uncertainty 2.0 plus_uncertainty 0.2 CLK set_dont_touch_network CLK set_drive 0 CLK 另外,很小的clock uncertainty定義的目的是考慮process的變化。 如果無法得到包含有時(shí)鐘樹的網(wǎng)表,只有SDF文件,則對原網(wǎng)表只需定義時(shí)鐘,并將SDF 文件回饋給原網(wǎng)表,時(shí)鐘的
32、延時(shí)和抖動(dòng)由SDF文件決定。,34,design and clock constraints,生成時(shí)鐘DC命令介紹: 對于內(nèi)部產(chǎn)生時(shí)鐘的模塊,如內(nèi)部含有分頻邏輯,DC不能模擬時(shí)鐘產(chǎn)生模塊創(chuàng)造一個(gè)時(shí)鐘對象。如下圖:DC創(chuàng)造時(shí)鐘命令應(yīng)用于頂層輸入CLK,因clkB 繼承自CLK,所以Block B的時(shí)鐘來自CLK,對clkA,因CLK被clk_div 內(nèi)部的寄存器隔離,不能傳遞給clkA,所以clkA 這個(gè)時(shí)鐘對象應(yīng)在clk _div的output port定義,命令如下: dc_shellcreate_clock period 40 waveform 0 20 CLK dc_shellcreat
33、e_clock period 80 waveform 0 40 find(port,”clk_div/clkA”),Clk_div,clkB,Block A,Block B,CLK,clkA,35,design and clock constraints,輸入路徑DC命令介紹: Set_input_delay:定義信號相對于時(shí)鐘的到達(dá)時(shí)間。指一個(gè)信號,在時(shí)鐘沿之后多少時(shí)間到達(dá)。 例如:set_input_delay max 23.0 clock CLK dataout set_input_delay min 0.0 clock CLK dataout ,36,design and clock
34、constraints,輸出路徑DC命令介紹: Set_output_delay:定義從輸出端口數(shù)據(jù)不可用開始距后一個(gè)時(shí)鐘沿的時(shí)間:既時(shí)鐘周期間去cell從上一個(gè)時(shí)鐘沿開始的工作時(shí)間。 如:set_output_delay max 19.0 clock CLK dataout 用該命令對一些信號進(jìn)行over-constrain,從而獲得最大 setup-time.但可能導(dǎo)致面積和功耗的增加。一個(gè)負(fù)值(如:-0.5)可在layout后,被 in-place optimization用于為hold_time修正提供timing margin.,37,design and clock constra
35、ints,其它設(shè)計(jì)DC命令介紹: Set_dont_touch_network,常用于port或net阻止DC隔離該net,和該net向連的門具有dont_touch屬性。常用于CLK和RST 例如:Set_dont_touch_networkCLK,RST 。 當(dāng)一個(gè)模塊例用原始的時(shí)鐘作為輸入,在該模塊內(nèi)部利用分頻邏輯產(chǎn)生了二級時(shí)鐘,則應(yīng)對二級時(shí)鐘output port上設(shè)置set_dont_touch_network. 當(dāng)一個(gè)電路包含門時(shí)鐘邏輯時(shí),若在時(shí)鐘的輸入設(shè)置set_dont_touch_network,則阻止DC 隔離該門邏輯,導(dǎo)致DRC發(fā)現(xiàn)時(shí)鐘信號沖突,對門RESET同樣。 Se
36、t_dont_touch,應(yīng)用于current_design,cell,net,references.阻止DC對模塊中的這些元素進(jìn)行技術(shù)映射。 例如: Set_dont_touch find(cell,”sub1”) Set_dont_use:用于.setup文件用此命令可將技術(shù)庫中的某些cell濾出,禁止DC映射; 例如: Set_dont_use mylib/SD*,將技術(shù)庫中名字以SD起頭的flip-flops.,38,Advanced constraints,Path:每一條路徑都由startpoint 和endpoint statrpoint:input ports 或時(shí)序cell的
37、clock pins; endpoint: output ports或時(shí)序cell的data pins; Path_delay,39,Advanced constraints,Set_false_path: 指示DC不要對指定的路徑按照時(shí)序約束優(yōu)化,如:異步路徑或約束不可實(shí)現(xiàn)的路徑。false path路徑的鑒別在設(shè)計(jì)中很關(guān)鍵,如果不對false path路徑進(jìn)行標(biāo)識,DC會(huì)對所有的路徑進(jìn)行優(yōu)化,從而影響關(guān)鍵時(shí)序路徑。此命令用于當(dāng)因?yàn)橛衒alse path關(guān)鍵邏輯時(shí)序靜態(tài)分析失敗時(shí)。 例1,在clock 域之間的false path: set_false_path -from get_cloc
38、k CLKA -to get_clock CLKB,40,Advanced constraints,例2,logic的false path: dc_shellset_false_path through mux1/A through mux2/A dc_shell set_false_path through mux1/B through mux2/B,41,Advanced constraints,例3,對含有tristates 的path,DC總是認(rèn)為tristates 時(shí)能,會(huì)產(chǎn)生false path,如下圖,讀寫不可能在同一個(gè)周期:,42,Advanced constraints,例3
39、,我們推薦將tristates 最好移致頂層,在子模塊中就無false path : set_false_path -through get_pins U1/DATA_BUS_OUT1 -through get_pins U1/DATA_BUS_IN1,43,Advanced constraints,Set_multicycle_path:因?yàn)镈C假設(shè)所有的路徑都是單周期的,為了滿足時(shí)序,對多周期路徑會(huì)做不必要的優(yōu)化,從而影響相鄰路徑或面積。所以這個(gè)命令用于隔離多周期路徑,通知DC通過這條路徑所需的周期數(shù)。 例如: dc_shell set_multicycle_path 2 -from FF
40、A/CP -through Multiply/Out -to FFB/D,44,Advanced constraints,Group_path:將設(shè)計(jì)中的時(shí)序關(guān)鍵路徑綁在一起,可以使路徑組間具有優(yōu)先次序,命令格式:dc_shellgroup_path to out1 out2 name grp1; 但添加太多的組會(huì)增加編譯時(shí)間;且會(huì)增加最壞違例路徑延時(shí)。,45,Advanced constraints,Set_max_delay 對于僅包含組合邏輯的模塊,用此命令約束所有輸入到輸出的總延時(shí)。 例如: set_max_delay 5 from all_inputs() to all_output
41、s 對于含有多個(gè)時(shí)鐘的模塊,可用通常的方法定義一個(gè)時(shí)鐘,用此命令進(jìn)行約束定義時(shí)鐘和其他時(shí)鐘的關(guān)系。 例如: set_max_delay 0 -from CK2 -to all_register(clock_pin) 該命令還是用于包含gated clocks or resets的設(shè)計(jì)。 Set_min_delay, 對于僅包含組合邏輯的模塊,定義指定路徑的最小延時(shí) 例如: Set_min_delay 3 from all_inputs() set_fix_hold一起使用,只是DC添加一定延時(shí),滿足最小延時(shí)的定義。,46,SDF文件的產(chǎn)生,SDF文件的生成 SDF文件分為如下兩種: pre_l
42、ayout post_layout post_layout的SDF文件由DC在設(shè)計(jì)回注了RC延時(shí)值和lumped電容后產(chǎn)生。PT也 可產(chǎn)生SDF文 件。DC命令如下: write_timing format sdf-v2.1 output SDF用于做gate-level動(dòng)態(tài)時(shí)序仿真。 SDF包含的時(shí)序信息組成如下: IOPATH delay:cell delay,根據(jù)輸出的wire loading 和輸入信號的transition計(jì)算 INTERCONNECT delay:是一條路的driving cell的output pin和driven cell的input pin RC delay。
43、 SETUP timing check:根據(jù)技術(shù)庫的描述,確定時(shí)序cell的setup-time HOLD timing check:根據(jù)技術(shù)庫的描述,確定時(shí)序cell的hold-time,47,SDF文件的產(chǎn)生,生成pre_layout的SDF文件 pre_layout的延時(shí)根據(jù)通用wire-load計(jì)算,因?yàn)闆]有時(shí)鐘樹的插入,所以首先需對時(shí)鐘樹延時(shí)進(jìn)行估計(jì),DC命令如下: create_clock period 30 waveform 0 15 CLK set_clock_skew delay 2.0 CLK set_clock_transition 0.2 CLK DC利用以上值做靜態(tài)時(shí)序分析,在生成SDF文件時(shí),不會(huì)輸出。為了使 DC用設(shè)置的clock delay代替計(jì)算,DC可對時(shí)鐘的input pad (CLKPAD)作如下設(shè)置: set_annotated_delay 2.0 cell -from CLKPAD/A to CLKPAD/Z 設(shè)置clock_transition不僅用于靜態(tài)時(shí)序分析,還用于計(jì)算driven cell的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 內(nèi)蒙古自治區(qū)退役軍人事務(wù)廳
- 鋅錠買賣合同書
- 長期合作購銷合同協(xié)議
- 湘教版地理八下7.1《香港特別行政區(qū)的國際樞紐功能》聽課評課記錄1
- 專項(xiàng)借款合同范本
- 采購委托合同
- 智能制造與企業(yè)韌性:機(jī)制與效應(yīng)
- 層狀復(fù)合與粒子改性對電弧熔絲增材制造Al-Mg-Si合金組織與性能的影響
- 2025年粵教版八年級歷史下冊月考試卷含答案
- 2025年華東師大版選修5歷史下冊階段測試試卷含答案
- 部編版三語下《語文園地七》核心素養(yǎng)分層作業(yè)學(xué)習(xí)任務(wù)單(含答案)
- 第四章投資性房地產(chǎn)課件
- SB-T 11238-2023 報(bào)廢電動(dòng)汽車回收拆解技術(shù)要求
- 旅游公司發(fā)展規(guī)劃
- 新舊施工現(xiàn)場臨時(shí)用電安全技術(shù)規(guī)范對照表
- 03軸流式壓氣機(jī)b特性
- 五星級酒店收入測算f
- 某省博物館十大展陳評選項(xiàng)目申報(bào)書
- GB/T 9109.5-2017石油和液體石油產(chǎn)品動(dòng)態(tài)計(jì)量第5部分:油量計(jì)算
- GB/T 16316-1996電氣安裝用導(dǎo)管配件的技術(shù)要求第1部分:通用要求
- GA/T 455-2021居民身份證印刷要求
評論
0/150
提交評論