0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

以工程的形式来介绍ModelSim的仿真使用

FPGA技术江湖 来源:FPGA技术江湖 作者:FPGA技术江湖 2022-03-11 09:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本篇将以工程的形式来介绍ModelSim仿真使用,工程一般由:根目录+源码+work库+资源库+仿真设置+元数据组成,其中元数据就是工程的一些设置数据,会以一个 .mpf 后缀的文件存在于指定路径,在这之中会包换:编译的设置,编译顺序还有文件的映射之类的。 开始今天的使用吧~

创建工程

将本篇使用到的文件放置到自己的工程路径下,然后选择菜单栏 File > New > Project

960eea6a-907d-11ec-952b-dac502259ad0.png

在弹出的界面中填写工程的名字、工程的路径、以及工程默认库的名字,使用默认的work就好了、还有就是初始化配置文件的路径,配置文件选安装路径下的modelsim.ini即可,然后选择Copy Library Mappings,这样就可以把这个文件直接加到这个工程中了,使用Reference也可以;

96225b86-907d-11ec-952b-dac502259ad0.png

都填好后,直接OK,这时就改进入工程的设置了,由于是一个空的工程,所以系统会弹出添加东西到工程的窗口,在这窗口,可以创建新的文件、添加已有的文件、创建仿真的配置以及创建文件夹,因为已经准备好了文件,所以就直接点 Add Existing File;

963a3706-907d-11ec-952b-dac502259ad0.png

点完后,又出现了一个新的窗口,提示要从哪添加文件,点Browse,然后将counter.v和tcounter.v加进来,最下方的选项,因为工程已经和这两个文件在一个目录下了,所以选择Reference即可,如果是其他路径下的,就可以考虑Copy过来进行管理;

964e65b4-907d-11ec-952b-dac502259ad0.png

接着OK,然后Close掉添加东西到工程的界面,这时候注意Project的栏中,多了刚添加的两个文件,且Status显示的是一个蓝色问号,这代表该文件还未编译;Order就是两者的一个编译顺序以及文件改动的时间;

9667ea3e-907d-11ec-952b-dac502259ad0.png

文件编译

95a79ed2-907d-11ec-952b-dac502259ad0.png95b7df40-907d-11ec-952b-dac502259ad0.png

如果想改变编译顺序,右键 > Compile > Compile Order

96b9845c-907d-11ec-952b-dac502259ad0.png

使用这两个箭头来改变文件的编译顺序,点Auto Generate 就会以Top层开始进行编译,如果顺序不正确,它也会自动循环跑,然后找到这个Top层往下一层层的编,可以的话,就自己用箭头先把顺序按正确的来设置好。

96cffb06-907d-11ec-952b-dac502259ad0.png

除了用上面的Auto来编译外,还可以直接单个编译,或者选全部编译,图中两个箭头所指。

96e1a5d6-907d-11ec-952b-dac502259ad0.png

编译成功后,状态会变为绿色的勾,如果代码出问题了,就是个红色的X,这时候就有根据Transcript 的信息去改代码了,跳到Library的窗口,从原本empty的状态变为了一个带 + 号的状态。

96f9fcf8-907d-11ec-952b-dac502259ad0.png

点开 + 号,可以看到两个编译的结果,名字、类型和路径都在信息里,选中test_counter,右键 > Simulate,进入仿真界面。

970f4626-907d-11ec-952b-dac502259ad0.png

在Sim窗口含仿真文件的层次结构,接着的基本仿真使用就和上一篇的一样了。

9727c250-907d-11ec-952b-dac502259ad0.png

在Transcript窗口输入:quit -sim,退出仿真,准备接下来的。

文件管理

95a79ed2-907d-11ec-952b-dac502259ad0.png95b7df40-907d-11ec-952b-dac502259ad0.png

因为是举例,所以使用到的文件比较少,但是平常做项目的适合,文件就多了,这时候如果没有管理好文件的类别,那就看着有点头疼了,接下来用文件夹的形式来管理文件; 在刚开始创工程的时候,就有个Create New Folder的选项,可以在这时候就创建好文件夹,在工程创建好后还需要新建文件夹来管理,就接着往下操作; 回到Project的窗口,右键 > Add to Project > Folder ,在弹出的窗口输入文件夹的名字,按正常的文件夹格式来对文件夹取名就好了,然后OK。

9760f2a0-907d-11ec-952b-dac502259ad0.png

在Project窗口中也多了一个文件夹的图标。

976afb4c-907d-11ec-952b-dac502259ad0.png

只有一个文件夹的话,显然,如果是一堆文件,那就还需要做细分,这边就按激励文件和模块文件来分类,继续 右键 > Add to Project > Folder ,填写子文件夹的名字,且将该文件夹放置在Design Files的文件夹下,然后OK。

97808372-907d-11ec-952b-dac502259ad0.png

重复上述的操作,再加入一个Source的子文件夹,然后效果如下。

9797b164-907d-11ec-952b-dac502259ad0.png

然后就该把文件添加到对应的文件夹下进行管理了,选中 counter.v(如果是多个文件,就选中多个) 然后右键 > Properties。

97ad9394-907d-11ec-952b-dac502259ad0.png

在属性窗口,可以从 Place In Folder 看到文件放在Top层,修改它,将其放置在Source层,然后OK。

97bf39c8-907d-11ec-952b-dac502259ad0.png

重复上述操作,将tcounter.v放入testbench文件夹下,这时的效果如下。

97d7afe4-907d-11ec-952b-dac502259ad0.png

会发现状态又变成了问号,这是因为改变了文件的位置,工程已经不知道编译结果是否依然有效,所以需要重新编译才能继续使用。

仿真配置

95a79ed2-907d-11ec-952b-dac502259ad0.png95b7df40-907d-11ec-952b-dac502259ad0.png

仿真配置就是将模块和仿真的选项存在了一个文件中,然后直接使用该文件就可以自动按设置好的启动仿真,举个例子:假设你的某个模块需要对仿真的时间精度然后还需要做一些自检啥的,这时候就可以直接用配置文件来操作,以省去不必要的步骤。 在Project窗口 右键>Add to Project > Simulation Configuration ,在出现的界面中,填入配置文件的名字,以及放置的文件夹,这边选则放在testbench文件夹下;

981c0298-907d-11ec-952b-dac502259ad0.png

接着选中work库下的 test_counter,仿真精度(Resolution)改为ps。

983378c4-907d-11ec-952b-dac502259ad0.png

选中Verilog的窗口,将Enable hazard checking (-hazards) 的选项打勾,然后点Save进行保存。

987aa01e-907d-11ec-952b-dac502259ad0.png

在文件夹下就有了该仿真配置,直接双击它。

98902344-907d-11ec-952b-dac502259ad0.png

然后在Transcript 窗口可以看到仿真的命令和之前的有了一些不同,是按照刚刚的设置启动了仿真。

98a34776-907d-11ec-952b-dac502259ad0.png

结束

95a79ed2-907d-11ec-952b-dac502259ad0.png95b7df40-907d-11ec-952b-dac502259ad0.png

本篇关于仿真工程的使用就介绍到这了,如果工程未关闭,下次启动modelsim时,则会自动打开该工程,要关闭的话,File > Close Project ,再点“是”就好了。

98e4ed66-907d-11ec-952b-dac502259ad0.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    53

    文章

    4411

    浏览量

    137684
  • 源码
    +关注

    关注

    8

    文章

    682

    浏览量

    31104
  • ModelSim
    +关注

    关注

    5

    文章

    174

    浏览量

    48903

原文标题:Modelsim的仿真之路(仿真工程的使用)

文章出处:【微信号:HXSLH1010101010,微信公众号:FPGA技术江湖】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    一文详解SystemC仿真库的编译

    AMD Vivado 设计套件文件和库的形式提供仿真模型。仿真库包含器件和 IP 的行为和时序模型。编译后的库可供多个设计项目使用。用户必须在设计
    的头像 发表于 12-12 15:08 837次阅读
    一文详解SystemC<b class='flag-5'>仿真</b>库的编译

    【产品介绍Modelsim:HDL语言仿真软件

    概述ModelSim是业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业界唯一的单内核支持VHDL和Verilog混合仿真仿真
    的头像 发表于 11-13 11:41 216次阅读
    【产品<b class='flag-5'>介绍</b>】<b class='flag-5'>Modelsim</b>:HDL语言<b class='flag-5'>仿真</b>软件

    Vivado仿真之后没有出现仿真结果的解决方法

    一般,在添加好工程所需要的design sources和simulation sources之后,会进行仿真验证工程是否有达到预期的效果,但是在Run Simulation-&
    发表于 10-31 06:24

    ModelSim仿真蜂鸟E203 / 200 教程【功能验证】

    一起 把子文件夹里的文件全部复制出来,不要留文件夹 perips这部分也全部挪出去 新建工程 在这 选保存的工作区 添加文件夹的所有文件(work的文件夹不用选) 用modelsim
    发表于 10-27 07:35

    利用蜂鸟内核实现指令的仿真模拟

    现在我们组在进行浮点扩展,既然要进行扩展,我们必须能够检验扩展的正确性,因此本篇文章介绍一下自己编写指令,并通过仿真观察指令结果的正确性。 RSIC-V指令架构 首先在编写指令前,我们必须先大概
    发表于 10-24 08:17

    【产品介绍】Altair MotionSolve多体系统仿真软件

    AltairMotionSolve多体系统仿真MotionSolve是一款全面的多体仿真软件,可帮助您轻松构建和执行复杂的系统模型,评估产品的动态响应并优化其性能。使用MotionSolve
    的头像 发表于 09-19 17:03 345次阅读
    【产品<b class='flag-5'>介绍</b>】Altair MotionSolve多体系统<b class='flag-5'>仿真</b>软件

    vivado仿真时GSR信号的影响

    利用vivado进行设计xilinx FPGA时,写完设计代码和仿真代码后,点击run simulation(启动modelsim进行仿真)。
    的头像 发表于 08-30 14:22 1040次阅读
    vivado<b class='flag-5'>仿真</b>时GSR信号的影响

    Simcenter FLOEFD LED 模块:精确的热特性和光学仿真,打造成功的照明产品设计

    优势面向设计师和分析师的高级照明仿真功能精准预测工作LED光输出(热流明)和温度使用具有光谱吸收、反射、折射和散射特性的高级蒙特卡洛辐射模型,完成高精度辐射仿真使LED能够在供应商规格的限制范围内
    的头像 发表于 07-30 10:34 617次阅读
    Simcenter FLOEFD LED 模块:精确的热特性和光学<b class='flag-5'>仿真</b>,打造成功的照明产品设计

    【RK3568+PG2L50H开发板实验例程】FPGA部分 | Pango 的时钟资源——锁相环

    Modelsim 是较为常用的仿真器,使用 PDS 与 Modelsim 进行联合仿真。 接下来选择 Project->Proje
    发表于 07-10 10:28

    Simcenter STAR-CCM+多相CFD仿真:自信对复杂的工业多相应用精确建模

    优势对复杂的工业多相系统进行建模,无需进行广泛的几何体简化高保真度进行多相应用仿真使用基于可用资源的出色多相建模技术获得精确结果摘要在实现可持续未来的激烈竞争中,新产品设计必须考虑到环境
    的头像 发表于 06-18 15:32 763次阅读
    Simcenter STAR-CCM+多相CFD<b class='flag-5'>仿真</b>:自信对复杂的工业多相应用精确建模

    超声波倒车雷达工程仿真资料

    超声波倒车雷达工程仿真
    发表于 06-08 10:03 3次下载

    【道生物联TKB-620开发板试用】TKB-620开发板与linkboy编程仿真使

    本帖最后由 小燕子神飞 于 2025-4-21 16:15 编辑 感谢道生物联提供的板卡试用机会, 本文主要介绍如何使用linkboy对道生物联的板卡进行编程仿真开发. 关于linkboy可以
    发表于 04-21 12:07

    【紫光同创盘古100Pro+开发板,MES2L676-100HP教程】盘古676系列——Modelsim的使用和do文件编写

    的使用 该部分主要介绍Modelsim的基本使用方法。 当我们的设计文件没有使用到任何平台的IP核时,我们可以直接打开Modelsim新建工程,然后进行
    发表于 02-25 18:36

    DLPC230-Q1仿真使用什么软件?主要仿真哪些内容?

    在PCB走线长度要求的内容中,提到需要进行DMD信号线长度的spice仿真,进而确定最大的走线长度, 问题:一般仿真是使用什么软件?主要仿真哪些内容?是否有推荐参考资料?
    发表于 02-18 06:35

    SPICE混合电路仿真介绍

    电子发烧友网站提供《SPICE混合电路仿真介绍.pdf》资料免费下载
    发表于 01-22 17:14 2次下载
    SPICE混合电路<b class='flag-5'>仿真</b><b class='flag-5'>介绍</b>