问题标签 [register-transfer-level]

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 投票
2 回答
5345 浏览

arrays - 覆盖作为 systemverilog 中结构数组的参数的大小

我有一个模块参数,它是一个预定义结构的数组。我将此数组的默认大小设置为 1 个元素。这个想法是在实例化时用适当的大小覆盖它。

我在下面显示的方式不会覆盖大小。它只覆盖第一个值。我可以看到为什么它会这样做,因为 size 字段没有参数化。有没有比传递大小参数更好的方法?

感谢您的帮助。

0 投票
2 回答
30527 浏览

verilog - 如何在 Verilog 中定义和初始化仅包含向量的向量?

如果我想声明一个全为 128 位的向量,这些方法中哪一种总是正确的?

0 投票
1 回答
867 浏览

vhdl - 将 systemverilog 封面组与 vhdl 模块绑定

我正在为我的 VHDL IP 编写一个 systemverilog 封面组。我的计划是编写一个单独的 SV 代码,我假设我可以访问我的 VHDL ip 的内部信号。之后,我将进行绑定,以便 SV 代码段由模拟器自动以 VHDL 实例化。如果我错了,请纠正我。我以前从未使用过绑定。

在开始之前,我试图了解绑定是如何工作的,并编写了一个小程序来测试它。这里是...

test_bind.sv

现在,当我尝试编译它时,我收到以下错误:

my_vhdl_module 是简单的 vhdl src 代码。我也用 my_vhdl_module 的一个非常简单的 verilg 对应物尝试了同样的方法,但得到了同样的错误。我觉得很愚蠢,因为它看起来像一个简单的错误,但我还是想不通。对此的任何评论都会非常有帮助。

0 投票
3 回答
14315 浏览

verilog - 记分板和检查器之间的区别

我已经开始为我的 RTL DUT 开发一个测试平台。有了测试台的所有组件,我想实现自检机制来验证 DUT 的功能。

因此,我需要开发记分牌组件。但是在这里,我什至得到了检查器组件的概念。

ScoreboardChecker组件有什么区别?

还有它的应用?

什么时候需要使用记分板检查器两者兼而有之

谢谢。

0 投票
2 回答
868 浏览

verilog - 使用verilog的quartus RTL查看器中的奇怪组件

我正在学习verilog,当我不知道仅查看verilog代码的电路将如何工作时,我会去RTL查看器查看数字逻辑。但是在这段代码中出现了一个奇怪的组件,我不知道这个组件是什么。是触发器、多路复用器还是逻辑端口?下面是代码和图像,在图像中,组件是红色三角形。

编码 :

在此处输入图像描述

0 投票
1 回答
661 浏览

vhdl - vhdl'87 中实例引脚上的持续连接

我有以下简单的测试用例:

在此运行 modelsim 时,它运行良好。但是,当我使用选项“-87”运行 modelsim 时,它给了我错误, Error: top.vhd(13): (vcom-1451) Actual (enumeration literal '0') for formal "A" is not signal name.我没有得到这个。这是 VHDL'87 中的一些非法 RTL 吗?

如果 VHDL'87 不支持这一点,那么将常量连接到实例引脚的正确方法是什么。

0 投票
2 回答
5737 浏览

vhdl - 设计 16 位 ALU 时“无法确定运算符 + 的定义”

我正在设计一个 16 位 ALU,它执行的操作很少。我有一个语法错误:

“无法确定运算符“+”的定义。

以下代码执行有符号和无符号加减和移位操作。它执行一些其他操作,如 OR、XOR 等,我没有展示,因为它们没有任何问题。

0 投票
2 回答
6113 浏览

vhdl - VHDL 警告“警告 (13024):输出引脚卡在 VCC 或 GND”上的关键输出

我目前正在一个项目中工作,我必须采用斐波那契算法高级描述(C)并将其转换为用 VHDL 编写的 RTL 模块。为此,需要将这种高级描述转换为可合成的 VHDL 代码,即,必须以 IC 原型设计中广为人知的方法为数据路径和有限状态机 (FSM) 编写 VHDL 代码。

我在两个单独的文件中描述了数据路径和 FSM,并在第三个文件中将它们实例化为 VHDL 组件,定义了斐波那契模块。使用 Quartus II 软件,“Analysis & Synthesis”成功,没有错误,并带有非常恼人的警告“Warning (13024): Output pins is cast at VCC or GND”。使这个警告真正令人讨厌的是它显示了斐波那契模块的最关键输出,这是它的最终结果。此输出在我的代码中称为“d_o”。

“data_o”输出引脚来自数据路径组件,也使用加法器、减法器、寄存器和多路复用器等组件进行描述。单独编译(分析和综合)数据路径,对于相同的输出再次显示警告。

我真的不知道我的代码有什么问题,希望你们能帮助我。代码如下:

和警告:

0 投票
1 回答
459 浏览

architecture - 从头开始创建 Verilog LZSS 流水线架构

我正在为 LZSS 算法设计一个 Verilog 中的 RTL。我在verilog中有这个算法的工作代码。这段代码几乎是用 Verilog 中的 C++ 风格编写的。它运行,一切看起来都很好。

现在我想提高这个算法的速度,我想把它流水线化。我有这个算法的详细流程图。现在看看这个流程图,我可以决定这最终会进入多少个管道阶段。我可以在一个阶段执行多少组合逻辑是否存在限制。

请帮助我制定一步一步的过程,以将此流程图转换为流水线的 Verilog 代码。

提前致谢。

更新:来自http://collabedit.com/kvuu2的源代码副本

0 投票
1 回答
4328 浏览

verilog - 尝试在 Verilog 中创建循环仲裁器

所以我试图让我的 RR 仲裁器使用测试平台输出正确的值,但是当状态正确转换时,输出总是设置为默认值,16'h0000. 任何想法为什么这个值不会改变?

这是我的设计: