module ha(a,b,s,c);
input a,b;
output s,c;
assign #1 s=a^b;
assign #1 c=a&b;
endmodule
module fa(cin,a,b,s,cout);
input cin,a,b;
output s,cout;
assign #1 s=a^b^cin;
assign #1 cout=cin&(a|b)|(a&b);//X
endmodule
module rcadder(a,b,s,cout);
input [3:0] a,b;
output [3:0] s;
output cout;
wire [2:0] c;
ha U1(a[0],b[0],s[0],c[0]);
fa U2(c[0],a[1],b[1],s[1],c[1]);
fa U3(c[1],a[2],b[2],s[2],c[2]);
fa U4(c[2],a[3],b[3],s[3],cout);
endmodule
沒有留言:
張貼留言
文章有誤或有問題麻煩您留言告知! 謝謝您~~