iverilog

    2热度

    2回答

    我已经做了Verilog一个差错控制编码合成的延迟,因为我得到的18000 ns的一些延迟解码数据。我需要将解码后的数据与原始数据进行比较,但是我的原始数据开始大约100 ns,所以如何对这两个信号进行协作。 如何耽误我输入数据的Verilog这应该是综合的? 我需要实现这个是硬件。

    0热度

    1回答

    我使用伊卡洛斯的Verilog,视窗8.1的V10和时遇到麻烦编译一维数组,如: localparam [15:0] A[0:5] = { 0, 10920, 21840, 32760, 43680, 54600 }; 或2D阵列等: localparam [1:0] B[0:5][0:2] = { {2'b00, 2'b

    2热度

    1回答

    我在为MIPS编写ALU。 我以前写的时序逻辑(或总是阻止?我不知道为什么,但c必须是reg所以我想这是一个时序逻辑?) 这似乎是组合逻辑 always @* begin case (op) 4'b0000: c = mux_a + mux_b; 4'b0001: c = mux_a - mux_b; 4'b0010: c = mux_b << mux

    -2热度

    1回答

    我在Mac上使用iverilog,并且编译包含always_ff和always_comb块的代码时出现问题。 ModelSim编译这些代码没有任何问题。是否可以配置iverilog以支持always_ff和always_comb块,或者它们只是不受编译器支持? 在此先感谢!

    -1热度

    1回答

    我写这样的代码: module alu(input[7:0] a,input[7:0] b,input [2:0] op,output reg [7:0] y); [email protected](a or b or op) begin case(op) 3'b000: y = a + b; 3'b001: y = a - b; 3'b010: y = a *

    0热度

    2回答

    为什么连续块(非并行)中所有指令的时间都一样? 即 module abc; reg [31:0] r; initial begin r = 0; $display($time, " ", r); r = 1; $display($time, " ", r); r = r + 2;

    -1热度

    2回答

    代码在寄存器中对二进制进行签名扩展和零扩展的格式是什么? 即 reg[0:0] a; //a is 1-bit. reg[31:0] b, c; //b and c are 32-bits. //some code... 符号扩展a到32位,将其添加到b,并把结果存入c。 零延伸a为32位,将其添加到b,并将结果放入c。

    0热度

    2回答

    的教科书,我读器具1位加法器使用内置基本模块: module yAdder1(z, cout, a, b, cin); output[0:0] z, cout; input[0:0] a, b, cin; wire[0:0] tmp, outL, outR; xor left_xor(tmp, a, b); xor right_xor(z, ci

    0热度

    2回答

    我写了下面的测试我的代码: module HalfAdder_Test; wire sum; wire carry; reg a = 0; reg b = 0; initial begin $dumpfile("test.vcd"); $dumpvars(0, HalfAdder_Test); # 10 a = 0; # 10 b = 0;

    0热度

    1回答

    我正在调试一段Verilog代码,特别是从FX2LP(Cypress CY7C68016A)USB控制器发送和接收字节。没有进入许多细节,数据在每个周期中按字节发送和传输。对于我的测试,我使用了一个16字节的缓冲区,我首先填充然后传回(回波测试)。 我的代码的显著部分看起来像: reg [127:0] dataBuf; // 16 byte buffer for USB data reg [7