并行向量乘加器的存内计算装置和电子设备制造方法及图纸

技术编号:36431713 阅读:12 留言:0更新日期:2023-01-20 22:44
本申请实施例提供一种并行向量乘加器的存内计算装置和电子设备,涉及存内计算技术领域,能够提高计算速度。并行向量乘加器的存内计算装置,包括:L个乘加模块,每个乘加模块包括q个乘法单元和一个加法器,q>1,L>1;乘法单元包括存储器和乘法电路;加法器包括q个加法输入端,第a个加法输入端电连接于第a个乘法单元的输出端,a的取值为1、2、

【技术实现步骤摘要】
并行向量乘加器的存内计算装置和电子设备


[0001]本申请涉及存内计算
,特别涉及一种并行向量乘加器的存内计算装置和电子设备。

技术介绍

[0002]基于传统冯诺依曼架构进行计算的方式,大量的性能功耗都用在了数据传输和读写上,效率比较低。基于上述问题,出现了存内计算(computing

in

memory,CIM)架构,CIM架构将计算单元和存储单元集成于同一芯片,构成具有计算能力的存储单元,并在其中完成运算,这种极度近邻的布局消除了数据移动的延迟和功耗,改善了“存储墙”和“功耗墙”的问题,因此相对于传统架构的提高了计算能效比。但是,目前CIM架构的芯片,在计算较大数据量时,计算速度较慢。

技术实现思路

[0003]一种并行向量乘加器的存内计算装置和电子设备,能够提高计算速度。
[0004]第一方面,提供一种并行向量乘加器的存内计算装置,包括:L个乘加模块,每个乘加模块包括q个乘法单元和一个加法器,q>1,L>1;乘法单元包括存储器和乘法电路,乘法电路包括第一乘法输入端和第二乘法输入端,第二乘法输入端电连接于存储器的输出端,乘法电路用于对第一乘法输入端和第二乘法输入端的数值进行乘法计算并通过乘法单元的输出端输出结果;加法器包括q个加法输入端,第a个加法输入端电连接于第a个乘法单元的输出端,a的取值为1、2、

、q,每个加法器的输出端为对应的乘加模块的输出端;移位累加器,移位累加器包括L个累加输入端,第b个累加输入端电连接于第b个乘加模块的输出端,b的取值为1、2、

、L;每个累加输入端具有对应的权重值,移位累加器用于基于每个累加输入端对应的权重值对L个累加输入端的数值进行移位累加计算。
[0005]在一种可能的实施方式中,存内计算装置还包括:与至少一个乘加模块对应的输入模块,输入模块包括依次级联的q

1个输入单元,输入单元用于将上个周期输入的数值在当前周期输出;第a个输入单元的输出端电连接于对应的乘加模块的第a+1个乘法单元的第一乘法输入端;第1个输入单元的输入端电连接于对应的乘加模块的第1个乘法单元的第一乘法输入端;第c个输入单元的输入端电连接于第c

1个输入单元的输出端,c的取值为2、3、

、q。
[0006]在一种可能的实施方式中,存内计算装置包括:m个乘加模块组,每个乘加模块组包括p个乘加模块和一个输入模块,p>1;在第d个乘加模块组中,第a个输入单元的输出端电连接于每个乘加模块的第a+1个乘法单元的第一乘法输入端,第1个输入单元的输入端电连接于每个乘加模块的第1个乘法单元的第一乘法输入端,d的取值为1、2、

、m。
[0007]在一种可能的实施方式中,电连接于第e个乘加模块组中第f个乘加模块的输出端的累加输入端对应的权重值为2
(m

e+p

f)
,e的取值为1、2、

、m,f的取值为1、2、

、p。
[0008]在一种可能的实施方式中,存内计算装置为有限单位冲激响应滤波器。
[0009]在一种可能的实施方式中,乘法电路为与门乘法电路。
[0010]在一种可能的实施方式中,乘法电路为与非门乘法电路;加法器为取反加法器。
[0011]在一种可能的实施方式中,移位累加器还用于对移位累加计算的结果进行二进制补码计算。
[0012]在一种可能的实施方式中,乘法电路包括:第一晶体管,其第一端电连接于乘法输出端,其控制端电连接于第一乘法输入端;第二晶体管,其第一端电连接于第一晶体管的第二端,其第二端电连接于低电平输出端,其控制端电连接于第二乘法输入端;第一晶体管和第二晶体管为n型晶体管。
[0013]第二方面,提供一种电子设备,包括上述的存内计算装置。
[0014]本申请实施例中的并行向量乘加器的存内计算装置和电子设备,通过乘法单元中存储器和乘法电路的配合实现一个比特的乘法计算,通过加法器获取来自于不同乘法单元的输出进行加法计算并作为乘加模块的输出,移位累加器获取多个乘加模块的输出并基于对应的权重值进行移位累加计算,其中多个乘法单元将两个二进制数按位相乘是并行完成的,1个时钟周期就可以做完全部的乘法,2时钟周期就可以做完移位累加,即通过并行的方式提高了计算速度。
附图说明
[0015]图1为本申请实施例中一种并行向量乘加器的存内计算装置的结构框图;
[0016]图2为本申请实施例中另一种并行向量乘加器的存内计算装置的结构框图;
[0017]图3为本申请实施例中一种乘法单元的结构框图;
[0018]图4为本申请实施例中一种加法器与其他模块之间的结构框图;
[0019]图5为一种FIR滤波器的简化计算示意图;
[0020]图6为本申请实施例中一种乘加模块组的结构示意图;
[0021]图7为本申请实施例中另一种并行向量乘加器的存内计算装置的结构框图;
[0022]图8为图7中第2个乘加模块组的结构示意图;
[0023]图9为图7中第14个乘加模块组的结构示意图;
[0024]图10为本申请实施例中一种并行向量乘加器对应的算法矩阵简化示意图。
具体实施方式
[0025]本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
[0026]本申请实施例提供一种并行向量乘加器的存内计算装置,包括:L个乘加模块1,每个乘加模块1包括q个乘法单元11和一个加法器12,q>1,L>1;如图2和图3所示,乘法单元11包括存储器111和乘法电路112,乘法电路112包括第一乘法输入端MIN1和第二乘法输入端MIN2,第二乘法输入端MIN2电连接于存储器111的输出端,乘法电路112用于对第一乘法输入端MIN1和第二乘法输入端MIN2的数值进行乘法计算并通过乘法单元11的输出端输出结果,乘法电路112可以实现单比特的乘法计算,具体可以为与门或与非门,乘法电路112的详细结构和原理会在后面介绍,存储器111例如可以为只读存储器(Read

OnlyMemory,ROM)或者静态随机存取存储器(StaticRandom

AccessMemory,SRAM),若存储器111为SRAM,则乘
法电路112除了通过与门或与非门来实现之外,还可以利用SRAM自身的结构特点来实现,乘法单元11将两个二进制数按位相乘,再将结果输出至加法器12;加法器12包括q个加法输入端,第a个加法输入端电连接于第a个乘法单元的输出端,a的取值为1、2、

、q,每个加法器12的输出端为对应的乘加模块1的输出端;移位累加器2,移位累加器2包括L个累加输入端,第b个累加输入端电连接于第b个乘加模块1的输出端,b的取值为1、2、

...

【技术保护点】

【技术特征摘要】
1.一种并行向量乘加器的存内计算装置,其特征在于,包括:L个乘加模块,每个所述乘加模块包括q个乘法单元和一个加法器,q>1,L>1;所述乘法单元包括存储器和乘法电路,所述乘法电路包括第一乘法输入端和第二乘法输入端,所述第二乘法输入端电连接于所述存储器的输出端,所述乘法电路用于对所述第一乘法输入端和所述第二乘法输入端的数值进行乘法计算并通过所述乘法单元的输出端输出结果;所述加法器包括q个加法输入端,第a个所述加法输入端电连接于第a个所述乘法单元的输出端,a的取值为1、2、

、q,每个所述加法器的输出端为对应的所述乘加模块的输出端;移位累加器,所述移位累加器包括L个累加输入端,第b个所述累加输入端电连接于第b个所述乘加模块的输出端,b的取值为1、2、

、L;每个所述累加输入端具有对应的权重值,所述移位累加器用于基于每个所述累加输入端对应的权重值对所述L个累加输入端的数值进行移位累加计算。2.根据权利要求1所述的装置,其特征在于,还包括:与至少一个所述乘加模块对应的输入模块,所述输入模块包括依次级联的q

1个输入单元,所述输入单元用于将上个周期输入的数值在当前周期输出;第a个所述输入单元的输出端电连接于对应的所述乘加模块的第a+1个所述乘法单元的所述第一乘法输入端;第1个所述输入单元的输入端电连接于对应的所述乘加模块的第1个所述乘法单元的所述第一乘法输入端;第c个所述输入单元的输入端电连接于第c

1个输入单元的输出端,c的取值为2、3、

、q。3.根据权利要求2所述的装置,其特征在于,包括:m个乘加模块组,每个所述乘加模块组包括p个...

【专利技术属性】
技术研发人员:朱夏宁艾力
申请(专利权)人:杭州智芯科微电子科技有限公司
类型:发明
国别省市:

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

1