技术新讯 > 计算推算,计数设备的制造及其应用技术 > 卷积神经网络加速方法、装置、设备及存储介质与流程  >  正文

卷积神经网络加速方法、装置、设备及存储介质与流程

  • 国知局
  • 2024-07-31 22:43:06

本技术涉及人工智能,尤其是涉及一种卷积神经网络加速方法、装置、设备及存储介质。

背景技术:

1、随着人工智能的热潮和人工智能算法的广泛应用,深度学习已成为当前ai研究的重点,在自动驾驶、环境感知、传感器融合、控制决策等领域都会涉及深度学习。深度学习基于神经网络模型处理、分析高维度的数据,卷积神经网络是神经网络的一种特殊和扩展形式,在图像、视频、语音等信号数据的分类和识别任务上表现出色。

2、在面对海量数据的并行运算的同时做到高效、可靠,即意味着承载人工智能算法的计算平台需要提供足够的性能加速,也即ai芯片的算力足够用,同时还需要考虑其他因素,如功耗还不能超标,能效比越高越好。fpga诞生于1990年代,fpga最初是为电子硬件原型的快速发展而开发的,由于fpga并行处理的机制,可以满足神经网络大量并行运算的需求,并且相对于gpu/cpu成本优势较为明显,因此越来越多的厂家选择利用fpga实现神经网络处理器的算力部署。

3、然而,现有的fpga实现卷积神经网络算力部署的方案中,由于fpga的通用性和可编程性,使得fpga进行卷积神经网络大量并行运算的能效较低,卷积神经网络的处理器的算力性能低。

技术实现思路

1、为了有助于解决fpga进行卷积神经网络大量并行运算的能效较低,卷积神经网络的处理器的算力性能低的问题,本技术提供一种卷积神经网络加速方法、装置、设备及存储介质。

2、第一方面,本技术提供一种卷积神经网络加速方法,采用如下技术方案:所述方法应用于卷积神经网络加速系统,所述卷积神经网络加速系统基于多die芯片,所述卷积神经网络加速系统包括同步动态随机存储器、超级逻辑域块和卷积神经网络核,所述方法包括:

3、获取目标数据,所述目标数据为需要进行卷积神经网络处理的数据;

4、将所述目标数据挂载到所述同步动态随机存储器,并将所述同步动态随机存储器放置到所述超级逻辑域块;

5、将所述卷积神经网络核放置到所述超级逻辑域块;

6、在接收到开始计算的执行信号时,通过所述卷积神经网络核进行卷积神经网络处理,计算所述目标数据并得到运算结果。

7、通过上述技术方案,系统采用多die芯片对卷积神经网络进行运算可以实现卷积神经网络的大量数据的并行运算;多die芯片由于采用高度集成的设计,因此具有更高的能效比,从而可以提供更高的算力。将目标数据和用于处理数据的卷积神经网络核都放置在超级逻辑域块中,以便于卷积神经网络核进行存储器的读写数据。

8、在一个具体的可实施方案中,所述卷积神经网络加速系统包含若干超级逻辑域块,所述将所述卷积神经网络核放置到所述超级逻辑域块包括:

9、根据所述超级逻辑域块的最大算力资源将所述卷积神经网络核分割成若干卷积神经网络子核;

10、将若干所述卷积神经网络子核放置到若干所述超级逻辑域块。

11、在一个具体的可实施方案中,所述将若干所述卷积神经网络子核放置到若干所述超级逻辑域块包括:

12、在每个所述超级逻辑域块中放置一个所述卷积神经网络子核。

13、通过上述技术方案,原始的卷积神经网络核为一个大算力卷积核,将原本的大算力卷积核分割成若干个卷积神经网络子核,子核也可以理解为是小算力的卷积核,每个超级逻辑域块中放置一个卷积神经网络子核,也即小算力卷积核,使得可以提升整个卷积神经网络系统的工作时钟频率,进而可以提升卷积神经网络计算速度,提升工作效率。

14、在一个具体的可实施方案中,所述将若干所述卷积神经网络子核放置到若干所述超级逻辑域块包括:

15、将若干所述卷积神经网络子核平均分配放置到若干所述超级逻辑域块中。

16、通过上述技术方案,原始的卷积神经网络核为一个大算力卷积核,将原本的大算力卷积核分割成若干个卷积神经网络子核,子核也可以理解为是小算力的卷积核;一般而言,小算力卷积核的数量会多于超级逻辑域块的数量,将所有小算力卷积核平均分配放置到超级逻辑域块中,可以提升整个卷积神经网络系统的工作时钟频率,进而可以提升卷积神经网络计算速度;此外,将所有小算力卷积核都放置到超级逻辑域块中,可以充分发挥系统的逻辑资源,最大程度的提升卷积神经网络核的算力性能,进而可以提升工作效率。

17、在一个具体的可实施方案中,所述同步动态随机存储器包括第一同步动态随机存储器和第二同步动态随机存储器;

18、在所述获取目标数据之后,还包括:

19、将所述目标数据切分,并生成第一目标数据和第二目标数据;

20、所述将所述目标数据挂载到所述同步动态随机存储器包括:

21、将所述第一目标数据和所述第二目标数据分别挂载到所述第一同步动态随机存储器和所述第二同步动态随机存储器。

22、通过上述技术方案,将原始的目标数据切分后分别存储到两个同步动态随机存储器中,之后通过卷积神经网络核进行计算,计算结束后得到运算结果;由于在神经网络处理过程中,同步动态随机存储器的访问仲裁次数频繁,使得数据读写的延迟会增加,通过采用两个同步动态随机存储器,可以提升计算时的帧率,从而可以提升计算速度,提升工作效率。

23、在一个具体的可实施方案中,所述将所述目标数据切分,并生成第一目标数据和第二目标数据包括:

24、将所述目标数据平均切分,并生成第一目标数据和第二目标数据。

25、在一个具体的可实施方案中,所述卷积神经网络包括若干卷积层,所述通过所述卷积神经网络核进行卷积神经网络处理包括:

26、将单层卷积层的卷积运算结果写入所述同步动态随机存储器;

27、控制下一层卷积层从所述同步动态随机存储器中读取上一层卷积层的运算结果,并对所述上一层卷积层的运算结果进行卷积运算;

28、控制所述卷积层循环计算直至最后一层卷积层计算完成。

29、第二方面,本技术提供一种卷积神经网络加速装置,采用如下技术方案:所述装置应用于卷积神经网络加速系统,所述卷积神经网络加速系统基于多die芯片,所述卷积神经网络加速系统包括同步动态随机存储器、超级逻辑域块和卷积神经网络核,所述装置包括:

30、数据获取模块,用于获取目标数据,所述目标数据为需要进行卷积神经网络处理的数据;

31、数据挂载模块,用于将所述目标数据挂载到所述同步动态随机存储器,并将所述同步动态随机存储器放置到所述超级逻辑域块;

32、卷积核放置模块,用于将所述卷积神经网络核放置到所述超级逻辑域块;

33、数据运算模块,用于在接收到开始计算的执行信号时,通过所述卷积神经网络核进行卷积神经网络处理,计算所述目标数据并得到运算结果。

34、第三方面,本技术提供一种计算机设备,采用如下技术方案:包括存储器和处理器,所述存储器上存储有能够被处理器加载并执行如上述任一种卷积神经网络加速方法的计算机程序。

35、第四方面,本技术提供一种计算机可读存储介质,采用如下技术方案:存储有能够被处理器加载并执行上述任一种卷积神经网络加速方法的计算机程序。

36、综上所述,本技术具有以下有益技术效果:

37、(1)系统采用多die芯片对卷积神经网络进行运算可以实现卷积神经网络的大量数据的并行运算;多die芯片由于采用高度集成的设计,因此具有更高的能效比,从而可以提供更高的算力。将目标数据和用于处理数据的卷积神经网络核都放置在超级逻辑域块中,以便于卷积神经网络核进行存储器的读写数据。

38、(2)将大算力卷积核分割成小算力的卷积核,将所有小算力卷积核平均分配放置到超级逻辑域块中,可以提升整个卷积神经网络系统的工作时钟频率,进而可以提升卷积神经网络计算速度;此外,将所有小算力卷积核都放置到超级逻辑域块中,可以充分发挥系统的逻辑资源,最大程度的提升卷积神经网络核的算力性能,进而可以提升工作效率。

39、(3)将目标数据切分后分别存储到两个同步动态随机存储器中,再通过卷积神经网络核进行计算;由于在神经网络处理过程中,同步动态随机存储器的访问仲裁次数频繁,使得数据读写的延迟会增加,通过采用两个同步动态随机存储器,可以提升计算时的帧率,从而可以提升计算速度,提升工作效率。

本文地址:https://www.jishuxx.com/zhuanli/20240730/194260.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。