-
公开(公告)号:CN101819518B
公开(公告)日:2013-09-11
申请号:CN200910008371.3
申请日:2009-02-26
Applicant: 国际商业机器公司
IPC: G06F9/38
CPC classification number: G06F9/30105 , G06F9/30116 , G06F9/3834 , G06F9/384 , G06F9/3842 , G06F9/3863 , G06F9/528
Abstract: 本发明提供了一种在事务内存中快速保存上下文的方法和装置,事务内存包括多个体系结构寄存器和数量多于体系结构寄存器的物理寄存器,该方法包括:建立映射表,其包括与体系结构寄存器一一对应的多个表项,每个表项包含映射到多个体系结构寄存器的多个第一物理寄存器的索引和影子比特;当在事务处理中检测到体系结构寄存器的更新、且影子比特为无效值时,将影子比特设为有效值,并利用第一物理寄存器的索引为体系结构寄存器设置影子寄存器;和向影子寄存器映射一第二物理寄存器,以保存更新处理产生的修改值,并由体系结构寄存器对应的第一物理寄存器保存更新处理前的原值。本发明的方法减少了上下文保存/恢复的开销,提高了程序的简易性。
-
公开(公告)号:CN102314333A
公开(公告)日:2012-01-11
申请号:CN201110168215.0
申请日:2011-06-22
Applicant: 国际商业机器公司
Inventor: 丹.F.格雷纳 , 马塞尔.米特兰 , 蒂莫西.J.斯莱格尔
IPC: G06F9/30
CPC classification number: G06F9/3012 , G06F9/30098 , G06F9/30105 , G06F9/30138 , G06F9/30145 , G06F9/30167 , G06F9/30189 , G06F9/322 , G06F9/342
Abstract: 计算机采用一组通用寄存器(GPR)。每个GPR包括多个部分。在大GPR模式中操作的诸如操作系统和应用的程序访问整个GPR,然而在小GPR模式中操作的诸如应用的程序一次仅有权访问一个部分。小GPR模式中的指令操作码可以确定访问哪个部分。
-
公开(公告)号:CN101689150B
公开(公告)日:2011-11-30
申请号:CN200780053358.9
申请日:2007-06-20
Applicant: 富士通株式会社
Inventor: 菅竜二
IPC: G06F12/16
CPC classification number: G06F11/1064 , G06F9/30105 , G06F9/30127 , G06F9/30138 , G06F9/3865 , G06F11/2215 , G06F11/2236
Abstract: 一种信息处理装置及控制方法,处理装置具有:第1寄存器文件;第2寄存器文件,其保存第1寄存器文件所保存的数据的一部分;运算单元,其使用从第2寄存器文件读出的数据进行运算,并把运算结果作为输出数据进行输出;和指示单元,其发出写入指示及第1和第2发生指示,该写入指示用于指示向第1和第2寄存器文件双方写入输出数据及其错误检测码,该第1和第2发生指示用于指示第1和第2寄存器文件各自的伪故障生成。处理装置还具有:第1控制单元,其在接收到写入指示和第1发生指示时,发出第1生成指示;第1生成单元,其在接收到第1生成指示时,根据输出数据和错误检测码生成第1伪故障数据,并输出给第1寄存器文件;以及同样的第2控制单元和第2生成单元。
-
公开(公告)号:CN1353832A
公开(公告)日:2002-06-12
申请号:CN00808209.X
申请日:2000-05-12
Applicant: 英特尔公司
CPC classification number: G06F9/383 , G06F9/30047 , G06F9/30072 , G06F9/30105 , G06F9/30127 , G06F9/3013 , G06F9/325 , G06F9/3455 , G06F9/384
Abstract: 本发明提供了一种用以从循环内有效地预取数组数据的机制。一组循环移位寄存器中的一个寄存器对预取指令进行参数化。在每一次循环迭代时,根据该参数化的预取指令实施预取,并且对被该预取指令选中的地址进行调整。针对每一次循环迭代都要对寄存器进行循环移位,并且相应地对由循环移位寄存器参数化的预取指令进行调整。针对给定数组的预取之间的迭代数目由循环移位寄存器组中的组元数目确定。
-
公开(公告)号:CN1278344A
公开(公告)日:2000-12-27
申请号:CN98810765.1
申请日:1998-09-30
Applicant: 艾迪尔公司
IPC: G06F12/02
CPC classification number: G06F9/463 , G06F9/30105 , G06F9/30127 , G06F9/30134
Abstract: 一种计算机实现的用于把寄存器栈(86)里的某通用寄存器(80)的内容传送到主存储器(82)里的后备存储器(94)中的单元上的方法和设备。当向后备存储器里的单元传送通用寄存器的内容时,本发明推荐在一个临时集合寄存器(108或110)中收集寄存器预定组中每个通用寄存器所包含的属性位。一旦填满该临时集合寄存器,就把该寄存器中的内容写到后备存储器里的下一个可用的单元上。类似地,在从后备存储器恢复各寄存器时,把后备寄存器中保存的属性位的集合发送到临时集合寄存器。然后,把每个属性位和相关的数据一起保持到通用寄存器中,从而恢复每个通用寄存器以前的内容。
-
公开(公告)号:CN1177137A
公开(公告)日:1998-03-25
申请号:CN97116429.0
申请日:1997-09-12
Applicant: 三洋电机株式会社
IPC: G06F9/22
CPC classification number: G06F9/30058 , G06F9/30105
Abstract: 本发明公开一种程序执行方法及利用该方法的装置,其在寄存器组内的多个通用寄存器,对其分别一并设置标记,在应写入到通用寄存器内的数据为零的情况下,在写入该数据的同时使该寄存器的标记置位,以后,想要用条件转移指令来检查通用寄存器的数据是否为零时,不是读出数据进行运算,而是观看标记。
-
公开(公告)号:CN108027773A
公开(公告)日:2018-05-11
申请号:CN201680054500.0
申请日:2016-09-13
Applicant: 微软技术许可有限责任公司
IPC: G06F12/0806 , G06F9/38
CPC classification number: G06F9/3016 , G06F9/268 , G06F9/30007 , G06F9/30021 , G06F9/30036 , G06F9/3004 , G06F9/30043 , G06F9/30047 , G06F9/3005 , G06F9/30058 , G06F9/30072 , G06F9/30076 , G06F9/30087 , G06F9/3009 , G06F9/30098 , G06F9/30101 , G06F9/30105 , G06F9/3013 , G06F9/30145 , G06F9/30167 , G06F9/30189 , G06F9/32 , G06F9/321 , G06F9/345 , G06F9/35 , G06F9/355 , G06F9/3557 , G06F9/3802 , G06F9/3804 , G06F9/3822 , G06F9/3824 , G06F9/383 , G06F9/3836 , G06F9/3838 , G06F9/3842 , G06F9/3848 , G06F9/3851 , G06F9/3853 , G06F9/3855 , G06F9/3859 , G06F9/3867 , G06F9/3891 , G06F9/466 , G06F9/528 , G06F11/36 , G06F11/3648 , G06F11/3656 , G06F12/0806 , G06F12/0811 , G06F12/0862 , G06F12/0875 , G06F12/1009 , G06F13/4221 , G06F15/7867 , G06F15/80 , G06F15/8007 , G06F2212/452 , G06F2212/602 , G06F2212/604 , G06F2212/62 , Y02D10/13 , Y02D10/14 , Y02D10/151
Abstract: 公开了用于使用硬件结构来控制存储器访问指令在基于块的处理器架构中的执行的装置和方法,该硬件结构指示指令块中的存储器访问指令的相对排序。在所公开的技术的一个示例中,一种执行具有多个存储器加载和/或存储器存储指令的指令块的方法包括选择下一存储器加载或者存储器存储指令,以基于被编码在块内的依赖性和对存储数据的存储向量执行,该数据指示指令块中的哪些存储器加载和存储器存储指令已经执行。可以使用存储掩码来对存储向量进行掩码。可以在对指令块译码时生成或者从指令块头部复制存储掩码。基于编码的依赖性和经掩码的存储向量,下一指令可以在它的依赖性可用时发出。
-
公开(公告)号:CN108027771A
公开(公告)日:2018-05-11
申请号:CN201680054472.2
申请日:2016-09-13
Applicant: 微软技术许可有限责任公司
IPC: G06F12/0806 , G06F9/38
CPC classification number: G06F9/3016 , G06F9/268 , G06F9/30007 , G06F9/30021 , G06F9/30036 , G06F9/3004 , G06F9/30043 , G06F9/30047 , G06F9/3005 , G06F9/30058 , G06F9/30072 , G06F9/30076 , G06F9/30087 , G06F9/3009 , G06F9/30098 , G06F9/30101 , G06F9/30105 , G06F9/3013 , G06F9/30145 , G06F9/30167 , G06F9/30189 , G06F9/32 , G06F9/321 , G06F9/345 , G06F9/35 , G06F9/355 , G06F9/3557 , G06F9/3802 , G06F9/3804 , G06F9/3822 , G06F9/3824 , G06F9/383 , G06F9/3836 , G06F9/3838 , G06F9/3842 , G06F9/3848 , G06F9/3851 , G06F9/3853 , G06F9/3855 , G06F9/3859 , G06F9/3867 , G06F9/3891 , G06F9/466 , G06F9/528 , G06F11/36 , G06F11/3648 , G06F11/3656 , G06F12/0806 , G06F12/0811 , G06F12/0862 , G06F12/0875 , G06F12/1009 , G06F13/4221 , G06F15/7867 , G06F15/80 , G06F15/8007 , G06F2212/452 , G06F2212/602 , G06F2212/604 , G06F2212/62 , Y02D10/13 , Y02D10/14 , Y02D10/151
Abstract: 公开了与基于块的处理器核复合寄存器相关的系统、装置和方法。在所公开的技术的一个示例中,处理器可以包括多个基于块的处理器核,多个基于块的处理器核用于执行包括多个指令块的程序。相应的基于块的处理器核可以包括一个或多个可共享资源和可编程复合控制寄存器。可编程复合控制寄存器可以用于配置一个或多个可共享资源中的哪些资源与多个处理器核中的其他处理器核共享。
-
公开(公告)号:CN108027770A
公开(公告)日:2018-05-11
申请号:CN201680054462.9
申请日:2016-09-13
Applicant: 微软技术许可有限责任公司
IPC: G06F12/0806 , G06F9/38
CPC classification number: G06F9/3016 , G06F9/268 , G06F9/30007 , G06F9/30021 , G06F9/30036 , G06F9/3004 , G06F9/30043 , G06F9/30047 , G06F9/3005 , G06F9/30058 , G06F9/30072 , G06F9/30076 , G06F9/30087 , G06F9/3009 , G06F9/30098 , G06F9/30101 , G06F9/30105 , G06F9/3013 , G06F9/30145 , G06F9/30167 , G06F9/30189 , G06F9/32 , G06F9/321 , G06F9/345 , G06F9/35 , G06F9/355 , G06F9/3557 , G06F9/3802 , G06F9/3804 , G06F9/3822 , G06F9/3824 , G06F9/383 , G06F9/3836 , G06F9/3838 , G06F9/3842 , G06F9/3848 , G06F9/3851 , G06F9/3853 , G06F9/3855 , G06F9/3859 , G06F9/3867 , G06F9/3891 , G06F9/466 , G06F9/528 , G06F11/36 , G06F11/3648 , G06F11/3656 , G06F12/0806 , G06F12/0811 , G06F12/0862 , G06F12/0875 , G06F12/1009 , G06F13/4221 , G06F15/7867 , G06F15/80 , G06F15/8007 , G06F2212/452 , G06F2212/602 , G06F2212/604 , G06F2212/62 , Y02D10/13 , Y02D10/14 , Y02D10/151
Abstract: 公开了用于使用指令译码器来控制基于块的处理器体系架构中的存储器访问指令的执行的装置和方法,该指令译码器对具有可变数目的目标操作数的指令进行译码。在所公开的技术的一个示例中,基于块的处理器核包括指令译码器,其被配置为译码用于指令块中的指令的目标操作数,该指令被编码以将可变数目的目标操作数考虑在内;以及控制单元,其被配置为发送用于由核中的至少一个核所执行的操作的译码的目标操作数中的至少一个目标操作数的数据。在一些示例中,该指令指示具有矢量编码的目标指令。在其他示例中,可变长度格式将对一个或多个目标的指示考虑在内。
-
公开(公告)号:CN108027735A
公开(公告)日:2018-05-11
申请号:CN201680054501.5
申请日:2016-09-13
Applicant: 微软技术许可有限责任公司
CPC classification number: G06F9/3016 , G06F9/268 , G06F9/30007 , G06F9/30021 , G06F9/30036 , G06F9/3004 , G06F9/30043 , G06F9/30047 , G06F9/3005 , G06F9/30058 , G06F9/30072 , G06F9/30076 , G06F9/30087 , G06F9/3009 , G06F9/30098 , G06F9/30101 , G06F9/30105 , G06F9/3013 , G06F9/30145 , G06F9/30167 , G06F9/30189 , G06F9/32 , G06F9/321 , G06F9/345 , G06F9/35 , G06F9/355 , G06F9/3557 , G06F9/3802 , G06F9/3804 , G06F9/3822 , G06F9/3824 , G06F9/383 , G06F9/3836 , G06F9/3838 , G06F9/3842 , G06F9/3848 , G06F9/3851 , G06F9/3853 , G06F9/3855 , G06F9/3859 , G06F9/3867 , G06F9/3891 , G06F9/466 , G06F9/528 , G06F11/36 , G06F11/3648 , G06F11/3656 , G06F12/0806 , G06F12/0811 , G06F12/0862 , G06F12/0875 , G06F12/1009 , G06F13/4221 , G06F15/7867 , G06F15/80 , G06F15/8007 , G06F2212/452 , G06F2212/602 , G06F2212/604 , G06F2212/62 , Y02D10/13 , Y02D10/14 , Y02D10/151
Abstract: 公开了用于使用生成指令块中的存储器访问指令的相对排序的硬件结构来控制基于块的处理器架构中的存储器访问指令的执行的装置和方法。在所公开的技术的一个示例中,一种执行具有多个存储器加载和/或存储器存储指令的指令块的方法包括:对编码多个存储器访问指令的指令块进行译码,并生成指示用于执行指令块中的存储器访问指令的相对次序的数据,并且至少部分地基于相对次序的数据来调度指令块的一部分的操作。在一些示例中,存储向量数据寄存器可以存储所生成的相对排序的数据以用于在指令块的后续实例中使用。
-
-
-
-
-
-
-
-
-