如何使向量逻辑更简洁?

时间:2018-09-29 19:41:22

标签: verilog modelsim quartus

我最近在hackaday article上找到了一个网站,以练习/学习有关HDLBits的Verilog基础知识。我已经解决了几个问题,而我刚完成this one

  

在[3:0]中建立具有四个输入的组合电路。

有3个输出:

  • out_and :4输入与门的输出。
  • out_or :4输入或门的输出。
  • out_xor :4输入XOR门的输出。

我的代码可以工作,但是我想知道如何使使用AND / OR逻辑比较向量位的位置更简洁。 我的代码如下:

module top_module( 
    input [3:0] in,
    output out_and,
    output out_or,
    output out_xor
);
    assign out_and = in[0] && in[1] && in[2] && in[3];
    assign out_or = in[0] || in[1] || in[2] || in[3];
    assign out_xor = in[0] ^ in[1] ^ in[2] ^ in[3];

endmodule

也许类似的方法可以工作,但是问题测试人员说这是不正确的:

assign out_and = (in & b'1111) == b'1111

0 个答案:

没有答案