ModelSim使用的一点心得
ModelSim使用的一点心得- -
ModelSim使用的一点心得- -1、至今还没有弄明白为什么要用ModelSim,因为看波形Quartus II自带的工具就可以了啊。
2、我刚刚接触modelsim,我想大多数菜鸟跟我一样,看过如何使用ModelSim的介绍,说句实话,那些介绍写的都太过简单,仿佛大家都不屑写上一些比较“弱智”的步骤,恰恰就是这些看似累赘的步走,难为我好久。
教程上都写道,modelsim的简单使用方法如下:建立库- 影射库到物理目录- 编译代码- 启动仿真。
首先建立库就叫我头晕。
库的概念用在这儿实在不合适,把我吓坏了,也就没心思看下一步了。
在我看来,教程应该这么写:<1> 建立一个目录modelsimStudy。
用任何文本编辑器编辑一个简单的例子程序,比如计数器counter.vhd。
有clk、ena、reset输入,cnt作为输出。
<2> 打开Modelsim,首先create project,工程名随意取了,比如命名为test,目录设在modelsimStudy下,默认的库work不变(这样就不用管什么建立库之类的东西了)。
然后add existing file,把counter.vhd加入当前工程。
<3> 编译这个文件,通过之后,work下面会出现counter这个实体。
然后选中它,右键,simulate(左键双击也可)。
<4> ModelSim有很多窗口(新手就怕这个),一开始只要选择view下面的objects 和wave窗口就行了。
旧版的signal窗口在6.0的版本改名为Objects(这个我是摸索了好久才发现的,是不是太笨了?)。
wave窗口刚打开时是空的,需要在objects窗口的add -> wave -> signals in region。
这时,wave上就有clk\ ena \ reset等信号了。
<5> 我们给clk来个输入激励,在object窗口中选中clk,右键选clock,给它定义个时钟。
Multisim使用心得(1)
Multisim使用心得8月19日—8月20日Multisim——NI出品的一款功能强大的电子线路仿真软件,它不仅可以仿真弱电电子,也可以仿真强电,还可以仿真射频微波和FPGA。
以前在学校的时候我就用它验证过不少电路设计,感觉挺不错的,并且仿真的数据也很准确(这个主要跟SPICE模型的精确度有关)。
记得刚开始使用它的时候,有很多次仿真结果与实际差很多,也忍不住会骂NI,这么垃圾的东西也拿出来卖啊,谁要是相信他了,结果肯定是死的很惨,呵呵。
虽然刚开始给我的感觉很不好,但是那时手头也没有比较好的电路仿真软件,先凑合着用吧,等发现更好的再替换它。
现在回头想想,NI挺冤的,经过这么长一段时间的使用和查资料解决相关问题,我终于明白了网上一个前辈说的话,软件本身很不错,但是能不能得到比较精确的结果在于用的人,你会不会使用它。
呵呵,事实确实如此。
Multisim是EWB的升级版,早先的时候,很多电子工程师热衷于使用EWB 来辅助设计,但是牵涉到具体器件上后,EWB就有点力不从心了,Multisim却包含了许多具体的元器件,使用者可以在里面找到相关的型号,然后开始验证自己的设计是否正确合理。
但是有一个问题也会随之而来,就是设计人员在设计电路的时候不会从Mulitisim中去查找合适的元件,而是根据要求与指标先查找合适的元件,然后再去验证自己的正确性,这样一来,就会有许多元件可能在Multisim中找不到,查找Multisim中相同参数的元件又很麻烦,怎么办呢?幸好Multisim可以创建仿真元件模型,否则的话,我们设计出来的东西就只有实际搭出来验证了,这样就会浪费很大的人力物力财力。
下面我就说一下仿真模型的创建步骤。
首先要准备好器件的Pspice模型,这是最重要的,没有这个东西免谈,当然Spice高手除外。
下面就可以利用Multisim的元件向导功能制作自己的仿真元件模型了。
接下来我们以OP07(通用运放)为例介绍一下Multisim创建仿真模型的具体步骤。
modelsim调试技巧
modelsim调试技巧ModelSim是一款流行的电子设计自动化(EDA)工具,广泛应用于集成电路、通信系统和消费电子产品的仿真和调试。
本文将介绍ModelSim的一些调试技巧,帮助您更高效地进行仿真和调试。
一、设置仿真环境1. 启动ModelSim,创建一个新的工程或打开已有的工程。
2. 配置仿真参数,如仿真时钟频率、时序约束等。
3. 编写测试向量或测试脚本,用于验证设计的正确性。
二、常用调试技巧1. 实时监测:在仿真过程中,可以使用实时监测功能来观察仿真波形,以便快速发现设计中的问题。
可以使用“实时监测”工具栏中的相关按钮或命令。
2. 断点设置:在需要调试的代码行设置断点,以便在运行到该行时暂停仿真,从而方便查看该行执行前后的变量值和状态。
可以使用“断点”工具栏中的相关按钮或命令来设置断点。
3. 变量观察:在仿真过程中,可以使用“变量观察”功能来观察设计中的变量值。
可以在仿真波形窗口中双击需要观察的变量,将其添加到“变量观察”列表中。
4. 波形分析:ModelSim提供了强大的波形分析功能,可以帮助您分析仿真波形的异常情况,如信号过冲、下冲等。
可以使用“波形分析”工具栏中的相关按钮或命令来进行波形分析。
5. 脚本调试:如果您的测试脚本中有错误,可以使用ModelSim 的脚本调试功能来逐行执行脚本,并查看每行执行前后的变量值和状态,以便找到错误位置。
可以使用“脚本调试”工具栏中的相关按钮或命令来进行脚本调试。
三、高级调试技巧1. 仿真结果分析:通过分析仿真结果,可以发现设计中的潜在问题。
可以使用ModelSim提供的各种分析工具和报告功能,如时序分析、功耗分析等,来帮助您更好地理解仿真结果。
2. 多平台仿真:ModelSim支持与Xilinx、Intel等厂商的多种硬件平台进行联合仿真,以便更好地验证设计的兼容性和可靠性。
通过多平台仿真,您可以更快地发现设计中的潜在问题。
3. 自动测试生成:ModelSim提供了自动测试生成功能,可以根据设计的结构和行为自动生成测试向量或测试脚本。
一个Modelsim的demo,给你启示
写在前面的话学过MCU设计的朋友都知道,系统调试是多么的重要。
而对于FPGA设计来说,仿真确实最重要的。
一个完整的项目,必须有完整的仿真平台。
有朋友说,按键仿真模型没法搞。
我只能说,你并不了解硬件及处理按键的工作原理,如果你知道。
按键仿真模型很容就可以做开始学习VERIlOG HDL的朋友是不是很乏味,因为不知道课文中的代码是否正常工作,实际工作会是怎么样子的。
今天给大家讲解的是一个Modelsim仿真的DEMO这里开始吧设计中包含3个文件:1.工程设计文件(可综合执行成硬件电路文件):demo_test.v2.仿真平台文件(不可综合执行成硬件电路文件):testbench_demo_test.sv (这里的文件后缀可以是.v)3.Modelsim执行脚本文件:run.do各文件代码如下图:图1图2图3其中图1为demo_test.v图2为testbench_demo_test.sv图3为run.do启动仿真平台A. 把三个文件放置到同一个目录下,该目录的路径必须是纯英文或有短下划线(关于这点自己注意),B. 启动Modelsim;C. 制定Modelsim的直接目录,File -> Change Directory. 指定到A指向的目录。
D.在Transcript框中输入:do run.do 回车E.等待波形结果.在熟悉"启动仿真平台"后,F.开始分析代码,这个自己把握。
接下来G1或者G2G1.分析脚本文件run.do. 查看"启动仿真平台"A指向目录产生的文件或文件夹,简单了解脚本实现方式.G2.在代码相应位置输入课文中的一些例子。
再次启动仿真平台H.进入高级设计阶段。
常见问题一个必须要提醒的问题:经常听到有人问这么一个问题,而且有时还碰到一些工作一年的朋友也问:为什么我的信号一直是高阻状态?对于仿真而言,所有信号如何没有赋值,软件认为该信号就为高阻状态,比如以下代码initial beignforever #10 clk = ~clk;end设计者意图很明显:生成一个周期为20个刻度的时钟。
关于simulink,modelsim仿真的小结
MODELSIM学习笔记(二)Dsp Builder设计初步的小结杨森Sept 2015现在使用的软件版本分别是 quartusii 11.0 ,modelsim 10.0c, matlab 2010b ,关于软件的安装以及相互之间的关联,做一个简要的说明。
主要需要注意的是,1.必须在安装dsp builder之前安装matlab;2.dsp破解后(若不破解,simulink中的dsp的库文件不能使用),设置环境变量;3.dsp builder破解过程会生成一个license,这个和之后安装的modelsim生成的license需要共用一个环境变量,所以,可以把两个license合并(把其中一个拷到另外一个最后面);软件相互之间能够关联非常重要,否则后面会出现很多意想不到的问题。
我一开始是按照“EDA技术与VHDL(第三版潘松著)”一书中第九章dsp builder设计初步来做的,课本里说使用tcl脚本文件,不知道是不是由于软件版本的原因,根本无法产生想要的结果,故花了一周左右的时间研究modelsim的使用方法。
在这过程中,出现了各种各样的bug,在崩溃的边缘,最后还是依靠各种网络上的资源片段,一个一个warning和error的调试,最终把所有的仿真给做出来了。
我之所以这么执着于仿真,是因为我后期需要做一个FIR的滤波,在simulink中来做,非常的方便,但是,若不进行rtl级仿真和时序仿真,根本不知道转换过来的vhdl代码能不能使用,这是闲话哈,好了,开始我们的操作过程中遇到的问题的详述吧。
本文主要是关于modelsim的RTL级仿真,后面还会陆续有关于时序仿真的教程,如果有童鞋遇到的难题,可以相互讨论一下,我的联系方式:邮箱:senyangah@主要的过程1.完成一个例程其实很多软件都一个共性,那就是,看再多的例程都不如亲手完成一个设计.网上关于各种初级教程有很多,但是,大多数情况是,你跟着教程一步一笔的去做,根本出现不了你想要的结果,我选择了2个稍微比较好一点的教程,并且里面出现的一些小的bug都已经通过注释给讲明了怎么改.本来我也是打算自己写一个教程,一步一步的把操作步骤写下来,但是我发现,首先就是完全没必要啊,网上给的教程的大致过程都是对的,其次就是这个太耗时间了,所以原谅我的偷懒哈,附件中的教程2和教程3,都是可以仿真成功的,大家跟着做就行啦~其中教程2是使用的自动编译,从quartus中直接启动modelsim,教程3是手动编译,第一个例子是使用vism的命令进行操作的,虽然很繁琐,但是对于初学者来说,了解各个参数的设置是很好的,后面的例程通过编写testbench来进行仿真,这种方式是我们以后进行仿真的主要模式.2.Testbench的编写因为本文主要是围绕着simulink生成的vhdl的modelsim仿真来编写的,所以,我们主要介绍的是怎样使用vhdl来编写testbench,附件中教程4,就是用vhdl来编写testbench,以后我们每次需要编写testbench的时候,就先通过quartus来生成一个testbench模板,然后按照教程4中的模板进行各个参数的设置.关于怎么生成testbench的模板,教程2中有说明.3.关于library的添加如果代码是我们编出来的,那么在用modelsim进行仿真的时候,无需添加任何的library,但是若使用到IP核(比方说product模块吧),则需要添加library,原因可以问度娘哈.关于怎么添加library,教程5非常的好用,这里面有几个主要的关键点需要注意:1.教程5的前几个库添加的时候,一定要注意每个VHD文件添加的顺序,比方说:先添加altera_mf_components.vhd后ALTERA_MF.vhd,一个一个的添加,如果一下子全部的话,会有报错。
modelsim的理解
Modelsim 仿真软件的学习及理解一软件简介Modelsim仿真工具支持Verilog、VHDL以及他们的混合仿真,它可以将整个程序分步执行,使设计者直接看到他的程序下一步要执行的语句,而且在程序执行的任何步骤任何时刻都可以查看任意变量的当前值,可以在Dataflow窗口查看某一单元或模块的输入输出的连续变化,具备强大的模拟仿真功能,在设计、编译、仿真、测试、调试开发过程中,有一整套工具供你使用,而且操作起来极其灵活,可以通过菜单、快捷键和命令行的方式进行工作。
ModelSim的窗口管理界面让用户使用起来很方面,它能很好的与操作系统环境协调工作。
ModelSim 的一个很显著的特点就是它具备命令行的操作方式。
二功能介绍Modelsim的主要功能包括:对设计文件的设计、编译和仿真。
设计文件的设计:在Modelsim软件打开之后,在把库和工程建立好的前提下,编译设计文件,编译设计文件时遵循verilog的编程规则,语法方面注意关键字的用法,编译设计文件包括两个部分:设计文件源代码的编译和测试代码的编译,测试代码编写时注意函数的调用,尤其是端口的对应,包括名称对应和位置对应,同时还应该注意激励信号的设定,此时应该注意时钟的延时是否是惯性延时。
文件的编译:文件的编译的主要目的是:检查程序语言的语法错误,在编译过程中可以通过两种方法实现:工具按钮的编译法和指令输入的编译法,工具按钮编译法适合于初学者,而指令输入法适合于编程经验较足的编程人员。
编译的过程也就是第一轮检查程序代码的过程,通过编译,软件会以指令的形式在输出脚本框中显示出来,通过显示的错误信息,编程人员会再较短的时间内找处错误代码,及时修改,提高了编程的效率和准确性。
文件的仿真:文件的仿真即就是在写好的源代码和测试代码的基础上,给程序一定的激励信号,在激励信号的基础上观察源代码波形图的变化,是否符合设计初衷,是否满足设计的时序逻辑和组合逻辑的要求。
ModelSim使用的一点心得体会
ModelSim使用的一点心得- -1、至今还没有弄明白为什么要用ModelSim,因为看波形Quartus II自带的工具就可以了啊。
2、我刚刚接触modelsim,我想大多数菜鸟跟我一样,看过如何使用ModelSim的介绍,说句实话,那些介绍写的都太过简单,仿佛大家都不屑写上一些比较“弱智”的步骤,恰恰就是这些看似累赘的步走,难为我好久。
教程上都写道,modelsim的简单使用方法如下:建立库- 影射库到物理目录- 编译代码- 启动仿真。
首先建立库就叫我头晕。
库的概念用在这儿实在不合适,把我吓坏了,也就没心思看下一步了。
在我看来,教程应该这么写:<1> 建立一个目录modelsimStudy。
用任何文本编辑器编辑一个简单的例子程序,比如计数器counter.vhd。
有clk、ena、reset输入,cnt作为输出。
<2> 打开Modelsim,首先create project,工程名随意取了,比如命名为test,目录设在modelsimStudy下,默认的库work不变(这样就不用管什么建立库之类的东西了)。
然后add existing file,把counter.vhd加入当前工程。
<3> 编译这个文件,通过之后,work下面会出现counter这个实体。
然后选中它,右键,simulate(左键双击也可)。
<4> ModelSim有很多窗口(新手就怕这个),一开始只要选择view下面的objects 和wave窗口就行了。
旧版的signal窗口在6.0的版本改名为Objects(这个我是摸索了好久才发现的,是不是太笨了?)。
wave窗口刚打开时是空的,需要在objects窗口的add -> wave -> signals in region。
这时,wave上就有clk\ ena \ reset等信号了。
<5> 我们给clk来个输入激励,在object窗口中选中clk,右键选clock,给它定义个时钟。
modelsim时序仿真最低时间间隔
modelsim时序仿真最低时间间隔
当我们进行数字电路设计时,时序仿真是必不可少的一步。
而在进行时序仿真时,我们需要注意一个重要的参数,即仿真的最低时间间隔。
在ModelSim中,最低时间间隔是指仿真时刻的最小精度,也就是仿真的时间分辨率。
这个参数的设置对于仿真结果的准确性和精度至关重要。
在进行时序仿真时,我们需要考虑到电路中各个信号的传输延迟和时序关系。
如果时间间隔设置得过大,仿真结果可能会出现误差,无法准确反映电路的真实行为。
而如果时间间隔设置得过小,不仅会增加仿真的计算量,还可能导致仿真时间过长,甚至无法完成仿真。
所以,在设置最低时间间隔时,我们需要根据电路的复杂程度和仿真的需求来进行选择。
一般来说,对于大多数数字电路设计,设置一个合适的最低时间间隔就能够满足仿真需求。
在实际操作中,我们可以根据经验来选择一个合适的时间间隔,然后通过观察仿真结果的准确性和稳定性来进行调整。
总的来说,时序仿真的最低时间间隔对于仿真结果的准确性和精度有着重要的影响。
合理设置最低时间间隔可以提高仿真的效率和准确性,从而更好地验证和优化数字电路设计。
在使用ModelSim进行时序仿真时,我们应该根据电路的特点和仿真需求来选择合适的时间间隔,以获得准确而高效的仿真结果。
modelsim仿真工具的一些使用心得
3. 之前的使用方法
在ISE中安装modelsim, 嵌套使用仿真工具
优点---使用方便,易于入手
缺点---不能做系统级别的仿真,仿真效率 很低, 处理modelsim与ISE不兼容的问题
4. 新使用方法
最大特点:不需要和ISE结合使用 方法步骤: 导入仿真库文件 建立工程,利用命令行编写do文件 执行仿真程序
关于Modelsim仿真工具的 一些心得
1.Moelsim版本
ModelSim分几种不同的版本:SE、PE、LE和 OEM,其中SE是最高级的版本。而集成在 Actel、Atmel、Altera、Xilinx以及Lattice等 FPGA厂商设计工具中的均是其OEM版本。 MODELSIM SE是主要版本号,也是功能最强 大的版本,支持对Verilog和VHDL语言的混合 SE版和OEM版在功能和性能方面 有较大差别 仿真。对于代码少于40000行的设计, ModelSim SE 比ModelSim XE要快10倍;对于 代码超过40000行的设计,ModelSim SE要比 ModelSim XE快近40倍。
第二步:在modelsim.ini中添加如下 标准库
simprim_ver = G:/EDA/Xilinx/simprim_ver(库的路 径,以下同) unisim_ver = G:/EDA/Xilinx/unisim_ver xilinxcorelib_ver = G:/EDA/Xilinx/xilinxcorelib_ver
第三步. 综合
之前都是使用ISE自带综合工具 缺点:综合速度慢,单线程综合 推荐使用Synplify pro(我这里用9.6版本) 仿真工具 优点:四线程综合,仿真速度提高四倍
想很多人跟我一样,被ModelSim的后仿真搞的头晕脑胀
想很多人跟我一样,被ModelSim的后仿真搞的头晕脑胀。
为了这个问题,我在网上找了很多的资料,但发现这些资料往往说的不明白。
一些步骤被作者有意无意地省略掉,这常常给读者造成不必要的麻烦,所以我决定写下这一篇文章,把这3天我努力的结果拿出来,与大家分享。
首先,我把我用到的软件说明一下。
如果你发现根据我的操作,你还是解决不了ModelSim后仿真的问题,那就可能是软件版本的问题。
1, ModelSim Se 6.1b2, Synplify Pro 7.5.13, ISE 5.2i (这个是老了点)4, WindowsXP(这个应该没有多大的关系)还有就是我使用的是verilog,我想VHDL的方法与verilog是差不多的,最多也就是在建库方面有点差别而已。
下面的这些方法,是我这3天搞出来的。
当然也参考了一些文章。
如果谁有更方便的方法,欢迎指出来。
我的邮箱是****************。
有空大家多交流。
一、为modelsim生成3个库。
首先,介绍一下这三个库。
Simprim_ver:用于布局布线后的仿真。
Unisim_ver :如果要做综合后的仿真,还要编译这个库。
Xilinxcorelib_ver:如果设计中调用了CoreGen产生的核,则还需要编译这个库。
我们要为modelsim生成的是标准库。
所谓的标准库就是modelsim运行后,会自动加载的库。
不过这方面我还不是很肯定。
因为我在后仿真时,还是要为仿真指定库的路径,不然modelsim找不到。
第一步:在modelsim环境下,新建工程,工程的路径与你想把库存储的路径一致。
第二步:新建库,库名起作simprim_ver。
我们首先就是要建的就是这个库。
第三步:在modelsim的命令栏上,打下如下命令:vlog -work simprim_ver d:/Xilinx/verilog/src/simprims/*.v其中的d:/Xilinx是我的Xilinx的安装路径,你把这个改成你的就行了。
ModelSim新手使用手册
ModelSim最基本的操作,初次使用ModelSim的同学,可以看看,相互学习。
无论学哪种语言,我都希望有个IDE来帮助我创建一个工程,管理工程里的文件,能够检查我编写代码的语法错误,能够编译运行出现结果,看看和预期的结果有没有出入,对于Verilog语言,我用过Altera的Quartus II,Xilinx的ISE,还有ModelSim(我用的是Altera 官网的ModelSim_Altera),甚至MAXPlus II,不过感觉这软件太老了,建议还是前三者吧。
学Verilog,找一本好书很重要,参考网友的建议,我也买了一本夏宇闻老师的《Verilog 数字系统设计教程》,用Quartus II来编写代码,个人觉得它的界面比ISE和ModelSim友好,我一般用它编写代码综合后自动生成testbench,然后可以直接调用ModelSim仿真,真的很方便,但学着学着,发现夏老师书里的例子很多都是不可综合的,比如那些系统命令,导致很多现象都发现不了,偶然间我直接打开了ModelSim,打开了软件自带的英文文档,步骤是:Help ->PDF Documentation->Tutorial如下所示:打开文档的一部分目录:往下读发现其实ModelSim可以直接创建工程,并仿真的。
下面以奇偶校验为例叙述其使用过程(当然前提是你在Altera官网下载了ModelSim并正确安装了)。
1.打开软件,新建一个工程,并保存到自定义的目录中(最好别含中文路径)2.点击Project,弹出窗口问是否关闭当前工程,点击Yes,接着又弹出如下窗口我个人的习惯是把Project Name和Default Library Name写成一样,自己定义Project Location。
又弹出如下窗口:3.点击Close(我的版本不能Create New File,其实新建好了工程一样可以新建.v文件),然后点击屏幕下方的Project标签:如果一开始不是如上图所示的界面,那么可以点击如下图所示红色标记的按键变成上图界面:4.在屏幕空白处右击鼠标,出现如下窗口:5.现在可以选New File或者Existing File(首先你已经编写好了)。
MODELSIM系统函数总结
篇一:modelsim仿真小结modelsim仿真小结modelsim的基本仿真流程大致分以下几个步骤:建库、编译工程、前后仿真、调试等。
modelsim 仿真既可以在modelsim界面操作,也可以用do文件实现,这里结合学习的教程、网上看到的资料,和实际遇到的一些问题,分别做一整理小结。
1. 建库建库包括altera 库和xilinx库,同时都包括verilog和vhdl。
这里只建了verilog库,vhdl和verilog步骤相同。
对于altera库主要包括lpm元件库、mega_function库atera_mf、altera原语库altera_primitive和各器件系列模型库。
前三种是调用altera模块的必备库,第四种是进行综合后功能仿真和布线后时序仿真需要的库,和器件系列有关,只选对应系列即可。
altera库创建和编译步骤如下:a) 在modelsim安装目录下新建文件夹,命名altera_lib,以存放编译后的库文件,可以在altera_lib 下新建verilog和vhdl两个子文件夹,分别存放verilog和vhdl库。
b) 打开modelsim,新建library,file ->new->library ..c) 如下图,创建lpm库,路径e:\modeltech_10.1a\altera_lib\verilog\lpm到此,lpm库建立完毕。
e) 同理,建立altera_mf库添加 altera_mf.v ,建立primitive库添加altera_primitive.v建立各系列的模型库,命名可用系列名加_ver“xxx_ver”,也可随意吧,添加各系列的xxx_atoms.v。
这里,也可以把以上库放在一个文件夹,这样做简单,一次就搞定,分开也就是条理清楚,没人去看,所以没必要。
f) 修改modelsim.ini文件,为的是让modelsim能自动map到已经编译的这些库上。
Multisim实验心得
现代电路实验心得Multisum是一款完整的设计工具系统,提供了一个非常大的呢原件数据库,并提供原理图输入接口﹑全部的数模Spice仿真功能﹑VHDL/Verilog设计接口于仿真、FPGA/CPLD 综合、EF设计能力和后处理功能,还可以进展从原理图到PCB布线工具包的无缝隙数据传输。
它提供的单一易用的图形输入接口可以满足用户的设计需求。
Multisim提供全部先进的设计功能,满足用户从参数到产品的设计要求。
因为程序将原理图输入、仿真和可编程逻辑严密集成,用户可以放心地进展设计工作,不必顾及不同供给商的应用程序之间传递数据时经常出现的问题。
本学期在现代电路课程实验中,在教师的指导下对Multisim进展了初步的学习与认识,由对此款软件的一无所知,到渐渐熟悉,感到莫大欢喜。
本学期的学习也只是对Multisim 此款仿真软件的初步认识与学习。
在初步学习与认识的过程中,深深了解到Multisun此款仿真软件是一款完整的设计工具,今后一定会在实训中将此款软件学习的更好,应用的更好。
本学期的上机实验中,主要应用了Multisim此款软件的模电与数电的电路仿真,下面将从本学期的上机实验中总结本学期对Multisim此款仿真软件的学习心得。
数电局部实验:实验中通过阅读实验指导用书,及在教师的指导下,从翻开Multisum软件、建立文件、放置元器件、对元器件参数的修改编辑,按照实验原理图在Multisim软件界面建立了第一个电路图,函数信号发生器实验原理图。
并在原理图上添加了示波器〔如下列图〕。
通过对示波器参数的设置与调整,仿真运行后得到了如图中所示波形。
通过观察,与实验理论现象完全一致。
信号源为正弦波,幅值为5V时并通过调节信号源的参数观察实验现象得到了该电路的各性能参数如下列图:信号源为三角波,幅值为3V时:信号源为正弦波,幅值为2V时:在本次实验中我清楚的认识到软件仿真的快捷与方便,使用软件仿真可以快捷迅速的对电路进展查错,修正。
multisim心得体会
multisim心得体会篇一:使用心得课程设计报告课程名称Multisim软件应用课题名称Multisim软件汇报专业电气工程及其自动化班级电气1091学号XX01019207 姓名万仁钦指导教师李立XX年 10 月 17 日目录一、Multisim安装 (1)1.安装过程 (1)2.汉化过程 (5)3.破解过程 (5)二、综合练习 (6)三、心得体会 (7)一.Multisim安装1.安装过程1>.首先下载一下俩个文件,并解压到当前文件夹,点击Step开始安装2>.出现以下图标,选择install this product for evaluation后点next3>.接着选择文件所要安装的地方4>.选择你要(转载于: 小龙文档网:multisim 心得体会)安装的工具后,一路狂点我同意5>.接着出现以下安装进度6>.安完后选择restart2.汉化过程机子重启后,将以下汉化包放在Circuit Design Suite \stringfiles,接着按第二个操作就可以实现汉化了3.破解过程下载一个注册机,生成好许可证文件后,就可以激活了篇二:Multisim软件应用使用心得程设计报课程名称Multisim软件应用课题名称Multisim软件汇报专业电气工程及其自动化班级学号姓名指导教师年月日课告目录一、Multisim安装 (1)1.安装过程 (1)2.汉化过程 (5)3.破解过程 (5)二、综合练习 (6)三、心得体会 (7)一.Multisim安装1.安装过程1>.首先下载一下俩个文件,并解压到当前文件夹,点击Step开始安装2>.出现以下图标,选择install this product forevaluation后点next3>.接着选择文件所要安装的地方4>.选择你要安装的工具后,一路狂点我同意5>.接着出现以下安装进度6>.安完后选择restart2.汉化过程机子重启后,将以下汉化包放在Circuit Design Suite \stringfiles,接着按第二个操作就可以实现汉化了3.破解过程下载一个注册机,生成好许可证文件后,就可以激活了篇三:multisim实习报告中国地质大学(武汉)Multisim实习报告姓名:_ _ 班号:_ ____ 学号:_ 院系:___机电_ ___ 专业:__通信工程 _ 指导教师:__成绩:_______目录一、实习的目的及要求 (3)二、Multisim的有关介绍 (3)三、实习内容1、基尔霍夫定律 (3)2、节点分析法 (4)3、叠加原理 (4)4、戴维南及诺顿等效电路 (5)5、过渡过程 (7)6、谐振电 (7)7、单管放大 (8)8、差分放大三极管 (10)9、负反馈 (11)10、同相比例.................................................................................13 11、反相比例 (13)12、差分放大运放 (14)13、反相积分放 (15)四、实习感受或心得体会 (17)一、实习目的及要求1、掌握Multisim11仿真软件的使用方法;2、在Multisim11仿真软件工作平台上画出电路分析和模拟电路的13个电路图,进行仿真,测出相应的数据值,并对其进行分析。
Modelsim仿真方法总结
Modelsim仿真方法总结第一篇:Modelsim 仿真方法总结Modelsim 仿真方法总结Modeling 仿真工具是Model公司开发的。
它支持Verilog、VHDL以及他们的混合仿真。
Modelsim各版本的使用方法大体一致,Modelsim仿真主要分为前仿真和后仿真。
下面来具体介绍modelsim 的仿真方法,涉及quartus-modelsim联合(使用)仿真的差异会特别提示。
前仿真与后仿真说明 1.1 前仿真前仿真也称为功能仿真、行为仿真。
旨在验证电路的功能是否符合设计要求,其特点是不考虑延迟(包括门延迟与线延迟),主要验证电路与理想情况是否一致。
前仿真需要用到RTL级代码(由源代码经过综合后产生)与T estbench。
1.2)后仿真后仿真也称为时序仿真或者布局布线仿真。
是指在电路已经映射到特定的工艺环境以后,综合考虑门延迟与线延迟的影响,验证电路在一定的时序条件下是否存在时序违规以及能否满足设计构想的过程。
需要用到的文件是——从布局布线结果中抽象出来的门级网表、testbench和后缀名为sdo或者sdf的标准时延文件。
注:扩展名为sdo和sdf的标准时延文件包含门延迟与实际布线延迟,能较好的反应芯片的实际工作情况。
二)modelsim仿真主要有以下几个步骤:(1)建立库并映射库到物理目录;(2)编译源代码(包括Testbench);(3)执行仿真;解释:①库:modelsim中有两类仿真库。
一种是工作库,默认名为work;另一种是资源库。
Work库中存放当前工程下所有已经编译过的文件,所以编译前一定要建立一个work库。
资源库存放work库中已经编译文件所要调用的资源,这样的资源可能有很多,它们被存放在不同的资源库内。
(例如要想对综合在cyclone芯片中的设计做后仿真,就需要有一个名为cyclone_ver的资源库。
)映射库用于将已经预编译好的文件所在目录映射为一个modelsim可识别的库。
Modelsim初级使用教程(转)
Modelsim初级使用教程(转)一、 Modelsim简介Modelsim仿真工具是Model公司开发的。
它支持Verilog、VHDL以及他们的混合仿真,它可以将整个程序分步执行,使设计者直接看到他的程序下一步要执行的语句,而且在程序执行的任何步骤任何时刻都可以查看任意变量的当前值,可以在Dataflow窗口查看某一单元或模块的输入输出的连续变化等,比quartus自带的仿真器功能强大的多,是目前业界最通用的仿真器之一。
对于初学者,modelsim自带的教程是一个很好的选择,在Help->SE PDF Documentation->Tutorial里面.它从简单到复杂、从低级到高级详细地讲述了modelsim的各项功能的使用,简单易懂。
但是它也有缺点,就是它里面所有事例的初期准备工作都已经放在example文件夹里,直接将它们添加到modelsim就可以用,它假设使用者对当前操作的前期准备工作都已经很熟悉,所以初学者往往不知道如何做当前操作的前期准备。
二、安装同许多其他软件一样,Modelsim SE 同样需要合法的License,通常我们用Kengen产生license.dat。
1 解压安装工具包开始安装,安装时选择Full product安装。
当出现Install Hardware Security Key Driver时选择否。
当出现Add Modelsim T o Path选择是。
出现Modelsim License Wizard时选择Close。
2 在C盘根目录新建一个文件夹flexlm,用Keygen产生一个License.dat,然后复制到该文件夹下。
若License通过,但是打开ModelSim仍出错,则将系统时间调到2008年之前,重新生成License,再将时间调回来即可。
3 修改系统的环境变量。
右键点击桌面我的电脑图标,属性->高级->环境变量->(系统变量)新建。
仿真工具Modelsim的使用方法简述
仿真工具Modelsim的使用
Mentor公司的ModelSim是业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业界唯一的单内核支持VHDL和Verilog混合仿真的仿真器。
它采用直接优化的编译技术、Tcl/Tk技术、和单一内核仿真技术,编译仿真速度快,编译的代码与平台无关,便于保护IP核,个性化的图形界面和用户接口,为用户加快调错提供强有力的手段,是FPGA/ASIC设计的首选仿真软件。
使用 modelsim
打开 modelsim,选择菜单 file→new→project
创建工程文件夹和名称
然后点击OK.
然后创建一个新的文件夹.
创建文件名称选择文件类别,我们选择verilog. 然后双击工程窗口的文件或者右键选择“edit”之后编程并保存.
之后,右键点击文件选择compile列表
在状态窗口可以看见运行结果的错误或者报警。
如果结果顺利就可以编写测试程
序。
右键点击工程菜单并添加一个新的工程文件。
命名、编程和纠错。
如果编译所有文件是成功的就可以模拟这一工程。
单击project窗口附近的library。
然后再展开work工程。
右击hfad_test和模拟或者您可以点击模拟按钮
然后会看到一个simulate窗口在project窗口附近。
右击hfad_test,然后add → to wave → all items in region
将看到波行窗。
现在可以确定模拟时间和运行。
十六进制。
完成了一个工程。
Modelsim仿真流程-经验总结
Modelsim仿真流程-经验总结Modelsim仿真流程-经验总结1.Modelsim简介略。
2.modelsim仿真流程:modelsim基本的仿真流程包括建立库、建立工程并编译、仿真、调试、但在libero环境中运行modelsim时,软件自动映射库和生成工程文件。
其中功能仿真、综合仿真以及后仿真分别映射presynth、postsynth和postlayout库。
基本流程是:建立工作库→编译源代码→启动仿真→分析、调试。
2.1建立库并映射在modelsim中,任何使用VHDL、Verilog HDL、SystemC等语言实现的设计,都被编译到一个库中。
方法一:File>New>Library选择新建并映射到该库;方法二:在modelsim>提示符下运行命令vlib work2-建立库,vmap work work2-建立映射库;2.2建立工程Modelsim仿真需要建立自己的工程,同时modelsim还提供了文件夹管理工程的功能。
step1:File>New>project,并指定库文件名;step2:新建文件或导入文件;2.3编译文件建立好工程后,使用compile功能对源文件进行编译。
Libero环境启动modelsim时,系统执行run.do脚本文件自动编译源文件。
鼠标右击文件,选择compile All对所有的工程文件执行编译操作;?启动仿真,使用simulation>start simulation>选择design选项卡功能使modelsim进入仿真状态,之后可以运行仿真。
在libero 环境下,运行modelsim直接从运行仿真这一步骤开始。
运行仿真可以设置仿真时间或选择仿真全部tcl命令:do run.do –当设计修改后,使用此命令重新导入设计;Do wave.do-打开波形列表文件,或者向当前波形添加列表;Restart-复位当前仿真,从0时刻重新仿真;Run 1ms-运行仿真1ms时间;Run all-运行全部的仿真;在libero环境下,可以自己编写脚本文件代替run.do文件,在项目比较大的情况下可以大大简化仿真的操作。
Multisim电路仿真的使用心得
自动化132
Multisim电路仿真的使用心得
我们都知道电路理论与实际电路有很大的不同。
电路理论更多的趋向于电路原件本身的特性及各原件之间的关系。
以及线路间的电流与电压关系。
而实际电路则需要考虑更多。
比如电路的实际可行性、实际布线问题。
线路之间的功率损耗。
但是如
一、
二、
三、
四、
五、
六、任何电路,最后一定要接地。
最后,我们在承认Mutisim仿真与实际电路还是有差别的,毕竟仿真不能将实际电路真实效果百分之百的仿真出来。
仿真只能作为一个辅助工具,在成本允许的情况下最好还是通过制作实际电路来分析问题。
而且还能提高同学的动手
能力。
仅供个人学习参考
仅供个人学习参考。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ModelSim使用的一点心得- -1、至今还没有弄明白为什么要用ModelSim,因为看波形Quartus II自带的工具就可以了啊。
2、我刚刚接触modelsim,我想大多数菜鸟跟我一样,看过如何使用ModelSim的介绍,说句实话,那些介绍写的都太过简单,仿佛大家都不屑写上一些比较“弱智”的步骤,恰恰就是这些看似累赘的步走,难为我好久。
教程上都写道,modelsim的简单使用方法如下:建立库- 影射库到物理目录- 编译代码- 启动仿真。
首先建立库就叫我头晕。
库的概念用在这儿实在不合适,把我吓坏了,也就没心思看下一步了。
在我看来,教程应该这么写:<1> 建立一个目录modelsimStudy。
用任何文本编辑器编辑一个简单的例子程序,比如计数器counter.vhd。
有clk、ena、reset输入,cnt作为输出。
<2> 打开Modelsim,首先create project,工程名随意取了,比如命名为test,目录设在modelsimStudy下,默认的库work不变(这样就不用管什么建立库之类的东西了)。
然后add existing file,把counter.vhd加入当前工程。
<3> 编译这个文件,通过之后,work下面会出现counter这个实体。
然后选中它,右键,simulate(左键双击也可)。
<4> ModelSim有很多窗口(新手就怕这个),一开始只要选择view下面的objects 和wave窗口就行了。
旧版的signal窗口在6.0的版本改名为Objects(这个我是摸索了好久才发现的,是不是太笨了?)。
wave窗口刚打开时是空的,需要在objects窗口的add -> wave -> signals in region。
这时,wave上就有clk\ ena \ reset等信号了。
<5> 我们给clk来个输入激励,在object窗口中选中clk,右键选clock,给它定义个时钟。
<6>运行Run。
嘿嘿。
有波形出来了吧。
3、2中的例子绝对适合刚刚接触modelsim的新手,有了这个体会之后,结合书上的教程,理解库以及modelsim的各个窗口用途就比较容易了。
然后再尝试结合Quartus使用。
4、Quartus中,选中modelsim作为仿真工具之后,在Quartus目录下会生成一个si mulation文件夹,下面有个modelsim。
完成编译之后,在这个目录下面生成了供mode lsim使用的库和时序文件。
如果选中了编译之后自动调用modelsim,我的做法是用Qua rtus编辑波形文件,然后导出作为激励文件。
或者,自行打开modelsim,然后选择改变目录,把目录指向Quartus生成的modelsim目录。
新建工程,把Quartus下的vhdl以及激励文件添加进来,进行仿真。
5、Modelsim仿真cyclone PLL的问题。
我也遇到过,出现什么fatal error。
解决方法:** Simulation property -> Design Tab -> Resolution 应该设为pssimulation -> start simulation -> Design , 那个resolution非常不显眼,认真找,它的默认值是default,改为ps就行了。
ps:Quartus中把不用的管脚设成高阻态:assignment -> device -> pin&device里面设置。
ModelSim的简要使用方法在这一章里通过一些课程来简单介绍ModelSim的使用方法,更多的需要在实际应用中熟练和掌握。
第一课 Create a Project第一次打开ModelSim会出现Welcome to ModelSim对话框,选取Create a 1. Project,或者选取File\New\Project,然后会打开Create Project对话框。
2.在Create Project对话框中,填写test作为Project Name;选取路径Project Location作为Project文件的存储目录;保留Default Library Name 设置为work。
3.选取OK,会看到工作区出现Project and Library Tab。
4.下一步是添加包含设计单元的文件,在工作区的Project page中,点击鼠标右键,选取Add File to Project。
5.在这次练习中我们加两个文件,点击Add File to Project对话框中的B rowse按钮,打开ModelSim安装路径中的example目录,选取counter.v和tc ounter.v,再选取Reference from current location,然后点击OK。
6.在工作区的Project page中,单击右键,选取Compile All。
7.两个文件编译了,鼠标点击Library Tab栏,将会看到两个编译了的设计单元列了出来。
看不到就要把Library的工作域设为work。
8.最后一不是导入一个设计单元,双击Library Tab中的counter,将会出现Sim Tab,其中显示了counter设计单元的结构。
也可以Design\Load design 来导入设计。
到这一步通常就开始运行仿真和分析,以及调试设计,不过这些工作在以后的课程中来完成。
结束仿真选取Design \ End Simulation,结束Project选取File \ Close \ Project。
第三课 Basic verilog Simulation1.新建一个目录,并设置该目录为当前工作目录,通过从该目录调用Model Sim或是选取File\Change Directory命令来完成。
2.拷贝example目录中verilog文件到当前目录下。
在你编译verilog文件前,你需要在新目录下生成一个设计库。
如果你仅仅熟悉解释性verilog仿真器,诸如Cadence Verilog-XL,那么对于你来说这是一个新的方法。
因为Model Sim是一个编译性Verilog仿真器,对于编译它需要一个目标设计库。
如果需要的话,ModelSim能够编译VHDL和Verilog代码到同一个库中。
3.在编译任何HDL代码前,要建立一个设计库来存放编译结果。
选取Desig n \ Create a New Library生成一个新的设计库。
确定选取Create: a new li brary and a logical mapping to it,在Library Name域中键入work,然后选取OK。
这就在当前目录中建立了一个子目录,即你的设计库。
ModelSim在这个目录中保存了名为_info的特殊文件。
4.下面你将编译Verilog设计。
这个设计例子由两个Verilog源文件组成,每一个都包含一个唯一的模块。
文件counter.v包含一个名为counter的模块,它执行一个简单的八位加法计数器。
另一个文件tcounter.v是一个测试台模块(test_counter),通常用来校验c ounter。
在仿真下,你可以看到这两个文件,通过一个被测试台例示了的模块c ounter的一个简单的实例(名为dut的实例),来层次化的设置了。
稍候你将有机会看一下这个代码的结构,现在,你需要编译两个文件到work设计库。
5.通过选取工具条中的Compile按钮来编译两个文件。
( PROMPT : vlog counter.v tcounter.v )这就打开了Compile HDL Source Files对话框。
选取两个文件后,选择Compile,编译完成后选取Done。
6.选取工具条中的Load Design按钮开始仿真。
( PROMPT : vsim test_counter )Load Design对话框允许你从指定的库中选取一个设计单元仿真。
你也可以为仿真选取Simulation Resolution限制,缺省的库是work,缺省的Simula tion Resolution是1ns。
7.选取test_counter,点击Load接受这些设置。
8.通过在主窗口下的vsim提示符下敲入下述命令来调出Signals、List an d Wave window: view signals list wave (MENU: View\1.为了列示顶级( top-level )信号,移动鼠标到Signals window,选取Vi ew\List\Signals in Region。
( Prompt : add list /test_counter/* )2.现在向Wave window添加信号。
在Signals window选取Edit\Select Al l选择三个信号,拖动三个信号到Wave window的路径名或是数值窗格的任一个中。
HDL条目也能够从一个窗口拷贝到另一个窗口(或者是在Wave and List windo w内部),通过Edit \ Copy和Edit \ Paste菜单命令。
也能删除选取的条目Edit \ Delete。
3.下面打开Source window,选取View \ Source( Prompt : view source )4.导入设计的时候会在工作去开出一个新的Sim Tab栏。
这个Structure P ane展示了设计的层次结构。
你可以点即“+”(expand)或“-”(contract)来观察。
5.点击其中的Function increment可以注意到其他窗口是怎么适当的自动更新的。
明确地说,Source window显示了你在Structure window所选的层次水平的Verilog代码.在这种方式下使用Structure Pane类似于解释性Verilo g的范围命令。
现在,点击Structure Pane的顶层线,确定test_counter模块显示在Source window。
1.Run运行100ns,缺省设置。
(PROMPT: run ) (MENU: Run\Run 100ns)2.设置Run Length为500ns,然后Run。
在仿真运行了600ns,在工作取底部状态栏可以看到这些信息。
3.上个命令使仿真器前进了500ns,也可以设置仿真器推进的时间run @ 3000际仿真器向前推进了2400ns(3000-600)4.选取主窗口Run All。