




已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
此文檔收集于網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系網(wǎng)站刪除 摘 要 7人表決器電路是一簡單的輸入信號檢測與處理、產(chǎn)生運算控制信號的邏輯電路。本文詳細介紹了依據(jù)功能要求進行運算控制電路方案設(shè)計的過程,并在此基礎(chǔ)上將整體電路分為數(shù)據(jù)接收模塊、數(shù)據(jù)處理模塊、結(jié)果顯示模塊等主要功能模塊。電路設(shè)計完成后通過Design Compiler對電路進行邏輯綜合。使用Tcl命令編寫電路的約束文件,設(shè)定約束條件,對電路進行優(yōu)化以保證設(shè)計的功能性,同時生成網(wǎng)表文件、時序報告、面積報告,并進行結(jié)果分析。再通過延時文件與頂層文件的激勵進行電路功能的時序仿真,分析設(shè)計的可行性。再通過Primetime對電路進行靜態(tài)時序分析,得到靜態(tài)時序報告。最后通過IC_Compler對生成的網(wǎng)表進行物理實現(xiàn),生成GDS II版圖信息。關(guān)鍵詞 Design Compiler;Primetime;邏輯綜合;靜態(tài)時序分析;物理實現(xiàn);目 錄摘 要1目 錄2引 言41 總體電路結(jié)構(gòu)設(shè)計51.1電路功能51.2 關(guān)鍵功能電路設(shè)計51.3 電路接口61.4 頂層TOP的設(shè)計62 設(shè)計約束及腳本82.1 約束設(shè)計82.2 腳本設(shè)計83 邏輯綜合過程113.1 綜合文件113.2 綜合環(huán)境113.3綜合過程124 結(jié)果分析及時序仿真164.1 時序報告分析164.2 面積報告分析194.3時序仿真205 靜態(tài)時序分析及腳本215.1 靜態(tài)時序分析215.2 PrimeTime 進行時序分析的流程215.3 腳本225.4 靜態(tài)時序報告分析246 物理實現(xiàn)286.1 物理實現(xiàn)文件286.2物理實現(xiàn)環(huán)境286.3物理實現(xiàn)過程296.3.1 Floorplan296.3.2 placemant306.3.3 Clock Tree synthesis306.3.4 Routing316.3.5 Write Design Out326.4 報告輸出326.5 LVS和DRC34結(jié) 論35參考文獻36附錄A:頂層設(shè)計源代碼37附錄B:設(shè)計約束代碼38附錄C:靜態(tài)時序分析腳本代碼40此文檔僅供學(xué)習(xí)與交流引 言現(xiàn)代集成電路技術(shù)急劇發(fā)展,輸百萬級晶體管電路使設(shè)計面臨著巨大的挑戰(zhàn)。如果沒有計算機的輔助和建立了很好的設(shè)計方法是不可能完成這一工作的。Synopsys公司是全球半導(dǎo)體和電子行業(yè)先進的EDA(電子設(shè)計自動化)軟件工具和專業(yè)化服務(wù)提供商,為設(shè)計復(fù)雜集成電路(IC)、FPGA(現(xiàn)場可編程門陣列)和SOC(System on Chip,系統(tǒng)級芯片)產(chǎn)品的公司提供業(yè)內(nèi)最完善的工具,使客戶能夠用最短時間并以最低風(fēng)險向市場推出最好的電子產(chǎn)品。從高水平的綜合能力到門電路的設(shè)置,Synopsys為工程技術(shù)人員面臨的最嚴峻挑戰(zhàn)提供全部解決方案,并幫助他們將電子設(shè)計推向極致?,F(xiàn)今,Synopsys在全球半導(dǎo)體技術(shù)發(fā)展潮流中擔(dān)當(dāng)著重要角色2。Synopsys公司發(fā)布的“Design Compiler”軟件,簡稱“DC”,是一種邏輯合成工具。通過改進電路延遲時間的計算方法,縮小了邏輯合成時的時序與布局完成后的最終時序之間的偏差。DC得到全球60多個半導(dǎo)體廠商、380多個工藝庫的支持。據(jù)最新Dataquest的統(tǒng)計,Synopsys的邏輯綜合工具占據(jù)91%的市場份額。DC是十二年來工業(yè)界標(biāo)準的邏輯綜合工具,也是Synopsys最核心的產(chǎn)品。它使IC設(shè)計者在最短的時間內(nèi)最佳的利用硅片完成設(shè)計。它根據(jù)設(shè)計描述和約束條件并針對特定的工藝庫自動綜合出一個優(yōu)化的門級電路。它可以接受多種輸入格式,如硬件描述語言、原理圖和網(wǎng)表等,并產(chǎn)生多種性能報告,在縮短設(shè)計時間的同時提高設(shè)計性能。 本設(shè)計采用Verilog HDL語言描述、Design Compiler進行約束及綜合。Design Compiler的操作有Tcl命令來實現(xiàn),還要用Modelsim進行時序仿真,用Prime Time進行靜態(tài)時序分析,實驗環(huán)境為Linux操作系統(tǒng)。完成7人表決器電路前端設(shè)計。1 總體電路結(jié)構(gòu)設(shè)計1.1電路功能 7人表決器電路功能主要集中在四方面。一是在用戶使用開關(guān)輸入狀態(tài),高電平代表“1”,低電平代表“0”;二是數(shù)據(jù)輸入后要對數(shù)據(jù)進行鎖存。三是輸入鎖存后進行數(shù)據(jù)的實時運算,通過運算電路計算出贊成即“1”的人數(shù)和反對“0”的人數(shù),并進行判斷贊成人數(shù)是否大于3。由于FPGA屬于硬件電路,沒有使用CPU軟核時,沒有任何指令集,所以需要使用自帶的IP核進行必要的加減運算;四是運算結(jié)果得出后,可以準確的將贊成和反對人數(shù)的數(shù)量顯示在數(shù)碼管上。電路的具體功能羅列如下:(1) 采用7個開關(guān)作為7人表決結(jié)果得輸入設(shè)備。(2) 采用2位8段數(shù)碼管和一位LED燈作為輸出顯示設(shè)備。1.2 關(guān)鍵功能電路設(shè)計本電路設(shè)計的主要難點在于2位8段數(shù)碼管的靜態(tài)顯示。本課程設(shè)計給定的工作時鐘位1kHZ,顯示1位8段數(shù)碼管的時間為1MS,掃描2位的時間為2MS。而人的眼睛遺留時間20MS左右。次時鐘工作頻率是符合設(shè)計要求的。依照功能,將電路分為3個功能:開關(guān)輸入鎖存模塊;運算模塊用于將開關(guān)收集到的數(shù)據(jù)按照一定要求進行計算出正確的結(jié)果;數(shù)碼管顯示模塊,用于顯示計算結(jié)果。電路功能框圖如圖1.1所示圖1.1 電路功能框圖1.3 電路接口整個設(shè)計接口可以分為2部分,分別是數(shù)據(jù)的輸入以及數(shù)據(jù)的實時輸出。具體接口如下表1.1所示。表1.1 接口信號表名稱IO屬性描述備注clkIn時鐘頻率1kHzrstIn復(fù)位信號輸入端口低電平有效voteIn表決數(shù)據(jù)輸入端口passOut表決結(jié)果輸出端口cnt_selOut數(shù)碼管位選端口disp_segOut數(shù)碼管段選端口1.4 頂層TOP的設(shè)計因為本設(shè)計是要一起綜合功能電路,所以需要頂層的文件,該文件為vote7TOP.v,此部分內(nèi)部包含了功能電路。具體接口如下表1.3所示:表1.3 頂層接口信號表名稱IO屬性描述備注CLKIn 外部輸入時鐘頻率1kHzRSTNIn復(fù)位信號低電平有效VOTEIn表決信號高電平有效PASSOut表決結(jié)果信號大于一半有效CNT_SELOut數(shù)碼管段選高電平有效DISP_SEGOut數(shù)碼管位選高電平有效電路功能框圖如圖1.2所示:圖1.2 頂層設(shè)計功能框圖 2 設(shè)計約束及腳本2.1 約束設(shè)計約束部分是本次課程設(shè)計的重點內(nèi)容, 對于一個由時鐘控制的數(shù)字邏輯電路來說,時序是最為重要的。Vote7TOP.v是本設(shè)計所要約束的文件。雖然人的肉眼所能分辨的最大頻率一般為20Hz,但該設(shè)計在計算機上實現(xiàn)仿真運行,故暫不考慮分頻問題。所有使用本設(shè)計的工作時鐘為1kHZ,即CLK周期設(shè)置為1000000ns。輸入為vote,輸出為cnt_sel,disp_seg6:0,pass,他們都是由CLK信號同步控制,所以這些信號延時約占時鐘信號的60%,即輸入輸出延時設(shè)置為600000ns。本次對此電路的綜合約束需要分為以下幾部分:對CLK時鐘信號進行設(shè)置,對每個輸入輸出信號的約束,對扇出和驅(qū)動負載能力能度需要進行約束設(shè)置,最后輸出報告。2.2 腳本設(shè)計 首先是讀入源代碼,也就是HDL文本描述的設(shè)計文件,此處不用制定目錄,Design Compiler會在搜索目錄中搜索。Tcl語句如下: read_verilog vote7.v vote7TOP.v 讀入設(shè)計原文件后,一般設(shè)定當(dāng)前設(shè)計,這樣約束條件才可能有針對性的施加。Tcl語句如下:current_design vote7TOP 設(shè)定當(dāng)前設(shè)計后,要完成鏈接,也就是將設(shè)計與庫鏈接起來,用于映射過程中搜索相應(yīng)的單元,完成綜合。Tcl語句如下: Link 檢查設(shè)計,主要完成檢查轉(zhuǎn)換的設(shè)計。Tcl語句如下: check_design然后對設(shè)計設(shè)定時序約束,這是最重要的一項約束,用于設(shè)定設(shè)計的工作速度。針對不同的設(shè)計部分,有不同的約束方法。針對本次設(shè)計,采用全同步,單時鐘工作的實際情況。以下語句設(shè)定時鐘及屬性、輸入輸出信號時間余量。 設(shè)定名稱為CLK的時鐘,由于采用1KHz的時鐘,故設(shè)定時鐘周期為1000000ns。Tcl語句如下: create_clock -name clk period1000000 get_ports CLK 設(shè)定時鐘的渡越時間為0.2ns。Tcl語句如下: set_clock_transition -max 0.2 get_clocks clk 設(shè)定輸入信號最大時間延時。Tcl語句如下:set_input_delay -clock clk -max 600000 get_ports VOTE 設(shè)定輸出信號最大時間延時。Tcl語句如下:set_output_delay -clock clk -max 600000 get_ports DISP_SEG CNT_SEL PASS 告訴綜合器不要對時鐘網(wǎng)絡(luò)進行驅(qū)動,這個工作將在后續(xù)版圖布局布線中進行。Tcl語句如下: set_dont_touch_network get_clocks clkset_ideal_network get_ports CLK告訴綜合器不要對復(fù)位進行驅(qū)動。Tcl語句如下:set_dont_touch_network get_ports RSTset_ideal_network get_ports RST檢查時序。Tcl語句如下:check_timing設(shè)定綜合的操作條件。Tcl語句如下:set_operating_conditions -max WORST-max_library saed90nm_max_hth -min WORST -min_library saed90nm_max_hth設(shè)定線負載模型,本設(shè)計選擇saed90nm_max_hth模型。Tcl語句如下:set_wire_load_model -name ForQa設(shè)定輸出負載電容。Tcl語句如下:set_load -pin_load 2 get_ports DISP_SEG CNT_SEL PASS設(shè)定扇出最大負載能力。Tcl語句如下: set_max_fanout 30 vote7TOP 驅(qū)動能力設(shè)定。Tcl語句如下:set_drive 2.0 get_ports CLK RST 設(shè)定輸出網(wǎng)表的格式規(guī)則,以消除gate level nelist中的assign。Tcl語句如下: set verilogout_no_tri trueset_fix_multiple_port_nets -all -buffer_constants 最大能力進行綜合。Tcl語句如下: compile -map high 輸出時序報告。Tcl語句如下: rc ./output/tim.log 輸出網(wǎng)表。Tcl語句如下: write -f verilog -hier -o ./netlst/vote7TOP.v 輸出綜合數(shù)據(jù)文件。Tcl語句如下:write -f ddc -hier -o ./output/vote7TOP.ddc輸出延時文件。Tcl語句如下:write_sdf ./output/vote7TOP.sdf輸出面積文件。Tcl語句如下:report_area ./output/vote7TOP.area.log3 邏輯綜合過程3.1 綜合文件首先在目錄下建立dclab作為本次實驗dc的操作主目錄。在dclab目錄下,建立設(shè)計存放目錄如code、約束文件目錄如constrn、輸出網(wǎng)表文件目錄netlst、報告輸出目錄output、dc啟動目錄work,庫文件目錄SnonpsysDC等等。在綜合前需要準備以下幾個文件,以便使軟件可以正常工作。.synopsys_dc.setup文件即啟動項文件:在這個文件中,需要將所用到的庫單元文件的路徑和電路設(shè)計文件所存放的路徑寫入,以便軟件在工作時能夠找到這些文件并正確識別,本設(shè)計將它存放在work目錄下。*.v文件:因為本次課程設(shè)計所使用電路描述語言為verilog HDL語言,所以至少需要將頂層TOP設(shè)計文件、功能電路的設(shè)計文件準備好,即準備好一個正確可用的設(shè)計,以便用于約束綜合,本設(shè)計將*.v文件存放在code目錄下。Tcl語句文件:在本次課程設(shè)計中使用的是命令界面,使用Tcl語言進行操作,所以需要準備好相應(yīng)的Tcl命令,以便對設(shè)計進行約束綜合等相應(yīng)操作,本設(shè)計將它存放在constrn目錄下。庫文件:本設(shè)計采用的是synopsys提供好的saed90nm標(biāo)準單元庫的所有文件,存放在目錄:/home/zhm/zhm0/SnonpsysDC下面。3.2 綜合環(huán)境本次設(shè)計是運行在ubuntu Linux操作系統(tǒng)環(huán)境下的。Linux是一套免費使用和自由傳播的類Unix操作系統(tǒng),是一個基于POSIX和UNIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。它能運行主要的UNIX工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計思想,是一個性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)Linux操作系統(tǒng)誕生于1991 年的10 月5 日(這是第一次正式向外公布的時間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內(nèi)核。Linux可安裝在各種計算機硬件設(shè)備中,比如手機、平板電腦、路由器、視頻游戲控制臺、臺式計算機、大型機和超級計算機。嚴格來講,Linux這個詞本身只表示Linux內(nèi)核,但實際上人們已經(jīng)習(xí)慣了用Linux來形容整個基于Linux內(nèi)核,并且使用GNU 工程各種工具和數(shù)據(jù)庫的操作系統(tǒng)。本次課程設(shè)計所使用的綜合工具Design Compiler(簡稱DC),是synopsys 公司的ASIC 綜合器產(chǎn)品,它可以完成將硬件。描述語言所做的RTL級描述自動轉(zhuǎn)換成優(yōu)化的門級網(wǎng)表。DC 得到全球60 多個半導(dǎo)體廠商、380 多個工藝庫的支持。Synopsys 的邏輯綜合工具DC占據(jù)91%的市場份額。DC 是工業(yè)界標(biāo)準的邏輯綜合工具,也是Synopsys 最核心的產(chǎn)品。它使IC 設(shè)計者在最短的時間內(nèi)最佳的利用硅片完成設(shè)計。它根據(jù)設(shè)計描述和約束條件并針對特定的工藝庫將輸入的VHDL或者Verilog 的RTL 描述自動綜合出一個優(yōu)化的門級電路。它可以接受多種輸入格式,如硬件描述語言、原理圖和網(wǎng)表等,并產(chǎn)生多種性能報告,在縮短設(shè)計時間的同時提高設(shè)計性能。3.3綜合過程首先打開Linux中命令終端。進入以準備好的.synopsys_dc.setup文件所在路徑。執(zhí)行命令,打開Design Compiler。進入Tcl命令界面。命令如下:cd /home/zhm/zhm0/dclab/workdc_shell運行后,讀入文件將在終端得到如圖3.1界面,即已經(jīng)進入DC的Tcl命令圖3.1 Design Compiler的Tcl命令界面因為已經(jīng)將所要使用的Tcl語句準備好并形成文件,所以可以使用source命令來講Tcl命令全部讀入并執(zhí)行。命令如下:source /home/zhm/zhm0/dclab/constrn/vote.con這里我們逐一運行命令,運行后,將在終端得到如下界面,即已經(jīng)進入約束綜合過程。讀入文件過程,如圖3.2所示:圖3.2 讀入文件過程鏈接,檢查設(shè)計之后如圖3.3所示:圖3.3 鏈接,檢查設(shè)計過程時序約束過程,如圖3.4所示:圖3.4 時序約束過程關(guān)鍵路徑優(yōu)化過程。如圖3.5所示:圖3.5 優(yōu)化過程待綜合完成后,導(dǎo)出相應(yīng)文本。如電路網(wǎng)表、綜合過程、時序報告、面積報告等。如圖3.6所示:圖3.6 導(dǎo)出文件4 結(jié)果分析及時序仿真4.1 時序報告分析Design Compiler將電路分解成不同的信號時序路徑(Timing Path),每條路徑都有一個起點和一個終點。起點是電路的輸入端口或電路中寄存器的時鐘管腳,終點是電路的輸出端口或時序器件(sequential devices)中除時鐘管腳外的其它輸入管腳。時序路徑又根據(jù)控制它們終點的時鐘分成不同的路徑組(path group),默認的路徑組(the default path group)包含所有不受時鐘約束的路徑。生成一個默認的時序報告。時序報告由4 個部分組成:路徑信息部分(Path Information Section),路徑延時部分(Path Delay Section),路徑要求部分(Path Required Section),總結(jié)部分(Summary Section)。查看命令:report_timing。時序報告如下:*Report : timing -path full -delay max -max_paths 1Design : vote7TOPVersion: G-2012.06-SP2Date : Thu Jul 16 11:03:12 2015*Operating Conditions: saed90nm_max_hth Library: saed90nm_max_hthWire Load Model Mode: top Startpoint: vote7/tmp_reg_4_ (rising edge-triggered flip-flop clocked by clk) Endpoint: PASS (output port clocked by clk) Path Group: clk Path Type: max Des/Clust/Port Wire Load Model Library - vote7TOP ForQa slow Point Incr Path - clock clk (rise edge) 0.00 0.00 clock network delay (ideal) 0.80 0.80 vote7/tmp_reg_4_/CK (DFFRHQX4) 0.00 0.80 r vote7/tmp_reg_4_/Q (DFFRHQX4) 0.46 1.26 r vote7/U148/Y (INVX12) 0.25 1.51 f vote7/U149/Y (INVX12) 0.28 1.79 r vote7/U46/Y (XOR2X4) 0.31 2.10 r vote7/U47/Y (INVX12) 0.23 2.33 f vote7/U48/Y (INVX12) 0.28 2.61 r vote7/U155/Y (XOR2X4) 0.31 2.92 r vote7/U109/Y (INVX12) 0.23 3.15 f vote7/U110/Y (INVX12) 0.28 3.43 r vote7/U41/Y (XOR2X4) 0.31 3.74 r vote7/U42/Y (INVX12) 0.23 3.97 f vote7/U23/Y (INVX12) 0.28 4.25 r vote7/U75/Y (AND2X4) 0.23 4.48 r vote7/U76/Y (INVX12) 0.24 4.71 f vote7/U12/Y (INVX8) 0.10 4.81 r vote7/U21/Y (INVX8) 0.06 4.87 f vote7/U61/Y (AND2X4) 0.25 5.12 f vote7/U62/Y (INVX12) 0.29 5.41 r vote7/U93/Y (AND2X4) 0.23 5.64 r vote7/U94/Y (INVX12) 0.23 5.87 f vote7/U69/Y (AND2X4) 0.22 6.10 f vote7/U70/Y (INVX12) 0.25 6.35 r vote7/U115/Y (INVX12) 0.24 6.59 f vote7/U151/Y (CLKINVX8) 0.13 6.72 r vote7/pass (vote7) 0.00 6.72 r iopads/pass_core (iopads) 0.00 6.72 r iopads/pass/PAD (PDO04CDG) 1.30 8.01 r iopads/PASS_PAD (iopads) 0.00 8.01 r PASS (out) 0.00 8.01 r data arrival time 8.01 clock clk (rise edge) 1000000.00 1000000.00 clock network delay (ideal) 0.80 1000000.81 clock uncertainty -0.30 1000000.50 output external delay -600000.00 400000.50 data required time 400000.50 - data required time 400000.50 data arrival time -8.01 - slack (MET) 399992.50上面是對clk時鐘的約束,即對jjq_core部分約束的時序報告。時序報告中有三列項目。第一列是關(guān)鍵路徑經(jīng)過的器件;第二列為器件的延時;第三列是路徑總延時。路徑起點為vote7/tmp_reg_4_,路徑終點為PASS (output port clocked by clk)。從表中可知經(jīng)過各個器件的延時,數(shù)據(jù)到達時間為8.01ns。而約束的時鐘周期1000000ns,允許的最大延時為400000.50ns。因此,允許的最大時延減去到達時間為ns。所以滿足設(shè)計的要求,裕量時間即為399992.50ns。4.2 面積報告分析面積報告中列出了設(shè)計的端口、單元、線網(wǎng)和引用的數(shù)目。設(shè)計的面積被分為組合、非組合以及互連線。分別顯示出組合邏輯面積,時序邏輯面積,估計的互聯(lián)線面積,單元器件總面積。面積報告如下:*Report : areaDesign : vote7TOPVersion: G-2012.06-SP2Date : Thu Jul 16 11:03:12 2015*Library(s) Used: saed90nm_max_hth (File: /home/zhm/zhm0/SynopsysDC/saed90nm_max_hth)Number of ports: 18Number of nets: 36Number of cells: 2Number of combinational cells: 0Number of sequential cells: 0Number of macros: 0Number of buf/inv: 0Number of references: 2Combinational area: 174748.435136Buf/Inv area: 4311.014318Noncombinational area: 1713.096024Net Interconnect area: 63933.649796 Total cell area: 176461.531159Total area: 240395.180955從上面我們可以看出總本設(shè)計電路總共有18個端口、36個網(wǎng)絡(luò)、2個單元模塊等。組合邏輯電路占用面積174748.435136,非組合邏輯電路占用面積1713.096024,buffer和反相器占用面積4311.014318等。最終總面積為240395.180955。因設(shè)計簡單,對面積要求低,故無需繼續(xù)優(yōu)化。4.3時序仿真本設(shè)計采用的仿真工具是Mentor公司的Modelsim10.1a,這是業(yè)界最優(yōu)秀的HDL語言仿真軟件,它能提供友好的仿真環(huán)境,是業(yè)界唯一的單內(nèi)核支持VHDL和Verilog混合仿真的仿真器。構(gòu)建激勵,將綜合產(chǎn)生的網(wǎng)表(*.v)進行時序仿真,并在激勵中添加綜合后產(chǎn)生的延時文件(*.sdf),此過程稱為sdf反標(biāo),Verilog語句為:initial $sdf_annotate( F:/zhm/zzzzz2/vote7TOP.sdf,vote7TOP);括號內(nèi)為需要反標(biāo)的標(biāo)準延時文件的絕對路徑和需要反標(biāo)的模塊的例化名稱。仿真結(jié)果如圖4.1圖4.1 加入了sdf文件后的仿真圖5 靜態(tài)時序分析及腳本5.1 靜態(tài)時序分析一般來說,要分析或檢驗一個電路設(shè)計的時序方面的特征有兩種主要手段:動態(tài)時序仿真(Dynamic Timing Simulation)和靜態(tài)時序分析(Static Timing Analysis)。動態(tài)時序仿真的優(yōu)點是比較精確,而且同后者相比較,它適用于更多的設(shè)計類型。但是它也存在著比較明顯的缺點:首先是分析的速度比較慢;其次是它需要使用輸入矢量,這使得它在分析的過程中有可能會遺漏一些關(guān)鍵路徑(critical paths),因為輸入矢量未必是對所有相關(guān)的路徑都敏感的。 靜態(tài)時序分析的分析速度比較快,而且它會對所有可能的路徑都進行檢查,不存在遺漏關(guān)鍵路徑的問題。PrimeTime 是 Synopsys 的靜態(tài)時序分析軟件,常被用來分析大規(guī)模、同步、數(shù)字 ASIC。PrimeTime 適用于門級的電路設(shè)計,可以和Synopsys 公司的其它 EDA 軟件非常好的結(jié)合在一起使用。5.2 PrimeTime 進行時序分析的流程 使用 PrimeTime 對一個電路設(shè)計進行靜態(tài)時序分析,一般要經(jīng)過下面的步驟: 1)設(shè)置設(shè)計環(huán)境 在可以進行時序分析之前,首先要進行一些必要的設(shè)置和準備工作。具體來說包括: 設(shè)置查找路徑和鏈接路徑; 讀入設(shè)計和庫文件; 鏈接頂層設(shè)計; 對必要的操作條件進行設(shè)置,包括線上負載的模型、端口負載、驅(qū)動、以及轉(zhuǎn)換間等; 設(shè)置基本的時序約束并進行檢查; 2)指定時序約束 (timing assertions/constraints) 包括定義時鐘周期、波形、不確定度(uncertainty)、潛伏性(latency),以及指明輸輸出端口的延時等。 3)設(shè)置時序例外(timing exceptions): 包括設(shè)置多循環(huán)路徑(multicycle paths)、設(shè)置虛假路徑(false paths)、定義最大最小延時、路徑的分段(path segmentation)以及無效的 arcs 4)進行時序分析: 在作好以上準備工作的基礎(chǔ)上,可以對電路進行靜態(tài)時序分析,生成 constraint reports 和 path timing reports。 以上僅僅是 PrimeTime 進行靜態(tài)時序分析的簡單流程,以下的部份中將會有更詳細的敘述。5.3 腳本 查找路徑和鏈接路徑在 PrimeTime 中對應(yīng)著兩個變量:search_path 和link_path,用 set命令對它們進行設(shè)置。 set link_library * slow.db tpz973gwc.db下面的表格5.1給出了 PrimeTime 可以接受的文件類型,以及讀入每一種類型的設(shè)計時,所使用的不同命令。 表5.1 PrimeTime 可以接受的文件類型以及命令PrimeTime 可以接受的文件類型命令Synopsys 數(shù)據(jù)庫文件(.db)read_dbVerilog 網(wǎng)表文件read_verilogEDIF 網(wǎng)表文件(Electronic Design Interchange Format)read_edifVHDL 網(wǎng)表文件read_vhdl 本文中分析的例子使用的是第二種格式,腳本如下: read_verilog vote7TOP.v設(shè)定當(dāng)前設(shè)計后,要完成鏈接,也就是將設(shè)計與庫鏈接起來,用于映射過程中搜索相應(yīng)的單元current_design vote7TOP鏈接過程就在庫文件中尋找到設(shè)計中所需要的元件,并將該設(shè)計例化的過程。腳本如下link 設(shè)定線負載模型,PrimeTime在生成建立時序報告(setup timing reports)時使用最大(Maximum)運作條件和連線負載模型;在生成保持時序報告(hold timing reports)時使用最小(Minimum)運作條件和連線負載模型。top模式時,層次中的所有連線將繼承和頂層模塊同樣的WLM set_wire_load_mode top set_wire_load_model -name 05x05 -min set_wire_load_model -name 20x20 -max對有關(guān)時鐘的參數(shù)進行設(shè)置,具體命令可以參考Design Compiler中的腳本 create_clock -period 30 get_ports CLK set clock get_clock CLK set_clock_uncertainty 0.5 $clock set_clock_latency -min 3.5 $clock set_clock_latency -max 5.5 $clock set_clock_transition -min 0.25 $clock set_clock_transition -max 0.3 $clock 設(shè)定時鐘門的建立和保持時間的數(shù)值,以及最小的脈沖寬度,腳本如下 set_clock_gating_check -setup 0.5 -hold 0.1 $clock set_min_pulse_width 2.0 $clock 對于所有與時鐘相關(guān)的端口,都要設(shè)置輸入、輸出的延遲。腳本如下 set_input_delay 1 RSTset_input_delay 1 VOTE6 -clock $clockset_input_delay 1 VOTE5 -clock $clockset_input_delay 1 VOTE4 -clock $clockset_input_delay 1 VOTE3 -clock $clockset_input_delay 1 VOTE2 -clock $clockset_input_delay 1 VOTE1 -clock $clockset_input_delay 1 VOTE0 -clock $clockset_output_delay 1 CNT_SEL -clock $clockset_output_delay 1 DISP_SEG6 -clock $clockset_output_delay 1 DISP_SEG5 -clock $clockset_output_delay 1 DISP_SEG4 -clock $clockset_output_delay 1 DISP_SEG3 -clock $clockset_output_delay 1 DISP_SEG2 -clock $clockset_output_delay 1 DISP_SEG1 -clock $clockset_output_delay 1 DISP_SEG0 -clock $clock創(chuàng)建測試時鐘CLK_TEST,完成時序檢驗create_clock -name CLK_TEST -p 1000000 -add get_ports CLK 使用 report_timing 命令,生成基于路徑的 timing report。 report_timing -path full_clock_expanded -from $clock 將未約束的路徑也顯示在時序報告里面,腳本如下set timing_report_unconstrained_paths true在定義好 timing exceptions 之后,再次進行分析,腳本如下 report_constraint -all_violatorsreport_timing5.4 靜態(tài)時序報告分析 使用 report_timing 命令,生成基于路徑的 timing report。在沒有任何命令參數(shù)時,在 report 中列出的是對于每個 path group,該設(shè)計中最長的最大路徑。如果需要的是該設(shè)計中最短的最小路徑的話,可以在命令中加上-delay min 參數(shù)。 report_timing 命令是一個很靈活的命令,可以用-help 來查看其它的參數(shù)。 pt_shell report_timingReport : timing-path_type full-delay_type max-max_paths 1Design : vote7TOPVersion: H-2012.12Date : Thu Jul 16 11:13:09 2015* Startpoint: vote7/tmp_reg_4_ (rising edge-triggered flip-flop clocked by CLK) Endpoint: vote7/disp_seg_reg_5_ (rising edge-triggered flip-flop clocked by CLK) Path Group: CLK Path Type: max Point Incr Path - clock CLK (rise edge) 0.00 0.00 clock network delay (ideal) 5.50 5.50 vote7/tmp_reg_4_/CK (DFFRHQX4) 0.00 5.50 r vote7/tmp_reg_4_/Q (DFFRHQX4
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖北藝術(shù)職業(yè)學(xué)院《機械制造工藝學(xué)課程設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 濟南護理職業(yè)學(xué)院《人力資源管理(Ⅲ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 閩江學(xué)院《廣告學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 洛陽科技職業(yè)學(xué)院《媒體與社會》2023-2024學(xué)年第二學(xué)期期末試卷
- 仰恩大學(xué)《住宅建筑設(shè)計原理》2023-2024學(xué)年第二學(xué)期期末試卷
- 陜西師范大學(xué)《路橋工程施工與養(yǎng)護管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 貴州財經(jīng)大學(xué)《信號與系統(tǒng)A(雙語)》2023-2024學(xué)年第二學(xué)期期末試卷
- 青島工程職業(yè)學(xué)院《中級公司金融》2023-2024學(xué)年第二學(xué)期期末試卷
- 生命教育:悅納他人是一種智慧
- 2024年液壓破碎錘項目資金申請報告代可行性研究報告
- 2022年教學(xué)教材《石油裂解與乙烯》精品優(yōu)秀教案
- IPC-A-610國際標(biāo)準中英文對照(doc 17)
- 山大《毛澤東思想和中國特色社會主義理論體系概論》教案第3章 社會主義改造理論
- 部編版四年級下冊語文全一冊期末總復(fù)習(xí)—重點歸納整理
- (國開)2019年春電大本科水利水電工程造價管理形考3答案
- 金普新區(qū)預(yù)防性體檢人員審核表
- 礦山地質(zhì)環(huán)境保護與治理恢復(fù)方案編制規(guī)范2011
- 重慶市新建居民住宅小區(qū)供配電設(shè)施建設(shè)管理辦法
- 【精品畢業(yè)論文】Bi2WO6光催化劑的熔鹽法合成
- 正確解讀檢驗報告單 ppt課件
- 八年級數(shù)學(xué)(下)專題復(fù)習(xí)3--圖形與坐標(biāo)部分
評論
0/150
提交評論