2017.8.28 编码器,半加器,全加器,led related

  今天的任务:

  1.基于Cyclone IV的EP4CE6E22C8N芯片的编码器;试验成功;

 1 module encoder(I,O,enable);
 2 input [3:0] I;
 3 input enable;
 4 output [1:0] O;
 5 reg [1:0] O;
 6 
 7 always@(I,enable)
 8 begin
 9   if(enable) O=4'b11;
10   else 
11      case(I)
12         4'b1110: O=2'b11;
13         4'b1101: O=2'b10;
14         4'b1011: O=2'b01;
15         4'b0111: O=2'b00;
16         default: O=2'b11;
17      endcase
18 end
19 endmodule
View Encoder Code

  2.半加器;

1 module half_adder(a,b,c,Co);
2 input a,b;
3 output c,Co;
4 assign c=a^b;
5 assign Co=a*b;
6 endmodule
View Code

 3.全加器;

1 module all_adder(a,b,Ci,c,Co);
2 input a,b,Ci;
3 output c,Co;
4 assign c=a^b^Ci;
5 assign Co=a*b+a*Ci+b*Ci;
6 endmodule

 4.全加器(模块法);

1 module all_adder(a,b,Ci,c,Co);
2 input a,b,Ci;
3 output c,Co;
4 wire C1,C2;
5 assign Co=C1|C2;
6 half adder half adder0(.a(a),  .b(b), .c(A0), .Co(C1));
7 half adder half adder1(.a(A0),  .b(Ci), .c(c), .Co(C2));
8 endmodule

 

posted on 2017-08-28 17:51  Assassinn  阅读(177)  评论(0编辑  收藏  举报

导航