Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >PLI Verilog:如何重新启动模拟

PLI Verilog:如何重新启动模拟
EN

Stack Overflow用户
提问于 2014-01-07 16:16:26
回答 2查看 445关注 0票数 0

我想使用PLI重新启动我的模拟。我使用VCS。

我写了这个:vpi_control(vpiReset,1);

在由cbEndOfSimulation捕获的回调函数中,模拟器获得重置调用,但没有像文档中所写的那样使用额外的参数:模拟重新启动,但处于交互模式!我还测试了3个参数...

这是重新启动模拟的正确方法吗?

提前感谢

EN

回答 2

Stack Overflow用户

发布于 2014-01-07 23:06:26

根据VPI规范,您正在做的操作看起来是正确的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
PLI_INT32 vpi_control(
   PLI_INT32 operation,  /* constant representing the operation to perform */
             ...)        /* variable number of arguments as required by the
                            operation */

其中,操作vpiReset等同于$reset系统任务,因此需要三个参数:stop_valuereset_valuediagnostic_level

我知道这是显而易见的,但是您是否检查返回值是1(表示成功)而不是0(表示失败)?

我唯一能给出的其他建议是:

  1. 尝试从Verilog调用等效的$reset系统任务,并查看其行为是否符合预期
  2. 尝试在不同的模拟器

上运行测试程序

如果这些表明VCS是有缺陷的,那么至少你有一个很好的测试案例来提出一个支持票证,并希望Synopsys能相对迅速地为你提供一个补丁。

如果这是一个VCS错误,你也许可以通过使$reset被Verilog调用来解决它--假设$reset按预期工作--或者你可以在cbEnterInteractive回调中做一些事情来采取纠正措施。

票数 1
EN

Stack Overflow用户

发布于 2014-01-08 08:45:26

谢谢你的回答。

不幸的是,我已经测试了$reset;例程。

当我用$reset;$reset(0);调用它时,模拟在交互模式下被重置。当我调用$reset(1)$reset(1,0,0)时,模拟被重置为非交互模式(如文档中所述)。

对于第二个建议,我不能访问另一个模拟器...

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20976544

复制
相关文章
【例说】Verilog HDL 编译器指令,你见过几个?
复杂一点的系统在进行设计或者验证时,都会用到一些编译器指令,那么什么是编译器指令?
碎碎思
2021/10/18
1.8K0
【例说】Verilog HDL 编译器指令,你见过几个?
【干货】推荐一款FPGA仿真调试鸟枪换炮的工具!
调试FPGA,大家常用的工具主要有以下几种:Quartus,ISE或Vivado ,而仿真工具则常用ModelSim,个别初学者甚至还拿ISE/Vivado或Quartus做过仿真。
网络交换FPGA
2019/10/29
10K2
【干货】推荐一款FPGA仿真调试鸟枪换炮的工具!
如何学习verilog,如何快速入门?
A:你就是有病 书,这玩意 都可以扔了 B:不,上课的时候可以看 又不能一直看视频 视频这东西,差不多就行 A:视频是经验总结和解释,书上只是对手册的抄袭。你把一门语言手册读的再通透你也不会编程。而且会的都是细枝末节,甚至应用都不会。
全栈程序员站长
2022/07/23
7140
如何学习verilog,如何快速入门?
VCS与Verdi的联合仿真
Verdi主要用于生成fsdb模型,同VCS使用的vcd文件相比,verdi使用的fsdb相当于vcd文件经过霍夫编码压缩之后的精简版,可用于查看fsdb波形并追踪RTL代码。
根究FPGA
2020/07/28
9.2K0
VCS与Verdi的联合仿真
优秀的 Verilog/FPGA开源项目介绍(十)- H.264和H.265
H.265是ITU-TVCEG继H.264之后所制定的新的视频编码标准。H.265标准围绕着现有的视频编码标准H.264,保留原来的某些技术,同时对一些相关的技术加以改进。
碎碎思
2021/12/10
2.8K0
优秀的 Verilog/FPGA开源项目介绍(十)- H.264和H.265
数字硬件建模-从另一方面理解Verilog(一)
Verilog标准化为IEEE 1364标准,用于描述数字电子电路。Verilog HDL主要用于RTL抽象级别的设计和验证。Verilog由Prabhu Goel和Phil Moorby于1984年在Gateway design automations创建。Verilog IEEE标准包括Verilog-95(IEEE 1364-1995)、Verilog-2001(IEEE 1364-2001)和Verilog-2005(IEEE 1364-2005)。Verilog是区分大小写的,在进一步讨论RTL设计和合成之前,必须对Verilog代码结构有基本的了解(图1.3)
碎碎思
2022/03/07
1.1K0
数字硬件建模-从另一方面理解Verilog(一)
verilog ifdef_verilog define
注意:feof判断文件结束是通过读取函数fread/fscanf等返回错误来识别的,故而判断文件是否结束应该是在读取函数之后进行判断。比如,在while循环读取一个文件时,如果是在读取函数之前进行判断,则如果文件最后一行是空白行,可能会造成内存错误。
全栈程序员站长
2022/11/16
1.5K0
FPGA Verilog-1995 VS Verilog-2001
大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。
FPGA技术江湖
2020/12/29
1.6K0
FPGA Verilog-1995 VS Verilog-2001
Verilog
Verilog HDL通过对reg型变量建立数组来对存储器建模,可以描述RAM型存储器,ROM存储器和reg文件。数组中的每一个单元通过一个数组索引进行寻址。在Verilog语言中没有多维数组存在。 memory型数据是通过扩展reg型数据的地址范围来生成的。其格式如下: reg [n-1:0] 存储器名[m-1:0]; 或 reg [n-1:0] 存储器名[m:1]; 在这里,reg[n-1:0]定义了存储器中每一个存储单元的大小,即该存储单元是一个n位的寄存器。存储器名后的[m-1:0]或[m:1
瓜大三哥
2018/02/24
1.4K0
Verilog
express 修改不重新启动
npm install -g node-dev package.json 修改如下 { "name": "server", "version": "0.0.0", "private": true, "scripts": { "start": "node ./bin/www", "dev":"node-dev ./bin/www" }, 用 npm run dev 启动
用户6421725
2019/11/04
1.1K0
Verilog流水线_verilog菜鸟教程
本文从四部分对流水线设计进行分析,具体如下: 第一部分什么是流水线 第二部分什么时候用流水线设计 第三部分使用流水线的优缺点 第四部分流水线加法器举例
全栈程序员站长
2022/09/21
5990
如何写出易于维护的Verilog代码?
众所周知,用于FPGA开发的硬件描述语言(HDL)主要有两种:Verilog和VHDL,VHDL的出现时间要比Verilog早,Verilog由于其简单的语法,和C语言的相似性,目前被各大公司广泛使用。
单片机点灯小能手
2021/07/14
5780
如何高效的编写Verilog HDL——进阶版
  博主之前写过一篇文章来谈论如何高效的编写Verlog HDL——菜鸟版,在其中主要强调了使用Notepad++来编写Verilog HDL语言的便捷性,为什么说是菜鸟版呢,因为对于新手来说,在还没有熟悉软件和硬件描述语言的时候,使用Notepad++不需要学习成本,几分钟就能用好,利用其中一些功能,便能相对快捷高效的编写代码。很多人习惯了使用Notepad++,包括我在内。但是当我遇见了它——Vim。相对来说Vim就需要一段时间去适应学习,而且还要合理运用才能发挥出它的最大效率。   Vim其实一款Li
NingHeChuan
2018/04/02
3.6K0
如何高效的编写Verilog HDL——进阶版
verilog同步fifo_verilog 异步复位
在上篇文章:同步FIFO的两种Verilog设计方法(计数器法、高位扩展法)中我们介绍了FIFO的基本概念,并对同步FIFO的两种实现方法进行了仿真验证。而异步FIFO因为读写时钟不一致,显然无法直接套用同步FIFO的实现方法,所以在本文我们将用Verilog实现异步FIFO的设计。
全栈程序员站长
2022/09/21
5730
verilog同步fifo_verilog 异步复位
verilog vhdl混合_vhdl转换为verilog
step1. 用vhdlcom将所有的VHDL RTL代码编译成库 1.1 将所有的vhdl文件放到vhdl.f文件中,如: vhdl.f ——— my_design.vhd my_lib.vhd tb_my_design.vhd 1.2 编译成库 vhdlcom -f vhdl.f 编译完成后,在运行路径下可看到自动生成的一个库文件夹work.lib++ 注意: a) 一般情况下vhdlcom命令不需要加其他参数。若出现vhdl版本问题,可考虑 增加-vhdl08等参数:vhdlcom -vhdl08 -f verilog.f b) 编译后的log为vhdlcomLog/compiler.log c) -lib 参数可指定一个库名。不指定,则默认库命为work。所有的生成的库 的库名都是自由附加了”.lib++”后缀。对于混合仿真vhdl和verilog的库名要保持一致, 否则可能出现其中一个库无法识别的问题(verdi版本为2015,可能后续版本解决了该问 题)。例:vhdlcom -lib mylib -f vhdl.f,生成mylib.lib++库
全栈程序员站长
2022/11/08
1.1K0
Verilog HDL 语法学习笔记
Verilog HDL 语 言 最 初 是 作为 Gateway Design Automation 公 司 ( Gateway DesignAutomation 公司后来被著名的 Cadence Design Systems 公司收购)模拟器产品开发的硬件建模语言。
FPGA技术江湖
2020/12/30
2.1K0
同步fifo的verilog代码_verilog 异步复位
  本文大部分内容来自Clifford E. Cummings的《Simulation and Synthesis Techniques for Asynchronous FIFO Design》,经过自己的一些改变,理论部分为转载,代码自己完成。
全栈程序员站长
2022/09/21
6690
同步fifo的verilog代码_verilog 异步复位
数字IC设计 | 入门到放弃指南
Verilog语言与软件语言最大的区别就是,因为它是用于描述电路的,因此它的写法是非常固定的,因为电路的变化是非常有限的。学习Verilog的时候,很多时候我们并不是在学习这门语言本身,而是学习其对应的电路特征,以及如何对这个电路进行描述。如果心中没有电路,那么你是不可能写好Verilog的。
数字芯片社区
2022/04/06
2.5K0
数字IC设计 | 入门到放弃指南
如何在不重新启动phantomjs的情况下修改HTTP代理?
使用Selenium和PhantomJS模拟浏览器访问是一种非常常见的自动化测试技术,而修改HTTP代理也是一个常见需求,因为有时候我们需要测试在不同地理位置下的网站性能,或者需要绕过一些IP限制等等。
阿秋数据采集
2023/03/07
5520
VCS仿真VHDL VERILOG混合脚本「建议收藏」
IC小白有感于第一次参与的流片工程,总结了一下参与过程中的Makefile配置,以及一些环境配置,希望能够帮助到大家;
全栈程序员站长
2022/11/08
1.6K0

相似问题

如何使用PLI例程获取verilog向量端口的尺寸?

13

如何在Modelsim中重新启动Verilog模拟

33

如何使用VPI PLI - verilog VCS查找是否连接了两个Verilog模块

12

Verilog连续模拟

10

如何使用Verilog宏模拟$display?

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文