CN2847379Y - 一种快速除法器 - Google Patents

一种快速除法器 Download PDF

Info

Publication number
CN2847379Y
CN2847379Y CN 200520045006 CN200520045006U CN2847379Y CN 2847379 Y CN2847379 Y CN 2847379Y CN 200520045006 CN200520045006 CN 200520045006 CN 200520045006 U CN200520045006 U CN 200520045006U CN 2847379 Y CN2847379 Y CN 2847379Y
Authority
CN
China
Prior art keywords
unit
input
output
merchant
multiplier
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.)
Expired - Fee Related
Application number
CN 200520045006
Other languages
English (en)
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.)
Central Academy of SVA Group Co Ltd
Original Assignee
Central Academy of SVA Group 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 Central Academy of SVA Group Co Ltd filed Critical Central Academy of SVA Group Co Ltd
Priority to CN 200520045006 priority Critical patent/CN2847379Y/zh
Application granted granted Critical
Publication of CN2847379Y publication Critical patent/CN2847379Y/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

本实用新型涉及一种除法器,其包含:依次电路连接的规格化单元,第一级乘法器单元,第二级乘法器单元,商截位单元;且规格化单元和第二级乘法器单元之间还连接一查表单元;规格化单元还有一输出连接商截位单元的输入;其在集成电路(以及与之相关的可编程逻辑器件)的算法程序中被采用,以处理数学运算中的除法操作。其结构简单,使用的元器件少,且运算速度快。

Description

一种快速除法器
技术领域
本实用新型涉及一种除法器,具体地说,是涉及一种可应用在数字图像处理、数字信号处理、通讯等领域的集成电路算法程序中的快速除法器。
背景技术
在数字信号处理、通讯,和图像处理过程中,经常会用到除法运算。在实现除法运算的大多数程序中,由于相对应的处理器没有除法运算单元,使得编译器需要调用事先设计好的算法库才能实现。其缺点是执行时间长,在实时系统等特定的场合下不宜有效运行。在集成电路和可编程逻辑器件的算法设计中,现有芯片中并没有实现除法功能的芯片,在硬件描述语言中也没有可综合的除法语句,EDA提供商Synopsys和Cadence等公司没有提供相应的设计库。Xinlix等可编程逻辑器件设计厂商提供了除法器IP,但是不宜于移植,且具有资源消耗过大,运算时间太长等缺点。
中国专利申请号为95107302提供了一种无需硬件的二位元除法运算方法与装置,该方法与装置采用二进制的位移及加法的技巧以减化除法的运算过程,但它是以微处理器为运算平台,由指令实现的除法运算;中国专利申请号为89106625采用了二级运算构成的冗余码与地区性混合使用的冗余码加法单元组成除法阵列,并采用二选一的选择器构成将冗余码的商直接转换成二进制形式的阵列转换电路,其电路结构较复杂;美国专利5485414公开的电路中包括有乘法运算单元,电路结构也较复杂。这些专利的共同缺点是结构复杂,使用元器件较多,且运算速度慢,无法满足在数字电路中的一些特定应用。
实用新型内容
本实用新型的目的在于提供一种除法器,其在集成电路(以及与之相关的可编程逻辑器件)的算法程序中被采用,以处理数学运算中的除法操作。其结构简单,使用的元器件少,且运算速度快。
为达到上述目的,本实用新型提供的除法器,其包含:
依次电路连接的规格化单元,第一级乘法器单元,第二级乘法器单元,商截位单元;且规格化单元和第二级乘法器单元之间还连接一查表单元;规格化单元还有一输出连接商截位单元的输入;
规格化单元根据输入的有效信号标明的被除数(X)和除数(Y),输出使能信号和该乘法器的被乘数和乘数至第一级乘法器单元;输出移位参考信号至商截位单元;并输出查表地址至查表单元相应的查表地址;
规格化单元的具体设计需要对被除数和除数分别进行,方法是:当输入的操作有效时,被除数和除数将分别向左移位直至最高位为1,并记下最终的结果(x,y)和所移位的位数(Ex,Ey)。然后对将x、y、Ex以及Ey进行下一步的运算:x作为输入到第一级乘法器单元的被乘数输出;取y的高6位,减去剩余的低位数据,作为输入到第一级乘法器单元的乘数输出;取y的高6位作为输入到查表单元相应的查表地址;输入到截位单元的移位参考信号则是Ex和Ey之差;
为了支持流水线作业,上述操作在一个时钟周期内完成,即根据当前输入的有效信号,该单元输出的使能信号相应的延迟一个时钟周期,得到输入到第一级乘法器单元的使能信号。
第一级乘法器单元根据规格化单元的输出的使能信号,对规格化单元输出的被乘数和乘数进行乘法运算,然后将结果输入到第二级乘法器单元;此外,还向第二级乘法器单元发出使能信号;
为了支持流水线作业,上述操作在一个时钟周期内完成,因此输入到第二级乘法器单元的使能信号,在输入有效信号有效后的下一时钟输出,以使能第二级乘法器单元。
由于绝大多数的处理器中均集成了乘法单元,所以算法程序中使用乘法运算无需调用库函数,可以直接进行运算;在集成电路(以及与之相关的可编程逻辑器件)设计中,EDA提供商,也都提供了可方便实用、可移植的IP可使用。所以乘法器单元的设计不属于本设计之列。
查表单元根据规格化单元输出查表单元相应的查表地址,将事先存放在其中的数据取出,输出到第二级乘法器单元,已完成第三级运算。
查表单元中存放的是运算过程中需要的一个表,其格式为32个12比特的数据组成,其数据由预先运算得出。由于该表共384个位单元,所以根据实际需要可将之作成ROM或者有纯组合逻辑电路实现。
表中的数据是根据优化后的Taylor级数展开对除数的倒数取一个近似值,表输出的结果是作为一个12比特的纯小数计算。
上述操作在一个时钟周期内完成,要求查表单元采用寄存器方式输出。
第二级乘法器单元根据第一级乘法器单元发出使能信号,将由第一级乘法器单元输出的数据作为被乘数,查表得出的数据作为乘数,进行运算得出最终的输出。
为了支持流水线作业,上述操作在一个时钟周期内完成,因此输入到商截位单元的使能信号,在输入有效信号有效后的下一时钟输出,以使能截位单元。
第二级乘法器单元的设计和第一级乘法器单元的设计基本一致。
商截位单元根据规格化单元输出的移位参考信号,将第二级乘法器单元的输出进行格式化,得到商的整数部分和小数部分。
商截位单元的设计完全是根据输入的移位参考信号判断得出。由于商截位单元的复杂度较低,所以在实际应用中,可以和其他逻辑电路混合使用,从而使该除法器可以在3个时钟周期内完成运算。
上述操作在一个时钟周期内完成,因此输出的商有效信号,在输入有效信号后的下一时钟输出。为了进行流水线作业,根据当前输入的有效信号该单元输出的商有效信号相应的延迟一个时钟周期。
以上可以看出,利用本实用新型进行算法运算,从原始数据输入到输出至少需4个时钟周期。
利用本实用新型后,设被除数为M比特的操作数,除数为N比特的操作数,商为K比特。由于受查表数据对结果精确度的影响,这里的K建议最大为10比特,这样商的值域绝对值区间为[0,256.75],最后1位是误差位,即商的总位宽为10比特,误差为最后一个单元位。当商大于1时整数位最多取8比特,误差为1/4;当商小于1时小数位可以取到小数点后10比特,误差为1/1024;以此类推。
本实用新型不需要进行传统的循环移位运算,使得运算过程更加容易控制,流程更加简洁。
本实用新型的运算耗时少,单个除法运算最快可以在4个时钟周期内完成。
另外,本实用新型还支持流水线操作,当被除数和除数随着时钟连续输入,则可以由内部机制形成流水线执行方式,即假定有H组数据需要连续地进行除法运算,则数据的平均运算时间为(H+3)/H个时钟。其支持浮点数,即输入的被除数和除数可以是浮点数。只要是正数,数据格式不受限制。可以判断当除数为0时,输出的商为可行的最大值。由于整个除法器是完全可控的,因此,具体的输出结果还可以根据实际需要作出相应的调整。
附图说明
图1是本实用新型的电路方框示意图;
图2是本实用新型的单个数据输入(寄存器在时钟上升沿触发)时序图;
图3是本实用新型连续数据输入,形成的流水线形式(寄存器在时钟上升沿触发)的时序图。
具体实施方式
以下根据图1到图3,说明本实用新型的一较佳实施方式。
如图1所示,为本实用新型的电路方框示意图;
本实用新型提供的除法器,其包含:
依次电路连接的规格化单元1,第一级乘法器单元2,第二级乘法器单元3,商截位单元4;且规格化单元1和第二级乘法器单元3之间还连接一查表单元5;规格化单元1还有一输出连接商截位单元4的输入;
规格化单元1根据输入的有效信号标明的被除数(X)和除数(Y),输出使能信号和该乘法器的被乘数和乘数至第一级乘法器单元2;并输出移位参考信号至商截位单元4;并输出查表地址至查表单元5相应的查表地址;
规格化单元1的具体设计需要对被除数和除数分别进行,方法是:当输入的操作有效时,被除数和除数将分别向左移位直至最高位为1,并记下最终的结果(x,y)和所移位的位数(Ex,Ey)。然后对将x、y、Ex以及Ey进行下一步的运算:x作为输入到第一级乘法器单元2的被乘数输出;取y的高6位,减去剩余的低位数据,作为输入到第一级乘法器单元2的乘数输出;取y的高6位作为输入到查表单元5相应的查表地址;输入到截位单元4的移位参考信号则是Ex和Ey之差;
为了支持流水线作业,上述操作在一个时钟周期内完成,即根据当前输入的有效信号,该单元输出的使能信号相应的延迟一个时钟周期,得到输入到第一级乘法器单元2的使能信号。
第一级乘法器单元2根据规格化单元1的输出的使能信号,对规格化单元1输出的被乘数和乘数进行乘法运算,取其结果的最高的20位输出,输入到第二级乘法器单元3;此外,还向第二级乘法器单元3发出使能信号;
为了支持流水线作业,上述操作在一个时钟周期内完成,因此输入到第二级乘法器单元3的使能信号,在输入有效信号有效后的下一时钟输出,以使能第二级乘法器单元3。
由于绝大多数的处理器中均集成了乘法单元,所以算法程序中使用乘法运算无需调用库函数,可以直接进行运算;在集成电路(以及与之相关的可编程逻辑器件)设计中,EDA提供商,也都提供了可方便实用、可移植的IP可使用。所以乘法器单元的设计不属于本设计之列。
查表单元5根据规格化单元1输出查表单元相应的查表地址,将事先存放在其中的数据取出,输出到第二级乘法器单元3,已完成第三级运算。
查表单元5中存放的是运算过程中需要的一个表,其格式为32个12比特的数据组成,其数据运算得出。由于该表共384个位单元,所以根据实际需要可将之作成ROM或者有纯组合逻辑电路实现。
表中的数据是根据优化后的Taylor级数展开对除数的倒数取一个近似值,表输出的结果是作为一个12比特的纯小数计算。
上述操作在一个时钟周期内完成,要求查表单元5采用寄存器方式输出。
第二级乘法器单元3根据第一级乘法器单元2发出使能信号,将由第一级乘法器单元3输出的数据作为被乘数,查表得出的数据作为乘数,进行运算得出最终的输出。
为了支持流水线作业,上述操作在一个时钟周期内完成,因此输入到商截位单元4的使能信号,在输入有效信号有效后的下一时钟输出,以使能截位单元4。
第二级乘法器单元3的设计和第一级乘法器单元2的设计基本一致。
商截位单元4的功能是根据规格化单元1输出的移位参考信号,将第二级乘法器单元3的输出进行格式化,得到商的整数部分和小数部分。
商截位单元4的设计完全是根据输入的移位参考信号判断得出。由于商截位单元4的复杂度较低,所以在实际应用中,可以和其他逻辑电路混合使用,从而使该除法器可以在3个时钟周期内完成运算。
上述操作在一个时钟周期内完成,因此输出的商有效信号,在输入有效信号后的下一时钟输出。为了进行流水线作业,根据当前输入的有效信号该单元输出的商有效信号相应的延迟一个时钟周期。
以上可以看出,利用本实用新型进行算法运算,从原始数据输入到输出至少需4个时钟周期。
如图2所示,是本实用新型的单个数据输入(寄存器在时钟上升沿触发)时序图,包括时钟信号、数据有效信号(当前输入的被除数、除数有效)、第一级乘法使能(第一级乘法阶段)、第二级乘法使能(第二级乘法阶段)、商截取使能(商截取阶段)、被除数(X)、除数(Y)、商(Q)以及商有效信号(当前输出的商有效)等。当数据有效信号为高,表明当前输入的被除数(X)、除数(Y)有效,系统依次进入规格化、第一级乘法和查表、第二级乘法和商截取等4个阶段,从而完成除法运算,输出“商”(Q),仅耗时4个时钟周期。Xilinx提供的IP在完成一次32位数据除以16位数据,需要26个时钟周期,与其相比该设计具有节省大量时间的优点。
如图3所示,是本实用新型连续数据输入,形成的流水线形式(寄存器在时钟上升沿触发)的时序图。其信号和图2相同。但是当连续N个有效数据输入(如被除数X1和X2、除数Y1和Y2)时,即形成流水线形式,对应的“商”(Q1和Q2)在相应输入的4个时钟周期后连续输出,平均每个运算耗时(N+3)/N个时钟周期,与非流水线形式的运算相比,效率更高,速度更快。
以下,以被除数最大为20比特,除数最大为10比特的实施例,进一步说明本实用新型。
根据本实用新型,在FPGA上实现一个20位除10位的除法器,并进行仿真。在本实施例中被除数X为9.EF45(十六进制),即1001.1110 1111 01000101(二进制),除数Y为1F.38(十六进制),即1 1111.0011 1000(二进制)。所得商Q为0.514(十六进制),即0.0101 0001 01(二进制)。而在计算机中直接计算X/Y,对商取12位,则商为0.517(十六进制),即0.0101 0001 0111。在本实施例中本实用新型所得的结果在前10位与计算机所得结果相同。
在另一实施例中取X为E916,Y取EA,则由本实用新型的除法器所得的商为FE.C,而由计算机直接计算所得的结果为FF.0,误差为1/4,即商的最后1位。
从以上可以看出,本实用新型的除法器,结构简单,所用的元器件少,且计算精确,计算速度快。

Claims (1)

1.一种除法器,其特征在于,包含:
依次电路连接的规格化单元,第一级乘法器单元,第二级乘法器单元,商截位单元;且规格化单元和第二级乘法器单元之间还连接一查表单元;规格化单元还有一输出连接商截位单元的输入。
CN 200520045006 2005-09-14 2005-09-14 一种快速除法器 Expired - Fee Related CN2847379Y (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200520045006 CN2847379Y (zh) 2005-09-14 2005-09-14 一种快速除法器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200520045006 CN2847379Y (zh) 2005-09-14 2005-09-14 一种快速除法器

Publications (1)

Publication Number Publication Date
CN2847379Y true CN2847379Y (zh) 2006-12-13

Family

ID=37512802

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200520045006 Expired - Fee Related CN2847379Y (zh) 2005-09-14 2005-09-14 一种快速除法器

Country Status (1)

Country Link
CN (1) CN2847379Y (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595146A (zh) * 2017-12-29 2018-09-28 珠海市杰理科技股份有限公司 除法运算方法、装置及设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108595146A (zh) * 2017-12-29 2018-09-28 珠海市杰理科技股份有限公司 除法运算方法、装置及设备
CN108595146B (zh) * 2017-12-29 2020-10-27 珠海市杰理科技股份有限公司 除法运算方法、装置及设备

Similar Documents

Publication Publication Date Title
CN109828744B (zh) 一种基于fpga的可配置浮点向量乘法ip核
CN102629189B (zh) 基于fpga的流水浮点乘累加方法
CN102103479B (zh) 浮点运算器及浮点运算的处理方法
US20140067889A1 (en) Datapath circuit for digital signal processors
CN106126189A (zh) 微处理器中的方法
CN101650642B (zh) 基于补码舍入的浮点加法装置
CN101630243B (zh) 超越函数装置以及用该装置实现超越函数的方法
CN1740962A (zh) 一种快速流水线型除法器
CN101739231A (zh) 布斯-华莱士树型乘法器
CN103984522B (zh) Gpdsp中定点和浮点混合除法的实现方法
CN1731345A (zh) 可扩展高基蒙哥马利模乘算法及其电路结构
CN105335127A (zh) Gpdsp中支持浮点除法的标量运算单元结构
CN107544942A (zh) 一种快速傅里叶变换的vlsi设计方法
CN103135960A (zh) 一种基于fpga的集成浮点运算器的设计方法
CN2847379Y (zh) 一种快速除法器
CN107092462B (zh) 一种基于fpga的64位异步乘法器
Ide et al. A 320 MFLOPS CMOS floating-point processing unit for superscalar processors
Daud et al. Hybrid modified booth encoded algorithm-carry save adder fast multiplier
CN202281998U (zh) 一种标量浮点运算加速器
US20100023569A1 (en) Method for computerized arithmetic operations
CN103699729B (zh) 模乘法器
CN102693118A (zh) 一种标量浮点运算加速器
Hsiao et al. Design of a low-cost floating-point programmable vertex processor for mobile graphics applications based on hybrid number system
Boroumand et al. Approximate Adder Tree Synthesis for FPGAs
Moon et al. An area-efficient standard-cell floating-point unit design for a processing-in-memory system

Legal Events

Date Code Title Description
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20061213

Termination date: 20110914