<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 易懂的modelsim學(xué)習(xí)筆記

          易懂的modelsim學(xué)習(xí)筆記

          作者: 時間:2011-11-02 來源:網(wǎng)絡(luò) 收藏
          1.建一個總文件夾,如cnt
          2.為源代碼,測試臺文件,仿真各建一文件夾。如src,tb,sim
          3.編寫源代碼,testbench。如cnt.v,tb_cnt.v文件,同時文件名里的模塊名與文件名相同,如module cnt( ), module tb_cnt( )。
          4.再sim文件夾里加入tb.f文件:../tb/tb_cnt.v
          ../src/cnt.v
          ../tb/tb_cnt-y
          ../src +libext+.v(這里源代碼中可有許多,下一次做的DPLL必須要用第二種)
          5.下面開始仿真,仿真,顧名思義要在仿真文件夾sim中進(jìn)行。pwd 出現(xiàn)當(dāng)前目錄cd ..當(dāng)前目錄向上一級 cd e:/進(jìn)入e盤中的目錄
          6.vlib work (建工作庫),此時從庫文件中含有自動生成的_into文件。
          7.vlog –f tb.f (編譯 .v文件),此時庫文件加入了cnt.v 和 tb_cnt.v模塊
          8.vsim -voptargs=”+acc” tb_cnt (在testbench中測試源代碼),此時sim文件夾里出現(xiàn)了vsim文件,work文件夾里有一些仿真文件。同時在modelsim中出現(xiàn)sim項。
          9.右擊sim項中的實例名稱,點擊 add to wave all items in design 。本例中實例項是inst_cnt。(cnt inst_cnt(端口連接) 其中cnt為實例引用的模塊名稱,inst_cnt為實例引用中的實例名稱),在wave窗口中出現(xiàn)的信號為/tb_cnt/clk
          /tb_cnt/rstn
          /tb_cnt/cnt(它們?yōu)檫B到端口的信號)
          /tb_cnt/inst_cnt/i_clk
          /tb_cnt/inst_cnt/i_rstn
          /tb_cnt/inst_cnt/o_cnt (它們?yōu)槟Kcnt中定義的端口)。
          10.出現(xiàn)wave窗口,仿真即可。其中wave窗口中的按鈕doom in ,doom out ,doom full??烧{(diào)整波形大小。
          11.批處理文件(do文件):quit -sim
          vlog -f tb.f
          vsim -voptargs=”+acc” tb_cnt
          add wave sim:/tb_cnt/inst_cnt/*
          保存為sim.do文本文件,它等同于7—9步。


          關(guān)鍵詞: modelsim

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();