JP4742553B2 - 記憶装置 - Google Patents

記憶装置 Download PDF

Info

Publication number
JP4742553B2
JP4742553B2 JP2004275596A JP2004275596A JP4742553B2 JP 4742553 B2 JP4742553 B2 JP 4742553B2 JP 2004275596 A JP2004275596 A JP 2004275596A JP 2004275596 A JP2004275596 A JP 2004275596A JP 4742553 B2 JP4742553 B2 JP 4742553B2
Authority
JP
Japan
Prior art keywords
data
error detection
inverted
unit
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.)
Active
Application number
JP2004275596A
Other languages
English (en)
Other versions
JP2006092163A (ja
Inventor
謙一 佐鳥
健一 中西
秀明 坂東
貴広 福重
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2004275596A priority Critical patent/JP4742553B2/ja
Priority to US11/222,128 priority patent/US7530005B2/en
Publication of JP2006092163A publication Critical patent/JP2006092163A/ja
Application granted granted Critical
Publication of JP4742553B2 publication Critical patent/JP4742553B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • 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/1068Adding 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 sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • G11C16/28Sensing or reading circuits; Data output circuits using differential sensing or reference cells, e.g. dummy cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Description

本発明は記憶装置に関し、例えば、パーソナルコンピュータ等の情報処理装置から送信されるデータを受信し、これを内部の半導体メモリ(例えばフラッシュメモリ)に記憶するようになされた半導体記憶装置に適用して好適なものである。
近年この種の半導体記憶装置として、カード型の形状に構成された半導体記憶装置が普及している。このカード型の半導体記憶装置としては、メモリスティック(R)等が広く知られている。
ところでこのような半導体記憶装置は、例えばパーソナルコンピュータ等に相当する情報処理装置から、内部のフラッシュメモリに記憶させるべきデータ(説明の便宜上、以下これを実データと呼ぶ)を受信すると、まず当該受信した実データに対応する誤り検出・訂正用のパリティデータを生成する。そしてこの半導体記憶装置は、当該実データと当該生成したパリティデータとを対応付けてフラッシュメモリに記憶させる。
またこの半導体記憶装置は、内部のフラッシュメモリに記憶させた実データを読み出す場合、この実データと共に対応するパリティデータも読み出し、当該読み出したパリティデータに基づいてその実データに対する誤り検出・訂正処理を実行する。この誤り検出・訂正処理では、当該読み出したパリティデータに基づいてかかる実データに誤りが生じているか否かを検出し、その結果当該実データに誤りが生じていない旨を認識した場合には当該実データをそのまま外部へ出力し、これに対して当該実データに誤りが生じている旨を認識した場合には当該パリティデータに基づいて当該実データの誤りを訂正した後これを外部へ出力する。
このようにして半導体記憶装置は、フラッシュメモリに記憶させた実データの正確さを確保するようになされている(例えば特許文献1参照)。
特開2004−164634公報
一般的にこのような半導体記憶装置に設けられた例えばNAND型のフラッシュメモリでは、所定領域ごと(例えば、1ブロック(=128[kbyte])ごと)にデータ消去処理が実行される。
このデータ消去処理では、図7に示すように、データ消去処理の対象となる領域の基板に対して正の高電圧を印加することにより、この領域に存在するメモリトランジスタのフローティングゲートから電子を引き抜く。これにより、この消去処理が実行された領域(以下、これを消去処理済領域と適宜呼ぶ)に存在する全てのメモリトランジスタは、図8(A)のようにデータ「0」を示す書き込み状態から、図8(B)のようにデータ「1」を示す消去状態に遷移する。
ところでこのようなフラッシュメモリを有する半導体記憶装置では、フラッシュメモリにおけるデータの記憶状態を確認する等の理由により、消去処理済領域に対してデータの読み出し処理が実行される場合がある。
この場合この半導体記憶装置は、消去処理済領域中の実データが記憶される部分から、消去状態を意味しているデータ(以下、これを消去状態実データと適宜呼ぶ)を読み出すと共に、これに対応するようにして、消去処理済領域中のパリティデータが記憶される部分から、消去状態を意味しているデータ(以下、これを消去状態パリティデータと適宜呼ぶ)を読み出し、当該読み出した消去状態パリティデータに基づいて、当該読み出した消去状態実データに対する誤り検出・訂正処理を実行することになる。
ここでこの種の半導体記憶装置では、誤り検出・訂正処理方式として、例えばBCH符号方式やリードソロモン符号方式が採用される。このような誤り検出・訂正処理方式では、値が全て「0」でなるデータに基づいて生成されたパリティデータについてはその値が全て「0」になる一方で、値が全て「1」でなるデータに基づいて生成されたパリティデータについてはその値が全て「1」にはならないようになされている。
従ってこのような誤り検出・訂正処理方式が適用されている半導体記憶装置では、消去処理済領域から読み出した消去状態パリティデータ(値が全て「1」)に基づいて、これに対応する消去状態実データ(値が全て「1」)に誤り検出・訂正処理を実行すると、当該消去状態実データに誤りが生じていると判断してしまうので、当該消去状態実データに対して余計な誤り訂正処理を実行してしまう。
この結果このような従来の半導体記憶装置では、消去処理済領域に記憶されているデータは全て値が「1」で正しいにも関わらず、そのデータを正しいものとして読み出せない問題があった。
本発明は以上の点を考慮してなされたもので、消去処理済領域からもデータを正常に読み出し得る記憶装置を提案しようとするものである。
かかる課題を解決するため本発明においては、データと当該データの誤りを検出するための誤り検出データとを記憶する記憶手段と、記憶手段から読み出したデータに対応する誤り検出データに基づいて当該読み出したデータに誤りがあるか否かを検出するための誤り検出処理を実行する誤り検出手段とを有する記憶装置において、記憶手段から読み出したデータ及び当該データに対応する誤り検出データを反転した後誤り検出手段に誤り検出処理させる第1のデータ反転手段と、誤り検出手段により誤り検出処理された後のデータを反転した後出力する第2のデータ反転手段とを設けるようにした。
この結果この記憶装置では、例えば、記憶手段における消去処理済領域に対してデータ読み出し処理を実行したために、当該読み出されたデータ(消去状態実データ)及び誤り検出データ(消去状態パリティデータ)の値が全て「1」であっても、このデータ及び誤り検出データを第1のデータ反転手段により反転することによりその値を全て「0」にしてから、誤り検出処理を実行するようにしたことにより、この誤り検出処理において誤りが検出されてしまうことを回避することができる。
またこの記憶装置においては、誤り検出手段により誤り検出処理された後の値が全て「0」でなるデータ(反転消去状態実データ)を、第2のデータ反転手段により反転することによりその値を全て「1」にしてから出力することができ、かくして当該出力されたデータを処理する処理側にこのデータが消去処理済領域から読み出されたものであることを確実に認識させることができる。
さらに本発明の記憶装置においては、記憶手段に記憶させるデータに対応する誤り検出データを生成する誤り検出データ生成手段を有し、記憶手段に記憶させるデータを反転した後誤り検出データ生成手段に当該データに対応する誤り検出データを生成させる第3のデータ反転手段と、第3のデータ反転手段により反転されたデータと当該データに対応するように生成した誤り検出データとを反転した後記憶手段に記憶させる第4のデータ反転手段とを設けるようにした。
この結果この記憶装置においては、例えば、記憶手段の消去処理済領域から値が全て「1」でなるデータ(消去状態実データ)を一度読み出して、これをそのまま記憶手段に再度記憶させる場合、当該データを反転することによりその値を全て「0」にしてから、当該データに対応する誤り検出データ(パリティデータ)を生成することにより、この誤り検出データの値を全て「0」にすると共に、反転させることによりその値を全て「0」にしたかかるデータと当該データに対応するように生成した値が全て「0」でなる誤り検出データとを反転することによりその値を全て「1」にしてから記憶手段に記憶させるようにしたことにより、データが消去されている状態を示す値「1」をこの記憶手段に正しく保持し続けさせることができる。
本発明によれば、例えば、記憶手段における消去処理済領域に対してデータ読み出し処理を実行したために、当該読み出されたデータ(消去状態実データ)及び誤り検出データ(消去状態パリティデータ)の値が全て「1」であっても、このデータ及び誤り検出データを第1のデータ反転手段により反転することによりその値を全て「0」にしてから、誤り検出処理を実行するようにしたことにより、この誤り検出処理において誤りが検出されてしまうことを回避することができる。また誤り検出手段により誤り検出処理された後の値が全て「0」でなるデータ(反転消去状態実データ)を、第2のデータ反転手段により反転することによりその値を全て「1」にしてから出力することができ、かくして当該出力されたデータを処理する処理側にこのデータが消去処理済領域から読み出されたものであることを確実に認識させることができる。この結果、消去処理済領域からもデータを正常に読み出し得る記憶装置を実現することができる。
以下図面について、本発明の一実施の形態を詳述する。
(1)半導体記憶装置の構成
図1において、1は全体としてカード型の半導体記憶装置を示し、この半導体記憶装置1は、例えばNAND型フラッシュメモリに相当するメモリ部2と、当該メモリ部2のデータ書き込み処理及びデータ読み出し処理を制御するコントローラ部3を有する。
つまりこのコントローラ部3は、例えば、情報処理装置から供給される制御信号に基づいて、情報処理装置から供給される実データを記憶させるデータ書き込み処理をメモリ部2に実行させると共に、情報処理装置から供給される制御信号に基づいて、記憶されている実データを読み出させるデータ読み出し処理をメモリ部2に実行させる。
次に図2を用いて、コントローラ部3の構成を説明する。このコントローラ部3においては、コントローラ部3全体を制御するMCU(Micro Controller Unit)4の制御の下、ホストインターフェース部5が、情報処理装置から供給されるクロック信号に基づいて、情報処理装置から供給される実データを取り込み、これをページバッファ部6に対して供給する。
このページバッファ部6は、MCU4の制御の下、情報処理装置からホストインターフェース部5を介して入力された実データを一時蓄積すると共に、当該蓄積している実データをECC(Error Correcting Circuit)部7のエンコーダ回路7Aに対して適宜供給する。
実際上この実施の形態の場合、図3において詳細に示すように、ページバッファ部6とECC部7のエンコーダ回路7Aとの間に第1のデータ反転回路11が設けられている。この第1のデータ反転回路11は、ページバッファ部6から供給された実データ中の各ビットを反転するビット反転処理を実行する。かくしてこの第1のデータ反転回路11は、ページバッファ部6からの実データをビット反転することにより得られた反転実データを、ECC部7のエンコーダ回路7Aに対して供給する。
この際このECC部7のエンコーダ回路7Aは、例えばBCH符号方式に基づいて、当該供給された反転実データに対応するパリティデータを生成する。そしてこのECC部7のエンコーダ回路7Aは、当該反転実データと、当該反転実データに対応するように生成したパリティデータとを、タイミングジェネレータ部8に対して供給するようになされている。
ここで実際上この実施の形態の場合には、図3において詳細に示すように、ECC部7のエンコーダ回路7Aとタイミングジェネレータ部8との間に第2のデータ反転回路12が設けられている。この第2のデータ反転回路12は、エンコーダ回路7Aから供給された反転実データ及びパリティデータにおける各ビットを反転するビット反転処理を実行する。かくしてこの第2のデータ反転回路12は、かかる反転実データをビット反転することにより元に戻した実データと、かかるパリティデータをビット反転することにより得られた反転パリティデータとを、タイミングジェネレータ部8に対して供給する。
このタイミングジェネレータ部8は、MCU4の制御の下、ECC部7のエンコーダ回路7Aから第2のデータ反転回路12を介して供給された実データ及びこれに対応する反転パリティデータをメモリ部2に対して供給すると共に、これらを記憶するように命令する書き込み制御信号をメモリ部2に対して供給する。
これによりこのメモリ部2は、タイミングジェネレータ部8から供給された書き込み制御信号に基づいて、タイミングジェネレータ部8から供給された実データ及びこれに対応する反転パリティデータを記憶するためのデータ書き込み処理を実行する。かくして、情報処理装置側から供給された実データと、これに対応するようにしてエンコーダ回路7Aにより生成された反転パリティデータとが、半導体記憶装置1のメモリ部2に対して書き込まれる。
因みにこのメモリ部2においては、次のようにしてデータ書き込み処理が実行される。つまりこのデータ書き込み処理では、タイミングジェネレータ部8から供給された実データ及び反転パリティデータにおいて値「0」のビットが存在すると、例えば図4に示すように、そのビットに対応するメモリトランジスタのフローティングゲートに対して電子を注入する。実際このメモリ部2は、このようにメモリトランジスタのフローティングゲートに対して電子を注入するために、対応するビット線の電位を例えば0[V]にすると共に、対応するワード線の電位を例えば正の高電圧にするようになされている。
ところでこの図2に示すMCU4は、情報処理装置からホストインターフェース部5を介して、メモリ部2に書き込まれた実データを読み出すように命令する制御信号が供給されると、これに応じてタイミングジェネレータ部8を介してメモリ部2に対し、この実データを読み出すように命令する読み出し制御信号を供給する。
このときメモリ部2は、当該供給された読み出し制御信号に基づいて、かかる実データとこれに対応する反転パリティデータデータとを読み出すデータ読み出し処理を実行する。そしてメモリ部2は、このデータ読み出し処理により読み出した実データと反転パリティデータとを、タイミングジェネレータ部8を介してECC部7のデコーダ回路7Bに対して供給する。
実際上この実施の形態の場合、図3において詳細に示すように、タイミングジェネレータ部8とECC部7のデコーダ回路7Bとの間に第3のデータ反転回路13が設けられている。この第3のデータ反転回路13は、メモリ部2からタイミングジェネレータ部8を介して供給された実データ及び反転パリティデータにおける各ビットを反転するビット反転処理を実行する。かくしてこの第3のデータ反転回路13は、かかる実データをビット反転することにより得られた反転実データと、かかる反転パリティデータをビット反転することにより元に戻したパリティデータとを、ECC部7のデコーダ回路7Bに対して供給する。
その結果このECC部7のデコーダ回路7Bは、第3のデータ反転回路13から供給されたパリティデータに基づいてかかる反転実データに対する誤り検出・訂正処理を実行する。因みにこの実施の形態の場合この誤り検出・訂正処理は、上述したようにBCH符号方式に基づいて実行される。
この誤り検出・訂正処理では、反転実データに対する誤り検出処理において誤りが検出されないと、このことはつまり、メモリ部2から読み出した際の実データに誤りが生じていないことを意味しているので、このときデコーダ回路7Bは、この反転実データに対して誤り訂正処理を施すことなく、この反転実データをそのまま出力する。
これに対し、反転実データに対する誤り検出処理において誤りが検出されると、このことはつまり、メモリ部2から読み出した際の実データに誤りが生じていることを意味しているので、このときデコーダ回路7Bは、かかるパリティデータに基づいて反転実データに対し誤り訂正処理を施し、その結果得られた訂正後の反転実データを出力する。
そしてこの実施の形態の場合、このECC部7のデコーダ回路7Bから出力された反転実データは、図3において詳細に示すように、ECC部7のデコーダ回路7Bとページバッファ部6との間に設けられた第4のデータ反転回路14に対して供給される。この第4のデータ反転回路14は、当該供給された反転実データにおける各ビットを反転するビット反転処理を実行する。かくしてこの第4のデータ反転回路14は、当該ビット反転処理により元に戻した実データを、ページバッファ部6及びホストインターフェース部5を順次介して情報処理装置に対して供給する。これによりこの情報処理装置は、半導体記憶装置1に読み出すように命令した実データを半導体記憶装置1から得ることができる。
(2)消去処理済領域に対するデータ読み出し処理及びデータ書き込み処理
またこの図2に示すMCU4は、例えば、情報処理装置からホストインターフェース部5を介して、メモリ部2にデータ消去処理を実行させるように命令する制御信号を受信すると、これに応じてタイミングジェネレータ部8を介してメモリ部2に対し、データ消去処理を実行するように命令するデータ消去制御信号を供給する。
このときメモリ部2は、当該供給されたデータ消去制御信号に応じた領域(例えば、1ブロック(=128[kbyte])に相当する領域)に対してデータ消去処理を実行する。この結果このデータ消去処理が実行された消去処理済領域では、全てのメモリトランジスタが値「1」を保持した状態になる。
この後このメモリ部2は、メモリ部2におけるデータの記憶状態を確認する等の理由によりMCU4から供給された、消去処理済領域に対してデータ読み出し処理を実行するように命令する読み出し制御信号を受信すると、これに応じてこの消去処理済領域に対しデータ読み出し処理を実行する。
このデータ読み出し処理についてさらに具体的に説明すると、このメモリ部2においては1ページ単位(例えば2[Kbyte]単位)でデータ読み出し処理及びデータ書き込み処理が実行されるので、この消去処理済領域に対するデータ読み出し処理によって、例えば図5(A)に示すように、値が全て「1」でなる4つの消去状態実データDdr(1〜4)と、値が全て「1」でなる4つの消去状態パリティデータDdp(1〜4)とが読み出される。
そしてこのメモリ部2は、当該読み出した4つの消去状態実データDdr(1〜4)と4つの消去状態パリティデータDdp(1〜4)とを、タイミングジェネレータ部8を介して第3のデータ反転回路13に供給する。このとき第3のデータ反転回路13は、供給された各消去状態実データDdr(1〜4)及び各消去状態パリティデータDdp(1〜4)に対してビット反転処理を施すことにより、例えば図5(B)に示すように、値が全て「0」でなる4つの反転消去状態実データxDdr(1〜4)と、値が全て「0」でなる4つの反転消去状態パリティデータxDdp(1〜4)とを生成し、これらをECC部7のデコーダ回路7Bに供給する。
その結果このECC部7のデコーダ回路7Bは、第3のデータ反転回路13から4つの反転消去状態実データxDdr(1〜4)及び4つの反転消去状態パリティデータxDdp(1〜4)を受信し、当該受信した各反転消去状態パリティデータxDdp(1〜4)に基づいて対応する反転消去状態実データxDdr(1〜4)に対する誤り検出・訂正処理を実行する。
ここで、BCH符号方式が適用されたECC部7においては、図6(A)に示すように、値が全て「0」でなるデータに対し値が全て「0」でなるパリティデータを生成するので、図6(B)に示すように、値が全て「0」でなるパリティデータに基づいて値が全て「0」でなるデータに対する誤り検出処理を実行した場合には、このデータに誤りが生じていないと判断する。これに対してこのBCH符号方式が適用されたECC部7においては、値が全て「1」でなるデータに対し値が全て「1」でなるパリティデータを生成しないので、値が全て「1」でなるパリティデータに基づいて値が全て「1」でなるデータに対する誤り検出処理を実行した場合には、このデータに誤りが生じていると判断する。
従ってこの場合このECC部7のデコーダ回路7Bは、値が全て「0」でなる反転消去状態パリティデータxDdp(1〜4)に基づいて、値が全て「0」でなる反転消去状態実データxDdr(1〜4)に対し誤り検出処理を実行するので、これら反転消去状態実データxDdr(1〜4)に誤りが生じていないと判断する。
この結果このECC部7のデコーダ回路7Bは、これら反転消去状態実データxDdr(1〜4)に対して誤り訂正処理を実行することなく、これら反転消去状態実データxDdr(1〜4)をそのまま第4のデータ反転回路14に対して供給する。このとき第4のデータ反転回路14は、デコーダ回路7Bから供給された反転消去状態実データxDdr(1〜4)をビット反転することにより、例えば図5(C)に示すように、値が全て「1」でなる消去状態実データDdr(1〜4)を生成し、これをページバッファ部6及びホストインターフェース部5を順次介して情報処理装置に対して供給する。かくして情報処理装置は、値が全て「1」でなる消去状態実データDdr(1〜4)を正常に受信することができる。
次に情報処理装置が、当該読み出した1ページ分の消去状態実データDdr(1〜4)のうちの一の消去状態実データDdr(1)を更新することにより、例えば図5(D)に示すような、1つの実データDrとその他3つの消去状態実データDdr(2〜4)とを、1ページとして半導体記憶装置1のメモリ部2に書き戻す場合を説明する。
第1のデータ反転回路11は、情報処理装置からホストインターフェース部5及びページバッファ部6を順次介して、例えば値「0」及び値「1」が混在する1つの実データDrと、値が全て「1」でなる3つの消去状態実データDdr(2〜4)とを、メモリ部2に書き戻すべき1ページ分のデータとして受信すると、当該受信した実データDrに対してビット反転処理を施すことにより、例えば図5(E)に示すような反転実データxDrを生成すると共に、当該受信した3つの消去状態実データDdr(2〜4)のそれぞれに対してビット反転処理を施すことにより、値が全て「0」でなる3つの反転消去状態実データxDdr(2〜4)を生成し、当該生成した反転実データxDr及び3つの反転消去状態実データxDdr(2〜4)を、ECC部7のエンコーダ回路7Aに対して供給する。
このときECC部7のエンコーダ回路7Aは、例えば図5(F)に示すように、第1のデータ反転回路11から供給された反転実データxDrに対応するパリティデータDp(1)を生成し、当該反転実データxDrと当該生成したパリティデータDp(1)とを第2のデータ反転回路12に対して供給する。またこのときECC部7のエンコーダ回路7Aは、第1のデータ反転回路11から供給された反転消去状態実データxDdr(2〜4)に対応するパリティデータとして、値が全て「0」でなるパリティデータDp(2〜4)をそれぞれ生成し、これら反転消去状態実データxDdr(2〜4)と当該生成したパリティデータDp(2〜4)とを第2のデータ反転回路12に対して供給する。
第2のデータ反転回路12は、エンコーダ回路7Aから供給された反転実データxDr及びこれに対応するパリティデータDp(1)に対してビット反転処理を施し、この結果得られた実データDr及び反転パリティデータxDp(1)(図5(G))を、タイミングジェネレータ部8を介してメモリ部2に対して供給する。
またこのとき第2のデータ反転回路12は、エンコーダ回路7Aから供給された反転消去状態実データxDdr(2〜4)と、これらに対応するパリティデータDp(2〜4)とに対してビット反転処理を施すことにより、例えば図5(G)に示すように、値が全て「1」でなる消去状態実データDdr(2〜4)と、値が全て「1」でなる反転パリティデータxDp(2〜4)とを生成し、これらをタイミングジェネレータ部8を介してメモリ部2に対して供給する。
かくしてメモリ部2は、第2のデータ反転回路12から供給された、実データDr及びこれに対応する反転パリティデータxDp(1)を、かかる消去処理済領域中の対応する部分に記憶する共に、値が全て「1」でなる3つの消去状態実データDdr(2〜4)及び値が全て「1」でなる3つの反転パリティデータxDp(2〜4)を、かかる消去処理済領域中の対応する部分に記憶する。
この結果この消去処理済領域において、情報処理装置の更新処理により実データDrが今回記憶された部分以外の、データが消去された状態を維持すべき部分(以下、これを消去状態維持部分と呼ぶ)には、全て値「1」を保持し続けさせることができる。
因みに、ページバッファ部6とECC部7のエンコーダ回路7Aとの間に第1のデータ反転回路11が存在せず、かつ、ECC部7のエンコーダ回路7Aとタイミングジェネレータ部8との間に第2のデータ反転回路12が存在しない場合に、情報処理装置側からメモリ部2に書き戻すべく、値が全て「1」でなる消去状態実データDdr(2〜4)がエンコーダ回路7Aに対して供給されると、このときこのエンコーダ回路7Aは、この消去状態実データDdr(2〜4)に対するパリティデータとして、値「0」が存在するパリティデータを生成してしまう。この結果このメモリ部2の消去処理済領域においては、情報処理装置の更新処理により実データDrが今回記憶される部分以外の消去状態維持部分にも、値「0」が書き込まれてしまうことになる。そしてこのように、データが消去された状態を維持すべき消去状態維持部分に対し値「0」が書き込まれてしまうと、これ以降この消去状態維持部分に対し何らかの実データを書き込む際、当該実データを正しく書き込めない可能性が高くなってしまう。しかしながらこの実施の形態の場合には、上述したように、この消去状態維持部分に対しては全て値「1」を保持させることができるので、このような問題が生じてしまうことを確実に回避することができる。
(3)動作及び効果
以上の構成においてこの半導体記憶装置1においては、メモリ部2における消去処理済領域に対してデータ読み出し処理を実行したために、値が全て「1」でなる消去状態実データDdr及び消去状態パリティデータDdpを読み出した場合でも、この消去状態実データDdr及び消去状態パリティデータDdpを第3のデータ反転回路13により反転することによりその値を全て「0」にしてから誤り検出処理を実行するようにしたことにより、この誤り検出処理において誤りが検出されてしまうことを回避することができる。
そしてこの半導体記憶装置1においては、当該誤り検出処理された後の値が全て「0」でなる反転消去状態実データxDdrを、第4のデータ反転回路14により反転することによりその値を全て「1」にしてから出力することができ、かくして当該出力されたデータ(消去状態実データDdr)を処理する情報処理装置側にこのデータが消去処理済領域から読み出されたものであることを確実に認識させることができる。
以上の構成によれば、メモリ部22における消去処理済領域に対してデータ読み出し処理を実行したために、値が全て「1」でなる消去状態実データDdr及び消去状態パリティデータDdpを読み出した場合でも、この消去状態実データDdr及び消去状態パリティデータDdpを対象とした誤り検出処理において誤りが検出されてしまうことを回避することができ、かくして消去処理済領域からもデータを正常に読み出し得る半導体記憶装置1を実現することができる。
(4)他の実施の形態
なお上述の実施の形態においては、ECC部7における誤り検出・訂正処理方式としてBCH符号方式を適用する場合について述べたが、本発明はこれに限らず、リードソロモン符号方式等を適用するようにしても良い。
また上述の実施の形態においては、NAND型フラッシュメモリを有する半導体記憶装置1を適用する場合について述べたが、本発明はこれに限らず、消去処理済領域における全てのデータ値が例えば「1」になるようなものであれば、この他種々の半導体メモリやその他記憶媒体を適用することができる。
本発明は、フラッシュメモリを有する半導体記憶装置等に利用することができる。
本実施の形態における半導体記憶装置の構成を示す略線図である。 コントローラ部の構成を示す略線図である。 コントローラ部の詳細構成を示す略線図である。 NAND型フラッシュメモリにおけるデータ書き込み処理の説明に供する略線図である。 データ遷移の説明に供する略線図である。 パリティデータ生成及び誤り検出処理の説明に供する略線図である。 NAND型フラッシュメモリにおけるデータ消去処理の説明に供する略線図である。 メモリトランジスタのデータ記憶状態の説明に供する略線図である。
符号の説明
1……半導体記憶装置、2……メモリ部、3……コントローラ部、7……ECC部、7A……エンコーダ回路、7B……デコーダ回路、11〜14……データ反転回路。

Claims (2)

  1. データと当該データの誤りを検出するための誤り検出データとを記憶する記憶手段と、上記記憶手段から読み出した上記データに対応する上記誤り検出データに基づいて当該読み出したデータに誤りがあるか否かを検出するための誤り検出処理を実行する誤り検出手段とを有する記憶装置であって、
    上記記憶手段から読み出した上記データ及び当該データに対応する上記誤り検出データを反転した後上記誤り検出手段に上記誤り検出処理させる第1のデータ反転手段と、
    上記誤り検出手段により上記誤り検出処理された後の上記データを反転した後出力する第2のデータ反転手段と
    を具えることを特徴とする記憶装置。
  2. 上記記憶手段に記憶させるデータに対応する上記誤り検出データを生成する誤り検出データ生成手段を有し、
    上記記憶手段に記憶させる上記データを反転した後上記誤り検出データ生成手段に当該データに対応する上記誤り検出データを生成させる第3のデータ反転手段と、
    上記第3のデータ反転手段により反転された上記データと当該データに対応するように生成した上記誤り検出データとを反転した後上記記憶手段に記憶させる第4のデータ反転手段と
    を具えることを特徴とする請求項1に記載の記憶装置。
JP2004275596A 2004-09-22 2004-09-22 記憶装置 Active JP4742553B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004275596A JP4742553B2 (ja) 2004-09-22 2004-09-22 記憶装置
US11/222,128 US7530005B2 (en) 2004-09-22 2005-09-08 Storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004275596A JP4742553B2 (ja) 2004-09-22 2004-09-22 記憶装置

Publications (2)

Publication Number Publication Date
JP2006092163A JP2006092163A (ja) 2006-04-06
JP4742553B2 true JP4742553B2 (ja) 2011-08-10

Family

ID=36144976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004275596A Active JP4742553B2 (ja) 2004-09-22 2004-09-22 記憶装置

Country Status (2)

Country Link
US (1) US7530005B2 (ja)
JP (1) JP4742553B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4901334B2 (ja) * 2006-06-30 2012-03-21 株式会社東芝 メモリコントローラ
JP2008077810A (ja) 2006-09-25 2008-04-03 Toshiba Corp 不揮発性半導体記憶装置
WO2010064312A1 (ja) * 2008-12-04 2010-06-10 富士通株式会社 記憶装置および故障診断方法
WO2010076835A1 (en) * 2008-12-31 2010-07-08 Christophe Laurent Error correction code for unidirectional memory
US11662941B2 (en) 2020-10-13 2023-05-30 Western Digital Technologies, Inc. System and method for mitigating effect of erase cells on adjacent cells

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4596014A (en) * 1984-02-21 1986-06-17 Foster Wheeler Energy Corporation I/O rack addressing error detection for process control
EP0339166B1 (en) * 1988-04-29 1993-07-07 International Business Machines Corporation Extended errors correcting device having single package error correcting and double package error detecting codes
JP3272903B2 (ja) * 1995-03-16 2002-04-08 株式会社東芝 誤り訂正検出回路と半導体記憶装置
JPH11154117A (ja) * 1997-11-21 1999-06-08 Nec Ic Microcomput Syst Ltd エラー訂正機能内蔵プログラマブルリードオンリーメモリ
WO1999032977A1 (fr) * 1997-12-22 1999-07-01 Tdk Corporation Systeme de memoire flash
JP2001092723A (ja) * 1999-09-21 2001-04-06 Hitachi Ltd Ecc制御回路及びそれを有するメモリシステム
JP2004234545A (ja) * 2003-01-31 2004-08-19 Toshiba Corp 制御回路及びメモリコントローラ
US7272773B2 (en) * 2003-04-17 2007-09-18 International Business Machines Corporation Cache directory array recovery mechanism to support special ECC stuck bit matrix
JP2005173860A (ja) * 2003-12-10 2005-06-30 Sony Corp データ記憶装置、および記憶データ処理方法、並びにコンピュータ・プログラム

Also Published As

Publication number Publication date
JP2006092163A (ja) 2006-04-06
US20060077583A1 (en) 2006-04-13
US7530005B2 (en) 2009-05-05

Similar Documents

Publication Publication Date Title
KR101750662B1 (ko) 데이터 에러 교정용 회로, 장치, 및 방법
US8214725B2 (en) Memory access system
JP2006079808A (ja) Nandフラッシュメモリ装置及びそれのコピーバックプログラム方法
US8347183B2 (en) Flash memory device using ECC algorithm and method of operating the same
JP2004234545A (ja) 制御回路及びメモリコントローラ
JP2009211209A (ja) 半導体記憶装置、その制御方法、および誤り訂正システム
JP2001351398A (ja) 記憶装置
JP2008009943A (ja) メモリコントローラ
JP2009301194A (ja) 半導体記憶装置の制御システム
US11487614B2 (en) Semiconductor storing apparatus and readout method
US7530005B2 (en) Storage device
KR20160110774A (ko) 메모리 장치 및 이를 포함하는 시스템
JP2004246754A (ja) 半導体記憶装置およびその制御装置
KR20080114208A (ko) 에러 정정 기능을 갖는 불휘발성 메모리 장치의 카피투프로그램방법
JP6941971B2 (ja) 半導体記憶装置、メモリコントローラ及びメモリの監視方法
JP2001092723A (ja) Ecc制御回路及びそれを有するメモリシステム
JP2003100095A (ja) 半導体集積回路装置
JP4692843B2 (ja) メモリコントローラ及びフラッシュメモリシステム、並びにフラッシュメモリの制御方法
KR100634432B1 (ko) 카피백 프로그램 동작 중에 에러를 검출하는 낸드 플래시메모리 장치 및 에러 검출 방법
JP2009238359A (ja) 誤り訂正機能確認回路及び誤り訂正機能確認方法とそのコンピュータプログラム、並びに記憶装置
KR100328818B1 (ko) 플래시 메모리의 데이타 저장방법
JP2009217875A (ja) メモリ装置、及び、その制御方法
JP4742561B2 (ja) 記憶装置、データ処理システムおよびメモリ制御方法
JP2010140132A (ja) メモリシステム及びメモリコントローラ
JP2001273198A (ja) データ書込装置及びデータ破壊検出装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070511

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100812

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101012

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: 20110412

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110425

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

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4742553

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20140520

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250