提取高速缓存属性工具及其指令制造技术

技术编号:4890390 阅读:257 留言:0更新日期:2012-04-11 18:40
在操作计算机系统的方法中,提供了一种工具以及具有计算机体系结构的高速缓存机器指令,所述高速缓存机器指令用于指定目标高速缓存的高速缓存级别以及目标高速缓存属性以便获取一个或多个目标高速缓存的高速缓存属性。所请求的所述目标高速缓存(多个)的高速缓存属性保存在寄存器中。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及计算机系统,更具体地说,涉及计算机系统处理器指令功能。
技术介绍
商标IBM 是位于美国纽约阿蒙克的国际商业机器公司的注册商标。S/390、Z900 和z990以及其他产品名称是国际商业机器公司或其他公司的注册商标或产品名。从上世纪六十年代被称为IBM System 360的机器开始一直到现在,IBM开发 了一种被称为“大型机”的体系结构,其操作原理通过描述可以在IBM专利技术家所专利技术的“大 型机”指令实现上执行的指令阐述了机器体系结构,由于这种“大型机”指令实现对于改进 “大型机”所表示的计算机器状态具有重大贡献(如多年来所称的收录在IBM的操作原理 中的重要贡献),因此被广泛采用。2007年4月出版的第六版“IBM z/Architecture Principles of Operation (IBM z/Architecture⑧操作原理)”已成为出版的标准参考 SA22-7832-05 并被纳入 IBM z9 mainframe sever (IBM z9 大型机服务器)中。IBM z/Architecture Principles of Operation (IBM z/Architecture ^ SA22-7832-05)在此全部引入作为参考。参考图1Α,其中示出了现有技术主计算机系统50的代表组件。如本领域公知的, 计算机系统中也可以采用其他布置。代表性主计算机50包括一个或多个与主存储装置(计 算机存储器2)通信的CPU 1以及到存储设备11和网络10的1/0接口以便与其他计算机 或SAN等通信。CPU 1与具有架构的指令集以及架构的功能性的体系结构兼容。CPU 1可 具有将程序地址(虚拟地址)转换为存储器的实地址的动态地址转换(DAT) 3。DAT通常包 括转换后备缓冲器(TLB)7,其用于对转换进行缓存以便对计算机存储器2块的后续访问没 有地址转换延迟。通常在计算机存储器2和处理器1之间使用高速缓存9。高速缓存9可 具有层次结构,其中较大的高速缓存可用于多个CPU,而较小、较快(较低级别)的高速缓 存位于较大的高速缓存和每个CPU之间。在某些实施方式中,分割较低级别的高速缓存以 针对指令取回和数据访问提供单独的低级别高速缓存。在一个实施例中,由指令取回单元 4通过高速缓存9从存储器2取回指令。所述指令在指令解码单元(6)中进行解码并被分 派到(在某些实施例中,与其他指令一起分派到)指令执行单元8。通常采用若干执行单元 8,例如算术执行单元、浮点执行单元和分支指令执行单元。指令由执行单元执行,所述执行 单元根据需要从指令指定的寄存器或存储器存取操作数。如果要访问的(加载或存储的) 操作数来自存储器2,则通常由加载/存储单元5在被执行指令的控制下处理所述访问。指 令可以在硬件电路或在内部微代码(固件)中执行,也可以通过这两者的组合来执行。在图IB中,提供了仿真具有主机体系结构的主计算机系统50的现有技术的仿真 的主计算机系统21的实例。在仿真的主计算机系统21中,主处理器(CPU)I为仿真的主处 理器(或虚拟主处理器)且包括本机指令集体系结构不同于主计算机50的处理器1的指 令集体系结构的仿真处理器27。仿真的主计算机系统21具有可由仿真处理器27访问的存 储器22。在一个实例实施例中,存储器22被分为主计算机存储器2部分和仿真例程23部分。根据主计算机体系结构,主计算机存储器2可用于仿真的主计算机21的程序。仿真处 理器27执行体系结构不同于仿真的处理器1的体系结构的架构指令集的本机指令(从仿 真例程存储器23获取所述本机指令),并且可通过使用从序列和访问/解码例程获取的一 个或多个指令,从主计算机存储器2中的程序访问指令以便执行,所述序列和访问/解码例 程可解码所访问的主机指令(多个)以确定用于仿真被访问的主机指令的功能的本机指令 执行例程。其他针对主计算机系统50的体系结构定义的工具可以由架构的工具例程进行 仿真,其中包括诸如通用寄存器、控制寄存器、动态地址转换和I/O子系统支持以及处理器 高速缓存之类的工具。所述仿真例程还可利用仿真处理器207中的可用功能(例如通用寄 存器和虚拟地址的动态转换)提高自身的性能。还可提供专用硬件和卸载引擎来帮助处理 器27仿真主计算机50的功能。在大型机中,架构的机器指令由程序员使用,现在通常是由“C”语言程序员通过编 译器应用进行使用。这些存储在存储介质中的指令可在zArchitecture IBM Server中本机 地执行,或者备选地在执行其他体系结构的机器内执行。它们可以在现有和将来的IBM大 型机服务器以及其他IBM机器(例如,pSeries Servers和xSeries Servers)上被仿 真。它们可以在运行Linux的机器或使用IBM 、Intel 、AMD 、Sun Microsystems以及其 他厂商制造的硬件的多种机器中执行。除了在运行Z/Architecture 的硬件上执行以外, 还可以使用 Linux 以及通过 Hercules、UMX、FSI (Fundamental Software, Inc)或 Platform Solutions, Inc使用仿真的机器,其中通常在仿真模式下执行指令。在仿真模式下,仿真软 件由本机处理器执行以仿真被仿真的处理器的体系结构。本机处理器27通常执行包括固件或本机操作系统的仿真软件23以执行对被仿真 处理器的仿真。仿真软件23负责取回和执行被仿真处理器体系结构的指令。仿真软件23 维护被仿真程序计数器以跟踪指令边界。仿真软件23可一次取回一个或多个被仿真机器 指令并将所述一个或多个被仿真机器指令转换为由本机处理器27执行的一组相应本机机 器指令。可以缓存这些转换后的指令以便完成更快的转换。尽管如此,仿真软件必须维护 被仿真处理器体系结构的体系结构规则以确保为被仿真处理器编写的操作系统和应用正 确运行。而且,仿真软件必须提供由被仿真处理器1体系结构识别的资源,其中包括但不限 于控制寄存器、通用寄存器、浮点寄存器、包括例如段表和页表的动态地址转换功能、中断 机制。上下文切换机制、日时(TOD)时钟以及1/0子系统的架构接口,以便被设计为在被仿 真处理器上运行的操作系统或应用程序可以在具有仿真软件的本机处理器上运行。解码被仿真的特定指令,并且调用子例程以执行单个指令的功能。在例如“C” 子例程或驱动程序,或某些其他提供特定硬件的驱动程序的方法(本领域的技术人员在 理解优选实施例说明之后将理解此方法)中实现仿真被仿真的处理器1的功能仿真软 件功能23。各种软件和硬件仿真专利示出了多种仿真针对不同机器构建的目标机器指 令格式的已知方法,本领域的技术人员可以理解所述目标机器指令格式,以及上述引用 所使用的商业软件技术,所述专利包括但不限于Beausolei 1等人的“Multiprocessor forhardware emulation(硬件仿真的多处理器,专利号US 5551013) ;Scalzi等人的 Preprocessing of stored target routines for emulatinginc本文档来自技高网...

【技术保护点】
一种操作计算机的方法,所述方法包括:由处理系统的处理器取回针对计算机体系结构定义的高速缓存机器指令,所述高速缓存机器指令包括操作码、操作数标识符,所述操作数标识符标识操作数位置;执行所述高速缓存机器指令,所述执行包括:根据高速缓存级别标识符,确定目标高速缓存;根据高速缓存属性标识符,确定要提取的高速缓存属性;从所述目标高速缓存提取所确定的高速缓存属性;将所提取的高速缓存属性保存在所标识的操作数位置中。

【技术特征摘要】
【国外来华专利技术】US 2008-1-11 11/972,675一种操作计算机的方法,所述方法包括由处理系统的处理器取回针对计算机体系结构定义的高速缓存机器指令,所述高速缓存机器指令包括操作码、操作数标识符,所述操作数标识符标识操作数位置;执行所述高速缓存机器指令,所述执行包括根据高速缓存级别标识符,确定目标高速缓存;根据高速缓存属性标识符,确定要提取的高速缓存属性;从所述目标高速缓存提取所确定的高速缓存属性;将所提取的高速缓存属性保存在所标识的操作数位置中。2.如权利要求1中所述的方法,其中所述操作数标识符包括标识第一寄存器的第一寄 存器字段,其中确定所述高速缓存属性标识符包括将所述指令的位移字段与所述指令的第二字段所关联的值进行代数相加以确定所述 高速缓存属性标识符。3.如权利要求1中所述的方法,其中要提取的高速缓存属性包括以下项中的任意一个一个或多个高速缓存的高速缓存拓扑摘要; 所述目标高速缓存的行大小; 所述目标高速缓存的总大小;或 所述目标高速缓存的组关联性级别。4.如权利要求3中所述的方法,其中所提取的高速缓存拓扑摘要包括一个或多个摘 要,每个摘要用于由所述高速缓存级别标识符指定的级别处的高速缓存,其中对应高...

【专利技术属性】
技术研发人员:D格雷纳T斯莱格尔
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

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

1