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,给它定义个时钟。
matlab学习心得体会(精选18篇)
matlab学习心得体会(精选18篇)matlab学习篇1matlab中有丰富的图形处理能力,提供了绘制各种图形、图像数据的函数。
他提供了一组绘制二维和三维曲线的函数,他们还可以对图形进行旋转、缩放等操作。
matlab内部还包含丰富的数学函数和数据类型,使用方便且功能非常强大。
本学期通过对matlab的系统环境,数据的各种运算,矩阵的分析和处理,程序设计,绘图,数值计算及符号运算的学习,初步掌握了matlab的实用方法。
通过理论课的讲解与实验课的操作,使我在短时间内学会使用matlab,同时,通过上机实验,对理论知识的复习巩固实践,可以自己根据例题编写设计简单的程序来实现不同的功能,绘制出比较满意的二维三维图形,在实践中找到乐趣。
matlab是一个实用性很强,操作相对容易,比较完善的工具软件,使用起来比较方便,通过操作可以很快看到结果,能够清晰的感觉到成功与失败,虽然课程中也会出现一些小问题,但是很喜欢这门课程。
matlab学习心得体会篇2MATLAB中有丰富的图形处理能力,提供了绘制各种图形、图像数据的函数。
他提供了一组绘制二维和三维曲线的函数,他们还可以对图形进行旋转、缩放等操作。
MATLAB内部还包含丰富的数学函数和数据类型,使用方便且功能非常强大。
本学期通过对MATLAB的系统环境,数据的各种运算,矩阵的分析和处理,程序设计,绘图,数值计算及符号运算的学习,初步掌握了MATLAB的实用方法。
通过理论课的讲解与实验课的操作,使我在短时间内学会使用MATLAB,同时,通过上机实验,对理论知识的复习巩固实践,可以自己根据例题编写设计简单的程序来实现不同的功能,绘制出比较满意的二维三维图形,在实践中找到乐趣。
MATLAB是一个实用性很强,操作相对容易,比较完善的工具软件,使用起来比较方便,通过操作可以很快看到结果,能够清晰的感觉到成功与失败,虽然课程中也会出现一些小问题,但是很喜欢这门课程。
matlab学习心得体会篇3这是我在学习的过程中的一些技巧,或许对你有帮助,可能字数不你能满足你的要求,但是绝对是精华。
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个刻度的时钟。
modelsim的理解
Modelsim 仿真软件的学习及理解一软件简介Modelsim仿真工具支持Verilog、VHDL以及他们的混合仿真,它可以将整个程序分步执行,使设计者直接看到他的程序下一步要执行的语句,而且在程序执行的任何步骤任何时刻都可以查看任意变量的当前值,可以在Dataflow窗口查看某一单元或模块的输入输出的连续变化,具备强大的模拟仿真功能,在设计、编译、仿真、测试、调试开发过程中,有一整套工具供你使用,而且操作起来极其灵活,可以通过菜单、快捷键和命令行的方式进行工作。
ModelSim的窗口管理界面让用户使用起来很方面,它能很好的与操作系统环境协调工作。
ModelSim 的一个很显著的特点就是它具备命令行的操作方式。
二功能介绍Modelsim的主要功能包括:对设计文件的设计、编译和仿真。
设计文件的设计:在Modelsim软件打开之后,在把库和工程建立好的前提下,编译设计文件,编译设计文件时遵循verilog的编程规则,语法方面注意关键字的用法,编译设计文件包括两个部分:设计文件源代码的编译和测试代码的编译,测试代码编写时注意函数的调用,尤其是端口的对应,包括名称对应和位置对应,同时还应该注意激励信号的设定,此时应该注意时钟的延时是否是惯性延时。
文件的编译:文件的编译的主要目的是:检查程序语言的语法错误,在编译过程中可以通过两种方法实现:工具按钮的编译法和指令输入的编译法,工具按钮编译法适合于初学者,而指令输入法适合于编程经验较足的编程人员。
编译的过程也就是第一轮检查程序代码的过程,通过编译,软件会以指令的形式在输出脚本框中显示出来,通过显示的错误信息,编程人员会再较短的时间内找处错误代码,及时修改,提高了编程的效率和准确性。
文件的仿真:文件的仿真即就是在写好的源代码和测试代码的基础上,给程序一定的激励信号,在激励信号的基础上观察源代码波形图的变化,是否符合设计初衷,是否满足设计的时序逻辑和组合逻辑的要求。
MatLab实习心得体会2篇
MatLab实习心得体会 (3)MatLab实习心得体会 (3)精选2篇(一)在进行MatLab实习的过程中,我学到了很多关于MatLab的知识和技巧,也锻炼了自己的解决问题的能力。
以下是我在实习过程中的一些心得体会:1. 熟练掌握基本语法:MatLab有很多基本的函数和语法,熟练掌握这些基本知识对于编写代码至关重要。
在实习过程中,我花了很多时间学习和练习MatLab的基本语法,以确保我能够正确地使用各种函数和语句。
2. 学会使用文档和资源:MatLab有非常丰富的文档和资源库,可以帮助我们快速解决问题。
在实习过程中,我学会了如何使用MatLab的文档和资源库,并从中获取并应用相关知识。
3. 编写模块化的代码:编写模块化的代码可以使代码更加清晰和可读,也方便后续的调试和维护。
在实习过程中,我尽量将代码分解为不同的功能模块,并使用函数和脚本文件将它们组织起来。
4. 遇到问题要善于查找解决方案:在实习过程中,我遇到了很多问题,有些问题在课堂上并没有涉及到。
在解决这些问题的过程中,我学会了如何善用搜索引擎和MatLab 的社区论坛,通过查找解决方案,我能够更快地解决问题。
5. 多做实践练习:实践是学习MatLab最有效的方法之一。
在实习过程中,我尽量多做一些实践练习,通过实际操作来加深对MatLab的理解和掌握。
总的来说,MatLab实习不仅让我学到了很多关于MatLab的知识和技巧,也使我对编程和问题解决能力有了更深入的认识和提高。
通过实习,我能够更加独立地解决问题,并且对MatLab的应用范围也有了更清晰的认识。
MatLab实习心得体会 (3)精选2篇(二)在MatLab实习期间,我学到了很多关于编程和数据分析方面的知识和技能。
通过实践操作和与同事的合作,我更深入地理解了MatLab的各种功能和用法。
首先,我学会了如何使用MatLab进行数据处理和分析。
我学习了如何导入、清洗和处理数据,以及如何应用不同的统计分析方法来解读数据。
想很多人跟我一样,被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仿真流程-经验总结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文件,在项目比较大的情况下可以大大简化仿真的操作。
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心得体会
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个电路图,进行仿真,测出相应的数据值,并对其进行分析。
matlab实验心得总结(5篇范例)
matlab实验心得总结(5篇范例)第一篇:matlab实验心得总结通过《matlab仿真》实验使我学习掌握了许多知识。
首先是对matlab有了一个全新的认识,其次是对matlab的更多操作和命令的使用有了更高的掌握,最重要的事对matlab的处理能力有了一个更高的飞跃尤其是对相关函数的使用及相关问题的处理。
就对matlab相关的命令操作而言,通过这次实验的亲身操作和实践,学习掌握了许多原本不知道的或者不太熟悉的命令。
比如说相关m文件的建立,画图用到的标注,配色,坐标控制,同一张图里画几幅不同的图像,相关参数的设置以及相关函数的调用格式等等。
就拿建立一个数学方程而言,通过设置不同的参数达到所需要的要求和结果,而且还可以在不同的窗口建立不同的函数而达到相同的效果,比如说可以再命令窗口和m文件中通过不同的命令设置的到相同的所需的效果图。
而自己对于矩阵及闭环传递函数的建立原本所掌握的知识几乎为零,而通过这次实验使我彻底的掌握了相关的命令操作和处理的方法,在这里我们不仅可以通过建立函数和参数来达到目标效果,而且还可以通过可视化的编程达到更快更方便,更简洁的效果。
就拿可视化编程而言原本根本就只是听说而已罢了,从来就没有亲身去尝试过,然而现在自己却可以和容易的通过搭建不同功能木块来实现相关的函数及功能。
这些在原本根本就不敢相信,然而通过《matlab仿真》的学习和实验亲身操作这些原本看似不可能的操作在此就变的轻而易举的事了。
再此我不得不题到的事指导老师教我们怎么去搭建构造相关闭环传递函数的实验,这个实验几乎在我们的这次实验中占据了非常大的比重,在后面的几个大一点的实验中几乎都是涉及这个方面的内容,我现在想说的事怎么去搭建相关的函数和功能模块对我们来说几乎已经不是什么难事了,就拿怎么去对模块功能的实现以及分析确实是个重点和难点。
通过对同一个模块分析其对应的不同的参数分析图的建立去分析和解释其对应的相关功能和技术指标和性能分析是非常重要的,我们不可能只需要建立相关的模块和功能就说自己掌握了所有的相关知识和技术,真正的技术和知识是怎么去分析和解释相关的技术指标和功能参数才是重中之重。
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可识别的库。
Multisim实验总结和和体会
Multisim实验总结和和体会院系:物电学院专业:08 电工指导教师:杨金姓名:吕厚良(20081342079)Multisim是美国国家仪器(NI)有限公司推出的以Windows为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。
它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。
Multisim 被美国NI公司收购以后,其性能得到了极大的提升。
最大的改变就是:Multisim 9与LABVIEW 8的完美结合:(1)可以根据自己的需求制造出真正属于自己的仪器;(2)所有的虚拟信号都可以通过计算机输出到实际的硬件电路上; (3)所有硬件电路产生的结果都可以输回到计算机中进行处理和分析。
Multisim 9组成:1.―――构建仿真电路2.―――仿真电路环境3.multi mcu ------ 单片机仿真4.――FPGA、PLD,CPLD等仿真5.――FPGA、PLD,CPLD等仿真6.―― 通信系统分析与设计的模块7.―― PCB设计模块:直观、层板32层、快速自动布线、强制向量和密度直方图8.-(自动布线模块)1.器件建模及仿真;2.电路的构建及仿真;3.系统的组成及仿真;4.仪表仪器原理及制造仿真。
器件建模及仿真:可以建模及仿真的器件:模拟器件(二极管,三极管,功率管等);数字器件(74系列,COMS系列,PLD,CPLD等);FPGA器件。
单元电路、功能电路、单片机硬件电路的构建及相应软件调试的仿真。
系统的组成及仿真:Commsim 是一个理想的通信系统的教学软件。
它很适用于如‘信号与系统’、‘通信’、‘网络’等课程,难度适合从一般介绍到高级。
使学生学的更快并且掌握的更多。
Commsim含有200多个通用通信和数学模块,包含工业中的大部分编码器,调制器,滤波器,信号源,信道等,Commsim 中的模块和通常通信技术中的很一致,这可以确保你的学生学会当今所有最重要的通信技术。
Multisim软件应用 使用心得
Multisim软件应用使用心得
Multisim,是一款专供工程师进行仿真的电路设计和仿真软件,是仿真教学仪器的理想选择,它具有强大的硬件和软件支持。
在电子工程的教学和科研方面,Multisim为科学家和工程师带来了极大的方便。
作为一名研究生,在一些课程学习和实验室操作中,几次使用Multisim软件进行仿真,深受其独特魅力所吸引。
Multisim有着轻松的操作及清晰的用户界面,搭配出色的算法,为不同系统分析提供完善的支持。
使用Multisim的过程中,有着超强的兼容性和可选择性,并且在设计电路时具有极为强大的设计能力,以及操作简洁的仿真功能和电路算法,令其操作更为便捷。
此外,Multisim可以结合数学、物理和计算机等学科,提供支持电路仿真功能:可以让用户随时得到现实和研究中形成的所有结果和事实;此外,Multisim还支持电路中的线性和非线性前向分析、逆向分析、全网分析、数据库处理、模拟仿真、冗余网络的处理等功能,具有广泛的电子原理成分及分析计算技术等。
当我们从事工程项目时,Multisim软件将更多的思想和能力融入到设计和分析之中,而不是定义电路接口功能,并将基于直觉的设计变成基于高效、精确、高度抽象的分析,以充分发挥自身的优势,有效的实现仿真数据的快速传输、反馈和处理等功能,从而有效节省时间成本。
最后,令我印象最深刻的是它的多个功能特色及自带技术支持,在分析设计过程中提供了更多的集成和智能化服务,令工作变得得心应手,拥有完整的电路分析仪表包括静态运放9种,可以说Multisim提供了多种测量命令,供用户对质量结果进行可靠检验,是一款非常优秀的软件。
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使用的一点心得- -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实验心得
现代电路实验心得Multisum是一款完整的设计工具系统,提供了一个非常大的呢原件数据库,并提供原理图输入接口﹑全部的数模Spice仿真功能﹑VHDL/Verilog设计接口于仿真、FPGA/CPLD 综合、EF设计能力和后处理功能,还可以进行从原理图到PCB布线工具包的无缝隙数据传输。
它提供的单一易用的图形输入接口可以满足用户的设计需求。
Multisim提供全部先进的设计功能,满足用户从参数到产品的设计要求。
因为程序将原理图输入、仿真和可编程逻辑紧密集成,用户可以放心地进行设计工作,不必顾及不同供应商的应用程序之间传递数据时经常出现的问题。
本学期在现代电路课程实验中,在老师的指导下对Multisim进行了初步的学习与认识,由对此款软件的一无所知,到渐渐熟悉,感到莫大欢喜。
本学期的学习也只是对Multisim 此款仿真软件的初步认识与学习。
在初步学习与认识的过程中,深深了解到Multisun此款仿真软件是一款完整的设计工具,今后一定会在实训中将此款软件学习的更好,应用的更好。
本学期的上机实验中,主要应用了Multisim此款软件的模电与数电的电路仿真,下面将从本学期的上机实验中总结本学期对Multisim此款仿真软件的学习心得。
数电部分实验:实验中通过阅读实验指导用书,及在老师的指导下,从打开Multisum软件、建立文件、放置元器件、对元器件参数的修改编辑,按照实验原理图在Multisim软件界面建立了第一个电路图,函数信号发生器实验原理图。
并在原理图上添加了示波器(如下图)。
通过对示波器参数的设置与调整,仿真运行后得到了如图中所示波形。
通过观察,与实验理论现象完全一致。
信号源为正弦波,幅值为5V时并通过调节信号源的参数观察实验现象得到了该电路的各性能参数如下图:信号源为三角波,幅值为3V时:信号源为正弦波,幅值为2V时:在本次实验中我清楚的认识到软件仿真的快捷与方便,使用软件仿真可以快捷迅速的对电路进行查错,修正。
Simulation经验总结
Simulation经验总结(高级篇)振动分析1、振动分析需要依靠有限元中的质量矩阵、刚度矩阵。
所以,要保证结果的准确性需将网格划分得尽量对称。
另外,提高物体的固有频率需要改变物体的质量或其在对应频率的振形上的刚度。
2、物体振动频率的阶数是无穷多的,但最低阶的频率往往决定于最容易出现振动的方向。
结论:前面几阶的频率对物体的振动影响最大。
(产生共振的三个条件为:响应频率、振形、能量)3、振动分析中的模态只是表示其变形趋势,如果要计算特定阶数中的实际变形量应该采用以动力学为依据的高级动态分析。
4、如果载荷频率比物体的一阶振动频率高于1/3以上最好使用动态分析。
5、瞬态响应所关注的是响应随时间的变化。
谐波响应所关注的是响应随频率的变化(比如:每个物体都具有无穷阶共振频率,通过谐响应分析可以知道哪一个频率可以导致最大位移)。
6、随机振动是指分析不确定的载荷导致不确定的振动。
7、关于分析振动对加工精度的影响。
主要注意其对应阶数下的振形是否会对其精度造成影响。
热力分析1、当换热系数较大时才可将辐射忽略,如:对LED灯的热分析中如果散热片不带风扇一般要考虑辐射。
2、如果PCB板中含有铜,其导热系数会大大增加(推荐值10W/mK),另外,由于PCB板是分层的,所以它各个方向的导热系数存在差异(各向异性,比如:法向为0.3,面内方向为20、19)。
3、机箱中通风口的位置可以采用设定压降或采用多孔介子的方式简化模形。
4、热管的模拟。
因为热管工作时其内部涉及复杂的相变,很难通过CFD分析。
但可以设定一个导热系数将其换算过来(5000~30000 W/mK,一般从供应商处可以得到相关或间接的参数)。
5、风扇的两种模拟方式。
A:直接绘制模型、设定转速后计算。
B:简化模式是在风扇放置处加一个Fan,设定对应的风扇曲线。
6、物体的密度与热容将影响热瞬态分析结果。
7、在Flow里面,如果零件之间出现点线接触视之为无效接触。
解决方法为设法使其接触面积大于零。
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创建仿真模型的具体步骤。
- 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 N ame设置为work。
3.选取OK,会看到工作区出现Project and Library Tab。
4.下一步是添加包含设计单元的文件,在工作区的Project page中,点击鼠标右键,选取Add File to Project。
5.在这次练习中我们加两个文件,点击Add File to Project对话框中的Browse按钮,打开ModelSim安装路径中的example目录,选取counter.v 和tcounter.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 desi gn来导入设计。
到这一步通常就开始运行仿真和分析,以及调试设计,不过这些工作在以后的课程中来完成。
结束仿真选取Design \ End Simulation,结束Project选取File \ Close \ Project。
第三课 Basic verilog Simulation1.新建一个目录,并设置该目录为当前工作目录,通过从该目录调用Mode lSim或是选取File\Change Directory命令来完成。
2.拷贝example目录中verilog文件到当前目录下。
在你编译verilog文件前,你需要在新目录下生成一个设计库。
如果你仅仅熟悉解释性verilog仿真器,诸如Cadence Verilog-XL,那么对于你来说这是一个新的方法。
因为Mod elSim是一个编译性Verilog仿真器,对于编译它需要一个目标设计库。
如果需要的话,ModelSim能够编译VHDL和Verilog代码到同一个库中。
3.在编译任何HDL代码前,要建立一个设计库来存放编译结果。
选取Desi gn \ Create a New Library生成一个新的设计库。
确定选取Create: a new l ibrary 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,缺省的Simu lation Resolution是1ns。
7.选取test_counter,点击Load接受这些设置。
8.通过在主窗口下的vsim提示符下敲入下述命令来调出Signals、List a nd Wave window: view signals list wave (MENU: View\1.为了列示顶级( top-level )信号,移动鼠标到Signals window,选取V iew\List\Signals in Region。
( Prompt : add list /test_counter/* )2.现在向Wave window添加信号。
在Signals window选取Edit\Select A ll选择三个信号,拖动三个信号到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 Pane展示了设计的层次结构。
你可以点即“+”(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。
(PROMPT: run -all ) (MENU: Run\Run -All)5.选取Break中断运行。