红色输出在 4 位 ALU 上运行测试平台

Posted

技术标签:

【中文标题】红色输出在 4 位 ALU 上运行测试平台【英文标题】:red output running testbench on 4bit ALU 【发布时间】:2015-03-24 17:51:26 【问题描述】:

所以我正在尝试在 verilog 中创建一个 4 位 ALU,它可以执行乘法、加法、bcd 加法和连接。到目前为止,这是我的代码:

module alu4bit(A,B,S,Y);

input [3:0] A, B;
input [1:0] S;
output [7:0] Y;
reg [7:0] Y;
wire [7:0] A0, A1, A2, A3;


multiplier4bit mod3(A,B,A3);


always @ (A,B,S)
begin
    case (S)
//      2'b00: 
//      2'b01: 
//      2'b10: 
        2'b11: Y = A3;


    endcase
end
endmodule

当尝试为我的乘数和 A=5、B=5 运行测试台设置 S=3 时,我得到带有 XXXXX 的红线作为输出。我认为这与我如何设置子模块的输出有关。 A0-3应该是电线吗?希望我有一条错误消息可以通过,但我在这一点上有点卡住了。

【问题讨论】:

你能显示multiplier4bit的描述吗? 【参考方案1】:

如果您希望您的多路复用器对A3 信号敏感,您需要将其添加到敏感列表中:

always @ (A,B,S,A3)

考虑将其简化为:

always @*

请参阅 IEEE Std 1800-2012,“9.4.2.2 隐式事件表达式列表”部分。

【讨论】:

以上是关于红色输出在 4 位 ALU 上运行测试平台的主要内容,如果未能解决你的问题,请参考以下文章

Logisim ALU 红线 - 不了解原因以及如何修复

如何确定特定排毒测试在哪个平台上运行?

在多个平台和架构上部署? [关闭]

Django+Vue+Docker搭建接口测试平台实战

如何在ARM / MIPS平台上检查XN / XI位支持的硬件支持

如何根据当前平台跳过 xUnit 中的特定测试