清空高速缓冲存储器内容的装置制造方法及图纸

技术编号:2890930 阅读:358 留言:0更新日期:2012-04-11 18:40
总线接口与系统总线相连,监视表示处理器的高速缓冲存储器中数据更新的总线命令。如果高速缓冲存储器中数据更新,那么外部附加的存储设备存储表示数据更新的状态信息和对应于被更新数据的物理地址。当高速缓冲存储器中被更新数据存储在主存储器中时,外部附加的读出设备读出存储在外部附加存储设备中的状态信息。根据该状态产生从高速缓冲存储器向主存储器清空的总线命令。无效总线命令产生装置通过FIFO向系统总线输出无效总线命令。(*该技术在2016年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及带有高速缓冲存储器的计算机系统,更具体地说涉及对高速缓冲存储器内容的清空。暂存处理器用的数据的高速缓冲存储器被广泛地用来提高计算机系统的速度。当前的高速处理器采用大容量的转复制(copy-back)型高速缓冲存储器。转复制型高速缓冲存储器的特征在于以下方面。当处理器执行存储指令时,被更新的数据并不写入主存储器,而是仅保存在高速缓冲存储器中。有时在下面的三种情况下被更新的数据写回主存储器。一种情况是新数据必须存储在被更新数据的高速缓冲存储器的高速缓冲块中,这称为替换。另一种情况是在与另一高速缓冲存储器或I/O设备相连的系统总线上发布相关的读命令。第三种情况是由于某些原因必须回写被更新的数据。回写操作也叫作高速缓冲存储器清空操作。例如,有许多I/O设备不支持相关的读命令。这些I/O设备仅使用非相关的读命令,它们只可以从主存储器中读数据,即使被更新的数据可能存在于高速缓冲存储器中。因此,在处理器使这种I/O设备读适当的数据之前,处理器必须将被更新的数据从高速缓冲存储器中写回主存储器中。一些检查点/重算计算机系统也需要第三种回写操作。这些系统周期性地在主存储器中写检查点。检查点是这样一种状态,当出现故障时,计算机系统可以从上述状态重新开始数据处理。当出现故障时,计算机系统将主存储器返回到上一个检查点,并利用记录在主存储器中的信息重新开始处理数据。对这种计算机而言,高速缓冲存储器中所有的被更新数据在每个检查点必须写回到主存储器中。第三种回写操作在现有技术中是通过影响高速缓冲存储器的处理器指令完成的。例如,附图说明图1表示在MIPS R4000处理器情况下回写操作的主循环。执行循环一次使高速缓冲存储器的一个高速缓冲块无效。被更新数据(如果有的话)写回到主存储器中,然后高速缓冲块的状态变为无效。如果高速缓冲块不包含被更新数据时,那么执行循环一次需要六个处理器周期或三个总线周期,如果高速缓冲块包含被更新数据时,需要更多的周期。由于高速缓冲存储器的容量非常大,所以对高速缓冲存储器的全部高速缓冲块的高速缓冲存储器清空操作需要很长的时间。在这一高速缓冲存储器清空操作期间,处理器不能对任何数据进行处理。本专利技术的一个目的是缩短计算机系统的处理器进行高速缓冲存储器清空操作所需的时间。本专利技术的再一个目的是提供一种改进了系统性能的高速缓冲存储器清空设备。本专利技术的上述目的是通过提供一种清空高速缓冲存储器的内容的计算机系统达到的,该系统包括带有转复制型高速缓冲存储器的处理器,该处理器具有总线窥探功能;主存储器;将处理器与主存储器相连的系统总线;与系统总线相连的监视器装置,用于监视系统总线上的总线命令;对监视器装置作出响应的存储装置,用于当高速缓冲存储器的数据更新时存储对应于被更新数据的物理地址和表示高速缓冲存储器中的数据处于更新状态的状态信息;读出装置,用于当高速缓冲存储器的被更新数据存储在主存储器中时读出存储在存储装置中的状态信息;以及与系统总线相连的命令输出装置,如果状态信息表示高速缓冲存储器中的数据已经被处理器修改,那么该输出装置输出无效总线命令,请求被更新数据从高速缓冲存储器传输到主存储器中。根据本专利技术的另一方面提供了一种清空高速缓冲存储器的内容的方法,该方法包括以下步骤监视系统总线上的总线命令;当高速缓冲存储器的数据更新时,在存储装置中存储对应于被更新数据的物理地址和表示高速缓冲存储器中的数据处于更新状态的状态信息;当高速缓冲存储器的被更新数据存储在主存储器中时读出存储的状态信息;以及如果高速缓冲存储器中的数据已经被处理器修改,那么向系统总线输出无效总线命令,请求被更新数据从高速缓冲存储器传输到主存储器中。从以下详细描述中,本专利技术的其它目的、特征和优点将变得一目了然。然而应理解,由于本专利技术的精神和范围内的各种改变和修改对本领域的一般技术人员来说通过阅读以下的详细描述将是显而易见的,所以虽然详细描述和具体例子表示本专利技术的最佳实施例,但是它们只是为了说明的目的。图1是说明现有技术的高速缓冲存储器清空操作的程序的一个实施例;图2是根据本专利技术的一个实施例的计算机系统的框图;图3是说明当计算机系统正常运行时本专利技术的高速缓冲存储器清空设备的操作的流程图;图4是说明根据处理器的指令本专利技术的高速缓冲存储器清空设备的操作的流程图;图5是说明本专利技术的高速缓冲存储器清空设备的操作的流程图;图6是说明本专利技术的高速缓冲存储器清空设备中的流水线操作的框图;图7是根据本专利技术的另一个实施例的计算机系统的框图;图8是说明根据本专利技术的另一个实施例当计算机系统正常运行时高速缓冲存储器清空设备的操作的流程图;图9是根据本专利技术的再一个实施例的计算机系统的框图;图10是计算机系统的主要部分的框图;图11和12是说明根据本专利技术的再一个实施例,当计算机系统正常运行时高速缓冲存储器清空设备的操作的流程图。下面参照附图描述本专利技术的一个实施例。图2所示的计算机系统具有一个处理器。处理器10具有用于对主存储器12的特定部分内容进行暂时存储的高速缓冲存储器16,高速缓冲存储器16包括多个高速缓冲块17和存储表示高速缓冲存储器16的全部高速缓冲块17的状态信息的高速缓冲存储器标记14,处理器10还具有高速缓冲存储器控制器11,用于控制高速缓冲存储器和高速缓冲存储器标记,并将不干净的高速缓冲块写回到主存储器中。在本申请中,术语“不干净”是指包含已经改变了的数据的高速缓冲块。包括高速缓冲存储器标记14、高速缓冲存储器16和高速缓冲存储器控制器11的处理器10通过系统总线18与主存储器12相连。高速缓冲存储器清空设备与系统总线相连18。当处理器10改变高速缓冲存储器16中的数据状态时,处理器10将高速缓冲存储器16中数据改变的状态和物理地址通知与系统总线18相连的其它设备。此外,当从其它设备报告在另一高速缓冲存储器中数据的改变状态,并且存在符合通知的地址的被高速缓冲存储的数据时,处理器10对高速缓冲存储的数据执行任何所需的操作。例如,利用窥探功能可以保持高速缓冲存储器的数据的相关性。处理器10具有转复制型的窥探(snoop)功能。当存储在高速缓冲存储器16中的数据已经由处理器10改变时,处理器10产生总线命令,使存储在其它处理器的高速缓冲存储器中的共享数据无效。当处理器10从另一处理器接收无效总线命令并且目标数据存在于高速缓冲存储器16中时,如果处理器10包含对应于目标地址的数据,那么处理器10使存储在高速缓冲存储器16中的共享数据无效。此处所用的术语“目标”数据是指由另一处理器指明的共享数据。另外,如果对应于目标地址的高速缓冲存储器数据由处理器10改变的话,则处理器10向其它处理器或主存储器12输出数据。如图2所示,本专利技术的高速缓冲存储器清空设备20具有主控制器38、总线接口电路22、外部标记控制器24、外部标记存储部件26、外部标记读部件28、多路转接器30、外部标记检查部件32、无效总线命令产生部件34和FIFO 36。高速缓冲存储器清空设备20中的总线接口电路22是系统总线18的一个接口,并具有以下三个功能。第一,总线接口电路22接收系统总线18上的使高速缓存的数据的状态变化无效的无效总线命令,并将该无效总线命令发送给外部标记控制器24。无效总线命令本文档来自技高网...

【技术保护点】
一种清空高速缓冲存储器的内容的计算机系统,包括:带有返回复制型高速缓冲存储器的处理器,该处理器具有总线窥探功能;主存储器;将处理器与主存储器相连的系统总线;与系统总线相连的监视器装置,用于监视系统总线上的总线命令;对监视器装置作出响应的存储装置,用于当高速缓冲存储器的数据更新时存储对应于被更新数据的物理地址和表示高速缓冲存储器中的数据处于更新状态的状态信息;读出装置,用于当高速缓冲存储器的被更新数据存储在主存储器中时读出存储在存储装置中的状态信息;以及与系统总线相连的命令输出装置,如果状态信息表示高速缓冲存储器中的数据已经被处理器修改,那么该输出装置输出无效总线命令,请求被更新数据从高速缓冲存储器传输到主存储器中。2.权利要求1的计算机系统,进一步包括:检测是否从主存储器向高速缓冲存储器产生了数据传输的装置,这种数据传输是通过相关读命令完成的,以便保持存储在一个高速缓冲存储器中的由一个处理器输出的数据与存储在另一个高速缓冲存储器中的由另一个处理器输出的数据之间的相关性;以及根据检测装置的检测结果作出响应的装置,该响应表示由相关读命令指定的数据处于共享状态。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:野末浩志增渊美生
申请(专利权)人:株式会社东芝
类型:发明
国别省市:JP[日本]

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

1