JPH0531178B2 - - Google Patents

Info

Publication number
JPH0531178B2
JPH0531178B2 JP2226818A JP22681890A JPH0531178B2 JP H0531178 B2 JPH0531178 B2 JP H0531178B2 JP 2226818 A JP2226818 A JP 2226818A JP 22681890 A JP22681890 A JP 22681890A JP H0531178 B2 JPH0531178 B2 JP H0531178B2
Authority
JP
Japan
Prior art keywords
register
array
cache
output
data
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
Application number
JP2226818A
Other languages
English (en)
Other versions
JPH03108041A (ja
Inventor
Haapato Chao Hau
Changu Junguuheringu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH03108041A publication Critical patent/JPH03108041A/ja
Publication of JPH0531178B2 publication Critical patent/JPH0531178B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1064Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in cache or content addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0853Cache with multiport tag or data arrays

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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、一般に、汎用デイジタル・コンピユ
ータにおけるエラー検査及び訂正(ECC)に関
し、より詳しくは、キヤツシユ・メモリ中でパイ
プライン式エラー検査及び訂正を実施することに
関する。
B 従来の技術 キヤツシユ・メモリは、頻繁にアクセスされる
命令及びデータを含む、高速バツフア記憶機構で
ある。このようなメモリは、典型的には、コンピ
ユータ・システムの中央演算処理装置(CPU)
と、アクセス時間がキヤツシユ・メモリよりもず
つとかかる大容量記憶装置や主記憶装置または直
接アクセス記憶装置(DASD)との間で使用され
る。つまり、キヤツシユ・メモリの目的は、アク
セス時間を削減し、それによつてCPUの処理効
率を最大にすることにある。
キヤツシユの大きさが増加し、記憶セルの大き
さが減少するのに応じて、キヤツシユのソフト・
エラー率が著しく増大する可能性がある。このこ
とは、多くの応用分野にとつて信頼生の上で重要
な問題を提起している。
大部分のキヤツシユ応用分野でソフト・エラー
から防護する単一エラー訂正/2重エラー検出用
のエラー検査/訂正(ECC)方式が、当技術分
野では既知である。書込みの際、データがECC
ビツト生成回路(たとえば、ハミング・コードを
使用している場合にはハミング回路)に供給され
て、ECCビツトを生成し、それがデータと共に
キヤツシユ・アレイに書き込まれる。読取りの際
は、データ及びECCビツトがハミング回路に供
給されて、シンドローム・ビツトを生成し、それ
がデコーダの入力として使用される。次いで、単
一不正ビツトがあれば訂正するために、デコーダ
の出力をデータと排他的論理和をとる。単一エラ
ー及び2重エラーのエラー・フラグも、デコーダ
によつて生成される。単一エラー・フラグを検出
すると、訂正済みデータ及びアドレスがラツチさ
れる。次いで、訂正済みデータをキヤツシユ・ア
レイに書き戻すことにより、キヤツシユ・アレイ
における単一エラーを訂正する。2重エラーを検
出したとき、システムが回復不能なこともある。
ただし、その発生確率は実際に問題とならないぐ
らい低い。
エラー検査/訂正を実施するには、もう一つ面
倒なことがある。つまり、STORE(記憶)の最
小単位は、大部分の汎用デイジタル・コンピユー
タ・アーキテクチヤ(たとえばIBM S/370、
DEC VAX、Intel 80386)では1バイトである。
したがつて、ECCキヤツシユの簡単な実施態様
は、13/8ハミング・コートを使用して、各バイト
ごとにエラー訂正用に別々の検査ビツト(ECC
ビツト)を設けるものである。ただし、この方式
のオーバーヘツドは非常に大きい。72/64や137/1
28ハミング・コードによる実施態様など、より広
いデータでのエラー訂正の方が実用的である。
第2図は、72/64ハミング・コードを用いた
ECCキヤツシユの簡単な実施態様のデータの流
れを示している。このキヤツシユの動作は、
STORE動作のデータの流れ検討すると最も良く
理解できる。ダブルワード中の第2バイトである
バイトをアドレスA3で記憶させたいものとする
と、これを実行するのに必要な動作は、次の通り
である。
1 ダブルワード及び関連する検査ビツトをキヤ
ツシユ・アレイ12のアドレスA3(記憶アド
レス・レジスタ(MAR)11の現内容)から
読み出す。
2 ハミング回路ECC2,13を通過する。
3 マージ回路14で、中央演算処理装置からの
データとマージする。すなわち、データの第2
バイトを中央演算処理装置からの新しいデータ
で置き換える。
4 ハミング回路ECC1,15によつて検査ビ
ツトを生成する。
5 結果(新しいダブルワード及び関連する検査
ビツト)をキヤツシユ・アレイ12に書き戻
す。
この実施態様の問題点は、STORE動作の臨海
経路(クリテイカル・パス)が非常に長くなり、
サイクル時間が許容できないほど増加することで
ある。
従来技術で既知のエラー訂正技法の一例が、
IBMテクニカル・デイスクロージヤ・ブルテン、
Vol.31、No.3(1988年8月)、pp.146〜149に所載
のH.T.オルノヴイツチ(Olnowich)の論文「記
憶帯域幅を増加させ、アクセス・ペナルテイを減
少させるエラー訂正技法(Error Correction
Technique Which Increases Memory
Bandwidth and Reduces Access Penalties)」
に開示されている。ただし、この技法は複式冗長
メモリの実施を必要とし、より高価な高速メモリ
(スタテイツク・ランダム・アクセス記憶チツプ
SRAM)の代りにより低性能のメモリ(ダイナ
ミツク・ランダム・アクセス記憶チツプDRAM)
の2バンクを使用するものである。したがつて、
これは高性能キヤツシユの応用例にとつて適当で
ない。IBMテクニカル・デイスクロージヤ・ブ
ルテン、Vol.16、No.10(1974年3月)、pp.3280
〜3281に所載のF.ツイ(Tsui)の論文「サイク
ル時間が長びくことのないエラー訂正用のメモリ
の配置及び動作(Memory Arrangement and
Operation for ErrorCorrection Without Cycle
−time Prolongation)」に、データ・ビツト用
のメモリ・アレイが検査ビツト用のメモリ・アレ
イから分離され、両メモリ・アレイが別々に駆動
され、後者のメモリ・アレイが前者より遅れる時
間遅延を有するようになつている。方式が開示さ
れている。読取り動作の際は、データは正しいも
のと仮定され、エラーが検出された場合は、未訂
正データを用いて開始された動作を再び呼び出
し、訂正済みデータを用いて新しい動作を開始す
る。この方式では、最小単位のSTORE動作でエ
ラーを訂正するために、分離した検査ビツトが必
要である。最新の大部分のデイジタル・システム
用アーキテクチヤ(たとえば370、VAX、80386)
は1バイトがSTORE動作の最小単位なので、こ
の手法のオーバーヘツドは非常に大きく、したが
つて、これは実用的でない。
米国特許第4748627号明細書は、エラー訂正機
能をもつ記憶システムを記載している。このシス
テムの目的は、エラーがダイナミツクRAMに蓄
積するのを避けることにある。このことは重要で
はあるが、このシステムは本発明によつて解決さ
れる問題とは完全に異なる問題を対象とする。米
国特許第4672614号明細書は、2組のアドレス・
バツフアを使用することを提案している。より詳
しくは、記憶装置に、独立して動作できる1対の
行アドレス・バツフアが設けられている。一方の
バツフアのアドレス内容に関係するデータに対し
てエラー訂正動作を実行するとき、もう一方のバ
ツフアによつてデータ・セル・アレイのアクセス
動作が行なわれ、それにより、メモリが連続する
読出し動作の一部分を同時に実行できるようにな
る。
[発明が解決しようとする課題] 本発明の目的は、通常のキヤツシユ・アクセス
時間を増加させずに、キヤツシユ・メモリ用のエ
ラー検査及び訂正機能を提供することにある。
本発明のもう一つの目的は、実効2ポート式キ
ヤツシユ・アレイを実施し、密度は通常の1ポー
トのキヤツシユ・アレイのままである、新しいメ
モリ構成を提供することにある。
[課題を解決するための手段] 本発明によれば、ECC機能の追加によつて通
常のキヤツシユ・アクセス時間が影響を受けな
い、キヤツシユ・メモリ用の単一エラー訂正/2
重エラー検出機能を実施するための新方式が提供
される。広義に言うと、複数のデータ・バイト用
の検査ビツトが設けられていて、それにより、エ
ラー検出及び訂正技法のオーバーヘツドが低下す
る。単一エラーが検出されると、キヤツシユ・チ
ツプ及びCPUチツプの制御回路によつてサイク
ルが挿入される。
好ましい実施例では、たとえば72/64ハミン
グ・コードを使つて、複数バイトのデータに対す
るエラー訂正が行なわれる。本発明による1サイ
クル・キヤツシユ設計用の技法は、通常なら、2
ポート式キヤツシユ・アレイ(書込みポート1個
と読取りポート1個)を必要とするはずである。
ただし、真の2ポート式アレイの密度は低すぎ
る。そのため、本発明は、1ポート式アレイで時
間多重化技法を用いて実施し、1ポート式アレイ
の密度をもつが、実効2ポート式アレイを実現す
る。
[実施例] 図面、特に第3図には、汎用デイジタル・コン
ピユータの処理装置の構成が示されている。より
詳しくは、処理装置はCPU(中央演算処理装置)
21、ならびにCPU21と主記憶装置及び入出
力システムを含む記憶システムとの間に接続され
たキヤツシユ・メモリ22から構成されている。
3本のバスが、CPU21とキヤツシユ・メモリ
22の間を接続している。これらは、ダブルワー
ド(64ビツト)2方向データ・バス23,31ビ
ツト・アドレス・バス24、制御バス25であ
る。制御バス25は、STORE動作中にダブルワ
ード中の修正しようとするバイトの位置を指示す
る制御情報を搬送する。さらに、キヤツシユ22
と記憶システム及び入出力システムとの間に、2
方向データ・バス26及びアドレス・バス27が
設けられている。CPU21、キヤツシユ22と、
記憶システム及び入出力システムとの間で、線2
8を介して制御信号が搬送される。
キヤツシユ22内に、複数個のレジスタがあ
る。これらは、MASKレジスタ31、PMASK
レジスタ32、記憶アドレス・レジスタ
(MAR)33、PMARレジスタ34、及びCPU
21のデータ出力(DO)レジスタ35に対応す
るPDOレジスタ36である。PMASKレジスタ
32は、前のサイクルのMASKレジスタ31の
内容を記憶する。同様に、PMARレジスタ34
は前のサイクルのMARレジスタ33の内容を記
憶し、PDOレジスタ36は前のサイクルのDOレ
ジスタ35の内容を記憶する。これらのレジスタ
は、非アーキテクチヤ・パイプライン・レジスタ
であり、この特定実施例においては、エツジ・ト
リガ式D型フリツプフロツプから構成されるもの
と仮定する。
本発明によるキヤツシユ実施態様のデータ経路
が第1図に示されている。このキヤツシユの動作
は、以下で述べるように、STORE動作及び
FETCH動作のデータの流れを考察すると、よく
理解できる。この例では、72/64ハミング・コー
ドのエラー訂正方式を仮定する。
I STORE(記憶)動作 第1サイクル 記憶させる必要のあるバイトが、アドレスA1
(実アドレス)をもつダブルワードのM1バイト
であると仮定すると、第1サイクルで、アドレス
A1及び記憶しようとするバイトの記憶位置(M
1)がCPUで生成され、キヤツシユ・アレイ1
2に供給され、記憶しようとするデータ(D1)
がCPU21で生成される。
第2サイクル 第2サイクルの始めに、M1,A1,D1がそ
れぞれMASKレジスタ31,MARレジスタ3
3、DOレジスタ35中にラツチされる。第1サ
イクルでのMASKレジスタ31、MARレジスタ
33、DOレジスタ35の内容が、それぞれ
PMASKレジスタ32、PMARレジスタ34、
PDOレジスタ36にラツチされる。アドレスA
1は、キヤツシユ・アレイ12からダブルワード
及び関連する検査ビツトを読み出すためのアドレ
スとしても用いられる。次いで、この出力はハミ
ング回路ECC2,40に供給されて、エラー・
フラグと単一エラーに対する訂正済みデータとを
生成する。エラーの検出はこのサイクル中で早期
に行なわれるので、キヤツシユの制御回路が次の
サイクルでの行動を決定するのに充分な時間があ
る。
第3サイクル 第3サイクルの始めに、ハミング回路ECC2,
40からの結果がパイプライン・レジスタR2,
42にラツチされる。パイプライン・レジスタ
MASK31、PMASK32、MAR33、
PMAR34、DO35、PDO36もこのサイクル
の始めに更新される。
平常動作(ハミング回路ECC2,40によつ
てエラー・フラグが生成されない)及び単一エラ
ーの場合、訂正済みデータ(レジスタR2,42
の内容)が、PMASKレジスタ32の内容に応じ
て、マージ回路44でデータD1(PDOレジス
タ36の内容)とマージされる。次いで、その結
果がハミング回路ECC1,46に供給されて、
検査ビツトを生成する。次いで、新しいダブルワ
ード及び関連する検査ビツトがキヤツシユ・アレ
イ12のアドレスA1(PMARレジスタ34の
内容)に書き込まれる。
ダブルワード・エラーが検出された場合、この
問題はECCハードウエアによつて解決できない。
ソフトウエアの例外処理ルーチンを呼び出すた
め、2重エラーのフラグがCPU21に送り返さ
れる。
STORE動作は完了するのに3サイクルかかる
が、パイプライン化すると、2ポート式キヤツシ
ユ・アレイ(MARレジスタ33の内容としての
アドレス用の読取りポート1個と、PMARレジ
スタ34の内容としてのアドレス用の書込みポー
ト1個)を用いて、実効1サイクルのSTOREを
実現することができる。ただし、真の2ポート式
アレイの密度は低すぎて実用的でない。したがつ
て、この問題を解決するための、新しいキヤツシ
ユ・アレイ実施態様を提供する。
第1図に示すこのキヤツシユのデータ・フロー
から、ハミング回路ECC2,40に充分な時間
が残るように、キヤツシユ・アレイ12の読取り
をこのサイクルの前半で完了しておく必要がある
ことがわかる。従来のSRAMのタイミングをさ
らに詳しく検討すると、充分な差信号が入出力線
で発生した後、SRAMアレイのビツト線が入出
力線から切り離された場合、読取り動作が影響を
受けないことがわかる。差信号の発生はサイクル
の前半で実現されるのが通常である。一方、書込
み動作はサイクルの終了前に完了すればよい。し
たがつて、その要件を満たすため、単一ポート
SRAMセル・アレイが適時に多重化できるもの
と仮定するのが論理的である。
第4図は、本発明の好ましい実施例による、
2K×72キヤツシユ・アレイの構成を示す。より
詳しくは、キヤツシユ・アレイは、4象限に配置
された4個の36Kブロツク・アレイ50,51,
52,53から構成されている。通常の単一ポー
ト式キヤツシユ・アレイの密度を実現するため、
在来型の単一ポートSRAMセル及び1個の行デ
コーダ54で記憶セル・アレイが実施される。た
だし、在来型のSRAMアレイと違つて、このキ
ヤツシユ・アレイの入力と出力は分離されてい
て、通常のように1個でなく、2個の列デコーダ
55及び57から構成されている。列デコーダ5
5は、サイクルの前半だけ活動化され、入力アド
レスとしてMARレジスタ33の内容を使用し、
第5図により詳しく示すように、ビツト線から出
力線56へのビツト・スイツチ(パス・トランジ
スタ)を制御する。列デコーダ57は、サイクル
の後半だけ活動化され、(列デコーダ55のサイ
クルとは重ならない)、入力アドレスとして
PMARレジスタ34の内容を使用し、第5図に
示すように、ビツト線から入力線58へのビツ
ト・スイツチ(パス・トランジスタ)を制御す
る。
サイクルの前半で、マルチプレクサ61により
MAR33からの出力が列デコーダ54への入力
アドレスとして選択される。列デコータ55によ
つて選択されたビツト線が出力線56に接続され
て、MARレジスタ33の内容としてのアドレス
からデータが読み出される。サイクルの後半で選
択されたワード線上のセルの内容の予期しない変
化をひき起こす可能性のある大きな電圧のスイン
グを避けるため、在来型SRAM設計で用いられ
ているようなビツト線電圧スイング制限回路を用
いるべきである。このような回路の例は、たとえ
ばIEEE Journal of Solid−State Circuits、
Vol.24、No.4(1989年8月)、pp.859〜867に所載
のテリーI.チヤペル(Terry I.Chappell)等の論
文「エミツタ結合型論理インタフエースを備えた
3.5ns/77K及び6.2ns/300Kの64 CMOS RAM
(A3.5−ns/77K and 6.2−ns/300K64KCMOS
RAM with ECL Interfaces)」、及び同誌
pp.1021〜1026に所載のタンバ・ノブオ等の論文
「8ns 256KバイポーラCMOS RAM(8ns 256K
BiCMOS RAM)」に記載されている。
このサイクルの後半で、マルチプレクサ61に
よりPMARレジスタ34からの出力が行デコー
ダ54用の入力アドレスとして選択される。列デ
コーダ57によつて、選択されたビツト線が入力
線58に接続されて、PMARレジスタ34の内
容としてのアドレスにデータが書き込まれる。
FETCH(取出し)動作 第1サイクル 取り出そうとするデータがアドレスA2(実アド
レス)をもつダブルワードであると仮定すると、
第1サイクルで、A2がCPU21中で生成され、
キヤツシユ22に送られる(第3図)。
第2サイクル 第2サイクルの始めに、アドレスA2がMAR
レジスタ33中にラツチされる。アドレスA2は
ダブルワード及び関連する検査ビツトをキヤツシ
ユ・アレイ12から読み出すためのアドレスとし
ても使用される。アドレスA2がこのFETCHサ
イクルの直前のSTOREサイクルのアドレスと同
じでない場合には、キヤツシユ・アレイ12の出
力がマルチプレクサによつて選択され、CPU2
1に送られる。この場合、キヤツシユ・アレイ1
2からの出力はまだ更新されていず、マルチプレ
クサ45によつて選択されたレジスタR2,42
の内容がCPU21に送られる。
キヤツシユ・アレイ12からの出力は、ハミン
グECC2,40にも供給されて、単一エラーに
対するエラー・フラツグ及び訂正済みデータを生
成する。
エラーの検出は、このサイクル中で早期に行な
われるので、キヤツシユ22の制御回路が次のサ
イクルでの行動を決定するのに充分な時間があ
る。制御回路は、こうした状況で、次のサイクル
の始めにパイプライン・レジスタMASK31,
PMASK32,MAR33,PMAR34,DO3
5,PDO36が更新されるのを防止する。エラ
ー・フラグはまた、CPU21に送られて、今送
られたばかりのデータが正しくないことをCPU
に通知する。訂正済みデータが次のサイクルで再
び送り出される。
第3サイクル このサイクルは、単一エラーの場合にだけ必要
であり、キヤツシユの制御回路によつて挿入され
る。第3サイクルの始めに、ハミング回路ECC
2,40からの結果がパイプライン・レジスタR
2,42中にラツチされ、次いで。マルチプレク
サ45によつて選択されたCPU21に送られる。
第1図に示すように、エラーの蓄積を避けるた
め、マージ回路44及びハミング回路46を介し
て、レジスタR2,42中の訂正済みデータをキ
ヤツシユ・アレイ22に書き込み戻す必要があ
る。エラー・フラグは、CPU21にも送られる。
ただし、チツプ交差遅延により、これらの信号は
サイクル終了前に受け取ることができず、CPU
の制御回路が応答するには遅すぎる。ただし、次
のサイクルでクロツクを保持するのに充分な時間
がある。
STORE動作中に単一エラーが検出された場合
のSTORE−FETCH−FETCHサイクルに対す
るクロツク信号(CLK)が、第6図に示されて
いる。CPUの実行装置用のクロツク信号は、キ
ヤツシユ・チツプによつて解除されるまで、高レ
ベルに保持される。この場合、CPU及び記憶管
理ユニツト(MMU)は、機械状態がクロツク中
に低レベルに修正されて、CPU及び記憶管理ユ
ニツト(MMU)用のサイクルがちようど2クロ
ツク周期に及ぶように設計されている。この特定
の場合、そのクロツクは次のサイクルで解除され
る。サイクルは、ちようど2クロツク周期に及
ぶ。この追加クロツク・サイクルを有するキヤツ
シユ・チツプの動作は、正常のサイクルとほとん
ど同じである。マルチプレクサ45を使用する
と、FETCH動作の重要経路からハミング回路
ECC2,40の遅延を除去して、サイクル時間
を短縮するバイパスが実現される。パイプライ
ン・レジスタR2,42、PMASK32、
PMAR33、PDO36を使用してSTORE動作
をパイプライン化することによつても、サイクル
時間が短縮される。
【図面の簡単な説明】
第1図は、本発明によるキヤツシユ実施態様の
データ経路を示す構成図である。第2図は、72/6
4ハミング・コードを用いたECCキヤツシユの簡
単な実施態様の動作を示すデータ・フロー図であ
る。第3図は、中央演算処理装置及びキヤツシユ
を包む処理装置全体の構成図である。第4図は、
本発明の1態様による2K×72キヤツシユ・アレ
イの構成を示す構成図である。第5図は、キヤツ
シユ・アレイのビツト線がどのように入力線及び
出力線に接続されるかを示す、概略構成図であ
る。第6図は、単一エラーが検出されたときの、
本発明によるECCキヤツシユ・システムの動作
を示す、タイミング図である。 12……キヤツシユ・アレイ、21……中央演
算処理装置(CPU)、22……キヤツシユ・メモ
リ、31……マスク・レジスタ(MASK)、32
……前マスク・レジスタ(PMASK)、33……
記憶アドレス・レジスタ(MAR)、34……前
記憶アドレス・レジスタ(PMAR)、35……デ
ータ出力レジスタ(DO)、36……前データ出
力レジスタ(PDO)、40……ハミング回路ECC
2,42……パイプライン・レジスタR2,44
……マージ回路、45……マルチプレクサ、46
……ハミング回路ECC1。

Claims (1)

  1. 【特許請求の範囲】 1 キヤツシユ・アレイと、 マスクを記憶する第1レジスタと、第1レジス
    タに接続された、前のマスクを記憶する第2レジ
    スタと、メモリ・アドレスを記憶する第3レジス
    タと、第3レジスタに接続された、前のメモリ・
    アドレスを記憶する第4レジスタと、中央演算処
    理装置からのデータ出力を記憶する第5レジスタ
    と、第5レジスタに接続された、前のデータ出力
    を記憶する第6レジスタと、キヤツシユ・メモリ
    からの出力を記憶する第6レジスタとからなるパ
    イプライン・レジスタと、 前記キヤツシユ・メモリの出力と前記第7レジ
    スタの間に接続された、エラー・フラグ及び訂正
    済みデータを生成し、訂正済みデータを第7レジ
    スタ中にラツチする、第1エラー検査/訂正回路
    と、 前記第2レジスタに応答して、前記第7レジス
    タ中にラツチされたデータを前記中央演算処理装
    置からのデータとマージする、マージ回路と、 マージ回路とキヤツシユ・アレイの入力部との
    間に接続された、キヤツシユ・アレイの前記第4
    レジスタの内容に対応するアドレスに検査ビツト
    と共に前記マージ回路の出力を書き込む前に、こ
    の出力用の検査ビツトを生成する。第2のエラー
    検査/訂正回路と、 を含む、中央演算処理装置用のパイプライン式エ
    ラー検査/訂正キヤツシユ・メモリ。 2 さらに、前記キヤツシユ・アレイ及び第7レ
    ジスタからの出力に応答して、前記出力の一つを
    前記中央演算処理装置に送出する第1マルチプレ
    クサを含み、前記第1マルチプレクサが、前記第
    4レジスタ中のアドレスが記憶サイクルの後に前
    記第3レジスタと同じでない場合は、前記キヤツ
    シユ・アレイの出力を選択し、同じである場合
    は、前記第7レジスタの出力を選択することを特
    徴とする。請求項1に記載のパイプライン式エラ
    ー検査/訂正キヤツシユ・メモリ。 3 前記キヤツシユ・メモリが、1サイクルで有
    効な読取り及び書込み動作を可能にするキヤツシ
    ユ・アレイを有することを特徴とする、請求項1
    に記載のパイプライン式エラー検査/訂正キヤツ
    シユ・メモリ。 4 前記キヤツシユ・アレイが、 複数のビツト線に接続された1ポート式スタテ
    イツク・ランダム・アクセス記憶セルのアレイ
    と、 前記アレイをアドレスする、1つの行デコーダ
    ならびに第1及び第2の列デコーダと、 複数のパス・トランジスタによつて前記ビツト
    線に接続された、別々の入力線及び出力線とを含
    み、 前記パス・トランジスタが、前記ビツト線をそ
    れぞれ前記入力線及び出力線に接続するように、
    前記第1及び第2の列デコーダによつて別々に制
    御されることを特徴とする、請求項3に記載のパ
    イプライン式エラー検査/訂正キヤツシユ・メモ
    リ。 5 複数のビツト線に接続された、1ポート式ス
    タテイツク・ランダム・アクセス記憶セルのアレ
    イと、 前記アレイをアドレスする、1つの行デコーダ
    ならびに第1及び第2の列デコーダと、 複数のパス・トランジスタによつて前記ビツト
    線に接続された別々の入力線及び出力線とを含
    み、 前記パス・トランジスタが、前記ビツト線をそ
    れぞれ前記入力線及び出力線に接続するように、
    第1及び第2の列デコーダによつて別々に制御さ
    れることを特徴とする、1ポート・アレイの密度
    をもつ実効2ポート式メモリ・アレイを実現する
    キヤツシユ・メモリ・アレイ。
JP2226818A 1989-09-19 1990-08-30 パイプライン式エラー検査/訂正キヤツシユ・メモリ及びキヤツシユ・メモリ・アレイ Granted JPH03108041A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/409,362 US5058116A (en) 1989-09-19 1989-09-19 Pipelined error checking and correction for cache memories
US409362 1989-09-19

Publications (2)

Publication Number Publication Date
JPH03108041A JPH03108041A (ja) 1991-05-08
JPH0531178B2 true JPH0531178B2 (ja) 1993-05-11

Family

ID=23620151

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2226818A Granted JPH03108041A (ja) 1989-09-19 1990-08-30 パイプライン式エラー検査/訂正キヤツシユ・メモリ及びキヤツシユ・メモリ・アレイ

Country Status (4)

Country Link
US (1) US5058116A (ja)
EP (1) EP0418457B1 (ja)
JP (1) JPH03108041A (ja)
DE (1) DE69031527T2 (ja)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5359722A (en) * 1990-07-23 1994-10-25 International Business Machines Corporation Method for shortening memory fetch time relative to memory store time and controlling recovery in a DRAM
US5233616A (en) * 1990-10-01 1993-08-03 Digital Equipment Corporation Write-back cache with ECC protection
US5274799A (en) * 1991-01-04 1993-12-28 Array Technology Corporation Storage device array architecture with copyback cache
JPH04290144A (ja) * 1991-03-19 1992-10-14 Hitachi Ltd メモリ拡張方式
US5325375A (en) * 1991-06-28 1994-06-28 Sun Microsystems, Inc. Method and apparatus for non-atomic level parity protection for storing data in a random access memory
US5455939A (en) * 1992-06-17 1995-10-03 Intel Corporation Method and apparatus for error detection and correction of data transferred between a CPU and system memory
US5493574A (en) * 1992-09-24 1996-02-20 Zilog, Inc. Power efficient RAM disk and a method of emulating a rotating memory disk
US5438575A (en) * 1992-11-16 1995-08-01 Ampex Corporation Data storage system with stale data detector and method of operation
JPH0756815A (ja) * 1993-07-28 1995-03-03 Internatl Business Mach Corp <Ibm> キャッシュ動作方法及びキャッシュ
JPH08106733A (ja) * 1994-10-07 1996-04-23 Hitachi Ltd 情報記憶媒体利用システム
US5687353A (en) * 1995-03-03 1997-11-11 Hal Computer Systems, Inc. Merging data using a merge code from a look-up table and performing ECC generation on the merged data
JP3782840B2 (ja) 1995-07-14 2006-06-07 株式会社ルネサステクノロジ 外部記憶装置およびそのメモリアクセス制御方法
US5805787A (en) * 1995-12-29 1998-09-08 Emc Corporation Disk based disk cache interfacing system and method
US5724501A (en) * 1996-03-29 1998-03-03 Emc Corporation Quick recovery of write cache in a fault tolerant I/O system
US5774648A (en) * 1996-10-02 1998-06-30 Mitsubishi Semiconductor Of America, Inc. Address generator for error control system
US6006311A (en) * 1997-04-14 1999-12-21 Internatinal Business Machines Corporation Dynamic updating of repair mask used for cache defect avoidance
US5943686A (en) * 1997-04-14 1999-08-24 International Business Machines Corporation Multiple cache directories for non-arbitration concurrent accessing of a cache memory
US6085288A (en) * 1997-04-14 2000-07-04 International Business Machines Corporation Dual cache directories with respective queue independently executing its content and allowing staggered write operations
US6023746A (en) * 1997-04-14 2000-02-08 International Business Machines Corporation Dual associative-cache directories allowing simultaneous read operation using two buses with multiplexors, address tags, memory block control signals, single clock cycle operation and error correction
US6061824A (en) * 1998-03-05 2000-05-09 Quantum Corporation Pipelined error correction for minimizing disk re-reading in hard drives
US6115837A (en) * 1998-07-29 2000-09-05 Neomagic Corp. Dual-column syndrome generation for DVD error correction using an embedded DRAM
US6493843B1 (en) * 1999-10-28 2002-12-10 Hewlett-Packard Company Chipkill for a low end server or workstation
JP4489915B2 (ja) * 2000-07-31 2010-06-23 大日本印刷株式会社 暗証コード照合機能をもった携帯型情報処理装置
JP4102313B2 (ja) * 2004-02-05 2008-06-18 株式会社東芝 半導体集積回路装置
US7451380B2 (en) * 2005-03-03 2008-11-11 International Business Machines Corporation Method for implementing enhanced vertical ECC storage in a dynamic random access memory
US7506226B2 (en) * 2006-05-23 2009-03-17 Micron Technology, Inc. System and method for more efficiently using error correction codes to facilitate memory device testing
JP5010271B2 (ja) * 2006-12-27 2012-08-29 富士通株式会社 エラー訂正コード生成方法、およびメモリ制御装置
JP4764945B2 (ja) * 2007-06-20 2011-09-07 富士通株式会社 キャッシュ制御装置、キャッシュ制御方法およびキャッシュ制御プログラム
JP2010530606A (ja) * 2007-06-21 2010-09-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ スタータアンテナを有する高圧放電ランプ
JP5218228B2 (ja) * 2008-04-23 2013-06-26 新東工業株式会社 搬送装置及びブラスト加工装置
US7814300B2 (en) 2008-04-30 2010-10-12 Freescale Semiconductor, Inc. Configurable pipeline to process an operation at alternate pipeline stages depending on ECC/parity protection mode of memory access
US8291305B2 (en) 2008-09-05 2012-10-16 Freescale Semiconductor, Inc. Error detection schemes for a cache in a data processing system
US8145985B2 (en) 2008-09-05 2012-03-27 Freescale Semiconductor, Inc. Error detection schemes for a unified cache in a data processing system
US8356239B2 (en) 2008-09-05 2013-01-15 Freescale Semiconductor, Inc. Selective cache way mirroring
US8364896B2 (en) 2008-09-20 2013-01-29 Freescale Semiconductor, Inc. Method and apparatus for configuring a unified cache based on an associated error rate
US8316186B2 (en) 2008-09-20 2012-11-20 Freescale Semiconductor, Inc. Method and apparatus for managing cache reliability based on an associated error rate
US8266498B2 (en) 2009-03-31 2012-09-11 Freescale Semiconductor, Inc. Implementation of multiple error detection schemes for a cache
US8677205B2 (en) * 2011-03-10 2014-03-18 Freescale Semiconductor, Inc. Hierarchical error correction for large memories
US9007350B2 (en) 2011-08-10 2015-04-14 Honeywell International Inc. Redundant display assembly
US8914712B2 (en) 2012-02-27 2014-12-16 Freescale Semiconductor, Inc. Hierarchical error correction
US10437666B2 (en) * 2015-08-06 2019-10-08 Nxp B.V. Integrated circuit device and method for reading data from an SRAM memory
US10223197B2 (en) 2015-08-06 2019-03-05 Nxp B.V. Integrated circuit device and method for applying error correction to SRAM memory
CN108920300A (zh) * 2018-08-02 2018-11-30 郑州云海信息技术有限公司 一种数据操作方法及相关装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2037039B (en) * 1978-12-11 1983-08-17 Honeywell Inf Systems Cache memory system
US4345309A (en) * 1980-01-28 1982-08-17 Digital Equipment Corporation Relating to cached multiprocessor system with pipeline timing
FR2553540B1 (fr) * 1983-10-13 1986-01-03 Centre Nat Rech Scient Dispositif de test aleatoire pour circuits logiques, notamment microprocesseurs
US4586168A (en) * 1983-12-12 1986-04-29 Motorola, Inc. Dual port memory sense amplifier isolation
JPS60133599A (ja) * 1983-12-21 1985-07-16 Nec Corp 半導体メモリ装置
US4661955A (en) * 1985-01-18 1987-04-28 Ibm Corporation Extended error correction for package error correction codes
JPS61214298A (ja) * 1985-03-20 1986-09-24 Toshiba Corp 誤り訂正機能を備えた半導体記憶装置
US4689792A (en) * 1985-09-03 1987-08-25 Texas Instruments Incorporated Self test semiconductor memory with error correction capability
JPH0821238B2 (ja) * 1987-11-12 1996-03-04 三菱電機株式会社 半導体記憶装置
US4920539A (en) * 1988-06-20 1990-04-24 Prime Computer, Inc. Memory error correction system

Also Published As

Publication number Publication date
EP0418457B1 (en) 1997-10-01
EP0418457A2 (en) 1991-03-27
DE69031527D1 (de) 1997-11-06
JPH03108041A (ja) 1991-05-08
US5058116A (en) 1991-10-15
DE69031527T2 (de) 1998-03-26
EP0418457A3 (en) 1992-03-18

Similar Documents

Publication Publication Date Title
JPH0531178B2 (ja)
US7051264B2 (en) Error correcting memory and method of operating same
US4884271A (en) Error checking and correcting for read-modified-write operations
US10140179B2 (en) Combined group ECC protection and subgroup parity protection
US5504859A (en) Data processor with enhanced error recovery
JP2571317B2 (ja) Eccシステムを有するdram装置
US6597595B1 (en) Content addressable memory with error detection signaling
US7257762B2 (en) Memory interface with write buffer and encoder
US8122317B1 (en) Two-dimensional parity technique to facilitate error detection and correction in memory arrays
EP1206739B1 (en) Methods and apparatus for correcting soft errors in digital data
US6848071B2 (en) Method and apparatus for updating an error-correcting code during a partial line store
US7002823B1 (en) Content addressable memory with simultaneous write and compare function
US7237156B1 (en) Content addressable memory with error detection
US6853602B2 (en) Hiding error detecting/correcting latency in dynamic random access memory (DRAM)
US20030097526A1 (en) High-speed first-in-first-out buffer
US4823252A (en) Overlapped control store
US7272775B2 (en) Memory circuit comprising an error correcting code
JPH0594377A (ja) パリテイ検出回路
US5886930A (en) Bit interleaving in a memory which uses multi-bit DRAMs
US6701484B1 (en) Register file with delayed parity check
CN111694691B (zh) 一种纠检错后具有自动回写功能的sram电路及回写方法
US20070186135A1 (en) Processor system and methodology with background error handling feature
JPH05210596A (ja) デュアルポートメモリ用制御回路
US20040148559A1 (en) Method and circuit for reducing silent data corruption in storage arrays with no increase in read and write times
JPS62256061A (ja) 冗長構成設定可能主記憶装置