[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2018163440A - メモリシステム - Google Patents

メモリシステム Download PDF

Info

Publication number
JP2018163440A
JP2018163440A JP2017059222A JP2017059222A JP2018163440A JP 2018163440 A JP2018163440 A JP 2018163440A JP 2017059222 A JP2017059222 A JP 2017059222A JP 2017059222 A JP2017059222 A JP 2017059222A JP 2018163440 A JP2018163440 A JP 2018163440A
Authority
JP
Japan
Prior art keywords
data
address
memory
controller
column
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
JP2017059222A
Other languages
English (en)
Other versions
JP6779821B2 (ja
Inventor
哲和 吉田
Tetsukazu Yoshida
哲和 吉田
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.)
Kioxia Corp
Original Assignee
Toshiba Memory 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 Memory Corp filed Critical Toshiba Memory Corp
Priority to JP2017059222A priority Critical patent/JP6779821B2/ja
Priority to US15/693,410 priority patent/US10236044B2/en
Publication of JP2018163440A publication Critical patent/JP2018163440A/ja
Application granted granted Critical
Publication of JP6779821B2 publication Critical patent/JP6779821B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/16Multiple access memory array, e.g. addressing one storage element via at least two independent addressing line groups
    • 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/0207Addressing or allocation; Relocation with multidimensional access, e.g. row/column, matrix
    • 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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • 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/7201Logical to physical mapping or translation of blocks or pages
    • 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/7208Multiple device management, e.g. distributing data over multiple flash devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

【課題】データを高速に送受信出来るインターフェースを持つメモリシステムを提供する。【解決手段】コントローラは、ホストから第1論理アドレスを受信し、論理アドレスに相当する第1物理アドレスCA9によって指定されるカラムアドレスに対し第1物理アドレスと異なる第2物理アドレスCA5を生成し、これをNAND型フラッシュメモリに発行して、NAND型フラッシュメモリからデータを読み出し、第1物理アドレスと第2物理アドレスの差分に対応するカラムD5〜D8のデータは破棄する。【選択図】図8

Description

本実施形態は、メモリシステムに関する。
近年、NAND型フラッシュメモリを用いたメモリシステムにおいて、データを高速に送受信出来るインターフェースが求められている。
米国特許第9,293,224号明細書
動作信頼性を向上出来るメモリシステムを提供する。
本実施形態のメモリシステムは、半導体メモリと、コントローラとを備える。半導体メモリは、データを保持可能である。コントローラは、ホストから第1論理アドレスを受信し、第1論理アドレスに対応する第1物理アドレスと異なる第2物理アドレスを半導体メモリに発行して、半導体メモリからデータを読み出す。
図1は、第1実施形態に係るメモリシステムのブロック図である。 図2は、第1実施形態に係るNAND型フラッシュメモリのブロック図である。 図3は、第1実施形態に係るメモリセルアレイの回路図である。 図4は、第1実施形態に係るセンスアンプモジュール及びデータレジスタのブロック図である。 図5は、論理アドレス空間と物理ブロックとの関係を示す概念図である。 図6は、第1実施形態に係るデータの読み出し方法のフローチャートである。 図7は、第1実施形態に係るデータの読み出し時における各種信号のタイミングチャートである。 図8は、第1実施形態に係るデータの読み出し方法の概念図である。 図9は、相補信号のタイミングチャートである。 図10は、読み出し時における各種信号のタイミングチャートである。 図11は、第2実施形態に係るデータの読み出し方法のフローチャートである。 図12は、第2実施形態に係るデータの読み出し方法の概念図である。 図13は、第3実施形態に係るメモリシステムの一部領域のブロック図である。
以下、図面を参照して実施形態について説明する。なお、以下の説明において、同一の機能及び構成を有する構成要素については、共通する参照符号を付す。
1.第1実施形態
第1実施形態に係るメモリシステムについて説明する。以下では、半導体記憶装置としてNAND型フラッシュメモリを備えたメモリシステムを例に挙げて説明する。
1.1 構成について
1.1.1 メモリシステムの全体構成について
まず、本実施形態に係るメモリシステムの大まかな全体構成について、図1を用いて説明する。
図示するようにメモリシステム1は、複数のNAND型フラッシュメモリ100(本例では100−0と100−1)と、これらを制御するコントローラ200とを備えている。NAND型フラッシュメモリ100とコントローラ200とは、例えばそれらの組み合わせにより一つの半導体装置を構成しても良く、その例としてはSDTMカードのようなメモリカードや、SSD(solid state drive)等が挙げられる。なお、メモリシステム1内において同一のコントローラ200に制御されるNAND型フラッシュメモリ100の数は2つに限らず、1つでも良いし、または3つ以上であっても良い。また、コントローラ200並びにNAND型フラッシュメモリ100−0及び100−1はそれぞれ、互いに異なる半導体チップに形成される。以下では、NAND型フラッシュメモリ100及びコントローラ200の形成された半導体チップをそれぞれメモリチップ及びコントローラチップと呼ぶことがある。
NAND型フラッシュメモリ100は複数のメモリセルを備え、データを不揮発に記憶する。コントローラ200は、NANDバスによってNAND型フラッシュメモリ100に接続され、ホストバスによってホスト機器300に接続される。そしてコントローラ200は、NAND型フラッシュメモリ100を制御し、またホスト機器300から受信した命令に応答して、NAND型フラッシュメモリ100にアクセスする。ホスト機器300は、例えばデジタルカメラやパーソナルコンピュータ等であり、ホストバスは、例えばSDTMインターフェースに従ったバスである。
NANDバスは、NANDインターフェースに従った信号の送受信を行う。この信号の具体例は、チップイネーブル信号CEn(本例ではCEn0とCEn1)、アドレスラッチイネーブル信号ALE、コマンドラッチイネーブル信号CLE、ライトイネーブル信号WEn、リードイネーブル信号REn/REn、入出力クロック信号DQS/DQSn、及び入出力信号DQ<0:7>である。信号DQ<0:7>なる表記は、信号DQ0〜DQ7の8ビットの信号DQをまとめたものであり、ビットを区別しない場合には単に信号DQと記載する。また、信号CEnはメモリチップ毎に用意されるが、その他の信号ALE、CLE、WEn、REn/RE、DQS/DQSn、及びDQは複数のメモリチップに共通に使用される。
信号CEnはlowレベルでアサートされ、NAND型フラッシュメモリ100を活性化させる信号である。本例であるとコントローラ200は、NAND型フラッシュメモリ100−0を活性化する際には信号CEn0をlowレベルとし、NAND型フラッシュメモリ100−1を活性化する際には信号CEn1をlowレベルとする。信号CLE及びALEは、NAND型フラッシュメモリ100への入力信号DQがそれぞれコマンド及びアドレスであることをNAND型フラッシュメモリ100に通知する信号である。信号WEnはlowレベルでアサートされ、信号ALE、入力信号DQをNAND型フラッシュメモリ100に取り込ませるための信号である。信号REnとREとは相補な信号(差動信号)であり、信号REnはlowレベルでアサートされる。そして信号REn及びREは、NAND型フラッシュメモリ100から出力信号DQを読み出すための信号である。入出力信号DQは、NAND型フラッシュメモリ100とコントローラ200との間で送受信されるデータの実体であり、コマンド、アドレス、書き込みデータ、及び読み出しデータ等である。
信号DQSとDQSnとは相補な信号であり、信号DQSnはlowレベルでアサートされる。信号DQS及びDQSnは、書き込みデータ及び読み出しデータが同期するクロックとして機能する。例えばデータの読み出し時には、NAND型フラッシュメモリ100が信号DQS及びDQSnを生成し、信号DQS及びDQSnに同期して読み出しデータをコントローラ200へ送信する。そしてコントローラ200は、信号DQS及びDQSnに同期して読み出しデータを受信する。他方でデータの書き込み時には、コントローラ200が信号DQS及びDQSnを生成し、信号DQS及びDQSnに同期して書き込みデータをNAND型フラッシュメモリ100へ送信する。そしてNAND型フラッシュメモリ100は、信号DQS及びDQSnに同期して書き込みデータを受信する。
1.1.2 コントローラ200の構成について
引き続き、図1を用いてコントローラ200の構成の詳細について説明する。図1に示すようにコントローラ200は、ホストインターフェース回路210、内蔵メモリ(RAM)220、プロセッサ(CPU)230、バッファメモリ240、NANDインターフェース回路250、及びECC(Error Checking and Correcting)回路260を備えている。
ホストインターフェース回路210は、ホストバスを介してホスト機器300と接続され、ホスト機器300から受信した命令及びデータを、それぞれプロセッサ230及びバッファメモリ240に転送する。またプロセッサ230の命令に応答して、バッファメモリ240内のデータをホスト機器300へ転送する。
プロセッサ230は、コントローラ200全体の動作を制御する。例えばプロセッサ230は、ホスト機器300から書き込み命令を受信した際には、それに応答して、NANDインターフェース回路250に対して書き込み命令を発行する。読み出し及び消去の際も同様である。またプロセッサ230は、ウェアレベリング等、NAND型フラッシュメモリ100を管理するための様々な処理を実行する。
NANDインターフェース回路250は、NANDバスを介してNAND型フラッシュメモリ100と接続され、NAND型フラッシュメモリ100との通信を司る。そしてNANDインターフェース回路250は、プロセッサ230から受信した命令に基づき、種々の信号をNAND型フラッシュメモリ100へ送信し、またNAND型フラッシュメモリ100から受信する。
バッファメモリ240は、書き込みデータや読み出しデータを一時的に保持する。
内蔵メモリ220は、例えばDRAMやSRAM等の半導体メモリであり、プロセッサ230の作業領域として使用される。そして内蔵メモリ220は、NAND型フラッシュメモリ100を管理するためのファームウェアや、各種の管理テーブル等を保持する。後述する、論理アドレスと物理アドレスとの関係を保持する変換テーブルもまた、動作時には例えばメモリ220に保持される。
ECC回路260は、NAND型フラッシュメモリ100に記憶されるデータに関する誤り検出及び誤り訂正処理を行う。すなわちECC回路260は、データの書き込み時には誤り訂正符号を生成して、これを書き込みデータに付与し、データの読み出し時にはこれを復号する。
1.1.3 NAND型フラッシュメモリ100の構成について
1.1.3.1 全体構成について
次に、NAND型フラッシュメモリ100の構成について、図2を用いて説明する。図2はNAND型フラッシュメモリ100のブロック図である。
図示するようにNAND型フラッシュメモリ100は、入出力回路110、ロジック回路111、アドレスレジスタ112、コマンドレジスタ113、シーケンサ114、電圧発生回路115、メモリセルアレイ116、ロウデコーダ117、センスアンプモジュール118、データレジスタ119、及びカラムデコーダ120を備えている。
ロジック回路111は、コントローラ200から信号CEn、CLE、ALE、WEn、REn/RE、及びDQS/DQSnを受信する。そしてこれらの信号を必要に応じて入出力回路110及びシーケンサ114に転送する。
入出力回路110は、信号DQS/DQSnを送信し、また信号DQの送受信を行う。そして入出力回路110は、信号DQがアドレスであれば、これをアドレスレジスタ112に転送し、信号DQがコマンドであれば、これをコマンドレジスタ113に転送する。更に、データの書き込み時において信号DQが書き込みデータであれば、これをデータレジスタ119に転送する。他方でデータの読み出し時には、データレジスタ119から転送された読み出しデータを、信号DQS/DQSnと共にコントローラ200へ送信する。
アドレスレジスタ112及びコマンドレジスタ113は、それぞれコントローラ200から与えられたアドレス及びコマンドを保持する。またデータレジスタ119は、コントローラ200から与えられた書き込みデータ、またはメモリセルアレイ116からの読み出しデータを保持する。
シーケンサ114は、NAND型フラッシュメモリ100全体の動作を制御する。より具体的には、シーケンサ114はコマンドレジスタ113に保持されたコマンドに従い、ロジック回路111で各種信号が受信されたタイミングで、必要な回路ブロックに必要な動作を命令する。
電圧発生回路115は、シーケンサ114の命令に従い、メモリセルアレイ116、ロウデコーダ117、及びセンスアンプ118に必要な電圧を供給する。
メモリセルアレイ116は、ロウ及びカラムに対応付けられた複数の不揮発性のメモリセルを含む複数のブロック(図示せず)を備えている。そしてメモリセルアレイ116は、例えばコントローラ200から与えられたデータを記憶する。
ロウデコーダ117は、アドレスレジスタ112に保持されたロウアドレスをデコードする。そしてロウデコーダ117はデコード結果に基づいて、メモリセルアレイ116におけるブロックのいずれかを選択し、更に選択したブロックにおけるロウ方向を選択する。
センスアンプ118は、データの読み出し時には、メモリセルアレイ116から読み出されたデータをセンスし、必要な演算を行う。そして、この読み出しデータをデータレジスタ119に送信する。他方、データの書き込み時には、データレジスタ119に保持されるデータをメモリセルアレイ116に書き込む。
カラムデコーダ120は、アドレスレジスタ112に保持されたカラムアドレスをデコードする。そしてカラムデコーダ120はデコード結果に基づいて、データレジスタ119のカラム位置を選択する。例えばデータの読み出し時には、カラムデコーダ120によって選択されたカラム位置から順番に、読み出しデータがカラム単位でコントローラ200へ送信される。
1.1.3.2 メモリセルアレイの構成について
次に、上記メモリセルアレイ116の構成について、図3を用いて説明する。図3は、メモリセルアレイ116に含まれる複数のブロックのいずれかの回路図である。
図示するようにブロックBLKは、複数のNANDストリング121を含む。NANDストリング121の各々は、例えば8個のメモリセルトランジスタMT(MT0〜MT7)及び選択トランジスタST1、ST2を含んでいる。メモリセルトランジスタMTは、制御ゲートと電荷蓄積層とを備え、データを不揮発に保持する。そしてメモリセルトランジスタMTは、選択トランジスタST1のソースと選択トランジスタST2のドレインとの間に直列接続されている。
同一ブロック内の選択トランジスタST1及びST2のゲートは、それぞれセレクトゲート線SGD及びSGSに共通接続される。同様に、同一ブロック内のメモリセルトランジスタMT0〜MT7の制御ゲートは、それぞれワード線WL0〜WL7に共通接続される。
また、メモリセルアレイ110内において同一列にあるNANDストリング121の選択トランジスタST1のドレインは、ビット線BL(BL0〜BL(L−1)、(L−1)は1以上の自然数)に共通接続される。すなわちビット線BLは、複数のブロックBLK間でNANDストリング121を共通に接続する。更に、複数の選択トランジスタST2のソースは、ソース線SLに共通に接続されている。
各メモリセルトランジスタMTは、1ビットまたは複数ビットのデータを保持可能である。そして、同一のワード線WLに接続されたメモリセルトランジスタMTに対しては、ビット毎に一括してデータが書き込まれる。この一括して書き込まれるデータの「ページ」と呼ぶ。メモリセルトランジスタMTが1ビットを保持する場合には、各ワード線WLに接続されたメモリセルトランジスタMTの集合がページに相当する。つまり、1本のワード線WLには1ページが割り当てられ、8本のワード線WLを含むブロックBLKは8ページ分の容量を有する。また、メモリセルトランジスタMTが例えば2ビットデータを保持し、この2ビットを下位ビットからそれぞれlowerビット及びupperビットと呼ぶとすると、同一のワード線に接続されたメモリセルの保持するlowerビットの集合が1ページ(lowerページ)であり、またupperビットの集合が1ページ(upperページ)である。つまり、1本のワード線WLには2ページが割り当てられ、ブロックBLKは16ページ分の容量を有する。あるいは言い換えるならば、「ページ」とは、同一ワード線に接続されたメモリセルによって形成されるメモリ空間の少なくとも一部、と定義することも出来る。データの書き込み及び読み出しは、このページ毎に行っても良い。また、データの消去は、ブロックBLK単位で行われる。
なおメモリセルアレイ116は、メモリセルトランジスタが半導体基板の上方に三次元に積層された構成であっても良い。本構成の一例としては、セレクトゲート線SGS、ワード線WL0〜WL7、及びセレクトゲート線SGDとしてそれぞれ機能する金属配線層が順次形成され、これらを貫くようにして、NANDストリング121の電流経路として機能する半導体ピラーが設けられる。そして、この半導体ピラーの一端に接するようにして、ビット線BLとして機能する金属配線層が形成される。三次元NAND型フラッシュメモリの構成については、例えば、“THREE DIMENSIONAL STACKED NONVOLATILE SEMICONDUCTOR MEMORY”という2009年3月19日に出願された米国特許出願12/407,403号に記載されている。また、“THREE DIMENSIONAL STACKED NONVOLATILE SEMICONDUCTOR MEMORY”という2009年3月18日に出願された米国特許出願12/406,524号、“NON-VOLATILE SEMICONDUCTOR STORAGE DEVICE AND METHOD OF MANUFACTURING THE SAME”という2010年3月25日に出願された米国特許出願12/679,991号、及び“SEMICONDUCTOR MEMORY AND METHOD FOR MANUFACTURING SAME”という2009年3月23日に出願された米国特許出願12/532,030号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
またデータの消去は、ブロックBLK単位、またはブロックBLKよりも小さい単位で行うことが出来る。消去方法に関しては、例えば“NONVOLATILE SEMICONDUCTOR MEMORY DEVICE”という2011年9月18日に出願された米国特許出願13/235,389号に記載されている。また、“NON-VOLATILE SEMICONDUCTOR STORAGE DEVICE”という2010年1月27日に出願された米国特許出願12/694,690号に記載されている。更に、“NONVOLATILE SEMICONDUCTOR MEMORY DEVICE AND DATA ERASE METHOD THEREOF”という2012年5月30日に出願された米国特許出願13/483,610号に記載されている。これらの特許出願は、その全体が本願明細書において参照により援用されている。
1.1.3.3 カラムの概念とセンスアンプモジュール及びデータレジスタの構成について
次に、カラムの概念と、センスアンプモジュール118及びデータレジスタ119の構成について、図4を用いて説明する。図4は、センスアンプモジュール118及びデータレジスタ119のブロック図である。
まずカラムについて説明する。図4に示すように、メモリセルアレイ116はL本のビット線BLを含む。そして、ビット線BL0から順に、隣接する例えば8本のビット線BLが1つのカラムという単位となる。例えば図4に示すように、ビット線BL0〜BL7はカラムC0に属し、ビット線BL8〜BL15はカラムC1に属し、ビット線BL16〜BL23はカラムC2に属し、ビット線BL(L−8)〜BL(L−1)はカラムCnに属する。但し、n=(L/8)である。つまり、カラムCi(iは自然数)には、ビット線BL8i〜BL(8i+7)が属することとなる。以下では、カラムC0〜Cnを区別しない場合には、単にカラムCと呼ぶことにする。また、これらのカラムC0〜Cnには、カラムアドレスCA0〜CAnが対応するものとして以下説明する。
次にセンスアンプモジュール118について説明する。図4に示すようにセンスアンプモジュール118は、L個のセンスアンプSA(SA0〜SA(L−1))を含み、これらはそれぞれビット線BL0〜BL(L−1)に関連付けられている。センスアンプSAは、データの読み出し時には、関連付けられたビット線BLに読み出されたデータをセンスする。他方でデータの書き込み時には、書き込みデータに対応する電圧を、関連付けられたビット線BLに印加する。
データレジスタ119は、図4に示すようにL個のラッチ回路LC(LC0〜LC(L−1))を含み、これらはそれぞれセンスアンプSA0〜SA(L−1)、すなわちビット線BL0〜BL(L−1)に関連付けられている。ラッチ回路LCの各々は少なくとも1ビットのデータを保持可能であり、この場合にはデータレジスタ119は1ページ分のデータを保持出来る。各メモリセルトランジスタMTが2ビット以上のデータを保持する場合には、各ラッチ回路LCも少なくとも2ビット以上のデータを保持可能とされ、これによりデータレジスタ119は2ページ分以上のデータを保持可能とされる。データレジスタ119が保持する1ページ分のデータのうち、ラッチ回路LC0〜LC7の保持する8ビットをデータD0と呼び、ラッチ回路LC8〜LC15の保持する8ビットをデータD1と呼び、以下同様にラッチ回路LC(L−8)〜LC(L−1)の保持する8ビットをデータDnと呼ぶことにする。すなわち、データD0〜DnがカラムC0〜Cnに関連付けられている。
データの読み出し時には、ラッチ回路LCは、関連付けられたセンスアンプSAでセンスされたデータを保持する。そしてデータレジスタ119は、信号REn/REがトグルされる度に、カラムアドレスCAによって指定されるカラムに対応するラッチ回路LCのデータを入出力回路110へ転送する。例えば、カラムアドレスCA0によってカラムC0が選択される際には、データD0がラッチ回路LC0〜LC7から入出力回路110へ転送される。
データの書き込み時には、ラッチ回路LCは、関連付けられたビット線BLに書き込むべきデータが入出力回路110から転送される。そしてセンスアンプSAは、関連付けられたラッチ回路LCに保持されるデータに従って、ビット線BLに電圧を印加する。
カラムデコーダ120は、例えばデータの読み出し時において、アドレスレジスタ112内のカラムアドレスCAをデコードする。そしてカラムデコーダ120は、デコード結果に基づいていずれかのカラムCを選択する。この結果、カラムデコーダ120によって選択されたカラムCに相当するラッチ回路LCから順番に、読み出しデータが入出力回路110へ転送される。
1.1.4 論理アドレスと物理アドレスについて
次に、論理アドレスと物理アドレスの概念について図5を用いて説明する。図5は、論理アドレス空間とブロックBLKとの関係を示す概念図である。
NAND型フラッシュメモリ100の各ブロックBLKには、ブロック固有のブロックアドレスが割り当てられている。これは物理アドレスと呼ばれる。カラムアドレス及びページアドレスも同様であり、各カラム及びページには固有のアドレスが割り当てられている。よって、コントローラ200がNAND型フラッシュメモリ100にアクセスする際には、この物理アドレスが用いられる。
他方で、ホスト機器300はNAND型フラッシュメモリ100の物理アドレスは認識しない。ホスト機器300は、NAND型フラッシュメモリ100のメモリ容量に基づく論理アドレス空間を認識し、この論理アドレス空間に割り当てられた論理アドレスを用いてコントローラ200にアクセスする。
従ってコントローラ200は、ホスト機器300からの論理アドレスと、NAND型フラッシュメモリ100における物理アドレスとの関係、つまり論理アドレスと、物理的なブロックBLKとの対応関係を常に把握する。この対応関係を保持しているのが変換テーブルである。変換テーブルは、メモリシステム1の動作時には例えばRAM220に読み出されて例えばCPU230に利用され、電源遮断時にはNAND型フラッシュメモリ100に保存される。
図5の例であると、例えば論理アドレス空間の領域AU0の論理アドレスは0x00000000〜0x003FFFFFである。この領域AU0には、ブロックBLK0〜BLK3が対応する。言い換えれば、物理的なブロックBLK0〜BLK3内のメモリセルトランジスタMTによって、論理アドレス空間の領域AU0が形成されている。なお図5の例ではブロックBLK0〜BLK3にはそれぞれ物理アドレスとして0x00000000、0x00100000、0x00100000、及び0x00300000が割り当てられており、対応する論理アドレスと一致しているが、両者が一致している必要は無い。
また、例えば論理アドレス空間の領域AU1の論理アドレスは0x00400000〜0x007FFFFFである。この領域AU1には、ブロックBLK4〜BLK7が対応しており、それぞれには物理アドレス0x00400000、0x00500000、0x00600000、及び0x00700000が割り当てられている。
以上のように、論理アドレスと物理アドレスとの対応関係を保持するのが変換テーブルである。論理アドレスと物理アドレスとの対応関係は、常に変化する。すなわち、NAND型フラッシュメモリでは、一般的にデータの上書きは行われない。従って、図5に示すように例えばブロックBLK0内のデータを更新する場合には、更新データが例えば別のブロックBLK8に書き込まれる。すると、論理アドレス0x00000000に相当する物理アドレスは、ブロックBLK0ではなくブロックBLK8に割り当てられたアドレス0x00800000である。また、ブロックBLK5の更新データがブロックBLK9に書き込まれると、論理アドレス0x00500000に対応する物理アドレスはアドレス0x00900000に変わる。
このように、NAND型フラッシュメモリ100においてデータはブロック間を転々とするため、いずれのブロックBLKがいずれの論理アドレス空間に相当するのかを常に保持する必要がある。この役割を担っているのが変換テーブルである。コントローラ200がホスト機器300からの命令に基づいてNAND型フラッシュメモリ100にアクセスする際には、受信した論理アドレスを、変換テーブルを用いて物理アドレスに変換する。そして得られた物理アドレスを用いてNAND型フラッシュメモリ100へのアクセス命令を発行する。
1.2 読み出し動作について
次に、本実施形態に係るデータの読み出し動作について説明する。図6は、本実施形態に係るメモリシステム1におけるデータ読み出し時のホスト機器300、コントローラ200、及びNAND型フラッシュメモリ100の動作を示すフローチャートである。
図示するように、まずホスト機器300が読み出し命令を発行し、これをコントローラ200へ送信する(ステップS10)。この際、ホスト機器300は、必要なデータが格納された領域に対応する論理アドレスをコントローラ200へ送信する。
するとコントローラ200の例えばプロセッサ230は、内蔵メモリ220等に保持される変換テーブルに従って、受信した論理アドレスを物理アドレスに変換する。すなわち、プロセッサ230は、図5で説明した変換テーブルを用いて、必要なデータを保持する物理的なブロックBLKの物理アドレスを得る(ステップS11)。ステップS11で得た物理アドレスを、以下、第1物理アドレスと呼ぶ。
引き続き例えばプロセッサ230は、第1物理アドレスに基づいて第2物理アドレスを生成する(ステップS12)。第2物理アドレスは、指定するカラムCを、第1物理アドレスで指定されるカラムより数カラムだけ先頭カラム側にシフトさせ、または数カラムだけデクリメントさせることによって得られるアドレスである。
そしてプロセッサ230は、NANDインターフェースで規定された読み出しコマンドを発行する(ステップS13)。このコマンド及び第2物理アドレスは、NANDバスを介してNAND型フラッシュメモリ100へ送信される。
読み出しコマンドを受信したNAND型フラッシュメモリ100では、シーケンサ114は、受信した第2物理アドレスに対応するブロックから、1ページ分のデータを読み出す(ステップS14)。
メモリセルアレイ116からセンスアンプモジュール118へのデータの読み出しが完了すると、コントローラ200のプロセッサ230は、信号REn/REをトグルさせる。するとNAND型フラッシュメモリ100の入出力回路110は、この信号REn/REに応答して、読み出しデータDQと信号DQS/DQSnとをコントローラ200へ送信する(ステップS15)。データDQは、第2物理アドレスに対応するカラムから順番にカラム単位で転送される。
NAND型フラッシュメモリ100からデータを受信したコントローラ200では、第1物理アドレスと第2物理アドレスとの差分に対応するカラムのデータを破棄する(ステップS16)。すなわち、NAND型フラッシュメモリ100から最初に受信する数サイクルのデータを破棄する。この詳細については後述する。そして、コントローラ200は、第2物理アドレスに相当するカラム以降のデータにつき、エラー訂正等を行い、その後ホスト機器300へ転送する。
図7は、上記ステップS13〜S15におけるNANDインターフェース上の信号を示すタイミングチャートである。図7において、相補信号REn/REについては信号REn及びREをそれぞれ実線及び破線で示し、DQS/DQSnについては信号DQS及びDQSnをそれぞれ実線及び破線で示してある。
図示するように、まずコントローラ200がコマンド“00h”をNAND型フラッシュメモリに送信する。コマンド“00h”は、読み出し動作時においてアドレスを入力する前に発行されるコマンドである。この際、コントローラ200の例えばNANDインターフェース250は信号CLEを“H”レベルとし、信号ALEを“L”レベルとし、信号WEnを“L”レベルとする。信号REnは“H”レベルとされ、信号DQS/DQSnの信号線はハイインピーダンスの状態とされる。この結果、コマンド“00h”がコマンドレジスタ113に保持される。
引き続きコントローラ200は、5サイクルにわたってアドレスを送信する。すなわち、始めの2サイクルでカラムアドレスCAが送信され、その後の3サイクルでロウアドレス(ブロックアドレス及びページアドレス)RAが送信される。この際、NANDインターフェース250は信号CLEを“L”レベルとし、信号ALEを“H”レベルとし、信号WEnをトグルさせる。この結果、アドレスCA及びRAがアドレスレジスタ112に保持される。
次に、コントローラ200はコマンド“30h”をNAND型フラッシュメモリに送信する。コマンド“30h”は、NAND型フラッシュメモリ100に対して、メモリセルアレイ116からのデータの読み出しを命令するコマンドである。このコマンド“30h”がコマンドレジスタ113に格納されると、シーケンサ114の命令に従ってNAND型フラッシュメモリ100ではデータの読み出し動作が開始され、NAND型フラッシュメモリ100はビジー状態(コントローラ200からの通常の命令を受け付けない状態)となる。すなわち、NAND型フラッシュメモリ100では、ロウデコーダ117がロウアドレスRAをデコードし、ロウアドレスRAによって指定されたページからデータがセンスアンプモジュール118に読み出され、更にデータレジスタ119に転送される。またカラムデコーダ120はカラムアドレスCAをデコードする。
そしてNAND型フラッシュメモリ100がレディ状態(コントローラ200からの通常の命令を受け付け可能な状態)になると、NANDインターフェース250は信号REn/REをトグルさせる。この信号REn/REがトグルされることにより、読み出しデータがデータレジスタ119から入出力回路110を介してコントローラ200に送信される。
図7の例であると、時刻t7で信号REnが“H”レベル(REが“L”レベル)とされたことに同期して、NAND型フラッシュメモリ100の入出力回路110は、時刻t9において信号DQSを“H”レベル(DQSnが“L”レベル)とする。更に入出力回路110は、カラムデコーダ120でデコードされたカラム(本例ではカラムアドレスはCA5であり、対応するカラムがC5であったとする)に相当するラッチ回路LC5から、読み出しデータD5を、信号DQS/DQSnに同期してコントローラ200へ送信する。このカラムアドレスCA5は、図6で説明した第2物理アドレスに相当する。
その後、コントローラ200は、必要とするデータ量に応じて信号REn/REをトグルさせる。トグルされる度に、カラムデコーダ120あるいはアドレスレジスタ112において、カラムアドレスCAがインクリメントされる。その結果、時刻t11、t13、t15、t17、t19、t21において、データD6〜D11がコントローラ200へ送信される。
コントローラ200へ送信された読み出しデータは、図6のステップS16で説明したように、最初の数サイクルに相当するデータが破棄される。この様子を図8に示す。図8は、1ページ分のデータを保持するデータレジスタ119のブロック図と、データ送信時における信号DQの様子を示している。また図8では、ホスト機器300から与えられた論理アドレスに相当する第1物理アドレスによって指定されるカラムがC9(カラムアドレス=CA9)であり、コントローラ200で破棄されるデータサイクルが4サイクルであった場合について示している。
図示するように、コントローラ200では、第2物理アドレスとして、カラムC5を指定するカラムアドレスCA5を生成し、ロウアドレスRAと共にこれらをNAND型フラッシュメモリ100へ送信する。ホスト機器300から求められているデータはカラムC9(カラムアドレスCA9)以降のデータであるので、コントローラ200は、カラムC5〜C9の間のデータD5〜D8をダミーデータとして扱う。すなわち、NANDインターフェース250でデータD5〜D8を受信すると、これらについてECC処理等を行うことなく破棄する。そしてコントローラ200は、カラムC9以降のデータD9、D10、D11…を有効データとして扱い、これらにつきECC処理等を行い、ホスト機器300に送信する。
1.3 本実施形態に係る効果
本実施形態によれば、メモリシステムの動作信頼性を向上出来る。本効果につき、以下説明する。
図1で説明したように、メモリコントローラ200に複数のメモリチップ100が接続されると、NANDバスの負荷が大きくなる。すると、NANDインターフェース上の基準信号となる信号REnやDQS等の差動信号がプリアンプル期間を経て発振を開始する際、その最初の数サイクルでは十分な振幅が得られない場合がある。
図9は、ある差動信号S1/S1nの発振直後の波形を示している。図示するように、信号S1の振幅は、最初のサイクルでは最大振幅の55%に過ぎず、2サイクル目では最大振幅の60%となり、時間が経つにつれて最大振幅に近づいていく。信号S1nも同様である。このように振幅を十分に取れない問題は、信号の発振周波数が高いほどに顕著であり、DDR(double data rate)方式のNAND型フラッシュメモリにおいて問題となる可能性がある。この様子を図10に示す。
図中のREn/RE1は、負荷が小さい状態での信号REn/REの発振波形である。信号REn/REは、時刻t0〜t10の期間でアサートされている。しかし、NANDバスに複数のメモリチップが接続されて、NANDバスの負荷が大きくなると、図9で説明したように発振直後の信号REn/REには十分な振幅が得られず、図10のREn/RE2に示すように、アサートされる期間が実質的に短くなる。
NAND型フラッシュメモリでは、REn/RE2で示された信号を元に、信号DQS/DQSnが生成される。NANDバスの負荷が小さければ、図10においてDQS/DQSn1と示す信号波形が得られる。信号DQSの立ち上がりは、ほぼ信号REnの立ち下がりと同時であり、信号DQSの立ち下がりは、信号REnの立ち上がりからあるマージンを持った期間だけ早く立ち下がる。
しかし、信号REn/REと同様に、NANDバスの負荷が大きくなると、発振直後の信号DQS/DQSnには十分な振幅が得られず、図10のDQS/DQS2に示すように、アサートされる期間が実質的に短くなる。図10の例では、アサート期間は時刻t2〜t7である。
データDQは、図10のDQS/DQSn2に示す信号に同期してコントローラ200に送信される。従って、DQは、時刻t2〜t7に対して更にマージンを持たせた時刻t3〜t6の期間に送信される。コントローラ200では、更にマージンを持たせた時刻t4〜t5の期間でデータをサンプリングする。
以上のように、高周波数で発振する差動信号において、バスの負荷が大きくなると、データをサンプリングする期間を十分に確保することが困難となる。このことは、データ送信時のクロックとして機能する信号REn/RE及びDQS/DQSnだけでなく、図10では図示を省略したが、データDQについても同様である。データDQの場合にはREn/RE及びDQS/DQSnのようなクロックと異なり、データに依存して“H”レベルまたは“L”レベルを取る。しかし、メモリセルアレイ116にデータを書き込む際には、“0”データや“1”データが偏在しないよう、コントローラ200によってデータはランダマイズされる。すると、データDQもまたクロックと同様に、高い周波数で発振する信号となり、クロックと同様の問題を有し得る。
この点、本実施形態に係る読み出し方法であると、コントローラ200は、ホスト機器300から受信した論理アドレスに相当し、且つ本来アクセスすべきカラムアドレス(図8の例であるとCA9)を、先頭アドレス側にシフトさせたカラムアドレス(図8の例であるとCA5)を生成する。そしてこのシフトされたカラムアドレスから順番にデータをNAND型フラッシュメモリ100から読み出す。しかし、シフトされたカラムアドレスと本来アクセスすべきカラムアドレスとの間のデータはホスト機器300に送信することなく破棄する。つまり、図9及び図10で説明したような誤読み出しが生じ易いクロックで読み出したデータは破棄され、その後、クロックの発振が安定した状態で、必要なデータがコントローラ200で受信される。
図7及び図8の例では、クロックの発振が安定するまでのサイクル(ダミーサイクル)数が4サイクルである場合を例に説明した。しかし、このダミーサイクル数はメモリチップ及びコントローラチップの特性や、コントローラチップに接続されるメモリチップ数によって適宜選択出来る。また本実施形態であると、初めの4サイクルで読み出されるデータは無駄なデータであり、無駄な読み出し動作と言うことが出来る。しかし、発振の安定しない4サイクルを使用しないことで、安定後のクロックの周波数は十分に高くすることが出来る。従って、読み出し動作において、たとえ無駄な4サイクルが増えたとしても、読み出し動作全体のスピードは向上され、且つ動作の誤読み出しを抑制出来る。
2.第2実施形態
次に、第2実施形態に係るメモリシステムについて説明する。本実施形態は、上記第1実施形態において、NAND型フラッシュメモリ100のデータレジスタ119の動作に関するものである。以下では、第1実施形態と異なる点についてのみ説明する。
2.1 読み出し動作について
本実施形態に係るデータの読み出し時におけるNAND型フラッシュメモリ100の動作につき、図11を用いて説明する。図11は読み出し時における、特にカラム系の動作に着目したフローチャートであり、第1実施形態の図6で説明したステップS14及びS15に相当する。
図示するように、まずコントローラ200から受信した物理アドレスがアドレスレジスタ112にセットされ、このうちのカラムアドレスCAがカラムデコーダ120に転送される(ステップS20)。そして、シーケンサ114は信号REn/REを受信すると(ステップS21)、データレジスタ119は、カラムデコーダ120でデコードされたカラムアドレスに相当するラッチ回路LCから1カラム分のデータを入出力回路110に転送し、入出力回路110はこれを信号DQS/DQSnに同期してコントローラ200へ送信する(ステップS22)。
その後、信号REn/REを受信しなければ(ステップS23、NO)、読み出し動作は終了する。他方で信号REn/REを受信した場合には(ステップS23、YES)、シーケンサ114は、直前にアクセスしたカラムが最終カラムアドレスに相当するか否かを判断する(ステップS24)。最終カラムアドレスでなければ(ステップS24、NO)、シーケンサ114は、アドレスレジスタ112内のカラムアドレスCAをインクリメントしてカラムデコーダ120に転送するか、あるいはカラムデコーダ120に転送されたカラムアドレスをインクリメントする(ステップS25)。するとデータレジスタ119は、ステップS22で説明した通り、インクリメントされたカラムアドレスに相当する1カラム分のデータを入出力回路110に転送し、入出力回路110はこれを信号DQS/DQSnに同期してコントローラ200へ送信する。
他方で、直前にアクセスしたカラムが最終カラムアドレスであった場合には(ステップS24、YES)、シーケンサ114は、アドレスレジスタ112内のカラムアドレスCAをページの先頭アドレスに更新してカラムデコーダ120に転送するか、あるいはカラムデコーダ120に転送されたカラムアドレスを先頭アドレスに更新する(ステップS26)。するとデータレジスタ119は、ステップS22で説明した通り、ページの先頭アドレスに相当する1カラム分のデータを入出力回路110に転送し、入出力回路110はこれを信号DQS/DQSnに同期してコントローラ200へ送信する。
図12は、第1実施形態で説明した図8と同様に、1ページ分のデータを保持するデータレジスタ119のブロック図と、データ送信時における信号DQの様子を示している。図12では、論理アドレスによって1ページの先頭カラム(カラムアドレスCA0)が指定される場合を示している。
図示するように、コントローラ200では、第2物理アドレスとして、先頭カラムアドレスCA0から4カラム前のカラムC(n−3)を指定するカラムアドレスCA(n−3)を生成する。コントローラ200では、カラムアドレスをデクリメントする際に、先頭アドレスCA0に到達した際には、次に最終カラムアドレスCAnに遷移する。
従ってNAND型フラッシュメモリ100は、信号REn/REがトグルされる度にD(n−3)、D(n−2)、…を順次出力する。そして、最終カラムアドレスCAnに対応するデータDnを出力すると、カラムアドレスCAを先頭カラムアドレスCA0に更新する。その後は、再びカラムアドレスCAをインクリメントして、データD0、D1、D3、…を順次出力する。
この場合、最初の4サイクルのデータD(n−3)、D(n−2)、D(n−1)、及びDnが破棄される。その結果、ページデータは、先頭カラムから順番に有効データとしてコントローラ200へ転送され、これらにつきECC処理等が行われた後、ホスト機器300に送信される。
2.2 本実施形態に係る効果
本実施形態に係るNAND型フラッシュメモリ100によれば、カラムアドレスCAは、最終アドレスに達した後、信号REn/REに同期して先頭アドレスに戻る。これにより、第1実施形態で説明した方法を適用した場合であっても、読み出し開始カラムを自由に設定出来る。
3.第3実施形態
次に、第3実施形態に係るメモリシステムについて説明する。本実施形態は、コントローラ200において、不要なデータを破棄する一具体例に関するものである。以下では、第1及び第2実施形態と異なる点についてのみ説明する。
3.1 NAND型フラッシュメモリ100及びコントローラ200の構成について
図13は、NAND型フラッシュメモリ100及びコントローラ200における、データ読み出し時の入出力系統のブロック構成を示している。
図示するようにコントローラ200は、入力系のロジック回路290と出力系のロジック回路280を備えている。ロジック回路290及び280は、図1で説明した例えばプロセッサ230、ECC回路260、RAM220、及びバッファメモリ240を含む。またロジック回路290は、REn制御部291を備えている。REn制御部291は、例えばコントローラ200内に設けられたクロック生成器から与えられるクロックCLKに基づいて、信号REn/REを生成する。
NANDインターフェース250は、REn出力部270、DQS受信部271、及びDQ受信部272を備えている。そしてREn出力部270は、REn制御部291から信号REn/REを受信し、これをREn/RE出力端子TC1からNAND型フラッシュメモリ100へ送信する。
NAND型フラッシュメモリ100のロジック回路111は、REn受信部130を備えている。REn受信部130は、NAND型フラッシュメモリのREn/RE入力端子TN1を介して、コントローラ200からの信号REn/REを受信する。
入出力回路110は、DQS出力部131及びDQ出力部132を備えている。DQS出力部131は、REn受信部130から受信した信号REn/REに基づいて信号DQS/DQSnを生成し、これをDQS/DQSn出力端子TN2からコントローラ200へ送信する。DQ出力部132は、データレジスタ119から1カラム分のデータDQを受信し、REn受信部130から受信した信号REn/RE及びDQS出力部131から受信した信号DQS/DQSnに同期して、これをDQ出力端子TN3からコントローラ200へ送信する。
NANDインターフェース250のDQS受信部271は、コントローラ200のDQS入力端子TC2を介して、NAND型フラッシュメモリ100から信号DQS/DQSnを受信し、これをロジック回路280へ転送する。またDQ受信部272は、コントローラ200のDQ入力端子TC3を介して、NAND型フラッシュメモリ100から信号DQを受信し、これをロジック回路280へ転送する。
ロジック回路280は、DLL回路281及びFIFOメモリ282を備えている。DLL回路281は、DOQ受信部271及びDQ受信部272から受信した信号DQSとDQのエッジのタイミングを揃える。FIFOメモリ282は、DLL回路281によってタイミングの揃えられた信号DQSを一時的に保持する。FIFOメモリ282に保持されたデータは、その後、エラー訂正等が行われて、ホスト機器300へ送信される。
コントローラ200は更に、DQS受信部271及びDQ受信部272と、ロジック回路280との間に、スイッチSW1及びSW2を備えている。スイッチSW1は信号DQS/DQSnの転送経路に設けられ、スイッチSW2は信号DQの転送経路に設けられる。そして、スイッチSW1及びSW2をロジック回路290の例えばREn制御部291が制御することにより、信号DQS/DQSn及びDQがゲーティングされる。この際、REn制御部271は、DQS/DQSnのダミーサイクルの期間だけスイッチSW1及びSW2をオフさせ、ダミーサイクルが経過した後にスイッチSW1及びSW2をオンさせる。これにより、FIFOメモリ282には有効データが転送され、ダミーデータは転送されない。
3.2 本実施形態に係る効果
上記第1及び第2実施形態には、例えば本実施形態で説明した構成が適用出来る。なお、スイッチSW1を廃しても良い。
4.変形例等
上記のように、本実施形態に係るメモリシステムは、半導体メモリ(100)と、コントローラ(200)とを備える。半導体メモリ(100)は、データを保持可能である。コントローラ(200)は、ホスト(300)から第1論理アドレスを受信し、第1論理アドレスに対応する第1物理アドレス(CA9 in 図8)と異なる第2物理アドレス(CA5 in 図8)を半導体メモリ(100)に発行して、該半導体メモリからデータを読み出す。
換言すれば、本実施形態に係るコントローラ(200)は、ホスト機器(300)から受信した第1論理アドレス(CA9 in FIG8)に従って半導体メモリに第1データ(D9-D13 in FIG8)を書き込んだ直後に、第1論理アドレス(CA9 in FIG8)に従った読み出し命令を半導体メモリに発行した際、半導体メモリからは第1データと異なる第2データ(D5-D13 in FIG8)が読み出される。この第2データは、図8で説明したように、第3データ(D5-D8 in FIG8)と、第3データに後続する第1データ(D9-D13 in FIG8)とを含む。これはコントローラが、書き込み動作時には、受信した第1論理アドレスをテーブルに基づいて第1物理アドレスに変換し、該第1物理アドレスに対応する領域にデータを書き込むよう、半導体メモリに命令するのに対して、読み出し動作時には、第1論理アドレスを第1物理アドレスに変換し、更にカラムアドレスが前記ページにおける先頭カラム側にシフトするように、第1物理アドレスを第2物理アドレスに変換するからである(FIG8)。
本構成により、安定したクロックを用いてデータの転送が可能となり、メモリシステムの動作信頼性を向上出来る。なお、実施形態は上記説明した形態に限られず、種々の変形が可能である。例えば図8の例では、信号REn/RE及びDQS/DQSnが発振を開始してから4サイクル分をダミーデータとして破棄する場合を例に説明したが、ダミーサイクルは4サイクルに限らず、任意のサイクルに設定出来る。また、このサイクル数を可変としても良い。例えば、Set featureコマンド等を用いることで、メモリシステム自体が劣化してきた際には、出荷直後の設定サイクル数よりもサイクル数を多くしても良い。
また、ダミーデータを破棄せずにコントローラ200の例えばバッファメモリ240等に保持していても良い。ホスト機器300からの読み出し命令が繰り返される度に、バッファメモリ240にはダミーデータが蓄積される。そして、バッファメモリ240に蓄積していたデータが、ホスト機器300の要求するデータに一致すれば、バッファメモリ240からデータを読み出せば良く、メモリセルアレイからのデータの読み出しが不要となる。
なお、コントローラ200にデータを転送する必要の無い読み出し動作の場合には、カラムシフトは不要である。例えば、ホスト機器300やコントローラ200からの命令を受信することなく、NAND型フラッシュメモリ100内部においてデータをあるブロックから別のブロックにコピーするような場合には、当然ながらNAND型フラッシュメモリ100はカラムシフトする必要は無い。またコントローラ200が読み出し命令を発行する場合であっても、そのデータがコントローラ200に転送されないならば、カラムシフトは不要である。
また、上記実施形態では半導体記憶装置としてNAND型フラッシュメモリを例に挙げて説明した。しかしNAND型フラッシュメモリに限らず、また記憶装置に限らず、バス上の負荷が大きく、データ転送時の信号安定化に時間を要する半導体装置全般に適用出来る。
なお、各実施形態において、
(1)読み出し動作では、メモリセルトランジスタMTが2ビットのデータを保持し、その閾値を電圧の低いものからEレベル、Aレベル、Bレベル、及びCレベルとすると、
Aレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば0V〜0.55Vの間である。これに限定されることなく、0.1V〜0.24V、0.21V〜0.31V、0.31V〜0.4V、0.4V〜0.5V、0.5V〜0.55Vいずれかの間にしてもよい。
Bレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば1.5V〜2.3Vの間である。これに限定されることなく、1.65V〜1.8V、1.8V〜1.95V、1.95V〜2.1V、2.1V〜2.3Vいずれかの間にしてもよい。
Cレベルの読み出し動作に選択されたワード線に印加される電圧は、例えば3.0V〜4.0Vの間である。これに限定されることなく、3.0V〜3.2V、32V〜3.4V、3.4V〜3.5V、3.5V〜3.6V、3.6V〜4.0Vいずれかの間にしてもよい。
読み出し動作の時間(tR)としては、例えば25μs〜38μs、38μs〜70μs、70μs〜80μsの間にしてもよい。
(2)書き込み動作は、プログラム動作とベリファイ動作を含む。書き込み動作では、
プログラム動作時に選択されたワード線に最初に印加される電圧は、例えば13.7V〜14.3Vの間である。これに限定されることなく、例えば13.7V〜14.0V、14.0V〜14.6Vいずれかの間としてもよい。
奇数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧と、偶数番目のワード線を書き込む際の、選択されたワード線に最初に印加される電圧を変えてもよい。
プログラム動作をISPP方式(Incremental Step Pulse Program)としたとき、ステップアップの電圧として、例えば0.5V程度が挙げられる。
非選択のワード線に印加される電圧としては、例えば6.0V〜7.3Vの間としてもよい。この場合に限定されることなく、例えば7.3V〜8.4Vの間としてもよく、6.0V以下としてもよい。
非選択のワード線が奇数番目のワード線であるか、偶数番目のワード線であるかで、印加するパス電圧を変えてもよい。
書き込み動作の時間(tProg)としては、例えば1700μs〜1800μs、1800μs〜1900μs、1900μs〜2000μsの間にしてもよい。
(3)消去動作では、
半導体基板上部に形成され、かつ、上記メモリセルが上方に配置されたウェルに最初に印加する電圧は、例えば12V〜13.6Vの間である。この場合に限定されることなく、例えば13.6V〜14.8V、14.8V〜19.0V、19.0V〜19.8V、19.8V〜21Vの間であってもよい。
消去動作の時間(tErase)としては、例えば3000μs〜4000μs、4000μs〜5000μs、4000μs〜9000μsの間にしてもよい。
(4)メモリセルの構造は、下記のような構造であっても良い。すなわち、
半導体基板(シリコン基板)上に膜厚が4〜10nmのトンネル絶縁膜を介して配置された電荷蓄積層を有している。この電荷蓄積層は膜厚が2〜3nmのSiN、またはSiONなどの絶縁膜と膜厚が3〜8nmのポリシリコンとの積層構造にすることができる。また、ポリシリコンにはRuなどの金属が添加されていても良い。電荷蓄積層の上には絶縁膜を有している。この絶縁膜は、例えば、膜厚が3〜10nmの下層High−k膜と膜厚が3〜10nmの上層High−k膜に挟まれた膜厚が4〜10nmのシリコン酸化膜を有している。High−k膜はHfOなどが挙げられる。また、シリコン酸化膜の膜厚はHigh−k膜の膜厚よりも厚くすることができる。絶縁膜上には膜厚が3〜10nmの仕事関数調整用の材料を介して膜厚が30nm〜70nmの制御電極が形成されている。ここで仕事関数調整用の材料はTaOなどの金属酸化膜、TaNなどの金属窒化膜である。制御電極にはWなどを用いることができる。
また、メモリセル間にはエアギャップを形成することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1…メモリシステム、
100…NAND型フラッシュメモリ、110…入出力回路、111…ロジック回路、112、113、119…レジスタ、114…シーケンサ、115…電圧発生回路、116…メモリセルアレイ、117…ロウデコーダ、118…センスアンプモジュール、120…カラムデコーダ、121…NANDストリング、200…コントローラ、210、250…インターフェース回路、220、240…メモリ、230…プロセッサ、260…ECC回路、300…ホスト機器

Claims (13)

  1. データを保持可能な半導体メモリと、
    ホストから第1論理アドレスを受信し、該第1論理アドレスに対応する第1物理アドレスと異なる第2物理アドレスを前記半導体メモリに発行して、該半導体メモリからデータを読み出すコントローラと
    を具備するメモリシステム。
  2. 前記半導体メモリは、ロウ及びカラムに関連付けられた複数のメモリセルを含み、
    前記第2物理アドレスは、前記第1物理アドレスに対してカラムアドレスをシフトさせたアドレスに対応する、請求項1記載のメモリシステム。
  3. 前記半導体メモリは、複数のメモリセルを含むメモリセルアレイを備え、前記メモリセルアレイからデータはページ単位で読み出され、
    前記コントローラは、前記第1論理アドレスと前記第1物理アドレスとの関係を保持するテーブルを備え、該テーブルに基づいて前記受信した第1論理アドレスを前記第1物理アドレスに変換し、
    前記第2物理アドレスは、前記カラムアドレスを前記ページにおける先頭カラム側にシフトさせたアドレスに対応する、請求項2記載のメモリシステム。
  4. 前記半導体メモリは、複数のメモリセルを含むメモリセルアレイを備え、前記コントローラから第1命令と前記第1物理アドレスとを受信すると、該メモリセルアレイからページ単位でデータを読み出し、
    前記第1命令の後に第1クロックを前記コントローラから受信する度に、前記第2物理アドレスにおけるカラムアドレスから順番に、前記ページサイズ未満の単位で読み出しデータを前記コントローラへ転送し、
    転送すべきデータに対応する前記カラムアドレスが最終アドレスに達した後に更に前記第1クロックを受信した際には、先頭カラムアドレスに対応するデータを前記コントローラへ転送する、請求項1または2記載のメモリシステム。
  5. 前記半導体メモリは、第2クロックと共に、読み出しデータを前記コントローラへ送信し、
    前記コントローラは、前記第2クロックと前記読み出しデータを受信する受信回路と、
    前記受信回路から前記読み出しデータを受信するバッファ回路と
    を備え、前記第1命令に対応する前記第2クロックの最初の複数サイクルに対応する前記読み出しデータは前記バッファ回路に転送されず、前記複数サイクル後の前記第2クロックに対応する前記読み出しデータが前記バッファ回路に転送される、請求項4記載のメモリシステム。
  6. 前記第2クロックの前記最初の複数サイクルは、前記第1物理アドレスと前記第2物理アドレスとの相違に対応する、請求項5のメモリシステム。
  7. 前記半導体メモリは、前記第1クロックに基づいて前記第2クロックを生成する、請求項5または6記載のメモリシステム。
  8. データを保持可能な半導体メモリと、
    前記半導体メモリから前記データを読み出し可能なコントローラと
    を具備し、前記コントローラは、ホスト機器から受信した第1論理アドレスに従って前記半導体メモリに第1データを書き込んだ直後に、前記第1論理アドレスに従った読み出し命令を前記半導体メモリに発行した際、前記半導体メモリからは前記第1データと異なる第2データが読み出される、メモリシステム。
  9. 前記第2データは、第3データと、前記第3データに後続する第1データとを含む、請求項8記載のメモリシステム。
  10. 前記コントローラは、前記第3データを破棄する、請求項9記載のメモリシステム。
  11. 前記半導体メモリは、ロウ及びカラムに関連付けられた複数のメモリセルを含み、
    前記第1論理アドレスに従った書き込み動作は、第1カラムを基準に実行され、
    前記第1論理アドレスに従った読み出し動作は、前記第1カラムと異なる第2カラムを基準に実行される、請求項9乃至10いずれか1項記載のメモリシステム。
  12. 前記半導体メモリは、複数のメモリセルを含むメモリセルアレイを備え、前記メモリセルアレイからデータはページ単位で読み出され、
    前記コントローラは、前記第1論理アドレスと第1物理アドレスとの関係を保持するテーブルを備え、
    前記書き込み動作時には、前記受信した第1論理アドレスを前記テーブルに基づいて前記第1物理アドレスに変換し、該第1物理アドレスに対応する領域にデータを書き込むよう、前記半導体メモリに命令し、
    前記読み出し動作時には、前記受信した第1論理アドレスを前記テーブルに基づいて前記第1物理アドレスに変換し、更にカラムアドレスが前記ページにおける先頭カラム側にシフトするように、前記第1物理アドレスを第2物理アドレスに変換し、該第2物理アドレスに対応する領域からデータを読み出すよう、前記半導体メモリに命令する、請求項11記載のメモリシステム。
  13. 半導体メモリは複数のチップを含み、同一のバスにより前記コントローラに接続される、請求項1乃至12いずれか1項記載のメモリシステム。
JP2017059222A 2017-03-24 2017-03-24 メモリシステム及びデータの読み出し方法 Active JP6779821B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017059222A JP6779821B2 (ja) 2017-03-24 2017-03-24 メモリシステム及びデータの読み出し方法
US15/693,410 US10236044B2 (en) 2017-03-24 2017-08-31 Memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017059222A JP6779821B2 (ja) 2017-03-24 2017-03-24 メモリシステム及びデータの読み出し方法

Publications (2)

Publication Number Publication Date
JP2018163440A true JP2018163440A (ja) 2018-10-18
JP6779821B2 JP6779821B2 (ja) 2020-11-04

Family

ID=63582837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017059222A Active JP6779821B2 (ja) 2017-03-24 2017-03-24 メモリシステム及びデータの読み出し方法

Country Status (2)

Country Link
US (1) US10236044B2 (ja)
JP (1) JP6779821B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021049033A1 (ja) * 2019-09-13 2021-03-18
JP7576449B2 (ja) 2020-12-14 2024-10-31 キオクシア株式会社 メモリシステム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10740188B2 (en) * 2018-12-07 2020-08-11 Winbond Electronics Corp. Volatile memory device and method for efficient bulk data movement, backup operation in the volatile memory device
JP2020123412A (ja) * 2019-01-30 2020-08-13 キオクシア株式会社 半導体記憶装置
KR20210062499A (ko) * 2019-11-21 2021-05-31 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
US11487446B2 (en) * 2020-12-03 2022-11-01 Western Digital Technologies, Inc. Overhead reduction in data transfer protocol for NAND memory
US11586384B2 (en) 2021-02-16 2023-02-21 Western Digital Technologies, Inc. Overhead reduction in data transfer protocol for data storage devices
CN115843379A (zh) 2021-07-21 2023-03-24 美光科技公司 用来改进顺序存储器命令性能的存储器命令聚合
CN113805817B (zh) * 2021-10-09 2024-09-24 深圳百瑞互联技术有限公司 增强flash存储器随机读写能力的方法、装置、系统及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0498342A (ja) * 1990-08-09 1992-03-31 Mitsubishi Electric Corp 半導体記憶装置
JP2001357689A (ja) * 2001-06-21 2001-12-26 Toshiba Corp 不揮発性半導体記憶装置
JP2008299930A (ja) * 2007-05-30 2008-12-11 Mega Chips Corp 半導体記憶装置
JP2010522374A (ja) * 2007-03-20 2010-07-01 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド 非eccコンポーネントにおけるeccの実装
US20140032815A1 (en) * 2012-07-26 2014-01-30 Micron Technology, Inc. Methods and apparatuses for calibrating data sampling points

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7190617B1 (en) * 1989-04-13 2007-03-13 Sandisk Corporation Flash EEprom system
US6347051B2 (en) * 1991-11-26 2002-02-12 Hitachi, Ltd. Storage device employing a flash memory
US5943283A (en) * 1997-12-05 1999-08-24 Invox Technology Address scrambling in a semiconductor memory
US7259989B2 (en) * 2004-09-03 2007-08-21 Matsushita Electric Industrial Co., Ltd. Non-volatile memory device
JP2007133683A (ja) * 2005-11-10 2007-05-31 Sony Corp メモリシステム
US7793036B2 (en) * 2007-05-30 2010-09-07 Intel Corporation Method and arrangements for utilizing NAND memory
US7916536B2 (en) * 2007-07-26 2011-03-29 Micron Technology, Inc. Programming based on controller performance requirements
JP5365336B2 (ja) * 2009-05-01 2013-12-11 ソニー株式会社 メモリ制御装置およびメモリ制御方法
KR20110031522A (ko) * 2009-09-21 2011-03-29 삼성전자주식회사 메모리 장치, 이를 구비하는 메모리 시스템 및 이의 제어 방법
JP4703753B2 (ja) * 2009-09-30 2011-06-15 株式会社東芝 情報処理装置、半導体記憶装置、及びプログラム
JP2012234482A (ja) * 2011-05-09 2012-11-29 Canon Inc 記憶制御装置及びその制御方法、並びにプログラム
JP5853219B2 (ja) * 2011-07-01 2016-02-09 パナソニックIpマネジメント株式会社 メモリアクセス制御装置、及び製造方法
US8949517B2 (en) * 2011-10-05 2015-02-03 Lsi Corporation Self-journaling and hierarchical consistency for non-volatile storage
US9064590B2 (en) * 2012-03-02 2015-06-23 Kabushiki Kaisha Toshiba Driving method of semiconductor storage device and semiconductor storage device
US8943283B2 (en) * 2012-08-31 2015-01-27 International Business Machines Corporation Converting a first address mapping function for mapping addresses to storage locations to a second address mapping function
US8996934B2 (en) * 2012-09-29 2015-03-31 Intel Corporation Transaction-level testing of memory I/O and memory device
WO2015059811A1 (ja) * 2013-10-25 2015-04-30 株式会社日立製作所 半導体装置
US9385054B2 (en) * 2013-11-08 2016-07-05 Semiconductor Energy Laboratory Co., Ltd. Data processing device and manufacturing method thereof
KR102067014B1 (ko) * 2014-01-06 2020-02-11 삼성전자주식회사 어드레스 리매핑이 가능한 메모리 시스템
JP5751354B1 (ja) * 2014-01-28 2015-07-22 日本電気株式会社 メモリ制御装置、情報処理装置、メモリ制御方法、および、コンピュータ・プログラム
JP2015184856A (ja) * 2014-03-24 2015-10-22 ソニー株式会社 メモリコントローラ、記憶装置、情報処理システム、および、それらにおける制御方法。
US10127964B2 (en) * 2014-07-03 2018-11-13 Yale University Circuitry for ferroelectric FET-based dynamic random access memory and non-volatile memory
US9812200B2 (en) 2014-07-08 2017-11-07 Adesto Technologies Corporation Concurrent read and write operations in a serial flash device
US9966146B2 (en) * 2014-08-13 2018-05-08 Toshiba Memory Corporation Memory system and method of controlling non-volatile memory
US9431121B2 (en) * 2014-10-24 2016-08-30 Micron Technology, Inc. Read voltage adjustment
US9293224B1 (en) 2014-12-15 2016-03-22 Intel Corporation Double data rate in parallel testing
US10388369B2 (en) * 2015-04-28 2019-08-20 Hitachi, Ltd. Nonvolatile memory control method, control device, and semiconductor storage device
US10255191B2 (en) * 2015-08-13 2019-04-09 Advanced Micro Devices, Inc. Logical memory address regions
KR20170033643A (ko) * 2015-09-17 2017-03-27 에스케이하이닉스 주식회사 반도체 시스템 및 그의 동작 방법
US11308053B2 (en) * 2015-10-27 2022-04-19 Teradata Us, Inc. Buffered data-loading in column-partitioned database tables
TWI601059B (zh) * 2015-11-19 2017-10-01 慧榮科技股份有限公司 資料儲存裝置與資料儲存方法
KR20170075359A (ko) * 2015-12-23 2017-07-03 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 콘트롤러의 동작 방법
US10229051B2 (en) * 2015-12-30 2019-03-12 Samsung Electronics Co., Ltd. Storage device including nonvolatile memory device and controller, operating method of storage device, and method for accessing storage device
US10929026B2 (en) * 2016-02-23 2021-02-23 Samsung Electronics Co., Ltd. Multi-cell structure for non-volatile resistive memory
US20170286311A1 (en) * 2016-04-01 2017-10-05 Dale J. Juenemann Repetitive address indirection in a memory
US9842059B2 (en) * 2016-04-14 2017-12-12 Western Digital Technologies, Inc. Wear leveling in storage devices
US10090044B2 (en) * 2016-07-21 2018-10-02 Sandisk Technologies Llc System and method for burst programming directly to MLC memory
US10747678B2 (en) * 2016-10-27 2020-08-18 Seagate Technology Llc Storage tier with compressed forward map
US10649665B2 (en) * 2016-11-08 2020-05-12 Micron Technology, Inc. Data relocation in hybrid memory
US10430085B2 (en) * 2016-11-08 2019-10-01 Micron Technology, Inc. Memory operations on data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0498342A (ja) * 1990-08-09 1992-03-31 Mitsubishi Electric Corp 半導体記憶装置
JP2001357689A (ja) * 2001-06-21 2001-12-26 Toshiba Corp 不揮発性半導体記憶装置
JP2010522374A (ja) * 2007-03-20 2010-07-01 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド 非eccコンポーネントにおけるeccの実装
JP2008299930A (ja) * 2007-05-30 2008-12-11 Mega Chips Corp 半導体記憶装置
US20140032815A1 (en) * 2012-07-26 2014-01-30 Micron Technology, Inc. Methods and apparatuses for calibrating data sampling points

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021049033A1 (ja) * 2019-09-13 2021-03-18
WO2021049033A1 (ja) * 2019-09-13 2021-03-18 キオクシア株式会社 メモリシステム
TWI764251B (zh) * 2019-09-13 2022-05-11 日商鎧俠股份有限公司 記憶體系統
US11868648B2 (en) 2019-09-13 2024-01-09 Kioxia Corporation Memory system
US12135898B2 (en) 2019-09-13 2024-11-05 Kioxia Corporation Memory system
JP7576449B2 (ja) 2020-12-14 2024-10-31 キオクシア株式会社 メモリシステム

Also Published As

Publication number Publication date
JP6779821B2 (ja) 2020-11-04
US10236044B2 (en) 2019-03-19
US20180277180A1 (en) 2018-09-27

Similar Documents

Publication Publication Date Title
JP6779821B2 (ja) メモリシステム及びデータの読み出し方法
US8452916B2 (en) Solid state storage device controller with expansion mode
US12001723B2 (en) Memory device
JPWO2003085676A1 (ja) 不揮発性記憶装置
US10453542B2 (en) Memory device and method of operating the same
JP6178909B1 (ja) 不揮発性半導体記憶装置
US8279670B2 (en) Non-volatile semiconductor storage device
TWI764251B (zh) 記憶體系統
TWI748070B (zh) 解碼器和具有該解碼器的半導體裝置
US20120159284A1 (en) Semiconductor memory device capable of transferring various types of data
TW202324420A (zh) 記憶體裝置、記憶體系統及其讀取操作方法
TW202105393A (zh) 半導體裝置及連續讀出方法
US11645008B2 (en) Memory system and operating method thereof for controlling a multi-plane read operation
JP4919775B2 (ja) 不揮発性半導体記憶装置
US9396805B2 (en) Nonvolatile memory system with improved signal transmission and reception characteristics and method of operating the same
US20130024606A1 (en) Nonvolatile semiconductor memory device
US10606745B2 (en) Memory system
JP7012174B1 (ja) 半導体装置および連続読出し方法
JP6682471B2 (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20170525

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20180831

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200327

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201014

R150 Certificate of patent or registration of utility model

Ref document number: 6779821

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150