JPH07129477A - エラー検出訂正装置 - Google Patents
エラー検出訂正装置Info
- Publication number
- JPH07129477A JPH07129477A JP5301046A JP30104693A JPH07129477A JP H07129477 A JPH07129477 A JP H07129477A JP 5301046 A JP5301046 A JP 5301046A JP 30104693 A JP30104693 A JP 30104693A JP H07129477 A JPH07129477 A JP H07129477A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bit
- error detection
- processor
- read
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 84
- 238000013500 data storage Methods 0.000 claims description 20
- 230000002194 synthesizing effect Effects 0.000 claims 1
- 208000011580 syndromic disease Diseases 0.000 description 37
- 230000005540 biological transmission Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 10
- 239000000872 buffer Substances 0.000 description 8
- 238000000034 method Methods 0.000 description 8
- 238000003491 array Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
Landscapes
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】
【目的】 回路の信号線数を増加せず能力を低下せずに
データ幅を拡大する。 【構成】 プロセッサ1からメモリ2にデータが書込ま
れる際は、64ビットのデータがデータ幅方向に2分割
され、32ビットの分割データとしてそれぞれ別個のエ
ラー検出訂正回路3に入力される。各エラー検出訂正回
路3では、プロセッサ1から連送される分割データを書
込みラッチ3jで合成して分割前と同じ64ビット幅の
データを作る。そして、そのデータからハミング符号等
によりチェックビットを生成し、そのデータとチェック
ビットを1セットとしてメモリ2に書込む。一方、メモ
リ2からプロセッサ1にデータが読み出される際は、セ
ット毎のデータとチェックビットが読み出される。そし
て、各エラー検出訂正回路3で、データが訂正された
後、読出しラッチ3kで分割され、プロセッサ1に連送
される。
データ幅を拡大する。 【構成】 プロセッサ1からメモリ2にデータが書込ま
れる際は、64ビットのデータがデータ幅方向に2分割
され、32ビットの分割データとしてそれぞれ別個のエ
ラー検出訂正回路3に入力される。各エラー検出訂正回
路3では、プロセッサ1から連送される分割データを書
込みラッチ3jで合成して分割前と同じ64ビット幅の
データを作る。そして、そのデータからハミング符号等
によりチェックビットを生成し、そのデータとチェック
ビットを1セットとしてメモリ2に書込む。一方、メモ
リ2からプロセッサ1にデータが読み出される際は、セ
ット毎のデータとチェックビットが読み出される。そし
て、各エラー検出訂正回路3で、データが訂正された
後、読出しラッチ3kで分割され、プロセッサ1に連送
される。
Description
【0001】
【産業上の利用分野】本発明は、データ記憶装置におけ
るデータのエラーを検出して訂正するエラー検出訂正装
置に関するものである。
るデータのエラーを検出して訂正するエラー検出訂正装
置に関するものである。
【0002】
【従来の技術】従来、データ記憶装置におけるエラー検
出訂正の方法としては、ハミング符号等によるエラー検
出訂正コードであるチェックビットを用いて1ビットの
誤りを訂正し2ビットの誤りを検出する方法が使用され
ている。図2は、従来のエラー検出訂正回路の一構成例
を示すブロック図である。図示の回路は、データ処理装
置21、データ記憶装置22、エラー検出訂正回路23
から成る。エラー検出訂正回路23は、チェックビット
生成器3a、シンドローム生成器3b、エラー検出器3
c、読出し時の1ビットのエラーを訂正するエラー訂正
器3d、データラッチ3e、部分書込み時の1ビットの
エラーを訂正するエラー訂正器3f、メモリ側の入出力
バッファ3g、プロセッサ側の入出力バッファ3h、部
分書込み時の書込みデータと読出しデータのマージ回路
3iから成る。
出訂正の方法としては、ハミング符号等によるエラー検
出訂正コードであるチェックビットを用いて1ビットの
誤りを訂正し2ビットの誤りを検出する方法が使用され
ている。図2は、従来のエラー検出訂正回路の一構成例
を示すブロック図である。図示の回路は、データ処理装
置21、データ記憶装置22、エラー検出訂正回路23
から成る。エラー検出訂正回路23は、チェックビット
生成器3a、シンドローム生成器3b、エラー検出器3
c、読出し時の1ビットのエラーを訂正するエラー訂正
器3d、データラッチ3e、部分書込み時の1ビットの
エラーを訂正するエラー訂正器3f、メモリ側の入出力
バッファ3g、プロセッサ側の入出力バッファ3h、部
分書込み時の書込みデータと読出しデータのマージ回路
3iから成る。
【0003】以下、この装置の通常の書込み時、読出し
時、部分書込み時の各動作を説明する。通常の書込み時
に、書込みデータ通過経路におけるマージ回路3iとエ
ラー訂正器3fはデータを通過させるだけである。即
ち、データ処理装置1からの書込みデータはマージ回路
3iを素通りした後、チェックビット生成器3aに入力
され、該生成器からチェックビットが出力される。その
後、前記書込みデータとチェックビットは1ビットエラ
ー訂正器3fを素通りした後、データ記憶装置22に出
力される。このようにして、図3に示すように書込みデ
ータにチェックビットが付加されてデータ記憶装置22
に格納される。
時、部分書込み時の各動作を説明する。通常の書込み時
に、書込みデータ通過経路におけるマージ回路3iとエ
ラー訂正器3fはデータを通過させるだけである。即
ち、データ処理装置1からの書込みデータはマージ回路
3iを素通りした後、チェックビット生成器3aに入力
され、該生成器からチェックビットが出力される。その
後、前記書込みデータとチェックビットは1ビットエラ
ー訂正器3fを素通りした後、データ記憶装置22に出
力される。このようにして、図3に示すように書込みデ
ータにチェックビットが付加されてデータ記憶装置22
に格納される。
【0004】読出し時に、データ記憶装置22から読み
出された読出しデータ(訂正前)及びチェックビットは
データラッチ3eでラッチされた後、シンドローム生成
器3bに入力される。そして、該生成器からシンドロー
ムビットが出力される。これにより、1ビットエラー訂
正器3dに、前記読出しデータ(訂正前)とシンドロー
ムビットが入力される。そして、該訂正器からシンドロ
ームビットにより訂正された後の読出しデータが出力さ
れる。また、このシンドロームビットは、エラー検出器
3cにも入力される。これにより、該検出器から1ビッ
トエラー又は2ビットエラーの検出を示すエラー信号が
出力される。
出された読出しデータ(訂正前)及びチェックビットは
データラッチ3eでラッチされた後、シンドローム生成
器3bに入力される。そして、該生成器からシンドロー
ムビットが出力される。これにより、1ビットエラー訂
正器3dに、前記読出しデータ(訂正前)とシンドロー
ムビットが入力される。そして、該訂正器からシンドロ
ームビットにより訂正された後の読出しデータが出力さ
れる。また、このシンドロームビットは、エラー検出器
3cにも入力される。これにより、該検出器から1ビッ
トエラー又は2ビットエラーの検出を示すエラー信号が
出力される。
【0005】部分書込み時は、エラー検出訂正回路23
のチェックビット生成単位より小さい書込みデータがデ
ータ処理装置21より出力された場合に行われる。部分
書込み時にはデータ記憶装置22から読み出されたチェ
ックビット及び読出しデータ(訂正前)がシンドローム
生成器3bに入力され、該生成器からシンドロームビッ
トが出力される。また、マージ回路3iにデータ処理装
置21からの書込み部分データと前記読出しデータ(訂
正前)が入力され、該回路から全書込みデータ(訂正
前)が出力される。そして、前記書込みデータ(訂正
前)はチェックビット生成器3aに入力され、該生成器
からチェックビットが出力される。その後、エラー訂正
器3fに前記シンドロームビット、書込みデータ(訂正
前)とチェックビットが入力され、該訂正器からデータ
記憶装置22からの読出しデータにおける1ビットエラ
ー及び関係するチェックビットが訂正された書込みデー
タが出力される。
のチェックビット生成単位より小さい書込みデータがデ
ータ処理装置21より出力された場合に行われる。部分
書込み時にはデータ記憶装置22から読み出されたチェ
ックビット及び読出しデータ(訂正前)がシンドローム
生成器3bに入力され、該生成器からシンドロームビッ
トが出力される。また、マージ回路3iにデータ処理装
置21からの書込み部分データと前記読出しデータ(訂
正前)が入力され、該回路から全書込みデータ(訂正
前)が出力される。そして、前記書込みデータ(訂正
前)はチェックビット生成器3aに入力され、該生成器
からチェックビットが出力される。その後、エラー訂正
器3fに前記シンドロームビット、書込みデータ(訂正
前)とチェックビットが入力され、該訂正器からデータ
記憶装置22からの読出しデータにおける1ビットエラ
ー及び関係するチェックビットが訂正された書込みデー
タが出力される。
【0006】
【発明が解決しようとする課題】しかしながら、上述し
た従来の装置には、以下のような課題があった。近年、
データ処理装置におけるデータ処理単位は64ビット単
位、128ビット単位といったように大きくなりつつあ
る。且つ、データ転送の高速化のためにデータ連送機構
を持つデータ処理装置が増加しており、データ記憶装置
における高速化が要求されている。上記構成の装置では
データ処理装置におけるデータ処理単位とエラー検出訂
正コードの作成単位が等しい。従って、その処理を一括
して行うために回路をゲートアレイ等に1つの集積回路
としてインプリメントする際、入出力のピンが多大なも
のとなり、インプリメントが困難になりつつある。例え
ば、64ビットのデータ処理単位を持つプロセッサのた
めのメモリ装置において、64ビットのエラー検出訂正
コード作成単位を持ち8ビットのチェックビットを扱う
エラー検出訂正回路を、図2で示した構成で1つの集積
回路として実現しようとすると、プロセッサとのデータ
受渡しのために64ピンが最低でも必要となり、メモリ
装置とのデータ受渡しのために64+8ピンが最低でも
必要となる。
た従来の装置には、以下のような課題があった。近年、
データ処理装置におけるデータ処理単位は64ビット単
位、128ビット単位といったように大きくなりつつあ
る。且つ、データ転送の高速化のためにデータ連送機構
を持つデータ処理装置が増加しており、データ記憶装置
における高速化が要求されている。上記構成の装置では
データ処理装置におけるデータ処理単位とエラー検出訂
正コードの作成単位が等しい。従って、その処理を一括
して行うために回路をゲートアレイ等に1つの集積回路
としてインプリメントする際、入出力のピンが多大なも
のとなり、インプリメントが困難になりつつある。例え
ば、64ビットのデータ処理単位を持つプロセッサのた
めのメモリ装置において、64ビットのエラー検出訂正
コード作成単位を持ち8ビットのチェックビットを扱う
エラー検出訂正回路を、図2で示した構成で1つの集積
回路として実現しようとすると、プロセッサとのデータ
受渡しのために64ピンが最低でも必要となり、メモリ
装置とのデータ受渡しのために64+8ピンが最低でも
必要となる。
【0007】しかも、通常メモリのアクセス速度はプロ
セッサのデータ処理速度に比べてかなり遅いため、高速
なプロセッサに対応するためにメモリインタリーブ等の
手法により見かけのアクセス速度を速めるようにしてい
る。そのようなメモリインタリーブの実現のためにはイ
ンタリーブのバンク数だけエラー検出訂正の回路が必要
である。そのため、もし2ウェイ・インタリーブのメモ
リ装置にすると、メモリとのデータ受渡しのためのピン
は72×2=144ピンになり、データを送受するピン
だけで200ピン以上が必要となる。
セッサのデータ処理速度に比べてかなり遅いため、高速
なプロセッサに対応するためにメモリインタリーブ等の
手法により見かけのアクセス速度を速めるようにしてい
る。そのようなメモリインタリーブの実現のためにはイ
ンタリーブのバンク数だけエラー検出訂正の回路が必要
である。そのため、もし2ウェイ・インタリーブのメモ
リ装置にすると、メモリとのデータ受渡しのためのピン
は72×2=144ピンになり、データを送受するピン
だけで200ピン以上が必要となる。
【0008】現在、一般的なゲートアレイ等のパッケー
ジにおいては、パッケージの種類に応じて次のような上
限がある。例えば、QFP(Quad Flat Package) では、
図4に示すように、パッケージの4つの側面からピンが
出ており、ピン数は最大200ピン強である。また、P
GA(Pin Grid Array)では、図5に示すようにパッケー
ジの底面から格子状にピンが出ており、ピン数は最大4
00ピン強である。そして、それらのピンのうち、使用
可能なI/O端子数は約9割である。従って、このよう
なエラー検出訂正回路のインプリメントには、QFPに
比べてかなり高価なPGAのパッケージが必要である。
ジにおいては、パッケージの種類に応じて次のような上
限がある。例えば、QFP(Quad Flat Package) では、
図4に示すように、パッケージの4つの側面からピンが
出ており、ピン数は最大200ピン強である。また、P
GA(Pin Grid Array)では、図5に示すようにパッケー
ジの底面から格子状にピンが出ており、ピン数は最大4
00ピン強である。そして、それらのピンのうち、使用
可能なI/O端子数は約9割である。従って、このよう
なエラー検出訂正回路のインプリメントには、QFPに
比べてかなり高価なPGAのパッケージが必要である。
【0009】もちろん、データを小さな幅のデータに分
割して分割データの各々に対してチェックビットを生成
し、エラー検出訂正を行なうことは可能である。ところ
が、通常の1ビット誤り訂正2ビット誤り検出コードの
生成において、図3に示すようにデータのビット幅を
M、必要なチェックビットのビット幅をKとするとMと
Kの間には次式(1)が成立する。 2K-1 −1≧N (但しN=M+K) (1)
割して分割データの各々に対してチェックビットを生成
し、エラー検出訂正を行なうことは可能である。ところ
が、通常の1ビット誤り訂正2ビット誤り検出コードの
生成において、図3に示すようにデータのビット幅を
M、必要なチェックビットのビット幅をKとするとMと
Kの間には次式(1)が成立する。 2K-1 −1≧N (但しN=M+K) (1)
【0010】この式により、例えば、32ビット幅のデ
ータに対してチェックビットは7ビット、64ビット幅
のデータに対してチェックビットは8ビット、128ビ
ット幅のデータに対してチェックビットは9ビット必要
である。即ち、Mが小さい時はMに対するKの割合が大
きい。つまり、エラー検出訂正コードのために必要な記
憶領域は一定量のデータに対してコードを生成するデー
タ記憶単位が大きいほど少なくなる。このため、大きな
ビット幅を持つデータに対するチェックビットを生成す
る方がチェックビットの保持のための記憶領域が減り、
コストの削減となる。それにもかかわらず、上述したピ
ン数の制約によりビット幅をあまり広げることができな
かった。本発明は、上術した課題を解決し、多ビット幅
のデータを扱うデータ記憶装置において、信号線数の増
大によるコストの増加をほとんど招かず、かつ処理速度
の低下もないエラー検出訂正装置を提供することを目的
とする。
ータに対してチェックビットは7ビット、64ビット幅
のデータに対してチェックビットは8ビット、128ビ
ット幅のデータに対してチェックビットは9ビット必要
である。即ち、Mが小さい時はMに対するKの割合が大
きい。つまり、エラー検出訂正コードのために必要な記
憶領域は一定量のデータに対してコードを生成するデー
タ記憶単位が大きいほど少なくなる。このため、大きな
ビット幅を持つデータに対するチェックビットを生成す
る方がチェックビットの保持のための記憶領域が減り、
コストの削減となる。それにもかかわらず、上述したピ
ン数の制約によりビット幅をあまり広げることができな
かった。本発明は、上術した課題を解決し、多ビット幅
のデータを扱うデータ記憶装置において、信号線数の増
大によるコストの増加をほとんど招かず、かつ処理速度
の低下もないエラー検出訂正装置を提供することを目的
とする。
【0011】
【課題を解決するための手段】本発明のエラー検出訂正
装置は、データをデータ幅方向に分割し、分割されたデ
ータをそれぞれ入力する複数のエラー検出訂正回路と、
当該各エラー検出訂正回路内に設けられ、データ処理装
置から連送される複数の分割されたデータを1つに合成
し、合成された全体のデータからチェックビットを生成
するための書込みラッチと、当該各エラー検出訂正回路
内に設けられ、データ記憶装置からチェックビットとと
もに読み出され、当該チェックビットにより訂正された
データを分割して連送するための読出しラッチとを備え
たことを特徴とするものである。
装置は、データをデータ幅方向に分割し、分割されたデ
ータをそれぞれ入力する複数のエラー検出訂正回路と、
当該各エラー検出訂正回路内に設けられ、データ処理装
置から連送される複数の分割されたデータを1つに合成
し、合成された全体のデータからチェックビットを生成
するための書込みラッチと、当該各エラー検出訂正回路
内に設けられ、データ記憶装置からチェックビットとと
もに読み出され、当該チェックビットにより訂正された
データを分割して連送するための読出しラッチとを備え
たことを特徴とするものである。
【0012】
【作用】本発明のエラー検出訂正装置においては、デー
タ処理装置からデータ記憶装置にデータが書き込まれる
際は、データがデータ幅方向に例えば2分割され、それ
ぞれ別個のエラー検出訂正回路に入力される。各エラー
検出訂正回路では、データ処理装置から連送される分割
データを書込みラッチで合成して例えば分割前と同じ幅
のデータを作る。そして、そのデータからハミング符号
等によりチェックビットを生成し、そのデータとチェッ
クビットを1セットとしてデータ記憶装置に書込む。一
方、データ記憶装置からデータ処理装置にデータが読み
出される際は、セット毎のデータとチェックビットが読
み出され、各エラー検出訂正回路に入力される。各エラ
ー検出訂正回路では、チェックビットからシンドローム
ビットが生成され、1ビットのエラーが含まれていると
きは当該シンドロームビットにより訂正される。そし
て、訂正されたデータは、読出しラッチで分割され、デ
ータ処理装置に連送される。この際、各エラー検出訂正
回路から出力されるデータが合成されて元のデータが復
元される。
タ処理装置からデータ記憶装置にデータが書き込まれる
際は、データがデータ幅方向に例えば2分割され、それ
ぞれ別個のエラー検出訂正回路に入力される。各エラー
検出訂正回路では、データ処理装置から連送される分割
データを書込みラッチで合成して例えば分割前と同じ幅
のデータを作る。そして、そのデータからハミング符号
等によりチェックビットを生成し、そのデータとチェッ
クビットを1セットとしてデータ記憶装置に書込む。一
方、データ記憶装置からデータ処理装置にデータが読み
出される際は、セット毎のデータとチェックビットが読
み出され、各エラー検出訂正回路に入力される。各エラ
ー検出訂正回路では、チェックビットからシンドローム
ビットが生成され、1ビットのエラーが含まれていると
きは当該シンドロームビットにより訂正される。そし
て、訂正されたデータは、読出しラッチで分割され、デ
ータ処理装置に連送される。この際、各エラー検出訂正
回路から出力されるデータが合成されて元のデータが復
元される。
【0013】
【実施例】以下、本発明を図の実施例を用いて詳細に説
明する。図1は、本発明のエラー検出訂正装置を備えた
システムの一実施例のブロック図である。図示の装置
は、プロセッサ1、メモリ2、エラー検出訂正回路3か
ら成る。プロセッサ1は、メモリ2に対するデータの書
込み及び読出しを行なう。このプロセッサ1は、64ビ
ットのデータ幅で2連送のデータ連送機構を持つ。メモ
リ2は、RAM(ランダム・アクセス・メモリ)から成
り、データとともにチェックビットを格納する。
明する。図1は、本発明のエラー検出訂正装置を備えた
システムの一実施例のブロック図である。図示の装置
は、プロセッサ1、メモリ2、エラー検出訂正回路3か
ら成る。プロセッサ1は、メモリ2に対するデータの書
込み及び読出しを行なう。このプロセッサ1は、64ビ
ットのデータ幅で2連送のデータ連送機構を持つ。メモ
リ2は、RAM(ランダム・アクセス・メモリ)から成
り、データとともにチェックビットを格納する。
【0014】エラー検出訂正回路3は、チェックビット
生成器3a、シンドローム生成器3b、エラー検出器3
c、読出し時の1ビットのエラーを訂正するエラー訂正
器3d、データラッチ3e、部分書込み時の1ビットの
エラーを訂正するエラー訂正器3f、メモリ側の入出力
バッファ3g、プロセッサ側の入出力バッファ3h、各
32ビット幅の読出しラッチ3k、読出しデータ選択器
3l、各32ビット幅の書込みラッチ3j、部分書込み
時の書込みデータと読出しデータのマージ回路3iから
成る。チェックビット生成器3aは、ハミング符号等に
より書き込み時のチェックビットを生成する。シンドロ
ーム生成器3bは、チェックビットにより1ビットのエ
ラーが検出された場合にその誤りを訂正するためのシン
ドロームビットを生成する。
生成器3a、シンドローム生成器3b、エラー検出器3
c、読出し時の1ビットのエラーを訂正するエラー訂正
器3d、データラッチ3e、部分書込み時の1ビットの
エラーを訂正するエラー訂正器3f、メモリ側の入出力
バッファ3g、プロセッサ側の入出力バッファ3h、各
32ビット幅の読出しラッチ3k、読出しデータ選択器
3l、各32ビット幅の書込みラッチ3j、部分書込み
時の書込みデータと読出しデータのマージ回路3iから
成る。チェックビット生成器3aは、ハミング符号等に
より書き込み時のチェックビットを生成する。シンドロ
ーム生成器3bは、チェックビットにより1ビットのエ
ラーが検出された場合にその誤りを訂正するためのシン
ドロームビットを生成する。
【0015】エラー検出器3cは、1ビット又は2ビッ
トのエラーを検出してプロセッサ1にエラー信号を出力
する。エラー訂正器3dは、メモリ2から読み出したデ
ータに対し、シンドロームビットにより1ビットのエラ
ーを訂正する。データラッチ3eは、メモリ2から読み
出したデータをラッチする。エラー訂正器3fは、部分
書込み時に読み出したデータの1ビットエラーを訂正す
る。ここに、部分書込みとは、メモリ2への書込み単位
の一部に書込みを行なうことをいう。従って、部分書込
みを行なうときは、メモリ2からその単位のデータを読
み出し、その一部を書き換えて書き込む。入出力バッフ
ァ3g及び3hは、プロセッサ1がメモリ2に対し書込
み又は読出しを行なうデータ及びチェックビットを一時
的に格納する。
トのエラーを検出してプロセッサ1にエラー信号を出力
する。エラー訂正器3dは、メモリ2から読み出したデ
ータに対し、シンドロームビットにより1ビットのエラ
ーを訂正する。データラッチ3eは、メモリ2から読み
出したデータをラッチする。エラー訂正器3fは、部分
書込み時に読み出したデータの1ビットエラーを訂正す
る。ここに、部分書込みとは、メモリ2への書込み単位
の一部に書込みを行なうことをいう。従って、部分書込
みを行なうときは、メモリ2からその単位のデータを読
み出し、その一部を書き換えて書き込む。入出力バッフ
ァ3g及び3hは、プロセッサ1がメモリ2に対し書込
み又は読出しを行なうデータ及びチェックビットを一時
的に格納する。
【0016】読出しラッチ3kは、例えば各32ビット
幅のラッチ回路から成り、プロセッサ1から連送される
32ビット幅のデータを一時的に格納して例えば64ビ
ット幅のデータに合成する。書込みラッチ3jは、例え
ば各32ビット幅のラッチ回路から成り、メモリ2から
読み出される32ビット幅のデータを一時的に格納して
例えば64ビット幅のデータに合成する。読出しデータ
選択器3lは、読出しラッチ3kの64ビット幅のデー
タを32ビット幅のデータに分割してプロセッサ1に送
るデータの一部を出力する。マージ回路3iは、部分書
込み時の書込みデータと読出しデータを合成して書込み
単位のデータを出力する。
幅のラッチ回路から成り、プロセッサ1から連送される
32ビット幅のデータを一時的に格納して例えば64ビ
ット幅のデータに合成する。書込みラッチ3jは、例え
ば各32ビット幅のラッチ回路から成り、メモリ2から
読み出される32ビット幅のデータを一時的に格納して
例えば64ビット幅のデータに合成する。読出しデータ
選択器3lは、読出しラッチ3kの64ビット幅のデー
タを32ビット幅のデータに分割してプロセッサ1に送
るデータの一部を出力する。マージ回路3iは、部分書
込み時の書込みデータと読出しデータを合成して書込み
単位のデータを出力する。
【0017】次に、データ書込み時、データ読出し時、
部分書込み時の動作を説明する。プロセッサ1のデータ
書込み時、プロセッサ1は図6(a)に示すように64
ビット幅のデータA、B等を2連送で送出するとする。
各送出において64ビット幅の書込みデータA、B等は
図6(b)に示すように32ビット幅のデータA1、A
2、B1、B2等に分割され、2つのエラー検出訂正回
路3に入力される。2連送により2回入力された書込み
データは2つの書込みラッチ3jに蓄積され、64ビッ
ト幅のデータA1、B1等にまとめられ、マージ回路3
iに入力される。
部分書込み時の動作を説明する。プロセッサ1のデータ
書込み時、プロセッサ1は図6(a)に示すように64
ビット幅のデータA、B等を2連送で送出するとする。
各送出において64ビット幅の書込みデータA、B等は
図6(b)に示すように32ビット幅のデータA1、A
2、B1、B2等に分割され、2つのエラー検出訂正回
路3に入力される。2連送により2回入力された書込み
データは2つの書込みラッチ3jに蓄積され、64ビッ
ト幅のデータA1、B1等にまとめられ、マージ回路3
iに入力される。
【0018】この64ビット幅のデータA1、B1等
は、通常の書込み時、データを素通りさせるだけのマー
ジ回路3iを通過し、チェックビット生成器3aに入力
され、該生成器から8ビット幅のチェックビットCHが
出力される。その後、前記書込みデータA1、B1等と
チェックビットCHは、通常の書込み時、データを素通
りさせるだけの1ビットエラー訂正器3fを通過した
後、メモリ2に出力される。そして、2つのエラー検出
訂正回路3から出力された書込みデータA1、B1、A
2、B2等の64+64ビットとチェックビットCHの
8+8ビット、つまり全部で144ビットは一括してメ
モリ2に書き込まれる。
は、通常の書込み時、データを素通りさせるだけのマー
ジ回路3iを通過し、チェックビット生成器3aに入力
され、該生成器から8ビット幅のチェックビットCHが
出力される。その後、前記書込みデータA1、B1等と
チェックビットCHは、通常の書込み時、データを素通
りさせるだけの1ビットエラー訂正器3fを通過した
後、メモリ2に出力される。そして、2つのエラー検出
訂正回路3から出力された書込みデータA1、B1、A
2、B2等の64+64ビットとチェックビットCHの
8+8ビット、つまり全部で144ビットは一括してメ
モリ2に書き込まれる。
【0019】プロセッサ1のデータ読出し時、最初にメ
モリ2から図6(a)に示すデータA1、B1、A2、
B2等の64+64ビットとチェックビットCHの8+
8ビット、つまり全部で144ビットを一括して読み出
す。これらは2セットの対応する64ビット幅の読出し
データA1、B1等及びA2、B2等と8ビット幅のチ
ェックビットCHに分割され、セット毎に2つのエラー
検出訂正回路3に入力される。入力された64ビット幅
の読出しデータ(訂正前)と8ビット幅のチェックビッ
トはデータラッチ3eでラッチされる。そして、これら
はシンドローム生成器3bに入力され、該生成器からシ
ンドロームビットが出力される。その後、1ビットエラ
ー訂正器3dに、前記読出しデータ(訂正前)とシンド
ロームビットが入力され、該訂正器から読出しデータ
(訂正後)が出力される。これらの読出しデータは読出
しラッチ3kに32ビット幅で蓄積される。
モリ2から図6(a)に示すデータA1、B1、A2、
B2等の64+64ビットとチェックビットCHの8+
8ビット、つまり全部で144ビットを一括して読み出
す。これらは2セットの対応する64ビット幅の読出し
データA1、B1等及びA2、B2等と8ビット幅のチ
ェックビットCHに分割され、セット毎に2つのエラー
検出訂正回路3に入力される。入力された64ビット幅
の読出しデータ(訂正前)と8ビット幅のチェックビッ
トはデータラッチ3eでラッチされる。そして、これら
はシンドローム生成器3bに入力され、該生成器からシ
ンドロームビットが出力される。その後、1ビットエラ
ー訂正器3dに、前記読出しデータ(訂正前)とシンド
ロームビットが入力され、該訂正器から読出しデータ
(訂正後)が出力される。これらの読出しデータは読出
しラッチ3kに32ビット幅で蓄積される。
【0020】また、前記シンドロームビットはエラー検
出器3cにも入力され、該検出器3cから1ビットエラ
ー又は2ビットエラーの検出を示すエラー信号が出力さ
れる。読出しラッチ3kに蓄積されたデータはデータ選
択器3lによって選択され、2回に分けてプロセッサ1
に出力される。プロセッサ1は各エラー検出訂正回路3
から32ビットずつ、全部で64ビットの読出しデータ
を2連送で読み出す。この結果、図6(a)に示すデー
タが読み出される。
出器3cにも入力され、該検出器3cから1ビットエラ
ー又は2ビットエラーの検出を示すエラー信号が出力さ
れる。読出しラッチ3kに蓄積されたデータはデータ選
択器3lによって選択され、2回に分けてプロセッサ1
に出力される。プロセッサ1は各エラー検出訂正回路3
から32ビットずつ、全部で64ビットの読出しデータ
を2連送で読み出す。この結果、図6(a)に示すデー
タが読み出される。
【0021】部分書込み時には、メモリ2から読出しデ
ータ(訂正前)及びチェックビットがシンドローム生成
器3bに入力され、該生成器からシンドロームビットが
出力される。また、マージ回路3iにプロセッサ1から
の書込み部分データと前記読出しデータ(訂正前)が入
力され、該回路から全書込みデータ(訂正前)が出力さ
れる。この書込みデータ(訂正前)はチェックビット生
成器3aに入力され、該生成器からチェックビットが出
力される。そして、エラー訂正器3fに前記シンドロー
ムビット、書込みデータ(訂正前)とチェックビットが
入力され、該訂正器から前記読出しデータにおける1ビ
ットエラー及び関係するチェックビットが訂正された書
込みデータが出力され、メモリ2に書き込まれる。
ータ(訂正前)及びチェックビットがシンドローム生成
器3bに入力され、該生成器からシンドロームビットが
出力される。また、マージ回路3iにプロセッサ1から
の書込み部分データと前記読出しデータ(訂正前)が入
力され、該回路から全書込みデータ(訂正前)が出力さ
れる。この書込みデータ(訂正前)はチェックビット生
成器3aに入力され、該生成器からチェックビットが出
力される。そして、エラー訂正器3fに前記シンドロー
ムビット、書込みデータ(訂正前)とチェックビットが
入力され、該訂正器から前記読出しデータにおける1ビ
ットエラー及び関係するチェックビットが訂正された書
込みデータが出力され、メモリ2に書き込まれる。
【0022】図7は、本発明のエラー検出訂正装置を備
えたシステムの他の実施例のブロック図である。図示の
装置は、プロセッサ1、メモリ2、エラー検出訂正回路
3′、I/Oユニット4から成る。プロセッサ1は、6
4ビットのデータ幅で4連送のデータ連送機構を持つ。
メモリ2は、RAM(ランダム・アクセス・メモリ)か
ら成り、128ビット幅のデータ及び16ビット幅のチ
ェックビットを格納する。
えたシステムの他の実施例のブロック図である。図示の
装置は、プロセッサ1、メモリ2、エラー検出訂正回路
3′、I/Oユニット4から成る。プロセッサ1は、6
4ビットのデータ幅で4連送のデータ連送機構を持つ。
メモリ2は、RAM(ランダム・アクセス・メモリ)か
ら成り、128ビット幅のデータ及び16ビット幅のチ
ェックビットを格納する。
【0023】エラー検出訂正回路3′は、メモリ2のア
クセス時のデータのエラーを検出し、訂正する回路で、
プロセッサバスとI/Oバスのデータブリッジ回路を含
む。即ち、エラー検出訂正回路3′は、図1に示すエラ
ー検出訂正回路3と同様に、チェックビット生成器3
a、シンドローム生成器3b、エラー検出器3c、エラ
ー訂正器3d、データラッチ3e、エラー訂正器3f、
メモリ側の入出力バッファ3g、プロセッサバス側の入
出力バッファ3h′を備える。これらの図1と同様の構
成の部分については詳細な説明は前述と同様であるの
で、重複する説明を省略する。これに対し、エラー検出
訂正回路3′は、I/Oユニットとのデータブリッジを
行なうので、I/Oバス側の入出力バッファ3h″を備
えている。
クセス時のデータのエラーを検出し、訂正する回路で、
プロセッサバスとI/Oバスのデータブリッジ回路を含
む。即ち、エラー検出訂正回路3′は、図1に示すエラ
ー検出訂正回路3と同様に、チェックビット生成器3
a、シンドローム生成器3b、エラー検出器3c、エラ
ー訂正器3d、データラッチ3e、エラー訂正器3f、
メモリ側の入出力バッファ3g、プロセッサバス側の入
出力バッファ3h′を備える。これらの図1と同様の構
成の部分については詳細な説明は前述と同様であるの
で、重複する説明を省略する。これに対し、エラー検出
訂正回路3′は、I/Oユニットとのデータブリッジを
行なうので、I/Oバス側の入出力バッファ3h″を備
えている。
【0024】また、エラー検出訂正回路3′は、部分書
込み時の書込みデータと読出しデータのマージ回路3
i、各32ビット幅のプロセッサバス側の書込みラッチ
3j′に加えて、各16ビット幅のI/Oバス側の書込
みラッチ3j″を備えている。同様に、各32ビット幅
のプロセッサバス側の読出しラッチ3k′の他に、各1
6ビット幅のI/Oバス側の読出しラッチ3k″を備え
ている。更に、プロセッサバス側の読出しデータ選択器
3l′の他に、I/Oバス側の読出しデータ選択器3
l″を備えている。
込み時の書込みデータと読出しデータのマージ回路3
i、各32ビット幅のプロセッサバス側の書込みラッチ
3j′に加えて、各16ビット幅のI/Oバス側の書込
みラッチ3j″を備えている。同様に、各32ビット幅
のプロセッサバス側の読出しラッチ3k′の他に、各1
6ビット幅のI/Oバス側の読出しラッチ3k″を備え
ている。更に、プロセッサバス側の読出しデータ選択器
3l′の他に、I/Oバス側の読出しデータ選択器3
l″を備えている。
【0025】そして、プロセッサバス側とI/Oバス側
からの書込みデータ選択器3m、I/Oバス→プロセッ
サバス時のデータの選択器3n、プロセッサバスへのデ
ータの選択器3o、32ビット幅のデータを64ビット
幅のデータにまとめる書込みデータ選択・累積器3p、
プロセッサバス→I/Oバス時のデータの選択器3q、
I/Oバスへのデータの選択器3rを備えている。I/
Oユニット4は、ディスク装置等との入出力を行なうユ
ニットで、32ビットのデータ幅を持つ。
からの書込みデータ選択器3m、I/Oバス→プロセッ
サバス時のデータの選択器3n、プロセッサバスへのデ
ータの選択器3o、32ビット幅のデータを64ビット
幅のデータにまとめる書込みデータ選択・累積器3p、
プロセッサバス→I/Oバス時のデータの選択器3q、
I/Oバスへのデータの選択器3rを備えている。I/
Oユニット4は、ディスク装置等との入出力を行なうユ
ニットで、32ビットのデータ幅を持つ。
【0026】次に、上述した装置の書込み時、読出し
時、部分書込み時の動作を説明する。プロセッサ1のデ
ータ書込み時、プロセッサ1は64ビット幅のデータを
4連送で送出するとする。即ち、図6(a)におけるデ
ータA、B、C、Dが1回分の送出データとなる。各送
出において64ビット幅の書込みデータは、図6(b)
に示すように32ビット幅に分割され、2つのエラー検
出訂正回路3′に入力される。4回入力された書込みデ
ータは4つの書込みラッチ3j′に蓄積され、書込みデ
ータ選択・累積器3pによって64ビット幅のデータに
まとめられる。そして、この64ビット幅のデータは、
プロセッサバス側とI/Oバス側からの書込みデータ選
択器3mを通過した後、マージ回路3iに入力される。
時、部分書込み時の動作を説明する。プロセッサ1のデ
ータ書込み時、プロセッサ1は64ビット幅のデータを
4連送で送出するとする。即ち、図6(a)におけるデ
ータA、B、C、Dが1回分の送出データとなる。各送
出において64ビット幅の書込みデータは、図6(b)
に示すように32ビット幅に分割され、2つのエラー検
出訂正回路3′に入力される。4回入力された書込みデ
ータは4つの書込みラッチ3j′に蓄積され、書込みデ
ータ選択・累積器3pによって64ビット幅のデータに
まとめられる。そして、この64ビット幅のデータは、
プロセッサバス側とI/Oバス側からの書込みデータ選
択器3mを通過した後、マージ回路3iに入力される。
【0027】この64ビット幅のデータは、通常書込み
時、データを素通りさせるだけのマージ回路3iを通過
し、チェックビット生成器3aに入力され、該生成器か
ら8ビット幅のチェックビットが出力される。その後、
前記書込みデータとチェックビットは、通常の書込み
時、データを素通りさせるだけのエラー訂正器3fを通
過した後、メモリ2に出力される。そして、2つのエラ
ー検出訂正回路3′から出力された書込みデータの64
+64ビットとチェックビットの8+8ビット、つまり
全部で144ビットは一括してメモリ2に書き込まれ
る。これは、プロセッサ1の64ビット幅のデータの2
連送分に値するため、4連送分の書込みデータは2回の
メモリ書込みで処理される。
時、データを素通りさせるだけのマージ回路3iを通過
し、チェックビット生成器3aに入力され、該生成器か
ら8ビット幅のチェックビットが出力される。その後、
前記書込みデータとチェックビットは、通常の書込み
時、データを素通りさせるだけのエラー訂正器3fを通
過した後、メモリ2に出力される。そして、2つのエラ
ー検出訂正回路3′から出力された書込みデータの64
+64ビットとチェックビットの8+8ビット、つまり
全部で144ビットは一括してメモリ2に書き込まれ
る。これは、プロセッサ1の64ビット幅のデータの2
連送分に値するため、4連送分の書込みデータは2回の
メモリ書込みで処理される。
【0028】プロセッサ1のデータ読出し時は、最初に
メモリ2からデータの64+64ビットとチェックビッ
トの8+8ビット、つまり全部で144ビットを図6
(b)に示すように一括して読み出す。これらは2セッ
トの対応する64ビット幅の読出しデータと8ビット幅
のチェックビットに分割され、セット毎に2つのエラー
検出訂正回路3′に入力される。入力された64ビット
幅の読出しデータ(訂正前)と8ビット幅のチェックビ
ットは、データラッチ3eでラッチされる。そして、こ
れらはシンドローム生成器3bに入力され、該生成器か
らシンドロームビットが出力される。その後、エラー訂
正器3dに、前記読出しデータ(訂正前)とシンドロー
ムビットが入力され、該訂正器から読出しデータ(訂正
後)が出力される。この読出しデータは読出しラッチ3
k′に32ビット幅で蓄積される。
メモリ2からデータの64+64ビットとチェックビッ
トの8+8ビット、つまり全部で144ビットを図6
(b)に示すように一括して読み出す。これらは2セッ
トの対応する64ビット幅の読出しデータと8ビット幅
のチェックビットに分割され、セット毎に2つのエラー
検出訂正回路3′に入力される。入力された64ビット
幅の読出しデータ(訂正前)と8ビット幅のチェックビ
ットは、データラッチ3eでラッチされる。そして、こ
れらはシンドローム生成器3bに入力され、該生成器か
らシンドロームビットが出力される。その後、エラー訂
正器3dに、前記読出しデータ(訂正前)とシンドロー
ムビットが入力され、該訂正器から読出しデータ(訂正
後)が出力される。この読出しデータは読出しラッチ3
k′に32ビット幅で蓄積される。
【0029】また、前記シンドロームビットはエラー検
出器3cにも入力され、該検出器から1ビットエラー又
は2ビットエラーの検出を示すエラー信号が出力され
る。読出しラッチ3k′に蓄積されたデータはデータ選
択器3l′によって選択され、プロセッサバスへのデー
タ選択器3oを通過後、2回に分けてプロセッサ1に出
力される。この結果、図6(a)に示すデータが読み出
される。この場合、1回のメモリ読出しでプロセッサは
各エラー検出訂正回路から32ビットずつ、全部で64
ビットのデータを2連送分読み出すことによりデータ読
出しを行なう。従って、4連送分の読出しデータは2回
のメモリ読出しで処理される。
出器3cにも入力され、該検出器から1ビットエラー又
は2ビットエラーの検出を示すエラー信号が出力され
る。読出しラッチ3k′に蓄積されたデータはデータ選
択器3l′によって選択され、プロセッサバスへのデー
タ選択器3oを通過後、2回に分けてプロセッサ1に出
力される。この結果、図6(a)に示すデータが読み出
される。この場合、1回のメモリ読出しでプロセッサは
各エラー検出訂正回路から32ビットずつ、全部で64
ビットのデータを2連送分読み出すことによりデータ読
出しを行なう。従って、4連送分の読出しデータは2回
のメモリ読出しで処理される。
【0030】I/Oユニット4のデータ書込み時、32
ビット幅の書込みデータは16ビット幅に分割され、2
つのエラー検出訂正回路3′に入力される。4回入力さ
れた書込みデータは4つの書込みラッチ3j″に蓄積さ
れ、プロセッサバス側とI/Oバス側からの書込みデー
タ選択器3mを通過した後、マージ回路3iに入力され
る。その後は、プロセッサの書込み時と同様である。I
/Oユニットの3回分以下の書込みデータは部分書込み
で処理される。
ビット幅の書込みデータは16ビット幅に分割され、2
つのエラー検出訂正回路3′に入力される。4回入力さ
れた書込みデータは4つの書込みラッチ3j″に蓄積さ
れ、プロセッサバス側とI/Oバス側からの書込みデー
タ選択器3mを通過した後、マージ回路3iに入力され
る。その後は、プロセッサの書込み時と同様である。I
/Oユニットの3回分以下の書込みデータは部分書込み
で処理される。
【0031】I/Oユニット4のデータ読出し時は、最
初にメモリ2からデータの64+64ビットとチェック
ビットの8+8ビット、全部で144ビットを一括して
読み出す。これらは2セットの対応する64ビット幅の
読出しデータと8ビット幅のチェックビットに分割さ
れ、セット毎に2つのエラー検出訂正回路3′に入力さ
れる。その後は、プロセッサ1の読出し時とほぼ同様で
ある。但し、読出しデータは読出しラッチ3k″に16
ビット幅で蓄積され、該ラッチに蓄積されたデータはデ
ータ選択器3l″によって選択され、I/Oバスへのデ
ータ選択器3oを通過した後、4回に分けてI/Oユニ
ット4に出力される。I/Oユニットは各エラー検出訂
正回路3′から16ビットずつ、全32ビットの読出し
データを読み込む。従って、1回のメモリ読出しで4回
分の読出しデータが処理される。
初にメモリ2からデータの64+64ビットとチェック
ビットの8+8ビット、全部で144ビットを一括して
読み出す。これらは2セットの対応する64ビット幅の
読出しデータと8ビット幅のチェックビットに分割さ
れ、セット毎に2つのエラー検出訂正回路3′に入力さ
れる。その後は、プロセッサ1の読出し時とほぼ同様で
ある。但し、読出しデータは読出しラッチ3k″に16
ビット幅で蓄積され、該ラッチに蓄積されたデータはデ
ータ選択器3l″によって選択され、I/Oバスへのデ
ータ選択器3oを通過した後、4回に分けてI/Oユニ
ット4に出力される。I/Oユニットは各エラー検出訂
正回路3′から16ビットずつ、全32ビットの読出し
データを読み込む。従って、1回のメモリ読出しで4回
分の読出しデータが処理される。
【0032】部分書込み時には、メモリ2から読出しデ
ータ(訂正前)及びチェックビットがシンドローム生成
器3bに入力され、該生成器からシンドロームビットが
出力される。また、マージ回路3iにプロセッサからの
書込み部分データと前記読出しデータ(訂正前)が入力
され、該回路から全書込みデータ(訂正前)が出力され
る。この書込みデータ(訂正前)はチェックビット生成
器3aに入力され、該生成器からチェックビットが出力
される。そして、エラー訂正器3fに前記シンドローム
ビット、書込みデータ(訂正前)とチェックビットが入
力され、該訂正器から前記読出しデータにおける1ビッ
トエラーに関係するデータ又はチェックビットのエラー
が訂正された書込みデータ(訂正後)が出力され、メモ
リ2に書き込まれる。
ータ(訂正前)及びチェックビットがシンドローム生成
器3bに入力され、該生成器からシンドロームビットが
出力される。また、マージ回路3iにプロセッサからの
書込み部分データと前記読出しデータ(訂正前)が入力
され、該回路から全書込みデータ(訂正前)が出力され
る。この書込みデータ(訂正前)はチェックビット生成
器3aに入力され、該生成器からチェックビットが出力
される。そして、エラー訂正器3fに前記シンドローム
ビット、書込みデータ(訂正前)とチェックビットが入
力され、該訂正器から前記読出しデータにおける1ビッ
トエラーに関係するデータ又はチェックビットのエラー
が訂正された書込みデータ(訂正後)が出力され、メモ
リ2に書き込まれる。
【0033】以上のようにして、大規模なエラー検出訂
正回路を分割して実現でき、各回路におけるデータ入出
力信号線数を適当なサイズにすることができる。従っ
て、全ハードウェアの量は従来とほとんど変わらず、デ
ータ記憶装置及びデータ処理装置につながるこの回路の
容量負荷も従来と変わることはない。また、インタリー
ブの手法を使用した場合のデータ記憶装置のアクセス速
度を損なうことなく、維持することができる。
正回路を分割して実現でき、各回路におけるデータ入出
力信号線数を適当なサイズにすることができる。従っ
て、全ハードウェアの量は従来とほとんど変わらず、デ
ータ記憶装置及びデータ処理装置につながるこの回路の
容量負荷も従来と変わることはない。また、インタリー
ブの手法を使用した場合のデータ記憶装置のアクセス速
度を損なうことなく、維持することができる。
【0034】例えば、64ビット幅のデータ処理幅を持
つプロセッサのための、2ウェイ・インタリーブのメモ
リ装置におけるエラー検出訂正回路は、従来の構成では
データ信号線だけで、プロセッサ側64本、メモリ側
(64+8)×2=144本、合計208本を必要とす
る。この本数は、現在の集積回路のパッケージを考える
と、1つの集積回路として実現しにくいものである。と
ころが、本発明を適用し、2つのエラー検出訂正回路に
分割して構成すると、1つのエラー検出訂正回路のデー
タ信号線数は、プロセッサ側32本、メモリ側(64+
8)=72本、合計104本となり、1つの集積回路と
して容易に実現可能である。しかも、プロセッサから見
えるアクセス速度は同等であり、プロセッサ側及びメモ
リ側から見える該回路の負荷も同じである。
つプロセッサのための、2ウェイ・インタリーブのメモ
リ装置におけるエラー検出訂正回路は、従来の構成では
データ信号線だけで、プロセッサ側64本、メモリ側
(64+8)×2=144本、合計208本を必要とす
る。この本数は、現在の集積回路のパッケージを考える
と、1つの集積回路として実現しにくいものである。と
ころが、本発明を適用し、2つのエラー検出訂正回路に
分割して構成すると、1つのエラー検出訂正回路のデー
タ信号線数は、プロセッサ側32本、メモリ側(64+
8)=72本、合計104本となり、1つの集積回路と
して容易に実現可能である。しかも、プロセッサから見
えるアクセス速度は同等であり、プロセッサ側及びメモ
リ側から見える該回路の負荷も同じである。
【0035】また、64ビット幅のデータ処理幅を持つ
プロセッサのための、4ウェイ・インタリーブのメモリ
装置におけるエラー検出訂正回路は、従来の構成ではデ
ータ信号線だけで、プロセッサ側64本、メモリ側(6
4+8)×4=288本、合計352本を必要とする。
この本数は、現在の集積回路のパッケージを考えると、
1つの集積回路として実現し難いものである。ところ
が、本発明を適用し、4つのエラー検出訂正回路に分割
して構成すると、1つのエラー検出訂正回路のデータ信
号線数は、プロセッサ側16本、メモリ側(64+8)
=72本、合計98本となり、1つの集積回路として容
易に実現可能である。しかも、プロセッサから見えるア
クセス速度は同等であり、プロセッサ側及びメモリ側か
ら見える該回路の負荷も同じである。
プロセッサのための、4ウェイ・インタリーブのメモリ
装置におけるエラー検出訂正回路は、従来の構成ではデ
ータ信号線だけで、プロセッサ側64本、メモリ側(6
4+8)×4=288本、合計352本を必要とする。
この本数は、現在の集積回路のパッケージを考えると、
1つの集積回路として実現し難いものである。ところ
が、本発明を適用し、4つのエラー検出訂正回路に分割
して構成すると、1つのエラー検出訂正回路のデータ信
号線数は、プロセッサ側16本、メモリ側(64+8)
=72本、合計98本となり、1つの集積回路として容
易に実現可能である。しかも、プロセッサから見えるア
クセス速度は同等であり、プロセッサ側及びメモリ側か
ら見える該回路の負荷も同じである。
【0036】そして、128ビット幅のデータ処理幅を
持つプロセッサのための、4ウェイ・インタリーブのメ
モリ装置におけるエラー検出訂正回路は、従来の構成で
はデータ信号線だけで、プロセッサ側128本、メモリ
側(128+9)×4=548本、合計676本を必要
とする。この本数は、現在の集積回路のパッケージを考
えると、1つの集積回路として実現不可能である。とこ
ろが、本発明を適用し、4つのエラー検出訂正回路に分
割して構成すると、1つのエラー検出訂正回路のデータ
信号線数は、プロセッサ側32本、メモリ側(128+
9)=137本、合計169本となり、1つの集積回路
として容易に実現可能である。しかも、プロセッサから
見えるアクセス速度は同等であり、プロセッサ側及びメ
モリ側から見える該回路の負荷も同じである。
持つプロセッサのための、4ウェイ・インタリーブのメ
モリ装置におけるエラー検出訂正回路は、従来の構成で
はデータ信号線だけで、プロセッサ側128本、メモリ
側(128+9)×4=548本、合計676本を必要
とする。この本数は、現在の集積回路のパッケージを考
えると、1つの集積回路として実現不可能である。とこ
ろが、本発明を適用し、4つのエラー検出訂正回路に分
割して構成すると、1つのエラー検出訂正回路のデータ
信号線数は、プロセッサ側32本、メモリ側(128+
9)=137本、合計169本となり、1つの集積回路
として容易に実現可能である。しかも、プロセッサから
見えるアクセス速度は同等であり、プロセッサ側及びメ
モリ側から見える該回路の負荷も同じである。
【0037】更に、64ビット幅のデータ処理幅を持つ
プロセッサのつながるプロセッサバスと、32ビット幅
のデータ処理幅を持つI/OユニットのつながるI/O
バスからのメモリアクセスを扱い、2ウェイ・インタリ
ーブに対応したエラー検出訂正回路は、従来の構成では
データ信号線だけでプロセッサバス側64本、I/Oバ
ス側32本、メモリ側(64+8)×2=144本、合
計240本を必要とする。この本数は、現在の集積回路
のパッケージを考えると、1つの集積回路として実現し
にくいものである。ところが、本発明を適用し、2つの
エラー検出訂正回路に分割して構成すると、1つのエラ
ー検出訂正回路のデータ信号線数は、プロセッサバス側
32本、I/Oバス側16本、メモリ側(64+8)=
72本、合計120本となり、1つの集積回路として容
易に実現可能である。しかも、プロセッサから見えるア
クセス速度は同等であり、プロセッサバス側及びメモリ
バス側から見える該回路の負荷も同じである。
プロセッサのつながるプロセッサバスと、32ビット幅
のデータ処理幅を持つI/OユニットのつながるI/O
バスからのメモリアクセスを扱い、2ウェイ・インタリ
ーブに対応したエラー検出訂正回路は、従来の構成では
データ信号線だけでプロセッサバス側64本、I/Oバ
ス側32本、メモリ側(64+8)×2=144本、合
計240本を必要とする。この本数は、現在の集積回路
のパッケージを考えると、1つの集積回路として実現し
にくいものである。ところが、本発明を適用し、2つの
エラー検出訂正回路に分割して構成すると、1つのエラ
ー検出訂正回路のデータ信号線数は、プロセッサバス側
32本、I/Oバス側16本、メモリ側(64+8)=
72本、合計120本となり、1つの集積回路として容
易に実現可能である。しかも、プロセッサから見えるア
クセス速度は同等であり、プロセッサバス側及びメモリ
バス側から見える該回路の負荷も同じである。
【0038】尚、データを小さな幅のデータに分割して
別々のエラー検出訂正回路に入力し、各エラー検出訂正
回路がチェックビット生成時にはチェックビットを、シ
ンドローム生成時にはシンドロームビットを各エラー検
出訂正回路同士で通信し合うことによって、もとのデー
タに対するチェックビット及びシンドロームを生成する
ことも可能である。つまり、もとのデータに対するチェ
ックビット生成及びシンドローム生成の処理を各エラー
検出訂正回路に分担させ、最終的に完成したチェックビ
ット及びシンドロームビットを全エラー検出訂正回路が
受け、処理を行なうようにすればよい。これによって
も、エラー検出訂正回路のピン数の制約の下に処理速度
を向上させることはできる。ただし、これらのエラー検
出訂正回路を別々の集積回路としてインプリメントする
場合、増加するピン数は最低(チェックビット+シンド
ロームビット)数で良いが、処理は別々の集積回路で通
信し合って行なうようにするため、1つの集積回路で閉
じている回路構成に比べて大変遅くなるし、その制御も
かなり複雑になる。
別々のエラー検出訂正回路に入力し、各エラー検出訂正
回路がチェックビット生成時にはチェックビットを、シ
ンドローム生成時にはシンドロームビットを各エラー検
出訂正回路同士で通信し合うことによって、もとのデー
タに対するチェックビット及びシンドロームを生成する
ことも可能である。つまり、もとのデータに対するチェ
ックビット生成及びシンドローム生成の処理を各エラー
検出訂正回路に分担させ、最終的に完成したチェックビ
ット及びシンドロームビットを全エラー検出訂正回路が
受け、処理を行なうようにすればよい。これによって
も、エラー検出訂正回路のピン数の制約の下に処理速度
を向上させることはできる。ただし、これらのエラー検
出訂正回路を別々の集積回路としてインプリメントする
場合、増加するピン数は最低(チェックビット+シンド
ロームビット)数で良いが、処理は別々の集積回路で通
信し合って行なうようにするため、1つの集積回路で閉
じている回路構成に比べて大変遅くなるし、その制御も
かなり複雑になる。
【0039】尚、上述した実施例においては、エラー検
出訂正回路3′を2つ設けた場合について説明したが、
本発明はこれに限定されることなく、例えば、4つ、8
つ等いくつ設けるようにしてもよい。
出訂正回路3′を2つ設けた場合について説明したが、
本発明はこれに限定されることなく、例えば、4つ、8
つ等いくつ設けるようにしてもよい。
【0040】
【発明の効果】以上詳述したように、本発明のエラー検
出訂正装置によれば、大規模なエラー検出訂正回路を分
割して実現でき、各回路におけるデータ入出力信号線数
を適当なサイズにすることができる。従って、本発明に
係る回路において全ハードウェアの量は従来とほとんど
変わらず、データ記憶装置及びデータ処理装置につなが
るこの回路の容量負荷も従来と変わることはなく、ま
た、インタリーブの手法を使用した場合のデータ記憶装
置のアクセス速度を維持することができる。
出訂正装置によれば、大規模なエラー検出訂正回路を分
割して実現でき、各回路におけるデータ入出力信号線数
を適当なサイズにすることができる。従って、本発明に
係る回路において全ハードウェアの量は従来とほとんど
変わらず、データ記憶装置及びデータ処理装置につなが
るこの回路の容量負荷も従来と変わることはなく、ま
た、インタリーブの手法を使用した場合のデータ記憶装
置のアクセス速度を維持することができる。
【図1】本発明のエラー検出訂正装置の一実施例のブロ
ック図である。
ック図である。
【図2】従来のエラー検出訂正装置の一例のブロック図
である。
である。
【図3】データとチェックビットの関係の説明図であ
る。
る。
【図4】QFPの説明図である。
【図5】PGAの説明図である。
【図6】データの書込み及び読出しの手順の説明図であ
る。
る。
【図7】本発明のエラー検出訂正装置の他の実施例のブ
ロック図である。
ロック図である。
1 プロセッサ(データ処理装置) 2 メモリ(データ記憶装置) 3、3′ エラー検出訂正回路 4 I/Oユニット(データ処理装置) 3j、3j′、3j″ 書込みラッチ 3k、3k′、3k″ 読出しラッチ
Claims (1)
- 【請求項1】 データをデータ幅方向に分割し、分割さ
れたデータをそれぞれ入力する複数のエラー検出訂正回
路と、 当該各エラー検出訂正回路内に設けられ、データ処理装
置から連送される複数の分割されたデータを1つに合成
し、合成された全体のデータからチェックビットを生成
するための書込みラッチと、 当該各エラー検出訂正回路内に設けられ、データ記憶装
置からチェックビットとともに読み出され、当該チェッ
クビットにより訂正されたデータを分割して連送するた
めの読出しラッチとを備えたことを特徴とするエラー検
出訂正装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5301046A JPH07129477A (ja) | 1993-11-05 | 1993-11-05 | エラー検出訂正装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5301046A JPH07129477A (ja) | 1993-11-05 | 1993-11-05 | エラー検出訂正装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH07129477A true JPH07129477A (ja) | 1995-05-19 |
Family
ID=17892214
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5301046A Pending JPH07129477A (ja) | 1993-11-05 | 1993-11-05 | エラー検出訂正装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH07129477A (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005352985A (ja) * | 2004-06-14 | 2005-12-22 | Sony Corp | 記憶装置 |
| JP2006260139A (ja) * | 2005-03-17 | 2006-09-28 | Fujitsu Ltd | エラー検出訂正装置の制御方法、エラー検出訂正装置、情報処理システム、エラー検出訂正装置の制御プログラム、データ処理装置 |
| JP2019087020A (ja) * | 2017-11-07 | 2019-06-06 | ルネサスエレクトロニクス株式会社 | 半導体装置及びそれを備えた半導体システム |
| CN113655745A (zh) * | 2021-08-19 | 2021-11-16 | 无锡中微亿芯有限公司 | 一种实现配置码流自动检纠错的fpga |
-
1993
- 1993-11-05 JP JP5301046A patent/JPH07129477A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005352985A (ja) * | 2004-06-14 | 2005-12-22 | Sony Corp | 記憶装置 |
| JP2006260139A (ja) * | 2005-03-17 | 2006-09-28 | Fujitsu Ltd | エラー検出訂正装置の制御方法、エラー検出訂正装置、情報処理システム、エラー検出訂正装置の制御プログラム、データ処理装置 |
| JP2019087020A (ja) * | 2017-11-07 | 2019-06-06 | ルネサスエレクトロニクス株式会社 | 半導体装置及びそれを備えた半導体システム |
| CN113655745A (zh) * | 2021-08-19 | 2021-11-16 | 无锡中微亿芯有限公司 | 一种实现配置码流自动检纠错的fpga |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8245108B2 (en) | Semiconductor memory device and method for driving the same | |
| EP1069503A2 (en) | Semiconductor memory device with an ECC circuit and method of testing the memory | |
| CA2051153A1 (en) | Buffering for read-modify-write operation | |
| US7028248B2 (en) | Multi-cycle symbol level error correction and memory system | |
| KR102847779B1 (ko) | 메모리 및 메모리의 동작 방법 | |
| JPH02203500A (ja) | 半導体記憶装置 | |
| JPS6042560B2 (ja) | 半導体記憶装置 | |
| US7065697B2 (en) | Systems and methods of partitioning data to facilitate error correction | |
| WO1997011381A1 (fr) | Controleur de memoire | |
| JPS62214599A (ja) | 半導体記憶装置 | |
| JPH07129477A (ja) | エラー検出訂正装置 | |
| US7051265B2 (en) | Systems and methods of routing data to facilitate error correction | |
| JPH0855066A (ja) | エラー訂正及び変換システム | |
| JPH0259943A (ja) | 塗潰しパターン発生装置 | |
| US5887033A (en) | Data transfer device and data transfer method | |
| JP2000163320A (ja) | ソフトエラー対策機能付メモリ装置及びソフトエラー対策方法 | |
| JPS6235199B2 (ja) | ||
| JPH0785360B2 (ja) | 半導体記憶装置 | |
| JPS58200351A (ja) | 誤り訂正回路 | |
| JP2820124B2 (ja) | 主記憶装置 | |
| JPS60181948A (ja) | パリテイ検査方式 | |
| JPH0227600A (ja) | 集積回路装置 | |
| JPH0362245A (ja) | 半導体集積回路 | |
| JPS58205260A (ja) | 符号化デ−タの誤り検出訂正方式 | |
| JPH0438018A (ja) | 中継回路のエラー検出方式 |