[发明专利]数据处理方法及人工智能处理器有效
申请号: | 202011381294.9 | 申请日: | 2020-11-30 |
公开(公告)号: | CN112395092B | 公开(公告)日: | 2023-06-02 |
发明(设计)人: | 裴京;施路平;徐明坤;王冠睿;马骋 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F17/15 |
代理公司: | 北京林达刘知识产权代理事务所(普通合伙) 11277 | 代理人: | 刘新宇 |
地址: | 100084*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据处理 方法 人工智能 处理器 | ||
1.一种数据处理方法,其特征在于,应用于人工智能处理器的处理核心,所述人工智能处理器包括多个处理核心,每个处理核心包括存储单元及运算单元,
所述存储单元用于存储图像的像素数据及N个卷积核的权重数据;所述运算单元包括乘数累加器MAC阵列,用于根据所述像素数据及所述权重数据进行运算,其中,所述图像的尺寸为W0×H0×C0,所述卷积核的尺寸为K×K×C0,行方向的步长为Sx,W0、H0、C0、K、Sx为正整数,
所述方法包括:
根据预设的像素读取位宽,从所述存储单元读取第一像素数据,所述第一像素数据包括所述图像的第m个通道、第Py行的连续的M个像素数据,1≤m≤C0,1≤Py≤H0,1M≤W0;
在k个卷积核的第Ky行的第T次运算时,根据预设的权重读取位宽,从所述存储单元读取第一权重数据,所述第一权重数据包括k个卷积核的第m个通道、第Ky行、卷积核位置T处的权重数据,1k≤N,1≤T≤K,1≤Ky≤K;
根据所述卷积核的步长Sx,从所述第一像素数据中选取与卷积核位置T对应的a个像素数据作为第二像素数据,1a<M;
在T1时,针对所述MAC阵列中的第q列MAC,将所述第二像素数据与所述第一权重数据中的第q个权重数据相乘,并与第T-1次运算的结果相加,得到所述第q列MAC第T次运算的a个第一卷积运算结果,1≤q≤k。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在T=1时,针对所述第q列MAC,将所述第二像素数据与所述第一权重数据中的第q个权重数据相乘,并与第Ky-1行的第K次运算的卷积运算结果相加,得到所述第q列MAC第1次运算的a个第一卷积运算结果,1≤q≤k。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
针对所述第q列MAC,在完成所述k个卷积核的K行的运算后,得到所述第m个通道的a个第二卷积运算结果;
在得到的C0个通道的卷积运算结果后,将每个卷积核的C0个通道的卷积运算结果相加,得到第q列MAC输出的a个目标卷积运算结果。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据权重存储位宽,存储所述N个卷积核的权重数据,其中,所述权重存储位宽与所述权重读取位宽一致;
所述根据权重存储位宽,存储所述N个卷积核的权重数据,包括:
针对所述N个卷积核中的每个卷积核,依次按照该卷积核的行方向、列方向和通道C0的顺序,将该卷积核的权重数据纵向排列为第一权重向量;
将所述N个卷积核的第一权重向量横向对齐合并为第一权重矩阵;
根据所述权重存储位宽,横向存储所述第一权重矩阵中的权重数据。
5.根据权利要求4所述的方法,其特征在于,所述根据权重存储位宽,横向存储所述第一权重矩阵中的权重数据,包括:
在N大于所述MAC阵列的列数Q的情况下,按照每Q列纵向拆分所述第一权重矩阵,得到F个第二权重矩阵,其中,
在所述第二权重矩阵的宽度小于或等于所述权重存储位宽的情况下,依次按照行方向、列方向的顺序,存储第f个第二权重矩阵中的权重数据,1≤f≤F;
将第f-1个第二权重矩阵排列在第f个第二权重矩阵之前;
其中,所述第二权重矩阵的宽度等于Q乘以所述权重数据的第一存储单位,所述权重数据的第一存储单位跟据所述权重数据的数据类型确定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011381294.9/1.html,转载请声明来源钻瓜专利网。