[发明专利]一种基于线性阵列的可配置浮点矩阵乘实现方法及装置在审
申请号: | 202111284552.6 | 申请日: | 2021-11-01 |
公开(公告)号: | CN114186187A | 公开(公告)日: | 2022-03-15 |
发明(设计)人: | 扈啸;张龙龙;彭元喜;郭阳;黄啊慧;张世亮;田甜;粟毅;丁祎明 | 申请(专利权)人: | 中国人民解放军国防科技大学;北京动力机械研究所 |
主分类号: | G06F17/16 | 分类号: | G06F17/16;G06F7/487;G06E3/00 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 周长清 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 线性 阵列 配置 浮点 矩阵 实现 方法 装置 | ||
1.一种基于线性阵列的可配置浮点矩阵乘实现方法,其特征在于,包括:
步骤S1:根据矩阵规模确定分块大小及参与计算的阵列维数;
步骤S2:根据子块大小和阵列维数,初始化片上RAM块数据为零;
步骤S3:RAM通道提前加载部分数据流A,在数据通道送入数据流B的同时开始同步计算;
步骤S4:将计算结果返回片外存储器,重复上述步骤S2-S4,直到所有子块计算完成。
2.根据权利要求1所述的基于线性阵列的可配置浮点矩阵乘实现方法,其特征在于,所述矩阵乘是指矩阵A和矩阵B的乘积,即实现CM×N=AM×K×BK×N。
3.根据权利要求1所述的基于线性阵列的可配置浮点矩阵乘实现方法,其特征在于,所述数据流包含数据流A、数据流B、数据流C;其中,数据流C的初始值均为零,最终值为矩阵乘计算结果。
4.根据权利要求1或2或3所述的基于线性阵列的可配置浮点矩阵乘实现方法,其特征在于,所述步骤S1中,在进行矩阵分块时,将大规模矩阵乘分解为若干个子矩阵块相乘;分块后的形式为其中子矩阵A的大小为Sp×K,子矩阵B的大小为K×Sq,子矩阵C的大小为Sp×Sq,Sp表示子矩阵A的行数,同时也表示线性阵列单元数目,Sq表示子矩阵B的列数,同时也表示片上RAM的深度,K表示子矩阵A的列数和子矩阵B的行数,同时也表示迭代次数。
5.一种基于线性阵列的可配置浮点矩阵乘实现装置,其特征在于,包括:
数据传输控制模块,包括外循环数据传输控制逻辑单元和内循环数据传输逻辑单元,所述外循环数据传输控制逻辑单元用来负责子矩阵块的传输控制,所述内循环数据传输逻辑用来负责输入数据流A、数据流B和数据流C以及计算结果的传输控制;
矩阵乘计算单元模块,包括一组线性阵列单元、存储通道和数据通道。
6.根据权利要求5所述的基于线性阵列的可配置浮点矩阵乘实现装置,其特征在于,所述一组线性阵列单元包含Sp个完全相同的基本计算单元PE,每个基本计算单元PE包含一个浮点计算部件、两个寄存器、一个FIFO和一个简单的双端口RAM;所述浮点运算部件用于完成乘累加运算。
7.根据权利要求5所述的基于线性阵列的可配置浮点矩阵乘实现装置,其特征在于,所述存储通道用于流入数据流A和数据流C,所述数据通道用于流入数据流B;其中,数据流A、数据流B在基本计算单元PE中以寄存器方式存储,并在存储数据流A的寄存器前设置一个起缓冲作用的FIFO,数据流C存储在片上RAM当中。
8.根据权利要求6-7中任意一项所述的基于线性阵列的可配置浮点矩阵乘实现装置,其特征在于,每个基本计算单元PE负责计算子矩阵块C的一行元素,在确定子矩阵块大小后,直接在片上初始化子矩阵C为零矩阵,即把分配给子矩阵块C的RAM块的数据置零。
9.根据权利要求5-7中任意一项所述的基于线性阵列的可配置浮点矩阵乘实现装置,其特征在于,执行数据流优化机制:数据流B每个时钟周期内向参与计算的基本计算单元PE广播一个数据,数据流A每间隔Sq次时间加载子矩阵A的一列分发到各个PE中;那么:
将数据搬移时间隐藏于计算时间当中;子矩阵A的每个数据进入计算单元后重复利用Sq次,在读取数据流B的同时,利用剩余的带宽把下一次计算所需的数据流A提前加载到片上,并通过合理选择子矩阵B的深度,将计算时间和数据访存时间重叠;
浮点运算部件延迟隐藏于计算时间当中;通过设置子矩阵B的深度大于浮点运算部件的延迟值,将浮点运算部件的延迟隐藏在计算当中,中间不会产生停顿。
10.根据权利要求5-7中任意一项所述的基于线性阵列的可配置浮点矩阵乘实现装置,其特征在于,所述数据流B采用两级FIFO结构,所述两级FIFO结构包含第一级FIFO和第二级FIFO,第一级FIFO驱动所有的二级FIFO,每个二级FIFO驱动若干个PE。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学;北京动力机械研究所,未经中国人民解放军国防科技大学;北京动力机械研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111284552.6/1.html,转载请声明来源钻瓜专利网。