【技术实现步骤摘要】
本专利技术涉及一种用于进行诸如定点数的乘法运算、乘加运算和乘减运算的算术运算的算术单元。
技术介绍
在用于音频数据、多媒体数据等数字处理的大规模集成电路(LSI)中,提供作为片上元件的算术单元,例如乘法单元,乘加单元等,已经变得普通。对于需要高精度运算的处理,这类算术单元利用二进制补码代表的定点数进行运算。在这种定点数运算中,当乘法结果溢出时需要进行饱和运算。具体地,一个n位定点数可以在是-2n到+2n-1(二进制表示为100...00到011...11)的范围内取值,如果被乘数和乘数都是最小值(具有最大绝对值的负值),乘法结果就会溢出(也就是,超出能够正确表示的正值的范围)。因此,进行饱和运算以将乘法结果校正为最大的可表示的正值。如图17所示,例如,能够完成上面提到的饱和运算的常规单元包括用于产生被乘数A和乘数B的多个部分积的部分积产生器901,用于将产生的部分积加起来的加法器902,用于检测出现/不出现溢出的溢出检测单元903和一个可按照出现/不出现溢出选择性地输出来自加法器902的加法结果或者输出饱和值(最大正值)的选择器904。因此,如果出现溢出(也就是说,如果被乘数A和乘数B都是具有最大绝对值的负值),则选择饱和值,由此校正乘法结果。然而,在加法器902的输出与饱和值之间的选择是由选择器904决定的情况下,只有当乘法结果从加法器902输出并在通过选择器904的延时以后才能够知道不溢出的乘法结果。考虑到这一点,已经提出应用布斯(Booth)算法的算术单元,在布斯算法中,如果出现溢出,布斯编码器输出预定值,对其进行乘法运算以给出饱和值(参见例如, ...
【技术保护点】
一种用于进行包括被乘数A和乘数B的乘法运算的算术运算的算术单元,A和B均为表达为二进制补码的定点数,该算术单元包括:溢出检测单元,用于检测该被乘数A和该乘数B的乘积溢出的出现;中间乘积产生器,用于通过该被乘数A和该乘数B的多 个部分积与预定的第一校正值的进位保留加法,得到中间和与中间进位;以及进位传递加法器,用于通过该中间和与该中间进位的进位传递加法,得到运算结果,其中将根据该溢出检测单元的检测结果的预定的第二校正值,或者在该中间乘积产生器中加入 ,或者在该进位传递加法器中加入。
【技术特征摘要】
JP 2005-2-17 041340/20051.一种用于进行包括被乘数A和乘数B的乘法运算的算术运算的算术单元,A和B均为表达为二进制补码的定点数,该算术单元包括溢出检测单元,用于检测该被乘数A和该乘数B的乘积溢出的出现;中间乘积产生器,用于通过该被乘数A和该乘数B的多个部分积与预定的第一校正值的进位保留加法,得到中间和与中间进位;以及进位传递加法器,用于通过该中间和与该中间进位的进位传递加法,得到运算结果,其中将根据该溢出检测单元的检测结果的预定的第二校正值,或者在该中间乘积产生器中加入,或者在该进位传递加法器中加入。2.如权利要求1中所述的算术单元,其中在该被乘数A和该乘数B均为具有最大绝对值的负值时,该溢出检测单元检测到溢出。3.如权利要求1中所述的算术单元,其中该第一校正值是-1;以及当出现溢出时,该第二校正值为0,当不出现溢出时,该第二校正值为1。4.如权利要求1中所述的算术单元,其中该中间乘积产生器被配置为可以通过进位保留加法树并行地将该多个部分积与该第一校正值相加。5.如权利要求1中所述的算术单元,其中该中间乘积产生器通过用二进制补码表示的该被乘数A和该乘数B的多个部分积、该第一校正值与加数X的进位保留加法得到中间和与中间进位;该进位传递加法器获得该加数X与该被乘数A与该乘数B的乘积的和,即X+A×B。6.如权利要求5中所述的算术单元,其中该第一校正值为-1;以及当出现溢出时,该第二校正值为0,而当不出现溢出时,该第二校正值为17.如权利要求6中所述的算术单元,其中该中间乘积产生器得到中间和与中间进位,这是通过将初步的中间和左移一位并在其最低有效位插入1得到的值、将初步的中间进位左移一位并在其最低有效位插入0得到的值、与加数X的进位保留加法而得到的,其中该初步的中间和与该初步的中间进位是通过该被乘数A和该乘数B的多个部分积与该第一校正值的进位保留加法得到的;或者中间和与中间进位,这是通过该被乘数A和该乘数B的多个部分积、该第一校正值、与该加数X的进位保留加法而得到的。8.如权利要求1中所述的算术单元,其中当要得到乘加结果时,该中间乘积产生器通过表示为二进制补码的该被乘数A和该乘数B的多个部分积、该第一校正值、与加数X的进位保留加法,得到中间和与中间进位;当要得到乘减结果时,该中间乘积产生器通过将初步的中间和转换为二进制补码得到的值、将初步的中间进位转换为二进制补码得到的值、与加数X的进位保留加法,得到中间和与中间进位,其中该初步的中间和与该初步的中间进位,是通过该被乘数A和该乘数B的多个部分积与该第一校正值的进位保留加法得到的;以及该进位传递加法器得到该加数X与该被乘数A与该乘数B的乘积的和或者差,即X+A×B或者X-A×B。9.如权利要求8中所述的算术单元,其中当要得到乘加结果时,该第一校正值为-1,并且该第二校正值在出现溢出时为0,在不出现溢出时为1;以及当要得到乘减结果时,该第一校正值为0,并且该第二校正值在出现溢出时为1,在不出现溢出时为0;10.如权利要求9中所述的算术单元,其中当要得到乘加结果时,该中间乘积产生器通过将初步的中间和左移一位并在其最低有效位插入1得到的值、将初步的中间进位左移一位并在其最低有效位插入0得到的值、与该加数X的进位保留加法得到中间和与中间进位,其中该初步的中间和与该初步的中间进位,是通过该被乘数A和该乘数B的多个部分积与该第一校正值的进位保留加法得到的;以及当要得到乘减结果时,该中间乘积产生器通过将初步的中间和左移一位然后在其最低有效位插入0并将该移位后的初步的中间和转换为二进制补码得到的值、将初步的中间进位左移一位然后在其最低有效位插入0并将该移位后的初步的中间进位为转换二进制补码得到的值、与该加数X的进位保留加法,得到中间和与中间进位,其中该初步的中间和与该初步的中间进位,是通过该被乘数A和该乘数B的多个部分积与该第一校正值的进位保留加法得到的。11.如权利要求1中所述的算术单元,其中当要得到乘加结果时,该中间乘积产生器通过表示为二进制补码的该被乘数A和该乘数B的多个部分积、该第一校正值和加数X的进位保留加法,得到中间和与中间进位。当要得到乘减结果时,该中间乘积产生器通过表示为二进制补码的初步的中间和的位值取反得到的值、初步的中间进位的位值取反得到的值、与加数X的进位保留加法,得到...
【专利技术属性】
技术研发人员:武内大辅,
申请(专利权)人:松下电器产业株式会社,
类型:发明
国别省市:JP[日本]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。