?? claa_32b.v
字號:
module claa_32b(adder1,adder2,sum);input [31:0] adder1;input [31:0] adder2;output [31:0] sum;reg [31:0] sum;reg [31:0] p;reg [31:0] g;reg [30:0] carry;reg [6:0] P;reg [6:0] G;always @(adder1 or adder2 or p or g or carry or P or G)begin p=adder1^adder2; g=adder1&adder2; carry[0]=g[0]; carry[1]=p[1]&carry[0]|g[1]; carry[2]=p[2]&carry[1]|g[2]; G[0]=g[3]+(p[3]&g[2])+(p[3]&p[2]&g[1])+(p[3]&p[2]&p[1]&g[0]); P[0]=p[3]&p[2]&p[1]&p[0]; carry[3]=G[0]; carry[4]=p[4]&carry[3]|g[4]; carry[5]=p[5]&carry[4]|g[5]; carry[6]=p[6]&carry[5]|g[6]; G[1]=g[7]+(p[7]&g[6])+(p[7]&p[6]&g[5])+(p[7]&p[6]&p[5]&g[4]); P[1]=p[7]&p[6]&p[5]&p[4]; carry[7]=G[1]+(P[1]&carry[3]); carry[8]=p[8]&carry[7]|g[8]; carry[9]=p[9]&carry[8]|g[9]; carry[10]=p[10]&carry[9]|g[10]; G[2]=g[11]+(p[11]&g[10])+(p[11]&p[10]&g[9])+(p[11]&p[10]&p[9]&g[8]); P[2]=p[11]&p[10]&p[9]&p[8]; carry[11]=G[2]+(P[2]&carry[7]); carry[12]=p[12]&carry[11]|g[12]; carry[13]=p[13]&carry[12]|g[13]; carry[14]=p[14]&carry[13]|g[14]; G[3]=g[15]+(p[15]&g[14])+(p[15]&p[14]&g[13])+(p[15]&p[14]&p[13]&g[12]); P[3]=p[15]&p[14]&p[13]&p[12];// carry[15]=G[3]+(P[3]&carry[11]); carry[15]=G[3]+(P[3]&G[2])+(P[3]&P[2]&G[1])+(P[3]&P[2]&P[1]&G[0]); carry[16]=p[16]&carry[15]|g[16]; carry[17]=p[17]&carry[16]|g[17]; carry[18]=p[18]&carry[17]|g[18]; G[4]=g[19]+(p[19]&g[18])+(p[19]&p[18]&g[17])+(p[19]&p[18]&p[17]&g[16]); P[4]=p[19]&p[18]&p[17]&p[16]; carry[19]=G[4]+(P[4]&carry[15]); carry[20]=p[20]&carry[19]|g[20]; carry[21]=p[21]&carry[20]|g[21]; carry[22]=p[22]&carry[21]|g[22]; G[5]=g[23]+(p[23]&g[22])+(p[23]&p[22]&g[21])+(p[23]&p[22]&p[21]&g[20]); P[5]=p[23]&p[22]&p[21]&p[20]; carry[23]=G[5]+(P[5]&carry[19]); carry[24]=p[24]&carry[23]|g[24]; carry[25]=p[25]&carry[24]|g[25]; carry[26]=p[26]&carry[25]|g[26]; G[6]=g[27]+(p[27]&g[26])+(p[27]&p[26]&g[25])+(p[27]&p[26]&p[25]&g[24]); P[6]=p[27]&p[26]&p[25]&p[24]; carry[27]=G[6]+(P[6]&carry[23]); carry[28]=p[28]&carry[27]|g[28]; carry[29]=p[29]&carry[28]|g[29]; carry[30]=p[30]&carry[29]|g[30]; sum[0]=p[0]; sum[1]=p[1]+carry[0]; sum[2]=p[2]+carry[1]; sum[3]=p[3]+carry[2]; sum[4]=p[4]+carry[3]; sum[5]=p[5]+carry[4]; sum[6]=p[6]+carry[5]; sum[7]=p[7]+carry[6]; sum[8]=p[8]+carry[7]; sum[9]=p[9]+carry[8]; sum[10]=p[10]+carry[9]; sum[11]=p[11]+carry[10]; sum[12]=p[12]+carry[11]; sum[13]=p[13]+carry[12]; sum[14]=p[14]+carry[13]; sum[15]=p[15]+carry[14]; sum[16]=p[16]+carry[15]; sum[17]=p[17]+carry[16]; sum[18]=p[18]+carry[17]; sum[19]=p[19]+carry[18]; sum[20]=p[20]+carry[19]; sum[21]=p[21]+carry[20]; sum[22]=p[22]+carry[21]; sum[23]=p[23]+carry[22]; sum[24]=p[24]+carry[23]; sum[25]=p[25]+carry[24]; sum[26]=p[26]+carry[25]; sum[27]=p[27]+carry[26]; sum[28]=p[28]+carry[27]; sum[29]=p[29]+carry[28]; sum[30]=p[30]+carry[29]; sum[31]=p[31]+carry[30];endendmodule
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -