问题标签 [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.

0 投票
1 回答
1151 浏览

hardware - 将 VHDL 监视器转换为 PSL 断言

我有一个关于 PSL 断言的有趣问题。这是一个VHDL监控程序。这是一个专用于断言的过程,因此是一个不可综合的过程。此监视器检查当前 FSM 状态并存储两个寄存器的值:“ input1”和“ reg136”。最后,它触发一个“ assert”语句来比较这些寄存器的值。

问题是:有没有办法将此监视器转换为 PSL(属性规范语言)断言?

重要提示:寄存器“input1”和“reg136”只能在 fsm 状态分别处于状态 s0 和 s22 时读取。否则,这些寄存器中包含的数据不属于断言变量“a”和“t34”。因此,PSL 语句需要一种方法来读取和存储正确 fsm 状态的值。

谢谢 !

0 投票
3 回答
1688 浏览

vhdl - VHDL语言IDE

可能重复:
专业 VHDL IDE ?

谁能告诉我IDE我可以在哪里编写VHDL代码?

0 投票
1 回答
1784 浏览

simulation - 什么是 ModelSim 输出文件以及如何在 ROM 上加载 hex 文件?

我想在 ModelSim 中模拟使用 VHDL 设计的微处理器。我想知道模拟的输出文件格式是什么?我也想在这个Microporcessor的ROM上加载一些HEX文件……我该怎么办?谢谢。

0 投票
1 回答
184 浏览

vhdl - 模拟不起作用 - 端口映射错误?

VHDL代码

首先,很抱歉重定向,但这样更容易。我正在构建一个数字时钟,但如您所见,clock_AN 和 clock_seg_out 不会改变。这是由错误的端口映射引起的吗?谢谢!

0 投票
1 回答
383 浏览

vhdl - 24khz的声音(ADC)读数是多少?

在不使用外部 ADC 转换器(仅从音频插孔光学获取电压平衡输入)的情况下,可以通过普通 FPGA(Xilinx Spartan 3,曾经的任何东西)制作多少高保真度(128K 44kH)的“声音输入”?

在这里,使用 VHDL 代码生成纯正弦波作为 FPGA 的输出,指出 FPGA 本身可能无法执行这样的工作。

但是,在提议的测试项目中,该分辨率仍有 4 个输入/4 个输出,并且...

实现前置 DAC/前置 ADC 输出所需的门的可能性/数量是多少?

0 投票
2 回答
2662 浏览

vhdl - 为什么我需要在其他架构中实例化 VHDL 组件之前重新声明它们?

自从我的第一个 VHDL 课程以来,我一直在摸不着头脑,并决定在这里发布我的问题。

鉴于我有一个已声明的实体(以及它的架构)并想在另一个架构中实例化它,为什么我似乎必须在实例化它之前在这个包含架构中重新声明“实体”(组件)?

难道编译器不够聪明,仅凭名称就可以将实例化与其架构相匹配吗?哪里需要组件声明?

0 投票
1 回答
455 浏览

loops - 进程内的冗余循环(VHDL)?

我正在上一门大学课程来学习使用 VHDL 进行数字设计,前几天我在读这本书时遇到了以下代码:

现在,正如我所理解的那样,一旦进程到达其最后一条语句,它将返回并执行第一wait条语句(当然,前提是最后一条语句不是 a )。并且目的loop ... end loop;是无限重复中间代码。那么在这种情况下,这不会使循环变得多余吗?它是否添加了该过程尚未表现出的任何额外行为?

0 投票
7 回答
9813 浏览

llvm - 为 LLVM 创建 VHDL 后端?

LLVM 非常模块化,允许您相当轻松地定义新的后端。然而,大多数关于创建 LLVM 后端的文档/教程都侧重于添加新的处理器指令集和寄存器。我想知道为 LLVM 创建 VHDL 后端需要什么?是否有使用 LLVM 从一种高级语言转换到另一种语言的示例?

澄清一下:是否有将 LLVM IR 翻译成高级语言而不是汇编语言的例子?例如:您可以使用 Clang 读入 C 语言,使用 LLVM 进行一些优化,然后用另一种语言(如 Java 或 Fortran)编写代码。

0 投票
2 回答
34941 浏览

case - VHDL Case/When:多个案例,单个子句

在一个过程中,我有这样的事情:

请注意这种情况"00""01"获得相同的值。是否有正确的语法

WHEN "00", "01" =>?

额外说明:这远不止 Y 被改变,我只是为了简单起见。所以情况/何时是必要的。

0 投票
2 回答
914 浏览

vhdl - VHDL中相似实体之间的包装和切换

我想描述一个可以正常运行或处于测试模式的实体。我的一般设计是一个顶级实体,它包装了“真实”实体和一个测试实体。

我试图找出用 VHDL 表达这一点的最佳方式,但我觉得我把事情复杂化了。

考虑一个小的顶级实体(实际上,还有更多的 I/O):

这应该根据“测试线”的状态在实际功能和测试模式之间切换(高意味着测试)。请注意,测试模块实际上使用除了clk作为输出之外的所有内容,甚至in_*.

所以我有几个问题:

  • 对于inout端口,我应该有一个带有case ... when打开声明的大进程testline吗?还是每个 I/O 的进程都带有一个if语句?从理论上讲,我认为许多较小的过程是同时执行的,而不是顺序执行的,但它实际上会对模拟或综合产生影响吗?例如:

    /li>

……对……

  • 这是一种理智的方法还是有更简单的方法?
  • 我对敏感性感到困惑——我是否需要passthrough_in1(甚至passthrough_all对除testline.
  • 我需要real_in1/test_in1在两个包装实体之间进行选择吗?还是有另一种说法“如果testline高,将test_module输出连接in_1toplevelobjectI/O in_1