基于verilog语言用四种方式描述一个二输入或非门电路,并写出其激励
时间: 2023-11-28 16:51:36 浏览: 82
用Verilog语言描述一个双向端口
第一种方式:使用if语句描述
```
module or_not_gate(input a, input b, output y);
if(!(a | b)) begin
y = 1'b1;
end
else begin
y = 1'b0;
end
endmodule
```
激励:
```
module or_not_gate_tb();
reg a, b;
wire y;
or_not_gate uut(a, b, y);
initial begin
a = 0; b = 0;
#10 a = 0; b = 1;
#10 a = 1; b = 0;
#10 a = 1; b = 1;
#10 $finish;
end
endmodule
```
第二种方式:使用三目运算符描述
```
module or_not_gate(input a, input b, output y);
assign y = !(a | b) ? 1'b1 : 1'b0;
endmodule
```
激励同上。
第三种方式:使用位运算符描述
```
module or_not_gate(input a, input b, output y);
assign y = ~(a | b);
endmodule
```
激励同上。
第四种方式:使用逻辑运算符描述
```
module or_not_gate(input a, input b, output y);
assign y = ~a & ~b;
endmodule
```
激励同上。
阅读全文