JP2002140898A - 誤り訂正検出回路と半導体記憶装置 - Google Patents

誤り訂正検出回路と半導体記憶装置

Info

Publication number
JP2002140898A
JP2002140898A JP2001249333A JP2001249333A JP2002140898A JP 2002140898 A JP2002140898 A JP 2002140898A JP 2001249333 A JP2001249333 A JP 2001249333A JP 2001249333 A JP2001249333 A JP 2001249333A JP 2002140898 A JP2002140898 A JP 2002140898A
Authority
JP
Japan
Prior art keywords
data
byte
circuit
error
error correction
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
Application number
JP2001249333A
Other languages
English (en)
Other versions
JP3600561B2 (ja
Inventor
Toru Tanzawa
徹 丹沢
Tomoharu Tanaka
智晴 田中
Kazunori Ouchi
和則 大内
Riichiro Shirata
理一郎 白田
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001249333A priority Critical patent/JP3600561B2/ja
Publication of JP2002140898A publication Critical patent/JP2002140898A/ja
Application granted granted Critical
Publication of JP3600561B2 publication Critical patent/JP3600561B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Error Detection And Correction (AREA)

Abstract

(57)【要約】 【課題】 情報データを連続的に誤り訂正回路に入出力
する場合であっても誤り訂正回路の規模を小さくでき
る。 【解決手段】 EEPROMの情報データを連続的に入
出力する誤り訂正検出回路において、1バイトがbビッ
トであるm個の情報データを1バイトがmbビットであ
る1個の情報データに変換するバイト長拡大回路15
と、このバイト長拡大回路15の出力からmbビット構
成のバイト誤りを訂正するバイト誤り訂正回路16とを
備えた。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ビットデータに対
するビット誤りを検出したり訂正したりする誤り訂正検
出回路と、これを用いた半導体記憶装置に関する。
【0002】
【従来の技術】従来、誤り訂正検出の方式としては、行
列方式(IEEE Journal of Solid-State Circuit,vol.2
4,pp50,1989)と多項式方式(Peterson and Weldon 著
のError-Correcting Codes. second edition)の二つが
知られている。図23は、これら両方式における、深さ
512ビット×幅8ビットのデータに対する、1ビット
誤り訂正符号の構成例である。
【0003】従来の半導体記憶装置では、誤り訂正処理
時間が第一優先とされているため、データ入出力の際に
データ書き込みにおける誤り検査ビットの発生やデータ
読出し時における誤り訂正に時間ロスの少ない行列方式
(a)が用いられてきた。このとき、8ビットデータに
対して冗長な検査ビットが4ビット必要である、即ち、
メモリ領域は50%増であった。一方、多項式方式
(b)の場合には、512ビットデータに対して検査ビ
ットは10ビットでよく、冗長度は2%程度である。但
し、誤りを訂正するのに522ビット長の遅延時間がか
かってしまう。
【0004】誤り訂正符号を付加しない時のメモリの信
頼性が要求されるそれより悪く、かつ512ビットデー
タ中の1ビット誤りを訂正する符号を付加する時のメモ
リの信頼性が要求されるそれより良くなり、さらに誤り
訂正のための処理時間よりメモリ領域の増加率を優先す
るならば、行列方式に比べ多項式方式が適当である。し
かしながら、誤り訂正回路の規模では逆に、多項式方式
の方が行列方式より大きくなることがある。というの
は、多項式方式の場合、誤り訂正回路は主に、検査デー
タ部を含むデータの深さに等しいシフトレジスタ(上の
例では522ビット×8組)から構成される遅延回路
と、検査ビット数に等しいシフトレジスタ(上の例では
10ビット×8組)からなるシンドローム計算回路で構
成されている、一方、行列方式では5入力排他的論理和
が4組とこれらの出力のロジックのみで構成されるから
である。
【0005】以上から分かるように、多項式方式は行列
方式に比べメモリ領域の増加率を極めて小さくできるも
のの、誤り訂正回路規模は逆に大きくなってしまうた
め、メモリチップの増加率を抑える効果は小さかった。
【0006】また、行列方式では8ビット並列に処理す
る必要があるため、その誤り訂正回路は、メモリセルと
ビット線制御回路の間若しくは全IO線が集まっている
ところに配置しなければならず、レイアウト上の自由度
が小さかった。
【0007】以下、従来の誤り訂正検出回路の構成及び
問題点を具体的説明する。
【0008】(従来例1)図24は、第1の従来例に係
わる誤り訂正検出回路を示すブロック図である。を表
す。これは、前述した文献(Peterson and Weidon 著の
Error-Correcting Codes. Second Edition)に開示され
ている。
【0009】入力データは、シンドローム計算回路(検
査ビット発生回路)1と遅延回路4に入力される。入力
データに誤りがない場合シンドロームは零、誤りがある
場合シンドロームは非零のある値を持ち、その値は誤り
の位置と大きさを計算する誤り位置大きさ計算回路2に
入力される。
【0010】入力されたシンドロームが零の場合、誤り
位置大きさ計算回路2は零を出力し、遅延回路4に入力
されたデータは、変更されずに誤り訂正回路3を通って
そのまま出力される。シンドロームが非零のある値を持
つときは、誤り位置大きさ計算回路2によって誤りの位
置と大きさが計算され、遅延回路4に入力されたデータ
は、誤り訂正回路3で誤りの訂正が行われて出力され
る。即ち、誤りのあるデータが出力されるときにのみ誤
り訂正回路3による誤りの訂正が行われ、正しいデータ
が出力される。
【0011】しかしながら、この種の構成にあっては次
のような問題があった。即ち、遅延回路4は入力データ
と同じ長さのシフトレジスタから構成され、特に長い符
号長の場合に誤り訂正回路全体に占める遅延回路4の割
合が大きくなる。そしてこれが、誤り訂正回路規模増大
の原因となっていた。
【0012】(従来例2)図25は、第2の従来例に係
わる誤り訂正検出回路を示すブロック図である。これ
は、1バイトがbビットで構成された(2b −3)バイ
ト以下の情報データのうち1バイトの誤りを訂正する、
いわゆる1バイト誤り訂正符号に関する。単一バイト誤
り訂正回路14は、入力された情報データから2バイト
の検査データを作り(符号化)、かつ情報データと検査
データから1バイトの誤りを訂正し(復号化)、正しい
情報データを出力する。
【0013】ところで、最大データ長は1バイトの大き
さbによって(2b −3)に限定されるため、(2b −
3)バイトよりも長い情報データを扱おうとする場合に
は、情報データを(2b −3)以下の長さのブロックに
分けなければならない。そして、情報データを連続的に
誤り訂正回路14に入力する場合では、図26に示すよ
うに、それぞれのブロックに対して単一バイト誤り訂正
回路14が必要となる。このため、誤り訂正回路の規模
が大きくなってしまうという問題があった。
【0014】また、単一の誤り訂正回路14のみを有す
る場合では、ブロック化された情報データ毎に符号化・
復号化するため、情報データを連続的に誤り訂正回路に
入出力することができないという問題があった。
【0015】(従来例3)図27は、第3の従来例に係
わる誤り訂正検出回路を備えた半導体記憶装置を示すブ
ロック図である。この半導体記憶装置13は、電気的書
き替え可能なメモリセルがマトリクス状に配置されたメ
モリセルアレイ6と、このメモリセルアレイ内のメモリ
セルのデータや書き替えデータを記憶するデータ回路8
と、外部からの書き替えデータの入力とメモリセルの読
み出しデータの出力を行う複数のデータ入出力バッファ
12と、入力された書き替えデータから誤りの訂正や検
出を行うための検査データを発生し、読み出しデータを
出力する際に読み出しデータと検査データから読み出し
データの誤りの訂正や検出を行う誤り訂正検出回路11
と、メモリセルのアドレスが入力され、カラムアドレス
とロウアドレスを出力するアドレスバッファ10と、カ
ラムアドレスをデコードし、データ回路8のデータを入
出力を制御するカラムデコーダ9と、ロウアドレスをデ
コードするロウデコーダ7と、メモリセルのデータの書
き替えと読み出しの制御信号を出力する書き込み読み出
し制御回路5を備えている。
【0016】このような半導体記憶装置13は、前述し
た文献(IEEE Jounal of Solid-Srate Circuits,vol.2
4,pp50,1989)に開示されている。本従来例では、符号
化・復号化を行うための処理時間を最小にするために、
誤り訂正符号は並列に処理される。この符号は、並列処
理可能のため、データ入出力線毎の1ビット又は複数ビ
ットの情報データとこの情報データから得られる検査デ
ータからなっている。
【0017】情報データのビット数が2倍になる毎に検
査データのビット数はおよそ1ビット多く必要になるの
で、情報データのビット数の増加とともに情報データの
ビット数に対する検査データのビット数の割合は減る。
一方、符号化・復号化のための排他的論理和の数は、情
報データのビット数におおよそ比例するので、情報デー
タのビット数の増加とともに符号化・復号化回路の規模
は大きくなる。従って、誤り訂正検出を行うための冗長
なメモリセルの面積と符号化・復号化回路面積の和の最
小値があり、それを与える情報データのビット数の最適
値がある。
【0018】一方、誤り訂正検出回路には、排他的論理
和で実現される上記のタイプ以外にシフトレジスタ列で
実現されるタイプがある。後者の場合には、検査データ
のビット数に等しい数のシフトレジスタ列と情報データ
のビット数と検査データのビット数の和に等しい数のシ
フトレジスタ列で実現される遅延回路が必要である。従
って、必要なシフトレジスタの数は、情報データのビッ
ト数が2倍になる毎におよそ2ビット増える。このた
め、情報データのビット数の増加とともに単位情報デー
タ当りの符号化・復号化回路の規模は減少するものの、
特に長い符号長の場合に誤り訂正回路全体に占める遅延
回路の割合が大きくなり、これが誤り訂正回路規模増大
の原因となっていた。さらに、この誤り訂正検出回路を
用いる場合には、復号化に情報データのビット数と検査
データのビット数の和に比例した遅延時間が必要となっ
てしまうという問題があった。
【0019】また、図28に本従来例におけるメモリセ
ルアレイ6と各回路8,11,12及び入出力パッド1
00等のレイアウトを示す。この図から分かるように、
誤り訂正検出回路11はメモリセルアレイ6とデータ回
路8の間若しくは全IO線が集まっているところに配置
される必要があるため、これらのレイアウト上の柔軟性
がないという問題があった。
【0020】また、バースト誤りが発生したときにその
データが符号語となり、バースト誤りを検出できない場
合があった。即ち、バースト誤りが発生したときにその
データの“1”が全て“0”になり、全“0”となって
しまうと、この全“0”データは誤りがないと判定され
てしまうためバースト誤りを知ることはできない。
【0021】
【発明が解決しようとする課題】このように従来、多項
式方式の誤り訂正検出回路においては、長い符号長の場
合に誤り訂正回路全体に占める遅延回路の割合が大きく
なり、これが誤り訂正回路規模増大の原因となってい
た。
【0022】また、単一のバイト誤り訂正回路しか有し
ない場合は情報データを連続的に入出力することができ
ず、情報データを連続的に誤り訂正回路に入力するに
は、それぞれのブロックに対して単一バイト誤り訂正回
路が必要となり、誤り訂正回路の規模が大きくなってし
まう。
【0023】また、シフトレジスタ列で実現されるタイ
プの場合には、特に長い符号長の場合に誤り訂正回路全
体に占める遅延回路の割合が大きくなり、これが誤り訂
正回路規模増大の原因となっていた。
【0024】また、誤り訂正検出回路はメモリセルアレ
イとデータ回路の間若しくは全IO線が集まっていると
ころに配置される必要があるため、これらのレイアウト
上の柔軟性がないという問題があった。
【0025】本発明は、上記事情を考慮してなされたも
ので、その目的とするところは、情報データを連続的に
誤り訂正回路に入出力する場合であっても誤り訂正回路
の規模を小さくできる誤り訂正検出回路を提供すること
にある。
【0026】また、本発明の他の目的は、誤り訂正検出
回路のレイアウトの自由度を増すことができる半導体記
憶装置を提供することにある。
【0027】
【課題を解決するための手段】(構成)上記課題を解決
するために本発明は、次のような構成を採用している。
【0028】即ち本発明は、ROM等の情報データを連
続的に入出力する誤り訂正検出回路において、1バイト
がbビットであるm個の情報データを1バイトがmbビ
ットである1個の情報データに変換するバイト長拡大回
路と、このバイト長拡大回路の出力からmbビット構成
のバイト誤りを訂正するバイト誤り訂正回路とを具備し
てなることを特徴とする。
【0029】また本発明は、EEPROM等の情報デー
タを連続的に入出力する誤り訂正検出回路において、1
バイトがbビットであるm個の情報データを1バイトが
mbビットである1個の情報データに変換するバイト長
拡大回路と、このバイト長拡大回路の出力からmbビッ
ト構成のバイト誤りを訂正するための検査バイトを発生
する検査バイト発生回路と、前記バイト長拡大回路の出
力からmbビット構成のバイト誤りを訂正するバイト誤
り訂正回路とを具備してなることを特徴とする。
【0030】また本発明は、上記の誤り訂正検出回路を
メモリセルアレイを有する半導体装置に用いたことを特
徴とする。
【0031】(作用)本発明によれば、1バイト誤り検
出符号において、1バイトを構成するビット数を並列に
入出力される単位から複数単位とすることによって、符
号長を大きくすることが可能となる。従って、長い情報
データであってもこれをブロック分けする必要がなくな
り、誤り訂正回路の規模を小さくできる。
【0032】また本発明によれば、各データ(入)出力
バッファ毎又は複数のデータ(入)出力バッファ毎に、
誤り訂正回路をデータ(入)出力バッファ付近に設ける
ことによって、レイアウトの自由度を増すことができ
る。さらに、バースト誤りが検出できる位置で符号化復
号化を行うことにより、データ書き替え時のバースト誤
り発生を検出できる。
【0033】
【発明の実施の形態】以下、本発明の詳細を図示の実施
形態によって説明する。
【0034】(第1の実施形態)図1は、本発明の第1
の実施例に係わる多項式方式の誤り訂正検出回路を示す
ブロック図である。基本的な構成は前記図24に示した
回路と同じであるが、本実施例では遅延回路を省略し、
その代わりに入力側にスイッチS1,S2を設けてい
る。そして、入力データを2度繰り返すようにしてい
る。
【0035】第1の入力時には、スイッチS1はオン
し、スイッチS2はオフする。第1のデータが全て入力
されると同時にシンドローム計算回路1によるシンドロ
ーム計算が終了し、誤り位置大きさ計算の実行が開始さ
れる。このとき、スイッチS2をオンし、スイッチS1
をオフする。従って第2の入力データは、誤り訂正回路
3に入力される。
【0036】このようにして、従来に比べ誤り訂正回路
の回路規模を縮小、特に長い符号長の場合に誤り訂正回
路の回路規模を大幅に縮小できるだけでなく、遅延時間
の増加なしに正しいデータが出力される。なお、入力対
象として用いるメモリがNAND型EEPROMのよう
に符号長に等しい数のデータラッチ回路を有するもので
は、入力データを2度繰り返すために新たに回路を付加
する必要はない。
【0037】(第2の実施形態)図2は、本発明の第2
の実施例に係わる多項式方式の誤り訂正検出回路を示す
ブロック図である。符号長拡大回路(符号長拡大回路)
15は、連続して入力されたm個のbビット/バイトを
1個のmbビット/バイトにして出力する。この出力は
単一mbビット/バイト誤り訂正回路16に入力され
る。この誤り訂正回路16は、単一のmbビット/バイ
ト誤りを訂正する。
【0038】この場合には、単一の誤り訂正回路16に
対して最大データ長をm×(2mb−3)バイト(1バ
イト=bビット)とできるばかりでなく、必要な検査デ
ータを2mバイト(1バイト=bビット)と小さくでき
る。
【0039】従来では、最大データ長をm×(2mb−
3)バイト(1バイト=bビット)としようとする場
合、情報データを連続的に誤り訂正回路に入力する場
合、単一バイト誤り訂正回路14はm×(2mb−3)
/(2b−3)個、検査データは2m×(2mb−3)
/(2b−3)個必要であった(図26)。下記の(表
1)にこれらの数字をまとめる。
【0040】
【表1】
【0041】(第3の実施形態)図3は本発明の第3の
実施例に係わる半導体記憶装置を示すブロック図で、図
4は同装置におけるレイアウト図である。前記図27と
比較して分かるように本実施例は、メモリセルアレイ6
とデータ回路8との間に誤り訂正回路11を設けるので
はなく、データ入出力バッファ12の1つ毎に誤り訂正
検出回路11を設けている。誤り訂正検出回路11は、
入力された書き替えデータから誤りの訂正又は検出を行
うための検査データを発生し、かつ読み出しデータを出
力する際に読み出しデータと検査データから読み出しデ
ータの誤りの訂正又は検出を行うものである。
【0042】本実施例では、2048ビット構成の情報
データは、8個のデータ入出力パッドを通じて並列に入
出力される。即ち、各データ入出力パッド当り256ビ
ットの情報データが入出力される。ここで、情報データ
256ビット中の1ビット誤りを訂正し、偶数ビット誤
りを検出する拡大ハミング符号(266、256)が用
いられる。
【0043】図5〜図7は、本実施例における符号化・
復号化回路を表し、図8、図9は、それぞれ書き込み
時、読み出し時の制御信号のタイミングを表す。
【0044】初めに、書き込み時の説明をする。
【0045】信号DINがハイの間データ入出力パッド
から書き込み情報データDINiに(i=1、…、8)
が入力され、図5(a)(b)の符号化回路に入力され
る。このとき、信号DINOUTBはローとされ、DI
NSi=DINiがデータ回路8に送られる。同時に、
信号SLINBはロー、信号DIVはハイとされている
ため、書き込み情報データDINiはシフトレジスタS
L1とシフトレジスタ列SL2、…、10に入力され、
検査ビット生成のための計算が実行される。シフトレジ
スタのクロックは、入力データDINiのクロックと同
期される。信号SLOUT1B、SLOUT2Bはハイ
とされているので、シフトレジスタSL1〜10の出力
はDINSiに出力されない。
【0046】書き込み情報データDINiの入力が終了
すると、信号DINOUTBはハイ、信号DIVはロ
ー、信号SLINBはハイ、信号SLOUT1Bはロー
に変わり、シフトレジスタSL1のクロックはストップ
する。このとき、シフトレジスタ列SL2、…、10の
状態は9個の検査ビットを表し、入力はローに固定され
ることによって、CINSiに出力される。その後、信
号SLOUT1Bはハイ、信号SLOUT2Bはローに
され、1個の検査ビットであるシフトレジスタSL1の
状態がDINSiに出力される。信号DINSがローに
なり、信号SLOUT2Bがハイになるとデータ回路8
への入力が終了する。
【0047】このようにして、データ回路8に入力され
る書き込みデータは256ビット情報データと10ビッ
ト検査データとなる。
【0048】その後、書き込みデータ2048ビット
(=256ビット×8組)は、信号PRGがハイの間に
メモリセルに書き込まれる。
【0049】さらにその後、信号BEREADがハイの
間にバースト誤りがあったか否かの検出を行う。信号B
EREADがハイになると、書き込んだデータをDIN
Siに出力された順番にDINiに読み出す。このと
き、信号DIVはハイ、信号SLINBはローとされ、
シフトレジスタSL1とシフトレジスタ列SL2、…、
10に入力され、シンドロームを計算する。
【0050】読み出しデータに誤りがある場合、シフト
レジスタの状態L1i〜L10iのうち一つ以上がハイ
となる。従って、シンドローム計算が終了した後に信号
DETEがハイになると信号ERDETiがハイとな
る。そして、全てのiに対して信号ERDETiがハイ
となった場合に、バースト誤りが発生したことを信号B
STERRが伝える。
【0051】一般に、誤り訂正検出回路の入力データ
は、書き込み入力データとその反転データのいずれでも
可能であるが、ここではバースト誤りが発生したときに
そのデータが符号語とならないようなデータとしてい
る。即ち、バースト誤りが発生したときにそのデータの
“1”が全て“0”になり、全“0”となってしまう
と、この全“0”データは誤りがないと判定されてしま
うためバースト誤りを知ることはできない。しかしなが
ら、バースト誤りが発生したときにそのデータの“0”
が全て“1”になり、全“1”となるようにしておけば
誤りが検出されるためバースト誤りを知ることが可能と
なる。
【0052】次に、読み出し時の説明をする。
【0053】読み出しは2サイクル、即ちシンドローム
の計算を行う第1サイクル(信号ECCREADがハイ
である期間)と誤り訂正をしながら誤りが訂正された正
しいデータを外部に出力するための第2のサイクル(信
号DATAOUTがハイである期間)とから構成され
る。第1サイクルでは信号DIVがハイ、信号SLIN
Bはローとなり、読み出されたデータはDINiに出力
され、シフトレジスタ列に入力される。全データが入力
され終わると、誤り検出のための信号DETEがハイに
される。このとき、誤りがあった場合にはシフトレジス
タの状態は少なくとも一つはハイになるため、誤りが検
出されたことを知らせる信号ERDETiがハイとな
る。このとき、さらに偶数個の誤りがあった場合には、
それを知らせる信号2ERDETiがハイになる。これ
で第1のサイクルは終了する。
【0054】続いて、第2サイクルでは信号COREが
ハイとなり、誤り訂正をしながら誤りが訂正された正し
いデータを外部に出力していく。データはあるクロック
に同期して出力されていくが、それと同時に入力を出力
に等しくされたシフトレジスタ列の状態は、信号SLI
NBをハイとしたままそのクロックに同期してシフトし
ていく。誤りの訂正は、シフトレジスタ列がある特定の
状態になるときに出力されるデータを反転することによ
って行われる。誤りの訂正が行われたとき、信号COR
RECTiはハイとなる。しかし、もし誤りが検出され
たことを知らせる信号ERDETiがハイとなったにも
拘らず、信号CORRECTiがローのままである、即
ち誤りの訂正が行われなかった場合には、信号NOTC
ORiがハイになる。
【0055】このようにして、各データ入出力バッファ
毎に誤り訂正検出回路を設け、復号すべき入力データを
2サイクル繰り返し読み出す方法によって、従来に比べ
遅延時間なしに復号を行うことができ、遅延回路を省略
できる。従って、特に長い符号長の場合に誤り訂正回路
の回路規模を縮小できる。
【0056】さらに、本実施例の場合、図3や図4に示
されるように誤り訂正回路11は、メモリセルアレイ6
とデータ回路8の間に配置する必要がないため、周辺
部、即ち各データ入出力バッファ12の付近に配置する
ことができ、レイアウト上の柔軟度を増すことが可能と
なる。
【0057】(第4の実施形態)図10は本発明の第4
の実施例に係わる半導体記憶装置を示すブロック図で、
図11は同装置におけるレイアウト図である。本実施例
が先に説明した第3の実施例と異なる点は、データ入出
力バッファ12の複数個(2つ)毎に誤り訂正検出回路
11を設けたことである。
【0058】本実施例では、2048ビット構成の情報
データは、8個のデータ入出力ピンIOi(i=1、
…、8)を通じて並列に入出力される、即ち、各データ
入出力ピン当り256ビットの情報データが入出力され
る。レイアウト上、データ入出力ピンはチップの左端に
4個(IO1〜4)、右端に4個(IO5〜8)、それ
ぞれ配置されているものとする。ここで、8個のデータ
入出力ピンを2組(IO1〜4、IO5〜8)に分け
る。各組の各データは、あるクロックに同期して並列に
入出力されるが、第1クロックで入出力される4ビット
と第2クロックで入出力される4ビットで1バイト(=
8ビット)を構成し、以下同様に奇数番目のクロックで
入出力される4ビットと偶数番目のクロックで入出力さ
れる4ビットで1バイトを構成していく(図19(a)
(b))。
【0059】このようにして、各組は、128バイト=
1024ビットの情報データで構成される。本実施例で
用いられる誤り訂正符号は、128バイト中の1バイト
誤り訂正する、リードソロモン符号(130、128)
である。
【0060】図12〜図20に本実施例に用いた誤り訂
正回路の具体的な回路構成を示し、図21,図22には
それぞれ書き込み、読み出し時の制御信号のタイミング
図を示す。
【0061】初めに、書き込み時の説明をする。
【0062】信号DINがハイの間データ入出力ピンか
ら書き込み情報データDINm−i(m=1、2、i=
1、…、8)が入力され、図12(a)〜(c)の符号
化回路に入力される。このとき、信号DINOUTBは
ローとされ、DINSm−i=DINm−iがデータ回
路8に送られる。同時に、信号DIVはハイとされてい
るため、書き込み情報データDINm−iは8ビットシ
フトレジスタSL1に入力され、検査ビット生成のため
の計算が実行される。シフトレジスタのクロックは、入
力データDINm−iのクロックと同期される。信号S
LOUTBはハイとされているので、8ビットシフトレ
ジスタSL2の出力SLOUTm−iはDINSm−i
に出力されない。
【0063】書き込み情報データDINm−iの入力が
終了すると、信号DINOUTBはハイ、信号DIVは
ロー、信号SLOUTBはローに変わり、入力SLIN
m−iがローに固定されることによって、8ビットシフ
トレジスタSL1,2の状態がDINSm−iに出力さ
れる。その後、信号DINSがロー、信号SLOUTB
がハイになると書き込みデータの入力が終了する。
【0064】このようにして、データ回路8に入力され
る書き込みデータは、128バイト情報データと2バイ
ト検査データとで構成される2つの符号語となる。
【0065】その後、この書き込みデータは、信号PR
Gがハイの間にメモリセルに書き込まれる。
【0066】さらにその後、信号BEREADがハイの
間にバースト誤りがあったか否かの検出を行う。信号B
EREADがハイになると、書き込んだデータをDIN
Sm−iに出力された順番にDOUTm−iに読み出
す。このとき、信号CCRBはローとされ、シフトレジ
スタSL3,4に入力され、シンドロームを計算する。
読み出しデータに誤りがある場合、S0 m−iのうち一
つ以上がハイとなる。従って、シンドローム計算が終了
した後に信号DETEがハイになると信号ERDETm
Bがハイとなる。そして、m=1、2に対して信号ER
DETmBがともにローとなった場合に、バースト誤り
が発生したことを信号BSTERRが伝える。
【0067】一般に、誤り訂正検出回路の入力データ
は、書き込み入力データとその反転データのいずれでも
可能であるが、ここではバースト誤りが発生したときに
そのデータが符号語とならないようなデータとしてい
る。即ち、バースト誤りが発生したときにそのデータの
“1”が全て“0”になり、前記“0”となってしまう
と、この全“0”データは誤りがないと判定されてしま
うためバースト誤りを知ることはできない。しかしなが
ら、バースト誤りが発生したときにそのデータの“0”
が全て“1”になり、全“1”となるようにしておけば
誤りが検出されるためバースト誤りを知ることが可能と
なる。
【0068】次に、読み出し時の説明をする。
【0069】読み出しは2サイクル、即ち、シンドロー
ムの計算を行う第1サイクル(信号ECCREADがハ
イである期間)と誤り訂正をしながら誤りが訂正された
正しいデータを外部に出力するための第2のサイクル
(信号DATAOUTがハイである期間)とから構成さ
れる。第1サイクルでは信号ECCRBがローとなり、
読み出されたデータはDOUTm−iに出力され、8ビ
ットシフトレジスタSL3,4,8,9に入力される。
全データが入力され終わると、誤り検出のための信号D
ETEがハイにされる。このとき、誤りがあった場合に
はシフトレジスタの状態は少なくとも一つはハイになる
ため、誤りが検出されたことを知らせる信号ERDET
mBがローとなる。これで第1のサイクルは終了する。
【0070】続いて、第2サイクルでは信号OUTEB
がローとなり、誤り訂正をしながら誤りが訂正された正
しいデータを外部に出力していく。データはあるクロッ
クに同期して出力されていくが、それと同時に入力がロ
ーである8ビットシフトレシスタSL5,10の出力は
そのクロックに同期してシフトし、フィードバックして
いく。誤りの訂正は、8ビットシフトレジスタSL5,
10の出力がシンドロームSm−iと一致するときに出
力されるデータを反転することによって行われる。誤り
の訂正が行われたとき、信号CORRECTiはハイと
なる。しかし、もし、誤りが検出されたことを知らせる
信号ERDETiがハイとなったにもかかわらず、信号
CORRECTiがローのままである、即ち誤りの訂正
が行われなかった場合には、信号NOTCORiがハイ
になる。
【0071】このようにして、データ入出力バッファの
組毎に誤り訂正検出回路を設け、復号すべき入力データ
を2サイクル繰り返し読み出す方法によって、従来に比
べ遅延時間なしに復号を行うことができ、遅延回路を省
略できる。従って、特に長符号長の場合に誤り訂正回路
の回路規模を縮小できる。
【0072】また、バイト当りのビット数を4ビットか
ら8ビットに拡張することによって、最大符号長を拡大
できる。
【0073】さらに、本実施例の場合、図4や図5に示
されるように誤り訂正回路11は、メモリセルアレイ6
とデータ回路8の間に配置する必要がないため、周辺
部、即ち各データ入出力バッファ12の付近に配置する
ことができ、レイアウト上の柔軟度を増すことが可能と
なる。
【0074】なお、本発明は上述した各実施例に限定さ
れるものではなく、その要旨を逸脱しない範囲で、種々
変形して実施することができる。
【0075】
【発明の効果】以上詳述したように本発明によれば、1
バイト誤り検出符号において、1バイトを構成するビッ
ト数を並列に入出力される単位から複数単位とすること
によって、バイト長を大きくすることが可能となる。
【0076】また、バースト誤りが検出できる位置で符
号化復号化を行うことにより、データ書き替え時のバー
スト誤り発生を検出できる。さらに、各データ(入)出
力バッファ毎又は複数のデータ(入)出力バッファ毎
に、誤り訂正回路をデータ(入)出力バッファ付近に設
けることによって、レイアウトの自由度を増すことがで
きる。
【図面の簡単な説明】
【図1】第1の実施例に係わる多項式方式の誤り訂正検
出回路を示すブロック図。
【図2】第2の実施例に係わる多項式方式の誤り訂正検
出回路を示すブロック図。
【図3】第3の実施例に係わる半導体記憶装置を示すブ
ロック図。
【図4】第3の実施例におけるメモリセルアレイと各回
路及び入出力パッド等のレイアウト図。
【図5】第3の実施例装置における符号化・復号化回路
を示す図。
【図6】第3の実施例装置における符号化・復号化回路
を示す図。
【図7】第3の実施例装置における符号化・復号化回路
を示す図。
【図8】第3の実施例装置における書き込み時、読み出
し時の制御信号のタイミングを示す図。
【図9】第3の実施例装置における書き込み時、読み出
し時の制御信号のタイミングを示す図。
【図10】第4の実施例に係わる半導体記憶装置を示す
ブロック図。
【図11】第4の実施例におけるメモリセルアレイと各
回路及び入出力パッド等のレイアウト図。
【図12】誤り訂正回路の具体的な回路構成を示す図。
【図13】誤り訂正回路の具体的な回路構成を示す図。
【図14】誤り訂正回路の具体的な回路構成を示す図。
【図15】誤り訂正回路の具体的な回路構成を示す図。
【図16】誤り訂正回路の具体的な回路構成を示す図。
【図17】誤り訂正回路の具体的な回路構成を示す図。
【図18】誤り訂正回路の具体的な回路構成を示す図。
【図19】誤り訂正回路の具体的な回路構成を示す図。
【図20】誤り訂正回路の具体的な回路構成を示す図。
【図21】誤り訂正回路の具体的な回路構成を示す図。
【図22】誤り訂正回路の具体的な回路構成を示す図。
【図23】行列方式と多項式方式における1ビット誤り
訂正符号の構成例を示す図。
【図24】第1の従来例に係わる誤り訂正検出回路を示
すブロック図。
【図25】第2の従来例に係わる誤り訂正検出回路を示
すブロック図。
【図26】第2の従来例において、複数の単一バイト誤
り訂正回路を設けた例を示す図。
【図27】第3の従来例に係わる誤り訂正検出回路を備
えた半導体記憶装置を示すブロック図。
【図28】第3の従来例におけるメモリセルアレイと各
回路及び入出力パッド等のレイアウトを示す図。
【符号の説明】
1…シンドローム計算回路 2…誤り位置大きさ計算回路 3…誤り訂正回路 4…遅延回路 5…書き込み・読み出し制御回路 6…メモリセルアレイ 7…ロウデコーダ 8…データ回路 9…カラムデコーダ 10…アドレスバッファ 11…誤り訂正検出回路 12…データ入出力バッファ 13…半導体記憶装置 14…単一バイト誤り訂正回路 15…符号長拡大回路 16…単一mbビット/バイト誤り訂正回路 100…データ入出力パッド 101…IO線
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11C 17/18 G11C 17/00 306Z 5L106 H03M 13/15 631 639C (72)発明者 大内 和則 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 (72)発明者 白田 理一郎 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 Fターム(参考) 5B001 AA11 AC01 AD04 5B003 AC01 AC02 AD00 5B018 GA02 HA14 NA04 NA06 QA16 RA02 5B025 AC01 AD00 AE00 5J065 AC03 AD11 AF03 AG02 AG04 AH04 AH07 5L106 AA07 AA10 BB01 BB11 GG00 GG06

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】1バイトがbビットであるm個の情報デー
    タを1バイトがmbビットである1個の情報データに変
    換するバイト長拡大回路と、このバイト長拡大回路の出
    力からmbビット構成のバイト誤りを訂正するバイト誤
    り訂正回路とを具備してなることを特徴とする誤り訂正
    検出回路。
  2. 【請求項2】1バイトがbビットであるm個の情報デー
    タを1バイトがmbビットである1個の情報データに変
    換するバイト長拡大回路と、このバイト長拡大回路の出
    力からmbビット構成のバイト誤りを訂正するための検
    査バイトを発生する検査バイト発生回路と、前記バイト
    長拡大回路の出力からmbビット構成のバイト誤りを訂
    正するバイト誤り訂正回路とを具備してなることを特徴
    とする誤り訂正検出回路。
  3. 【請求項3】前記バイト誤り訂正回路は、第1のサイク
    ルで入力された情報データと検査データからシンドロー
    ムを生成するシンドローム計算回路と、このシンドロー
    ム計算回路で得られたシンドロームから誤りの位置と大
    きさを計算する誤り位置大きさ計算回路と、この誤り位
    置大きさ計算回路で得られた誤りの位置と大きさに基づ
    いて、第2のサイクルで入力された前記情報データと同
    一な情報データから、誤りの訂正された情報データを出
    力する誤り訂正回路とを具備してなることを特徴とする
    請求項1又は2記載の誤り訂正検出回路。
  4. 【請求項4】メモリセルがマトリクス状に配置されたメ
    モリセルアレイと、このメモリセルアレイに対しデータ
    の出力を行う複数のデータ出力バッファと、前記データ
    出力バッファの1つ毎又は複数毎に、読み出しデータの
    誤りの訂正又は検出を行う誤り訂正検出回路とを備えた
    半導体記憶装置であって、 前記誤り訂正検出回路は、1バイトがbビットであるm
    個の情報データを1バイトがmbビットである1個の情
    報データに変換するバイト長拡大回路と、このバイト長
    拡大回路の出力からmbビット構成のバイト誤りを訂正
    するバイト誤り訂正回路とを具備してなることを特徴と
    する半導体記憶装置。
  5. 【請求項5】電気的書き替え可能なメモリセルがマトリ
    クス状に配置されたメモリセルアレイと、このメモリセ
    ルアレイに対し外部からの書き替えデータの入力とメモ
    リセルの読み出しデータの出力を行う複数のデータ入出
    力バッファと、前記データ入出力バッファの1つ毎又は
    複数毎に、入力された書き替えデータから誤りの訂正又
    は検出を行うための検査データを発生し、かつ読み出し
    データを出力する際に読み出しデータと検査データから
    読み出しデータの誤りの訂正又は検出を行う誤り訂正検
    出回路とを備えた半導体記憶装置であって、 前記誤り訂正検出回路は、1バイトがbビットであるm
    個の情報データを1バイトがmbビットである1個の情
    報データに変換するバイト長拡大回路と、このバイト長
    拡大回路の出力からmbビット構成のバイト誤りを訂正
    するバイト誤り訂正回路とを具備してなることを特徴と
    する半導体記憶装置。
  6. 【請求項6】メモリセルがマトリクス状に配置されたメ
    モリセルアレイと、このメモリセルアレイに対しデータ
    の出力を行う複数のデータ出力バッファと、前記データ
    出力バッファの1つ毎又は複数毎に、読み出しデータの
    誤りの訂正又は検出を行う誤り訂正検出回路とを備えた
    半導体記憶装置であって、 前記誤り訂正検出回路は、1バイトがbビットであるm
    個の情報データを1バイトがmbビットである1個の情
    報データに変換するバイト長拡大回路と、このバイト長
    拡大回路の出力からmbビット構成のバイト誤りを訂正
    するための検査バイトを発生する検査バイト発生回路
    と、前記バイト長拡大回路の出力からmbビット構成の
    バイト誤りを訂正するバイト誤り訂正回路とを具備して
    なることを特徴とする半導体記憶装置。
  7. 【請求項7】電気的書き替え可能なメモリセルがマトリ
    クス状に配置されたメモリセルアレイと、このメモリセ
    ルアレイに対し外部からの書き替えデータの入力とメモ
    リセルの読み出しデータの出力を行う複数のデータ入出
    力バッファと、前記データ入出力バッファの1つ毎又は
    複数毎に、入力された書き替えデータから誤りの訂正又
    は検出を行うための検査データを発生し、かつ読み出し
    データを出力する際に読み出しデータと検査データから
    読み出しデータの誤りの訂正又は検出を行う誤り訂正検
    出回路とを備えた半導体記憶装置であって、 前記誤り訂正検出回路は、1バイトがbビットであるm
    個の情報データを1バイトがmbビットである1個の情
    報データに変換するバイト長拡大回路と、このバイト長
    拡大回路の出力からmbビット構成のバイト誤りを訂正
    するための検査バイトを発生する検査バイト発生回路
    と、前記バイト長拡大回路の出力からmbビット構成の
    バイト誤りを訂正するバイト誤り訂正回路とを具備して
    なることを特徴とする半導体記憶装置。
  8. 【請求項8】前記誤り訂正検出回路は、前記メモリセル
    アレイが配置されるコア領域ではなく、前記バッファが
    配置される周辺領域に配置されていることを特徴とする
    請求項4〜7の何れかに記載の半導体記憶装置。
  9. 【請求項9】データの書き替え時にバースト誤りを検出
    できるような位置で誤り訂正検出のための演算を行うこ
    とを特徴とする請求項5又は7記載の半導体記憶装置。
JP2001249333A 2001-08-20 2001-08-20 誤り訂正検出回路と半導体記憶装置 Expired - Lifetime JP3600561B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001249333A JP3600561B2 (ja) 2001-08-20 2001-08-20 誤り訂正検出回路と半導体記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001249333A JP3600561B2 (ja) 2001-08-20 2001-08-20 誤り訂正検出回路と半導体記憶装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP08345995A Division JP3272903B2 (ja) 1995-03-16 1995-03-16 誤り訂正検出回路と半導体記憶装置

Publications (2)

Publication Number Publication Date
JP2002140898A true JP2002140898A (ja) 2002-05-17
JP3600561B2 JP3600561B2 (ja) 2004-12-15

Family

ID=19078351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001249333A Expired - Lifetime JP3600561B2 (ja) 2001-08-20 2001-08-20 誤り訂正検出回路と半導体記憶装置

Country Status (1)

Country Link
JP (1) JP3600561B2 (ja)

Also Published As

Publication number Publication date
JP3600561B2 (ja) 2004-12-15

Similar Documents

Publication Publication Date Title
JP3272903B2 (ja) 誤り訂正検出回路と半導体記憶装置
US7149950B2 (en) Assisted memory device for reading and writing single and multiple units of data
US20080282128A1 (en) Method of Error Correction Code on Solid State Disk to Gain Data Security and Higher Performance
JP2001175542A (ja) 記録再生装置および半導体メモリ
US7656322B2 (en) Semiconductor memory device having error correction function
JP2001249854A (ja) メモリ設計のための共有式誤り訂正
JP4247262B2 (ja) 集積回路装置
JP3039455B2 (ja) 半導体メモリ装置テスト方法及び半導体メモリ装置
US20130179758A1 (en) Circuits, integrated circuits, and methods for interleaved parity computation
JP5134569B2 (ja) メモリ装置
JP2009259113A (ja) 不揮発性メモリ管理装置
US7075851B2 (en) Semiconductor memory device inputting/outputting data and parity data in burst operation
JP2010009101A (ja) メモリシステム及びメモリアクセス方法
JP2007323786A (ja) 半導体装置
JP2005149713A (ja) 半導体メモリ装置およびこの装置のテストパターンデータ発生方法
JP3600561B2 (ja) 誤り訂正検出回路と半導体記憶装置
JP3600562B2 (ja) 半導体記憶装置
JP2014137834A (ja) 半導体記憶装置
KR20020075269A (ko) 에러 정정 장치
JP2006323434A (ja) データ処理装置及びそのメモリ訂正方法
WO2000070459A1 (en) Error correction circuit and method for a memory device
JP4921216B2 (ja) メモリ制御回路、記憶システム、情報処理装置、および、メモリ制御方法
JPH0746517B2 (ja) 半導体メモリ及びそのテスト方法
JPH11213693A (ja) メモリ装置
JP2023032889A (ja) 半導体装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040409

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040914

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040916

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070924

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080924

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080924

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090924

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090924

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100924

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110924

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110924

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120924

Year of fee payment: 8