基于存算一体阵列权重预处理的模数转换模块优化方法

文档序号:33789241发布日期:2023-04-19 06:25阅读:70来源:国知局
基于存算一体阵列权重预处理的模数转换模块优化方法

本发明涉及存算一体领域,尤其涉及的是基于存算一体阵列权重预处理的模数转换模块优化方法。


背景技术:

1、目前,人工智能领域快速发展,人工智能应用迅猛增长,对复杂网络运算需求和数据处理速度的要求也越来越严苛。在当前的计算框架下,如何高效率地利用深度学习神经网络来处理数据,开发新一代高能效神经网络加速器是学界及产业界研究开发的核心问题之一。

2、传统的冯·诺依曼结构将数据处理和存储分离,在深度学习的运算过程中需频繁和内存交换数据,消耗大量能量。根据研究显示,数据搬运的能耗是浮点计算的4到1000倍。随着半导体工艺的进步,虽说总体功耗下降,但数据搬运的功耗占比却越来越大。

3、存算一体架构则是打破存储墙的限制,突破ai计算能效瓶颈的关键技术。存算一体架构的核心思想在于将部分或全部的计算转移至存储模块中,即计算单元和存储单元集成在同一个芯片。为了处理数字信息,使用模拟运算的存算一体架构不可避免地需要对输出数据进行相应的模数转化。

4、当前存算一体设计普遍存在的瓶颈在于读出电路,尤其是模数转换模块(adc模块)所占整个系统的能耗过大,通常达到70%~90%左右。为了满足不同应用需求和出于阵列尺寸的考虑,存算一体阵列的加速器内会并行设计多组阵列,使得整体系统能效受限。由于神经网络具有权重数据稀疏性,往往在存算一体架构中进行每列的乘累加运算后的输出模拟量结果范围远小于adc模数转换的输入范围,从而出现无效数值对比周期,导致adc周期长,功耗大。

5、因此,现有技术还有待改进和发展。


技术实现思路

1、本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供基于存算一体阵列权重预处理的模数转换模块优化方法,旨在解决现有技术中由于神经网络具有权重数据稀疏性,因此存算一体架构中进行每列的乘累加运算后的输出模拟量结果范围远小于adc模数转换的输入范围,导致模数转换模块的比较周期长、功耗大的问题。

2、本发明解决问题所采用的技术方案如下:

3、第一方面,本发明实施例提供基于存算一体阵列权重预处理的模数转换模块优化方法,其中,所述方法包括:

4、确定存算一体阵列中各列分别对应的权重信息,其中,每列对应的所述权重信息为该列的权重数据中1的比例,每列的所述权重数据由0和1组成;

5、获取各列分别对应的模数转换模块的分辨率位数;

6、根据各列分别对应的所述权重信息和所述分辨率位数,确定各列分别对应的所述模数转换模块的目标比较周期。

7、在一种实施方式中,每列对应的所述权重信息的确定方法包括:

8、将目标数据输入所述存算一体阵列中各行,获取该列对应的输出数字之和,其中,所述目标数据由1组成;

9、根据所述输出数字之和,确定该列对应的所述权重信息。

10、在一种实施方式中,每列对应的所述目标比较周期的确定方法包括:

11、根据该列对应的所述分辨率位数和所述权重信息,确定该列对应的所述模数转换模块的输出区间;

12、根据该列对应的所述输出区间,确定该列对应的所述目标比较周期,其中,该列对应的所述目标比较周期为所述分辨率位数的后若干位对应的比较周期。

13、在一种实施方式中,每列的所述模数转换模块包括与所述分辨率位数对应的若干翻转位,所述方法还包括:

14、根据每列对应的所述目标比较周期,对该列对应的各所述翻转位进行调控。

15、在一种实施方式中,所述根据每列对应的所述目标比较周期,对该列对应的各所述翻转位进行调控,包括:

16、根据该列对应的所述目标比较周期,从各所述翻转位中确定前若干位目标翻转位;

17、关闭各所述目标翻转位的电容切换。

18、在一种实施方式中,所述关闭各所述目标翻转位的电容切换,包括:

19、对各所述目标翻转位的电容置零。

20、在一种实施方式中,所述方法还包括:

21、判断各列分别对应的所述权重数据中1的比例是否达到预设比例;

22、关闭所述权重数据中1的比例达到所述预设比例的列所对应的所述模数转换模块。

23、第二方面,本发明实施例还提供一种基于存算一体阵列权重预处理的模数转换模块优化装置,其中,所述装置包括:

24、权重预处理模块,用于确定存算一体阵列中各列分别对应的权重信息,其中,每列对应的所述权重信息为该列的权重数据中1的比例,每列的所述权重数据由0和1组成;

25、分辨率获取模块,用于获取各列分别对应的模数转换模块的分辨率位数;

26、周期优化模块,用于根据各列分别对应的所述权重信息和所述分辨率位数,确定各列分别对应的所述模数转换模块的目标比较周期。

27、第三方面,本发明实施例还提供一种终端,其中,所述终端包括有存储器和一个以上处理器;所述存储器存储有一个以上的程序;所述程序包含用于执行如上述任一所述的基于存算一体阵列权重预处理的模数转换模块优化方法的指令;所述处理器用于执行所述程序。

28、第四方面,本发明实施例还提供一种计算机可读存储介质,其上存储有多条指令,其中,所述指令适用于由处理器加载并执行,以实现上述任一所述的基于存算一体阵列权重预处理的模数转换模块优化方法的步骤。

29、本发明的有益效果:本发明实施例通过预先确定存算一体阵列中每列的权重数据中1的比例,根据权重数据中1的比例和模数转换模块的分辨率位数跳过无效的比较周期,从而减少模数转换模块的比较周期数。解决了现有技术中由于神经网络具有权重数据稀疏性,存算一体架构中进行每列的乘累加运算后的输出模拟量结果范围远小于adc模数转换的输入范围,导致模数转换模块的比较周期长、功耗大的问题。



技术特征:

1.基于存算一体阵列权重预处理的模数转换模块优化方法,其特征在于,所述方法包括:

2.根据权利要求1所述的基于存算一体阵列权重预处理的模数转换模块优化方法,其特征在于,每列对应的所述权重信息的确定方法包括:

3.根据权利要求2所述的基于存算一体阵列权重预处理的模数转换模块优化方法,其特征在于,每列对应的所述目标比较周期的确定方法包括:

4.根据权利要求1所述的基于存算一体阵列权重预处理的模数转换模块优化方法,其特征在于,每列的所述模数转换模块包括与所述分辨率位数对应的若干翻转位,所述方法还包括:

5.根据权利要求4所述的基于存算一体阵列权重预处理的模数转换模块优化方法,其特征在于,所述根据每列对应的所述目标比较周期,对该列对应的各所述翻转位进行调控,包括:

6.根据权利要求5所述的基于存算一体阵列权重预处理的模数转换模块优化方法,其特征在于,所述关闭各所述目标翻转位的电容切换,包括:

7.根据权利要求1所述的基于存算一体阵列权重预处理的模数转换模块优化方法,其特征在于,所述方法还包括:

8.一种基于存算一体阵列权重预处理的模数转换模块优化装置,其特征在于,所述装置包括:

9.一种终端,其特征在于,所述终端包括有存储器和一个以上处理器;所述存储器存储有一个以上的程序;所述程序包含用于执行如权利要求1-7中任一所述的基于存算一体阵列权重预处理的模数转换模块优化方法的指令;所述处理器用于执行所述程序。

10.一种计算机可读存储介质,其上存储有多条指令,其特征在于,所述指令适用于由处理器加载并执行,以实现上述权利要求1-7任一所述的基于存算一体阵列权重预处理的模数转换模块优化方法的步骤。


技术总结
本发明公开了基于存算一体阵列权重预处理的模数转换模块优化方法,所述方法通过确定存算一体阵列中各列分别对应的权重信息,其中,每列对应的所述权重信息为该列的权重数据中1的比例,每列的所述权重数据由0和1组成;获取各列分别对应的模数转换模块的分辨率位数;根据各列分别对应的所述权重信息和所述分辨率位数,确定各列分别对应的所述模数转换模块的目标比较周期。解决了现有技术中由于神经网络具有权重数据稀疏性,因此存算一体架构中进行每列的乘累加运算后的输出模拟量结果范围远小于ADC模数转换的输入范围,导致模数转换模块的比较周期长、功耗大的问题。

技术研发人员:毛伟,周浩翔,刘定邦,洪海桥,余浩
受保护的技术使用者:南方科技大学
技术研发日:
技术公布日:2024/1/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1