📄 add32.v
字号:
`timescale 100ns/1nsmodule add32 (a,b,cin,adclk,sum,co);//kogge-stone tree input [31:0] a,b; input cin; input adclk; output [31:0] sum; output co; reg [31:0] G1,P1,G2,P2,G3,P3,G4,P4,G5,P5; reg [31:0] cout; wire[31:0] sum,G0,P0; assign P0=a^b; assign G0=a&b; assign sum=P0^{cout[31:0],cin}; assign co=cout[31]; always @(posedge adclk) begin P1[31:1]=P0[31:1]&P0[30:0]; G1[31:1]=G0[31:1]|P0[31:1]&G0[30:0]; G1[0]=G0[0]; P1[0]=P0[0]; P2[31:2]=P1[31:2]&P1[29:0]; G2[31:2]=G1[31:2]|P1[31:2]&G1[29:0]; G2[1:0]=G1[1:0]; P2[1:0]=P1[1:0]; P3[31:4]=P2[31:4]&P2[27:0]; G3[31:4]=G2[31:4]|P2[31:4]&G2[27:0]; G3[3:0]=G2[3:0]; P3[3:0]=P2[3:0]; P4[31:8]=P3[31:8]&P3[23:0]; G4[31:8]=G3[31:8]|P3[31:8]&G3[23:0]; G4[7:0]=G3[7:0]; P4[7:0]=P3[7:0]; P5[31:16]=P4[31:16]&P4[15:0]; G5[31:16]=G4[31:16]|P4[31:16]&G4[15:0]; G5[15:0]=G4[15:0]; P5[15:0]=P4[15:0]; cout=G5|P5&cin; endendmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -