JP2010044620A - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP2010044620A
JP2010044620A JP2008208649A JP2008208649A JP2010044620A JP 2010044620 A JP2010044620 A JP 2010044620A JP 2008208649 A JP2008208649 A JP 2008208649A JP 2008208649 A JP2008208649 A JP 2008208649A JP 2010044620 A JP2010044620 A JP 2010044620A
Authority
JP
Japan
Prior art keywords
data
page
memory
write
memory block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008208649A
Other languages
English (en)
Other versions
JP4649503B2 (ja
Inventor
Hideki Tsuji
秀貴 辻
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2008208649A priority Critical patent/JP4649503B2/ja
Priority to TW098124148A priority patent/TW201021042A/zh
Priority to US12/508,992 priority patent/US20100042777A1/en
Priority to CN200910165394A priority patent/CN101650970A/zh
Priority to KR1020090074157A priority patent/KR101076981B1/ko
Publication of JP2010044620A publication Critical patent/JP2010044620A/ja
Application granted granted Critical
Publication of JP4649503B2 publication Critical patent/JP4649503B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/077Constructional details, e.g. mounting of circuits in the carrier
    • G06K19/0772Physical layout of the record carrier
    • G06K19/07732Physical layout of the record carrier the record carrier having a housing or construction similar to well-known portable memory devices, such as SD cards, USB or memory sticks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7202Allocation control and policies
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

【課題】データの書き込み速度を向上出来る半導体装置を提供すること。
【解決手段】2ビット以上のデータを保持可能な第1メモリブロックBLK1と、1ビットのデータを保持可能な第2メモリブロックBLK2とを有し、ページ単位でデータをプログラム可能な不揮発性半導体メモリ11と、前記不揮発性半導体メモリ11にデータのプログラムを命令するコントローラ12とを具備し、前記第1メモリブロックBLK1において前記ページは前記データのビット毎に割り当てられ、且つビット毎に書き込みに要する時間が異なり、書き込みデータの最終ページが前記書き込みに要する時間の最も長いビットに相当する場合、前記コントローラ12は前記不揮発性半導体メモリ11に対して、前記第2メモリブロックのいずれかのページにプログラムを実行するよう命令する。
【選択図】図8

Description

この発明は半導体装置に関する。例えば、不揮発性の半導体メモリと、その動作を制御するコントローラとを備えたメモリシステムに関する。
NAND型フラッシュメモリにおいては、データは複数のメモリセルにつき一括して書き込まれる。この一括書き込みの単位はページと呼ばれる(例えば特許文献1参照)。そして近年のNAND型フラッシュメモリの大容量化に伴って、ページサイズは大きくなってきている。そのためNAND型フラッシュメモリは、サイズの大きいデータを書き込む際の書き込み性能は向上している。
しかし、NAND型フラッシュメモリに対するホスト機器からのアクセス単位は、必ずしも大きい場合に限られない。特に、書き込むべきデータのサイズがページサイズ未満であるような場合には、NAND型フラッシュメモリの書き込み性能を十分に発揮出来ず、書き込み速度が低下するという問題があった。
特開2007−242163号公報
この発明は、データの書き込み速度を向上出来る半導体装置を提供する。
この発明の一態様に係る半導体装置は、2ビット以上のデータを保持可能な複数のメモリセルを備えた第1メモリブロックと、1ビットのデータを保持可能な複数のメモリセルを備えた第2メモリブロックとを有し、前記第1、第2メモリブロックに対して複数の前記メモリセルの集合であるページ単位でデータをプログラム可能な不揮発性半導体メモリと、ホスト機器から受信した書き込みデータを前記不揮発性半導体メモリへ供給し、前記第1メモリブロックまたは第2メモリブロックへの前記書き込みデータのプログラムを、前記ページ毎に前記不揮発性半導体メモリに命令するコントローラとを具備し、前記第1メモリブロックにおいて前記ページは、保持可能な前記データのビット毎に割り当てられ、且つビット毎に書き込みに要する時間が異なり、前記書き込みデータの最終ページが、前記書き込みに要する時間の最も長いビットに相当する場合、前記コントローラは前記不揮発性半導体メモリに対して、当該データについてのプログラムを前記第2メモリブロックのいずれかのページに実行するよう命令する。
本発明によれば、データの書き込み速度を向上出来る半導体装置を提供出来る。
以下、この発明の実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
[第1の実施形態]
この発明の第1の実施形態に係る半導体装置について、図1を用いて説明する。図1は、本実施形態に係るメモリシステムのブロック図である。
<メモリシステムの全体構成について>
図示するようにメモリシステムは、メモリカード1及びホスト機器2を備えている。ホスト機器2は、ホストバスインタフェース(以下、単にホストバスと呼ぶことがある)14を介して接続されるメモリカード1に対しアクセスを行うためのハードウェアおよびソフトウェアを備えている。メモリカード1は、ホスト機器2に接続された時に電源供給を受けて動作し、ホスト機器2からのアクセスに応じた処理を行う。
<メモリカードの構成について>
メモリカード1は、ホスト機器2とホストバスインタフェース14を介して情報の授受を行う。メモリカード1は、NAND型フラッシュメモリチップ(単にNAND型フラッシュメモリ、またはフラッシュメモリと呼ぶことがある)11、フラッシュメモリチップ11を制御するカードコントローラ12、および複数の信号ピン(第1ピン乃至第9ピン)13を備えている。
複数の信号ピン13は、カードコントローラ12と電気的に接続されている。複数の信号ピン13における第1ピン乃至第9ピンに対する信号の割り当ては、例えば図2に示すようになっている。図2は、第1ピン乃至第9ピンと、それらに割り当てられた信号とを示す表である。
データ0乃至データ3は、第7ピン、第8ピン、第9ピン、および第1ピンにそれぞれ割り当てられている。第1ピンは、また、カード検出信号に対しても割り当てられている。さらに、第2ピンはコマンドに割り当てられ、第3ピンおよび第6ピンは接地電位Vssに、第4ピンは電源電位Vddに、第5ピンはクロック信号に割り当てられている。
また、メモリカード1は、ホスト機器2に設けられたスロットに対して挿抜可能なように形成されている。ホスト機器2に設けられたホストコントローラ(図示せず)は、これら第1ピン乃至第9ピンを介してメモリカード1内のカードコントローラ12と各種信号およびデータを通信する。例えば、メモリカード1にデータが書き込まれる際には、ホストコントローラは、書き込みコマンドを、第2ピンを介してカードコントローラ12にシリアルな信号として送出する。このとき、カードコントローラ12は、第5ピンに供給されているクロック信号に応答して、第2ピンに与えられる書き込みコマンドを取り込む。
ここで、前述したように、書き込みコマンドは、第2ピンのみを利用してカードコントローラ12にシリアルに入力される。コマンドの入力に割り当てられている第2ピンは、図2に示すように、データ3用の第1ピンと接地電位Vss用の第3ピンとの間に配置されている。複数の信号ピン13とそれに対するホストバスインタフェース14は、ホスト機器2内のホストコントローラとメモリカード1とが通信するのに使用される。
これに対し、フラッシュメモリ11とカードコントローラ12との間の通信は、NAND型フラッシュメモリ用のNANDバスインタフェース(以下、単にNANDバスと呼ぶことがある)15によって行われる。したがって、ここでは図示しないが、フラッシュメモリ11とカードコントローラ12とは例えば8ビットの入出力(I/O)線により接続されている。
例えば、カードコントローラ12がフラッシュメモリ11にデータを書き込む際には、カードコントローラ12は、これらI/O線を介してデータ入力コマンド80H、カラムアドレス、ページアドレス、データ、およびプログラムコマンド10H(或いはキャッシュプログラムコマンド15H)をフラッシュメモリ11に順次入力する。ここで、コマンド80Hの“H”は16進数を示すものであり、実際には“10000000”という8ビットの信号が、8ビットのI/O線にパラレルに与えられる。つまり、このNANDバスインタフェース15では、複数ビットのコマンドがパラレルに与えられる。
また、NANDバスインタフェース15では、フラッシュメモリ11に対するコマンドとデータが同じI/O線を共用して通信されている。このように、ホスト機器2内のホストコントローラとメモリカード1とが通信するインタフェース(ホストバス14)と、フラッシュメモリ11とカードコントローラ12とが通信するインタフェース(NANDバス15)とは異なる。
<メモリコントローラの構成について>
次に、図1に示すメモリカード1の備えるカードコントローラの内部構成について図3を用いて説明する。図3はカードコントローラ12のブロック図である。
カードコントローラ12は、フラッシュメモリ11内部の物理状態(例えば、何処の物理ブロックアドレスに、何番目の論理セクタアドレスデータが含まれているか、あるいは、何処のブロックが消去状態であるか)を管理する。カードコントローラ12は、ホストインタフェースモジュール21、MPU(Micro processing unit)22、フラッシュコントローラ23、ROM(Read-only memory)24、RAM(Random access memory)25、およびバッファ26を有する。
ホストインタフェースモジュール21は、カードコントローラ12とホスト機器2との間のインタフェース処理を行う。
MPU22は、メモリカード1全体の動作を制御する。MPU22は、ROM24に格納されているファームウェアと、RAM25に格納したファームウェアの一部や各種のテーブルなどを利用して、ホスト機器から要求されたコマンドを実行する。すなわちMPU22は、ホスト機器2から書き込みコマンド、読み出しコマンド、消去コマンドを受け取り、フラッシュメモリ11に対して所定の処理を実行したり、バッファ26を通じたデータ転送処理を制御したりする。
ROM24は、MPU22により実行されるファームウェアなどを格納する。RAM25は、MPU22の作業エリアとして使用され、ファームウェアや各種のテーブル(表)を記憶する。フラッシュコントローラ23は、カードコントローラ12とフラッシュメモリ11との間のインタフェース処理を行う。
バッファ26は、ホスト機器2から送られてくるデータをフラッシュメモリ11へ書き込む際に、一定量のデータ(例えば、1ページ分)を一時的に記憶したり、フラッシュメモリ11から読み出されるデータをホスト機器2へ送り出す際に、一定量のデータを一時的に記憶したりする。
<NAND型フラッシュメモリの構成について>
次に、NAND型フラッシュメモリ11の内部構成について簡単に説明する。図4はNAND型フラッシュメモリ11のブロック図である。図示するようにNAND型フラッシュメモリ11は、メモリセルアレイ30、ロウデコーダ31、ページバッファ32、及びデータキャッシュ33を備えている。
<メモリセルアレイについて>
まずメモリセルアレイ30について説明する。メモリセルアレイ30は、第1メモリブロックBLK1及び第2メモリブロックBLK2を備えている。図4では第1メモリブロックBLK1が複数あり、第2メモリブロックBLK2が1つである場合を例示しているが、いずれも1つ以上あれば良い。第1メモリブロックBLK1及び第2メモリブロックBLK2の構成は基本的に同じであるので、以下では両者を区別しない場合には、共にメモリブロックBLKと呼ぶことにする。
メモリブロックBLKは、データを保持可能な複数のメモリセルトランジスタを備えている。そして、第2メモリブロックBLK2は第1メモリブロックBLK1のキャッシュ領域として使用される。すなわち、第1メモリブロックBLK1にプログラムすべきデータを一時的に保持する領域として使用される。この点については後述する。またデータの消去はメモリブロックBLK単位で行われる。すなわち、同一メモリセルブロックBLK内のデータは一括して消去される。
メモリブロックBLKの構成について、図5を用いて説明する。図5はメモリブロックBLKの回路図である。図示するようにメモリブロックBLKの各々は、(n+1)個(nは0以上の整数)のメモリセルユニット34を備えている。
メモリセルユニット34の各々は、例えば32個のメモリセルトランジスタMTと、選択トランジスタST1、ST2とを含んでいる。メモリセルトランジスタMTは、半導体基板上にゲート絶縁膜を介在して形成された電荷蓄積層(例えば浮遊ゲート)と、電荷蓄積層上にゲート間絶縁膜を介在して形成された制御ゲートとを有する積層ゲート構造を備えている。なお、メモリセルトランジスタMTの個数は32個に限られず、8個や16個、64個、128個、256個等であってもよく、その数は限定されるものではない。メモリセルトランジスタMTは、隣接するもの同士でソース、ドレインを共有している。そして、選択トランジスタST1、ST2間に、その電流経路が直列接続されるようにして配置されている。直列接続されたメモリセルトランジスタMTの一端側のドレインは選択トランジスタST1のソースに接続され、他端側のソースは選択トランジスタST2のドレインに接続されている。
メモリブロックBLKの各々において、同一行にあるメモリセルトランジスタMTの制御ゲートはワード線WL0〜WL31のいずれかに共通接続され、同一行にあるメモリセルの選択トランジスタST1、ST2のゲートは、それぞれセレクトゲート線SGD、SGSに共通接続されている。なお説明の簡単化のため、以下ではワード線WL0〜WL31を、単にワード線WLと呼ぶことがある。選択トランジスタST2のソースはソース線SLに共通接続される。なお、選択トランジスタST1、ST2は必ずしも両方必要ではなく、メモリセルユニット34を選択出来るのであればいずれか一方のみが設けられていても良い。
そして、複数のメモリブロックBLK間において、メモリセルユニット34の各々の選択トランジスタST1のドレインは、ビット線BL0〜BLnのいずれかに共通接続されている。また、選択トランジスタST2のソースは、ソース線SLに共通接続されている。
次に、上記メモリセルトランジスタMTの取り得るデータについて説明する。まず第1メモリブロックBLKについて説明する。第1メモリブロックBLK1に含まれるメモリセルトランジスタMTは、閾値電圧に応じて3ビットのデータを保持可能とされている。図6は、第1メモリブロックBLK1に含まれるメモリセルトランジスタMTの閾値分布を示すグラフであり、横軸に閾値電圧Vthをとり、縦軸にメモリセルトランジスタMTの存在確率を示したグラフである。
図示するように、各々のメモリセルトランジスタMTは8値(8-levels)のデータを保持出来る。より具体的には、メモリセルトランジスタMTは閾値電圧Vthの低い順に、“0”、“1”、“2”、“3”、…“7”の8種のデータを保持出来る。メモリセルトランジスタMTにおける“0”データの閾値電圧Vth0は、Vth0<V01である。“1”データの閾値電圧Vth1は、V01<Vth1<V12である。“2”データの閾値電圧Vth2は、V12<Vth2<V23である。“3”データの閾値電圧Vth3は、V23<Vth3<V44である。“4”データの閾値電圧Vth4は、V44<Vth4<V45である。“5”データの閾値電圧Vth5は、V45<Vth5<V56である。“6”データの閾値電圧Vth6は、V56<Vth6<V67である。そして、“7”データの閾値電圧Vth7は、V67<Vth7である。
すなわち第1メモリブロックBLK1内のメモリセルトランジスタMTは、3ビットのデータ“000”〜“111”を保持可能とされている。以下、この3ビットのデータの各ビットを、図6に示すように下位ビット、中位ビット、及び上位ビットと呼ぶ。なお、メモリセルトランジスタMTの取り得る8値のデータ“0”〜“7”と、2進数で表現した際の“000”〜“111”との対応関係は、適宜選択出来る。
次に第2メモリブロックBLK2について説明する。第2メモリブロックBLK2に含まれるメモリセルトランジスタMTは、閾値電圧に応じて1ビットのデータを保持可能とされている。すなわちメモリセルトランジスタMTは、閾値電圧に応じて“0”データと“1”データとのいずれかを保持する。
上記構成のメモリブロックBLKにおいて、データは同一のワード線WLに接続された全メモリセルトランジスタMTに対して、一括して書き込まれる。以下、この単位をページと呼ぶ。そして3ビットのデータを保持可能な第1メモリブロックBLK1のメモリセルトランジスタMTについては、ビット毎にデータが書き込まれる。すなわち、まず下位ビット、中位ビット、及び上位ビットの順にデータが書き込まれる。従って第1メモリブロックBLK1では、1本のワード線WLあたり3ページが割り当てられる。以下、下位ビットに対応するページを下位ページと呼び、中位ビットに対応するページを中位ページと呼び、上位ビットに対応するページを上位ページと呼ぶことがある。他方、第2メモリブロックでは1本のワード線WLあたり1ページが割り当てられる。この様子を図7に示す。図7は、第1メモリブロックBLK1及び第2メモリブロックBLK2に含まれるページを示した模式図である。
図示するように、第1メモリブロックBLK1では1本のワード線WLあたり3ページが割り当てられ、またワード線WLの本数は32本であるから、第1メモリブロックBLK1に割り当てられるページはページPG0〜PG95となり、総ページ数は96ページとなる。従って、第1メモリブロックBLK1のメモリサイズは、(96×(n+1))ビットとなる。
他方、第2メモリブロックBLK2では1本のワード線WLあたり1ページが割り当てられ、またワード線WLの本数は32本であるから、第2メモリブロックBLK2に割り当てられるページはページPG0〜PG31となり、総ページ数は32ページとなる。従って、第2メモリブロックBLK2のメモリサイズは、(32×(n+1))ビットとなる。
なお、一括してデータが書き込まれるメモリセルトランジスタMTは、必ずしもあるワード線WLに接続された全てである必要は無い。例えば、1本のワード線につき、偶数ビット線及び奇数ビット線毎にデータが書き込まれても良い。この場合、第1メモリブロックBLK1のページ数は、倍の192ページとなる。
<ロウデコーダについて>
次に図4に戻って、NAND型フラッシュメモリ11の備えるロウデコーダ31について説明する。ロウデコーダ31は、カードコントローラ12からロウアドレスを受信し、デコードする。ロウアドレスには、いずれかのメモリブロックBLKを指定するブロックアドレスと、いずれかのページを指定するページアドレスとを含む。そして、ロウデコーダ31はロウアドレスに基づいて、いずれかのメモリブロックBLKにおけるいずれかのワード線WLを選択する。
<データキャッシュについて>
データキャッシュ33は、ページサイズのデータを一時的に保持可能とされている。
データキャッシュ33は、カードコントローラ12との間でデータの授受を行う。すなわち、データの読み出し時には、ページバッファ32から与えられるデータをカードコントローラ12へ転送し、書き込み時にはカードコントローラ12から与えられるデータを受信し、これをページバッファ32へページ単位で転送する。
<ページバッファについて>
ページバッファ32は、ページサイズのデータを一時的に保持可能とされている。
ページバッファ32は、データの読み出し時には、メモリセルアレイ30からページ単位で読み出されたデータを一時的に保持し、これをデータキャッシュ33へ転送する。また書き込み時には、データキャッシュ33から転送されたデータをビット線BL0〜BLnに転送し、データのページ単位でのプログラムを実行する。
なお、データの書き込みは上記プログラムとベリファイとの繰り返しによって行われる。プログラムとは、メモリセルトランジスタMTの制御ゲートとチャネルとの間に電位差を発生させることで、電荷蓄積層に電子を注入する動作である。またベリファイは、プログラムが行われたメモリセルトランジスタMTからデータを読み出すことによって、メモリセルトランジスタMTの閾値電圧が所望の値となっているか否かを確認する動作である。
<データのプログラム方法について>
次に、上記構成のメモリカード1におけるデータのプログラム方法について説明する。まず、カードコントローラ12が主体となって行う処理について説明する。
<カードコントローラ12の動作>
図8は、データのプログラム時においてカードコントローラ12の行う処理を示すフローチャートである。
図示するように、まずカードコントローラ12はホスト機器2から、データの書き込み命令と、NAND型フラッシュメモリ11においてデータを書き込むべきアドレスとを、ホストバス14を介して受信する(ステップS10)。引き続きカードコントローラ12は、ホスト機器2から書き込みデータを、ホストバス14を介して受信する(ステップS11)。書き込みデータは、一時的にバッファ26に保持される。そしてカードコントローラ12は、フラッシュメモリ11に対して第1書き込み命令、書き込みデータ、及びアドレスを、NANDバス15を介して出力する。
フラッシュメモリ11は、第1書き込み命令を受信することにより、これから書き込み動作が開始され、また書き込みデータが転送されて来ることを認識する。第1書き込み命令は、例えばNAND型フラッシュメモリにおけるコマンド“80H”に相当する。但し、実際にデータがメモリセルトランジスタMTにプログラムされるのは、後述する第2書き込み命令が与えられた時点である。またカードコントローラ12の出力するアドレスは、メモリセルアレイ30のカラム方向を指定するカラムアドレスと、ロウ方向を指定するロウアドレスとが含まれるが、以下ではロウアドレスについてのみ着目して説明する。ステップS12においてカードコントローラ12の例えばMCU22は、第1メモリブロックに対応するロウアドレス(これを第1ロウアドレスと呼ぶ)を発行し、出力する。
引き続きカードコントローラ12のMCU22は、転送した書き込みデータが、最終ページデータであるか否かを判定する(ステップS13)。すなわち、ステップS12で書き込みデータを転送した際、更に転送すべき書き込みデータが残っているか否かを判定する。
例えば、ホスト機器2から転送された書き込みデータが2ページ分のサイズであった場合を仮定する。カードコントローラ12は書き込みデータ及び第1ロウアドレスの転送をページ毎に行うので、この場合、書き込みデータを全て転送するには、2回のデータ転送が必要である。このうち、最初のデータ転送の段階では、未転送の書き込みデータが1ページ分だけ残っているので、最終ページデータでは無いと判定される(ステップS14、NO)。他方、2回目のデータ転送の段階では、未転送の書き込みデータは残っておらず、2回目で転送されたデータが書き込まれるページが、当該書き込みデータについての最終ページであることになる。よって、最終ページであると判定される。
なお、ステップS13においては、書き込みデータについてプログラムが行われる最終ページであるか否かが判定されれば良く、そのデータサイズがちょうどページサイズであるかは問題では無い。つまり最終データがページサイズ未満であっても良い。
また、ホスト機器2は書き込みアクセスを終了する際に、カードコントローラ12に対して書き込みアクセスの終了通知を出力する。また、書き込みアクセスを途中で中断する際には中断命令を出力する。従って、ステップS13の判定は、例えばホスト機器2から書き込みアクセスの終了通知または中断命令があったか否かを判定することで、実行可能である。
ステップS13の判定の結果、最終ページデータでなかった場合(ステップS14、NO)、カードコントローラ12のMCU22は第2書き込み命令を発行して、NANDバス15を介してフラッシュメモリ11へ出力する(ステップS15)。第2書き込み命令は、例えばNAND型フラッシュメモリにおけるにおけるコマンド“10H”または“15H”に相当する。その後、カードコントローラ12はステップS12に戻って、後続する書き込みデータについてのフラッシュメモリ11への転送を継続する。
ステップS13の判定の結果、最終ページデータであった場合(ステップS14、YES)、MCU22は、当該ページデータについてのページアドレスが、上位ページまたは中位ページに相当するか否かを判定する(ステップS16)。すなわち、ページアドレスの指し示すページが、図7に示す第1メモリブロックBLK1のページPG(3i+1)またはページ(3i+2)であるか否かを判定する(但し、iは0〜31の整数)。
ステップS16の判定の結果、下位ページに相当する場合(ステップS17、NO)、すなわち、ページアドレスの指し示すページがページPG(3i)であった場合、MCU22は第2書き込み命令を発行する。そして第2書き込み命令を、NANDバス15を介してフラッシュメモリ11へ出力する(ステップS18)。その後、MCU22は書き込み終了の旨を、ホストバス14を介してホスト機器19へ通知する(ステップS19)。
ステップS16の判定の結果、上位ページまたは中位ページに相当する場合(ステップS17、YES)、MCU22はロウアドレス変更命令と、新たなロウアドレス(これを第2ロウアドレスと呼ぶ)とを発行して、これをフラッシュメモリ11へ出力する(ステップS20)。第2ロウアドレスは、第2メモリブロックBLK2のいずれかのページに相当するアドレスである。そして、ステップS18、S19と同様に、第2書き込み命令をフラッシュメモリ11へ出力し(ステップS21)、また書き込み終了の旨をホスト機器19へ通知する(ステップS22)。
その後、MCU22は所定のタイミングにおいて、第2ロウアドレスに相当するページにプログラムされたデータを、第1ロウアドレスに相当するページ、すなわち、本来プログラムすべきであったページにコピーするよう、フラッシュメモリ11に対して命令する(ステップS23)。この所定のタイミングとは、例えばホスト機器による次の書き込みアクセスがあったタイミングである。
以上の処理において、カードコントローラ12からNANDバス15を介してフラッシュメモリ11へ与えられる信号につき図9を用いて説明する。図9は、カードコントローラ12がフラッシュメモリ11へ出力する信号のタイミングチャートである。図中において上段は、ステップS16において「相当しない」と判定された場合(ステップS17、NO)を示し、下段は「相当する」と判定された場合(ステップS17、YES)について示している。
図示するように、いずれの場合もまず時刻t0で第1書き込み命令が出力され、その後アドレス(第1ロウアドレス)及び書き込みデータが、それぞれ時刻t1、t2で順次出力される。その後、終了または中断命令が無い場合には、時刻t4で第2書き込み命令が出力されて、一連の信号の流れは終了する。他方、終了または中断命令がある場合には、時刻t4でロウアドレス変更命令が出力され、時刻t5で新たなロウアドレス(第2ロウアドレス)が出力される。その後、時刻t6で第2書き込み命令が出力される。後者の場合、有効とされるロウアドレスは時刻t1で出力される第1ロウアドレスでは無く、時刻t5で出力される第2ロウアドレスである。そして第2ロウアドレスは、第1ロウアドレスに対応する第1メモリブロックBLK1とは異なる第2メモリブロックBLK2に対応するアドレスである。
<NAND型フラッシュメモリ11の動作>
次に、NAND型フラッシュメモリ11が主体となって行う処理について、図10を用いて説明する。図10は、フラッシュメモリ11における処理を示すフローチャートである。
図示するように、まずフラッシュメモリ11はカードコントローラ12から第1書き込み命令、書き込みデータ、及び第1ロウアドレス(及びカラムアドレス)を、NANDバス15を介してページ単位で受信する(ステップS30)。受信した書き込みデータは、データキャッシュ33を介してページバッファ32に保持される。また第1ロウアドレスはロウデコーダ31に与えられる。更に第1書き込み命令は、フラッシュメモリ11全体の動作を司る制御部(図4では図示を省略)に与えられる。
引き続きフラッシュメモリ11は、ロウアドレス変更命令及び第2ロウアドレスを受信しているか否かを判定する(ステップS31)。ロウアドレス変更命令及び第2ロウアドレスを受信していない場合には(ステップS32、NO)、カードコントローラ12から第2書き込み命令を受信した後(ステップS33)、ステップS30で受信した第1ロウアドレスとカラムアドレスで指定されるページにデータを書き込む(ステップS34)。すなわち、書き込みデータは第1メモリブロックBLK1のいずれかのページに書き込まれる。
ステップS32でロウアドレス変更命令を受信していた場合には(ステップS32、YES)、第2書き込み命令を受信した後(ステップS35)、ステップS30で受信したカラムアドレスと、ロウアドレス変更命令の次に受信した第2ロウアドレスで指定されるページにデータを書き込む(ステップS36)。すなわち、書き込みデータは第2メモリブロックBLK2のいずれかのページに書き込まれる。
その後フラッシュメモリ11は、ステップS36で第2メモリブロックBLK2に書き込んだデータを、ステップS30で受信した第1ロウアドレスで指定されるページにコピーする(ステップS37)。
<書き込み動作の具体例>
上記プログラム動作の具体例について、図11乃至図15を用いて説明する。図11は、本実施形態に係るメモリシステムの処理の流れを示すタイミングチャートであり、ホスト機器2から図10を用いてメモリコントローラ12へのデータの流れ(ホストバス14上のデータの流れ)、メモリコントローラ12からNAND型フラッシュメモリ11のデータキャッシュ33へのデータの流れ(NANDバス15上のデータの流れ)、及びNAND型フラッシュメモリ11の動作の流れを示す。また図12乃至図15はメモリシステムのブロック図であり、図中において斜線で示した領域は、書き込みデータがプログラムされたページを示す。以下では、1ページのデータサイズを16KBとし、ホスト機器2からページサイズのデータについての書き込みアクセスが4回、行われた場合を例に説明する。
また以下では、カードコントローラ12は、NAND型フラッシュメモリ11に転送したデータが最終ページデータに相当する場合(ステップS14、YES)、すなわち継続データが無い場合には、第2書き込み命令として通常プログラムコマンド“10H”を発行し、相当しない場合(ステップS14、NO)、すなわち継続データがある場合にはキャッシュプログラムコマンド“15H”を発行する場合を例に説明する。
キャッシュプログラムコマンド“15H”が発行された場合、NAND型フラッシュメモリ11はキャッシュプログラムを実行する。キャッシュプログラムでは、データキャッシュ33が空になった段階、すなわちデータの書き込みが完全に終了する前の段階で、NAND型フラッシュメモリ11はレディ(ready)状態となり、次のデータを受付可能な状態となる。これに対して通常プログラムコマンド“10H”が発行された場合には、データの書き込みが完全に終了してから、つまりベリファイが終了してから、NAND型フラッシュメモリ11はレディ状態となる。
(時刻t0〜t4)
まず時刻t0〜t4の様子について、図11及び図12を用いて説明する。図示するように、時刻t0においてホスト機器2からメモリカード1に対して書き込みアクセスがなされ、16KBの書き込みデータWD1が転送される。そして、カードコントローラ12は第1書き込み命令INST1及び第1ロウアドレスRA1を発行し、これをフラッシュメモリ11へ出力する。第1ロウアドレスは、第1メモリブロックBLK1のページPG0に相当すると仮定する。
引き続き、時刻t1においてカードコントローラ12は、受信した書き込みデータWD1をフラッシュメモリ11へ転送する(図中においてDIN1と示す)。書き込みデータWD1は、データバッファ33へ格納され、更にページバッファ32へ転送される。
その後、時刻t3において、カードコントローラ12は第2書き込み命令INST2を発行し、これをフラッシュメモリ11へ出力する。第1ロウアドレスRA1は下位ページに相当するので、ロウアドレス変更命令は発行されない。また継続データは無いので、発行される第2書き込み命令INST2は通常プログラムコマンド“10H”である。
第2書き込み命令INST2が発行されたことで、フラッシュメモリ11はビジー(busy)状態となり、書き込みデータWD1をメモリセルトランジスタMTに書き込む。これを図11では“L”で示す。すなわち、ロウデコーダ31は、第1ロウアドレスRA1に従ってページPG0を選択する。これにより、ページPG0に対するプログラム及びベリファイが実行され、書き込みデータWD1が書き込まれる。その後、NAND型フラッシュメモリ11はレディ状態となる。
(時刻t4〜t8)
次に時刻t4〜t8の様子について、図11及び図13を用いて説明する。図示するように、書き込みデータWD1の書き込みが終了した時刻t4において、ホスト機器2からメモリカード1に対して次の書き込みアクセスがなされ、16KBの書き込みデータWD2が転送される。そして、カードコントローラ12は第1書き込み命令INST1及び第1ロウアドレスRA1を発行し、これをフラッシュメモリ11へ出力する。第1ロウアドレスは、第1メモリブロックBLK1のページPG1に相当する。
引き続き、時刻t5においてカードコントローラ12は、受信した書き込みデータWD2をフラッシュメモリ11へ転送する(図中においてDIN2と示す)。この際、第1ロウアドレスRA1は中位ページに相当する。従ってカードコントローラ12は、ロウアドレス変更命令INST_RA及び第2ロウアドレスRA2を発行し、これをフラッシュメモリ11へ出力し、その後第2書き込み命令INST2=“10H”を発行し、フラッシュメモリ11へ出力する。第2ロウアドレスRA2は、第2メモリブロックBLK2の例えばページPG0に相当すると仮定する。
フラッシュメモリ11では、ロウアドレス変更命令INST_RAが発行されたことで、ロウデコーダ31は第1メモリブロックBLK1のページPG1の代わりに、第2メモリブロックBLK2のページPG0を選択する。これにより、書き込みデータWD2は第2メモリブロックBLK2のページPG0に書き込まれる。
(時刻t8〜t12)
次に時刻t8〜t12の様子について、図11及び図14を用いて説明する。図示するように、書き込みデータWD2の書き込みが終了した時刻t8において、ホスト機器2からメモリカード1に対して次の書き込みアクセスがなされ、16KBの書き込みデータWD3の転送が開始される。
この書き込みデータWD3の転送期間を利用して、メモリカード1では書き込みデータWD2のコピー動作が実行される。すなわち、第2メモリブロックBLK2に書き込まれたデータWD2が、本来書き込むべきであった第1メモリブロックBLK1のページPG1へコピーされる。コピー動作にあたってカードコントローラ12は、時刻t8においてコピー命令INST_COPYを発行し、これをフラッシュメモリ11へ出力する。
コピー命令INST_COPYに応答して、フラッシュメモリ11においてロウデコーダ31は第2メモリブロックBLK2のページPG0を選択する。これによりデータWD2がページバッファ32に読み出される。この動作を図11では“RD”と示す。引き続きロウデコーダ31は、時刻t9において第1メモリブロックのページPG1を選択する。これにより、データWD2が第1メモリブロックBLK1のページPG1に書き込まれる。この動作を図11では“M”と示す。なお、図11では図示を省略したが、時刻t9でデータの読み出しが完了した際に、カードコントローラ12はNAND型フラッシュメモリ11に対して、読み出したデータを第1メモリブロックBLK1のページPG1に書き込むことを命令するために、第2書き込み命令INST2を発行する。この際に発行される第2書き込み命令INST2は、読み出したデータに継続する書き込みデータWD3が存在するので、キャッシュプログラムコマンド“15H”である。
キャッシュプログラムを利用することで、データWD2のコピー中の時刻t11でNAND型フラッシュメモリ11はレディ状態となる。そこで、時刻t11〜t12の期間において、カードコントローラ12は次の書き込みデータWD3についての第1書き込み命令INST1及び第1ロウアドレスRA1を発行し、フラッシュメモリ11へ出力する。引き続きカードコントローラ12は、書き込みデータWD3をデータキャッシュ33へ転送する(図中においてDIN3と示す)。なお、このデータWD3の転送と、データWD2のコピー動作とは、同時に終了することが、効率の点で望ましい。
(時刻t12〜t13)
次に時刻t12〜t13の様子について、図11及び図15を用いて説明する。図示するように、書き込みデータWD3は、データキャッシュ33からページバッファ32へ転送される。また既に発行された第1ロウアドレスRA1は、第1メモリブロックBLK1におけるページPG2、すなわち上位ページに相当する。従ってカードコントローラ12は、ロウアドレス変更命令INST_RA及び第2ロウアドレスRA2を発行し、フラッシュメモリ11へ出力する。引き続きカードコントローラ12は第2書き込み命令INST2=“10H”を発行し、フラッシュメモリ11へ出力する。第2ロウアドレスRA2は、第2メモリブロックBLK2の例えばページPG1に相当すると仮定する。
フラッシュメモリ11では、ロウアドレス変更命令INST_RAが発行されたことで、ロウデコーダ31は第1メモリブロックBLK1のページPG2の代わりに、第2メモリブロックBLK2のページPG1を選択する。これにより、書き込みデータWD3は第2メモリブロックBLK2のページPG1にプ書き込まれる。
(時刻t13〜t18)
時刻t13〜t18の動作は、上記説明した時刻t8〜t13と同様である。すなわち、時刻t13〜t17の期間において、第2メモリブロックBLK2のページPG1にプログラムされた書き込みデータWD3が、第1メモリブロックBLK1のページPG2にコピーされる。そしてコピー動作の後、書き込みデータWD4が第1メモリブロックBLK1のページPG3に書き込まれる。勿論、書き込みデータWD3を上位ページにコピーする際に発行される第2書き込み命令INST2は、キャッシュプログラムコマンド“15H”である。
<効果>
上記構成のメモリシステムであると、下記の効果が得られる。
(1)データの書き込み速度を向上出来る。
本実施形態に係るメモリシステムであると、図11に示すように、プログラム動作の最終ページが第1メモリブロックBLK1における上位ページまたは中位ページであった場合、このデータを第2メモリブロックBLK2に一時的に保持させる。すなわち、第2メモリブロックBLK2をキャッシュ領域として使用する。第2メモリブロックBLK2は、データを2値で保持する。他方、最終ページが第1メモリブロックBLK1における下位ページであった場合、このデータはそのまま第1メモリブロックBLK1にプログラムする。つまり、ホスト機器2から与えられた書き込みデータは、まず第1メモリブロックBLK1の下位ページまたは第2メモリブロックBLK2のいずれかのページにプログラムされる。
従って、データの書き込み速度を向上出来る。本効果につき、図16を参照しつつ、以下説明する。図16は、従来のメモリシステム及び本実施形態に係るメモリシステムの動作の流れを示すタイミングチャートであり、それぞれの場合のホスト機器からカードコントローラ12へのデータの流れと、メモリカード1における動作の流れを示している。図16に示すタイミングチャートは、上から従来構成において書き込みデータが大きい場合(データサイズが4ページ分の場合)、従来構成において書き込みデータが小さい場合(データサイズが1ページ分以下の場合)、及び本実施形態において書き込みデータが小さい場合(データサイズが1ページ分以下の場合)を示している。本実施形態については図11と同様である。
まず書き込みデータが大きい場合について説明する。図示するように、ホスト機器2からカードコントローラ12へ、(16×4)=64KBの書き込みデータが転送される。そして書き込みデータは、下位ページPG0、中位ページPG1、上位ページPG2、及び下位ページPG3の順にプログラムされる。カードコントローラ12からデータキャッシュ33へのデータ転送(図中のDINi、iは自然数)は、直前に転送されたデータ(DIN(i−1))のプログラム中に行うことが可能である。従って、時間のロス無く、データを高速にプログラム出来る。最終ページが下位ページであれば、本実施形態も同様である。
次に、従来構成において書き込みデータが小さい場合について説明する。従来のメモリシステムであると、ロウアドレス変更命令や第2ロウアドレスを発行する機能を有していない。従って図16に示すように、書き込みデータWD1が下位ページPG0に書き込まれたとすると、次の書き込みデータWD2は中位ページPG1に書き込まれる(図中の“M”で示す)。そして中位ページPG1の書き込みが終了してNAND型フラッシュメモリがアクセス受付可能な状態になると、次の書き込みデータWD3がホスト機器2からカードコントローラ12へ転送される。そして書き込みデータWD3が上位ページPG2に書き込まれる(図中の“U”で示す)。その後上位ページPG2の書き込みが終了してNAND型フラッシュメモリがアクセス受付可能な状態になると、次の書き込みデータWD4がホスト機器2からカードコントローラ12へ転送される。
以上のように、書き込みアクセスは直前の書き込みアクセスにおける書き込みが完了するまで待つ必要があるため、書き込みデータのデータサイズが小さくなると、書き込み時間が長くなるという問題があった。これは特に多値NAND型フラッシュメモリにおいて顕著である。
一般に多値NAND型フラッシュメモリでは、ページによって書き込みに要する時間が大きく異なる。例えば8値NAND型フラッシュメモリの場合、下位ページの書き込みに要する時間t_Lは200μs程度、中位ページの書き込みに要する時間t_Mは1000μs程度、上位ページの書き込みに要する時間t_Uは5000μs程度である。
すなわち、従来のメモリシステムであると、図16に示すように書き込みデータを受信するためには、書き込みデータWD2を受信の後、少なくともt_M=1000μs待たなければならない。また書き込みデータWD4を受信するためには、書き込みデータWD3の受信の後、少なくともt_U=5000μs待たなければならない。つまり、書き込みが中位ページまたは上位ページで終了する場合、下位ページで終了する場合に比べて次のデータが受信可能となるまでの期間が非常に長い。その結果、書き込み速度が低下するという問題があった。
この点、本実施形態に係るメモリシステムであると、書き込み動作が中位ページまたは上位ページで終了する場合には、データを2値で保持する第2メモリブロックBLK2(キャッシュ領域)に書き込む。従って、書き込みに要する時間はt_L=200μsで済む。そのため、後続する書き込みアクセスに速やかに対応することが可能となる。
また、第2メモリブロックBLK2に書き込まれたデータは、次の書き込みデータを書き込む前に、第1メモリブロックBLK1にコピーする必要がある。しかし、このコピー動作は次の書き込みデータの転送期間とオーバーラップさせることが出来る。更に、カードコントローラ12からフラッシュメモリ11へのデータ転送(図16におけるDINi)は、直前の書き込みデータについてのコピー動作と同時に実行出来る。従って、コピー動作が書き込み時間に与える影響は小さい。
以上の結果、メモリシステムにおけるデータの書き込み速度を高速化出来、図16に示すように同じデータを書き込む場合であっても、従来に比べてΔtの期間だけ、書き込み動作を終了させることが出来る。
また、ロウアドレス変更命令を使用することで、上記動作を高速化出来る。すなわち、カードコントローラ12がロウアドレス変更命令を有しない場合に、書き込みデータを当初のロウアドレス(第1ロウアドレス)と異なるメモリブロックBLKに書き込もうとすると、カードコントローラは書き込みデータを再度ページバッファへ転送しなければならない。具体的に説明すると、ロウアドレスを変更する場合には、まず第1書き込み命令をキャンセルするためにカードコントローラはリセット命令を出力する。次に再度第1書き込み命令を発行すると共に、新たな第1ロウアドレスを発行する。次にカードコントローラはページバッファへデータを再入力する。最後に第2書き込み命令を発行する。
しかしながらロウアドレス変更命令を使用すれば、ページバッファへの再度のデータ転送が不要となるため、データの書き込み速度を向上出来る。
[第2の実施形態]
次に、この発明の第2の実施形態に係る半導体装置について説明する。本実施形態は、上記第1の実施形態におけるコピー動作の際に、データキャッシュ33或いはページバッファ32に残った書き込みデータを使用するものである。以下では、第1の実施形態と異なる点についてのみ説明する。
図17は、本実施形態に係るメモリシステムの処理の流れを示すタイミングチャートであり、ホスト機器2からメモリカード1のメモリコントローラ12へのデータの流れ、メモリコントローラ12からNAND型フラッシュメモリ11のデータキャッシュ33へのデータの流れ、及びNAND型フラッシュメモリ11の動作の流れを示す。そして図11と同様に1ページのデータサイズを16KBとし、ホスト機器2からページサイズのデータについての書き込みアクセスが4回、行われた場合を示している。以下、図11と異なる点に着目して説明する。
図示するように、時刻t7〜t8において、書き込みデータWD2が第2メモリブロックBLK2にプログラムされる。この動作は図13に相当する。その後、本実施形態では、第2メモリブロックBLK2からの読み出しは行わない。その代わり、データキャッシュ33或いはページバッファ32には直前のプログラム動作で使用した書き込みデータWD2が残っているはずなので、これを利用して第1メモリブロックへのプログラムを行う(時刻t8〜t11)。
書き込みデータWD3のコピー動作も同様である。時刻t11〜t12の期間において、データキャッシュ33或いはページバッファ32は書き込みデータWD3を保持しているので、これを再度利用して、時刻t12〜t15の期間のプログラムを行う。
上記構成のメモリシステムであると、第1の実施形態で説明した(1)の効果に加えて、下記(2)の効果が得られる。
(2)データの書き込み速度を更に向上出来る。
本実施形態に係るメモリシステムであると、書き込みデータを第2メモリブロックBLK2にプログラムした後、データキャッシュ33或いはページバッファ32に残っている書き込みデータを第1メモリブロックBLK1に書き込んでいる。つまり、カードコントローラ12から転送された書き込みデータを、2回の書き込み動作に利用する。
従って、データを第2メモリブロックBLK2から第1メモリブロックBLK1にコピーする際に、第2メモリブロックBLK2からデータを読み出す必要が無い。すなわち、第1の実施形態で説明した図11における時刻t8〜t9、t13〜t14の期間の処理が不要となり、第2メモリブロックBLK2への書き込み動作の後、第1メモリブロックBLK1への書き込み動作を速やかに開始出来る。よって、データの書き込み速度を更に高速化出来る。
以上のように、この発明の第1、第2の実施形態に係る半導体装置であると、8値NAND型フラッシュメモリにおいて、3ビットデータを保持するメモリブロックのキャッシュブロックとして、1ビットデータを保持するメモリブロックを備えている。そして、書き込みデータの最終ページが上位ページまたは中位ページであった場合、換言すれば書き込みに要する時間の長いビットに相当する場合、当該データを一時的にキャッシュブロックへ書き込んでいる。従って、データの書き込み速度を高速化出来る。
上記実施形態は、例えばファイルシステムを備えたメモリシステムに適用出来る。ファイルシステムとは、メモリに記録されているファイル(データ)を管理する方式のことであり、例えばFAT(File Allocation Table)ファイルシステムが挙げられる。ファイルシステムにおいては、メモリにおけるファイルやフォルダなどのディレクトリ情報の作成方法、ファイルやフォルダなどの移動方法や削除方法、データの記録方式、管理領域の場所や利用方法などが定められる。
FATファイルシステムを備えたフラッシュメモリ11のメモリ空間は、おおまかにはユーザデータ領域及び管理領域に分けられる。ユーザデータ領域は、ユーザによって書き込まれる正味のデータを格納する領域である。管理領域は、例えばブート情報を記憶する領域、パーティション情報を記憶する領域、データがいずれのアドレスに記憶されているかを記憶する領域、ルートディレクトリエントリの情報を記憶する領域等を含んでいる。そして、ユーザデータ領域は、クラスタ或いはアロケーションユニット(allocation unit)と呼ばれる小さい単位で管理される。例えばこの単位が16Kバイトであり、ホスト機器がクラスタ単位で書き込み命令を発行する場合には、クラスタサイズよりも大きいデータを書き込む際にも、16Kバイト毎に連続してデータを書き込む。このような場合であっても、上記実施形態に係る手法を用いることで、高速な書き込み動作が可能となる。
また、上記実施形態では図11及び図17において、ページサイズのデータをプログラムする場合を例に説明した。しかしながら、ホスト機器2から転送されるデータはページサイズ未満であっても良い。また上記実施形態では説明を省略したが、1ページには冗長部及び管理データ記憶部が含まれても良い。すなわち、正味のデータの他にパリティ等のデータが含まれても良い。
更に、上記実施形態では8値NAND型フラッシュメモリの場合を例に説明したが、多値NAND型フラッシュメモリであれば良い。すなわち、第1メモリブロックBLK1内のメモリセルトランジスタMTが、2ビット、4ビット、5ビット等の多値データを保持する場合であっても良い。メモリセルトランジスタMTが2ビットのデータを保持する場合、すなわち、各メモリセルトランジスタMTに対して下位ページと上位ページとが割り当てられる場合には、書き込みに要する時間は例えばt_L=200μs、t_U=3000μsである。このように、プログラム対象のビットによって書き込みに要する時間の差が大きいほど、顕著な効果が得られる。
また、ロウアドレス変更命令を発行する条件は、必ずしも最終ページが下位ページ以外である場合に限らない。例えば最終ページが中位ページである場合には発行しない場合であっても良い。最終ページがいずれのビットであった際にロウアドレス変更命令を発行するかについては、適宜選択可能である。しかし、少なくとも最上位ビットであった場合、言い換えれば書き込みに要する時間の最も長いビットであった場合には、ロウアドレス変更命令を発行することが望ましい。
また、第2メモリブロックBLK2にプログラムしたデータは、第1メモリブロックBLK1のコピーした後、消去せずに残しておいても良い。この場合、第2メモリブロックBLK2内のデータは第1メモリブロックBLK1内のデータのスペアデータとして使用出来る。従って、この場合にはフラッシュメモリのデータ保持信頼性を向上出来る。
なお、上記実施形態では、データの書き込みに要する時間t_L、t_M、t_Uとして、NAND型フラッシュメモリ11に対して第2書き込み命令が与えられてから、メモリセルトランジスタMTに対するプログラムとベリファイを繰り返し、ベリファイが完了するまでの期間を例に説明した。ベリファイは、データのプログラムによってメモリセルトランジスタMTの閾値が所望の値に達したことを確認できた時点、または上記繰り返し回数が所定の回数に達した時点で、終了する。
しかし、書き込みに要する時間t_L、t_M、t_Uは、第2書き込み命令が与えられてから、つまりNAND型フラッシュメモリ11がビジー状態になってから、レディ状態に復帰するまでの期間と定義することも出来る。ビジー状態とは、NAND型フラッシュメモリ11がメモリコントローラ12からデータを受け付けない状態のことである。この点について、以下説明する。
図18はメモリカード1のブロック図であり、NAND型フラッシュメモリ11とメモリコントローラ12との間でやりとりされる信号について示している。図示するように、メモリコントローラ12からNAND型フラッシュメモリ11に対しては、チップイネーブル(chip enable)信号/CE、リードイネーブル(read enable)信号/RE、ライトイネーブル(write enable)信号/WE、コマンドラッチイネーブル(command latch enable)信号CLE、アドレスラッチイネーブル(address latch enable)信号ALEが与えられる。
チップイネーブル信号/CEは、メモリコントローラ12がNAND型フラッシュメモリ11にアクセスする際に“L”レベルとされる。
リードイネーブル信号/REは、メモリコントローラ12がNAND型フラッシュメモリ11からデータを読み出す際に“L”レベルとされる。そして/RE=“L”とされることで、NAND型フラッシュメモリ11から例えば8ビットのデータIO0〜IO7が出力される。
ライトイネーブル信号/WEは、メモリコントローラ12がNAND型フラッシュメモリ11にデータを書き込む際に“L”レベルとされる。そして/WE=“L”とされることで、NAND型フラッシュメモリ11は、メモリコントローラ12から出力されたデータIO0〜IO7を取り込む。
コマンドラッチイネーブル信号CLEは、/WEを“L”レベルとした際に、NAND型フラッシュメモリ11への入力データがコマンドであるか否かを示す。すなわち、CLE=“H”の場合、データIO0〜IO7はコマンドである。
アドレスラッチイネーブル信号ALEは、/WEを“L”レベルとした際に、NAND型フラッシュメモリ11への入力データがアドレスであるか否かを示す。すなわち、ALE=“H”の場合、データIO0〜IO7はアドレスである。
NAND型フラッシュメモリ11からメモリコントローラ12に対しては、レディ/ビジー信号RY/BYが与えられる。レディ/ビジー信号RY/BYは、NAND型フラッシュメモリ11の状態を示す信号である。RY/BY=“H”レベルの場合、NAND型フラッシュメモリ11はレディ状態であり、RY/BY=“L”レベルの場合、ビジー状態である。メモリコントローラ12は、RY/BY=“H”レベルであることを受けて、NAND型フラッシュメモリ11に対してデータ、コマンド、アドレス等を入力する。
図19は、図16に示した第1の実施形態に係るタイミングチャートと、それに対応したレディ/ビジー信号のタイミングチャートである。
図示するように、時刻t0で第2書き込み命令INST2=“10H”が入力されると、NAND型フラッシュメモリ11はビジー状態となり、レディ/ビジー信号RY/BYは“L”レベルとなる。そして時刻t1において、書き込みデータWD1の書き込み(プログラム及びベリファイ)が終了すると、NAND型フラッシュメモリ11はレディ状態に復帰し、レディ/ビジー信号RY/BYは“H”となる。
また時刻t2で第2書き込み命令INST2=“10H”が入力されると、NAND型フラッシュメモリ11はビジー状態となり、時刻t3において書き込みデータWD2の第2メモリブロックBLK2への書き込み(プログラム及びベリファイ)が終了すると、NAND型フラッシュメモリ11はレディ状態に復帰する。
時刻t3においてNAND型フラッシュメモリ11がレディ状態となると、カードコントローラ12は読み出しコマンドを発行して、NAND型フラッシュメモリ11へ出力する。この読み出しコマンドは、第2メモリブロックBLK2へ書き込んだ第2書き込みデータWD2の読み出し命令である。これに応答してNAND型フラッシュメモリ11はビジー状態となり、読み出し動作を実行する。時刻t5で読み出しが完了すると、NAND型フラッシュメモリ11はレディ状態に復帰する。
時刻t5においてNAND型フラッシュメモリ11がレディ状態となると、カードコントローラ12は第2書き込み命令INST2=“15H”を発行する。これは、第2書き込みデータWD2を第1メモリブロックBLK1へ書き込む旨の命令である。これに応答してNAND型フラッシュメモリ11は時刻t6でビジー状態となり、第2書き込みデータWD2についてのキャッシュプログラムを実行する。
例えば時刻t7でNAND型フラッシュメモリ11がデータを受付可能な状態、例えばデータキャッシュ33が空になると、NAND型フラッシュメモリ11は書き込み中ではあるがレディ状態となる(RY/BY=“H”)。これを受けてカードコントローラ12は、次の書き込みデータWD3及び第2書き込み命令INST2=“10H”をNAND型フラッシュメモリ11へ入力する。
そして第2書き込みデータWD2の書き込みが終了すると、NAND型フラッシュメモリ11は再びビジー状態となり、第3書き込みデータWD3が第2メモリブロックBLK2に書き込まれる。以降の動作は、時刻t3〜t9と同様である。
以上のような動作において、書き込みに要する時間を、ビジー状態になってからレディ状態に復帰するまでの間の時間と定義しても良い。すると、中位ページの書き込みに要する時間t_Mは時刻t6〜t7の期間となり、上位ページの書き込みに要する時間t_Uは、時刻t12〜t13の期間となる。
なお、図19の例では例えば時刻t3〜t4、t9〜t10の期間に読み出しコマンドが発行される場合について説明した。しかし、カードコントローラ12は、NAND型フラッシュメモリ11がレディ状態になるのを待つことなく、読み出しコマンドをNAND型フラッシュメモリ11に対して発行しても良い。この場合には、第2メモリブロックBLK2に対する書き込みが終了した後、レディ状態に移行することなく、引き続き読み出し動作が実行される。
図20は、上記第2の実施形態の場合のレディ/ビジー信号のタイミングチャートである。また図21は、複数ページに跨る大きなデータを書き込む場合におけるタイミングチャートである。図21における最初の(16Kバイト×3個)のデータは、各々キャッシュプログラムコマンド“15H”を用いて書き込まれる。
更に、上記実施形態ではフラッシュメモリ11がデータキャッシュ33を備える場合を例に説明した。しかし、データキャッシュ33を備えない場合であっても良い。但し、この場合にはプログラムが完了した後に、カードコントローラ12からフラッシュメモリ11へのデータ転送(DIN)が行われる。つまり、継続データがある場合であっても、通常プログラムコマンド“10H”を用いて書き込み動作が実行される。従って、動作の高速化の観点では、データキャッシュ33を備えることが望ましい。
また、上記実施形態はNANDバス15のバス幅(データ転送速度)がホストバス14のバス幅よりも大きい場合に、より顕著な効果が得られる。これは、両者のデータ転送能力のギャップにより生じる時間にプログラム時間をオーバーラップさせることで、全体としての書き込み性能を向上させることが出来るからである。
更に、上記実施形態で説明したメモリカード1は、例えばSDTMカードである。しかしメモリカード1は、ホスト機器2内に実装された半導体メモリ装置であっても良い。
なお、本願発明は上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出されうる。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出されうる。
この発明の第1の実施形態に係るメモリシステムのブロック図。 この発明の第1の実施形態に係るメモリカードにおける信号ピンに対する信号割り当てを示す図。 この発明の第1の実施形態に係るカードコントローラのブロック図。 この発明の第1の実施形態に係るフラッシュメモリのブロック図。 この発明の第1の実施形態に係るメモリブロックの回路図。 この発明の第1の実施形態に係るメモリセルトランジスタの閾値分布を示すグラフ。 この発明の第1の実施形態に係るメモリブロックの模式図。 この発明の第1の実施形態に係るデータ書き込み方法を示すフローチャートであり、カードコントローラにおける処理を示す図。 この発明の第1の実施形態に係るカードコントローラが出力する信号のタイミングチャート。 この発明の第1の実施形態に係るデータ書き込み方法を示すフローチャートであり、フラッシュメモリにおける処理を示す図。 この発明の第1の実施形態に係るデータ書き込み方法における、データ及び動作の流れを示すタイミングチャート。 この発明の第1の実施形態に係るメモリシステムのブロック図。 この発明の第1の実施形態に係るメモリシステムのブロック図。 この発明の第1の実施形態に係るメモリシステムのブロック図。 この発明の第1の実施形態に係るメモリシステムのブロック図。 データ及び動作の流れを示すタイミングチャート。 この発明の第2の実施形態に係るデータ書き込み方法における、データ及び動作の流れを示すタイミングチャート。 この発明の第1、第2の実施形態に係るメモリカードのブロック図。 この発明の第1の実施形態に係るデータ書き込み方法における動作の流れを示すタイミングチャート。 この発明の第2の実施形態に係るデータ書き込み方法における動作の流れを示すタイミングチャート。 この発明の第1、第2の実施形態に係るデータ書き込み方法における動作の流れを示すタイミングチャート。
符号の説明
1…メモリカード、2…ホスト機器、11…NAND型フラッシュメモリ、12…カードコントローラ、13…信号ピン、21…ホストインタフェースモジュール、22…MPU、23…フラッシュコントローラ、24…ROM、25…RAM、26…バッファ、30…メモリセルアレイ、31…ロウデコーダ、32…ページバッファ、33…データキャッシュ、34…メモリセルユニット

Claims (5)

  1. 2ビット以上のデータを保持可能な複数のメモリセルを備えた第1メモリブロックと、1ビットのデータを保持可能な複数のメモリセルを備えた第2メモリブロックとを有し、前記第1、第2メモリブロックに対して複数の前記メモリセルの集合であるページ単位でデータをプログラム可能な不揮発性半導体メモリと、
    ホスト機器から受信した書き込みデータを前記不揮発性半導体メモリへ供給し、前記第1メモリブロックまたは第2メモリブロックへの前記書き込みデータのプログラムを、前記ページ毎に前記不揮発性半導体メモリに命令するコントローラと
    を具備し、前記第1メモリブロックにおいて前記ページは、保持可能な前記データのビット毎に割り当てられ、且つビット毎に書き込みに要する時間が異なり、
    前記書き込みデータの最終ページが、前記書き込みに要する時間の最も長いビットに相当する場合、前記コントローラは前記不揮発性半導体メモリに対して、当該データについてのプログラムを前記第2メモリブロックのいずれかのページに実行するよう命令する
    ことを特徴とする半導体装置。
  2. 前記コントローラは、前記ページ単位のデータ及び前記第1メモリブロック内のいずれかのページを指定する第1ロウアドレスを、前記不揮発性半導体メモリに対して転送可能とされ、且つ転送した前記第1ロウアドレスの変更命令と、前記第2メモリブロック内のいずれかのページを指定する第2ロウアドレスとを発行可能とされ、
    前記コントローラは、前記最終ページに相当する前記第1ロウアドレスが、前記書き込みに要する時間の最も長いビットに相当する場合、前記データ及び前記第1ロウアドレスの転送に引き続き、前記変更命令及び前記第2ロウアドレスを発行して前記不揮発性半導体メモリへ供給し、
    前記不揮発性半導体メモリは、前記変更命令が発行されない際には前記第1ロウアドレスに対応する第1ページに対して前記プログラムを実行し、前記変更命令が発行された際には前記第2ロウアドレスに対応する第2ページに対して前記プログラムを実行する
    ことを特徴とする請求項1記載の半導体装置。
  3. 前記不揮発性半導体メモリは、前記第2ページに前記プログラムを実行した後、当該第2ページにプログラムされたデータを、前記第1ページにコピーする
    ことを特徴とする請求項2記載の半導体装置。
  4. 前記不揮発性半導体メモリは、前記ページ単位で前記コントローラとの間のデータの授受を可能とされ、且つ1ページ分のデータを保持可能なバッファ回路を更に備え、
    プログラム時において、前記コントローラから前記バッファ回路に転送されたデータが、前記メモリセルにプログラムされ、
    前記不揮発性半導体メモリは、前記第2ページの前記データを前記第1ロウアドレスに相当するページにコピーする際、前記第2ページにプログラムを実行する際に前記バッファ回路に転送されたデータを用いて、前記第1ページに対するプログラムを実行する
    ことを特徴とする請求項3記載の半導体装置。
  5. 前記不揮発性半導体メモリと前記コントローラとの間を接続する第1バスを更に備え、
    前記第1バスのバス幅は、前記コントローラと前記ホスト機器との間を接続する第2バスのバス幅よりも大きい
    ことを特徴とする請求項1記載の半導体装置。
JP2008208649A 2008-08-13 2008-08-13 半導体装置 Expired - Fee Related JP4649503B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2008208649A JP4649503B2 (ja) 2008-08-13 2008-08-13 半導体装置
TW098124148A TW201021042A (en) 2008-08-13 2009-07-16 Semiconductor device including memory cell having charge accumulation layer and control gate and data write method for the same
US12/508,992 US20100042777A1 (en) 2008-08-13 2009-07-24 Semiconductor device including memory cell having charge accumulation layer and control gate and data write method for the same
CN200910165394A CN101650970A (zh) 2008-08-13 2009-08-11 具备具有电荷累积层和控制栅极的存储单元的半导体装置及其数据写入方法
KR1020090074157A KR101076981B1 (ko) 2008-08-13 2009-08-12 전하 축적층과 제어 게이트를 갖는 메모리 셀을 구비한 반도체 장치 및 그 데이터 기입 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008208649A JP4649503B2 (ja) 2008-08-13 2008-08-13 半導体装置

Publications (2)

Publication Number Publication Date
JP2010044620A true JP2010044620A (ja) 2010-02-25
JP4649503B2 JP4649503B2 (ja) 2011-03-09

Family

ID=41673185

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008208649A Expired - Fee Related JP4649503B2 (ja) 2008-08-13 2008-08-13 半導体装置

Country Status (5)

Country Link
US (1) US20100042777A1 (ja)
JP (1) JP4649503B2 (ja)
KR (1) KR101076981B1 (ja)
CN (1) CN101650970A (ja)
TW (1) TW201021042A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012173778A (ja) * 2011-02-17 2012-09-10 Sony Corp 管理装置、および管理方法
JP2013235630A (ja) * 2012-05-08 2013-11-21 Sony Corp 制御装置、記憶装置、データ書込方法
JP2013251039A (ja) * 2012-06-04 2013-12-12 Silicon Motion Inc データアクセス時間を短縮したフラッシュメモリ装置及びフラッシュメモリのデータアクセス方法
CN110413222A (zh) * 2018-04-30 2019-11-05 爱思开海力士有限公司 数据存储装置及其操作方法

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110258372A1 (en) * 2009-07-29 2011-10-20 Panasonic Corporation Memory device, host device, and memory system
TWI435215B (zh) * 2009-08-26 2014-04-21 Phison Electronics Corp 下達讀取指令與資料讀取方法、控制器與儲存系統
CN102637456B (zh) * 2011-02-11 2016-03-23 慧荣科技股份有限公司 内存控制器、记忆装置以及判断记忆装置的型式的方法
JP2013020682A (ja) 2011-07-14 2013-01-31 Toshiba Corp 不揮発性半導体記憶装置
TWI509617B (zh) * 2012-06-04 2015-11-21 Silicon Motion Inc 快閃記憶體裝置及快閃記憶體的資料存取方法
TWI544490B (zh) 2015-02-05 2016-08-01 慧榮科技股份有限公司 資料儲存裝置及其資料維護方法
CN106354678B (zh) * 2016-08-25 2023-08-18 黄骅市交大思诺科技有限公司 测试工装的数字输入输出口扩容装置和方法
JP2019050071A (ja) * 2017-09-11 2019-03-28 東芝メモリ株式会社 半導体記憶装置及びメモリシステム
US10614886B2 (en) * 2017-09-22 2020-04-07 Samsung Electronics Co., Ltd. Nonvolatile memory device and a method of programming the nonvolatile memory device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007242163A (ja) * 2006-03-09 2007-09-20 Toshiba Corp 半導体集積回路装置のデータ記録方式
JP2007257109A (ja) * 2006-03-22 2007-10-04 Matsushita Electric Ind Co Ltd 不揮発性記憶装置、そのデータ書き込み方法、不揮発性記憶システム及びメモリコントローラ
JP2008009942A (ja) * 2006-06-30 2008-01-17 Toshiba Corp メモリシステム
JP2008009919A (ja) * 2006-06-30 2008-01-17 Toshiba Corp カードコントローラ

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006018591A (ja) 2004-07-01 2006-01-19 Matsushita Electric Ind Co Ltd メモリカード
JP4747535B2 (ja) 2004-08-31 2011-08-17 ソニー株式会社 データ記録方法
US7511646B2 (en) * 2006-05-15 2009-03-31 Apple Inc. Use of 8-bit or higher A/D for NAND cell value
KR100926475B1 (ko) * 2006-12-11 2009-11-12 삼성전자주식회사 멀티 비트 플래시 메모리 장치 및 그것의 프로그램 방법
KR100874441B1 (ko) * 2007-01-09 2008-12-17 삼성전자주식회사 멀티-비트 데이터를 저장할 수 있는 플래시 메모리 장치,그것을 제어하는 메모리 제어기, 그리고 그것을 포함한메모리 시스템
US7958301B2 (en) * 2007-04-10 2011-06-07 Marvell World Trade Ltd. Memory controller and method for memory pages with dynamically configurable bits per cell

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007242163A (ja) * 2006-03-09 2007-09-20 Toshiba Corp 半導体集積回路装置のデータ記録方式
JP2007257109A (ja) * 2006-03-22 2007-10-04 Matsushita Electric Ind Co Ltd 不揮発性記憶装置、そのデータ書き込み方法、不揮発性記憶システム及びメモリコントローラ
JP2008009942A (ja) * 2006-06-30 2008-01-17 Toshiba Corp メモリシステム
JP2008009919A (ja) * 2006-06-30 2008-01-17 Toshiba Corp カードコントローラ

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012173778A (ja) * 2011-02-17 2012-09-10 Sony Corp 管理装置、および管理方法
JP2013235630A (ja) * 2012-05-08 2013-11-21 Sony Corp 制御装置、記憶装置、データ書込方法
JP2013251039A (ja) * 2012-06-04 2013-12-12 Silicon Motion Inc データアクセス時間を短縮したフラッシュメモリ装置及びフラッシュメモリのデータアクセス方法
CN110413222A (zh) * 2018-04-30 2019-11-05 爱思开海力士有限公司 数据存储装置及其操作方法
CN110413222B (zh) * 2018-04-30 2023-06-30 爱思开海力士有限公司 数据存储装置及其操作方法

Also Published As

Publication number Publication date
JP4649503B2 (ja) 2011-03-09
KR101076981B1 (ko) 2011-10-26
KR20100020921A (ko) 2010-02-23
US20100042777A1 (en) 2010-02-18
CN101650970A (zh) 2010-02-17
TW201021042A (en) 2010-06-01

Similar Documents

Publication Publication Date Title
JP4649503B2 (ja) 半導体装置
US11150808B2 (en) Flash memory system
TWI782977B (zh) 記憶體系統及其操作方法
JP5002201B2 (ja) メモリシステム
US9281068B2 (en) Nonvolatile memory and related reprogramming method
KR100902008B1 (ko) 메모리 셀에 멀티 비트 데이터를 저장하는 플래시 메모리를 포함한 메모리 시스템
JP2008108418A (ja) マルチページプログラムの方法、及びこれを行うためのフラッシュメモリ装置
CN110780802A (zh) 存储器控制器及其操作方法
US20170115933A1 (en) Data storage device and data maintenance method thereof
JP2009015978A (ja) 半導体記憶装置及びメモリシステム
JP2009003569A (ja) 半導体記憶装置
US11474740B2 (en) Memory system and memory controller
TWI613660B (zh) 記憶體程式化方法、記憶體控制電路單元與記憶體儲存裝置
CN106504788B (zh) 具有空闲存储器件的存储系统及其操作方法
CN109726140A (zh) 非易失性存储器件及其操作方法以及存储设备
US11182108B2 (en) Memory system, memory controller, and operation method
JP2009003995A (ja) 半導体記憶装置
US11544204B2 (en) Memory system, memory controller and method for operating memory controller
US20230006673A1 (en) Memory system and memory controller
JP2009003994A (ja) 半導体記憶装置
JP2009003571A (ja) 半導体記憶装置
JP2009163652A (ja) 半導体記憶装置
JP2009003570A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100802

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101102

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

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

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

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees