版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、如何編寫testbench的總結(jié)(非常實(shí)用的總結(jié))1激勵(lì)的設(shè)置相應(yīng)于被測(cè)試模塊的輸入激勵(lì)設(shè)置為reg型,輸出相應(yīng)設(shè)置為wire類型,雙向端口inout在測(cè)試中需要進(jìn)行處理。方法1:為雙向端口設(shè)置中間變量inout_reg作為該inout的輸出寄存,inout口在testbench中要定義為wire型變量,然后用輸出使能控制傳輸方向。eg:inout[0:0]bi_dir_ptwire[0:0]bi_dir_ptreg[0:0]bi_di
2、r_pt_regregbi_dir_pt_oeassignbi_dir_pt=bi_dir_pt_oebi_dir_pt_reg:1bz用bi_dir_pt_oe控制端口數(shù)據(jù)方向,并利用中間變量寄存器改變其值。等于兩個(gè)模塊之間用inout雙向口互連。往端口寫(就是往模塊里面輸入)方法2:使用fce和release語(yǔ)句,這種方法不能準(zhǔn)確反映雙向端口的信號(hào)變化,但這種方法可以反映塊內(nèi)信號(hào)的變化。具體如示:moduletest()wireda
3、ta_inoutregdata_regreglink#xx延時(shí)fcedata_inout=1bx強(qiáng)制作為輸入端口...............#xxreleasedata_inout釋放輸入端口endmodule從文本文件中讀取和寫入向量1)讀取文本文件:用$readmemb系統(tǒng)任務(wù)從文本文件中讀取二進(jìn)制向量(可以包含輸入激勵(lì)和輸出期望值)。$readmemh用于讀取十六進(jìn)制文件。例如:reg[7:0]mem[1:256]a8bit25
4、6wd定義存儲(chǔ)器meminitial$readmemh(“mem.data“mem)將.dat文件讀入寄存器mem中initial$readmemh(“mem.data“mem1281)參數(shù)為寄存器加載數(shù)據(jù)的地址始終2)輸出文本文件:打開輸出文件用$fopen例如:integerout_fileout_file是一個(gè)文件描述,需要定義為integer類型out_file=$fopen(“cpu.data“)cpu.data是需要打開的文
5、件,也就是最終的輸出文本設(shè)計(jì)中的信號(hào)值可以通過$fmonit$fdisplay2.Verilog和Ncverilog命令使用庫(kù)文件或庫(kù)目錄ex).ncverilogfrun.fvliblib.vylib2libext.v一般編譯文件在run.f中庫(kù)文件在lib.v中l(wèi)ib2目錄中的.v文件系統(tǒng)自動(dòng)搜索#10000$shm_close即可。4.ncverilog編譯的順序:ncverilogfile1file2....有時(shí)候這些文件存在依
6、存關(guān)系如在file2中要用到在file1中定義的變量這時(shí)候就要注意其編譯的順序是從后到前就先編譯file2然后才是file2.5.信號(hào)的強(qiáng)制賦值fce首先f(wàn)ce語(yǔ)句只能在過程語(yǔ)句中出現(xiàn)即要在initial或者always中間.去除fce用release語(yǔ)句.initialbeginfcesig1=1b1...releasesig1endfce可以對(duì)wire賦值這時(shí)整個(gè)都被賦值也可以對(duì)reg賦值.6加載測(cè)試向量時(shí),避免在時(shí)鐘的上下沿變化為
7、了模擬真實(shí)器件的行為,加載測(cè)試向量時(shí),避免在時(shí)鐘的上下沿變化,而是在時(shí)鐘的上升沿延時(shí)一個(gè)時(shí)間單位后,加載的測(cè)試向量發(fā)生變化。如:assign#5c=a^b……@(posedgeclk)#(0.1`cycle)A=1testbench的波形輸出moduletop...initialbegin$dumpfile(“.top.vcd“)存儲(chǔ)波形的文件名和路徑一般是.vcd格式.$dumpvars(1top)存儲(chǔ)top這一層的所有信號(hào)數(shù)據(jù)$du
8、mpvars(2top.u1)存儲(chǔ)top.u1之下兩層的所有數(shù)據(jù)信號(hào)(包含top.u1這一層)$dumpvars(3top.u2)存儲(chǔ)top.u2之下三層的所有數(shù)據(jù)信號(hào)(包含top.u2這一層)$dumpvars(0top.u3)存儲(chǔ)top.u3之下所有層的所有數(shù)據(jù)信號(hào)endendmodule產(chǎn)生隨機(jī)數(shù)seed是種子$rom(seed)ex:din=$rom(20)仿真時(shí)間為unsigned型的64位數(shù)據(jù)$timeex:...timec
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 如何編寫監(jiān)理周報(bào)
- 如何編寫施工方案
- 如何編寫公司章程
- 企業(yè)如何編寫質(zhì)量手冊(cè)
- 手把手教你如何編寫領(lǐng)導(dǎo)想要的培訓(xùn)總結(jié)(實(shí)用技巧)
- 如何編寫質(zhì)量體系文件
- 如何編寫融合課程科學(xué)教材
- 如何編寫和使用校本教材
- 新版cma《質(zhì)量手冊(cè)》如何編寫
- 如何編寫講師手冊(cè)- 講師手冊(cè)
- 如何編寫一個(gè)簡(jiǎn)單的程序
- 項(xiàng)目總結(jié)報(bào)告的編寫
- 如何編寫控制面板程序
- 如何設(shè)計(jì)和編寫教學(xué)大綱(syllabus)
- 0---如何編寫qc成果報(bào)告
- 如何編寫高質(zhì)量軟件需求文檔
- 如何編寫眾籌項(xiàng)目計(jì)劃書?
- 教你如何編寫免費(fèi)試用申請(qǐng)理由
- 如何編寫一份 項(xiàng)目總體計(jì)劃
- 環(huán)評(píng)項(xiàng)目報(bào)價(jià)單如何編寫
評(píng)論
0/150
提交評(píng)論