(57)【要約】【課題】ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止する。【解決手段】メモリに対するデータの入出力を制御する制御データであるメモリ制御データを読み込んで、メモリを制御するメモリコントローラ２０を初期化するメモリ初期化制御装置４０であって、メモリ比較制御情報記憶部４０１ａは、メモリ制御データを比較制御する情報であるメモリ比較制御情報を記憶し、ＳＰＤデータ読出部４０２ａは、メモリからメモリ制御データを読み出し、メモリ初期化制御部４０２ｂは、メモリ比較制御情報に基づいてメモリ制御データを比較制御し、比較制御した結果に基づいてメモリコントローラを初期化する。【選択図】        図１
2006018487.tif 000002
【特許請求の範囲】
【請求項１】
メモリに対するデータの入出力を制御する制御データであるメモリ制御データを読み込んで、該メモリを制御するメモリコントローラを初期化するメモリ初期化制御装置であって、
前記メモリ制御データを比較制御する情報であるメモリ比較制御情報を記憶するメモリ比較制御情報記憶手段と、
前記メモリから前記メモリ制御データを読み出すメモリ制御データ読出手段と、
前記メモリ比較制御情報に基づいて前記メモリ制御データを比較制御し、比較制御した結果に基づいて前記メモリコントローラを初期化するメモリ初期化制御手段と、
を備えたことを特徴とするメモリ初期化制御装置。
【請求項２】
前記メモリ比較制御情報記憶手段は、前記メモリ制御データを一度に読み出すことができるメモリの範囲を識別する情報であるメモリ範囲識別情報と、前記メモリコントローラが制御することができる前記メモリ制御データであるメモリ制御可能データと、前記メモリの動作または非動作を識別するメモリ動作識別情報と、前記メモリ制御データを比較制御する要求であるメモリ比較制御要求とを有するメモリ比較制御情報を記憶することを特徴とする請求項１に記載のメモリ初期化制御装置。
【請求項３】
前記メモリ比較制御要求は、同一の前記メモリ範囲識別情報を有する複数のメモリの全てが同一の前記メモリ制御データを有することを要求し、
前記メモリ初期化制御手段は、前記メモリ比較制御要求に基づいて前記メモリ制御データを比較制御し、
前記複数のメモリの全てが同一の前記メモリ制御データを有する場合は、前記メモリ制御データにより前記メモリコントローラを初期化し、
前記複数のメモリの全てが同一の前記メモリ制御データを有しない場合は、前記メモリコントローラを初期化しないことを特徴とする請求項１または２に記載のメモリ初期化制御装置。
【請求項４】
前記メモリ比較制御要求は、同一の前記メモリ範囲識別情報を有する複数のメモリが前記メモリ制御可能データを有することを要求し、
前記メモリ初期化制御手段は、前記メモリ比較制御要求に基づいて前記メモリ制御データを比較制御し、
前記複数のメモリのうち少なくとも一つが前記メモリ制御可能データを有する場合は、前記メモリ制御可能データと該メモリ制御可能データを有するメモリのアドレス情報とによってメモリコントローラを初期化し、
前記複数のメモリの全てが前記メモリ制御可能データを有しない場合は、前記メモリコントローラを初期化しないことを特徴とする請求項１、２または３に記載のメモリ初期化制御装置。
【請求項５】
前記メモリ比較制御要求は、前記複数のメモリからアドレス情報、性能、多数決の少なくともいずれか一つに基づいて前記メモリ制御可能データおよび該メモリ制御可能データを有するメモリを選択するよう要求することを特徴とする請求項４に記載のメモリ初期化制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、メモリ初期化制御装置に関し、特にＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止することができるメモリ初期化制御装置に関するものである。
【背景技術】
【０００２】
従来、コンピュータの起動時に、メモリのメモリ制御データであるＳＰＤ（Ｓｅｒｉａｌ  Ｐｒｅｓｅｎｃｅ  Ｄｅｔｅｃｔ）データを読み込んで、メモリを制御するメモリコントローラの初期化を行うＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）が知られている。かかるＢＩＯＳにおいては、メモリのＳＰＤデータにあわせてメモリコントローラを初期化すると共に、メモリコントローラが制御できるＳＰＤデータであるか否かを判定する必要がある。また、一度に複数のメモリからメモリコントローラにデータ転送を行うコンピュータの場合は、複数のメモリのＳＰＤデータの全てが同一でなければメモリコントローラが複数のメモリを制御することができないので、複数のメモリのＳＰＤデータの全てが同一であるか否かという判定をすることが必要であった。結果的に、ＢＩＯＳのメモリ初期化の処理負荷が重く、メモリの搭載ミスによるシステム障害の原因となっていた。
【０００３】
したがって、ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止する従来技術が開示されている。例えば、特許文献１では、ＣＰＵとメモリを専用のバスで接続し、他のメモリの高速動作に悪影響を与えることなく、かつメモリが本来の性能を発揮できるよう動作させる従来技術が開示されている。
【０００４】
【特許文献１】特開２００１−２７０１６６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１の従来技術では、ＣＰＵとメモリを専用のバスで接続し、他のメモリの高速動作に悪影響を与えることなく、かつメモリが本来の性能を発揮できるよう動作させることができるが、ＢＩＯＳのメモリの初期化の処理負荷が重く、メモリの搭載ミスによるシステム障害の原因となるという課題は解決できなかった。
【０００６】
この発明は、上述した従来技術による問題点を解消するためになされたものであり、ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止するメモリ初期化制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するため、請求項１の発明に係るメモリ初期化制御装置は、メモリに対するデータの入出力を制御する制御データであるメモリ制御データを読み込んで、該メモリを制御するメモリコントローラを初期化するメモリ初期化制御装置であって、前記メモリ制御データを比較制御する情報であるメモリ比較制御情報を記憶するメモリ比較制御情報記憶手段と、前記メモリから前記メモリ制御データを読み出すメモリ制御データ読出手段と、前記メモリ比較制御情報に基づいて前記メモリ制御データを比較制御し、比較制御した結果に基づいて前記メモリコントローラを初期化するメモリ初期化制御手段と、を備えたことを特徴とする。
【０００８】
この請求項１の発明によれば、メモリ制御データを比較制御する情報であるメモリ比較制御情報を記憶し、メモリからメモリ制御データを読み出し、メモリ比較制御情報に基づいてメモリ制御データを比較制御し、比較制御した結果に基づいてメモリコントローラを初期化することとしたので、メモリ初期化制御装置は、ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止することができる。
【０００９】
また、請求項２の発明に係るメモリ初期化制御装置は、請求項１の発明において、前記メモリ比較制御情報記憶手段は、前記メモリ制御データを一度に読み出すことができるメモリの範囲を識別する情報であるメモリ範囲識別情報と、前記メモリコントローラが制御することができる前記メモリ制御データであるメモリ制御可能データと、前記メモリの動作または非動作を識別するメモリ動作識別情報と、前記メモリ制御データを比較制御する要求であるメモリ比較制御要求とを有するメモリ比較制御情報を記憶することを特徴とする。
【００１０】
この請求項２の発明によれば、メモリ制御データを一度に読み出すことができるメモリの範囲を識別する情報であるメモリ範囲識別情報と、メモリコントローラが制御することができるメモリ制御データであるメモリ制御可能データと、メモリの動作または非動作を識別するメモリ動作識別情報と、メモリ制御データを比較制御する要求であるメモリ比較制御要求とを有するメモリ比較制御情報を記憶することとしたので、メモリ初期化制御装置は、システムの搭載条件を明確にし、メモリの選択の自由度を広げることができる。
【００１１】
また、請求項３の発明に係るメモリ初期化制御装置は、請求項１または２の発明において、前記メモリ比較制御要求は、同一の前記メモリ範囲識別情報を有する複数のメモリの全てが同一の前記メモリ制御データを有することを要求し、前記メモリ初期化制御手段は、前記メモリ比較制御要求に基づいて前記メモリ制御データを比較制御し、前記複数のメモリの全てが同一の前記メモリ制御データを有する場合は、前記メモリ制御データにより前記メモリコントローラを初期化し、前記複数のメモリの全てが同一の前記メモリ制御データを有しない場合は、前記メモリコントローラを初期化しないことを特徴とする。
【００１２】
この請求項３の発明によれば、メモリ比較制御要求は、同一のメモリ範囲識別情報を有する複数のメモリの全てが同一のメモリ制御データを有することを要求し、メモリ比較制御要求に基づいてメモリ制御データを比較制御し、複数のメモリの全てが同一のメモリ制御データを有する場合は、メモリ制御データによりメモリコントローラを初期化し、複数のメモリの全てが同一のメモリ制御データを有しない場合は、メモリコントローラを初期化しないこととしたので、メモリ初期化制御装置は、システムの搭載条件に適合しないメモリを無効にすることができ、メモリの搭載ミスによりシステムが立ち上がらないという障害を防止することができる。
【００１３】
また、請求項４の発明に係るメモリ初期化制御装置は、請求項１、２または３の発明において、前記メモリ比較制御要求は、同一の前記メモリ範囲識別情報を有する複数のメモリが前記メモリ制御可能データを有することを要求し、前記メモリ初期化制御手段は、前記メモリ比較制御要求に基づいて前記メモリ制御データを比較制御し、前記複数のメモリのうち少なくとも一つが前記メモリ制御可能データを有する場合は、前記メモリ制御可能データと該メモリ制御可能データを有するメモリのアドレス情報とによってメモリコントローラを初期化し、前記複数のメモリの全てが前記メモリ制御可能データを有しない場合は、前記メモリコントローラを初期化しないことを特徴とする。
【００１４】
この請求項４の発明によれば、メモリ比較制御要求は、同一のメモリ範囲識別情報を有する複数のメモリがメモリ制御可能データを有することを要求し、メモリ比較制御要求に基づいてメモリ制御データを比較制御し、複数のメモリのうち少なくとも一つがメモリ制御可能データを有する場合は、メモリ制御可能データとメモリ制御可能データを有するメモリのアドレス情報とによってメモリコントローラを初期化し、複数のメモリの全てがメモリ制御可能データを有しない場合は、メモリコントローラを初期化しないこととしたので、メモリ初期化制御装置は、システムの搭載条件に適合しないメモリを無効にすることができ、メモリの搭載ミスによりシステムが立ち上がらないという障害を防止することができる。
【００１５】
また、請求項５の発明に係るメモリ初期化制御装置は、請求項４の発明において、前記メモリ比較制御要求は、前記複数のメモリからアドレス情報、性能、多数決の少なくともいずれか一つに基づいて前記メモリ制御可能データおよび該メモリ制御可能データを有するメモリを選択するよう要求することを特徴とする。
【００１６】
この請求項５の発明によれば、メモリ比較制御要求は、複数のメモリからアドレス情報、性能、多数決の少なくともいずれか一つに基づいてメモリ制御可能データおよびメモリ制御可能データを有するメモリを選択するよう要求することとしたので、メモリ初期化制御装置は、システムの搭載条件の範囲内でメモリの選択の自由度を広げることができる。
【発明の効果】
【００１７】
請求項１の発明によれば、メモリ制御データを比較制御する情報であるメモリ比較制御情報を記憶し、メモリからメモリ制御データを読み出し、メモリ比較制御情報に基づいてメモリ制御データを比較制御し、比較制御した結果に基づいてメモリコントローラを初期化するよう構成したので、メモリ初期化制御装置は、ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止することができるという効果を奏する。
【００１８】
また、請求項２の発明によれば、メモリ制御データを一度に読み出すことができるメモリの範囲を識別する情報であるメモリ範囲識別情報と、メモリコントローラが制御することができるメモリ制御データであるメモリ制御可能データと、メモリの動作または非動作を識別するメモリ動作識別情報と、メモリ制御データを比較制御する要求であるメモリ比較制御要求とを有するメモリ比較制御情報を記憶するよう構成したので、メモリ初期化制御装置は、システムの搭載条件を明確にし、メモリの選択の自由度を広げることができるという効果を奏する。
【００１９】
また、請求項３の発明によれば、メモリ比較制御要求は、同一のメモリ範囲識別情報を有する複数のメモリの全てが同一のメモリ制御データを有することを要求し、メモリ比較制御要求に基づいてメモリ制御データを比較制御し、複数のメモリの全てが同一のメモリ制御データを有する場合は、メモリ制御データによりメモリコントローラを初期化し、複数のメモリの全てが同一のメモリ制御データを有しない場合は、メモリコントローラを初期化しないよう構成したので、メモリ初期化制御装置は、システムの搭載条件に適合しないメモリを無効にすることができ、メモリの搭載ミスによりシステムが立ち上がらないという障害を防止することができるという効果を奏する。
【００２０】
また、請求項４の発明によれば、メモリ比較制御要求は、同一のメモリ範囲識別情報を有する複数のメモリがメモリ制御可能データを有することを要求し、メモリ比較制御要求に基づいてメモリ制御データを比較制御し、複数のメモリのうち少なくとも一つがメモリ制御可能データを有する場合は、メモリ制御可能データとメモリ制御可能データを有するメモリのアドレス情報とによってメモリコントローラを初期化し、複数のメモリの全てがメモリ制御可能データを有しない場合は、メモリコントローラを初期化しないよう構成したので、メモリ初期化制御装置は、システムの搭載条件に適合しないメモリを無効にすることができ、メモリの搭載ミスによりシステムが立ち上がらないという障害を防止することができるという効果を奏する。
【００２１】
また、請求項５の発明によれば、メモリ比較制御要求は、複数のメモリからアドレス情報、性能、多数決の少なくともいずれか一つに基づいてメモリ制御可能データおよびメモリ制御可能データを有するメモリを選択するよう要求するよう構成したので、メモリ初期化制御装置は、システムの搭載条件の範囲内でメモリの選択の自由度を広げることができるという効果を奏する。
【発明を実施するための最良の形態】
【００２２】
以下に添付図面を参照して、この発明に係るメモリ初期化制御装置の好適な実施例としてコンピュータシステムを詳細に説明する。ここでは、（１）メモリ初期化制御装置の概要と主要な特徴、（２）コンピュータシステムの構成、（３）メモリ比較制御情報の一例、（４）メモリ初期化制御手順の順番で説明する。
【実施例】
【００２３】
（１）メモリ初期化制御装置の概要と主要な特徴
まず、図１を参照して、メモリ初期化制御装置４０の概要と主要な特徴について説明する。図１は、実施例に係るコンピュータシステム１の構成を示す機能ブロック図である。本実施例に係るメモリ初期化制御装置４０は、メモリ２１〜２８に対するデータの入出力を制御する制御データであるＳＰＤデータを読み込んで、メモリ２１〜２８を制御するメモリコントローラ２０を初期化する装置であり、ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止することを特徴とする。なお、ＳＰＤデータは、メモリの最大クロック周波数や信号タイミングなどのメモリの動作仕様データであり、メモリに搭載されているＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）に格納されている１２８バイト以上のデータである。
【００２４】
また、メモリ比較制御情報記憶部４０１ａは、メモリ２１〜２８のＳＰＤデータを比較制御する情報であるメモリ比較制御情報を記憶し、ＳＰＤデータ読出部４０２ａは、メモリ２１〜２８からＳＰＤデータを読み出し、メモリ初期化制御部４０２ｂは、メモリ比較制御情報に基づいてＳＰＤデータを比較制御し、比較制御した結果に基づいてメモリコントローラ２０を初期化することとしたので、メモリ初期化制御装置４０は、ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止することができる。
【００２５】
（２）コンピュータシステムの構成
次に、図１を参照して、実施例に係るコンピュータシステム１の構成について説明する。同図に示すように、コンピュータシステム１は、ＣＰＵ１０、メモリコントローラ２０、メモリ２１〜２８、Ｉ／Ｏコントローラ３０、メモリ初期化制御装置４０、バス４１〜４６、入出力装置５０を有する。ＣＰＵ１０は、コンピュータシステム１の全体を制御する制御部であり、コンピュータ起動時にＢＩＯＳをＲＯＭから立ち上げてメモリ２１〜２８、入出力装置５０を初期化する。また、ＣＰＵ１０は、ＢＩＯＳによってメモリ初期化制御装置４０に記憶されているメモリ比較制御情報を書き換えることができる。また、ＣＰＵ１０は、メモリコントローラ２０を介してメモリ２１〜２８に対してデータの読出し、書き込みを行う。
【００２６】
メモリコントローラ２０は、ＣＰＵ１０の命令を受けてメモリ２１〜２８に対するデータの読み出しまたは書き込みを制御するコントローラであり、ノースブリッジと呼ばれるブリッジ回路を構成する。なお、ノースブリッジについては、本発明に直接係らないので説明を省く。また、メモリコントローラ２０は、同じメモリ識別情報、すなわちグループ１またはグループ２ごとに同時に４つのメモリを制御する。
【００２７】
メモリ２１〜２８は、コンピュータシステムの主記憶装置であり、具体的には、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などである。また、メモリ２１〜２８は、二つのグループに分かれており、図１に示すようにメモリ２１、２３、２５、２７がグループ１であり、メモリ２２、２４、２６、２８がグループ２である。また、メモリ２１〜２８は、コンピュータシステム１の８つのメモリスロットに着脱可能な状態で取り付けられている。
【００２８】
Ｉ／Ｏコントローラ３０は、入出力装置５０を制御する入出力制御装置であり、ノースブリッジまたはサウスブリッジと呼ばれるブリッジ回路を構成する。なお、ノースブリッジまたはサウスブリッジについては発明に直接係らないので説明を省く。
【００２９】
メモリ初期化制御装置４０は、コンピュータシステム１の起動時に、ＢＩＯＳに代わってメモリ２１〜２８のＳＰＤデータを読み込んで、メモリ２１〜２８を制御するメモリコントローラ２０を初期化する装置であり、別途詳細に説明する。
【００３０】
バス４１〜４６は、データを伝送するバスであり、接続する機器のデータ処理速度に応じてデータ伝送速度が異なる。バス４１は、ＣＰＵ１０とメモリ初期化制御装置４０の記憶部４０１との間でデータを伝送するバスである。また、バス４２は、ＣＰＵ１０とメモリコントローラ２０との間でメモリ２１〜２８に対するデータを伝送するバスである。
【００３１】
バス４３−１〜４３−４は、メモリコントローラ２０とメモリ２１〜２８との間でデータを伝送するバスであり、４つのメモリに対して同時にデータを伝送することができるパラレルバスである。また、バス４４は、メモリコントローラ２０とＩ／Ｏコントローラ３０との間でデータを伝送するバスである。また、バス４６は、Ｉ／Ｏコントローラ３０と入出力装置５０との間でデータを伝送するバスであり、入出力装置５０に応じてＰＣＩバス、ＵＳＢバスなどの各種バスを有する。
【００３２】
入出力装置５０は、ＲＯＭ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの外部記憶装置、画像表示装置、キーボード、マウスなどの装置である。なお、ＢＩＯＳなどのシステムソフトウエアは、ＲＯＭまたはＨＤＤなどの外部記憶装置に記憶されている。
【００３３】
続いて、本実施例に係るメモリ初期化制御装置４０について詳細に説明する。メモリ初期化制御装置４０は、記憶部４０１、制御部４０２を有する。記憶部４０１は、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）のような不揮発性メモリであり、メモリ比較制御情報記憶部４０１ａを有する。メモリ比較制御情報記憶部４０１ａは、メモリ比較制御情報を記憶する記憶部である。なお、メモリ比較制御情報については、別途詳細に説明する。
【００３４】
制御部４０２は、メモリ初期化制御装置４０の全体を制御する制御部であり、ＳＰＤデータ読出部４０２ａ、メモリ初期化制御部４０２ｂを有する。ＳＰＤデータ読出部４０２ａは、メモリ２１〜２８からＳＰＤデータを読み出す読出部である。また、ＳＰＤデータ読出部４０２ａは、メモリ２１〜２８からＳＰＤデータを並行して読み出す。したがって、ＳＰＤデータを読み出す時間が短くなるので、メモリ初期化制御装置４０は、メモリ初期化の処理負荷を軽減することができる。
【００３５】
メモリ初期化制御部４０２ｂは、メモリ比較制御情報に基づいてＳＰＤデータを比較制御し、比較制御した結果に基づいてメモリコントローラ２０を初期化する制御部である。
また、メモリ初期化制御部４０２ｂは、メモリ比較制御要求を選択設定する。また、メモリ初期化制御部４０２ｂは、メモリ２１〜２８のＳＰＤデータとメモリ制御可能データを一対一で比較することができる。また、特定の複数の項目に絞って比較することもできる。
【００３６】
また、メモリ初期化制御部４０２ｂは、メモリ比較制御要求に基づいてＳＰＤデータを比較制御し、メモリ２１〜２８の全てが同一のＳＰＤデータを有する場合は、ＳＰＤデータによりメモリコントローラ２０を初期化し、メモリ２１〜２８の全てが同一のＳＰＤデータを有しない場合は、メモリコントローラ２０を初期化しない。
【００３７】
また、メモリ初期化制御部４０２ｂは、メモリ比較制御要求に基づいてＳＰＤデータを比較制御し、メモリ２１〜２８のうち少なくとも一つがメモリ制御可能データを有する場合は、メモリ制御可能データとメモリ制御可能データを有するメモリのアドレス情報とによってメモリコントローラ２０を初期化し、メモリ２１〜２８の全てがメモリ制御可能データを有しない場合は、メモリコントローラ２０を初期化しない。
【００３８】
（３）メモリ比較制御情報の一例
次に、図２〜図５を参照して、図１に示すメモリ比較制御情報記憶部４０１ａに記憶されているメモリ比較制御情報の一例について説明する。メモリ比較制御情報は、メモリ範囲識別情報、メモリ制御可能データ、メモリ動作識別情報、およびメモリ比較制御要求を有する。図２は、図１に示すメモリ比較制御情報記憶部４０１ａのメモリ範囲識別情報の一例を示す図である。また、図３は、図１に示すメモリ比較制御情報記憶部４０１ａのメモリ制御可能データの一例を示す図である。また、図４は、図１に示すメモリ比較制御情報記憶部４０１ａのメモリ動作識別情報の一例を示す図である。また、図５は、図１に示すメモリ比較制御情報記憶部４０１ａのメモリ比較制御要求の一例を示す図である。
【００３９】
図２に示すように、メモリ範囲識別情報は、ＳＰＤデータを一度に読み出すことができるメモリの範囲を識別する情報であり、具体的には、図１のメモリのグループ名、グループ１またはグループ２である。また、メモリ識別情報は、メモリ２１〜２８が取り付けられるスロット位置に対して付与されるので、スロット１〜スロット８に取り付けられたメモリ２１〜２８に対して自動的に付与される。
【００４０】
図３に示すように、メモリ制御可能データは、１２８バイトの容量を有するＥＥＰＲＯＭに記憶されている、メモリコントローラ２０が制御できるＳＰＤデータであり、具体的には、ＳＰＤ１〜ＳＰＤ１２８の１２８バイトのデータＡＡ〜ＺＺである。
【００４１】
図４に示すように、メモリ動作識別情報は、メモリの動作または非動作を識別する情報であり、メモリのスロット位置ごとに動作または非動作が記載されている。また、メモリ動作識別情報は、動作である場合にはＳＰＤ値も併記されている。
【００４２】
図５に示すように、メモリ比較制御要求は、ＳＰＤデータを比較制御する要求であり、同一のメモリ範囲識別情報、すなわち同一のグループ名を有するメモリ２１〜２８の全てが同一のＳＰＤデータを有することを要求する同一要求と、同一のメモリ範囲識別情報、すなわち同一のグループ名を有するメモリ２１〜２８がメモリ制御可能データを有することを要求する制御可能要求とがある。
【００４３】
また、メモリ比較制御要求は、メモリ２１〜２８からアドレス情報、性能、多数決のいずれか一つに基づいてメモリ制御可能データおよびメモリ制御可能データを有するメモリを選択するよう要求する。すなわち、グループ内の最も若い番号のスロット位置のメモリのＳＰＤデータに合わせる、最も性能の良いＳＰＤデータを選択する、またはグループ内で数の多いＳＰＤデータを選択するなどを要求する。
【００４４】
例えば、図４に示すようにグループ１のメモリのＳＰＤデータは、メモリコントローラ２０が制御できるＳＰＤデータであり、メモリ１と５は、ＳＰＤ値２２で、メモリ３と７はＳＰＤ値４４である。メモリ比較制御要求が、メモリのアドレス情報、例えばグループ内の最も若い番号のスロット位置のメモリのＳＰＤデータに合わせるという要求である場合は、メモリ１と５が動作となり、メモリ３と７が非動作となる。また、グループ２のメモリ２と８は、メモリコントローラ２０が制御できないＳＰＤデータであるので、非動作となる。
【００４５】
（４）メモリ初期化制御手順
次に、図６を参照して、図１に示すメモリ初期化制御装置４０のメモリ初期化制御手順について説明する。図６は、図１に示すメモリ初期化制御装置４０のメモリ初期化制御手順を示すフローチャートである。同図に示すように、まずコンピュータシステム１が起動する（ステップＳ６０１）。
【００４６】
すると、ＣＰＵ１０に搭載されたＢＩＯＳは、メモリコントローラ２０を介してメモリ初期化制御装置４０に対してメモリ２１〜２８からＳＰＤデータを読み出して、メモリコントローラ２０を初期化するよう要求する（ステップＳ６０２）。そして、メモリ初期化制御装置４０のメモリ初期化制御部４０２ｂは、メモリ比較制御情報記憶部４０１ａからメモリのメモリ範囲識別情報、すなわちグループ名を読み出す（ステップＳ６０３）。
【００４７】
さらに、ＳＰＤデータ読出部４０２ａは、同一のグループ名のメモリからＳＰＤデータを読み出して（ステップＳ６０４）、メモリ初期化制御部４０２ｂのバッファ１に記憶する（ステップＳ６０５）。なお、ＢＩＯＳから一つのメモリのＳＰＤデータのＸＸ番地を読み出せと命令すると、メモリ初期化制御部４０２ｂは、メモリ比較制御情報に基づいてメモリ２１〜２８のＳＰＤデータを自動的に読み出す。
【００４８】
そして、メモリ初期化制御部４０２ｂは、読み出したＳＰＤデータがグループ内の最初のＳＰＤデータであるか否かを判定する（ステップＳ６０６）。その結果、読み出したＳＰＤデータがグループ内の最初のＳＰＤデータである場合は（ステップＳ６０６肯定）、メモリ初期化制御部４０２ｂは、メモリ初期化制御部４０２ｂのバッファ２に記憶する（ステップＳ６０７）。一方、読み出したＳＰＤデータがグループ内の最初のＳＰＤデータでない場合は（ステップＳ６０６否定）、メモリ初期化制御部４０２ｂは、ステップＳ６０８に進む。
【００４９】
そして、メモリ初期化制御部４０２ｂは、読み出したＳＰＤデータがメモリ比較制御情報のメモリ制御可能データと一致したか否かを判定する（ステップＳ６０８）。その結果、読み出したＳＰＤデータがメモリ比較制御情報のメモリ制御可能データと一致しない場合は（ステップＳ６０８否定）、メモリ初期化制御部４０２ｂは、メモリ比較制御情報の該当するメモリのメモリ動作識別情報に非動作と設定し（ステップＳ６０９）、ステップＳ６１３に進む。
【００５０】
一方、読み出したＳＰＤデータがメモリ比較制御情報のメモリ制御可能データと一致した場合は（ステップＳ６０８肯定）、メモリ初期化制御部４０２ｂは、メモリ比較制御要求を“最も若い番号のスロット位置のメモリのＳＰＤデータに合わせる”に設定する（ステップＳ６１０）。そして、メモリ初期化制御部４０２ｂは、バッファ１とバッファ２のＳＰＤデータが同じであるか否かを判定する（ステップＳ６１１）。その結果、バッファ１とバッファ２のＳＰＤデータが同じでない場合は（ステップＳ６１１否定）、メモリ初期化制御部４０２ｂは、メモリ比較制御情報の該当するメモリのメモリ動作識別情報に非動作と設定し（ステップＳ６０９）、ステップＳ６１３に進む。
【００５１】
一方、バッファ１とバッファ２のＳＰＤデータが同じである場合は（ステップＳ６１１肯定）、メモリ初期化制御部４０２ｂは、メモリ比較制御情報の該当するメモリの図４に示すメモリ動作識別情報に動作と設定する（ステップＳ６１２）。そして、グループ内のメモリからＳＰＤデータの読出しを終了したか否かを判定する（ステップＳ６１３）。その結果、グループ内のメモリからＳＰＤデータの読出しを終了していない場合は（ステップＳ６１３否定）、メモリ初期化制御部４０２ｂは、ステップＳ６０４に戻る。
【００５２】
一方、グループ内のメモリからＳＰＤデータの読出しを終了した場合は（ステップＳ６１３肯定）、メモリ初期化制御部４０２ｂは、さらに、グループ内の少なくとも一つのメモリが動作か否かを判定する（ステップＳ６１４）。その結果、グループ内の少なくとも一つのメモリが動作である場合は、（ステップＳ６１４肯定）、メモリ初期化制御部４０２ｂは、メモリコントローラ２０にメモリのスロット位置とＳＰＤデータを返す（ステップＳ６１５）。一方、グループ内の全てのメモリが非動作である場合は（ステップＳ６１４否定）、メモリ初期化制御部４０２ｂは、メモリコントローラ２０にエラー情報を返す（ステップＳ６１６）。
【００５３】
メモリ初期化制御装置４０は、以上の初期化制御手順を残りのグループのメモリについて実施し、全てのメモリ２１〜２８のＳＰＤデータを読みだして、メモリコントローラ２０を初期化する。このように、メモリ比較制御情報に基づいて全てのメモリのＳＰＤデータを比較制御し、比較制御した結果に基づいてメモリコントローラ２０を初期化することとしたので、メモリ初期化制御装置４０は、ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止することができる。
【００５４】
上述してきたように、本実施例では、メモリ比較制御情報記憶部４０１ａは、メモリ制御データを比較制御する情報であるメモリ比較制御情報を記憶し、ＳＰＤデータ読出部４０２ａは、メモリからメモリ制御データを読み出し、メモリ初期化制御部４０２ｂは、メモリ比較制御情報に基づいてメモリ制御データを比較制御し、比較制御した結果に基づいてメモリコントローラを初期化することとしたので、メモリ初期化制御装置４０は、ＢＩＯＳのメモリ初期化の処理負荷を軽減し、メモリの搭載ミスによるシステム障害を防止することができる。
【００５５】
また、メモリ比較制御情報記憶部４０１ａは、メモリ制御データを一度に読み出すことができるメモリの範囲を識別する情報であるメモリ範囲識別情報と、メモリコントローラが制御することができるメモリ制御データであるメモリ制御可能データと、メモリの動作または非動作を識別するメモリ動作識別情報と、メモリ制御データを比較制御する要求であるメモリ比較制御要求とを有するメモリ比較制御情報を記憶することとしたので、メモリ初期化制御装置４０は、システムの搭載条件を明確にし、メモリの選択の自由度を広げることができる。
【００５６】
また、メモリ比較制御要求は、同一のメモリ範囲識別情報を有する複数のメモリの全てが同一のメモリ制御データを有することを要求し、メモリ初期化制御部４０２ｂは、メモリ比較制御要求に基づいてメモリ制御データを比較制御し、メモリ２１〜２８の全てが同一のメモリ制御データを有する場合は、メモリ制御データによりメモリコントローラ２０を初期化し、メモリ２１〜２８の全てが同一のメモリ制御データを有しない場合は、メモリコントローラ２０を初期化しないこととしたので、メモリ初期化制御装置４０は、システムの搭載条件に適合しないメモリを無効にすることができ、メモリの搭載ミスによりシステムが立ち上がらないという障害を防止することができる。
【００５７】
また、メモリ比較制御要求は、同一のメモリ範囲識別情報を有する複数のメモリがメモリ制御可能データを有することを要求し、メモリ初期化制御部４０２ｂは、メモリ比較制御要求に基づいてメモリ制御データを比較制御し、メモリ２１〜２８のうち少なくとも一つがメモリ制御可能データを有する場合は、メモリ制御可能データとメモリ制御可能データを有するメモリのアドレス情報とによってメモリコントローラ２０を初期化し、メモリ２１〜２８の全てがメモリ制御可能データを有しない場合は、メモリコントローラ２０を初期化しないこととしたので、メモリ初期化制御装置４０は、システムの搭載条件に適合しないメモリを無効にすることができ、メモリの搭載ミスによりシステムが立ち上がらないという障害を防止することができる。
【００５８】
また、メモリ比較制御要求は、メモリ２１〜２８からアドレス情報に基づいてメモリ制御可能データおよびメモリ制御可能データを有するメモリを選択するよう要求することとしたので、メモリ初期化制御装置４０は、システムの搭載条件の範囲内で容易にメモリを選択することができる。
【００５９】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、上記特許請求の範囲に記載した技術的思想の範囲内において種々の異なる実施例にて実施されてもよいものである。
【００６０】
例えば、本実施例では、メモリ比較制御要求が“最も若いスロット位置のＳＰＤデータに合わせる”場合について説明したが、これだけに限定されるものではなく、メモリ比較制御要求が“最も性能の良いＳＰＤデータに合わせる”、または“最も数の多いＳＰＤデータに合わせる”場合について適用できる。
【００６１】
（付記１）メモリに対するデータの入出力を制御する制御データであるメモリ制御データを読み込んで、該メモリを制御するメモリコントローラを初期化するメモリ初期化制御装置であって、
前記メモリ制御データを比較制御する情報であるメモリ比較制御情報を記憶するメモリ比較制御情報記憶手段と、
前記メモリから前記メモリ制御データを読み出すメモリ制御データ読出手段と、
前記メモリ比較制御情報に基づいて前記メモリ制御データを比較制御し、比較制御した結果に基づいて前記メモリコントローラを初期化するメモリ初期化制御手段と、
を備えたことを特徴とするメモリ初期化制御装置。
【００６２】
（付記２）前記メモリ比較制御情報記憶手段は、前記メモリ制御データを一度に読み出すことができるメモリの範囲を識別する情報であるメモリ範囲識別情報と、前記メモリコントローラが制御することができる前記メモリ制御データであるメモリ制御可能データと、前記メモリの動作または非動作を識別するメモリ動作識別情報と、前記メモリ制御データを比較制御する要求であるメモリ比較制御要求とを有するメモリ比較制御情報を記憶することを特徴とする付記１に記載のメモリ初期化制御装置。
【００６３】
（付記３）前記メモリ制御データ読出手段は、複数の前記メモリから前記メモリ制御データを並行して読み出すことを特徴とする付記１に記載のメモリ初期化制御装置。
【００６４】
（付記４）前記メモリ初期化制御手段は、前記メモリ比較制御要求を選択設定することを特徴とする付記１に記載のメモリ初期化制御装置。
【００６５】
（付記５）前記メモリ比較制御要求は、同一の前記メモリ範囲識別情報を有する複数のメモリの全てが同一の前記メモリ制御データを有することを要求し、
前記メモリ初期化制御手段は、前記メモリ比較制御要求に基づいて前記メモリ制御データを比較制御し、
前記複数のメモリの全てが同一の前記メモリ制御データを有する場合は、前記メモリ制御データにより前記メモリコントローラを初期化し、
前記複数のメモリの全てが同一の前記メモリ制御データを有しない場合は、前記メモリコントローラを初期化しないことを特徴とする付記１または２に記載のメモリ初期化制御装置。
【００６６】
（付記６）前記メモリ比較制御要求は、同一の前記メモリ範囲識別情報を有する複数のメモリが前記メモリ制御可能データを有することを要求し、
前記メモリ初期化制御手段は、前記メモリ比較制御要求に基づいて前記メモリ制御データを比較制御し、
前記複数のメモリのうち少なくとも一つが前記メモリ制御可能データを有する場合は、前記メモリ制御可能データと該メモリ制御可能データを有するメモリのアドレス情報とによってメモリコントローラを初期化し、
前記複数のメモリの全てが前記メモリ制御可能データを有しない場合は、前記メモリコントローラを初期化しないことを特徴とする付記１、２、４、５のいずれか一つに記載のメモリ初期化制御装置。
【００６７】
（付記７）前記メモリ比較制御要求は、前記複数のメモリからアドレス情報、性能、多数決のいずれか一つに基づいて前記メモリ制御可能データおよび該メモリ制御可能データを有するメモリを選択するよう要求することを特徴とする付記６に記載のメモリ初期化制御装置。
【００６８】
（付記８）メモリに対するデータの入出力を制御する制御データであるメモリ制御データを読み込んで、該メモリを制御するメモリコントローラを初期化するメモリ初期化制御方法であって、
前記メモリ制御データを比較制御する情報であるメモリ比較制御情報を記憶するメモリ比較制御情報記憶工程と、
前記メモリから前記メモリ制御データを読み出すメモリ制御データ読出工程と、
前記メモリ比較制御情報に基づいて前記メモリ制御データを比較制御し、比較制御した結果に基づいて前記メモリコントローラを初期化するメモリ初期化制御工程と、
を含んだことを特徴とするメモリ初期化制御方法。
【産業上の利用可能性】
【００６９】
以上のように、本発明にかかる初期化制御装置は、データ処理装置に有用であり、特に、コンピュータに適している。
【図面の簡単な説明】
【００７０】
【図１】実施例に係るコンピュータシステムの構成を示す機能ブロック図である。
【図２】図１に示すメモリ比較制御情報記憶部のメモリ範囲識別情報の一例を示す図である。
【図３】図１に示すメモリ比較制御情報記憶部のメモリ制御可能データの一例を示す図である。
【図４】図１に示すメモリ比較制御情報記憶部のメモリ動作識別情報の一例を示す図である。
【図５】図１に示すメモリ比較制御情報記憶部のメモリ比較制御要求の一例を示す図である。
【図６】図１に示すメモリ初期化制御装置のメモリ初期化制御手順を示すフローチャートである。
【符号の説明】
【００７１】
１    コンピュータシステム
１０    ＣＰＵ
２０    メモリコントローラ
２１、２２、２３、２４、２５、２６、２７、２８    メモリ
３０    Ｉ／Ｏコントローラ
４０    メモリ初期化制御装置
４１、４２、４３−１、４３−２、４３−３、４３−４、４４、４５、４６    バス
５０    入出力装置
４０１    記憶部
４０１ａ    メモリ比較制御情報記憶部
４０２    制御部
４０２ａ    ＳＰＤデータ読出部
４０２ｂ    メモリ初期化制御部
【図１】
2006018487.tif 000003
【図２】
2006018487.tif 000004
【図３】
2006018487.tif 000005
【図４】
2006018487.tif 000006
【図５】
2006018487.tif 000007
【図６】
2006018487.tif 000008