資源描述:
《ModelSim仿真軟件使用》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、-3-實(shí)驗(yàn)二modelsim仿真軟件使用1.實(shí)驗(yàn)?zāi)康?1)熟悉ModelSim軟件使用環(huán)境(2)掌握Testbench測試程序框架的編寫(3)掌握Testbench基本激勵產(chǎn)生方法和輸出結(jié)果觀察方法。2.實(shí)驗(yàn)內(nèi)容設(shè)計(jì)底層DUT單元:移位寄存器,功能同74LS164,輸入端口為clock、reset、load、sel,datain輸出端口為dataout,其并行輸入輸出數(shù)據(jù)寬度均為8比特。設(shè)計(jì)verilogtestbench代碼,實(shí)現(xiàn)對移位寄存器的功能進(jìn)行測試,要求測試移位寄存器的置位,左移,右移
2、等功能。3.實(shí)驗(yàn)步驟1)啟動modelsim軟件在modelsim中選擇File->ChangeDirectory,在彈出的Choosefolder對話框中設(shè)置目錄路徑為d:/testbenchexp。2)建立工程在modelsim中建立project,選擇File->New->Project.在ProjectName欄中填寫項(xiàng)目名稱,和頂層文件名字一致。ProjectLocation是工作目錄,可通過Brose按鈕來選擇或改變。DdfaultLibraryName采用工具默認(rèn)的work。Wor
3、kspace窗口的library中就會出現(xiàn)work庫。3)為工程添加文件工程建立后,選擇AddExsitingFile后,根據(jù)相應(yīng)提示將文件加到該P(yáng)roject中。移位寄存器文件shift_reg.v和測試激勵文件stimulus_tb.v,源代碼如下:測試激勵文件stimulus_tb.v:modulestimulus_tb;regclock,reset,load,sdatain;reg[1:0]sel;reg[7:0]data;wire[7:0]shiftreg;shift_regDUT1(
4、clock,reset,load,sel,data,sdatain,shparameterclockPeriod=10;initialbegin#0clock=1'b0;//settheclcokinitialvalue#200foreverclock=#(clockPeriod/2)~clock;endalways@(negedgeclock)begin#2sdatain=$random%2;end//AbsoluteTimeStimulusinitialbegin-3-reset=1;loa
5、d=0;sel=0;data=8'h7e;#100reset=0;#20load=1;#20load=0;#20sel=0;#(clockPeriod*8)sel=1;#(clockPeriod*40)$finish;endinitialbegin//terminalortexteditor$timeformat(-9,1,"ns",12);$display("TimeClkRstLdSftRgDataSel");$monitor("%t%b%b%b%b%b%b",$realtime,clock
6、,reset,load,shiftreg,data,sel);endendmodule移位寄存器文件shift_reg.v:moduleshift_reg(clock,reset,load,sel,data,sdatain,shiftreg);inputclock;inputreset;inputload;input[1:0]sel;input[7:0]data;inputsdatain;output[7:0]shiftreg;reg[7:0]shiftreg;regsdataout;alway
7、s@(posedgeclock)beginif(reset)shiftreg=0;elseif(load)shiftreg=data;elsecase(sel)2'b00:shiftreg=shiftreg;2'b01:shiftreg={shiftreg[7:1],sdatain};2'b10:shiftreg={shiftreg[6:0],sdatain};default:shiftreg=shiftreg;-3-endcaseendendmodule4)編譯文件編譯(包括源代碼和庫文件的編
8、譯)。編譯可點(diǎn)擊Comlile_ComlileAll來完成。5)裝載文件(1)雙擊libray中work中的stimulus裝載;(2)點(diǎn)擊simulate–startsimulation;(3)按右圖設(shè)置,點(diǎn)擊ok。6)開始仿真點(diǎn)擊workspace下的sim,點(diǎn)擊stimulus_tb,選擇add→addallsinaglestowave,然后點(diǎn)run–all,開始仿真。得到的波形如下:4.實(shí)驗(yàn)總結(jié)本次實(shí)驗(yàn),對ModelsimSE6.2b仿真軟件進(jìn)行了安裝,并初步學(xué)習(xí)了該軟件的使用。通過這次