JPH096731A - メモリ状態復元装置 - Google Patents
メモリ状態復元装置Info
- Publication number
- JPH096731A JPH096731A JP7151736A JP15173695A JPH096731A JP H096731 A JPH096731 A JP H096731A JP 7151736 A JP7151736 A JP 7151736A JP 15173695 A JP15173695 A JP 15173695A JP H096731 A JPH096731 A JP H096731A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- data
- main memory
- memory
- address
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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 operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/1407—Checkpointing the instruction stream
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Abstract
システム性能を向上させる。 【構成】データ処理を実行するプロセッサ10−1〜1
0−nと、プロセッサ10−1〜10−nにおけるデー
タ処理に必要なデータ等を保持するための主メモリ17
と、プロセッサ10−1〜10−nに対応して設けら
れ、データ一貫性を維持するためにデータの無効化を指
示する無効化トランザクションを発行する機能を有する
キャッシュ12−1〜12−nと、主メモリ17におけ
るアドレスと同アドレスで指示されるロケーションに保
持されるデータとを組にして格納するためのビフォアイ
メージバッファ18と、キャッシュ12−1〜12−n
から発行された無効化トランザクションに応じて、対象
とする主メモリ17のアドレス、及びこのアドレスで指
示されるロケーションに格納されたデータを、バッファ
メモリに保存するメモリアクセス制御部14を有する。
Description
状態に戻すことを可能とする機能を有するコンピュータ
システムのメモリ状態復元装置に関する。
た場合に、一旦処理が進んでしまうと、それ以前の状態
に戻って処理を再開するということが、一般にできな
い。ところが、次のような応用においては、メモリの内
容を以前の状態に戻してその時点から処理を継続する機
能(メモリ状態回復機能)があることが望まれる。
に、以前の状態に遡ることにより、エラーの原因を解析
することができる。
なくなった場合、以前の状態に戻って、そこから処理を
再開することにより、システムを停止させることなく動
作を継続することができる。
例えばPhilip A Bernstein,“Sequoia :A Fault-Tole
rant Tightly Coupled Multiprocessor for Transactio
n Processing,”IEEE Computer,Vol.21,No.2,1988に開
示されている。
ラッキングが基本的な操作である。メモリの内容が以前
の状態に戻る機能を用いることにより、バックトラッキ
ングを実現することができる。
る方法として考えられている技術の一つに、「バックワ
ード手法」がある。図5は、バックワード手法を採用す
るシステムの一つの構成例を示した図である。図5に示
すシステムは、プロセッサ30、メモリ制御部31、主
メモリ32、及びビフォアイメージバッファ33から構
成される。
制御部31の制御のもとに、主メモリ32の以前の状態
を保持するためのメモリであり、一つのエントリ(「ビ
フォアイメージエレメント」と呼ぶ)は主メモリアドレ
スとデータからなる。
を以下に説明する。いま、プロセッサ30が主メモリ3
2のあるロケーションAに、データDnewをライトする
場合を考える。
「Write」処理の要求を受けると、主メモリ32を
更新する前に、同じロケーションAに格納されていたデ
ータDold を読み出し、ロケーションのアドレス値Aと
ともに、ビフォアイメージバッファ33に格納する。そ
の後、メモリ制御部31は、データDnew を主メモリ3
3のロケーションAに書き込む。
「Write」処理の要求を受ける毎にこの動作を繰り
返し、主メモリ32のアドレスとデータとをビフォアイ
メージバッファ33の別なエントリに順次格納してい
く。
には、メモリ制御部31は、ビフォアイメージバッファ
33に格納されたエントリを最新のものから順次読み出
し(アドレスA、データDold )、アドレスAで示され
るメモリロケーションに、データDold を書き込んで行
く。これにより、主メモリ32を以前の状態に戻すこと
ができる。
再開させるためには、以前の主メモリ32の内容だけで
なく、プロセッサ30の内部状態も必要である。プロセ
ッサ30の内部状態を保存するための一つの方法として
は、適当な時間間隔で内部状態を主メモリ32に保存し
ておくチェックポイント方式がある。ここで、チェック
ポイント方式では、保存するタイミングを「チェックポ
イント」、主メモリ32の内容及びプロセッサ30の内
部状態を保存することを「チェックポイントをとる」と
いう。
フォアイメージバッファ33をクリアする。従って、ビ
フォアイメージバッファ33には、最新のチェックポイ
ント時点から現在までに更新された主メモリ32のロケ
ーション(アドレス)の元の値が保存されていることに
なる。
最新のチェックポイント時点に戻すことが可能となる。
このような技術は、例えばRok Sosic ,「History Cach
e:Hardware Support for Reverse Execution, 」Comput
er Architecture News,Vol.22,No.5,1994 に開示されて
いる。
て、前述のようなメモリ状態回復機能を適用する例につ
いて説明する。図6は、n個のプロセッサ30−1〜3
0−nがバス34を介して接続された形態のマルチプロ
セッサシステムである。メモリ制御部31は、バス34
を介して各プロセッサ30−1〜30−nからの処理要
求を受け付ける。
いても、メモリ制御部31、主メモリ32、及びビフォ
アイメージバッファ33の動作は、図5に示す構成の例
と同様に制御することができる。
サ30−1〜30−nから「Write」処理の要求を
受ける毎に、主メモリ32を更新する前に主メモリ32
から該当するデータDold を読み出して、アドレスと共
にビフォアイメージバッファ33に順次格納していく。
には、メモリ制御部31は、同様にビフォアイメージバ
ッファ33に格納されたエントリを最新のものから順次
読み出し、そのアドレスAで示されるメモリロケーショ
ンに、データDold を書き込んで行く。
をとり、全てのプロセッサ30−1〜30−nの内部状
態を保存することにより、任意の時点からチェックポイ
ントの時点に戻り、処理を再開させることができる。
クセスの高速化のためにキャッシュメモリを持つことが
一般的となっている。キャッシュメモリには、ライトス
ルー型のキャッシュとコピーバック型のキャッシュの二
種類がある。
ロセッサがライト処理を実行したとき、キャッシュに記
憶されたデータの値を更新すると共に、同時に主記憶に
記憶されたデータもキャッシュに保持された値に更新す
る。従って、プロセッサが持つキャッシュの内容と主メ
モリの内容とが一致しているので、メモリ状態回復機能
は、前に述べた方法と同様の技術で実現できる。チェッ
クポイント処理についても、全く同様の方法で実現でき
る。
は、プロセッサがライト処理を実行したとき、更新され
るのはキャッシュ中の値だけであり、主メモリには更新
された内容が直ぐに反映されない。その後、キャッシュ
エントリのリプレースなどによって更新されたデータが
主メモリに書き出されることにより、初めて主メモリの
内容が更新される。なお、キャッシュの内容を主メモリ
に書き出す場合(「Write−Line」処理)、一
般的には複数のワードから構成されるキャッシュライン
単位で行なわれる。
−nに、それぞれキャッシュ40−1〜40−nが設け
られた形態のマルチプロセッサシステムである。図7に
示すマルチプロセッサシステムは、キャッシュ40−1
〜40−nがコピーバックキャッシュであった場合、メ
モリ状態回復機能を実現するために次のように動作す
る。
すように、プロセッサの内部状態だけでなく、キャッシ
ュ中に保持されている主メモリ32に反映されていない
全ての更新データ(「A」「B」「C」)が主メモリ3
2に書き戻されて、このチェックポイントでのシステム
の状態が保存され、その後、ビフォアイメージバッファ
33がクリアされる。
らメモリ制御部31に「Write−Line」処理の
要求が発行された場合、つまりキャッシュ上で更新され
たデータ(「a」を含むキャッシュライン)を主メモリ
32に反映させる場合には、図8(b)に示すように、
メモリ制御部31は、チェックポイントにおいて保存し
たデータの内容を確保しておくために、ビフォアイメー
ジバッファ33にデータを移す。
ュから「Write−Line」処理の要求を受ける
と、主メモリ32の書き戻しの対象となるロケーション
AlineからラインデータDold-line(データ「A」を含
む)を読み出し、アドレス値Alineと共にビフォアイメ
ージバッファ33に格納する(フォアイメージバッファ
33に格納される一つのエントリは、主メモリ32にお
けるラインアドレスとラインデータから構成される)。
その後、メモリ制御部31は、キャッシュ上の更新デー
タ(データ「a」を含むキャッシュライン)を主メモリ
32に書き戻す。
チェックポイント時の状態)に戻す場合には、メモリ制
御部31は、ビフォアイメージバッファ33に格納され
たエントリを最新のものから順次読み出して(アドレス
Aline、ラインデータDold-line)、そのラインアドレ
スAlineで示されるメモリロケーションに、ラインデー
タDold-lineを書き込んで行く。これにより、主メモリ
32を以前のチェックポイント時の状態に戻すことがで
きる(ここでは、主メモリ32中のデータについてのみ
考えている)。
ッシュ上で更新され、主メモリ32に反映されていない
全ての更新データを、一括して主メモリ32に書き戻す
必要がある。従って、集中して多数の「Write−L
ine」処理が、メモリ制御部31に対して発行される
ことになる。また、主メモリ32にデータが書き戻され
るために、主メモリ32に存在する書き戻しの対象とな
る古いデータも、一括してビフォアイメージバッファ3
3に格納しなければならない。
つの「Write−Line」処理について、主メモリ
32に対するリード及びライトの2回のアクセス、及び
ビフォアイメージバッファ33に対するライトアクセス
が必要となるため、「Write−Line」処理が集
中して発生するチェックポイントでは、大量のメモリア
クセスが発生する。
ポイントでは、その間システムが停止したようになり、
他の通常の処理ができなくなってしまうため、チェック
ポイント処理に多くの時間を要してしまうと、システム
全体の処理効率の低下を招いてしまう。
するにつれ、またキャッシュの容量が増大してチェック
ポイント時に書き出すべきキャッシュライン数が増大す
るにつれて顕著になる。従って、大規模かつ高性能なシ
ステムを構成するためには、大きな問題となる。
ピュータシステムでは、コピーバック型キャッシュを用
いたマルチプロセッサシステムにおいて、チェックポイ
ントをとる際に、キャッシュ上の更新された状態で記憶
されている全てのデータが一括して主メモリ32に書き
戻されるため、それに伴って主メモリ32中の該当する
各データをビフォアイメージバッファ33に保存する必
要となってしまう。このため、チェックポイント処理に
要する時間が増大し、チェックポイントの処理の間に他
の処理が実行できないことにより、システム性能が劣化
してしまうという問題があった。
れたもので、チェックポイント処理に要する時間を短縮
してシステム性能を向上させることが可能なマルチプロ
セッサシステム等のコンピュータシステムを提供するこ
とを目的とする。
実行する少なくとも1つのプロセッサと、前記プロセッ
サにおけるデータ処理に必要なデータ等を保持するため
の主メモリと、前記プロセッサに対応して設けられたデ
ータ一貫性機能を有するコピーバック型のキャッシュ
と、前記主メモリにおけるアドレスと同アドレスで指示
されるロケーションに保持されるデータとを組にして格
納するためのバッファメモリと、前記プロセッサから対
応するキャッシュに対してライトアクセス要求した場合
に当該キャッシュから発行されるバストランザクション
に応じて、ライトアクセス要求が起きた前記主メモリ上
のアドレス、及びこのアドレスで指示されるロケーショ
ンに格納されたデータを、前記バッファメモリに保存す
るメモリアクセス制御手段とを具備したことを特徴とす
る。
キャッシュから発行されるバストランザクションが、他
のプロセッサの対応するキャッシュラインの無効化を指
示する無効化トランザクションの場合には、当該バスト
ランザクションに含まれる前記主メモリ上のアドレス、
及びこのアドレスで指示されるロケーションに格納され
たデータを主メモリから読み出して前記バッファメモリ
に保存し、当該キャッシュから発行されるバストランザ
クションが、主メモリあるいは他のプロセッサの対応す
るキャッシュラインからデータを読み出して、かつ、他
のプロセッサの対応するキャッシュラインの無効化を指
示するリード無効化トランザクションの場合には、当該
バストランザクションに含まれる前記主メモリ上のアド
レス、及びこのバストランザクションに応答して主メモ
リあるいは他のプロセッサが送出するデータを前記バッ
ファメモリに保存するものであることを特徴とする。
サからのリードアクセス要求に応じて主メモリからデー
タを読み出すバストランザクションが発行された場合
に、他のプロセッサのキャッシュにも同一データが保持
されていることを示すバス信号をアサートする手段を、
さらに具備することを特徴とする。また、前記バッファ
メモリは、前記主メモリの一部を利用することを特徴と
する。
する際に、無効化要求を含むトランザクションが発行さ
れる。このとき、主メモリからそのアドレスで示される
データを読みだし、これをアドレスとともにバッファメ
モリ(ビフォアイメージバッファ)に格納する。この処
理は、実際にそのデータを、キャッシュから主メモリに
書き出すよりも以前に先行して実行される。これによ
り、チェックポイント時にはキャッシュに保持されてい
た更新データを主メモリに書き出すだけで良くなり、オ
ーバヘッドが小さくなる。
明する。図1は本実施例のコンピュータシステム(マル
チプロセッサシステム)の概略構成を示すものである。
図1に示すように、本実施例におけるマルチプロセッサ
システムは、n個のプロセッサ10−1〜10−n、各
プロセッサに対応するn個のキャッシュ12−1〜12
−nが設けられている。キャッシュ12−1〜12−n
は、メモリ制御部14とバス16を介して接続されてい
る。メモリ制御部14には、主メモリ17、及びビフォ
アイメージバッファ18が接続されている。
制御部141、状態保存制御部142、主メモリアクセ
ス制御部143、及びバッファアクセス制御部144を
有している。
16と直接接続されており、バスの制御を行なう。バス
インタフェース制御部141は、常時、バス16を監視
しており、バス16に発行されたトランザクションに応
じて動作する。状態保存制御部142は、主メモリ17
の状態を保存するために必要な各種機能を制御する。主
メモリアクセス制御部143は、主メモリ17と接続さ
れ、主メモリ17に対するアクセスを制御する。バッフ
ァアクセス制御部144は、ビフォアイメージバッファ
18と接続され、ビフォアイメージバッファに対するア
クセスを制御する。
バック型のキャッシュであり、以下に説明する方式に従
って、データ一貫性保持のためのプロトコルを実現す
る。キャッシュ12−1〜12−nは、キャッシュライ
ンデータを保持するデータメモリと、データメモリに格
納された各キャッシュラインデータを管理する情報を保
持するためのタグメモリから構成される。
す。タグメモリには、対応するキャッシュラインデータ
のキャッシュラインアドレス(ADDR)を示すアドレ
スタグと、キャッシュラインデータの状態を示す3ビッ
トのデータが格納される。
ド(V:Valid )、モディファイド(M:Modified)、
シェアード(S:Shared)の3ビットの値の組合せによ
り管理される。なお、バリッド(V)は、対応するキャ
ッシュラインデータが有効(“1”)であることを示
す。モディファイド(M)は、キャッシュ上で更新され
た状態にあることを示す。シェアード(S)は、他のプ
ロセッサのキャッシュ上にも同じキャッシュラインデー
タが保持されていることを示す。
3に示すように、キャッシュラインデータは4つの状態
を取る。コピーバックキャッシュに関連した、キャッシ
ュからバス16に発行されるトランザクションは、次の
ようなものを含む。
ュラインデータのリード。これは、プロセッサからの、
あるアドレスのキャッシュラインに対するリードアクセ
スに対して、該当する有効なキャッシュラインデータ
が、キャッシュに存在せずキャッシュミスした場合に発
行される。
とするキャッシュラインデータを示すアドレスが、タグ
メモリに格納されていない、及びアドレスは格納されて
いるがバリッドビット(V)が無効(“0”)を示す場
合である。これに対し、キャッシュヒットは、対象とす
るキャッシュラインデータのアドレスがタグメモリに格
納され、バリッドビット(V)が有効(“1”)を示す
場合である。
Invalidate」…キャッシュラインデータのリ
ード、及び他のキャッシュに格納されたデータ無効化。
これは、プロセッサからのライトアクセスに対して、キ
ャッシュミスした場合に発行される。
シュラインデータのライト。これは、プロセッサからの
指示により明示的にキャッシュラインデータを主メモリ
17に書き出す場合、キャッシュラインデータを置換す
る必要が生じて更新データが主メモリ17に書き出され
る場合、及び他のプロセッサからの要求に応じて更新デ
ータを主メモリ17に書き出す場合に発行される。
ャッシュのデータ無効化。これは、プロセッサからのラ
イトアクセスに対して、キャッシュに当該ラインが存在
したが、クリーンシェアードであった場合に発行され
る。このトランザクション自身はアドレスの転送のみで
あり、データ転送を伴わない。
連したトランザクションは、前述した(1)〜(4)以
外のトランザクションもサポートされることが多いが、
本発明の趣旨には直接関係しないので、ここでは説明を
省略する。
1、モディファイド応答信号線162、バスコマンド信
号線163、アドレス/データ信号線164を含む。一
般には、この他にアービトレーションを行なうための信
号線などを含むが、本発明の趣旨には直接関係しないの
で、ここでは説明を省略する。
は、他のプロセッサ/キャッシュにより発行されたトラ
ンザクションに対して、トランザクションが対象として
いるキャッシュラインデータを保持している(すなわち
共有)していることを通知するために用いられる。
ed)は、他のプロセッサ/キャッシュにより発行された
トランザクションに対して、トランザクションが対象と
しているキャッシュラインデータを更新された状態で保
持していることを通知するために用いられる。
は、前述したバストランザクション(1)〜(4)の種
類を示す他、トランザクションに関する各種情報を送る
ために用いられる。
data)は、バストランザクションが対象とするキャッシ
ュラインデータのアドレス及びデータを送るため信号線
である。図1においては1本の信号線として示している
が、共通の信号線を時分割で使う方式や、アドレス/デ
ータ各々に独立した信号線を設ける方式があり、何れで
あっても構わない。
システムの動作、すなわちバストランザクションを用い
て、キャッシュ間のデータ一貫性保持プロトコルがどの
ように実現されるかを説明する。
クセスを起動する側のプロセッサ及びキャッシュ(マス
タプロセッサ)、あるプロセッサ/キャッシュが発行し
たトランザクションに対して動作する他のプロセッサ及
びキャッシュ(スレーブプロセッサ)、及びメモリ制御
部14のそれぞれの動作について説明する。
スを起動するマスタプロセッサの動作と、発行されたト
ランザクションに対応するキャッシュの状態遷移につい
て説明する。なお、マスタプロセッサがプロセッサ10
−1(キャッシュ12−1)であるとして説明する。
ト) プロセッサ10−1がリードアクセス要求した結果、キ
ャッシュ12−1においてキャッシュヒットした場合、
キャッシュ12−1から該当するデータが読み出され
る。プロセッサ10−1(キャッシュ12−1)は、バ
ス16にトランザクションを発行しない。この時、キャ
ッシュラインの状態は変わらない。
ス) プロセッサ10−1がリードアクセス要求した結果、キ
ャッシュミスした場合、プロセッサ10−1(キャッシ
ュ12−1)は、バス16に「Read−Line」ト
ランザクションを発行する。
162を介してモディファイド応答信号がアサートされ
たならば、他のキャッシュのうち一つがそのラインの更
新データを保持していることになる(スレーブプロセッ
サ側の動作の詳細については後述する)。キャッシュ1
2−1は、モディファイド応答信号をアサートしたキャ
ッシュから主メモリ17に書き出される(アドレス/デ
ータ信号線164に出力される)キャッシュラインデー
タを取り込んで、データメモリに格納する。キャッシュ
ラインの状態は「クリーン・シェアード」とする。
されず、シェアード応答信号線161を介してシェアー
ド応答信号がアサートされたならば、他のキャッシュが
そのラインをクリーンな状態で保持していることにな
る。キャッシュ12−1は、キャッシュラインの状態を
「クリーン・シェアード」とすると共に、主メモリ17
より読み出されたデータを取り込んで、データメモリに
格納する。
ド応答信号の何れもアサートされない場合には、どのキ
ャッシュにも対象とするキャッシュラインデータが保持
されていないことになる。キャッシュ12−1は、キャ
ッシュラインの状態を「クリーン・エクスクルーシブ」
とする。この場合も、キャッシュ12−1は、主メモリ
より読み出されたデータを取り込み、データメモリに格
納する。
ス16から取り込んだキャッシュラインデータのうち、
必要とされるデータをプロセッサ10−1に返す。 (A3)ライトアクセス(キャッシュヒット/モディフ
ァイド) プロセッサ10−1がライトアクセス要求した結果、キ
ャッシュ12−1においてキャッシュヒットし、対応す
るキャッシュラインデータがモディファイドの状態の場
合、該当するキャッシュラインにデータが書き込まれ
る。プロセッサ10−1(キャッシュ12−1)は、バ
ス16にトランザクションを発行しない。この時、キャ
ッシュラインの状態は変わらない。
ト/クリーンエクスクルーシブ) プロセッサ10−1がライトアクセス要求した結果、キ
ャッシュ12−1においてキャッシュヒットし、対応す
るキャッシュラインデータがクリーンエクスクルーシブ
の状態の場合、該当するキャッシュラインにデータが書
き込まれる。プロセッサ10−1(キャッシュ12−
1)は、バス16にトランザクションを発行しない。キ
ャッシュ12−1は、該当するキャッシュラインの状態
を「モディファイド」に変更する。
ト/クリーンシェアード) プロセッサ10−1がライトアクセス要求した結果、キ
ャッシュ12−1においてキャッシュヒットし、対応す
るキャッシュラインデータがクリーンシェアードの状態
の場合、該当するキャッシュラインにデータが書き込ま
れる。プロセッサ10−1(キャッシュ12−1)は、
バス16に「Invalidate」トランザクション
を発行する。キャッシュ12−2は、該当するキャッシ
ュラインの状態を「モディファイド」にする。
ス) プロセッサ10−1がライトアクセス要求した結果、キ
ャッシュミスした場合、バスに「Read−Line−
with−Invalidate」を発行する。
アサートされたならば、他のキャッシュのうち一つがそ
のラインの更新データを保持していることになる。キャ
ッシュ12−1は、モディファイド応答信号をアサート
したキャッシュから主メモリ17に書き出されるキャッ
シュラインデータを取り込んで、データメモリに格納す
る。
されなければ、キャッシュ12−1は、主メモリ17よ
り読み出されたデータ取り込み、データメモリに格納す
る。何れの場合も、キャッシュ12−1は、該当するキ
ャッシュラインの状態を「モディファイド」とし、デー
タを書き込む。
したトランザクションに対する他のプロセッサとそれに
対応するキャッシュ(スレーブプロセッサ)の動作、及
び状態遷移について説明する。なお、マスタプロセッサ
がプロセッサ10−1(キャッシュ12−1)、スレー
ブプロセッサがプロセッサ10−n(キャッシュ12−
n)であるとし、マスタプロセッサから発行されるトラ
ンザクション毎に説明する。
クション キャッシュ12−nは、トランザクションが対象とする
キャッシュラインデータを「モディファイド」の状態で
保持している場合、モデファイド応答信号162をアサ
ートして、更新データを保持していることを通知する。
この後、キャッシュ12−nは、「Write−Lin
e」トランザクションを発行して、更新データを主メモ
リ17に書き出す。キャッシュ12−nは、該当するキ
ャッシュラインの状態を「クリーンシェアード」とす
る。
ションが対象とするキャッシュラインデータを「クリー
ンエクスクルーシブ」または「クリーンシェアード」の
状態で保持している場合、シェアード応答信号161を
アサートして、クリーンデータを保持していることを通
知する。何れの場合も、キャッシュラインの状態は「ク
リーンシェアード」とする。
効なキャッシュラインデータを保持していない場合に
は、何もしない。 (B2)「Read−Line−with−Inval
idate」トランザクション キャッシュ12−nは、トランザクションが対象とする
キャッシュラインデータを「モディファイド」の状態で
保持している場合、モディファイド応答信号162をア
サートして、更新データを保持していることを通知す
る。この後、キャッシュ12−nは、「Write−L
ine」トランザクションを発行して更新データを主メ
モリ17に書き出す。キャッシュラインの状態は「イン
バリッド」とする。
ションが対象とするキャッシュラインデータを「クリー
ンエクスクルーシブ」または「クリーンシェアード」の
状態で保持している場合、キャッシュラインの状態を
「インバリッド」とする。
効なキャッシュラインデータを保持していない場合に
は、何もしない。 (B3)「Invalidate」トランザクション キャッシュ12−nは、トランザクションが対象とする
キャッシュラインデータを「クリーンエクスクルーシ
ブ」または「クリーンシェアード」の状態で保持してい
る場合、このキャッシュラインの状態を「インバリッ
ド」にする。
効なキャッシュラインデータを保持していない場合に
は、何もしない。なお、この場合、対応するラインを
「モディファイド」の状態で保持していることはあり得
ない。
ザクション キャッシュ12−nは、何もしない。次に、各バストラ
ンザクションに対するメモリ制御部14の動作について
説明する。メモリ制御部14の主メモリ17の状態を保
存するための動作制御は、状態保存制御部142によっ
て行なわれる。以下、バス16に発行されるトランザク
ション毎に説明する。
ザクション バスインタフェース制御部141がバス16に発行され
た「Write−Line」トランザクションをスヌー
プすると、状態保存制御部142は、主メモリアクセス
制御部143を起動する。主メモリアクセス制御部14
3は、キャッシュから書き出されるキャッシュラインデ
ータを、バスインタフェース制御部141を介して取り
込み、主メモリ17の該当するアドレスに書き込む。
ザクション バスインタフェース制御部141がバス16に発行され
た「Invalidate」トランザクションをスヌー
プすると、状態保存制御部142は、主メモリアクセス
制御部143を起動する。主メモリアクセス制御部14
3は、バスインタフェース制御部141を介して得た、
無効対象となっているキャッシュラインのアドレスで示
されるメモリロケーションから更新前のキャッシュライ
ンデータを読み出す。また、状態保存制御部142は、
バッファアクセス制御部144を起動する。状態保存制
御部142は、主メモリアクセス制御部143によって
読み出されたキャッシュラインデータをバッファアクセ
ス制御部144に転送して、アドレス値と共にビフォア
イメージバッファ18に書き込ませる。
−Invalidate」トランザクション 「Read−Line−with−Invalidat
e」トランザクションの発行に伴って、モディファイド
応答信号がアサートされた場合は、アサートしたキャッ
シュが既に更新データを保持していることを示してお
り、そのプロセッサが最新のチェックポイント以降にラ
イトアクセスを実行していることがわかる。すなわち、
前述した(A5)のように、ライトアクセスが実行され
る際に、バス16に「Invalidate」トランザ
クションが発行され、前述した(C2)の処理が既に実
行されていることになる。このため、その時点で、以前
のデータがビフォアイメージバッファ18に格納されて
いることになり、改めてこのアドレスのデータをビフォ
アイメージバッファに格納する必要はない。従って、状
態保存制御部142は、何もする必要がない。
Invalidate」トランザクションの発行に伴っ
て、モディファイド応答信号がアサートされない場合
は、状態保存制御部142は、バスインタフェース制御
部141から通知を受け、この通知に応じて主メモリア
クセス制御部143を起動する。主メモリアクセス制御
部143は、バスインタフェース制御部141を介して
得た、無効対象としてアドレスで示される主メモリ17
のメモリロケーションからキャッシュラインデータを読
み出す。バスインタフェース制御部141は、主メモリ
アクセス制御部143によって読み出されたラインデー
タをバス16に出力する。また、状態保存制御部142
は、バッファアクセス制御部144を起動して、主メモ
リアクセス制御部143によって読み出されたキャッシ
ュラインデータをバッファアクセス制御部144に転送
し、アドレス値と共にビフォアイメージバッファ18に
書き込ませる。
クション バスインタフェース制御部141が「Read−Lin
e」トランザクションの発行に伴って、モディファイド
応答信号がアサートされたことをスヌープすると、状態
保存制御部142は、主メモリアクセス制御部143を
起動する。主メモリアクセス制御部143は、キャッシ
ュから書き出されるラインデータをバスインタフェース
制御部141を介して取り込み、主メモリ17の該当す
るアドレスに書き込む。
サートされない場合は、状態保存制御部142は、主メ
モリアクセス制御部143を起動する。主メモリアクセ
ス制御部143は、バスインタフェース制御部141を
介して得た、読み出し対象としてアドレスで示される主
メモリ17のメモリロケーションからキャッシュライン
データを読み出す。バスインタフェース制御部141
は、主メモリアクセス制御部143によって読み出され
たラインデータをバス16に出力する。また、ラインデ
ータの出力と共に、状態保存制御部142は、バスイン
タフェース制御部141を介して、シェアード応答信号
をシェアード応答信号線161にアサートする。これに
よって、マスタプロセッサのキャッシュの、現在対象と
しているキャッシュラインの状態を「クリーンエクスク
ルーシブ」ではなく、「クリーンシェアード」の状態に
することができる。
態を避け、「クリーンシェアード」の状態にするる理由
は、次の通りである。マスタプロセッサについての説明
のように(前述した(A4))、「クリーンエクスクル
ーシブ」の状態にあるキャッシュラインに対してライト
する場合には、バス16にトランザクションが発行され
ることなくキャッシュ中で値が書き換えられてしまう。
このため、この時点でビフォアイメージバッファ18
に、主メモリ17への書き込みを行なう以前のメモリ状
態(対象とするキャッシュラインについて)を保存する
ことができない。
主メモリ17にラインデータが書き出されたとき、すな
わち「Write−Line」トランザクションがバス
16に発行されたときに、メモリ状態を保存する方法が
考えられる。しかし、これでは結局、従来と同様になっ
てしまい、チェックポイント処理時間が長くなるという
問題がある。
れば、ライトアクセスする場合には、必ずバス16に
「Invalidate」または「Read−Line
−with−Invalidate」の何れかのトラン
ザクションが発行される。メモリ制御部14は、このト
ランザクションを、主メモリ17からビフォアイメージ
バッファ18にデータを移す処理の開始条件とすること
で、上述のようにして書き込み以前のメモリ状態を保存
することが可能となる。
びキャッシュ12−1〜12−nに「クリーンエクスク
ルーシブ」状態を避ける機能が設けられている場合に
は、メモリ制御部14は、シェアード応答信号161を
アサートする必要はない。
ロセッサシステムにおけるチェックポイント処理につい
て説明する。チェックポイント時には、プロセッサ10
−1〜10−nの内部状態を主メモリ17に書き出すと
ともに、各キャッシュ12−1〜12−nの「モディフ
ァイド」状態にある全てのキャッシュラインのデータを
主メモリ17に書き戻す。キャッシュ12−1〜12−
nは、主メモリ17に書き戻したキャッシュラインの状
態を「クリーンシェアード」または「インバリッド」に
する。
は、「Write−Line」トランザクションを用い
て行なわれるため、このときにビフォアイメージバッフ
ァ18へのデータ保存が発生することはない。
る以前に、キャッシュ12−1〜12−n上で更新され
たデータに対応する主メモリ17中のデータが、前述し
た(C2)(C3)ように既に、ビフォアイメージバッ
ファ18に保存されているので、主メモリ17への書き
込み処理によりチェックポイント処理が完了する。
システムの他の構成例を示す。図4に示す構成では、主
メモリ26の記憶容量の一部を、ビフォアイメージバッ
ファ28として使用するものである。
リアクセス制御部243を介して、主メモリ26中のビ
フォアイメージバッファ28をアクセスする。その他の
制御は、図1に示す構成に対するものと同様である。
ジバッファ用に主メモリとは別の特別なメモリを必要と
しないため、システム構成を簡単することができるとい
う効果がある。
を対象としているが、コピーバックモードと非コピーバ
ックモードのデータが混在するコンピュータシステムに
対しても当然適用可能である。すなわち、コピーバック
モードのデータに対しては本発明を適用し、非コピーバ
ックモードのデータに対しては従来例の方法を適用すれ
ば良い。
ロセッサ10−1〜10−nを持つマルチプロセッサシ
ステムを説明したが、キャッシュが同様の機能を持って
いれば、単一プロセッサから成るコンピュータシステム
に対しても適用することが可能である。
をとる場合にも同様に適用可能である。このようにし
て、メモリ制御部14は、あるキャッシュからバス16
に発行された、他のキャッシュに保持されているデータ
を無効化するためのトランザクションがスヌープされた
場合に、主メモリ17に保持された無効化の対象となる
キャッシュラインデータをビフォアイメージバッファ1
8に保存する。
クセス要求時にキャッシュヒットであり、対象とするキ
ャッシュラインの状態がクリーンシェアードの場合に発
行された「Invalidate」、あるいはライトア
クセス要求時にキャッシュミスした場合に発行された
「Read−Line−with−Invalidat
e」に応じて、主メモリ17中のキャッシュラインデー
タがビフォアイメージバッファ18に保存されるので、
対象とするキャッシュラインデータを、実際に主メモリ
17に書き戻す処理の以前に実行されることになる。
17に書き戻す必要のある更新データが大量にあったと
しても、既に書き戻しの対象となるデータがビフォアイ
メージバッファ18に保存されているので、そのための
処理が不要となる。このために、チェックポイント処理
に要する時間が短縮され、他の通常の処理に対する影響
が低減されるので、システム全体の処理効率の向上が図
れる。
ェックポイントによって保持された、以前のメモリ状態
を保存する処理が、チェックポイント時に集中するので
はなく、通常の処理の途中に分散して行なわれるので、
チェックポイント時のオーバヘッドが軽減され、処理効
率を向上させることが可能となるものである。
ム(マルチプロセッサシステム)の概略構成を示すブロ
ック図。
例を説明するための図。
明するための図。
の構成例を示すブロック図。
構成例を示すブロック図。
ルチプロセッサの構成を示すブロック図。
ャッシュが設けられたマルチプロセッサの構成を示すブ
ロック図。
図。
…キャッシュ、14…メモリ制御部、141…バスイン
タフェース制御部、142…状態保存制御部、143…
主メモリアクセス制御部、144…バッファアクセス制
御部、16…バス、161…シェアード応答信号線、1
62…モディファイド応答信号線、163…バスコマン
ド信号線、164…アドレス/データ信号線、17…主
メモリ、18…ビフォアイメージバッファ。
Claims (4)
- 【請求項1】 データ処理を実行する少なくとも1つの
プロセッサと、 前記プロセッサにおけるデータ処理に必要なデータ等を
保持するための主メモリと、 前記プロセッサに対応して設けられたデータ一貫性機能
を有するコピーバック型のキャッシュと、 前記主メモリにおけるアドレスと同アドレスで指示され
るロケーションに保持されるデータとを組にして格納す
るためのバッファメモリと、 前記プロセッサから対応するキャッシュに対してライト
アクセス要求した場合に当該キャッシュから発行される
バストランザクションに応じて、ライトアクセス要求が
起きた前記主メモリ上のアドレス、及びこのアドレスで
指示されるロケーションに格納されたデータを、前記バ
ッファメモリに保存するメモリアクセス制御手段とを具
備したことを特徴とするコンピュータシステム。 - 【請求項2】 前記メモリアクセス制御手段は、 当該キャッシュから発行されるバストランザクション
が、他のプロセッサの対応するキャッシュラインの無効
化を指示する無効化トランザクションの場合には、当該
バストランザクションに含まれる前記主メモリ上のアド
レス、及びこのアドレスで指示されるロケーションに格
納されたデータを主メモリから読み出して前記バッファ
メモリに保存し、 当該キャッシュから発行されるバストランザクション
が、主メモリあるいは他のプロセッサの対応するキャッ
シュラインからデータを読み出して、かつ、他のプロセ
ッサの対応するキャッシュラインの無効化を指示するリ
ード無効化トランザクションの場合には、当該バストラ
ンザクションに含まれる前記主メモリ上のアドレス、及
びこのバストランザクションに応答して主メモリあるい
は他のプロセッサが送出するデータを前記バッファメモ
リに保存するものであることを特徴とする請求項1記載
のメモリ状態復元装置。 - 【請求項3】 前記キャッシュが対応するプロセッサか
らのリードアクセス要求に応じて主メモリからデータを
読み出すバストランザクションが発行された場合に、他
のプロセッサのキャッシュにも同一データが保持されて
いることを示すバス信号をアサートする手段を、さらに
具備することを特徴とする請求項1または請求項2記載
のメモリ状態復元装置。 - 【請求項4】 前記バッファメモリは、前記主メモリの
一部を利用することを特徴とする請求項1、請求項2、
または請求項3記載のメモリ状態復元装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07151736A JP3086779B2 (ja) | 1995-06-19 | 1995-06-19 | メモリ状態復元装置 |
EP96109771A EP0750258B1 (en) | 1995-06-19 | 1996-06-18 | Computer system with memory state recovery |
US08/665,628 US5913021A (en) | 1995-06-19 | 1996-06-18 | Memory state recovering apparatus |
DE69615758T DE69615758T2 (de) | 1995-06-19 | 1996-06-18 | Rechnersystem mit Speicherzustandsrückgewinnung |
US09/317,915 US6079030A (en) | 1995-06-19 | 1999-05-25 | Memory state recovering apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP07151736A JP3086779B2 (ja) | 1995-06-19 | 1995-06-19 | メモリ状態復元装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH096731A true JPH096731A (ja) | 1997-01-10 |
JP3086779B2 JP3086779B2 (ja) | 2000-09-11 |
Family
ID=15525173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP07151736A Expired - Lifetime JP3086779B2 (ja) | 1995-06-19 | 1995-06-19 | メモリ状態復元装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US5913021A (ja) |
EP (1) | EP0750258B1 (ja) |
JP (1) | JP3086779B2 (ja) |
DE (1) | DE69615758T2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10320274A (ja) * | 1997-03-19 | 1998-12-04 | Toshiba Corp | キャッシュフラッシュ装置及び同装置を備えた計算機システム、記録媒体 |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2916420B2 (ja) * | 1996-09-04 | 1999-07-05 | 株式会社東芝 | チェックポイント処理加速装置およびデータ処理方法 |
TW379298B (en) * | 1996-09-30 | 2000-01-11 | Toshiba Corp | Memory updating history saving device and memory updating history saving method |
US6230282B1 (en) * | 1998-07-03 | 2001-05-08 | Hewlett-Packard Company | Checkpoint computer system utilizing a FIFO buffer to re-synchronize the memory systems on the detection of an error |
US6810489B1 (en) * | 2000-09-06 | 2004-10-26 | Hewlett-Packard Development Company, L.P. | Checkpoint computer system utilizing a FIFO buffer to re-synchronize and recover the system on the detection of an error |
US7085955B2 (en) * | 2001-09-14 | 2006-08-01 | Hewlett-Packard Development Company, L.P. | Checkpointing with a write back controller |
US7181560B1 (en) | 2001-12-21 | 2007-02-20 | Joseph Grand | Method and apparatus for preserving computer memory using expansion card |
US7058849B2 (en) | 2002-07-02 | 2006-06-06 | Micron Technology, Inc. | Use of non-volatile memory to perform rollback function |
US7757046B2 (en) * | 2002-09-30 | 2010-07-13 | Intel Corporation | Method and apparatus for optimizing line writes in cache coherent systems |
US7886093B1 (en) * | 2003-07-31 | 2011-02-08 | Hewlett-Packard Development Company, L.P. | Electronic device network supporting compression and decompression in electronic devices |
US9213609B2 (en) * | 2003-12-16 | 2015-12-15 | Hewlett-Packard Development Company, L.P. | Persistent memory device for backup process checkpoint states |
GB2423849A (en) * | 2004-01-15 | 2006-09-06 | Matsushita Electric Ind Co Ltd | Information-processing method and apparatus |
US20050216552A1 (en) * | 2004-03-24 | 2005-09-29 | Samuel Fineberg | Communication-link-attached persistent memory system |
US7904895B1 (en) | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
US7496787B2 (en) * | 2004-12-27 | 2009-02-24 | Stratus Technologies Bermuda Ltd. | Systems and methods for checkpointing |
US8209676B2 (en) | 2006-06-08 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Device management in a network |
EP2047420A4 (en) | 2006-07-27 | 2009-11-18 | Hewlett Packard Development Co | USER EXPERIENCE AND DEPENDENCE MANAGEMENT IN A MOBILE DEVICE |
US9251002B2 (en) | 2013-01-15 | 2016-02-02 | Stratus Technologies Bermuda Ltd. | System and method for writing checkpointing data |
WO2015102875A1 (en) | 2013-12-30 | 2015-07-09 | Stratus Technologies Bermuda Ltd. | Checkpointing systems and methods of using data forwarding |
US9652338B2 (en) | 2013-12-30 | 2017-05-16 | Stratus Technologies Bermuda Ltd. | Dynamic checkpointing systems and methods |
ES2652262T3 (es) | 2013-12-30 | 2018-02-01 | Stratus Technologies Bermuda Ltd. | Método de retardar puntos de comprobación inspeccionando paquetes de red |
CN107092598A (zh) * | 2016-02-17 | 2017-08-25 | 阿里巴巴集团控股有限公司 | 数据存储位置信息的管理方法和装置 |
DE102017124805B4 (de) * | 2017-10-24 | 2019-05-29 | Infineon Technologies Ag | Speicheranordnung und verfahren zum zwischenspeichern von speicherinhalten |
CN109189608B (zh) * | 2018-08-13 | 2019-07-26 | 武汉达梦数据库有限公司 | 一种保证复制事务一致性的方法以及相应的复制装置 |
Family Cites Families (53)
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 |
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 |
US3803560A (en) * | 1973-01-03 | 1974-04-09 | Honeywell Inf Systems | Technique for detecting memory failures and to provide for automatically for reconfiguration of the memory modules of a memory system |
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 |
US4044337A (en) * | 1975-12-23 | 1977-08-23 | International Business Machines Corporation | Instruction retry mechanism for a data processing system |
US4228496A (en) * | 1976-09-07 | 1980-10-14 | Tandem Computers Incorporated | Multiprocessor 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 |
US4513367A (en) * | 1981-03-23 | 1985-04-23 | International Business Machines Corporation | Cache locking controls in a multiprocessor |
FR2503900A1 (fr) * | 1981-04-13 | 1982-10-15 | Grandjean Bernard | Dispositif de reprise pour installation de traitement de donnees |
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 |
US4459658A (en) * | 1982-02-26 | 1984-07-10 | Bell Telephone Laboratories Incorporated | Technique for enabling operation of a computer system with a consistent state of a linked list data structure after a main memory failure |
US4484273A (en) * | 1982-09-03 | 1984-11-20 | Sequoia Systems, Inc. | Modular computer system |
JPS5957351A (ja) * | 1982-09-28 | 1984-04-02 | Nec Corp | デ−タ処理システム |
US4819154A (en) * | 1982-12-09 | 1989-04-04 | Sequoia Systems, Inc. | Memory back up system with one cache memory and two physically separated main memories |
EP0128945B1 (en) * | 1982-12-09 | 1991-01-30 | Sequoia Systems, Inc. | Memory backup system |
JPS59144956A (ja) * | 1983-02-07 | 1984-08-20 | Nec Corp | デ−タ処理システム |
FR2553541B1 (fr) * | 1983-10-17 | 1992-02-28 | Inst Nat Rech Inf Automat | Dispositif et procede pour le stockage rapide et stable d'informations |
EP0163096B1 (de) * | 1984-04-26 | 1988-11-17 | BBC Brown Boveri AG | Einrichtung zur Rettung eines Rechnerzustandes |
US4751639A (en) * | 1985-06-24 | 1988-06-14 | Ncr Corporation | Virtual command rollback in a fault tolerant data processing system |
US4814971A (en) * | 1985-09-11 | 1989-03-21 | Texas Instruments Incorporated | Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state |
EP0228559A1 (de) * | 1985-12-17 | 1987-07-15 | BBC Brown Boveri AG | Fehlertolerante Mehrrechneranordnung |
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 |
US4740969A (en) * | 1986-06-27 | 1988-04-26 | Hewlett-Packard Company | Method and apparatus for recovering from hardware faults |
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 |
US4958273A (en) * | 1987-08-26 | 1990-09-18 | International Business Machines Corporation | Multiprocessor system architecture with high availability |
US4965719A (en) * | 1988-02-16 | 1990-10-23 | International Business Machines Corporation | Method for lock management, page coherency, and asynchronous writing of changed pages to shared external store in a distributed computing system |
EP0348628A3 (en) * | 1988-06-28 | 1991-01-02 | International Business Machines Corporation | Cache storage system |
US4924466A (en) * | 1988-06-30 | 1990-05-08 | International Business Machines Corp. | Direct hardware error identification method and apparatus for error recovery in pipelined processing areas of a computer system |
US4964126A (en) * | 1988-09-30 | 1990-10-16 | Massachusetts Institute Of Technology | Fault tolerant signal processing machine and method |
US5325517A (en) * | 1989-05-17 | 1994-06-28 | International Business Machines Corporation | Fault tolerant data processing system |
US5247618A (en) * | 1989-06-30 | 1993-09-21 | Digital Equipment Corporation | Transferring data in a digital data processing system |
US5239637A (en) * | 1989-06-30 | 1993-08-24 | Digital Equipment Corporation | Digital data management system for maintaining consistency of data in a shadow set |
US5271013A (en) * | 1990-05-09 | 1993-12-14 | Unisys Corporation | Fault tolerant computer system |
US5327532A (en) * | 1990-05-16 | 1994-07-05 | International Business Machines Corporation | Coordinated sync point management of protected resources |
US5157663A (en) * | 1990-09-24 | 1992-10-20 | Novell, Inc. | Fault tolerant computer system |
US5214652A (en) * | 1991-03-26 | 1993-05-25 | International Business Machines Corporation | Alternate processor continuation of task of failed processor |
US5269017A (en) * | 1991-08-29 | 1993-12-07 | International Business Machines Corporation | Type 1, 2 and 3 retry and checkpointing |
US5313647A (en) * | 1991-09-20 | 1994-05-17 | Kendall Square Research Corporation | Digital data processor with improved checkpointing and forking |
US5325519A (en) * | 1991-10-18 | 1994-06-28 | Texas Microsystems, Inc. | Fault tolerant computer with archival rollback capabilities |
WO1993009494A1 (en) * | 1991-10-28 | 1993-05-13 | Digital Equipment Corporation | Fault-tolerant computer processing using a shadow virtual processor |
US5488719A (en) * | 1991-12-30 | 1996-01-30 | Xerox Corporation | System for categorizing character strings using acceptability and category information contained in ending substrings |
US5408649A (en) * | 1993-04-30 | 1995-04-18 | Quotron Systems, Inc. | Distributed data access system including a plurality of database access processors with one-for-N redundancy |
US5504861A (en) * | 1994-02-22 | 1996-04-02 | International Business Machines Corporation | Remote data duplexing |
US5664150A (en) * | 1995-03-21 | 1997-09-02 | International Business Machines Corporation | Computer system with a device for selectively blocking writebacks of data from a writeback cache to memory |
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 |
-
1995
- 1995-06-19 JP JP07151736A patent/JP3086779B2/ja not_active Expired - Lifetime
-
1996
- 1996-06-18 US US08/665,628 patent/US5913021A/en not_active Expired - Lifetime
- 1996-06-18 EP EP96109771A patent/EP0750258B1/en not_active Expired - Lifetime
- 1996-06-18 DE DE69615758T patent/DE69615758T2/de not_active Expired - Fee Related
-
1999
- 1999-05-25 US US09/317,915 patent/US6079030A/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10320274A (ja) * | 1997-03-19 | 1998-12-04 | Toshiba Corp | キャッシュフラッシュ装置及び同装置を備えた計算機システム、記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
DE69615758D1 (de) | 2001-11-15 |
EP0750258A3 (en) | 1998-12-30 |
JP3086779B2 (ja) | 2000-09-11 |
EP0750258B1 (en) | 2001-10-10 |
EP0750258A2 (en) | 1996-12-27 |
DE69615758T2 (de) | 2002-06-20 |
US6079030A (en) | 2000-06-20 |
US5913021A (en) | 1999-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3086779B2 (ja) | メモリ状態復元装置 | |
JP2916420B2 (ja) | チェックポイント処理加速装置およびデータ処理方法 | |
US6148416A (en) | Memory update history storing apparatus and method for restoring contents of memory | |
US6519685B1 (en) | Cache states for multiprocessor cache coherency protocols | |
US6272602B1 (en) | Multiprocessing system employing pending tags to maintain cache coherence | |
JP3927556B2 (ja) | マルチプロセッサ・データ処理システム、変換索引バッファ無効化インストラクション(tlbi)のハンドリングを行うための方法、およびプロセッサ | |
US5241641A (en) | Hierarchical cache memory apparatus | |
JPH09511088A (ja) | マルチプロセッサ・システムのための高可用性のエラー自己回復共用キャッシュ | |
US7711899B2 (en) | Information processing device and data control method in information processing device | |
JPH0619786A (ja) | キャッシュコヒーレンスを維持する方法及び装置 | |
US5987544A (en) | System interface protocol with optional module cache | |
WO1997004392A1 (en) | Shared cache memory device | |
JP5021978B2 (ja) | マルチプロセッサシステム及びその動作方法 | |
KR100380674B1 (ko) | 멀티프로세서 시스템에서의 기록-통과 기억 동작동안 캐시코히어런스를 유지하는 방법 및 시스템 | |
JPH03163640A (ja) | マルチプロセッサシステムおよびそれに用いるキャッシュメモリ | |
US5895486A (en) | Method and system for selectively invalidating cache lines during multiple word store operations for memory coherence | |
JP3083786B2 (ja) | メモリ更新履歴保存装置およびメモリ更新履歴保存方法 | |
JP3833760B2 (ja) | 計算機システム及びメモリ状態復元装置 | |
US5813035A (en) | Microprocessor employing a technique for restoration of an aborted cycle following a snoop writeback operation | |
JP4091171B2 (ja) | キャッシュフラッシュ方法および装置 | |
JP2000181790A (ja) | メモリ更新履歴保存装置 | |
JPH10222423A (ja) | キャッシュメモリ制御方式 | |
JPH10240630A (ja) | コンピュータシステム及び同システムに適用するメモリ制御方法 | |
JP3145479B2 (ja) | マルチプロセッサシステムとそのキャッシュメモリ制御方法および装置 | |
JPH10149307A (ja) | チェックポイント処理方法及び記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080707 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090707 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090707 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100707 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100707 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110707 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120707 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130707 Year of fee payment: 13 |
|
EXPY | Cancellation because of completion of term |