当前位置: 首页 > 专利查询>英特尔公司专利>正文

向较宽的寄存器进行依赖于模式的部分宽度加载的处理器、方法和系统技术方案

技术编号:20654939 阅读:20 留言:0更新日期:2019-03-23 06:41
一方面的方法由处理器执行。该方法包括接收部分宽度加载指令。部分宽度加载指令将存储器的存储器位置指示为源操作数,并且将寄存器指示为目的地操作数。该方法包括:响应于部分宽度加载指令而将数据从所指示的存储器位置加载到处理器。该方法包括:响应于部分宽度加载指令而将所加载数据的至少部分写入到寄存器的部分宽度。该方法包括:利用存储在寄存器的其余宽度中的、具有依赖于处理器的部分宽度加载模式的位值的位组来完成向寄存器写入。部分宽度加载指令不指示部分宽度加载模式。还公开了其他方法、处理器以及系统。

【技术实现步骤摘要】
向较宽的寄存器进行依赖于模式的部分宽度加载的处理器、方法和系统本申请是国际申请日为2014/6/19,国际申请号为PCT/US2014/043159,进入中国国家阶段的申请号为201480030091.1,题为“向较宽的寄存器进行依赖于模式的部分宽度加载的处理器、方法和系统”的专利技术专利申请的分案申请。背景
本文中所描述的各实施例一般涉及处理器。具体而言,本文中所描述的各实施例一般涉及从处理器中的存储器加载数据。
技术介绍
处理器的指令集通常包括处理器能够实行或执行的各种不同类型的指令。例如,通常这些指令集可包括各种算术指令、各种逻辑指令、用于将数据从存储器加载到处理器中的各种加载指令,等等。一个挑战在于,可以被包括在指令集中的指令的数量一般是有限的。指令中的每一条指令都可包括操作代码或操作码。操作码可以表示指令的用于指定要被执行的特定指令和/或操作的诸部分。例如,给定的从存储器中加载数据的指令可以具有给定的唯一操作码,以便区别该指令与其他类型的指令,并允许处理器识别该指令。操作码可以表示指令格式中的一个或更多字段或位置中的给定长度的位组。通常,期望试图保持操作码的位数相对短,同时提供期望数量的指令/操作。长操作码倾向于增加解码器的尺寸和/或复杂度。另外,长操作码倾向于增加总指令长度,这会使指令使用更多程序空间并占据高速缓存中的更多空间。可以利用给定的操作码长度和/或指令长度来唯一地标识的不同指令的数量通常比所期望的更受限。在不最终耗尽可用的操作码或增加可变指令长度架构中的指令的长度的情况下,通常不能够连续地将附加的指令添加到指令集中。在某些情况下,不同的指令和/或操作可以具有相同操作码(或操作码的相同部分),但包括一个或多个用于在不同版本的指令和/或操作之间进行区分的附加位。此方法的潜在的缺点在于,它可能倾向于增加指令长度,或者在某些情况下,在指令长度内可能会没有可用的空间来容纳用于在不同版本的指令/操作之间进行区分的这些附加位。附图说明通过参照以下描述以及用于示出实施例的附图,可最佳地理解本专利技术。在附图中:图1是具有用于执行部分宽度加载指令的处理器的计算机系统的实施例的框图。图2是可以根据符号扩展的部分宽度加载模式或零扩展的部分宽度加载模式来执行的部分宽度加载操作的第一示例实施例的框图。图3是可以根据合并的部分宽度加载模式或者零扩的展部分宽度加载模式来执行的部分宽度加载操作的第二示例实施例的框图。图4是可由处理器在处理部分宽度加载指令的实施例时执行的方法的实施例的流程框图。图5是包括用于执行零扩展的32位存储器寻址的64位架构处理器的计算机系统的实施例的框图。图6是为改变部分宽度加载模式而在用户级软件模块与操作系统模块之间的交互的实施例的框图。图7是可以由操作系统模块、特许模块或其他系统级模块执行的方法的实施例的框图。图8A是示出根据本专利技术的各实施例的示例性有序流水线和示例性寄存器重命名的无序发布/执行流水线的框图。图8B是示出根据本专利技术的各实施例的要包括在处理器中的有序架构核的示例性实施例和示例性寄存器重命名的无序发布/执行架构核两者的框图。图9A是根据本专利技术的各实施例的单个处理器核以及其与管芯上互连网络的连接以及其第2级(L2)高速缓存的本地子集的框图。图9B是根据本专利技术的各实施例的图9A中的处理器核的部分的展开图。图10是根据本专利技术的各实施例的可以具有多于一个的核、可以具有集成、存储器控制器、并可以具有集成图形设备的处理器的框图。图11所示为根据本专利技术的一个实施例的系统的框图。图12所示为根据本专利技术的实施例的第一更具体的示例性系统的框图。图13所示为根据本专利技术的实施例的第二更具体的示例性系统的框图。图14所示为根据本专利技术的实施例的SoC的框图。图15是根据本专利技术的各实施例的对照使用软件指令转换器将源指令集中的二进制指令转换成目标指令集中的二进制指令的框图。具体实施方式在某些实施例中,处理器可以具有用于以两种或更多种不同的对应方式来处理给定的指令和/或给定的操作码的两种或更多种模式,例如,用于以两种或更多不同的对应方式来处理从存储器进行部分宽度加载的指令的两种或更多种模式。在以下描述中,阐述多个特定细节(例如,特定的指令操作、处理器配置、微架构细节、操作序列等)。然而,在没有这些具体细节的情况下也可实践诸实施例。在其他实例中,未详细示出公知的电路、结构和技术,以避免混淆对本描述的理解。图1是计算机系统100的实施例的框图。在各实施例中,计算机系统可以表示台式计算机、膝上型计算机、笔记本计算机、平板计算机、上网本、智能电话、个人数字助理、蜂窝电话、服务器、网络设备(例如,路由器或交换机)、移动互联网设备(MID)、媒体播放器、智能电视、机顶盒、视频游戏控制器,或其他类型的电子设备。计算机系统包括处理器101的实施例。在某些实施例中,处理器可以是通用处理器。例如,处理器可以是通常被用作中央处理单元(CPU)类型的通用处理器。在其他实施例中,处理器可以是专用处理器。合适的专用处理器的示例包括但不仅限于,协处理器、图形处理器、通信处理器、网络处理器、加密处理器、嵌入式处理器、以及数字信号处理器(DSP),仅举数例。处理器可以是各种复杂指令集计算(CISC)处理器、各种精简指令集计算(RISC)处理器、各种超长指令字(VLIW)处理器中的任何一种,上述处理器的各种混合,或完全是其他类型的处理器。计算机系统还包括存储器110的实施例。存储器通过耦合或互连机制109与处理器101耦合。合适的耦合或互连机制的示例包括但不仅限于,一个或多个互连、总线、中枢、存储器控制器、芯片组、芯片组组件等,以及上述各项的各种组合。存储器可包括相同或者不同类型的一个或多个存储器设备。适用于各实施例的一种常用类型的存储器是动态随机存取存储器(DRAM),但是可替代选地使用其他类型的存储器(例如,闪存)。存储器可以具有存储在其中的软件,例如,一个或多个操作系统(OS)以及一个或多个应用(未示出)。在操作期间,软件的指令可以被提供给处理器,并且可在处理器上运行。如图所示,可以将部分宽度加载指令102提供给处理器101。例如,取出单元(未示出)可以取出部分宽度加载指令。部分宽度加载指令可表示机器代码指令、汇编语言指令、宏指令、或设备的ISA的控制信号。部分宽度加载指令可以显式地将存储器110中的存储器位置111指定(例如,通过一个或多个字段或位组)指定为源操作数,或以其他方式将存储器110中的存储器位置111指示(例如,隐式地指示)为源操作数,并且可将目的地寄存器115指定或以其他方式指示为将存储从存储器加载的部分宽度数据112的目的地操作数。在本文中使用术语“部分宽度数据”来指填充将存储数据的目的地寄存器115的仅部分宽度的数据,或作为将存储数据的目的地寄存器115的仅部分宽度的数据。处理器包括解码单元103。解码单元还可以被称为解码器或解码逻辑。解码单元可以接收部分宽度加载指令。解码单元可操作用于对相对较高层级的指令(例如,机器代码指令、汇编语言指令、宏指令,等等)进行解码,并输出一个或多个对应的相对较低层级的指令或控制信号(例如,一个或多个微指令、微操作、微代码入口点,等等)。较低层级的指令或控制信号可以反映、表本文档来自技高网...

【技术保护点】
1.一种处理器,包括:寄存器,所述寄存器具有宽度;解码单元,所述解码单元用于接收部分宽度加载指令,所述部分宽度加载指令用于将存储器的存储器位置指示为源操作数,并且将所述寄存器指示为目的地操作数,其中,所述解码单元用于确定所述处理器的多种不同类型的部分宽度加载模式中的要被用于所述部分宽度加载指令的部分宽度加载模式;存储器子系统,所述存储器子系统与所述解码单元耦合,所述存储器子系统用于响应于所述部分宽度加载指令而将数据从所指示的存储器位置加载到所述处理器;以及寄存器写入单元,所述寄存器写入单元与所述存储器子系统和所述寄存器耦合,所述寄存器写入单元响应于所述部分宽度加载指令而用于:将所加载数据的至少部分写入到所述寄存器的部分宽度,并且利用要被存储在所述寄存器的其余宽度中的、具有依赖于所述处理器的所述多种不同类型的部分宽度加载模式中的所述部分宽度加载模式的位值的位组来完成向所述寄存器写入,所述部分宽度加载指令不指示所述部分宽度加载模式。

【技术特征摘要】
2013.06.28 US 13/931,0701.一种处理器,包括:寄存器,所述寄存器具有宽度;解码单元,所述解码单元用于接收部分宽度加载指令,所述部分宽度加载指令用于将存储器的存储器位置指示为源操作数,并且将所述寄存器指示为目的地操作数,其中,所述解码单元用于确定所述处理器的多种不同类型的部分宽度加载模式中的要被用于所述部分宽度加载指令的部分宽度加载模式;存储器子系统,所述存储器子系统与所述解码单元耦合,所述存储器子系统用于响应于所述部分宽度加载指令而将数据从所指示的存储器位置加载到所述处理器;以及寄存器写入单元,所述寄存器写入单元与所述存储器子系统和所述寄存器耦合,所述寄存器写入单元响应于所述部分宽度加载指令而用于:将所加载数据的至少部分写入到所述寄存器的部分宽度,并且利用要被存储在所述寄存器的其余宽度中的、具有依赖于所述处理器的所述多种不同类型的部分宽度加载模式中的所述部分宽度加载模式的位值的位组来完成向所述寄存器写入,所述部分宽度加载指令不指示所述部分宽度加载模式。2.一种由处理器执行的方法,包括:接收部分宽度加载指令,所述部分宽度加载指令将存储器的存储器位置指示为源操作数,并且将寄存器指示为目的地操作数;当对所述部分宽度加载指令进行解码时,确定所述处理器的多种不同类型的部分宽度加载模式中的要被用于所述部分宽度加载指令的部分宽度加载模式;响应于所述部分宽度加载指令,将数据从所指示的存储器位置加载到所述处理器;响应于所述部分宽度加载指令,将所加载数据的至少部分写入到所述寄存器的部分宽度;以及利用存储在所述寄存器的其余宽度中的、具有依赖于所述处理器的所述多种不同类型的部分宽度加载模式中的所述部分宽度加载模式的位值的位组来完成向所述寄存器写入,所述部分宽度加载指令不指示所述部分宽度...

【专利技术属性】
技术研发人员:W·C·拉什Y·A·圣地亚哥M·G·迪克森
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1