4bit超前进位加法器的逻辑表达式如下:
中间变量Gi=AiBi,Pi=Ai⊕BiGi=AiBi,Pi=Ai⊕Bi
和:Si=Pi⊕Ci−1Si=Pi⊕Ci−1,进位:Ci=Gi+PiCi−1Ci=Gi+PiCi−1
用Verilog语言采用门级描述方式,实现此4bit超前进位加法器,接口电路如下:
代码如下:
(CSDN代码块不支持Verilog,代码复制到notepad++编辑器中,语言选择Verilog,看得更清楚)
`timescale 1ns/1ns
module lca_4(
input [3:0] A_in ,
input [3:0] B_in ,
input C_1 ,
output wire CO ,
output wire [3:0] S
);
//求每一位产生的进位,以及每一位表示为0或一
//
//
//
//
//
//
//
wire [3:0] C;
wire [3:0] G,P;
assign G = A_in&(B_in);
assign P = A_in^(B_in);
assign C= G|(P&{C[2:0],C_1});
assign CO = C[3];
assign S = P^{C[2:0],C_1};
endmodule