问题标签 [edaplayground]

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 回答
509 浏览

verilog - 我正在尝试在 edaplayground 中制作测试台代码

我的代码中有一些错误,但我找不到我的代码有什么问题。EDA游乐场 说

“执行中断或达到最大运行时间。”

这是我的代码

forever #5 clk = ~clk;

0 投票
1 回答
400 浏览

verilog - 在 Modelsim 仿真中转储 vcd 文件

在使用 modelsim 进行模拟时,我试图转储一个 vcd 文件,但是,我的“dumpVCD.vcd”文件中没有任何内容。我在 .do 文件中使用的语法如下:

但是该dumpVCD.vcd文件没有波形。

我已经在 edaplayground (链接) 上上传了测试。

如果有人能告诉我这是什么问题,我将不胜感激。

0 投票
1 回答
2654 浏览

edaplayground - EDA 操场 $dumpfile?

您好,我无法让一些代码在 EDA 操场上运行。我不断收到消息:“未找到 *.vcd 文件。EPWave 无法打开。您使用了 '$dumpfile("dump.vcd");$dumpvars;' 吗?” 但我已将其包含在代码中。

https://www.edaplayground.com/x/2pim

继承人的链接。

0 投票
1 回答
107 浏览

vhdl - 使用 WHEN ELSE 的 VHDL 错误

我是 VHDL 新手,有简单的错误。

基本上我有 4 个二进制输入和 3 个二进制输出。条件很简单,如果在所有 4 个输入中我只有一个“1”,则输出 l3 接收“1”而其他“0”,如果我有两个“1”,则输出 l2 接收“1”和太多“ 0',如果我有两个以上的'1',则输出 l1 接收'1',其他的接收'0'。

基本上 J1、J2、J3 和 J4 是输入。L1、L2 和 L3 是输出。你可以验证真值表

我正在尝试用 EDA Playground ( https://www.edaplayground.com/ )中的代码解决这个问题

但是我遇到了很多错误,例如:

  1. COMP96 错误 COMP96_0015:“';' 预期的。” “设计.vhd” 24 8
  2. COMP96 错误 COMP96_0019:“预期关键字‘结束’。” “设计.vhd” 24 8
  3. COMP96 错误 COMP96_0016:“需要设计单元声明。” “设计.vhd”24 11

我怎么能这样做?

0 投票
1 回答
860 浏览

binary - 使用 Systemverilog 读取然后打印二进制文件。第一个字节读取和打印正常,遇到问题\w 字节在 ms 位位置包含 1

下面的 Systemverilog 代码是一个单文件测试平台,它使用 $fread 将二进制文件读入内存,然后打印内存内容。二进制文件是 16 字节,它的视图包含在下面(这是我期望 Systemverilog 代码打印的内容)。

打印的输出与我对前 6 (0-5) 个字节的预期相符。此时预期的输出是 0x80,但是打印输出是 3 个字节的序列,以 0xef 开头,它们不在激励文件中。在这 3 个字节之后,输出再次与刺激匹配。似乎当二进制字节读取的第 7 位为 1 时,就会发生错误。几乎好像数据被视为已签名,但事实并非如此,其二进制数据打印为十六进制。内存被定义为无符号类型逻辑。

这类似于这篇文章中的问题/答案: Read binary file data in Verilog into 2D Array。但是,我的代码在 $fopen 语句中没有相同的问题(我使用“rb”),因此该解决方案不适用于此问题。

Systemverilog 规范 1800-2012 在第 21.3.4.4 节读取二进制数据中指出 $fread 可用于读取二进制文件并继续说明如何。我相信这个例子符合该部分的规定。

该代码发布在 EDA Playground 上,以便用户可以看到并运行它。 https://www.edaplayground.com/x/5wzA 您需要登录才能运行和下载。登录是免费的。它提供对 HDL 仿真行业标准工具的完整云版本的访问。

还尝试在 EDA Playground 上运行 3 个不同的模拟器。它们都产生相同的结果。

尝试重新排列 stim.bin 文件,使 0x80 值出现在文件的开头而不是中间。在这种情况下,错误也会发生在测试台打印输出的开头。

也许 Systemverilog 代码很好,问题是二进制文件?我提供了 emacs hexl 模式为其内容显示的屏幕截图。还查看了另一个查看器,它看起来一样。您可以在 EDA Playground 上运行时下载它以在另一个编辑器中检查它。二进制文件由 GNU Octave 生成​​。

宁愿有一个使用 Systemverilog $fread 而不是其他东西的解决方案来调试原始文件而不是解决它(学习)。这将被开发成一个 Systemverilog 测试平台,它将从 Octave/Matlab 中生成的二进制文件读取的激励应用到 Systemverilog DUT。由于文件访问速度,首选二进制 fileIO。

为什么 Systemverilog 测试平台为 mem[6] 打印 0xef 而不是 0x80?

二进制刺激文件:

在此处输入图像描述

实际输出:

更新:为了测试二进制文件在上传到 EDA Playground 的过程中可能会被修改,运行了一个实验。这些步骤中不涉及 Systemverilog 代码,它只是一个文件上传/下载。

步骤:(使用https://hexed.it/创建并查看二进制文件)

  1. 使用十六进制模式创建/保存二进制文件 80 00 80 00 80 00 80 00
  2. 创建新的游乐场
  3. 将新创建的二进制文件上传到新的 Playground
  4. 检查操场上的“运行后下载文件”框
  5. 保存游乐场
  6. 跑操场
  7. 保存/解压缩 Playground 运行的结果
  8. 查看二进制文件,在我的例子中,它在上传/下载过程中被修改过。结果的屏幕截图如下所示: 实验结果

该实验是在两个不同的 Windows 工作站上进行的。基于这些结果和评论,我将关闭这个问题,并认为这不是 Systemverilog 问题,而是与将二进制文件上传/下载到 EDA 游乐场有关。感谢那些评论的人。

0 投票
1 回答
148 浏览

verilog - Verilog 测试台错误多路复用 4x1 使用 EDAPlayground

我正在使用 EDAPlayground 在 Verilog 中进行 Multiplex 4x1,但我仍然遇到测试台错误,我不知道为什么。

这是一个错误:

ERROR VCP2000“语法错误。意外的标记:and[_AND]。” “设计.sv” 26 6

链接:https ://www.edaplayground.com/x/bkNc

0 投票
1 回答
338 浏览

vhdl - 如何在 VHDL 中为 std_logic_vector 赋值?

我试图在下面的代码中为 OUTPUT std_logic_vector 赋值,但它给了我错误

COMP96 错误 COMP96_0143:“无法写入对象“输出”。” “设计.vhd” 20 18

COMP96 错误 COMP96_0143:“无法写入对象“输出”。” “设计.vhd” 21 18

COMP96 错误 COMP96_0143:“无法写入对象“输出”。” “设计.vhd” 22 18

COMP96 错误 COMP96_0143:“无法写入对象“输出”。” “设计.vhd” 23 20

我在哪里做错了?

0 投票
1 回答
764 浏览

verilog - EDA Playground EPWave $dumpfile

我正在尝试在 EDA Playground 中模拟我的设计。我使用 ModelSim(不是来自 EDA)在我的本地计算机上测试了我的设计文件和测试台文件,它是成功的。但是,我尝试对 EDA Playground 做同样的事情。它在没有 EPWave 的情况下成功编译和运行。当我尝试单击“打开 EPWave”选项时,它给了我一个名为

未找到 *.vcd 文件。EPWave 不会打开。你用过'$dumpfile("dump.vcd"); $dumpvars;'?

我该如何解决这个问题?谢谢。

我还将链接添加到我的设计https://www.edaplayground.com/x/A9Rb

0 投票
2 回答
76 浏览

verilog - 虚拟方法“写”未在类中实现

您好,我为我创建的订阅者类收到上述错误,如下所示:该错误似乎在类的写入函数中,但我不确定函数中缺少什么。

0 投票
1 回答
290 浏览

system-verilog - VCS 工具在 edaplayground 上使用 uvm_hdl_deposit 时出错

我正在尝试执行代码@ https://www.edaplayground.com/x/e2Pe。该代码似乎没有错误。但是,当尝试使用 VCS 工具进行模拟时,它给了我以下错误:

看起来我需要设置一些选项,但我不知道。我尝试给予+vpi +acc,但没有成功。

这是完整的命令:

这是相关的测试平台代码: