问题标签 [iverilog]
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.
verilog - Verilog模块无法计算a&b和a|b
我正在创建计算 a+b、ab、a & b 或 a | 之一的 verilog 模块。湾。
问题是它确实计算了 a+b 和 ab。但它不能计算 a & b 和 a | b 并且什么也不返回。
该模块基本上计算 a+b、ab、a&b 和 a|b 并将其计算值分配给 z。
它确实成功地计算了 a+b 和 ab 并将计算值放入 z。
但是对于 a&b 和 a|b,它不会为 z 分配任何东西。
我该如何解决这个问题?
如果你能帮助我,非常感谢。
verilog - ALU 的 Verilog 模块,但不能正常工作
我正在尝试为verilog写下ALU。我遇到了几个错误。
首先,这是我的代码:
yAlu.v 使用以下内容:
最后在 yMux 上面使用以下内容:
这是它在 yAlu 上测试的内容:
我的问题顺序如下:
上面的代码只适用于 0 和 1。它的作用不止于此。例如,在第二个源代码中,有
a = $随机; b = $随机;
它不适合这个。它仅在 a=1 或 0 和 b=1 或 0 时有效。
我不确定“slt”功能是否正常工作。教这个的老师从来没有告诉我 slt 在讲座中做了什么,而是让我们通过谷歌搜索或其他方式设计 slt。
每当我编译时,我都会收到以下错误。为什么是这样?
我什至不知道我做得对。指导我做它所说的手册没有足够的解释,也没有样本输出。
反正我没能及时完成,所以我想这没关系,但我想我必须知道我的问题的解决方案。
如果你能帮助我,非常感谢。
verilog - 基于 clk 的值更改不适用于随机数
每当“clk”更改为“1”时,我正在编码将“d”的值放入“z”。
例如,
只要 clk 为“1”,它就会将“d”的值放入“z”。
所以下面是对随机数重复 20 次的代码。
我得到的输出:
此输出的第 6 行需要为“2223298057”,但即使其 clk 设置为“1”,仍具有先前的“z”值。
我怎样才能解决这个问题?
verilog - Verilog Oracle,预期值无法正常工作
我正在解决以下源代码的一些问题。我正在创建将预期值与我得到的实际值进行比较的预言机。我尝试计算的期望值是变量“e”。我得到的实际值是变量'z'。
所以,当'e===z'时,变量'ok'应该是'1'。但即使 'e===z' 为真,它也不会将 'ok' 设置为 '1'。
这是源代码。
这是示例输出
如您所见,它表明其中一些确实具有相同的“z”和“预期”值。但是'ok'总是设置为'0'。即使我将其编码为在它们相同时设置为 1。
这是我不知道的。请帮帮我,谢谢。
verilog - 如何使用verilog制作一个通用的NxM签名数组乘法器?
我以前做过 8 位 x 8 位,但它不是通用的。我不知道如何调整代码以使其成为 NxM 位。谁能帮我?
verilog - 当我在 VCS 中编译得到正确输出但在 IVL 中编译得到不同输出时的 Verilog 程序
我真的很困惑。
我做了verilog编程并在VCS中编译和执行。它在预期的时钟周期内给出正确的值。
当我运行它时,它是 ivl32,它给出的值略有不同。
我完全糊涂了。
有人能告诉我会是什么问题吗?
verilog - 为具有 1000 个样本值的输入查找单个最大值的 verilog 代码
我想为具有 1000 个十进制值的输入信号找到单个最大值,该值在每个正 clk 边缘从内存中读取一次。我执行了以下粗略代码来查找最大值,但它没有给我正确的最大值/number 请帮助我,这样我就可以在这 1000 个输入信号值中找到一个最大值..`提前致谢
task - 如何从 Verilog 中的单独模块调用任务?
我是 Verilog 的新手,如果有人可以帮助我,我将不胜感激。
我有一个任务写在一个单独的文件中 - “task.v”:
我有一个调用此任务的模块:
当我执行这个时,我得到这个错误:
模块定义 task_create 不能嵌套到模块 tb
当我删除 task.v 中的模块和 endmodule 时,我收到此错误:
任务必须包含在模块中
我哪里错了?太感谢了!
arrays - 如何使用变量作为索引访问数组元素?
我正在尝试使用输入作为索引访问数组中的元素,但我不断收到此错误:
cache.v:27:错误:数组“tagc”索引在此上下文中必须是常量。
这是我正在尝试的方法:
tagc 是 1024 个 reg 的数组;index 是 10 位输入;tag 是一个 20 位的输入。
有没有办法做到这一点?
verilog - Verilog error : A reference to a wire or reg is not allowed in a constant expression
I'm new to Verilog and I would really appreciate it if someone could help me out with this error:
The error I get is:
error: A reference to a wire or reg ('x') is not allowed in a constant expression.
error: Array index expressions must be constant here.
error: A reference to a wire or reg ('imageX') is not allowed in a constant expression.
error: Array index expressions must be constant here.
error: A reference to a wire or reg ('kernelX') is not allowed in a constant expression.
error: Array index expressions must be constant here.
Could somebody tell me what I'm doing wrong? Thank you!