【技术实现步骤摘要】
一种不恢复余数的除法器
本专利技术属于集成电路设计中的运算部件设计领域,尤其涉及一种基于不恢复余数的多功能定点除法器。
技术介绍
基本的运算包括加、减、乘与除四种,以硬件分别为加/减法器、乘法器、除法器来实现其运算。一般来说,加/减法器运行运算步骤为1~4运算步骤,乘法器运行的运算步骤为2~8个,而除法操作则为8个运算步骤到60个运算步骤不等,甚至更多。除法一般用得较少,优先级常常被设置成较低,但是研究表明,如果忽视除法操作的实现,在某些应用中会造成显著的性能降低。实现除法的复杂度高于加减乘法,其中一种原因是可以供选择的除法算法以及硬件实现方式上较多,而具体设计一个除法器,则应该根据处理器的定位及其需要来定。RNS(RedundantNumberSystem)是指数的冗余表示形式,冗余是指用于表示每一位的数值的个数大于数值的基数。对一般非冗余数值表示方式来说,数值个数是等于基数的。就比如表示一个十进制数,用的数值为0~9十个数,即数值个数是与基数十同样多的。而用三个数值表示一个二进制数,即是一种冗余表示法。例如,用三数值1、0、1(表示-1)来表示二进制,那么01 ...
【技术保护点】
一种不恢复余数的除法器,其包括:数据预处理模块,其用于对外部输入数据做预处理,并输出值数据运算模块;数据运算模块,其用于根据外部输入数据做不恢复余数除法中的加减迭代运算,得到部分余数结果和部分商结果,并在余数修正阶段与商修正阶段对所述部分余数结果和部分商结果进行修正,然后输出余数结果、修正后的余数结果、商结果和修整后的商结果;数据输出模块,其用于根据控制模块输出的控制信号选择余数结果与修正后的余数结果之一和商结果与修正后的商结果之一输出;控制模块,其用于输出控制信号,以控制其他模块进行相应的数据处理和数据输出。
【技术特征摘要】
1.一种不恢复余数的除法器,其包括:数据预处理模块,其用于对外部输入数据做预处理,并输出至数据运算模块;数据运算模块,其用于根据外部输入数据做不恢复余数除法中的加减迭代运算,得到部分余数结果和部分商结果,并在余数修正阶段与商修正阶段对所述部分余数结果和部分商结果进行修正,然后输出余数结果、修正后的余数结果、商结果和修正后的商结果;数据输出模块,其用于根据控制模块输出的控制信号选择余数结果与修正后的余数结果之一和商结果与修正后的商结果之一输出;控制模块,其用于输出控制信号,以控制其他模块进行相应的数据处理和数据输出;其中,所述控制模块根据部分商符号、部分余数符号、除数符号、数据类型标志信号、用部分余数是否为0及其未经过修正的部分商是否为0来判断生成余数修正使能信号;根据部分商的符号、除数符号、修正后的余数是否为0标志生成商修正使能信号;所述数据输出模块用于根据所述余数修正使能信号选择输出余数结果或修正后的余数结果,并根据所述商修正使能信号选择输出商结果或修正后的商结果。2.如权利要求1所述的除法器,其特征在于,所述数据预处理模块包括输入数处理模块和多路选通器,所述输入数处理模块用于接收外部输入数据和内部循环输出数据,所述多路选通器用于根据从控制模块接收到的控制指令,选通输出相应的数据。3.如权利要求1所述的除法器,其特征在于,数据运算模块包括多个运算器,每个运算器包括加法器、移位器和数据校验器;其中,所述移位器用于得到相应倍数的除数;所述加法器用于对相应地部分被除数和相应倍数的除数做加减运算得到部分余数数据;所述数据校验器用于根据所得到的部分余数数据和除数的相加减结果输出相应信号给控制模块,控制模块根据该信号输出余数修正使能控制信号。4.如权利要求1所述的除法器,其特征在于,所述数据输出模块包括商位计算模块、运算结果后处理模块以及多路输出选通器;其中,所述商位计算模块用于计算每次循环所上的商位以及AQ标志位,所述AQ标志位输出至控制模块,控制模块根据所述AQ标志位生成控制所述数据运算模块进行相应计算的控制信号;所述运算结果后处理模块用于根据所述数据运算模块、数据预处理模块和商位计算模块的输出处理得到下次内部循环数据、商结果、修正后的商结果、余数结果和修正后的余数结果;所述多路输出选通器根据控制模块的控制指令选择输出经运算结果后处理模块处理后的数据。5.如权利要求1所述的除法器,其特征在于,所述控制模块用于对外部除法指令进行译码而生成内部译码后的信号以用于控制其他模块的操作。6.如权利要求5所述的除法器,其特征在于,所...
【专利技术属性】
技术研发人员:林玻,肖偌舟,王东琳,王惠娟,张志伟,
申请(专利权)人:中国科学院自动化研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。