modelsim详细使用教程一看就会docx.docx

上传人:b****5 文档编号:15198125 上传时间:2023-07-02 格式:DOCX 页数:16 大小:834.92KB
下载 相关 举报
modelsim详细使用教程一看就会docx.docx_第1页
第1页 / 共16页
modelsim详细使用教程一看就会docx.docx_第2页
第2页 / 共16页
modelsim详细使用教程一看就会docx.docx_第3页
第3页 / 共16页
modelsim详细使用教程一看就会docx.docx_第4页
第4页 / 共16页
modelsim详细使用教程一看就会docx.docx_第5页
第5页 / 共16页
modelsim详细使用教程一看就会docx.docx_第6页
第6页 / 共16页
modelsim详细使用教程一看就会docx.docx_第7页
第7页 / 共16页
modelsim详细使用教程一看就会docx.docx_第8页
第8页 / 共16页
modelsim详细使用教程一看就会docx.docx_第9页
第9页 / 共16页
modelsim详细使用教程一看就会docx.docx_第10页
第10页 / 共16页
modelsim详细使用教程一看就会docx.docx_第11页
第11页 / 共16页
modelsim详细使用教程一看就会docx.docx_第12页
第12页 / 共16页
modelsim详细使用教程一看就会docx.docx_第13页
第13页 / 共16页
modelsim详细使用教程一看就会docx.docx_第14页
第14页 / 共16页
modelsim详细使用教程一看就会docx.docx_第15页
第15页 / 共16页
modelsim详细使用教程一看就会docx.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

modelsim详细使用教程一看就会docx.docx

《modelsim详细使用教程一看就会docx.docx》由会员分享,可在线阅读,更多相关《modelsim详细使用教程一看就会docx.docx(16页珍藏版)》请在冰点文库上搜索。

modelsim详细使用教程一看就会docx.docx

modelsim详细使用教程一看就会docx

Modelsim详细使用方法

很多的modelsim教程中都讲得很丰富,但忽视了对整个仿真过程的清晰解读,而且都是拿counter范例举例子,有些小白就不会迁移了。

这里我们着眼于能顺利的跑通一个自己写的程序,一步一步的讲解,如果你是一个初学者,这再适合你不过了,虽然貌似字写得比较多,那是因为写得相当的详细,一看就会啦0(Q_n)0~

1、在建立工程(project)前,先建立一个工作库(library),一般将这个library命名为work。

尤其是第一次运行modelsim时,是没有这个"work”的。

但我们的project

一般都是在这个work下面工作的,所以有必要先建立这个work。

Filenewlibrary

 

点击library后会弹出一个对话框,问是否要创建work,点击OK。

就能看见work.

 

It

口wort

Ufbt

Vflrt;

±-A.flwtfaib

LlrPT

fHODEL-TEiCHj8.'RwlftdtJ

1■nilh^Tii

Lih-Brp

$H

'rvTiiQw

utraQ

sHODa_TEO^,_liiKm-2.0.1

pAmbPA

ubnr>

SHOGB-jrEat'-M'paJb

±

llbTBTY

SWffiLJTECW^upijb

±1L玖亦

tlran

・■-.iioiai^u

□b-orp

fH

ijjLiMfi-

ubrio

SHODajTEtHiUiWi

■>.Amwiftsmjt

ubnrr

SHOQa_TKHLllr™iei5tnJ4!

librae

iHCDBLJTECW.'sid

UbriTF

爭HOT&_TECHh皿時Esii:

■Jlli.ivwpwfi

Lih-orp

ijk/rintaf

ubrzo

sHODB-JTEtHi'-iWtoq

2、如果在library中有work,就不必执行上一步骤了,直接新建工程。

Filenewproject

MlArirSriI|'L-

 

RjMM-fl**

Hjmnl*

■4m

口Tiwwryt1二匸H***

±++KBTnLrjJfC31.1■:

_Enl7/1-rLFl■J711rdTfltSel-SLTlL1L1.

・UUiKklAl£

T

t*™

KI■

会弹出

立CreatePrqj亡tt

 

 

会出现

MAddftem^totheProject

Clickontheicontoadditemsofthattype:

□□

CreateNev:

FileAddExistingFile

 

CreateSimulation

CreateNev;Folder

 

Close

 

 

CreateNewFile。

由于我们是要仿一个自己写的程序,所以这里我们选择

在FileName中写入文件名(这里的filename和刚刚建立的projectname可以一致也可以不一致)。

注意Addfileastype要选择成Verilog(默认的是VHDL),然后0K。

 

发现屏幕中间的那个对话框没有自己消失,我们需要手动关闭它,点close。

并且在project中出现了一个half_clk.V的文件,这个就是我们刚刚新建的那个file。

这样工程就建立完毕了。

1、写主程序:

双击half_clk.v文件会出现程序编辑区,在这个区间里写好自己

的程序,这里我们写一个简单的二分频的代码:

modulehalf_clk_dai(

clk_in,rst,clk_out

);

inputclk_in;

inputrst;

outputclk_out;

regclk_out;

always@(posedgeclk_inornegedgerst)begin

if(!

rst)

clk_out<=0;

else

clk_out<=~clk_out;

end

写完代码后,不能马上就编译,要先保存,否则,编译无效。

我们会看到“保存”的图标是两色的,而且half_clk.v后的“?

”还存在,这说明你没有保存文件,

软件问题。

其实只是没保存。

 

2、写测试程序(testbench):

每一个主程序(实现我们需要的某种功能的程序),都要

配套的编写一个测试程序,为什么?

这里不打算细说,testbench是给主程序提供时钟和

信号激励,使其正常工作,产生波形图,具体请参看verilog教课书。

在half_clk.v下方的空白区域内右键,选择AddtoProjectNewFile

pModelSimSE.PLUS

FileEditViewCompileSimulateAddPrcjectT^olsLayoutWindowHelp

 

出现下框,写入测试程序的名字half_clk_tb,tb是testbench的意思,注意选verilog,

Ok。

这样就把half_clk_tb.v加载到了project中,双击half_clk_tb.v在右边的程序编辑区中编写代码:

timescale1ns/1ns

modulehalf_clk_top;

regclk_in;

regrst;

initial

begin

clk_in=1;

rst=1;

#1000

rst=0;

#1000

rst=1;

end

always#200clk_in=~clk_in;

half_clk_daidai1(

.clk_in(clk_in),

.rst(rst),

.clk_out(clk_out));

endmodule

二、编译代码

编译成功后,half_clk.v和half_clk_tb.v后面的?

变成了对勾,并且在最下方的Transcript

栏中出现了successful字样,说明编译成功,否则会报错,就要回到程序中修改,只有编译成功后,才能往后面进行。

四、仿真

在屏幕左下角的位置有一个library和project的切换窗口,点击library,再点击work

前的“+”号,将其展开,会看到两个文件,文件名是我们刚刚写的half_clk.v和

half_clk_tb.v两个文件中的module名。

仿真不用两个文件都simulate,只需simulate测试文件即可,我们选择halfclktop右键,选择simulate。

 

FileEditView匚ompileSimuhteAddLibraryTcqIsLayoutWin,

MModelsimSEPLUS6.Sa

Hfi-D

rtri)&^modaltftdh_6.5a/asmples/lialfj

Lnr

p|帥EQ

Sknuldtt

-血gk

holfdkddi

SsPTtldHravlTFujtUpiTiiza:

jrfsmelate酗rh^ull门贰哗tawSiriLllatewthCcrverzge

Jo,Litiery二:

:

+J1xl

TyppIPHth

Lbidrywork

Moduh匸」rrydu'l

Lrimescalelns/lr

wdult;1;Jifelkt

J-

上•血mdAvtr二血rrttiCKm±JlmfcPAt血ntiUPF-di岳tMvznliDK上血”M”M:

ih

IS?

AmorlFlqiT

Od

5tJd«vw

Edit

RefreshRCCOfTipilCOptM^ilE*Updst^

0

9

10

12

13

H

r^c亡in;

-

re7T3t?

initial

"弋q二匸

邛t二;

#2000000

ESt=0;

&nd

-t2OC0C'k

■Jtwrlbg

he/.

8

..

h

ej]rj:

icSuit:

dQLSfdry韭可ujGil

PtTrtnKnpt

・「・丄,

13[[yjhalLcItv冷同h*_tJ5”¥*f

ICoupil^afbalf—dJ.k—tb.pwasaucce99ful.t2csrapila^^0failedwizhnooxzer^*

之后会出现objects框:

按住Ctrl键选中

clk_in,clk_out,rst三个信号,右键选择

AddToWaveSelectedSignals

 

 

这样,看波形的窗口就会出现,将红色圈圈中的仿真时间步改成

5ms,然后按旁边的运

行按键,

波形就出现了。

按住

Ctrl滚动鼠标滑轮可以缩放波

形。

 

 

看下面的波形可观察,在rst复位并置高之后,clk_out就出现了,并且周期是clk_in的两倍,也就是输出频率为输入频率的一半,达到了二分频的效果。

■常吉羁—'“”*尹斗I

讀vrmy―]haH_£it_tb.r-'prjhalf」ik.v

五、停止仿真

当modelsim在仿真中的时候,修改程序、编译等都是无效的,也不能强行关闭软件,这是就需要手动停止仿真,以便进行其他操作。

选择菜单栏中的simulateEnd

Simulateion即可。

总结:

建立工程编写主程序和测试程序编译仿真观察波形。

写了很多,但是应该讲得很详细了吧,希望对大家的学习有所帮助。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2