首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种向量DSP核的矩阵LU分解向量化计算方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:江苏华创微系统有限公司;中国电子科技集团公司第十四研究所

摘要:本发明公开一种向量DSP核的矩阵LU分解向量化计算方法,包括如下步骤:S1、矩阵补零;S2、对矩阵B转置得到转置矩阵C;S3、转置矩阵C内的上三角矩阵D的行Dr进行行消元;S4、按照公式R=R‑Dr’*er进行更新矩阵panel的计算;S5、判断r是否等于N‑1,若不是,令r=r+1,转步骤S3,若是转步骤S6;S6、向量DSP核使用向量指令进行矩阵转置获得矩阵B的LU分解结果;S7、向量DSP核将获得矩阵B的LU分解结果拷贝至原矩阵在DDR存储器中的存储位置。优点:本发明计算方法,通过向量化的矩阵转置操作将矩阵LU分解中的非连续存储访问转化为连续存储访问,有利于充分发挥向量加载数据的优势。

主权项:1.一种向量DSP核的矩阵LU分解向量化计算方法,包括如下步骤:S1、向量DSP核根据芯片向量寄存器位宽完成矩阵补零;具体方法如下:设,待求解矩阵标记为矩阵A,其规模为M*M阶,首地址记为A00;补零后的矩阵记为矩阵B,规模为N*N阶,首地址记为B00;每个矩阵的矩阵元素均为u字节,向量DSP核内的向量寄存器位宽为w字节;S1.1、判断矩阵A的矩阵行长是否为向量寄存器位宽w的整数倍,若是,矩阵A不需要补零,矩阵A与矩阵B标记为同一矩阵,N=M,B00=A00,转至步骤S2;反之,转至步骤S1.2;S1.2、确定矩阵B的规模N,方法如下:条件一、NM,条件二、N*u%w=0;满足条件一和条件二的同时取得最小的N值为所需要的N值,得到矩阵B;将矩阵B初始化为全零矩阵;S1.3、分别计算矩阵A和矩阵B的第i行元素首地址:Ai[0]=A00+i*M*u;公式(1)Bi[0]=B00+i*N*u;公式(2)其中,Ai[0]为矩阵A第i行元素首地址的指针变量,Bi[0]为矩阵B第i行元素首地址的指针变量;i取值范围[0-(M-1)],初始化i=0;S1.4、将矩阵A中第i行首地址为Ai[0]处的连续M个元素拷贝至矩阵B中第i行首地址为Bi[0]处;S1.5、判断i是否等于M-1,若不是,令i=i+1,转至步骤S1.3;反之,转至步骤S2;S2、向量DSP核使用向量指令对矩阵B转置,得到转置矩阵C;具体方法如下:设,转置后的矩阵为C,矩阵C首地址记为C00;S2.1、矩阵转置按照子矩阵为单位进行,由于使用一条向量Load指令加载w字节数据,故设子矩阵的规模为wu*wu阶;S2.2、分别计算矩阵B和矩阵C中的所有子矩阵的首地址:Bkj[0]=B00+k*N*u+j*w公式(3)Cjk[0]=C00+j*N*u+k*w公式(4)其中,Bkj[0]为矩阵B中的子矩阵的首地址的指针变量,Ckj[0]为矩阵C中的子矩阵的首地址的指针变量,k为矩阵B的子矩阵的行坐标或矩阵C的子矩阵的列坐标,k的取值范围[0-N*uw-1],j为矩阵B的子矩阵的列坐标或矩阵C的子矩阵的行坐标,j的取值范围[0-N*uw-1];初始化k=0,j=0;S2.3、依次使用向量Load指令从矩阵B中首地址为Bkj[0]处加载子矩阵的每行数据,分别存入向量寄存器;S2.4、使用向量混洗指令完成矩阵B中子矩阵的转置计算,使用向量Store指令将计算结果存入矩阵C中首地址为Cjk[0]处的子矩阵中;S2.5、判断j是否等于N*uw-1,若不是,令j=j+1,转至步骤S2.2,如是转至步骤S2.6;S2.6、判断k是否等于N*uw-1,若不是,令k=k+1,转至步骤S2.2,如是转至步骤S3;S3、向量DSP核对转置矩阵C内的上三角矩阵D的行Dr按照公式Dr=DrDr[0]进行行消元,更新矩阵D的行Dr,初始化r=0;S4、向量DSP核按照公式R=R-Dr’*er进行更新矩阵panel的计算;S5、判断r是否等于N-1,若不是,令r=r+1,转步骤S3,若是转步骤S6;S6、向量DSP核使用向量指令进行矩阵转置获得矩阵B的LU分解结果;S7、向量DSP核将获得矩阵B的LU分解结果拷贝至原矩阵在DDR存储器中的存储位置。

全文数据:

权利要求:

百度查询: 江苏华创微系统有限公司 中国电子科技集团公司第十四研究所 一种向量DSP核的矩阵LU分解向量化计算方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。