加法器原理详解

Logisim实现四位并行加法器:从串行瓶颈到先行进位原理详解 在数字逻辑与计算机组成原理中,加法器是算术逻辑单元(ALU)的核心基础部件,其性能直接影响CPU的运算速度。传统串行进位加法器因进位信号必须逐级传递,导致延迟随位数线性增长,成为高速计算的瓶颈。为解决此问题,先行进位(Carry Lookahead, CLA)技术应运而生,其核心原理是通过并行计算所有进位生成(G)与传播(P)信号,提前推导出各级进位,从而大幅降低关键路径延迟。这种并行化设计思想是理解现代处理器高速运算的关键,广泛应用于CPU、DSP及各类高性能计算芯片。本文将以四位并行加法器为例,结合Lo 阅读详情
AI摘要

本文详细介绍了加法器,包括一位二进制数的半加器和考虑进位的全加器,以及如何构建四位二进制加法器和超前进位加法器,以提高运算效率。作者还提供了电路图和逻辑函数式,旨在使读者理解加法器的基本工作原理。

加法器的介绍与原理分析

什么是加法器?

加法器是一种数字电路,用于将两个二进制数相加并输出它们的和。

如何实现加法器

要讨论如何实现加法器就要先从只有一位的数字先进行考虑

一位二进制数相加

不考虑来自低位的进位——半加器

对于一位二进制数相加,由于是二进制有可能要进位也可能不需要进位,根据具体的情况如下图所示:
在这里插入图片描述

没有进位的话,把进位补上0:
在这里插入图片描述

转化为列表如下:

数字A数字B输出S进位CO
1010
0110
0000
1101

对于一位数字的话我们使用A表示第一个数字,B表示第二个数字,S表示加和之后的当前位的和,CO表示向高位的进位,使用逻辑函数式那么
S = A B ′ + A ′ B    ( 异或操作 ) C O = A B    ( 与操作 ) \begin{align} S &= AB'+A'B\ \ (异或操作)\\ CO &= AB \ \ (与操作)\end{align} SCO​=AB′+A′B  (异或操作)=AB  (与操作)​​
也就是说对于一位二进制数的加法,我们可以使用异或操作跟与操作求出加法结果。
逻辑电路如图所示:
在这里插入图片描述
这样可以根据灯的亮灭判断到底输出了什么。
这样组成的期间就是半加器,但是半加器并没有考虑来自低位的进位,所以它的功能是不完善的。

考虑来自低位的进位——全加器

如果考虑到来自低位的进位那么输入就会有三个分别是数字A、数字B与进位CI。
相加的过程中我们可以看作先将数字A与数字B相加,相加得到的加和再与进位CI相加,即全加器由两个半加器组成。
真值表为:

数字A数字B进位CI数字S进位CO
00000
00110
01010
01101
10010
10101
11001
11111

根据真值表可以得到以下逻辑函数式
S = A B ′ C I ′ + A ′ B C I ′ + A ′ B ′ C I + A B C I C O = A B C I ′ + A ′ B C I + A B ′ C I + A B C I \begin{align} S &= AB'CI'+A'BCI'+A'B'CI+ABCI\\ CO &= ABCI'+A'BCI+AB'CI+ABCI \end{align} SCO​=AB′CI′+A′BCI′+A′B′CI+ABCI=ABCI′+A′BCI+AB′CI+ABCI​​
将逻辑表达式进行化简得到
S = C I ′ ( A B ′ + A ′ B ) + C I ( A ′ B ′ + A B ) S = C I ′ ( A B ′ + A ′ B ) + C I ( A B ′ + A ′ B ) ′ S = C I ′ ( A ⨁ B ) + C I ( A ⨁ B ) ′ S = C I ⨁ A ⨁ B C O = A B ( C I ′ + C I ) + C I ( A ′ B + A B ′ ) C O = A B + C I ( A ⨁ B ) C O = A B C I ′ + A ′ B C I + A B ′ C I + A B C I \begin{align} S &= CI'(AB'+A'B)+CI(A'B'+AB)\\ S &= CI'(AB'+A'B)+CI(AB'+A'B)'\\ S &= CI'(A\bigoplus B) + CI(A\bigoplus B)'\\ S &= CI\bigoplus A\bigoplus B\\ CO &= AB(CI'+CI)+CI(A'B+AB') \\ CO &= AB + CI(A\bigoplus B)\\ CO &= ABCI'+A'BCI+AB'CI+ABCI\\ \end{align} SSSSCOCOCO​=CI′(AB′+A′B)+CI(A′B′+AB)=CI′(AB′+A′B)+CI(AB′+A′B)′=CI′(A⨁B)+CI(A⨁B)′=CI⨁A⨁B=AB(CI′+CI)+CI(A′B+AB′)=AB+CI(A⨁B)=ABCI′+A′BCI+AB′CI+ABCI​​
最终我们得到的逻辑函数式为:
S = C I ⨁ A ⨁ B C O = A B + C I ( A ⨁ B ) \begin{align} S &= CI\bigoplus A\bigoplus B\\ CO &= AB + CI(A\bigoplus B)\\ \end{align} SCO​=CI⨁A⨁B=AB+CI(A⨁B)​​
转化为电路图为:
在这里插入图片描述
这样我们就得到了一个全加器。
有了半加器与全加器,就能着手实现二进制加法了。

四位二进制加法器

最低位相加是不需要考虑进位的,所以使用半加器就行,当然使用全加器也可以只不过进位CI要置零。
现在就着手实现四位二进制数加法器:
多位加法器的原理就是,有多个一位加法器组成,每个一位加法器负责多位中的一位的运算,运算的结果需要进位到下一位,然后下一位求出结果,很明显这是一种
电路图如下:
在这里插入图片描述

如图所示,但是此加法器是一种串联的结构,进行运算时高位需要等待低位求出运算结果才能得到高位的结果,也就是花费的时间比较多,有没有办法在进行低位运算的同时进行高位的运算。

超前进位四位加法器

如果我们不再使用先算低位进位,然后再算高位,而是直接根据低位数字直接算出应该到高位的进位,这样就能将串行结构改成并行结构,这样就能够大大减少运算所需的时间。
在这里插入图片描述

这样我们就能够将结构改成下面的样子:
在这里插入图片描述

从图中我们可以看出是根据原始输入计算的进位,而不是一位一位进行计算的进位,这样每一位数字就可以同时计算,这样就可以在一个时钟周期内完成加法运算。
但是这一个明显优缺点,到后面计算进位的电路越来越复杂。
至此关于加法器的原理就讲完了。

注:如果电路图,或者逻辑函数式有写错的,请在评论区@我,我会尽快修改的。
multisim电路仿真图可以在我的GitHub的项目中下载:电路仿真图

如果有什么地方讲的不好或者讲错的地方欢迎大家指出来,如果我所讲的对你们有帮助不要忘了点赞、收藏、关注哦!
我是你们的好伙伴apprentice_eye
一个致力于让知识变的易懂的博主。

数字电路设计——加法器 阅读详情

相关推荐

Quartus 入门 —— 加法器

Quartus 入门 —— 加法器 设备与软件版本 这里使用的 intel 的 芯片为 EP4CE115F29C7 的开发板,软件使用的是 Quartus(Quartus Prime 18.1) 的版本 创建项目 首先点击新建项目: 下面我们就直接点击下一步到芯片选择部分: 这里我们需要选择 Cyclone IV E 的 EP4CE115F29C7 芯片 然后这里我们选择...

ppqppl的博客 4653

运算电路(1)——加法器

本文介绍了运算电路中的加法器设计,包括半加器、全加器、串行进位加法器、超前进位加法器、曼彻斯特加法器、宽位加法器、进位旁路加法器和进位选择加法器

apple_53311083的博客 1万+

FPGA中Carry4进位链原理详解:从加法器到时序优化实战

在数字电路设计中,加法器是最基础的算术单元,而进位传播决定了其性能上限。FPGA内部通过专用进位逻辑加速这一过程,其中Xilinx器件中的CARRY4就是核心结构。它由级联的MUX和XOR门组成,配合LUT实现高效加法、减法、比较器等运算,显著优于纯LUT方案。理解Carry4的工作原理,有助于开发者优化算术逻辑路径、评估资源占用,并解决进位链造成的时序违例问题。本文从全加器的进位传播切入,逐步拆解Carry4的内部结构、级联方式与综合映射机制,并介绍流水线切割、DSP替换、宽度压缩等时序优化手段,帮助工程

weixin_29171087的博客 211

电路分析 ---- 加法器

1 同相加法器 分析过程 虚短:u+=u−=RGRG+RFuOu_{+}=u_{-}=\cfrac{R_{G}}{R_{G}+R_{F}}u_{O}u+​=u−​=RG​+RF​RG​​uO​ i1=uI1−u+R1i_{1}=\cfrac{u_{I1}-u_{+}}{R_{1}}i1​=R1​uI1​−u+​​;i2=uI2−u+R2i_{2}=\cfrac{u_{I2}-u_{+}}{R_{2}}i2​=R2​uI2​−u+​​;i3=uI3−u+R3i_{3}=\cfrac{u_{I3}-u_{+

欢迎来到我的博客 9186

进位保留加法器(CSA)原理与多操作数加法树设计详解

在数字电路与处理器设计中,加法器是最基础的运算单元。传统加法器通过逐级传播进位实现两数相加,但其串行特性在多操作数累加时会产生严重的性能瓶颈。为解决这一问题,进位保留加法器(Carry-Save Adder, CSA)应运而生,它采用并行无进位传播的压缩机制,将三个操作数快速压缩为两个数(和向量与进位向量)。这种冗余表示技术通过暂存进位、延迟传播,实现了多操作数加法效率的数量级提升。在乘法器部分积压缩、数字信号处理(DSP)点积运算等场景中,CSA可构建Wallace树或Dadda树结构,将大量操作数高效压

weixin_34008805的博客 361

Montgomery模乘算法详解:从数学原理到硬件优化(含CSA加法器设计)

本文深入解析Montgomery模乘算法的数学原理与硬件优化,重点介绍CSA加法器设计在FPGA上的高效实现。通过实例演示和Verilog代码展示,揭示如何将算法转化为硬件加速方案,提升RSA、ECC等密码体系的运算性能。

weixin_42548816的博客 241

三位加法器实现原理详解

三位加法器实现原理详解 近日在读集智俱乐部里面的大牛们写的一本《科学的极致:漫谈人工智能》。看到了简单的数学计算计算机是如何实现的。一切的一切都起于逻辑门,本是本科已经学过的东西,现在早已经忘得一干二净。算是重新学习吧!看到这些基本原理,很感慨前人的智慧,太美了!太值得欣赏了! 和大家分享一个三位加法器的实现原理。感受物质最本质的美! 计算机的计算功能是通过最基本的门电路组合最终形成的。三位加法器...

搞点學術的研究生 2万+

【FPGA实现加法器】-代码实现与原理详解

在always块中,通过{Carry, Sum} = A + B语句实现带进位的加法运算,同时通过判断A[7]、B[7]和Sum[7]的值来检测是否溢出。上述代码定义了一个8位宽的输入A和B,以及9位宽的输出Sum。在always块中,通过简单的加法运算得到Sum的值。需要注意的是,Sum必须用reg类型声明为寄存器类型,因为它的值需要保存在FPGA芯片中。总结一下,本文介绍了FPGA加法器的原理、功能和代码实现。需要注意的是,FPGA加法器还可以支持进位和溢出检测等功能,以满足不同应用场景的需求。

CoderExtra的博客 695

CSA加法器原理详解文档

CSA加法器原理详解文档 【下载地址】CSA加法器原理详解文档 CSA加法器是一种高效的多位加法运算单元,通过将进位和求和信号分别保存,显著提升了加法运算速度。本文档深入解析了CSA(进位保存加法器)的原理,并探讨了其在FPGA硬件加速中的应用。特别适合大规模并行计算和数字信号处理等高性能计算场景。通过本文档,读者可以全...

gitblog_06708的博客 382

加法器电路原理图解

在计数体制中,通常用的是十进制,它有0,1,2,3,…,9十个数码,用它们来组成一个数。但在数字电路中,为了把电路的两个状态(1态和0态)和数码对应起来,采用二进制较为方便,二进制只有0和1两个数码。         二进制加法器是数字电路的基本部件之一。二进制加法运算同逻辑加法运算的含义是不同的。前者是数的运算,而后者表示逻辑关系。二进制加法是“逢二进一”,即1+1=10,而逻辑加则为1+1=1。     1、半加器     所谓“半加”,就是只求本位的和,暂不管低位送来的进位数。半加器的逻辑状态表见表1。     表1半加器逻辑状态表

最新扣子(coze)案例:在coze上用DeepSeek+私有数据库、知识库,创建你的专属智能体

Gartner预测,到2026年,70%的企业将通过Al知识库实现「组织记忆外化」。数字化时代,数据已成为企业发展的核心资产。我们通过人工智能将知识库从“静态存储"升级为“智能服务”。让"沉睡宝藏"焕发新生,助力企业突破数据困局。

weixin_72689845的博客 2163

计算机组成原理之加法器详解

未经博主允许,禁止转载,翻版必究! 上次的文章写了补码,也简单的涉及了计算机的加减运算,但是后续涉及到了硬件的设计,我认为《计算机组成原理》这门课是要衔接硬件和软件一门课,不仅要掌握简单的设计硬件知识,也要掌握具体的在编程中的应用。所以,这一篇文章来具体地讲一下加法器的知识。 一、加法器的意义 加法器是计算机中的基础硬件,了解加法器不仅能够揭开计算机的本质,也能对计算机的数制运算产生深刻的理解。...

农夫阿才 2万+

5分钟搞定Google Custom Search API申请:从注册到获取CX Key全流程

本文详细介绍了如何快速申请和配置Google Custom Search API,从Google Cloud项目创建、启用计费、获取API Key,到在Programmable Search Engine控制台创建自定义搜索引擎并获取关键的CX Key,提供了全流程实战指南。文章还包含安全配置建议、API调用测试方法及前端与后端的集成代码示例,帮助开发者高效实现网站或应用的智能搜索功能。

weixin_29227585的博客 1660

计算机组成原理、数字逻辑之加法器详解

计算机组成原理、数字逻辑之加法器详解

深耕嵌入式领用多年, 致力于分享嵌入式领域技术! 1万+

RK3588 C-PHY摄像头驱动升级踩坑记:从‘Only CSI2 supported’报错到成功取流

本文详细记录了在RK3588平台上调试C-PHY摄像头驱动的全过程,从‘Only CSI2 supported’报错分析到成功取流。内容涵盖C-PHY与CSI-2协议差异、SDK版本对比、V4L2框架下的bus-type解析机制,以及硬件排查与寄存器调优实战经验,为嵌入式Camera驱动工程师提供宝贵参考。

weixin_42522374的博客 122

深度解析direct path write temp与ASM IO性能问题:Oracle 19.17视图查询优化指南

本文深度解析了Oracle 19.17版本中复杂视图查询出现`direct path write temp`与`ASM IO for non-blocking poll`性能瓶颈的根本原因。通过对比11.2.0.4版本的执行计划差异,文章提供了从CBO参数调整、存储层优化到SQL架构重构的完整实战调优指南,帮助DBA有效解决升级后的查询性能问题。

2y3u4i5o6p的博客 1100

CSA加法器原理详解文档:多位加法运算新篇章

CSA加法器原理详解文档:多位加法运算新篇章 【下载地址】CSA加法器原理详解文档 CSA加法器是一种高效的多位加法运算单元,通过将进位和求和信号分别保存,显著提升了加法运算速度。本文档深入解析了CSA(进位保存加法器)的原理,并探讨了其在FPGA硬件加速中的应用。特别适合大规模并行计算和数字信号处理等高性能计算场景。通...

gitblog_06742的博客 1076

Unity 升级 xLua 版本,编译不同平台链接库

Unity 升级 xLua 详解

LymanCao的专栏 1800

从逻辑门到32位加法器:计算机运算原理详解

计算机运算的核心基础是二进制与逻辑门电路。二进制作为计算机的底层语言,通过0和1两种状态实现信息编码,而逻辑门(与门、或门、非门)则构成所有数字电路的基本构建块。这些基础元件组合后可以构建全加器,实现最基本的算术运算。在现代CPU设计中,32位加法器通过超前进位等优化技术,能在纳秒级完成运算,这是计算机高性能计算的基础。理解从逻辑门到加法器的设计原理,不仅揭示了计算机运算的本质,也为学习CPU架构和数字电路设计打下坚实基础。本文通过32位加法器的实现过程,展示了计算机如何用简单元件完成复杂运算。

weixin_36074800的博客 594

从零构建:STM32与EC800 4G模块的工业物联网数据透传实战

本文详细介绍了如何从零构建STM32与EC800 4G模块的工业物联网数据透传系统。内容涵盖硬件选型、抗干扰电路设计、AT指令稳定性优化、网络连接管理、可靠数据透传协议以及低功耗策略,为开发者提供了一套可直接应用于工业场景的完整实战方案。

uran的专栏 1014

便携式水下动态实时视频色彩还原设备,一键快速实现对水下偏色视频和图像的色彩还原处理

便携式水下动态实时视频色彩还原,一键快速对水下图像进行色彩校正,清晰度提升和亮度均衡处理,为水下资源勘探和科学考古,海洋生态环境监测,水下机器作业等应用提供有力的协助

weixin_43518680的博客 633

从原理到实现:超前进位加法器的Verilog代码详解(适合初学者)

本文详细讲解了超前进位加法器(Carry-Lookahead Adder)的设计原理与Verilog实现方法,适合数字电路设计初学者。通过对比串行进位加法器,分析超前进位加法器如何通过并行计算提升性能,并提供完整的4位超前进位加法器Verilog代码示例,帮助读者快速掌握这一高效加法器的实现技巧。

transformer2023的博客 506

【DRAM存储器二】Sense Amplifier

详述DRAM颗粒中感应放大器功能、电路结构、工作原理和操作波形

highman110的博客 7192

从逻辑门到加法器:计算机组成原理全加器实验详解

本文详细解析了计算机组成原理中的全加器实验,从逻辑门到加法器的构建过程。通过与非门和异或门的组合,展示了如何搭建基础计算单元,并深入探讨了全加器的输入输出特性及进位链的视觉化观察。文章还提供了调试经验和进阶挑战,帮助读者理解全加器在现代CPU中的工业级实现。

weixin_30263073的博客 440

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

计算机原理加法指令流程图,加法器电路设计方案汇总(八款模拟电路设计原理详解)...

描述加法器是产生数的和的装置。加数和被加数为输入,和数与进位为输出的装置为半加器。若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。常用作计算机算术逻辑部件,执行逻辑操作、移位与指令调用。在电子学中,加法器是一种数位电路,其可进行数字的加法计算。加法器电路设计方案一:BCD加法器的设计BCD加法器的设计, 目的是根据彩灯亮灭的方式,来显示两个BCD码相加之和。本设计要求考虑高位溢出...

weixin_35931756的博客 3954

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

上一篇: 多边形的裁剪:一种基于有效边表的有效多边形裁剪算法的分析
下一篇: 多边形的填充算法的分析
apprentice_eye
博客等级 码龄6年 1165粉丝 348原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值