(57)【特許請求の範囲】
【請求項１】
記憶装置を独立に動作可能ないくつかのメモリバンクに分割し、前記分割されたメモリバンクのそれぞれにバスを接続して同時アクセス可能としたインタリーブ機能と、前記メモリバンク内を、システムからの切り離し及び組み込みが可能な複数のメモリブロックに分割して制御可能な構成を有する記憶装置において、
中央処理装置がシステムバスに送出する絶対アドレス空間を、一定の容量ごとに分割してメモリアクセスの可否を管理し、前記分割された絶対アドレス空間のメモリ領域の一つの大きさを単位記憶容量とし、この単位記憶容量と等容量になる複数のメモリブロックの集合体でメモリユニットを構成し、前記のメモリユニットを構成するメモリブロックの要素数を、インタリーブの最大ウェイ数と等しい数とし、インタリーブを形成する各メモリバンクの中から、インタリーブの最大ウェイ数を現在動作中のウェイ数で除した個数のメモリブロックを抽出して、前記メモリユニットを構成することによって、インタリーブウェイ数の縮退の前後でオペレーテイングシステム見えの単位記憶容量の大きさを保証した上で、オペレーティングシステムが、前記の分割された絶対アドレス空間の一領域の使用の有無を制御する際に、前記メモリユニットを前記の分割されたメモリ領域に対応付けることで、絶対アドレス空間に対応した物理的メモリセル（メモリチップ）の構成を変更することを特徴とする記憶装置。
【請求項２】
前記複数のメモリユニットを、インタリーブの最大ウェイ数と等しい数のメモリユニットごとに予め対を設定し、前記メモリバンクの障害等で、故障したメモリバンクをシステムから切り離してシステムを再試行する場合に、前記のメモリユニット対に属していたメモリブロックのうち、健全なメモリバンクに属していたメモリブロックを使用して新たなメモリユニットを構成し、前記メモリユニット対のうちの何れかのメモリユニットに、障害発生前のメモリブロックを引き継ぐことを特徴とする請求項１に記載の記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記憶装置、特に汎用コンピュータ等の主記憶装置等に好適な高速記憶装置に関する。
【０００２】
【従来の技術】
汎用コンピュータにあっては、高速化及び大容量化が進み、それに使用される主記憶装置等の記憶装置も高速化及び大容量化の要求が益々増加している。ここで、主記憶装置（メインメモリ）は、汎用コンピュータ内に配置され、データやプログラムを格納（記憶又は保存）する為に使用される記憶装置である。また、主記憶制御装置は、演算処理を行う中央処理装置（ＣＰＵ）や入出力装置（Ｉ／Ｏデバイス）からの主記憶アクセスを制御する。
【０００３】
主記憶装置等の記憶装置は、複数の独立に動作可能なバンクに分割して、番地付けを各バンクに跨って行い、各バンクを並行に動作させることにより、記憶装置に対する平均的なアクセスタイムを短縮し、高速化することをインタリーブ又はアドレス・インタリーブという。
【０００４】
上述の目的で、インタリーブ機構を具えた記憶装置は周知である。例えば特開昭５５−３２１８８号公報や特開平１−１５６８５２号公報等に開示されている。即ち、前者には、中央処理装置や入出力装置等の処理装置からのメモリ絶対アドレスをメモリモジュール変換機構及びメモリ実物理アドレス合成器で受けてメモリバンク（ブロック）を自由に再構成する機能を具えたメモリモジュール再構成制御装置を開示する。また、後者は、メモリバンク間で複数ウェイでインタリーブ制御が行えるようにしたインタリーブ制御回路と、このインタリーブ制御回路の出力を受けて使用するメモリバンクを指定するバンク制御部を具えるインタリーブ制御方式を開示する。
【０００５】
【発明が解決しようとする課題】
しかし、従来の記憶装置によると、障害発生の前後でインタリーブウェイ数を縮退するようなメモリ再構成を行うと、単位記憶容量が変化するという問題があった。また、インタリーブ制御のような装置固有のハードウェアをＯＳ（オペレーティング システム）が直接管理する必要があるという問題があった。
【０００６】
そこで、本発明の目的は、障害発生の前後で単位記憶容量を保証し、しかも障害発生したメモリバンクを切り離す形でメモリを再構成することによって、システムダウンとなる場合を救済することが可能な記憶装置を提供することにある。
【０００７】
【課題を解決するための手段】
前述の課題を解決するために、本発明による記憶装置は、次のような特徴的な構成を備えている。
【０００８】
（１）記憶装置を独立に動作可能ないくつかのメモリバンクに分割し、前記分割されたメモリバンクのそれぞれにバスを接続して同時アクセス可能としたインタリーブ機能と、前記メモリバンク内を、システムからの切り離し及び組み込みが可能な複数のメモリブロックに分割して制御可能な構成を有する記憶装置において、
中央処理装置がシステムバスに送出する絶対アドレス空間を、一定の容量ごとに分割してメモリアクセスの可否を管理し、前記分割された絶対アドレス空間のメモリ領域の一つの大きさを単位記憶容量とし、この単位記憶容量と等容量になる複数のメモリブロックの集合体でメモリユニットを構成し、前記のメモリユニットを構成するメモリブロックの要素数を、インタリーブの最大ウェイ数と等しい数とし、インタリーブを形成する各メモリバンクの中から、インタリーブの最大ウェイ数を現在動作中のウェイ数で除した個数のメモリブロックを抽出して、前記メモリユニットを構成することによって、インタリーブウェイ数の縮退の前後でオペレーテイングシステム見えの単位記憶容量の大きさを保証した上で、オペレーティングシステムが、前記の分割された絶対アドレス空間の一領域の使用の有無を制御する際に、前記メモリユニットを前記の分割されたメモリ領域に対応付けることで、絶対アドレス空間に対応した物理的メモリセル（メモリチップ）の構成を変更する記憶装置。
【０００９】
（２）前記複数のメモリユニットを、インタリーブの最大ウェイ数と等しい数のメモリユニットごとに予め対を設定し、前記メモリバンクの障害等で、故障したメモリバンクをシステムから切り離してシステムを再試行する場合に、前記のメモリユニット対に属していたメモリブロックのうち、健全なメモリバンクに属していたメモリブロックを使用して新たなメモリユニットを構成し、前記メモリユニット対のうちの何れかのメモリユニットに、障害発生前のメモリブロックを引き継ぐ（１）の記憶装置。
【００１２】
【発明の実施の形態】
以下、図面を参照して、本発明による記憶装置の好適実施形態を詳細に説明する。
【００１３】
先ず、図１を参照して説明する。図１は、本発明の記憶装置の好適一実施形態例の構成ブロック図である。図１の記憶装置は、処理装置からのメモリ絶対アドレスレジスタ１０、第１アドレス変換テーブル１１、第２アドレス変換テ−ブル１２、メモリ実物理アドレス合成器１３、メモリバンク３０〜３３、バンクデコーダ１４及びブロックアドレス及びブロック内アドレス切換ゲート１５〜１８から構成される。
【００１４】
第１アドレス変換テーブル１１は、ＯＳが参照し絶対アドレス領域を論理的な単位記憶容量、即ちメモリユニット（以下ＭＵという）毎に分割して構成制御できるようにする。第１アドレス変換テーブル１１からＭＵ選択線２０を介して送られるＭＵ番号から、第２アドレス変換テーブル１２は各インタリーブモード毎に対応するメモリバンクとメモリブロックを指定する。メモリ絶対アドレスレジスタ１０は、ブロックアドレス線２１、ブロック内アドレス線２２及びバンクアドレス線２３を有する。ブロックアドレス線２１は、メモリ絶対アドレスを構成するメモリブロックアドレスを送る。ブロック内アドレス線２２は、同アドレスを構成するメモリブロック内アドレスを送る。また、バンクアドレス線２３は、同アドレスを構成するバンクアドレスを送る。
【００１５】
一方、第２アドレス変換テーブル１２は、変換後の実メモリブロックアドレスを送る実ブロックアドレス線２４と、変換後の実バンクアドレスを送る実バンクアドレス線２５を有する。バンクデコーダ１４及びブロックアドレス及びブロック内アドレス切換ゲート１５〜１８は、制御対象となるメモリバンク３０〜３３を選択する。
【００１６】
次に、図２は、本発明の各メモリバンク間のインタリーブ方法とアドレッシング説明図である。図示の例にあっては、４つのメモリバンク間で１ウェイ、２ウェイ、４ウェイのインタリーブを形成し、単位記憶容量（ＭＵ容量）をバンク容量の１／２とした装置を示す。
【００１７】
ＭＭ０〜ＭＭ７は、物理的なメモリの増設単位、即ちメモリモジュール（以下ＭＭという）を表し、１つのＭＭは独立に制御可能な最大インタリーブ数分（この特定例にあっては４つ）のメモリブロック、即ちバンクＡ乃至バンクＤに分割されている。メモリブロックは、メモリ再構成の最小単位となる。図２では、各ウェイ数で、インタリーブを形成している箇所が分かり易いように、ＭＵ０とＭＵ７を構成するメモリブロックを他のメモリブロックと区別して表している。
【００１８】
図２（ａ）は、１ウェイインタリーブ、即ちバンク間でのインタリーブを行わない時のアドレッシングを示す。１ウェイインタリーブ時は、論理的なメモリ構成要素を表すメモリユニットＭＵ０〜ＭＵ７と、メモリモジュールＭＭ０〜ＭＭ７は等しくなる。また、アドレッシングは、ＭＭ０からＭＭ７方向に１番地ずつ連続したアドレスとなる。
【００１９】
次に、図２（ｂ）は、２ウェイインタリーブ時のアドレッシングを示し、バンクＡ・Ｂ及びバンクＣ・Ｄ間でインタリーブを形成する。本発明は、インタリーブを形成するメモリモジュール（ＭＭ）同士で内蔵するメモリブロックを共有し、新たなＭＵを構成することを特徴とする。図２（ｂ）の場合、ＭＭ０を例に挙げると、ＭＭ０と対になるＭＭ２との間で下位側から１番目と３番目の計４つのメモリブロックでＭＵ０を構成し、２番目と４番目の計４つのメモリブロックでＭＵ２を構成する。また、アドレッシングは、ＭＭ０のブロック０→ＭＭ２のブロック０→ＭＭ０のブロック２→ＭＭ２のブロック２の順番となる。ＭＵ１〜ＭＵ７もＭＵ０に倣った扱いとなる。
【００２０】
図２（ｃ）は、４ウェイインタリーブ時のアドレッシングを示す。４つのバンク間でインタリーブを形成する。２ウェイインタリーブ時と同様に、対応するメモリモジュール同士で資源を共有し、新たなＭＵを構成する。ＭＭ０を例にとると、ＭＭ０と対になるＭＭ２、ＭＭ４、ＭＭ６の最下位の計４つのメモリブロックでＭＵ０を構成し、以下同様に、ＭＵ２，ＭＵ４、ＭＵ６を構成する。また、アドレッシングは、ＭＭ０のブロック０→ＭＭ２のブロック０→ＭＭ４のブロック０→ＭＭ６のブロック０の順番となる。ＭＵ１、ＭＵ３、ＭＵ５、ＭＵ７もこれに倣った扱いとなる。
【００２１】
通常、いずれの記憶装置でもメモリ故障が発生しておらず、メモリバンク内のブロックが切り離されていない場合、或いはメモリが故障してもメモリ再構成を行わず放置できる場合には、４ウェイインタリーブモードで運用される。
【００２２】
図３は、図１の記憶装置の第１アドレス変換テーブル１１と、第２アドレス変換テーブル１２の構成例を示す。第１アドレス変換テーブル１１は、絶対アドレス空間を全ＭＵ数で除したアドレス領域毎の使用の有無を示し、テーブルを構成するエントリは、絶対アドレス領域の有効ビットとその絶対アドレス領域に対応するメモリユニット（ＭＵ）指定フィールドから構成される。
【００２３】
第１アドレス変換テーブル１１に設定される値はＯＳが参照し、ハードウェアとＯＳの直接的なインタフェースとなる。このテーブル１１は、インタリーブのウェイ数がバンク故障等によってハードウェア的に縮退された場合でも、メモリ再構成の前後で（故障した部分のバンクに対応するＭＵを除いて）設定内容を保証する。これは、第１アドレス変換テーブル１１が、ハードウェア的には論理的なメモリ構成であるＭＵを表していても、ＯＳにはインタリーブがない状態（１ウェイインタリーブ時）の物理的なメモリ増設単位としか見えないことを意味している。
【００２４】
ただし、故障発生後のメモリ状態は、見かけ上連続した絶対アドレス空間となるようにメモリを再構成する。その為に、実際には歯抜けになるような設定内容の保存は行わず、歯抜けを詰めるような形で障害発生前の設定要素だけを引き継ぐ。
【００２５】
第２アドレス変換テーブル１２は、第１アドレス変換テーブル１１の各エントリに対応して、ＭＵ数×バンク数分のエントリに分割されていて、各エントリはそのエントリが表すメモリバンク及びメモリブロックの有効ビットとメモリブロック指定フィールドとメモリバンク指定フィールドから構成される。
【００２６】
このテーブル１２は、バンク数Ｂ毎に組を成し、Ｂ×ａ＋ｂ番目（ａは０≦最大ＭＵ番号、ｂは０≦バンク数）のエントリは、対応する第１アドレス変換テーブル１１のエントリが表す絶対アドレス領域（ＭＵ容量×ａ番地から（ＭＵ容量×（ａ＋１））−１番地のアドレス領域）の先頭をオフセットとしてＢ×ｎ＋ｂ番地（ｎは０≦ＭＵ容量÷バンク数）分のデータを記憶するメモリバンクとメモリブロックを表す。第２アドレス変換テーブル１２の設定要素は、その時のインタリーブモードと第１アドレス変換テーブル１１の設定要素によって一意に決まる。
【００２７】
次に、図４を参照して、第２アドレス変換テーブル１２の生成方法を説明する。第１アドレス変換テーブル１１のメモリユニット指定フィールドは、記憶装置番号（２ビット）とメモリモジュール番号（１ビット）の合成として扱うことができる。
【００２８】
図４（ａ）は、１ウェイインタリーブ時における第２アドレス変換テーブル１２の生成方法を示す。１ウェイインタリーブ時は、ＭＵ番号＝ＭＭ番号であるから、この時の第２アドレス変換テーブル１２のメモリブロック指定フィールドは、上述したメモリモジュール番号（１ビット）とメモリブロック番号（２ビット）の合成で表すことができる。また、メモリバンク指定フィールドは、バンクを跨ってインタリーブを形成していないので、上述の記憶装置番号（２ビット）で表すことができる。
【００２９】
図４（ｂ）は、２ウェイインタリーブ時における第２アドレス変換テーブル１２の生成方法を示す。図４（ａ）の１ウェイインタリーブ時と比較すると、メモリブロック番号の下１ビットをメモリバンク番号の下１ビットと差し替えることにより実現できる。
【００３０】
図４（ｃ）は、４ウェイインタリーブ時における第2アドレス変換テーブル１２の生成方法を示す。図４（ａ）の1ウェイインタリーブ時と比較すると、メモリブロック番号の下２ビットをメモリバンク番号の下２ビットと差し替えることにより実現できる。
【００３１】
次に、図５及び図６は、本発明の記憶装置の具体的インタリーブ縮退動作を説明する図である。図５は、４ウェイインタリーブから２ウェイインタリーブへのインタリーブ縮退動作例を示す。図６は本発明の記憶装置の４ウェイインタリーブから１ウェイインタリーブへのインタリーブ縮退動作例を示す。いずれの場合もＯＳによる構成制御によってＭＵ２が切り離された状態から、バンクＣ全体の障害によってＭＭ４とＭＭ５とを切り離す必要が生じたケースを示す。バンクＣ全体に障害が生じることは、実際に起こり得ることであり、バンクＣの共通制御部の故障がこれに対応する。
【００３２】
図５及び図６において第１アドレス変換テーブル１１及び第２アドレス変換テーブル１２の有効ビットが０になっているエントリは、切り離されたＭＵを表わす。また、黒塗りの部分は、故障したバンクＭに関わるメモリブロックであり、４ウェイインタリーブを固定的に形成する装置では、この部分が全てのＭＵに含まれるので、このままではシステムダウンとなる。
【００３３】
図５は、メモリアクセス性能を重視する場合のインタリーブ縮退方法で、４ウェイインタリーブから２ウェイインタリーブへインタリーブを縮退する。図４（ｂ）のテーブル生成規則に従い、第２アドレス変換テーブル１２の要素を振り直して、故障したバンクＣのＭＭ４とＭＭ５のメモリブロックは、ＭＵ４〜ＭＵ７の要素に変換される。この状態からＯＳの見かけ上連続した絶対アドレス空間のとなるようにメモリを再構成すること、絶対アドレス空間の最下位アドレス側から３ＭＵ分(ＭＵ０,ＭＵ１,ＭＵ３)が割り振られた形となる。
【００３４】
図６は、メモリ容量を重視する場合のインタリーブ縮退方法であり４ウェイインタリーブから１ウェイインタリーブへ縮退する。図４(c)のテーブル生成規則に従い、第２アドレス変換テーブル１２の要素を振り直すと、故障したバンクＣのＭＭ４及びＭＭ５のメモリブロックは、ＭＵ４とＭＵ５の要素に変換される。この状態から、ＯＳの見かけ上連続した絶対アドレス空間となるようにメモリを再構成して、絶対アドレス空間の最下位アドレス側から５ＭＵ分（ＭＵ０，ＮＵ１，ＭＵ３，ＭＵ６，ＭＵ７）が割り振られた形となる。
【００３５】
図５及び図６のメモリ再構成法ともに、ＯＳが元々切り離していたＭＵ２と、ＯＳ見えにはＭＭ４とＭＭ５にしか見えないＭＵ４とＭＵ５の要素がメモリ再構成後の第１アドレス変換テーブル１１から取り除かれている。
【００３６】
以上、本発明の記憶装置の好適実施形態を例を詳述したが、本発明はこの特定実施形態例のみに限定されるべきでなく、用途に応じて種々の変形変更が可能であることが容易に理解できよう。
【００３７】
【発明の効果】
上述の説明から理解される如く、本発明の記憶装置によると、障害発生の前後でインタリーブウェイ数を縮退するようなメモリ再構成を行っても単位記憶容量は不変である。またインタリーブ制御をＯＳは行う必要がないという実用上の顕著な効果を有する。
【図面の簡単な説明】
【図１】本発明の記憶装置の好適実施形態の構成ブロック図である。
【図２】図１に示す記憶装置の各メモリバンク間のインタリーブ方法とアドレッシングを示す図である。
【図３】図１に示す第１及び第２アドレス変換テーブルの構成を示す図である。
【図４】図１に示す第２アドレス変換テーブルの生成方法を示す図である。
【図５】本発明の記憶装置の４ウェイインタリーブから２ウェイインタリーブへのインタリーブ縮退動作を示す図である。
【図６】本発明の記憶装置の４ウェイインタリーブから１ウェイインタリーブへのインタリーブ縮退動作を示す図である。
【符号の説明】
１０         メモリ絶対アドレスレジスタ
１１         第１アドレス変換テーブル
１２         第２アドレス変換テーブル
１３         メモリ実物理アドレス
１４         バンクデコーダ
１５〜１８   アドレス切換ゲート
３０〜３３   メモリバンク
【図１】
0003645709.tif 000002
【図２】
0003645709.tif 000003
【図３】
0003645709.tif 000004
【図４】
0003645709.tif 000005
【図５】
0003645709.tif 000006
【図６】
0003645709.tif 000007