[发明专利]用于执行置换操作的设备和方法有效
申请号: | 201180075863.X | 申请日: | 2011-12-22 |
公开(公告)号: | CN104011671B | 公开(公告)日: | 2017-09-22 |
发明(设计)人: | E·乌尔德-阿迈德-瓦尔;R·凡伦天;M·哈高格;J·考博尔圣阿德里安;B·L·托尔;M·J·查尼;T·尤里尔;Z·斯波伯;A·格雷德斯廷 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 上海专利商标事务所有限公司31100 | 代理人: | 张东梅 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 执行 置换 操作 设备 方法 | ||
发明领域
本发明的实施例一般涉及计算机系统的领域。具体地,本发明的实施例涉及用于执行置换操作——在一个实施例中盖写诸如表或索引之类的数据结构——的装置和方法。
背景技术
背景技术
指令集,或指令集架构(ISA)是涉及编程的计算机架构的一部分,并可以包括本机数据类型、指令、寄存器架构、寻址模式、存储器架构,中断和异常处理,以及外部输入和输出(I/O)。在本文中术语指令一般指宏指令——即被提供给处理器(或指令转换器,该指令转换器(例如使用静态二进制翻译、包括动态编译的动态二进制翻译)翻译、变形、仿真,或以其他方式将指令转换成要由处理器处理的一个或多个指令)的指令)以用于执行的指令——而不是微指令或微操作(micro-op)——它们是处理器的解码器解码宏指令的结果。
ISA与微架构不同,微架构是实现指令集的处理器的内部设计。带有不同的微架构的处理器可以共享共同的指令集。例如,奔腾四(Pentium 4)处理器、酷睿(CoreTM)处理器、以及来自加利福尼亚州桑尼威尔(Sunnyvale)的超微半导体有限公司(Advanced Micro Devices,Inc.)的诸多处理器执行几乎相同版本的x86指令集(在更新的版本中加入了一些扩展),但具有不同的内部设计。例如,ISA的相同寄存器架构在不同的微架构中可使用已知的技术以不同方法来实现,包括专用物理寄存器、使用寄存器重命名机制(诸如,使用寄存器别名表RAT、重排序缓冲器ROB、以及隐退寄存器组;使用多映射和寄存器池)的一个或多个动态分配物理寄存器等。除非另作说明,短语寄存器架构、寄存器组,以及寄存器在本文中被用来指代对软件/编程器以及指令指定寄存器的方式可见的东西。在需要特殊性的情况下,形容词逻辑、架构,或软件可见的将用于表示寄存器架构中的寄存器/文件,而不同的形容词将用于指定给定微型架构中的寄存器(例如,物理寄存器、重新排序缓冲器、退役寄存器、寄存器池)。
指令集包括一个或多个指令格式。给定指令格式定义各个字段(比特的数量、比特的位置)以指定要执行的操作(操作码)以及对其要执行该操作的操作码等。通过指令模板(或子格式)的定义来进一步分解一些指令格式。例如,给定指令格式的指令模板可被定义为具有指令格式的字段(所包括的字段通常在相同的阶中,但是至少一些字段具有不同的比特位置,因为包括更少的字段)的不同子集,和/或被定义为具有不同解释的给定字段。由此,ISA的每一指令使用给定指令格式(并且如果定义,则在该指令格式的指令模板的给定一个中)来表达,并且包括用于指定操作和操作码的字段。例如,示例性ADD指令具有专用操作码以及包括指定该操作码的操作码字段和选择操作数的操作数字段(源1/目的地以及源2)的指令格式,并且该ADD指令在指令流中的出现将具有选择专用操作数的操作数字段中的专用内容。
科学、金融、自动矢量化的通用,RMS(识别、挖掘以及合成),以及可视和多媒体应用程序(例如,2D/3D图形、图像处理、视频压缩/解压缩、语音识别算法和音频操纵)常常需要对大量的数据项执行相同操作(被称为“数据并行性”)。单指令多数据(SIMD)是指使处理器对多个数据项执行操作的一种指令。SIMD技术特别适于能够在逻辑上将寄存器中的比特分割为若干个固定大小的数据元素的处理器,每一个元素都表示单独的值。例如,256比特寄存器中的比特可以被指定为四个单独的64比特打包的数据元素(四字(Q)大小的数据元素),八个单独的32比特打包的数据元素(双字(D)大小的数据元素),十六单独的16比特打包的数据元素(一字(W)大小的数据元素),或三十二个单独的8比特数据元素(字节(B)大小的数据元素)来被操作的源操作数。这种类型的数据被称为打包的数据类型或矢量数据类型,这种数据类型的操作数被称为打包的数据操作数或矢量操作数。换句话说,打包数据项或矢量指的是打包数据元素的序列,并且打包数据操作数或矢量操作数是SIMD指令(也称为打包数据指令或矢量指令)的源操作数或目的地操作数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180075863.X/2.html,转载请声明来源钻瓜专利网。