[发明专利]用于张量置换引擎的装置和方法在审
申请号: | 201910456393.X | 申请日: | 2019-05-29 |
公开(公告)号: | CN110659068A | 公开(公告)日: | 2020-01-07 |
发明(设计)人: | B·埃金 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/312 | 分类号: | G06F9/312;G06F9/315;G06F9/30;G06F9/345 |
代理公司: | 31100 上海专利商标事务所有限公司 | 代理人: | 何焜;黄嵩泉 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据元素 寄存器 读取地址 区块 写入地址 写入 读取 移位寄存器 存储装置 生成单元 混洗 组接收 引擎 置换 自由 | ||
1.一种处理器,包括:
第一存储装置,用于存储一个或多个张量,每个张量包括在第一维度上组织的多个张量数据元素;
张量置换引擎(TPE),用于在第二维度上重组所述多个张量数据元素,所述第一存储装置可由所述TPE访问,所述TPE包括:
读取地址生成单元(AGU),用于生成所述第一存储装置中的所述多个张量数据元素的多个读取地址;
写入AGU,用于生成所述第一存储装置中的所述多个张量数据元素的多个写入地址;以及
混洗寄存器区块(SRB),包括:
并行输入寄存器,用于从由所述读取AGU生成的所述多个读取地址读取所述多个张量数据元素的第一子集;
第一寄存器区块,用于接收所述多个张量数据元素的所述第一子集;以及
移位寄存器,用于从所述第一寄存器区块中的每个区块接收张量数据元素,所述移位寄存器中的每个张量数据元素要被写入来自由所述写入AGU生成的所述多个写入地址的写入地址。
2.如权利要求1所述的处理器,其中,所述多个张量数据元素在第一维度上从顺序存储器读取,并且其中,所述多个张量数据元素在第二维度上要被写入顺序存储器中。
3.如权利要求1所述的处理器,其中,所述读取地址生成单元进一步包括:
读取计数器,所述读取计数器的值在每次读取张量数据元素时加一;以及
位混洗单元,用于基于所述读取计数器值和读取位矩阵来生成所述多个读取地址。
4.如权利要求1所述的处理器,其中,所述写入AGU进一步包括:
写入计数器,所述写入计数器的值在每次写入张量数据元素时加一;以及
位混洗单元,用于基于所述写入计数器值和写入位矩阵生成所述多个读取地址。
5.如权利要求1所述的处理器,其中,所述SRB包括所述第一寄存器区块和第二寄存器区块,并且其中,当所述第一寄存器区块填充有所述多个张量数据元素的所述第一子集时,所述移位寄存器连接至所述第一寄存器区块并输出所述多个张量数据元素的所述第一子集,而所述多个张量数据元素的第二子集通过所述并行输入寄存器读入第二寄存器区块。
6.如权利要求1所述的处理器,其中,所述SRB的输出覆写所述第一存储装置中的所述多个张量数据元素的所述第一子集。
7.如权利要求1所述的处理器,其中,所述SRB的输出被写入第二存储装置。
8.如权利要求1所述的处理器,其中,所述第一存储装置是2级高速缓存或末级高速缓存。
9.一种方法,包括:
由读取地址生成单元(AGU)生成第一存储装置中的多个张量数据元素的多个读取地址;
由写入AGU生成所述第一存储装置中的所述多个张量数据元素的多个写入地址;
由混洗寄存器区块(SRB)的并行输入寄存器从由所述读取AGU生成的所述多个读取地址读取所述多个张量数据元素的第一子集;
由所述混洗寄存器区块的第一寄存器区块接收所述多个张量数据元素的所述第一子集;
由所述混洗寄存器区块的移位寄存器接收来自所述第一寄存器区块中的每个区块的张量数据元素;以及
将所述移位寄存器中的每个张量数据元素写入来自由所述写入AGU生成的所述多个写入地址的写入地址。
10.如权利要求9所述的方法,其中,在第一维度上从顺序存储器读取所述多个张量数据元素,并且其中,在第二维度上将所述多个张量数据元素写入顺序存储器中。
11.如权利要求9所述的方法,其中,所述读取地址生成单元进一步包括:
读取计数器,所述读取计数器的值在每次读取张量数据元素时加一;以及
位混洗单元,用于基于所述读取计数器值和读取位矩阵来生成所述多个读取地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910456393.X/1.html,转载请声明来源钻瓜专利网。