【技术实现步骤摘要】
利用经掩码的全寄存器访问实现部分寄存器访问的处理器、方法和系统
本文所述的各实施例一般涉及处理器。特别地,本文所述的各实施例一般涉及访问处理器中的寄存器。
技术介绍
许多处理器具有单指令多数据(SMD)架构。在SMD架构中,打包数据指令、向量指令或者SMD指令可同时或并行地对多个数据元素或者多对数据元素进行操作。处理器可具有并行执行硬件,该并行执行硬件响应于打包数据指令来同时或并行地执行多个操作。 多个数据元素可在一个寄存器或存储器位置内被打包为打包数据。在打包数据中,寄存器或者其他存储位置的位可逻辑地分成数据元素序列。例如,128位宽的打包数据寄存器可具有两个64位宽的数据元素、四个32位数据元素、八个16位数据元素等。 在一些处理器架构中,多年来指令所使用的打包数据操作数的宽度已经增加。这种增加的打包数据宽度一般使得能够并发或并行处理更多的数据元素,这有助于改进性能。即使存在利用较宽的打包数据操作数的指令,但一般仍期望支持利用较窄打包数据操作数的旧指令,以例如提供向后兼容性。此外,通常用于存储较窄打包数据操作数的较窄寄存器可重叠(aliase)在用于存储较宽或扩展打包数据操作数的较宽寄存器上。 【附图说明】 通过参考用来说明本专利技术的实施例的以下描述和附图,可最好地理解本专利技术。在附图中: 图1是处理器的实施例的框图。 图2是一组合适的打包数据寄存器的第一实施例的框图。 图3A是在一些处理器中现有的一组寄存器的框图。 图3B是一组合适的打包数据寄存器的第二实施例的框图。 图4是指令处理装置的实施例的框图。 ...
【技术保护点】
一种处理器,包括:解码单元,用于将打包数据指令映射到经掩码的打包数据操作,所述打包数据指令至少指示第一较窄的源打包数据操作数和较窄的目的地操作数,所述经掩码的打包数据操作至少指示比所述第一较窄的源打包数据操作数宽且包括第一较窄的源打包数据操作数的第一较宽的源打包数据操作数,且指示比所述较窄的目的地操作数宽且包括所述较窄的目的地操作数的较宽的目的地操作数;以及与所述解码单元耦合的执行单元,所述执行单元用于利用打包数据操作掩码执行所述经掩码的打包数据操作,所述打包数据操作掩码包括用于由经掩码的打包数据操作存储的打包数据结果的每个对应结果数据元素的掩码元素,其中与由经掩码的打包数据操作存储的、本来不会由打包数据指令存储的结果数据元素对应的所有掩码元素被掩码掉,所述执行单元用于将打包数据结果存储在较宽的目的地操作数中。
【技术特征摘要】
2013.03.30 US 13/854,0891.一种处理器,包括: 解码单元,用于将打包数据指令映射到经掩码的打包数据操作,所述打包数据指令至少指示第一较窄的源打包数据操作数和较窄的目的地操作数,所述经掩码的打包数据操作至少指示比所述第一较窄的源打包数据操作数宽且包括第一较窄的源打包数据操作数的第一较宽的源打包数据操作数,且指示比所述较窄的目的地操作数宽且包括所述较窄的目的地操作数的较宽的目的地操作数;以及 与所述解码单元耦合的执行单元,所述执行单元用于利用打包数据操作掩码执行所述经掩码的打包数据操作,所述打包数据操作掩码包括用于由经掩码的打包数据操作存储的打包数据结果的每个对应结果数据元素的掩码元素,其中与由经掩码的打包数据操作存储的、本来不会由打包数据指令存储的结果数据元素对应的所有掩码元素被掩码掉,所述执行单元用于将打包数据结果存储在较宽的目的地操作数中。2.如权利要求1所述的处理器,其特征在于,所述执行单元用于写入与较宽的目的地操作数对应的寄存器的整个宽度,其中所述较窄的目的地操作数仅对应于所述寄存器的宽度的一部分。3.如权利要求1所述的处理器,其特征在于,所述执行单元用于存储打包数据结果,其中将由与打包数据指令相关联的操作更新的结果数据元素仅占据在寄存器的最低有效部分和寄存器的最高有效部分之间的寄存器的中间部分。4.如权利要求1所述的处理器,其特征在于,所述解码单元用于接收打包数据指令,所述打包数据指令还指示第二较窄的源打包数据操作数,且其中所述解码单元用于所述打包数据指令映射到经掩码的打包数据操作,所述经掩码的打包数据操作指示比第二较窄的源打包数据操作数宽且 包括第二较窄的源打包数据操作数的第二较宽的源打包数据操作数。5.如权利要求4所述的处理器,其特征在于,所述解码单元用于接收打包数据指令,所述打包数据指令指示第一和第二较窄的源打包数据操作数中的至少一个非对应数据元素对上的操作,所述非对应数据元素不在对应的位位置中,且其中所述处理器还用于执行将所述非对应数据元素对置于对应的位位置中的操作,以便由执行单元在执行经掩码的打包数据操作时对其进行操作。6.如权利要求5所述的处理器,其特征在于,所述处理器用于通过执行移位操作、混洗操作和置换操作之一来执行将所述非对应数据元素对置于对应的位位置中的操作7.如权利要求1所述的处理器,其特征在于,所述打包数据指令不指示打包数据操作掩码。8.如权利要求1所述的处理器,其特征在于,所述打包数据指令指示打包数据操作掩码,所述打包数据操作掩码具有比由所述执行单元用于执行经掩码的打包数据操作的打包数据操作掩码少的掩码元素。9.如权利要求1所述的处理器,其特征在于,所述执行单元用于存储打包数据结果,其中与被掩码掉的掩码元素对应的每个结果数据元素的值不变,且其中与未被掩码的掩码元素对应的每个结果数据元素的值由与打包数据指令相关联的操作更新。10.一种在处理器中的方法,包括: 接收打包数据指令,所述打包数据指令至少指示第一较窄的源打包数据操作数和较窄的目的地操作数;将所述打包数据指令映射到经掩码的打包数据操作,所述经掩码的打包数据操作至少指示比所述第一较窄的源打包数据操作数宽且包括第一较窄的源打包数据操作数的第一较宽的源打包数据操作数,且指示比所述较窄的目的地操作数宽且包括所述较窄的目的地操作数的较宽的目的地操作数; 生成打包数据操作掩码,所述打...
【专利技术属性】
技术研发人员:E·T·格罗科斯基,S·Y·索托德,B·M·盖,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。