JP2011243249A - 不揮発性メモリ - Google Patents
不揮発性メモリ Download PDFInfo
- Publication number
- JP2011243249A JP2011243249A JP2010113488A JP2010113488A JP2011243249A JP 2011243249 A JP2011243249 A JP 2011243249A JP 2010113488 A JP2010113488 A JP 2010113488A JP 2010113488 A JP2010113488 A JP 2010113488A JP 2011243249 A JP2011243249 A JP 2011243249A
- Authority
- JP
- Japan
- Prior art keywords
- bit
- coordinate
- internal
- memory cell
- value
- 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.)
- Withdrawn
Links
Images
Landscapes
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
【課題】 占有面積の拡大を招くことなく、ライン故障が発生した場合でも格納したデータのエラー検出、エラー訂正を可能にした不揮発性メモリを実現する。
【解決手段】 メモリセルブロックMBと、複数のワード線から一のワード線を選択するワード線選択回路11と、複数のビット線から一のビット線を選択するビット線選択回路12と、外部から与えられる書き込み対象となる通常データに対し、誤り訂正符号を付して一連のECC付きデータを形成するECCデータ作成部2を備え、同一のECC付きデータ内の各ビットの書き込み先メモリセルが、行方向及び列方向に相互に異なる位置となるように決定される。
【選択図】 図1
【解決手段】 メモリセルブロックMBと、複数のワード線から一のワード線を選択するワード線選択回路11と、複数のビット線から一のビット線を選択するビット線選択回路12と、外部から与えられる書き込み対象となる通常データに対し、誤り訂正符号を付して一連のECC付きデータを形成するECCデータ作成部2を備え、同一のECC付きデータ内の各ビットの書き込み先メモリセルが、行方向及び列方向に相互に異なる位置となるように決定される。
【選択図】 図1
Description
本発明は、誤り訂正符号(Error Correctiong Code:以下「ECC」と表記)を使用してデータの訂正或いは検出を行う不揮発性メモリに関する。
近年、LSIの微細加工技術、メモリセルを縦方向に積層する3次元加工技術、更には一のメモリセルに2bit以上のデータを格納できる多値技術等の発展により、一のメモリチップでギガビットのデータを格納できる大容量の不揮発性メモリが実現している。このような大容量メモリは、SSD(Solid State Drive)や小型のメモリーカードに応用され、ストレージデバイスの代表であるハードディスクを置き換えるまでになっている。
また、不揮発性メモリの製造に使われるプロセスは、通常のロジックLSI製造に使われるCMOSプロセスと互換性が高いため、これらの不揮発性メモリはCPUやコントローラなどのロジックLSIの内蔵メモリ用途としても利用されている。これらの用途として利用される不揮発性メモリは、比較的小容量(数百ビットから数キロビット)であることが多い。
不揮発性メモリは、電気的にデータ書き換えが可能であり、CPU中のマイクロコード格納、システム機器のコードプログラム格納、或いはチップ自身やシステム機器のIDデータ格納などの用途として用いることができる。更には、LSI製造後にそれぞれのチップ個別に回路特性を調整するための特性補正データを格納するトリミング素子としても利用されている。
ところで、不揮発性メモリには、メモリセルの構造上特有の故障モードが存在する。かかる故障が生じると、格納したデータ内容が変化してしまい、システム機器の動作に重大な影響を及ぼしてしまう。
この問題に対する対策の一つとして、通常の入力データと共にエラー検出及び訂正のための誤り訂正符号についても併せて格納することが一般的に知られている。誤り訂正符号を格納しておけば、故障モードにより通常のデータ内容が変化してしまっても、データ内容の変化を検出したり(エラー検出)、変化したデータを正常なデータに訂正する(エラー訂正)ことが可能となる。つまり、不揮発性メモリのデータ内容が変化してもシステム機器に影響を及ぼすことがない。
しかしながら、そのエラー訂正やエラー検出能力には限界がある。例えば、図6に示すように8ビットの入力データA(N)に5ビットの誤り訂正符号A(E)を付加し、一連のデータ(ECC付きデータ)Aとして計13ビットのデータを書き込む場合を想定する。このデータを書き込むに際してエラーが発生した場合、その13ビットのデータのうち1ビットのエラーであればエラー訂正が可能であり、2ビットまでのエラーであればエラー検出が可能である。しかし、3ビット以上のエラーであれば、もはや検出も訂正もできなくなってしまう。
すなわち、一連のECC付きデータの各ビットが格納されている複数のメモリセルで同時にエラーが生じた場合は、ECC付きデータを用いても(入力データに誤り訂正符号を付しても)データエラーを解決できない。
ところで、複数の不揮発性メモリがアレイ状に配置されたメモリセルブロックにおいては、例えば図7に示すように、複数のメモリセルブロック(MB1〜MB4)に物理的に分割され、データ書き込み/読み出しなどの各制御回路が各メモリセルブロック別に備えられていることが多い。
また、一のメモリセルブロック内では、複数のワード線と複数のビット線が格子状に配置され、ワード線とビット線の交点にメモリセルが形成される。つまり、各メモリセルは2次元のマトリクス状に配置され、行方向に並んだメモリセルは同一のワード線に接続し、列方向に並んだメモリセルは同一のビット線に接続する。図8に、一般的なメモリセルブロックMBの内部構成図を示す。m本のビット線(BL1,BL2,……,BLm)とn本のワード線(WL1,WL2,……,WLn)を有し、それぞれの交点に一のメモリセルが形成される。すなわち、メモリセルブロックには合計m×n個のメモリセルが存在する。
このように構成されるメモリセルブロックを有する不揮発性メモリにおいては、読み出し/書き込み制御回路に故障が発生した場合、その回路が制御するメモリセルブロック内で多数のデータエラーが同時に発生する(ブロック故障)。また、ワード線やビット線に故障が発生した場合には、そのワード線やビット線に接続されたメモリセルで多数のデータエラーが同時に発生する(ライン故障)。
図6に示したECC付きデータA内の各ビットは、同じメモリセルブロック内において、同一のワード線に接続された各メモリセルに格納される。このため、ブロック故障やライン故障が発生した場合、同一のECC付きデータ内で同時に多数のデータエラーが発生してしまう。このとき、ECCの制約のためエラー訂正やエラー検出ができなくなる。
このような問題を解決するために、ECC付きデータの各ビットをぞれぞれ別のメモリセルブロックに記録する技術が下記特許文献1に開示されている。
特許文献1の技術を用いれば、あるメモリセルブロックでブロック故障が発生しても一のデータ群内でその故障ブロックに含まれているデータは1ビットのみであるので、エラー訂正やエラー検出が可能である。
しかしながら、特許文献1の技術は、大容量メモリに対しては適用できるものの、比較的小容量のメモリに対しては適用が困難である。すなわち、大容量のメモリであればメモリセルを複数の物理的に分離されたメモリセルブロックに分割することが可能であるが、トリミング素子向けなどの比較的小容量のメモリでは、回路面積増大を避けるためひとつのメモリセルブロックしかない場合が多くこの技術が利用できない。
更に、特許文献1の技術では、ブロック故障には対応できてもライン故障には対応できない。
ライン故障対策として、メモリセルブロックの外周にダミーのワード線やビット線を用意する技術が一般的に存在する。LSI製造時のフォトアライメント工程の精度悪さに起因して外周部のワード線やビット線の特性がバラつき、外周部のワード線やビット線でライン故障が発生することが多いことが知られている。そこで、外周部のワード線やビット線に接続されているメモリセルについては実際には使用せずダミーとし、特性が安定している内部のメモリセルのみを使用するという技術である。しかしながら、ダミーのワード線やビット線を用意するとメモリセルブロックの回路面積が増えるためLSIが大きくなり、製造コストの増大につながるという欠点がある。
本発明は、上記の問題点に鑑み、ECCによりエラー訂正やエラー検出が可能な不揮発性メモリにおいて、メモリセルブロック上にライン故障が発生した場合でも、同一のECC付きデータ内において複数のビットが一時にデータエラーとなるのを抑制し、エラー訂正やエラー検出を可能とすることを目的とする。
上記目的を達成するため、本発明の不揮発性メモリは、書き込み対象となる入力データに誤り訂正符号を付して作成された一連のECC付きデータを構成する各ビットの書き込み先メモリセルを、行方向及び列方向に相互に異ならせた点に特徴を有する。なお、各メモリセルは、2次元のXY平面上にマトリクス状に配置されており、内部X座標が同一の複数のメモリセルは同一のビット線に接続し、内部Y座標が同一の複数のメモリセルは同一のワード線に接続する構成である。
このように構成した場合、ワード線やビット線にライン故障が生じた場合であっても、同一のECC付きデータを構成する各ビットは、それぞれが異なるワード線並びにビット線上のメモリセルに格納されているため、同時に複数ビットのデータエラーが生じることが防止される。よって、ECC付きデータを読み出すことでデータエラーの検出が可能となり、更にはこのECC付きデータに基づいて正しい入力データを復元することが可能となる。
同一のECC付きデータを構成する各ビットの書き込み先メモリセルを、行方向及び列方向に相互に異ならせるためには、種々の方法が想定される。
一の方法としては、不揮発性メモリ内に前記入力データのメモリセルブロック内での書き込み先を示すアドレス情報が外部から入力されるアドレスデコード部を備えておき、このアドレスデコード部が、前記アドレス情報に基づいて、ECC付きデータの先頭ビットの書き込み先メモリセルの内部Y座標(これを「先頭ビット用内部Y座標」と呼ぶ)を前記ワード線選択回路に与える。ワード線選択回路は、前記先頭ビット用内部Y座標によって特定されるワード線を選択した後、各ビットの書き込み或いは読み出しのタイミングに応じて選択ワード線を所定の規則の下で順次切り替える。一方、ビット線選択回路は、既定の一のビット線を選択した後、ワード線の切り替えと同タイミングで選択ビット線を同一方向に1ラインずつシフトさせる。
書き込み時において、指定されたアドレス情報に基づいて、まず一のワード線を選択するという動作は従来の動作と同じである。そして、従来であれば、同一のECC付きデータの書き込み時において選択ワード線を固定したまま、各ビットの情報に応じた電圧を各ビット線に印加することで、選択ワード線に接続した各メモリセルに各ビット情報を書き込む構成であった。
これに対し、上記構成の場合、一連のデータを構成する各ビットを異なるビット線上のメモリセルに書き込むという点については同じであるが、各ビットを各メモリセルに書き込むタイミングをビット毎にずらし、各ビット毎の書き込みタイミングに応じて選択ワード線も1ずつシフトさせる点が異なる。これにより、同一のECC付きデータの各ビットは、行方向及び列方向に相互に異なる複数のメモリセルに分散して書き込まれる。
そして、このように各ビットが分散して書き込まれたECC付きデータを読み出す場合においても、書き込み時と同様の処理を行う。つまり、先頭ビットが書き込まれているメモリセルが接続しているワード線及びビット線を選択した後、ビット毎の読み出しタイミングに応じて選択ワード線及び選択ビット線を順次切り換える。上記構成の場合には、先頭ビットに対応したビット線は既定のビット線としているため、少なくとも外部アドレス情報によって先頭ビット用内部Y座標を指定すれば良い。
なお、各ビットが格納されるメモリセルの位置(内部Y座標)を、必ずしも1ずつずらす必要はなく、2以上の間隔でずらしても良い。
更に、ECC付きデータの先頭ビットの書き込み先メモリセルの内部Y座標のみならず、内部X座標(これを「先頭ビット用内部X座標」と呼ぶ)についても外部アドレス情報に基づいて決定する構成としても良い。このとき、先頭ビット以後の各ビットの書き込み先メモリセルを、直前ビットの書き込み先メモリセルの座標(内部X座標、内部Y座標)に所定数を加算或いは減算して得られる座標によって決定する。
この方法によっても、同一のECC付きデータの各ビットを行及び列方向に相互に異なるメモリセルに分散して格納できる。なお、直前ビットの書き込み先メモリセルの座標に所定数を加算して対象ビットの書き込み先メモリセルの座標を決定する場合に、加算結果が内部座標として採り得る最大値を超えると、採り得る座標の最小値と最大値の幅を当該加算結果から差し引いた値をもって書き込み先メモリセルの座標値として決定すれば良い。逆に、直前ビットの書き込み先メモリセルの座標に所定数を減算して対象ビットの書き込み先メモリセルの座標を決定する場合に、減算結果が内部座標として採り得る値の最小値を下回った場合には、採り得る座標の最小値と最大値の幅を当該減算結果に加えた値をもって書き込み先メモリセルの座標値として決定すれば良い。
ここで、採り得る座標の最小値と最大値の幅とは、内部X座標であれば最大ビット幅に対応し、内部Y座標であれば最大ワード長に対応する。
また、別の方法としては、予め内部X座標、内部Y座標共に採り得る座標値を各一回ずつ出現させて作成した円順列に従って、直前ビットの内部座標から対象ビットの内部座標を決定する方法も利用可能である。先頭ビットについては、与えられた外部アドレス情報に基づいて書き込み先メモリセルの内部座標を決定する。2番目以後のビットの書き込み先メモリセルについては、円順列に記載された順序に従い、直前ビットの書き込み先メモリセルの内部座標の次の値を内部座標として決定する。
本発明の構成によれば、同一の通常データに誤り訂正符号が付された一連のECC付きデータは、行及び列位置が相互に異なる複数のメモリセルに分散して格納されるため、メモリセルブロックを分割したり、ダミーのワード線やビット線を設けることなく、ライン故障対応が可能となる。
よって、本発明の不揮発性メモリをトリミング素子のトリミングデータ記憶用素子として用いることで、トリミング素子の占有面積を縮小化することができる。
図1に、本発明の不揮発性メモリの概念的ブロック図を示す。本発明の不揮発性メモリ1は、メモリセルブロックMBと、ECCデータ作成部2,データ書き込み回路3,データ読み出し回路4,エラー訂正部5,及びアドレスデコード部6を備える。
メモリセルブロックMBは、複数のメモリセルが2次元のマトリクス状に配列されている。各メモリセルは1本のワード線と1本のビット線に接続され、同一行のメモリセルは同一のワード線に、同一列のメモリセルは同一のビット線に接続されている。
図1では、m本のビット線BL1,BL2,……,BLmと、n本のワード線WL1,WL2,……,WLnを有し、各ビット線と各ワード線が交差する箇所にそれぞれメモリセル(M1,1,……,Mn,m)が配置されている。以下では、各ビット線を代表して「ビット線BL」,各ワード線を代表して「ワード線WL」と総称する。また、図1のように、第i列第j行のメモリセルを符号Mi,jで規定し、メモリセルブロックMB内の座標を(i,j)と表わす。i,jをそれぞれ内部X座標、内部Y座標と称する。
メモリセルブロックMB内には、各ワード線WLの選択/非選択を決定するワード線選択回路11,各ビット線BLの選択/非選択を決定するビット線選択回路12が設けられている。
外部から入力されるデータ(入力データ)は複数ビットで構成され、ECCデータ作成部2においてこれに複数ビットの誤り訂正符号(ECC)が付されることで、ECC付きデータが作成される。データ書き込み回路3は、ワード線選択回路11によって選択されたワード線、及びビット線選択回路12によって選択されたビット線の双方に接続するメモリセルに対して、このECC付きデータの書き込みを行う。上述した図6の例であれば、8ビットの一連の入力データA(N)に対して5ビットの一連の誤り訂正符号A(E)が付されることで、13ビットからなるECC付きデータAを、ビット毎に各メモリセルに書き込むこととなる。
読み出し時には、読み出し対象データが格納されているメモリセルを選択した後、選択されたメモリセルのデータをデータ読み出し回路4によって読み出す。このとき、読み出したデータをいったんエラー訂正部5へ送り、エラーがなければそのまま読み出されたデータを出力する。一方、エラーが検出されれば、エラー訂正部5においてデータの訂正が施され、訂正後のデータが出力される。
ワード線選択回路11は、外部からアドレスデコード部6に入力されたアドレス値に基づいて、書き込み先(読み出し先)メモリセルの内部X座標を認識し、1本のワード線(ここでは一例として「ワード線WL1」とする)を選択する。
従来構成の場合、一のECC付きデータは同一のワード線上のメモリセルに格納される。つまり、ワード線選択回路11によってワード線WL1が選択された状態で、各ビット線BLに対してECC付きデータの各ビットが示す情報に応じた電圧が与えられる。これにより、ワード線WL1上の各メモリセルには、一連のECC付きデータの各ビット別の情報がほぼ一時に書き込まれる。
そして、次に別の入力データを書き込む場合には、選択ワード線を異ならせて同様の処理を行う。これにより、図2のような書き込み状態となる。図2では、ワード線WL1上にECC付きデータ「A」,WL2上にECC付きデータ「B」、WL3上にECC付きデータ「C」がそれぞれ格納された場合を示している。
なお、図2では、説明の簡単のために一のメモリセルブロックMB内において列アドレスを同一とし、複数の列アドレスを想定していない。つまり、同一行のメモリセルには一のECC付きデータが格納される場合を想定している。例えば、列アドレスとして複数設定される場合には、同一のワード線上において、各列アドレス毎にそれぞれ異なるECC付きデータの格納が可能となる。
前述したように、従来の書き込み方法による場合、ワード線WLにライン故障が発生すると、当該ワード線に接続されたメモリセルの多くが書き込み不良となってしまう。例えば、図2においてワード線WL1にライン故障が発生した場合、誤り検査符号A(E1)〜A(E5)のうちの複数ビットにエラーが生じることが想定される。この場合、ECCの制約により、ECCデータに基づいて通常データA(N)を正しいデータに復帰させることができなくなってしまう。
これに対し、本発明の不揮発性メモリは、同一のECC付きデータ内の各ビットを、行及び列方向に相互に異なる複数のメモリセルに分散して書き込む点に特徴を有する。
図3は、本発明の不揮発性メモリにおけるデータ格納の状態の一例を示す概念図である。図3の例では、同一のECC付きデータの各ビットが、対角線と平行な方向に位置する各メモリセルに格納されている。このようにデータを格納した場合、同一のECC付きデータの各ビットは、同一のワード線WL上或いは同一のビット線BL上の複数のメモリセルに書き込まれない。これにより、仮にライン故障が発生しても、同一のデータ群内で2ビット以上のECCデータにエラーが生じることがないため、正しく書き込まれたECCデータに基づいて入力データを復元することができる。
以下では、図3に示すようにメモリセルブロックMBには13×13のメモリセルが配置されているものとして説明する。
図3の例では、ECC付きデータAの一のビットであるA(N1)をメモリセルM1,1、A(N2)をメモリセルM2,2、というように選択ビット線BLと選択ワード線WLの双方を1ずつずらしながら選択メモリセルを変更して書き込みを行い、最後のビットA(E5)をメモリセルMm,nに書き込むことでECC付きデータAの書き込みを完了する。この場合、ECC付きデータAの各ビットは、行及び列方向に相互に異なる位置に存する複数のメモリセル、すなわち内部X座標と内部Y座標が相互に異なる複数のメモリセルに分散して書き込まれる。
アドレスデコード部6は、外部より入力されたアドレス情報に基づき、ECC付きデータAの先頭ビットA(N1)の書き込み先メモリセルの内部Y座標の情報(ここではY=1)をワード線選択回路11に与える。ワード線選択回路11は、この情報に基づき、Y=1に対応するワード線WL1を選択する。
一方、ビット線選択回路12は、先頭ビットが書き込まれるメモリセルが接続するビット線(ここではBL1)を選択する。図3の例では、各ECC付きデータの先頭ビットがいずれも、内部X座標=1のメモリセル(ビット線BL1に接続するメモリセル)に書き込まれるものとした。
このとき、データ書き込み回路3からビット線BL1に対して先頭ビットA(N1)の値に応じた電圧が印加され、当該情報がメモリセルM1,1に書き込まれる。
先頭ビットの書き込みが完了すると、選択ワード線及び選択ビット線をそれぞれ1本ずつシフトさせる。ここでは、X及びY座標をそれぞれ1ずつ加えるものとし、内部Y座標=2のワード線WL2、内部X座標=2のビット線BL2を選択する。そして、データ書き込み回路3がビットA(N2)の値に応じた電圧をビット線BL2に与えることで、当該情報がメモリセルM2,2に書き込まれる。以下、同様に選択ワード線と選択ビット線を順次シフトしながら書き込み電圧を印加し、メモリセルM13,13に最後のビットA(E5)が書き込まれるとECC付きデータAの書き込みが完了する。
ECC付きデータBを書き込む場合においても、先頭ビットの書き込み先メモリセルの内部Y座標が異なるのみで、他はECC付きデータAの場合と同様である。すなわち、ワード線選択回路11は、アドレスデコード部6からの情報に基づいて、ワード線WL2を選択する。そして、ビット線選択回路12は、既定の初期ビット線BL1を選択する。そして、データ書き込み回路3からビット線BL1に対して先頭ビットB(N1)に対応した電圧を印加し、メモリセルM1,2にビットB(N1)の情報を書き込む。以下、選択ワード線及び選択ビット線の双方を1ずつずらしながら、同様に各ビットに対応した電圧を印加する。
そして、内部Y座標値が最大値まで到達した場合(Y=13)において、まだ書き込むべきデータが残っている場合には、ワード線選択回路11は、内部Y座標が最小値Y=1で表わされるワード線WL1を選択する。すなわち、ビットB(E4)がメモリセルM12,13に書き込まれた後、最後のデータであるビットB(E5)はメモリセルM13,1に書き込まれる。
以下、同じような規則に従って、各ECC付きデータ内の各ビットが各メモリセルに書き込まれる。
読み出し動作も、書き込み時と同じ規則によって行う。つまり、アドレスデコード部6は、外部から読み出すべきECC付きデータのアドレス情報が与えられると、このECC付きデータの先頭ビットが格納されているメモリセルの内部Y座標に関する情報をワード線選択回路11に与え、ワード線選択回路11は指定されたワード線を選択する。ビット線選択回路12は、既定の初期ビット線BL1を選択する。そして、データ読み出し回路4が読み出し電圧を与え、選択メモリセルの情報を読み出す。以後、ワード線選択回路11は選択ワード線を1ラインシフトし、ビット線選択回路12は選択ビット線を1ラインシフトして、同様に読み出し電圧を印加する動作を繰り返す。
ECC付きデータの各ビットの読み出し途中において、選択メモリセルの内部Y座標が最大値まで到達した場合は次の読み出し先として内部Y座標を最小値とする。データ読み出し回路4は、内部にバッファを備えておき、最終ビットが読み出されるまでこのバッファに情報を一時的に保持するものとして良い。そして、ECC付きデータの最終ビットが読み出されると、一連のECC付きデータとしてエラー訂正部5に与えられてエラー検出がされる。エラーが存在していれば、ECC付きデータ内の誤り検出符号(ECC)に基づいて入力データのエラー訂正が施された後、外部に出力される。
以上説明したように、本発明の特徴は、同一のECC付きデータ内の各ビットを、同一列及び同一行のメモリセルに書き込まないようにすることで、ライン故障が生じても複数の誤り検出符号(ECC)がエラーになるのを防止し、これによってデータ復元を可能にした点にある。従って、かかる点を満足していれば、各データの書き込み先を決定するに際して図3に示す方法に限定されるものではない。
例えば、初期のビット線をBL13に固定し、内部X座標を順次1ずつ減少させていく構成としても良い。また、選択ビット線を2ライン以上の複数ラインずつシフトさせるものとしても良く、更には、選択ワード線についても、内部Y座標が減少する方向にシフトさせても良いし、複数ラインずつシフトさせても良い。図4に一例を示す。
図4の場合、初期のビット線がBL13に固定される。そして、先頭ビットの書き込み先メモリセルの内部Y座標に基づいてワード線選択回路11によってワード線が選択され、選択されたメモリセルに先頭ビットが書き込まれる。以後のビットについては、内部X座標を−1,内部Y座標を−3だけ移動させたメモリセルを書き込み先として選択する。つまり、ワード線選択回路11は、選択ワード線を3本とばしで図面上方向にシフトさせ、ビット線選択回路12は、選択ビット線を図面左方向に1本シフトさせる。
なお、直前ビットの書き込み先メモリセルの内部Y座標から3を差し引いた演算結果が、内部Y座標として採り得る最小値(ここでは1)を下回った場合には、内部Y座標の最小値と最大値の幅(ここでは13)を、前記演算結果に加えた値をもって書き込み先メモリセルの内部Y座標とする。内部Y座標の最小値と最大値の幅は、最大ワード数に相当する。
ECC付きデータAの場合、先頭ビットの書き込み先メモリセルの内部Y座標としてY=13が指定され、ワード線選択回路11によってワード線WL13が選択される。ビット線選択回路12は、初期のビット線BL13を選択し、これによってメモリセルM13,13が選択され、先頭ビットA(N1)が当該メモリセルに書き込まれる。次のビットA(N2)は、直前ビットの書き込み先メモリセルの座標(13,13)から内部X座標を−1,内部Y座標を−3だけシフトした位置におけるメモリセルM12,10に書き込まれる。以下、同様の規則に従い、A(N3)はM11,7に、A(N4)はM10,4に、A(N5)はM9,1にそれぞれ書き込まれる。
A(N6)については、直前のビットA(N5)の書き込み先のメモリセル座標が(9,1)であるため、同様のシフト演算を行えば(8,-2)となって、内部Y座標が最小値である1を下回る。よって、内部Y座標は、この演算結果−2に内部Y座標の幅13を加算した値である11とする。つまり、書き込み先アドレスが(8,11)と決定され、A(N6)はM8,11に書き込まれる。
以下、同様の方法により書き込み先メモリセルの座標が決定され、この座標によって特定されるメモリセルに各ビットが書き込まれる。この方法による場合でも、図4に示すように、ECC付きデータAの各ビットは、行及び列位置が相互に異なる複数のメモリセルに分散して書き込まれており、ライン故障が生じた場合でも復元が可能となる。他のECC付きデータについても同様である。
以上説明した方法は、いずれも各ECC付きデータの先頭ビットが同一のビット線上に書き込まれる構成であり、選択ビット線のシフト方法もECC付きデータによらず共通であった。このため、アドレスデコード部6は、ワード線選択回路11に対して先頭ビットの書き込み先メモリセルの内部Y座標に関する情報のみを与えればよく、制御内容が比較的簡素化できるというメリットを有していた。
これに対し、以下で説明するように、先頭ビットの書き込み先メモリセルの内部Y座標と共に内部X座標についてもアドレスデコード部6によって指定される構成とすることもできる。この場合、制御内容は図3や図4の構成よりは多少複雑化するが、ライン故障が生じた場合においてもデータ復元が可能になるという本発明の効果は実現できる。
図5は、アドレスデコード部6から、ワード線選択回路11に対して先頭ビットの内部Y座標に関する情報が、ビット線選択回路12に対して内部X座標に関する情報がそれぞれ与えられる。両選択回路11及び12は、指定された座標情報に基づいてワード線及びビット線を選択する。そして、特定された選択メモリセルに対して先頭ビットに対応した情報が書き込まれる。
2番目以後のビットについては、書き込み先メモリセルの内部X座標及び内部Y座標を共に、予め定められた規則に基づいて変化させる。ここでは、内部X座標については2ずつ減少させ、内部Y座標については「13→1→12→2→11→3→10→4→9→5→8→7→6」という規則に従って変化させる。また、先頭ビットの書き込み先メモリセルの内部Y座標として指定された値に応じて規則の開始ポイントが変化する。
例えば、先頭ビットの書き込み先メモリセルの内部座標として(13,13)が指定されたECC付きデータAの場合、先頭の内部Y座標が13であるため、内部Y座標については前掲の順にシフトされる。なお、内部X座標については、13→11→9→……と2ずつ減ぜられ、1に到達した後は2が減じされるともはや最小値を下回るため(−1)、これに内部X座標幅(これは最大ビット長にも対応する)である13が加算されて内部X座標が12となる。以後、再び2ずつ減ぜられる。
先頭ビットの書き込み先として(9,11)が指定されたECC付きデータBの場合、内部Y座標については、前掲の規則を「11」から開始し、11→3→10→4→9→5→8→7→6→13→1→12→2と推移させる。なお、内部X座標は9→7→5→3→1→12→10→8→6→4→2→13→11と推移する。
先頭ビットの書き込み先として(3,5)が指定されたECC付きデータCについても、同様の方法で書き込み先メモリセルの座標が決定される。内部Y座標は、5→8→7→6→13→1→12→2→11→3→10→4→9と推移し、内部X座標は、3→1→12→10→8→6→4→2→13→11→9→7→5と推移する。
この方法によっても、同一データ群に属する各データは、相互に行及び列が異なる複数のメモリセルに分散して書き込まれる。
図5の方法を一般的に記載すると、以下のように表わすことができる。すなわち、m列n行のメモリセルをマトリクス状に配置されたメモリセルブロックにおいて、内部X座標につき予め1からmまでの数列を任意の規則の下で並べ替えた第1円順列(内部X座標決定用円順列)、内部Y座標につき予め1からnまでの数列を任意の規則の下で並べ替えた第2円順列(内部Y座標決定用円順列)をそれぞれ用意しておく。ここでいう円順列とは、数列を循環的に並べた概念であり、初期値が与えられるまでの間は順列の開始値と終了値が確定しないものを指す。これらの円順列については、アドレスデコード部6内に記憶させるものとしても良いし、第1円順列をビット線選択回路12内に、第2円順列をワード線選択回路11内に記憶させるものとしても良い。
そして、指定された先頭ビットの書き込み先メモリセルの内部X座標を第1円順列の初期値とし、同メモリセルの内部Y座標を第2円順列の初期値として、以後のデータを、この第1円順列の順序で規定される内部X座標と、第2円順列の順序で規定される内部Y座標によって確定されるメモリセルに書き込みを行う。この方法によれば、同一データ群に属する各データは、相互に行及び列が異なる複数のメモリセルに分散して書き込まれる。読み出し時も全く同様とする。
無論、所定の数だけアドレス値をシフトさせる方法(例えば図5の場合の内部X座標の決定方法)による場合には、かかるシフト演算を行ってアドレス値を特定すれば良いため、必ずしも上記のような円順列形態で記憶しておく必要はない。
以下、別実施形態を説明する。
上記の実施形態では、アドレスデコード部6に対して同一のECC付きデータの先頭ビットの書き込み先メモリセルの座標情報が外部から与えられる構成としたが、各ビット毎の書き込み先メモリセルに関する情報が逐次外部から与えられる構成としても良い。この場合は、同一のECC付きデータについて、行及び列方向に相互に異なるように指定された書き込み先アドレスが逐次外部から与えられる。
上記の実施形態では、通常データを8ビット、ECCデータを5ビットとして説明したが、このビット数はあくまで一例である。また、ワード線選択回路11が各ワード線WLを、ビット線選択回路12が各ビット線BLを選択するものとしたが、両デコーダを入れ替えても構わない。
また、図2〜図5の説明では、ビット線の数をECC付きデータの最大ビット数に一致させているが、ECC付きデータの最大ビット数よりもビット線の数を多くしても良い。更に言えば、ビット線の数をECC付きデータの最大ビット数の2倍以上とし、列アドレス単位で上記制御を実行するものとしても良い。
例えば、ビット線がBL1〜BL26まで存在するとし、ビット線BL1〜BL13を列アドレスX1,BL14〜BL26を列アドレスX2とする。そして、アドレスデコード部6は、外部から入力されるアドレス情報により、先頭ビットの書き込み先メモリセルの内部Y座標と共に、列アドレスに関する情報(X1かX2か)も認識する。そして、ビット線選択回路12は、一のECC付きデータの書き込み/読み出しが完了するまで、指定された列アドレスに属するビット線についてのみ上記と同様の規則に従ってビット線の選択制御を行う。これにより、図2〜図5の構成よりも多くの情報を格納することができる。
1: 本発明の不揮発性メモリ
2: ECCデータ作成部
3: データ書き込み回路
4: データ読み出し回路
5: エラー訂正部
6: アドレスデコード部
11: ワード線選択回路
12: ビット線選択回路
BL1,BL2,……,BLm: ビット線
MB: メモリセルブロック
WL1,WL2,……,WLn: ワード線
2: ECCデータ作成部
3: データ書き込み回路
4: データ読み出し回路
5: エラー訂正部
6: アドレスデコード部
11: ワード線選択回路
12: ビット線選択回路
BL1,BL2,……,BLm: ビット線
MB: メモリセルブロック
WL1,WL2,……,WLn: ワード線
Claims (10)
- 2次元のXY平面上にマトリクス状に配置された複数のメモリセルと、X方向に延伸する複数のワード線及びY方向に延伸する複数のビット線とを有し、内部X座標が同一の複数のメモリセルは同一のビット線に接続し、内部Y座標が同一の複数のメモリセルは同一のワード線に接続する構成であるメモリセルブロックと、
各ワード線への電圧印加制御を行うことで、前記複数のワード線から一のワード線を選択するワード線選択回路と、
各ビット線への電圧印加制御を行うことで、前記複数のビット線から一のビット線を選択するビット線選択回路と、
外部から与えられる複数ビットの入力データに対し、複数ビットの誤り訂正符号を付して複数ビットからなる一連のECC付きデータを形成するECCデータ作成部と、を備え、
同一の前記ECC付きデータを構成する各ビットの書き込み先メモリセルを行方向及び列方向に相互に異ならせたことを特徴とする不揮発性メモリ。 - 前記入力データの前記メモリセルブロック内での書き込み先を示すアドレス情報が外部から入力されるアドレスデコード部を備え、
前記アドレスデコード部は、前記アドレス情報に基づいて、前記ECC付きデータの先頭ビットの書き込み先メモリセルの前記内部Y座標である先頭ビット用内部Y座標を前記ワード線選択回路に与え、
前記ビット線選択回路は、既定の一のビット線を選択した後、各ビットの書き込み或いは読み出しのタイミングに応じて選択ビット線を同一方向に1ラインずつシフトさせ、
前記ワード線選択回路は、前記先頭ビット用内部Y座標によって特定されるワード線を選択した後、前記タイミングに応じて選択ワード線を所定の規則の下で順次切り替えることを特徴とする請求項1に記載の不揮発性メモリ。 - 前記ワード線選択回路が、前記先頭ビット用内部Y座標によって特定されるワード線を選択した後、前記タイミングに応じて前記選択ワード線を同一方向に1ラインずつシフトさせることを特徴とする請求項2に記載の不揮発性メモリ。
- 前記入力データの前記メモリセルブロック内での書き込み先を示すアドレス情報が外部から入力されるアドレスデコード部を備え、
前記アドレスデコード部は、前記アドレス情報に基づいて前記ECC付きデータの先頭ビットの書き込み先メモリセルの前記内部Y座標である先頭ビット用内部Y座標を前記ワード線選択回路に、前記先頭ビットの書き込み先メモリセルの前記内部X座標である先頭ビット用内部X座標を前記ビット線選択回路に夫々与え、
前記ビット線選択回路は、前記先頭ビット用内部X座標によって特定されるビット線を選択した後、各ビットの書き込み或いは読み出しのタイミングに応じて選択ビット線を所定の規則の下で順次切り換え、
前記ワード線選択回路は、前記先頭ビット用内部Y座標によって規定されるワード線を選択した後、前記タイミングに応じて選択ワード線を所定の規則の下で順次切り替えることを特徴とする請求項1に記載の不揮発性メモリ - 前記ビット線選択回路は、直前のビットに係る書き込み先メモリセルの前記内部X座標の値に正の所定数を増加した値が、前記メモリセルブロック内で採り得る前記内部X座標の最大値以下であれば当該演算結果によって、最大値を超えれば採り得る前記内部X座標の最小値と最大値の幅で規定される最大ビット幅を当該演算結果から差し引いた値によって特定されるビット線を選択し、
前記ワード線選択回路は、直前のビットに係る書き込み先メモリセルの前記内部Y座標の値に正の所定数を増加した値が、前記メモリセルブロック内で採り得る前記内部Y座標の最大値以下であれば当該演算結果によって、最大値を超えれば採り得る前記内部Y座標の最小値と最大値の幅で規定される最大ワード数を当該演算結果から差し引いた値によって特定されるワード線を選択することを特徴とする請求項4に記載の不揮発性メモリ。 - 前記ビット線選択回路は、直前のビットに係る書き込み先メモリセルの前記内部X座標の値に正の所定数を減算した値が、前記メモリセルブロック内で採り得る前記内部X座標の最小値以上であれば当該演算結果によって、最小値を下回れば採り得る前記内部X座標の最小値と最大値の幅で規定される最大ビット幅を当該演算結果に加算した値によって特定されるビット線を選択し、
前記ワード線選択回路は、直前のビットに係る書き込み先メモリセルの前記内部Y座標の値に正の所定数を減算した値が、前記メモリセルブロック内で採り得る前記内部Y座標の最小値以上であれば当該演算結果によって、最小値を下回れば採り得る前記内部Y座標の最小値と最大値の幅で規定される最大ワード数を当該演算結果に加算した値によって特定されるワード線を選択することを特徴とする請求項4に記載の不揮発性メモリ。 - 前記ビット線選択回路は、直前のビットに係る書き込み先メモリセルの前記内部X座標の値に正の所定数を増加した値が、前記メモリセルブロック内で採り得る前記内部X座標の最大値以下であれば当該演算結果によって、最大値を超えれば採り得る前記内部X座標の最小値と最大値の幅で規定される最大ビット幅を当該演算結果から差し引いた値によって特定されるビット線を選択し、
前記ワード線選択回路は、直前のビットに係る書き込み先メモリセルの前記内部Y座標の値に正の所定数を減算した値が、前記メモリセルブロック内で採り得る前記内部Y座標の最小値以上であれば当該演算結果によって、最小値を下回れば採り得る前記内部Y座標の最小値と最大値の幅で規定される最大ワード数を当該演算結果に加算した値によって特定されるワード線を選択することを特徴とする請求項4に記載の不揮発性メモリ。 - 前記正の所定数の値が、前記内部X座標を決定する場合と前記内部Y座標を決定する場合とで異なることを特徴とする請求項5〜7の何れか1項に記載の不揮発性メモリ。
- 前記ビット線選択回路は、採り得る前記内部X座標値を各一回ずつ出現させて作成した内部X座標決定用円順列に従って、直前のビットに係る書き込み先メモリセルの前記内部X座標の次に登場する値をもって対象ビットの書き込み先メモリセルの前記内部X座標とし、
前記ワード線選択回路は、採り得る前記内部Y座標値を各一回ずつ出現させて作成した内部Y座標決定用円順列に従って、直前のビットに係る書き込み先メモリセルの前記内部Y座標の次に登場する値をもって前記対象ビットの書き込み先メモリセルの前記内部Y座標とすることを特徴とする請求項4に記載の不揮発性メモリ。 - 前記入力データがトリミング素子用のトリミングデータであることを特徴とする請求項1〜9の何れか1項に記載の不揮発性メモリ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010113488A JP2011243249A (ja) | 2010-05-17 | 2010-05-17 | 不揮発性メモリ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010113488A JP2011243249A (ja) | 2010-05-17 | 2010-05-17 | 不揮発性メモリ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011243249A true JP2011243249A (ja) | 2011-12-01 |
Family
ID=45409768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010113488A Withdrawn JP2011243249A (ja) | 2010-05-17 | 2010-05-17 | 不揮発性メモリ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011243249A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014186704A (ja) * | 2013-03-25 | 2014-10-02 | Fujitsu Ltd | データ記憶装置及びデータ記憶方法 |
CN107195326A (zh) * | 2016-03-14 | 2017-09-22 | 东芝存储器株式会社 | 半导体存储装置及存储系统 |
-
2010
- 2010-05-17 JP JP2010113488A patent/JP2011243249A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014186704A (ja) * | 2013-03-25 | 2014-10-02 | Fujitsu Ltd | データ記憶装置及びデータ記憶方法 |
CN107195326A (zh) * | 2016-03-14 | 2017-09-22 | 东芝存储器株式会社 | 半导体存储装置及存储系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10635531B2 (en) | Semiconductor memory device error correction circuit, semiconductor memory device including the same, and memory system including the same | |
JP6181257B2 (ja) | 誤り訂正符号の編成を含む装置および方法 | |
US10108509B2 (en) | Dynamic enabling of redundant memory cells during operating life | |
US7107507B2 (en) | Magnetoresistive solid-state storage device and data storage methods for use therewith | |
US20080115043A1 (en) | Semiconductor memory system and signal processing system | |
US20200142771A1 (en) | Error correction code decoders, semiconductor memory devices and memory systems | |
JP2007305267A (ja) | 半導体記憶装置 | |
US10795763B2 (en) | Memory system and error correcting method thereof | |
KR20060046485A (ko) | 메모리 카드 및 반도체 장치 | |
US10133645B2 (en) | Data recovery in three dimensional non-volatile memory array after word line short | |
US10916325B2 (en) | Memory chip and test system including the same | |
CN106653093B (zh) | 半导体器件及其驱动方法 | |
JP2020155167A (ja) | 不揮発性メモリ | |
US11216338B2 (en) | Storage device that performs state shaping of data | |
US20160072529A1 (en) | Storage device and memory control method | |
US11004535B1 (en) | Robust storage of bad column data and parity bits on word line | |
CN110010188B (zh) | 存储器件及其操作方法 | |
JP5503960B2 (ja) | 不揮発性半導体記憶装置 | |
JP2011243249A (ja) | 不揮発性メモリ | |
CN113342577B (zh) | 存储设备及其数据恢复方法 | |
JP6411282B2 (ja) | 半導体メモリ及びデータ書込方法 | |
JP4582078B2 (ja) | メモリコントローラ及びフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
CN117497018A (zh) | 非易失性存储设备中读取参考电压的调整方法和存储系统控制器 | |
US9104596B2 (en) | Memory system | |
KR20170143084A (ko) | 반도체장치 및 반도체시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20130806 |