[发明专利]运算装置及方法有效
申请号: | 201811085529.2 | 申请日: | 2018-09-18 |
公开(公告)号: | CN110147222B | 公开(公告)日: | 2021-02-05 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 安徽寒武纪信息科技有限公司 |
主分类号: | G06F7/78 | 分类号: | G06F7/78 |
代理公司: | 北京维昊知识产权代理事务所(普通合伙) 11804 | 代理人: | 李波;孙新国 |
地址: | 231283 安徽省合肥市高新区习友路3333*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 运算 装置 方法 | ||
本公开属于计算机领域,更具体地涉及一种运算装置及方法,所述运算装置,包括:运算控制模块,用于接收或确定分块信息;迭代运算模块,用于根据所述分块信息对运算矩阵进行迭代分块、转置及迭代合并运算,得到所述运算矩阵的转置矩阵。本公开提出的装置及方法,在降低操作时间复杂度的同时也使运算操作的使用更为简单高效。
技术领域
本公开属于计算机技术领域,更具体地涉及一种运算装置及方法。
背景技术
矩阵转置运算是各领域中使用频率很高的一种基本数学运算。除普通的矩阵转置(即使矩阵行与列互换)之外,还有行转置、列转置、反转置、90°左翻转、90°右翻转等特殊的矩阵转置操作,在矩阵运算中也十分常用。当前阶段,使用计算机进行矩阵转置(包括非常规转置,以下均称转置)操作的通常方法为利用通用处理器编写两层循环进行不同地址上的数据交换,其时间复杂度为O(n^2)。这样时间复杂度的矩阵转置运算在复杂系统中会成为提高性能的瓶颈之一,尤其是在矩阵元素量很大的情况下。
发明内容
基于以上问题,本公开的目的在于提出一种运算装置及方法,用于解决以上技术问题的至少之一。
为了达到上述目的,作为本公开的一个方面,提供了一种运算装置,包括:
运算控制模块,用于接收或确定分块信息;
迭代运算模块,用于根据所述分块信息对运算矩阵进行迭代分块、转置及迭代合并运算,得到所述运算矩阵的转置矩阵。
在一些实施例中,所述迭代运算模块包括:
迭代分块单元,用于根据分块信息对运算矩阵进行迭代分块运算得到n个分块矩阵;
矩阵运算单元,用于获取所述n个分块矩阵,并对n个分块矩阵分别进行转置运算,得到n个分块矩阵的转置矩阵;
迭代合并单元,用于获取并迭代合并所述n个分块矩阵的转置矩阵,得到所述运算矩阵的转置矩阵,其中,n为自然数。
在一些实施例中,所述迭代分块单元包括:矩阵判断单元、矩阵分块单元和缓存单元;其中,所述矩阵分块单元用于根据分块信息对运算矩阵进行分块并将分块矩阵发送至所述缓存单元;所述缓存单元用于将分块矩阵重新输入至所述矩阵判断单元;若有超过预定规模阈值M的分块矩阵,则将其发送至所述矩阵分块单元继续进行分块操作,如是迭代,直至任一分块矩阵的规模均小于或等于所述预定规模阈值M。
在一些实施例中,所述矩阵运算单元包括地址映射生成单元、地址计数器和元素交换单元;其中,所述地址映射生成单元用于根据输入的矩阵规模信息和地址信息生成地址映射表;所述元素交换单元用于根据地址映射表进行矩阵相应位置元素的交换;所述地址计数器单元用于判断矩阵是否已经全部处理完毕。
在一些实施例中,所述迭代合并单元包括缓存单元,地址映射生成单元、地址计数器、矩阵合并单元和矩阵判断单元;其中,所述缓存单元用于接收转置后的分块矩阵;所述矩阵合并单元接收所述转置后的分块矩阵并合并;所述地址映射生成单元和地址计数器用于将每个分块矩阵作为一个元素,进行元素交换操作;所述矩阵判断单元用于确定合并得到的矩阵的规模。
在一些实施例中,所述的运算装置还包括:
地址存储模块,用于存储所述运算矩阵的地址信息;以及
数据存储模块,用于存储所述运算矩阵,并存储运算后的转置矩阵;
其中,所述运算控制模块用于接收所述运算矩阵的地址信息和分块信息,或者用于从所述地址存储模块提取所述运算矩阵的地址信息,并根据所述运算矩阵的地址信息分析得到分块信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽寒武纪信息科技有限公司,未经安徽寒武纪信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811085529.2/2.html,转载请声明来源钻瓜专利网。