问题标签 [modelsim]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
fonts - 在 Modelsim 中广泛使用的最易读的固定宽度字体是什么
Modelsim 是一个 HDL 模拟器,允许您指定输出使用的字体。定宽字体可以让输出更有序,但是很多定宽字体在眼睛上并不容易。你会推荐什么?我目前使用 Lucida 控制台。
根据一些建议,我已经尝试过 Inconsolata 和 Consolas,但 Modelsim 在 10 点时并不能很好地呈现它们。我不确定为什么。
verilog - verilog modelsim fpga
抱歉,Newbish 的问题。
我正在尝试学习 FPGA 编程。
在我花 1000 美元购买 FPGA 板之前:
如果我只是想学习 Verilog,我可以完全在 Modelsim 中运行它吗?(我意识到有些时间问题只出现在实际芯片中;但是对于学习语法/编码风格/ ...)_
谢谢!
syntax - 全局声明在 Verilog 2001 语法中是非法的!
我在verilog中写了一些小东西:
我收到这个错误:错误:test.v(5): (vlog-2155) 全局声明在 Verilog 2001 语法中是非法的。
我做错了什么?我正在使用 ModelSim XE III/Starter 6.4b - 自定义赛灵思版本!
verilog - modelsim源代码
下面是一些modelsim代码:
#5 和 #100 代表什么?那些是行号吗?这段代码有问题吗?
vhdl - Modelsim:如何设置 27 MHz 时钟
我想在ModelSim中设置一个 27 MHz 的时钟信号。我通常通过右键单击该信号->时钟->设置周期来设置时钟。例如,50 MHz 时钟 -> 20 ns 或者我使用了 force 语句。
因为 27 MHz 时钟很特殊,它不是整数周期,如果我用 appx 值设置时钟,它总是会出现时序问题。
那么,如何设置这个时钟呢?
vhdl - 在哪里可以找到 ModelSim 错误代码的明确列表?
我正在通过 ModelSim 运行一些 VHDL。每个错误和警告都有自己的错误代码(如下所示:(vcom-1292) Slice range direction "downto" specified in slice with prefix of unknown direction.
这只是一个示例消息;我理解它的含义。
我假设 Mentor 列出了所有可能的错误代码,并更详细地描述了它们的含义以及如何避免它们。我在 ModelSim 附带的 PDF 中没有找到这个错误代码,也没有通过 Google 找到它。任何指针任何人?
vhdl - 为什么 Modelsim 10 不编译旧代码?
我最近刚刚升级到 Modelsim 10,当我重新编译所有代码时,37 个代码中只有 30 个被编译。那些不会编译的有一个常见的错误
我只是简单地包含了 std_logic 的包,将位更改为 std_logics,它神奇地解决了第一次重新编译时的问题(对我来说很少见)。我的问题是为什么新编译器(如果它甚至是新编译器)不接受位和无符号(N 下降到 0)。强制HDL编码器使用更多抽象是某种新标准吗?我看到了一个类似的问题,它解决了我的问题,但我想知道为什么编译突然不同。
vhdl - 信号分配如何在流程中工作?
我了解到信号不是在遇到表达式时立即更改,而是在过程结束时更改。在此示例中:
该示例说明了这一点:
如果信号 y 发生变化,那么将在 x 上安排一个事件以使其与 y 相同。此外,在 z 上安排了一个事件,使其与 x 相反。问题是,z 的值会与 y 相反吗?当然,答案是否定的,因为在执行第二条语句时,x 上的事件还没有被处理,而 z 上调度的事件将与进程开始前 x 的值相反。
好吧,我需要了解一些事情:
- 据我所知,信号值仅在流程结束时更新。它是否正确?
- 信号
x
被更新为第一条语句。这仍然没有改变 的值x
,这个改变被放入队列中,在流程结束后执行。因此,此语句之后的所有内容x <= y
都不会看到更改,并且会看到x
其旧值。它是否正确? - 第二条语句是试图改变信号的值
z
。这里也一样,z 不会改变它的值,但它取决于另一个进程的值。更改z
将被放入队列中以在流程结束时执行。它是否正确?
过程结束时会发生什么?
可能性编号 1) in 中的值x
已更改,因此 x 具有其新值。第二个信号z
被更新,第一个信号x
被更新,并且,给定z
取决于x
,它的值根据 的 NEW UPDATED 值改变x
。该示例应该可以正常工作。
可能性编号 2) in 的值x
已更改,因此 x 具有其新值。第二个信号z
被更新。鉴于它z
被分配了一个旧值x
,这就是z
将保持的值,它的旧值x
已更新,但不考虑此更新。
你能告诉我哪一个是正确的方法吗?
debugging - 如何在 Modelsim 中重新启动 Verilog 仿真
我正在尝试调试 Verilog 模块。我发现必须停止模拟,修改代码,然后重新开始模拟的过程很乏味。有没有更简单的方法?
statistics - 如何在 Modelsim 或 Xilinx ISE Project Navigator 中测量 Verilog 模块的时序
我使用半加器模块设计了一个 4 位进位超前加法器。然后我使用功能性 Verilog 描述设计了另一个 4 位进位预读加法器。第二个应该更快。我怎样才能验证这一点?有没有办法在 Modelsim 或 Xilinx ISE Project Navigator 中查看模块的运行速度?