CN106940638B - 一种二进制原码加减法运算单元的硬件架构 - Google Patents
一种二进制原码加减法运算单元的硬件架构 Download PDFInfo
- Publication number
- CN106940638B CN106940638B CN201710151784.1A CN201710151784A CN106940638B CN 106940638 B CN106940638 B CN 106940638B CN 201710151784 A CN201710151784 A CN 201710151784A CN 106940638 B CN106940638 B CN 106940638B
- Authority
- CN
- China
- Prior art keywords
- data selector
- addition
- logic unit
- control signal
- binary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种新型的高速、低功耗、省面积的二进制有符号数的原码加/减运算单元的硬件架构。该架构有一个加/减控制信号,能够指示电路执行加法运算或减法运算。输入两个二进制有符号数的原码,在的加/减控制信号指示下,该硬件架构能够快速地计算出对应的两数的和或差,并仍然以原码的形式呈现。本发明主要包含了加法器,减法器,比较器,求补单元和数据选择器,接近并行化地计算出两数之和、差以及差的相反数,并根据两数的符号位、相对大小以及加/减控制信号的不同组合情况,迅速地从两数之和、差以及差的相反数三者中筛选出一个作为最终的结果。本发明通过优化计算方法,大大缩短了二进制原码加/减运算单元硬件架构的关键路径,并降低了功耗,减小了面积开销,使本发明具有广泛的运用前景。
Description
技术领域
本发明涉及计算机及电子信息科学技术领域,特别涉及处理原码形式的二进制有符号数的加减法运算单元的硬件架构。
背景技术
在现代数字集成电路中,最广泛使用的数制是二进制。二进制数可分为无符号二进制数和有符号二进制数。有符号二进制数可以用三种不同的形式予以表示,分别为原码表示法,反码表示法和补码表示法。
为了方便进行运算,数字系统中多采用补码来表示有符号二进制数。然而,在一些特定的场合,比如低密度奇偶校验码解码器和极化码解码器中,为了适应解码算法,降低设计与存储的复杂度,解码过程中所用到的有符号二进制数采经常用的是原码表示法。在进行加法或减法运算时,先要将有符号数的原码转化为补码,用补码进行加法或减法运算,得到和或差的补码形式,再将和或差的补码转化为原码形式。有符号数的原码与补码之间的转换方法如下:将原码按位取反,再加上1即可得补码;将补码按位取反,再加上1即可得原码。两次不同表示方法之间的转换大大增加了运算电路的功耗、延时以及面积开销。因此,设计快速、低功耗和省面积的高效二进制原码加减法运算单元架构,对于提升前述采用原码表示法的数字系统之性能具有非常重大的意义。
发明内容
发明目的:本发明旨在解决传统的二进制原码加减法运算电路因为两次原码与补码之间进行转换而引起的功耗大、速度慢、面积开销大的问题。
为了解决上述技术问题,本发明公开了一种二进制原码加减法运算单元架构。
为了便于阐述,定义两个原码形式的二进制有符号数A和B,用As、Bs分别表示A、B的符号,当A、B大于等于0时,As、Bs为0;当A、B小于0时,As,Bs为1。用Am、Bm分别表示A、B的绝对值大小。C为加减运算控制信号。定义S为A与B的和/差,用Ss和Sm分别表示S的符号与绝对值大小。下文所涉及的所有符号均与此处的定义保持一致。
该架构从整体上来看,包含了:
1.一个加法器,其作用是计算Am+Bm。
2.一个减法器,其作用是计算Am-Bm。
3.一个比较器,其作用是比较Am和Bm的大小。
4.一个求补单元,其作用是将减法器的输出Am-Bm转换为对应的补码形式,即-(Am-Bm)。
5.三个数据选择器,分别编号为第一、第二、第三,其中第一数据选择器用于在恰当的输入地址下从减法器的输出和求补单元的输出中选择一个;第二数据选择器用于在恰当的输入地址下从加法器的输出和第一数据选择器的输出中选择一个作为Sm;第三数据选择器用于在恰当的输入地址下从As和第二逻辑单元的输出中选择一个作为Ss。
6.两个逻辑单元,分别编号为第一、第二,其中第一逻辑单元根据As、Bs、C的不同组合输出恰当的地址信号以控制第二数据选择器从两个输入中选择出正确的一个作为Sm;第二逻辑单元根据Bs、C的不同组合输出恰当的信号作为第三数据选择器的输入之一。
本发明所公开的二进制有符号数原码加减运算单元的硬件架构,同时利用加法器、减法器、比较器和求补单元,接近并行化地计算出Am+Bm、Am-Bm、-(Am-Bm)。因为A与B之和/差的绝对值必为这三者之一,通过A、B两数的相对大小,符号As、Bs以及加减控制信号C的不同组合,产生恰当的地址信号输入到数据选择器,则能正确地选择出Sm和Ss。
有益效果:本发明通过并行化地计算两数之和、差以及差的相反数,最后通过数据选择器筛选正确的结果,避免了传统的二进制原码加减法运算单元所需要的两次原码与补码之间的形式转换,大大加快了运算速度,降低了能量消耗,节约了面积开销。本发明在数字系统中有着广泛的应用前景。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1是本发明的整体架构图。
具体实施方式
下面详细地描述本发明的实施例,所述实施例的示例在附图1中示出。原码表示的数A由两部分组成,分别为1比特的符号位As和一定比特位宽的绝对值部分Am。原码表示的数B由两部分组成,分别为1比特的符号位Bs和一定比特位宽的绝对值部分Bm。图1中C为1比特的加减控制信号,当C指示执行加法运算时,电路执行A+B;当C批示执行减法运算时,电路执行A-B。Ss为1比特的A与B的和/差的符号位,Sm为A与B的和/差的绝对值部分,其比特位宽可由具体应用需求确定。
二进制有符号数在原码形式下相加的运算法则见表一;二进制有符号数在原码形式下相减的运算法则见表二。
表一:二进制原码相加的运算法则
表二:二进制原码相减的运算法则
加减控制信号C有两种状态,分别为0和1,可以用0表示执行加法运算,1表示执行减法运算;也可以用1表示执行加法运算,0表示执行减法运算。无论何种选择并不影响本发明的有效性。
图1中加法器计算出Am+Bm,减法器计算出Am-Bm,如果Am大于等于Bm,则Am-Bm为正,减法器输出的结果恰好为差的绝对值,为原码形式;如果Am小于Bm,则Am-Bm为负,减法器输出的结果为差的补码去除符号位剩余的部分,它再经过一个求补单元则可恢复成原码的形式,即求补单元计算出-(Am-Bm)。
本发明中需要一个比较器来比较Am与Bm的相对大小。如果Am大于等于Bm,则数据选择器1选择减法器的输出Am-Bm,否则选择求补单元的输出-(Am-Bm),总之,第一数据选择器输出的一定是|Am-Bm|。
对于第二数据选择器,结合表一和表二可以总结出如下规律:当信号C指示执行加法运算时,若As与Bs相同,则第二数据选择器总是选择加法器的输出Am+Bm作为Sm;若As与Bs不相同,则第二数据选择器总是选择第一数据选择器的输出作为Sm。当信号C指示执行减法运算时,若As与Bs不同,则第二数据选择器总是选择加法器的输出Am+Bm作为Sm,若As与Bs相同,则数据选择器2总是选择第一数据选择器的输出作为Sm。根据As、Bs和C的不同组合,由第一逻辑单元产生恰当的地址信号输入到第二数据选择器中以进行筛选。
对于第三数据选择器,结合表一与表二可总结出如下规律:当Am大于等于Bm时,它总是选择As作为Ss输出,否则它总是选择第二逻辑单元的输出作为Ss。至于第二逻辑单元,当信号C指示进行加法运算时,它输出Bs;当信号C指示减法运算时,它输出Bs的互补信号。
Claims (1)
1.一种二进制原码加减法运算单元的硬件架构,包括:加法器、减法器、比较器、求补单元、第一逻辑单元、第二逻辑单元、第一数据选择器、第二数据选择器、第三数据选择器,其特征在于:所述加法器的输出端连接第二数据选择器,所述第一逻辑单元的输出端连接第二数据选择器,所述减法器的输出端分别连接求补单元和第一数据选择器,所述求补单元的输出端连接第一数据选择器,所述比较器的输出端分别连接第一数据选择器和第三数据选择器,所述第二逻辑单元的输出端连接第三数据选择器,所述第一数据选择器的输出端连接第二数据选择器;
所述加法器、减法器和比较器的输入值均为两个原码形式的二进制有符号数的绝对值部分,且所述加法器计算两个所述二进制有符号数的绝对值之和,所述减法器计算两个所述二进制有符号数的绝对值之差,所述比较器计算两个所述二进制有符号数的相对大小关系;所述求补单元用于将所述减法器输出的两数绝对值之差进行求补码的运算;所述第一数据选择器以所述比较器的输出结果作为地址信号,从求补单元和减法器的输出中选择一个作为所述第二数据选择器的输入;所述第一逻辑单元的输入为两个所述二进制有符号数的符号位和一个加减控制信号,所述第一逻辑单元的输出为所述第二数据选择器的地址信号,当输入的两所述符号位相同且加减控制信号指示执行加法运算时或当输入的两所述符号位相反且加减控制信号指示执行减法运算时,所述第一逻辑单元输出一种地址信号,当输入的两所述符号位相同且加减控制信号指示执行减法运算时或当输入的两所述符号位相反且加减控制信号指示执行加法运算时,所述第一逻辑单元输出另一种地址信号;所述第二数据选择器从所述加法器的输出与所述第一数据选择器的输出中选择一个作为最终输出结果的绝对值部分;所述第二逻辑单元的输入为两个所述二进制有符号数的加数或减数的符号位和加减控制信号,当加减控制信号指示执行加法运算时,所述第二逻辑单元将输入的符号位原样输出,当加减控制信号指示执行减法运算时,所述第二逻辑单元将输入的符号位取相反输出;所述第三数据选择器以所述比较器的输出为地址信号,从所述第二逻辑单元的输出和两个所述二进制有符号数的的被加数或被减数的符号位中选择一个作为最终输出结果的符号位部分。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710151784.1A CN106940638B (zh) | 2017-03-10 | 2017-03-10 | 一种二进制原码加减法运算单元的硬件架构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710151784.1A CN106940638B (zh) | 2017-03-10 | 2017-03-10 | 一种二进制原码加减法运算单元的硬件架构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106940638A CN106940638A (zh) | 2017-07-11 |
CN106940638B true CN106940638B (zh) | 2020-04-24 |
Family
ID=59468804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710151784.1A Active CN106940638B (zh) | 2017-03-10 | 2017-03-10 | 一种二进制原码加减法运算单元的硬件架构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106940638B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110597483B (zh) * | 2019-09-06 | 2020-09-08 | 中国科学院近代物理研究所 | 一种用于fpga比较器的全二进制数据高速比较方法及系统 |
CN111464189A (zh) * | 2020-03-31 | 2020-07-28 | 卓尔智联(武汉)研究院有限公司 | 一种斐波那契进制译码装置、方法 |
CN112214200B (zh) * | 2020-09-30 | 2023-12-15 | 本源量子计算科技(合肥)股份有限公司 | 一种量子减法运算方法、装置、电子装置及存储介质 |
CN112350716B (zh) * | 2020-11-27 | 2023-08-04 | 中科南京智能技术研究院 | 一种补码运算方法及装置、补码运算装置的运算方法 |
CN113961506B (zh) * | 2021-10-19 | 2023-08-29 | 海飞科(南京)信息技术有限公司 | 加速器和电子装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100553155C (zh) * | 2007-04-29 | 2009-10-21 | 浙江大学 | 支持多速率多码长的串行低密度奇偶校验码译码器 |
CN106301390A (zh) * | 2016-08-11 | 2017-01-04 | 中国计量大学 | LDPC/Turbo码双模译码器 |
-
2017
- 2017-03-10 CN CN201710151784.1A patent/CN106940638B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106940638A (zh) | 2017-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106940638B (zh) | 一种二进制原码加减法运算单元的硬件架构 | |
Saha et al. | Novel CMOS multi-bit counter for speed-power optimization in multiplier design | |
US20140040334A1 (en) | Data processing apparatus and method for reducing the size of a lookup table | |
CN109325590B (zh) | 用于实现计算精度可变的神经网络处理器的装置 | |
Venkatachalam et al. | Approximate sum-of-products designs based on distributed arithmetic | |
RU2408057C2 (ru) | Умножитель с фиксированной точкой с предварительным насыщением | |
US11354097B2 (en) | Compressor circuit, Wallace tree circuit, multiplier circuit, chip, and device | |
US20040167954A1 (en) | Overflow detection system for multiplication | |
Gorgin et al. | A family of high radix signed digit adders | |
Ying et al. | Area optimization of MPRM circuits using approximate computing | |
CN111694543B (zh) | 近似乘法器设计方法、近似乘法器和图像锐化电路 | |
Baba et al. | Design and implementation of advanced modified booth encoding multiplier | |
Al-Khaleel et al. | Fast binary/decimal adder/subtractor with a novel correction-free BCD addition | |
Armand et al. | Low power design of binary signed digit residue number system adder | |
CN112350716B (zh) | 一种补码运算方法及装置、补码运算装置的运算方法 | |
CN104202053B (zh) | 一种快速n位原码到补码的转换装置和转换方法 | |
Kumar et al. | Complex multiplier: implementation using efficient algorithms for signal processing application | |
Kayala et al. | Low Power VLSI Architecture for Data Comparators for Non-Linear Imaging Applications | |
CN101944009A (zh) | 一种集成电路中除法器商的处理装置 | |
Nagamani et al. | Design of optimized reversible Binary and BCD adders | |
Pathan et al. | An autocorrelation-less single-bit Weiner filter on FPGA | |
Sathish et al. | VLSI architecture of parallel multiplier-accumulator based on radix-2 modified booth algorithm | |
Nithyashree et al. | Design of an efficient vedic binary squaring circuit | |
CN112732223B (zh) | 半精度浮点数除法器数据处理方法及系统 | |
US20130262549A1 (en) | Arithmetic circuit and arithmetic method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |