当前位置:网站首页 > 公文范文 > 主题教育 > PrimePower教学

PrimePower教学

时间:2022-02-27 13:48:31 浏览次数:

PrimePower教学 準備事項 範例程式下載 (一個Verilog寫的4-bit full-adder,與testbench) 本教學內容假設各位已經熟悉Design Analyzer與ModelSim ...  觀念介紹 PrimePower是Synopsys發展的模擬軟體,用來做gate-level的Power的 模擬。

快速上手四部曲   1. 使 用Synopsys的Design Analyzer對HDL source code做合成,產生gate-level netlist file 2. 使 用ModelSim產生該gate-level netlist與其vtestbench的對應top.vcd (Value Change File) 3. 使 用PrimePower做功率分析  整個Design flow大致如下圖所示 1. 使用 Synopsys的Design Analyzer對HDL source code做合成,產生gate-level netlist file 1-1 以% da &進入Design Analyzer後,第一步先設定synthesis library path (xxx.db)       -- 選定synthesis library,後面ModelSim做gate-level模擬時,才知道要提供相對哪一個simulate module library (.v)       從Setup\Defaults... 設 定Search Path與Link Library       若不想每次執行Design Analyzer都設定一次,直接編輯根目錄下的隱藏檔 .synopsys_dc.setup是建議的方法 1-2 File \ Read,Edit \ Uniquify \ Hierarchy,Tools \ Design Optimization,File \ Save As \ (Verilog format) 如果想把剛剛在Design Analyzer執行過的所有動作編輯成一個script file,便於日後可以在dc_shell下執行,您只要關閉Design Analyzer後,在剛剛的工作目錄下找一個叫“command.log“的檔案,其最後幾行就記錄著您剛才的所有動作,正所謂“凡走過必留下痕跡“ ^_^ 以本例而言,你會看到此檔案尾端的內容如下:
把這一段copy下來另外存成一個run.scr,下次只要進dc_shell並 include此檔 % dc_shell & dc_shell > include run.scr 就可以自動執行所有程序 2. 使用ModelSim產生該gate- level netlist與其testbench的對應top.vcd (Value Change File)  2-1 開啟ModelSim:
% vsim & 2-2 開一個project,把此project的design經過合成器所產生的gate-level netlist (add4_gate.v)、testbench(add4test.v)與對應於合成時所用的synthesis library (fast.db, slow.db)的simulate module library (umc18.v, umc18iov3v5.v),通通adding to project 2-3 修改add4test.v -- 加上一段指令以產生.vcd 2-4 Compile \ Compile All 2-5 切換到Library標籤下,選擇work library展開,執行top module name “testbed“的simulate 2-6 執行Simulate \ Run \ Run -All 後,在工作目錄下就會產生一個叫“add4.vcd“的檔案。

由於目前CIC沒提供ModelSim Linux的版本,如果產生.vcd檔的這個步驟是用PC版的ModelSim SE做,會有問題,必須用工作站版本的ModelSim產生的.vcd才能用。

兩者產生的資料,在工作站的環境下看是相同的 但以PC上 的“記事本“打開看就會發現不同 3. 使用PrimePower做功率分 析  3-1 進入PrimePower % pp_shell 3-2 首先要設定跟Design Analyzer一樣的library路徑 pp_shell> set search_path “ ... /synopsys/CBDK018_UMC_Artisan/CIC/SynopsysDC “ pp_shell> set link_library “ * slow.db fast.db dw_foundation.sldb“      此步驟建議寫成 .synopsys_pp.setup 放在個人工作站根目錄下,或是此project的工作目錄下,            這樣就不用每次都設定 3-3 read gate-level netlist pp_shell> read_verilog add4_gate.v 3-4 指定current design,本例指定top module “FourBitAdder“ pp_shell> current_design FourBitAdder 3-5 read VCD file,並將testbench (ex. testbed)從top module的模組別名(ex. FourBitAdder的模組別名是A1)中strip掉 pp_shell> read_vcd -strip_path testbed/A1 add4.vcd 3-6 開始計算/模擬功率消耗 pp_shell> calculate_power 3-7 輸出模擬結果,預設會存在工作目錄下的“primepower.rpt“ pp_shell> report_power       primepower.rpt內容如下所示:
步驟3-3 ~ 3-7若執行結果無誤,回應訊息會顯示“1“ 執行過的指令(3-3~3-7),在結束pp_shell後,會存在工作目錄下pp_shell_command.log檔 的最後一段,您可以把這些指令行複製,重新編輯成一個run_pp.scr,日後你想執行這task時,只要打       % pp_shell -f run_pp.scr  

推荐访问:教学能力、教学效果、教学影响 l旅游教学教学总结 教师教学能力、教学效果、教学影响 教学能力教学效果教学影响 教学竞赛和教学改革促教学 职称教学业绩教学能力教学效果 教学设计、教学策略、教学评价 专业素养教学能力教学创新教学实绩 翻译教学和教学翻译 解决教学教学问题案例

猜你喜欢