(57)【要約】【課題】  複数のメモリスロットチャネルを有するコンピュータシステムにおいて、インターリーブドモード及びアシンメトリックモードのメモリアクセスモードを自由にユーザが設定可能なコンピュータシステム及びコンピュータシステムの初期設定方法を提供する。【解決手段】  ＲＩＯＳは、メモリスロットチャネルにそれぞれ挿入された前記メモリスロットが同一機種か異なる機種かどうか判断し、同一機種の場合には、ＲＴＣ１４の設定にしたがって、メモリスロットをインターリーブドモード及びアシンメトリックモードのいずれか一方で動作をさせるようにメモリコントローラ１２を設定し、異なる機種の場合にはアシンメトリックモードで動作をさせるようにメモリコントローラを設定することを特徴とするコンピュータシステム。【選択図】  図３
2006018337.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つのメモリスロットチャネルと、
前記メモリスロットチャネルに挿入されたメモリスロットにデータアクセスするメモリコントローラと、
前記メモリスロットチャネルに挿入された前記メモリスロットをインターリーブドモード及びアシンメトリックモードのいずれか一方で動作させる設定を格納するＲＴＣと、
前記ＲＴＣの設定により前記メモリコントローラの設定を行うＢＩＯＳとを具備し、
前記ＲＩＯＳは、前記メモリスロットチャネルにそれぞれ挿入された前記メモリスロットが同一機種か異なる機種かどうか判断し、同一機種の場合には、前記ＲＴＣの設定にしたがって、前記メモリスロットをインターリーブドモード及びアシンメトリックモードのいずれか一方で動作をさせるように前記メモリコントローラを設定し、異なる機種の場合にはアシンメトリックモードで動作をさせるように前記メモリコントローラを設定することを特徴とするコンピュータシステム。
【請求項２】
前記ＲＴＣのインターリーブドモード及びアシンメトリックモードのいずれか一方で動作させる設定は、ユーザがセットアッププログラムによって行うことを特徴とする請求項１記載のコンピュータシステム。
【請求項３】
前記ユーザが行う設定は、ハイパフォーマンスモードがインターリーブドモードで、省エネモードがアシンメトリックモードであることを特徴とする請求項２記載のコンピュータシステム。
【請求項４】
少なくとも２つのメモリスロットチャネルと、
前記メモリスロットチャネルに挿入されたメモリスロットにデータアクセスするメモリコントローラと、
前記メモリスロットチャネルに挿入された前記メモリスロットをインターリーブドモード及びアシンメトリックモードのいずれか一方で動作させる設定を格納するＲＴＣと、
前記ＲＴＣの設定により前記メモリコントローラを制御するＣＰＵと、
初期設定を行うＢＩＯＳとを具備するコンピュータシステムの初期設定方法において、
ハイパフォーマンスモードか低消費電力モードかを前記ＲＴＣに格納するステップと、
前記ＢＩＯＳが、前記ＲＴＣの設定にしたがって、ハイパフォーマンスモードの場合前記メモリコントローラをインターリーブドモードに設定し、低消費電力モードの場合前記メモリコントローラをアシンメトリックモードに設定するステップとを具備することを特徴とするコンピュータシステムの初期設定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステム及びコンピュータシステムの初期設定方法に関する。
【背景技術】
【０００２】
コンピュータは急速に発展しており、特にＣＰＵの処理能力は急速に高性能化し、複数のメモリモジュールを有する大容量システムに関する新技術の開発が進められている。たとえば、ＣＰＵに関連したバスの伝送幅はＩ／Ｏピンの制約から８ビット、１６ビット、３２ビット、６４ビットへと変わり、メインメモリのアクセスは、データ幅を現在の６４ビットから１２８ビットや２５６ビットに拡張させるように要求されている。
【０００３】
このためにメモリコントローラは、６４ビットのホストバスについてインターリーブ方式を導入し、６４ビットの２倍の１２８ビットや４倍の２５６ビットに拡張してメインメモリのデータにアクセスしている。
【０００４】
また、２つのメモリブロックのバンクにメモリモジュールを挿入して容量を拡張して用いるコンピュータシステムにおいて、２つのメモリブロックに異なる機種のメモリモジュールが混在されているか同じ機種のメモリモジュールが挿入されているか判断して、常に正常なアクセスを行うことを可能にしたコンピュータシステムがある（特許文献１参照）。
【０００５】
このコンピュータシステムは、システムリセットまたは初期化の際にメモリブロックの各バンクに設置されたメモリモジュールの機種を検知し、これらメモリモジュールが同一機種であればインターリーブ方式でアクセスし、異なる機種があればノン−インターリーブ方式でアクセスするように制御したものである。
【特許文献１】特開平１０−９１５１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記した異なる機種のメモリモジュールが混在していても制御可能なコンピュータ機種では、同一機種のメモリモジュールが設置されていた場合インターリーブ方式で制御を行い、異なる機種のメモリモジュールが混在していた場合はノン−インターリーブ方式で制御を行うという一義的な設定であるので、ユーザの希望によってインターリーブ方式とそうでないモードを選択できないという問題がある。
【０００７】
そこで本発明は、上記問題に鑑みてなされたもので、複数のメモリスロットチャネルを有するコンピュータシステムにおいて、それぞれに同一の機種のメモリスロットが挿入されていた場合に、インターリーブドモード及びアシンメトリックモードのメモリアクセスモードを自由にユーザが設定可能なコンピュータシステム及びコンピュータシステムの初期設定方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明は、  少なくとも２つのメモリスロットチャネルと、
前記メモリスロットチャネルに挿入されたメモリスロットにデータアクセスするメモリコントローラと、
前記メモリスロットチャネルに挿入された前記メモリスロットをインターリーブドモード及びアシンメトリックモードのいずれか一方で動作させる設定を格納するＲＴＣと、
前記ＲＴＣの設定により前記メモリコントローラの設定を行うＢＩＯＳとを具備し、
前記ＲＩＯＳは、前記メモリスロットチャネルにそれぞれ挿入された前記メモリスロットが同一機種か異なる機種かどうか判断し、同一機種の場合には、前記ＲＴＣの設定にしたがって、前記メモリスロットをインターリーブドモード及びアシンメトリックモードのいずれか一方で動作をさせるように前記メモリコントローラを設定し、異なる機種の場合にはアシンメトリックモードで動作をさせるように前記メモリコントローラを設定することを特徴とするコンピュータシステムを提供する。
【０００９】
このとき、前記ＲＴＣのインターリーブドモード及びアシンメトリックモードのいずれか一方で動作させる設定は、ユーザがセットアッププログラムによって行うことを特徴とすることができる。
【００１０】
また、前記ユーザが行う設定は、ハイパフォーマンスモードがインターリーブドモードで、省エネモードがアシンメトリックモードであることが好ましい。
【００１１】
また、本発明は、  少なくとも２つのメモリスロットチャネルと、
前記メモリスロットチャネルに挿入されたメモリスロットにデータアクセスするメモリコントローラと、
前記メモリスロットチャネルに挿入された前記メモリスロットをインターリーブドモード及びアシンメトリックモードのいずれか一方で動作させる設定を格納するＲＴＣと、
前記ＲＴＣの設定により前記メモリコントローラを制御するＣＰＵと、
初期設定を行うＢＩＯＳとを具備するコンピュータシステムの初期設定方法において、
ハイパフォーマンスモードか低消費電力モードかを前記ＲＴＣに格納するステップと、
前記ＢＩＯＳが、前記ＲＴＣの設定にしたがって、ハイパフォーマンスモードの場合前記メモリコントローラをインターリーブドモードに設定し、低消費電力モードの場合前記メモリコントローラをアシンメトリックモードに設定するステップとを具備することを特徴とするコンピュータシステムの初期設定方法を提供する
【発明の効果】
【００１２】
本発明によると、ＣＰＵはＢＩＯＳを実行しＲＴＣに格納されたインターリーブドモード及びアシンメトリックモードのいずれか一方のメモリアクセスモードの設定にしたがって、メモリコントローラを制御する。例えばユーザがハイパフォーマンスであるが消費電力が高いインターリーブドモード（ハイパフォーマンスモード）或いはローパフォーマンスであるが消費電力が低いアシンメトリックモード（低消費電力モード）をセットアッププログラム等によって設定することで、ハイパフォーマンスを優先したり低消費電力を優先したりといった使用目的に応じたコンピュータシステムを設定することが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明を実施するための最良の形態について図面を用いて詳細に説明する。なお、本発明は、以下の実施形態に限定されるものではなく、種々選択して用いることができる。
【００１４】
先ず、図１を用いて本発明に使用するインターリーブドモードについて説明する。図１はインターリーブドモードを使用してメモリスロットにアクセスする概念を示したブロック図である。
【００１５】
図１に示すように、インターリーブドモードでは、ＣＰＵ１１の制御にしたがってメモリコントローラ１２は、６４ビットのデータ幅で、メモリＡ及びメモリＢに交互にアクセスすることによって、アドレスから見ると１２８ビット幅でアクセスしている。このようなインターリーブドモードでは、１２８ビット幅でアクセス可能となりパフォーマンスを２倍にするというメリットがあるが、メモリＡ、メモリＢに同時にアクセスをすることとなり、クロックも高速化することから消費電力が高くなるというデメリットもある。
【００１６】
次に、図２を用いて本発明に使用するアシンメトリモードについて説明する。図２はアシンメトリモードを使用してメモリスロットにアクセスする概念を示したブロック図である。
【００１７】
図２に示すように、アシンメトリモードは、ＣＰＵ１１の制御にしたがってメモリコントローラ１２は、６４ビット幅のデータ幅でメモリＡにアクセスし、続いてメモリＢにアクセスしている。このようなアシンメトリモードでは、異なる機種たとえば異なる要領のメモリＡ、メモリＢにおいてもアクセス可能り、消費電力も従来と変わらないというメリットがあるが、処理能力は向上しない。
【００１８】
次に、図３を用いて本発明のコンピュータシステムについて説明する。図３は本発明のコンピュータシステムの概念を示したブロック図である。
【００１９】
図３に示すように、本発明のコンピュータシステムは、ＣＰＵ１１と、メモリコントローラ１２と、ＢＩＯＳ１３と、ＲＴＣ１４とがバスラインに接続され互いにデータのやり取りを行うことを可能としている。メモリコントローラ１２には、メモリスロットチャネルＡ及びメモリスロットチャネルＢが接続されている。
【００２０】
このように接続されているコンピュータシステムにおいて、ＣＰＵ１１はＲＴＣ１４に格納されているメモリスロットルの動作設定であるハイパフォーマンスモード（インターリブドモード）あるいは低消費電力モード（アシンメトリモード）のフラッグを検知して、メモリコントローラ１２の制御を決定する。
【００２１】
ユーザは、あらかじめセットアップの際に、ＢＯＩＳ１３にてハイパフォーマンスモード（インターリーブドモード）か低消費電力モード（アシンメトリモード）のいずれかを設定する。ＢＩＯＳ１３は、このユーザの設定内容をＲＴＣ１４に格納する。こうしてセットアップ時にコンピュータシステムの設定をユーザの意思によって自由に選択可能となる。
【００２２】
次に、図４に本発明のコンピュータシステムの初期設定方法を説明するためのフローチャートを示す。以下、図３及び図４を用いて本発明のコンピュータシステムの初期設定方法について説明する。
【００２３】
先ず、このコンピュータシステムの電源を入れると（ステップＳ１）、ＣＰＵ１１は、ＢＩＯＳ１３に書かれているプログラムを実行する。次に、メモリ初期化処理（ステップＳ２）が行われ、ＢＩＯＳ１３は、メモリスロットチャネルＡ及びメモリスロットチャネルＢにメモリスロットが挿入されているかどうか判断する（ステップＳ３）。
【００２４】
ステップＳ３にて、メモリスロットチャネルＡ及びメモリスロットチャネルＢのいずれか一方にのみメモリスロットが挿入されている場合（ＮＯ）、ＢＩＯＳ１３は、メモリコントローラ１２をシングルチャネルモードに設定する（ステップＳ１０）。その後メモリ初期化処理を終了させ（ステップＳ７）、ＯＳをリブートさせる（ステップＳ８）。
【００２５】
このシングルチャネルモードとは、メモリスロットルを通常の６４ビット幅でアクセスするモードである。
【００２６】
ステップ３にて、メモリスロットチャネルＡ及びメモリスロットチャネルＢの両方にメモリが接続されている場合（ＹＥＳ）、ＢＩＯＳ１３は、メモリスロットチャネルＡ及びメモリスロットチャネルＢに挿入されたメモリスロットのメモリサイズが一致しているかどうかを確認する（ステップＳ４）。
【００２７】
ステップＳ４にて、メモリスロットチャネルＡ及びメモリスロットチャネルＢに挿入されたメモリスロットのメモリサイズが異なる場合（ＮＯ）、ＢＩＯＳ１３はメモリコントローラ１２をデュアルチャネルのアシンメトリックモードに設定する（ステップＳ９）。その後メモリ初期化処理を終了させ（ステップＳ７）、ＯＳをリブートさせる（ステップＳ８）。
【００２８】
このデュアルチャネルアシンメトリックモードとは、複数のメモリスロットを６４ビット幅でアクセス可能とするモードである。
【００２９】
ステップＳ４にて、メモリスロットチャネルＡ及びメモリスロットチャネルＢに挿入されたメモリスロットのメモリサイズが一致する場合（ＹＥＳ）、ＢＩＯＳ１３は、ＲＴＣ１４に格納されているフラグ情報がハイパフォーマンスモードかどうか確認する（ステップＳ５）。
【００３０】
ステップＳ５にて、ＲＴＣ１４に格納されているフラグ情報がハイパフォーマンスモードに設定されていない場合（ＮＯ）、ＢＩＯＳ１３はメモリコントローラ１２をデュアルチャネルのアシンメトリックモードに設定する（ステップ９）。その後メモリ初期化処理を終了させ（ステップ７Ｓ）、ＯＳをリブートさせる（ステップＳ８）。
【００３１】
ステップＳ５にて、ＲＴＣ１４に格納されているフラグ情報がハイパフォーマンスモードに設定されている場合（ＹＥＳ）、ＢＩＯＳ１３はメモリコントローラ１２をデュアルチャネルのインターリブドモードに設定する（ステップＳ６）。その後メモリ初期化処理を終了させ（ステップＳ７）、ＯＳをリブートさせる（ステップＳ８）。
【００３２】
このように  本発明によると、ＣＰＵはＢＩＯＳを実行しＲＴＣに格納されたインターリーブドモード及びアシンメトリックモードのいずれか一方のメモリアクセスモードの設定にしたがって、メモリコントローラを制御する。例えばユーザがハイパフォーマンスであるが消費電力が高いインターリーブドモード（ハイパフォーマンスモード）或いはローパフォーマンスであるが消費電力が低いアシンメトリックモード（低消費電力モード）をセットアッププログラム等によって設定することで、ハイパフォーマンスを優先したり低消費電力を優先したりといった使用目的に応じたコンピュータシステムを設定することが可能となる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施形態に係わるコンピュータシステムに用いるインターリーブドモードを説明するためのブロック図。
【図２】本発明の実施形態に係わるコンピュータシステムに用いるアシンメトリックモードを説明するためのブロック図。
【図３】本発明の実施形態に係わるコンピュータシステムのブロック図。
【図４】本発明の実施形態に係わるコンピュータシステムの初期設定方法を説明するためのフローチャート。
【符号の説明】
【００３４】
１１・・・ＣＰＵ
１２・・・メモリコントローラ
１３・・・ＢＩＯＳ
１４・・・ＲＴＣ
【図１】
2006018337.tif 000003
【図２】
2006018337.tif 000004
【図３】
2006018337.tif 000005
【図４】
2006018337.tif 000006