将合并缓冲器的系统删除差错转换成进程删除差错的制作方法

文档序号:6649447阅读:157来源:国知局
专利名称:将合并缓冲器的系统删除差错转换成进程删除差错的制作方法
背景本发明的实施例一般涉及在处理器中处理差错,尤其涉及处理微处理器的合并缓冲器中的软差错。
来自瞬时故障的单比特翻转或差错是微处理器设计中的关键挑战。该故障源于来自宇宙射线的高能粒子—诸如中子和来自封装材料的阿尔法粒子—当它们经过半导体器件时产生电子—空穴对。晶体管源和扩散节点可收集这些电荷。足够量的累积电荷会改变逻辑装置的状态—诸如静态随机存取存储器(SRAM)单元、锁存器或门电路—从而将逻辑差错引入电子电路的运作中。因为这种差错不反映器件的永久性故障,所以其被称作软差错或瞬时差错。
随着片载晶体管的数量持续增加,软差错已变成微处理器设计者的增加的负担。对于接着的几个技术代来说,每个锁存器或SRAM比特的原始差错率可设计成粗略地保持恒定或者稍许减少。因此,除非添加差错保护机制或使用更鲁棒的技术(诸如完全耗尽硅上绝缘体),在每个后续代中,微处理器的软差错率会按添加到半导体器件上的器件数量成比例地增加。
可以根据其影响和检测及对其校正的能力将比特差错分类。某些比特差错可以被分类成“良性差错”,因为它们不被读取、不要紧或者可以在使用它们之前将其纠正。多数隐伏形式的差错是静数据破坏,其中差错未被检测且使得系统产生差错输出。为了避免静数据破坏,设计者可采用检错机制,诸如奇偶。纠错技术还可用于修复检测出的差错,尽管这种技术不能在所有情况下应用。检错但不纠错的能力可避免生成不正确的输出(通过在产生不正确输出前关闭受影响的进程),但它不能提供机制用于在出现这种差错时恢复和继续执行受影响的进程。这类差错被称作检测出的不可恢复差错(DUE)。
可根据DUE事件是否导致操作系统和/或另一种机制删除受差错影响的一个或多个用户进程或者DUE事件是否导致使整个机器(包括所有进程)崩溃而将DUE事件进一步细分,以避免数据破坏。第一种可以称作“进程删除DUE”事件。第二种可以称作“系统删除DUE”事件。进程删除DUE优于系统删除DUE,因为进程删除DUE允许系统继续运行和服务不受差错影响的进程。例如,大规模计算机系统可同时执行几百个进程。因此,与使整个系统崩溃和删除随后执行的所有进程相比,使瞬时差错与一个进程(或较小的一组进程)隔离并仅删除该进程(或较小的一组进程)将提供实质性优势。
因此,需要将合并缓冲器的系统删除差错转换成进程删除差错。


通过附图中的实例而非限制说明本发明的各种实施例,其中相似标号表示相似元件。
图1是说明根据本发明实施例的软件执行方法的流程图。
图2是说明根据本发明的操作系统服务呼叫和中断处理机、固件中断处理机和上下文切换的流程图。
图3是说明根据本发明实施例的机器检查处理机的流程图。
图4是说明根据本发明实施例的用于应用识别、恢复和终止的方法的流程图。
图5是根据本发明实施例的合并缓冲器的框图。
图6是可使用本发明实施例的计算机系统的框图。
具体实施例方式
将描述用于将合并缓冲器的系统删除差错转换成进程删除差错的方法、装置和系统。在以下描述中,为了说明,阐述了许多具体实例,以提高本发明实施例的透彻理解。但本领域熟练技术人员显见的是可以在没有这些具体细节的情况下实施本发明的实施例。在其它情况中,结构和装置按框图形式示出以避免使本发明实施例模糊。
说明书中对“一个实施例”或“一实施例”的参考表示结合实施例描述的特定特点、结构或特征包含于本发明的至少一个实施例中。说明书中各处短语“在一个实施例中”的出现不必都涉及相同的实施例。
为了解决瞬时故障引起的软差错,微处理器设计者可包括各种保护特点。可使用的保护特点的实例是奇偶、纠错码(ECC)、循环冗余校验(CRC)、锁定步进、辐射加固单元和硅上绝缘体制造技术。但是,这些保护特点的使用是在性能和对差错的易感性之间的折衷。这种权衡的一个实例可出现于处理器的合并缓冲器中。
现在参考图5,示出了根据本发明实施例的合并缓冲器220的框图。合并缓冲器220收集处理器执行的存储指令的结果,以便随后成批传递到高速缓存和/或存储器(诸如系统存储器)。合并缓冲器220可以通过将多个写入(例如,每个都由数据字构成)聚结成单个高速缓存块(例如,由多个数据字构成)随后将一个或多个高速缓存块写到高速缓存系统,而非分开地写入各个数据字,来改善处理器的性能。由于合并缓冲器220常保存程序执行中产生的最近的数据,处理器可允许加载指令执行针对合并缓冲器220的内容可寻址匹配(CAM),以找到最近的数据来服务加载指令。结果,合并缓冲器220可以是加载到使用的关键路径,其等待延迟时间对于许多程序(诸如具有指针追踪(pointer chasing)的数据库代码)来说是很关键的。
在合并缓冲器220中执行差错检测和纠正特点,诸如ECC,特别在地址差错方面,可显著增加加载到使用的等待延迟时间,从而对于某些应用不能接受地劣化了处理器性能,或者会显著增加设计的复杂性。检错和纠错特点,诸如ECC,包括比仅仅检错花费更长时间的读取—修改—写入操作。例如,奇偶差错可以通过较快的异或(XOR)比较操作检测出。因此,维持可接受的性能会将等待延迟时间敏感的数据存储情况(诸如合并缓冲器220)中的差错处理限制为检测出差错而不加以纠正。
但是,在检测出差错时不加以纠正会导致检测出的不可恢复差错或DUE事件,这会导致删除系统正执行的一个或多个进程(进程删除DUE事件)或者甚至关闭整个系统(系统删除DUE事件)。在不包括本发明实施例的合并缓冲器中,合并缓冲器中的破坏地址导致系统删除DUE,因为多个处理器会将它们的数据提交给合并缓冲器且操作系统没有办法识别破坏地址所属于的特定进程或多个进程。为了避免生成差错输出,操作系统没有选择余地只能停止所有进程并关闭整个系统。将合并缓冲器220中的遭破坏的地址从系统删除DUE事件转换成进程删除DUE事件,如本发明的实施例所提供的,会显著地减少这种地址破坏差错的影响。
仍参考图5,在本发明的一个实施例中,每次处理器的执行流变成执行不同进程时,合并缓冲器220会被清洗或排空,以使合并缓冲器220在任何给定时间收集与正好一个应用程序或进程有关的存储指令。例如,处理器正执行电子邮件程序,随后变成执行计算机游戏。将合并缓冲器220中收集的与电子邮件程序有关的存储指令从合并缓冲器中清洗或排空,同时处理器变成执行计算机游戏程序。在另一个实施例中,合并缓冲器220会在选定的进程变化下被排空。在一个实施例中,合并缓冲器220可在清除模式下操作,这会使得合并缓冲器220尽快写出存储指令(例如,借助于清洗或排空操作),以尽可能地最小化合并缓冲器220中存储指令破坏的潜在可能。在一个实施例中,当合并缓冲器220已满时,会(部分或全部地)清洗或排空合并缓冲器220,以便为合并缓冲器220中要收集的新存储指令让出空间。
在一个实施例中,通过将当前缓冲器中的存储指令写到高速缓存存储器和/或其它存储器(诸如系统存储器),可清洗或排空合并缓冲器220。此外,可将合并缓冲器220的内容清楚或标记为无效,以准备合并缓冲器220收集与另一个进程相关的存储指令。在一个实施例中,排空合并缓冲器(排空MB)信号242可用于排空或清洗合并缓冲器。在一个实施例中,可响应于处理器的清洗合并缓冲器指令而发出排空MB信号242。在一个实施例中,可通过处理器的一个单元发出排空MB信号242,该单元检测差错和/或应排空合并缓冲器220的其它条件。
在将存储指令从合并缓冲器220写出时,可以检查合并缓冲器220中收集的存储指令的差错(例如,它们的地址和/或数据中)。在一个实施例中,地址奇偶发生器216可为写入合并缓冲器地址队列226的每个地址生成奇偶比特,且奇偶校验器232可在其在地址线244上被写出合并缓冲器220之前检查地址和奇偶信息。在一个实施例中,地址奇偶发生器216可将存储缓冲器地址和奇偶信息218提供给合并缓冲器地址队列226。在一个实施例中,当数据在数据和奇偶线238上被写出合并缓冲器220时,可以按类似方式检测出数据差错。如果检测出差错(地址和/或数据)且结合最后的进程改变清洗合并缓冲器220,则可以知道差错与处理器执行的当前进程相关联。通过该信息,操作系统(或者其它差错映射机制)可将差错映射到合适的进程并仅删除该进程,而非整个系统。因此,连同进程改变清洗或排空合并缓冲器220会使得合并缓冲器220每次包含来自一个进程的数据,从而将本来是合并缓冲器220中的系统删除DUE事件转换成进程删除DUE事件。
仍参考图5,合并缓冲器220还可包括合并缓冲器数据队列222,以存储与存储指令相关联的数据。在一个实施例中,数据奇偶发生器210可为写入合并缓冲器数据队列222的每个数据生成奇偶比特。在一个实施例中,数据奇偶发生器210可以将存储缓冲器数据和奇偶信息212提供给合并缓冲器数据队列222。在一个实施例中,数据奇偶信息可由高速缓存存储器或系统存储器用于检测在数据和奇偶信号238上从合并缓冲器220接收的数据中的差错。
在一个实施例中,合并缓冲器中检测出的地址差错还可生成相应的数据差错。在一个实施例中,合并缓冲器220可包括设定奇偶破坏信号234,以便在检测出地址差错时在奇偶状态单元230中设定破坏奇偶状态。奇偶状态单元230可生成破坏奇偶信号236作为对条件奇偶破坏单元228的输入,以便在地址奇偶校验器232检测出相应地址奇偶差错时生成复盖数据奇偶差错。在一个实施例中,设定奇偶破坏信号234、奇偶状态单元230、破坏奇偶信号236和条件奇偶破坏单元228可有效地“败坏(poison)”与破坏地址相对应的数据,以防止与破坏地址相关的数据被任何处理器使用。在一个实施例中,与合并缓冲器220中的破坏地址相对应的数据以及用于与相同进程有关的合并缓冲器220中存储的后续存储指令中的某些或全部的数据可以被“败坏”,以防止这些数据由任何处理器使用。清除奇偶破坏信号240可用于复位奇偶状态单元230的状态并防止条件奇偶破坏单元228复盖合并缓冲器数据队列222中存储的数据奇偶信息。合并缓冲器220还可包括合并缓冲器控制单元224,以控制合并缓冲器单元220的操作。
仍参考图5,存储缓冲器202可连同合并缓冲器220用于收集由处理器推测性执行的存储指令。存储缓冲器202可包括存储缓冲器地址队列208和存储缓冲器数据队列204以分别存储与推测性存储指令相关的地址和数据。存储缓冲器202还可包括存储缓冲器控制单元206,用于在存储缓冲器202将已解决(即,不再是推测性的)的存储指令发送到合并缓冲器220时进行控制。在一个实施例中,合并缓冲器控制单元224可发出一停止存储缓冲器(停止SB)信号214,以防止存储缓冲器将存储指令发送到合并缓冲器220。例如,如果合并缓冲器220是满的,则合并缓冲器控制单元224可防止存储缓冲器202发送其它存储指令直到合并缓冲器220排空了其内容中的一些或全部到高速缓存存储器和/或系统存储器。
现在参考图1,示出了说明根据本发明实施例的软件执行方法100的流程图。可启动操作系统来为计算系统建立操作环境(框102)。在一个实施例中,操作系统是MicrosoftTMWindowsTM操作系统。在另一个实施例中,操作系统是LinuxTM操作系统。在再一个实施例中,也可使用其它操作系统。在启动操作系统(框102)后,可开始应用程序(框104)。应用程序可以是用户应用程序(诸如文字处理、电子数据表或游戏程序)、系统应用程序或其它类型的应用软件。
在应用程序代码执行期间(框106),会出现许多事件,以从执行与当前进程相关联的应用程序代码变到执行与另一个进程相关联的代码。例如,对操作系统(OS)的调用(箭头107)会将执行引向操作系统(OS)服务例程(框109)。类似地,对操作系统的中断(箭头108)会将执行引向操作系统(OS)中断处理机(框110)。由于会使得执行引向固件中断处理机(框114)的对固件的中断(箭头112),会出现软件执行中的另一种变化。类似地,上下文切换(箭头116)可将执行引向上下文切换处理机(框118)。由于会将软件执行引向机器检查处理机(框122)的机器检查(箭头120),会出现对应用程序代码执行的再一种中断。如将更详细地讨论的,在某些情况下机器检查处理机会终止应用并返回应用删除返回点(箭头124)。
倘若没有对应用程序代码的正常执行的中断或变化(框106),则应用程序代码的执行会继续,直到应用在用户控制、操作系统控制下或处于某些其它原因才终止(框126)。在应用终止后,会激活另一个应用(框128)。现在将联系图2讨论将执行引向操作系统(OS)服务例程(框109)、OS中断处理机(框110)、固件中断处理机(框114)和上下文切换(框118)时进程的进一步细节。
现在参考图2,示出了操作系统(OS)服务调用(框109)、OS中断处理机(框110)、固件中断处理机(框114)和上下文切换(框118)的流程图。当软件执行被引向OS服务例程(框109)或OS中断处理机(框110)时,可排空一个或多个处理器核心队列或缓冲器(框130)。在一个实施例中,排空合并缓冲器,以使合并缓冲器中包含的存储指令在任何给定时间与一个进程或应用相关联。在排空合适的处理器队列或缓冲器后,可进行与合适操作系统服务例程或操作系统中断处理机相关联的系统代码执行(框132)。在执行系统代码后(框132),可排空一个或多个处理器核心队列或缓冲器(包括合并缓冲器)(框133)且可以继续被中断的应用程序代码的执行(框134)。
类似地,在应用程序代码执行期间(图1的框106),固件中断处理机事件(框114)会导致一个或多个处理器队列或缓冲器的排空(框136)。在一个实施例中,合并缓冲器可结合固件中断处理机事件被排空,以使能在开始执行新的固件软件(框138)之前排空合并缓冲器。在固件软件执行(框138)后,可排空一个或多个处理器核心队列或缓冲器(包括合并缓冲器)(框139)且可继续执行被中断的应用程序(框140)。
仍参考图2,由于上下文切换事件(框118)引起的应用程序代码(图1的框106)的执行中断也会导致一个或多个处理器队列或缓冲器(框142)的排空。上下文切换通常在一个应用程序代码或进程的执行被停止以便执行另一个应用程序代码或进程时产生。在该事件中,可以排空处理器合并缓冲器以使合并缓冲器在任何给定时间包含与一个进程相关的存储信息。这样,合并缓冲器中存储的被破坏的地址可以与当前进程相关联,从而允许删除进程而不要求停止整个系统。在合适的处理器队列被排空后(框142),可以进行各种上下文保存/恢复和其它上下文切换有关操作(框144)。在上下文切换有关操作完成后(框144),可以排空一个或多个处理器核心队列或缓冲器(包括合并缓冲器)(框145)且执行可以跳到下一个应用(框146)。
现在参考图3,示出了说明根据本发明一个实施例的机器检查处理机(框122)的流程图。当检测出处理器中的出错时,会将执行引向机器检查处理机。在启动机器检查处理机(框122)后,一个或多个处理器队列或缓冲器会被排空,以集合贯穿处理器识别的出错的出错信息(框150)。机器检查处理机可分析出错信息以确定什么纠正动作是合适的。例如,它可确定出错是否是固件可纠正的(菱形152)。如果是,则固件纠正该出错(框154),可排空一个或多个处理器核心队列或缓冲器(包括合并缓冲器)(框155),且继续被中断的应用的执行(框156)。在一个实施例中,处理器提取层(PAL)固件可确定出错是否是可由PAL纠正的处理器出错。
如果出错不可由固件纠正(菱形152),则机器检查处理机可确定出错是否可由操作系统或某些其它系统级软件或机制纠正(菱形158)。如果是,则操作系统或其它系统级软件或机制可纠正出错(框160),一个或多个处理器核心队列或缓冲器(包括合并缓冲器)可被排空(框161),且可以继续中断应用的执行(框162)。在一个实施例中,软件提取层(SAL)可连同操作系统工作,以解决系统级差错。
仍参考图3,如果差错在操作系统级处不可纠正(菱形158),则机器检查处理机可确定差错是应用删除DUW还是进程删除DUE差错(菱形164)。例如,它可以确定差错是否与机器上运行的一个或多个特定进程或应用相关联以便删除该特定进程或应用而非关闭整个系统。如果不能确定该差错仅仅与一个或多个特定应用相关联(菱形164),则它可指示出该差错是系统删除DUE,需要关闭整个系统(框168)且停止所有进程的执行(框170)。如果确定差错是应用或进程删除差错(菱形164),则识别有关进程或应用,采取措施恢复和/或终止受影响的应用(框166)。现在将结合图4讨论识别、恢复和终止步骤的进一步说明。
现在参考图4,它示出了根据本发明实施例的用于应用识别、恢复和终止的方法的流程图。在确定差错不是应用删除差错(图3的菱形164)后,机器检查处理机可确定出错事务的目标地址是否可得(菱形167)。如果是,则处理器可基于该目标地址进行恢复(框169)并终止使用包含该目标地址的存储页面的所有应用(框172)。随后,机器检查处理机可排空一个或多个处理器核心队列或缓冲器(包括合并缓冲器)(框179)并将执行返回到应用删除返回点(框124)。
但是,出错事务的目标地址不会总是可供使用的。例如,如果合并缓冲器中的地址由于瞬时故障而被破坏,则将不能知道与差错相关联的真实地址。如果机器检查处理器确定出错事务的目标地址不可得(菱形167),则机器检查处理机可确定是否知道出错事务已由在机器检查时活动的应用引起(菱形174)。在一个实施例中,在处理器开始执行该进程前,如果合并缓冲器已被排空,则处理器的合并缓冲器中产生的地址破坏差错与检测出错时正执行的应用或进程相关联(例如,活动进程)。例如,结合图2和3的框130、136、142和150的排空合并缓冲器可确保在机器检查时活动的应用是与合并缓冲器中检测出的被破坏地址差错相关联的应用。这样,在切换到执行不同进程之前排空合并缓冲器可允许处理器识别与合并缓冲器地址差错相关联的应用,并仅删除该应用而不寻求系统删除关闭(框180)和停止处理器(框182)。
如果处理器可将出错事务识别为由机器检查时活动的应用引起(菱形174),则处理器可基于机器检查时的指令指针地址执行恢复技术(框176),如必要终止机器检查时活动的应用(框178),排空一个或多个处理器核心队列或缓冲器(包括合并缓冲器)(框179),并返回到应用删除返回点(框124)。
现在参考图6,示出了本发明实施例可使用的计算机系统300的框图。在一个实施例中,计算机系统300包括处理器330,它可包括通用或专用处理器,诸如微处理器、微控制器、可编程门阵列(P6A)等。如这里所使用的,术语“计算机系统”可表示任何类型的基于处理器的系统,诸如台式计算机、服务器计算机、膝上计算机等,或者其它类型的主机系统。
处理器330可包括两个中央处理单元(CPU)核心302(a)和302(b),但可包括一个或多个这种核心。CPU核心302(a)和302(b)可分别包括用于提取指令的指令提取单元304(a)和304(b),分别用于调度指令执行的调度器单元306(a)和306(b),分别用于执行指令的执行单元308(a)和308(b),以及分别用于存储数据的本地副本的一个或多个本地高速缓存存储器单元310(a)和310(b)。CPU核心302(a)和302(b)还可分别包括存储缓冲器202(a)和202(b)以及合并缓冲器220(a)和220(b),其可根据本发明的各种实施例而实现。
仍参考图6,处理器330可包括本地互连312,以允许处理器330的各个单元通信和交换数据。处理器330还可包括相干协议引擎和系统接口316,用于连同扩展高速缓存314和系统存储器318提供高速缓存相干性和系统存储器接口功能。在一个实施例中,扩展高速缓存可由处理器330的多个CPU核心302(a)和302(b)共享。在一个实施例中,扩展高速缓存314可以是直写高速缓存而本地高速缓存310(a)和310(b)可以是回写高速缓存。在一个实施例中,本地高速缓存310(a)和310(b)可包括分别为8K字节和256K字节的一级和二级高速缓冲,,且扩展高速缓存314可以是16M字节三级高速缓存。在一个实施例中,合并缓冲器220(a)和220(b)可收集存储指令的结果并周期性地将存储指令结果块写到扩展高速缓存314和/或系统存储器318以减少本地互连312上的通信量。
处理器330还可耦合到输入/输出(I/O)集线器320,其可经由输入/输出(I/O)扩展总线耦合到一个或多个外围设备322。外围设备322在一个实施例中可包括诸如软盘驱动器的存储装置以及诸如键盘鼠标的输入装置。I/O集线器320例如还可耦合到硬盘驱动器和紧致盘(CD)驱动器。可以理解,系统中也可包括其它存储媒介。处理器330还可耦合到一个或多个附加处理单元或协议引擎324,诸如图形引擎、网络引擎或因特网协议引擎。
实施例可在逻辑电路、状态机、微代码或其某些组合实现。实施例可以代码实现并可存储于储存了用于编程计算机执行指令的指令的储存媒介上。储存媒介可以包括,但不限于,任何类型的盘,包括软盘、光盘、紧致盘只读存储器(CD-ROM)、可重写紧致盘(CD-RW)、以及磁光盘、半导体装置,诸如只读存储器(ROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、可擦可编程只读存储器(EPROM)、闪存、电可擦可编程只读存储器(EEPROM)、磁或光卡或者适于存储电子指令的任何类型的媒介。
因此,描述了用于将合并缓冲器系统删除差错转换成进程删除差错的方法、装置和系统。虽然相对于有限数量的实施例描述了本发明,但在揭示内容的帮助下本领域的熟练技术人员可以理解许多修改和变型。所附权利要求书旨在覆盖落在本发明的真实精神和范围内的这种修改和变型。
权利要求
1.一种装置,其特征在于,包括缓冲器,用于收集与一个或多个进程相关联的存储指令,其中所述存储指令包括数据和要存储数据的地址;以及缓冲器控制,用于在缓冲器收集与第二进程相关联的存储指令之前总是排空与第一进程相关联的存储指令的缓冲器。
2.如权利要求1所述的装置,其特征在于,进一步包括差错检查器,用于在存储指令中检测至少一个差错;以及删除单元,用于如果差错检查器在与第一进程相关联的第一存储指令中检测出第一差错,则停止第一进程。
3.如权利要求2所述的装置,其特征在于,所述存储指令还包括与存储指令相对应的差错信息,其中差错检查器基于该差错信息检测所述至少一个差错。
4.如权利要求3所述的装置,其特征在于,差错信息是奇偶信息。
5.如权利要求2所述的装置,其特征在于,进一步包括奇偶破坏单元,用于当第一差错是第一地址差错时指示相应的数据差错。
6.如权利要求1所述的装置,其特征在于,所述缓冲器是合并缓冲器。
7.如权利要求1所述的装置,其特征在于,所述缓冲器用于每次收集与一个进程相关联的存储指令。
8.如权利要求2所述的装置,其特征在于,所述缓冲器使第一差错能作为进程删除差错而非系统删除差错而被处理。
9.一种装置,其特征在于,包括处理器核心,用于执行一个或多个进程;存储缓冲器,用于存储一个或多个推测的存储指令,直到它们预备被提交到机器状态;合并缓冲器,用于存储被提交的存储指令,其中被提交的存储指令与一个或多个进程相关联,其中被提交的存储指令包括数据、要存储数据的地址和差错信息;以及合并缓冲器控制,用于如果处理器核心从第一进程的执行变成第二进程的执行,则总是清除合并缓冲器。
10.如权利要求9所述的装置,其特征在于,进一步包括差错检查器,用于基于出错信息在提交的存储指令中检测至少一个差错;以及删除单元,用于如果差错检查器在与第一进程相关联的第一提交的存储指令中检测出第一差错,则停止第一进程的执行。
11.如权利要求10所述的装置,其特征在于,进一步包括奇偶破坏单元,用于在第一差错是第一地址差错时指示相应的数据差错。
12.如权利要求9所述的装置,其特征在于,合并缓冲器用于每次收集与一个进程相关联的存储指令。
13.如权利要求10所述的装置,其特征在于,合并缓冲器用于使第一差错作为进程删除差错而非系统删除差错而被处理。
14.一种方法,其特征在于,包括在缓冲器中收集与第一进程相关联的存储指令,其中所述存储指令包括数据、要存储数据的地址以及差错信息;以及在收集与第二进程相关联的存储指令之前,总是从缓冲器中排空与第一进程相关联的收集的存储指令。
15.如权利要求14所述的方法,其特征在于,进一步包括基于出错信息,在收集的存储指令中检测至少一个差错;以及如果检测出与第一进程相关联的第一差错,则停止第一进程的执行。
16.如权利要求15所述的方法,其特征在于,进一步包括当第一差错是第一地址差错时指示相应的第一数据差错。
17.如权利要求14所述的方法,其特征在于,在缓冲器中每次收集与一个进程相关联的存储指令。
18.如权利要求15所述的方法,其特征在于,进一步包括将第一差错作为进程删除差错而非系统删除差错进行处理。
19.一种包含机器可访问媒介的制品,所述媒介包含指令,在被执行时使得系统在缓冲器中收集与第一进程相关联的存储指令,其中所述存储指令包括数据、地址和差错信息;以及在收集与第二进程相关联的存储指令之前,总是从缓冲器中排空与第一进程相关联的收集的存储指令。
20.如权利要求19所述的制品,其特征在于,进一步包括指令,在被执行时使得系统在缓冲器中每次收集与一个进程相关联的存储指令。
21.如权利要求19所述的制品,其特征在于,进一步包括指令,在被执行时使得系统将与第一进程相关联的第一存储指令相关的第一差错作为进程删除差错而非系统删除差错进行处理。
22.一种系统,包括处理器,用于执行与一个或多个进程相关联的包括存储指令的指令;动态随机存取系统存储器,它被耦合成存储用于由处理器执行的指令;合并缓冲器,用于收集与存储指令相关联的信息,包括要存储的数据、要存储数据的地址以及出错信息;以及合并缓冲器控制,用于如果处理器从第一进程的执行变成第二进程的执行,则总是清除合并缓冲器。
23.如权利要求22所述的系统,其特征在于,进一步包括差错检查器,用于基于出错信息在存储指令中检查至少一个差错;以及删除单元,用于如果差错检查器检测出与第一进程相关联的第一存储指令相关的第一差错,则停止第一进程的执行。
24.如权利要求23所述的系统,其特征在于,进一步包括奇偶破坏单元,用于在第一差错是第一地址差错时指示相应的数据差错。
25.如权利要求22所述的系统,其特征在于,合并缓冲器用于每次收集与一个进程相关联的存储指令。
26.如权利要求23所述的系统,其特征在于,合并缓冲器用于使第一差错能作为进程删除差错而非系统删除差错进行处理。
全文摘要
一种装置包括收集与一个或多个进程相关联的存储指令信息。收集的存储指令信息包括数据和要存储数据的地址。该装置还包括缓冲器控制,它在收集与第二进程相关联的存储指令前排空与第一进程相关联的存储指令的缓冲器。
文档编号G06F11/00GK1752937SQ20051010896
公开日2006年3月29日 申请日期2005年9月23日 优先权日2004年9月24日
发明者T·福瑟姆, Y·施雷盖, U·埃切若, S·慕克吉 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1