modelsim實(shí)驗(yàn)教程_第1頁(yè)
modelsim實(shí)驗(yàn)教程_第2頁(yè)
modelsim實(shí)驗(yàn)教程_第3頁(yè)
modelsim實(shí)驗(yàn)教程_第4頁(yè)
modelsim實(shí)驗(yàn)教程_第5頁(yè)
已閱讀5頁(yè),還剩16頁(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、試驗(yàn)一1. 試驗(yàn)?zāi)康耐ㄟ^(guò)試驗(yàn)把握如何用modelsim 進(jìn)行功能仿真以準(zhǔn)時(shí)序仿真;2. 試驗(yàn)內(nèi)容( 1)編譯代碼,進(jìn)行功能仿真;( 2)用 modelsim 進(jìn)行代碼掩蓋率檢查及分析,并輸出掩蓋率報(bào)告;( 3)用 modelsim將 dc 綜合出來(lái)的門(mén)級(jí)網(wǎng)表以準(zhǔn)時(shí)序文件進(jìn)行后仿真;( 4)用 do 文件自動(dòng)完成仿真步驟,即腳本自動(dòng)化;3. 試驗(yàn)步驟1 功能仿真前仿真主旨在于驗(yàn)證電路功能是否符合設(shè)計(jì)要求,它不考慮門(mén)推遲與線路推遲,旨在驗(yàn)證電路功能是否正確;第一步:打開(kāi) modelsim 軟件并建立工程登陸工作站后,進(jìn)入命令界面,輸入命令vsim ,按回車(chē)鍵,打開(kāi)modelsim 軟件, 如下圖所

2、示挑選 file 選項(xiàng),點(diǎn)擊 file-new-project ,如下圖所示:然后彈出如下界面, 需要給所建立的工程起名, 為了便利治理, 工程名可以與頂層模塊名字相一樣; project location 一欄表示的是工程所在目錄, work 代表工作庫(kù),里面包含全部編譯過(guò)的文件;輸入工程名,并確定了工程所在位置后,點(diǎn)ok ;其次步:加入源文件并編譯建立好工程后,會(huì)彈出下圖所示窗口,可以挑選create new file 來(lái)在 modelsim 中直接編輯代碼文件 ,也可以挑選add existing file加入已有的源文件;也可以通過(guò)挑選 file-new-source來(lái)編輯源文件,如下

3、圖所示:加 入 源 文 件 后 , 可 以 鼠 標(biāo) 選 擇 源 文 件 , 點(diǎn) 擊 右 鍵compile-compile selected 來(lái)編譯源文件;也可以點(diǎn)擊直接編譯源文件;挑選, 可以編譯工程里面全部的源文件;在 transcript 窗口中可以查看編譯結(jié)果;假如有錯(cuò)誤,可以雙擊錯(cuò)誤提示,改正錯(cuò)誤,再編譯;第三步:仿真源文件編譯勝利證明源代碼沒(méi)有語(yǔ)法錯(cuò)誤, 啟動(dòng)仿真器對(duì)源文件進(jìn)行仿真;挑選 simulate-start simulation 或者點(diǎn)擊按鈕 ,會(huì)彈出一個(gè)挑選框,將 enable optimization 選項(xiàng)勾掉,這是仿真優(yōu)化選項(xiàng), 會(huì)對(duì)時(shí)鐘等進(jìn)行優(yōu)化, 在功能仿真階段不

4、需要優(yōu)化時(shí)鐘, 在后續(xù)布局布線中會(huì)對(duì)其進(jìn)行優(yōu)化; 同時(shí)要挑選仿真的測(cè)試文件在work 工作庫(kù)下,挑選測(cè)試文件,點(diǎn)擊ok ;挑選后的挑選框如下圖所示:在彈出的 instance 窗口中,挑選測(cè)試文件點(diǎn)擊右鍵,挑選add-to wave-all items in region將信號(hào)加到波形圖中:加入信號(hào)后, 點(diǎn)擊按鈕查看波形圖;進(jìn)行仿真, 點(diǎn)擊按鈕可以停止仿真,( 2)代碼掩蓋率仿真modelsim代碼 覆 蓋 率 功 能 code coverage , 能 報(bào) 告 出statement( 語(yǔ)句)、branch( 分支)、condition ( 條件)、expression(表達(dá))、toggle

5、(信號(hào)翻轉(zhuǎn))、fsm(有限狀態(tài)機(jī))等多種掩蓋率情形;第一步:編譯選項(xiàng)在 modelsim 的 workspace 里選中需要查看代碼掩蓋率的文件,然后點(diǎn)擊右鍵挑選compile compile properties,如下圖之后挑選“ coverage”選項(xiàng),顯現(xiàn)下圖所示的窗口,依據(jù)需要挑選選項(xiàng),這里選statement 、branch 、condition、expression 和 toggle ;選完點(diǎn) ok;其次步:編譯點(diǎn)工具欄中的,編譯全部的選中的文件,勝利后進(jìn)行下面的步驟;第三步:仿真點(diǎn)工具欄中的,顯現(xiàn)下面的窗口:(注:不要挑選“ enable optimization”)挑選 oth

6、ers ,顯現(xiàn)如下圖所示的窗口:挑選“ enable code coverage”后點(diǎn)“ ok”后顯現(xiàn)下面的窗口:然后就可以觀看結(jié)果;( 3)后仿真后仿真是將綜合出的網(wǎng)表文件進(jìn)行仿真,檢查其時(shí)序是否符合要求;第一步:加入文件并反標(biāo)函數(shù);第一將綜合 所映 射的庫(kù)文件 (工 作站的庫(kù)文 件目 錄為/tools/lib/smic13/smic0.13um/feview_stdio/version1.0/std/verilog/)smic13.v 拷貝到工程所在的目錄下;然后將綜合出來(lái)的網(wǎng)表文件(一般是.v 文件)以及延時(shí)文件( .sdf )文件也拷貝進(jìn)來(lái);將測(cè)試文件也拷貝進(jìn)來(lái), 并將這幾個(gè)文件加入工

7、程; 在測(cè)試文件中加上如下函數(shù)initial begin$sdf_annotate路徑 延時(shí)文件名 .sdf,實(shí)例名 ;end該函數(shù)的作用是把延時(shí)文件反標(biāo)到綜合網(wǎng)表中;其次步 編譯將網(wǎng)表文件、庫(kù)文件、延時(shí)文件以及測(cè)試文件全部編譯;編譯步驟與前仿真相同;第三步 仿真編譯通過(guò)后,啟動(dòng)仿真器,步驟與前仿真相同;就可以看到帶延時(shí)的仿真結(jié)果了;( 4)腳本自動(dòng)化do文件是一種腳本文件,可以一次執(zhí)行多條命令;執(zhí)行do文件可以一次完成多條仿真步驟,包括編譯,加信號(hào),仿真等;下面是一個(gè)能完成簡(jiǎn)潔仿真的do 文件的實(shí)例:#compile the filesvlog:for verilog, vcom:for v

8、hdl vlog drink_machine.v test_drink_machine.v# load simulationvsim work.test_drink_machine# vsim -novopt work.test_drink_machine# -novopt: dont select enable optimmization.#add waveadd wave -color yellow sim:/test_drink_machine/clk add wave sim:/test_drink_machine/rst_nadd wave -radix binary sim:/te

9、st_drink_machine/nickel_inadd wave -format literal sim:/test_drink_machine/dime_in add wave sim:/test_drink_machine/quarter_inadd wave sim:/test_drink_machine/collect add wave sim:/test_drink_machine/dispense add wave sim:/test_drink_machine/nickel_out add wave sim:/test_drink_machine/dime_out # -co

10、lor: set the waves color# -format: set the waves format, it has three option:#logic, literal and event, if you have not#set it, the format is logic. # -radix: set the signals radix notation.# run simulation run -all執(zhí)行步驟:第一將寫(xiě)好的.do文件加入到工程中,然后在modelsim 的命令界面中輸入命令: do 文件名 .do ,如下圖所示然后 modelsim 會(huì)自動(dòng)執(zhí)行編譯仿真

11、等操作;3. 試驗(yàn)結(jié)果( 1)功能仿真試驗(yàn)結(jié)果觀看可以通過(guò)點(diǎn)擊按鈕將波形圖解鎖出來(lái),到全屏狀態(tài)也可以點(diǎn)擊菜單欄的按鈕和,將波形放大或者縮小( 2)代碼掩蓋率結(jié)果觀看下面介紹反映代碼掩蓋率情形的各個(gè)窗口;workspace 窗口在 workspace 窗口挑選 files 標(biāo)簽頁(yè)并拖動(dòng)滾動(dòng)條到右側(cè), 設(shè)計(jì)的每個(gè)文件顯示了語(yǔ)句、 分支、 條件和表達(dá)式等語(yǔ)句的執(zhí)行掩蓋率匯總統(tǒng)計(jì)信息;在 workspace 窗口挑選 files標(biāo)簽頁(yè)并拖動(dòng)滾動(dòng)條到右側(cè), 本窗口將以設(shè)計(jì)中的每一條目來(lái)顯示執(zhí)行掩蓋統(tǒng)計(jì);missed coverage (未掩蓋到對(duì)象列表窗)窗口本窗口用于顯示所挑選文件未被執(zhí)行的語(yǔ)句、分支

12、、條件、表達(dá)式或未翻轉(zhuǎn)過(guò)的信號(hào);在 workspace 窗口的 files標(biāo)簽頁(yè)中挑選不同的文件, missed coverage 窗口的顯示會(huì)隨著挑選的文件而更新;下圖為分支覆蓋的情形:下圖為 statement coverage(語(yǔ)句掩蓋率)的情形;此時(shí)挑選任何一個(gè)實(shí)體在源代碼窗口中顯示相應(yīng)的行,設(shè)計(jì)假如包含為被執(zhí)行的語(yǔ)句或分支的行,就被粉紅色高亮顯示, 如下圖;圖中包含了 hits和 bc 欄用來(lái)顯示語(yǔ)句執(zhí)行 (statement hits )和分支掩蓋( bc)的情形;如下圖所示,在主窗口菜單欄挑選tool code coverage show coverage numbe ;.hit

13、s 和 bc 欄中的每一行圖標(biāo)將會(huì)被數(shù)字代替, 這些數(shù)字代表了該語(yǔ)句或分支被執(zhí)行的次數(shù);下表描述了個(gè)圖標(biāo)的含義:圖 標(biāo)描述表示本語(yǔ)句已被執(zhí)行過(guò)表示本行的某語(yǔ)句從未被執(zhí)行過(guò)或表示條件語(yǔ)句的“真”或“假”分支未被執(zhí)行過(guò)表示本行被指示不做代碼掩蓋統(tǒng)計(jì)current exclusion(當(dāng)前不做掩蓋率統(tǒng)計(jì)列表窗)本窗口用于列出所指定的不進(jìn)行掩蓋統(tǒng)計(jì)的全部文件和行; 設(shè)置排出文件如圖,右擊所選中的項(xiàng),按圖所示操作,操作完后,在current exclusion窗口就會(huì)顯現(xiàn)被排除的文件,同時(shí)源代碼窗口的hits欄的一些行會(huì)顯現(xiàn),說(shuō)明這些行不做代碼掩蓋統(tǒng)計(jì);在 current exclusion窗口中右擊需

14、要取消排除設(shè)置的文件,挑選cancel selected exclusions,復(fù)原成原狀,可以做代碼掩蓋率; 設(shè)置排出行如圖,在源代碼窗口右擊 hits欄中需要排除行的圖標(biāo), 圖中為 105 行,挑選第一個(gè)選項(xiàng);之后,在 current exclusion窗口會(huì)顯示出被排除的行信息,同時(shí)在源代碼窗口,被排除行的hits欄會(huì)顯現(xiàn),說(shuō)明該行不做代碼掩蓋統(tǒng)計(jì);取消排除行操作同上;details(具體資料窗)窗口:本窗口顯示了如真值表或翻轉(zhuǎn)細(xì)節(jié)等具體的未被掩蓋到的情形;當(dāng)在 missed coverage 窗口中挑選一行,可以在details窗口中查看相應(yīng)的具體信息,如下圖:instance coverage(實(shí)例掩蓋列表窗) 本窗口顯示了每個(gè)實(shí)例的掩蓋統(tǒng)計(jì);objects window (信號(hào)窗口)在該窗口中可以查看狀態(tài)翻轉(zhuǎn)統(tǒng)計(jì), 翻轉(zhuǎn)掩蓋統(tǒng)計(jì)了

溫馨提示

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