[发明专利]一种快速除法器和除法运算方法有效
申请号: | 201911242077.9 | 申请日: | 2019-12-06 |
公开(公告)号: | CN111104092B | 公开(公告)日: | 2022-10-11 |
发明(设计)人: | 马贵霞;柳会鹏 | 申请(专利权)人: | 北京多思安全芯片科技有限公司 |
主分类号: | G06F7/496 | 分类号: | G06F7/496 |
代理公司: | 北京市隆安律师事务所 11323 | 代理人: | 付建军 |
地址: | 100195 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 快速 法器 除法 运算 方法 | ||
本发明公开了一种快速除法器和除法运算方法,所述快速除法器包括有效位扫描模块和运算模块,所述运算模块包括除数倍数预判单元、减法单元、商生成单元和余数生成单元;所述有效位扫描模块,用于扫描并确定除数和被除数的有效位,并确定初始余数及迭代减法的次数;所述除数倍数预判单元,用于确定用于每次迭代运算的除数倍数;所述减法单元,用于实现初始余数或新余数与除数的N倍进行减法迭代运算;所述余数生成单元,用于将被除数的未处理的最高的i位二进制数对所述差值进行补位生成新余数;所述商生成单元,用于确定每次迭代的商,最终商由各次迭代的商按照迭代顺序组合生成。上述方案通过确定有效位,能够减少减法迭代运算次数,并且通过选择与合理的除数倍数比较进行迭代商的预判,从而减少减法器数量减小了运算的规模,提高了运算的速度。
技术领域
本发明涉及芯片技术领域,具体涉及一种快速除法器和除法运算方法。
背景技术
目前传统的芯片做整数除法多采用从被除数中补位恢复余数的方式,它是一种模拟人工实现除法计算的方法,通过多次循环相减实现除法运算,具体通过余数(被除数)二进制位、除数二进制位之间的运算关系,决定商值。上述算法中决定运算速度的是每一次商的位数,但是随着商位数的增加,除法运算所使用的硬件资源也会成倍的增加。在当今大数据云计算时代无论是对运算规格还是运算速度的要求都在提高,因此,如何提高整数除法运算的速度并减少对硬件资源的占用是当前一个急需解决的问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种快速除法器和除法运算方法。
依据本发明的一个方面,提供了一种快速除法器,所述快速除法器包括有效位扫描模块和运算模块,所述运算模块包括除数倍数预判单元、减法单元、余数生成单元和商生成单元;
所述有效位扫描模块,用于扫描并确定除数和被除数的有效位,并确定初始余数及迭代减法的次数;
所述除数倍数预判单元,用于根据有效位扫描结果,通过余数和除数倍数比较操作,确定用于每次迭代运算的除数倍数;
所述减法单元,用于实现初始余数或新余数与除数的N倍进行减法迭代运算;
所述余数生成单元,用于获取所述减法迭代运算的差值,将被除数的未处理的最高的i位二进制数对所述差值进行补位生成新余数,且所述新余数最大值不大于2的i次方倍除数;
所述商生成单元,用于确定除数的N倍的i位二进制数作为每次迭代的商,最终商由各次迭代的商按照迭代顺序组合生成。
可选的,有效位扫描模块按照i的整数倍对被除数和除数进行分组进行扫描,获得的所述被除数和除数的有效位的位数为i的整数倍。
可选的,所述减法单元包括k个减法器,各所述减法器实现分组减法迭代运算,其中k根据i位二进制的最大整数值确定。
可选的,所述i取值为4,所述k取值为5。
可选的,所述减法单元包括k个存储器,各所述存储器用于存储减法迭代运算的运算结果。
依据本发明的另一个方面,提供了一种除法运算方法,所述方法包括:
扫描并确定除数和被除数的有效位,并确定初始余数及迭代减法的次数;
根据有效位扫描结果,通过余数和除数倍数比较操作,确定用于每次迭代运算的除数倍数;
实现初始余数或新余数与除数的N倍进行减法迭代运算;
获取所述减法迭代运算的差值,将被除数的未处理的最高的i位二进制数对所述差值进行补位生成新余数,且所述新余数最大值不大于2的i次方倍除数;
确定除数的N倍的i位二进制数作为每次迭代的商,最终商由各次迭代的商按照迭代顺序组合生成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京多思安全芯片科技有限公司,未经北京多思安全芯片科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911242077.9/2.html,转载请声明来源钻瓜专利网。