题解 | #4bit超前进位加法器电路#

4bit超前进位加法器电路

https://www.nowcoder.com/practice/4d5b6dc4bb2848039da2ee40f9738363

先看1bit,1bit搞定了,nbit就串行(省面积)或者并行(省性能)

sum:

若进位为0--> 若AB相同 sum为0;若AB相异,sum为1--> S = C'(A^B)

若进位为1--> 若AB相同 sum为1;若AB相异,sum为0--> S = C (A^B)'

==》 S = C'(A^B) + C (A^B)' = C^(A^B)

CO:

若进位为0--> A,B同时为1才进位 --> CO = C'AB

若进位为1--> A,B只要有1就进位 --> CO = C(A+B)

==》CO = C'AB + C(A+B) = C'AB+CA+CB = C'AB + CAB+CAB'+CAB+CA'B = AB+C(A^B) +CAB = AB + C(A^B)

以下写法为串行;若写作并行,则将C0,C1,C2的表达式直接带入到下一级的运算中。

`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
);
    wire [3:0] g;
	wire [3:0] p;
	wire C0,C1,C2;

	assign g = A_in & B_in;
	assign p = A_in ^ B_in;
	assign S[0] = C_1 ^ p[0];  //get s0
	assign C0 = g[0] | (p[0] & C_1);  //get C_1 for S1
	
	assign S[1] = C0 ^ p[1];  //get s1
	assign C1 = g[1] | (p[1] & C0);  //get C1 for S2

	assign S[2] = C1 ^ p[2];  //get s2
	assign C2 = g[2] | (p[2] & C1);  //get C2 for S3

	assign S[3] = C2 ^ p[3];  //get s3
	assign CO = g[3] | (p[3] & C2);  //get CO 


endmodule

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
# 春招至今,你的战绩如何? #
4344次浏览 34人参与
# 你的实习产出是真实的还是包装的? #
1041次浏览 27人参与
# MiniMax求职进展汇总 #
22759次浏览 292人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
6842次浏览 35人参与
# 简历第一个项目做什么 #
31227次浏览 312人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
186301次浏览 1113人参与
# 巨人网络春招 #
11132次浏览 221人参与
# 面试紧张时你会有什么表现? #
30312次浏览 188人参与
# 简历中的项目经历要怎么写? #
309297次浏览 4146人参与
# 网易游戏笔试 #
6300次浏览 83人参与
# 职能管理面试记录 #
10674次浏览 59人参与
# 把自己当AI,现在最消耗你token的问题是什么? #
6809次浏览 154人参与
# 从哪些方向判断这个offer值不值得去? #
56693次浏览 357人参与
# 腾讯音乐求职进展汇总 #
160376次浏览 1105人参与
# 小红书求职进展汇总 #
226831次浏览 1356人参与
# AI时代,哪些岗位最容易被淘汰 #
62254次浏览 723人参与
# 你怎么看待AI面试 #
179196次浏览 1160人参与
# 正在春招的你,也参与了去年秋招吗? #
362437次浏览 2631人参与
# 你的房租占工资的比例是多少? #
92119次浏览 896人参与
# 机械求职避坑tips #
94392次浏览 567人参与
# 校招笔试 #
465713次浏览 2948人参与
# 面试官最爱问的 AI 问题是...... #
27023次浏览 833人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务