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

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

3天内不再提示

芯片设计之Modelsim仿真工具

倩倩 来源:《IC设计与方法》 作者:《IC设计与方法》 2022-08-12 15:04 次阅读

Verilog代码编写完成后,可以Modelsim中进行编译。

与其他编程软件相同,错误(error)的定位不一定准确,错误的发生位置可能与编译时提示的错误位置不同;检查error时,要从第一行开始检查,可能位置靠前的错误更正后,位置靠后的错误同时被更正。

与其他编程软件不同,警告(Warning)不能忽略,只有error/warning都消除才能进行仿真。否则,仿真结果可能不正确,可能导致真实芯片出现问题,造成百万元到千万元人民币的损失。

3967a9a2-19f6-11ed-ba43-dac502259ad0.png

图片来源:学堂在线《IC设计与方法》

正确编译完成后,可以进行仿真。

Modelsim仿真将设计以树状表示,设计中的每一个实体,每一个module、每一个进程(always块、initial块等)在Modelsim仿真中以对象的形式展现。

如下图所示树状结构,顶层是test_counter,即测试平台。平台下方是DUT(被测设计)和三个进程。三个进程是三个initial块,分别用来产生时钟信号、复位信号、其他动作。

39a2b13c-19f6-11ed-ba43-dac502259ad0.png

图片来源:学堂在线《IC设计与方法》

上图右下角为Object窗口,显示当前有哪些信号可以观测,包括输入信号、输出信号、内部信号等,如在test_counter层次,可以观测时钟(clk)、复位(reset)、计数器(count)的信号。

仿真过程有四类控制操作需要掌握。Restart、仿真时间指定、持续仿真、强制停止。

Restart主要运用于修改源代码或需要改变波形窗口显示时间的情况,在做出相应的修改后,运用Restart控制仿真重新开始。

仿真时间指定、持续仿真、强制停止主要用于永远执行的程序,永远执行的程序会造成CPU资源的浪费,也会使波形窗口显示时间过长,波形窗口显示时间过长可能会导致观测人员无法观测需要的波形。因此需要上述三类操作控制仿真时间。

39d47b72-19f6-11ed-ba43-dac502259ad0.png

图片来源:学堂在线《IC设计与方法》

仿真工具执行仿真结束后,设计人员需要检查电路运行结果是否正确。最常见的方式是通过波形窗口观测电路输出信号的波形是否正确。主要观测的信号包括输入信号、内部信号、输出信号。

检测输入信号的目的是排除输入不正确造成输出不正确的情况,需观测输入信号包括时钟信号、复位信号、数据信号。设计人员需观测时钟信号的周期或频率、0时刻时钟信号的值、时钟信号高电平和低电平的值,需观测复位信号的有效脉冲(个人理解:能够导致输入信号变化的脉冲)是否符合期望、并确定复位信号的时钟沿(个人理解:脉冲发生的时间)不能与时钟信号重叠,需确定数据信号的时钟沿不能与时钟信号重叠。

观测电路的内部信号包括状态机(能够控制电路内部状态转移)、控制信号。

3a0da078-19f6-11ed-ba43-dac502259ad0.png

图片来源:学堂在线《IC设计与方法》

当出现无法观测波形情况时,可以通过波形窗口调整。波形窗口调整方式包括总线展开和收缩、改变数据显示方式、波形放大和缩小、光标操作、定位信号的事件、搜索特定信号值、增加驱动信号等。

3a3c9b30-19f6-11ed-ba43-dac502259ad0.png

图片来源:学堂在线《IC设计与方法》

有时通过波形不容易寻找出芯片设计的问题,需要更高层次的方式,如数据流窗口调试,追踪信号来源。在数据流窗口中可以显示出设计的层次图,选择某一信号,仿真工具就将显示产生这一信号的数据流图(Dataflow),数据流图可以分析某一信号故障的根源。

3a7603ca-19f6-11ed-ba43-dac502259ad0.png

图片来源:学堂在线《IC设计与方法》

数据流图、波形窗口、源代码可进行交叉定位,同时分析某一进程(如always块)的输入(数据流图观测)和行为(源代码观测),确定故障(波形窗口观测)源于其输入还是源于其行为,可以快速找出电路故障。

审核编辑 :李倩

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

    关注

    5

    文章

    172

    浏览量

    46756
  • 编程软件
    +关注

    关注

    3

    文章

    131

    浏览量

    22740
  • 时钟信号
    +关注

    关注

    4

    文章

    372

    浏览量

    28062

原文标题:芯片设计相关介绍(22)——Modelsim仿真工具

文章出处:【微信号:行业学习与研究,微信公众号:行业学习与研究】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Altera和Xilinx Modelsim仿真

    Altera和Xilinx Modelsim仿真库Altera和Xilinx Modelsim仿真库 我们通常使用modelsim软件作为
    发表于 08-10 18:31

    勇敢的芯伴你玩转Altera FPGA连载44:基于仿真的第一个工程实例Modelsim仿真验证基本设置

    `勇敢的芯伴你玩转Altera FPGA连载44:基于仿真的第一个工程实例Modelsim仿真验证基本设置特权同学,版权所有配套例程和更多资料下载链接:http://pan.baid
    发表于 01-24 21:20

    Modelsim FLI接口的协同仿真技术

    1 前言    协同仿真就是利用仿真工具提供的外部接口,用其它程序设计语言(非HDL语言,如c语言等)编程,用辅助仿真
    发表于 06-07 08:33 1133次阅读
    <b class='flag-5'>Modelsim</b> FLI接口的协同<b class='flag-5'>仿真</b>技术

    使用ModelSim进行设计仿真

    ModelSim为HDL仿真工具,我们可以利用该软件来实现对所设计的VHDL或Verilog程序进行仿真,支持IEEE常见的各种硬件描述语言标准。可以进行两种语言的混合
    发表于 04-19 20:52 151次下载

    使用 ModelSim 进行设计仿真

    ModelSim为HDL仿真工具,我们可以利用该软件来实现对所设计的VHDL或Verilog程序进行仿真,支持IEEE常见的各种硬件描述语言标准。可以进行两种语言的混合
    发表于 05-27 16:41 132次下载
    使用 <b class='flag-5'>ModelSim</b> 进行设计<b class='flag-5'>仿真</b>

    MODELSIM仿真(适合xilinx ISE)

    基于Xilinx ISE的modelsim仿真教程
    发表于 11-30 15:52 8次下载

    使用 ModelSim 进行设计仿真详解

    本章为ModelSim的初级教程,读者读完本章可以较为熟练的使用ModelSim进行设计仿真,本章没有也不可能涉及ModelSim的各个方面,要想全面的掌握
    发表于 12-24 18:29 0次下载

    仿真软件ModelSim及其应用,ModelSim仿真流程

    ModelSim不仅可以用于数字电路系统设计的功能仿真,还可以应用于数字电路系统设计的时序仿真ModelSim的使用中,最基本的步骤包括创建工程、编写源代码、编译、启动
    的头像 发表于 12-29 11:35 9261次阅读

    Modelsim仿真教程Modelsim的基础入门基础教程免费下载

    Modelsim,但是Modelsim不是仿真,严格来讲Modelsim只是仿真所需的工具而已
    发表于 04-30 18:24 23次下载
    <b class='flag-5'>Modelsim</b><b class='flag-5'>仿真</b>教程<b class='flag-5'>Modelsim</b>的基础入门基础教程免费下载

    基于ModelSim使用四ModelSim手动仿真教程

    4.1 新建仿真工程 在开始动手仿真之前,首先,我们需要创建一个文件夹用来放置我们的 ModelSim 仿真工程文件,这里我们就在之前创建的 Quartus 工程目录下的 simula
    的头像 发表于 07-23 11:10 3579次阅读

    Vivado与ModelSim的联合仿真操作

    Vivado自带的仿真,个人觉得跑一些小模块的仿真还是可以的,不过跑大的仿真系统,容易无体验感,建议用第三方工具,这边就直接对ModelSim
    的头像 发表于 03-11 11:32 6400次阅读

    ModelSim手动仿真教程

    在开始动手仿真之前,首先,我们需要创建一个文件夹用来放置我们的 ModelSim 仿真工程文件,这里我们就在之前创建的 Quartus 工程目录下的 simulation 文件夹中创建
    的头像 发表于 07-11 10:58 4539次阅读

    芯片设计之仿真工具

    WINDOWS系统主要运用于可编程逻辑器件,如CPLD、FPGA的仿真,这是因为进行验证的工程师(芯片生产前需要进行验证,目的是防止实际生产的芯片出现漏洞导致百万元到千万元人民币的损失)主要使用WINDOWS系统。可编程逻辑器件
    的头像 发表于 08-12 15:01 3119次阅读

    Vivado调用Modelsim仿真

    Modelsim是十分常用的外部仿真工具,在Vivado中也可以调用Modelsim进行仿真,下面将介绍如何对vivado进行配置并调用
    的头像 发表于 07-24 09:04 2001次阅读
    Vivado调用<b class='flag-5'>Modelsim</b><b class='flag-5'>仿真</b>

    如何使用 ModelSim 进行设计仿真

    ModelSim为HDL仿真工具,我们可以利用该软件来实现对所设计的VHDL或Verilog程 序进行仿真,支持IEEE常见的各种硬件描述语言标准。可以进行两种语言的混合
    发表于 01-14 09:47 0次下载