问题标签 [vhdl]
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.
hardware - 将 VHDL 监视器转换为 PSL 断言
我有一个关于 PSL 断言的有趣问题。这是一个VHDL监控程序。这是一个专用于断言的过程,因此是一个不可综合的过程。此监视器检查当前 FSM 状态并存储两个寄存器的值:“ input1
”和“ reg136
”。最后,它触发一个“ assert
”语句来比较这些寄存器的值。
问题是:有没有办法将此监视器转换为 PSL(属性规范语言)断言?
重要提示:寄存器“input1”和“reg136”只能在 fsm 状态分别处于状态 s0 和 s22 时读取。否则,这些寄存器中包含的数据不属于断言变量“a”和“t34”。因此,PSL 语句需要一种方法来读取和存储正确 fsm 状态的值。
谢谢 !
vhdl - VHDL语言IDE
可能重复:
专业 VHDL IDE ?
谁能告诉我IDE我可以在哪里编写VHDL代码?
simulation - 什么是 ModelSim 输出文件以及如何在 ROM 上加载 hex 文件?
我想在 ModelSim 中模拟使用 VHDL 设计的微处理器。我想知道模拟的输出文件格式是什么?我也想在这个Microporcessor的ROM上加载一些HEX文件……我该怎么办?谢谢。
vhdl - 模拟不起作用 - 端口映射错误?
首先,很抱歉重定向,但这样更容易。我正在构建一个数字时钟,但如您所见,clock_AN 和 clock_seg_out 不会改变。这是由错误的端口映射引起的吗?谢谢!
vhdl - 24khz的声音(ADC)读数是多少?
在不使用外部 ADC 转换器(仅从音频插孔光学获取电压平衡输入)的情况下,可以通过普通 FPGA(Xilinx Spartan 3,曾经的任何东西)制作多少高保真度(128K 44kH)的“声音输入”?
在这里,使用 VHDL 代码生成纯正弦波作为 FPGA 的输出,指出 FPGA 本身可能无法执行这样的工作。
但是,在提议的测试项目中,该分辨率仍有 4 个输入/4 个输出,并且...
实现前置 DAC/前置 ADC 输出所需的门的可能性/数量是多少?
vhdl - 为什么我需要在其他架构中实例化 VHDL 组件之前重新声明它们?
自从我的第一个 VHDL 课程以来,我一直在摸不着头脑,并决定在这里发布我的问题。
鉴于我有一个已声明的实体(以及它的架构)并想在另一个架构中实例化它,为什么我似乎必须在实例化它之前在这个包含架构中重新声明“实体”(组件)?
难道编译器不够聪明,仅凭名称就可以将实例化与其架构相匹配吗?哪里需要组件声明?
loops - 进程内的冗余循环(VHDL)?
我正在上一门大学课程来学习使用 VHDL 进行数字设计,前几天我在读这本书时遇到了以下代码:
现在,正如我所理解的那样,一旦进程到达其最后一条语句,它将返回并执行第一wait
条语句(当然,前提是最后一条语句不是 a )。并且目的loop ... end loop;
是无限重复中间代码。那么在这种情况下,这不会使循环变得多余吗?它是否添加了该过程尚未表现出的任何额外行为?
llvm - 为 LLVM 创建 VHDL 后端?
LLVM 非常模块化,允许您相当轻松地定义新的后端。然而,大多数关于创建 LLVM 后端的文档/教程都侧重于添加新的处理器指令集和寄存器。我想知道为 LLVM 创建 VHDL 后端需要什么?是否有使用 LLVM 从一种高级语言转换到另一种语言的示例?
澄清一下:是否有将 LLVM IR 翻译成高级语言而不是汇编语言的例子?例如:您可以使用 Clang 读入 C 语言,使用 LLVM 进行一些优化,然后用另一种语言(如 Java 或 Fortran)编写代码。
case - VHDL Case/When:多个案例,单个子句
在一个过程中,我有这样的事情:
请注意这种情况"00"
并"01"
获得相同的值。是否有正确的语法
WHEN "00", "01" =>
?
额外说明:这远不止 Y 被改变,我只是为了简单起见。所以情况/何时是必要的。
vhdl - VHDL中相似实体之间的包装和切换
我想描述一个可以正常运行或处于测试模式的实体。我的一般设计是一个顶级实体,它包装了“真实”实体和一个测试实体。
我试图找出用 VHDL 表达这一点的最佳方式,但我觉得我把事情复杂化了。
考虑一个小的顶级实体(实际上,还有更多的 I/O):
这应该根据“测试线”的状态在实际功能和测试模式之间切换(高意味着测试)。请注意,测试模块实际上使用除了clk
作为输出之外的所有内容,甚至in_*
.
所以我有几个问题:
对于
/li>inout
端口,我应该有一个带有case ... when
打开声明的大进程testline
吗?还是每个 I/O 的进程都带有一个if
语句?从理论上讲,我认为许多较小的过程是同时执行的,而不是顺序执行的,但它实际上会对模拟或综合产生影响吗?例如:
……对……
- 这是一种理智的方法还是有更简单的方法?
- 我对敏感性感到困惑——我是否需要
passthrough_in1
(甚至passthrough_all
对除testline
. - 我需要
real_in1
/test_in1
在两个包装实体之间进行选择吗?还是有另一种说法“如果testline
高,将test_module
输出连接in_1
到toplevelobject
I/Oin_1
?