JPH0454260B2 - - Google Patents
Info
- Publication number
- JPH0454260B2 JPH0454260B2 JP58232645A JP23264583A JPH0454260B2 JP H0454260 B2 JPH0454260 B2 JP H0454260B2 JP 58232645 A JP58232645 A JP 58232645A JP 23264583 A JP23264583 A JP 23264583A JP H0454260 B2 JPH0454260 B2 JP H0454260B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory
- storage area
- backup
- bus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1435—Saving, restoring, recovering or retrying at system level using file system or storage system metadata
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
- G06F12/0848—Partitioned cache, e.g. separate instruction and operand caches
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/74—Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Library & Information Science (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Hardware Redundancy (AREA)
Description
発明の技術分野
本発明は、一般に故障許容形コンピユータに関
し、特に故障許容形コンピユータのためのメモリ
ー・バツク・アツプ・システムに関する。 発明の背景 多くのコンピユータ・システムが「故障許容性
を有する」ように構成されている。典型的には、
これらのシステムは一回以上の一時的もしくは恒
久的な回路の故障を経験しても、データの脱落も
なくあるいはデータに対して重大なエラーを生じ
ることもなく機能し続けることができる。このよ
うなシステムは、一般には何回の故障が「許容」
され得るか、また故障の取扱いがどれだけ容易で
あるかの観点において相違がある。 完全に故障許容性を持たせるためには、コンピ
ユータはその主記憶装置の1つ以上の部分を不作
動状態にする故障に耐えることができなければな
らない。このような状態においは、データの脱落
もしくは破壊を避けるため、最初の故障によつて
使用不能状態になり得ない別個の記憶場所におい
て使用可能なデータの第2の即ちバツク・アツ
プ・コピーを有することが必要である。従つて、
故障許容形システムにおいては、少なくとも2つ
の主記憶装置を有すること、および両方の記憶装
置内で同時にシステム・データのコピーを保持す
ることが一般的である。 しかし、2つの個々のメモリー内にデータの複
写コピーを保持することは、各データの記憶操作
が2回行なわれなければならず、またこのような
操作が正常の処理操作を同時に行なうことができ
ない処理要素によつて通常監視されているため
に、コンピユータの演算速度における重大な低下
を生じることになる。 データの複写コピーの保持と関連する時間的な
損失を少なくするために、ある従来技術の故障許
容形システムは正常の処理操作の間データの少な
くとも1つのコピーを保持し、また周期的な間隔
でバツク・アツプ・メモリーに保持されたデータ
のコピーを更新する。この方式は、未だコピーさ
れていなかつたデータを保有する部分を使用不能
状態にする主記憶装置において故障が生じなけれ
ば、あるいは主記憶装置またはコピー・メモリー
のいずれかを使用不能状態にする結果コピーが完
了できない(このような故障はデータの保全性の
損失を生じるおそれがある)故障が複写操作自体
において生じなければ、満足に作動する。 本発明の目的 本発明の目的は、1つの故障がデータの脱落も
しくはデータの保全性の喪失を生じ得ないメモリ
ー・バツク・アツプ・システムの提供にある。 本発明の別の目的は、文脈の切換えの間バツ
ク・アツプが迅速かつ有効に行なわれ得るメモリ
ー・バツク・アツプ・システムの提供にある。 本発明の更に別の目的は、大量の処理時間を費
消することにより処理速度を低下させることな
く、データの複写が実施可能であるメモリー・バ
ツク・アツプ・システムの提供にある。 本発明の更に別の目的は、完全なバツク・アツ
プ能力を提供するため必要な回路が最少限度に抑
えられるメモリー・バツク・アツプ・システムの
提供にある。 前述の諸目的および前述の諸問題は、あるプロ
グラムの制御下で修正される全てのデータがプロ
グラムを実行中のプロセツサと関連する非書込み
キヤシユ・メモリーにおいてのみ一時的に記憶さ
れる本発明の一実施態様において解決される。文
脈の切換えもしくは前記キヤシユ・メモリーが一
杯の状態となる桁溢れ状態のため修正されたデー
タをシステムの主記憶装置に書込むことが必要と
なる時、就中その時実行中のユーザ・プログラム
の識別を保持する主記憶装置におけるある特殊な
データ場所が更新されてキヤシユ・メモリーにお
けるデータがこのプログラムと関連する主記憶装
置における第1の領域に対して書込まれつつある
ことを表示する。 この時、プロセツサにおける特殊な回路がユー
ザ・プログラムにより修正されたデータの全てを
第1の領域に対して書込む。この記憶操作の終り
に、主記憶装置における状況ブロツクが再び更新
されて、第1の記憶領域が更新されたこと、およ
び第2のデータが更新されようとしていることを
表示する。その後、同じデータが第2の領域に対
して書込まれる。この第2の記憶操作の後には状
況ブロツクの最後の修正操作が続いて、第2の領
域の更新もまた完了したことを表示する。 従つて、何時故障が生じようとも、主記憶装置
における定常的な1組のデータおよび各ユーザ・
プログラムが再び始動可能な1つの関連したアド
レスが存在する。例えば、もしある処理要素が修
正されたデータ・ブロツクを第1の記憶領域に対
する書込みを最初に開始する前に故障するなら
ば、この第1の記憶領域におけるデータおよび起
動アドレスはこれらが丁度処理要素がプログラム
の実行を開始する前においてそうであつたもので
あり、プログラムは第1の記憶領域における最初
のデータを用いて再び始動することができる。 あるいはまた、もし第1の領域に対する書込み
操作が開始した後であつてこれが完了する前に処
理要素が故障した場合は、主記憶装置における状
況ブロツクは書込み操作が完了しなかつたこと、
および故障回復ルーチンが主記憶装置におけるプ
ログラムの第2の領域の内容をその第1の領域に
対して書込んで別の処理要素に関するプログラム
の再実行を惹起するだけでよいことを表示する。
同様に、コンピユータ・システムは、プログラム
に対し新たな第2の領域を割付けてプログラムの
第1の領域の内容をこの新たな第2の領域に再び
コピーすることにより、主記憶装置におけるプロ
グラムの第2の領域の修正の間に生じる故障から
回復することができるのである。 本発明によれば、第1と第2の記憶装置は物理
的に別個の記憶要素に置かれ、従つて1つの記憶
要素の故障は、コピーが更新されつつある時を除
いて、主記憶装置におけるプログラム・データの
少なくとも1つの一定のコピーを残す。この場
合、システムはいずれか一方もしくは両方の記憶
領域におけるデータの更新を完了することによつ
て回復することができるのである。 関連するキヤシユ・メモリーにおけるプログラ
ムにより修正された全てのデータを記憶しながら
プログラム操作の間然るべき効率を提供するた
め、キヤツユ・メモリーは従来技術のシステムに
おいて典型的に使用されるものよりも遥かに大き
なものでなければならない。このような大きなキ
ヤシユ・メモリーは、通常のキヤシユ操作によれ
ば、新たなユーザ・プログラムが組込まれる前に
各データのキヤシユ・メモリーにおけるエントリ
がシステムの主記憶装置に対して書込まれなけれ
ばならないため、文脈の切換え間大きな時間的犠
牲を課すことがあり得る。 文脈の切換え中キヤシユの内容を書込むため必
要な時間を短縮するため、別のブロツクの状況メ
モリーが各キヤシユ・メモリーと関連させられて
いる。このブロツクの状況メモリーは、関連する
キヤシユ・メモリーにおける各データ・ブロツク
と対応する状況のエントリを保有する。情報が主
記憶装置以外のある場所からあるデータ・ブロツ
クに対して書込まれる時は常に、関連する状況エ
ントリが修正されて、このためプログラム操作中
に変化した情報を識別する。処理要素がシステム
の主記憶装置に対して修正され、また指定された
アドレス範囲内のアドレスを有する如きデータ・
ブロツクのみを書込むことを許容し、これにより
文脈の切換えを行なうために要する時間の長さを
大幅に短縮する特殊目的のハードウエアもまた提
供される。 更に、文脈の切換えを更に容易にするために、
その後の処理操作と並列に付勢することができか
つ文脈の切換え中に仮想メモリー・アドレスの翻
訳マツプを無効化するため使用することができる
特殊目的ハードウエアが処理要素において提供さ
れる。従つて、処理要素における監視プログラム
は、前記の無効化操作を始動させて他の機能へ進
める指令を発するだけでよい。 実施例による説明 第1図に示されるように、例示の故障許容形コ
ンピユータ・システムは、3つの主な要素、即ち
処理素子、記憶素子および周辺素子からなつてい
る。これらの要素の全ては、共通のシステム・バ
ス130,131と接続されている。システムの
操作のためには唯1つのシステム・バスしか必要
でないが、1つのバスにおける誤動作がシステム
全体の操作を停止させることを阻止してシステム
のスループツトを増加させることが望ましい。同
様に、信頼性および速度の観点から、処理、記憶
および周辺の諸素子をシステム・バスに対して結
合するインターフエース装置もまた重視してい
る。図において一本の線として示されるが、バス
130および131は、以下本文に更に記述する
ように、実際には多くの個々のデータおよび信号
改回線らなる多重ワイヤ・バスである。 64個までの処理素子(PE)を例示システムに
対して付設することができるが、明瞭化のためそ
の内3個の処理素子即ち100,105,110
が示されている。各PEは同じものであり、関連
するプロセツサの作用を制御して対応付けるユー
ザのアプリケーシヨン・プログラムおよび監視プ
ログラムの双方を実行することができる従来周知
のデータ処理装置であるプロセツサを包含する。 本発明によれば、各PEはまた、ユーザおよび
監視プログラム・コードおよびデータの双方を一
時的に記憶するキヤシユ・メモリーを保有する。
一般におけるように、キヤシユ・メモリーは有効
なメモリー・アクセス時間を短縮するために使用
される。しかし、以下に更に詳細に記述するよう
に、キヤシユ・メモリーはまた、単一の故障に対
するデータの保全の確保と高速の操作の提供の双
方を行なう故障許容性を有するデータ・バツク・
アツプ機構を提供するために記憶素子と関連して
使用される。 また、各PEには、別の使用頻度の高い監視コ
ードおよびリセツトされる時またはパワー・アツ
プと同時に処理素子が作動状況となることを可能
にするブーストラツプ・ローデイング・プログラ
ムが格納された読出し専用メモリーが含まれてい
る。 例示のコンピユータ・システムはまた、プロセ
ツサにより生成されるアドレス情報が主記憶装置
の各素子に対して与えられる前に翻訳される仮想
メモリー・システムを使用する。仮想アドレスを
主記憶装置の各素子により使用される物理アドレ
スに翻訳するための翻訳表(マツプ)は、各処理
素子に置かれたランダム・アクスセ・メモリーに
格納される。 全ての処理素子は、信頼性を高める目的および
スループツトの増大のため重複されるバス115
〜116の如き冗長なプロセツサ・バスに対して
接続されている。PEによるバス115,116、
およびシステム・バス130,131に対するア
クセスは、信頼性を高める目的およびスループツ
トの増大のため重複させられるマスター・インタ
ーフエース装置120,125によりそれぞれ制
御される。各マスター・インターフエース装置
は、16個までの処理素子の取扱いが可能なシーケ
ンスおよび制御ロジツクおよびバスの任意の回路
を保有する。別の処理素子を収容するため、シス
テム・バス130および131に対して別のプロ
セツサ・バスおよびマスター・インターフエース
装置の対を付設することができる。64個の処理素
子を収容するため、合計4つまでのプロセツサ・
バス対を例示のシステムに含めることができる。 もしある特定のコンピユータ構成において16個
以上の素子が存在する場合は、これら処理素子は
16個までの処理素子からなるグループに分割され
る。16個までの処理素子の各グループは、専用の
マスター・インターフエース装置によつて更にシ
ステム・バスに対して接続される共通プロセツ
サ・バスに対して接続されている。 16個までの処理素子の各グループ内では、監視
制御はプロセツサ間で共用される。特に、如何な
る場合も一時に1つのグループ内の全ての処理素
子により1つの監視即ち「主」処理素子が識別さ
れ、主要な役割が充分に規定された優先方式にお
いて処理素子間に回送される。プロセツサ間の制
御の転送の正確な機構については、参考のため本
文に引用する1982年9月3日出願のJ.J.Stiffler等
の米国特許出願第414961号「モジユラー・コンピ
ユータ・システム」において詳細に記載されてい
る。 全てのシステム・モジユール(記憶素子および
周辺素子を含む)は一義的に1つの処理素子のグ
ループに対して割付けられているが、全ての処理
素子は例えこれらが別のグループに「帰属」する
ものであつても全ての記憶素子およびバス・アダ
プタと通信することができる。更に、システムの
主記憶装置におけるいくつかの共通領域は全ての
処理素子グループによつて識別される。各処理素
子のグループ内では、例えコンピユータ・システ
ムにおいて唯一のグループしかない場合でも、シ
ステムの資源は主要な処理素子により割付けられ
る。グループ間の通信は、このような転送を容易
にするハードウエアの「ロツク」を保有する共通
の記憶領域によつて達成されるのである。 システム・バス130および131は、それぞ
れスレーブ・インターフエース135,140お
よび145,150によつて記憶素子165〜1
75およびバス・アダプタ184〜186に対し
て接続されている。各スレーブ・インターフエー
スは同じものであり、信頼性を高める目的および
システムのスループツトの増大のため冗長な重複
を有する。更に、1対をなす1つのスレーブ・イ
ンターフエースは、その後スレーブ・インターフ
エースが同時に第2の記憶素子またはバス・アダ
プタに対するアクセス経路を提供する間、関連す
るグループにおける1つの記憶素子またはバス・
アダプタに関するデータの入出のためのアクセス
経路を提供するため使用することができる。スレ
ーブ・インターフエース135〜150は、記憶
素子165〜175および周辺バス196〜19
7により生成された信号を(周辺バス・アダプタ
190〜192およびバス・アダプタ184〜1
86を介して)システム・バス130,131上
で使用される信号と共存可能な信号に変換する回
路を含む。 特に、スレーブ・インターフエース135およ
び140はシステム・バス130,131をメモ
リー・バス160,161に対して接続する。図
においては明瞭化のため僅かに2つのメモリー・
バス対160,161および155,156しか
示されていないが、例示のシステムに対しては64
対までの二重冗長メモリー・バスが付設可能であ
る。 メモリー・バス160,161は更に複数の記
憶素子に対して接続され、その3つの素子(記憶
素子165,170およびバス・アダプタ18
5)のバス・アダプタが示されている。これらの
素子は、共にシステムの主記憶装置を構成してい
る。実施例においては、記憶素子は各々ランダ
ム・アクセス・メモリーの221バイトを含み、1
つの従来周知のランダム・アクセス・メモリー装
置からなつている。異なる大きさの他の周知の記
憶装置もまた周知の方式で使用することができ
る。 スレーブ・インターフエース145,150
は、システム・バス130,131をバス16
0,161と同じメモリー・バス155,156
に対して接続する。周辺196,198は、その
内の2つのアダプタ184,186が示されるバ
ス・アダプタと、その内装置190,192が示
される周辺バス・アダプタからなるインターフエ
ース回路によつてバス155および156に対し
て接続されている。各バス・アダプタは、メモリ
ー・バスおよび周辺バス上で受取つたデータ情報
およびシステム・バスを介して処理素子から受取
つた指令を緩衝して定様式化が可能であるバツフ
ア・メモリーおよびデータ処理ロジツクを含んで
いる。特に、各バス・アダプタは、2つの独立的
な指令チヤネルおよび2つの独立的な入出力デー
タおよび指令チヤネル上の信号を取扱うことがで
きる。 アダプタ184の如き各バス・アダプタは、専
用バスを介して周辺バス・アダプタ190に対し
て接続されている。この周辺バス・アダプタは、
マイクロプロセツサおよび関連するプログラム・
メモリーを含む。プログラム・メモリー内に記憶
されたプログラムの制御下で、マイクロプロセツ
サ装置が処理素子と周辺コントローラおよび諸装
置間に情報を送るためのフオーマツト変換および
バツフアリングを行なうことができる。周辺バ
ス・アダプタ装置により行なわれるフオーマツテ
イング機能は、いくつかのルーチン・データ転送
タスクの処理素子(PE)の負荷を軽減すること
により全体的な処理時間を短縮する上で役立つ。
各周辺バス・アダプタは、実施例においてはデイ
スクおよびテープの如き二次的な記憶素子を含む
種々のタイプの入出力コントローラが取付けられ
る種々の標準的な周辺バスに対するインターフエ
ースを提供するように個々にプログラムすること
ができる。周辺バス・アダプタ190〜192
は、内部メモリー・バス155,156に使用さ
れる信号と周辺バス196〜198に対して使用
される信号との間に変換するように、従つて多く
の異なる周辺バス・フオーマツトを例示のシステ
ムにより使用することを可能にするようプログラ
ムすることができる。 バス・アダプタの記憶素子はシステム内に挿入
される時初期のパアー・アツプ・クリアおよび初
期化サイクルが与えられ、この間そのバス・ドラ
イバの全てが遮断されて装置が誤つた情報をシス
テムに対して通信することを阻止する。更に、装
置の内部状況レジスタは予め定めた状態に設定さ
れる。初期化が完了した後、装置はその時の主処
理素子に対して割込みを送り、これによりこの主
処理素子に対してこれが使用可能であることを通
知する。 この割込みに応答して、主要プロセツサは、そ
の内部の故障監視装置が作動状態にありかつその
存在を適当なメモリー表に記録することを検査す
るため装置を調べることにより、新たに挿入され
た装置を初期化する。 もし装置が記憶素子(その状況の読出しによつ
て決定される)であれば、この素子は1つの物理
的名前が与えられてこれが応答する物理アドレス
を規定する。あるいはまた、もし装置がバス・ア
ダプタ/周辺バス・アダプタであれば、関連する
周辺バスにおける周辺装置の番号および形式を判
定するためその内部のマイクロプロセツサが関連
する周辺素子について照会することを許容するあ
るプログラムがその内部のプログラム・メモリー
に対してロードされる。周辺の情報は、適当な操
作プログラムを新たに挿入された装置におけるプ
ログラム・メモリーに対してロードして、メモリ
ーにおけるシステムの構成表を再び更新すること
により応答する割込み機構を介して主要処理素子
に対して再び通知される。 1つの処理素子の更に詳細な機構ブロツク図が
第2図において示されている。各処理素子は同じ
回路を含み、従つて不要な繰返しを避けるため唯
1つの処理素子における回路について詳細に論述
することにする。この処理素子の心臓部はマイク
ロプロセツサ装置(MPU)210であり、これ
はコンピユータ・システムにより取扱われる通常
の演算のほとんどを実施する。マイクロプロセツ
サ装置210は、例示として従来周知の16ビツト
のマイクロプロセツサでよい。適当な特性を有す
るいくつかのマイクロプロセツサ装置が市販され
ておるが、本実施例において使用するため好適な
装置は米国アリゾナ州フエニツクスのMotorola
Semiconductor Products社から入手可能なモデ
ルMC68000マイクロプロセツサである。 MPU210の作用を支持しているのは、MPU
がその処理時間を短縮しかつ有効なメモリー・ア
クセス時間を短縮することを助けるいくつかの他
の装置がある。特に、これらの装置は、メモリー
管理装置200、ROM205およびキヤシユ・
メモリー250を含む。 特に、MPU210は「仮想アドレス」構成に
より作動する。この周知のメモリー構成において
は、MPU210は「仮想」アドレスをコンピユ
ータ・システムの主記憶装置における記憶場所と
対応する実際のアドレスに変換するために翻訳を
必要とする仮想アドレスを生成する。仮想アドレ
スの物理アドレスへの翻訳は、メモリー管理装置
200によつて達成される。装置200は、文脈
切換え中主記憶装置から検索され、内部ランダ
ム・アクセス・メモリーに格納されて仮想アドレ
スから物理アドレスへの翻訳を行なう翻訳「表」
即ち「マツプ」を使用する。特に、MPU210
により生成された仮想アドレス情報は、局部アド
レス・バス220を介してメモリー管理装置20
0に対して与えられる。メモリー管理装置200
は、仮想アドレス情報をコンピユータ・システム
における主記憶装置をアドレス指定するため使用
される物理アドレスに翻訳する。この翻訳された
情報は、処理素子内部の情報のフローを制御し適
当に翻訳されたキヤシユ・アドレスをキヤシユ・
データ・バス285に対してゲートするキヤシ
ユ/局部バス・アダプタ230に対して与えられ
る。 文脈切換え操作の間、翻訳マツプにおけるエン
トリは不当な操作を阻止するため無効化されなけ
ればならない。本発明の1つの特質によれば、文
脈切換えの実施のため必要な時間を短縮するた
め、他の処理装置と平行して付勢することができ
る処理素子において特殊目的のハードウエアが設
けられている。この特殊取付けのバードウエア
は、文脈切換えの間全てのマツプ・エントリを自
動的に無効化する。従つて、処理素子における管
理プログラムは、無効化操作を開始し、次いで他
の機能に進める指令を発するだけでよい。 キヤシユ・メモリー250は、効率のよいメモ
リー・アクセス時間を短縮し、また本発明によれ
ばメモリーのバツク・アツプ構成を提供するため
使用される公知の記憶素子である。特に、主記憶
装置に記憶された情報のサブセツトもまた、キヤ
シユ・メモリー250内に一時的に格納される。
メモリー250は、マイクロプロセツサ装置21
0により提供される仮想アドレスに直接応答し、
もし要求される情報がキヤシユ・メモリーに存在
する(「キヤシユ・ヒツト」と呼ばれる)ならば、
この情報は主記憶装置に対する通常のアクセスが
要するよりも遥かに短い間隔で使用可能な状態と
なる。もし要求された情報がキヤシユ・メモリー
には存在しないが主記憶装置に存在する場合は、
試みられたアクセスは「キヤシユ・ミス」と呼ば
れ、公知の回路が要求された情報を含む「ブロツ
ク」と呼ばれる情報のパーセルを主記憶装置から
キヤシユ・メモリーに対して自動的に転送、即ち
「書込み」を行なう。もし要求された情報が周辺
の2次的記憶領域にしか見出されない場合は、ア
クセスの試みは「ページ障害」を惹起する結果と
なり、これは以下に述べる手順を経て処理される
のである。 キヤシユ・メモリー250は、36ビツト×
32000ワード(実際には、32×1024ワード)の形
態に構成された217バイトのランダム・アクセ
ス・メモリーからなる(各36ビツトのワードは、
それぞれ1つのパリテイ・ビツトと関連する4つ
の情報バイトを含む)。キヤシユ・メモリー25
0から検索された情報は、キヤツシユデータ・バ
ス285およびキヤツシユ/局部バス・アダプタ
230を介して局部データ・バス225へ、次い
てMPU210へ提供される。キヤツシユ/局部
バス・アダプタ230は、32情報ビツトのキヤツ
シユ・バス285と16情報ビツトの局部データ・
バス225との間にインターフエースおよび信号
変換回路を提供する。更に、バス・アダプタ23
0は、キヤツシユ・メモリー250から局部バス
225に対して送られるデータに関するバイオ・
パリテイを検査して、反対の方向に流れるデータ
に対するバイト・パリテイ情報を生成する。 本発明によれば、キヤシユ・メモリー250は
非通し書込み形キヤシユ・メモリーである。ほと
んどの従来のキヤシユ・メモリーは通し書込みメ
モリーである、即ち情報が従来のキヤシユ・メモ
リーに書込まれる時、同じ情報がシステムの主記
憶装置に保持されたデータのコピーにも即時書込
まれる。通し書込み操作は、データの一貫したコ
ピーが1つの場所に保持されることを許容する。
不都合なことにもし処理が完了する前に故障が生
じる場合には、処理中の1つデータ・コピーしか
修正された状態とならず、その結果元のデータに
ついての処理を再開することができなくなる。従
来の操作とは対照的に、本発明のキヤシユ・メモ
リーは非通し書込み形ではなく、そのため修正さ
れたデータが処理中キヤシユ・メモリーにのみ書
込まれる。従つて、もしある障害が処理中に生じ
ると、主記憶装置の元のデータはそのままの状態
で残り、その結果元のデータについて処理を再開
することができるのである。 特に、文脈の切換えまたはキヤシユ・メモリー
250が一杯の状態となる桁溢れ状態のため修正
データをシステムの主記憶装置に書込むことが必
要になる時、就中その時実行中のユーザ・プログ
ラムの識別を含む主記憶装置における特別のデー
タ場所が更新されて、キヤシユ・メモリー250
におけるデータがこのプログラムと関連する主記
憶装置における第1の領域に書込まれつつあるこ
とを表示する。 以下において詳細に記述する処理素子における
特殊な回路は、この特ユーザ・プログラムにより
第1の領域に対して修正されたキヤシユ・メモリ
ー250における全てのデータを書込む。書込み
操作の終りに、主記憶装置における状況ブロツク
は再び更新されて第1の記憶領域が更新されたこ
とおよび第2の領域が更新されようとしているこ
とを表示する。然る後、同じデータが第2の領域
に対して書込まれる。第2の格納操作の後に状況
ブロツクの最終的な修正が続いて第2の領域の更
新もまた完了したことを表示する。 従つて、何時故障が生じたかに拘らず、各ユー
ザ・プログラムを再び開始することができる主記
憶装置および関連するアドレスにおいて一貫した
データの組が残る。例えば、もしある処理素子が
最初に修正されたデータ・ブロツクを第1の記憶
領域に対する書込みを開始する前に故障する場
合、第1の記憶領域におけるデータおよび始動ア
ドレスは、処理素子がプログラムの実行を開始す
る前の状態と丁度同じでありデータ処理タスクは
第1の記憶領域における最初のデータを用いて再
び始動することができるのである。 あるいはまた、もし処理素子が第1の領域に対
する書込み操作を完了する前に故障が生じる場合
には、主記憶装置における状況ブロツクは、書込
み操作は未だ完了せず故障回復ルーチンが主記憶
装置におけるプログラムの第2の領域の内容をそ
の第1の領域に対して書込んで別の処理素子にお
けるプログラムの再実行を惹起するだけでよいこ
とを表示する。同様に、コンピユータ・システム
は、新たな第2の領域をプログラムに対して割付
けしてプログラムの第1の領域の内容を新たな第
2の領域に対して再び複写することにより、主記
憶装置におけるプログラムの第2の領域の修正中
に生じる故障から回復することができるのであ
る。 本発明によれば、第1および第2の主記憶装置
の領域は物理的に別個の記憶領域に置かれ、従つ
て一回の記憶素子の故障はコピーが更新されつつ
ある時を除いてプログラム・データの少なくとも
1つの一貫したコピーを主記憶装置に残す。この
場合、システムはいずれか一方もしくは両方の記
憶領域におけるデータの更新を完了することによ
り前述の如く回復が可能となる。 関連するキヤシユ・メモリーのおけるプログラ
ムにより修正される全てのデータを記憶しながら
プログラム動作における然るべき効率を提供する
ためには、キヤシユ・メモリーは従来技術のシス
テムにおいて典型的に用いられたものよりも遥か
に大きなものでなければならない。このような大
きなキヤシユ・メモリーは通常のキヤツシユの作
動に従つてキヤツシユにおける各データ・エント
リが新たなユーザ・プログラムを組込むことがで
きる前にシステムの主記憶装置に格納されなけれ
ばならないため、文脈の切換えの間大きな時間的
犠牲を強いられるおそれがある。 本発明の別の特質によれば、キヤシユ・メモリ
ー250におけるプログラム動作の間修正された
データ・エントリのみを格納する特殊目的の回路
もまた提供される。 更に、キヤシユ・メモリー250と関連してい
るのはブロツクの状況メモリー255である。メ
モリー255は複数のエントリを含み、その各々
はキヤシユ・メモリー250に格納されたデータ
の1つのブロツク(128バイチのセグメント)に
関する情報を保有する。特に、ブロツクの状況メ
モリー255における各エントリは、もし仮想ア
ドレスが関連するキヤツシユ・ブロツクに対して
その時マツプされるならばこの仮想を識別する
「ラベル」を保有する(仮想アドレス情報はキヤ
ツシユ・アドレス・バス251から受取られる)。
更に、ブロツクの状況メモリー255における各
エントリは、関連するブロツクの内容がその時文
脈(MPU210においてその時実行中のプログ
ラムと関連する)において妥当であるかどうかを
表示する「妥当な」ビツトを含み、各エントリは
また、内容が最初関連するキヤシユ・メモリー・
ブロツクに対してロードされたためもし妥当なら
ば関連するブロツクの内容が変更されたかどうか
を表示する「不当な」ビツトを含む。 本発明の別の特質によれば、ブロツク状況メモ
リー255に格納された妥当および不当ビツト
は、文脈の切換えと同時に主記憶装置に対してブ
ロツク状況メモリーにより「不当な」ものとして
識別された如きブロツクのみの内容を格納する特
殊回路によつて使用され、これにより文脈の切換
えの実施に必要な期間の節減をもたらす。ブロツ
ク状況メモリー255はまた、文脈の切換えの間
キヤシユ・メモリー250の自動的なクリア動作
を制御するため使用することもできる。 キヤシユ・メモリー250は、システムの主記
憶装置からのメモリー250における情報を更新
するため、キヤツシユ・アドレス・バス251上
でアドレス情報を、またプロセツサ・バスからバ
ス・インターフエース265および270を介し
てデータ情報を受取ることができる。更に、イン
ターフエース265および270は処理素子をプ
ロセツサ・バスに対して接続し、各々が19本の割
込み回線(15の情報ビツトおよび4つのパリテ
イ・ビツト回線を含む)および36本のアドレス/
データ回線(32本の情報ビツト回線および4本の
パリテイ・ビツト回線からなる)を収容する。
種々の制御回線(図示せず)はまた、処理素子の
作用を制御するためインターフエース265およ
び270を通過する。 データ・バス280からキヤツシユ・データ・
バス285を介してキヤシユ・メモリー250に
対して送られる情報のバイト・パリテイは、コン
ピユータ・システムの主記憶装置からキヤシユ・
メモリー250に対し転送される情報についての
エラー検出を行なう公知のパリテイ検査回路から
なるパリテイ検査装置260によつて検査され
る。 処理素子とプロセツサ・バス間でインターフエ
ース265,270を介して生じるデータ転送
は、外部の制御シーケンサ245によつて制御さ
れる。以下において更に詳細に論述するように、
シーケンサ245は内部の制御シーケンサ240
からの同期信号を受取つて、適当なアドレスをバ
ス280に対してゲートさせ、制御信号を生成
し、キヤシユ・メモリー250とプロセツサ・バ
ス間のデータ転送を対応付けることによりデータ
の転送を制御するのである。 読出し専用メモリー205はまた、それぞれ局
部アドレス・バス220およびデータ・バス22
5に対して接続され、MPU210によりアクセ
スすることができるプログラム命令を保有する。
特に、ROM205は、最初のシステム・パワ
ー・オンまたはシステムのリセツトの後に処理素
子を再始動するため使用される「ブートストラツ
プ」プログラムを保有する。MPU210の処理
速度を増大するために、ROM205はまた、局
部データ・バス225上でMPU210によりア
クセスすることができる他の頻繁に使用されるオ
ペレーテイング・システム・ルーチンを保有して
いる。 バス280を介するデータ信号の送受に加え
て、インターフエース265および270または
割込み信号を受取つてこれを19ビツト割込みバス
275に対してゲートすることができる。入力す
る割込み信号は割込み回路網235に対して与え
られ、これは割込みバス275上で与えた割込み
データMPU210によりデータの読出しができ
る局部データ・バス225に対してゲートする。
割込みバス275上で受取られた割込みデータ
は、割込みのソースを表示する8ビツトの識別コ
ードと、割込みのレベルを表示する3ビツトのレ
ベル・コードと、所要の割込みルーチンが開始す
る格納場所を表示する4ビツトの割込みベクトル
とからなる。更に、4つのパリテイ・ビツトが、
19ビツトの割込みバス上に残る15の情報ビツトに
おけるエラーを検出するため含まれている。 第3図は、例示の故障許容度を有するコンピユ
ータ・システムのスレーブ・インターフエース装
置の機能ブロツク図を示している。このスレーブ
装置は、バス・インターフエース310によりシ
ステム・バスに対し、またバス・インターフエー
ス315により関連するメモリー・バスに対して
接続されている。システム・バス・インターフエ
ース310は、36本のアドレス/データ回線およ
び関連する制御回線および14本の割込み回線に対
するフイルタおよび緩衝作用を提供するのであ
る。 同様に、メモリー・バス・インターフエース3
15は、10本の割込み回線(2つの割込みレベ
ル・ビツトと、4つの割込みソース識別コード・
ビツトと、4つのパリテイ・ビツトからなる)
と、36本のアドレス/データ回線(32の情報ビツ
トと、4バイトのパリテイ・ビツトからなる)
と、スレーブ・インターフエースからメモリー・
バスに対し、また最終的には記憶素子またはバ
ス・アダプタ装置に対して情報を転送するための
いくつかの関連する制御回線に対するフイルタお
よび緩衝作用を提供する。36ビツトの内部デー
タ・バス340上の情報は、受取つたアドレスお
よびデータに関してバイト・パリテイを検査する
パリテイ回路検査装置320に対して与えられ
る。また、入力情報を復合して診断目的のため使
用される選択された指令を認識し、また処理素子
に対する故障条件の表示に使用される状況条件を
記憶する指令/状況ロジツク325に対して情報
が与えられる。 メモリー・バス・インターフエース315を通
過する10本の割込み回線と、システム・バス・イ
ンターフエース310を通過する14本の割込み回
線が割込みロジツク330に対して設けられてい
る。割込みロジツク330は、もし関連する記憶
素子またはバス・アダプタのいずれかがサービス
を要求する割込み信号を生成中であるかどうかを
判定するため使用される「ポーリング」シーケン
スを生成する公知の回路を含む。特に、各記憶素
子またはバス・アダプタは「ポーリング」、即ち
予め定めたシーケンスにおいて割込みの検出のた
め調べられる。スレーブ・インターフエースは、
更に、マスター・インターフエースにおける割込
み回路(以下において詳細に記述する)によつて
「ポーリング」が行なわれる。スレーブ・インタ
ーフエースによつて検出される割込みは、マスタ
ー・インターフエースから受取るポーリング信号
に応答してバス・インターフエース310を介し
てシステム・バス上をマスター・インターフエー
ス装置に対して伝達されるのである。 スレーブ・インターフエース全体の作用は、装
置における残りの回路に対して同期信号を提供す
るため公知のクロツクおよびシーケンス生成回路
を含む制御ロジツク335により制御され同期さ
せられる。 記憶素子の更に詳細な機能ブロツク図は第4図
において示される。全て記憶素子は同じ回路を含
むため、明瞭化のためその内の1つについてのみ
詳細に記述することにする。各記憶素子は、イン
ターフエース410と415により両方の冗長メ
モリー・バスに対して接続されている。各インタ
ーフエース回路は、10本の割込み回線(6つの情
報ビツトおよび4つのパリテイ・ビツトとからな
る)と、36本のアドレス/詳細回線(32の情報ビ
ツトおよび4つのバイト・パリテイ・ビツトとか
らなる)および何本かの関連する制御回線のフイ
ルタおよびバツフア作用を行なう回路を含む。 入力するアドレス情報は、インターフエース4
10および415によつて、情報がアドレス検出
装置およびゼネレータ回路455に対して与えら
れる内部アドレス・バス420に対して送られ
る。回路455は、関連する記憶素子が応答する
ようにプログラムされるアドレスを復合してこれ
を検出する。更に、周知の原理によれば、この回
路はランダム・アクセス・メモリー(RAM)ア
レー470において格納されたデータのブロツク
(128バイト)をアクセスするため必要な一連のア
ドレス情報を生成する。回路455により生成さ
れたこの情報は、RAMのタイミング兼制御回路
460に対して与えられる。この回路はまた、タ
イミング信号(行および列のアドレスのストロー
ブ)およびRAMアレー470の制御のため使用
される制御信号(チツプ選択)を生成する公知の
回路を含む。更に、RAMのタイミング回路46
0はRAMアレー470における情報のアクセス
のため必要なアドレス・リード(行および列アド
レス)を付勢してアレー470における情報の脱
落を防止するため周期的な「リフレツシユ」信号
を提供する回路を保有する。 RAMアレー470は、320個の64Kダイナミツ
ク・ランダム・アクセス・メモリー素子を含んで
いる。これらの素子は、多数の半導体製造企業か
ら入手可能な従来周知の市販される記憶素子であ
る。アレー470は、8行×40列のアレー(219
個の32ビツト・ワード、8パリテイ・ビツト行)
に対して構成されている。回路460によりタイ
ミング制御信号および内部アドレス・バス420
を介して与えられるアドレス信号に応答して、
RAMアレー470はエンコーダ/デコーダ45
5に対して格納された情報および関連する格納さ
れたパリテイ検査ビツトを提供する。回路455
は、RAMアレー470から検索された40ビツト
の符号化された情報を受入れ、8ビツトのパリテ
イ情報コードを用いて公知のエラー補正手法に従
つてどんな単一ビツト・エラーでも識別してこれ
を補正する。また、公知のエラー検出手法に従つ
て、8ビツトのエラー補正コードは全ての二重お
よび最も重複するビツトのエラーを検出するため
使用される。状況フラツグは回路445によりセ
ツトされてエラーが生じたことを表示する。エン
コーダ/デコーダ回路445はまた、適正である
かあるいはエラー補正回路により補正された全て
の検索された情報と共に送られるバイト・パリテ
イ・ビツトの生成に使用される。RAMアレー4
70から検索され(およびおそらくは補正され
た)32ビツトの情報ワードが、4つのパリテイ・
ビツトと共に、36ビツトの内部データ・バス42
0に対して与えられ、またインターフエース41
0および415を介してメモリー・バスおよびコ
ンピユータ・システムの他の装置に対して与えら
れる。 割込みロジツク430、状況および指令ロジツ
ク435、電源監視回路440および制御シーケ
ンサ450を含む記憶回路のサービスのためいく
つかの別の回路が使用される。制御シーケンサ4
50は、その種々の操作を経て記憶素子の順序付
けのため使用される制御信号および同期信号を生
成する。これらのシーケンス信号は標準的な方法
で生成される。 電源監視回路440は、システムの電力供給状
態を監視し、電力が最初に記憶素子に対して供給
される時「クリア」即ちリセツト信号を生成す
る。更に、電力監視回路440はまた、記憶素子
がリフレツシユ専用モードに入ることができ、こ
れにより電力の消費を節減しながら格納された情
報をそのままの状況に維持するように予備電力の
みが使用可能状態となる条件を検出するのであ
る。 状況および指令ロジツク435は、故障条件の
間処理素子とによる外部アクセスのため状況情報
を格納する(例えば、故障条件および故障の時に
アクセスされつつあるアドレス等)。指令435
はまた、診断試験および他の診断機能の構成のた
め使用される指令を処理素子から受入れる。 割込みロジツク430は、格納素子における故
障の事象においてスレーブ・インターフエースに
対する割込みを開始し、記憶素子の最初のパワ
ー・アツプと同時に記憶装置がリセツトされる時
もしくはパワー・アツプと同時に使用可能となり
作動状態となることを表示する。 各処理素子は同じ回路を含むが、各処理素子
は、処理素子モジユールが挿入されるコネクタ・
スロツトの電気的配線により決定される一義的に
6ビツトの識別番号を割付けられる。この識別番
号は、以下に記述するように、制御の転送および
バスのアクセス操作のためその関連するマスタ
ー・インターフエースに対する各処理素子を識別
するため使用される。 キヤシユ・メモリーおよびこれを制御して種々
の移動および記憶ルーチンを実施する回路につい
て、以下に詳細に論述する。特に、第5図および
第6図は、メモリーを使用する監視およびユー
ザ・プログラム間のキヤシユ・メモリー空間の割
付け状態を示している。実施例においては、キヤ
シユ・メモリー(第2図におけるメモリー25
0)は、128Kバイトのメモリーを有する高速の
ランダム・アクセス・メモリーからなる。メモリ
ー全体は、アドレス00000〜1FFFF(16進数)と
対応する14ビツトのアドレス・コードにより一義
的にアクセスすることができる。合計128Kバイ
トのメモリーがキヤシユ・メモリーと共に作動す
る監視プログラムとユーザ・プログラム間に分割
される。監視およびユーザ・プログラム間の記憶
空間の分割状態は予め定めされて固定されてい
る。 更に、最初の64Kバイトの記憶空間(アドレ
ス・コード00000〜0FFFFと対応する)と対応す
るメモリーの半分がユーザ・プログラムのみによ
る使用のため恒久的に割付けられている。同様
に、残りの64Kバイトのメモリー(アドレス・コ
ード10000〜1FFFFと対応する)は、関連するマ
イクロプロセツサにおいて実行中の監視プログラ
ムによる使用のため恒久的に割付けされている。 ユーザ・プログラムに割付けされた64Kバイト
の内、最初の32Kバイト(アドレス・コード
00000〜07FFFと対応する)はユーザ・プログラ
ムの記憶のため恒久的に割付けされている。次の
32Kバイトのメモリー(アドレス08000〜0FFFF
と対応する)はユーザ・プログラム・コードの記
憶における使用のため恒久的に割付けされてい
る。 類似の分割法(32Kバイドずつ)は監視データ
およびコードに対しても行なわれている。しか
し、監視コードおよびデータの両領域は2つの
16Kバイトの領域に更に分割されている。選択さ
れた1つの16Kバイトの領域においては、頻繁に
使用される監視プログラム・コードが恒久的に格
納される。監視プログラム・コードの他の16Kバ
イトの領域においては変更可能即ち「オーバーレ
イ可能な」コードが格納され、その内容はプログ
ラムの操作中変更することができ柔軟性を提供す
る。 これもまた32Kバイトのメモリーからなる監視
データ記憶領域も同様に2つの16Kバイトの部分
(それぞれ、アドレス18000〜1BFFFおよび1C000
〜1FFFFと対応)に分割されている。監視コー
ドの場合と同様に、監視データ領域は固定されオ
ーバーレイ可能な部分に分割されている。 実施例においては、マイクロプロセツサ装置は
24ビツトのアドレス(A0〜A23)を生成するこ
とができ、従つてアドレス000000〜FFFFFF(16
進数)と対応する略々16メガバイトの情報を個々
にアドレス指定することができる。アドレス・コ
ードの生成に加えて、このようなマイクロプロセ
ツサはまた、マイクロプロセツサにより生成され
たアドレス・コード信号を指定するアドレス・コ
ード信号がユーザのデータ、ユーザのコード、監
視データまたは監視コードのどれに指向されるか
を指示する3つの機能コード信号(FC0〜FC2)
を提供することもできる。ユーザ・データ、ユー
ザ・コードおよび監視コードの空間と対応するこ
の機能コードの状態は、それぞれFC2〜FC0=
001、010および110である。監視データの場合は、
FC2〜FC0=101であり、また更にアドレス・ビ
ツトA23は2つのタイプのアドレス、即ちメモリ
ー・アドレスおよび特殊アドレス間を識別するた
め使用される。特殊アドレスは、以下に説明する
ように、特別のキヤシユ・メモリーの制御操作の
間に使用される。 マイクロプロセツサにより生成される24ビツト
のアドレス・コードは合計16Mバイトのデータの
アドレス指定のため使用することができ、キヤシ
ユ・メモリーは僅かに128Kバイドのメモリーし
かないため、マイクロプロセツサにより生成され
るアドレスからキヤシユ・メモリー空間に対して
翻訳即ち「マツプ」するためにはある手段を用い
なければならない。特に、実施例においてはブロ
ツク状況メモリーはキヤシユ・メモリーと関連し
ている。このブロツク状況メモリーは、キヤシ
ユ・メモリーにおける128Kバイトの情報ブロツ
ク毎に1つの記憶場所を保有する。キヤシユ・メ
モリー・ブロツクが主記憶装置からロードされる
時、24ビツトの仮想アドレスの一部がデータを書
込むための場所を選択するためにキヤシユ・メモ
リーに対して与えられる。残りのアドレス(「ラ
ベル」)は、ブロツク状況メモリーにおいて対応
する場所に格納される。MPUアクセスの後期に
おいては、マイクロプロセツサが生成した仮想ア
ドレスのこの部分はアクセス・ブロツクと関連す
る記憶されたラベルと対比される。突合せによ
り、記憶されたデータがマイクロプロセツサにお
いて実行中のプログラムに対して妥当であること
を表示する。 第5A図は、監視プログラム・コードに対する
キヤシユ・メモリー空間に対する仮想メモリー空
間の対応状態を示している。合計のキヤシユ・メ
モリー・アドレス空間および監視およびユーザ・
プログラムにおけるその割付け状態は同図の右側
におけるブロツクに略示されている。左側におけ
るブロツクにおいては、監視プログラム・コード
に対する全仮想アドレス空間の形態が示されてい
る。 特に、24のアドレス・ビツトによりアドレス指
定することができる約16Mバイトの仮想記憶空間
からは、最初の16Kバイト(アドレス000000〜
FFFFFFと対応)がマイクロプロセツサと関連
する読出し専用メモリー装置(第2図において読
出し専用メモリー205として示される)におけ
る場所に対して割当てられている。前述の如く、
読出し専用メモリー205に格納された情報はシ
ステムの起動および診断プログラムのため使用さ
れる。 次の16Kバイトの仮想アドレス空間は、キヤツ
シユ・メモリーに恒久的に格納された(アドレス
004000〜007FFFと対応する)監視プログラムに
割当てられ、1対1でキヤシユ・メモリーの空間
の16Kバイト部分に変換する。16Kバイトのキヤ
シユ・メモリー部分のおける各場所を指定するた
めに14ビツト(ビツト0乃至13)しか必要でな
く、残りの10ビツト(ビツト14乃至23)は「ラベ
ル」として表わされブロツク状況メモリーに格納
される。仮想アドレスと固定された監視コード間
の変換は1対1であるため、10ビツトのラベルが
固定される(ビツト14=1であり、ビツト15〜23
=0)。 アドレス008000〜FFFFFFと対応する約16M
バイトからなる仮想アドレス空間の残り(仮想ア
ドレス空間全体マイナス既にROMに対して割当
てられた32Kバイトおよび固定の監視コード)
は、アドレス1C000〜1FFFFからなるキヤシユ・
メモリーの残りの16Kバイトの監視コード部分に
対してマツプする。固定された監視コードの場合
のように、仮想アドレス空間の下位の14ビツトが
キヤシユ・メモリーにおけるある場所を指定す
る。残りの10ビツト(ビツト14〜23)は、ブロツ
ク状況メモリーにおける関連する場所においてラ
ベルとして格納される。 第5B図は、監視データに対する仮想アドレス
のキヤシユ・メモリーに対するマツピングを示し
ている。下位の16Kバイト(アドレス000000〜
0003FFFからなる)は、1対1の関係で16Kバイ
トの固定監視データ領域(アドレス10000〜
13FFFからなる)に対してマツプされる。次の
監視データ空間は、アドレス004000から始まりア
ドレス7FFFFFまで続く略々8Mバイト(8Mバイ
トマイナス16Kバイト)からなるオーバーレイ可
能な空間である。この空間は、アドレス14000〜
17FFFからなるキヤシユ・メモリーにおける16K
バイトのオーバーレイ可能な監視データ空間にマ
ツプする。残りの10ビツトは監視コードにおける
ように、ブロツク状況メモリーに格納され、アク
セスと同時に突合せのため使用される。 アドレス800000〜FFFFFFからなる残りの8M
バイトの監視復号の仮想アドレス空間は、以下に
詳細に記述するように、キヤシユ・メモリーの制
御操作の間特別なアドレスに対して使用される。 第6図は、ユーザ・コードおよびユーザ・デー
タのための仮想アドレス空間の割当て状態を示し
ている。第6A図に示されるように、16Mバイト
からなる全仮想アドレス空間(アドレス000000〜
FFFFFF)は、キヤツユ・メモリーにおけるア
ドレス08000〜0FFFFに位置された32Kバイトの
ユーザ・コード領域に変換する。32Kバイトのキ
ヤシユ・メモリーを一義的にアドレス指定するた
め15ビツト(0〜14)が必要であり、残りのビツ
ト(15〜23)はブロツクの状況メモリーにおいて
9ビツト・ラベルとして記憶され、監視コードお
よびデータ・ラベルと同様な方法で使用されて妥
当なデータについて検査する。 第6B図に示されるように、ユーザ・データに
対する16Mバイトの空間全体もまた、アドレス
000000で始まりアドレス07FFFまで続く32Kバイ
トのキヤツユ・メモリー空間にマツプされる。ユ
ーザ・コードの場合のように、9ビツト・ラベル
がブロツク状況メモリーにおいて格納される。 キヤシユ・メモリーおよびその関連する支持回
路の作用については、第7図のおよび第8図に関
連して詳細に記述する。特に第7図は、ブロツク
状況メモリーおよびキヤツユ・メモリーの作用と
関連する支持回路の簡単なブロツク図を示す。第
8図に、要求された情報がキヤツユ・メモリーに
存在しない場合にシステムの主記憶装置から情報
を読出すため使用される回路の詳細なブロツク図
を示す。多くの回路ブロツクのデータな構造につ
いては明瞭化のため詳細には示さないが、マルチ
プレクサおよびラツチ回路は設計ならびに構造に
おいて標準的なものであり、その作用は当業者に
は周知のものである。 第7図においては、キヤツシユ制御回路は、キ
ヤシユ・メモリーの各部およびその支持回路の作
用を対応付け同期化する制御信号を生じる内部の
シーケンサコントローラ700を含んでいる。内
部のシーケンサ・コントローラ700の詳細な構
造もまた明瞭化のため示さない。このコントロー
ラは以下に示される状態表に従つて標準的な離散
論理回路、誂らえられたアレー・ロジツクまたは
読出し専用メモリーのいずれかを用いて構成する
ことができる。特に、シーケンス・コントローラ
の場合は、「遊休状態」にある時MPU702から
のアクセス指令に対して迅速い応答することが望
ましいため、シーケンサが遊休状態にある間生成
されるMPU702からの信号の処理に用いられ
る回路は高速の離散状もしくは特別注文のアレー
論理回路であることが望ましい。シーケンサの状
態の残りは読出し専用メモリーを用いて構成する
こがとできる。 シーケンサ700は、MPU702により要求
されるタイプの動作を表示するMPU702から
多くの信号を受取る。特に、MPU702はその
24本のアドレス・リードA0〜A23において1組
のアドレス信号を生じる(更に述べれば、MPU
702はアドレス信号A0は生成しないが、その
代りMPU702は種々の回路におけるデータの
受取りの制御のため使用される2つのデータ・ス
トローブ信号即ちUDSおよびLDSを生成する。)
妥当なアドレスがリードA0〜A23に存在する時
は、MPU702はアドレス・ストローブ・リー
ドASを保持する以下の記述においては、信号の
呼称(例えば、AS)は信号が保持された状態に
あることを示し、信号の名前の後の*印(例え
ば、AS*)の存在は信号が無視されるかあるい
は保持されないことを示している。 MPU702はまた、前述の如く3つの機能コ
ード信号FC0乃至FC2、およびその時の操作が読
出し操作か書込み操作かを表わす読出し/書込み
信号Rを生じる。 更に、シーケンサ700は外部の制御シーケン
サ(図示せず)と相互に作用する。この外部のシ
ーケンサは、プロセツサ・バス上で作用素子とコ
ンピユータ・システムの残りの素子との間の情報
の流れを制御する。このようなシーケンサの設計
および構造は明瞭であり、本文においては詳細に
記述しない。その作用の間、外部シーケンサはプ
ロセツサ・バスの制御回路に固定された一連の操
作を行なわせるが、この操作においてはプロセツ
サ・バスのドライバがプロセツサ・バスとコンピ
ユータ・システムの残りの素子との間に情報をゲ
ートするように制御される。この時受取つた情報
は定様式化され、エラーについて検査され、処理
素子における内部データ・バスに対して転送され
る。外部のシーケンサ(またはバス転送機械)の
作用は、シーケンサが始動リード(ST)を保持
する時シーケンサ700によつて始動される。外
部のシーケンサが作動中、このシーケンサは使用
状態の信号(BB)をシーケンサ700に対して
戻す。要求されたデータ転送動作が完了した後、
使用状態の信号は無視される(BB*)。 シーケンサ・コントローラ700は、その動作
の過程において、第7図に示された種々の回路ブ
ロツクを制御しまたMPU702に要求された動
作の状況を通知するために使用される多くの信号
を生じる。特に、シーケンサ・コントローラ70
0は、保持される時MPU702に対して要求さ
れた動作が開始されたかあるいは以下に記述する
ように完了したかについて表示する確認信号
(ACK)を生じる。内部のシーケンス・コントロ
ーラ700により生成される他の出力(CE、
R/W、WE)は、キヤツユ・メモリー738お
よびブロツク状況メモリー736の双方を使用可
能状態にするため使用され、その読出しおよび書
込みサイクルを制御する。更に他の出力は、種々
のマルチプレクサを切換えて情報を以下に詳細に
記述するように回路の各ブロツク間に転送するた
め使用される。 シーケンサ700の制御下で、各処理素子は8
つの充分に規定された状態の1つにあり得る。こ
れらの状態の各々において、ある特定の動作即ち
ルーチンが処理素子の回路によつて実施される。
各シーケンサの状態は、1つの文字からなる簡略
コードによつて表わされ、その各々が一般にシス
テム・クロツクの各クロツク・パルスの間に生じ
る1つ以上のサブ状態からなつている。 8つの状態の第1の遊休状態(簡略コード
「I」により識別される)である。内部の情況シ
ーケンサ700は、これがMPU702からアク
セス要求を受取るまでは遊休状態に止まる。遊休
状態においては、シーケンサ700は、MPU7
02がそのアドレス出力リード上にあるアドレス
を置いたことまたこれが1つのアクセス操作を要
求中であることを示すMPU702により生成さ
れたアドレス・ストローブ信号についてアドレ
ス・ストローブ・リード(リードASとして表わ
される)を監視する。MPUからアドレス・スト
ローブ信号を受取ると同時に、内部の制御シーケ
ンサは以下において詳細に説明する種々の条件に
従つて残りの7つの状態の内の1つに移動する。 8つのシーケンサの状態の第2は確認状態(簡
略コード」「A」で表わされる)である。この状
態においては、内部の制御シーケンサはMPU7
02に対して、要求されたアクセス操作が完了し
てMPU702により要求されたデータが使用可
能であることを信号する。 第3のシーケンサの状態は特別な確認状態(状
態「S」として表わされる)である。この状態に
ある間、この状態に入つた時の処理素子の状態に
従つて、シーケンサがブロツクの状況メモリーま
たは他の特別なレジスタを使用可能状態にする。 第4の状態は読出し状態(簡略コード「R」)
である。この状態においては、内部の制御シーケ
ンサは外部の制御シーケンサを付勢して、システ
ムの主記憶装置からプロセツサのデータ・バスを
介してキヤツユ・メモリー738に対するデータ
の読込みを可能にする。 第5の状態は桁溢れ状態(簡略コード「O」)
である。この状態においては、内部の制御シーケ
ンサ700はキヤツシユの「桁溢れ状態」をサー
ビスするための適正な指令を生じる。通常主記憶
装置からある特定の場所において検索されてキヤ
ツユ・メモリー738に対して格納されることに
なるある項目がキヤツユ・メモリー738に格納
することができない場合に、この場所が主記憶装
置に対して最初に移動させねばならない妥当デー
タを既に保有しているため、キヤツシユの桁溢れ
が生じる。 特に、情報をキヤツユ・メモリー738から読
出す試みの間キヤツシユの「ミス」の状態が生じ
る場合に、処理素子における回路はアドレス指定
された項目を含むデータのブロツクをシステムの
主記憶装置からキヤツユ・メモリー738へ転送
しようと試みる。もしこの試みられた転送が成功
すれば、データ処理は正常に進行する。もしこの
試みられた転送がキヤツシユの桁溢れを惹起する
結果となるならば、主記憶装置から検索された情
報のブロツクはその正常の場所の代りにキヤツシ
ユにおける「桁溢れバツフア」の場所に格納され
る。アドレス指定された項目は、次に、桁溢れバ
ツフアから取出され、キヤツシユの桁溢れが生じ
た時MPU702により実行中であつた命令は完
了することを許容される。この時、正常のデータ
処理は割込みが行なわれて、その結果以下に詳細
に記述する如き特殊な回路が主記憶装置に対する
キヤシユ・メモリー738のデータの前に修正さ
れた部分を格納することができ、これによりキヤ
シユ・メモリー738における別のデータのため
の余地を提供する。あるいはまた、もしキヤシ
ユ・メモリー738に対する書込みアクセスと同
時にキヤツシユの桁溢れが生じるならば、書込ま
れるべきデータはその正常の格納場所がクリアさ
れるまでキヤツシユの桁溢れバツフアにおいて一
時的に格納される。 キヤシユ・メモリー738に関する読出しまた
は書込みのアクセスの間ページの障害が生じるな
らば、操作のシーケンスは僅かに異なる。ページ
の障害に対する応答は、この障害がキヤシユ・メ
モリー738からのプログラム・コードの読出
し、またはデータの書込み操作、またはデータの
読出し操作をどれを行なうとして生じたかに依存
する。もしデータの障害が要求された命令の実行
の代りに試みられたコードの検索において生じた
ならば、キヤシユ・メモリーの回路は特別な「ト
ラツプ」命令を戻す。MPU702は、トラツプ
命令を認識するようにプログラムされており、こ
れと同時に二次的な格納領域からの所要のコード
の検索を開始することができるように主要プロセ
ツサとなる要求を開始する。 データの書込みの試みにおいて生じるページ障
害は、キヤツシユの桁溢れと同様に処理される。
即ち、データはキヤツシユ桁溢れバツフアに一時
的に格納され、正常の処理に対して割込みが行な
われる。この割込みに応答して、処理素子は再び
主要プロセツサとなることを要求し、その結果二
次的な格納からの情報の必要な検索を開始し新た
なユーザ・タスクを選択することができる。 データの読出しの試みと同時に生じるページ障
害は処理素子をして正常の処理動作を停止させる
よう強制し、またその時の主プロセツサが所要の
データのページを二次的格納状態から主記憶装置
に移動させることを要求する。二次的格納状態か
ら主記憶装置に対するデータの転送が行なわれた
後、主要プロセツサは要求されたページを含む主
記憶装置における場所のページ障害を生じた処理
素子を通知する。この時、ページ障害を生じた処
理素子は正常の処理動作を再開して、ページ障害
をキヤツシユの桁溢れと全く同じ方法で処理す
る。特に、アドレス指定されたデータ・ブロツク
はキヤシユ・メモリーに対して転送され、その時
実行中の命令が完了することを許容される。この
時通常の処理は割込みが行なわれ、その結果メモ
リー管理装置におけるマツプが更新されて主記憶
装置におけるページの場所を表示することができ
る。もしページ障害と関連してキヤツシユの桁溢
れも生じるならば、桁溢れの後に生じる前述の処
理もまた正常の操作が再開する前のページの障害
後に生じるのである。 処理素子の次の状態は、この処理素子が主記憶
装置に関する以外の転送を行なう外部の状態(簡
略コード「E」で表わされる)である。 次の状態は、内部のシーケンサが主記憶装置に
対してキヤシユ・メモリー738における全ての
不当なデータ・ブロツクの内容を格納するキヤシ
ユ・メモリー回路の作用を制御することができる
フラツシユ状態(簡略コード「E」で表わされ
る)と呼ばれる。前述の如く、本発明の一特質に
よれば、このフラツシユ操作は、MPU702に
よる直接制御とは独立的なフラツシユ操作を実施
するキヤシユ・メモリーと接続された特殊目的の
ハードウエアによつて実施される。特に、MPU
702は制約間のフラツシユを指令することがで
き、この場合には指定されたハードウエアが主記
憶装置に対する指定された制約範囲内に見出され
る全ての不当なブロツクを自動的にフラツシユす
る。更に、この特殊目的のハードウエアは、デー
タの各ブロツクがフラツシユされることにより以
降のキヤシユ・メモリーの動作に対するブロツク
状況メモリーを初期化する時、ブロツク状況メモ
リーに格納され前記ブロツクと関連する状態ビツ
トがリセツトされることをMPU702が要求す
ることを許容する。この同じ回路は更にユーザお
よび監視コード・ブロツクを無効化するため使用
することができ、この操作はさもなければ文脈の
切換えの実施に要することになる期間を大幅に短
縮する。 処理素子の最後の作動状態は移動状態(簡略コ
ード「M」)と呼ばれる。移動状態においては、
内部のシーケンサは、キヤシユ・メモリー738
における1つの場所からキヤシユ・メモリー73
8における別の場所に対してデータを移動させる
別の回路を制御する信号を生成する。このような
動作は、ほとんどのコンピユータ・プログラムが
キヤシユ・メモリーにおけるユーザ・データと監
視データ領域間の頻繁なデータ転送に関わるため
に必要である。例えば、入出力操作は一般にユー
ザ・プログラムの半分に関して監視プログラムに
よつて実施される。その結果、出力データはキヤ
シユ・メモリーにおけるユーザ・データ領域から
監視データ領域に対して転送されなければならな
い。同様に、監視領域からの入力データはユーザ
領域に対して転送されなければならない。これら
のキヤツシユのデータ転送がユーザ・プログラム
の作動中に比較的頻繁に生じるため、転送操作の
効率が低いことはシステムの全体的な性能および
管理費に重大な影響を及ぼすおそれがある。加え
て、データ転送操作がしばしばバイト指向であ
り、従つて32ビツトもしくは16ビツトの境界にお
いてさえ突合せを行なう必要がないという事実に
よつて効率の低さも宥恕されるものである。 前述の束縛により、MPU702による各キヤ
ツシユ内データ転送におけるデータの直接の操作
は反復されるバイト操作および境界合せを必要と
し、これによりMPUの作動速度を低下させるお
それがある。本発明の別の特質によれば、各処理
素子はデータをキヤツシユにおけるユーザおよび
監視データ領域間でいずれの方向にも自動的に移
動させて処理中のデータを適正に境界合せを行な
う別の特殊なハードウエアが設けられている。こ
れにより、MPU702におけるプログラム・ル
ープを経由する潜在的に大きな反復回数(一般
に、転送されねばならないデータのバイト当り一
回)が、専用の移動ハードウエアに指令してキヤ
シユ・メモリー738における2つの指定された
領域間にデータを転送させる単一のMPU命令に
減少させられるのである。 処理素子の8つの作動状態の各々については、
第7図のおよび第8図、および作動の状態および
サブ状態について記載する表〜に関して以下
において詳細に記述する。 表〜においては、下記の略号が使用され
る。即ち、
し、特に故障許容形コンピユータのためのメモリ
ー・バツク・アツプ・システムに関する。 発明の背景 多くのコンピユータ・システムが「故障許容性
を有する」ように構成されている。典型的には、
これらのシステムは一回以上の一時的もしくは恒
久的な回路の故障を経験しても、データの脱落も
なくあるいはデータに対して重大なエラーを生じ
ることもなく機能し続けることができる。このよ
うなシステムは、一般には何回の故障が「許容」
され得るか、また故障の取扱いがどれだけ容易で
あるかの観点において相違がある。 完全に故障許容性を持たせるためには、コンピ
ユータはその主記憶装置の1つ以上の部分を不作
動状態にする故障に耐えることができなければな
らない。このような状態においは、データの脱落
もしくは破壊を避けるため、最初の故障によつて
使用不能状態になり得ない別個の記憶場所におい
て使用可能なデータの第2の即ちバツク・アツ
プ・コピーを有することが必要である。従つて、
故障許容形システムにおいては、少なくとも2つ
の主記憶装置を有すること、および両方の記憶装
置内で同時にシステム・データのコピーを保持す
ることが一般的である。 しかし、2つの個々のメモリー内にデータの複
写コピーを保持することは、各データの記憶操作
が2回行なわれなければならず、またこのような
操作が正常の処理操作を同時に行なうことができ
ない処理要素によつて通常監視されているため
に、コンピユータの演算速度における重大な低下
を生じることになる。 データの複写コピーの保持と関連する時間的な
損失を少なくするために、ある従来技術の故障許
容形システムは正常の処理操作の間データの少な
くとも1つのコピーを保持し、また周期的な間隔
でバツク・アツプ・メモリーに保持されたデータ
のコピーを更新する。この方式は、未だコピーさ
れていなかつたデータを保有する部分を使用不能
状態にする主記憶装置において故障が生じなけれ
ば、あるいは主記憶装置またはコピー・メモリー
のいずれかを使用不能状態にする結果コピーが完
了できない(このような故障はデータの保全性の
損失を生じるおそれがある)故障が複写操作自体
において生じなければ、満足に作動する。 本発明の目的 本発明の目的は、1つの故障がデータの脱落も
しくはデータの保全性の喪失を生じ得ないメモリ
ー・バツク・アツプ・システムの提供にある。 本発明の別の目的は、文脈の切換えの間バツ
ク・アツプが迅速かつ有効に行なわれ得るメモリ
ー・バツク・アツプ・システムの提供にある。 本発明の更に別の目的は、大量の処理時間を費
消することにより処理速度を低下させることな
く、データの複写が実施可能であるメモリー・バ
ツク・アツプ・システムの提供にある。 本発明の更に別の目的は、完全なバツク・アツ
プ能力を提供するため必要な回路が最少限度に抑
えられるメモリー・バツク・アツプ・システムの
提供にある。 前述の諸目的および前述の諸問題は、あるプロ
グラムの制御下で修正される全てのデータがプロ
グラムを実行中のプロセツサと関連する非書込み
キヤシユ・メモリーにおいてのみ一時的に記憶さ
れる本発明の一実施態様において解決される。文
脈の切換えもしくは前記キヤシユ・メモリーが一
杯の状態となる桁溢れ状態のため修正されたデー
タをシステムの主記憶装置に書込むことが必要と
なる時、就中その時実行中のユーザ・プログラム
の識別を保持する主記憶装置におけるある特殊な
データ場所が更新されてキヤシユ・メモリーにお
けるデータがこのプログラムと関連する主記憶装
置における第1の領域に対して書込まれつつある
ことを表示する。 この時、プロセツサにおける特殊な回路がユー
ザ・プログラムにより修正されたデータの全てを
第1の領域に対して書込む。この記憶操作の終り
に、主記憶装置における状況ブロツクが再び更新
されて、第1の記憶領域が更新されたこと、およ
び第2のデータが更新されようとしていることを
表示する。その後、同じデータが第2の領域に対
して書込まれる。この第2の記憶操作の後には状
況ブロツクの最後の修正操作が続いて、第2の領
域の更新もまた完了したことを表示する。 従つて、何時故障が生じようとも、主記憶装置
における定常的な1組のデータおよび各ユーザ・
プログラムが再び始動可能な1つの関連したアド
レスが存在する。例えば、もしある処理要素が修
正されたデータ・ブロツクを第1の記憶領域に対
する書込みを最初に開始する前に故障するなら
ば、この第1の記憶領域におけるデータおよび起
動アドレスはこれらが丁度処理要素がプログラム
の実行を開始する前においてそうであつたもので
あり、プログラムは第1の記憶領域における最初
のデータを用いて再び始動することができる。 あるいはまた、もし第1の領域に対する書込み
操作が開始した後であつてこれが完了する前に処
理要素が故障した場合は、主記憶装置における状
況ブロツクは書込み操作が完了しなかつたこと、
および故障回復ルーチンが主記憶装置におけるプ
ログラムの第2の領域の内容をその第1の領域に
対して書込んで別の処理要素に関するプログラム
の再実行を惹起するだけでよいことを表示する。
同様に、コンピユータ・システムは、プログラム
に対し新たな第2の領域を割付けてプログラムの
第1の領域の内容をこの新たな第2の領域に再び
コピーすることにより、主記憶装置におけるプロ
グラムの第2の領域の修正の間に生じる故障から
回復することができるのである。 本発明によれば、第1と第2の記憶装置は物理
的に別個の記憶要素に置かれ、従つて1つの記憶
要素の故障は、コピーが更新されつつある時を除
いて、主記憶装置におけるプログラム・データの
少なくとも1つの一定のコピーを残す。この場
合、システムはいずれか一方もしくは両方の記憶
領域におけるデータの更新を完了することによつ
て回復することができるのである。 関連するキヤシユ・メモリーにおけるプログラ
ムにより修正された全てのデータを記憶しながら
プログラム操作の間然るべき効率を提供するた
め、キヤツユ・メモリーは従来技術のシステムに
おいて典型的に使用されるものよりも遥かに大き
なものでなければならない。このような大きなキ
ヤシユ・メモリーは、通常のキヤシユ操作によれ
ば、新たなユーザ・プログラムが組込まれる前に
各データのキヤシユ・メモリーにおけるエントリ
がシステムの主記憶装置に対して書込まれなけれ
ばならないため、文脈の切換え間大きな時間的犠
牲を課すことがあり得る。 文脈の切換え中キヤシユの内容を書込むため必
要な時間を短縮するため、別のブロツクの状況メ
モリーが各キヤシユ・メモリーと関連させられて
いる。このブロツクの状況メモリーは、関連する
キヤシユ・メモリーにおける各データ・ブロツク
と対応する状況のエントリを保有する。情報が主
記憶装置以外のある場所からあるデータ・ブロツ
クに対して書込まれる時は常に、関連する状況エ
ントリが修正されて、このためプログラム操作中
に変化した情報を識別する。処理要素がシステム
の主記憶装置に対して修正され、また指定された
アドレス範囲内のアドレスを有する如きデータ・
ブロツクのみを書込むことを許容し、これにより
文脈の切換えを行なうために要する時間の長さを
大幅に短縮する特殊目的のハードウエアもまた提
供される。 更に、文脈の切換えを更に容易にするために、
その後の処理操作と並列に付勢することができか
つ文脈の切換え中に仮想メモリー・アドレスの翻
訳マツプを無効化するため使用することができる
特殊目的ハードウエアが処理要素において提供さ
れる。従つて、処理要素における監視プログラム
は、前記の無効化操作を始動させて他の機能へ進
める指令を発するだけでよい。 実施例による説明 第1図に示されるように、例示の故障許容形コ
ンピユータ・システムは、3つの主な要素、即ち
処理素子、記憶素子および周辺素子からなつてい
る。これらの要素の全ては、共通のシステム・バ
ス130,131と接続されている。システムの
操作のためには唯1つのシステム・バスしか必要
でないが、1つのバスにおける誤動作がシステム
全体の操作を停止させることを阻止してシステム
のスループツトを増加させることが望ましい。同
様に、信頼性および速度の観点から、処理、記憶
および周辺の諸素子をシステム・バスに対して結
合するインターフエース装置もまた重視してい
る。図において一本の線として示されるが、バス
130および131は、以下本文に更に記述する
ように、実際には多くの個々のデータおよび信号
改回線らなる多重ワイヤ・バスである。 64個までの処理素子(PE)を例示システムに
対して付設することができるが、明瞭化のためそ
の内3個の処理素子即ち100,105,110
が示されている。各PEは同じものであり、関連
するプロセツサの作用を制御して対応付けるユー
ザのアプリケーシヨン・プログラムおよび監視プ
ログラムの双方を実行することができる従来周知
のデータ処理装置であるプロセツサを包含する。 本発明によれば、各PEはまた、ユーザおよび
監視プログラム・コードおよびデータの双方を一
時的に記憶するキヤシユ・メモリーを保有する。
一般におけるように、キヤシユ・メモリーは有効
なメモリー・アクセス時間を短縮するために使用
される。しかし、以下に更に詳細に記述するよう
に、キヤシユ・メモリーはまた、単一の故障に対
するデータの保全の確保と高速の操作の提供の双
方を行なう故障許容性を有するデータ・バツク・
アツプ機構を提供するために記憶素子と関連して
使用される。 また、各PEには、別の使用頻度の高い監視コ
ードおよびリセツトされる時またはパワー・アツ
プと同時に処理素子が作動状況となることを可能
にするブーストラツプ・ローデイング・プログラ
ムが格納された読出し専用メモリーが含まれてい
る。 例示のコンピユータ・システムはまた、プロセ
ツサにより生成されるアドレス情報が主記憶装置
の各素子に対して与えられる前に翻訳される仮想
メモリー・システムを使用する。仮想アドレスを
主記憶装置の各素子により使用される物理アドレ
スに翻訳するための翻訳表(マツプ)は、各処理
素子に置かれたランダム・アクスセ・メモリーに
格納される。 全ての処理素子は、信頼性を高める目的および
スループツトの増大のため重複されるバス115
〜116の如き冗長なプロセツサ・バスに対して
接続されている。PEによるバス115,116、
およびシステム・バス130,131に対するア
クセスは、信頼性を高める目的およびスループツ
トの増大のため重複させられるマスター・インタ
ーフエース装置120,125によりそれぞれ制
御される。各マスター・インターフエース装置
は、16個までの処理素子の取扱いが可能なシーケ
ンスおよび制御ロジツクおよびバスの任意の回路
を保有する。別の処理素子を収容するため、シス
テム・バス130および131に対して別のプロ
セツサ・バスおよびマスター・インターフエース
装置の対を付設することができる。64個の処理素
子を収容するため、合計4つまでのプロセツサ・
バス対を例示のシステムに含めることができる。 もしある特定のコンピユータ構成において16個
以上の素子が存在する場合は、これら処理素子は
16個までの処理素子からなるグループに分割され
る。16個までの処理素子の各グループは、専用の
マスター・インターフエース装置によつて更にシ
ステム・バスに対して接続される共通プロセツ
サ・バスに対して接続されている。 16個までの処理素子の各グループ内では、監視
制御はプロセツサ間で共用される。特に、如何な
る場合も一時に1つのグループ内の全ての処理素
子により1つの監視即ち「主」処理素子が識別さ
れ、主要な役割が充分に規定された優先方式にお
いて処理素子間に回送される。プロセツサ間の制
御の転送の正確な機構については、参考のため本
文に引用する1982年9月3日出願のJ.J.Stiffler等
の米国特許出願第414961号「モジユラー・コンピ
ユータ・システム」において詳細に記載されてい
る。 全てのシステム・モジユール(記憶素子および
周辺素子を含む)は一義的に1つの処理素子のグ
ループに対して割付けられているが、全ての処理
素子は例えこれらが別のグループに「帰属」する
ものであつても全ての記憶素子およびバス・アダ
プタと通信することができる。更に、システムの
主記憶装置におけるいくつかの共通領域は全ての
処理素子グループによつて識別される。各処理素
子のグループ内では、例えコンピユータ・システ
ムにおいて唯一のグループしかない場合でも、シ
ステムの資源は主要な処理素子により割付けられ
る。グループ間の通信は、このような転送を容易
にするハードウエアの「ロツク」を保有する共通
の記憶領域によつて達成されるのである。 システム・バス130および131は、それぞ
れスレーブ・インターフエース135,140お
よび145,150によつて記憶素子165〜1
75およびバス・アダプタ184〜186に対し
て接続されている。各スレーブ・インターフエー
スは同じものであり、信頼性を高める目的および
システムのスループツトの増大のため冗長な重複
を有する。更に、1対をなす1つのスレーブ・イ
ンターフエースは、その後スレーブ・インターフ
エースが同時に第2の記憶素子またはバス・アダ
プタに対するアクセス経路を提供する間、関連す
るグループにおける1つの記憶素子またはバス・
アダプタに関するデータの入出のためのアクセス
経路を提供するため使用することができる。スレ
ーブ・インターフエース135〜150は、記憶
素子165〜175および周辺バス196〜19
7により生成された信号を(周辺バス・アダプタ
190〜192およびバス・アダプタ184〜1
86を介して)システム・バス130,131上
で使用される信号と共存可能な信号に変換する回
路を含む。 特に、スレーブ・インターフエース135およ
び140はシステム・バス130,131をメモ
リー・バス160,161に対して接続する。図
においては明瞭化のため僅かに2つのメモリー・
バス対160,161および155,156しか
示されていないが、例示のシステムに対しては64
対までの二重冗長メモリー・バスが付設可能であ
る。 メモリー・バス160,161は更に複数の記
憶素子に対して接続され、その3つの素子(記憶
素子165,170およびバス・アダプタ18
5)のバス・アダプタが示されている。これらの
素子は、共にシステムの主記憶装置を構成してい
る。実施例においては、記憶素子は各々ランダ
ム・アクセス・メモリーの221バイトを含み、1
つの従来周知のランダム・アクセス・メモリー装
置からなつている。異なる大きさの他の周知の記
憶装置もまた周知の方式で使用することができ
る。 スレーブ・インターフエース145,150
は、システム・バス130,131をバス16
0,161と同じメモリー・バス155,156
に対して接続する。周辺196,198は、その
内の2つのアダプタ184,186が示されるバ
ス・アダプタと、その内装置190,192が示
される周辺バス・アダプタからなるインターフエ
ース回路によつてバス155および156に対し
て接続されている。各バス・アダプタは、メモリ
ー・バスおよび周辺バス上で受取つたデータ情報
およびシステム・バスを介して処理素子から受取
つた指令を緩衝して定様式化が可能であるバツフ
ア・メモリーおよびデータ処理ロジツクを含んで
いる。特に、各バス・アダプタは、2つの独立的
な指令チヤネルおよび2つの独立的な入出力デー
タおよび指令チヤネル上の信号を取扱うことがで
きる。 アダプタ184の如き各バス・アダプタは、専
用バスを介して周辺バス・アダプタ190に対し
て接続されている。この周辺バス・アダプタは、
マイクロプロセツサおよび関連するプログラム・
メモリーを含む。プログラム・メモリー内に記憶
されたプログラムの制御下で、マイクロプロセツ
サ装置が処理素子と周辺コントローラおよび諸装
置間に情報を送るためのフオーマツト変換および
バツフアリングを行なうことができる。周辺バ
ス・アダプタ装置により行なわれるフオーマツテ
イング機能は、いくつかのルーチン・データ転送
タスクの処理素子(PE)の負荷を軽減すること
により全体的な処理時間を短縮する上で役立つ。
各周辺バス・アダプタは、実施例においてはデイ
スクおよびテープの如き二次的な記憶素子を含む
種々のタイプの入出力コントローラが取付けられ
る種々の標準的な周辺バスに対するインターフエ
ースを提供するように個々にプログラムすること
ができる。周辺バス・アダプタ190〜192
は、内部メモリー・バス155,156に使用さ
れる信号と周辺バス196〜198に対して使用
される信号との間に変換するように、従つて多く
の異なる周辺バス・フオーマツトを例示のシステ
ムにより使用することを可能にするようプログラ
ムすることができる。 バス・アダプタの記憶素子はシステム内に挿入
される時初期のパアー・アツプ・クリアおよび初
期化サイクルが与えられ、この間そのバス・ドラ
イバの全てが遮断されて装置が誤つた情報をシス
テムに対して通信することを阻止する。更に、装
置の内部状況レジスタは予め定めた状態に設定さ
れる。初期化が完了した後、装置はその時の主処
理素子に対して割込みを送り、これによりこの主
処理素子に対してこれが使用可能であることを通
知する。 この割込みに応答して、主要プロセツサは、そ
の内部の故障監視装置が作動状態にありかつその
存在を適当なメモリー表に記録することを検査す
るため装置を調べることにより、新たに挿入され
た装置を初期化する。 もし装置が記憶素子(その状況の読出しによつ
て決定される)であれば、この素子は1つの物理
的名前が与えられてこれが応答する物理アドレス
を規定する。あるいはまた、もし装置がバス・ア
ダプタ/周辺バス・アダプタであれば、関連する
周辺バスにおける周辺装置の番号および形式を判
定するためその内部のマイクロプロセツサが関連
する周辺素子について照会することを許容するあ
るプログラムがその内部のプログラム・メモリー
に対してロードされる。周辺の情報は、適当な操
作プログラムを新たに挿入された装置におけるプ
ログラム・メモリーに対してロードして、メモリ
ーにおけるシステムの構成表を再び更新すること
により応答する割込み機構を介して主要処理素子
に対して再び通知される。 1つの処理素子の更に詳細な機構ブロツク図が
第2図において示されている。各処理素子は同じ
回路を含み、従つて不要な繰返しを避けるため唯
1つの処理素子における回路について詳細に論述
することにする。この処理素子の心臓部はマイク
ロプロセツサ装置(MPU)210であり、これ
はコンピユータ・システムにより取扱われる通常
の演算のほとんどを実施する。マイクロプロセツ
サ装置210は、例示として従来周知の16ビツト
のマイクロプロセツサでよい。適当な特性を有す
るいくつかのマイクロプロセツサ装置が市販され
ておるが、本実施例において使用するため好適な
装置は米国アリゾナ州フエニツクスのMotorola
Semiconductor Products社から入手可能なモデ
ルMC68000マイクロプロセツサである。 MPU210の作用を支持しているのは、MPU
がその処理時間を短縮しかつ有効なメモリー・ア
クセス時間を短縮することを助けるいくつかの他
の装置がある。特に、これらの装置は、メモリー
管理装置200、ROM205およびキヤシユ・
メモリー250を含む。 特に、MPU210は「仮想アドレス」構成に
より作動する。この周知のメモリー構成において
は、MPU210は「仮想」アドレスをコンピユ
ータ・システムの主記憶装置における記憶場所と
対応する実際のアドレスに変換するために翻訳を
必要とする仮想アドレスを生成する。仮想アドレ
スの物理アドレスへの翻訳は、メモリー管理装置
200によつて達成される。装置200は、文脈
切換え中主記憶装置から検索され、内部ランダ
ム・アクセス・メモリーに格納されて仮想アドレ
スから物理アドレスへの翻訳を行なう翻訳「表」
即ち「マツプ」を使用する。特に、MPU210
により生成された仮想アドレス情報は、局部アド
レス・バス220を介してメモリー管理装置20
0に対して与えられる。メモリー管理装置200
は、仮想アドレス情報をコンピユータ・システム
における主記憶装置をアドレス指定するため使用
される物理アドレスに翻訳する。この翻訳された
情報は、処理素子内部の情報のフローを制御し適
当に翻訳されたキヤシユ・アドレスをキヤシユ・
データ・バス285に対してゲートするキヤシ
ユ/局部バス・アダプタ230に対して与えられ
る。 文脈切換え操作の間、翻訳マツプにおけるエン
トリは不当な操作を阻止するため無効化されなけ
ればならない。本発明の1つの特質によれば、文
脈切換えの実施のため必要な時間を短縮するた
め、他の処理装置と平行して付勢することができ
る処理素子において特殊目的のハードウエアが設
けられている。この特殊取付けのバードウエア
は、文脈切換えの間全てのマツプ・エントリを自
動的に無効化する。従つて、処理素子における管
理プログラムは、無効化操作を開始し、次いで他
の機能に進める指令を発するだけでよい。 キヤシユ・メモリー250は、効率のよいメモ
リー・アクセス時間を短縮し、また本発明によれ
ばメモリーのバツク・アツプ構成を提供するため
使用される公知の記憶素子である。特に、主記憶
装置に記憶された情報のサブセツトもまた、キヤ
シユ・メモリー250内に一時的に格納される。
メモリー250は、マイクロプロセツサ装置21
0により提供される仮想アドレスに直接応答し、
もし要求される情報がキヤシユ・メモリーに存在
する(「キヤシユ・ヒツト」と呼ばれる)ならば、
この情報は主記憶装置に対する通常のアクセスが
要するよりも遥かに短い間隔で使用可能な状態と
なる。もし要求された情報がキヤシユ・メモリー
には存在しないが主記憶装置に存在する場合は、
試みられたアクセスは「キヤシユ・ミス」と呼ば
れ、公知の回路が要求された情報を含む「ブロツ
ク」と呼ばれる情報のパーセルを主記憶装置から
キヤシユ・メモリーに対して自動的に転送、即ち
「書込み」を行なう。もし要求された情報が周辺
の2次的記憶領域にしか見出されない場合は、ア
クセスの試みは「ページ障害」を惹起する結果と
なり、これは以下に述べる手順を経て処理される
のである。 キヤシユ・メモリー250は、36ビツト×
32000ワード(実際には、32×1024ワード)の形
態に構成された217バイトのランダム・アクセ
ス・メモリーからなる(各36ビツトのワードは、
それぞれ1つのパリテイ・ビツトと関連する4つ
の情報バイトを含む)。キヤシユ・メモリー25
0から検索された情報は、キヤツシユデータ・バ
ス285およびキヤツシユ/局部バス・アダプタ
230を介して局部データ・バス225へ、次い
てMPU210へ提供される。キヤツシユ/局部
バス・アダプタ230は、32情報ビツトのキヤツ
シユ・バス285と16情報ビツトの局部データ・
バス225との間にインターフエースおよび信号
変換回路を提供する。更に、バス・アダプタ23
0は、キヤツシユ・メモリー250から局部バス
225に対して送られるデータに関するバイオ・
パリテイを検査して、反対の方向に流れるデータ
に対するバイト・パリテイ情報を生成する。 本発明によれば、キヤシユ・メモリー250は
非通し書込み形キヤシユ・メモリーである。ほと
んどの従来のキヤシユ・メモリーは通し書込みメ
モリーである、即ち情報が従来のキヤシユ・メモ
リーに書込まれる時、同じ情報がシステムの主記
憶装置に保持されたデータのコピーにも即時書込
まれる。通し書込み操作は、データの一貫したコ
ピーが1つの場所に保持されることを許容する。
不都合なことにもし処理が完了する前に故障が生
じる場合には、処理中の1つデータ・コピーしか
修正された状態とならず、その結果元のデータに
ついての処理を再開することができなくなる。従
来の操作とは対照的に、本発明のキヤシユ・メモ
リーは非通し書込み形ではなく、そのため修正さ
れたデータが処理中キヤシユ・メモリーにのみ書
込まれる。従つて、もしある障害が処理中に生じ
ると、主記憶装置の元のデータはそのままの状態
で残り、その結果元のデータについて処理を再開
することができるのである。 特に、文脈の切換えまたはキヤシユ・メモリー
250が一杯の状態となる桁溢れ状態のため修正
データをシステムの主記憶装置に書込むことが必
要になる時、就中その時実行中のユーザ・プログ
ラムの識別を含む主記憶装置における特別のデー
タ場所が更新されて、キヤシユ・メモリー250
におけるデータがこのプログラムと関連する主記
憶装置における第1の領域に書込まれつつあるこ
とを表示する。 以下において詳細に記述する処理素子における
特殊な回路は、この特ユーザ・プログラムにより
第1の領域に対して修正されたキヤシユ・メモリ
ー250における全てのデータを書込む。書込み
操作の終りに、主記憶装置における状況ブロツク
は再び更新されて第1の記憶領域が更新されたこ
とおよび第2の領域が更新されようとしているこ
とを表示する。然る後、同じデータが第2の領域
に対して書込まれる。第2の格納操作の後に状況
ブロツクの最終的な修正が続いて第2の領域の更
新もまた完了したことを表示する。 従つて、何時故障が生じたかに拘らず、各ユー
ザ・プログラムを再び開始することができる主記
憶装置および関連するアドレスにおいて一貫した
データの組が残る。例えば、もしある処理素子が
最初に修正されたデータ・ブロツクを第1の記憶
領域に対する書込みを開始する前に故障する場
合、第1の記憶領域におけるデータおよび始動ア
ドレスは、処理素子がプログラムの実行を開始す
る前の状態と丁度同じでありデータ処理タスクは
第1の記憶領域における最初のデータを用いて再
び始動することができるのである。 あるいはまた、もし処理素子が第1の領域に対
する書込み操作を完了する前に故障が生じる場合
には、主記憶装置における状況ブロツクは、書込
み操作は未だ完了せず故障回復ルーチンが主記憶
装置におけるプログラムの第2の領域の内容をそ
の第1の領域に対して書込んで別の処理素子にお
けるプログラムの再実行を惹起するだけでよいこ
とを表示する。同様に、コンピユータ・システム
は、新たな第2の領域をプログラムに対して割付
けしてプログラムの第1の領域の内容を新たな第
2の領域に対して再び複写することにより、主記
憶装置におけるプログラムの第2の領域の修正中
に生じる故障から回復することができるのであ
る。 本発明によれば、第1および第2の主記憶装置
の領域は物理的に別個の記憶領域に置かれ、従つ
て一回の記憶素子の故障はコピーが更新されつつ
ある時を除いてプログラム・データの少なくとも
1つの一貫したコピーを主記憶装置に残す。この
場合、システムはいずれか一方もしくは両方の記
憶領域におけるデータの更新を完了することによ
り前述の如く回復が可能となる。 関連するキヤシユ・メモリーのおけるプログラ
ムにより修正される全てのデータを記憶しながら
プログラム動作における然るべき効率を提供する
ためには、キヤシユ・メモリーは従来技術のシス
テムにおいて典型的に用いられたものよりも遥か
に大きなものでなければならない。このような大
きなキヤシユ・メモリーは通常のキヤツシユの作
動に従つてキヤツシユにおける各データ・エント
リが新たなユーザ・プログラムを組込むことがで
きる前にシステムの主記憶装置に格納されなけれ
ばならないため、文脈の切換えの間大きな時間的
犠牲を強いられるおそれがある。 本発明の別の特質によれば、キヤシユ・メモリ
ー250におけるプログラム動作の間修正された
データ・エントリのみを格納する特殊目的の回路
もまた提供される。 更に、キヤシユ・メモリー250と関連してい
るのはブロツクの状況メモリー255である。メ
モリー255は複数のエントリを含み、その各々
はキヤシユ・メモリー250に格納されたデータ
の1つのブロツク(128バイチのセグメント)に
関する情報を保有する。特に、ブロツクの状況メ
モリー255における各エントリは、もし仮想ア
ドレスが関連するキヤツシユ・ブロツクに対して
その時マツプされるならばこの仮想を識別する
「ラベル」を保有する(仮想アドレス情報はキヤ
ツシユ・アドレス・バス251から受取られる)。
更に、ブロツクの状況メモリー255における各
エントリは、関連するブロツクの内容がその時文
脈(MPU210においてその時実行中のプログ
ラムと関連する)において妥当であるかどうかを
表示する「妥当な」ビツトを含み、各エントリは
また、内容が最初関連するキヤシユ・メモリー・
ブロツクに対してロードされたためもし妥当なら
ば関連するブロツクの内容が変更されたかどうか
を表示する「不当な」ビツトを含む。 本発明の別の特質によれば、ブロツク状況メモ
リー255に格納された妥当および不当ビツト
は、文脈の切換えと同時に主記憶装置に対してブ
ロツク状況メモリーにより「不当な」ものとして
識別された如きブロツクのみの内容を格納する特
殊回路によつて使用され、これにより文脈の切換
えの実施に必要な期間の節減をもたらす。ブロツ
ク状況メモリー255はまた、文脈の切換えの間
キヤシユ・メモリー250の自動的なクリア動作
を制御するため使用することもできる。 キヤシユ・メモリー250は、システムの主記
憶装置からのメモリー250における情報を更新
するため、キヤツシユ・アドレス・バス251上
でアドレス情報を、またプロセツサ・バスからバ
ス・インターフエース265および270を介し
てデータ情報を受取ることができる。更に、イン
ターフエース265および270は処理素子をプ
ロセツサ・バスに対して接続し、各々が19本の割
込み回線(15の情報ビツトおよび4つのパリテ
イ・ビツト回線を含む)および36本のアドレス/
データ回線(32本の情報ビツト回線および4本の
パリテイ・ビツト回線からなる)を収容する。
種々の制御回線(図示せず)はまた、処理素子の
作用を制御するためインターフエース265およ
び270を通過する。 データ・バス280からキヤツシユ・データ・
バス285を介してキヤシユ・メモリー250に
対して送られる情報のバイト・パリテイは、コン
ピユータ・システムの主記憶装置からキヤシユ・
メモリー250に対し転送される情報についての
エラー検出を行なう公知のパリテイ検査回路から
なるパリテイ検査装置260によつて検査され
る。 処理素子とプロセツサ・バス間でインターフエ
ース265,270を介して生じるデータ転送
は、外部の制御シーケンサ245によつて制御さ
れる。以下において更に詳細に論述するように、
シーケンサ245は内部の制御シーケンサ240
からの同期信号を受取つて、適当なアドレスをバ
ス280に対してゲートさせ、制御信号を生成
し、キヤシユ・メモリー250とプロセツサ・バ
ス間のデータ転送を対応付けることによりデータ
の転送を制御するのである。 読出し専用メモリー205はまた、それぞれ局
部アドレス・バス220およびデータ・バス22
5に対して接続され、MPU210によりアクセ
スすることができるプログラム命令を保有する。
特に、ROM205は、最初のシステム・パワ
ー・オンまたはシステムのリセツトの後に処理素
子を再始動するため使用される「ブートストラツ
プ」プログラムを保有する。MPU210の処理
速度を増大するために、ROM205はまた、局
部データ・バス225上でMPU210によりア
クセスすることができる他の頻繁に使用されるオ
ペレーテイング・システム・ルーチンを保有して
いる。 バス280を介するデータ信号の送受に加え
て、インターフエース265および270または
割込み信号を受取つてこれを19ビツト割込みバス
275に対してゲートすることができる。入力す
る割込み信号は割込み回路網235に対して与え
られ、これは割込みバス275上で与えた割込み
データMPU210によりデータの読出しができ
る局部データ・バス225に対してゲートする。
割込みバス275上で受取られた割込みデータ
は、割込みのソースを表示する8ビツトの識別コ
ードと、割込みのレベルを表示する3ビツトのレ
ベル・コードと、所要の割込みルーチンが開始す
る格納場所を表示する4ビツトの割込みベクトル
とからなる。更に、4つのパリテイ・ビツトが、
19ビツトの割込みバス上に残る15の情報ビツトに
おけるエラーを検出するため含まれている。 第3図は、例示の故障許容度を有するコンピユ
ータ・システムのスレーブ・インターフエース装
置の機能ブロツク図を示している。このスレーブ
装置は、バス・インターフエース310によりシ
ステム・バスに対し、またバス・インターフエー
ス315により関連するメモリー・バスに対して
接続されている。システム・バス・インターフエ
ース310は、36本のアドレス/データ回線およ
び関連する制御回線および14本の割込み回線に対
するフイルタおよび緩衝作用を提供するのであ
る。 同様に、メモリー・バス・インターフエース3
15は、10本の割込み回線(2つの割込みレベ
ル・ビツトと、4つの割込みソース識別コード・
ビツトと、4つのパリテイ・ビツトからなる)
と、36本のアドレス/データ回線(32の情報ビツ
トと、4バイトのパリテイ・ビツトからなる)
と、スレーブ・インターフエースからメモリー・
バスに対し、また最終的には記憶素子またはバ
ス・アダプタ装置に対して情報を転送するための
いくつかの関連する制御回線に対するフイルタお
よび緩衝作用を提供する。36ビツトの内部デー
タ・バス340上の情報は、受取つたアドレスお
よびデータに関してバイト・パリテイを検査する
パリテイ回路検査装置320に対して与えられ
る。また、入力情報を復合して診断目的のため使
用される選択された指令を認識し、また処理素子
に対する故障条件の表示に使用される状況条件を
記憶する指令/状況ロジツク325に対して情報
が与えられる。 メモリー・バス・インターフエース315を通
過する10本の割込み回線と、システム・バス・イ
ンターフエース310を通過する14本の割込み回
線が割込みロジツク330に対して設けられてい
る。割込みロジツク330は、もし関連する記憶
素子またはバス・アダプタのいずれかがサービス
を要求する割込み信号を生成中であるかどうかを
判定するため使用される「ポーリング」シーケン
スを生成する公知の回路を含む。特に、各記憶素
子またはバス・アダプタは「ポーリング」、即ち
予め定めたシーケンスにおいて割込みの検出のた
め調べられる。スレーブ・インターフエースは、
更に、マスター・インターフエースにおける割込
み回路(以下において詳細に記述する)によつて
「ポーリング」が行なわれる。スレーブ・インタ
ーフエースによつて検出される割込みは、マスタ
ー・インターフエースから受取るポーリング信号
に応答してバス・インターフエース310を介し
てシステム・バス上をマスター・インターフエー
ス装置に対して伝達されるのである。 スレーブ・インターフエース全体の作用は、装
置における残りの回路に対して同期信号を提供す
るため公知のクロツクおよびシーケンス生成回路
を含む制御ロジツク335により制御され同期さ
せられる。 記憶素子の更に詳細な機能ブロツク図は第4図
において示される。全て記憶素子は同じ回路を含
むため、明瞭化のためその内の1つについてのみ
詳細に記述することにする。各記憶素子は、イン
ターフエース410と415により両方の冗長メ
モリー・バスに対して接続されている。各インタ
ーフエース回路は、10本の割込み回線(6つの情
報ビツトおよび4つのパリテイ・ビツトとからな
る)と、36本のアドレス/詳細回線(32の情報ビ
ツトおよび4つのバイト・パリテイ・ビツトとか
らなる)および何本かの関連する制御回線のフイ
ルタおよびバツフア作用を行なう回路を含む。 入力するアドレス情報は、インターフエース4
10および415によつて、情報がアドレス検出
装置およびゼネレータ回路455に対して与えら
れる内部アドレス・バス420に対して送られ
る。回路455は、関連する記憶素子が応答する
ようにプログラムされるアドレスを復合してこれ
を検出する。更に、周知の原理によれば、この回
路はランダム・アクセス・メモリー(RAM)ア
レー470において格納されたデータのブロツク
(128バイト)をアクセスするため必要な一連のア
ドレス情報を生成する。回路455により生成さ
れたこの情報は、RAMのタイミング兼制御回路
460に対して与えられる。この回路はまた、タ
イミング信号(行および列のアドレスのストロー
ブ)およびRAMアレー470の制御のため使用
される制御信号(チツプ選択)を生成する公知の
回路を含む。更に、RAMのタイミング回路46
0はRAMアレー470における情報のアクセス
のため必要なアドレス・リード(行および列アド
レス)を付勢してアレー470における情報の脱
落を防止するため周期的な「リフレツシユ」信号
を提供する回路を保有する。 RAMアレー470は、320個の64Kダイナミツ
ク・ランダム・アクセス・メモリー素子を含んで
いる。これらの素子は、多数の半導体製造企業か
ら入手可能な従来周知の市販される記憶素子であ
る。アレー470は、8行×40列のアレー(219
個の32ビツト・ワード、8パリテイ・ビツト行)
に対して構成されている。回路460によりタイ
ミング制御信号および内部アドレス・バス420
を介して与えられるアドレス信号に応答して、
RAMアレー470はエンコーダ/デコーダ45
5に対して格納された情報および関連する格納さ
れたパリテイ検査ビツトを提供する。回路455
は、RAMアレー470から検索された40ビツト
の符号化された情報を受入れ、8ビツトのパリテ
イ情報コードを用いて公知のエラー補正手法に従
つてどんな単一ビツト・エラーでも識別してこれ
を補正する。また、公知のエラー検出手法に従つ
て、8ビツトのエラー補正コードは全ての二重お
よび最も重複するビツトのエラーを検出するため
使用される。状況フラツグは回路445によりセ
ツトされてエラーが生じたことを表示する。エン
コーダ/デコーダ回路445はまた、適正である
かあるいはエラー補正回路により補正された全て
の検索された情報と共に送られるバイト・パリテ
イ・ビツトの生成に使用される。RAMアレー4
70から検索され(およびおそらくは補正され
た)32ビツトの情報ワードが、4つのパリテイ・
ビツトと共に、36ビツトの内部データ・バス42
0に対して与えられ、またインターフエース41
0および415を介してメモリー・バスおよびコ
ンピユータ・システムの他の装置に対して与えら
れる。 割込みロジツク430、状況および指令ロジツ
ク435、電源監視回路440および制御シーケ
ンサ450を含む記憶回路のサービスのためいく
つかの別の回路が使用される。制御シーケンサ4
50は、その種々の操作を経て記憶素子の順序付
けのため使用される制御信号および同期信号を生
成する。これらのシーケンス信号は標準的な方法
で生成される。 電源監視回路440は、システムの電力供給状
態を監視し、電力が最初に記憶素子に対して供給
される時「クリア」即ちリセツト信号を生成す
る。更に、電力監視回路440はまた、記憶素子
がリフレツシユ専用モードに入ることができ、こ
れにより電力の消費を節減しながら格納された情
報をそのままの状況に維持するように予備電力の
みが使用可能状態となる条件を検出するのであ
る。 状況および指令ロジツク435は、故障条件の
間処理素子とによる外部アクセスのため状況情報
を格納する(例えば、故障条件および故障の時に
アクセスされつつあるアドレス等)。指令435
はまた、診断試験および他の診断機能の構成のた
め使用される指令を処理素子から受入れる。 割込みロジツク430は、格納素子における故
障の事象においてスレーブ・インターフエースに
対する割込みを開始し、記憶素子の最初のパワ
ー・アツプと同時に記憶装置がリセツトされる時
もしくはパワー・アツプと同時に使用可能となり
作動状態となることを表示する。 各処理素子は同じ回路を含むが、各処理素子
は、処理素子モジユールが挿入されるコネクタ・
スロツトの電気的配線により決定される一義的に
6ビツトの識別番号を割付けられる。この識別番
号は、以下に記述するように、制御の転送および
バスのアクセス操作のためその関連するマスタ
ー・インターフエースに対する各処理素子を識別
するため使用される。 キヤシユ・メモリーおよびこれを制御して種々
の移動および記憶ルーチンを実施する回路につい
て、以下に詳細に論述する。特に、第5図および
第6図は、メモリーを使用する監視およびユー
ザ・プログラム間のキヤシユ・メモリー空間の割
付け状態を示している。実施例においては、キヤ
シユ・メモリー(第2図におけるメモリー25
0)は、128Kバイトのメモリーを有する高速の
ランダム・アクセス・メモリーからなる。メモリ
ー全体は、アドレス00000〜1FFFF(16進数)と
対応する14ビツトのアドレス・コードにより一義
的にアクセスすることができる。合計128Kバイ
トのメモリーがキヤシユ・メモリーと共に作動す
る監視プログラムとユーザ・プログラム間に分割
される。監視およびユーザ・プログラム間の記憶
空間の分割状態は予め定めされて固定されてい
る。 更に、最初の64Kバイトの記憶空間(アドレ
ス・コード00000〜0FFFFと対応する)と対応す
るメモリーの半分がユーザ・プログラムのみによ
る使用のため恒久的に割付けられている。同様
に、残りの64Kバイトのメモリー(アドレス・コ
ード10000〜1FFFFと対応する)は、関連するマ
イクロプロセツサにおいて実行中の監視プログラ
ムによる使用のため恒久的に割付けされている。 ユーザ・プログラムに割付けされた64Kバイト
の内、最初の32Kバイト(アドレス・コード
00000〜07FFFと対応する)はユーザ・プログラ
ムの記憶のため恒久的に割付けされている。次の
32Kバイトのメモリー(アドレス08000〜0FFFF
と対応する)はユーザ・プログラム・コードの記
憶における使用のため恒久的に割付けされてい
る。 類似の分割法(32Kバイドずつ)は監視データ
およびコードに対しても行なわれている。しか
し、監視コードおよびデータの両領域は2つの
16Kバイトの領域に更に分割されている。選択さ
れた1つの16Kバイトの領域においては、頻繁に
使用される監視プログラム・コードが恒久的に格
納される。監視プログラム・コードの他の16Kバ
イトの領域においては変更可能即ち「オーバーレ
イ可能な」コードが格納され、その内容はプログ
ラムの操作中変更することができ柔軟性を提供す
る。 これもまた32Kバイトのメモリーからなる監視
データ記憶領域も同様に2つの16Kバイトの部分
(それぞれ、アドレス18000〜1BFFFおよび1C000
〜1FFFFと対応)に分割されている。監視コー
ドの場合と同様に、監視データ領域は固定されオ
ーバーレイ可能な部分に分割されている。 実施例においては、マイクロプロセツサ装置は
24ビツトのアドレス(A0〜A23)を生成するこ
とができ、従つてアドレス000000〜FFFFFF(16
進数)と対応する略々16メガバイトの情報を個々
にアドレス指定することができる。アドレス・コ
ードの生成に加えて、このようなマイクロプロセ
ツサはまた、マイクロプロセツサにより生成され
たアドレス・コード信号を指定するアドレス・コ
ード信号がユーザのデータ、ユーザのコード、監
視データまたは監視コードのどれに指向されるか
を指示する3つの機能コード信号(FC0〜FC2)
を提供することもできる。ユーザ・データ、ユー
ザ・コードおよび監視コードの空間と対応するこ
の機能コードの状態は、それぞれFC2〜FC0=
001、010および110である。監視データの場合は、
FC2〜FC0=101であり、また更にアドレス・ビ
ツトA23は2つのタイプのアドレス、即ちメモリ
ー・アドレスおよび特殊アドレス間を識別するた
め使用される。特殊アドレスは、以下に説明する
ように、特別のキヤシユ・メモリーの制御操作の
間に使用される。 マイクロプロセツサにより生成される24ビツト
のアドレス・コードは合計16Mバイトのデータの
アドレス指定のため使用することができ、キヤシ
ユ・メモリーは僅かに128Kバイドのメモリーし
かないため、マイクロプロセツサにより生成され
るアドレスからキヤシユ・メモリー空間に対して
翻訳即ち「マツプ」するためにはある手段を用い
なければならない。特に、実施例においてはブロ
ツク状況メモリーはキヤシユ・メモリーと関連し
ている。このブロツク状況メモリーは、キヤシ
ユ・メモリーにおける128Kバイトの情報ブロツ
ク毎に1つの記憶場所を保有する。キヤシユ・メ
モリー・ブロツクが主記憶装置からロードされる
時、24ビツトの仮想アドレスの一部がデータを書
込むための場所を選択するためにキヤシユ・メモ
リーに対して与えられる。残りのアドレス(「ラ
ベル」)は、ブロツク状況メモリーにおいて対応
する場所に格納される。MPUアクセスの後期に
おいては、マイクロプロセツサが生成した仮想ア
ドレスのこの部分はアクセス・ブロツクと関連す
る記憶されたラベルと対比される。突合せによ
り、記憶されたデータがマイクロプロセツサにお
いて実行中のプログラムに対して妥当であること
を表示する。 第5A図は、監視プログラム・コードに対する
キヤシユ・メモリー空間に対する仮想メモリー空
間の対応状態を示している。合計のキヤシユ・メ
モリー・アドレス空間および監視およびユーザ・
プログラムにおけるその割付け状態は同図の右側
におけるブロツクに略示されている。左側におけ
るブロツクにおいては、監視プログラム・コード
に対する全仮想アドレス空間の形態が示されてい
る。 特に、24のアドレス・ビツトによりアドレス指
定することができる約16Mバイトの仮想記憶空間
からは、最初の16Kバイト(アドレス000000〜
FFFFFFと対応)がマイクロプロセツサと関連
する読出し専用メモリー装置(第2図において読
出し専用メモリー205として示される)におけ
る場所に対して割当てられている。前述の如く、
読出し専用メモリー205に格納された情報はシ
ステムの起動および診断プログラムのため使用さ
れる。 次の16Kバイトの仮想アドレス空間は、キヤツ
シユ・メモリーに恒久的に格納された(アドレス
004000〜007FFFと対応する)監視プログラムに
割当てられ、1対1でキヤシユ・メモリーの空間
の16Kバイト部分に変換する。16Kバイトのキヤ
シユ・メモリー部分のおける各場所を指定するた
めに14ビツト(ビツト0乃至13)しか必要でな
く、残りの10ビツト(ビツト14乃至23)は「ラベ
ル」として表わされブロツク状況メモリーに格納
される。仮想アドレスと固定された監視コード間
の変換は1対1であるため、10ビツトのラベルが
固定される(ビツト14=1であり、ビツト15〜23
=0)。 アドレス008000〜FFFFFFと対応する約16M
バイトからなる仮想アドレス空間の残り(仮想ア
ドレス空間全体マイナス既にROMに対して割当
てられた32Kバイトおよび固定の監視コード)
は、アドレス1C000〜1FFFFからなるキヤシユ・
メモリーの残りの16Kバイトの監視コード部分に
対してマツプする。固定された監視コードの場合
のように、仮想アドレス空間の下位の14ビツトが
キヤシユ・メモリーにおけるある場所を指定す
る。残りの10ビツト(ビツト14〜23)は、ブロツ
ク状況メモリーにおける関連する場所においてラ
ベルとして格納される。 第5B図は、監視データに対する仮想アドレス
のキヤシユ・メモリーに対するマツピングを示し
ている。下位の16Kバイト(アドレス000000〜
0003FFFからなる)は、1対1の関係で16Kバイ
トの固定監視データ領域(アドレス10000〜
13FFFからなる)に対してマツプされる。次の
監視データ空間は、アドレス004000から始まりア
ドレス7FFFFFまで続く略々8Mバイト(8Mバイ
トマイナス16Kバイト)からなるオーバーレイ可
能な空間である。この空間は、アドレス14000〜
17FFFからなるキヤシユ・メモリーにおける16K
バイトのオーバーレイ可能な監視データ空間にマ
ツプする。残りの10ビツトは監視コードにおける
ように、ブロツク状況メモリーに格納され、アク
セスと同時に突合せのため使用される。 アドレス800000〜FFFFFFからなる残りの8M
バイトの監視復号の仮想アドレス空間は、以下に
詳細に記述するように、キヤシユ・メモリーの制
御操作の間特別なアドレスに対して使用される。 第6図は、ユーザ・コードおよびユーザ・デー
タのための仮想アドレス空間の割当て状態を示し
ている。第6A図に示されるように、16Mバイト
からなる全仮想アドレス空間(アドレス000000〜
FFFFFF)は、キヤツユ・メモリーにおけるア
ドレス08000〜0FFFFに位置された32Kバイトの
ユーザ・コード領域に変換する。32Kバイトのキ
ヤシユ・メモリーを一義的にアドレス指定するた
め15ビツト(0〜14)が必要であり、残りのビツ
ト(15〜23)はブロツクの状況メモリーにおいて
9ビツト・ラベルとして記憶され、監視コードお
よびデータ・ラベルと同様な方法で使用されて妥
当なデータについて検査する。 第6B図に示されるように、ユーザ・データに
対する16Mバイトの空間全体もまた、アドレス
000000で始まりアドレス07FFFまで続く32Kバイ
トのキヤツユ・メモリー空間にマツプされる。ユ
ーザ・コードの場合のように、9ビツト・ラベル
がブロツク状況メモリーにおいて格納される。 キヤシユ・メモリーおよびその関連する支持回
路の作用については、第7図のおよび第8図に関
連して詳細に記述する。特に第7図は、ブロツク
状況メモリーおよびキヤツユ・メモリーの作用と
関連する支持回路の簡単なブロツク図を示す。第
8図に、要求された情報がキヤツユ・メモリーに
存在しない場合にシステムの主記憶装置から情報
を読出すため使用される回路の詳細なブロツク図
を示す。多くの回路ブロツクのデータな構造につ
いては明瞭化のため詳細には示さないが、マルチ
プレクサおよびラツチ回路は設計ならびに構造に
おいて標準的なものであり、その作用は当業者に
は周知のものである。 第7図においては、キヤツシユ制御回路は、キ
ヤシユ・メモリーの各部およびその支持回路の作
用を対応付け同期化する制御信号を生じる内部の
シーケンサコントローラ700を含んでいる。内
部のシーケンサ・コントローラ700の詳細な構
造もまた明瞭化のため示さない。このコントロー
ラは以下に示される状態表に従つて標準的な離散
論理回路、誂らえられたアレー・ロジツクまたは
読出し専用メモリーのいずれかを用いて構成する
ことができる。特に、シーケンス・コントローラ
の場合は、「遊休状態」にある時MPU702から
のアクセス指令に対して迅速い応答することが望
ましいため、シーケンサが遊休状態にある間生成
されるMPU702からの信号の処理に用いられ
る回路は高速の離散状もしくは特別注文のアレー
論理回路であることが望ましい。シーケンサの状
態の残りは読出し専用メモリーを用いて構成する
こがとできる。 シーケンサ700は、MPU702により要求
されるタイプの動作を表示するMPU702から
多くの信号を受取る。特に、MPU702はその
24本のアドレス・リードA0〜A23において1組
のアドレス信号を生じる(更に述べれば、MPU
702はアドレス信号A0は生成しないが、その
代りMPU702は種々の回路におけるデータの
受取りの制御のため使用される2つのデータ・ス
トローブ信号即ちUDSおよびLDSを生成する。)
妥当なアドレスがリードA0〜A23に存在する時
は、MPU702はアドレス・ストローブ・リー
ドASを保持する以下の記述においては、信号の
呼称(例えば、AS)は信号が保持された状態に
あることを示し、信号の名前の後の*印(例え
ば、AS*)の存在は信号が無視されるかあるい
は保持されないことを示している。 MPU702はまた、前述の如く3つの機能コ
ード信号FC0乃至FC2、およびその時の操作が読
出し操作か書込み操作かを表わす読出し/書込み
信号Rを生じる。 更に、シーケンサ700は外部の制御シーケン
サ(図示せず)と相互に作用する。この外部のシ
ーケンサは、プロセツサ・バス上で作用素子とコ
ンピユータ・システムの残りの素子との間の情報
の流れを制御する。このようなシーケンサの設計
および構造は明瞭であり、本文においては詳細に
記述しない。その作用の間、外部シーケンサはプ
ロセツサ・バスの制御回路に固定された一連の操
作を行なわせるが、この操作においてはプロセツ
サ・バスのドライバがプロセツサ・バスとコンピ
ユータ・システムの残りの素子との間に情報をゲ
ートするように制御される。この時受取つた情報
は定様式化され、エラーについて検査され、処理
素子における内部データ・バスに対して転送され
る。外部のシーケンサ(またはバス転送機械)の
作用は、シーケンサが始動リード(ST)を保持
する時シーケンサ700によつて始動される。外
部のシーケンサが作動中、このシーケンサは使用
状態の信号(BB)をシーケンサ700に対して
戻す。要求されたデータ転送動作が完了した後、
使用状態の信号は無視される(BB*)。 シーケンサ・コントローラ700は、その動作
の過程において、第7図に示された種々の回路ブ
ロツクを制御しまたMPU702に要求された動
作の状況を通知するために使用される多くの信号
を生じる。特に、シーケンサ・コントローラ70
0は、保持される時MPU702に対して要求さ
れた動作が開始されたかあるいは以下に記述する
ように完了したかについて表示する確認信号
(ACK)を生じる。内部のシーケンス・コントロ
ーラ700により生成される他の出力(CE、
R/W、WE)は、キヤツユ・メモリー738お
よびブロツク状況メモリー736の双方を使用可
能状態にするため使用され、その読出しおよび書
込みサイクルを制御する。更に他の出力は、種々
のマルチプレクサを切換えて情報を以下に詳細に
記述するように回路の各ブロツク間に転送するた
め使用される。 シーケンサ700の制御下で、各処理素子は8
つの充分に規定された状態の1つにあり得る。こ
れらの状態の各々において、ある特定の動作即ち
ルーチンが処理素子の回路によつて実施される。
各シーケンサの状態は、1つの文字からなる簡略
コードによつて表わされ、その各々が一般にシス
テム・クロツクの各クロツク・パルスの間に生じ
る1つ以上のサブ状態からなつている。 8つの状態の第1の遊休状態(簡略コード
「I」により識別される)である。内部の情況シ
ーケンサ700は、これがMPU702からアク
セス要求を受取るまでは遊休状態に止まる。遊休
状態においては、シーケンサ700は、MPU7
02がそのアドレス出力リード上にあるアドレス
を置いたことまたこれが1つのアクセス操作を要
求中であることを示すMPU702により生成さ
れたアドレス・ストローブ信号についてアドレ
ス・ストローブ・リード(リードASとして表わ
される)を監視する。MPUからアドレス・スト
ローブ信号を受取ると同時に、内部の制御シーケ
ンサは以下において詳細に説明する種々の条件に
従つて残りの7つの状態の内の1つに移動する。 8つのシーケンサの状態の第2は確認状態(簡
略コード」「A」で表わされる)である。この状
態においては、内部の制御シーケンサはMPU7
02に対して、要求されたアクセス操作が完了し
てMPU702により要求されたデータが使用可
能であることを信号する。 第3のシーケンサの状態は特別な確認状態(状
態「S」として表わされる)である。この状態に
ある間、この状態に入つた時の処理素子の状態に
従つて、シーケンサがブロツクの状況メモリーま
たは他の特別なレジスタを使用可能状態にする。 第4の状態は読出し状態(簡略コード「R」)
である。この状態においては、内部の制御シーケ
ンサは外部の制御シーケンサを付勢して、システ
ムの主記憶装置からプロセツサのデータ・バスを
介してキヤツユ・メモリー738に対するデータ
の読込みを可能にする。 第5の状態は桁溢れ状態(簡略コード「O」)
である。この状態においては、内部の制御シーケ
ンサ700はキヤツシユの「桁溢れ状態」をサー
ビスするための適正な指令を生じる。通常主記憶
装置からある特定の場所において検索されてキヤ
ツユ・メモリー738に対して格納されることに
なるある項目がキヤツユ・メモリー738に格納
することができない場合に、この場所が主記憶装
置に対して最初に移動させねばならない妥当デー
タを既に保有しているため、キヤツシユの桁溢れ
が生じる。 特に、情報をキヤツユ・メモリー738から読
出す試みの間キヤツシユの「ミス」の状態が生じ
る場合に、処理素子における回路はアドレス指定
された項目を含むデータのブロツクをシステムの
主記憶装置からキヤツユ・メモリー738へ転送
しようと試みる。もしこの試みられた転送が成功
すれば、データ処理は正常に進行する。もしこの
試みられた転送がキヤツシユの桁溢れを惹起する
結果となるならば、主記憶装置から検索された情
報のブロツクはその正常の場所の代りにキヤツシ
ユにおける「桁溢れバツフア」の場所に格納され
る。アドレス指定された項目は、次に、桁溢れバ
ツフアから取出され、キヤツシユの桁溢れが生じ
た時MPU702により実行中であつた命令は完
了することを許容される。この時、正常のデータ
処理は割込みが行なわれて、その結果以下に詳細
に記述する如き特殊な回路が主記憶装置に対する
キヤシユ・メモリー738のデータの前に修正さ
れた部分を格納することができ、これによりキヤ
シユ・メモリー738における別のデータのため
の余地を提供する。あるいはまた、もしキヤシ
ユ・メモリー738に対する書込みアクセスと同
時にキヤツシユの桁溢れが生じるならば、書込ま
れるべきデータはその正常の格納場所がクリアさ
れるまでキヤツシユの桁溢れバツフアにおいて一
時的に格納される。 キヤシユ・メモリー738に関する読出しまた
は書込みのアクセスの間ページの障害が生じるな
らば、操作のシーケンスは僅かに異なる。ページ
の障害に対する応答は、この障害がキヤシユ・メ
モリー738からのプログラム・コードの読出
し、またはデータの書込み操作、またはデータの
読出し操作をどれを行なうとして生じたかに依存
する。もしデータの障害が要求された命令の実行
の代りに試みられたコードの検索において生じた
ならば、キヤシユ・メモリーの回路は特別な「ト
ラツプ」命令を戻す。MPU702は、トラツプ
命令を認識するようにプログラムされており、こ
れと同時に二次的な格納領域からの所要のコード
の検索を開始することができるように主要プロセ
ツサとなる要求を開始する。 データの書込みの試みにおいて生じるページ障
害は、キヤツシユの桁溢れと同様に処理される。
即ち、データはキヤツシユ桁溢れバツフアに一時
的に格納され、正常の処理に対して割込みが行な
われる。この割込みに応答して、処理素子は再び
主要プロセツサとなることを要求し、その結果二
次的な格納からの情報の必要な検索を開始し新た
なユーザ・タスクを選択することができる。 データの読出しの試みと同時に生じるページ障
害は処理素子をして正常の処理動作を停止させる
よう強制し、またその時の主プロセツサが所要の
データのページを二次的格納状態から主記憶装置
に移動させることを要求する。二次的格納状態か
ら主記憶装置に対するデータの転送が行なわれた
後、主要プロセツサは要求されたページを含む主
記憶装置における場所のページ障害を生じた処理
素子を通知する。この時、ページ障害を生じた処
理素子は正常の処理動作を再開して、ページ障害
をキヤツシユの桁溢れと全く同じ方法で処理す
る。特に、アドレス指定されたデータ・ブロツク
はキヤシユ・メモリーに対して転送され、その時
実行中の命令が完了することを許容される。この
時通常の処理は割込みが行なわれ、その結果メモ
リー管理装置におけるマツプが更新されて主記憶
装置におけるページの場所を表示することができ
る。もしページ障害と関連してキヤツシユの桁溢
れも生じるならば、桁溢れの後に生じる前述の処
理もまた正常の操作が再開する前のページの障害
後に生じるのである。 処理素子の次の状態は、この処理素子が主記憶
装置に関する以外の転送を行なう外部の状態(簡
略コード「E」で表わされる)である。 次の状態は、内部のシーケンサが主記憶装置に
対してキヤシユ・メモリー738における全ての
不当なデータ・ブロツクの内容を格納するキヤシ
ユ・メモリー回路の作用を制御することができる
フラツシユ状態(簡略コード「E」で表わされ
る)と呼ばれる。前述の如く、本発明の一特質に
よれば、このフラツシユ操作は、MPU702に
よる直接制御とは独立的なフラツシユ操作を実施
するキヤシユ・メモリーと接続された特殊目的の
ハードウエアによつて実施される。特に、MPU
702は制約間のフラツシユを指令することがで
き、この場合には指定されたハードウエアが主記
憶装置に対する指定された制約範囲内に見出され
る全ての不当なブロツクを自動的にフラツシユす
る。更に、この特殊目的のハードウエアは、デー
タの各ブロツクがフラツシユされることにより以
降のキヤシユ・メモリーの動作に対するブロツク
状況メモリーを初期化する時、ブロツク状況メモ
リーに格納され前記ブロツクと関連する状態ビツ
トがリセツトされることをMPU702が要求す
ることを許容する。この同じ回路は更にユーザお
よび監視コード・ブロツクを無効化するため使用
することができ、この操作はさもなければ文脈の
切換えの実施に要することになる期間を大幅に短
縮する。 処理素子の最後の作動状態は移動状態(簡略コ
ード「M」)と呼ばれる。移動状態においては、
内部のシーケンサは、キヤシユ・メモリー738
における1つの場所からキヤシユ・メモリー73
8における別の場所に対してデータを移動させる
別の回路を制御する信号を生成する。このような
動作は、ほとんどのコンピユータ・プログラムが
キヤシユ・メモリーにおけるユーザ・データと監
視データ領域間の頻繁なデータ転送に関わるため
に必要である。例えば、入出力操作は一般にユー
ザ・プログラムの半分に関して監視プログラムに
よつて実施される。その結果、出力データはキヤ
シユ・メモリーにおけるユーザ・データ領域から
監視データ領域に対して転送されなければならな
い。同様に、監視領域からの入力データはユーザ
領域に対して転送されなければならない。これら
のキヤツシユのデータ転送がユーザ・プログラム
の作動中に比較的頻繁に生じるため、転送操作の
効率が低いことはシステムの全体的な性能および
管理費に重大な影響を及ぼすおそれがある。加え
て、データ転送操作がしばしばバイト指向であ
り、従つて32ビツトもしくは16ビツトの境界にお
いてさえ突合せを行なう必要がないという事実に
よつて効率の低さも宥恕されるものである。 前述の束縛により、MPU702による各キヤ
ツシユ内データ転送におけるデータの直接の操作
は反復されるバイト操作および境界合せを必要と
し、これによりMPUの作動速度を低下させるお
それがある。本発明の別の特質によれば、各処理
素子はデータをキヤツシユにおけるユーザおよび
監視データ領域間でいずれの方向にも自動的に移
動させて処理中のデータを適正に境界合せを行な
う別の特殊なハードウエアが設けられている。こ
れにより、MPU702におけるプログラム・ル
ープを経由する潜在的に大きな反復回数(一般
に、転送されねばならないデータのバイト当り一
回)が、専用の移動ハードウエアに指令してキヤ
シユ・メモリー738における2つの指定された
領域間にデータを転送させる単一のMPU命令に
減少させられるのである。 処理素子の8つの作動状態の各々については、
第7図のおよび第8図、および作動の状態および
サブ状態について記載する表〜に関して以下
において詳細に記述する。 表〜においては、下記の略号が使用され
る。即ち、
【表】
【表】
【表】
び使用可能状態
A2D 状態1への飛越し 無条件
A2D 状態1への飛越し 無条件
Claims (1)
- 【特許請求の範囲】 1 初期データに関するデータ処理タスクのため
の処理素子と、初期データの複製コピーと前記処
理素子により生成された演算結果とを記憶するた
めの少なくも2つの別個の記憶領域とを有する障
害許容形コンピユータ・システムのためのメモリ
ー・バツク・アツプ装置において、 前記処理素子と関連する一時記憶領域と、 前記データ処理タスクの最初で前記記憶領域の
1つから前記一時記憶領域に対して初期データを
書込む第1の装置と、 前記演算結果と前記データ処理タスク中に前記
処理素子から生成されたタスクを前記一時記憶領
域だけに書込む装置と、 前記データ処理タスクの終了時に、前記一時記
憶領域の選択された部分を前記記憶領域の第1の
1つに対して転送する第2の装置と、 前記一時記憶領域と前記記憶領域の第1の1つ
との間におけるデータ転送の完了と同時に、前記
一時記憶領域の前記選択された部分を前記記憶領
域の第2の1つに対して転送する第3の装置と、 を備えたことを特徴とするメモリー・バツク・ア
ツプ装置。 2 前記第1および第2の記憶領域に対して、前
記データ処理タスク中に前記処理素子により生成
されたデータと演算結果とを含む前記一時記憶領
域の部分だけに転送する様に前記第2および第3
の転送する装置を制御する装置を更に備えること
を特徴とする特許請求の範囲第1項に記載のメモ
リー・バツク・アツプ装置。 3 バツク・アツプ状況レジスタと、前記一時記
憶領域と前記第1及び第2の記憶領域間の情報の
転送に応答して、前記バツク・アツプ状況レジス
タに記憶されたバツク・アツプ状況情報を更新す
る装置とを更に設け、前記バツク・アツプ状況情
報は前記一時記憶領域から転送されたデータを含
む記憶領域を確認することを特徴とする特許請求
の範囲第1項に記載のメモリー・バツク・アツプ
装置。 4 前記更新装置は、前記一時記憶領域から前記
第1の記憶領域に対する第1の転送動作の開始に
応答して前記バツク・アツプ状況レジスタを更新
し、また前記第1の転送動作の完了に応答して前
記バツク・アツプ状況レジスタを更新することを
特徴とする特許請求の範囲第3項に記載のメモリ
ー・バツク・アツプ装置。 5 もし、前記第1の転送動作の開始前にシステ
ムの障害が生じる場合、前記バツク・アツプ状況
情報に応答して前記第1の記憶領域に記憶された
前記の初期データを利用するデータ処理タスクを
再開する装置を更に設けることを特徴とする特許
請求の範囲第4項に記載のメモリー・バツク・ア
ツプ装置。 6 前記バツク・アツプ状況情報に応答して前記
第2の記憶領域の内容を前記第1の記憶領域に転
送し、前記第1の転送動作の開始後であるが該第
1の転送動作が完了する前にシステムの障害が生
じる場合、前記第1の記憶領域に記憶された初期
データを用いてデータ処理タスクを再開する装置
を更に設けてなることを特徴とする特許請求の範
囲第5項に記載のメモリー・バツク・アツプ装
置。 7 前記更新装置が、前記一時記憶領域から前記
第2の記憶領域への第2の転送動作の開始に応答
して前記バツク・アツプ状況レジスタを更新し、
前記第2の転送動作の完了に応答して前記バツ
ク・アツプ状況レジスタを更新することを特徴と
する特許請求の範囲第6項に記載のメモリー・バ
ツク・アツプ装置。 8 前記バツク・アツプ状況情報に応答して前記
第1の記憶領域の内容を前記記憶領域の別の1つ
に対して転送し、もし前記第2の転送動作の開始
前にシステムの障害が生じる場合、前記第1の記
憶領域に記憶されたデータを用いてデータ処理タ
スクを再開する装置を更に設けることを特徴とす
る特許請求の範囲第7項に記載のメモリー・バツ
ク・アツプ装置。 9 前記バツク・アツプ状況情報に応答して前記
第1の記憶領域の内容を前記記憶領域の別の1つ
に対して書込み、前記第2の転送動作の開始後で
あるが該第2の転送動作が完了する前にシステム
の障害が生じる場合、前記第1の記憶領域に記憶
されたデータを用いてデータ処理タスクを再開す
る装置を更に設けることを特徴とする特許請求の
範囲第8項に記載のメモリー・バツク・アツプ装
置。 10 前記一時記憶領域がキヤツシユメモリを含
むことを特徴とする特許請求の範囲第1項に記載
のメモリー・バツク・アツプ装置。 11 前記第1および第2の記憶領域が物理的に
離れていることを特徴とする特許請求の範囲第1
項に記載のメモリー・バツク・アツプ装置。 12 前記第1および第2の記憶領域が単一の大
きい記憶装置の物理的に離れた領域であることを
特徴とする特許請求の範囲第1項に記載のメモリ
ー・バツク・アツプ装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US44841982A | 1982-12-09 | 1982-12-09 | |
| US448419 | 1982-12-09 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS59160899A JPS59160899A (ja) | 1984-09-11 |
| JPH0454260B2 true JPH0454260B2 (ja) | 1992-08-28 |
Family
ID=23780249
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58232645A Granted JPS59160899A (ja) | 1982-12-09 | 1983-12-09 | メモリ−・バツク・アツプ・システム |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US4654819A (ja) |
| EP (1) | EP0128945B1 (ja) |
| JP (1) | JPS59160899A (ja) |
| AU (1) | AU569857B2 (ja) |
| CA (1) | CA1210157A (ja) |
| DE (1) | DE3382152D1 (ja) |
| WO (1) | WO1984002409A1 (ja) |
Families Citing this family (392)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| USRE37305E1 (en) | 1982-12-30 | 2001-07-31 | International Business Machines Corporation | Virtual memory address translation mechanism with controlled data persistence |
| JPS603047A (ja) * | 1983-06-20 | 1985-01-09 | Canon Inc | 記憶制御方式 |
| DE3502147A1 (de) | 1984-01-23 | 1985-08-08 | Hitachi Microcomputer Engineering Ltd., Kodaira, Tokio/Tokyo | Datenverarbeitungssystem mit verbesserter pufferspeichersteuerung |
| EP0254247A3 (de) * | 1984-04-26 | 1988-08-10 | BBC Brown Boveri AG | Einrichtung zur Rettung des Rechnerzustandes |
| US4959774A (en) * | 1984-07-06 | 1990-09-25 | Ampex Corporation | Shadow memory system for storing variable backup blocks in consecutive time periods |
| US4899275A (en) * | 1985-02-22 | 1990-02-06 | Intergraph Corporation | Cache-MMU system |
| US4884197A (en) * | 1985-02-22 | 1989-11-28 | Intergraph Corporation | Method and apparatus for addressing a cache memory |
| US4860192A (en) * | 1985-02-22 | 1989-08-22 | Intergraph Corporation | Quadword boundary cache system |
| US5255384A (en) * | 1985-02-22 | 1993-10-19 | Intergraph Corporation | Memory address translation system having modifiable and non-modifiable translation mechanisms |
| US4933835A (en) * | 1985-02-22 | 1990-06-12 | Intergraph Corporation | Apparatus for maintaining consistency of a cache memory with a primary memory |
| US4916603A (en) * | 1985-03-18 | 1990-04-10 | Wang Labortatories, Inc. | Distributed reference and change table for a virtual memory system |
| US4875155A (en) * | 1985-06-28 | 1989-10-17 | International Business Machines Corporation | Peripheral subsystem having read/write cache with record access |
| DE3681681D1 (de) * | 1985-10-15 | 1991-10-31 | Pitney Bowes Inc | Doppelt redundante elektronische frankiermaschine. |
| US4817004A (en) * | 1985-10-16 | 1989-03-28 | Pitney Bowes Inc. | Electronic postage meter operating system |
| US4805109A (en) * | 1985-10-16 | 1989-02-14 | Pitney Bowes Inc. | Nonvolatile memory protection arrangement for electronic postage meter system having plural nonvolatile memories |
| DE3685191D1 (de) * | 1985-10-16 | 1992-06-11 | Pitney Bowes Inc | Systeme zur nichtfluechtigen speicherung von daten und frankiermaschinensysteme. |
| JPS62202247A (ja) * | 1985-11-25 | 1987-09-05 | Nec Corp | キヤツシユメモリ内容一致処理方式 |
| US4805095A (en) * | 1985-12-23 | 1989-02-14 | Ncr Corporation | Circuit and a method for the selection of original data from a register log containing original and modified data |
| US4868744A (en) * | 1986-03-03 | 1989-09-19 | International Business Machines Corporation | Method for restarting a long-running, fault-tolerant operation in a transaction-oriented data base system without burdening the system log |
| JPH0682336B2 (ja) * | 1986-04-28 | 1994-10-19 | 日本電気株式会社 | ブロック閉塞を用いたロールバックリカバリシステム |
| US5115499A (en) * | 1986-05-14 | 1992-05-19 | Sequoia Systems, Inc. | Shared computer resource allocation system having apparatus for informing a requesting computer of the identity and busy/idle status of shared resources by command code |
| US4885680A (en) * | 1986-07-25 | 1989-12-05 | International Business Machines Corporation | Method and apparatus for efficiently handling temporarily cacheable data |
| US4811209A (en) * | 1986-07-31 | 1989-03-07 | Hewlett-Packard Company | Cache memory with multiple valid bits for each data indication the validity within different contents |
| US4814981A (en) * | 1986-09-18 | 1989-03-21 | Digital Equipment Corporation | Cache invalidate protocol for digital data processing system |
| SE454730B (sv) * | 1986-09-19 | 1988-05-24 | Asea Ab | Forfarande och datorutrustning for stotfri omkoppling av funktionen fran aktiva enheter till beredskapsenheter i en centralenhet |
| US5091846A (en) * | 1986-10-03 | 1992-02-25 | Intergraph Corporation | Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency |
| US5128943A (en) * | 1986-10-24 | 1992-07-07 | United Technologies Corporation | Independent backup mode transfer and mechanism for digital control computers |
| US4823261A (en) * | 1986-11-24 | 1989-04-18 | International Business Machines Corp. | Multiprocessor system for updating status information through flip-flopping read version and write version of checkpoint data |
| US5155833A (en) * | 1987-05-11 | 1992-10-13 | At&T Bell Laboratories | Multi-purpose cache memory selectively addressable either as a boot memory or as a cache memory |
| US4991090A (en) * | 1987-05-18 | 1991-02-05 | International Business Machines Corporation | Posting out-of-sequence fetches |
| US5193154A (en) * | 1987-07-10 | 1993-03-09 | Hitachi, Ltd. | Buffered peripheral system and method for backing up and retrieving data to and from backup memory device |
| JPH0831061B2 (ja) * | 1987-07-24 | 1996-03-27 | 株式会社日立製作所 | バツフア制御方式 |
| US5051887A (en) * | 1987-08-25 | 1991-09-24 | International Business Machines Corporation | Maintaining duplex-paired storage devices during gap processing using of a dual copy function |
| US5201039A (en) * | 1987-09-30 | 1993-04-06 | Mitsubishi Denki Kabushiki Kaisha | Multiple address-space data processor with addressable register and context switching |
| US5513353A (en) * | 1987-09-30 | 1996-04-30 | Kabushiki Kaisha Toshiba | Cache control system which permanently inhibits local but not global parameter data writes to main memory |
| GB2210480B (en) * | 1987-10-02 | 1992-01-29 | Sun Microsystems Inc | Flush support |
| DE3854384T2 (de) * | 1987-11-30 | 1996-03-28 | Ibm | Verfahren zum Betreiben eines einen anteilig genutzten virtuellen Speicher verwendenden Multiprozessorsystems. |
| US5113510A (en) * | 1987-12-22 | 1992-05-12 | Thinking Machines Corporation | Method and apparatus for operating a cache memory in a multi-processor |
| ATE109910T1 (de) * | 1988-01-20 | 1994-08-15 | Advanced Micro Devices Inc | Organisation eines integrierten cachespeichers zur flexiblen anwendung zur unterstützung von multiprozessor-operationen. |
| US5185878A (en) * | 1988-01-20 | 1993-02-09 | Advanced Micro Device, Inc. | Programmable cache memory as well as system incorporating same and method of operating programmable cache memory |
| NL8800158A (nl) * | 1988-01-25 | 1989-08-16 | Philips Nv | Computersysteem voorzien van een hierarchisch georganiseerd geheugen. |
| US5247692A (en) * | 1988-02-08 | 1993-09-21 | Nec Corporation | Multiple file system having a plurality of file units holding the same files in which loss of data is prevented in a failure of a file unit |
| US5155834A (en) * | 1988-03-18 | 1992-10-13 | Wang Laboratories, Inc. | Reference and change table storage system for virtual memory data processing system having a plurality of processors accessing common memory |
| US5038278A (en) * | 1988-04-01 | 1991-08-06 | Digital Equipment Corporation | Cache with at least two fill rates |
| US5003459A (en) * | 1988-04-01 | 1991-03-26 | Digital Equipment Corporation | Cache memory system |
| US4920536A (en) * | 1988-10-14 | 1990-04-24 | Amdahl Corporation | Error recovery scheme for destaging cache data in a multi-memory system |
| US5128996A (en) * | 1988-12-09 | 1992-07-07 | The Exchange System Limited Partnership | Multichannel data encryption device |
| US5123047A (en) * | 1988-12-09 | 1992-06-16 | The Exchange System Limited Partnership | Method of updating encryption device monitor code in a multichannel data encryption system |
| US5022076A (en) * | 1988-12-09 | 1991-06-04 | The Exchange System Limited Partnership | Redundant encryption processor arrangement for use in an electronic fund transfer network |
| US5095428A (en) * | 1989-01-04 | 1992-03-10 | Compaq Computer Corporation | Cache flush request circuit flushes the cache if input/output space write operation and circuit board response are occurring concurrently |
| US5222217A (en) * | 1989-01-18 | 1993-06-22 | International Business Machines Corporation | System and method for implementing operating system message queues with recoverable shared virtual storage |
| US5089958A (en) * | 1989-01-23 | 1992-02-18 | Vortex Systems, Inc. | Fault tolerant computer backup system |
| US5222224A (en) * | 1989-02-03 | 1993-06-22 | Digital Equipment Corporation | Scheme for insuring data consistency between a plurality of cache memories and the main memory in a multi-processor system |
| US5148537A (en) * | 1989-05-02 | 1992-09-15 | Belsan Jay S | Method and apparatus for effecting an intra-cache data transfer |
| ATE158424T1 (de) * | 1989-06-30 | 1997-10-15 | Digital Equipment Corp | Verfahren und anordnung zur steuerung von schattenspeichern |
| US5247618A (en) * | 1989-06-30 | 1993-09-21 | Digital Equipment Corporation | Transferring data in a digital data processing system |
| US5210865A (en) * | 1989-06-30 | 1993-05-11 | Digital Equipment Corporation | Transferring data between storage media while maintaining host processor access for I/O operations |
| US5239637A (en) * | 1989-06-30 | 1993-08-24 | Digital Equipment Corporation | Digital data management system for maintaining consistency of data in a shadow set |
| US5182805A (en) * | 1989-07-14 | 1993-01-26 | Ncr Corporation | Method and system for determining copy-on-write condition |
| US5163148A (en) * | 1989-08-11 | 1992-11-10 | Digital Equipment Corporation | File backup system for producing a backup copy of a file which may be updated during backup |
| US5193162A (en) * | 1989-11-06 | 1993-03-09 | Unisys Corporation | Cache memory with data compaction for use in the audit trail of a data processing system having record locking capabilities |
| US5206941A (en) * | 1990-01-22 | 1993-04-27 | International Business Machines Corporation | Fast store-through cache memory |
| JPH0410041A (ja) * | 1990-04-27 | 1992-01-14 | Toshiba Corp | データ退避方式 |
| US5255387A (en) * | 1990-04-27 | 1993-10-19 | International Business Machines Corporation | Method and apparatus for concurrency control of shared data updates and queries |
| US5230075A (en) * | 1990-06-04 | 1993-07-20 | General Electric Company | Database shadowing system with data tags that select an operation of the save command |
| US5404483A (en) * | 1990-06-29 | 1995-04-04 | Digital Equipment Corporation | Processor and method for delaying the processing of cache coherency transactions during outstanding cache fills |
| US5347648A (en) * | 1990-06-29 | 1994-09-13 | Digital Equipment Corporation | Ensuring write ordering under writeback cache error conditions |
| US5263144A (en) * | 1990-06-29 | 1993-11-16 | Digital Equipment Corporation | Method and apparatus for sharing data between processors in a computer system |
| US5155843A (en) * | 1990-06-29 | 1992-10-13 | Digital Equipment Corporation | Error transition mode for multi-processor system |
| US5404482A (en) * | 1990-06-29 | 1995-04-04 | Digital Equipment Corporation | Processor and method for preventing access to a locked memory block by recording a lock in a content addressable memory with outstanding cache fills |
| JP2641819B2 (ja) * | 1990-11-05 | 1997-08-20 | 三菱電機株式会社 | キャッシュ・コントローラ並びにフォールト・トレラント・コンピュータ及びそのデータ転送方式 |
| US5829030A (en) * | 1990-11-05 | 1998-10-27 | Mitsubishi Denki Kabushiki Kaisha | System for performing cache flush transactions from interconnected processor modules to paired memory modules |
| EP0491463A2 (en) * | 1990-11-30 | 1992-06-24 | Matsushita Graphic Communication Systems, Inc. | Data storage system |
| JP3308554B2 (ja) * | 1991-02-20 | 2002-07-29 | 株式会社日立製作所 | 制御装置及び制御装置の制御方法 |
| US5345581A (en) * | 1991-04-01 | 1994-09-06 | Xerox Corporation | Process for replacing storage media in electronic printing systems |
| US5241672A (en) * | 1991-04-01 | 1993-08-31 | Xerox Corporation | System using the storage level of file updates in nonvolatile memory to trigger saving of RAM to disk and using the file updates to reboot after crash |
| JP2743606B2 (ja) * | 1991-04-11 | 1998-04-22 | 三菱電機株式会社 | アレイ型記録装置 |
| EP0510242A2 (en) * | 1991-04-22 | 1992-10-28 | Acer Incorporated | System and method for managing the routing execution in a computer system |
| US5680570A (en) * | 1991-06-12 | 1997-10-21 | Quantum Corporation | Memory system with dynamically allocatable non-volatile storage capability |
| US5319775A (en) * | 1991-07-22 | 1994-06-07 | Ncr Corporation | Centralized diagnostic system for loosely coupled processors |
| EP0541281B1 (en) * | 1991-11-04 | 1998-04-29 | Commvault Systems, Inc. | Incremental-computer-file backup using signatures |
| US5551054A (en) * | 1991-11-19 | 1996-08-27 | Adaptec, Inc. | Page mode buffer controller for transferring Nb byte pages between a host and buffer memory without interruption except for refresh |
| EP0551009B1 (en) * | 1992-01-08 | 2001-06-13 | Emc Corporation | Method for synchronizing reserved areas in a redundant storage array |
| US5289418A (en) * | 1992-02-14 | 1994-02-22 | Extended Systems, Inc. | Memory apparatus with built-in parity generation |
| DE4217830C2 (de) * | 1992-05-29 | 1996-01-18 | Francotyp Postalia Gmbh | Verfahren zum Betreiben einer Datenverarbeitungsanlage |
| JP2888401B2 (ja) * | 1992-08-03 | 1999-05-10 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 冗長ディスクドライブアレイに対する同期方法 |
| US5509127A (en) * | 1992-12-04 | 1996-04-16 | Unisys Corporation | Transmission logic apparatus for dual bus network |
| US5664195A (en) * | 1993-04-07 | 1997-09-02 | Sequoia Systems, Inc. | Method and apparatus for dynamic installation of a driver on a computer system |
| US6003071A (en) * | 1994-01-21 | 1999-12-14 | Sony Corporation | Image data transmission apparatus using time slots |
| KR960009824B1 (en) * | 1994-02-03 | 1996-07-24 | Lg Semicon Co Ltd | Micro-computer |
| TW253946B (en) * | 1994-02-04 | 1995-08-11 | Ibm | Data processor with branch prediction and method of operation |
| WO1995034860A1 (en) * | 1994-06-10 | 1995-12-21 | Sequoia Systems, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system |
| US5557737A (en) * | 1994-06-13 | 1996-09-17 | Bull Hn Information Systems Inc. | Automated safestore stack generation and recovery in a fault tolerant central processor |
| US5435004A (en) * | 1994-07-21 | 1995-07-18 | International Business Machines Corporation | Computerized system and method for data backup |
| US5537533A (en) * | 1994-08-11 | 1996-07-16 | Miralink Corporation | System and method for remote mirroring of digital data from a primary network server to a remote network server |
| US5682471A (en) * | 1994-10-06 | 1997-10-28 | Billings; Thomas Neal | System for transparently storing inputs to non-volatile storage and automatically re-entering them to reconstruct work if volatile memory is lost |
| US5649152A (en) | 1994-10-13 | 1997-07-15 | Vinca Corporation | Method and system for providing a static snapshot of data stored on a mass storage system |
| US5835953A (en) | 1994-10-13 | 1998-11-10 | Vinca Corporation | Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating |
| JP3086779B2 (ja) * | 1995-06-19 | 2000-09-11 | 株式会社東芝 | メモリ状態復元装置 |
| US5745672A (en) * | 1995-11-29 | 1998-04-28 | Texas Micro, Inc. | Main memory system and checkpointing protocol for a fault-tolerant computer system using a read buffer |
| US5864657A (en) * | 1995-11-29 | 1999-01-26 | Texas Micro, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system |
| US5751939A (en) * | 1995-11-29 | 1998-05-12 | Texas Micro, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system using an exclusive-or memory |
| US5737514A (en) * | 1995-11-29 | 1998-04-07 | Texas Micro, Inc. | Remote checkpoint memory system and protocol for fault-tolerant computer system |
| US5933653A (en) * | 1996-05-31 | 1999-08-03 | Emc Corporation | Method and apparatus for mirroring data in a remote data storage system |
| EP2267641B1 (en) * | 1996-06-28 | 2017-03-29 | Sony Corporation | Method and device for processing information |
| US5829047A (en) * | 1996-08-29 | 1998-10-27 | Lucent Technologies Inc. | Backup memory for reliable operation |
| JP2916421B2 (ja) | 1996-09-09 | 1999-07-05 | 株式会社東芝 | キャッシュフラッシュ装置およびデータ処理方法 |
| TW379298B (en) * | 1996-09-30 | 2000-01-11 | Toshiba Corp | Memory updating history saving device and memory updating history saving method |
| US6038665A (en) * | 1996-12-03 | 2000-03-14 | Fairbanks Systems Group | System and method for backing up computer files over a wide area computer network |
| US5794254A (en) * | 1996-12-03 | 1998-08-11 | Fairbanks Systems Group | Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets |
| JPH10320274A (ja) * | 1997-03-19 | 1998-12-04 | Toshiba Corp | キャッシュフラッシュ装置及び同装置を備えた計算機システム、記録媒体 |
| US6178536B1 (en) | 1997-08-14 | 2001-01-23 | International Business Machines Corporation | Coding scheme for file backup and systems based thereon |
| JPH11134235A (ja) * | 1997-10-31 | 1999-05-21 | Hitachi Ltd | 外部記憶装置故障時の回復支援方法 |
| US6061770A (en) * | 1997-11-04 | 2000-05-09 | Adaptec, Inc. | System and method for real-time data backup using snapshot copying with selective compaction of backup data |
| EP0929039A3 (en) * | 1997-12-05 | 2000-12-13 | Texas Instruments Incorporated | Computer circuits, systems and methods using partial cache cleaning |
| FR2778254B1 (fr) * | 1998-04-29 | 2002-02-15 | Texas Instruments France | Circuits,systemes et procedes d'ordinateur utilisant un nettoyage partiel d'une memoire cache |
| NL1009347C2 (nl) * | 1998-02-11 | 1999-08-12 | Holland Mechanics Bv | Inrichting en werkwijze voor het verzamelen en distribueren van gegevens, in het bijzonder gegevens betreffende productiemachines. |
| US7103797B1 (en) * | 1998-03-30 | 2006-09-05 | Emc Corporation | Resource allocation throttling in remote data mirroring system |
| US6332197B1 (en) | 1998-08-04 | 2001-12-18 | International Business Machines Corp. | System for updating data in a multi-adaptor environment |
| US6279138B1 (en) * | 1998-08-04 | 2001-08-21 | International Business Machines Corporation | System for changing the parity structure of a raid array |
| US6446237B1 (en) | 1998-08-04 | 2002-09-03 | International Business Machines Corporation | Updating and reading data and parity blocks in a shared disk system |
| KR100279929B1 (ko) | 1998-12-24 | 2001-02-01 | 서평원 | 교환기에서의 이중화 프로세서_ |
| US6493795B1 (en) * | 1998-12-30 | 2002-12-10 | Emc Corporation | Data storage system |
| US6460054B1 (en) | 1999-12-16 | 2002-10-01 | Adaptec, Inc. | System and method for data storage archive bit update after snapshot backup |
| US6341341B1 (en) | 1999-12-16 | 2002-01-22 | Adaptec, Inc. | System and method for disk control with snapshot feature including read-write snapshot half |
| US6779128B1 (en) * | 2000-02-18 | 2004-08-17 | Invensys Systems, Inc. | Fault-tolerant data transfer |
| JP3598282B2 (ja) * | 2000-09-07 | 2004-12-08 | 株式会社ソニー・コンピュータエンタテインメント | コンピュータ、その制御方法及びその制御方法を記録した記録媒体 |
| US7386610B1 (en) | 2000-09-18 | 2008-06-10 | Hewlett-Packard Development Company, L.P. | Internet protocol data mirroring |
| US6977927B1 (en) | 2000-09-18 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Method and system of allocating storage resources in a storage area network |
| US6804819B1 (en) | 2000-09-18 | 2004-10-12 | Hewlett-Packard Development Company, L.P. | Method, system, and computer program product for a data propagation platform and applications of same |
| US6606690B2 (en) | 2001-02-20 | 2003-08-12 | Hewlett-Packard Development Company, L.P. | System and method for accessing a storage area network as network attached storage |
| US7500075B1 (en) * | 2001-04-17 | 2009-03-03 | Rambus Inc. | Mechanism for enabling full data bus utilization without increasing data granularity |
| US7020754B1 (en) * | 2001-12-13 | 2006-03-28 | Emc Corporation | Method and system for maintaining data integrity using dual write operations |
| KR100441712B1 (ko) * | 2001-12-29 | 2004-07-27 | 엘지전자 주식회사 | 확장 가능형 다중 처리 시스템 및 그의 메모리 복제 방법 |
| US6952758B2 (en) * | 2002-07-31 | 2005-10-04 | International Business Machines Corporation | Method and system for providing consistent data modification information to clients in a storage system |
| US7210010B2 (en) * | 2002-09-30 | 2007-04-24 | Insignia Solutions Plc | Efficient system and method for updating a memory device |
| US7062727B2 (en) * | 2003-08-25 | 2006-06-13 | Hewlett-Packard Development Company, L.P. | Computer aided design systems and methods with reduced memory utilization |
| US7631120B2 (en) * | 2004-08-24 | 2009-12-08 | Symantec Operating Corporation | Methods and apparatus for optimally selecting a storage buffer for the storage of data |
| US7577807B2 (en) * | 2003-09-23 | 2009-08-18 | Symantec Operating Corporation | Methods and devices for restoring a portion of a data store |
| US7827362B2 (en) * | 2004-08-24 | 2010-11-02 | Symantec Corporation | Systems, apparatus, and methods for processing I/O requests |
| US7239581B2 (en) * | 2004-08-24 | 2007-07-03 | Symantec Operating Corporation | Systems and methods for synchronizing the internal clocks of a plurality of processor modules |
| US7730222B2 (en) * | 2004-08-24 | 2010-06-01 | Symantec Operating System | Processing storage-related I/O requests using binary tree data structures |
| US7904428B2 (en) * | 2003-09-23 | 2011-03-08 | Symantec Corporation | Methods and apparatus for recording write requests directed to a data store |
| US7725760B2 (en) * | 2003-09-23 | 2010-05-25 | Symantec Operating Corporation | Data storage system |
| US7409587B2 (en) * | 2004-08-24 | 2008-08-05 | Symantec Operating Corporation | Recovering from storage transaction failures using checkpoints |
| US7287133B2 (en) * | 2004-08-24 | 2007-10-23 | Symantec Operating Corporation | Systems and methods for providing a modification history for a location within a data store |
| US7991748B2 (en) * | 2003-09-23 | 2011-08-02 | Symantec Corporation | Virtual data store creation and use |
| US7577806B2 (en) * | 2003-09-23 | 2009-08-18 | Symantec Operating Corporation | Systems and methods for time dependent data storage and recovery |
| US7296008B2 (en) * | 2004-08-24 | 2007-11-13 | Symantec Operating Corporation | Generation and use of a time map for accessing a prior image of a storage device |
| US8775823B2 (en) | 2006-12-29 | 2014-07-08 | Commvault Systems, Inc. | System and method for encrypting secondary copies of data |
| US7392441B2 (en) * | 2005-01-10 | 2008-06-24 | International Business Machines Corporation | Method of performing operational validation with limited CPU use of a communications network |
| US7386759B2 (en) * | 2005-01-27 | 2008-06-10 | International Business Machines Corporation | Method of performing functional validation testing |
| JP2006277395A (ja) * | 2005-03-29 | 2006-10-12 | Matsushita Electric Ind Co Ltd | 情報処理装置及び情報処理方法 |
| EP1934727B1 (en) * | 2005-08-23 | 2019-01-16 | Red Bend Ltd. | Method and system for in-place updating content stored in a storage device |
| US7647487B2 (en) * | 2005-08-29 | 2010-01-12 | Searete, Llc | Instruction-associated processor resource optimization |
| US7739524B2 (en) * | 2005-08-29 | 2010-06-15 | The Invention Science Fund I, Inc | Power consumption management |
| US8375247B2 (en) * | 2005-08-29 | 2013-02-12 | The Invention Science Fund I, Llc | Handling processor computational errors |
| US7627739B2 (en) * | 2005-08-29 | 2009-12-01 | Searete, Llc | Optimization of a hardware resource shared by a multiprocessor |
| US8209524B2 (en) | 2005-08-29 | 2012-06-26 | The Invention Science Fund I, Llc | Cross-architecture optimization |
| US7653834B2 (en) * | 2005-08-29 | 2010-01-26 | Searete, Llc | Power sparing synchronous apparatus |
| US8255745B2 (en) * | 2005-08-29 | 2012-08-28 | The Invention Science Fund I, Llc | Hardware-error tolerant computing |
| US7539852B2 (en) | 2005-08-29 | 2009-05-26 | Searete, Llc | Processor resource management |
| US8181004B2 (en) * | 2005-08-29 | 2012-05-15 | The Invention Science Fund I, Llc | Selecting a resource management policy for a resource available to a processor |
| US7877584B2 (en) * | 2005-08-29 | 2011-01-25 | The Invention Science Fund I, Llc | Predictive processor resource management |
| US7779213B2 (en) * | 2005-08-29 | 2010-08-17 | The Invention Science Fund I, Inc | Optimization of instruction group execution through hardware resource management policies |
| US7725693B2 (en) * | 2005-08-29 | 2010-05-25 | Searete, Llc | Execution optimization using a processor resource management policy saved in an association with an instruction group |
| US8423824B2 (en) | 2005-08-29 | 2013-04-16 | The Invention Science Fund I, Llc | Power sparing synchronous apparatus |
| US8214191B2 (en) * | 2005-08-29 | 2012-07-03 | The Invention Science Fund I, Llc | Cross-architecture execution optimization |
| US8516300B2 (en) * | 2005-08-29 | 2013-08-20 | The Invention Science Fund I, Llc | Multi-votage synchronous systems |
| US20070050605A1 (en) * | 2005-08-29 | 2007-03-01 | Bran Ferren | Freeze-dried ghost pages |
| US20070050604A1 (en) * | 2005-08-29 | 2007-03-01 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Fetch rerouting in response to an execution-based optimization profile |
| DE102005043335A1 (de) * | 2005-09-12 | 2007-05-16 | Siemens Ag | Anordnung mit einem Tachographen |
| CN103927238B (zh) * | 2005-10-14 | 2017-04-12 | 塞门铁克操作公司 | 一种在数据存储器中用于时间线压缩的技术 |
| KR100679050B1 (ko) * | 2005-12-12 | 2007-02-06 | 삼성전자주식회사 | 태스크간 빠른 문맥 교환을 위해 레지스터 문맥을 저장,복구하는 방법 및 장치 |
| US8572330B2 (en) | 2005-12-19 | 2013-10-29 | Commvault Systems, Inc. | Systems and methods for granular resource management in a storage network |
| WO2007097826A2 (en) * | 2005-12-19 | 2007-08-30 | Commvault Systems, Inc. | System and method for providing a flexible licensing system for digital content |
| US8370442B2 (en) | 2008-08-29 | 2013-02-05 | Commvault Systems, Inc. | Method and system for leveraging identified changes to a mail server |
| US8677091B2 (en) | 2006-12-18 | 2014-03-18 | Commvault Systems, Inc. | Writing data and storage system specific metadata to network attached storage device |
| TW200828273A (en) * | 2006-12-28 | 2008-07-01 | Genesys Logic Inc | Hard disk cache device and method |
| US20090210622A1 (en) * | 2008-02-19 | 2009-08-20 | Stefan Birrer | Compressed cache in a controller partition |
| WO2009110143A1 (en) * | 2008-03-07 | 2009-09-11 | Kabushiki Kaisha Toshiba | Information processing apparatus and storage drive |
| US8769048B2 (en) | 2008-06-18 | 2014-07-01 | Commvault Systems, Inc. | Data protection scheduling, such as providing a flexible backup window in a data protection system |
| US8484162B2 (en) | 2008-06-24 | 2013-07-09 | Commvault Systems, Inc. | De-duplication systems and methods for application-specific data |
| US8335776B2 (en) | 2008-07-02 | 2012-12-18 | Commvault Systems, Inc. | Distributed indexing system for data storage |
| US8307177B2 (en) | 2008-09-05 | 2012-11-06 | Commvault Systems, Inc. | Systems and methods for management of virtualization data |
| US8943183B2 (en) | 2008-12-10 | 2015-01-27 | Commvault Systems, Inc. | Decoupled installation of data management systems |
| CA2756679C (en) * | 2009-03-31 | 2016-07-05 | Commvault Systems, Inc. | Information management systems and methods for heterogeneous data sources |
| US8209307B2 (en) | 2009-03-31 | 2012-06-26 | Commvault Systems, Inc. | Systems and methods for data migration in a clustered file system |
| CN101551736B (zh) * | 2009-05-20 | 2010-11-03 | 杭州华三通信技术有限公司 | 基于地址指针链表的缓存管理装置和方法 |
| US8930306B1 (en) | 2009-07-08 | 2015-01-06 | Commvault Systems, Inc. | Synchronized data deduplication |
| US8572719B2 (en) | 2010-05-28 | 2013-10-29 | Commvault Systems, Inc. | Firewall proxy systems and methods in a backup environment |
| US8504526B2 (en) | 2010-06-04 | 2013-08-06 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations |
| US11449394B2 (en) | 2010-06-04 | 2022-09-20 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources |
| US8504869B2 (en) | 2010-07-16 | 2013-08-06 | Commvault Systems, Inc. | Kernel swapping systems and methods for recovering a network device |
| US8495420B2 (en) | 2010-07-16 | 2013-07-23 | Commvault Systems, Inc. | Registry key federation systems and methods |
| US8577851B2 (en) | 2010-09-30 | 2013-11-05 | Commvault Systems, Inc. | Content aligned block-based deduplication |
| US8572340B2 (en) | 2010-09-30 | 2013-10-29 | Commvault Systems, Inc. | Systems and methods for retaining and using data block signatures in data protection operations |
| US20120150818A1 (en) | 2010-12-14 | 2012-06-14 | Commvault Systems, Inc. | Client-side repository in a networked deduplicated storage system |
| US9020900B2 (en) | 2010-12-14 | 2015-04-28 | Commvault Systems, Inc. | Distributed deduplicated storage system |
| US9323466B2 (en) | 2011-04-27 | 2016-04-26 | Commvault Systems, Inc. | System and method for client policy assignment in a data storage system |
| KR101996641B1 (ko) * | 2012-02-06 | 2019-07-04 | 삼성전자주식회사 | 메모리 오버레이 장치 및 방법 |
| US20130227352A1 (en) | 2012-02-24 | 2013-08-29 | Commvault Systems, Inc. | Log monitoring |
| US9292815B2 (en) | 2012-03-23 | 2016-03-22 | Commvault Systems, Inc. | Automation of data storage activities |
| US9286327B2 (en) | 2012-03-30 | 2016-03-15 | Commvault Systems, Inc. | Data storage recovery automation |
| US9189167B2 (en) | 2012-05-31 | 2015-11-17 | Commvault Systems, Inc. | Shared library in a data storage system |
| US8977672B2 (en) | 2012-06-08 | 2015-03-10 | Commvault Systems, Inc. | Intelligent scheduling for remote computers |
| US9189170B2 (en) | 2012-06-12 | 2015-11-17 | Commvault Systems, Inc. | External storage manager for a data storage cell |
| US9218375B2 (en) | 2012-06-13 | 2015-12-22 | Commvault Systems, Inc. | Dedicated client-side signature generator in a networked storage system |
| US20140025796A1 (en) | 2012-07-19 | 2014-01-23 | Commvault Systems, Inc. | Automated grouping of computing devices in a networked data storage system |
| US9275086B2 (en) | 2012-07-20 | 2016-03-01 | Commvault Systems, Inc. | Systems and methods for database archiving |
| US9483201B2 (en) | 2012-07-31 | 2016-11-01 | Commvault Systems, Inc. | Administering a shared, on-line pool of data storage resources for performing data storage operations |
| US8938481B2 (en) | 2012-08-13 | 2015-01-20 | Commvault Systems, Inc. | Generic file level restore from a block-level secondary copy |
| US9026498B2 (en) | 2012-08-13 | 2015-05-05 | Commvault Systems, Inc. | Lightweight mounting of a secondary copy of file system data |
| US9311121B2 (en) | 2012-12-21 | 2016-04-12 | Commvault Systems, Inc. | Archiving virtual machines in a data storage system |
| US20140181038A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Systems and methods to categorize unprotected virtual machines |
| US20140181443A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Archiving using data obtained during backup of primary storage |
| US20140181047A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Systems and methods to protect deleted files |
| US9256622B2 (en) | 2012-12-21 | 2016-02-09 | Commvault Systems, Inc. | Systems and methods to confirm replication data accuracy for data backup in data storage systems |
| US20140196038A1 (en) | 2013-01-08 | 2014-07-10 | Commvault Systems, Inc. | Virtual machine management in a data storage system |
| US20140201151A1 (en) | 2013-01-11 | 2014-07-17 | Commvault Systems, Inc. | Systems and methods to select files for restoration from block-level backup for virtual machines |
| US9665591B2 (en) | 2013-01-11 | 2017-05-30 | Commvault Systems, Inc. | High availability distributed deduplicated storage system |
| US9846620B2 (en) | 2013-01-11 | 2017-12-19 | Commvault Systems, Inc. | Table level database restore in a data storage system |
| US9760444B2 (en) | 2013-01-11 | 2017-09-12 | Commvault Systems, Inc. | Sharing of secondary storage data |
| US9811423B2 (en) | 2013-01-11 | 2017-11-07 | Commvault Systems, Inc. | Partial file restore in a data storage system |
| US9430491B2 (en) | 2013-01-11 | 2016-08-30 | Commvault Systems, Inc. | Request-based data synchronization management |
| US9483489B2 (en) | 2013-01-14 | 2016-11-01 | Commvault Systems, Inc. | Partial sharing of secondary storage files in a data storage system |
| US9286110B2 (en) | 2013-01-14 | 2016-03-15 | Commvault Systems, Inc. | Seamless virtual machine recall in a data storage system |
| US9483655B2 (en) | 2013-03-12 | 2016-11-01 | Commvault Systems, Inc. | File backup with selective encryption |
| KR101567134B1 (ko) * | 2013-03-29 | 2015-11-09 | 이화여자대학교 산학협력단 | 비휘발성 메모리에 기반하여 저널링 기능을 통합한 버퍼 캐시 장치, 저널링 파일 시스템 및 저널링 방법 |
| US9934103B2 (en) | 2013-04-16 | 2018-04-03 | Commvault Systems, Inc. | Managing multi-source restore operations in an information management system |
| US9483363B2 (en) | 2013-05-08 | 2016-11-01 | Commvault Systems, Inc. | Use of temporary secondary copies in failover operations |
| US9483558B2 (en) | 2013-05-29 | 2016-11-01 | Commvault Systems, Inc. | Assessing user performance in a community of users of data storage resources |
| US20150074536A1 (en) | 2013-09-12 | 2015-03-12 | Commvault Systems, Inc. | File manager integration with virtualization in an information management system, including user control and storage management of virtual machines |
| US9590886B2 (en) | 2013-11-01 | 2017-03-07 | Commvault Systems, Inc. | Systems and methods for differential health checking of an information management system |
| US10169121B2 (en) | 2014-02-27 | 2019-01-01 | Commvault Systems, Inc. | Work flow management for an information management system |
| US9633026B2 (en) | 2014-03-13 | 2017-04-25 | Commvault Systems, Inc. | Systems and methods for protecting email data |
| US10380072B2 (en) | 2014-03-17 | 2019-08-13 | Commvault Systems, Inc. | Managing deletions from a deduplication database |
| US9563518B2 (en) | 2014-04-02 | 2017-02-07 | Commvault Systems, Inc. | Information management by a media agent in the absence of communications with a storage manager |
| US20160004605A1 (en) | 2014-07-01 | 2016-01-07 | Commvault Systems, Inc. | Lightweight data reconstruction based on backup data |
| US20160019117A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Creating customized bootable image for client computing device from backup copy |
| US20160019317A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Volume or virtual machine level backup and generating placeholders for virtual machine files |
| US20160019224A1 (en) | 2014-07-18 | 2016-01-21 | Commvault Systems, Inc. | File system content archiving based on third-party application archiving rules and metadata |
| US9641388B2 (en) | 2014-07-29 | 2017-05-02 | Commvault Systems, Inc. | Customized deployment in information management systems |
| US10031917B2 (en) | 2014-07-29 | 2018-07-24 | Commvault Systems, Inc. | Efficient volume-level replication of data via snapshots in an information management system |
| US9852026B2 (en) | 2014-08-06 | 2017-12-26 | Commvault Systems, Inc. | Efficient application recovery in an information management system based on a pseudo-storage-device driver |
| US11249858B2 (en) | 2014-08-06 | 2022-02-15 | Commvault Systems, Inc. | Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host |
| US10360110B2 (en) | 2014-08-06 | 2019-07-23 | Commvault Systems, Inc. | Point-in-time backups of a production application made accessible over fibre channel and/or iSCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host |
| US9405928B2 (en) | 2014-09-17 | 2016-08-02 | Commvault Systems, Inc. | Deriving encryption rules based on file content |
| US9417968B2 (en) | 2014-09-22 | 2016-08-16 | Commvault Systems, Inc. | Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations |
| US9710465B2 (en) | 2014-09-22 | 2017-07-18 | Commvault Systems, Inc. | Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations |
| US9436555B2 (en) | 2014-09-22 | 2016-09-06 | Commvault Systems, Inc. | Efficient live-mount of a backed up virtual machine in a storage management system |
| US10204010B2 (en) | 2014-10-03 | 2019-02-12 | Commvault Systems, Inc. | Intelligent protection of off-line mail data |
| US9609058B2 (en) | 2014-10-13 | 2017-03-28 | Commvault Systems, Inc. | Storage management operations based on executable files served on demand to storage management components |
| US9575673B2 (en) | 2014-10-29 | 2017-02-21 | Commvault Systems, Inc. | Accessing a file system using tiered deduplication |
| US10776209B2 (en) | 2014-11-10 | 2020-09-15 | Commvault Systems, Inc. | Cross-platform virtual machine backup and replication |
| US9848046B2 (en) | 2014-11-13 | 2017-12-19 | Commvault Systems, Inc. | Archiving applications in information management systems |
| US9983936B2 (en) | 2014-11-20 | 2018-05-29 | Commvault Systems, Inc. | Virtual machine change block tracking |
| US20160162364A1 (en) | 2014-12-03 | 2016-06-09 | Commvault Systems, Inc. | Secondary storage pruning |
| US9632713B2 (en) | 2014-12-03 | 2017-04-25 | Commvault Systems, Inc. | Secondary storage editor |
| US9645891B2 (en) | 2014-12-04 | 2017-05-09 | Commvault Systems, Inc. | Opportunistic execution of secondary copy operations |
| US9753816B2 (en) | 2014-12-05 | 2017-09-05 | Commvault Systems, Inc. | Synchronization based on filtered browsing |
| US20160210044A1 (en) | 2015-01-15 | 2016-07-21 | Commvault Systems, Inc. | Intelligent hybrid drive caching |
| US20160210306A1 (en) | 2015-01-15 | 2016-07-21 | Commvault Systems, Inc. | Managing structured data in a data storage system |
| US9952934B2 (en) | 2015-01-20 | 2018-04-24 | Commvault Systems, Inc. | Synchronizing selected portions of data in a storage management system |
| US9588849B2 (en) | 2015-01-20 | 2017-03-07 | Commvault Systems, Inc. | Synchronizing selected portions of data in a storage management system |
| US10108687B2 (en) | 2015-01-21 | 2018-10-23 | Commvault Systems, Inc. | Database protection using block-level mapping |
| JP6517549B2 (ja) * | 2015-03-13 | 2019-05-22 | 東芝メモリ株式会社 | メモリコントローラ、記憶装置、データ転送システム、データ転送方法、及びデータ転送プログラム |
| US9575804B2 (en) | 2015-03-27 | 2017-02-21 | Commvault Systems, Inc. | Job management and resource allocation |
| US9928144B2 (en) | 2015-03-30 | 2018-03-27 | Commvault Systems, Inc. | Storage management of data using an open-archive architecture, including streamlined access to primary data originally stored on network-attached storage and archived to secondary storage |
| US10339106B2 (en) | 2015-04-09 | 2019-07-02 | Commvault Systems, Inc. | Highly reusable deduplication database after disaster recovery |
| US9934265B2 (en) | 2015-04-09 | 2018-04-03 | Commvault Systems, Inc. | Management of log data |
| US9710253B2 (en) | 2015-04-16 | 2017-07-18 | Commvault Systems, Inc. | Managing a software-patch submission queue |
| US9904598B2 (en) | 2015-04-21 | 2018-02-27 | Commvault Systems, Inc. | Content-independent and database management system-independent synthetic full backup of a database based on snapshot technology |
| US9639286B2 (en) | 2015-05-14 | 2017-05-02 | Commvault Systems, Inc. | Restore of secondary data using thread pooling |
| US20160350391A1 (en) | 2015-05-26 | 2016-12-01 | Commvault Systems, Inc. | Replication using deduplicated secondary copy data |
| US9766825B2 (en) | 2015-07-22 | 2017-09-19 | Commvault Systems, Inc. | Browse and restore for block-level backups |
| US10192065B2 (en) | 2015-08-31 | 2019-01-29 | Commvault Systems, Inc. | Automated intelligent provisioning of data storage resources in response to user requests in a data storage management system |
| EP3350728B1 (en) | 2015-09-18 | 2022-04-06 | Commvault Systems, Inc. | Data storage management operations in a secondary storage subsystem using image recognition and image-based criteria |
| US10514986B2 (en) | 2015-09-30 | 2019-12-24 | Commvault Systems, Inc. | Dynamic triggering of block-level backups based on block change thresholds and corresponding file identities in a data storage management system |
| US10102192B2 (en) | 2015-11-03 | 2018-10-16 | Commvault Systems, Inc. | Summarization and processing of email on a client computing device based on content contribution to an email thread using weighting techniques |
| US10228962B2 (en) | 2015-12-09 | 2019-03-12 | Commvault Systems, Inc. | Live synchronization and management of virtual machines across computing and virtualization platforms and using live synchronization to support disaster recovery |
| US10387266B2 (en) | 2015-12-23 | 2019-08-20 | Commvault Systems, Inc. | Application-level live synchronization across computing platforms including synchronizing co-resident applications to disparate standby destinations and selectively synchronizing some applications and not others |
| US10061663B2 (en) | 2015-12-30 | 2018-08-28 | Commvault Systems, Inc. | Rebuilding deduplication data in a distributed deduplication data storage system |
| US10684924B2 (en) | 2016-02-18 | 2020-06-16 | Commvault Systems, Inc. | Data restoration operations based on network path information |
| US10592350B2 (en) | 2016-03-09 | 2020-03-17 | Commvault Systems, Inc. | Virtual server cloud file system for virtual machine restore to cloud operations |
| US10303557B2 (en) | 2016-03-09 | 2019-05-28 | Commvault Systems, Inc. | Data transfer to a distributed storage environment |
| US10296368B2 (en) | 2016-03-09 | 2019-05-21 | Commvault Systems, Inc. | Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount) |
| US9959058B1 (en) * | 2016-03-31 | 2018-05-01 | EMC IP Holding Company LLC | Utilizing flash optimized layouts which minimize wear of internal flash memory of solid state drives |
| US10248174B2 (en) | 2016-05-24 | 2019-04-02 | Hedvig, Inc. | Persistent reservations for virtual disk using multiple targets |
| US10664447B2 (en) | 2016-07-12 | 2020-05-26 | Commvault Systems, Inc. | Dynamic management of expandable cache storage for multiple network shares configured in a file server |
| US10747630B2 (en) | 2016-09-30 | 2020-08-18 | Commvault Systems, Inc. | Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including operations by a master monitor node |
| US10152251B2 (en) | 2016-10-25 | 2018-12-11 | Commvault Systems, Inc. | Targeted backup of virtual machine |
| US10162528B2 (en) | 2016-10-25 | 2018-12-25 | Commvault Systems, Inc. | Targeted snapshot based on virtual machine location |
| US10210048B2 (en) | 2016-10-25 | 2019-02-19 | Commvault Systems, Inc. | Selective snapshot and backup copy operations for individual virtual machines in a shared storage |
| US11106632B2 (en) | 2016-11-16 | 2021-08-31 | Commvault Systems, Inc. | Dynamically configuring a proxy server using containerization for concurrent and/or overlapping backup, restore, and/or test operations |
| US10678758B2 (en) | 2016-11-21 | 2020-06-09 | Commvault Systems, Inc. | Cross-platform virtual machine data and memory backup and replication |
| US10740193B2 (en) | 2017-02-27 | 2020-08-11 | Commvault Systems, Inc. | Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount |
| US10877851B2 (en) | 2017-03-24 | 2020-12-29 | Commvault Systems, Inc. | Virtual machine recovery point selection |
| US10613939B2 (en) | 2017-03-28 | 2020-04-07 | Commvault Systems, Inc. | Backup index generation process |
| US10599527B2 (en) | 2017-03-29 | 2020-03-24 | Commvault Systems, Inc. | Information management cell health monitoring system |
| US10387073B2 (en) | 2017-03-29 | 2019-08-20 | Commvault Systems, Inc. | External dynamic virtual machine synchronization |
| US10949398B2 (en) | 2017-03-29 | 2021-03-16 | Commvault Systems, Inc. | Synchronization operations for network-accessible folders |
| US10664352B2 (en) | 2017-06-14 | 2020-05-26 | Commvault Systems, Inc. | Live browsing of backed up data residing on cloned disks |
| US11086834B2 (en) | 2017-09-14 | 2021-08-10 | Commvault Systems, Inc. | Distributed framework for data proximity-based task splitting in a content indexing system |
| US10846266B2 (en) | 2017-09-14 | 2020-11-24 | Commvault Systems, Inc. | Distributed architecture for content indexing emails |
| US11036592B2 (en) | 2017-09-14 | 2021-06-15 | Commvault Systems, Inc. | Distributed content indexing architecture with separately stored file previews |
| US11263088B2 (en) | 2017-09-14 | 2022-03-01 | Commvault Systems, Inc. | Distributed architecture for tracking content indexing |
| US20190108341A1 (en) | 2017-09-14 | 2019-04-11 | Commvault Systems, Inc. | Ransomware detection and data pruning management |
| US10846180B2 (en) | 2017-09-14 | 2020-11-24 | Commvault Systems, Inc. | Distributed framework for task splitting and task assignments in a content indexing system |
| US10635546B2 (en) | 2017-12-07 | 2020-04-28 | Commvault Systems, Inc. | Synthesizing a restore image from one or more secondary copies to facilitate data restore operations to a file server |
| US10740300B1 (en) | 2017-12-07 | 2020-08-11 | Commvault Systems, Inc. | Synchronization of metadata in a distributed storage system |
| US10742735B2 (en) | 2017-12-12 | 2020-08-11 | Commvault Systems, Inc. | Enhanced network attached storage (NAS) services interfacing to cloud storage |
| US10592145B2 (en) | 2018-02-14 | 2020-03-17 | Commvault Systems, Inc. | Machine learning-based data object storage |
| US10848468B1 (en) | 2018-03-05 | 2020-11-24 | Commvault Systems, Inc. | In-flight data encryption/decryption for a distributed storage platform |
| US10877928B2 (en) | 2018-03-07 | 2020-12-29 | Commvault Systems, Inc. | Using utilities injected into cloud-based virtual machines for speeding up virtual machine backup operations |
| US10754729B2 (en) | 2018-03-12 | 2020-08-25 | Commvault Systems, Inc. | Recovery point objective (RPO) driven backup scheduling in a data storage management system |
| US10673943B2 (en) | 2018-05-02 | 2020-06-02 | Commvault Systems, Inc. | Network storage backup using distributed media agents |
| US11249863B2 (en) | 2018-05-02 | 2022-02-15 | Commvault Systems, Inc. | Backup-based media agent configuration |
| US11321183B2 (en) | 2018-05-02 | 2022-05-03 | Commvault Systems, Inc. | Multi-tiered backup indexing |
| US10893103B2 (en) | 2018-07-25 | 2021-01-12 | Commvault Systems, Inc. | Distributed and scalable storage management using a storage-microservices server |
| US10891304B2 (en) | 2018-07-25 | 2021-01-12 | Commvault Systems, Inc. | Distributed and scalable client-based storage management |
| US11016696B2 (en) | 2018-09-14 | 2021-05-25 | Commvault Systems, Inc. | Redundant distributed data storage system |
| US11010258B2 (en) | 2018-11-27 | 2021-05-18 | Commvault Systems, Inc. | Generating backup copies through interoperability between components of a data storage management system and appliances for data storage and deduplication |
| US11200124B2 (en) | 2018-12-06 | 2021-12-14 | Commvault Systems, Inc. | Assigning backup resources based on failover of partnered data storage servers in a data storage management system |
| US10860443B2 (en) | 2018-12-10 | 2020-12-08 | Commvault Systems, Inc. | Evaluation and reporting of recovery readiness in a data storage management system |
| US11698727B2 (en) | 2018-12-14 | 2023-07-11 | Commvault Systems, Inc. | Performing secondary copy operations based on deduplication performance |
| US11012508B2 (en) | 2018-12-14 | 2021-05-18 | Commvault Systems, Inc. | Region-based distributed information management system |
| CN109766361B (zh) * | 2018-12-19 | 2023-08-04 | 中国平安人寿保险股份有限公司 | 缓存数据读取方法、装置、计算机设备和存储介质 |
| US11347707B2 (en) | 2019-01-22 | 2022-05-31 | Commvault Systems, Inc. | File indexing for virtual machine backups based on using live browse features |
| US10872069B2 (en) | 2019-01-22 | 2020-12-22 | Commvault Systems, Inc. | File indexing for virtual machine backups in a data storage management system |
| US10996974B2 (en) | 2019-01-30 | 2021-05-04 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data, including management of cache storage for virtual machine data |
| US10768971B2 (en) | 2019-01-30 | 2020-09-08 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data |
| US11126365B2 (en) | 2019-03-11 | 2021-09-21 | Commvault Systems, Inc. | Skipping data backed up in prior backup operations |
| US11269732B2 (en) | 2019-03-12 | 2022-03-08 | Commvault Systems, Inc. | Managing structured data in a data storage system |
| US11321184B2 (en) | 2019-03-26 | 2022-05-03 | Commvault Systems, Inc. | Streamlined secondary copy operations for data stored on shared file storage |
| US20200327017A1 (en) | 2019-04-10 | 2020-10-15 | Commvault Systems, Inc. | Restore using deduplicated secondary copy data |
| US11100064B2 (en) | 2019-04-30 | 2021-08-24 | Commvault Systems, Inc. | Automated log-based remediation of an information management system |
| US11442623B2 (en) | 2019-05-02 | 2022-09-13 | Commvault Systems, Inc. | Faster browse of secondary copies of block-level data volumes |
| US11463264B2 (en) | 2019-05-08 | 2022-10-04 | Commvault Systems, Inc. | Use of data block signatures for monitoring in an information management system |
| US11693744B2 (en) | 2019-05-10 | 2023-07-04 | Commvault Systems, Inc. | Synthesizing format-specific full backup images |
| US20200401489A1 (en) | 2019-06-24 | 2020-12-24 | Commvault Systems, Inc. | Content indexing of files in virtual disk block-level backup copies |
| US20210037112A1 (en) | 2019-07-29 | 2021-02-04 | Commvault Systems, Inc. | Data storage system with rapid restore capability |
| US11263173B2 (en) | 2019-07-30 | 2022-03-01 | Commvault Systems, Inc. | Transaction log index generation in an enterprise backup system |
| US11513922B2 (en) | 2019-08-14 | 2022-11-29 | Commvault Systems, Inc. | Systems and methods for change block tracking for backing up changed data |
| US11218450B2 (en) | 2019-09-11 | 2022-01-04 | Commvault Systems, Inc. | Data protection component scaling in a cloud-based data storage system |
| US11256673B2 (en) | 2019-09-11 | 2022-02-22 | Commvault Systems, Inc. | Anomaly detection in deduplication pruning operations |
| US11237935B2 (en) | 2019-09-11 | 2022-02-01 | Commvault Systems, Inc. | Anomaly detection in data protection operations |
| US20210133150A1 (en) | 2019-11-04 | 2021-05-06 | Commvault Systems, Inc. | Efficient implementation of multiple deduplication databases in a heterogeneous data storage system |
| US11442896B2 (en) | 2019-12-04 | 2022-09-13 | Commvault Systems, Inc. | Systems and methods for optimizing restoration of deduplicated data stored in cloud-based storage resources |
| US11237924B2 (en) | 2019-12-11 | 2022-02-01 | Commvault Systems, Inc. | Dynamic resizing and re-distribution of destination data storage resources for bare metal restore operations in a data storage management system |
| US11223535B2 (en) | 2019-12-31 | 2022-01-11 | Commvault Systems, Inc. | Smart network topology systems and methods |
| US11467753B2 (en) | 2020-02-14 | 2022-10-11 | Commvault Systems, Inc. | On-demand restore of virtual machine data |
| US11005935B1 (en) | 2020-03-10 | 2021-05-11 | Commvault Systems, Inc. | Using multiple streams with network data management protocol to improve performance and granularity of backup and restore operations from/to a file server |
| US11334442B2 (en) | 2020-03-10 | 2022-05-17 | Commvault Systems, Inc. | Management database long-term archiving to a recovery manager |
| US11442768B2 (en) | 2020-03-12 | 2022-09-13 | Commvault Systems, Inc. | Cross-hypervisor live recovery of virtual machines |
| US11099956B1 (en) | 2020-03-26 | 2021-08-24 | Commvault Systems, Inc. | Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations |
| US11748143B2 (en) | 2020-05-15 | 2023-09-05 | Commvault Systems, Inc. | Live mount of virtual machines in a public cloud computing environment |
| US11687424B2 (en) | 2020-05-28 | 2023-06-27 | Commvault Systems, Inc. | Automated media agent state management |
| US11327663B2 (en) | 2020-06-09 | 2022-05-10 | Commvault Systems, Inc. | Ensuring the integrity of data storage volumes used in block-level live synchronization operations in a data storage management system |
| US11537959B2 (en) | 2020-06-16 | 2022-12-27 | Commvault Systems, Inc. | Dynamic computing progress tracker |
| US12566568B2 (en) | 2020-07-17 | 2026-03-03 | Commvault Systems, Inc. | Migrating erasure-coded data fragments within a growing distributed data storage system with at least data plus parity nodes |
| US11487468B2 (en) | 2020-07-17 | 2022-11-01 | Commvault Systems, Inc. | Healing failed erasure-coded write attempts in a distributed data storage system configured with fewer storage nodes than data plus parity fragments |
| US11494417B2 (en) | 2020-08-07 | 2022-11-08 | Commvault Systems, Inc. | Automated email classification in an information management system |
| US11500566B2 (en) | 2020-08-25 | 2022-11-15 | Commvault Systems, Inc. | Cloud-based distributed data storage system using block-level deduplication based on backup frequencies of incoming backup copies |
| US11108861B1 (en) | 2020-08-26 | 2021-08-31 | Commvault Systems, Inc. | System for managing multiple information management cells |
| US11789830B2 (en) | 2020-09-22 | 2023-10-17 | Commvault Systems, Inc. | Anti-entropy-based metadata recovery in a strongly consistent distributed data storage system |
| US11570243B2 (en) | 2020-09-22 | 2023-01-31 | Commvault Systems, Inc. | Decommissioning, re-commissioning, and commissioning new metadata nodes in a working distributed data storage system |
| US11314687B2 (en) | 2020-09-24 | 2022-04-26 | Commvault Systems, Inc. | Container data mover for migrating data between distributed data storage systems integrated with application orchestrators |
| US12547886B2 (en) | 2020-10-07 | 2026-02-10 | Commvault Systems, Inc. | Artificial intelligence-based information management system performance metric prediction |
| US11656951B2 (en) | 2020-10-28 | 2023-05-23 | Commvault Systems, Inc. | Data loss vulnerability detection |
| US11474753B2 (en) | 2020-10-30 | 2022-10-18 | Commvault Systems, Inc. | Systems and methods for backing up to a virtual tape library |
| US12314417B2 (en) | 2020-12-04 | 2025-05-27 | Commvault Systems, Inc. | Methods for managing user permissions |
| US11323513B1 (en) | 2021-01-22 | 2022-05-03 | Commvault Systems, Inc. | Geo-location-based data replication |
| US11645175B2 (en) | 2021-02-12 | 2023-05-09 | Commvault Systems, Inc. | Automatic failover of a storage manager |
| US11574050B2 (en) | 2021-03-12 | 2023-02-07 | Commvault Systems, Inc. | Media agent hardening against ransomware attacks |
| US11561978B2 (en) | 2021-06-29 | 2023-01-24 | Commvault Systems, Inc. | Intelligent cache management for mounted snapshots based on a behavior model |
| US11954513B2 (en) | 2021-07-29 | 2024-04-09 | Commvault Systems, Inc. | Scalable recovery and/or migration to cloud- based custom-made virtual machines without using failed machines' credentials |
| US12032855B2 (en) | 2021-08-06 | 2024-07-09 | Commvault Systems, Inc. | Using an application orchestrator computing environment for automatically scaled deployment of data protection resources needed for data in a production cluster distinct from the application orchestrator or in another application orchestrator computing environment |
| US11615147B2 (en) | 2021-08-23 | 2023-03-28 | Commvault Systems, Inc. | Mobile storage manager control application for managing a storage manager of an information management system |
| US12033004B2 (en) | 2021-09-28 | 2024-07-09 | Commvault Systems, Inc. | Dynamically provisioning computing pods in a computing resource cluster based on a resource request from a storage manager of an information management system |
| US12019525B2 (en) | 2021-10-05 | 2024-06-25 | Commvault Systems, Inc. | Cloud-based recovery of backed up data using auxiliary copy replication and on-demand failover resources |
| US12259977B2 (en) | 2021-11-15 | 2025-03-25 | Commvault Systems, Inc. | Entropy-based ransomware detection |
| US12517792B2 (en) | 2021-11-29 | 2026-01-06 | Commvault Systems, Inc. | Providing status of data storage operations within an information management system |
| US12008135B2 (en) | 2021-12-21 | 2024-06-11 | Commvault Systems, Inc. | Controlling information privacy in a shared data storage management system |
| US12159044B2 (en) | 2022-06-08 | 2024-12-03 | Commvault Systems, Inc. | Cloud-based destination for block-level data replication processing |
| US12135618B2 (en) | 2022-07-11 | 2024-11-05 | Commvault Systems, Inc. | Protecting configuration data in a clustered container system |
| US12292974B2 (en) | 2022-10-27 | 2025-05-06 | Commvault Systems, Inc. | Analysis of backup copies to identify malware-encrypted primary data |
| US12360942B2 (en) | 2023-01-19 | 2025-07-15 | Commvault Systems, Inc. | Selection of a simulated archiving plan for a desired dataset |
| US12475226B2 (en) | 2023-01-26 | 2025-11-18 | Commvault Systems, Inc. | Smart recovery of backup copies based on threat analysis |
| US12580909B2 (en) | 2023-03-02 | 2026-03-17 | Commvault Systems, Inc. | Deploying microservices for data storage management |
| TWI897241B (zh) * | 2024-02-19 | 2025-09-11 | 華邦電子股份有限公司 | 記憶體儲存裝置及其操作方法 |
| US12462028B2 (en) | 2024-02-26 | 2025-11-04 | Commvault Systems, Inc. | Ransomware detection accuracy based on machine learning analysis of filename extension patterns |
Family Cites Families (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3588829A (en) * | 1968-11-14 | 1971-06-28 | Ibm | Integrated memory system with block transfer to a buffer store |
| US4413327A (en) * | 1970-06-09 | 1983-11-01 | The United States Of America As Represented By The Secretary Of The Navy | Radiation circumvention technique |
| JPS5627905B1 (ja) * | 1970-11-06 | 1981-06-27 | ||
| JPS5633915B1 (ja) * | 1970-11-06 | 1981-08-06 | ||
| US3761881A (en) * | 1971-06-30 | 1973-09-25 | Ibm | Translation storage scheme for virtual memory system |
| US3736566A (en) * | 1971-08-18 | 1973-05-29 | Ibm | Central processing unit with hardware controlled checkpoint and retry facilities |
| US3889237A (en) * | 1973-11-16 | 1975-06-10 | Sperry Rand Corp | Common storage controller for dual processor system |
| US3979726A (en) * | 1974-04-10 | 1976-09-07 | Honeywell Information Systems, Inc. | Apparatus for selectively clearing a cache store in a processor having segmentation and paging |
| GB1509193A (en) * | 1974-04-17 | 1978-05-04 | Nat Res Dev | Computer systems |
| US4020466A (en) * | 1974-07-05 | 1977-04-26 | Ibm Corporation | Memory hierarchy system with journaling and copy back |
| FR2346772A1 (fr) * | 1975-06-19 | 1977-10-28 | Cii | Systeme perfectionne de detection et essai de correction d'erreurs dans les equipements informatiques |
| JPS5235533A (en) * | 1975-09-13 | 1977-03-18 | Fujitsu Ltd | Buffer memory system |
| US4044337A (en) * | 1975-12-23 | 1977-08-23 | International Business Machines Corporation | Instruction retry mechanism for a data processing system |
| GB1505603A (en) * | 1976-07-07 | 1978-03-30 | Ibm | Data processing systems |
| US4228496A (en) * | 1976-09-07 | 1980-10-14 | Tandem Computers Incorporated | Multiprocessor system |
| JPS5393735A (en) * | 1977-01-27 | 1978-08-17 | Nec Corp | Memory control system |
| US4373179A (en) * | 1978-06-26 | 1983-02-08 | Fujitsu Limited | Dynamic address translation system |
| JPS605024B2 (ja) * | 1979-09-04 | 1985-02-07 | ファナック株式会社 | 情報処理方式 |
| US4403284A (en) * | 1980-11-24 | 1983-09-06 | Texas Instruments Incorporated | Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address |
| US4426682A (en) * | 1981-05-22 | 1984-01-17 | Harris Corporation | Fast cache flush mechanism |
| US4566106A (en) * | 1982-01-29 | 1986-01-21 | Pitney Bowes Inc. | Electronic postage meter having redundant memory |
| US4484273A (en) * | 1982-09-03 | 1984-11-20 | Sequoia Systems, Inc. | Modular computer system |
-
1983
- 1983-12-09 CA CA000443003A patent/CA1210157A/en not_active Expired
- 1983-12-09 DE DE8484900358T patent/DE3382152D1/de not_active Expired - Fee Related
- 1983-12-09 JP JP58232645A patent/JPS59160899A/ja active Granted
- 1983-12-09 WO PCT/US1983/001970 patent/WO1984002409A1/en not_active Ceased
- 1983-12-09 AU AU22262/83A patent/AU569857B2/en not_active Ceased
- 1983-12-09 EP EP84900358A patent/EP0128945B1/en not_active Expired - Lifetime
-
1985
- 1985-06-28 US US06/750,652 patent/US4654819A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| DE3382152D1 (de) | 1991-03-07 |
| EP0128945B1 (en) | 1991-01-30 |
| CA1210157A (en) | 1986-08-19 |
| WO1984002409A1 (en) | 1984-06-21 |
| AU2226283A (en) | 1984-06-14 |
| US4654819A (en) | 1987-03-31 |
| AU569857B2 (en) | 1988-02-25 |
| JPS59160899A (ja) | 1984-09-11 |
| EP0128945A1 (en) | 1984-12-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0454260B2 (ja) | ||
| US5113514A (en) | System bus for multiprocessor computer system | |
| US4819154A (en) | Memory back up system with one cache memory and two physically separated main memories | |
| US5201041A (en) | Cache bypass apparatus | |
| EP0258559B1 (en) | Cache memory coherency control provided with a read in progress indicating memory | |
| EP0303661B1 (en) | Central processor unit for digital data processing system including write buffer management mechanism | |
| US5327553A (en) | Fault-tolerant computer system with /CONFIG filesystem | |
| US4354225A (en) | Intelligent main store for data processing systems | |
| US5317752A (en) | Fault-tolerant computer system with auto-restart after power-fall | |
| EP0636973A2 (en) | Processor interface chip for dual-microprocessor processor system | |
| EP0303648B1 (en) | Central processor unit for digital data processing system including cache management mechanism | |
| JPH079626B2 (ja) | 多重プロセッサを備えたフォールトトレラントなコンピュータシステム | |
| JPH02202637A (ja) | フォールトトレラントコンピュータにおけるメモリ管理システム | |
| JPH07281914A (ja) | マイクロシーケンサバス制御装置サブシステム | |
| US6012127A (en) | Multiprocessor computing apparatus with optional coherency directory | |
| JPH02278353A (ja) | データ処理システム内のメモリモジュールの交換方法と該方法を実施するためのデータ処理システム | |
| US5226170A (en) | Interface between processor and special instruction processor in digital data processing system | |
| JP2540008B2 (ja) | デ―タ処理システム及びメモリ手段内のデ―タ・レコ―ド・イメ―ジを有効化する方法 | |
| US6282635B1 (en) | Method and apparatus for controlling an instruction pipeline in a data processing system | |
| EP0375864A2 (en) | Cache bypass | |
| US5630045A (en) | Device and method for fault tolerant dual fetch and store | |
| CA1295749C (en) | Interface between processor and special instruction processor in digital data processing system | |
| JP3348420B2 (ja) | メモリーコピー機能を備えた情報処理装置 | |
| EP0302926B1 (en) | Control signal generation circuit for arithmetic and logic unit for digital processor | |
| CA1300275C (en) | Destination control logic for arithmetic and logic unit for digital data processor |