HDL是一种硬件描述语言,一种用于设计芯片的编程语言。两个主要的是Verilog和VHDL。
我是modelSim的初学者,而verilog modelsim并不关心我的名字声明,而且Half_Adder模块的每个名字都在下面的部分成功编译我有Half_不正确(...
代码是正确合成的,但是当我尝试模拟它时,只有lda从0变为1.其余的控制信号保持不变。 eqz信号永远不会从x变化。剩下的 ...
当我从Chisel wiki中读到时,可以在单个模块中声明多个时钟域。但是如果我们需要通过两个不同的时钟域读/写信号,那么管理它是很重要的......
我在Chisel3中编写了一个单循环CPU,它实现了大部分RV32I指令(CSR,Fence,ECALL / BREAK,LB / SB除外,后面可能会包含这些指令)。说明目前很难......
verilog / systemverilog通过生成的模块层次结构向上传递参数
有一个复杂的模块层次结构(其中许多模块在生成下实例化)我需要从每个低级模块获得一堆连线到一维数组。参数......
我正在尝试使用Vivado为VHDL项目构建自制包,并且当我添加多个类型声明时出错。包TypeDef是类型IntCommand是(meW,meA,meO,meB)...
基本AND,OR,NOT,NAND,NOR,XOR,XNOR门的延迟时间有何不同?
1-1基本逻辑门的延迟时间有何不同?我发现NAND和NOR门在数字电路设计中是首选,延迟时间较短,AND和OR门可能......
我理解FIFO的操作,但我想我错过了它的实用性。当在FPGA中实现FIFO时,让我们说跨时钟域,似乎你经常......
我正在为4位加法器减法器编写verilog代码。我正在使用结构设计。起初我已经为1位全加器编写了verilog代码。然后我用它来编写4位加法器的代码......
我正在为4位S R锁存器编写verilog代码。我认为锁存器是异步的。所以我没有把时钟包括在内。起初我已经编写了1位S R锁存器的代码,然后我用了......
对unpacked数组的赋值必须是聚合表达式:SystemVerilog
reg [7:0] num [0:15] = {8'd64,8'd121,8'd36,8'd48,8'd25,8'd18,8'd2,8'd120,8'd0, 8'd24,8'd8,8'd3,8'd35,8'd33,8'd4,8'd14};我的代码的这一特定行给出以下错误:分配给...
第1部分:我总是被告知在Verilog中使用函数来避免代码重复。但我不能用模块做到这一点吗?如果我的理解是正确的,所有功能都可以作为模块重新编写...
我正在编写systemverilog模块,我需要确保设置某个宏以允许继续编译。我已经尝试了下面的内容,但它只是给出语法错误“意外...
我想设计一个计数器,它计算到一些数字,让我们说它是3,为此,我编写了一个与“$ finish”配合使用而不是“禁用”的代码。我想用这个计数器进行合成......
我正在尝试编写以下systemverilog代码,其中不同的参数可以用于函数,因此只需通过更改参数而不是使用...来重用相同的函数。
具有DATA-IN和DATA-OUT的verilog中的可重新配置的存储器实例作为参数传递
如何创建一个内存模块,其中DATA总线宽度作为参数传递给每个实例,我的设计根据参数重新配置自身?例如,假设我有字节...
我创建了一个模块,它接受一个指定模块数据线字节宽度的参数。它看起来像: 模块包装# ( 参数 DATA_BYTE_WIDTH = 1 ) ( ...
'endmodule'之前在模块中找到'module'关键字
我正在使用系统verilog中的寄存器处理一个简单的cpu,如下所示:模块寄存器(输入clk,e,输入[7:0]输入,输出reg [7:0]输出);总是@(posedge clk或posedge e)如果开始(e == 1)......
Verilog - 为什么我不能在for语句中声明多个变量?
我有这样的代码:生成genvar i,j,k; for(i = 0,j = 8,k = 0; i <4; i = i + 1,j = j + 8,k = k + 8)寄存器Register_inst(.d(w_data),. en(decoder_out [ i]),. clk(clk),. q(...
请看以下声明。 c_r被赋予所有c [k]的xor版本。 always_ff @(posedge clk_i)开始于(k = 0; k <16; k ++)c_r [k * 8 +:8] <= c [k] [0] ^ c [k] [1] ^ c [k] [2] ^ c [...