一种16×16‑digit冗余十进制乘法器制造技术

技术编号:16700447 阅读:68 留言:0更新日期:2017-12-02 12:42
本发明专利技术提供了一种16×16‑digit冗余十进制乘法器,基于ODDS的部分积压缩模块包括二进制部分积压缩树方块、ODDS×6计数器方块、ODDS部分积压缩纠错方块和专用十进制数3:2压缩方块。ODDS×6计数器方块将二进制部分积压缩过程中产生的所有十进制进位进行4‑bit ODDS×6计数操作,其结果为ODDS纠错字。本发明专利技术采用4‑bit ODDS×6计数器对十进制进位进行分组计数×6操作,因此可以合并二进制部分积压缩的ODDS数并采用先产生的计数结果先压缩的原则对部分积进行压缩,可以有效地降低十进制乘法器部分积压缩模块的延时。

A 16 * 16 digit redundant decimal multiplier

The invention provides a 16 x 16 digit redundant decimal multiplier, ODDS partial product compression module includes a binary tree box, shrinking part of the backlog of ODDS * 6 counter box, ODDS box and partial product compression correction special decimal 3:2 compression based on block. ODDS * 6 counter blocks all binary decimal carry partial product generation in the process of compression of 4 bit * 6 ODDS counting operation, the result is ODDS correct words. The invention adopts 4 bit ODDS * 6 * 6 packet count counter operation on decimal carry can be combined, so the number of binary ODDS product compression and use the count to generate results first principle of compression to compress the partial product, can effectively reduce the decimal multiplication for delay product compression module.

【技术实现步骤摘要】
一种16×16-digit冗余十进制乘法器
本专利技术属于数字集成电路领域,尤其涉及一种应用于高性能十进制乘法器的部分积压缩模块。
技术介绍
十进制算术运算是人类计算的规范,计算机反映和取代了金融和科学中的手工计算,这些计算几乎都是十进制的算术运算。阿拉伯数字系统即十进制运算系统曾被应用在最早的计算机器中,许多早期的电子计算机都使用了十进制运算,有的甚至还使用了十进制的寻址方式。在冯·诺依曼体系结构被提出后,由于二进制运算速度快和电路实现更为简单等优点,在计算机中采用了二进制的运算方法,目前微处理器中的浮点运算单元一般都是基于二进制系统而不是十进制系统。尽管二进制算术运算被广泛应用于微处理器,数字信号处理器,但十进制小数计算普遍存在于计算机用户的各种运算当中,由于二进制与十进制的转换过程中不可避免地存在误差和舍入(例如,值为0.1的十进制小数在采用二进制表示将转换为无限循环的二进制数),无法满足商业计算、金融分析、税率计算、会计、保险等领域对十进制算术运算的精度要求。2008年发行的IEEE754标准修订版本(IEEE754-2008)已经包括了十进制浮点(DecimalFloatingPoint,DFP)单元的十进制64精度(16-digit)和128精度(34-digit)格式和规范,它标志着十进制算术运算硬件单元研究的新突破。目前,一些处理器中已经成功集成专用的十进制浮点算术运算硬件单元(DecimalFloatingPointUnit,DFPU),IBM面向工作站和服务器的Power6、Z系列的微处理器和富士通SparcX微处理器等已经嵌入了符合IEEE754-2008标准的十进制浮点算术运算硬件单元。随着各数据密集型行业的发展,海量数据的十进制处理方式在银行金融、图像压缩、生物医学和医疗等行业领域得到越来越广泛的应用。十进制定点和浮点运算在金融和商业中的重要的作用使得其逐步成为了计算机体系结构中研究的热点。十进制乘法运算主要包括十进制部分积产生、十进制部分积压缩和十进制最终积产生三个模块。十进制乘法器作为十进制浮点乘加运算单元的重要组成部分,其性能将直接影响十进制浮点运算单元的整体性能。因此深入研究十进制乘法器的原理和硬件结构,设计高性能并行十进制乘法器具有重要的意义。冗余十进制编码格式被用于设计高性能十进制乘法器。基于ODDS部分积阵列的部分积压缩模块可以由二进制部分积压缩树方块、ODDS×6计数器方块、ODDS部分积压缩纠错方块和专用十进制数3:2压缩方块构成。因为十进制数的进位规则为“逢10进1”,而4-bit二进制数的进位规则为“逢16进1”,因此必须对二进制部分积压缩和ODDS部分积压缩纠错方块产生的所有十进制进位进行修正。修正的方法为:用计数器对二进制部分积压缩树和ODDS部分积压缩纠错方块产生的所有十进制进位进行计数×6操作,得到纠错行。常用的计数器包括BCD-8421计数器、4221计数器和ODDS计数器,其中9:4BCD-8421计数器包括3个3:2压缩器延时级(1个3:2压缩器包括2个异或门的延时);15-bitODDS计数器包括4个3:2压缩器延时级和一个3位超前进位加法器延时级;本专利技术所专利技术的4-bitODDS×6计数器对8个十进制进位进行计数×6操作时,包括2个4-bitODDS×6计数器,共产生2个ODDS纠错字,关键路径包括1个异或门和2个二选一数据选择器的延时。本专利技术所提出的4-bitODDS×6计数器对二进制部分积压缩树方块和ODDS部分积纠错方块产生的所有十进制进位进行计数×6操作,产生ODDS纠错字,所有列的纠错字组成纠错行,合并二进制部分积压缩的ODDS数并采用先产生的计数结果先压缩的原则对ODDS部分积进行压缩纠错。
技术实现思路
专利技术目的:本专利技术针对多载十进制数字集(overloadeddecimaldigitset,ODDS)部分积压缩模块,提供了一种应用于高性能十进制乘法器的部分积压缩模块,可以有效地降低十进制乘法器部分积压缩模块的延时。技术方案:一种16×16-digit冗余十进制乘法器,包括部分积产生、部分积压缩和最终积产生三个模块;所述部分积产生模块共产生17行ODDS部分积,其中第17行为修正行部分积;所述部分积压缩模块将所述部分积产生模块产生的17行ODDS部分积压缩至两行BCD-8421部分积:A和B;所述最终积产生模块用一个BCD十进制加法器将A和B相加得到32-digit的BCD-8421最终积P;所述部分积压缩模块包括17:3ODDS部分积压缩模块及专用十进制数3:2压缩方块;所述17:3ODDS部分积压缩模块包括17:2二进制部分积压缩树方块、ODDS×6计数器方块和7:3ODDS部分积压缩纠错方块;所述ODDS×6计数器方块将二进制部分积压缩和ODDS部分积压缩纠错过程中产生的所有十进制进位进行4-bitODDS×6计数操作,其结果为ODDS数纠错字;所述17:2二进制部分积压缩树方块产生2行ODDS数和182个十进制进位,在7:3ODDS部分积压缩纠错方块产生110个十进制进位,所有十进制进位被送至ODDS×6计数器方块进行分组计数,产生纠错字并由纠错字组成5个纠错行;纠错行和2行ODDS数压缩结果共7行ODDS部分积通过7:3ODDS部分积压缩纠错方块压缩至3行ODDS部分积;所述专用十进制数3:2压缩方块将3行ODDS部分积转换为2行BCD-8421部分积。所述ODDS×6计数器方块采用先产生的进位先计数的原则,将基于二进制部分积压缩树的十进制乘法器部分积压缩模块产生的所有十进制进位进行计数×6操作,产生的ODDS纠错行作为ODDS部分积压缩纠错方块的输入。所述4-bitODDS×6计数器公式具体如下所示:其中,Fi[3],Fi[2],Fi[1]和Fi[0]是4-bitODDS×6计数器的ODDS数的输出,位权分别为8,4,2,10,其中,位权为10的Fi[0]被传递至高一位;Ci[1]-Ci[15]为最高列17:2二进制部分积压缩树方块产生的15个十进制进位,Ci[16]-Ci[19]为最高列在7:3ODDS部分积压缩纠错方块产生的4个十进制进位。所述4-bitODDS×6计数器结构包括第一至第四四选一数据选择器、第一至第三与门、第一至第三或门、第一或非门、第一与非门、第一异或门和第一同或门;所述第一至第四四选一数据选择器均由三个二选一数据选择器构成,其中,第一四选一数据选择器由第一至第三二选一数据选择器构成,第二四选一数据选择器由第四至第六二选一数据选择器构成,第三四选一数据选择器由第七至第九二选一数据选择器构成,第四四选一数据选择器由第十至第十二二选一数据选择器构成;所述第一至第三与门、第一至第三或门、第一或非门、第一与非门、第一异或门和第一同或门均包括两个输入端,用于输入先产生的两个十进制进位;所述第一至第十二二选一数据选择器均包括两个输入端和一个选择控制信号输入端;所述第一至第二、第四至第五、第七至第八、第十至第十一二选一数据选择器的选择控制信号输入端用于输入之后产生的十进制进位;所述第三、第六、第九和第十二二选一数据选择器的选择控制信号输入端用于输入最后产生的十进制进位;所述第一二选一数据选择器的两本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/201710680125.html" title="一种16×16‑digit冗余十进制乘法器原文来自X技术">16×16‑digit冗余十进制乘法器</a>

【技术保护点】
一种16×16‑digit冗余十进制乘法器,包括部分积产生、部分积压缩和最终积产生三个模块;所述部分积产生模块共产生17行ODDS部分积,其中第17行为修正行部分积;所述部分积压缩模块将所述部分积产生模块产生的17行ODDS部分积压缩至两行BCD‑8421部分积:A和B;所述最终积产生模块用一个BCD十进制加法器将A和B相加得到32‑digit的BCD‑8421最终积P;其特征在于:所述部分积压缩模块包括17:3ODDS部分积压缩模块及专用十进制数3:2压缩方块;所述17:3ODDS部分积压缩模块包括17:2二进制部分积压缩树方块、ODDS×6计数器方块和7:3ODDS部分积压缩纠错方块;所述ODDS×6计数器方块将二进制部分积压缩和ODDS部分积压缩纠错过程中产生的所有十进制进位进行4‑bit ODDS×6计数操作,其结果为ODDS数纠错字;所述17:2二进制部分积压缩树方块产生2行ODDS数和182个十进制进位,在7:3ODDS部分积压缩纠错方块产生110个十进制进位,所有十进制进位被送至ODDS×6计数器方块进行分组计数,产生纠错字并由纠错字组成5个纠错行;纠错行和2行ODDS数压缩结果共7行ODDS部分积通过7:3ODDS部分积压缩纠错方块压缩至3行ODDS部分积;所述专用十进制数3:2压缩方块将3行ODDS部分积转换为2行BCD‑8421部分积。...

【技术特征摘要】
1.一种16×16-digit冗余十进制乘法器,包括部分积产生、部分积压缩和最终积产生三个模块;所述部分积产生模块共产生17行ODDS部分积,其中第17行为修正行部分积;所述部分积压缩模块将所述部分积产生模块产生的17行ODDS部分积压缩至两行BCD-8421部分积:A和B;所述最终积产生模块用一个BCD十进制加法器将A和B相加得到32-digit的BCD-8421最终积P;其特征在于:所述部分积压缩模块包括17:3ODDS部分积压缩模块及专用十进制数3:2压缩方块;所述17:3ODDS部分积压缩模块包括17:2二进制部分积压缩树方块、ODDS×6计数器方块和7:3ODDS部分积压缩纠错方块;所述ODDS×6计数器方块将二进制部分积压缩和ODDS部分积压缩纠错过程中产生的所有十进制进位进行4-bitODDS×6计数操作,其结果为ODDS数纠错字;所述17:2二进制部分积压缩树方块产生2行ODDS数和182个十进制进位,在7:3ODDS部分积压缩纠错方块产生110个十进制进位,所有十进制进位被送至ODDS×6计数器方块进行分组计数,产生纠错字并由纠错字组成5个纠错行;纠错行和2行ODDS数压缩结果共7行ODDS部分积通过7:3ODDS部分积压缩纠错方块压缩至3行ODDS部分积;所述专用十进制数3:2压缩方块将3行ODDS部分积转换为2行BCD-8421部分积。2.根据权利要求1所述的16×16-digit冗余十进制乘法器,其特征在于:所述ODDS×6计数器方块采用先产生的进位先计数的原则,将基于二进制部分积压缩树的十进制乘法器部分积压缩模块产生的所有十进制进位进行计数×6操作,产生的ODDS纠错行作为ODDS部分积压缩纠错方块的输入。3.根据权利要求1所述的16×16-digit冗余十进制乘法器,其特征在于:所述4-bitODDS×6计数器公式具体如下所示:

【专利技术属性】
技术研发人员:崔晓平张柳董文雯张浩
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1