处理单元、相关装置和张量运算方法制造方法及图纸

技术编号:30427552 阅读:28 留言:0更新日期:2021-10-24 17:14
提供一种处理单元、相关装置和张量运算方法。处理单元包括:多个计算单元,构成n行m列的计算矩阵,n和m是非零的自然数;计算单元控制器,用于在处理单元所处的外部环境带宽满足预定带宽要求的情况下,控制计算矩阵以组播数据输入模式工作,数据按列广播到对应列的所有计算单元,按行广播到对应行的所有计算单元,在外部环境带宽不满足预定带宽要求的情况下,控制计算矩阵以脉动数据输入模式工作,计算单元从前一列同一行的计算单元以及同一列前一行的计算单元接收数据,以支持张量运算。本公开实施例根据处理单元的外部环境带宽灵活配置计算矩阵的工作模式,使得处理单元的外部环境带宽和计算能力适配,提高了处理单元的计算能效。效。效。

【技术实现步骤摘要】
处理单元、相关装置和张量运算方法


[0001]本公开涉及芯片领域,具体而言,涉及一种处理单元、相关装置和张量运算方法。

技术介绍

[0002]深度学习目前在人脸识别、语音识别、自动驾驶等领域均有广泛的使用。由于深度学习依赖大量的重复的卷积、矩阵运算等张量运算,传统的硬件执行相应的算法效率低,因此,专用于执行其的计算架构应运而生。这些架构中的深度学习处理单元采用由多个计算单元组成的计算矩阵。由计算矩阵中的各计算单元执行卷积、矩阵运算中的元素的运算,然后再将运算结果累加,得到张量运算结果。在计算矩阵中传递待计算张量中的元素的方式一般有脉动数据输入模式和组播数据输入模式。在脉动数据输入模式中,在每个时钟周期,计算矩阵中的计算单元从前一列同一行的计算单元、以及同一列前一行的计算单元接收数据,即数据在每个时钟周期在行的方向和列的方向分别脉动一个计算单元,即传递到行和列的下一个计算单元处。在组播数据输入模式中,在每个时钟周期,数据按列广播到计算矩阵中一列的所有计算单元,数据按行广播到计算矩阵中一行的所有计算单元,即数据在一行或一列的所有计算单元间组播。...

【技术保护点】

【技术特征摘要】
1.一种处理单元,包括:多个计算单元,构成n行m列的计算矩阵,n和m是非零的自然数;计算单元控制器,用于在所述处理单元所处的外部环境带宽满足预定带宽要求的情况下,控制所述计算矩阵以组播数据输入模式工作,数据按列广播到对应列的所有计算单元,按行广播到对应行的所有计算单元,在所述外部环境带宽不满足预定带宽要求的情况下,控制所述计算矩阵以脉动数据输入模式工作,计算单元从前一列同一行的计算单元以及同一列前一行的计算单元接收数据,以支持张量运算。2.根据权利要求1所述的处理单元,其中,所述预定带宽要求包括:所述外部环境带宽大于预定环境带宽阈值,所述预定环境带宽阈值是在所述组播数据输入模式下,在一个时钟周期需要输入所述计算矩阵的最大数据总量。3.根据权利要求1或2所述的处理单元,其中,所述处理单元位于加速单元内,所述加速单元与调度单元共同位于计算装置内,所述加速单元接收所述调度单元的调度执行张量运算,所述外部环境带宽是从所述调度单元接收的指令获得的。4.根据权利要求1或2所述的处理单元,还包括:监测单元,用于监测所述处理单元所处的外部环境带宽。5.根据权利要求4所述的处理单元,其中,所述监测单元实时监测所述外部环境带宽,所述计算单元控制器根据实时监测的所述外部环境带宽,使所述计算矩阵在所述脉动数据输入模式和所述组播数据输入模式之间切换。6.根据权利要求1所述的处理单元,其中,所述计算单元包括:第一寄存器,用于存储从前一列同一行的计算单元传递的数据;第二寄存器,用于存储从同一列前一行的计算单元传递的数据;乘法器,用于对接收的列序号和行序号相同的元素进行相乘;累加器,用于将乘法器相乘的结果累加到之前的累加结...

【专利技术属性】
技术研发人员:范虎劳懋元阎承洋李玉东
申请(专利权)人:平头哥上海半导体技术有限公司
类型:发明
国别省市:

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

1