hdl

    0热度

    2回答

    我有关于整数的初始化的问题。 package mytypes is type gamma_cor_array is array (NATURAL RANGE <>) of integer range 15 downto 0; end mytypes; library UNISIM; use UNISIM.VComponents.all; use work.mytypes.all

    -1热度

    1回答

    module DSD_Project(flag0, flag1, hit0, hit1,room_counter,someone_inRoom,someone_Spying,hit0_LED, hit1_LED,echo0_LED, echo1_LED, anti_theft_output,reset_Antitheft_output,echo0, echo1, CLOCK_50,anti_the

    2热度

    1回答

    我想使用always块中另一个模块的输出。 目前,以使此代码工作的唯一途径是通过增加#1的 pi_in分配后,使有足够的时间已经过去了,让曹丕完成。 有关部分从模块pLayer.v: Pi pi(pi_in,pi_out); always @(*) begin for(i=0; i<constants.nSBox; i++) begin for(j=0; j<8; j

    0热度

    2回答

    这是一个微不足道的问题,但是经过我的大脑之后,我想到了在这里发布它。 在我的代码我使用条件操作写入的线,如下所示: assign {RS2, RS1} = (!DisM || !DisX)? (RdEn==2'b00? (!DisI? {rs2, rs1} : 64'bz) : (RdEn==2'b01? (!switch? {rs2, Rn} : {Rn, rs1}) : {Rm, Rn})))

    1热度

    1回答

    我想(不成功)使用多维数组来发送硬编码常量数组,可以通过其他模块中的计数器进行索引。 我目前的策略是使用参数数组来编译和部署,但每个数组元素中的第一位在硬件上只被考虑一次。这主要表现在RTL视图,所以我去的ModelSim和收到此错误: Error: (vlog-7034) <path>(<line>): Array assignment to type 'reg[9:0] $[19:0]' fr

    2热度

    1回答

    我想在单个时钟周期内多次重新分配变量hit_bits。只要io.bits_perf.bits(i)为真,hit_bits就会增加。我正在“发现组合路径!”当我尝试编译代码时。 有什么想法? val hit_bits = Bits() hit_bits := Bits(0) when(io.bits_perf.valid){ for(i<- 0 until 3){

    0热度

    2回答

    我有一个输入逻辑序列,我想将其转换为一个参数,以便将其添加到我的程序中的其他地方。 例如, module myModule(input logic[7:0] SW, output logic[7:0] LEDR); parameter shift = SW; assign LEDR = SW[shift + 1: shift]; endmodule 我知道这不是正确的

    0热度

    1回答

    我为加法器做了一个设计,但结果是错误的。 module FMUL(CLK, St, F1, E1, F2, E2, F, V, done); input CLK; input St; input [3:0] F1; input [3:0] E1; input [3:0] F2; input [3:0] E2; output[6

    3热度

    2回答

    我找不到任何与此相关的问题,但有可能我不知道要搜索什么。当使用综合工具时(假设你需要一个特定的工具,假设有Synplify,但如果存在跨工具的标准兼容版本会更好),是否有可能跟踪模块的实例数量并帮助指导综合?我怀疑没有,但是我可以看到许多像这样的用例。让我举一些我的意思的例子。我在写这篇文章的时候考虑了FPGA开发,但我敢打赌它也会用于ASIC设计。假设我在一个设备上有10个乘法器,并且我有一些操

    0热度

    1回答

    我有设计一个JK触发器这样, module jk_flip_flop(input pr,input clr,input j,input k,input clock,output reg q,output qNot); assign qNot = (pr == 0 & clr == 0)?1:~q; always @ (posedge clock or negedge clock) b