JP4601344B2 - Nonvolatile semiconductor memory device and data read / write method - Google Patents

Nonvolatile semiconductor memory device and data read / write method Download PDF

Info

Publication number
JP4601344B2
JP4601344B2 JP2004205141A JP2004205141A JP4601344B2 JP 4601344 B2 JP4601344 B2 JP 4601344B2 JP 2004205141 A JP2004205141 A JP 2004205141A JP 2004205141 A JP2004205141 A JP 2004205141A JP 4601344 B2 JP4601344 B2 JP 4601344B2
Authority
JP
Japan
Prior art keywords
data
value
shift value
write
sft
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004205141A
Other languages
Japanese (ja)
Other versions
JP2006031755A (en
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2004205141A priority Critical patent/JP4601344B2/en
Publication of JP2006031755A publication Critical patent/JP2006031755A/en
Application granted granted Critical
Publication of JP4601344B2 publication Critical patent/JP4601344B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、不揮発性半導体記憶装置に関し、特に、多値型の不揮発性半導体装置及びデータの読み書き方法に関する。   The present invention relates to a nonvolatile semiconductor memory device, and more particularly to a multi-value nonvolatile semiconductor device and a data read / write method.

フラッシュメモリ等の不揮発性半導体記憶装置は、メモリセルのフローティングゲートに電子(例えば、ホットエレクトロン)を注入し、メモリセルの閾値電圧Vthを変えることによって、データを記憶する。メモリセルの閾値電圧Vthは、電子がフローティングゲートに注入された場合に高くなり、電子がフローティングゲートから引き抜かれた場合に低くなる。また、近年、記憶容量の増大を図るために、1つのメモリセルに複数ビットのデータが記憶される多値型の不揮発性半導体記憶装置が提案されている。この場合、フローティングゲートへの電荷の注入量が高精度に制御される。   A nonvolatile semiconductor memory device such as a flash memory stores data by injecting electrons (for example, hot electrons) into a floating gate of a memory cell and changing a threshold voltage Vth of the memory cell. The threshold voltage Vth of the memory cell increases when electrons are injected into the floating gate, and decreases when electrons are extracted from the floating gate. In recent years, in order to increase the storage capacity, a multi-value type nonvolatile semiconductor memory device in which a plurality of bits of data is stored in one memory cell has been proposed. In this case, the amount of charge injected into the floating gate is controlled with high accuracy.

図1は、4値フラッシュメモリにおけるメモリセルの閾値電圧Vthの分布を示している。図1において、縦軸は、メモリセル(メモリトランジスタ)の閾値電圧Vthを表し、横軸は、メモリセルの数(分布頻度)を表している。メモリセルの閾値電圧Vthは、プログラムされたデータ(“00”、“01”、“10”、“11”)に応じて異なる。また、各メモリセルの構造のばらつき等により、同じデータがプログラムされたメモリセル間においても、閾値電圧Vthは異なり得る。つまり、メモリセル全体の閾値電圧Vthは、図1に示されるような複数の分布D〜Dを有する。分布D〜Dは、2ビットのデータ“00”、“01”、“10”、“11”にそれぞれ対応している。各メモリセルの閾値電圧Vthは、プログラムされた(書き込まれた)データに応じて、分布D〜Dのいずれかに属する。データの読み出しは、メモリセルの閾値電圧Vthを、読み出し基準電圧VR〜VRと比較することにより行われる。これら読み出し基準電圧VR〜VRは、分布間のマージンに位置するように設定されている。 FIG. 1 shows a distribution of threshold voltages Vth of memory cells in a quaternary flash memory. In FIG. 1, the vertical axis represents the threshold voltage Vth of the memory cell (memory transistor), and the horizontal axis represents the number of memory cells (distribution frequency). The threshold voltage Vth of the memory cell differs depending on the programmed data (“00”, “01”, “10”, “11”). Further, the threshold voltage Vth may differ between memory cells programmed with the same data due to variations in the structure of each memory cell. That is, the threshold voltage Vth of the entire memory cell has a plurality of distributions D 0 to D 3 as shown in FIG. Distributions D 0 to D 3 correspond to 2-bit data “00”, “01”, “10”, and “11”, respectively. The threshold voltage Vth of each memory cell belongs to one of distributions D 0 to D 3 according to programmed (written) data. Data reading is performed by comparing the threshold voltage Vth of the memory cell with the read reference voltages VR 0 to VR 2 . These read reference voltages VR 0 to VR 2 are set so as to be positioned at a margin between distributions.

このような不揮発性半導体記憶装置に関する技術として、以下のものが知られている。   The followings are known as techniques relating to such a nonvolatile semiconductor memory device.

特許文献1に開示された技術は、2値データ(“0”、“1”)を記憶する不揮発性半導体記憶装置に関し、データを書き込む時間を低減することを目的としている。この不揮発性半導体記憶装置は、計数回路と、書き込み回路と、記録部とを有する。データ書き込み時、この計数回路は、メモリセルアレイ全体に書き込まれるデータ“0”またはデータ“1”の総数を計数する。書き込み回路は、その計数の結果に基づいてデータ書き込み時のデータの位相を「正転」または「反転」させた後に、データの書き込みを行う。記録部は、上記書き込み回路による「正転」または「反転」を示す位相情報を記録する。   The technique disclosed in Patent Document 1 relates to a nonvolatile semiconductor memory device that stores binary data (“0”, “1”), and aims to reduce time for writing data. The nonvolatile semiconductor memory device includes a counting circuit, a writing circuit, and a recording unit. At the time of data writing, the counting circuit counts the total number of data “0” or data “1” written to the entire memory cell array. The writing circuit writes data after “normally rotating” or “inverting” the phase of data at the time of data writing based on the count result. The recording unit records phase information indicating “forward” or “inverted” by the writing circuit.

この特許文献1による技術と同様に書き込みデータを「正転」または「反転」させる技術が、特許文献2に開示されている。特許文献2に開示された技術は、多値データをページ単位でメモリセルに書き込む不揮発性半導体記憶装置に関し、ディスターブ/リテンション特性を改善することを目的としている。この不揮発性半導体記憶装置は、判別回路と、フラグ用メモリセルと、書込回路とを有する。データ書き込み時、判別回路は、閾値電圧の高い方の分布を示すビットデータの個数をカウントし、その個数が1/2ページより多いか少ないかを判別する。そして、この判別回路は、その判別結果を示すフラグデータを生成する。閾値電圧の高い方の分布が多い場合、書込回路は、書き込みデータの論理レベルを「反転」させてメモリセルに書き込みを行う。一方、閾値電圧の高い方の分布が少ない場合、書込回路は、書き込みデータの論理レベルを「正転」させてメモリセルに書き込みを行う。更に、この書込回路は、上記フラグデータを、上記フラグ用メモリセルに格納する。   A technique for “normally rotating” or “inverting” write data as in the technique according to Patent Document 1 is disclosed in Patent Document 2. The technique disclosed in Patent Document 2 relates to a nonvolatile semiconductor memory device that writes multi-value data into memory cells in units of pages, and aims to improve disturb / retention characteristics. The nonvolatile semiconductor memory device includes a determination circuit, a flag memory cell, and a write circuit. At the time of data writing, the determination circuit counts the number of bit data indicating the distribution with the higher threshold voltage, and determines whether the number is more than or less than ½ page. Then, the determination circuit generates flag data indicating the determination result. When the distribution with the higher threshold voltage is more frequent, the writing circuit “inverts” the logic level of the write data and writes to the memory cell. On the other hand, when the distribution with the higher threshold voltage is less, the writing circuit performs “normal rotation” of the logic level of the write data and writes into the memory cell. Further, the write circuit stores the flag data in the flag memory cell.

近年、不揮発性半導体記憶装置において処理されるデータ量は増加し続け、また、動作速度の向上もますます要求されている。よって、メモリセルにデータを書き込む時間(以下、「書き込み時間」と参照される)を更に低減することができる不揮発性半導体記憶装置が望まれている。   In recent years, the amount of data processed in a nonvolatile semiconductor memory device continues to increase, and an improvement in operation speed is increasingly required. Therefore, a nonvolatile semiconductor memory device that can further reduce the time for writing data to the memory cell (hereinafter referred to as “write time”) is desired.

特開平8−335396号公報JP-A-8-335396 特開平10−55687号公報JP-A-10-55687

本発明の目的は、データの書き込み時間を低減することができる不揮発性半導体記憶装置及びデータ読み書き方法を提供することにある。   An object of the present invention is to provide a nonvolatile semiconductor memory device and a data read / write method capable of reducing the data write time.

以下に、[発明を実施するための最良の形態]で使用される番号・符号を用いて、[課題を解決するための手段]を説明する。これらの番号・符号は、[特許請求の範囲]の記載と[発明を実施するための最良の形態]との対応関係を明らかにするために括弧付きで付加されたものである。ただし、それらの番号・符号を、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。   [Means for Solving the Problems] will be described below using the numbers and symbols used in [Best Mode for Carrying Out the Invention]. These numbers and symbols are added in parentheses in order to clarify the correspondence between the description of [Claims] and [Best Mode for Carrying Out the Invention]. However, these numbers and symbols should not be used for the interpretation of the technical scope of the invention described in [Claims].

本発明に係る不揮発性半導体記憶装置(10)は、複数の閾値電圧(Vtm)のうちから所定の閾値電圧(Vtm)が設定されるメモリセル(21、26)と、その所定の閾値電圧(Vtm)に対応するデータ値を設定するデータ処理回路(100)とを有する。ここで、そのデータ値の設定は可変である。データ処理回路(100)は、複数のデータ値の中から、その所定の閾値電圧(Vtm)に対応するデータ値を選択して設定する。また、データ処理回路(100)は、複数のメモリセル(21、26)に一括で書き込みを実施する際に、複数のメモリセル(21、26)の夫々における所定の閾値電圧(Vtm)の和が最小となるように、閾値電圧とデータ値との対応関係を設定する。この不揮発性半導体記憶装置(10)は、その対応関係を示すシフト値(SFT)を格納するシフト値格納領域(25)と、制御回路(50)とを更に有する。制御回路(50)は、複数のメモリセル(21、26)、シフト値格納領域(25)、及びデータ処理回路(100)に接続されており、複数のメモリセル(21、26)及びシフト値格納領域(25)に対するデータの読み書きを制御する。   The nonvolatile semiconductor memory device (10) according to the present invention includes a memory cell (21, 26) in which a predetermined threshold voltage (Vtm) is set among a plurality of threshold voltages (Vtm), and the predetermined threshold voltage ( And a data processing circuit (100) for setting a data value corresponding to Vtm). Here, the setting of the data value is variable. The data processing circuit (100) selects and sets a data value corresponding to the predetermined threshold voltage (Vtm) from a plurality of data values. In addition, when the data processing circuit (100) performs a batch write on the plurality of memory cells (21, 26), the sum of a predetermined threshold voltage (Vtm) in each of the plurality of memory cells (21, 26). Is set such that the correspondence between the threshold voltage and the data value is minimized. The nonvolatile semiconductor memory device (10) further includes a shift value storage area (25) for storing a shift value (SFT) indicating the corresponding relationship, and a control circuit (50). The control circuit (50) is connected to the plurality of memory cells (21, 26), the shift value storage area (25), and the data processing circuit (100), and includes the plurality of memory cells (21, 26) and the shift value. Controls reading and writing of data to the storage area (25).

本発明に係る不揮発性半導体記憶装置(10)は、複数のメモリセル(21、26)がアレイ状に配置されたメモリセルアレイ(20)と、シフト値(SFT)を格納するシフト値格納領域(25)と、メモリセルアレイ(20)及びシフト値格納領域(25)に対するデータの読み書きを制御する制御回路(50)と、制御回路(50)に接続されたデータ処理回路(100)とを備える。ここで、「シフト値(SFT)」は、多値データが示す複数のデータ値とメモリセル(21、26)が有する複数の閾値電圧(Vtm)との対応関係を示す。このデータ処理回路(100)は、シフト値(SFT)を可変に設定する。   A nonvolatile semiconductor memory device (10) according to the present invention includes a memory cell array (20) in which a plurality of memory cells (21, 26) are arranged in an array, and a shift value storage area (SFT) for storing a shift value (SFT). 25), a control circuit (50) for controlling reading and writing of data with respect to the memory cell array (20) and the shift value storage area (25), and a data processing circuit (100) connected to the control circuit (50). Here, “shift value (SFT)” indicates a correspondence relationship between a plurality of data values indicated by the multi-value data and a plurality of threshold voltages (Vtm) included in the memory cells (21, 26). The data processing circuit (100) sets the shift value (SFT) to be variable.

具体的には、データの書き込み時、データ処理回路(100)は、外部から入力される入力データ(Din、DW)の内容を参照し、書き込みが行われるメモリセル群(21)の閾値電圧(Vtm)の和が最小になるように、複数のシフト値(SFT’)のうちの一のシフト値(SFT)を用いて、入力データ(Din、DW)を書き込みデータ(DW)に変換する。または、データ処理回路(100)は、外部から入力される入力データ(Din、DW)の内容を参照し、書き込みが行われるメモリセル群(21)の閾値電圧(Vtm)に対応した定数の和が最小になるように、複数のシフト値(SFT’)のうちの一のシフト値(SFT)を用いて、入力データ(Din、DW)を書き込みデータ(DW)に変換する。ここで、その定数は、その閾値電圧(Vtm)に対応づけられた書き込み時間を示す。そして、データ処理回路(100)は、それら書き込みデータ(DW)及び一のシフト値(SFT)を制御回路(50)に出力する。制御回路(50)は、書き込みデータ(DW)をメモリセルアレイ(20)中のメモリセル群(21)に書き込み、一のシフト値(SFT)をシフト値格納領域(25、26)に書き込む。データの読み出し時、制御回路(50)は、メモリセル群(21)から読み出しデータ(DR)を読み出し、シフト値格納領域(25、26)から一のシフト値(SFT)を読み出し、それら読み出しデータ(DR)及び一のシフト値(SFT)をデータ処理回路(100)に出力する。データ処理回路(100)は、一のシフト値(SFT)を用いて読み出しデータ(DR)を出力データ(DR、Dout)に変換し、その出力データ(DR、Dout)を外部に出力する。 Specifically, at the time of data writing, the data processing circuit (100) refers to the contents of input data (Din, DW M ) input from the outside, and the threshold voltage of the memory cell group (21) to which writing is performed. The input data (Din, DW M ) is converted into write data (DW) using one shift value (SFT) of the plurality of shift values (SFT ′) so that the sum of (Vtm) is minimized. To do. Alternatively, the data processing circuit (100) refers to the content of input data (Din, DW M ) input from the outside, and sets a constant corresponding to the threshold voltage (Vtm) of the memory cell group (21) to which writing is performed. The input data (Din, DW M ) is converted into write data (DW) using one shift value (SFT) of the plurality of shift values (SFT ′) so that the sum is minimized. Here, the constant indicates a writing time associated with the threshold voltage (Vtm). Then, the data processing circuit (100) outputs the write data (DW) and one shift value (SFT) to the control circuit (50). The control circuit (50) writes the write data (DW) to the memory cell group (21) in the memory cell array (20), and writes one shift value (SFT) to the shift value storage area (25, 26). When data is read, the control circuit (50) reads the read data (DR) from the memory cell group (21), reads one shift value (SFT) from the shift value storage area (25, 26), and reads the read data. (DR) and one shift value (SFT) are output to the data processing circuit (100). The data processing circuit (100) converts the read data (DR) into output data (DR M , Dout) using one shift value (SFT), and outputs the output data (DR M , Dout) to the outside. .

本発明に係る不揮発性半導体記憶装置(10)によれば、書き込みが行われるメモリセル群(21)の閾値電圧(Vtm)の和、あるいは閾値電圧(Vtm)に対応した定数の和が最小になるように、入力データ(Din、DW)が書き込みデータ(DW)に変換される。そして、入力データ(Din、DW)の代わりに、その書き込みデータ(DW)が実際にメモリセル群(21)に書き込まれる。あるメモリセル(21)に対するデータの書き込み時間は、書き込み後の閾値電圧(Vtm)に依存する。従って、本発明によれば、データの総書き込み時間(Tall)が低減される。 According to the nonvolatile semiconductor memory device (10) of the present invention, the sum of the threshold voltages (Vtm) of the memory cell group (21) to which data is written or the sum of constants corresponding to the threshold voltage (Vtm) is minimized. As described above, the input data (Din, DW M ) is converted into write data (DW). Then, instead of the input data (Din, DW M ), the write data (DW) is actually written into the memory cell group (21). The data writing time for a certain memory cell (21) depends on the threshold voltage (Vtm) after writing. Therefore, according to the present invention, the total data writing time (Tall) is reduced.

多値データが示す上記複数のデータ値は、第1〜第Nデータ値(Nは3以上の自然数)を含む。また、メモリセル(21)が有する複数の閾値電圧(Vtm)は、第1〜第N閾値電圧を含む。この時、複数のシフト値(SFT’)は、第1〜第Nシフト値(SFT’)を含み、それら第1〜第Nシフト値(SFT’)のそれぞれは、第1〜第Nデータ値と第1〜第N閾値電圧(Vtm)との間のN種類の対応関係を示すことが好適である。この場合、第1〜第Nシフト値(SFT’)から選択される一のシフト値(SFT)も、メモリセルアレイ(20)中のシフト値格納メモリセル(26)に格納されるという効果が得られる。   The plurality of data values indicated by the multi-value data include first to Nth data values (N is a natural number of 3 or more). The plurality of threshold voltages (Vtm) included in the memory cell (21) include first to Nth threshold voltages. At this time, the plurality of shift values (SFT ′) include first to Nth shift values (SFT ′), and each of the first to Nth shift values (SFT ′) includes first to Nth data values. It is preferable to show N types of correspondence relationships between the first to Nth threshold voltages (Vtm). In this case, there is an effect that one shift value (SFT) selected from the first to Nth shift values (SFT ′) is also stored in the shift value storing memory cell (26) in the memory cell array (20). It is done.

また、第1シフト値(SFT’)は、第1〜第Nデータ値のそれぞれを、第1〜第N閾値電圧(Vtm)のそれぞれに対応づけ、第iシフト値(iは2以上N以下の自然数)は、第1〜第(i−1)データ値のそれぞれを、第(N−i+2)〜第N閾値電圧(Vtm)のそれぞれに対応づけ、且つ、第i〜第Nデータ値のそれぞれを、第1〜第(N−i+1)閾値電圧(Vtm)のそれぞれに対応づけてもよい。例えば、Nが4の場合、第1シフト値(SFT’)は、第1、第2、第3、第4データ値のそれぞれを、第1、第2、第3、第4閾値電圧(Vtm)のそれぞれに対応づける。第2シフト値(SFT’)は、第1、第2、第3、第4データ値のそれぞれを、第4、第1、第2、第3閾値電圧(Vtm)のそれぞれに対応づける。第3シフト値(SFT’)は、第1、第2、第3、第4データ値のそれぞれを、第3、第4、第1、第2閾値電圧(Vtm)のそれぞれに対応づける。第4シフト値(SFT’)は、第1、第2、第3、第4データ値のそれぞれを、第2、第3、第4、第1閾値電圧(Vtm)のそれぞれに対応づける。   The first shift value (SFT ′) associates each of the first to Nth data values with each of the first to Nth threshold voltages (Vtm), and the i-th shift value (i is 2 to N). Of the first to (i−1) th data values correspond to the (N−i + 2) th to Nth threshold voltage (Vtm) respectively, and the i th to Nth data values Each may be associated with each of the first to (N−i + 1) th threshold voltages (Vtm). For example, when N is 4, the first shift value (SFT ′) is the first, second, third, and fourth data values, and the first, second, third, and fourth threshold voltages (Vtm). ). The second shift value (SFT ′) associates each of the first, second, third, and fourth data values with each of the fourth, first, second, and third threshold voltages (Vtm). The third shift value (SFT ′) associates each of the first, second, third, and fourth data values with each of the third, fourth, first, and second threshold voltages (Vtm). The fourth shift value (SFT ') associates each of the first, second, third, and fourth data values with each of the second, third, fourth, and first threshold voltages (Vtm).

本発明に係る不揮発性半導体記憶装置(10)において、データ処理回路(100)は、制御回路(50)に接続された書き込みデータ変換回路(110)と、書き込みデータ変換回路(110)に接続されたシフト値決定回路(130)と、制御回路(50)に接続された読み出しデータ変換回路(120)とを備える。データの書き込み時、シフト値決定回路(130)は、入力データ(DW)を受け取り、その入力データ(DW)の内容を参照することによって、複数のシフト値(SFT’)から一のシフト値(SFT)を選択する。そして、シフト値決定回路(130)は、その一のシフト値(SFT)を書き込みデータ変換回路(110)に出力する。書き込みデータ変換回路(110)は、入力データ(DW)及び一のシフト値(SFT)を受け取り、その一のシフト値(SFT)が示す対応関係に従って、入力データ(DW)を書き込みデータ(DW)に変換する。そして、書き込みデータ変換回路(110)は、それら書き込みデータ(DW)及び一のシフト値(SFT)を制御回路(50)に出力する。データの読み出し時、読み出しデータ変換回路(120)は、制御回路(50)から読み出しデータ(DR)及び一のシフト値(SFT)を受け取る。そして、読み出しデータ変換回路(120)は、その一のシフト値(SFT)が示す対応関係に従って、読み出しデータ(DR)を出力データ(DR)に変換する。 In the nonvolatile semiconductor memory device (10) according to the present invention, the data processing circuit (100) is connected to the write data conversion circuit (110) connected to the control circuit (50) and the write data conversion circuit (110). A shift value determining circuit (130) and a read data conversion circuit (120) connected to the control circuit (50). When writing data, the shift value determining circuit (130) receives input data (DW M), by referring to the contents of the input data (DW M), one shift from a plurality of shift values (SFT ') Select a value (SFT). Then, the shift value determination circuit (130) outputs the one shift value (SFT) to the write data conversion circuit (110). The write data conversion circuit (110) receives the input data (DW M ) and one shift value (SFT), and converts the input data (DW M ) into the write data (DW M ) according to the correspondence relationship indicated by the one shift value (SFT). DW). Then, the write data conversion circuit (110) outputs the write data (DW) and one shift value (SFT) to the control circuit (50). When reading data, the read data conversion circuit (120) receives the read data (DR) and one shift value (SFT) from the control circuit (50). Then, the read data conversion circuit (120) converts the read data (DR) into output data (DR M ) in accordance with the correspondence relationship indicated by the one shift value (SFT).

本発明に係る不揮発性半導体記憶装置(10)において、上記複数のメモリセル(21、26)は、シフト値格納領域(25)としてのシフト値格納メモリセル(26)を含む。この時、メモリセル群(21)とシフト値格納メモリセル(26)は、同一ワード線(WL)に接続されている。   In the nonvolatile semiconductor memory device (10) according to the present invention, the plurality of memory cells (21, 26) include a shift value storage memory cell (26) as a shift value storage region (25). At this time, the memory cell group (21) and the shift value storage memory cell (26) are connected to the same word line (WL).

本発明に係る不揮発性半導体記憶装置(10)において、シフト値決定回路(130)は、検証データ生成回路(132)と、検証データ生成回路(132)に接続された書き込み時間算出回路(201)と、書き込み時間算出回路(201)に接続された判定回路(202)とを備える。この検証データ生成回路(132)は、入力データ(DW)を受け取り、複数のシフト値(SFT’)のそれぞれが示す複数の対応関係に基づいて、入力データ(DW)から複数の検証データ(DT)を生成する。書き込み時間算出回路(201)は、それら複数の検証データ(DT)を受け取り、複数の検証データ(DT)の各々のメモリセル群(21)への書き込みに要する書き込み時間(Tall)を算出する。判定回路(202)は、複数の書き込み時間(Tall)のうち最も短い一の書き込み時間(Tall)を検出し、その一の書き込み時間(Tall)に関連するシフト値(SFT’)を、一のシフト値(SFT)として選択する。 In the nonvolatile semiconductor memory device (10) according to the present invention, the shift value determination circuit (130) includes a verification data generation circuit (132) and a write time calculation circuit (201) connected to the verification data generation circuit (132). And a determination circuit (202) connected to the write time calculation circuit (201). The verification data generation circuit (132) receives the input data (DW M ), and based on a plurality of correspondence relationships indicated by each of the plurality of shift values (SFT ′), a plurality of verification data from the input data (DW M ). (DT) is generated. The write time calculation circuit (201) receives the plurality of verification data (DT) and calculates a write time (Tall) required for writing the plurality of verification data (DT) to each memory cell group (21). The determination circuit (202) detects the shortest one writing time (Tall) among the plurality of writing times (Tall), and determines the shift value (SFT ′) associated with the one writing time (Tall) as one Select as shift value (SFT).

この書き込み時間算出回路(201)は、カウンタ(133)と、カウンタ(133)に接続された乗算器(134)と、乗算器(134)に接続された加算器(135)とを備える。カウンタ(133)は、各々の検証データ(DT)を受け取り、各々の検証データ(DT)に含まれる複数のデータ値のそれぞれの個数をカウントする。乗算器(134)は、それら複数のデータ値のそれぞれの個数に、複数の閾値電圧(Vtm)のそれぞれに対応した複数の定数を掛けることによって、複数の乗算値を算出する。加算器(135)は、複数の乗算値を足し合わせることによって、上記総書き込み時間(Tall)を算出する。   The write time calculation circuit (201) includes a counter (133), a multiplier (134) connected to the counter (133), and an adder (135) connected to the multiplier (134). The counter (133) receives each verification data (DT) and counts the number of each of a plurality of data values included in each verification data (DT). The multiplier (134) calculates a plurality of multiplication values by multiplying the number of each of the plurality of data values by a plurality of constants corresponding to the plurality of threshold voltages (Vtm). The adder (135) calculates the total write time (Tall) by adding a plurality of multiplication values.

本発明に係る不揮発性半導体記憶装置(10)において、シフト値決定回路(130)は、検証データ生成回路(132)と、検証データ生成回路(132)に接続された書き込み時間算出回路(201)と、書き込み時間算出回路(201)に接続された判定回路(202)とを備える。この検証データ生成回路(132)は、入力データ(DW)を受け取り、複数のシフト値(SFT’)のそれぞれが示す対応関係に基づいて、入力データ(DW)から複数の検証データ(DT)を生成する。書き込み時間算出回路(201)は、複数の検証データ(DT)と複数のシフト値(SFT’)を受け取る。そして、書き込み時間算出回路(201)は、各検証データ(DT)及び対応するシフト値(SFT’)のそれぞれをメモリセル群(21)及びシフト値格納メモリセル(26)へ書き込むために要する書き込み時間(Tall)を算出する。判定回路(202)は、複数の書き込み時間(Tall)のうち最も短い一の書き込み時間(Tall)を検出し、その一の書き込み時間(Tall)に関連するシフト値(SFT’)を、一のシフト値(SFT)として選択する。 In the nonvolatile semiconductor memory device (10) according to the present invention, the shift value determination circuit (130) includes a verification data generation circuit (132) and a write time calculation circuit (201) connected to the verification data generation circuit (132). And a determination circuit (202) connected to the write time calculation circuit (201). The verification data generation circuit (132) receives the input data (DW M ), and based on the correspondence relationship indicated by each of the plurality of shift values (SFT ′), a plurality of verification data (DT) from the input data (DW M ). ) Is generated. The write time calculation circuit (201) receives a plurality of verification data (DT) and a plurality of shift values (SFT ′). Then, the write time calculation circuit (201) writes data required to write each verification data (DT) and the corresponding shift value (SFT ′) to the memory cell group (21) and the shift value storage memory cell (26). Time (Tall) is calculated. The determination circuit (202) detects the shortest one writing time (Tall) among the plurality of writing times (Tall), and determines the shift value (SFT ′) associated with the one writing time (Tall) as one Select as shift value (SFT).

この書き込み時間算出回路(201)は、カウンタ(143)と、カウンタ(143)に接続された乗算器(144)と、乗算器(144)に接続された加算器(145)とを備える。カウンタ(143)は、各々の検証データ(DT)及び対応するシフト値(SFT’)を受け取り、それら各々の検証データ(DT)及び対応するシフト値(SFT’)に含まれる複数のデータ値のそれぞれの個数をカウントする。乗算器(144)は、複数のデータ値のそれぞれの個数に、複数の閾値電圧(Vtm)のそれぞれに対応した複数の定数を掛けることによって、複数の乗算値を算出する。加算器(145)は、複数の乗算値を足し合わせることによって、上記総書き込み時間(Tall)を算出する。   The write time calculation circuit (201) includes a counter (143), a multiplier (144) connected to the counter (143), and an adder (145) connected to the multiplier (144). The counter (143) receives each verification data (DT) and the corresponding shift value (SFT '), and receives a plurality of data values included in each of the verification data (DT) and the corresponding shift value (SFT'). Count the number of each. The multiplier (144) calculates a plurality of multiplied values by multiplying the number of each of the plurality of data values by a plurality of constants corresponding to each of the plurality of threshold voltages (Vtm). The adder (145) calculates the total write time (Tall) by adding a plurality of multiplication values.

判定回路(202)は、書き込み時間算出回路(201)に接続された比較器(137、147)と、比較器(137、147)に接続され、参照値(Tref)を格納する参照値レジスタ(138、148)とを備える。この比較器(137、147)は、書き込み時間算出回路(201)によって算出された複数の書き込み時間(Tcalc)と参照値(Tref)を順番に比較する。そして、比較器(137、147)は、書き込み時間(Tcalc)が参照値(Tref)より小さい場合、参照値(Tref)を書き込み時間(Tcalc)で更新することによって、複数の書き込み時間(Tcalc)から一の書き込み時間(Tall)を検出する。   The determination circuit (202) is connected to the comparators (137, 147) connected to the write time calculation circuit (201) and a reference value register (Tref) connected to the comparators (137, 147). 138, 148). The comparators (137, 147) sequentially compare a plurality of write times (Tcalc) calculated by the write time calculation circuit (201) with a reference value (Tref). When the write time (Tcalc) is smaller than the reference value (Tref), the comparators (137, 147) update the reference value (Tref) with the write time (Tcalc) to thereby obtain a plurality of write times (Tcalc). The one write time (Tall) is detected.

本発明に係る不揮発性半導体記憶装置及びデータ読み書き方法によれば、データの書き込み時間が低減される。   According to the nonvolatile semiconductor memory device and the data read / write method according to the present invention, the data write time is reduced.

本発明に係る不揮発性半導体記憶装置及びデータ読み書き方法によれば、動作速度が向上する。   According to the nonvolatile semiconductor memory device and the data read / write method according to the present invention, the operation speed is improved.

添付図面を参照して、本発明による不揮発性半導体記憶装置、及びその不揮発性半導体記憶装置に対するデータ読み書き方法を説明する。   A nonvolatile semiconductor memory device according to the present invention and a data read / write method for the nonvolatile semiconductor memory device will be described with reference to the accompanying drawings.

まず、本明細書で用いられる「シフト値」について説明を行う。   First, the “shift value” used in this specification will be described.

本発明に係る不揮発性半導体記憶装置のメモリセルは、コントロールゲート及びフローティングゲートを有する不揮発性のメモリセルである。1つのメモリセルには、多値データが格納される。この多値データは、複数のデータ値を示し、例えば“00”、“01”、“10”、“11”といった4つのデータ値を示す。複数のデータ値は、メモリセル(メモリセルトランジスタ)が有する複数の閾値電圧にそれぞれ対応している。つまり、フローティングゲートに注入する電子の量を調整することによって閾値電圧が制御され、それにより多値データの記憶が実現される。   The memory cell of the nonvolatile semiconductor memory device according to the present invention is a nonvolatile memory cell having a control gate and a floating gate. Multi-value data is stored in one memory cell. The multi-value data indicates a plurality of data values, for example, four data values such as “00”, “01”, “10”, and “11”. The plurality of data values respectively correspond to a plurality of threshold voltages included in the memory cell (memory cell transistor). That is, the threshold voltage is controlled by adjusting the amount of electrons injected into the floating gate, thereby realizing storage of multi-value data.

図2は、本発明に係る不揮発性半導体記憶装置における閾値電圧Vthの分布の一例を示している。図2において、縦軸は、メモリセルの閾値電圧Vthを表し、横軸は、メモリセルの数(分布頻度)を表している。この不揮発性半導体記憶装置によれば、例えば、1つのメモリセルに4値(2ビット)データを格納することが可能であり、図2に示されるように、メモリセル全体の閾値電圧Vthの分布は、分布A0〜A3の4つを有している。ここで、分布A0〜A3のそれぞれを代表する閾値電圧Vthを、閾値電圧Vtm0〜Vtm3とする。   FIG. 2 shows an example of the distribution of the threshold voltage Vth in the nonvolatile semiconductor memory device according to the present invention. In FIG. 2, the vertical axis represents the threshold voltage Vth of the memory cell, and the horizontal axis represents the number of memory cells (distribution frequency). According to this nonvolatile semiconductor memory device, for example, quaternary (2-bit) data can be stored in one memory cell, and as shown in FIG. 2, the distribution of threshold voltage Vth of the entire memory cell Has four distributions A0 to A3. Here, the threshold voltage Vth representing each of the distributions A0 to A3 is defined as threshold voltages Vtm0 to Vtm3.

本発明において、これら複数の閾値電圧Vtm0〜Vtm3と複数のデータ値(“00”、“01”、“10”、“11”)との対応関係は、固定されず、可変である。例えば、閾値電圧Vtm0(分布A0)、閾値電圧Vtm1(分布A1)、閾値電圧Vtm2(分布A2)、閾値電圧Vtm3(分布A3)のそれぞれは、データ値“01”、“11”、“00”、“10”のそれぞれに対応してもよい。本明細書において、このような複数の閾値電圧と複数のデータ値との対応関係は、「シフト値SFT」と参照される。図2に示されるような4値データの場合、この対応関係として最大24(=4!)種類のパターンが考えられる。つまり、24種類の「シフト値SFT」が存在し得る。   In the present invention, the correspondence relationship between the plurality of threshold voltages Vtm0 to Vtm3 and the plurality of data values (“00”, “01”, “10”, “11”) is not fixed and is variable. For example, the threshold voltage Vtm0 (distribution A0), threshold voltage Vtm1 (distribution A1), threshold voltage Vtm2 (distribution A2), and threshold voltage Vtm3 (distribution A3) are data values “01”, “11”, “00”, respectively. , “10” may be supported. In this specification, such a correspondence relationship between a plurality of threshold voltages and a plurality of data values is referred to as a “shift value SFT”. In the case of quaternary data as shown in FIG. 2, up to 24 (= 4!) Types of patterns can be considered as this correspondence. That is, 24 types of “shift value SFT” may exist.

後に詳しく説明されるように、本発明によれば、このような複数のシフト値SFTから1つのシフト値SFTが選択され、その1つのシフト値SFTを用いることによってデータの読み書きが実行される。このような複数のシフト値SFTとして、存在し得る全種類のシフト値SFTが用意されてもよいし、適宜抽出された数種類のシフト値SFTが用意されてもよい。   As will be described in detail later, according to the present invention, one shift value SFT is selected from such a plurality of shift values SFT, and data is read and written by using the one shift value SFT. As such a plurality of shift values SFT, all types of shift values SFT that may exist may be prepared, or several types of shift values SFT extracted as appropriate may be prepared.

図3は、シフト値SFTとそのシフト値が示す対応関係の例を示している。ここでは、例として、4種類のシフト値(SFT=0〜3)が用意されている。シフト値SFTが0の場合(SFT=0)、入出力されるデータの値“00”、“01”、“10”、“11”のそれぞれは、従来と同様に、閾値電圧Vtm3、Vtm2、Vtm1、Vtm0のそれぞれに対応している(図1、図2参照)。   FIG. 3 shows an example of the correspondence relationship indicated by the shift value SFT and the shift value. Here, as an example, four types of shift values (SFT = 0 to 3) are prepared. When the shift value SFT is 0 (SFT = 0), the input / output data values “00”, “01”, “10”, and “11” are the threshold voltages Vtm3, Vtm2, It corresponds to each of Vtm1 and Vtm0 (see FIGS. 1 and 2).

シフト値SFTが1の場合(SFT=1)、入出力されるデータの値“00”、“01”、“10”、“11”のそれぞれは、閾値電圧Vtm0、Vtm3、Vtm2、Vtm1のそれぞれに対応している。このような対応関係を実現するため、且つ、従来の書き込み/読み出し回路の構成を活かすためには、入出力されるデータの値が、作為的かつ規則的に変換されればよい。つまり、書き込み時に入力されるデータ“00”、“01”、“10”、“11”のそれぞれが、図3に示されるように、データ“11”、“00”、“01”、“10”のそれぞれに変換され、その変換されたデータ(書き込みデータ)が実際にメモリセルに書き込まれればよい。逆に、読み出し時、メモリセルから直接読み出されるデータ(読み出しデータ)“11”、“00”、“01”、“10”のそれぞれは、データ“00”、“01”、“10”、“11”のそれぞれに変換され、その変換されたデータが出力データとして出力されればよい。これにより、上述の対応関係が実現される。   When the shift value SFT is 1 (SFT = 1), the input / output data values “00”, “01”, “10”, and “11” are the threshold voltages Vtm0, Vtm3, Vtm2, and Vtm1, respectively. It corresponds to. In order to realize such a correspondence and to make use of the configuration of a conventional write / read circuit, the value of input / output data may be converted intentionally and regularly. That is, the data “00”, “01”, “10”, “11” input at the time of writing is converted into data “11”, “00”, “01”, “10” as shown in FIG. The converted data (write data) may be actually written into the memory cell. On the other hand, at the time of reading, data (read data) “11”, “00”, “01”, “10” read directly from the memory cells are data “00”, “01”, “10”, “ 11 ″, and the converted data may be output as output data. Thereby, the above-mentioned correspondence is realized.

同様に、シフト値SFTが2の場合(SFT=2)、入出力されるデータの値“00”、“01”、“10”、“11”のそれぞれは、閾値電圧Vtm1、Vtm0、Vtm3、Vtm2のそれぞれに対応している。シフト値SFTが3の場合(SFT=3)、入出力されるデータの値“00”、“01”、“10”、“11”のそれぞれは、閾値電圧Vtm2、Vtm1、Vtm0、Vtm3のそれぞれに対応している。このように、シフト値SFTが増加するごとに、閾値電圧(書き込みデータ)が“シフト”する。   Similarly, when the shift value SFT is 2 (SFT = 2), the input / output data values “00”, “01”, “10”, and “11” are the threshold voltages Vtm1, Vtm0, Vtm3, This corresponds to each of Vtm2. When the shift value SFT is 3 (SFT = 3), the input / output data values “00”, “01”, “10”, “11” are the threshold voltages Vtm2, Vtm1, Vtm0, Vtm3, respectively. It corresponds to. Thus, the threshold voltage (write data) “shifts” each time the shift value SFT increases.

また、この場合、4種類のシフト値SFT(0〜3)が用いられるので、そのシフト値SFT自身も2ビットで表現され得る。よって、4値データが格納されるメモリセルと同様のメモリセルに、そのシフト値SFTを格納することが可能であり、好適である。   In this case, since four types of shift values SFT (0 to 3) are used, the shift value SFT itself can be expressed by 2 bits. Therefore, it is possible to store the shift value SFT in a memory cell similar to the memory cell storing quaternary data, which is preferable.

本発明において、メモリセルに格納されるデータは、4値データに限られない。より一般的に、N値データ(Nは3以上の自然数)の場合、そのN値データは、第1〜第Nデータ値を含む。この時、メモリセルは、N段階の閾値電圧(第1〜第N閾値電圧)を有する。この場合、第1〜第Nデータ値と第1〜第N閾値電圧との間の対応関係として、最大N!種類のパターンが考えられる。つまり、N!種類のシフト値SFTが存在し得る。   In the present invention, data stored in the memory cell is not limited to quaternary data. More generally, in the case of N-value data (N is a natural number of 3 or more), the N-value data includes first to Nth data values. At this time, the memory cell has N-level threshold voltages (first to Nth threshold voltages). In this case, as a correspondence relationship between the first to Nth data values and the first to Nth threshold voltages, the maximum N! There are different types of patterns. In other words, N! There may be different types of shift values SFT.

シフト値SFT自身をN値データが格納されるメモリセルと同様のメモリセルに格納するために、N種類のシフト値SFT(第1〜第Nシフト値)が用いられると好適である。このN種類のシフト値SFTは、それぞれ異なるN種類の対応関係を示す。例えば、第1シフト値は、第1〜第Nデータ値のそれぞれを、第1〜第N閾値電圧のそれぞれに対応づける。第iシフト値(iは2以上N以下の自然数)は、第1〜第(i−1)データ値のそれぞれを、第(N−i+2)〜第N閾値電圧のそれぞれに対応づけ、且つ、第i〜第Nデータ値のそれぞれを、第1〜第(N−i+1)閾値電圧のそれぞれに対応づける(図3参照)。この場合、シフト値SFTが変化するごとに、閾値電圧(書き込みデータ)が“シフト”する。   N types of shift values SFT (first to Nth shift values) are preferably used to store the shift value SFT itself in a memory cell similar to a memory cell in which N-value data is stored. The N types of shift values SFT indicate N types of corresponding relationships. For example, the first shift value associates each of the first to Nth data values with each of the first to Nth threshold voltages. The i-th shift value (i is a natural number greater than or equal to 2 and less than or equal to N) associates each of the first to (i−1) data values with each of the (N−i + 2) to Nth threshold voltages, and Each of the i-th to N-th data values is associated with each of the first to (N−i + 1) th threshold voltages (see FIG. 3). In this case, every time the shift value SFT changes, the threshold voltage (write data) shifts.

以下、本発明に係る不揮発性半導体記憶装置の構成及び動作が示される。   The configuration and operation of the nonvolatile semiconductor memory device according to the present invention will be described below.

図4は、本発明に係る不揮発性半導体記憶装置の構成を示すブロック図である。この不揮発性半導体記憶装置10は、メモリセルアレイ20、I/Oバッファ30、R/W制御回路50、及びデータ処理回路100を備えている。   FIG. 4 is a block diagram showing a configuration of the nonvolatile semiconductor memory device according to the present invention. The nonvolatile semiconductor memory device 10 includes a memory cell array 20, an I / O buffer 30, an R / W control circuit 50, and a data processing circuit 100.

メモリセルアレイ20は、アレイ状に配置された複数のメモリセルを備えている。図5は、このメモリセルアレイ20の一部を詳細に示す回路図である。図5に示されるように、メモリセルアレイ20において、複数のワード線(WL1〜WL3)が複数のビット線(DL1〜DL9)と直交するように形成されている。各メモリセルは、コントロールゲート及びフローティングゲートを有する不揮発性のメモリセルであり、1つにメモリセルには、多値データが格納される。メモリセルのコントロールゲートは、ワード線(WL)のいずれかに接続され、そのドレインはビット線(DL)のいずれかに接続され、そのソースは共通のソース線SLに接続されている。   The memory cell array 20 includes a plurality of memory cells arranged in an array. FIG. 5 is a circuit diagram showing a part of the memory cell array 20 in detail. As shown in FIG. 5, in the memory cell array 20, a plurality of word lines (WL1 to WL3) are formed to be orthogonal to a plurality of bit lines (DL1 to DL9). Each memory cell is a nonvolatile memory cell having a control gate and a floating gate, and multi-value data is stored in one memory cell. The control gate of the memory cell is connected to one of the word lines (WL), its drain is connected to one of the bit lines (DL), and its source is connected to a common source line SL.

複数のメモリセルは、データを格納するためのメモリセル21と、上述のシフト値SFTを格納するためのシフト値格納メモリセル26とを含む。例えば、ワード線WL1には、ビット線DL1〜DL8に接続されたメモリセル群21−11〜21−18と、ビット線DL9に接続されたシフト値格納メモリセル26−1が接続されている。ワード線WL2には、ビット線DL1〜DL8に接続されたメモリセル群21−21〜21−28と、ビット線DL9に接続されたシフト値格納メモリセル26−2が接続されている。ワード線WL3には、ビット線DL1〜DL8に接続されたメモリセル群21−31〜21−38と、ビット線DL9に接続されたシフト値格納メモリセル26−3が接続されている。これらシフト値格納メモリセル26−1〜26−3は、シフト値格納メモリセル群25を構成している。このシフト値格納メモリセル群25は、シフト値SFTを格納するための「シフト値格納領域」として使用される。   The plurality of memory cells include a memory cell 21 for storing data and a shift value storage memory cell 26 for storing the above-described shift value SFT. For example, a memory cell group 21-11 to 21-18 connected to the bit lines DL1 to DL8 and a shift value storage memory cell 26-1 connected to the bit line DL9 are connected to the word line WL1. The word line WL2 is connected to memory cell groups 21-21 to 21-28 connected to the bit lines DL1 to DL8 and a shift value storage memory cell 26-2 connected to the bit line DL9. The word line WL3 is connected to memory cell groups 21-31 to 21-38 connected to the bit lines DL1 to DL8 and a shift value storage memory cell 26-3 connected to the bit line DL9. These shift value storage memory cells 26-1 to 26-3 constitute a shift value storage memory cell group 25. This shift value storage memory cell group 25 is used as a “shift value storage area” for storing the shift value SFT.

このように、メモリセル群とシフト値格納メモリセル26は、同一のワード線に接続されている。従って、1つのワード線WLを選択することによって、メモリセル群及びシフト値格納メモリセル26のそれぞれに、書き込みデータ及びシフト値SFTのそれぞれを書き込むことが可能となる。同様に、1つのワード線WLを選択することによって、メモリセル群及びシフト値格納メモリセル26のそれぞれから、読み出しデータ及びシフト値SFTのそれぞれを読み出すことが可能となる。すなわち、メモリセルアレイ20に、あるデータとあるシフト値SFTとを対応付けて格納することが可能となる。   Thus, the memory cell group and the shift value storage memory cell 26 are connected to the same word line. Therefore, by selecting one word line WL, it is possible to write the write data and the shift value SFT to the memory cell group and the shift value storage memory cell 26, respectively. Similarly, by selecting one word line WL, it is possible to read the read data and the shift value SFT from the memory cell group and the shift value storage memory cell 26, respectively. That is, it is possible to store certain data and a certain shift value SFT in the memory cell array 20 in association with each other.

図4に示されるように、複数のワード線(WL)は、Xデコーダ61に接続されている。また、複数のビット線(DL)は、Yセレクタ63を介してYデコーダ62に接続されている。R/W制御回路50は、Xデコーダ61、Yデコーダ62、及びYセレクタ63を介して、メモリセルアレイ20に接続されている。このR/W制御回路50は、シフト値格納メモリセル群25を含むメモリセルアレイ20に対するデータの読み書きを制御する。   As shown in FIG. 4, the plurality of word lines (WL) are connected to the X decoder 61. The plurality of bit lines (DL) are connected to the Y decoder 62 via the Y selector 63. The R / W control circuit 50 is connected to the memory cell array 20 via an X decoder 61, a Y decoder 62, and a Y selector 63. The R / W control circuit 50 controls reading / writing of data from / to the memory cell array 20 including the shift value storing memory cell group 25.

I/Oバッファ30は、多値変換部41及び2値変換部42を介して、データ処理回路100に接続されている。不揮発性半導体記憶装置10は、このI/Oバッファ30を介して外部とデータのやりとりを行う。多値変換部41は、2値データを多値データに変換する機能を有する。また、2値変換部42は、多値データを2値データに変換する機能を有する。   The I / O buffer 30 is connected to the data processing circuit 100 via a multi-value conversion unit 41 and a binary conversion unit 42. The nonvolatile semiconductor memory device 10 exchanges data with the outside via the I / O buffer 30. The multi-value conversion unit 41 has a function of converting binary data into multi-value data. In addition, the binary conversion unit 42 has a function of converting multi-value data into binary data.

データ処理回路100は、多値変換部41及び2値変換部42を介して、I/Oバッファ30に接続されている。また、このデータ処理回路100は、R/W制御回路50に接続されている。データ処理回路100は、上述の複数のシフト値SFTのうちの1つのシフト値SFTを用い、図3に示された変換パターンに従って、外部から入力されるデータを書き込みデータDWに変換する。そして、データ処理回路100は、その書き込みデータDWと1つのシフト値SFTを、R/W制御回路50に出力する。また、データ処理回路100は、R/W制御回路50によってメモリセル群から読み出される読み出しデータDR、及びシフト値格納領域(シフト値格納メモリセル26)から読み出される1つのシフト値SFTを受け取る。そして、データ処理回路100は、その1つのシフト値SFTを用い、図3に示された変換パターンに従って、読み出しデータDRを、外部から入力されたデータに対応するデータに変換(復元)する。   The data processing circuit 100 is connected to the I / O buffer 30 via the multi-value conversion unit 41 and the binary conversion unit 42. The data processing circuit 100 is connected to the R / W control circuit 50. The data processing circuit 100 uses one shift value SFT among the plurality of shift values SFT described above, and converts externally input data into write data DW according to the conversion pattern shown in FIG. Then, the data processing circuit 100 outputs the write data DW and one shift value SFT to the R / W control circuit 50. Further, the data processing circuit 100 receives the read data DR read from the memory cell group by the R / W control circuit 50 and one shift value SFT read from the shift value storage area (shift value storage memory cell 26). Then, the data processing circuit 100 converts (restores) the read data DR into data corresponding to data input from the outside according to the conversion pattern shown in FIG. 3 using the one shift value SFT.

図4に示されるように、このデータ処理回路100は、書き込みデータ変換回路110、読み出しデータ変換回路120、及びシフト値決定回路130を備えている。書き込みデータ変換回路110は、多値変換部41及びR/W制御回路50に接続されており、書き込み動作時にデータ変換を実行する。読み出しデータ変換回路120は、2値変換部42及びR/W制御回路50に接続されており、読み出し動作時にデータ変換を実行する。シフト値決定回路130は、多値変換部41及び上記書き込みデータ変換回路110に接続されており、複数のシフト値SFTから1つのシフト値を選択する。読み出しデータ変換回路120は、更に、このシフト値決定回路130に接続されていてもよい。   As shown in FIG. 4, the data processing circuit 100 includes a write data conversion circuit 110, a read data conversion circuit 120, and a shift value determination circuit 130. The write data conversion circuit 110 is connected to the multi-value conversion unit 41 and the R / W control circuit 50, and performs data conversion during a write operation. The read data conversion circuit 120 is connected to the binary conversion unit 42 and the R / W control circuit 50, and performs data conversion during a read operation. The shift value determination circuit 130 is connected to the multi-value conversion unit 41 and the write data conversion circuit 110, and selects one shift value from a plurality of shift values SFT. The read data conversion circuit 120 may be further connected to the shift value determination circuit 130.

図6は、このシフト値決定回路130の構成をより詳細に示すブロック図である。シフト値決定回路130は、検証データ生成回路132と、その検証データ生成回路132に接続された書き込み時間算出回路201と、その書き込み時間算出回路201に接続された判定回路202とを備えている。   FIG. 6 is a block diagram showing the configuration of the shift value determination circuit 130 in more detail. The shift value determination circuit 130 includes a verification data generation circuit 132, a write time calculation circuit 201 connected to the verification data generation circuit 132, and a determination circuit 202 connected to the write time calculation circuit 201.

次に、図4〜図6に示された構成及び図7、図8に示されるフローチャートを参照して、本発明に係る不揮発性半導体記憶装置10の動作を詳細に説明する。   Next, the operation of the nonvolatile semiconductor memory device 10 according to the present invention will be described in detail with reference to the configuration shown in FIGS. 4 to 6 and the flowcharts shown in FIGS.

(書き込み動作)
図7は、本発明に係る不揮発性半導体記憶装置10における「書き込み動作」を説明するためのフローチャートである。
(Write operation)
FIG. 7 is a flowchart for explaining the “write operation” in the nonvolatile semiconductor memory device 10 according to the present invention.

ステップS10:
まず、I/Oバッファ30に、不揮発性半導体記憶装置10に記憶されるデータ(以下、「入力データDin」と参照される)が入力される。この入力データDinは、2値データ(“0”、“1”)から構成されている。例えば、この入力データDinは、「1、0、1、0、1、0、0、0」を示す。
Step S10:
First, data stored in the nonvolatile semiconductor memory device 10 (hereinafter referred to as “input data Din”) is input to the I / O buffer 30. This input data Din is composed of binary data (“0”, “1”). For example, the input data Din indicates “1, 0, 1, 0, 1, 0, 0, 0”.

ステップS20:
次に、入力データDinは、「2値書き込みデータDW」として、I/Oバッファ30から多値変換部41に出力される。多値変換部41は、その2値書き込みデータDWを、多値データである「多値書き込みデータDW」に変換する。例えば、2値データ「1、0、1、0、1、0、0、0」は、多値データ「10、10、10、00」に変換される。このように生成された多値書き込みデータDWは、データ処理回路100に出力される。
Step S20:
Next, the input data Din is output from the I / O buffer 30 to the multi-value conversion unit 41 as “binary write data DW B ”. Multi-level conversion unit 41, the binary write data DW B, converted into multi-valued data "multilevel write data DW M". For example, binary data “1, 0, 1, 0, 1, 0, 0, 0” is converted into multi-value data “10, 10, 10, 00”. The multi-value write data DW M that generated as is output to the data processing circuit 100.

ステップS30:
データ処理回路100のシフト値決定回路130は、多値書き込みデータDWを受け取る。そして、シフト値決定回路130は、その多値書き込みデータDWの内容を参照して、複数のシフト値SFTから1つのシフト値SFTを選択する。
Step S30:
Shift value determining circuit 130 of the data processing circuit 100 receives the multi-value write data DW M. Then, the shift value determining circuit 130 refers to the contents of the multi-value write data DW M, selects one shift value SFT from a plurality of shift values SFT.

具体的には、シフト値決定回路130の検証データ生成回路132(図6参照)は、複数のシフト値SFTのそれぞれを用い、図3に示される変換パターンに従って、多値書き込みデータDWを複数の検証データDTに変換する。複数のシフト値SFT(0〜3)は、例えば、「仮シフト値SFT’」として順番に検証データ生成回路132に入力される。例えば、仮シフト値SFT’として“2”が入力された時、検証データ生成回路132は、図3に示される変換パターンに従い、多値書き込みデータ「10、10、10、00」を、検証データ「00、00、00、10」に変換する。このように、仮シフト値SFT’のそれぞれが示す複数の対応関係に基づいて、多値書き込みデータDWから複数の検証データDTが生成される。生成された複数の検証データDTは、書き込み時間算出回路201に出力される。 Specifically, (see FIG. 6) the verification data generation circuit 132 of the shift value determining circuit 130, a plurality with each of the plurality of shift values SFT, in accordance with the conversion pattern shown in FIG. 3, the multi-value write data DW M To the verification data DT. The plurality of shift values SFT (0 to 3) are sequentially input to the verification data generation circuit 132 as “provisional shift value SFT ′”, for example. For example, when “2” is input as the temporary shift value SFT ′, the verification data generation circuit 132 converts the multi-value write data “10, 10, 10, 00” into the verification data according to the conversion pattern shown in FIG. Convert to “00, 00, 00, 10”. Thus, based on a plurality of correspondence relationships shown each of the temporary shift values SFT ', a plurality of verification data DT from the multi-value write data DW M is generated. The plurality of generated verification data DT is output to the write time calculation circuit 201.

書き込み時間算出回路201は、各検証データDTをメモリセル群へ書き込むために要する時間(書き込み時間)を推定し算出する。一般に、あるメモリセルに対するデータの書き込み時間は、書き込み後の閾値電圧Vthに依存する。例えば、メモリセルトランジスタに与える電位と、その電位を与える時間が一定の場合、書き込み後の閾値電圧Vthが高いほど、書き込み時間は長くなり、それが低いほど、書き込み時間は短くなる。より一般的には、複数の閾値電圧のそれぞれを、書き込み時間を示す“所定の定数”に対応づけることが可能である。書き込み時間算出回路201は、例えば検証データ「00、00、00、10」を受け取った場合、それぞれのデータ値に対応する閾値電圧「Vtm3、Vtm3、Vtm3、Vtm1(図3参照)」に基づいて、書き込み時間を推定し算出することが可能である。このようにして、複数の検証データDTのそれぞれに対応して、複数の書き込み時間が算出される。書き込み時間算出回路201は、算出された書き込み時間を示す書き込み時間信号STを、判定回路202に出力する。   The write time calculation circuit 201 estimates and calculates the time (write time) required to write each verification data DT to the memory cell group. In general, the data writing time for a certain memory cell depends on the threshold voltage Vth after writing. For example, when the potential applied to the memory cell transistor and the time during which the potential is applied are constant, the higher the threshold voltage Vth after writing, the longer the writing time, and the lower the writing voltage, the shorter the writing time. More generally, each of the plurality of threshold voltages can be associated with a “predetermined constant” indicating the writing time. For example, when the verification data “00, 00, 00, 10” is received, the write time calculation circuit 201 is based on the threshold voltages “Vtm3, Vtm3, Vtm3, Vtm1 (see FIG. 3)” corresponding to the respective data values. It is possible to estimate and calculate the writing time. In this way, a plurality of write times are calculated corresponding to each of the plurality of verification data DT. The write time calculation circuit 201 outputs a write time signal ST indicating the calculated write time to the determination circuit 202.

判定回路202は、複数の仮シフト値SFT’のそれぞれに対応する複数の書き込み時間信号STを受け取る。そして、判定回路202は、その複数の書き込み時間信号のそれぞれが示す複数の書き込み時間の中から、最も短い書き込み時間を検出する。そして、判定回路202は、その最短書き込み時間に関連する仮シフト値SFT’を、上述の“1つのシフト値”として決定する。   The determination circuit 202 receives a plurality of write time signals ST corresponding to each of the plurality of temporary shift values SFT ′. Then, the determination circuit 202 detects the shortest writing time from the plurality of writing times indicated by the plurality of writing time signals. Then, the determination circuit 202 determines the temporary shift value SFT ′ related to the shortest writing time as the above “one shift value”.

このように、本発明によれば、データ処理回路100のシフト値決定回路130は、書き込みが行われるメモリセル群の閾値電圧Vthの和が最小になるように、複数のシフト値SFTから1つのシフト値SFTを選択する。または、シフト値決定回路130は、書き込みが行われるメモリセル群の閾値電圧Vthに対応した所定の定数の和が最小になるように、複数のシフト値SFTから1つのシフト値SFTを選択する。そして、シフト値決定回路130は、そのシフト値SFTを、書き込みデータ変換回路110に出力する。   As described above, according to the present invention, the shift value determining circuit 130 of the data processing circuit 100 can generate one shift value SFT from a plurality of shift values SFT so that the sum of the threshold voltages Vth of the memory cell group to be written is minimized. A shift value SFT is selected. Alternatively, the shift value determination circuit 130 selects one shift value SFT from the plurality of shift values SFT so that the sum of predetermined constants corresponding to the threshold voltage Vth of the memory cell group to which writing is performed is minimized. Then, the shift value determination circuit 130 outputs the shift value SFT to the write data conversion circuit 110.

ステップS40:
書き込みデータ変換回路110は、多値変換部41によって生成された多値書き込みデータDWと、シフト値決定回路130によって決定されたシフト値SFTを受け取る。そして、書き込みデータ変換回路110は、そのシフト値SFTが示す対応関係(図3参照)に従って、多値書き込みデータDWを書き込みデータDWに変換する。例えば、シフト値SFTが“3”の場合、書き込みデータ変換回路110は、図3に示される変換パターンに従って、多値書き込みデータ「10、10、10、00」を、書き込みデータ「11、11、11、01」に変換する。そして、書き込みデータ変換回路110は、書き込みデータDWとシフト値SFTを、R/W制御回路50に出力する。
Step S40:
The write data conversion circuit 110 receives the multi-value write data DW M generated by the multi-value conversion unit 41, a shift value SFT determined by the shift value determining circuit 130. The write data conversion circuit 110, according to the corresponding relationship (see FIG. 3) indicated by the shift value SFT, into data DW writing multilevel write data DW M. For example, when the shift value SFT is “3”, the write data conversion circuit 110 converts the multi-value write data “10, 10, 10, 00” into the write data “11, 11, 11, 01 ". Then, the write data conversion circuit 110 outputs the write data DW and the shift value SFT to the R / W control circuit 50.

ステップS50:
R/W制御回路50は、アクセスを行うメモリセルのアドレスを示す「アドレスデータDA」をI/Oバッファ30から受け取り、そのアドレスデータDAを、Xデコーダ61及びYデコーダ62に出力する。これにより、所定のワード線WL及びビット線DLが選択され、アクセスが行われる「メモリセル群」及び「シフト値格納メモリセル26」が選択される。また、R/W制御回路50は、書き込みデータDWに応じて、書き込み電圧等の設定を行う。
Step S50:
The R / W control circuit 50 receives “address data DA” indicating the address of the memory cell to be accessed from the I / O buffer 30 and outputs the address data DA to the X decoder 61 and the Y decoder 62. As a result, a predetermined word line WL and bit line DL are selected, and the “memory cell group” and “shift value storage memory cell 26” to be accessed are selected. The R / W control circuit 50 sets a write voltage and the like according to the write data DW.

ステップS60:
R/W制御回路50は、Yセレクタ63を介して、書き込みデータDWを選択されたメモリセル群に書き込み、シフト値SFTをシフト値格納メモリセル26(シフト値格納領域)に書き込む。このように、シフト値SFTも2ビットで表現される場合、そのシフト値SFTをメモリセルアレイ20内に格納することが可能であり、好適である。但し、シフト値SFTが格納される領域は、メモリセルアレイ20内のシフト値格納メモリセル群25に限られない。シフト値SFTを格納するためのシフト値格納領域が、メモリセルアレイ20から独立して設けられてもよい。この場合、R/W制御回路50は、シフト値SFTをそのシフト値格納領域に格納する。
Step S60:
The R / W control circuit 50 writes the write data DW to the selected memory cell group via the Y selector 63 and writes the shift value SFT to the shift value storage memory cell 26 (shift value storage area). Thus, when the shift value SFT is also expressed by 2 bits, the shift value SFT can be stored in the memory cell array 20, which is preferable. However, the region in which the shift value SFT is stored is not limited to the shift value storage memory cell group 25 in the memory cell array 20. A shift value storage area for storing the shift value SFT may be provided independently of the memory cell array 20. In this case, the R / W control circuit 50 stores the shift value SFT in the shift value storage area.

このように、本発明に係る不揮発性半導体記憶装置10によれば、書き込みが行われるメモリセル群の閾値電圧Vthの和、あるいは閾値電圧Vthに対応した定数の和が最小になるように、入力データDinが書き込みデータDWに変換される。そして、入力データDinの代わりに、その書き込みデータDWが実際にメモリセル群に書き込まれる。従って、データの書き込み時間が低減される。   As described above, according to the nonvolatile semiconductor memory device 10 of the present invention, the input is performed so that the sum of the threshold voltages Vth of the memory cells to be written or the sum of constants corresponding to the threshold voltage Vth is minimized. Data Din is converted into write data DW. Then, instead of the input data Din, the write data DW is actually written into the memory cell group. Therefore, the data writing time is reduced.

(読み出し動作)
図8は、本発明に係る不揮発性半導体記憶装置10における「読み出し動作」を説明するためのフローチャートである。
(Read operation)
FIG. 8 is a flowchart for explaining the “read operation” in the nonvolatile semiconductor memory device 10 according to the present invention.

ステップS70:
R/W制御回路50は、アクセスを行うメモリセルのアドレスを示す「アドレスデータDA」をI/Oバッファ30から受け取り、そのアドレスデータDAを、Xデコーダ61及びYデコーダ62に出力する。これにより、所定のワード線WL及びビット線DLが選択され、アクセスが行われる「メモリセル群」及び「シフト値格納メモリセル26」が選択される。
Step S70:
The R / W control circuit 50 receives “address data DA” indicating the address of the memory cell to be accessed from the I / O buffer 30 and outputs the address data DA to the X decoder 61 and the Y decoder 62. As a result, a predetermined word line WL and bit line DL are selected, and the “memory cell group” and “shift value storage memory cell 26” to be accessed are selected.

その後、R/W制御回路50は、Yセレクタ63を介して、選択されたメモリセル群から「読み出しデータDR」を読み出し、シフト値格納メモリセル26(シフト値格納領域)から「シフト値SFT」を読み出す。ここで、データの読み出しは、メモリセルの閾値電圧Vthを、図2に示された読み出し基準電圧Vref1〜Vref3と比較することにより行われる。図2に示されるように、これら読み出し基準電圧Vref1〜Vref3は、分布間のマージンに位置するように設定されている。読み出された読み出しデータDR及びシフト値SFTは、R/W制御回路50から、データ処理回路100の読み出しデータ変換回路120に出力される。   Thereafter, the R / W control circuit 50 reads “read data DR” from the selected memory cell group via the Y selector 63, and “shift value SFT” from the shift value storage memory cell 26 (shift value storage area). Is read. Here, data is read by comparing the threshold voltage Vth of the memory cell with the read reference voltages Vref1 to Vref3 shown in FIG. As shown in FIG. 2, these read reference voltages Vref1 to Vref3 are set so as to be located in the margin between distributions. The read data DR and the shift value SFT that have been read are output from the R / W control circuit 50 to the read data conversion circuit 120 of the data processing circuit 100.

ステップS80:
データ処理回路100の読み出しデータ変換回路120は、読み出しデータDRとシフト値SFTを受け取る。読み出しデータ変換回路120は、シフト値SFTをシフト値決定回路130から受け取ってもよい。そして、読み出しデータ変換回路120は、そのシフト値SFTが示す対応関係(図3参照)に従って、読み出しデータDRを「多値読み出しデータDR」に変換する。例えば、読み出しデータDRが「11、11、11、01」であり、シフト値SFTが“3”の場合、読み出しデータ変換回路120は、図3に示される変換パターンに従って、読み出しデータ「11、11、11、01」を、多値読み出しデータ「10、10、10、00」に変換する。すなわち、この読み出しデータ変換回路120によって、読み出しデータDRは、多値書き込みデータDWに対応した多値読み出しデータDRに復元される。この多値読み出しデータDRは、2値変換部42に出力される。
Step S80:
The read data conversion circuit 120 of the data processing circuit 100 receives the read data DR and the shift value SFT. The read data conversion circuit 120 may receive the shift value SFT from the shift value determination circuit 130. Then, the read data conversion circuit 120 converts the read data DR into “multi-value read data DR M ” in accordance with the correspondence relationship indicated by the shift value SFT (see FIG. 3). For example, when the read data DR is “11, 11, 11, 01” and the shift value SFT is “3”, the read data conversion circuit 120 reads the read data “11, 11” according to the conversion pattern shown in FIG. , 11, 01 ”are converted into multi-value read data“ 10, 10, 10, 00 ”. That is, the read data conversion circuit 120, the read data DR is restored to the multi-level read data DR M corresponding to multi-value write data DW M. The multi-level read data DR M is output to the binary conversion unit 42.

ステップS90:
2値変換部42は、その多値読み出しデータDRを、2値データである「2値読み出しデータDR」に変換する。例えば、多値データ「10、10、10、00」は、2値データ「1、0、1、0、1、0、0、0」に変換される。このように生成された2値読み出しデータDRは、I/Oバッファ30に出力される。
Step S90:
Binary converter 42 converts the multi-level read data DR M, which is the binary data "binary read data DR B". For example, the multi-value data “10, 10, 10, 00” is converted into binary data “1, 0, 1, 0, 1, 0, 0, 0”. The binary read data DR B generated in this way is output to the I / O buffer 30.

ステップS100:
2値読み出しデータDRは、「出力データDout」として、I/Oバッファ30から外部に出力される。この出力データDoutは、入力データDinに対応している。
Step S100:
The binary read data DR B is output from the I / O buffer 30 to the outside as “output data Dout”. This output data Dout corresponds to the input data Din.

次に、図9A〜図9Dを参照して、以上に説明された本発明に係る不揮発性半導体記憶装置10による効果を説明する。   Next, effects of the nonvolatile semiconductor memory device 10 according to the present invention described above will be described with reference to FIGS. 9A to 9D.

今、入力データDinとして「1、0、1、0、1、0、0、0」がI/Oバッファ30に入力されたとする。シフト値SFTが「0」の場合、図9Aに示されるように、書き込みデータDWとして、「10、10、10、00」が生成される(図3参照)。この時、指定された4つのメモリセル21のそれぞれには、閾値電圧がそれぞれVtm1、Vtm1、Vtm1、Vtm3になるように、電子が注入される。   Assume that “1, 0, 1, 0, 1, 0, 0, 0” is input to the I / O buffer 30 as the input data Din. When the shift value SFT is “0”, “10, 10, 10, 00” is generated as the write data DW as shown in FIG. 9A (see FIG. 3). At this time, electrons are injected into each of the four designated memory cells 21 such that the threshold voltages are Vtm1, Vtm1, Vtm1, and Vtm3, respectively.

図10は、閾値電圧Vtm3、Vtm2、Vtm1、Vtm0のそれぞれに対応づけられた上記“所定の定数”の例を示す。これら“所定の定数”は、書き込み時間に対応した値を示している。図10において、閾値電圧Vtm3、Vtm2、Vtm1、Vtm0のそれぞれに対応する定数は、それぞれ“3”、“2”、“1”、“0”で表されるとする。この時、上述の例において、4つのメモリセル21のそれぞれに対する書き込み時間は、“1”、“1”、“1”、“3”となり、総書き込み時間Tallは“6”で与えられる。   FIG. 10 shows an example of the “predetermined constant” associated with each of the threshold voltages Vtm3, Vtm2, Vtm1, and Vtm0. These “predetermined constants” indicate values corresponding to the writing time. In FIG. 10, the constants corresponding to the threshold voltages Vtm3, Vtm2, Vtm1, and Vtm0 are represented by “3”, “2”, “1”, and “0”, respectively. At this time, in the above example, the write time for each of the four memory cells 21 is “1”, “1”, “1”, “3”, and the total write time Tall is given by “6”.

また、シフト値SFTが「1」の場合、図9Bに示されるように、書き込みデータDWとして、「01、01、01、11」が生成される(図3参照)。この時、指定された4つのメモリセル21のそれぞれには、閾値電圧がそれぞれVtm2、Vtm2、Vtm2、Vtm0になるように、電子が注入される。この時、その4つのメモリセル21のそれぞれに対する書き込み時間は、“2”、“2”、“2”、“0”となり、総書き込み時間Tallは“6”で与えられる。   When the shift value SFT is “1”, “01, 01, 01, 11” is generated as the write data DW as shown in FIG. 9B (see FIG. 3). At this time, electrons are injected into each of the four designated memory cells 21 such that the threshold voltages are Vtm2, Vtm2, Vtm2, and Vtm0, respectively. At this time, the write time for each of the four memory cells 21 is “2”, “2”, “2”, “0”, and the total write time Tall is given by “6”.

また、シフト値SFTが「2」の場合、図9Cに示されるように、書き込みデータDWとして、「00、00、00、10」が生成される(図3参照)。この時、指定された4つのメモリセル21のそれぞれには、閾値電圧がそれぞれVtm3、Vtm3、Vtm3、Vtm1になるように、電子が注入される。この時、その4つのメモリセル21のそれぞれに対する書き込み時間は、“3”、“3”、“3”、“1”となり、総書き込み時間Tallは“10”で与えられる。   When the shift value SFT is “2”, “00, 00, 00, 10” is generated as the write data DW as shown in FIG. 9C (see FIG. 3). At this time, electrons are injected into each of the four designated memory cells 21 such that the threshold voltages are Vtm3, Vtm3, Vtm3, and Vtm1, respectively. At this time, the write time for each of the four memory cells 21 is “3”, “3”, “3”, “1”, and the total write time Tall is given by “10”.

また、シフト値SFTが「3」の場合、図9Dに示されるように、書き込みデータDWとして、「11、11、11、01」が生成される(図3参照)。この時、指定された4つのメモリセル21のそれぞれには、閾値電圧がそれぞれVtm0、Vtm0、Vtm0、Vtm2になるように、電子が注入される。この時、その4つのメモリセル21のそれぞれに対する書き込み時間は、“0”、“0”、“0”、“2”となり、総書き込み時間Tallは“2”で与えられる。   When the shift value SFT is “3”, “11, 11, 11, 01” is generated as the write data DW as shown in FIG. 9D (see FIG. 3). At this time, electrons are injected into each of the four designated memory cells 21 such that the threshold voltages are Vtm0, Vtm0, Vtm0, and Vtm2, respectively. At this time, the write time for each of the four memory cells 21 is “0”, “0”, “0”, “2”, and the total write time Tall is given by “2”.

上述のように、シフト値決定回路130(判定回路202)は、書き込みが行われるメモリセル群の閾値電圧Vthに対応した定数の和が最小になるように、つまり、総書き込み時間Tallが最小になるように、シフト値SFTを選択する。すなわち、本発明に係る不揮発性半導体記憶装置10によれば、シフト値SFTとして「3」が選択される。この時、総書き込み時間Tallは“2”で与えられる。   As described above, the shift value determination circuit 130 (determination circuit 202) is configured so that the sum of constants corresponding to the threshold voltage Vth of the memory cell group to be written is minimized, that is, the total write time Tall is minimized. The shift value SFT is selected so that That is, according to the nonvolatile semiconductor memory device 10 of the present invention, “3” is selected as the shift value SFT. At this time, the total write time Tall is given by “2”.

比較のため、従来技術による動作を検討する。特許文献1及び特許文献2に開示された技術によれば、入力データは「正転」あるいは「反転」させられた後に、メモリセル群に書き込まれる。「正転」の場合は、図9Aに示されたシフト値SFTが「0」の場合に対応する。この時、総書き込み時間Tallは“6”で与えられる。一方、「反転」の場合は、図9Bに示されたシフト値SFTが「1」の場合に対応する。この時、総書き込み時間Tallは“6”で与えられる。   For comparison, consider the operation of the prior art. According to the techniques disclosed in Patent Document 1 and Patent Document 2, input data is “normally rotated” or “inverted” and then written into a memory cell group. “Forward” corresponds to the case where the shift value SFT shown in FIG. 9A is “0”. At this time, the total write time Tall is given by “6”. On the other hand, the case of “inversion” corresponds to the case where the shift value SFT shown in FIG. 9B is “1”. At this time, the total write time Tall is given by “6”.

以上に説明されたように、本発明に係る不揮発性半導体記憶装置10及びデータ読み書き方法によれば、データの書き込み時間が低減される。従って、不揮発性半導体記憶装置10の動作速度が向上する。   As described above, according to the nonvolatile semiconductor memory device 10 and the data read / write method according to the present invention, the data write time is reduced. Therefore, the operation speed of the nonvolatile semiconductor memory device 10 is improved.

次に、本発明に係るシフト値決定回路130の構成・動作、及びシフト値SFTを決定する方法を更に詳しく説明する。   Next, the configuration and operation of the shift value determination circuit 130 according to the present invention and the method for determining the shift value SFT will be described in more detail.

(第一の実施の形態)
図11は、本発明の第一の実施の形態に係るシフト値決定回路130の構成を詳しく示すブロック図である。このシフト値決定回路130は、シフト値生成回路131、検証データ生成回路132、カウンタ133、乗算器134、加算器135、計算値レジスタ136、比較器137、参照値レジスタ138、及び結果格納回路139を備えている。シフト値生成回路131は、複数の仮シフト値SFT’(0〜3)を順番に生成し出力する回路である。また、参照値レジスタ138は、「参照値Tref」を格納する。ここで、参照値Trefとは、書き込み時間を示し、書き換え可能な量である。
(First embodiment)
FIG. 11 is a block diagram showing in detail the configuration of the shift value determination circuit 130 according to the first embodiment of the present invention. The shift value determination circuit 130 includes a shift value generation circuit 131, a verification data generation circuit 132, a counter 133, a multiplier 134, an adder 135, a calculation value register 136, a comparator 137, a reference value register 138, and a result storage circuit 139. It has. The shift value generation circuit 131 is a circuit that sequentially generates and outputs a plurality of temporary shift values SFT ′ (0 to 3). The reference value register 138 stores “reference value Tref”. Here, the reference value Tref indicates a writing time and is a rewritable amount.

シフト値生成回路131は、検証データ生成回路132及び結果格納回路139に接続されている。カウンタ133は、検証データ生成回路132に接続されている。乗算器134は、カウンタ133に接続されている。加算器135は、乗算器134に接続されている。計算値レジスタ136は、加算器135に接続されている。比較器137は、計算値レジスタ136、参照値レジスタ138、結果格納回路139に接続されている。   The shift value generation circuit 131 is connected to the verification data generation circuit 132 and the result storage circuit 139. The counter 133 is connected to the verification data generation circuit 132. The multiplier 134 is connected to the counter 133. The adder 135 is connected to the multiplier 134. The calculated value register 136 is connected to the adder 135. The comparator 137 is connected to the calculated value register 136, the reference value register 138, and the result storage circuit 139.

図12は、このシフト値決定回路130の動作を示すフローチャートである。   FIG. 12 is a flowchart showing the operation of the shift value determining circuit 130.

ステップS31:
図7に示されたステップS20の後、このシフト値決定回路130の初期化が行われる。具体的には、シフト値生成回路131から出力される仮シフト値SFT’が「0」に設定される。また、参照値レジスタ138に格納されている参照値Trefが、リセット信号RESによって、最大値に設定される。ここで、最大値とは、書き込み時間のうちで最大の時間を示す。
Step S31:
After step S20 shown in FIG. 7, the shift value determining circuit 130 is initialized. Specifically, the temporary shift value SFT ′ output from the shift value generation circuit 131 is set to “0”. Further, the reference value Tref stored in the reference value register 138 is set to the maximum value by the reset signal RES. Here, the maximum value indicates the maximum time among the writing times.

ステップS32:
シフト値生成回路131は、まず、仮シフト値SFT’として「0」を、検証データ生成回路132と結果格納回路139に出力する。検証データ生成回路132は、上述の通り、その仮シフト値SFT’を用いることによって、多値書き込みデータDWから検証データDTを生成する。その検証データDTは、検証データ生成回路132からカウンタ133に出力される。
Step S32:
First, the shift value generation circuit 131 outputs “0” as the temporary shift value SFT ′ to the verification data generation circuit 132 and the result storage circuit 139. Verification data generation circuit 132, as described above, by using the temporary shift value SFT ', generates verification data DT from the multi-value write data DW M. The verification data DT is output from the verification data generation circuit 132 to the counter 133.

カウンタ133は、検証データDTに含まれる複数の書き込みデータ値(00、01、10、11)のそれぞれの個数をカウントする。例えば、検証データDTが「10、10、10、00」の場合、書き込みデータ値00、01、10、11のそれぞれの個数j、k、l、m(図2参照)として、1個、0個、3個、0個が得られる。カウンタ133は、これら得られた個数を示すカウント信号SCを、乗算器134に出力する。   The counter 133 counts the number of each of the plurality of write data values (00, 01, 10, 11) included in the verification data DT. For example, when the verification data DT is “10, 10, 10, 00”, the numbers j, k, l, and m (see FIG. 2) of the write data values 00, 01, 10, 11 are 1 and 0, respectively. Pieces, three pieces, and zero pieces are obtained. The counter 133 outputs a count signal SC indicating the obtained number to the multiplier 134.

乗算器134は、カウント信号SCが示す複数のデータ値の個数のそれぞれに、所定の定数を掛ける。この所定の定数は、例えば、図10に示された複数の閾値電圧のそれぞれに対応付けられた書き込み時間である。つまり、閾値電圧Vtm3に対応する書き込みデータ値00の個数jには、定数“3”が掛けられる。閾値電圧Vtm2に対応する書き込みデータ値01の個数kには、定数“2”が掛けられる。閾値電圧Vtm1に対応する書き込みデータ値10の個数lには、定数“1”が掛けられる。閾値電圧Vtm0に対応する書き込みデータ値11の個数mには、定数“0”が掛けられる。これにより、複数の乗算値(3×j)、(2×k)、(1×l)、(0×m)が算出される。   Multiplier 134 multiplies each of the number of data values indicated by count signal SC by a predetermined constant. This predetermined constant is, for example, the writing time associated with each of the plurality of threshold voltages shown in FIG. That is, the number “j” of the write data values 00 corresponding to the threshold voltage Vtm3 is multiplied by a constant “3”. The number k of write data values 01 corresponding to the threshold voltage Vtm2 is multiplied by a constant “2”. The number l of the write data values 10 corresponding to the threshold voltage Vtm1 is multiplied by a constant “1”. The number m of write data values 11 corresponding to the threshold voltage Vtm0 is multiplied by a constant “0”. Thereby, a plurality of multiplication values (3 × j), (2 × k), (1 × l), and (0 × m) are calculated.

加算器135は、乗算器134によって算出された複数の乗算値を足し合わせる。これにより、総書き込み時間Tallが算出される。この総書き込み時間Tallは、Tall=(3×j)+(2×k)+(1×l)+(0×m)により与えられる。加算器135は、算出された総書き込み時間Tallを示す書き込み時間信号STを、計算値レジスタ136に出力する。以上に示されたように、これらカウンタ133、乗算器134、加算器135の組み合わせは、図6に示された書き込み時間算出回路201に相当する。   The adder 135 adds a plurality of multiplication values calculated by the multiplier 134. Thereby, the total writing time Tall is calculated. This total writing time Tall is given by Tall = (3 × j) + (2 × k) + (1 × l) + (0 × m). The adder 135 outputs a write time signal ST indicating the calculated total write time Tall to the calculated value register 136. As described above, the combination of the counter 133, the multiplier 134, and the adder 135 corresponds to the write time calculation circuit 201 shown in FIG.

ステップS33:
計算値レジスタ136は、書き込み時間信号STが示す時間を計算値Tcalcとして格納する。また、参照値レジスタ138は、参照値Trefを格納している。上述のように、この参照値Trefの初期値は最大値である。比較器137は、コントロール信号CNTによって活性化されると、この計算値Tcalcと参照値Trefとの比較を実行する。
Step S33:
The calculated value register 136 stores the time indicated by the write time signal ST as a calculated value Tcalc. The reference value register 138 stores a reference value Tref. As described above, the initial value of the reference value Tref is the maximum value. When activated by the control signal CNT, the comparator 137 performs a comparison between the calculated value Tcalc and the reference value Tref.

計算値Tcalcが参照値Trefより小さい場合(ステップS34;Yes)、比較器137は、シフト値設定信号SSを結果格納回路139に出力する。この結果格納回路139は、このシフト値決定回路130が決定するシフト値SFTを格納するための回路である。シフト値設定信号SSを受け取った場合、結果格納回路139は、その時の仮シフト値SFT’を読み込み、その仮シフト値SFT’でシフト値SFTを更新する(ステップS35)。また、比較器137は、その時の計算値Tcalcを新たな参照値Trefとして、参照値レジスタ138に出力する。これにより、参照値レジスタ138に格納される参照値が更新される(ステップS36)。これら計算値レジスタ146、比較器147、参照値レジスタ148、結果格納回路149は、図6に示された判定回路202として機能する。   When the calculated value Tcalc is smaller than the reference value Tref (step S34; Yes), the comparator 137 outputs the shift value setting signal SS to the result storage circuit 139. The result storage circuit 139 is a circuit for storing the shift value SFT determined by the shift value determination circuit 130. When receiving the shift value setting signal SS, the result storage circuit 139 reads the temporary shift value SFT 'at that time, and updates the shift value SFT with the temporary shift value SFT' (step S35). The comparator 137 outputs the calculated value Tcalc at that time to the reference value register 138 as a new reference value Tref. Thereby, the reference value stored in the reference value register 138 is updated (step S36). The calculated value register 146, the comparator 147, the reference value register 148, and the result storage circuit 149 function as the determination circuit 202 shown in FIG.

計算値Tcalcが参照値Trefより大きい場合(ステップS34;No)、ステップS35とステップS36は実行されない。次に、シフト値生成回路131は、次の仮シフト値SFT’を出力する(ステップS37)。具体的には、シフト値生成回路131は、仮シフト値SFT’に1を加算して出力する。このようにして、シフト値生成回路131は、仮シフト値SFT’として「0」、「1」、「2」、「3」を順番に出力する。そして、各仮シフト値SFT’に対して、上述と同様の処理が実行される。   When the calculated value Tcalc is larger than the reference value Tref (step S34; No), step S35 and step S36 are not executed. Next, the shift value generation circuit 131 outputs the next temporary shift value SFT '(step S37). Specifically, the shift value generation circuit 131 adds 1 to the temporary shift value SFT ′ and outputs the result. In this way, the shift value generation circuit 131 sequentially outputs “0”, “1”, “2”, “3” as the temporary shift value SFT ′. Then, the same processing as described above is executed for each temporary shift value SFT '.

ステップS38:
全ての仮シフト値SFT’に対する総書き込み時間Tallの検証が完了した時、結果格納回路139には、最短の総書き込み時間Tallに関連するシフト値SFTが格納されている。このようにして、1つのシフト値SFTが決定される。その後、結果格納回路139に格納されたシフト値SFTは、書き込みデータ変換回路110によって取り込まれ、図7に示されたステップS40が実行される。
Step S38:
When the verification of the total write time Tall for all the temporary shift values SFT ′ is completed, the result storage circuit 139 stores the shift value SFT related to the shortest total write time Tall. In this way, one shift value SFT is determined. Thereafter, the shift value SFT stored in the result storage circuit 139 is taken in by the write data conversion circuit 110, and step S40 shown in FIG. 7 is executed.

このようにして、本実施の形態に係るシフト値決定回路130によれば、書き込みが行われるメモリセル群の閾値電圧Vthに対応した定数の和が最小になるように、シフト値SFTが選択される。従って、本発明に係る不揮発性半導体記憶装置10及びデータ読み書き方法によれば、データの書き込み時間が低減される。   Thus, according to the shift value determining circuit 130 according to the present embodiment, the shift value SFT is selected so that the sum of constants corresponding to the threshold voltage Vth of the memory cell group to which writing is performed is minimized. The Therefore, according to the nonvolatile semiconductor memory device 10 and the data read / write method according to the present invention, the data write time is reduced.

(第二の実施の形態)
図13は、本発明の第二の実施の形態に係るシフト値決定回路130の構成を詳しく示すブロック図である。このシフト値決定回路130は、シフト値生成回路141、検証データ生成回路142、カウンタ143、乗算器144、加算器145、計算値レジスタ146、比較器147、参照値レジスタ148、及び結果格納回路149を備えている。
(Second embodiment)
FIG. 13 is a block diagram showing in detail the configuration of the shift value determination circuit 130 according to the second embodiment of the present invention. The shift value determination circuit 130 includes a shift value generation circuit 141, a verification data generation circuit 142, a counter 143, a multiplier 144, an adder 145, a calculation value register 146, a comparator 147, a reference value register 148, and a result storage circuit 149. It has.

シフト値生成回路141は、検証データ生成回路142、カウンタ143、及び結果格納回路149に接続されている。カウンタ143は、検証データ生成回路142に接続されている。乗算器144は、カウンタ143に接続されている。加算器145は、乗算器144に接続されている。計算値レジスタ146は、加算器145に接続されている。比較器147は、計算値レジスタ146、参照値レジスタ148、結果格納回路149に接続されている。   The shift value generation circuit 141 is connected to the verification data generation circuit 142, the counter 143, and the result storage circuit 149. The counter 143 is connected to the verification data generation circuit 142. The multiplier 144 is connected to the counter 143. The adder 145 is connected to the multiplier 144. The calculated value register 146 is connected to the adder 145. The comparator 147 is connected to the calculated value register 146, the reference value register 148, and the result storage circuit 149.

第一の実施の形態と同様に、まず、このシフト値決定回路130の初期化が行われる(ステップS31)。具体的には、シフト値生成回路141から出力される仮シフト値SFT’が「0」に設定される。また、参照値レジスタ148に格納されている参照値Trefが、リセット信号RESによって、最大値に設定される。ここで、最大値とは、書き込み時間のうちで最大の時間を示す。   As in the first embodiment, first, the shift value determining circuit 130 is initialized (step S31). Specifically, the temporary shift value SFT ′ output from the shift value generation circuit 141 is set to “0”. Further, the reference value Tref stored in the reference value register 148 is set to the maximum value by the reset signal RES. Here, the maximum value indicates the maximum time among the writing times.

シフト値生成回路141は、まず、仮シフト値SFT’として「0」を、検証データ生成回路142及び結果格納回路149と共に、カウンタ143にも出力する。検証データ生成回路142は、上述の通り、その仮シフト値SFT’を用いることによって、多値書き込みデータDWから検証データDTを生成する。カウンタ143は、検証データDTに含まれる複数のデータ値(00、01、10、11)のそれぞれの個数に加えて、仮シフト値SFT’が示すデータ値の個数をカウントする。例えば、仮シフト値SFT’が「0」の場合、データ値11の個数mに更に1が加算され、仮シフト値SFT’が「3」の場合、データ値00の個数jに更に1が加算される。カウンタ143は、これら得られた個数を示すカウント信号SCを、乗算器144に出力する。 First, the shift value generation circuit 141 outputs “0” as the temporary shift value SFT ′ to the counter 143 together with the verification data generation circuit 142 and the result storage circuit 149. Verification data generation circuit 142, as described above, by using the temporary shift value SFT ', generates verification data DT from the multi-value write data DW M. The counter 143 counts the number of data values indicated by the temporary shift value SFT ′ in addition to the number of data values (00, 01, 10, 11) included in the verification data DT. For example, when the temporary shift value SFT ′ is “0”, 1 is further added to the number m of data values 11, and when the temporary shift value SFT ′ is “3”, 1 is further added to the number j of data values 00. Is done. The counter 143 outputs a count signal SC indicating the obtained number to the multiplier 144.

乗算器144は、カウント信号SCが示す複数のデータ値の個数のそれぞれに、図10に示された所定の定数を掛ける。これにより、複数の乗算値(3×j)、(2×k)、(1×l)、(0×m)が算出される。加算器145は、乗算器144によって算出された複数の乗算値を足し合わせる。これにより、総書き込み時間Tallが算出される(ステップS32)。この総書き込み時間Tallは、Tall=(3×j)+(2×k)+(1×l)+(0×m)により与えられる。加算器145は、算出された総書き込み時間Tallを示す書き込み時間信号STを、計算値レジスタ146に出力する。以上に示されたように、これらカウンタ143、乗算器144、加算器145の組み合わせは、図6に示された書き込み時間算出回路201に相当する。   The multiplier 144 multiplies each of the number of data values indicated by the count signal SC by a predetermined constant shown in FIG. Thereby, a plurality of multiplication values (3 × j), (2 × k), (1 × l), and (0 × m) are calculated. The adder 145 adds the plurality of multiplication values calculated by the multiplier 144. Thereby, the total writing time Tall is calculated (step S32). This total writing time Tall is given by Tall = (3 × j) + (2 × k) + (1 × l) + (0 × m). The adder 145 outputs a write time signal ST indicating the calculated total write time Tall to the calculated value register 146. As described above, the combination of the counter 143, the multiplier 144, and the adder 145 corresponds to the write time calculation circuit 201 shown in FIG.

計算値レジスタ146は、書き込み時間信号STが示す時間を計算値Tcalcとして格納する。また、参照値レジスタ148は、参照値Trefを格納している。比較器147は、コントロール信号CNTによって活性化されると、この計算値Tcalcと参照値Trefとの比較を実行する(ステップS33)。計算値Tcalcが参照値Trefより小さい場合(ステップS34;Yes)、結果格納回路149に格納されているシフト値SFTは、その時の仮シフト値SFT’で更新される(ステップS35)。また、参照値レジスタ148に格納されている参照値が、その時の計算値Tcalcで更新される(ステップS36)。   The calculated value register 146 stores the time indicated by the write time signal ST as a calculated value Tcalc. The reference value register 148 stores a reference value Tref. When activated by the control signal CNT, the comparator 147 performs a comparison between the calculated value Tcalc and the reference value Tref (step S33). When the calculated value Tcalc is smaller than the reference value Tref (step S34; Yes), the shift value SFT stored in the result storage circuit 149 is updated with the temporary shift value SFT 'at that time (step S35). Further, the reference value stored in the reference value register 148 is updated with the calculated value Tcalc at that time (step S36).

計算値Tcalcが参照値Trefより大きい場合(ステップS34;No)、ステップS35とステップS36は実行されない。次に、シフト値生成回路141は、次の仮シフト値SFT’を出力する(ステップS37)。具体的には、シフト値生成回路141は、仮シフト値SFT’に1を加算して出力する。このようにして、シフト値生成回路141は、仮シフト値SFT’として「0」、「1」、「2」、「3」を順番に出力する。そして、各仮シフト値SFT’に対して、上述と同様の処理が実行される。   When the calculated value Tcalc is larger than the reference value Tref (step S34; No), step S35 and step S36 are not executed. Next, the shift value generation circuit 141 outputs the next temporary shift value SFT '(step S37). Specifically, the shift value generation circuit 141 adds 1 to the temporary shift value SFT ′ and outputs the result. In this way, the shift value generation circuit 141 sequentially outputs “0”, “1”, “2”, and “3” as the temporary shift value SFT ′. Then, the same processing as described above is executed for each temporary shift value SFT '.

全ての仮シフト値SFT’に対する総書き込み時間Tallの検証が完了した時(ステップS38;Yes)、結果格納回路149には、最短の総書き込み時間Tallに関連するシフト値SFTが格納されている。このようにして、1つのシフト値SFTが決定される。その後、結果格納回路149に格納されたシフト値SFTは、書き込みデータ変換回路110によって取り込まれ、図7に示されたステップS40が実行される。   When the verification of the total write time Tall for all the temporary shift values SFT 'is completed (step S38; Yes), the result storage circuit 149 stores the shift value SFT related to the shortest total write time Tall. In this way, one shift value SFT is determined. Thereafter, the shift value SFT stored in the result storage circuit 149 is taken in by the write data conversion circuit 110, and step S40 shown in FIG. 7 is executed.

本実施の形態によれば、総書き込み時間Tallの算出に、メモリセル群に書き込まれる書き込みデータDWだけでなく、シフト値格納メモリセル26に書き込まれるシフト値SFTも考慮に入れられる。従って、総書き込み時間Tallがより正確に算出されるという効果が得られる。   According to the present embodiment, the shift value SFT written in the shift value storage memory cell 26 as well as the write data DW written in the memory cell group is taken into consideration in the calculation of the total write time Tall. Therefore, the effect that the total writing time Tall is calculated more accurately can be obtained.

(第三の実施の形態)
図14は、本発明の第三の実施の形態に係るシフト値決定回路130の構成を詳しく示すブロック図である。このシフト値決定回路130は、シフト値生成回路151、複数の検証データ生成回路152、乗算器154、加算器155、計算値レジスタ156、比較器157、参照値レジスタ158、及び結果格納回路159を備えている。
(Third embodiment)
FIG. 14 is a block diagram showing in detail the configuration of the shift value determination circuit 130 according to the third embodiment of the present invention. The shift value determination circuit 130 includes a shift value generation circuit 151, a plurality of verification data generation circuits 152, a multiplier 154, an adder 155, a calculation value register 156, a comparator 157, a reference value register 158, and a result storage circuit 159. I have.

シフト値生成回路151は、複数の検証データ生成回路152、乗算器154、及び結果格納回路159に接続されている。乗算器154は、複数の検証データ生成回路152に接続されている。加算器155は、乗算器154に接続されている。計算値レジスタ156は、加算器155に接続されている。比較器157は、計算値レジスタ156、参照値レジスタ158、結果格納回路159に接続されている。   The shift value generation circuit 151 is connected to a plurality of verification data generation circuits 152, a multiplier 154, and a result storage circuit 159. The multiplier 154 is connected to a plurality of verification data generation circuits 152. The adder 155 is connected to the multiplier 154. The calculated value register 156 is connected to the adder 155. The comparator 157 is connected to the calculated value register 156, the reference value register 158, and the result storage circuit 159.

第一の実施の形態と同様に、まず、このシフト値決定回路130の初期化が行われる(ステップS31)。具体的には、シフト値生成回路151から出力される仮シフト値SFT’が「0」に設定される。また、参照値レジスタ158に格納されている参照値Trefが、リセット信号RESによって、最大値に設定される。ここで、最大値とは、書き込み時間のうちで最大の時間を示す。   As in the first embodiment, first, the shift value determining circuit 130 is initialized (step S31). Specifically, the temporary shift value SFT ′ output from the shift value generation circuit 151 is set to “0”. Also, the reference value Tref stored in the reference value register 158 is set to the maximum value by the reset signal RES. Here, the maximum value indicates the maximum time among the writing times.

シフト値生成回路151は、まず、仮シフト値SFT’として「0」を、複数の検証データ生成回路152、乗算器154、及び結果格納回路159に出力する。複数の検証データ生成回路152は、多値書き込みデータDWを1つのメモリセルに格納される1データ(“00”、“01”、“10”、“11”)ごとにパラレルに受け取る。そして、各々の検証データ生成回路152は、仮シフト値SFT’を用いることによって、受け取ったデータから検証データDTを生成する。複数の検証データ生成回路152のそれぞれは、複数の検証データDTのそれぞれを乗算器154に出力する。 The shift value generation circuit 151 first outputs “0” as the temporary shift value SFT ′ to the plurality of verification data generation circuits 152, the multiplier 154, and the result storage circuit 159. A plurality of verification data generation circuit 152, 1 data stored multi-level write data DW M in one memory cell ( "00", "01", "10", "11") receives in parallel for each. Each verification data generation circuit 152 generates verification data DT from the received data by using the temporary shift value SFT ′. Each of the plurality of verification data generation circuits 152 outputs each of the plurality of verification data DT to the multiplier 154.

乗算器154は、複数の検証データDT及び仮シフト値SFT’をパラレルに受け取る。そして、乗算器154は、複数の検証データDT及び仮シフト値SFT’が示すデータ値に応じて、それぞれの個数(1個)に、図10に示された所定の定数を掛ける。これにより、複数の乗算値が算出される。加算器155は、乗算器154によって算出された複数の乗算値を足し合わせる。これにより、総書き込み時間Tallが算出される(ステップS32)。加算器155は、算出された総書き込み時間Tallを示す書き込み時間信号STを、計算値レジスタ156に出力する。   The multiplier 154 receives the plurality of verification data DT and the temporary shift value SFT ′ in parallel. Then, the multiplier 154 multiplies the number (one) by the predetermined constant shown in FIG. 10 according to the data values indicated by the plurality of verification data DT and the temporary shift value SFT ′. Thereby, a plurality of multiplication values are calculated. The adder 155 adds a plurality of multiplication values calculated by the multiplier 154. Thereby, the total writing time Tall is calculated (step S32). The adder 155 outputs a write time signal ST indicating the calculated total write time Tall to the calculated value register 156.

計算値レジスタ156は、書き込み時間信号STが示す時間を計算値Tcalcとして格納する。また、参照値レジスタ158は、参照値Trefを格納している。比較器157は、コントロール信号CNTによって活性化されると、この計算値Tcalcと参照値Trefとの比較を実行する(ステップS33)。計算値Tcalcが参照値Trefより小さい場合(ステップS34;Yes)、結果格納回路159に格納されているシフト値SFTは、その時の仮シフト値SFT’で更新される(ステップS35)。また、参照値レジスタ158に格納されている参照値が、その時の計算値Tcalcで更新される(ステップS36)。   The calculated value register 156 stores the time indicated by the write time signal ST as a calculated value Tcalc. The reference value register 158 stores a reference value Tref. When activated by the control signal CNT, the comparator 157 performs a comparison between the calculated value Tcalc and the reference value Tref (step S33). When the calculated value Tcalc is smaller than the reference value Tref (step S34; Yes), the shift value SFT stored in the result storage circuit 159 is updated with the temporary shift value SFT 'at that time (step S35). Further, the reference value stored in the reference value register 158 is updated with the calculated value Tcalc at that time (step S36).

計算値Tcalcが参照値Trefより大きい場合(ステップS34;No)、ステップS35とステップS36は実行されない。次に、シフト値生成回路151は、次の仮シフト値SFT’を出力する(ステップS37)。具体的には、シフト値生成回路151は、仮シフト値SFT’に1を加算して出力する。このようにして、シフト値生成回路151は、仮シフト値SFT’として「0」、「1」、「2」、「3」を順番に出力する。そして、各仮シフト値SFT’に対して、上述と同様の処理が実行される。   When the calculated value Tcalc is larger than the reference value Tref (step S34; No), step S35 and step S36 are not executed. Next, the shift value generation circuit 151 outputs the next temporary shift value SFT '(step S37). Specifically, the shift value generation circuit 151 adds 1 to the temporary shift value SFT ′ and outputs the result. In this way, the shift value generation circuit 151 sequentially outputs “0”, “1”, “2”, and “3” as the temporary shift value SFT ′. Then, the same processing as described above is executed for each temporary shift value SFT '.

全ての仮シフト値SFT’に対する総書き込み時間Tallの検証が完了した時(ステップS38;Yes)、結果格納回路159には、最短の総書き込み時間Tallに関連するシフト値SFTが格納されている。このようにして、1つのシフト値SFTが決定される。その後、結果格納回路159に格納されたシフト値SFTは、書き込みデータ変換回路110によって取り込まれ、図7に示されたステップS40が実行される。   When the verification of the total write time Tall for all the temporary shift values SFT 'is completed (step S38; Yes), the result storage circuit 159 stores the shift value SFT related to the shortest total write time Tall. In this way, one shift value SFT is determined. Thereafter, the shift value SFT stored in the result storage circuit 159 is taken in by the write data conversion circuit 110, and step S40 shown in FIG. 7 is executed.

本実施の形態によれば、多値書き込みデータDW、複数の検証データDT、複数の乗算値がパラレルに入出力される。従って、総書き込み時間Tallの算出時間が低減される。従って、データの書き込み時間が更に低減されるという効果が得られる。 According to the present embodiment, multi-value write data DW M , a plurality of verification data DT, and a plurality of multiplication values are input / output in parallel. Therefore, the calculation time of the total writing time Tall is reduced. Therefore, the effect that the data writing time is further reduced can be obtained.

(第四の実施の形態)
メモリセルに格納されるデータは、4値データ(2ビットデータ)に限られない。図15は、本発明に係る不揮発性半導体記憶装置における閾値電圧Vthの分布の他の例を示している。図15において、縦軸は、メモリセルの閾値電圧Vthを表し、横軸は、メモリセルの数(分布頻度)を表している。この不揮発性半導体記憶装置によれば、例えば、1つのメモリセルに8値(3ビット)データを格納することが可能であり、図15に示されるように、メモリセル全体の閾値電圧Vthの分布は、分布B0〜B7の8つを有している。ここで、分布B0〜B7のそれぞれを代表する閾値電圧Vthを、閾値電圧Vtm0〜Vtm7とする。また、分布B0〜B7のそれぞれに含まれるメモリセル21の数は、q〜jであるとする。
(Fourth embodiment)
Data stored in the memory cell is not limited to quaternary data (2-bit data). FIG. 15 shows another example of the distribution of the threshold voltage Vth in the nonvolatile semiconductor memory device according to the present invention. In FIG. 15, the vertical axis represents the threshold voltage Vth of the memory cell, and the horizontal axis represents the number of memory cells (distribution frequency). According to this nonvolatile semiconductor memory device, for example, 8-level (3-bit) data can be stored in one memory cell, and as shown in FIG. 15, the distribution of threshold voltage Vth of the entire memory cell Has eight distributions B0 to B7. Here, the threshold voltage Vth representing each of the distributions B0 to B7 is defined as threshold voltages Vtm0 to Vtm7. The number of memory cells 21 included in each of the distributions B0 to B7 is assumed to be q to j.

メモリセルに対するデータの書き込み時間は、書き込み後の閾値電圧Vthに依存する。メモリセルトランジスタに与える電位と、その電位を与える時間が一定の場合、書き込み後の閾値電圧Vthが高いほど、電子の注入に要する時間、すなわち書き込み時間は長くなる。逆に、書き込み後の閾値電圧Vthが低いほど、書き込み時間は短くなる。図15に示された例の場合、閾値電圧Vtm7が最も高く、書き込み時間は最も長くなる。一方、閾値電圧Vtm0は最も低く、書き込み時間は最も短くなる。図16は、閾値電圧Vtm7〜Vtm0のそれぞれに対応する所定の定数を示す。図16に示されるように、閾値電圧Vtm7〜Vtm0のそれぞれに対応する所定の定数は、所定の単位を用いて、それぞれ“7”〜“0”で表されるとする。   The data writing time for the memory cell depends on the threshold voltage Vth after writing. When the potential applied to the memory cell transistor and the time during which the potential is applied are constant, the higher the threshold voltage Vth after writing, the longer the time required for electron injection, that is, the writing time. Conversely, the lower the threshold voltage Vth after writing, the shorter the writing time. In the example shown in FIG. 15, the threshold voltage Vtm7 is the highest and the writing time is the longest. On the other hand, the threshold voltage Vtm0 is the lowest and the writing time is the shortest. FIG. 16 shows predetermined constants corresponding to the threshold voltages Vtm7 to Vtm0. As shown in FIG. 16, it is assumed that the predetermined constants corresponding to the threshold voltages Vtm7 to Vtm0 are represented by “7” to “0”, respectively, using predetermined units.

この時、選択されたメモリセル群に対する総書き込み時間Tallは、Tall=(7×j)+(6×k)+(5×l)+(4×m)+(3×n)+(2×o)+(1×p)+(0×q)により与えられる。上述の実施の形態と同様に、データ処理回路100のシフト値決定回路130は、この総書き込み時間Tallが最小になるように、つまり、メモリセル群の閾値電圧Vthの和が最小になるように、複数のシフト値SFTから1つのシフト値SFTを選択する。   At this time, the total write time Tall for the selected memory cell group is Tall = (7 × j) + (6 × k) + (5 × l) + (4 × m) + (3 × n) + (2 Xo) + (1 * p) + (0 * q). Similar to the above-described embodiment, the shift value determination circuit 130 of the data processing circuit 100 is configured so that the total write time Tall is minimized, that is, the sum of the threshold voltages Vth of the memory cell group is minimized. Then, one shift value SFT is selected from the plurality of shift values SFT.

より一般的に、N値データ(Nは3以上の自然数)の場合、そのN値データは、第1〜第Nデータ値を含む。また、メモリセルは、N段階の閾値電圧(第1〜第N閾値電圧)を有する。この場合、複数のシフト値SFTとして、最大N!種類のシフト値SFTが存在し得る。シフト値SFT自身をN値データが格納されるメモリセルと同様のメモリセルに格納するために、N種類のシフト値SFT(第1〜第Nシフト値)が用いられると好適である。このN種類のシフト値SFTは、それぞれ異なるN種類の対応関係を示す。例えば、第1シフト値は、第1〜第Nデータ値のそれぞれを、第1〜第N閾値電圧のそれぞれに対応づける。第iシフト値(iは2以上N以下の自然数)は、第1〜第(i−1)データ値のそれぞれを、第(N−i+2)〜第N閾値電圧のそれぞれに対応づけ、且つ、第i〜第Nデータ値のそれぞれを、第1〜第(N−i+1)閾値電圧のそれぞれに対応づける(図3参照)。この場合、シフト値SFTが変化するごとに、閾値電圧(書き込みデータ)が“シフト”する。   More generally, in the case of N-value data (N is a natural number of 3 or more), the N-value data includes first to Nth data values. The memory cell has N-stage threshold voltages (first to Nth threshold voltages). In this case, a maximum of N! There may be different types of shift values SFT. N types of shift values SFT (first to Nth shift values) are preferably used to store the shift value SFT itself in a memory cell similar to a memory cell in which N-value data is stored. The N types of shift values SFT indicate N types of corresponding relationships. For example, the first shift value associates each of the first to Nth data values with each of the first to Nth threshold voltages. The i-th shift value (i is a natural number greater than or equal to 2 and less than or equal to N) associates each of the first to (i−1) data values with each of the (N−i + 2) to Nth threshold voltages, and Each of the i-th to N-th data values is associated with each of the first to (N−i + 1) th threshold voltages (see FIG. 3). In this case, every time the shift value SFT changes, the threshold voltage (write data) shifts.

以上に説明されたように、本発明に係る不揮発性半導体記憶装置10及びデータ読み書き方法によれば、データの書き込み時間が低減される。従って、不揮発性半導体記憶装置10の動作速度が向上する。   As described above, according to the nonvolatile semiconductor memory device 10 and the data read / write method according to the present invention, the data write time is reduced. Therefore, the operation speed of the nonvolatile semiconductor memory device 10 is improved.

図1は、多値型の不揮発性半導体記憶装置におけるメモリセルの閾値電圧の分布を示す図である。FIG. 1 is a diagram showing a threshold voltage distribution of memory cells in a multi-value type nonvolatile semiconductor memory device. 図2は、本発明に係る不揮発性半導体記憶装置における閾値電圧の分布例を示す図である。FIG. 2 is a diagram showing an example of threshold voltage distribution in the nonvolatile semiconductor memory device according to the present invention. 図3は、本発明におけるシフト値を説明するための図である。FIG. 3 is a diagram for explaining the shift value in the present invention. 図4は、本発明に係る不揮発性半導体記憶装置の構成を示すブロック図である。FIG. 4 is a block diagram showing a configuration of the nonvolatile semiconductor memory device according to the present invention. 図5は、本発明に係る不揮発性半導体記憶装置のメモリセルアレイの構成を示す回路図である。FIG. 5 is a circuit diagram showing the configuration of the memory cell array of the nonvolatile semiconductor memory device according to the present invention. 図6は、本発明に係る不揮発性半導体記憶装置のシフト値決定回路の構成を示すブロック図である。FIG. 6 is a block diagram showing the configuration of the shift value determination circuit of the nonvolatile semiconductor memory device according to the present invention. 図7は、本発明に係る不揮発性半導体記憶装置における書き込み動作を示すフローチャートである。FIG. 7 is a flowchart showing a write operation in the nonvolatile semiconductor memory device according to the present invention. 図8は、本発明に係る不揮発性半導体記憶装置における読み出し動作を示すフローチャートである。FIG. 8 is a flowchart showing a read operation in the nonvolatile semiconductor memory device according to the present invention. 図9Aは、本発明に係る不揮発性半導体記憶装置による効果を説明するための図である。FIG. 9A is a diagram for explaining the effect of the nonvolatile semiconductor memory device according to the present invention. 図9Bは、本発明に係る不揮発性半導体記憶装置による効果を説明するための図である。FIG. 9B is a diagram for explaining the effect of the nonvolatile semiconductor memory device according to the present invention. 図9Cは、本発明に係る不揮発性半導体記憶装置による効果を説明するための図である。FIG. 9C is a diagram for explaining the effect of the nonvolatile semiconductor memory device according to the present invention. 図9Dは、本発明に係る不揮発性半導体記憶装置による効果を説明するための図である。FIG. 9D is a diagram for explaining the effect of the nonvolatile semiconductor memory device according to the present invention. 図10は、本発明に係る不揮発性半導体記憶装置による効果を説明するための図である。FIG. 10 is a diagram for explaining the effect of the nonvolatile semiconductor memory device according to the present invention. 図11は、本発明の第一の実施の形態に係るシフト値決定回路の構成を示すブロック図である。FIG. 11 is a block diagram showing the configuration of the shift value determining circuit according to the first embodiment of the present invention. 図12は、本発明の第一の実施の形態に係る不揮発性半導体記憶装置における書き込み動作を示すフローチャートである。FIG. 12 is a flowchart showing a write operation in the nonvolatile semiconductor memory device according to the first embodiment of the present invention. 図13は、本発明の第二の実施の形態に係るシフト値決定回路の構成を示すブロック図である。FIG. 13 is a block diagram showing a configuration of a shift value determining circuit according to the second embodiment of the present invention. 図14は、本発明の第三の実施の形態に係るシフト値決定回路の構成を示すブロック図である。FIG. 14 is a block diagram showing a configuration of a shift value determining circuit according to the third embodiment of the present invention. 図15は、本発明の第四の実施の形態に係る不揮発性半導体記憶装置における書き込み動作を説明するための図である。FIG. 15 is a diagram for explaining a write operation in the nonvolatile semiconductor memory device according to the fourth embodiment of the present invention. 図16は、本発明の第四の実施の形態に係る不揮発性半導体記憶装置における書き込み動作を説明するための図である。FIG. 16 is a diagram for explaining a write operation in the nonvolatile semiconductor memory device according to the fourth embodiment of the present invention.

符号の説明Explanation of symbols

10 不揮発性半導体記憶装置
20 メモリセルアレイ
21 メモリセル
25 シフト値格納メモリセル群
26 シフト値格納メモリセル
30 I/Oバッファ
41 多値変換部
42 2値変換部
50 R/W制御回路
61 Xデコーダ
62 Yデコーダ
63 Yセレクタ
100 データ処理回路
110 書き込みデータ変換回路
120 読み出しデータ変換回路
130 シフト値決定回路
131、141、151 シフト値生成回路
132、142、152 検証データ生成回路
133、143 カウンタ
134、144、154 乗算器
135、145、155 加算器
136、146、156 計算値レジスタ
137、147、157 比較器
138、148、158 参照値レジスタ
139、149、159 結果格納回路
201 書き込み時間算出回路
202 判定回路
DESCRIPTION OF SYMBOLS 10 Nonvolatile semiconductor memory device 20 Memory cell array 21 Memory cell 25 Shift value storage memory cell group 26 Shift value storage memory cell 30 I / O buffer 41 Multi-value conversion part 42 Binary conversion part 50 R / W control circuit 61 X decoder 62 Y decoder 63 Y selector 100 Data processing circuit 110 Write data conversion circuit 120 Read data conversion circuit 130 Shift value determination circuit 131, 141, 151 Shift value generation circuit 132, 142, 152 Verification data generation circuit 133, 143 Counter 134, 144, 154 Multiplier 135, 145, 155 Adder 136, 146, 156 Calculated value register 137, 147, 157 Comparator 138, 148, 158 Reference value register 139, 149, 159 Result storage circuit 201 Write time calculation times 202 decision circuit

Claims (5)

多値データが書き込まれるメモリセルと、A memory cell to which multi-value data is written;
前記メモリセルに対する書き込みデータとして受け取った第1多値書き込みデータを、前記メモリセルに実際に書き込まれる第2多値書き込みデータに変換する変換処理を実行するデータ処理回路とA data processing circuit that executes conversion processing for converting first multi-value write data received as write data to the memory cell into second multi-value write data that is actually written to the memory cell;
を備え、With
書き込み後の前記メモリセルの閾値電圧は、前記第2多値書き込みデータに依存し、The threshold voltage of the memory cell after writing depends on the second multi-level write data,
前記書き込み後の閾値電圧が高いほど、前記メモリセルに対する前記第2多値書き込みデータの書き込み時間は長くなり、The higher the threshold voltage after writing, the longer the write time of the second multi-value write data to the memory cell,
前記変換処理において、前記データ処理回路は、前記第1多値書き込みデータと前記第2多値書き込みデータとの間の変換パターンを複数の変換パターンの中から選択し、In the conversion process, the data processing circuit selects a conversion pattern between the first multi-value write data and the second multi-value write data from a plurality of conversion patterns,
複数の前記メモリセルに対するデータ書き込み時、前記データ処理回路は、前記複数の変換パターンの中から前記複数のメモリセルに対する前記書き込み時間の総和が最小となるような1つを選択し、前記選択された1つの変換パターンに従って前記変換処理を実行するWhen writing data to a plurality of memory cells, the data processing circuit selects one of the plurality of conversion patterns so that the sum of the write times to the plurality of memory cells is minimized, and the selected The conversion process is executed according to a single conversion pattern
不揮発性半導体記憶装置。Nonvolatile semiconductor memory device.
請求項1に記載の不揮発性半導体記憶装置であって、The nonvolatile semiconductor memory device according to claim 1,
前記複数の変換パターンは、複数のシフト値のそれぞれに対応付けられ、The plurality of conversion patterns are associated with each of a plurality of shift values,
前記複数のメモリセルに対するデータ書き込み時、前記データ処理回路は、前記複数のシフト値の中から前記複数のメモリセルに対する前記書き込み時間の総和が最小となるような1つを選択し、前記選択された1つのシフト値を用いて前記変換処理を実行するAt the time of writing data to the plurality of memory cells, the data processing circuit selects one of the plurality of shift values so that the sum of the writing times to the plurality of memory cells is minimized, and the selected one is selected. The conversion process is executed using a single shift value.
不揮発性半導体記憶装置。Nonvolatile semiconductor memory device.
請求項2に記載の不揮発性半導体記憶装置であって、The nonvolatile semiconductor memory device according to claim 2,
前記複数のシフト値は、前記第1多値書き込みデータ及び前記第2多値書き込みデータと同じビット数の多値データによって表され、The plurality of shift values are represented by multi-value data having the same number of bits as the first multi-value write data and the second multi-value write data.
書き込み対象である前記複数のメモリセルは、前記選択された1つのシフト値を示す前記多値データが書き込まれるシフト値格納メモリセルも含むThe plurality of memory cells to be written also include shift value storage memory cells to which the multi-value data indicating the selected one shift value is written.
不揮発性半導体記憶装置。Nonvolatile semiconductor memory device.
請求項2又は3に記載の不揮発性半導体記憶装置であって、The nonvolatile semiconductor memory device according to claim 2, wherein
前記多値データは、第1〜第Nデータ値(Nは3以上の自然数)を含み、The multi-value data includes first to Nth data values (N is a natural number of 3 or more),
前記複数のシフト値は、第1〜第Nシフト値を含み、The plurality of shift values include first to Nth shift values,
前記第1多値書き込みデータと前記第2多値書き込みデータとの間の前記変換パターンは、前記第1〜第Nシフト値のそれぞれに対応付けられたN種類が存在するThe conversion pattern between the first multi-value write data and the second multi-value write data has N types associated with the first to N-th shift values.
不揮発性半導体記憶装置。Nonvolatile semiconductor memory device.
請求項1乃至4のいずれか一項に記載の不揮発性半導体記憶装置であって、The nonvolatile semiconductor memory device according to claim 1,
前記データ処理回路は、The data processing circuit includes:
前記複数の変換パターンのそれぞれに従って前記変換処理が実行された場合の前記複数のメモリセルに対する前記書き込み時間の総和を算出し、前記複数の変換パターンのそれぞれに対応する前記書き込み時間の総和を示す複数の書き込み時間信号を生成する書き込み時間算出回路と、A plurality of write times corresponding to each of the plurality of conversion patterns, the total of the write times for the plurality of memory cells when the conversion process is executed according to each of the plurality of conversion patterns; A write time calculation circuit for generating a write time signal of
前記複数の書き込み時間信号に基づいて、前記複数の変換パターンの中から前記書き込み時間の総和が最小となる前記1つの変換パターンを選択する判定回路とA determination circuit that selects, based on the plurality of write time signals, the one conversion pattern that minimizes the sum of the write times from the plurality of conversion patterns;
を備えるWith
不揮発性半導体記憶装置。Nonvolatile semiconductor memory device.
JP2004205141A 2004-07-12 2004-07-12 Nonvolatile semiconductor memory device and data read / write method Expired - Fee Related JP4601344B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004205141A JP4601344B2 (en) 2004-07-12 2004-07-12 Nonvolatile semiconductor memory device and data read / write method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004205141A JP4601344B2 (en) 2004-07-12 2004-07-12 Nonvolatile semiconductor memory device and data read / write method

Publications (2)

Publication Number Publication Date
JP2006031755A JP2006031755A (en) 2006-02-02
JP4601344B2 true JP4601344B2 (en) 2010-12-22

Family

ID=35897934

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004205141A Expired - Fee Related JP4601344B2 (en) 2004-07-12 2004-07-12 Nonvolatile semiconductor memory device and data read / write method

Country Status (1)

Country Link
JP (1) JP4601344B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009146555A (en) * 2007-11-20 2009-07-02 Toshiba Corp Nonvolatile semiconductor storage device
JP2009134799A (en) * 2007-11-29 2009-06-18 Toshiba Corp Memory system
WO2011145563A1 (en) 2010-05-17 2011-11-24 日立金属株式会社 Magnetic encoder
JP7023204B2 (en) 2018-09-14 2022-02-21 キオクシア株式会社 Memory system and memory system control method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005100527A (en) * 2003-09-25 2005-04-14 Matsushita Electric Ind Co Ltd Semiconductor nonvolatile storage device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09204783A (en) * 1996-01-25 1997-08-05 Sony Corp Semiconductor nonvolatile memory

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005100527A (en) * 2003-09-25 2005-04-14 Matsushita Electric Ind Co Ltd Semiconductor nonvolatile storage device

Also Published As

Publication number Publication date
JP2006031755A (en) 2006-02-02

Similar Documents

Publication Publication Date Title
KR101662621B1 (en) Methods and apparatus for programming multiple program values per signal level in flash memories
US7751241B2 (en) Read method of memory device
KR100916874B1 (en) Semiconductor memory device capable of correcting a read level properly
US9423969B2 (en) Sensing operations in a memory device
KR20110061650A (en) Methods and apparatus for soft data generation for memory devices based on performance factor adjustment
KR20090005549A (en) Flash memory system and error correction method thereof
WO2007116393A2 (en) Method for generating soft bits in flash memories
JP2011527159A (en) Method and apparatus for inter-cell interference mitigation using modulation coding
KR20110039310A (en) Methods and apparatus for interfacing between a flash memory controller and a flash memory array
JP4270898B2 (en) Nonvolatile semiconductor memory device
EP2351044B1 (en) Data transfer and programming in a memory device
JP4601344B2 (en) Nonvolatile semiconductor memory device and data read / write method
US7894258B2 (en) Flash memory device for determining most significant bit program
JPWO2005093760A1 (en) Semiconductor device and method for writing data to semiconductor device
JP4010400B2 (en) Semiconductor memory device and data write control method
JP5355667B2 (en) Memory system
JPH1011980A (en) Semiconductor non-volatile memory device
KR101261052B1 (en) Multi level cell memory device and data store method of the memory device
JP3999151B2 (en) Semiconductor memory device
JP5270627B2 (en) Semiconductor device
Micheloni et al. MLC storage
Crippa et al. 10 MLC storage

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20060221

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070613

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100318

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100408

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100602

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100928

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

Free format text: PAYMENT UNTIL: 20131008

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees