[发明专利]一种用于通用张量计算的硬件加速装置及方法在审
申请号: | 202110256529.X | 申请日: | 2021-03-09 |
公开(公告)号: | CN113095476A | 公开(公告)日: | 2021-07-09 |
发明(设计)人: | 杨旭光 | 申请(专利权)人: | 苏州芯启微电子科技有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/063 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 215024 江苏省苏州市苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 通用 张量 计算 硬件加速 装置 方法 | ||
1.一套用于通用张量计算的硬件处理装置,其特征在于,包括:
端到端的连接总线;
数据载入DMA装置,对数据进行提取、重排布;
并行计算执行单元构成阵列,可执行矩阵或/和向量数据运算;
数据输出DMA装置,对计算执行单元阵列的输出结果进行提取、重排布及存回;
向量或/和标量计算执行单元及其存取数据装置,对张量计算所需要的其他关键算子进行加速执行;
中央控制装置,运行可编程指令,对上述4个子装置控制、调度;
所述5个子装置中均设置有存储及缓冲区域,都可以对主存储器进行读取与写入,对指令以及中间数据进行缓存,同时也能彼此随机访问。
2.根据权利要求1所述的用于通用张量计算的硬件并行加速器的硬件装置,其特征在于,对于深度卷积神经网络算法中的关键算子例如卷积、池化(pooling)、激活等等,以及关键的张量切分、融合、转置等操作,拆分为硬件算子和数据算子,对算子的控制设计为指令,形成层级、宏块的运算和数据定义,进行指令化封装设计。
3.根据权利要求1-2所述的用于通用张量计算的硬件并行加速器的硬件装置,其特征包括:
能够通过软件编程来动态配置并行计算算子的数据调度办法,包括输入数据的部分行驻留、代表神经元突触的权重数据驻留以及临时输出数据驻留;
能够通过软件编程来动态配置并行计算的输入和输出数据排布方式,数据格式;
能够通过软件编程来动态配置并行计算执行单元的并行效率、并行工作的方式,例如对多种卷积核尺寸、运算间隔数据距离的差别,配合上述调度办法与排布方式进行配置。
4.根据权利要求1-3所述的处理器硬件设计方法,其特征在于:
依据特定领域、产业场景的常用神经网络算法的计算需求,根据本发明的硬件装置可达到的理论算力区间,换算硬件并行执行单元的数目;
根据算力和算法特点,向输入、输出方向进行一定方法的推算,得到其他阵列的规模和数据吞吐性能需求,并进一步推算得到缓存的规模,完成该装置的原型定型。
5.根据权利要求1-3所述的处理器硬件进行运算的方法,其特征在于:
对于深度卷积神经网络算法中的矩阵算子例如卷积、池化、全连接和其他算法可以转化为矩阵运算的某些步骤,是通过并行乘、加计算执行单元阵列加速执行;
对于上述算法中的非矩阵算子,若无法转化为矩阵运算,则是通过向量或/和标量其他特殊计算执行单元及其存取数据装置来加速执行;
两种计算执行单元,和主存储器之间,是通过各自特定设计的存取数据装置完成数据的随机访问。
6.根据权利要求5所述的硬件装置进行矩阵运算的实现方法,其特征在于,并行乘、加计算执行单元阵列与数据载入装置中的本地缓存寄存器不是全地址连接、可访问全部缓存空间的,而是结合权利要求3所述的软件可配置的工作方式,设计实现为缓存地址区域局部可访问。
7.根据权利要求1所述的硬件装置及其数据调度方法,其特征在于:
数据输入输出装置具有片上模块内专用缓存,并可以与其他计算执行单元的相关缓存进行随机访问;
具有一定规模的主存储器将作为主要的性能缓冲器和计算中间结果暂存的空间;
中央控制装置包括一个通用中央处理器和一套可扩展的高性能配置装置,在不同神经网络的算法层、数据宏块层进行调度,对上述子装置进行快速配置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州芯启微电子科技有限公司,未经苏州芯启微电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110256529.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种模块化一体式新风机
- 下一篇:一种用于大型仪器测试的便携式数据线整理架