掌桥专利:专业的专利平台
掌桥专利
首页

一种除法器及其运用方法、除法运算系统

文献发布时间:2024-04-18 20:01:23


一种除法器及其运用方法、除法运算系统

技术领域

本发明涉及模拟电子技术领域,具体而言,涉及一种除法器及其运用方法、除法运算系统。

背景技术

在常见的整数运算硬件设计中,除法器的设计逻辑最为复杂,其原因在于:除法运算中,商数的每一位都由上一位商数运算的余数和除数共同决定,无法像其他运算一样,可以通过并行运算来提高硬件的频率。目前,可选的除法程序算法之一就是移位相减法。基于移位相减法设计的除法器实现简单、面积小且频率高(可以复用处理器中的减法器,并且运算速度相同);但是,在实际运算过程中,除数可能为变量(例如在两次除法运算中除数由0b1011变为0b0001),则后一次计算得到的商的位宽与被除数的位宽一直,导致基于移位相减法设计的除法器需要多个运算周期才能得到结果,运算速度慢。除此之外,目前也有通过堆积大量运算单元并增加各运算单元的流水线控制逻辑的方式来设计除法器,实现在一个周期内进行多位的除法运算,以提升除法器的运算速度;但是,此类除法器的面积大且功耗高。

发明内容

本发明的目的在于提供一种除法器及其运用方法、除法运算系统,解决现有的除法运算器需进行多次迭代运算,导致除法器的运算速度低的问题。

本发明通过下述技术方案实现:

第一方面,提供一种除法器,所述除法器用于执行被除数为

进一步的,所述移位运算模块包括:

进一步的,所述移位运算子单元包括:第一商全加器

进一步的,所述第一商全加器

所述第二商全加器

进一步的,所述移位运算子单元包括:第一商全加器

进一步的,所述第一商全加器

第二方面,提供一种除法运算系统,包括:商累加项生成模块、余数累加项生成模块、商累加项输入模块、余数累加项输入模块和如第一方面所述的一种除法器;所述商累加项生成模块用于对所述被除数进行

进一步的,所述商累加项生成模块包括:

进一步的,所述除法运算系统还包括:延迟计算模块;所述延迟计算模块连接所述除法器;所述延迟计算模块用于计算获得所述除法器的计算延迟。

第三方面,提供一种如第一方面所述的一种除法器的运用方法,包括以下步骤:判断除数的二进制数

本发明与现有技术相比,具有如下的优点和有益效果:

1、相较于基于移位相减法的除法运算器在执行除法运算过程中需要进行多次迭代运算,本发明采用多个移位运算模块分别对被除数进行移位运算,再利用加法运算模块将各个移位运算模块的运算结果进行累加,最终得出除法运算结果,通过并行运算可大幅提高除法器的运算速度。

2、采用了硬件乘法中的Wallace tree结构对移位运算模块的内部结构进行改进,可快速减少累加项的个数,缩减除法器的芯片占用面积,减小除法器的整体功耗,达到运算速度、芯片面积和功率消耗之间的平衡。

附图说明

为了更清楚地说明本发明示例性实施方式的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的n位二进制被除数除以3的移位运算逻辑示意图;

图2为本发明实施例提供的10位二进制被除数除以3的移位运算逻辑示意图;

图3为本发明实施例提供的基于Wallace tree结构的移位运算逻辑示意图;

图4为本发明实施例提供的第一种移位运算子单元的运算逻辑示意图;

图5为本发明实施例提供的第一种移位运算子单元的内部结构示意图;

图6为本发明实施例提供的第二种移位运算子单元的运算逻辑示意图;

图7为本发明实施例提供的第二种移位运算子单元的运算逻辑示意图。

实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。

实施例:由于现有的除法器大多基于移位相减算法设计,通过多次迭代运算得到最终的除法运算结果,但该类除法器的运算速度交底,另一类除法器则通过堆积大量运算单元的方式来提升运算速度,但此类除法器会占用较大的芯片面积。为解决上述问题,本实施例的目的在于提供一种除法器,可实现提升除法运算速度的同时降低其芯片占用面积。该除法器主要用于执行被除数为

首先对本除法器的实现原理做如下说明:

一方面,对于任一奇数

基于上述原理,本实施例提供的一种除法器由加法运算模块和和m个移位运算模块组成。其中,移位运算模块用于对被除数做移位运算,输出移位运算结果至加法运算模块,加法运算模块用于当m≥3时,对m个所述移位运算模块的运算结果做加法运算,输出最终的除法运算结果;当m=1时,直接输出最终的除法运算结果。

结合式(4),为实现对括号内各项中的被除数

以下结合图1和图2对移位运算的基本原理进行说明。

如图1所示,以

步骤1:对

步骤2:对各项商累加项进行累加,得到商累加结果

由于对于余数累加结果

步骤2.1:对余数累加结果

步骤2.2:将步骤2.1获得的各商累加项以及步骤2得到的商累加结果

由于

步骤3:若

如图2所示,以10位二进制的被除数

步骤1:获取

步骤2:对步骤1的各项商累加项做累加运算,对步骤1的各项余数累加项做累加运算。

由于步骤1的各项余数累加项的累加运算结果为1001(十进制数5>3),为4位二进制数,因此需要对余数累加结果1001进行处理。

步骤2.1:获取1001的商累加项(10),获取1001的余数累加项(10、01)。

步骤2.2:将商累加项(10)与步骤2计算获得的商累计结果进行累加;将余数累加项(10、01)进行累加,余数累加结果为011,仍然>2位,继续按照步骤2.1和步骤2.2所述方式对011进行处理,最终得到2位余数累加结果11。

步骤3:在不在2.2计算得到的商累加项的基础上+1,得到最终的商累加结果100100010,余数为0。

为方便理解,以上过程将累加的结果的每一步都计算出来再进行后续的操作。其运算的逻辑框图及运算过程如图3所示。图3所示的运算过程参考了乘法运算中的Wallacetree,逐步缩小累加项,直至仅剩最后两个累加项时,再进行最后的加法。

以下结合图4,对图3所示的运算逻辑进行举例说明。图4中,+W一级wallace tree的3 to 2运算逻辑,延迟相当于1-bit的全加器的延迟,+表示二进制加法运算,+.表示两个加数的加法运算结果做2

以10位二进制的被除数

步骤1:获取

步骤2:对商累加项

需说明的是:第一,根据上述移位运算的基本原理,需要对获取的各项商累加项进行累加,由于本实施例采用乘法运算中Wallace tree结构的3 to 2运算逻辑,因此第一次仅对前三项商累加项做累加运算;第二,由于Wallace tree加法采用进位保存,它能同时执行三数相加而非两数相加,其输入为三个数,其输出由累加和与进位数组成;图4中,商累加结果

步骤3:对余数项

需说明的是:第一,将相同位的三个数(

步骤4:将步骤2计算得到的商累加结果

需说明的是,由于本次累加运算中剩余的商累加项为

步骤5:将步骤3计算得到的余数累加结果

步骤6:将步骤4计算得到的商累加项

步骤7:将步骤5计算得到的余数累加结果

步骤8:将步骤6计算得到商累加结果

步骤9:将步骤7计算得到的余数累加结果

步骤10:将步骤8计算得到的商累加结果

步骤11:对步骤10计算得到的商累加结果

步骤12:判断

当商的累加项运算经过多步Wallace tree收敛(包含余数累加结果送来的修正值)之后,只剩下最后两个操作数。完成一次加法后,最终算出的商为

结合图3和图4所示的运算逻辑,相应的,本实施例的移位运算子单元的基本组成如图5所示,包括第一商全加器

其中,第一商全加器

为减少运算步骤,对于余数累加项,如果仅有两个2位二进制数做加法运算时,可以直接将计算出来的结果用除2

对此,本实施例对移位运算子单元的内部组成结果进行改进。如图6所示,同样以10位二进制的被除数

进一步地,将

当商的累加项运算经过多步Wallace tree收敛(包含余数累加结果送来的修正值)之后,只剩下最后两个操作数。完成一次加法后,最终算出的商为

相应的,本实施例的第二中移位运算子单元的基本组成如图7所示,包括第一商全加器

其中,第一商全加器

综上所述,本实施例提供的一种除法运算器相较于基于移位相减法的除法运算器在执行除法运算过程中需要进行多次迭代运算,本发明采用多个移位运算模块分别对被除数进行移位运算,再利用加法运算模块将各个移位运算模块的运算结果进行累加,最终得出除法运算结果,通过并行运算可大幅提高除法器的运算速度。在此基础上,采用了硬件乘法中的Wallace tree结构对移位运算模块的内部结构进行改进,可快速减少累加项的个数,缩减除法器的芯片占用面积,减小除法器的整体功耗,达到运算速度、芯片面积和功率消耗之间的平衡。

如本实施例开头所述,该除法器主要用于执行被除数为

除此之外,本实施例还提供一种除法运算系统,包括:商累加项生成模块、余数累加项生成模块、商累加项输入模块、余数累加项输入模块和本实施例提供的上述除法器。其中,商累加项生成模块用于对被除数进行

进一步的,所商累加项生成模块包括:

进一步的,除法运算系统还包括:延迟计算模块;延迟计算模块连接所述除法器;延迟计算模块用于计算获得所述除法器的计算延迟。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术分类

06120116551355