存储器内多位数二进制乘法装置及其操作方法制造方法及图纸

技术编号:31821958 阅读:14 留言:0更新日期:2022-01-12 12:36
本发明专利技术提供一种存储器内多位数二进制乘法装置及其操作方法。相较于传统的二进制乘法装置,本发明专利技术的存储器内多位数二进制乘法装置可有效减少操作步骤。一实施例中,以较高的硬件成本,本发明专利技术的存储器内多位数二进制乘法装置可达成单一步骤的操作。因此,本发明专利技术的存储器内多位数二进制乘法装置藉由免除算术与逻辑单元、暂存器以及存储器之间的数据传输,来改善运算效率及节省运算功率。改善运算效率及节省运算功率。改善运算效率及节省运算功率。

【技术实现步骤摘要】
存储器内多位数二进制乘法装置及其操作方法


[0001]本专利技术有关于具有两个整数运算元(operand)的存储器内(in

memory)多位数(multiple

digit)二进制(binary)乘法装置及其操作方法。

技术介绍

[0002]如图1所示的现代化范纽曼型计算架构(Von Neumann computing architecture)中,中央处理单元(CPU)10根据来自主存储器11的指令及数据,执行逻辑运算。CPU 10包含一主存储器11、一算术与逻辑单元(arithmetic and logic unit,ALU)12、一输出/输入装置13及一程序控制单元14。在计算行程(computation process)之前,由该程序控制单元14设定CPU 10指向存储在主存储器11中起始(initial)指令的起始地址码。之后,根据由程序控制单元14中与时脉同步(clock

synchronized)的地址指针(address pointer)所存取的主存储器11的循序指令,以算术与逻辑单元12处理所述数位数据。一般而言,CPU 10的数位逻辑运算行程是同步执行的且由一组预先写好并存储于存储器的循序指令所驱动。
[0003]在基于范纽曼运算架构的数位运算系统中,以二进制格式来表示所有数字。例如,以m比特二进制格式表示一整数I如下:
[0004]I=b
m
‑12
m
‑1+b
m
22
m
‑2+

+b121+b0=(b
m
‑1b
m
‑2…
b1b0)b,
[0005]其中,b
i
=[0,1],i=0,

,(m

1),且符号b代表该整数I以二进制格式来表示。
[0006]对整数的乘法、加法、减法及除法的算术运算需要操作多个运算(operant)整数的二进制码,以得到作为该算术运算最终结果的正确二进制表示式。运算二进制码的操作包含将该运算二进制码馈入至不同的组合逻辑栅(combinational logic gate)以及将该运算二进制码数据放在IC芯片的暂存器(register)及存储器单元内的正确位置。因此,通过连接的汇流排线(bus

lines),将该二进制码移动进出不同存储器单元、二进制暂存器及组合逻辑栅的操作步骤越多,运算功率也消耗得越多。特别地,当运算处理器以固定频宽的汇流排操作于码串(code

string)的比特层级(bit

level)时,随着操作步骤的增加,将大幅增加由于该连接的汇流排线、逻辑栅、暂存器及存储器的电容充放电而导致的功率消耗,而消耗功率可利用数学式表示为P~f
×
C
×
V
DD2
,其中f代表各行程时间(process time period)的步骤周期(step cycle)、C代表整个运算过程中的总相关充放电电容值(capacitance)以及V
DD
代表高供电电压。例如,通常利用所谓的乘积累加(multiply

accumulation,MA)程序来完成两个整数(以两个n比特的二进制码来代表)的乘法运算:一开始是一个n比特运算元的各单一比特与另一个n比特运算元相乘(AND运算)来得到n个n比特的二进制码;将各n比特的二进制码平移(shift)至n行(row)的2n比特暂存器的正确位置;在各行的2n比特暂存器中,以零填满空的比特暂存器;对于在暂存器内的n个2n比特码串,进行(n

1)个步骤的加法运算,以得到乘法的2n比特二进制码串;上述数据传输利用固定频宽汇流排的比特层级操作的冗长步骤增加了运算处理器的负担。将数据串移动进出不同存储器单元、逻辑栅、暂存器的沉重数据流量,有如管线式(pipeline)处理方式,也会造成处理器的汇流排线拥塞。由于沉重数据流量的汇流排线拥塞引起的所谓范纽曼型瓶颈是
计算行程减速的主要原因,再者,计算行程的比特层级操作所需的操作步骤越多,IC芯片就需要更多的存储器空间来存储越多的指令码及暂时性数据。
[0007]在中华人民共和国专利申请号202010164809.3的专利文献中(上述专利的内容在此被整体引用作为本说明书内容的一部分),存储器内处理器采用存储器阵列来存储算术表的操作码信息,藉由免除ALU、缓冲器、暂存器、存储器单元之间的冗长比特层级操作的诸多步骤,来达到“单一步骤”直接计算的目的。然而,当处理的比特数目被放大到一个大数目n时,对应算术表中的表格单元格(table cell)的数目也会相应地放大到2
2n
个单元格,亦即,每当处理的比特数目从n增加到(n+1)时,由于2
2(n+1)
=4
×
(2
2n
),故对应算术表中的表格单元格数目也会相应增加4倍。因此,由于IC芯片中存储器内处理器面积的硅晶成本限制以及大型存储器阵列内部信号传播延迟的处理速度性能限制,具有大的比特数目的存储器内处理器不可能任意地放大存储器内处理器的存储器阵列的尺寸。

技术实现思路

[0008]本申请提供一种存储器内多位数二进制乘法装置,用以对一被乘数及一乘数进行乘法运算,以产生一最终乘积值,包含:
[0009]P个存储器内乘法器单元,各存储器内乘法器单元比较2
n
个硬布线的2n比特运算元符号与一第一n比特位数(n

bit digit)及一第二n比特位数,以输出2
n
个硬布线的2n比特回应符号之一当作2n比特乘积码,其中所述第一n比特位数与所述第二n比特位数分别选自所述被乘数及所述乘数,以及所述被乘数及所述乘数皆具有2
n
进位(base
‑2n
)的m个位数,其中来自所述P个存储器内乘法器单元的所有2n比特乘积码形成m个2
n
进位第一多项式(polynomial)的多个第一系数,以及各2
n
进位第一多项式的所述第一系数有关于所述被乘数及所述乘数的一对应位数的乘法运算;
[0010]Q个二进制加法器装置,用以分别将所述m个2
n
进位第一多项式的多个2n比特第一系数转换成m个2
n
进位第二多项式的多个n比特第二系数;以及
[0011](m

1)个多项式加法器,按顺序排列,并按照次数由低到高的顺序,依序将所述m个2
n
进位第二多项式的所述n比特第二系数相加,使得所述m个2
n
进位第二多项式中次数相同的项次对齐并相加,以产生一个2
n
进位第三多项式的多个第三系数;
[0012]其中所述第三系数形成的所述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种存储器内多位数二进制乘法装置,其特征在于,用以对一被乘数及一乘数进行乘法运算,以产生一最终乘积值,包含:P个存储器内乘法器单元,各存储器内乘法器单元比较2
n
个硬布线的2n比特运算元符号与一第一n比特位数及一第二n比特位数,以输出2
n
个硬布线的2n比特回应符号之一当作2n比特乘积码,其中所述第一n比特位数与所述第二n比特位数分别选自所述被乘数及所述乘数,以及所述被乘数及所述乘数皆具有2
n
进位的m个位数,其中来自所述P个存储器内乘法器单元的所有2n比特乘积码形成m个2
n
进位第一多项式的多个第一系数,以及各2
n
进位第一多项式的所述第一系数有关于所述被乘数及所述乘数的一对应位数的乘法运算;Q个二进制加法器装置,用以分别将所述m个2
n
进位第一多项式的多个2n比特第一系数转换成m个2
n
进位第二多项式的多个n比特第二系数;以及(m

1)个多项式加法器,按顺序排列,并按照次数由低到高的顺序,依序将所述m个2
n
进位第二多项式的所述n比特第二系数相加,使得所述m个2
n
进位第二多项式中次数相同的项次对齐并相加,以产生一个2
n
进位第三多项式的多个第三系数;其中所述第三系数形成的所述最终乘积值具有2
n
进位的2m个位数。2.根据权利要求1所述的装置,其特征在于,所述2
n
个硬布线的2n比特运算元符号以及所述2
n
个硬布线的2n比特回应符号定义一个n比特对n比特的乘法表。3.根据权利要求1所述的装置,其特征在于,各2
n
进位第一多项式的项数等于m以及所述m个2
n
进位第一多项式中的最高次数等于(2m

2),其中各2
n
进位第二多项式的项数等于(m+1)以及所述m个2
n
进位第二多项式中的最高次数等于(2m

1),其中所述2
n
进位第三多项式的项数等于2m以及所述2
n
进位第三多项式的次数等于(2m

1)。4.根据权利要求1所述的装置,其特征在于,还包含:一第一暂存器单元,耦接至所述(m

1)个多项式加法器,用以存储所述最终乘积值,其中所述m个2
n
进位第二多项式的一常数项存储于所述第一暂存器单元当作所述最终乘积值的最低有效位数。5.根据权利要求4所述的装置,其特征在于,所述(m

1)个多项式加法器包含一最低有效多项式加法器、(m

3)个中间多项式加法器以及一最高有效多项式加法器,其中所述最低有效多项式加法器将次数等于m的2
n
进位第二多项式的m个较高次数项次的第二系数以及次数等于(m+1)的2
n
进位第二多项式的所有第二系数对齐并相加,以得到次数等于(m+1)的2
n
进位总和多项式的多个总和系数,并将所述次数等于(m+1)的2
n
进位总和多项式中具最小次数项次的总和系数传送给所述第一暂存器单元,其中各所述(m

3)中间多项式加法器将一个次数等于j的2
n
进位总和多项式的m个较高次数项次的总和系数以及次数等于(j+1)的2
n
进位第二多项式的所有第二系数对齐并相加,以得到次数等于(j+1)的2
n
进位总和多项式的多个总和系数,并将所述次数等于(j+1)的2
n
进位总和多项式中具最小次数项次的总和系数传送给所述第一暂存器单元,其中j从(m+1)增加到(2m

3),以及其中所述最高有效多项式加法器将次数等于(2m

2)的2
n
进位总和多项式的m个较高次数项次的总和系数以及次数等于(2m

1)的2
n
进位第二多项式的所有第二系数对齐并相加,以得到次数等于(2m

1)的2
n
进位总和多项式的多个总和系数,并将所述次数等于(2m

1)的2
n
进位总和多项式的所有总和系数传送给所述第一暂存器单元。6.根据权利要求1所述的装置,其特征在于,各二进制加法器装置包含一最低有效进位
链加法器单元、(m

2)个中间进位链加法器单元以及一最高有效进位链加法器单元,以及其中次数等于k的2
n
进位第一多项式中具最低次数项次的第一系数的最低有效位数被指定给一对应次数等于(k+1)的2
n
进位第二多项式中具最低次数项次的第二系数,其中k从(m

1)增加到(2m

2)。7.根据权利要求6所述的装置,其特征在于,所述最低有效进位链加法器单元将所述次数等于k的2
n
进位第一多项式中具第二低次数项次的第一系数的最低有效位数及具最低次数项次的第一系数的最高有效位数相加,以产生一进位数以及所述对应次数等于(k+1)的2
n
进位第二多项式中具第二最低次数项次的第二系数,其中一中间进位链加法器单元(i)将来自一较低有效进位链加法器单元的一进位数、所述次数等于k的2
n
进位第一多项式的一目标项次i
th
的第一系数的最低有效位数及其上一个项次(i

1)
th
的第一系数的最高有效位数相加,以产生一进位数以及所述对应次数等于(k+1)的2
n
进位第二多项式的对应项次i
th
的第二系数,其中i从2增加到(m

1);其中所述最高有效进位链加法器单元将来自一较低有效进位链加法器单元的一进位数以及所述次数等于k的2
n
进位第一多项式中具最高次数项次的第一系数的最高有效位数相加,以产生所述对应次数等于(k+1)的2
n
进位第二多项式中具最高次数项次的第二系数。8.根据权利要求1所述的装置,其特征在于,各存储器内乘法器单元包含:一第一只读存储器阵列,具有2
n

×
2n列个第一存储器元件,用以平行地比较所述第一n比特位数及所述第二n比特位数与硬布线于2
n
行的第一存储器元件的2n比特运算元符号,其中各行的第一存储器元件产生一指示信号以表示所述第一n比特位数及所述第二n比特位数是否匹配其硬布线的2n比特运算元符号;一检测电路,根据2
n
个指示信号,分别施加2
n
个切换信号至一第二只读存储器阵列的2
n
条字线;以及所述第二只读存储器阵列,具有2
n

×
2n列个第二存储器元件,其中所述2
n
个2n比特回应符号分别硬布线于2
n
行的第二存储器元件之中;其中当一行的第二存储器元件接收到一启动的切换信号时,所述行的第二存储器元件被导通以输出其硬布线的2n比特回应符号当作所述2n比特乘积码。9.根据权利要求1所述的装置,其特征在于,还包含:m个第二暂存器单元,耦接在所述P个存储器内乘法器单元以及所述Q个二进制加法器装置之间,用以分别存储所述m个2
n
进位第一多项式的所述第一系数,其中P=1且Q=m。10.根据权利要求1所述的装置,其特征在于,还包含:m个第二暂存器单元,耦接在所述Q个二进制加法器装置以及所述(m

1)个多项式加法之间,用以分别存储所述m个2
n
进位第二多项式的所述第二系数,其中P=m且Q=1。11.根据权利要求1所述的装置,其特征在于,P=m2且Q=m。12.一种操作一存储器内多位数二进制乘法装置的方法,其特征在于,所述存储器内多位数二进制乘法装置对一被乘数及一乘数进行乘法运算,以产生一最终乘积值,所述存储器内多位数二进制乘法装置包含单一存储器内乘法器单元、m个二进制加法器装置以及(m

1)个多项式加法器,所述方法包含:比较步骤:由所述单一存储器内乘法器单元,比较2
n
个硬布线的2n比特运算元符号与一第一n比特位数及一第二n比特位数,以输出2
n
个硬布线的2n比特回应符号之一当作2n比特
乘积码,其中所述第一n比特位数与所述第二n比特位数分别选自所述被乘数及所述乘数;重复所述比较步骤直到处理完所述被乘数及所述乘数的所有位数为止,以得到所有的2n乘积码当作m个2
n
进位第一多项式的多个第一系数,其中各2
n
进位第一多项式的所述第一系数有关于所述被乘数及所述乘数的一对应位数的乘法运算;分别转换步骤:由所述m个二进制加法器装置,分别将所述m个2
n
进位第一多项式的多个2n比特第一系数转换成m个2
n
进位第二多项式的多个n比特第二系数;以及依序相加步骤:由所述(m

1)个多项式加法器,按照次数由低到高的顺序,依序将所述m个2
n
进位第二多项式相加,使得所述m个2
n
进位第二多项式中次数相同的项次对齐并相加,以产生一个2
n
进位第三多项式的多个第三系数;其中所述第三系数形成的所述最终乘积值具有2
n
进位的2m个位数,以及所述被乘数及所述乘数皆具有2
n
进位的m个位数。13.根据权利要求12所述的方法,其特征在于,所述2
n
个硬布线的2n比特运算元符号以及所述2
n
个硬布线的2n比特回应符号定义一个n比特对n比特的乘法表。14.根据权利要求12所述的方法,其特征在于,各2
n
进位第一多项式的项数等于m以及所述m个2
n
进位第一多项式中的最高次数等于(2m

2),其中各2
n
进位第二多项式的项数等于(m+1)以及所述m个2
n
进位第二多项式中的最高次数等于(2m

1),其中所述2
n
进位第三多项式的项数等于2m以及所述2
n
进位第三多项式的次数等于(2m

1)。15.根据权利要求12所述的方法,其特征在于,所述分别转换步骤包含:(1)将次数等于k的2
n
进位第一多项式中具最低次数项次的第一系数的最低有效位数指定给一对应次数等于(k+1)的2
n
进位第二多项式中具最低次数项次的第二系数;(2)由一对应二进制加法器装置,将次数等于k的2
n
进位第一多项式中具第二低次数项次的第一系数的最低有效位数以及具最低次数项次的第一系数的最高有效位数相加,以产生一进位数以及所述对应次数等于(k+1)的2
n
进位第二多项式中具第二低次数项次的第二系数;(3)由所述对应二进制加法器装置,将来自其较低有效位数加法运算的一进位数、所述次数等于k的2
n
进位第一多项式的一目标项次i
th
的第一系数的最低有效位数以及其前一个项次(i

1)
th
的第一系数的最高有效位数相加,以产生一进位数以及所述对应次数等于(k+1)的2
n
进位第二多项式的对应项次i
th
的第二系数;(4)重复步骤(3)直到取得所述对应次数等于(k+1)的2
n
进位第二多项式的m个较低次数项次的第二系数为止,其中i从2增加到(m

1);(5)由所述对应二进制加法器装置,将来自其较低有效位数加法运算的一进位数以及所述次数等于k的2
n
进位第一多项式中具最高次数项次的第一系数的最高有效位数相加,以产生所述对应次数等于(k+1)的2
n
进位第二多项式中具最高次数项次的第二系数;以及(6)重复步骤(1)至(5)直到得到所述m个2
n
进位第二多项式的所有第二系数为止,其中k从(m

1)增加到(2m

2)。16.根据权利要求12所述的方法,其特征在于,所述依序相加步骤包含:(a)指定次数等于m的2
n
进位第二多项式的一常数项当作所述最终乘积值的最低有效位数;(b)将次数等于m的2
n
进位第二多项式的m个较高次数项次的第二系数以及次数等于(m+
1)的2
n
进位第二多项式的所有第二系数对齐并相加,以得到次数等于(m+1)的2
n
进位总和多项式的多个总和系数,并指定所述次数等于(m+1)的2
n
进位总和多项式中具最小次数项次的总和系数当作所述最终乘积值的第二低的有效位数;(c)将次数等于j的2
n
进位总和多项式的m个较高次数项次的总和系数以及次数等于(j+1)的2
n
进位第二多项式的所有第二系数对齐并相加,以得到次数等于(j+1)的2
n
进位总和多项式的多个总和系数,并指定所述次数等于(j+1)的2
n
进位总和多项式中具最小次数项次的总和系数当作所述最终乘积值的一对应位数;(d)重复步骤(c)直到得到所述最终乘积值的(m

1)个最低有效位数为止,其中j从(m+1)增加到(2m

3);以及(e)将次数等于(2m

2)的2
n
进位总和多项式的m个较高次数项次的总和系数以及次数等于(2m

1)的2
n
进位第二多项式的所有第二系数对齐并相加,以得到次数等于(2m

1)的2
n
进位总和多项式的多个总和系数,并指定所述次数等于(2m

1)的2
n
进位总和多项式的所有总和系数当作所述最终乘积值的(m+1)个最高有效位数。17.根据权利要求12所述的方法,其特征在于,所述比较步骤包含:平行地比较所述第一n比特位数及所述第二n比特位数与硬布线于一第一只读存储器阵列的2
n
个2n比特运算元符号,以致于各行的第一存储器元件产生一指示信号以表示所述第一n比特位数及所述第二n比特位数是否匹配其硬布线的2n比特运算元符号,其中所述第一只读存储器阵列具有2
n

×
2n列个第一存储器元件;根据2
n
个指示信号,分别施加2
n
个切换信号至一第二只读存储器阵列的2
n
条字线,其中所述第二只读存储器...

【专利技术属性】
技术研发人员:王立中
申请(专利权)人:芯立嘉集成电路杭州有限公司
类型:发明
国别省市:

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

1