专利名称:用于控制存储器的方法、程序和设备的制作方法
技术领域:
本发明涉及一种存储器控制方法、程序和装置,以及用于访问由多个 存储器模块形成的存储器的设备,具体地,本发明涉及根据存储器模块的 异常部分而在CPU的地址空间中设置禁止使用区域的存储器控制方法、程 序和装置。
背景技术:
迄今为止,在诸如用于多CPU配置的计算机系统的主存储器的存储设 备中,在电路板上安装了作为可独立访问的存储元件的多个存储器模块 (也被称为存储体),由此构成存储设备,并且用于这样的存储设备的存 储器模块不能避免由存储器模块的生产过程引起的质量波动。由于由此存 储器模块的生产引起的质量波动,经常出现发生异常的情况,在这种情况 中,当存储器模块被安装并用于存储设备中时,不能在一部分地址中执行 正常的读取和写入。当检测到存储器异常时,重要的是指定引起存储器异 常的存储器模块,并且从系统消除该异常部分,从而稳定地操作系统。对 于一旦被识别为异常的存储器模块,即使通过改变交错控制的路线的数量 来改变存储器配置,为了改善操作系统中的健壮性、在启动操作后发生故 障时的故障维修工作时间和维修成本的节省,也需要不将其结合在系统 中,直到交换了所述异常存储器模块为止。因此,在传统的存储设备中, 当通过存储器控制器的硬件功能而检测到存储器异常时,指定引起存储器 异常的存储器模块,并且从系统中消除异常部分。即,存储器控制器将从 CPU看到的存储器模块的地址空间划分为适当大小的区域,并且当检测到 存储器模块的异常时,针对存储器退化执行存储器控制,以使对应于异常部分的区域被设置为禁止使用区域,并且包括异常部分的区域不被包含在 CPU可以使用的区域中。
专利文件1: JP-A-02-166543 专利文件2: JP-A-04-165548
但是,在传统的存储器控制中,由于硬件功能已经安装了因退化而指 定将引起存储器异常的存储器模块不包含到系统中的功能,因此,由于安 装电路的增大而导致的成本和尺寸的增加已经成为问题。此外,在用于将 从CPU看到的存储器模块的地址空间划分为适当大小的区域并且管理可被 CPU使用的区域的传统存储器控制方法中,当存储器配置因交错控制的路 线的数量的改变而被改变时,不能采取任何措施。例如,当将交错控制的 路线的数量从一路线(无交错)改变成二路线存储器配置时,存储器模块 的实际地址和从CPU看到的逻辑地址之间的对应关系也改变了,并且例 如,当在改变存储器配置之前的异常位置的地址对应于第m个区域时,在 改变存储器配置后,可能发生这样的情况,其中,异常部分的地址变得对 应于另一个第n区域。因此,问题是在改变存储器配置后,再一次指定 存储器模块的异常部分,并且对于在改变配置后从CPU看到的地址空间的 被划分的区域,对应于存储器模块的异常部分的区域被确定并被设置为禁 止使用的区域,并且,要求对于不将包括异常部分的区域包含到CPU的可 以使用区域的区域管理,在改变配置后不能接管(takeover)在改变配置 前的区域使用信息,并且增加了在存储器重新配置之后确定CPU可以使用 的区域的处理负荷,并且在改变存储器配置后重新启动处理需要时间。
发明内容
按照本发明,提供了一种存储器控制装置、方法和程序,其能够当存 储器配置被改变时接管具有从CPU看到的被划分的存储器地址空间的区域 的使用信息,并且在存储器配置改变之后简单并迅速地设置区域使用信 息。
(方法) ' 本发明提供了 一种存储器控制方法。即,本发明提供了 一种用于将逻辑地址转换为实际地址并从而访问存 储器的存储器控制方法,该方法包括以下步骤
当检测到存储器异常时,在实际地址区域使用表中与检测到异常的存 储器对应的区域中记录禁止使用信息,所述实际地址区域使用表被记录了 关于存储器的实际地址空间的可以使用信息;并且
根据所述实际地址区域使用表产生逻辑地址使用表,所述逻辑地址区 域使用表记录了关于逻辑地址空间中的每个区域的可以使用信息或者禁止 使用信息。
本发明提供了 一种存储器控制方法。
艮口,本发明提供了一种用于将来自CPU的逻辑地址转换为由元件选择 地址和存储元件地址形成的实际地址并从而访问多个存储元件的存储器控 制方法,该方法包括
交错控制歩骤,用于将使用被划分为N个区域的逻辑地址空间的CPU 的逻辑地址转换为通过路线数量W确定的实际地址,从而通过交错控制来
访问多个存储元件,并且能够通过不同的路线数量w的指定来重新配置存
储器配置;
实际地址区域管理步骤,用于当检测到存储元件的异常时,将由多个 存储元件形成的实际地址空间划分为CPU逻辑地址空间的区域数量N与 交错控制的最大路线数量Wmax相乘的多个区域(NxWmax),并且准备 对记录有使用信息的所有路线数量都通用的实际地址区域使用表,并且在 所述实际地址区域使用表的包括异常部分的区域中记录禁止使用信息;以 及
逻辑地址区域管理步骤,用于通过对应于通过交错控制步骤的路线数 量W确定的存储器配置,根据实际地址区域使用表产生逻辑地址区域使用 表,并且确定逻辑地址空间中被CPU使用的区域,其中,逻辑地址区域使 用表记录了关于逻辑地址空间中的每个区域的可以使用信息或者禁止使用
f曰息o
在此,交错控制步骤通过指定任何不同的路线数量W (路线数量W 是2的幂)来重新配置存储器配置。(l-2路线转换)
当交错控制步骤能够通过将路线数量指定为1或者2来执行存储器重 新配置时,提供了一种存储器控制方法,
其中,所述实际地址管理步骤(例如,在括号中示出下述情况其
中,CPU地址是10位,存储元件地址是A7到A0的8位,并且元件选择 地址是B1到B0的2位)产生实际地址区域使用表,实际地址区域使用表 记录了在每个区域中的允许使用信息或者禁止使用信息,所述每个区域是 通过将CPU逻辑地址空间的区域数量N与按照4位地址(Bl、 BO、 A7和 AO)的交错控制的最大路线数量2相乘(Nx2)而划分得到的,所述4位 地址是元件选择地址的低位2位(Bl、 BO)、实际地址的最高有效位
(A7)和实际地址的最低有效位(AO);并且
其中,在通过一路线确定交错控制步骤的存储器配置的情况下,所述 逻辑地址区域管理歩骤准备一路线逻辑地址区域使用表,并且确定逻辑地 址空间中被CPU使用的区域,其中, 一路线逻辑地址区域使用表记录了在 按照3位地址(Bl、 BO和A7) N分的每个区域中的允许使用信息或者禁 止使用信息,所述3位地址是元件选择地址的低位2位(Bl和BO)和实 际地址区域使用表的实际地址的最高有效位(A7),并且
此外,其中,在通过二路线确定交错控制步骤的存储器配置的情况 下,逻辑地址区域管理步骤准备二路线逻辑地址区域使用表,并且确定逻 辑地址空间中被CPU使用的区域,其中,所述二路线逻辑地址区域使用表 记录了在按照3位地址(Bl、 AO和A7) N分的每个区域中的允许使用信 息或者禁止使用信息,所述3位地址是元件选择地址的低位的第2位
(Bl)、实际地址区域使用表的实际地址的最低有效位(AO)和实际地址 的最高有效位(A7)。 (1-2-4路线转换)
当交错控制步骤可以通过将路线数量指定为1、 2或者4来重新配置 存储器时,实际地址管理步骤(例如,在括号中示出下述情况其中, CPU地址是10位,存储元件地址是A7到AO的8位,并且元件选择地址 是Bl到BO的2位)产生实际地址区域使用表,实际地址区域使用表记录了在每个区域中的允许使用信息或者禁止使用信息,所述每个区域是通过
将CPU逻辑地址空间的区域数量N与按照5位地址(Bl、 B0、 A7、 Al 和A0)的交错控制的最大路线数量4相乘(Nx4)而划分得到的,所述5 位地址是元件选择地址的低位2位(Bl、 B0)、实际地址的最高有效位
(A7)、实际地址的低位2位(Al, A0),并且在通过一路线确定交错 控制步骤的存储器配置的情况下,所述逻辑地址区域管理步骤准备一路线 逻辑地址区域使用表,并且确定逻辑地址空间中被CPU使用的区域,其 中, 一路线逻辑地址区域使用表记录了在按照3位地址(Bl、 BO和A7) N分的每个区域中的允许使用信息或者禁止使用信息,所述3位地址是元 件选择地址的低位2位(Bl和B0)和实际地址区域使用表的实际地址的 最高有效位(A7);并且此外,
在通过二路线确定所述交错控制步骤的存储器配置的情况下,所述逻 辑地址区域管理步骤准备二路线逻辑地址区域使用表,并且确定逻辑地址 空间中被CPU使用的区域,其中,二路线逻辑地址区域使用表记录了在按 照3位地址(Bl、 AO和A7) N分的每个区域中的允许使用信息或者禁止 使用信息,所述3位地址是元件选择地址的低位的第2位(Bl)、实际地 址区域使用表的实际地址的最低有效位(AO)和实际地址的最高有效位
(A7),并且此外,
在通过四路线确定所述交错控制步骤的存储器配置的情况下,所述逻 辑地址区域管理步骤准备四路线逻辑地址区域使用表,并且确定逻辑地址 空间中被CPU使用的区域,其中,四路线逻辑地址区域使用表记录了在按 照3位地址(Al、 AO和A7) N分的每个区域中的允许使用信息或者禁止 使用信息,所述3位地址是元件选择地址的低位2位(Al和AO)和实际 地址区域使用表的实际地址的最高有效位(A7)。 (程序)
本发明提供了一种存储器控制程序。本发明的存储器控制程序使用于 将来自CPU的逻辑地址转换为由元件选择地址和存储元件地址形成的实际 地址并且访问多个存储元件的存储器控制设备的计算机执行以下步骤
交错控制步骤,用于将使用被划分为N个区域的逻辑地址空间的CPU的逻辑地址转换为通过路线数量W确定的实际地址,并且通过交错控制来 访问多个存储元件,并且能够通过不同的路线数量W的指定来重新配置存 储器配置;
实际地址区域管理步骤,用于当检测到存储元件的异常时,将由多个
存储元件形成的实际地址空间划分为CPU逻辑地址空间的区域数量N与 交错控制的最大路线数量Wmax相乘的多个区域(NxWmax),并且准备 对记录了可以使用信息的所有路线数量通用的实际地址区域使用表,并且 在实际地址区域使用表的包括异常部分的区域中记录禁止使用信息,以及 逻辑地址区域管理步骤,用于通过对应于通过交错控制步骤的路线数 量W确定的存储器配置,根据实际地址区域使用表产生逻辑地址区域使用 表,并且确定逻辑地址空间中被CPU使用的区域,其中,所述逻辑地址区 域使用表记录了关于逻辑地址空间中的每个区域中的可以使用信息或者禁 止使用信息。 (装置)
本发明提供了一种存储器控制装置。即,本发明提供的存储器控制装 置包括
多个由实际地址访问的存储元件,所述实际地址由元件选择地址和存 储元件地址形成;
交错控制单元,该交错控制单元用于将使用被划分为N个区域的逻辑 地址空间的CPU的逻辑地址转换为通过路线数量W确定的实际地址,并 且通过交错控制来访问多个存储元件,并且能够通过不同的路线数量W的 指定来重新配置存储器配置;
实际地址区域管理单元,用于当检测到存储元件的异常时,将由多个 存储元件形成的实际地址空间划分为CPU逻辑地址空间的区域数量N与 交错控制的最大路线数量Wmax相乘的多个区域(NxWmax),并且准备 对记录了可以使用信息的所有路线数量通用的实际地址区域使用表,并且 在实际地址区域使用表的包括异常部分的区域中记录禁止使用信息;以及
逻辑地址区域管理单元,用于通过对应于通过所述交错控制步骤的路 线数量W确定的存储器配置,根据实际地址区域使用表产生逻辑地址区域使用表,并且确定逻辑地址空间中被CPU使用的区域,所述逻辑地址区域 使用表记录了关于逻辑地址空间中的每个区域的可以使用信息或者禁止使 用信息。
本发明提供了一种信息处理装置。S卩,本发明提供的信息处理装置包
括
处理单元;
存储单元,该存储单元连接到处理单元,并且用于存储信息;以及 存储器控制单元,该存储器控制单元用于控制对存储单元的访问, 其中,所述存储器控制单元包括
控制单元,该控制单元用于将来自CPU的逻辑地址转换为实际地址, 并访问存储单元;
实际地址管理控制单元,该实际地址管理控制单元用于在第一表格中 记录关于存储单元中检测到异常的区域的禁止使用信息,所述第一表格存 储了所述存储单元的每个实际地址空间区域的关于存储单元的可以使用信 息或者不可以使用信息;
逻辑地址区域管理单元,该逻辑地址区域管理单元用于根据第一表格 的内容来更新逻辑地址区域使用表的内容,所述逻辑地址区域使用表记录 了关于逻辑地址空间中的每个区域的可以使用信息或者不可以使用信息。
按照本发明,使用存储元件地址作为参考来执行对从CPU看到的存储 模块的可以使用区域的管理。存储器地址不依赖于存储器的配置改变,而 是按照存储元件而被确定的。当存储器异常部分相同时,用于指示其异常 位置的存储单元地址不改变。按照关于此存储元件可以使用的区域的信 息,准备实际地址区域使用表,并且该实际地址区域使用表被转换为逻辑 地址区域使用表,该逻辑地址区域使用表作为与此时的存储器配置对应的 从CPU看到的地址的可以使用区域的信息,并且根据来自此逻辑地址区域 使用表的信息,确定存储器可以使用区域。
因此,按照关于存储单元地址可以使用的区域的信息,仅仅要求准备 和保存实际地址区域使用表,而不要求保存从对应于交错控制的路线数量 的每个存储器配置的不同CPU地址看到的存储器可以使用信息,从而使得对存储器可以使用区域的管理变得很容易。
此外,当存储元件地址和从CPU看到的地址的对应关系根据存储器配 置的改变而被改变时,可以在改变之前接管基于存储器异常部分的存储器 退化信息,并且可以简单地准备在从新的CPU看到的地址的存储器退化信
图1是包括本发明的存储器控制装置的计算机系统的方框图2是在图1中的存储器控制器的地址转换机制的说明性示图3是按照一路线交错的存储器配置的地址转换机制的说明性示图4是与图3中的一路线交错的地址转换对应的地址图的说明性示
图5是按照一路线交错对存储器模块进行访问的说明性示图6是通过二路线交错的存储器配置的地址转换机制的说明性示图7A和7B是与图6中的二路线交错的地址转换对应的地址图的说明 性示图8是按照二路线交错对存储器模块进行访问的说明性示图9是当CPU地址空间被作为区域8时对于交错控制的路线数量的实
际地址空间的被划分的区域编号,以及CPU地址和实际地址之间的对应关
系的说明性示图10A-10C是当可以通过一路线和二路线重新配置存储器配置时准备 的存储元件地址的实际地址区域使用表,和根据该表准备的在一路线存储 器配置时的CPU的逻辑地址区域使用表的说明性示图11A-11C是当可以通过一路线和二路线重新配置存储器配置时准备 的存储元件地址的实际地址区域使用表,和根据该表准备的在二路线存储 器配置时的CPU的逻辑地址区域使用表的说明性示图12是在本发明的存储元件地址的实际地址区域使用表准备处理的 流程图; '
图13是计算机系统根据通过在图12中的处理而准备的实际地址区域使用表来准备与路线数量对应的存储器配置的逻辑地址区域使用表并且确 定CPU的使用区域的流程图14是在图13中的步骤S6的一路线存储器配置时准备逻辑地址区 域使用表的处理的流程图15是按照图14的二路线存储器配置准备逻辑地址区域使用表的处 理的流程图16是由四路线交错的存储器配置进行地址转换机制的说明性示
图17是与图16中的四路线交错的地址转换对应的地址图的说明性示
图18是按照图17的地址图的说明性示图19是按照四路线交错对存储器模块进行访问的说明性示图20A和20B是当可以通过一路线、二路线或者四路线重新配置存储 器时准备的存储元件地址的实际地址区域使用表,以及根据该表配置一路 线存储器时准备CPU的逻辑地址区域使用表的处理的说明性示图21A和21B是当可以通过一路线、二路线或者四路线重新配置存储 器时准备的存储元件地址的实际地址区域使用表,以及根据该表配置二路 线存储器时准备CPU的逻辑地址区域使用表的处理的说明性示图22A和22B是当可以通过一路线、二路线或者四路线重新配置存储 器时准备的存储元件地址的实际地址区域使用表,以及根据该表配置四路 线存储器时准备CPU的逻辑地址区域使用表的处理的说明性示图23是根据图22A和22B中的实际地址区域使用表准备的逻辑地址 区域使用表的说明性示图24是根据与一路线、二路线或者四路线对应的实际地址区域使用 表在配置一路线存储器时准备逻辑地址区域使用表的处理的流程图25是根据与一路线、二路线或者四路线对应的实际地址区域使用 表在配置二路线存储器时准备逻辑地址区域使用表的处理的流程图;以及
图26是根据与一路线、二路线或者四路线对应的实际地址区域使用 表在配置四路线存储器时准备逻辑地址区域使用表的处理的流程图。
具体实施例方式
图1是配置有本发明的存储器控制装置的计算机系统的框图。在图1 中,包括本发明的存储器控制装置的存储器控制器10与CPU 12-1到12-4
和存储器模块14-1到14-4连接。存储器控制器IO包括交错控制单元16、 实际地址区域管理单元18和逻辑地址区域管理单元20,并且还与实际地 址区域管理文件22连接。存储器控制器10的交错控制单元16可以通过指 定不同路线数量W来重新配置存储器配置,并且通过诸如一路线、二路线 和四路线的路线数量(例如,所述路线数量W为2的幂)的存储器配置来 执行交错控制。在此,所述交错控制是为多个存储器模块指定相同的地址 并且在通过模块选择地址交替地转换模块时访问模块的控制,并且,与依 序选择并访问存储器模块的情况相比,所述交错控制在预先指定了地址的 状态中转换模块,因此,可以对存储器模块执行高速操作。二路线交错表 示这样的控制通过二路线交错,在两个存储器模块上指定同一地址,从 而转换模块;并且四路线表示这样的控制在为4个模块指定同一地址的 状态中,依序转换模块并且访问模块。另外, 一路线交错控制表示这样的
访问存储器模块正在被依序选择的同时被访问,并且不在多个存储器模
块上指定一个地址,因此, 一路线交错控制表示没有交错的访问,为了使 说明容易,在下面的描述中,没有交错的控制被称为一路线交错控制。此
外,在交错控制单元16中,为了处理在存储器模块14-1到14-4侧的存储 器故障,执行区域使用管理,其中,由CPU 12-1到12-4的CPU地址看到 的逻辑地址空间被划分为多个区域,例如N个区域,并且,当检测到存储 器异常时,与异常部分对应的区域被禁止使用。CPU空间中的这个使用管 理区域己经按照惯例被划分为CPU的地址空间的划分区域,以准备记录了 区域使用信息(即,可以使用或者禁止使用信息)的逻辑地址区域使用 表,并且根据该表,确定逻辑地址空间中被CPU使用的区域。但是,在本 发明中,用于管理CPU的此逻辑地址空间的逻辑地址区域使用表不是固定 保存在存储器控制器10中,并且根据存储器模块14-1到.14-4侧的存储元 件地址,准备并保存可被转换为CPU的逻辑地址空间的逻辑地址区域使用 表的实际地址区域使用表。S卩,配置在存储器控制器10中的实际地址区域管理单元18将由存储器模块14-1到14-4形成的实际地址空间划分为多
个区域(NxWmax) , NxWmax是CPU侧的逻辑地址空间的区域数量W 乘以由交错控制单元16可重新配置的不同路线数量W中的最大路线数量 Wmax,并且实际地址区域管理单元18准备可由所有的路线数量的存储器 配置共享的实际地址区域使用表,所述表记录了处于初始状态的每个划分 区域的可以使用信息。
当检测到存储器模块14-1到14-4的异常时,在实际地址区域使用表 的包括异常部分的区域中记录禁止使用信息。在实际地址区域管理文件22 中存储了由实际地址区域管理单元18准备的、对于可通过交错控制单元 16重新配置存储器配置的所有路线数量通用的实际地址区域使用表。当在 交错控制单元16中对计算机系统升级或者重新配置存储器配置时,存储 器控制器10的逻辑地址区域管理单元20根据存储在实际地址区域管理文 件22中的实际地址区域使用表,将CPU侧的逻辑地址空间划分为N个区 域,并且准备记录了每种情况下的可以使用信息或者禁止使用信息的逻辑 地址区域使用表,并且在升级或重新配置存储器时,根据所准备的逻辑地 址区域使用表确定逻辑地址空间中被CPU 12-1到12-4使用的区域。按照 这种方式,在本发明的存储器控制中,当能够产生从存储器模块14-1到 14-4的实际地址看到的在CPU侧的逻辑地址空间的区域的实际地址区域 使用表被准备并被存储用于根据交错控制单元16的路线数量来确定存储 器配置时,通过与此路线数量确定的存储器配置对应的转换处理,在各种 情况下根据在实际地址区域管理文件22中保存的实际地址区域使用表来 准备与此时的路线数量的交错控制对应的逻辑地址区域使用表,并且可以 确定逻辑地址空间中被CPU使用的区域。
结果,即使存储器控制器10中的存储器配置被改变,在改变之后也 接管改变之前的区域使用信息,并且简单地产生关于CPU的地址空间中的 区域的可以使用信息或者禁止使用信息,从而可以不将位于存储器模块 144到14-4的任何位置的异常部分结合到CPU侧的区域中。针对本发明 的这种存储器控制,将具体说明作为示例的下述情况其中,可通过交错 控制单元16将路线数量指定为1或者2来重新配置存储器。图2是能够通过设置在图1中的存储器控制器10的路线数量来重新配 置交错控制的存储器配置的地址转换机制的说明性示图。在图2中,存储
器模块14-1到14-4分别是256字节,并且将1024字节的总体大小作为示 例。对于由存储器模块14-1到14-4形成的这样的1024字节的存储空间, CPU 12-1到12-4侧将所述存储空间划分为N二8个区域,以管理可以使用 的信息。CPU侧的一个区域的大小是128字节。
可以通过来自CPU 12-1到12-4的C9-C0这10位CPU地址来访问由 存储器模块14-1到14-4形成的1024字节存储器空间。因此,存储器控制 器10配置有用于保存C9-C0这10位CPU地址的输入地址寄存器26。另 一方面,存储器模块14-1到14-4的实际地址由访问存储器模块14-1到 14-4的每个的A7-A0的8位存储元件地址和用于选择存储器模块14-1到 14-4的Bl和B2的2位元件选择地址形成。因此,存储器模块14-1到14-4侧配置有用于存储存储元件地址A7-A0的输出地址寄存器28以及用于保 存元件选择地址Bl和B0的模块选择寄存器30,并且,模块选择寄存器 30的地址被输入到存储器模块选择器32,并且通过Bl和B0 = 00、 01、 lO和ll,可以依序选择存储器模块14-1到14-4。在输入地址寄存器26和 输出地址寄存器28之间配置有选择器34和36。选择器34执行对输入地 址寄存器26的高位C9和C8 2位与输出地址寄存器28的低位Al和A0 2 位的转换连接。选择器36执行对输入地址寄存器26的高位C9和C8 2位 与具有低位Cl和C0 2位的模块选择寄存器30的元件选择位Bl和B0的 转换连接。在此,对存储器控制器10的交错控制中的路线数量以通过一 路线、二路线和四路线这三路线来转换存储器配置作为示例,并且通过选 择器34和36的转换连接,允许建立用于通过一路线、二路线或者四路线 实现地址转换机制的连接。因此,通过模块选择寄存器30和针对输入地 址寄存器26、输出地址寄存器28和存储器模块选择器32配置的选择器 34和36,可以构造通过交错控制的路线存储器配置24。
图3是按照一路线交错的存储器配置的地址转换机制的说明性示图。 在图3中,'存储器控制器10通过图2中所示的经由选择器34和36的连接 转换为所示的一路线存储器配置24-1的输入地址寄存器26建立输出地址寄存器28和模块选择寄存器30的连接,并且结果,来自处于被保持在输
入地址寄存器26中的状态中的CPU 12-1到12-4的C9-C0这10位CPU地 址被转换为输出地址寄存器28的存储器模块14-1到14-4的A7-A0这8位 存储元件地址和用于模块选择的元件选择地址Bl和BO,从而按照一路线 交错来执行存储器访问。 一路线存储器配置24-1是没有交错的情况,并且 在这种情况下,CPU地址的高位的C9和C8 2位被转换为元件选择地址 Bl和BO,并且CPU地址的低位C7-C0 8位被转换为存储器元件地址A7-AO,以便被访问。
图4是与图3中的一路线交错的地址转换对应的一路线地址图38-1的 说明性示图。在图4中,该一路线地址图38-1通过将它们划分为存储器选 择和存储器地址而在上列中显示作为实际地址的CPU地址C9-C0和元素 选择地址Bl和BO以及存储元件地址A7-A0,并且当CPU地址C9-C0按 顺序从全0改变成全1时,示出了地址位和对应于该地址位的地址十进制 表示。
图5是通过一路线交错对存储器模块进行访问的说明性示图,并且在 这种情况下的访问是很简单的,并且,虽然由虚线所示的四个存储器模块 14-1到14-4被划分为从CPU侧看到的8个区域42-1到42-8,但是当CPU 地址依序从全0改变为全1时,可以以存储器模块14-1到14-3的顺序 (即,以从CPU侧看到的区域42-1到42-8的顺序,如箭头标记44-1到 44-8所示)进行访问。在此,假定在图3的存储器模块14-1的地址 [llllllll]中,即按照十进制表示编号为255地址中,发生了不能读取和 写入数据的存储器异常,并且该地址是图4中的一路线地址图38-1中的异 常部分40,并且从CPU地址C9-C0来看,该地址变为[OOllllllll],并 且即使以十进制表示来表示,该地址也变为与编号255相同的地址。
图6是按照二路线交错配置存储器的地址转换机制的说明性示图。在 图6中的存储器控制器10中,通过将交错控制的路线数量W指定为二路 线,建立了针对在二路线存储器配置24-2中所示的输入地址寄存器26的 输出地址寄存器28和配置在存储器模块选择器32中的模块选择寄存器30 之间的连接。图7A和7B是与图6中的二路线交错的地址转换对应的二路线地址图 38-2的说明性示图。在此二路线交错控制中,如在图8中的存储器模块 14"到14—4中所示,在通过初始地址(如箭头标记60-1所示)指定作为 存储器模块14-1和存储器模块14-2的相同地址的状态中,对于由在两个 存储器模块14-1到14-2的CPU侧的划分数量确定的128字节单元的区 域,存储器模块14-1到14-2通过元件选择地址而被依序转换,从而执行 对这两个地址部分的访问。该控制是针对存储器模块14-1到14-2的前半 区域执行的,并且在此控制之后,针对后半区域重复此控制。随后,对于 之后的存储器模块14-3和14-4 (如箭头标记60-3和60-4所示),通过指 定相同地址来顺序读取被划分为128字节的前半区域以及通过指定相同地 址来顺序读取后半区域被重复。这样,为了将CPU地址C9-CO从全0改 变成全1,针对存储器模块14-1到14-2,按照此二路线交错的在图7A和 7B中的二路线地址图38-2可以被划分为偶数编号地址区域58-1和奇数编 号地址区域58-2,针对存储器模块14-3到14-4,其可以被划分为偶数编 号地址区域58-3和奇数编号地址区域58-4。在前半的偶数编号地址区域 58-1和奇数编号地址区域58-2中,如在存储器选择地址中所示,元件选择 地址Bl和B0被交替地改变为"00"和"01",以便执行二路线交错控 制,其中,在对两个存储器模块14-1和14-2指定同一地址的状态中执行 模块选择。这对于与后半的偶数编号地址区域58-3和奇数编号地址区域 58-4的存储器模块14-3到14-4也成立。在此二路线地址图38-2中,图4 中所示的一路线地址图38-1中的异常部分40可以按照相同地址位置存储 在该图中。
图9是在本发明中的在存储器控制中的CPU地址空间的被划分区域数 量N、交错路线数量W、实际地址空间的被划分区域数量M (被给予 CPU地址空间的被划分区域数量N乘以最大数量Wmax的值)以及CPU 和对应的实际存储器地址之间的对应关系的说明性示图。即,图9中的对 应关系表表示在每种存储器配置中的地址转换机制的转换关系,假定N= 8、 W=l、 2、 4,并且M二8、 16和32。
图10A-10C是当可以通过图1中的存储器控制器10的交错控制单元16按照一路线和二路线重新配置存储器时,由实际地址区域管理单元18 产生的实际地址区域使用表以及由逻辑地址区域管理单元20根据实际地 址区域使用表准备的一路线存储器配置使用的逻辑地址区域使用表的说明
性示图。图IOA是用于根据在图10B中所示的实际地址区域使用表48准 备图10C中所示的一路线逻辑地址区域使用表50-1的一路线搜索寄存器 46-1。首先,图10B中的实际地址区域使用表48,如项目栏54中所示, 存储有通过使用包括存储器模块14-1到14-4的实际地址和存储元件地址 的元件选择地址划分成由图9中的对应关系表确定的16个区域而获得的 使用标记。与通过对实际地址区域使用表48的上部的说明而增加的项目 52类似,在此实际地址区域使用表48中存储的实际地址通过图3中的一 路线存储器配置24-1中所示的地址转换机制而与CPU地址的C9、 C8、 C7和C0 4位对应。在此,使用"0"作为可以使用信息来描述实际地址 区域使用表48的使用标记,并且使用"X"作为禁止使用信息来记录在图 4中所示的包括异常部分40的区域。当根据此实际地址区域使用表48准 备一路线交错的存储器配置所需的在图10C中的一路线逻辑地址区域使用 表50-1时,通过使用在图10A中的一路线搜索寄存器46-1来查看实际地 址区域使用表48的使用标记。 一路线搜索寄存器46-1由区域X、 Y和Z 以及
和具有使用标记的存储区域形成,并且当查看实际地址区域使用 表48时,存储
<formula>formula see original document page 25</formula>
并且査看4位地址的两个区域,其中,高位的3位是相同的,第四位被改 变成0或者1。通过这样的一路线搜索寄存器46-1对实际地址区域使用表 48的查看(如在表格右侧的箭头标记所示)来查看关于各个区域对56-1 到56-8的两个区域的使用标记是可以使用"0"还是禁止使用"X",并 且当来自两个区域的使用标记都是可以使用"0"时,使得与图10C中的 区域对应的使用标记为可以使用"0",并且当其中任何一个是禁止使用"X"时,在图10C中的逻辑地址区域使用表50-1的使用标被认为是禁止
使用"X"。当查看根据实际地址区域使用表48准备的一路线逻辑地址区 域使用表50-l时,发现CPU区域中的第二区域針为禁止使用"X"。
图11A-11C是在通过二路线交错控制来配置存储器时,通过使用在图 10B中所示的相同的实际地址区域使用表48来准备二路线逻辑地址区域使 用表的处理的说明性示图。图IIA是执行根据图IIB中的实际地址区域使 用表48来准备在图11C中的二路线逻辑地址区域使用表50-2的查看的二 路线搜索寄存器46-2。该二路线搜索寄存器46-2从高位侧起存储着X= Bl、 B0 = 0/1、 Z二A7和Y=A0,并且查看通过相应的4位区域而确定的 区域的使用标记。使用此二路线搜索寄存器46-2对实际地址区域使用表 48的査看使得当相对于由右侧箭头标记所示的区域对62-1到62-8的两个 区域的使用标记都是可以使用"0"时,对应于图11C中的二路线逻辑地 址区域使用表50-2的区域的使用标记为可以使用"0",并且当其中任何 一个区域是禁止使用"X"时,对应于二路线逻辑地址区域使用表50-2的 区域的使用标记为禁止使用"X"。结果,在按照二路线交错控制的存储 器配置中,二路线逻辑地址区域使用表50-2中包括存储器异常部分的 CPU区域被确定为第四CPU区域# 3。
图12是在本发明中用于准备从存储器元件地址可见的实际地址区域 使用表的处理的流程图。在图12中,在步骤Sl,用于实际地址区域使用 表的准备处理读取逻辑地址空间的被划分区域数量N,例如N=8,并且 在步骤S2,读取可配置存储器的路线数量W,例如W=l、 2和4,并且 在步骤S3,将逻辑地址空间的区域数量N乘以最大路线数量Wmax,由此 计算实际地址空间的被划分区域数量M。例如,当可以在一路线和二路线 之间转换时,16个区域的划分数量被确定为M=8x2=16。随后,在步骤 S4,例如,当如图10B中所示的一路线和二路线重新配置成为可能时,准 备实际地址区域使用表,其通过使用元件选择地址Bl、 B0和存储器元件 地址的最高有效位A7和最低有效位AO这4位来将区域划分为16个部 分,并将可以使用"O"作为其使用标记,即,初始准备时的使用信息。
图H是计算机系统从通过在图12中的处理而准备的实际地址区域使用表来根据交错控制的路线数量来准备存储器配置的逻辑地址表,并且确 定CPU的使用区域的流程图。在图13中,在步骤S1,计算机系统执行伴 随电源启动的初始化和诊断,并且在步骤S2,如果也检测到存储器异常,
则在步骤S3,计算机系统获取异常存储器模块的元件选择地址和存储元件 地址,并且在步骤S4,计算机系统在与已经准备的实际地址区域使用表的 异常部分对应的划分区域中写入禁止使用信息。不必说,如果在步骤S2, 没有检测到存储器异常,则跳过步骤S3和步骤S4的处理。随后,在步骤 S5,获取存储器配置的路线数量,并且在步骤S6,根据实际地址区域使用 表准备通过路线数量确定的存储器配置的逻辑地址区域使用表,从而确定 CPU的使用区域。随后,在步骤S7,伴随计算机的引导处理,执行操作 系统的安装,并且在步骤S8,开始由应用程序执行的操作处理。在此操作 处理期间,在步骤S9,当存储器配置被改变时,处理返回到步骤S5,获 取伴随此存储器配置的改变的改变之后的路线数量,并且在步骤S6,从实 际地址区域使用表准备通过在存储器配置改变后的路线数量确定的存储器 配置的逻辑地址区域使用表,以确定CPU的使用区域,并且通过经由重新 启动从步骤S7安装操作系统等,开始步骤S8的由应用程序执行的操作处 理。
图14是通过图13的步骤S6配置一路线存储器时准备逻辑地址区域 使用表的处理的流程图。在图14中,在步骤Sl,当确定通过交错的存储 器配置是一路线时,处理进行到步骤S2,并且在图10A中的一路线搜索 寄存器46-1中的实际地址区域使用表48的实际地址侧设置位之后,在步 骤S3,地址X和Y被设置为全部0,并且在步骤S4,根据地址X、 Y和 Z来查看实际地址区域使用表48中的区域A0二0和A0 = 1中的使用标 记。在步骤S5,当两个区域都是允许使用"0"时,跳过步骤S6,并且当 两个区域的至少任意一个是禁止使用"X"时,在步骤S6,在图IOC中的 一路线交错一路线实际地址区域使用表50-1中与此时的地址X、 Y和Z对 应的区域中写入禁止使用"X"。随后,在步骤S7,查看地址X、 Y和Z 是否是最后的地址,并且当它们不是最后地址时,在步骤S8,将地址X、 Y和Z递增1,并且重复从步骤S4起的处理。图15是在图14后配置二路线存储器时准备逻辑地址区域使用表的处 理的流程图。在图15中,在步骤S9,当确定存储器配置是二路线时,处
理进行到步骤步骤SIO,并且将图11B中的实际地址区域使用表48的地址 设置到图11A中所示的二路线搜索寄存器46-2中。随后,在步骤Sll,在 将地址X、 Y和Z设置为全O的初始值后,在歩骤S12,根据地址X和Y 来查看B0二0和B0二1的两个区域的使用标记。随后,在步骤S13,当两 个区域中的使用标记都是允许使用"0"时,跳过步骤S14。当至少任意 一个是禁止使用"X"时,处理进行到步骤S14,图11C中所示的二路线 实际地址区域使用表50-2中与地址X、 Y和Z对应的的区域被写入禁止使 用"X"。随后,在步骤S15,査看地址X、 Y和Z是否是最后地址,并 且如果不是,则处理返回到步骤S16,以便将地址X、 Y和Z递增1,从 而重复从步骤S12起的处理。接着,将描述在图1中的存储器控制器10 中配置的交错控制单元16中,当一路线、二路线和四路线存储器配置有 可以作为通过交错控制的存储器配置时的实际地址区域使用表的准备和根 据该实际地址区域使用表产生逻辑地址区域使用表的准备。
图16是按照四路线交错的存储器配置的地址转换机制的说明性示 图,并且对于存储器控制器10中的输入地址寄存器26,输出地址寄存器 28和模块选择寄存器30如图所示连接,从而建立四路线存储器配置24-
图17和18是与图16中的四路线交错的地址转换对应的四路线地址图 38-3的说明性示图。
图19是按照四路线交错对存储器进行访问的说明性示图。在图19 中,在四路线交错控制中,具有大小256字节的存储器模块14-1到14-4 根据CPU侧的划分数量8而被划分为128字节的区域,并且如箭头标记 66-1到66-3所示,在对于存储器模块14-1到14-4的前半部分指定同一地 址的状态中,通过元件选择地址依序选择存储器模块14-1、 14-2、 14-3和 14-4,从而执行四路线交错的访问。
在对存储器模块14-1到14-4的前半区域重复此操作后,在对于存储 器模块14-1到14-4指定同一地址的状态中,如箭头标记68-l、 68-2和68-3所示,通过元件选择地址来依序转换后半部分的区域,从而重复按照四 路线交错的访问。在图17和18中按照此四路线交错控制的四路线地址图
38-3中,首先,如在第一地址区域64-1中所示,对于存储器模块14-1到 14-4的每个存储器模块,通过跳过诸如在地址十进制表示中所示的地址数 0、 4、 8、...的每四个地址而按照四路线交错执行访问,随后,与第二地 址区域64-2类似,通过按照十进制视图的地址数量1、 5、 7、...的四地址 布置来执行交错,并且此外,在第三地址区域64-3中,执行诸如地址数量 2、 6、 12、…的四路线交错的访问,并且此外,如图18中的第四地址区 域64_4中所示,执行通过诸如地址数量3、 7、 11、...的四路线交错的访 问。
图20A和20B是当可以按照一路线、二路线和四路线来重新配置存储 器时准备的实际地址区域使用表以及在配置一路线存储器时根据该实际地 址区域使用表准备的CPU地址的逻辑地址区域使用表的处理的说明性示 图。图20A是一路线搜索寄存器70-1的说明性示图,该一路线搜索寄存 器70-1用于根据图20B中的实际地址区域使用表72来准备一路线逻辑地 址表。首先,与图20B中的一路线、二路线和四路线对应的实际地址区域 使用表72通过下述方式来将实际地址区域划分为32个区域通过将存储 器地址位Al另外增加到图10B中所示的与一路线和二路线对应的的实际 地址区域使用表48,从而使实际地址区域使用表48成为4位。图20A中 的一路线交错搜索寄存器70-1把存储器地址的地址位Al=0/1添加到图 10A中的一路线搜索寄存器70-1,并且通过使用此一路线寄存器70-1来查 看实际地址区域使用表72,以便可以准备与图IOC中所示相同的一路线逻 辑地址区域使用表50-1。当对于78-1至lj 78-8中每个由4个区域构成的 组,四个区域的使用标记都为可以使用"0"时,通过一路线搜索寄存器 70-1对实际地址区域使用表72的查看以与图10C中的一路线逻辑地址区 域使用表50-1对应的使用标记来记录可以使用"O"。当形成一个组的区 域中的至少一个是禁止使用"X"时,图10C中的一路线逻辑地址区域使 用表50-l的使用标记被写为禁止使用"X"。
图21A和21B示出通过图21A中的二路线搜索寄存器70-2使用图20B中的实际地址区域使用表72进行查看来准备与图11C相同的二路线 逻辑地址区域使用表50-2的处理。。在这种情况下,通过二路线搜索寄存 器70-2来查看在实际地址区域使用表72中由右侧箭头标记所示的具有四 个区域的组80-1到80-8的使用标记中的每一个,并且当四个区域的使用 标记全部是可以使用"0"时,二路线实际地址区域使用表50-2被标记为 可以使用"0",并且当四个区域的至少任意一个是禁止使用"X"时, 二路线实际地址区域使用表50-2被标记为禁止使用"X"。
图22A和22B是通过使用与图20B中相同的实际地址区域使用表72 来准备与四路线存储器配置对应的逻辑地址区域使用表的处理的说明性示 图,图22A是用于对实际地址区域使用表72的进行查看的四路线搜索寄 存器70-3,并且设置
<formula>formula see original document page 30</formula>艮口,当将地址X、 Y和Z从OOO改变到111时,针对每个位置,Bl和 BO被改变为四级OO、 01、 lO和ll,从而査看实际地址区域使用表72。通 过使用此四路线搜索寄存器70-3对实际地址区域使用表72的查看,对于 由该图右侧的箭头标记所示的具有四个区域的组82-1到82-8,当四个区域 的使用标记全部是可以使用"0"时,图23中的四路线逻辑地址区域使用 表50-3的相应使用标记被标记为可以使用"0"。另一方面,当四个区域 的使用标记中的至少任意一个是禁止使用"X"时,图23中的四路线逻辑 地址区域使用表50-3的使用标记被存储为禁止使用"X"。当查看图23 中根据实际地址区域使用表48准备的四路线实际地址区域使用表50-3 时,CPU区域的第八区域弁7为禁止使用"X"。以这种方式,当根据一路 线、二路线和四路线重新配置存储器配置时,从存储元件地址可见的实际 地址区域使用表72被准备并被存储,并且其后,通过所述查看来准备与 各个路线数量对应的逻辑地址区域使用表,即,每次建立存储器配置时,执行对与确定存储器配置的交错控制的路线数量对应的实际地址区域使用 表的转换操作,从而可以确定在CPU侧可以使用的区域。
图24示出了在配置一路线存储器时,根据图20A和20B的实际地址 区域使用表准备逻辑地址区域使用表的处理。在步骤Sl,当确定一路线 时,在步骤S2,将实际地址区域使用表72的地址设置到一路线搜索寄存 器70-1,并且在步骤S3,在对地址X、 Y和Z被设置初始值后,在步骤 S4,根据地址X、 Y和Z査看四个区域A1、 A0 = 00、 01、 10和11的使用 标记。随后,在步骤S5,当所有四个区域都允许使用时,跳过步骤S6, 并且当四个区域的至少任意一个是禁止使用,在步骤S6, 一路线逻辑地址 区域使用表的地址X、 Y和Z标记为禁止使用。重复这样的处理,直到在 步骤S7确定了地址X、 Y和Z的最后地址为止,同时在步骤S8递增地址 X和Y。
图25是在二路线存储器配置时根据图21A和21B中的实际地址区域 使用表72准备逻辑地址区域使用表的处理的流程图。在图25中,在步骤 S9,当确定二路线存储器配置时,在步骤SIO,实际地址区域使用表72的 地址被设置到二路线搜索寄存器70-2,并且在步骤Sll,在对地址X、 Y 和Z设置初始地址后,在步骤S12,根据地址X、 Y和Z来查看四个区域 Al、 BO二OO、 01、 10和11的使用标记。随后,在步骤S13,当所有四个 区域都允许使用"O"时,跳过歩骤S14,并且当四个区域的至少任意一 个是禁止使用"X"时,在步骤S14, 二路线实际地址区域使用表的地址 为X、 Y和Z的区域被标记为禁止使用"X"。重复从步骤S12起的处 理,直到在步骤S15确定最后的地址为止,同时在步骤S16递增所述地 址。
图26是在配置四路线时根据图22和23中的实际地址区域使用表72 准备逻辑地址区域使用表50-3的处理的流程图。在图26中,在步骤 S17,当确定四路线存储器配置时,在步骤S18,实际地址区域使用表72 的地址被设置到四路线搜索寄存器70-3,并且在步骤S19,在对地址X、 Y和Z被设置初始值后,在步骤'S20,根据地址X、 Y、 Z来查看四个区域 Bl、 BO二OO、 01、 IO和11的使用标记。随后,在步骤S21,当所有四个区域都是允许使用"0"时,跳过步骤S22,并且当四个区域中的至少任意
一个是禁止使用"X"时,处理进行到步骤S22,并且图23中的四路线逻 辑地址区域使用表50-3的使用标记被标记为禁止使用"X"。重复从步骤 S20起的处理,直到在步骤S23确定最后的地址为止,同时在步骤S24递 增所述地址。此外,本发明提供了一种由计算机系统的存储器控制器(, 即,存储器控制设备)执行的程序,并且此程序具有在图12、 13、 14、 15、 24、 25和26中的流程图中所示的内容。
此外,虽然上述实施例将CPU的逻辑地址空间的划分数量N取值为 N=8,并且交错控制的路线数量被取作一路线、二路线和四路线的情况作 为示例,但是,可以按照需要来任意设置CPU空间的划分数量N和交错 控制的路线数量W,并且优选地,每个数被设置为2的幂。
此外,虽然,为了容易说明,上述实施例将每个存储器模块的大小取 作256字节的情况作为示例,但是,此存储器模块的存储器大小也可按照 需要采用适当的值。
此外,虽然上述实施例将在启动计算机系统时和在重新配置存储器时 根据实际地址区域使用表准备逻辑地址区域使用表的处理作为示例,但 是,除此之外,还可以在适当的存储器配置时(诸如伴随电源故障而重新 启动时,以及由于系统改变而导致重新配置时以及当检测到对于存储器模 块的新的异常部分时),执行根据此实际地址区域使用表的准备处理。
特别地,对于存储器模块的故障检测,当每次执行异常检测时,最好 执行将所存储的实际地址区域使用表的对应区域的允许标记重新写为禁止 使用的处理。结果,可以执行这样一种控制其反映在CPU侧的存储器区 域的使用上,实时地反映了由于存储器异常而导致的退歩情况。
此外,本发明包括不损害其目的和优点的适当的修改,并且,本发明 不受上述实施例所示的数字的任何限制。
权利要求
1.一种存储器控制方法,用于将逻辑地址转换为实际地址并且访问存储器,所述存储器控制方法包括以下步骤当检测到存储器异常时,在实际地址区域使用表中的与所述检测到异常的存储器对应的区域中记录禁止使用信息,所述实际地址区域使用表记录了关于所述存储器的实际地址空间的可以使用信息;并且根据所述实际地址区域使用表产生逻辑地址区域使用表,所述逻辑地址区域使用表记录了关于逻辑地址空间中的每个区域的可以使用信息或者禁止使用信息。
2. —种存储器控制方法,用于将来自CPU的逻辑地址转换为由元件 选择地址和存储元件地址形成的实际地址并且访问多个存储元件,所述存 储器控制方法包括交错控制步骤,用于将把逻辑地址空间划分成N个区域的的所述CPU 的逻辑地址转换为通过路线数量W确定的实际地址,并且通过交错控制来 访问所述多个存储元件,并且能够通过不同的路线数量W的指定来重新配置存储器配置;实际地址区域管理步骤,用于当检测到存储元件的异常时,通过将由所述多个存储元件形成的实际地址空间划分为所述CPU逻辑地址空间的区 域数量N与所述交错控制的最大路线数量Wmax相乘的多个区域 (NxWmax),在记录有使用信息的实际地址区域使用表中包括异常部分 的区域中记录禁止使用信息;以及逻辑地址区域管理步骤,用于通过对应于通过所述交错控制步骤的所 述路线数量W确定的存储器配置,根据所述实际地址区域使用表产生逻辑 地址区域使用表,并且确定所述逻辑地址空间中被所述CPU使用的区域, 所述逻辑地址区域使用表记录了关于所述逻辑地址空间中的每个区域的可 以使用信息或者禁止使用信息。
3. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤通 过指定任何不同的路线数量W来重新配置所述存储器配置,所述路线数量W是2的幂。
4. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤能够通过将所述路线数量指定为1或者2来重新配置所述存储器,其中,所述实际地址管理步骤产生实际地址区域使用表,所述实际地 址区域使用表记录了在每个区域中的允许使用信息或者禁止使用信息,所述每个区域是通过将所述CPU逻辑地址空间的区域数量N与按照4位地 址的所述交错控制的最大路线数量2相乘(Nx2)而划分得到的,所述4 位地址是元件选择地址的低位2位、实际地址的最高有效位和所述实际地 址的最低有效位,其中,在通过一路线确定所述交错控制步骤的存储器配置的情况下, 所述逻辑地址区域管理步骤准备一路线逻辑地址区域使用表,并且确定所 述逻辑地址空间中被所述CPU使用的区域,其中,所述一路线逻辑地址区 域使用表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁 止使用信息,所述3位地址是所述元件选择地址的低位2位和所述实际地 址区域使用表的所述实际地址的最高有效位,并且此外,其中,在通过二路线确定所述交错控制步骤的存储器配置的情 况下,所述逻辑地址区域管理步骤准备二路线逻辑地址区域使用表,并且 确定所述逻辑地址空间中被所述CPU使用的区域,其中,所述二路线逻辑 地址区域使用表记录了在按照3位地址N分的每个区域中的允许使用信息 或者禁止使用信息,所述3位地址是所述元件选择地址的低位的第2位、 所述实际地址区域使用表的所述实际地址的最低有效位和所述实际地址的 最高有效位。
5. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤能 够通过将所述路线数量指定为1或者2来重新配置所述存储器,其中,所述实际地址管理步骤产生实际地址区域使用表,所述实际地 址区域使用表记录了在每个区域中的允许使用信息或者禁止使用信息,所 述每个区域是通过将所述CPU逻辑地址空间的区域数量N与按照4位地 址的交错控制的最大路线数量2相乘(Nx2)而划分得到的,所述4位地 址是所述元件选择地址的低位2位、所述实际地址的最高有效位和所述实际地址的最低有效位。
6. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤能 够通过将所述路线数量指定为1或者2来重新配置所述存储器,其中,在通过一路线确定所述交错控制步骤的存储器配置的情况下, 所述逻辑地址区域管理步骤准备一路线逻辑地址区域使用表,并且确定所 述逻辑地址空间中被所述CPU使用的区域,所述一路线逻辑地址区域使用表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止使用 信息,所述3位地址是所述元件选择地址的低位2位和所述实际地址区域 使用表的所述实际地址的最低有效位。
7. 按照权利要求2的存储器控制方法,其中所述交错控制步骤能够通过将所述路线数量指定为1或者2来重新配 置所述存储器,其中,在通过一路线确定所述交错控制步骤的存储器配置的情况下, 所述逻辑地址区域管理步骤准备二路线逻辑地址区域使用表,并且确定所 述逻辑地址空间中被所述CPU使用的区域,其中,二路线逻辑地址区域使 用表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止使 用信息,所述3位地址是所述元件选择地址的低位的第二位和所述实际地 址区域使用表的所述实际地址的最高有效位。
8. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤能 够通过将所述路线数量指定为1、 2或者4来重新配置存储器,其中,所述实际地址管理步骤产生实际地址区域使用表,所述实际地 址区域使用表记录了在每个区域中的允许使用信息或者禁止使用信息,所 述每个区域是通过将CPU逻辑地址空间的区域数量N与按照5位地址的 交错控制的最大路线数量4相乘(Nx4)而划分得到的,所述5位地址是 所述元件选择地址的低位2位、所述实际地址的最高有效位、所述实际地 址的低位2位,其中,在通过一路线确定所述交错控制步骤的存储器配置的情况下, 所述逻辑地址区域管理步骤准备一路线逻辑地址区域使用表,并且确定所 述逻辑地址空间中被所述CPU使用的区域,所述一路线逻辑地址区域使用表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止使用 信息,所述3位地址是所述元件选择地址的低位2位和所述实际地址区域 使用表的所述实际地址的最高有效位,此外,其中,在通过二路线确定所述交错控制步骤的存储器配置的情 况下,所述逻辑地址区域管理步骤准备二路线逻辑地址区域使用表,并且确定所述逻辑地址空间中被所述CPU使用的区域,二路线逻辑地址区域使 用表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止使 用信息,所述3位地址是所述元件选择地址的低位的第2位、所述实际地 址区域使用表的所述实际地址的最低有效位和所述实际地址的最高有效 位,并且此外,其中,在通过四路线确定所述交错控制步骤的存储器配置 的情况下,所述逻辑地址区域管理步骤准备四路线逻辑地址区域使用表, 并且确定所述逻辑地址空间中被所述CPU使用的区域,所述四路线逻辑地 址区域使用表记录了在按照3位地址N分的每个区域中的允许使用信息或 者禁止使用信息,所述3位地址是所述元件选择地址的低位2位、所述实 际地址区域使用表的所述实际地址的最高有效位。
9. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤能 够通过将所述路线数量指定为1、 2或者4来重新配置所述存储器,其中,所述实际地址管理步骤产生实际地址区域使用表,所述实际地 址区域使用表记录了在每个区域中的允许使用信息或者禁止使用信息,所 述每个区域是通过将所述CPU逻辑地址空间的区域数量N与按照5位地 址的交错控制的最大路线数量4相乘(Nx4)而划分得到的,所述5位地 址是所述元件选择地址的低位2位、所述实际地址的最高有效位、所述实 际地址的低位2位。
10. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤能够通过将所述路线数量指定为1、 2或者4来重 新配置所述存储器,其中,在通过一路线确定所述交错控制步骤的存储器配置的情况下, 所述逻辑地址区域管理步骤准备一路线逻辑地址区域使用表,并且确定所述逻辑地址空间中被所述CPU使用的区域,所述一路线逻辑地址区域使用 表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止使用信息,所述3位地址是所述元件选择地址的低位2位和所述实际地址区域使用表的所述实际地址的最高有效位。
11. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤能够通过将所述路线数量指定为1、 2或者4来重 新配置所述存储器,其中,在通过二路线确定所述交错控制步骤的存储器配置的情况下, 所述逻辑地址区域管理步骤准备二路线逻辑地址区域使用表,并且确定所 述逻辑地址空间中被所述CPU使用的区域,所述二路线逻辑地址区域使用 表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止使用 信息,所述3位地址是所述元件选择地址的低位的第2位、所述实际地址区域使用表的所述实际地址的最低有效位和所述实际地址的最高有效位。
12. 按照权利要求2的存储器控制方法,其中,所述交错控制步骤能够通过将所述路线数量指定为1、 2或者4来重 新配置所述存储器,其中,在通过四路线确定所述交错控制步骤的存储器配置的情况下, 所述逻辑地址区域管理步骤准备四路线逻辑地址区域使用表,并且确定所 述逻辑地址空间中被所述CPU使用的区域,所述四路线逻辑地址区域使用 表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止使用 信息,所述3位地址是所述元件选择地址的低位2位和所述实际地址区域 使用表的所述实际地址的最高有效位。
13. —种存储器控制程序,该程序使用于将来自CPU的逻辑地址转换为由元件选择地址和存储元件地址形成的实际地址并且访问多个存储元件 的存储器控制装置的计算机执行以下步骤交错控制步骤,用于将使用被划分为N个区域的逻辑地址空间的所述 CPU的逻辑地址转换为通过路线数量W确定的实际地址,并且通过交错 控制来访问所述多个存储元件,并且能够通过不同的路线数量W的指定来 重新配置存储器配置;实际地址区域管理步骤,用于通过将由所述多个存储元件形成的实际 地址空间划分为所述CPU逻辑地址空间的区域数量N与所述交错控制的最大路线数量Wmax相乘的多个区域(NxWmax),并且准备对记录了可 以使用信息的所有路线数量通用的实际地址区域使用表,并且当检测到存 储元件的异常时,在所述实际地址区域使用表的包括异常部分的区域中记 录禁止使用信息,以及逻辑地址区域管理步骤,用于通过对应于通过所述交错控制步骤的所 述路线数量W确定的存储器配置,根据所述实际地址区域使用表产生逻辑 地址区域使用表,并且确定所述逻辑地址空间中被所述CPU使用的区域, 其中,所述逻辑地址区域使用表记录了关于所述逻辑地址空间中的每个区 域中的可以使用信息或者禁止使用信息。
14. 一种通过实际地址来访问多个存储元件的存储器控制装置,所述 存储器控制装置包括控制单元,用于将CPU的逻辑地址转换为实际地址,并且访问所述多 个存储元件;实际地址区域管理单元,用于在对应于所述存储元件的实际地址区域 使用表中检测到异常的区域中记录禁止使用信息,所述实际地址区域使用 表记录了关于由所述多个存储元件形成的实际地址空间中的存储元件的可 以使用信息,以及逻辑地址区域管理单元,用于根据所述实际地址区域使用表产生逻辑 地址区域使用表,并且确定所述逻辑地址空间中被所述CPU使用的区域, 所述逻辑地址区域使用表记录了所述逻辑地址空间中的每个区域中的可以 使用信息或者禁止使用信息。
15. 按照权利要求14的存储器控制装置,其中,所述交错控制单元 通过指定任何不同的路线数量W来重新配置所述存储器配置,所述路线数 量W是2的幂。
16. 按照权利要求14的存储器控制装置,其中,所述交错控制单元 能够通过将所述路线数量指定为1或者2来重新配置存储器,其中,所述实际地址管理单元产生实际地址区域使用表,所述实际地址区域使用表记录了每个区域中的允许使用信息或者禁止使用信息,所述 每个区域是通过将CPU逻辑地址空间的区域数量N与按照4位地址的交错控制的最大路线数量2相乘(Nx2)而划分得到的,所述4位地址是所 述元件选择地址的低位2位、所述实际地址的最高有效位和所述实际地址 的最低有效位,其中,在通过一路线确定交错控制步骤的存储器配置的情况下,所述 逻辑地址区域管理步骤准备一路线逻辑地址区域使用表,并确定所述逻辑 地址空间中被所述CPU使用的区域,所述一路线逻辑地址区域使用表记录 了在按照3位地址N分的每个区域中的允许使用信息或者禁止使用信息, 所述3位地址是所述元件选择地址的低位2位和所述实际地址区域使用表 的所述实际地址的最高有效位,并且此外,其中,在通过二路线确定所述交错控制步骤的存储器配置的情 况下,所述逻辑地址区域管理步骤准备二路线逻辑地址区域使用表,并确 定所述逻辑地址空间中被所述CPU使用的区域,所述二路线逻辑地址区域 使用表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止 使用信息,所述3位地址是所述元件选择地址的低位的第2位、所述实际 地址区域使用表的所述实际地址的最低有效位和所述实际地址的最高有效 位。
17.按照权利要求14的存储器控制装置,其中,所述交错控制单元 能够通过将所述路线数量指定为1、 2或者4来重新配置存储器,其中,所述实际地址管理单元产生实际地址区域使用表,所述实际地 址区域使用表记录了每个区域中的允许使用信息或者禁止使用信息,所述 每个区域是通过将CPU逻辑地址空间的区域数量N与按照5位地址的交 错控制的最大路线数量4相乘(Nx4)而划分得到的,所述5位地址是所 述元件选择地址的低位2位、所述实际地址的最高有效位、所述实际地址 的较低2位,其中,在通过一路线确定交错控制步骤的存储器配置的情况下,所述 逻辑地址区域管理步骤准备一路线逻辑地址区域使用表,并确定所述逻辑 地址空间中被所述CPU使用的区域,所述一路线逻辑地址区域使用表记录了在按照3位地址N分的每个区域的允许使用信息或者禁止使用信息,所 述3位地址是所述元件选择地址的低位2位和所述实际地址区域使用表的 所述实际地址的最高有效位,此外,其中,在通过二路线确定所述交错控制步骤的存储器配置的情 况下,所述逻辑地址区域管理步骤准备二路线逻辑地址区域使用表,并确 定所述逻辑地址空间中被所述CPU使用的区域,所述二路线逻辑地址区域使用表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止 使用信息,所述3位地址是所述元件选择地址的低位的第2位、所述实际 地址区域使用表的所述实际地址的最低有效位和所述实际地址的最高有效 位,-并且此外,其中,在通过四路线确定所述交错控制步骤的存储器配置 的情况下,所述逻辑地址区域管理步骤准备四路线逻辑地址区域使用表, 并确定所述逻辑地址空间中被所述CPU使用的区域,四路线逻辑地址区域 使用表记录了在按照3位地址N分的每个区域中的允许使用信息或者禁止 使用信息,所述3位地址是所述元件选择地址的低位2位、所述实际地址 区域使用表的所述实际地址的最高有效位。
18. —种信息处理器,该信息处理器包括处理单元;存储单元,所述存储单元连接到所述处理单元,并用于存储信息;以及存储器控制单元,所述存储器控制单元用于控制对所述存储单元的访问,其中,所述存储器控制单元包括控制单元,所述控制单元用于将来自CPU的逻辑地址转换为实际地 址,并访问所述存储单元;实际地址管理控制单元,用于在第一表格中记录关于所述存储单元中 检测到异常的区域的禁止使用信息,所述第一表格存储了所述存储单元的 每个实际地址空间区域的关于存储单元的可以使用信息或者不可以使用信 息;以及逻辑地址区域管理单元,用于根据所述第一表格的内容来更新逻辑地 址区域使用表的内容,所述逻辑地址区域使用表记录了关于逻辑地址空间 中的每个区域的可以使用信息或者不可以使用信息。
全文摘要
使用被划分为N个区域的逻辑地址空间的CPU的逻辑地址被转换为由路线数量(W)确定的实际地址,并且多个存储元件在交错控制下被通过包括元件选择地址和存储元件地址的实际地址访问。包括存储元件的实际地址空间被划分为(N×Wmax)个区域,其中,N是在CPU逻辑地址空间中的区域的数量,Wmax是交错控制的路线的最大数量。对于所有路线数量通用的实际地址可用性表格被建立并被保存,该实际地址可用性表格中记录有可用性信息。当检测到存储元件的异常时,禁止使用信息被记录在实际地址可用性表中的包括异常位置的区域中。每次启动或者重新配置系统时,与通过交错控制的路线数量而确定的存储器配置相对应,通过使用实际地址可用性表格将逻辑地址空间划分为N个区域,以产生逻辑地址可用性表,其中,逻辑地址可用性表记录了可使用信息和禁止使用信息,从而确定逻辑地址空间中被CPU使用的区域。
文档编号G06F12/16GK101292229SQ20058005186
公开日2008年10月22日 申请日期2005年12月28日 优先权日2005年12月28日
发明者中田浩作 申请人:富士通株式会社