题解 | #超前进位加法器#

超前进位加法器

https://www.nowcoder.com/practice/c4c6afdab9ce45a3a2279a98391686ca

`timescale 1ns/1ns

module huawei8//四位超前进位加法器
(
	input wire [3:0]A,
	input wire [3:0]B,
	output wire [4:0]OUT
);





//*************code***********//
wire	[3:0]	f;
wire	[4:1]	Ci;
wire	[3:0]	P;
wire	[3:0]	G;
Add1	u0
(
	 .a(A[0]),
	 .b(B[0]),
	 .C_in(1'b0),

	 .f(f[0]),
	 .g(G[0]),
	 .p(P[0])
);


Add1	u1
(
	 .a(A[1]),
	 .b(B[1]),
	 .C_in(Ci[1]),

	 .f(f[1]),
	 .g(G[1]),
	 .p(P[1])
);

Add1	u2
(
	 .a(A[2]),
	 .b(B[2]),
	 .C_in(Ci[2]),

	 .f(f[2]),
	 .g(G[2]),
	 .p(P[2])
);

Add1	u3
(
	 .a(A[3]),
	 .b(B[3]),
	 .C_in(Ci[3]),

	 .f(f[3]),
	 .g(G[3]),
	 .p(P[3])
);











CLA_4	CLA_4_inst
(
		.P(P),
		.G(G),
		.C_in(1'b0),

		.Ci(Ci),
		.Gm(Gm),
		.Pm(Pm)
);


assign	OUT={Ci[4],f};

//*************code***********//
endmodule



//////////////下面是两个子模块////////

module Add1
(
		input a,
		input b,
		input C_in,
		output f,
		output g,
		output p
		);
assign	f	=	a^b^C_in;
assign	g   =	a & b;
assign	p   =	a | b;
endmodule



module CLA_4(
		input [3:0]P,
		input [3:0]G,
		input C_in,
		output [4:1]Ci,
		output Gm,
		output Pm
	);
	assign	Ci[1] = G[0] | (P[0] & C_in);
	assign	Ci[2] = G[1] | (P[1] & G[0]) | (P[1] & P[0] & C_in);
	assign	Ci[3] = G[2] | (P[2] & G[1]) | (P[2] & P[1] & G[0]) | ( P[2] & P[1] & P[0] & C_in);
	assign	Ci[4] = G[3] | (P[3] & G[2]) | (P[3] & P[2] & G[1]) | (P[3] & P[2] & P[1] &G[0]) | (P[3] & P[2] & P[1] & P[0] & C_in);

	assign	Gm = G[3] | (P[3] & G[2]) | (P[3] & P[2] & G[1]) | (P[3] & P[2] & P[1] & G[0]);
	assign	Pm = P[3] & P[2] & P[1] & P[0]; 
	
endmodule

全部评论

相关推荐

评论
点赞
收藏
分享
正在热议
# 25届秋招总结 #
440279次浏览 4490人参与
# 春招别灰心,我们一人来一句鼓励 #
41427次浏览 524人参与
# 阿里云管培生offer #
119753次浏览 2219人参与
# 地方国企笔面经互助 #
7922次浏览 18人参与
# 虾皮求职进展汇总 #
113889次浏览 883人参与
# 实习,投递多份简历没人回复怎么办 #
2453837次浏览 34847人参与
# 北方华创开奖 #
107280次浏览 599人参与
# 实习必须要去大厂吗? #
55644次浏览 960人参与
# 同bg的你秋招战况如何? #
75364次浏览 551人参与
# 提前批简历挂麻了怎么办 #
149798次浏览 1977人参与
# 投递实习岗位前的准备 #
1195641次浏览 18546人参与
# 你投递的公司有几家约面了? #
33170次浏览 188人参与
# 双非本科求职如何逆袭 #
661833次浏览 7394人参与
# 机械人春招想让哪家公司来捞你? #
157595次浏览 2267人参与
# 如果公司给你放一天假,你会怎么度过? #
4719次浏览 54人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
11300次浏览 267人参与
# 发工资后,你做的第一件事是什么 #
12384次浏览 61人参与
# 工作中,努力重要还是选择重要? #
35576次浏览 384人参与
# 参加完秋招的机械人,还参加春招吗? #
20079次浏览 240人参与
# 实习想申请秋招offer,能不能argue薪资 #
39220次浏览 314人参与
# 我的上岸简历长这样 #
451897次浏览 8088人参与
# 非技术岗是怎么找实习的 #
155837次浏览 2120人参与
牛客网
牛客企业服务