Mentor Graphics ModelSim

ModelSim官方最新版是一款仿真模拟软件,可以通过这款软件模拟设计流程,可以在软件部署设计方案和配置硬件内容,为用户开发新的设备提供模拟分析方案,软件提供资源库,资源库通常是静态的,用作设计的零件源,您可以创建自己的资源库,也可以由其他设计团队或第三方(例如,硅供应商)提供这些库,ModelSim无需每次仿真都编译所有设计数据,而是利用安装树中提供的预编译资源库,这些库有助于最小化编译和仿真启动期间的错误,另外如果对给定库中的单个Velog模块进行更改,则ModelSim仅重新编译该模块,而不重新编译设计中的所有模块,软件提供设计库、VHDL模拟、VelogVelog和仿真、C仿真、混合语言模拟、先进的仿真技术!

相关推荐 软件介绍 下载地址
Mentor Graphics ModelSim官方最新版v2020.4 MdelSim官方最新版是一款仿真模拟软件,可以通过这款软件模拟设计流程,可以在软件部署设计方案和配置硬件内容,为用户开发新的设备提供模拟分析方案,软件提供资源库,资源库通常是静态的,用作设计的零件源,您可以创建自己的资源库,也可以由其他设计团队或第三方(… 点击查看
Monero gui官方版v0.17.1.9 Me提供钱包功能,可以通过这款软件帮助用户设计新的虚拟数字货币钱包,可以在软件设置钱包地址,可以发送货币,可以接收其他人发送的货币,为用户管理门罗币提供更方便的作方式,现在数字货币都是有钱包客户端的,您点击交易过程全部在钱包上执行,挖矿获得的虚拟… 点击查看
AFT Arrow绿色版v7.0.1207 行业类的分析工具是工作中要用到的,AFTAw绿色版正是这样的一款行业分析软件,作过程也不会复杂,包括空气、水蒸气、及其他气体等等,AFTAw版下载成功之后就能进行安装使用。AFTAw绿色版软件特色1、使用各种设计和作系统组件进行实验和仿真2、选择理想气体或… 点击查看

Mentor Graphics ModelSim软件功能

1、高级代码覆盖率

ModelSim的高级代码覆盖功能和易用降低了利用此宝贵的验证资源的障碍。

ModelSim高级代码覆盖功能为系统验证提供了宝贵的指标。所有险种都存储在统一险种数据库(UCDB)中,该数据库用于在高效数据库中收集和管理所有险种。提供了用于分析代码覆盖率数据(例如合并和测试排名)的覆盖率实用程序。可以交互地,在模拟后或合并多个模拟运行后查看覆盖率结果。可以按实例或按设计单位报告代码覆盖率指标,从而在管理覆盖率数据方面提供了灵活。

支持的承保范围包括:

声明范围:

运行期间执行的数

分行覆盖:

影响HDL执行控制流程的表达式和case

条件覆盖:

将分支上的条件分解为使结果为真或假的元素

表达范围:

与条件覆盖范围相同,但覆盖并发信号分配而不是分支决策

集中表达:

在确定覆盖率结果时考虑表达式的每个输入的方式显示表达式覆盖率数据

增强的切换范围:

在默认模式下,计数从低到高和从高到低的转换;在扩展模式下,计算与X之间的转换

有限状态机覆盖:

州和州过渡范围

2、混合HDL模拟

ModelSim将仿真能和容量与代码覆盖率和调试功能相结合,以模拟多个模块和系统并获得ASIC门级签核。对Velog,Velog for Design,VHDL和C的全面支持为单语言和多语言设计验证环境提供了坚实的基。ModelSim易于使用的统一调试和仿真环境为当今的FPGA设计人员提供了他们益增长的需要的高级功能,以及使工作变得高效的环境。

3、有效的调试环境

ModelSim调试环境针对Velog,VHDL和C的广泛直观功能集使其成为ASIC和FPGA设计的选择。

通过智能设计的调试环境,ModelSim简化了查找设计缺陷的过程。ModelSim调试环境可有效显示设计数据,以分析和调试所有语言。

ModelSim允许在保存后的结果以及实时仿真运行过程中使用许多调试和分析功能。例如,覆盖率查看器使用代码覆盖率结果分析和注释源代码,包括F状态和转换,,表达式,分支和切换覆盖率。

信号值可以在源窗口中注释,并在波形查看器中查看,从而简化了调试导航,在对象及其声明之间以及在访问的文件之间具有超链接导航。

竞赛条件,变化量和事件活动可以在列表和波形窗口中进行分析。可以轻松定义用户定义的枚举值,以更快地了解仿真结果。为了提高调试效率,ModelSim还具有图形和文本数据流功能。

ModelSim与Mentor的旗舰模拟器Questa®共享一个公共前端和用户界面。如果需要更高的能和对高级验证功能的支持,这可使客户轻松升级到Questa。

Mentor Graphics ModelSim软件特色

1、统一的混合语言仿真引擎,易于使用和能

2、ñative支持的Velog,Velog的设计,VHDL和C对复杂的设计环境的有效核查

3、快速调试时间,易于使用的多语言调试环境

4、先进的代码覆盖率和分析工具,可快速缩短覆盖范围

5、提供了交互式调试和后期模拟调试,因此可使用相同的调试环境

6、强大的波形比较功能,可轻松分析差异和错误

7、统一的覆盖数据库,具有完整的交互式和HTML报告和处理功能,可了解和调试整个项目的覆盖范围

8、结合HDL Designer和HDL Author进行完整的设计创建,项目管理和可视化功能

Mentor Graphics ModelSim安装方法

1、打开modelsim-win-2020.4-se.exe软件直接安装,点击下一步

2、提示软件的安装地址C:modeltech_2020.4

3、提示软件的安装协议内容,点击下一步

4、提示软件的安装进度条,等待主程序安装结束

5、弹出提示您想要将Modelsim可执行目录添加到您的路径吗? 这对于从DO框中运行批处理编译和模拟非常有用,可以点击是

6、弹出Key Dver安装,点击否

7、提示安装完毕,点击完成

Mentor Graphics ModelSim官方最新方法

1、打开patch,解压里面的官方最新文件,将MentorKG.exe和patch_dll.bat复制到软件安装地址C:modeltech_2020.4win

2、双击patch_dll.bat等待一段时间会弹出许可文件LICENSE.TXT,将其保存

3、在C盘建立flexlm文件夹,将许可证LICENSE.TXT复制到该文件夹保存

4、点击此电脑-属-高级系统设置添加变量内容

5、新建一个系统变量

LM_LICENSE_FILE

C:flexlmLICENSE.TXT

6、打开crack1文件夹,将win文件夹下的mgcld.exe和mgls.dll复制到安装目录中替换

7、如图所示,替换目标文件就可以激活

8、启动软件就可以正常使用

Mentor Graphics ModelSim使用说明

什么是交易?

事务是对设计在仿真运行期间一次与另一次之间所做的陈述。

“交易”一词由于与事务级别建模(TLM)相关联而可能造成混淆。在TLM中,设计单元跨接口传递消息,这些消息通常称为事务。

在ModelSim中,事务是记录在WLF文件中的象,该声明设计在特定时间的工作。设计人员用源代码编写一个事务,在仿真过程中将其记录到WLF文件中。通常,事务表示在设计对象之间移动的数据包。事务允许用户在任何象级别上调试和监视设计。

事务至少应包括:名称,开始时间和结束时间。仅此一项,您就可以记录状态机的转换或总结总线上的活动。但此外,事务可以具有用户定义的属,例如地址,数据或状态。

关于交易的源代码

您可以通过放置在设计源代码中的Velog / VHDL或C API调用来创建/记录事务。

Velog / Velog和VHDL事务—使用专门为要通过ModelSim模拟器验证的设计而开发的自定义API编写。除非另有说明,否则本章通篇使用“ Velog”一词来表示该语言的两种形式(Velog和Velog)。

C事务—与C验证(SCV)库一起编写。

有关记录事务的,请参阅C验证标准规范,版本1.0e中的C API语法。

随着仿真的进行,单个事务会记录到WLF文件中,并且可以在交互式调试和仿真后调试中用于设计调试和能分析。

关于交易流

ModelSim记录流上的交易,就像它记录电线和信号上的值一样。流是可调试的对象,可以将其添加到GUI窗口,例如“对象”或“波形”窗口。

当您一次在一个流上记录多个事务时,这些事务是“并发的”。模拟器根据需要创建子流,以便流上的并发事务保持不同(请参见图1)。

并发事务在“ Wave”窗口中显示为:

并行事务—重叠但在两个事务之间不存在内在联系的事务。

阶段交易-并发交易实际上是初始交易的子交易。

您可以指定在记录期间并发事务是阶段事务还是并行事务。

模拟器会自动记录交易记录,使它们可立即在GUI中查看。 Wave窗口可提供最佳的交易视图。例如,图1显示了多个事务的Wave窗口视图

交易查看共

模拟器在所有调试窗口和窗格中始终显示事务。

当流上有事务实例时,模拟器会将事务记录在WLF文件中,并在调试窗口中显示它们。

流有子流,并且在以下情况下可扩展:

上面已经定义了带有属的交易

交易流重叠

当未扩展时,可扩展流的值包括所有当前活动事务的名称;例如“ {busRetry busWte}”。仅当您扩展流以显示它们时,任何属的值才可用。

图1显示了几个流,其中一个具有八个子流。

图1. Wave窗口中的事务流

如果在特定流上未定义任何事务,或者没有事务具有属,则该流是一个简单信号,以当前事务的名称为其值。

值在以下情况下出现:

当流上没有事务处于活动状态时。

存在元素(属和/或子流)但未被事务使用的元素。

在ModelSim中,属和子流是加的。模拟器将这些添加到流的基本定义中,并从该点开始将其保留为流定义的一部分。即使未在某些事务中使用属,该属仍是流的一部分

C验证(SCV)允许设计在begin和end属上设置显式的,未定义的值。模拟器将这些显示为“ ”。

事务流是在设计控制下的动态对象。在仿真过程中,设计可以定义新的流,定义新的事务种类,重叠事务或创建阶段事务,添加各种特殊属等等。作为响应,模拟器会在GUI中主动重新创建对象以反映最新更改。

动态更改始终是累加的:将元素添加到流中后,它将保留在所有视图中。在仿真后调试中,GUI将显示所有元素,就好像它们从仿真运行开始就存在。对于交互式调试和仿真后调试,仿真器都显示在特定仿真时间不存在的元素,就像使用了nolog命令一样。它们的值为“ No_Data”。

结构窗口中的事务对象

使用“结构”窗口可以浏览设计中的区域,这与在命令行模式下使用env命令类似。

交易对象在“结构”窗口的设计层次结构中看起来很像信号或网络。当您导航到包含流的区域时,该流在“对象”窗口中可见。

在Wave窗口中查看事务

在Wave窗口中,可以最有效地查看事务。

先决条件

要在Wave窗口中查看事务,必须在事务开始时的模拟时启用志记录。该模拟器自动启用对以SCV,Velog和VHDL编写的事务进行志记录的功能。

注意:

可以使用nolog命令禁用志记录。

程序

在包含事务的设计上运行模拟。

vsim上衣;全部运行

通过执行以下任一作,将事务添加到Wave窗口:

从“对象或结构(sim)”窗口拖放到“波形”窗口。 (add wave命令将反映在“成绩单”窗口中。)

当光标位于事务上方时,单击鼠标中键。

选择事务,选择“添加”>“至”窗口。

在命令行中输入以下内容:

添加wave -expand top / *

选择在其下方具有对象的流旁边的加号图标以显示子流和/或任何属。

结果

交易流的图标是一个四点星形。星形的颜色表示在其中找到流的区域的源语言:C为绿色,Velog为浅蓝色,VHDL为深蓝色。

在波形窗格中,事务显示为该事务的所有可见值周围的框。图1显示了一个只有一个子流的流上的事务的示例,其中该流以其展开和折叠形式显示。

图1.查看事务和属

每个框代表流上交易的“实例”。在第一笔交易和第二笔交易之间绘制的水平线表示没有活动的时间段,或者禁用了志记录的时间段;没有办法知道是哪种情况。

当存在并行并行事务时,该流显示并行值,这些值绘制为垂直偏移重叠,以便可以看到每个实例。如图2所示,扩展流显示子流,将事务整齐地分开,每个子流可以扩展以显示属或阶段子流。当您选择一个事务实例,所有的关联交易都还强调,如图2所示。

图2.并行并行事务

图3显示了一个简单的事务流,其中包括简单的用户定义的地址和数据属。

图3. Wave窗口中的事务-查看

交易的第一行是交易的名称。如图3所示,当扩展事务流时,其他行将显示事务的属。

小费

对于C的begin / end属-如果生成器声明了begin end属,但未定义该值,则该值在GUI中显示为“未定义”。

追溯记录和交易显示

追溯记录是指交易的记录,其开始和/或结束时间发生在当前模拟时间之前。

与追溯交易记录和显示有关的两个最重要的问题是Wave窗口中追溯交易的外观,以及已记录的交易和追溯记录。

Wave窗口中追溯交易的外观

在Wave窗口中绘制追溯交易时,可能会显示比预期更多的子流。这是由于这样的事实,即使两个事务之间可能存在足够长的空间来进行追溯事务,该工具也会创建一个额外的子流来绘制该事务。

记录的事务和追溯记录

在仿真时启用志记录时,当设计调用:: begin_transaction(C),$ begin_transaction(Velog)或begin_transaction(VHDL)时,将在WLF文件中记录一个事务。事务的有效开始时间(换句话说,设计作为开始事务的参数所经过的时间)无关紧要。

例如,流可能在T1和T2之间禁用了志记录,并且仍在该时间段内使用时间T2之后的追溯志记录事务。事务始终完全记录或不记录。

在Wave窗口中选择交易或流

您可以在Wave窗口中选择交易或流;或者,如果交易是通过关联记录的,则从弹出菜单中进行。

程序

使用这些方法中的任何一种在wave窗口中选择交易。

使用鼠标选择交易

左键单击鼠标以选择单个事务以及该事务的任何子流。

用Shift键单击鼠标左键以选择多个事务及其子流。

使用弹出菜单选择相关交易

右键单击以显示带有以下选项的弹出菜单:

选择相关—选择当前交易指向的交易。

选择关联—选择指向当前交易的交易。

选择链—选择当前交易的所有相关交易。使用它来选择整个因果链。

选择元—选择当前交易的所有相关交易。使用它来选择该关系的任何现有分支。

选择这些项目中的任何一个都会弹出一个子菜单,其中列出了所有适用的关系名称。

如果选择了多个事务,则这些弹出菜单项将显示为灰色。

有关如何记录关系的,请参见“ 9”(SC)和“ 5”(Velog / VHDL)。

自定义交易外观

您可以自定义事务实例的外观,或在调试时更改整个事务流的外观。您可以将这些自定义设置应用于当前的Wave窗口或所有Wave窗口。

自定义属的外观

您可以使用GUI(或tr order命令)来更改事务属的顺序并在流中隐藏/显示属。

程序

右键单击事务或流名称以打开弹出菜单。

选择“事务属”以打开“事务流属”对话框。

选择Order选项卡(图1)。

图1.事务流属对话框

从可见属列表中选择属,选择:

显示—显示流中当前隐藏的属

隐藏-在流中从视图隐藏属

向上—在流中向上移动属

向下—向下移动

默认值—恢复原始视图

请执行以下任一作:

单击“应用”进行更改,并使对话框保持打开状态。

单击确定以应用更改并关闭对话框。

在列表窗口中查看交易

当您不需要查看事务关系时,可以使用“列表”窗口查看事务。

先决条件

您的设计代码必须记录事务,以便它们在GUI中可见。

有关事务记录的说明,请参见“在C中记录事务”或“在Velog和VHDL中记录事务”。

程序

在包含事务的设计上运行仿真。

vsim上衣;全部运行

通过执行以下任一作,将事务对象(事务流,子流,属和属元素)添加到“列表”窗口:

从“对象或结构(sim)”窗口中拖放。

选择“选择事务”,在“标准”工具栏中选择“将所选内容添加到窗口”菜单。从工具栏中选择添加到列表。

菜单选择—添加>至列表。

结果

如果“列表”窗口中存在事务,则每当事务状态更改时,新行就会写入“列表”窗口。具体来说,当事务开始或结束以及任何属更改状态时,将打印行。状态更改可能在时间步长或增量之间发生。

图1.列表窗口中的事务

本示例显示了显示两种事务类型的流的List输出。每个都有一个SCV样式的begin属,特殊属和end属。

在此示例中,您可以看到与更改事务相同的重复时间/增量。例如,在1(0)处,busRead以begin属设置为值“ 1”开始。在时间3(0),结束属值“ 100”到达。在下一行,也是在时间3(0),特殊属的值“ 10”到达。在下一行中,交易已结束。这之后是几行,显示了“ ”状态,因为各种属在内部发生了变化。

上一篇 2023-01-31

相关推荐

  • Mentor Graphics ModelSim

    ModelSim 2020是一款仿真设计软件,支持混合语言模拟,通过ModelSim,您可以仿真以VHDL,C,Velog和Velog编写的设计,尽管设计单元必须完全是一种语言...
  • Mentor Graphics ModelSim

    ModelSim官方最新版是一款仿真模拟软件,可以通过这款软件模拟设计流程,可以在软件部署设计方案和配置硬件内容,为用户开发新的设备提供模拟分析方案,软件提供资源库,资源库通常...
  • Mentor Graphics ModelSim

    ModelSim 2020是一款仿真设计软件,支持混合语言模拟,通过ModelSim,您可以仿真以VHDL,C,Velog和Velog编写的设计,尽管设计单元必须完全是一种语言...
正在提交中,请稍等片刻...

发表回复

请登录后评论...
登录后才能评论

评论列表 (0条)