发明名称 |
用于提供利用跨越功能的向量加载操作/存储操作的指令和逻辑 |
摘要 |
指令和逻辑提供利用跨越功能的向量加载操作和/或存储操作。在一些实施例中,响应于指定加载的集合、第二操作、目的地寄存器、操作数寄存器、存储器地址以及跨越长度的指令,执行单元读取掩码寄存器中的值,其中掩码寄存器中的字段对应于从该存储器地址到存储器中的数据元素的跨越长度倍数。第一掩码值指示该元素尚未从存储器中被加载,而第二值指示该元素无需被加载或已经被加载。对于具有第一值的每个数据元素,将该数据元素从存储器加载到相应的目的地寄存器位置中,并且将掩码寄存器中的相应值改成第二值。然后利用目的地和操作数寄存器中的相应数据来执行第二操作以产生结果。可在错误之后重启该指令。 |
申请公布号 |
CN103827814A |
申请公布日期 |
2014.05.28 |
申请号 |
CN201180073690.8 |
申请日期 |
2011.09.26 |
申请人 |
英特尔公司 |
发明人 |
E·乌尔德-阿迈德-瓦尔;K·A·杜什;S·赛尔;C·R·扬特 |
分类号 |
G06F9/30(2006.01)I;G06F9/305(2006.01)I;G06F9/06(2006.01)I |
主分类号 |
G06F9/30(2006.01)I |
代理机构 |
上海专利商标事务所有限公司 31100 |
代理人 |
何焜 |
主权项 |
一种处理器,包括:第一寄存器,包括第一多个数据字段,其中上述第一寄存器中的第一多个数据字段中的每个数据字段对应于存储器中的相应数据元素的与起始地址相距的跨越长度的倍数,其中对于所述第一寄存器中的每个数据字段,第一值指示相应的元素尚未从所述存储器被加载,而第二值指示所述相应的数据元素无需被加载或已经从所述存储器被加载;解码级,用于解码第一指令,所述第一指令指定所述第一寄存器和与所述第一多个数据字段中的一个或多个数据字段相对应的加载操作的集合,并且指定第二单指令多数据(SIMD)操作;以及一个或多个执行单元,用于响应于经解码的第一指令:读取第一寄存器中的每个数据字段的值;对于所述第一寄存器中的所述多个数据字段中的具有第一值的每个数据字段,从所述存储器中加载相应的数据元素并将所述相应的数据元素存储在第二寄存器中,所述第二寄存器具有第二多个数据字段,所述第二多个数据字段的一部分用于存储被加载的数据元素,并且将第一寄存器中的相应的数据字段的值从所述第一值改变成所述第二值;以及利用所述第二多个数据字段中的所述一部分中存储的数据元素来执行所述第二SIMD操作,以产生相应的结果数据元素。 |
地址 |
美国加利福尼亚州 |