1

我已经为verilog中的程序编写了一个测试平台。奇怪的问题是模拟器显示的输入与我提供的输入完全不同。因此输出也会受到影响。为什么会这样?我正在 Xilinx 中测试代码。这里是测试台

我的输入是 1010101 模拟器显示 0110101

module HamDecoderTop;

// Inputs
reg clk;
reg rst;
reg [6:0] hword;

// Outputs
wire [3:0] data;


HammingDecoder uut (
    .clk(clk), 
    .rst(rst), 
    .hword(hword), 
    .data(data)
);

initial begin
    // Initialize Inputs
    clk = 0;
    rst = 0;

    #1 rst =1;

    #10 hword = 1010101;


end

always
#2 clk=~clk;

endmodule

这是模拟器显示的内容。

在此处输入图像描述

4

1 回答 1

3

7'b如果您希望将其解释为七位二进制文​​件,则需要在您的 hword 文字值前面加上 a 。默认情况下,它被解释为十进制值1,010,101,当转换为二进制时,它是11110110100110110101. 这个二进制数的前 7 位就是您在模拟器中看到的。

于 2013-03-18T16:47:29.670 回答