system-verilog 相关问题

SystemVerilog是基于Verilog扩展的统一硬件设计,规范和验证语言。

Systemverilog 中的程序块

来自 Systemverilog LRM: 程序变量只能使用阻塞赋值来赋值。非程序变量只能使用非阻塞赋值来赋值。使用带有

回答 1 投票 0

任务应该如何使用?

我决定使用verilog任务功能来编写通用且可读的代码,但我遇到了麻烦。 当我用 Task 编写和调用它时,它看不到电路的输出,它只写......

回答 1 投票 0

在循环中进行位切片时,减少 OR 无法按预期工作

至于标题减少或在循环中进行位切片时未按预期工作。 这是我所拥有的内容的摘录: 逻辑[3:0][1:0]quad_mask_dq_qq; 逻辑[1:0] dfifo_rrdy_qq; 总是_梳...

回答 1 投票 0

流操作数需要显式类型转换才能用作系统任务/函数的参数

我多年来一直在 Modelsim、Questa、Vivado、Quartus 上使用 $bits() 和流操作符: 本地参数 NUMS = 4; typedef 结构体打包 { 逻辑[31:0] val1l } t_fields; t_fields array_rd[NU...

回答 1 投票 0

SystemVerilog 测试平台:制作具有运行时确定宽度的逻辑数组

我在 SystemVerilog 中有一个类,它代表我系统中的抽象数据事务。它看起来像这样: 类 #(参数 BIT_DEPTH) MyData; 逻辑[BIT_DEPTH-1:0]数据[];

回答 1 投票 0

SystemVerilog - N 个访问控制设备,默认情况下都是唯一的,需要参数机制来允许它们分组

我想要一个这样的参数: 参数位 GROUP [N - 1:0] = '{0:0, 1:1, 2:2, 3:3, 等等...} 因此,每个索引都在自己的组中,但集成商可以集成模块,并且也可以...

回答 1 投票 0

在施加力之前分离系统 Verilog 网络

我想强制信号从我的测试平台向下传递。这些模块是根据原理图自动创建的(不可能更改设计),并且它们主要基于电线类型。 一个代码

回答 2 投票 0

为什么“分配 a = a/2”(在任务内)仅导致单个值更改?

今天遇到一段很奇特的测试代码,大家都难住了它为什么会这样运行。它的简化版本看起来像这样(请注意...

回答 1 投票 0

存储日期和时间的SystemVerilog模块

直到 VHDL 2019 为止,VHDL 没有任何方法来获取系统日期和时间。这意味着如果我需要在编译 FPGA 设计时或仿真时存储 FPGA 设计综合时间...

回答 1 投票 0

调试使用 SVA 的 VHDL 和 Systemverilog 简单示例。无法理解的 Z 和 X 值

我使用 VHDL 创建了一个简单的触发器实例和测试平台。 此外,我想使用 systemverilog 中的属性断言进行调试。尽管 sva 错误工作正常,但被报告...

回答 1 投票 0

如何在SystemVerilog中查找文件是否存在?

我在日志目录中有一个文件 abc/xyz.log 。如何确定文件是否存在于 SystemVerilog 类中?如果该文件存在,我想删除该文件。

回答 2 投票 0

为什么阻塞与非阻塞在这个 Verilog 片段中很重要?

我试图了解模拟器如何处理延迟控制(通过#),但我无法解释以下两个片段中观察到的差异: (1) 模块顶部(); reg a,b...

回答 1 投票 0

如何将模块的输出声明为十进制数而不是单个位?

我想编写一个任意范围的简单随机十进制数生成器。 我用 Verilog 编写了以下代码: 模块 randnumgen (时钟, r); 输入时钟; 整数n; 输出r; 总是@(pos...

回答 1 投票 0

随机十进制数,但结果看起来不像十进制数

我想编写一个任意范围的简单随机十进制数生成器。 我用 Verilog 编写了以下代码: 模块 randnumgen (时钟, r); 输入时钟; 整数n; 输出r; 总是@(pos...

回答 1 投票 0

4 位乘 4 位加法和移位乘法器

我正在尝试在 Verilog 中使用加法和移位方法制作一个 4 位乘 4 位乘法器。 但是,当我运行模拟时,结果值始终为 00。 这是我使用的代码...

回答 1 投票 0

Verilog:使用触发器实现管道硬件

如何在 Verilog 中创建简单的单级管道?

回答 2 投票 0

System Verilog:多位信号的逐位覆盖

我是 System Verilog 的初学者。我想实现一个覆盖范围,以便用户发送信号 - 让我们称之为 input_signal[Width-1 :0] 其中宽度是可变的。我想要按位切换 cov...

回答 1 投票 0

使用 if-generate 结构定义函数的两个变体,并在同一个 tb 中调用该函数

这是一个小tb,带有一些示例代码,我尝试以两种方式定义一个函数,然后在其定义下面调用该fn。 模块尝试事实; 本地参数 FUNCTION_IS_STATIC = 1; 根...

回答 1 投票 0

是否允许读取系统verilog中的时钟块输出?

模块input2(输出[3:0]out1、out2,输入[3:0]in1,输入clk); 时钟 c_clk @(posege clk); 输出 #2ns out1, temp = in1[1:0]; 输入in1; 结束时钟 时钟 d_clk @(posege clk); 输出...

回答 1 投票 0

模拟器不接受字符串三引号

根据 IEEE 1800-2023 LRM 支持三引号字符串,但没有一个模拟器能够编译(出现以下错误)任何线索都将有助于更好地理解。 模块顶部; 字符串 foo...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.