|
- module cd4023( //三组三输入一输出端与非门逻辑门电路 VCC:Pin14 GND:Pin7
- //1组
- input A1, //输入A1 Pin1
- input B1, //输入B1 Pin2
- input C1, //输入C1 Pin8
- output Y1, //输出Y1 Pin9
- //2组
- input A2, //Pin3
- input B2, //Pin4
- input C2, //Pin5
- output Y2, //Pin6
- //3组
- input A3, //Pin11
- input B3, //Pin12
- input C3, //Pin13
- output Y3 //Pin10
- );
- assign {Y1,Y2,Y3} = ~{
- A1&B1&C1,
- A2&B2&C2,
- A3&B3&C3
- };
- endmodule
- module main(
- input clk,
- output reg led //低电平(计算正确)点亮
- );
- reg [8:0] i;
- wire [2:0] j;
- cd4023 U1(
- .A1(i[0]),
- .B1(i[1]),
- .C1(i[2]),
- .Y1(j[0]),
- .A2(i[3]),
- .B2(i[4]),
- .C2(i[5]),
- .Y2(j[1]),
- .A3(i[6]),
- .B3(i[7]),
- .C3(i[8]),
- .Y3(j[2])
- );
- always @(posedge clk) begin
- if(
- j[0] == !(i[0]&i[1]&i[2]) &&
- j[1] == !(i[3]&i[4]&i[5]) &&
- j[2] == !(i[6]&i[7]&i[8])
- ) begin
- led <= 1'b0;
- end else begin
- led <= 1'b1;
- end
- i <= i + 9'd1;
- end
- endmodule
复制代码
|
|