CN102508633B - 除法器逻辑电路及实现除法器逻辑电路的方法 - Google Patents

除法器逻辑电路及实现除法器逻辑电路的方法 Download PDF

Info

Publication number
CN102508633B
CN102508633B CN201110394378.0A CN201110394378A CN102508633B CN 102508633 B CN102508633 B CN 102508633B CN 201110394378 A CN201110394378 A CN 201110394378A CN 102508633 B CN102508633 B CN 102508633B
Authority
CN
China
Prior art keywords
adder
input end
squarer
value
moves
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
Application number
CN201110394378.0A
Other languages
English (en)
Other versions
CN102508633A (zh
Inventor
杨修
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IPGoal Microelectronics Sichuan Co Ltd
Original Assignee
IPGoal Microelectronics Sichuan Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by IPGoal Microelectronics Sichuan Co Ltd filed Critical IPGoal Microelectronics Sichuan Co Ltd
Priority to CN201110394378.0A priority Critical patent/CN102508633B/zh
Publication of CN102508633A publication Critical patent/CN102508633A/zh
Priority to US13/624,819 priority patent/US8838666B2/en
Application granted granted Critical
Publication of CN102508633B publication Critical patent/CN102508633B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods 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/52Multiplying; Dividing
    • G06F7/535Dividing only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/535Indexing scheme relating to groups G06F7/535 - G06F7/5375
    • G06F2207/5355Using iterative approximation not using digit recurrence, e.g. Newton Raphson or Goldschmidt

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Manipulation Of Pulses (AREA)

Abstract

一种除法器逻辑电路,用于求得被除数M与除数N的商S,其包括一输入商S的估计值的第一常数输入端、一第一加法器、一输入定值M-N*的第二常数输入端、一输入底数-N的底数输入端、至少一整数次乘方器、一右移移位寄存器、一第二加法器及一乘法器,为最接近N的标准幂值,=2,整数次乘方器确定以-N为底数,以i-1为指数的定值,h、i为自然数,右移移位寄存器将整数次乘方器确定的定值做右移h*i位的移位处理后传至第二加法器,乘法器将第二加法器传送的数值与第二常数输入端输入的定值相乘,第一加法器将第一常数输入端输入的定值与乘法器传送的数值相加后输出商S。本发明还提供实现除法器逻辑电路的方法。本发明精度较高。

Description

除法器逻辑电路及实现除法器逻辑电路的方法
技术领域
本发明涉及一种数字逻辑电路,尤指一种高精度且易于实现的单时钟除法器逻辑电路及实现除法器逻辑电路的方法。
背景技术
在数字逻辑电路的设计领域里,除法器逻辑电路的实现一直是一个难题,尤其是需要在一个时钟内实现的除法器逻辑电路更是尤为困难。
在现有的数字除法器逻辑电路中,如果除数是一个标准的幂值,即除数是2的整数次方时,只需将被除数右移相应的位数即可。但是,当除数不是一个标准的幂值时,常见的做法是用除数去循环减被除数,根据循环的次数来求得商的整数部分。这样,就基本上不可能在一个时钟内实现除法器逻辑电路。因此,有必要提供一种高精度且易于实现的单时钟除法器逻辑电路及实现除法器逻辑电路的方法。
发明内容
鉴于以上内容,有必要提供一种高精度且易于实现的单时钟除法器逻辑电路及实现除法器逻辑电路的方法。
一种除法器逻辑电路,用于求得一被除数M与一除数N的商S,所述除法器逻辑电路包括一用于输入一商S的估计值S1的第一常数输入端、一与所述第一常数输入端相连的第一加法器、一用于输入一定值M-N*S1的第二常数输入端、一用于输入一底数N1-N的底数输入端、至少一与所述底数输入端相连的整数次乘方器、与所述整数次乘方器对应相连的至少一右移移位寄存器、一与所述右移移位寄存器相连的第二加法器及一与所述第一加法器、所述第二加法器及所述第二常数输入端相连的乘法器,其中N1为一最接近所述除数N的标准幂值,N1=2h,h为自然数,所述整数次乘方器确定以N1-N为底数,以i-1为指数的定值,其中i为自然数,所述右移移位寄存器将所述整数次乘方器确定的定值做右移h*i位的移位处理后传送至所述第二加法器,所述乘法器将所述第二加法器传送的数值与所述第二常数输入端输入的定值相乘后送至所述第一加法器,所述第一加法器将所述第一常数输入端输入的定值与所述乘法器传送的数值相加后输出所述被除数M与所述除数N的商S。
一种实现除法器逻辑电路的方法,用于求得一被除数M与一除数N的商S,所述实现除法器逻辑电路的方法包括以下步骤:
一第一常数输入端输入一商S的估计值S1至一第一加法器;
一第二常数输入端输入一定值M-N*S1至一乘法器;
一底数输入端输入一底数N1-N至一整数次乘方器,其中N1为最接近N的标准幂值,N1=2h,h为自然数;
所述整数次乘方器确定以N1-N为底数,以i-1为指数的定值,其中i为自然数;
一右移移位寄存器将所述整数次乘方器确定的定值做右移h*i位的移位处理;
一第二加法器将所述右移移位寄存器右移移位处理后的数值送至一乘法器;
所述乘法器将所述第二加法器传送的数值与所述第二常数输入端输入的定值相乘后送至所述第一加法器;及
所述第一加法器将所述第一常数输入端输入的定值与所述乘法器传送的数值相加后输出所述被除数M与所述除数N的商S。
相对现有技术,本发明除法器逻辑电路及实现除法器逻辑电路的方法可在单时钟内计算出被除数M与除数N的商S,结构简单、精度较高且易于实现。
附图说明
图1为本发明除法器逻辑电路较佳实施方式的逻辑电路示意图。
图2为本发明实现除法器逻辑电路的方法较佳实施方式的流程图。
具体实施方式
请参阅图1,本发明除法器逻辑电路较佳实施方式用于求得一被除数M与一除数N的商S,该除法器逻辑电路包括一第一常数输入端、一与该第一常数输入端相连的第一加法器、一第二常数输入端、一底数输入端、一与该底数输入端相连的若干个整数次乘方器、一与每一个整数次乘方器对应相连的右移移位寄存器、一与每一个右移移位寄存器相连的第二加法器及一与该第一加法器、该第二加法器及该第二常数输入端相连的乘法器。该整数次乘方器与该右移移位寄存器的个数均为t,t为自然数。
该第一常数输入端用于输入一商S的估计值S1;该第二常数输入端用于输入一定值M-N*S1;该底数输入端用于输入一底数N1-N,其中N1为一最接近N的标准幂值,N1=2h,h为自然数;该若干个整数次乘方器分别用于确定以N1-N为底数,依次以0至i-1为指数的定值,其中i为自然数,且i∈(1,t);该若干个右移移位寄存器分别用于将每一对应的整数次乘方器确定的定值做右移移位处理,依次由右移h位至右移h*i位,即可以分别求出以每一整数次乘方器确定的定值作为被除数,N1 i作为除数的数值;该第二加法器用于将每一右移移位寄存器输出的数值相加后送至该乘法器;该乘法器用于将该第二加法器传送的数值与该第二常数输入端输入的定值相乘后送至该第一加法器;该第一加法器用于将该第一常数输入端输入的定值与该乘法器传送的数值相加,该第一加法器输出的数值即为被除数M与除数N的商S。
本发明除法器逻辑电路较佳实施方式的工作原理如下:
在表达式S=M/N中,M与N是已知的两个数,需要根据这两个数求出S。首先,我们给出一个商的估计值S1,再找出一个最接近N的标准幂值N1,同时假设商为ST,根据该除法器逻辑电路可以得到ST的表达式如下:
S T = S 1 + Σ i = 1 t ( N 1 - N ) i - 1 * ( M - N * S 1 ) N 1 i
根据上面的表达式可以知道ST与S的误差为:
ΔS = S - S T = ( N 1 - N ) t * ( M - N * S 1 ) N 1 t * N
由此可见:
(1)当商的估计值S1与标准值S越接近,那么误差ΔS就越小;
(2)当标准幂值N1与除数N越接近,同时该整数次乘方器与该右移移位寄存器的个数t越大,即修正因子的数目t越大,那么误差ΔS就越小。
同时从上面ST的表达式可以看出,ST的每一项都是逻辑电路能够轻易实现的,因此ST是可以在单时钟内计算出来的,只需根据精度要求,选择合适的S1、N1和t即可。当误差ΔS很小时,ST与S近似相等,即该第一加法器输出的数值即为被除数M与除数N的商S。
比如一个电路需要计算S=M/125,估计S的结果在450左右,假设采用标准幂值128,修正因子的数目t为3,那么ST的表达式如下所示:
S T = 450 + M - 125 * 450 128 + ( 128 - 125 ) * ( M - 125 * 450 ) 128 * 128 + ( 128 - 125 ) 2 * ( M - 125 * 450 ) 128 * 128 * 128 = 450 + ( M - 125 * 450 ) * ( 1 128 + 3 128 2 + 9 128 3 ) = 450 + ( M - 56250 ) * 16777 2097152 ;
当M=56250时:S=M/125=450;
S T = 450 + ( M - 56250 ) * 16777 2097152 = 450 ;
当M=56200时:S=M/125=449.6;
S T = 450 + ( M - 56250 ) * 16777 2097152 = 449.600005 ;
当M=52000时:S=M/125=416;
S T = 450 + ( M - 56250 ) * 16777 2097152 = 416.000438 ;
当M=60000时:S=M/125=480;
S T = 450 + ( M - 56250 ) * 16777 2097152 = 479.999614 ;
由此可见,通过本发明除法器逻辑电路较佳实施方式计算出的数值精度较高且易于实现。
请参阅图2,本发明实现除法器逻辑电路的方法较佳实施方式用于求得被除数M与除数N的商S,该实现除法器逻辑电路的方法较佳实施方式包括以下步骤:
步骤一,第一常数输入端输入商S的估计值S1至第一加法器。
步骤二,第二常数输入端输入定值M-N*S1至乘法器。
步骤三,底数输入端输入底数N1-N至每一整数次乘方器,其中N1为最接近N的标准幂值,N1=2h,h为自然数。
步骤四,每一整数次乘方器依次确定以N1-N为底数,以0至i-1为指数的定值,其中i为自然数。
步骤五,每一右移移位寄存器将对应的整数次乘方器确定的定值做右移移位处理,依次由右移h位至右移h*i位,其中h为自然数,即可以分别求出以每一整数次乘方器确定的定值作为被除数,N1 i作为除数的数值。
步骤六,第二加法器将每一右移移位寄存器右移移位处理后的数值相加后送至该乘法器。
步骤七,乘法器将第二加法器传送的数值与第二常数输入端输入的定值相乘后送至第一加法器。
步骤八,第一加法器将第一常数输入端输入的定值与乘法器传送的数值相加即可得到被除数M与除数N的商S。
其中,该整数次乘方器与该右移移位寄存器的个数均为t,t为自然数,且t的取值较大。
本发明除法器逻辑电路及实现除法器逻辑电路的方法只需根据精度要求,选择合适的S1、N1和t即可在单时钟内计算出被除数M与除数N的商S,结构简单、精度较高且易于实现。

Claims (8)

1.一种除法器逻辑电路,用于求得一被除数M与一除数N的商S,其特征在于:所述除法器逻辑电路包括一用于输入一商S的估计值S1的第一常数输入端、一与所述第一常数输入端相连的第一加法器、一用于输入一定值M-N*S1的第二常数输入端、一用于输入一底数N1-N的底数输入端、至少一与所述底数输入端相连的整数次乘方器、与所述整数次乘方器对应相连的至少一右移移位寄存器、一与所述右移移位寄存器相连的第二加法器及一与所述第一加法器、所述第二加法器及所述第二常数输入端相连的乘法器,其中N1为一最接近所述除数N的标准幂值,N1=2h,h为自然数,所述整数次乘方器确定以N1-N为底数,以i-1为指数的定值,其中i为自然数,所述右移移位寄存器将所述整数次乘方器确定的定值做右移h*i位的移位处理后传送至所述第二加法器,所述乘法器将所述第二加法器传送的数值与所述第二常数输入端输入的定值相乘后送至所述第一加法器,所述第一加法器将所述第一常数输入端输入的定值与所述乘法器传送的数值相加后输出所述被除数M与所述除数N的商S。
2.如权利要求1所述的除法器逻辑电路,其特征在于:所述整数次乘方器与所述右移移位寄存器的个数均为t,其中t为自然数。
3.如权利要求2所述的除法器逻辑电路,其特征在于:所述t个整数次乘方器分别确定以N1-N为底数,依次以0至i-1为指数的定值,且i∈(1,t)。
4.如权利要求3所述的除法器逻辑电路,其特征在于:所述t个右移移位寄存器分别将每一对应的整数次乘方器确定的定值做右移移位处理,依次由右移h位至右移h*i位,即可以分别求出以每一整数次乘方器确定的定值作为被除数,N1 i作为除数的数值。
5.一种实现除法器逻辑电路的方法,用于求得一被除数M与一除数N的商S,所述实现除法器逻辑电路的方法包括以下步骤:
一第一常数输入端输入一商S的估计值S1至一第一加法器;
一第二常数输入端输入一定值M-N*S1至一乘法器;
一底数输入端输入一底数N1-N至一整数次乘方器,其中N1为最接近N的标准幂值,N1=2h,h为自然数;
所述整数次乘方器确定以N1-N为底数,以i-1为指数的定值,其中i为自然数;
一右移移位寄存器将所述整数次乘方器确定的定值做右移h*i位的移位处理;
一第二加法器将所述右移移位寄存器右移移位处理后的数值送至一乘法器;
所述乘法器将所述第二加法器传送的数值与所述第二常数输入端输入的定值相乘后送至所述第一加法器;及
所述第一加法器将所述第一常数输入端输入的定值与所述乘法器传送的数值相加后输出所述被除数M与所述除数N的商S。
6.如权利要求5所述的实现除法器逻辑电路的方法,其特征在于:所述整数次乘方器与所述右移移位寄存器的个数均为t,其中t为自然数,且每一整数次乘方器均与所述底数输入端相连,所述右移移位寄存器与所述整数次乘方器一一对应连接。
7.如权利要求6所述的实现除法器逻辑电路的方法,其特征在于:所述t个整数次乘方器分别确定以N1-N为底数,依次以0至i-1为指数的定值,且i∈(1,t)。
8.如权利要求6所述的实现除法器逻辑电路的方法,其特征在于:所述t个右移移位寄存器分别将每一对应的整数次乘方器确定的定值做右移移位处理,依次由右移h位至右移h*i位,即可以分别求出以每一整数次乘方器确定的定值作为被除数,N1 i作为除数的数值。
CN201110394378.0A 2011-12-02 2011-12-02 除法器逻辑电路及实现除法器逻辑电路的方法 Active CN102508633B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110394378.0A CN102508633B (zh) 2011-12-02 2011-12-02 除法器逻辑电路及实现除法器逻辑电路的方法
US13/624,819 US8838666B2 (en) 2011-12-02 2012-09-21 Divider logic circuit and implement method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110394378.0A CN102508633B (zh) 2011-12-02 2011-12-02 除法器逻辑电路及实现除法器逻辑电路的方法

Publications (2)

Publication Number Publication Date
CN102508633A CN102508633A (zh) 2012-06-20
CN102508633B true CN102508633B (zh) 2014-10-22

Family

ID=46220727

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110394378.0A Active CN102508633B (zh) 2011-12-02 2011-12-02 除法器逻辑电路及实现除法器逻辑电路的方法

Country Status (2)

Country Link
US (1) US8838666B2 (zh)
CN (1) CN102508633B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113467752B (zh) * 2021-05-31 2022-02-22 深圳致星科技有限公司 用于隐私计算的除法运算装置、数据处理***及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5020017A (en) * 1989-04-10 1991-05-28 Motorola, Inc. Method and apparatus for obtaining the quotient of two numbers within one clock cycle
CN1539102A (zh) * 2001-08-07 2004-10-20 ��˹��ŵ�� 执行除法的方法和装置
CN1961284A (zh) * 2004-06-29 2007-05-09 英特尔公司 使用n位乘加操作实现不变量除数的整数除法的方法和***
CN202720630U (zh) * 2011-12-02 2013-02-06 四川和芯微电子股份有限公司 除法器逻辑电路

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4881193A (en) * 1986-09-04 1989-11-14 Hitachi, Ltd. Rational number operation unit for reduction
US7512648B2 (en) * 2004-12-22 2009-03-31 Intel Corporation Division algorithm

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5020017A (en) * 1989-04-10 1991-05-28 Motorola, Inc. Method and apparatus for obtaining the quotient of two numbers within one clock cycle
CN1539102A (zh) * 2001-08-07 2004-10-20 ��˹��ŵ�� 执行除法的方法和装置
CN1961284A (zh) * 2004-06-29 2007-05-09 英特尔公司 使用n位乘加操作实现不变量除数的整数除法的方法和***
CN202720630U (zh) * 2011-12-02 2013-02-06 四川和芯微电子股份有限公司 除法器逻辑电路

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
朱建银 等.高性能单精度除法器的实现.《微电子学与计算机》.2007,第24卷(第5期),106-108.
高性能单精度除法器的实现;朱建银 等;《微电子学与计算机》;20070531;第24卷(第5期);106-108 *

Also Published As

Publication number Publication date
US20140089372A1 (en) 2014-03-27
US8838666B2 (en) 2014-09-16
CN102508633A (zh) 2012-06-20

Similar Documents

Publication Publication Date Title
CN102722352B (zh) 一种Booth乘法器
CN103176767B (zh) 一种低功耗高吞吐的浮点数乘累加单元的实现方法
WO2016127357A1 (zh) 一种基于fpga的时间数字变换器
CN104111816A (zh) Gpdsp中多功能simd结构浮点融合乘加运算装置
CN1979411A (zh) 一种高速除法器的实现方法与装置
US20140358979A1 (en) GENERATING A FAST 3x MULTIPLAND TERM FOR RADIX-8 BOOTH MULTIPLICATION
CN102231101B (zh) 一种除法器及除法处理方法
CN103901405B (zh) 实时块浮点频域四路脉冲压缩器及其脉冲压缩方法
CN103176948B (zh) 一种低成本的单精度初等函数运算加速器
CN100435088C (zh) 优化的标准带符号数字的系数乘法器
CN102508633B (zh) 除法器逻辑电路及实现除法器逻辑电路的方法
CN102253822B (zh) 一种模(2^n-3)乘法器
CN102999311A (zh) 基于Booth算法的48x30位乘法器
CN202720630U (zh) 除法器逻辑电路
Khan et al. Design of 2× 2 vedic multiplier using GDI technique
Chandu et al. Design and implementation of high efficiency square root circuit using Vedic mathematics
CN103699729B (zh) 模乘法器
CN109885970B (zh) 一种查表数字电路及其处理方法
Gumber et al. Performance analysis of floating point adder using vhdl on reconfigurable hardware
CN108268243B (zh) 一种基于查找的复合域乘法装置
CN102955682B (zh) 一种模(23n-2n)乘法器
CN102929575B (zh) 一种模(2n+3)乘法器
CN102214083B (zh) 余数***的后向转换方法和装置
CN100458452C (zh) 一种电能计量芯片中的数频转换电路
Arnold et al. A serial logarithmic number system ALU

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent for invention or patent application
CB02 Change of applicant information

Address after: 610041 Sichuan city of Chengdu province high tech Zone Kyrgyzstan Road 33 block A No. 9

Applicant after: IPGoal Microelectronics (Sichuan) Co., Ltd.

Address before: 402 room 7, building 610041, incubator Park, hi tech Zone, Sichuan, Chengdu

Applicant before: IPGoal Microelectronics (Sichuan) Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant