信息处理装置、存储器控制方法以及存储器控制装置的制作方法

文档序号:6480644阅读:176来源:国知局
专利名称:信息处理装置、存储器控制方法以及存储器控制装置的制作方法
技术领域
本发明涉及一种用于执行从信息处理装置的中央处理单元(CPU)发 出的存储器访问请求的技术,该信息处理装置包括两个或更多个CPU, 每个CPU都具有高速緩存存储器。
背景技术
一般来说,包括多个CPU和输V输出(I/O)装置的大^L^信息处 理装置(例如,大规模SMP(对称多处理器,symmetric multiple processor) 信息处理装置)具有系统板,每个系统板包括具有高速緩存存储器的多个
CPU、系统控制器和多个i/o装置,以便改善处理能力。
在这种;UC^信息处理装置中,进行控制操作以保证各系统板之间的 高速緩存一致性( 一致控制操作)。因此,在各个系统板的系统控制器之 间进fr清求广播和侦听结果交换(参见,例如,JP-A2006-72509和JP-A 2006-202215 )。
然而,在大^L^信息处理装置中,当装置尺寸较大时,系统控制器之 间的物理距离较长。当装置结构被扩展时,每个存储器访问的等待时间变 得更长,并且提高整个信息处理装置的性能变得困难。此外,随着在信息 处理装置中安装很多的I/O装置,侦听请求的数量相应地变得更多。于是, 保证广播总线和每个侦听控制单元的合理吞吐量也变得困难。
根据一种开发来处理上述问题的已知技术,当安装在本地系统板中的 各CPU中的一个CPU的高速緩存存储器中存在目标地址处的数据时,通 iti^it4系统板间进行的侦听操作并在同一本地系统板上的各CPU之间 进行数据通信来缩短访问等待时间。
图12是示出传统大,信息处理装置100的结构的框图。如图12 所示,传统大^^信息处理装置100包括系统板(节点)A和B (在本例 中有两个系统板)。系统板A包括CPU lO和ll、 1/O装置20和21、以 及主存储器30和31。系统板B包括CPU12和13、 1/0装置22和23以及主存储器32和33。
CPU 10到13中的每一个CPU都包括多级高速緩存存储器(在本例 中是两级)。具体来说,CPU 10包括第一级高速緩存存储器10a和第二级 高速緩存存储器10b,而CPU 11包括第一级高速緩存存储器11a和第二 级高速緩存存储器llb。类似地,CPU 12包括第一级高速緩存存储器12a 和第二级高速緩存存储器12b,且CPU 13包括第一级高速緩存存储器13a 和第二级高速緩存存储器13b。
系统板A还包括系统控制器40-1,系统控制器40-1对设置在系统板 A中的存储器(在本例中为第一级高速緩存存储器10a和lla、第二级高 速緩存存储器10b和lib以及主存储器30和31 )ii行通信控制。类似地, 系统板B还包括系统控制器40-2 ,系统控制器40-2对设置在系统板B中 的存储器(在本例中为第一级高速緩存存储器12a和13a、第二级高速緩 存存储器12b和13b以及主存储器32和33 )进行通信控制。
采用这种配置,系统控制器40-1和40-2共享对设置在信息处理装置 100中的存储器(在本例中为第一级高速緩存存储器10a到13a、第二级 高速緩存存储器10b到13b以及主存储器30到33 )的通信控制。此外, 除了系统控制器40-1和40-2对不同存储器进行通信控制之外,系统控制 器40-1和系统控制器40-2具有相同的结构。系统控制器40-1和系统控制 器40-2的连接方式使得系统控制器40-1和40-2可以彼此通信。
系统控制器40-1包括高速緩存TAG 46-1 、请求发ili/接收单元41-1 、 本地侦听控制单元42-l、广播控制单元43-l、全局侦听控制单元44-l以 及存储器访问发布单元45-1。
高速緩存TAG 46-1注册并保持用于识别其隶属节点(subject node) (在本例中为系统板A;下同)下的高速緩存存储器(在本例中为第一级 高速緩存存储器10a到11a和第二级高速緩存存储器10b到lib;下同) 中存在的高速緩存数据的特定地址信息。
请求发iH/接收单元41-1接收存储器访问请求以访问主存储器(或本 地存储器)。
具体来说,在从CPU10生成了存储器访问请求、并且在第一级高速 緩存存储器10a和第二级高速緩存存储器10b中未命中响应于该存储器访 问请求要检测的数据的情况下,请求发iil/接收单元41-1从CPU 10接收 该存储器访问请求(读请求)。然后,请求发送/接收单元41-1将所接收到的存储器访问请求发送到下面说明的本地侦听控制单元42-l。然后,请求 发送/接收单元41-1从稍后说明的本地侦听控制单元42-1接收全局侦听请 求,并将该全局侦听请求发送到稍后说明的广播控制单元43-l。全局侦听 请求被发出以在设置在信息处理装置100的所有高速緩存存储器(在本例 中为第一级高速緩存存储器10a到13a和第二级高速緩存存储器10b到 13b;下同)中搜索要响应于存储器访问请求来访问的数据(下文中简称 为目标数据)。
本地侦听控制单元42-1在其隶属节点下的高速緩存存储器中搜索存 储器访问请求的目标数据,并且基于搜索结果确定要响应于存储器访问请 求进行的操作。
具体来说,当从请求发iH/接收单元41-1接收到存储器访问请求时, 本地侦听控制单元42-1通过在其隶属节点下的高速緩存TAG 46-1中搜索 (侦听)用于识别该存储器访问请求的目标数据的访问目标地址信息(下 文中筒称为目标地址信息),来响应于发出了该存储器访问请求的CPU 10 到13进行操作。
作为搜索的结果,例如,在本地侦听控制单元42-1隶属节点下的高 速緩存TAG46-1中存在存储器访问请求所需的内容的情况下,本地侦听 控制单元42-1基于该搜索结果确定响应于存储器访问请求的操作。要响 应于存储器访问请求进行的操作是发出读请求以读取主存储器中的数 据、向CPU发出清除请求以清除高速緩存存储器中的数据、等等。作为 搜索的结果,例如,在其隶属节点下的高速緩存TAG46-1中未命中存储 器访问请求所需的内容的情况下,本地侦听控制单元42-1取消M侦听 控制操作,并向请求发送/接收单元41-1发送全局侦听请求。
广播控制单元43-l向其隶属节点下的请求发iH/接收单元41-l发送全 局侦听请求,并从其隶属节点下的请求发iH/接收单元41-1接收全局侦听 请求,并且也向其它节点(在本例中为系统板B,下同)下的系统控制器 40-2发送全局侦听请求,并从所述其它节点下的系统控制器40-2接收全 局侦听请求。
具体来说,当从请求发iH/接收单元41-l接收到全局侦听请求时,广 播控制单元43-1将该全局侦听请求发送到稍后说明的全局侦听控制单元 44-1,并将所述全局侦听请求输出(广播)到其它节点的系统控制器40-2。 当从其它节点的系统控制器40-2接收到全局侦听请求时,广播控制单元 43-1将所述全局侦听请求发送到全局侦听控制单元44-1。全局侦听控制单元44-1在其隶属节点下的高速緩存存储器中搜索目 标数据,并与其它节点下的系统控制器40-2交换搜索结果。基于其它节 点下的系统控制器40-2中的搜索结果以及其自身的搜索结果,全局侦听 控制单元44-1确定要响应于存储器访问请求进行的操作。
具体来说,当从广播控制单元43-1接收到全局侦听请求时,全局侦 听控制单元44-1在其隶属节点下的高速緩存TAG 46-1中搜索与全局侦听 请求的目标数据相对应的目标地址信息,作为响应于发出了存储器访问请 求的CPU而进行的操作。
同时,当其它节点的全局侦听控制单元44-2经由该其它节点的广播 控制单元43-2从其隶属节点的广播控制单元43-1接收到全局侦听请求 时,全局侦听控制单元44-2在该其它节点下的高速緩存TAG46-2中搜索 与全局侦听请求的目标数据相对应的目标地址信息。之后,全局侦听控制 单元44-1和44-2交换并结合高速緩存TAG搜索结果(由全局侦听控制 单元44-l进行的高速緩存TAG46-1的搜索结果,以及由全局侦听控制单 元44-2进行的高速緩存TAG 46-2的搜索结果),以便合并(merge)高速 緩存状态。基于高速緩存状态合并的结果,其隶属节点的全局侦听控制单 元44-1确定要响应于存储器访问请求进行的操作。
例如,如果高速緩存状态的合并结果表明,从CPU 10a发出的存储 器访问请求的目标数据存在于其隶属节点下的主存储器30中,则全局侦 听控制单元44-1向其隶属节点下的存储器访问发布单元45-1 发出存储器访问请求。如果高速緩存状态的合并结果表明,从CPU 10a 发出的存储器访问请求的目标数据存在于其它节点下的CPU 12中的高速 緩存存储器12a中,则全局侦听控制单元44-1向该其它节点下的CPU 12a 发出存储器访问请求。
存储器访问发布单元45-1基于响应于由本地侦听控制单元42-1或全 局侦听控制单元44-1所确定的存储器访问请求而进行的操作来执行存储 器访问请,夂。
除了通信控制操作是相对于第一级高速緩存存储器12a和13a、第二 级高速緩存存储器12b和13b以及主存储器32和33进行的之外,设置在 系统控制器40-2中的高速緩存TAG46-2、请求发iH/接收单元41-2、本地 侦听控制单元42-2、广播控制单元43-2、全局侦听控制单元44-2以及存 储器访问发布单元45-2分别与系统控制器40-1的高速緩存TAG 46-1 、请 求发送/接收单元41-l、本地侦听控制单元42-l、广播控制单元43-l、全局侦听控制单元44-1以及存储器访问发布单元45-1相同。
图13和图14是用于说明传统大^^信息处理装置100的操作的时间图。
下面说明了对只存在于本地存储器中而不存在于设置于传统大规模 信息处理装置100中的任何高速緩存存储器中的数据进行访问而要进行 的操作流程。
如图13所示,首先,从CPU IO发出存储器访问请求(本例中的数 据找取请求(如图13中的"FCH-REQ"所示);下文中称作找取请求) (参见tl ),且请求发送/接收单元41-1从CPU 10接收找取请求(参见t2 )。 然后,本地侦听控制单元42-1在其隶属节点下的高速緩存TAG46-1中搜 索找取请求的目标地址信息(参见t3 )。
如果响应于存储器访问请求所进行的搜索的结果表明,在其隶属节点 下的高速緩存TAG46-1中未命中该目标地址信息(如图13中的"结果= 未命中"所示),则^侦听控制单元42-l取消本地侦听控制,并向请求 发送/接收单元41-1发送全局侦听请求。当广播控制单元43-1经由请求发 iH/接收单元41-1从本地侦听控制单元42-1接收到全局侦听请求时,广播 控制单元43-l将该全局侦听请求发送到全局侦听控制单元44-1(参见t4 ), 并向其它节点的系统控制器40-2广播全局侦听请求(参见t5 )。
当从广播控制单元43-1接收到全局侦听请求时,其隶属节点的全局 侦听控制单元44-1在其隶属节点下的高速緩存TAG 46-1中搜索与全局侦 听请求的目标数据相对应的目标地址信息(参见t6)。同时,当其它节点 的全局侦听控制单元44-2从广播控制单元43-1接收到全局侦听请求时, 全局侦听控制单元44-2在该其它节点下的高速緩存TAG46-2中搜索与全 局侦听请求的目标数据相对应的目标地址信息(参见t7)。各个节点下的 全局侦听控制单元44-1和44-2相互交换对高速緩存TAG 46-1和46-2进 行搜索的结果,并将各结果结合起来以便合并高速緩存状态。基于高速緩 存状态合并的结果,全局侦听控制单元44-1确定响应于找取请求的最终 操作(参见t8)。
如果从各高速緩存存储器的任何一个中都没有检测到找取请求的目 标数据,并且全局侦听控制单元44-1确定要从其隶属节点下的主存储器 30中读取与找取请求的目标数据相对应的原始数据,则存储器访问发布 单元45-1针对该找取请求向其隶属节点下的主存储器30发出读请求(如图13中的"MS-RD-REQ"所示)(参见t9)。然后,从隶属节点下的主 存储器30中将与找取请求相对应的原始数据读入系统控制器40-l中(如 "RD"和"MIDQ"所示;参见图13中的t10)。之后,存储器访问发布 单元45-1将从其隶属节点下的主存储器30作为找取数据响应(如图13 中的"FCH-DATA"所示)读取的原始数据发送到CPU 10 (参见tll), 且找取请求的执行完成(参见t12 )。
接下来,说明对存在于传统大^^信息处理装置100中的其隶属节点 的高速緩存存储器中的高速緩存数据进fr沐问所要进行的操作流程。
如图14中所示,首先,从CPU10发出找取请求(参见tl),且请求 发送/接收单元41-1从CPU 10接收找取请求(参见t2 )。然后,本地侦听 控制单元42-l在其隶属节点下的緩存TAG46-l中搜索找取请求的目标地 址信息(参见t3 )。
如果响应于存储器访问请求所进行的搜索的结果表明,在其隶属节点 下的緩存TAG46-1中命中了该目标地址信息(如图14中的"结果-命中" 所示),则本地侦听控制单元42-1基于搜索结果确定响应于找取请求的最 终操作(参见t4)。因此,全局侦听控制单元42-l省略全局侦听控制操作。
如果清楚找取请求的目标lt据存在于隶属节点下的CPU 11中的第一 级高速緩存存储器lla中,并且本地侦听控制单元42-1确定要从第一级 高速緩存存储器lla读取与所述找取请求的目标数据相对应的高速緩存 数据,则本地侦听控制单元42-1针对所述找取请求向包括第一级高速緩 存存储器lla的CPU 11发出读请求(如图14中的"CPBK-REQ"所示) (参见t5)。然后,将与找取请求相对应的高速緩存数据从第一级高速緩 存存储器lla (CPU 11)读入系统控制器40-l (如"RD"和"MIDQ" 所示;参见图14中的t6)。之后,本地侦听控制单元42-l将从第一级高 速緩存存储器lla中作为找取数据响应(如图14中的"FCH-DATA"所 示)读取的高速緩存数据发送到CPU 10 (参见t7 ),且找取请求的执行 完成(参见t8 )。
如上所述,在传统大M^^信息处理装置100中,只在下列(1)到(6) 的情形中,才省略全局侦听控制操作并且对隶属节点下的主存储器进#^问。
(1)所发出的存储器访问请求为命令找取请求,并且在隶属节点下 的高速緩存TAG46-1中命中了命令找取请求的目标数据,该目标数据为共享类型(简单地从设置在信息处理装置100中的高速緩存存储器的一个
中找取目标数据的共享找取请求)。
(2) 所发出的存储器访问请求为命令找取请求,并且在隶属节点下 的高速緩存TAG46-1中命中了命令找取请求的目标数据,该目标数据为 排斥类型(只使设置在信息处理装置100的所有高速緩存存储器中的一个 高速緩存存储器存储目标数据的排斥型找取命令)。
(3) 所发出的存储器访问请求为共享型(加载)找取请求,并且在 隶属节点下的高速緩存TAG 46-1中命中了所述共享型找取请求的目标数 据,该目标数据为共享类型。
(4) 所发出的存储器访问请求为共享型找取请求,并且在隶属节点 下的高速緩存TAG46-1中命中了所述共享型找取请求的目标数据,该目 标数据为排斥类型。
(5) 所发出的存储器访问请求为排斥型(存储)找取请求,并且在 隶属节点下的高速緩存TAG 46-1中命中了所述排斥型找取请求的目标数 据,该目标数据为排斥类型。
(6) 所发出的存储器访问请求为块存储请求,并且在隶属节点下的 緩存TAG 46-1中命中了所述块存M求的目标数据,该目标数据为排斥 类型。
如上所述,通过传统技术,只当在本地高速緩存存储器中命中了存储 器访问请求的目标数据时,才可以跳过在信息处理装置100中的所有系统 板上进行的全局侦听控制操作,并且可以激活隶属节点下的各CPU之间 的数据传输。
然而,上面的传统技术只能覆盖安M隶属节点中的高速緩存存储器 的总容量。
此夕卜,如果在隶属节点下的所有高速緩存存储器中都未命中,则不能 检测到与目标数据相对应的最新数据的位置。所以,在这种情况下,需要 在所有系统板上进行全局侦听控制操作。
于是,当跳过全局侦听操作时访问启动成功率就不够高,并且装置的 性能或许也不能如愿得以提高
发明内容
考虑了这些情形做出本发明,本发明的目的是在这样的信息处理装 置中,缩短存储器访问等待时间,并提高侦听IMt吞吐量,该信息处理装 置包括节点,每个节点具有主存储器和包括高速緩存存储器的处理器。
为了实现上面的目的,所公开的信息处理装置包括两个或更多个节 点,每个节点都具有主存储器、包括高速緩存存储器的处理器以及进行控 制操作以保证节点间的高速緩存一致性的系统控制器。各节点中至少一个 节点的系统控制器包括
保持单元,其保持关于存在于隶属节点下的主存储器中的原始数据的
特定信息,其中与原始数据相对应的高速緩存数据不在隶属节点之外的各 节点的高速緩存存储器中。
所公开的用于信息处理装置的存储器控制方法(该信息处理装置包括 两个或更多个其每一个都具有主存储器的节点、包括高速緩存存储器的处 理器以及进行控制操作以保证各节点间的高速緩存一致性的系统控制器) 包括存储器访问请求接收步骤,接收作为所述节点之一的隶属节点处产 生的存储器访问请求;访问步骤,当在存储器访问请求接收步骤中接收到 存储器访问请求时访问保持单元,其中,保持单元保持关于存在于隶属节 点的主存储器中的原始数据的特定信息,其中与原始数据相对应的高速緩 存数据不在其它节点的高速緩存存储器中;以及本地侦听控制步骤,当在 接收步骤中接收到的存储器访问请求的目标数据与由保持单元中所保持 的特定信息相对应时,进行M侦听控制操作以保证隶属节点处的高速緩 存一致性。
所公开的存储器控制装置包括主存储器、具有高速緩存存储器的处 理器以及进行控制操作以保证所述存储器控制装置和其它存储器控制装 置之间的高速緩存一致性的系统控制器。系统控制器包括保持单元,该保 持单元保持关于存在于存储器控制装置的主存储器中的原始数据的特定 信息,其中与原始数据相对应的高速緩存数据不在其它存储器控制装置的 高速緩存存储器中。
所公开的技术至少具有下列效果和优点之一
(1) 可以跳过全局侦听控制操作,并且可以保证节点之间的高速緩 存一致性;
(2) 能够使可以跳过全局侦听控制操作的条件比传统情形中的那些 条件更宽;(3) 在所述信息处理装置中,可以缩短存储器访问等待时间,并且
可以提高侦听操作的吞吐量;
(4) 在所述信息处理装置中,可以提高广播总线和全局侦听操作的 繁忙率(busyrate);
(5) 可以使所述信息处理装置的性能更高;以及
(6) 可以将保持单元容易地安M任何现有信息处理装置中。


图l是示出作为本发明实施例的信息处理装置的整体结构的框图2是示出作为本发明实施例的信息处理装置中的系统板的结构的 框图3是示出作为本发明实施例的信息处理装置中的各系统板的结构 的框图4是示出作为本发明实施例的信息处理装置中的系统控制器的结 构的才匡图5是示出作为本发明实施例的信息处理装置中要进行的第一示例 操作的时间图6是示出作为本发明实施例的信息处理装置中要进行第二示例操 作的时间图7是示出作为本发明实施例的信息处理装置中要进行的第三示例 操作的时间图8是示出作为本发明实施例的信息处理装置中要进行的第四示例 操作的时间图9是示出作为本发明实施例的信息处理装置中要进行的第五示例 操作的时间图10是示出作为本发明实施例的信息处理装置中要进行的第六示例 操作的时间图11是用于说明在作为本发明实施例的信息处理装置中取消全局侦 听控制操作的M的关系表图12是示出传统大M^信息处理装置的结构的框图13是示出传统大M^信息处理装置中要进行的操作的时间图;以

图14是示出传统大M^信息处理装置中要进行的操作的时间图。
具体实施例方式
下面将参考

本发明的实施例。 本发明的一个实施例
图1是示出作为本发明实施例的信息处理装置的整个结构的框图。
作为本发明实施例的信息处理装置1是一种大,SMP信息处理装 置。如图1中所示,该信息处理装置l包括交叉开关(crossbar switch) XB0到XB3 (图1中所示的例子中有四个交叉开关)和系统板(节点或 存储器控制装置)SB0到SB15 (在图1所示的例子中有16个系统板)。 交叉开关XB0到XB3被连接到系统板SB0到SB15 ,使得整个系统中的 连接受到控制。
系统板SB0到SB15通过由诸如外壳、板和芯片的物理边界(物理空 间)形成的隔离物(节点)彼此隔开。因此,每一个系统板都用作作为信 息处理装置1中具有处理能力的扩展单元的一个节点。
现在将通过系统板SB0和SB1的例子来详细说明作为本发明实施例 的信息处理装置以及本地侦听控制方法。
图2是示出作为本发明实施例的信息处理装置中的系统板的结构的 框图。图3是更详细地示出系统板的结构的框图。图4是示出系统控制器 的结构的才匡图。
如图2和图3所示,系统板SB0包括例如,CPU (处理器)10到 13 (在本例中有4个CPU )、 I/O装置(输V输出装置)20和21 (在本 例中有两个I/O装置)、主存储器30和31 (在本例中有2个主存储器) 以及系统控制器50-l。如图3中所示,系统板SB1包括CPU14到17(在 本例中有4个CPU )、 I/O装置22和23 (在本例中有两个I/O装置)、主 存储器32和33 (在本例中有2个主存储器)以及系统控制器50-2。
CPU 10到17中的每一个CPU都包括多级高速緩存存储器(在本例中有两级)。具体来说,CPU 10包括第一级高速緩存存储器(高速緩存存 储器)10a和第二级高速緩存存储器(高速緩存存储器)10b, CPU 11包 括第一级高速緩存存储器lla和第二级高速緩存存储器lib, CPU 12包 括第一级高速緩存存储器12a和第二级高速緩存存储器12b,以及CPU 13 包括第一级高速緩存存储器13a和第二级高速緩存存储器13b。类似地, CPU 14包括第一级高速緩存存储器14a和第二级高速緩存存储器14b, CPU 15包括第一级高速緩存存储器15a和第二级高速緩存存储器15b, CPU 16包括第一级高速緩存存储器16a和第二级高速緩存存储器16b, 以及CPU 17包括第一级高速緩存存储器17a和第二级高速緩存存储器 17b。
在下面的说明中,高速緩存存储器中所存储(或存在)的数据将被称 作高速緩存数据。高速緩存数据是主存储器中存储(或存在)的原始数据 的复本(存储器复本)。
系统控制器50-1和50-2进行控制操作,以保证设置在信息处理装置 1中的所有系统板SBO到SB15之间的高速緩存一致性。
尽管设置在信息处理装置1中的系统板包括系统板SBO到SB15 (参 见图1),但为了方便起见,下面只说明图3中所示的系统板SBO和SBl。
系统控制器50-1和50-2经由总线彼此连接,使得系统控制器50-1 和50-2能够彼此通信。系统控制器50-1和50-2共享对设置在信息处理装 置l中的存储器(在本例中,第一级高速緩存存储器10a到17a、第二级 高速緩存存储器10b到17b以及主存储器30到33 )所进行的通信控制操 作。除了彼此对不同的存储器进行通信控制操作之外,系统控制器50-1 和系统控制器50-2具有相同的结构。具体来说,系统控制器50-1对CPU 10到13、 I/O装置20和21以及主存储器30和31进行通信控制^作。 系统控制器50-2对CPU 14到17、 I/O装置22和23以及主存储器32和 33进行通信控制操作。
系统控制器50-1和50-2每个都具有这样的机制,来进行控制操作, 以保证超过设置在信息处理装置1中的系统板SBO到SB15之间的边界的 高速緩存一致性(一致性控制操作)。高速緩存一致性是要维持的数据的 一致性,使得即使当对存在于高速緩存存储器中与同一原始数据相对应的 每组高速緩存数据进行了数据更新时,也能够访问最新的正确的高速緩存 数据。系统控制器50-1包括高速緩存TAG(第一保持单元)52-1、虚拟TAG 扩展(VTAGX;保持单元或第二保持单元)57-1、请求发iH/接收单元51-1、 广播控制单元53-l、全局侦听控制单元54-l、本地侦听控制单元55-l以 及存储器访问发布单元56-1。
高速緩存TAG52-1注册并保持(存储)用于识别其隶属节点(M 系统板,或本例中的系统板SBO;下同)下的高速緩存存储器(在本例中 为第一级高速緩存存储器10a到13a和第二级高速緩存存储器10b到13b; 下同)中存在的高速緩存数据的地址信息(特定信息)。高速緩存TAG 52-1 由已知技术形成,因此,这里省略了它的说明。
VTAGX 57-1注册并保持用于识别存在于其隶属节点下的主存储器 (本地存储器)30和31中的原始数据的地址信息(特定信息),其中, 与所述原始数据相对应的高速緩存数据不存在于信息处理装置1中其隶 属节点之外的所有节点(图1中的系统板SB1到SB15;图3所示的本例 中的其它系统板SB1;下同)的高速緩存存储器(图1中未示出;图3所 示的本例中的第一级高速緩存存储器14a到17a和第二级高速緩存存储器 14b到17b;下同)中。因此,VTAGX 57-1虚拟地扩展了本地高速緩存 存储器空间。
VTAGX 57-1注册这样的地址信息,该地址信息的数据大小使得CPU 可以在一次操作中对其进行读取,并针对高速緩存存储器的每行大小对 VTAGX 57-1进行管理。VTAGX 57-1还存储有效位(状态信息),该有 效位指示所述地址信息是处于与该地址信息相关的有效状态中还是无效 状态中。如果该有效位指示出有效状态,则可以通过稍后说明的本地侦听 控制单元55-1和全局侦听控制单元54-1的侦听对注册在VTAGX 57-1中 的地址信息进行检测。如果该有效位指出了无效状态,则不能通过稍后i兌 明的本地侦听控制单元55-1和全局侦听控制单元54-1的侦听来对 VTAGX 57-1中所注册的地址信息进行检测。
VTAGX57-1也可以存储一系列地址信息,这些地址信息形成连续的 若干组关于地址边界的地址信息。通过对VTAGX 57-1中的连续行的地址 同时进行管理,能够增加随^"M储器(RAM)的空间效率。在这种 情况下,将与所i^址信息系列中的地址信息组相关的有效位彼此独立地 注册在VTAGX 57-1中。
请求发送/接收单元51-1接收从CPU 10到17或I/O装置20到23发 出的存储器访问请求以及进行全局侦听控制操作的全局侦听请求。经由全局侦听控制*作,通过在节点上进行控制操作以保证信息处理装置1中的
所有节点(图1中的系统板SBO到SB15;图3中的系统板SB0和SB1; 下同)之间的高速緩存一致性来确定要响应于存储器访问请求进行的操 作。全局侦听请求是在设置在信息处理装置1中的所有节点的高速緩存存 储器(图1中未示出;图3所示的本例中的第一级高速緩存存储器10a 到17a和第二级高速緩存存储器10b到17b,下同)中搜索要响应于存储 器访问请求访问的数据(下文中简称为目标数据)的指令。
当接收到存储器访问请求时,请求发iH/接收单元51-1将存储器访问 请求发送到稍后说明的本地侦听控制单元55-1。当从本地侦听控制单元 55-1接收到请求全局侦听控制的全局侦听请求时,请求发送/接收单元 51-1将全局侦听请求发送到稍后说明的全局侦听控制单元54-1。
具体来说,如果从CPU10发出了存储器访问请求,并且在第一级高 速緩存存储器10a和第二级高速緩存存储器10b中发生了关于要响应于该 存储器访问请求进行访问的数据的高速緩存未命中(cache miss ),则请求 发iil/接收单元51-1接收从CPU 10发出的存储器访问请求(读请求)。然 后,请求发iH/接收单元51-1将存储器访问请求发送到稍后说明的本地侦 听控制单元55-l。之后,当从本地侦听控制单元55-l接收到全局侦听请 求时,请求发iii/接收单元51-1将该全局侦听请求发送到稍后说明的广播 控制单元53-1。
如果存储器访问请求是在本地侦听控制单元55-l隶属节点下发出的, 并且该存储器访问请求的目标数据与本地侦听控制单元55-1隶属节点下 的高速緩存TAG52-1或VTAGX 57-1中所存储的地址信息相对应,则本 地侦听控制单元55-1进行本地侦听控制操作(本地侦听)。经由本地侦听 控制操作,通it^本地侦听控制单元55-1隶属节点下进行确保高速緩存 一致性的控制操作来确定要响应于该存储器访问请求进行的操作。因此, 在上述情形中,本地侦听控制单元55-1只在作为其隶属节点的本地系统 板上的封闭范围内进行确保高速緩存一致性的控制操作。这样,W侦听 控制单元55-1确保信息处理装置1中设置的所有节点之间的高速緩存一 致性。
如果存储器访问请求的目标数据不与本地侦听控制单元55-1隶属节 点下的高速緩存TAG 52-1或VTAGX 57-1中所存储的任何地址信息相对 应,则本地侦听控制单元55-1向请求发送/接收单元51-1发送全局侦听请 求。如图4所示,本地侦听控制单元55-l包括例如,请求端口单元66-1、 请求选择单元67-1和流水线单元68-1。
请求端口单元66-1按顺序存储(保持)从请求发iH/接收单元51-1所 接收到的请求。
请求选择单元67-1从请求端口单元66-1中存储的请求中选择某个请求。
流水线单元(本地侦听控制单元)68-1对由请求选择单元67-1所选 择的请求的目标数据进行本地侦听控制操作。
具体来说,当从请求发送/接收单元51-1接收到存储器访问请求时, 作为响应于发布了存储器访问请求的CPU而进行的操作,流水线单元 68-1在其隶属节点下的高速緩存TAG 52-1和VTAGX 57-1中搜索(侦听) 要访问的地址信息(下文中简称作目标地址信息),其中该地址信息用于 识别该存储器访问请求的目标数据。
如果作为响应于存储器访问请求进行的搜索的结果,在流水线单元 68-1隶属节点下的高速緩存TAG 52-1或VTAGX 57-1中命中了要访问的 地址信息,则流水线单元68-1基于该搜索结果来确定要响应于该存储器 访问请求进行的操作。在这种情况下,流水线单元68-l通报与目标数 据相对应的最新高速緩存数据存在于其隶属节点下的高速緩存存储器或 主存储器中。这样,流水线单元68-1保证其隶属节点下的高速緩存存储 器中的高速緩存数据没有被更新。要响应于该存储器访问请求进行的操作 为发出在主存储器中读取数据的请求或让CPU清除高速緩存存储器中 的数据的请求。
如果作为搜索的结果,在流水线单元68-1隶属节点下的高速緩存 TAG 52-1和VTAGX 57-1中未命中要访问的地址信息,则流水线单元68-1 取消本地侦听控制操作,并向请求发送/接收单元51-1发送全局侦听请求。
广播控制单元53-1向其隶属节点的请求发送/接收单元51-1发送以及 从该单元接收全局侦听请求,并且也向信息处理单元1中其隶属节点之外 的所有其它节点(在本例中系统控制器50-2作为所述其它节点;下同) 的系统控制器发送以及从所述系统控制器接收全局侦听请求。
具体来说,当从请求发送/接收单元51-l接收全局侦听请求时,广播 控制单元53-1向稍后说明的全局侦听控制单元54-1发送全局侦听请求, 并向作为其它节点的系统控制器50-2广播全局侦听请求。这样,广播控制单元53-1只广播那些被确定为不能由本地侦听控制单元55 - 1进行处 理的存储器访问请求。
当从作为其它节点的系统控制器50-2接收到全局侦听请求时,广播 控制单元53-1将该全局侦听请求发送到全局侦听控制单元54-1。
全局侦听控制单元54-l进行全局侦听控制操作。如图4所示,全局 侦听控制单元54-l包括例如,请求端口单元61-1、请求选择单元62-l、 流水线单元63-1、通信单元64-1以及提前注册清求单元65-1。
请求端口单元61-1按顺序存储(保持)从广播控制单元53-1接收到 的全局侦听请求。
请求选捧单元62-1从请求端口单元61-1中所存储的全局侦听请求中 选择某个全局侦听请求。
流水线单元(全局侦听控制单元)63-1对由请求选择单元62-1选择 的全局侦听请求的目标数据进行全局侦听控制操作。
流水线单元63-1从其隶属节点下的高速緩存存储器中检测全局侦听 请求的目标数据,并与作为其它节点的系统控制器50-2交换搜索结果。 这样,流水线单元63-1基于作为其它节点的系统控制器50-2的搜索结果 和它自己的搜索结果这二者的结合,确定要响应于存储器访问请求进行的 操作。
具体来说,响应于发出了存储器访问请求的CPU,流水线单元63-l 在其隶属节点下的高速緩存TAG 52-1中搜索与由请求选择单元62-1选择 的全局侦听请求的目标数据相对应的目标地址信息。
当其它节点的全局侦听控制单元54-2 (或流水线单元未示出)经由 该其它节点的广播控制单元53-2从隶属节点的广播控制单元53-1接收全 局侦听请求时,全局侦听控制单元54-2在该其它节点下的高速緩存TAG 52-2中搜索与全局侦听请求的目标数据相对应的目标地址信息。之后,各 个节点的流水线单元63-1和全局侦听控制单元54-2经由稍后说明的通信 单元64-l进行发送、接收,并将高速緩存TAG搜索结果(在本例中为来 自流水线单元63-1的高速緩存TAG 52-1搜索结果和来自全局侦听控制单 元54-2的高速緩存TAG 52-2搜索结果)结^来,以便合并高速緩存状 态。基于高速緩存状态的合并结果,流水线单元63-1确定要响应于存储 器访问请求进行的操作。
如果高速緩存状态的合并结果表明,从CPU 10a发出的存储器访问请求的目标数据不存在于信息处理装置1中设置的任何高速緩存存储器
中,并且将要访问其隶属节点下的主存储器30,则流水线单元63-l向其 隶属节点下的存储器访问发布单元56-1发出存储器访问请求。如果高速 緩存状态的合并结果表明,从CPU 10a发出的存储器访问请求的目标数 据存在于其它节点下的CPU 14中的高速緩存存储器14a中,则流水线单 元63-l向该其它节点下的CPU 14a发出存储器访问请求。
因此,当从广播控制单元53-1接收到全局侦听请求时,流水线单元 63-1在其隶属节点下的高速緩存TAG 52-1和其它节点下的高速緩存TAG 52-2中搜索与该全局侦听请求的目标数据相对应的目标地址信息。然后, 流水线单元63-1通知整个信息处理装置1该CPU将访问其隶属节点下 的主存储器30和31,并接收响应。这样,流水线单元63-1进行控制操作, 以保证整个信息处理装置1中的高速緩存一致性。
流水线单元63-1除了用作上述单元外,还用作注册单元和无效化单 元(invalidation unit )。
如果全局侦听控制操作的结果表明,与其隶属节点的主存储器30和 31中的原始数据相对应的高速緩存数据不存在于信息处理装置1中的任 何节点的任何高速緩存存储器中,则流水线单元(下文中称作注册单元) 63-1将识别原始数据的地址信息注册在VTAGX 57-1中,并使VTAGX 57-1保持该地址信息。注册单元63-1通知整个信息处理装置1该CPU将 访问某个存储器,并接收响应。如a该响应中清楚看到与目标数据相对 应的高速緩存数据没有被注册在信息处理装置1中设置的任何高速緩存 存储器中,则注册单元63-1将识别与该目标数据相对应的原始数据的地 址信息注册在其隶属节点下的VTAGX 57-1中。因此,当作为全局侦听操 作的结果(未命中)从注册单元63-1隶属节点下的CPU (本地CPU) 10 到13发出的存储器访问请求被指向注册单元63-1隶属节点下的主存储器 30和31,并且要对注册单元63-1隶属节点下的主存储器30和31进旨 问时,注册单元63-1将相应的地址信息注册在其隶属节点下的VTAGX 57-1中。
在本实施例中,使用组相联方法(set associative method),注册单元 63-1选择新的注册条目(registration entry ),并且如果在进行新的条目注 册时没有条目空间,则根据各路(WAY)之间的最近最少使用(Least Recently Used, LRU)政策来注册地址信息。即使有与要注册的地址信 息相同的有效条目,注册单元63-1也不对该有效条目中的地址信息进行任何处理,而用要注册的地址信息替换该有效条目。
当流水线单元63-1用作无效化单元时,在信息处理装置1中其隶属 节点之外的 一个节点(在本例中为系统板SB1)发出了存储器访问请求, 并且该存储器访问请求的目标数据为其隶属节点的主存储器30和31中 的、与其隶属节点下的VTAGX57-1中所存储的地址信息相对应的原始数 据的情况下,当确定了作为该存储器访问请求的响应的IMt时,流水线单 元(下文中称作无效化单元)63-1使与其隶属节点的主存储器30和31 中的原始数据相对应并被存储在其隶属节点下的VTAGX 57-1中的地址 信息无效。
具体来说,当将用于所述其它节点下的CPU 14到17访问无效化单 元63-1隶属节点下的主存储器30和31的请求通知给整个信息处理装置1 时,无效化单元63-1针对其隶属节点下的VTAGX 57-1中所存储的地址 信息来检查该访问请求的目标地址信息。如果与所述目标地址信息匹配的 地址信息被存储在其隶属节点下的VTAGX 57-1中,则无效化单元63-l 将与该地址信息相对应的有效位的状态从有效状态改变为无效状态,以便 保证整个信息处理装置l中的高速緩存一致性。因此,当在来自其它节点 下的CPU 14到17 (异地CPU)的存储器访问请求的访问目标为地址被 注册在无效化单元63-1隶属节点下的VTAGX 57-1中的数据的情况下确 定了要进行访问时,无效化单元63-1使其隶属节点下的VTAGX 57-1中 的相应条目无效。
通信单元64-1与流水线单元63-1以及信息处理装置1中其隶属节点
之外的所有其它节点的全局侦听控制单元(在本例中为其它节点的全局侦 听控制单元54-2 )进行通信。
提前注册请求单元(扩展特定信息产生单元)65-1产生提前地址信 息(扩展特定信息),该信息是与存储在VTAGX 57-1中的地址信息不同 的地址信息。
出于下面的原因提供提前注册请求单元65-1 。
在只有当来自注册单元63-1隶属节点下的CPU (本地CPU)的找取 请求被执行时注册单元63-1才将相应地址信息注册在VTAGX 57-1中的 情况下,在该注册之后,从高速緩存存储器中清除与该地址信息相对应的 目标数据。当隶属节点下的CPU再次访问与该地址信息相对应的目标数 据时,第一次能在VTAGX57-1中命中。因此,只有当第二次或第二次之后进行访问时,才能在于VTAGX 57-1中命中的情况下跳过全局侦听操 作,且能够缩短等待时间。因此,当第二次或第二次之后对可重新使用数 据进行访问时,提前注餘清求单元65-1是有效的,但当第一次进行访问 时,该单元不是有效的。
有鉴于此,本实施例的信息处理装置1包括提前注册请求单元65-1, 当要注册的地址信息被注册在VTAGX 57-1中时,提前注册请求单元65-1 根据程序利用存储器访问的连续性,将注册的地址信息之前几千字节处的 地址信息提前注册在VTAGX 57-1中。
接下来,将详细说明利用提前注册请求单元65-1所进行的提前注册 操作。
作为全局侦听控制操作的结果,如果响应于来自CPU的访问请求, 在设置在信息处理装置1中的任何高速緩存存储器中都未命中,并且确定 要访问其隶属节点下的本*储器作为响应于该CPU而进行的操作,则 提前注册请求单元65-1在信息处理装置1中设置的所有系统控制器中通 过在与访问请求相对应的目标地址信息上加上预定量(例如,几千字节) 首先产生提前地址信息。这里,所有的系统控制器为各系统板SB0到SB15 上设置的系统控制器(未示出)。为方^t^见,这里说明为系统板SBO设 置的系统控制器50-l,作为设置在信息处理装置1中的所有系统控制器的 代表。如果与访问请求相对应的目标地址信息被成功地注册在VTAGX 57-1中,则提前注册请求单元65-l产生提前地址信息,该提前地址信息 为预计要在目标地址信息之后访问的地址信息。提前注册请求单元65-1 包M求端口 (提前注册请求端口;未示出),该请求端口按顺序地累积 (存储)所产生的提前地址信息。
当请求端口可用时,提前注册请求单元65-1将所产生的提前地址信 息设置在请求端口中。如果在请求端口中累积的提前地址信息中存在有效 的提前地址信息(提前注册清求),则提前注册请求单元65-1按顺序将有 效的提前地址信息输入到请求端口单元61-1。这里,有效的提前地址信息 表明,与该提前地址信息相对应的原始数据存在于其隶属节点下的主存储 器30和31中。因此,如果与提前地址信息相对应的原始数据存在于其隶 属节点下的主存储器30和31中,则提前注册请求单元65-1使该提前地 址信息与来自其它节点的存储器访问请求广播一起参与为全局侦听控制 所进行的请求选择操作。
之后,流水线单元63-1对由请求选择单元62-1选出的提前地址信息进行全局侦听控制操作。具体来说,流水线单元63-1确定与提前地址信 息相对应的高速緩存数据是否存在于信息处理装置1中其隶属节点之外 的各节点的高速緩存存储器的一个中。如果对提前地址信息进行的全局侦 听控制的结果表明,在i更置在信息处理装置1中的所有节点的高速緩存 TAG中都未命中(存在高速緩存未命中),则流水线单元63-1将该提前 地址信息注册在其隶属节点下的VTAGX57-1中。如果对提前地址信息进 行的全局侦听控制的结果表明,在信息处理装置1中设置的各节点的高速 緩存TAG中的一个处命中了 ,则流水线单元63-1不将该提前地址信息注 册在VTAGX 57-1中,并结束^Mt。
因此,如果对由提前注册请求单元65-1产生的提前地址信息所进行 的全局侦听控制的结^明,与该提前地址信息相对应的原始数据存在于 其隶属节点的主存储器30和31中,并且与该提前地址信息相对应的高速 緩存数据不存在于信息处理装置1中其隶属节点之外的各节点的任何高 速緩存存储器中,则流水线单元63-1将该提前地址信息注册在其隶属节 点下的VTAGX 57-1中,并使VTAGX 57-1保持该提前地址信息。
存储器访问发布单元56-1基于响应于由本地侦听控制单元55-1或全 局侦听控制单元54-1所确定的存储器访问请求而进行的操作,执行针对 其隶属节点下的主存储器30和31的存储器访问请求。
除了通信控制操作是相对于第一级高速緩存存储器14a到17a、第二 级高速緩存存储器14b到17b和主存储器32和33进行的之外,设置在系 统控制器50-2中的高速緩存TAG 52-2、 VTAGX 57-2、请求发iH/接收单 元51-2、本地侦听控制单元55-2、广播控制单元53-2、全局侦听控制单 元54-2和存储器访问发布单元56-2分别与系统控制器50-1中的高速緩存 TAG 52-1、 VTAGX 57-1、请求发送/接收单元51-1 、本地侦听控制单元 55-1、广播控制单元53-1、全局侦听控制单元54-1和存储器访问发布单 元56-1相同。
图5是示出作为本发明实施例的信息处理装置1中要进行的第一示例 ^Mt的时间图。
下面将说明在要访问其隶属节点下的主存储器中的原始数据、与该原 始数据相对应的高速緩存数据不在信息处理装置1中设置的任何高速緩 存存储器中、并且与原始数据相对应的地址信息没有注册在VTAGX 57-1 中的情况下,在作为本发明实施例的信息处理装置1中要进行的操作流程 (第一示例操作)。如图5中所示,首先从CPU10发出了存储器访问请求(本例中为数 据找取请求(如图5中的"FCH-REQ"所示);下文中称作找取请求)(参 见tl ),并且请求发iH/接收单元51-1从CPU 10接收该找取请求(参见t2; 存储器访问请求接收步骤)。然后,本地侦听控制单元55-l在其隶属节点 下的高速緩存TAG 52-1和其隶属节点下的VTAGX 57-1中搜索该找取请 求的目标地址信息(参见t3:访问步骤)。
如果响应于存储器访问请求所进行的搜索的结果表明,在其隶属节点 下的高速緩存TAG 52-1和VTAGX 57-1中都未命中(图5中的"结果= 未命中"所示),则本地侦听控制单元55-l取消本地侦听控制,并向请求 发送/接收单元51-1发送全局侦听请求。当经由请求发送/接收单元51-1
广播控制单元53-1将该全局侦听请求发送到全局侦听控制单元55-1 (参 见t4),并向信息处理装置l中其隶属节点之夕卜的所有节点中的系统控制 器广播该全局侦听请求(参见t5)。
当从广播控制单元53-1接收到全局侦听请求时,其隶属节点的全局 侦听控制单元54-1在其隶属节点下的高速緩存TAG 52-1中搜索与所述全 局侦听请求的目标数据相对应的目标地址信息(参见t6 )。同时,当其它 节点的全局侦听控制单元54-2从广播控制单元53-1接收到全局侦听请求 时,全局侦听控制单元54-2在其它节点下的高速緩存TAG52-2中搜索与 全局侦听请求的目标数据相对应的目标地址信息(参见t7)。各个节点的 全局侦听控制单元54-1和54-2相互交换高速緩存TAG搜索的结果,并 将这些结果结^来以便合并高速緩存状态。基于高速緩存状态的合并结 果,全局侦听控制单元54-1确定要响应于该找取请求进行的最终操作(参 见t8;全局侦听控制步骤)。
如果从各高速緩存存储器的任何一个中都没有检测到找取请求的目 标数据,并且全局侦听控制单元54-1确定要从主存储器30中读取与找取 请求的目标数据相对应的原始数据,则全局侦听控制单元54-1也确定在 VTAGX 57-1中进行注册,并将与原始数据相对应的地址信息注册在 VTAGX57-1中(参见t9;特定信息注册步骤)。此外,存储器访问发布 单元56-1针对该找取请求向主存储器30发出读请求(如图5中的 "MS-RD-REQ"所示)(参见t10)。然后,从主存储器30中将与所述找 取请求相对应的原始数据读入系统控制器50-l中(如"RD —MIDQ"所 示;参见图5中的tll )。之后,存储器访问发布单元56-1将作为找取数据响应(如图5中的"FCH-DATA"所示)从主存储器30读取的原始数 据发送到CPU 10 (参见t12 ),并完成了该找取请求的执行(参见t13 )。
图6是示出作为本发明实施例的信息处理装置1中要进行的第二示例 操作的时间图。
下面将说明在要访问其隶属节点下的主存储器中的原始数据,并且与 该原始数据相对应的地址信息被注册在VTAGX 57-1中的情况下,在作为 本发明实施例的信息处理装置l中要进行的操作流程(第二示例操作)。
如图6所示,首先从CPU IO发出找取请求(参见tl),并且请求发 iH/接收单元51-1从CPU 10接收该找取请求(参见t2;存储器访问请求 接收步骤)。然后,本地侦听控制单元55-1在其所述节点下的高速緩存 TAG 52-1和其隶属节点下的VTAGX 57-1中搜索该找取请求的目标地址 信息(参见t3:访问步骤)。
如果响应于存储器访问请求所进行的搜索的结果表明,在其隶属节点 下的高速緩存TAG52-1中未命中,但在其隶属节点下的VTAGX57-1中 命中了 (如图6中的"VTAGX-命中"以及"结果=命中"所示),则本 地侦听控制单元55-1基于搜索结果确定响应于找取请求进行的最终操作 (参见t4;本地侦听控制步骤)。因此,省略了全局侦听控制操作。
如果清楚该找取请求的目标数据不在其隶属节点下的任何高速緩存 存储器中,并且本地侦听控制单元55-1确定要从主存储器30读取与该找 取请求的目标数据相对应的原始数据,则存储器访问发布单元56-1针对 该找取请求向主存储器30发出读请求(参见t5 )。然后,从主存储器30 中将与该找取请求相对应的原始数据读入系统控制器50-l中(如"RD — DATA"所示;参见图6中的t6 )。之后,存储器访问发布单元56-1向CPU 10发送从主存储器30作为找取数据响应(如图6中的"FCH-DATA"所 示)读取的原始^L据(参见t7),且完成了该找取请求的执行(参见t8)。
图7是示出作为本发明实施例的信息处理装置1中要进行的第三示例 操作的时间图。
下面将说明在要访问其隶属节点下的主存储器中的原始数据,并且尽 管与该原始数据相对应的地址信息没有注册在VTAGX 57-1中,但与该原 始数据相对应的高速緩存数据存在于信息处理装置1中的其隶属节点之 外的一个节点中的高速緩存存储器中的情况下,在作为本发明实施例的信 息处理装置1中要进行的IMt流程(第三示例^Mt )。如图7中所示,首先从CPU 10发出找取请求(参见tl ),并且请求 发送/接收单元51-1从CPU 10接收该找取请求(参见t2;存储器访问请 求接收步骤)。然后,本地侦听控制单元55-l在其隶属节点下的高速緩存 TAG 52-1和其隶属节点下的VTAGX 57-1中搜索找取请求的目标地址信 息(参见t3:访问步骤)。
如果响应于存储器访问请求所进行的搜索的结果表明,在其隶属节点 下的高速緩存TAG 52-1和VTAGX 57-1中都未命中(如图7中的 "VTAGX-未命中"以及"结果=未命中"所示),则本地侦听控制单元 55-1取消本地侦听控制,并向请求发id/接收单元51-1发送全局侦听请求。 当经由请求发iil/接收单元51-1从本地侦听控制单元55-1接收全局侦听请 求时(全局侦听请求接收步骤),广播控制单元53-1将该全局侦听请求发 送到全局侦听控制单元55-l (参见t4),并向其它节点的系统控制器广播 该全局侦听请求(参见t5 )。
当从广播控制单元53-1接收到全局侦听请求时,其隶属节点的全局 侦听控制单元54-1在其隶属节点下的高速緩存TAG 52-1中搜索与该全局 侦听请求的目标数据相对应的目标地址信息(参见t6 )。同时,当其它节 点的全局侦听控制单元54-2从广播控制单元53-1接收到全局侦听请求 时,全局侦听控制单元54-2在该其它节点下的高速緩存TAG52-2中搜索 与该全局侦听请求的目标数据相对应的目标地址信息(参见t7 )。该各个 节点的全局侦听控制单元54-1和54-2相互交换高速緩存TAG搜索的结 果,并将这些结果结^^来以便合并高速緩存状态。基于高速緩存状态合 并的结果,全局侦听控制单元54-1确定响应于该找取请求进行的最终操 作(参见t8;全局侦听控制步骤)。
如果清楚找取请求的目标数据在其它节点(本例中的系统板SB1)下 的CPU 14中的第一级高速緩存存储器14a中,并且全局侦听控制单元 54-1确定要从第一级高速緩存存储器14a中读取与该找取请求的目标数 据相对应的高速緩存数据,则全局侦听控制单元54-2针对该找取请求向 包括第一级高速緩存存储器14a的CPU 14发出读请求(参见t9 )。然后, 从第一级高速緩存存储器14a ( CPU 14 )中将与该找取请求相对应的高速 緩存数据读入系统控制器50-2中(如"MODQ"所示,参见图7中的tlO )。 进一步,从系统控制器50-2中将与该找取请求相对应的高速緩存数据读 入系统控制器50-1中(如"MIDQ"所示,参见图7中的tll)。之后, 全局侦听控制单元54-1将从第一级高速緩存存储器14a中作为找取数据响应(如图7中的"FCH-DATA"所示)读取的高速緩存数据发送到CPU 10 (参见t12 ),并且完成了该找取请求的执行(参见t13 )。
图8是示出作为本发明实施例的信息处理装置1中要进行的第四示例 操作的时间图。
下面将说明在VTAGX 57-1中成功地进行了提前注册的情况下,在 作为本发明实施例的信息处理装置1中要进行的操作流程(第四示例操 作)。
tl到t13的过程与参考图5所说明的第一示例操作中的那些步斜目 同,因此,这里省略了这些步骤的说明。
如图8所示,当全局侦听控制单元54-l确定VTAGX 57-1中的注册 时(特定信息注册步骤),提前注餘清求单元65-1启动提前注册请求(参 见t9)。通过在与访问请求相对应的目标地址信息上加上几千字节,提前 注,求单元65-1产生提前地址信息(参见tl4;扩展特定信息产生步骤)。 与提前注册请求单元65-1类似,设置在信息处理装置1中的所有其它提 前注,求单元(在本例中为系统板SB1中设置的系统控制器50-l的提 前注册请求单元;未示出)通过在与访问请求相对应的目标地址信息上加 上几千字节来产生提前地址信息(参见tl5;扩展特定信息产生步骤)。
然后,每个全局侦听控制单元对由提前注册请求单元65-1产生的提 前地址信息进行全局侦听控制操作(参见tl6和t17)。具体来说,提前注 册请求单元65-1隶属节点的全局侦听控制单元54-1在其隶属节点下的高 速緩存TAG 52-1中搜索由提前注册请求单元65-1产生的提前地址信息 (参见tl6)。同时,其它节点的全局侦听控制单元54-2在其它节点下的 高速緩存TAG 52-2中搜索与提前注册请求单元65-l隶属节点下搜索的提 前地址信息相同的提前地址信息(参见t17 )。各个节点的全局侦听控制单 元54-1和54-2相互交换高速緩存TAG搜索的结果,并将这些结果结合 起来以便合并高速緩存状态。基于高速緩存状态合并的结果,全局侦听控 制单元54-1确定是否在其隶属节点下的VTAGX 57-1中注册该提前地址 信息(参见tl8;扩展特定信息注册步骤)。
如果针对该提前地址信息进行的全局侦听控制的结果表明,在所有的 高速緩存TAG中都未命中,则全局侦听控制单元54-1将该提前地址信息 注册在其隶属节点下的VTAGX 57-1中,且提前注册请求的执行完成。
图9是示出作为本发明实施例的信息处理装置1中要进行的第五示例^Mt的时间图。
下面将说明在VTAGX 57-1中进行提前注册失败的情况下,在作为 本发明实施例的信息处理装置l中要进行的操作流程(第五示例操作)。
tl到t17的过程与参考图5说明的第 一示例操作中的过程相同,因此, 在这里省略了对它们的说明。
如图9中所示,基于高速緩存状态合并的结果,全局侦听控制单元 54-1确定是否在其隶属节点下的VTAGX 57-1中注册该提前地址信息(参 见t18 )。
如果针对该提前地址信息所进行的全局侦听控制的结果表明在高速 緩存TAG中的一个高速緩存TAG中命中了 ,则全局侦听控制单元54-1 不将该提前地址信息注册在其隶属节点下的VTAGX 57-1中,且提前注册 请求的执行完成。
图10是示出作为本发明实施例的信息处理装置1中要进行的第六示 例^Mt的时间图。
下面将说明在要将VTAGX 57-1中所注册的地址信息置于无效状态 的情况下,在作为本发明实施例的信息处理装置1中要进行的操作流程 (第六示例操作)。
如图10中所示,首先,从其它节点(在本例中为系统板SB1)下的 CPU 14发出找取请求(参见tl),并且该其它节点下的请求发iH/接收单 元51-2从该其它节点下的CPU 14接收该找取请求(参见t2 )。然后,该 其它节点下的本地侦听控制单元55-2在该其它节点下的高速緩存TAG 52-2和该其它节点下的VTAGX 57-2中搜索该找取请求的目标地址信息 (参见t3)。
如果响应于存储器访问请求所进行的搜索的结果表明,在其它节点下 的高速緩存TAG52-2和VTAGX 57-2中都未命中(如图10中的"结果= 未命中"所示),则该其它节点下的本地侦听控制单元55-2取消本地侦听 控制,并向该其它节点下的请求发iH/接收单元51-2发送全局侦听请求。 当经由其它节点下的请求发送/接收单元51-2从该其它节点下的本地侦听 控制单元55-2接收到全局侦听请求时,该其它节点下的广播控制单元53-2 将该全局侦听请求发送到该其它节点下的全局侦听控制单元55-2 (参见 t4)。同时,该其它节点下的广播控制单元53-2向信息处理装置l中系统 控制器50-2之外的所有系统控制器广播该全局侦听请求(参见t5 )。例中,信息处理装置l中系统控制器50-2之外的所有系统控制器由其隶 属节点下的系统控制器50-1来代表。
当从广播控制单元53-2接收到全局侦听请求时,其它节点下的全局 侦听控制单元54-2在其它节点下的高速緩存TAG52-2中搜索与全局侦听 请求的目标数据相对应的目标地址信息(参见t6)。同时,当其隶属节点 下的全局侦听控制单元54-1从其它节点下的广播控制单元53-2接收到全 局侦听请求时,全局侦听控制单元54-1在其隶属节点下的高速緩存TAG 52-1中搜索与全局侦听请求的目标数据相对应的目标地址信息(参见t7 )。 各个节点的全局侦听控制单元54-1和54-2相互交换高速緩存TAG搜索 的结果,并将这些结果结^来以便合并高速緩存状态。基于高速緩存状 态合并的结果,全局侦听控制单元54-1确定响应于该找取请求的最终操 作(参见t8)。
如果没有从任何高速緩存存储器中检测到该找取请求的目标数据,且 全局侦听控制单元54-2确定要从其隶属节点下的主存储器30读取与该找 取请求的目标数据相对应的原始数据,则其隶属节点下的全局侦听控制单 元54-1将与VTAGX 57-1中所存储的地址信息相对应的有效位从有效状 态变成无效状态。这样,其隶属节点下的全局侦听控制单元54-1使 VTAGX 57-1中的地址信息无效(参见t9;无效化步骤)。此外,其隶属 节点下的存储器访问发布单元56-1针对该找取请求向主存储器30发出读 请求(如图10中的"MS-RD-REQ"所示)(参见t10)。然后,从主存储 器30中将与该找取请求相对应的原始数据读入其隶属节点下的系统控制 器50-l中(参见tll)。此外,从其隶属节点下的系统控制器50-l中将与 找^l请求相对应的原始lt据读入该其它节点下的系统控制器50-2中(如 "MIDQ"所示;参见图10中的t12)。之后,该其它节点下的存储器访 问发布单元56-2将从其隶属节点下的主存储器30作为找取数据响应(如 图10中的"FCH-DATA,,所示)读取的原始数据发送到CPU 14 (参见 t13 ),且该找取请求的执行完成(参见t14 )。
图11是用于说明在作为本发明实施例的信息处理装置1中取消全局 侦听控制操作的条件的表。
如上所述,在作为本发明实施例的信息处理装置l中,在下面(1) 到(6)的情形中,本地侦听控制单元55-l跳过全局侦听控制操作,并激 活对其隶属节点下的主存储器的访问(参见由图11中用"圆圏"所表示 的标记)。(1) 所发出的存储器访问请求为命令找取请求,并且在其隶属节点
下的高速緩存TAG 52-1中命中了该命令找取请求的目标数据,该数据为 共享类型(简单地从设置在信息处理装置1中的高速緩存存储器中的一个 中找取该目标数据的共享找取请求)(参见图11中的"1.3"部分)。
(2) 所发出的存储器访问请求为命令找取请求,并且在其隶属节点 下的高速緩存TAG 52-1中命中了该命令找取请求的目标数据,该数据为 排斥类型(只使设置在信息处理装置1中的所有高速緩存存储器中的一个 高速緩存存储器存储目标数据的排斥型找取命令)(参见图11中的"1.4" 部分)。
(3) 所发出的存储器访问请求为共享型(加载)找取请求,并且在 其隶属节点下的高速緩存TAG 52-1中命中了该共享型找取请求的目标数 据,该数据为共享类型(参见图11中的"2.3"部分)。
(4) 所发出的存储器访问请求为共享型找取请求,并且在其隶属节 点下的高速緩存TAG52-1中命中了该共享型找取请求的目标数据,该数 据为排斥类型(参见图11中的"2.4"部分)。
(5) 所发出的存储器访问请求为排斥型(存储)找取请求,并且在 其隶属节点下的高速緩存TAG 52-1中命中了该排斥型找取请求的目标数 据,该翁:据为排斥类型(参见图11中的"3.5"部分)。
(6) 所发出的存储器访问请求为块存储请求,并且在其隶属节点下 的高速緩存TAG 52-1中命中了该块存#*求的目标数据,该数据为排斥 类型(参见图11中的"4.5"部分)。
在作为本发明实施例的信息处理装置l中,除了该(1)到(6)的情 形外,在下面的(7)到(12)情形中,本地侦听控制单元55-l也能跳过 全局侦听控制操作,并激活对其隶属节点下的主存储器的访问(参见图 11中用"双圆圏"所表示的标记)。
(7) 所发出的存储器访问请求为命令找取请求,并且在其隶属节点 下的高速緩存TAG52-1中没有命中该命令找取请求的目标数据,^fr其 隶属节点下的VTAGX57-1中命中了该目标数据(参见图11中的"1.2" 部分)。
(8) 所发出的存储器访问请求为共享型(加载)找取请求,并且在 其隶属节点下的高速緩存TAG52-1中没有命中该共享型找取请求的目标 数据,但在其隶属节点下的VTAGX 57-1中命中了该目标数据(参见图11中的"2.2"部分)。
(9)所发出的存储器访问请求为排斥型(存储)找取请求,并且在 其隶属节点下的高速緩存TAG52-1中没有命中该排斥型找取请求的目标 数据,站其隶属节点下的VTAGX57-1中命中了 (参见图11中的"3.2" 部分)。
(10 )所发出的存储器访问请求为排斥型找取请求,并且在其隶属节 点下的高速緩存TAG 52-1中命中了该排斥型找取请求的目标数据,该目 标数据为共享类型,并且在其隶属节点下的VTAGX57-1中也命中了该目 标数据(参见图11中的"3.4"部分)。在这种情况下,将与该目标数据 相对应并被注册在VTAGX 57-1中的地址信息置于无效状态。
(11)所发出的存储器访问请求是块存储请求,并且在其隶属节点下 的高速緩存TAG 52-1中没有命中该块存餘清求的目标数据,但在其隶属 节点下的VTAGX57-1中命中了该目标数据(参见图11中的"4.2,,部分)。
(12 )所发出的存储器访问请求为块存储请求,并且在其隶属节点下 的高速緩存TAG 52-1中命中了该块存絛清求的目标数据,该数据为共享 类型,并且在其隶属节点下的VTAGX 57-1中也命中了该目标数据(参见 图11中的"4.4"部分)。在这种情况下,将与该目标数据相对应并被注 册在VTAGX 57-1中的地址信息置于无效状态。
在情形(1)到(12 )之外的情形中,全局侦听控制单元54-1进行全 局侦听控制^Mt (参见图11)。
尽管前面已经说明了根据作为本发明实施例的本地侦听控制方法要 由系统控制器50-1进行的操作(要在信息处理装置1中进行的操作),但 在从系统板SB0之外的系统板SB1到SB15下的CPU或I/O装置发出存 储器访问请求的情况下,各个系统板SB1到SB15下的系统控制器所进行 的操作与系统控制器50-l所进行的上面的操作相同。
如上所述,根据作为本发明实施例的信息处理装置1中的作为本发明 实施例的本地侦听控制方法,容量比隶属节点下的高速緩存存储器的容量 大的VTAGX 57-1添加到设置在信息处理装置1中的每一个节点,并且将 VTAGX 57-1的搜索添加到本地侦听控制单元55-1的操作,以便虚拟扩 展其隶属节点下的高速緩存存储器空间。因此,即使在隶属节点下的高速 緩存TAG52-1中未命中,只要在VTAGX 57-1中命中,也能通过执行作 为低延迟数据通信的本地侦听控制操作来激活对隶属节点下的主存储器30和31中的目标数据的访问。这样,可以跳过在信息处理装置1中的各 节点上进行的全局侦听控制,并且仍然可以保证信息处理装置1中的所有 节点间的高速緩存一致性。因此,可以使跳过全局侦听控制操作的条件变 得更宽。因此,可以缩短大^^信息处理装置1中每个存储器访问的等待 时间,并且可以提高每个侦听操作的吞吐量。此外,在大M^^信息处理装 置1中,可以提高广播总线和全局侦听操作之间的繁忙率。于是,信息处 理装置1可以实现更高的性能。
在从隶属节点下的CPU 10到13发出了涉及高速緩存数据的无效性 的排斥型存储器访问请求、并且在高速緩存TAG52-1中命中或没有命中 该存储器访问请求的共享型目标数据的情况下,如果在VTAGX 57-1中命 中了该存储器访问请求的目标数据,则使其它节点下的高速緩存存储器中 的高速緩存数据无效的操作变得不必要。因此,在这种情况下就跳过在信 息处理装置1中的节点上进行的全局侦听控制操作,并且对隶属节点下的 主存储器进行访问。此外,可以激活使隶属节点下的高速緩存存储器中的 高速緩存数据无效的操作。
此外,当将VTAGX57-1安装在系统控制器50-1中时,不需要对现 有大,SMP信息处理装置的系统控制器50-1做出显著的控制变化。因 此,能够容易地将VTAGX 57-1安装在现有;tM^模SMP信息处理装置中。
在与存储器访问请求的目标数据相对应的目标地址信息被注册在 VTAGX57-1中的情况下,在某种条件下,将该目标地址信息之前几千字 节处的提前地址信息提前注册在VTAGX 57-1中,其中使用了根据程序的 存储器访问的连续性。因此,即使来自隶属节点下的CPU 10到13的访 问是第一次访问,也能搜索VTAGX57-1。这样,即使来自隶属节点下的 CPU IO到13的访问是第一次访问,只要在VTAGX 57-1中命中,也能 跳过全局侦听控制操作,并且能保证信息处理装置1中的所有节点间的高 速緩存一致性。因此,可以缩短大M^^信息处理装置1中的每一个存储器 访问的等待时间,并且可以提高每一个侦听操作的吞吐量。
其它实施例
本发明不限于上面的实施例,在不离开本发明的范围的情况下,可以 对这些实施例进行各种改变和变型。
例如,在上面的实施例中,在信息处理装置1的每个节点中安装了 VTAGX。然而,本发明不限于该结构,可以将VTAGX安装在信息处理装置l中的一个或部分节点中。
此外,在上面的实施例中,地址信息被用作特定信息。然而,也可以 使用任何信息作为指定原始数据或高速緩存数据的特定信息。
此外,在上面的实施例中,使用有效位作为状态信息。然而,也可以 使用任何信息来指示所属特定信息是处于无效状态还是有效状态。
权利要求
1.一种信息处理装置,包括多个节点(SB0、SB1),所述多个节点中的每一个包括主存储器(30到33)、具有高速缓存存储器(10a到17a、10b到17b)的处理器(10到17)、以及进行控制操作以保证所述节点(SB0、SB1)间的高速缓存一致性的系统控制器(50-1、50-2),所述节点(SB0、SB1)中至少一个节点的系统控制器(50-1、50-2)包括保持单元(57-1、57-2),其保持关于存在于隶属节点(SB0、SB1)下的所述主存储器(30到33)中的原始数据的特定信息,其中与所述原始数据相对应的高速缓存数据不存在于所述隶属节点之外的各节点(SB0、SB1)的高速缓存存储器(10a到17a、10b到17b)中。
2. 根据权利要求1所述的信息处理装置,其中,包括所述保持单元 (57-1、 57-2)的所述系统控制器(50-1、 50-2)还包括本地侦听控制单元(55-1、 55-2),当在隶属节点(SBO、 SB1)处产生了存储器访问请求, 且所述存储器访问请求的目标数据与由所述保持单元(57-1、 57-2)保持 的所述特定信息相对应时,所述本地侦听控制单元进行本地侦听控制操作 以保证隶属节点(SBO、 SB1)处的高速緩存一致性。
3. 根据权利要求2所述的信息处理装置,其中,包括所述保持单元 (57-1、 57-2)的所述系统控制器(50-1、 50-2)还包括全局侦听控制单元(54-1、 54-2),其进行全局侦听控制操作以保证 所述节点(S別、SB1)之间的高速緩存一致性;以及请求发ill/接收单元(51-1、 51-2),当接收到隶属节点(SBO、 SB1) 处产生的存储器访问请求时,所述请求发送/接收单元向所述本地侦听控 制单元(55-1、 55-2)发送所述存储器访问请求,且当从所述本地侦听控 制单元(55-1、 55-2)接收到请求进行全局侦听控制操作的全局侦听请求 时,所述请求发iil/接收单元向所述全局侦听控制单元(54-1、 54-2 )发送 所述全局侦听请求。
4. 根据权利要求3所述的信息处理装置,其中,当所述存储器访问 请求的目标数据与由所述保持单元(57-1、 57-2)所保持的所述特定信息不对应时,所述本地侦听控制单元(55-1、 55-2)向所述请求发送/接收单 元(51-1、 51-2)发送所述全局侦听请求。
5. 根据权利要求3或4所述的信息处理装置,其中,当所述全局侦 听控制^Mt的结果表明,与所述原始数据相对应的所述高速緩存数据不存 在于隶属节点之外的各节点(SB0、 SB1)的高速緩存存储器(10a到17a、 10b到17b)中时,所述全局侦听控制单元(54-1、 54-2)使所述保持单 元(57-1、 57-2 )保持关于存在于隶属节点(SB0、 SB1)的所述主存储器(30到33 )中的原始数据的所述特定信息。
6. 根据权利要求3或4所述的信息处理装置,其中,当在隶属节点 之外的各节点(SB0、 SB1)中的一个节点处发出存储器访问请求、所述 存储器访问请求的目标数据为与由所述保持单元(57-1、 57-2)保持的所 述特定信息相对应的原始数据、并且确定了作为所述存储器访问请求的响 应进行的操作时,所述全局侦听控制单元(54-1、 54-2)使得与存在于隶 属节点(SB0、 SB1)的主存储器(30到33)中的原始数据相对应并且由 所述保持单元(57-1、 57-2)保持的所述特定信息无效。
7. 根据权利要求1到4中任一个所述的信息处理装置,其中,所述 保持单元(57-l、 57-2)保持地址信息作为所述特定信息,所述地址信息 具有可以由所述处理器在一个^Mt中读取的数据大小。
8. 根据权利要求7所述的信息处理装置,其中,所述保持单元(57-l、 57-2 )保持地址信息组作为所述特定信息,所述地址信息组为多个连续的 地址信息。
9. 根据权利要求8所述的信息处理装置,其中,所述保持单元(57-l、 57-2)保持所述地址信息组中每一个地址信息的状态信息,所述状态信息 表明所述地址信息是处于有效状态还是处于无效状态。
10. 根据权利要求5所述的信息处理装置,其中,包括所述保持单元(57-1、 57-2)的所述系统控制器(50-1、 50-2) 还包括扩展特定信息产生单元(65-1),所述扩展特定信息产生单元产生 与由所述保持单元(57-1、 57-2)保持的所述特定信息不同的扩展特定信 息;以及当对由所述扩展特定信息产生单元(65-1)产生的所述扩展特定信息 进行的全局侦听控制操作的结果表明,与所述扩展特定信息相对应的原始 数据存在于隶属节点(SB0、 SB1)的主存储器(30到33)中,并且所述结^^明,与所述扩展特定信息相对应的高速緩存数据不存在于隶属节点之外的各节点(SB0、 SB1)的高速緩存存储器中时,所述全局侦听控制 单元(54-1、 54-2)使所述保持单元(57-1、 57-2)保持所述扩展特定信 息。
11. 一种用于信息处理装置的存储器控制方法,所述信息处理装置包 括多个节点(SB0、 SB1),每一个节点具有主存储器(30到33)、具有高 速緩存存储器(10a到17a、 10b到17b )的处理器(10到17 )、以及进行 控制操作以保证所述节点(SB0、 SB1)间的高速緩存一致性的系统控制 器(50-1、 50-2),所述存储器控制方法包括存储器访问请求接收步骤,接收在作为所述节点(S別、SB1)之一 的隶属节点处所产生的存储器访问请求;访问步骤,当在所述存储器访问请求接收步骤中接收到所述存储器访 问请求时访问保持单元(57-l、 57-2),其中,所述保持单元(57-l、 57-2) 保持关于存在于隶属节点(SB0、 SB1)的所述主存储器(30到33)中的 原始数据的特定信息,其中与所述原始数据相对应的高速緩存数据不存在 于所述隶属节点之外的各节点(SB0、 SB1)的所述高速緩存存储器(10a 到17a、 10b到17b)中;以及本地侦听控制步骤,当在所述接收步骤中接收到的所述存储器访问请 求的目标数据与由所述保持单元(57-1、 57-2)保持的所述特定信息相对 应时,进行本地侦听控制操作以保证隶属节点(SB0、 SB1)处的高速緩 存一致性。
12. 根据权利要求ll所述的存储器控制方法,还包括全局侦听请求接收步骤,当在所述本地侦听控制步骤中所述存储器访 问请求的目标数据与由所述保持单元(57-1、 57-2)保持的所述特定信息 不对应时,接收请求全局侦听控制操作的全局侦听请求以保证所述节点之 间的高速緩存一致性;以及全局侦听控制步骤,当在所述全局侦听请求接收步骤中接收到所述全 局侦听请求时,进行所述全局侦听控制操作。
13. 根据权利要求12所述的存储器控制方法,还包括 特定信息注册步骤,当所述全局侦听控制操作的结果表明,与所述原始数据相对应的所述高速緩存数据不存在于隶属节点之外的各节点(SB0、 SB1)的高速緩存存储器(10a到17a、 10b到17b)中时,使所 述保持单元(57-1、 57-2 )保持关于存在于隶属节点(SBO、 SB1)的主存 储器(30到33)中的原始数据的所述特定信息。
14. 根据权利要求12或13所述的存储器控制方法,还包括无效化步骤,当隶属节点之外的各节点中的一个节点处发出存储器访 问请求、所述存储器访问请求的目标数据为与由所述保持单元(57-1、 57-2)保持的所述特定信息相对应的原始数据、并且确定了作为所述存储 器访问请求的响应于进行的操作时,使与存在于隶属节点的主存储器(30 到33)中的原始数据相对应并且由所述保持单元(57-1、 57-2)保持的所 述特定信息无效。
15. 根据权利要求13所述的存储器控制方法,还包括扩展特定信息产生步骤,产生与由所述保持单元(57-1、 57-2 )保持 的所述特定信息不同的扩展特定信息;以及扩展特定信息注册步骤,当对所述扩展特定信息产生步骤中产生的所 述扩展特定信息进行的全局侦听控制操作的结果表明,与所述扩展特定信 息相对应的原始数据存在于隶属节点(SBO、 SB1)的主存储器(30到33 ) 中,并且所述结^明,与所述扩展特定信息相对应的高速緩存数据不存 在于隶属节点之外的各节点(SBO、 SB1)的高速緩存存储器(10a到17a、 10b到17b)中时,使所述保持单元(57-1、 57-2)保持所述扩展特定信 息。
16. —种存储器控制装置,包括主存储器(30到33)和具有高速緩 存存储器(10a到17a、 10b到17b )的处理器(10到17),所述存储器控制装置包括进行控制操作以保证所述存储器控制装置 和其它存储器控制装置之间的高速緩存一致性的系统控制器(50-1 、 50匿2 ),所述系统控制器(50-1、 50-2)包括保持单元(57-1、 57-2),所述保 持单元保持关于存在于所述存储器控制装置的所述主存储器(30到33) 中的原始数据的特定信息,其中与所述原始数据相对应的高速緩存数据不 存在于所述其它存储器控制装置的高速緩存存储器(10a到17a、 10b到 17b)中。
17. 根据权利要求16所述的存储器控制装置,其中,所述系统控制器(50-1、 50-2)还包括本地侦听控制单元(55-1、 55-2),当在所述存储 器控制装置中产生了存储器访问请求、并且所述存储器访问请求的目标数 据与由所述保持单元(57-1、 57-2)保持的所述特定信息相对应时,所述 本地侦听控制单元进行本地侦听控制操作以保证所述存储器控制装置中 的高速緩存一致性。
18. 根据权利要求17所述的存储器控制装置,其中,所述系统控制 器(50-1、 50-2)还包括全局侦听控制单元(54-1、 54-2),其进行全局侦听控制操作以保证 所述存储器控制装置和所述其它存储器控制装置之间的高速緩存一致性; 以及请求发iH/接收单元(51-1、 51-2),当接收到所述存储器控制装置中 产生的存储器访问请求时,所述请求发送/接收单元向所述本地侦听控制 卑元(55-l、 55-2)发送所述存储器访问请求,且当从所述本地侦听控制 单元(55-l、 55-2)接收到请求全局侦听控制操作的全局侦听请求时,所 述请求发i^/接收单元向所述全局侦听控制单元(54-1、 54-2)发送全局侦 听请求。
19. 根据权利要求18所述的存储器控制装置,其中,当所述全局侦 听控制^Mt的结^明,与所述原始数据相对应的所述高速緩存数据不存 在于所述其它存储器控制装置的高速緩存存储器中时,所述全局侦听控制 单元(54-1、 54-2)使所述保持单元(57-1、 57-2)保持关于存在于所述 存储器控制装置的主存储器(30到33)中的原始数据的所述特定信息。
20. 根据权利要求19所述的存储器控制装置,其中,所述系统控制器(50-1、 50-2 )还包括扩展特定信息产生单元(65-1 ), 所述扩展特定信息产生单元产生与由所述保持单元(57-1、 57-2)保持的 所述特定信息不同的扩展特定信息;以及当对由所述扩展特定信息产生单元(65-1)产生的所述扩展特定信息 进行的全局侦听控制操作的结^明,与所述扩展特定信息相对应的原始 数据存在于所述存储器控制装置的主存储器(30到33)中,并且所述结 果表明,与所述扩展特定信息相对应的高速緩存数据不存在于所述其它存 储器控制装置的高速緩存存储器(10a到17a、 10b到17b )中时,所述全 局侦听控制单元(54-1、 54-2)使所述保持单元(57-1、 57-2)保持所述 扩展特定信息。
全文摘要
本发明提供一种信息处理装置、存储器控制方法以及存储器控制装置。信息处理装置包括多个节点(SB0、SB1),其中每一个节点具有主存储器(30到33)和包括高速缓存存储器(10a到17a、10b到17b)的处理器(10到17)。所述节点(SB0、SB1)中至少一个节点的系统控制器(50-1、50-2)被设计为包括保持单元(57-1、57-2),其保持关于存在于其隶属节点(SB0、SB1)的主存储器(30到33)中的原始数据的特定信息,其中与原始数据相对应的缓存数据不存在于其隶属节点(SB0、SB1)之外的各节点(SB0、SB1)的高速缓存存储器(10a到17a、10b到17b)中。采用这种结构,缩短了每个存储器访问的等待时间,并提高了每个侦听操作的吞吐量。
文档编号G06F12/08GK101539888SQ20091000553
公开日2009年9月23日 申请日期2009年1月19日 优先权日2008年3月18日
发明者井上爱一郎, 本车田强, 杉崎刚, 青木直纯 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1