[go: up one dir, main page]

JP2007272635A - メモリシステム及びコントローラ - Google Patents

メモリシステム及びコントローラ Download PDF

Info

Publication number
JP2007272635A
JP2007272635A JP2006098377A JP2006098377A JP2007272635A JP 2007272635 A JP2007272635 A JP 2007272635A JP 2006098377 A JP2006098377 A JP 2006098377A JP 2006098377 A JP2006098377 A JP 2006098377A JP 2007272635 A JP2007272635 A JP 2007272635A
Authority
JP
Japan
Prior art keywords
mode
host device
memory
address
controller
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.)
Pending
Application number
JP2006098377A
Other languages
English (en)
Inventor
Takashi Oshima
貴志 大嶋
Makoto Moriya
誠 森屋
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
Toshiba Information Systems Japan Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Information Systems Japan Corp
Toshiba Information Systems Technology Co Ltd
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, Toshiba Information Systems Japan Corp, Toshiba Information Systems Technology Co Ltd filed Critical Toshiba Corp
Priority to JP2006098377A priority Critical patent/JP2007272635A/ja
Priority to US11/690,367 priority patent/US7793035B2/en
Publication of JP2007272635A publication Critical patent/JP2007272635A/ja
Priority to US12/851,928 priority patent/US8145831B2/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • 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/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage 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/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0401Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals in embedded memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

【課題】 外部接続ピン数を増加させることなく、不揮発性半導体メモリに直接アクセスする動作モードを使用可能なメモリシステム及びコントローラを提供する。
【解決手段】 NAND型フラッシュメモリ4と、ホスト機器2が出力したコマンド及びアドレスを受け取るホストインタフェース51と、ホストインタフェース51が受け取ったアドレスを変換し、この変換されたアドレスを用いてNAND型フラッシュメモリ4にアクセスする第1モードと、ホストインタフェース51が受け取ったアドレスを用いてホスト機器2がNAND型フラッシュメモリ4に直接アクセスする第2モードとで動作し、第1モードと第2モードとの動作モードの切り替えをコマンドに応じて制御するコントローラ3aとを備える。
【選択図】 図1

Description

本発明は不揮発性半導体メモリを搭載したメモリシステム及びそのコントローラに関する。
近年、パーソナルコンピュータ(PC)、PDA、カメラ、携帯電話等の様々な携帯用電子機器においては、リムーバブル記憶デバイスの1つであるメモリカード等のメモリシステムが多く用いられている。メモリカードの中には、コントローラを搭載せずNAND型フラッシュメモリだけを搭載したものがある。この従来のNAND型フラッシュメモリでは、通常、消去ブロックサイズが小さく、例えば16Kバイトに定められている。
ところで、現在、メモリカードに搭載されるNAND型フラッシュメモリには、大容量で安価な、消去ブロックサイズが大きいNAND型フラッシュメモリが用いられつつある。このNAND型フラッシュメモリでは、コントローラを搭載し、例えば消去ブロックサイズが256Kバイトに定められている。
また、コントローラを搭載するメモリカードの出荷テストでは、コントローラと不揮発性半導体メモリを個別にテストする必要がある。不揮発性半導体メモリを単独でテストするため、コントローラを介さずに不揮発性半導体メモリに直接アクセスするパススルーモードが知られている。パススルーモードを実現するため、外部接続ピンとしてのモード端子から入力されるモード信号に応じて第1動作モードとパススルーモードを切り替える手法が提案されている(例えば、特許文献1参照。)。
しかしながら、モード端子を設ける上記の手法では、外部接続ピン数の増加によってメモリカード全体のサイズ及び製造コスト等が増加する。更に、外部接続ピン数の増加に対応するため、メモリカードをテストするホスト機器(テスタ)側の構造を変更する必要が生じる。
特開2004−158098号公報
本発明は、外部接続ピン数を増加させることなく、不揮発性半導体メモリに直接アクセスする動作モードを使用可能なメモリシステム及びコントローラを提供する。
本発明の一態様によれば、ホスト機器に接続して使用するメモリシステムであって、不揮発性半導体メモリと、ホスト機器が出力したコマンド及びアドレスを受け取るホストインタフェースと、ホストインタフェースが受け取ったアドレスを変換し、この変換されたアドレスを用いて不揮発性半導体メモリにアクセスする第1モードと、ホストインタフェースが受け取ったアドレスを用いてホスト機器が不揮発性半導体メモリに直接アクセスする第2モードとで動作し、第1モードと第2モードとの動作モードの切り替えをコマンドに応じて制御するコントローラとを備えるメモリシステムが提供される。
本発明の他の態様によれば、ホスト機器に接続して使用するメモリシステムに搭載されるコントローラであって、ホスト機器が出力したコマンド及びアドレスを受け取るホストインタフェースと、ホストインタフェースが受け取ったアドレスを変換し、この変換されたアドレスを用いて不揮発性半導体メモリにアクセスする第1モードと、ホストインタフェースが受け取ったアドレスを用いてホスト機器が不揮発性半導体メモリに直接アクセスする第2モードとで動作し、第1モードと第2モードとの動作モードの切り替えをコマンドに応じて制御する処理部とを備えるコントローラが提供される。
本発明によれば、外部接続ピン数を増加させることなく、不揮発性半導体メモリに直接アクセスする動作モードを使用可能なメモリシステム及びコントローラを提供できる。
次に、図面を参照して、本発明の第1及び第2実施形態を説明する。以下の第1及び第2実施形態における図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。また、メモリシステムとして、ホスト機器に着脱可能なメモリカードを例に説明する。
(第1実施形態)
本発明の第1実施形態に係るメモリカード1aは、出荷テスト時において図1に示すように、テスタとしてのホスト機器2と電気的に接続される。メモリカード1aは、ホスト機器2とデータ等をやり取りするコントローラ3aと、不揮発性半導体メモリとしてのNAND型フラッシュメモリ4と、ホスト機器2及びコントローラ3aの間のインタフェース処理を行うホストインタフェース(I/F)51と、コントローラ3a及びNAND型フラッシュメモリ4との間のインタフェース処理を行うメモリインタフェース(I/F)52を備える。ホストI/F51は、ホスト機器2が出力したコマンド及びアドレスを受け取る。コントローラ3aは、ホストI/F51が受け取ったアドレスを変換し、この変換されたアドレスを用いてNAND型フラッシュメモリ4にアクセスする第1モードと、ホストI/F51が受け取ったアドレスを用いてホスト機器2がNAND型フラッシュメモリ4に直接アクセスする第2モードとで動作し、第1モードと第2モードとの動作モードの切り替えをコマンドに応じて制御する。
以下においては、第1モードから第2モードへの切り替え動作を移行動作と呼び、第2モードから第1モードへ切り替え動作を復帰動作と呼ぶ。なお、「第1モード」とは、ホスト機器2がNAND型フラッシュメモリ4に直接アクセスしない動作モードであり、実使用時と同様の動作モードを意味する。
出荷テスト時において、ホスト機器2は、コントローラ3aとNAND型フラッシュメモリ4を個別にテストする。以下の説明においては、コントローラ3aのみを対象にして実行するテストを「コントローラ単体テスト」と、NAND型フラッシュメモリ4のみを対象にして実行するテストを「NAND単体テスト」とそれぞれ呼ぶ。コントローラ単体テスト時においては、動作モードが第1モードに設定される。これに対してNAND単体テスト時においては、動作モードが第2モードに設定される。
NAND型フラッシュメモリ4は、例えば、1Gビット以上の記憶容量を有し、消去単位である消去ブロックのサイズが256Kバイトに定められ、データの書き込み及び読み出しが16Kバイト単位で行われる。NAND型フラッシュメモリ4の記憶容量が1Gビットである場合、消去ブロックの数は512個となる。なお、NAND型フラッシュメモリ4は、例えば0.09μmプロセス技術を用いて製造され、デザインルールは0.1μm未満となっている。
コントローラ3aは、処理部31a、アクセス経路設定部32a、バッファメモリ33、ROM34、及びRAM35を備える。ROM34は、処理部31aにより実行される制御プログラム(ファームウェア)等を格納する。処理部31aは、ROM34に格納された制御プログラムを実行することで各種の処理を実行する。RAM35は、処理部31aの作業領域として使用され、制御プログラムや各種のテーブルを一時的に記憶する。
処理部31aは、第1モード時において、ROM34の中に格納されている制御プログラムをRAM35上にロードして所定の処理を実行する。この結果、処理部31aは、各種のテーブルをRAM35上で作成したり、ホスト機器2から書き込みコマンド、読み出しコマンド、及び消去コマンド等を受けてNAND型フラッシュメモリ4に対するアクセスを実行したり、バッファメモリ33を通じたデータ転送処理を制御したりする。
バッファメモリ33は、第1モード時において、ホスト機器2から送られてくるデータをNAND型フラッシュメモリ4へ書き込む際に、一定量(例えば1ページ分)のデータを一時的に記憶したり、NAND型フラッシュメモリ4から読み出されたデータをホスト機器2へ送り出す際に、一定量のデータを一時的に記憶したりする。
アクセス経路設定部32aは、第2モード時において、ホスト機器2がNAND型フラッシュメモリ4に直接アクセスするアクセス経路を設定する。一例として、アクセス経路設定部32aは、例えば、バッファメモリ33及びホストI/F51の間に接続された第1スイッチSW1と、バッファメモリ33及びメモリI/F52との間に接続された第2スイッチSW2を備える。第1及び第2スイッチSW1,SW2は、処理部31aからの切り替え制御信号に応じて、ホストI/F51、バッファメモリ33、及びメモリI/F52の接続関係を切り替える。この結果、第2モード時においては、書き込みデータ及び読み出しデータ等がバッファメモリ33を迂回し、且つホスト機器2が発行するコマンド等をNAND型フラッシュメモリ4に直接伝達できる。
このように、移行動作と復帰動作をコマンドに応じて制御する構成としているので、外部接続ピン数を増加させることなく第2モードを実現できる。
メモリカード1aの外部接続ピンの配置例を図2に示す。図2においては、メモリカード1aのピン形成面から見た様子を示している。メモリカード1aは、第1〜第18ピンP1〜P18の合計18個の外部接続ピンを有している。第1〜第18ピンP1〜P18の各ピンと各ピンに割り当てられる信号例を図3に示す。なお、図3中の属性“タイプ”において、記号“S”は電源電圧を示し、記号“I”はメモリカード1aへの入力であることを示し、記号“O”はメモリカード1aからの出力であることを示し、記号“I/O”はメモリカード1aに対する入出力であることを示す。また、ピン名(信号名)の頭に付した記号“−”は、ロウ・トゥルー信号であること、すなわち“L”レベルのとき活性化を指示する信号であることを示す。
第1及び第9ピンP1,P9は接地電圧GNDに、第18ピンP18は電源電圧Vccにそれぞれ割り当てられている。
第2ピンP2は、メモリカード1aの内部動作状態をホスト機器2に知らせるためのレディ・ビジー(R/−B)信号に割り当てられている。書き込み、読み出し、及び消去時等、内部にて動作実行中は第2ピンP2からビジー信号が出力され、動作が完了するとレディ信号が出力される。
第3ピンP3はデータを出力させる読み出しイネーブル(−RE)信号に、第4ピンP4はメモリカード1aを動作可能状態にするカードイネーブル(−CE)信号にそれぞれ割り当てられている。
第5ピンP5はコマンドの取り込みを制御するためのコマンドラッチイネーブル(CLE)信号に、第6ピンP6はアドレスの取り込みを制御するためのアドレスラッチイネーブル(ALE)信号にそれぞれ割り当てられている。
第7ピンP7はデータをメモリカード1aに書き込むための書き込みイネーブル信号(−WE)信号に、第8ピンP8は書き込み及び消去を強制的に禁止させるための書き込みプロテクト(−WP)信号にそれぞれ割り当てられている。
第10〜第17ピンP10〜P17は、コマンド、アドレス、及びデータの各ビットD0〜D7にそれぞれ割り当てられている。
一方、NAND型フラッシュメモリ4及びメモリI/F52は、図3に示したホストI/F51が有するピンと同様のピン構成を有している。具体的にはNAND型フラッシュメモリ4及びメモリI/F52は、コマンド、アドレス、及びデータが入出力される入出力(I/O)ピン1〜8と、レディ・ビジー信号を出力するR/−Bピンと、読み出しイネーブル信号が入力される−REピンと、チップイネーブル信号が入力される−CEピンと、コマンドラッチイネーブル信号が入力されるCLEピンと、アドレスラッチイネーブル信号が入力されるALEピンと、書き込みイネーブル信号が入力される−WEピンと、書き込みプロテクト信号が入力される−WPピンとを備える。
このように、メモリカード1aは、NAND型フラッシュメモリ4のピン構成に対応したピン構成を有しており、ホスト機器2がNAND型フラッシュメモリ4に対するコマンドシーケンスによりメモリカード1aにアクセスを行うことが可能となっている。ここで「コマンドシーケンス」とは、1つのコマンドとアドレス等との組み合わせ、複数のコマンドの組み合わせ、あるいは、コマンド、アドレス、データをいずれかもしくはすべてを1つないしは複数組み合わせたものを意味する。
上述したように、コントローラ3aは、移行動作と復帰動作をコマンドに応じて制御するが、コマンドによって移行動作及び復帰動作を制御する場合、コントローラ3aが書き込み時や読み出し時であると認識して誤動作する恐れがある。また、復帰動作を指示するコマンド(例えば“FFh”コマンド(h;16進を示す))と同一のアドレス又はデータ等が入力された場合、コントローラ3aは意図しない復帰動作を実行してしまう。
そこで、コマンドシーケンスにより移行動作及び復帰動作を制御することで、コントローラ3aの誤動作を回避できる。具体的には、NAND単体テストを実行する場合、ホスト機器2は、メモリカード1aの電源投入後、移行動作を指示するコマンドシーケンスを発行する。移行動作を指示するコマンドシーケンスによって動作モードが第2モードに設定された場合、コントローラ3aは、復帰動作を指示するコマンドシーケンスが発行されるまで第2モードを維持する。この結果、コントローラ3aが第2モード中に意図しない復帰動作を実行する不具合を回避できる。
更に、第1モード時においてホスト機器2は、消去ブロックサイズが16Kバイトに定められているNAND型フラッシュメモリ4を使用することを前提として、16Kバイト単位で論理アドレス及び物理アドレスの割り当てを行う。多くの場合、論理アドレス16Kバイト分に関してシーケンシャルに書き込みアクセス若しくは読み出しアクセスを行うため、該当するコマンドを発行する。なお、以下の説明において使用する用語「論理ブロックアドレス」及び「物理ブロックアドレス」は、ブロック自体の論理アドレス及び物理アドレスをそれぞれ意味する。用語「論理アドレス」及び「物理アドレス」は、主に、ブロック自体の論理アドレス及び物理アドレスをそれぞれ意味するが、ブロック単位よりも細かな分解能の単位に相当するアドレスである場合もあり得る。
また、ホスト機器2は、メモリカード1a内部の物理状態、例えば何処の物理ブロックアドレスに、何番目の論理セクタアドレスデータが含まれているか、あるいは何処のブロックが消去状態であるか等を管理し、メモリカード1a内のNAND型フラッシュメモリ4を直接制御するものとして構築されている。
消去ブロックサイズが16Kバイトに定められているNAND型フラッシュメモリ4を使用することを想定してホスト機器2が動作する場合、NAND型フラッシュメモリ4の実際の消去ブロックサイズが256Kバイトであるため、メモリカード1aは正常に応答できずに誤動作することとなる。
メモリカード1aの誤動作を回避するため、コントローラ3aは、第1モード時において、ホスト機器2がNAND型フラッシュメモリ4の消去ブロックサイズよりも小さい消去ブロックサイズを想定して発行するコマンドシーケンスを処理し、NAND型フラッシュメモリ4に対する書き込み、読み出し、及び消去の動作を制御する。
図4を用いて、ホスト機器2が想定しているNAND型フラッシュメモリと、実際に使用するNAND型フラッシュメモリ(メモリカード1a内のNAND型フラッシュメモリ4)とのデータ配置の差異を説明する。
ホスト機器2が想定しているNAND型フラッシュメモリでは、各ページが、512バイト分のデータ記憶部と16バイト分の冗長部とからなる528バイトの記憶容量を有しており、32ページ分が1つの消去単位(16Kバイト+0.5Kバイト)となる。以下では、説明の便宜上、このようなNAND型フラッシュメモリを搭載したメモリカードを「小ブロックカード」と称する場合がある。
一方、実際に使用するNAND型フラッシュメモリ4では、各ページは、例えば512バイト分のデータ記憶部が4つと、10バイト分の冗長部が4つと、24バイト分の管理データ記憶部とからなる2112バイトの記憶容量を有しており、128ページ分が1つの消去単位(256Kバイト+8Kバイト)となる。以下では、説明の便宜上、このようなNAND型フラッシュメモリ4を搭載したメモリカード1aを「大ブロックカード」と称する場合がある。一例として、小ブロックカードの消去単位は16Kバイトであり、大ブロックカードの消去単位は256Kバイトである。
また、ホスト機器2が想定しているNAND型フラッシュメモリ及び実際に使用するNAND型フラッシュメモリ4は、NAND型フラッシュメモリへのデータ入出力を行うためのページバッファ41a,41bをそれぞれ備えている。ホスト機器2が想定しているNAND型フラッシュメモリに備えられるページバッファ41aの記憶容量は、528バイト(512バイト+16バイト)である。一方、実際に使用するNAND型フラッシュメモリ4に備えられるページバッファ41bの記憶容量は、2112バイト(2048バイト+64バイト)である。データ書き込み等の際には、NAND型フラッシュメモリに対するデータ入出力処理は、各ページバッファ41a,41bの記憶容量に相当する1ページ分の単位で実行される。
上述したように、ホスト機器2が想定しているNAND型フラッシュメモリと実際に使用するNAND型フラッシュメモリ4とは異なるため、コントローラ3aは、ホスト機器2がNAND型フラッシュメモリ4を取り扱い可能とするための各種処理を実行する。
ホスト機器2及びメモリカード1aの各機能構成例を図5に示す。ホスト機器2は、ホスト機器2側のROM(図示省略)等に格納されたプログラムをCPU(図示省略)等にて実行することにより、図5に示すアプリケーション処理部21、ファイルシステム部22、ドライバ部23、及び物理アクセス部24の各機能を実現する。
一方、メモリカード1aは、例えばROM34に格納された制御プログラムを処理部31aにて実行することにより、図5に示す第1物理アクセス部11、物理/論理変換部12、論理/物理変換部13、及び第2物理アクセス部14の各機能を実現する。
ホスト機器2側のアプリケーション処理部21がファイルの書き込みをファイルシステム部22に要求すると、ファイルシステム部22は、小ブロックカードの論理ブロックアドレスに基づきシーケンシャルなセクタ書き込みをドライバ部23に指示する。これを受けて、ドライバ部23は、小ブロックカードの論理ブロックアドレスに基づく16Kバイトブロック毎のシーケンシャルな書き込みを実現するに当たり、論理/物理ブロック変換を行い、物理アクセス部24を通じて、小ブロックカードの物理ブロックアドレスによるランダムな書き込みコマンドを大ブロックカードに対して発行し、データ転送を行う。
書き込みアクセスにおいては、小ブロックカードの場合も大ブロックカードの場合も、プロトコル上、(1)コマンド、(2)ページアドレス(ロウアドレス)、(3)カラムアドレス、(4)データ、(5)プログラム確認コマンド、といった順序で情報の授受が行われる。
メモリカード1a側の第1物理アクセス部11は、ホスト機器2から小ブロックカードの物理ブロックアドレスによる書き込みコマンドを受けると、物理ブロックアドレスやデータのほか、これに付随する付随データに含まれている論理ブロックアドレスを取得する。
物理/論理変換部12は、データ読み出し等の際に小ブロックカードの物理ブロックアドレス(16Kバイトブロック分に対応)から小ブロックカードの論理ブロックアドレス(16Kバイトブロック分に対応)への変換処理を行うための第1テーブルを作成する。第1テーブルは、RAM35の第1テーブル格納領域351に保持される。物理/論理変換部12は、第1物理アクセス部11が書き込みコマンドを受けて小ブロックカードの論理ブロックアドレスを取得したときにはこれを第1テーブルに反映させる。物理ブロックアドレスに関しても、第1テーブルに反映させる。
論理/物理変換部13は、データ読み出し等の際に小ブロックカードの論理ブロックアドレス(シーケンシャルな16Kバイトブロック×16個分に対応)から大ブロックカードの物理ブロックアドレス(256Kバイト物理ブロック分に対応)への変換処理を行うための第2テーブルを作成する。第2テーブルは、RAM35の第2テーブル格納領域352に保持される。物理/論理変換部12は、第1物理アクセス部11が書き込みコマンドを受けて小ブロックカードの論理ブロックアドレスを取得したときにはこれを第2テーブルに反映させる。
第2物理アクセス部14は、第1物理アクセス部11が書き込みコマンドを受けて取得した小ブロックカードの論理ブロックアドレスに基づき、NAND型フラッシュメモリ4内部のデータ配置を決定し、256Kバイト物理ブロック内において2Kバイト(1ページ)単位でシーケンシャルに16Kバイト分のデータを書き込む。また、第2物理アクセス部14は、取得した小ブロックカードの論理ブロックアドレスや物理ブロックアドレスをNAND型フラッシュメモリ4内部における管理データ領域内の所定の領域に格納する。
このように、ホスト機器2は小ブロックカードの物理ブロックアドレスに基づくコマンドを発行するので、メモリカード1a側では、小ブロックカードの物理ブロックアドレスに対応するデータがどの256Kバイト物理ブロックの中に存在するのかが分かるように管理する。具体的には、16Kバイトブロック毎に小ブロックカードの論理/物理ブロックアドレスの対応関係を管理すると共に、小ブロックカードの連続した256Kバイトブロック分の論理ブロックアドレスに対応するデータがメモリカード1aのNAND型フラッシュメモリ4のどの256Kバイト物理ブロックに格納されているかが分かるように管理する。
次に図6を参照して、ホスト機器2からメモリカード1aに送られるコマンドのフォーマット例を説明する。ホスト機器2側から送られるコマンドのパケットは、図6(a)に示すように、コマンド種別情報(例えば書き込みコマンド)と、アドレス(物理ブロックアドレス)と、データ(コンテンツ等の実データ及び付随データ(512バイト+16バイト))といった各種情報を含んでいる。
このようなフォーマットのパケットにおいては、図6(b)に示すように、付随データ16バイト中の所定の位置に小ブロックカードの論理ブロックアドレス(アクセス対象となる16Kバイトブロックに対応する論理アドレス)が配置されている。メモリカード1aは、コマンド種別情報、物理ブロックアドレス、及びデータを取得するほか、特に論理ブロックアドレスを取得する。なお、論理ブロックアドレスは、読み出しコマンドの場合には付加されない。
次に図7を参照して、第1モード時において、ホスト機器2側が想定しているブロック書き込み操作と、メモリカード1aが実際に行う書き込み処理とを対比して説明する。
ホスト機器2側では、図7(a)に示すように、小ブロックカードの論理アドレスに基づく16Kバイトブロック単位のシーケンシャルな書き込み操作の発生時に、小ブロックカードの物理ブロックアドレスによる16Kバイトブロック単位のランダムな書き込み操作を行う。
一方、メモリカード1a側では、図7(b)に示すように、ホスト機器2側から書き込みコマンドを受けた場合、小ブロックカードの論理ブロックアドレスに基づく16バイトブロック単位のデータをNAND型フラッシュメモリ4内にシーケンシャルに書き込む。
前述のように、ホスト機器2は、小ブロックの物理アドレスによる16バイト単位のランダムな書き込み操作を行う。このようなランダムな書き込み操作では、一般に、大ブロック(256Kバイト)の一部のみを書き換えるための処理が多発する。NAND型フラッシュメモリ4ではブロック単位でしか消去を行えないため、ブロックの一部のみを書き換える場合は、書き換える新データを消去済みの新ブロックに書き込み、新データに書き換えられる旧データを含む旧ブロックから、書き換えられない残りのデータを新ブロックにコピーする必要がある。
このように、ブロックの一部のみを書き換える処理は、書き換えられないデータのコピー動作(巻き添えデータコピー)を伴うため、ブロックの一部のみを書き換える処理が多発すると、オーバーヘッドが非常に増大することになる。そこで、第1実施形態では、ホスト機器2側から得られる論理アドレスの順序に従って、メモリカード1a側で物理アドレスを再度割り当てることにより、ブロックの一部のみの書き込みの発生を低減し、オーバーヘッドの増大を抑制している。
次に図8を参照して、NAND型フラッシュメモリ4のブロックフォーマット(消去単位である256Kバイト物理ブロック分)について説明する。
NAND型フラッシュメモリ4では、消去単位である256Kバイト物理ブロックの中に、ホスト機器2側が管理する単位である16Kバイトに相当するデータを書き込むためのブロック(以下、「ホスト管理ブロック」という。)が16個分含まれている。データ書き込みの際には、小ブロックカードにおける論理ブロックアドレスの順に個々のデータが配置される。
各ホスト管理ブロックは、8個のページで構成される。各ページは、512バイトデータ領域を4個分含むと共に、各データ領域に対応する10バイト誤り訂正符号(ECC)領域を含んでいる。また、ページ中の最後の512バイトデータ領域(4番目の512バイトデータ領域)の後には、24バイト管理データ領域も設けられる。このため、ページ中の最後の10バイトECC領域は、4番目の512バイトデータ領域と24バイト管理データ領域の両方に対応する構成となっている。
消去単位である256Kバイトの物理ブロックに含まれる128個の24バイト管理データ領域のうち、例えば最後の24バイト管理データ領域には、ホスト機器2側から送られてくるコマンドから取得された物理ブロックアドレスに相当するアドレス情報、及び論理ブロックアドレスに相当するアドレス情報がまとめて格納されるようになっている。これらのアドレス情報は、上述した第1及び第2テーブルを作成する際に使用される。
次に図9を参照して、第1モード時において、メモリカード1aに対してホスト機器2が書き込みを行う際に、メモリカード1aの入出力(I/O)ピン(第10〜第17ピンP10〜P17)とレディ/ビジー(R/−B)ピン(第2ピンP2)に入出力される信号例を説明する。
ホスト機器2は、メモリカード1aが16Kバイトの消去ブロックサイズを有する不揮発性メモリであると仮定してメモリカード1aを制御しているため、メモリカード1aに対する書き込みの際には、ホスト機器2は、シリアルデータインプットコマンド“80h”をI/Oピン(第10ピンP10〜ピン17)へ入力する。次に、ホスト機器2は、カラムアドレス“C/A”及びページアドレス“P/A”をI/Oピンへ入力する。なお、ここでカラムアドレス“C/A”及びページアドレス“P/A”は、ホスト機器2がメモリカード1aに対して想定している仮想物理アドレス空間におけるカラムアドレス及びページアドレスである。
更に、ホスト機器2は、書き込みデータを、I/Oピン(第10ピンP10〜ピン17)の個々に対し、528回入力する。具体的には、ホスト機器2は書き込みイネーブルピンへの入力信号を528回クロッキングしながら、それぞれのI/Oピンに対し528ビット(すべてのI/Oピン合計で528バイト)のデータを順次シフトインする。データのシフトインが完了すると、ホスト機器2は、プログラムコマンド“10h”をI/Oピンへ入力する。これに応答してメモリカード1aは、そのR/−Bピンに“L”の信号を出力し、メモリカード1aがビジー状態であることを示す。その後、所定期間後にR/−Bピンに“H”レベルの信号を出力することでメモリカード1aがレディ状態になったことを示す。
しかしながら、図9におけるR/−Bピンの状態は、あくまでもホスト機器2に対してメモリカード1aがどのような状態かを示す。つまり、図9において、プログラムコマンド“10h”の入力に応答して、R/−Bピンがビジー状態(つまり“L”を出力)を示したとしても、内部でNAND型フラッシュメモリ4に対する書き込み動作(ページバッファからメモリセルアレイへのデータ転送)が実際に行われているとは限らない。また、R/−Bピンがレディ状態に復帰したとしても、内部でNAND型フラッシュメモリ4に対する書き込み動作が実際に完了しているとは限らない。
一方、第1モード時において、メモリカード1a内のNAND型フラッシュメモリ4に対し、メモリカード1a内のコントローラ3aが書き込みを行う際に、NAND型フラッシュメモリ4のI/Oピン1〜8とR/−Bピンに入出力される信号例を図10に示す。
コントローラ3aは、NAND型フラッシュメモリ4が256Kバイトの消去ブロックサイズを有する不揮発性メモリであると認識している。例えば、NAND型フラッシュメモリ4に対する書き込みの際には、コントローラ3aは、シリアルデータインプットコマンド“80h”をI/Oピン1〜8へ入力する。次に、コントローラ3aは、カラムアドレス“C/A”及びページアドレス“P/A”を、I/Oピン1〜8へ入力する。なお、ここでカラムアドレス“C/A”及びページアドレス“P/A”は、NAND型フラッシュメモリ4の実物理アドレス空間におけるカラムアドレス及びページアドレスである。したがって、図9におけるカラムアドレス“C/A”及びページアドレス“P/A”とは必ずしも一致していない。
更に、コントローラ3aは、書き込みデータを、I/Oピン1〜8の個々に対し、2112回入力する。具体的には、コントローラ3aは、書き込みイネーブルピンへの入力信号を2112回クロッキングしながら、それぞれのI/Oピンに対し2112ビット(すべてのI/Oピン合計で2112バイト)のデータを順次シフトインする。データのシフトインが完了すると、コントローラ3aは、プログラムコマンド“10h”をI/Oピン1〜8へ入力する。これに応答してメモリカード1aは、そのR/−Bピンに“L”の信号を出力し、メモリカード1aがビジー状態であることを示す。その後、所定期間後にR/−Bピンに“H”レベルの信号を出力することでメモリカード1aがレディ状態になったことを示す。図10におけるR/−Bピンの状態は、コントローラ3aに対してNAND型フラッシュメモリ4が実際にどのような状態かを示す。
なお、図9及び図10においては、カラムアドレス“C/A”及びページアドレス“P/A”の入力をそれぞれ1つのサイクルで示しているが、メモリカード1aの容量又はNAND型フラッシュメモリ4の容量に応じて、適宜2サイクル以上になる場合もある。
また、図9及び図10においては第1モード時における書き込み動作を説明したが、第2モード時においてはホスト機器2がメモリカード1aのNAND型フラッシュメモリ4に対して図10に示す書き込み動作を直接実行することとなる。
以下に、図11に示すフローチャートを参照して、第1実施形態に係るメモリカードテスト方法について説明する。
先ずステップS101にて、NAND単体テストを実行するか否か判定される。NAND単体テストを実行する場合、ステップS102に進む。一方、NAND単体テストを実行しない場合、ステップS105に進む。
ステップS102にて、ホスト機器2は、メモリカード1aに対して移行動作を指示するコマンドシーケンス、例えば“XX−YY−ZZ”等のコマンドシーケンスを出力する。処理部31aは、移行動作を指示するコマンドシーケンスに応じて動作モードを第2モードに設定する。具体的には処理部31aが、アクセス経路設定部32aの第1及び第2スイッチSW1,SW2に切り替え制御信号を供給することで、アクセス経路が設定される。動作モードが第2モードに設定されると、ステップS103に進む。
ステップS103にて、ホスト機器2はNAND単体テストを実行する。例えば、書き込みデータと読み出しデータの整合性を確認することで、NAND型フラッシュメモリ4に不具合箇所が含まれているか判定される。この結果、NAND型フラッシュメモリ4において、誤ったデータが保持されるビット(フェイルビット)、及び書き込みも読み出しもできないブロック(バッドブロック)等の有無が判定される。NAND単体テストが完了すると、ステップS104に進む。
ステップS104にて、ホスト機器2は、メモリカード1aに対して復帰動作を指示するコマンドシーケンスを出力する。復帰動作を指示するコマンドシーケンスがメモリカード1aに伝達されると、ステップS105に進む。
ステップS105にて、処理部31aは、動作モードを第1モードに設定する。
ステップS106にて、コントローラ単体テストを実行するか否か判定される。コントローラ単体テストを実行する場合、ステップS107に進む。コントローラ単体テストを実行しない場合、ステップS105に戻る。
ステップS107にて、ホスト機器2はコントローラ単体テストを実行する。一例として、ホスト機器2がコントローラ3aに任意のコマンド等を入力し、コントローラ3aが正常に応答するか等のテストが実行される。コントローラ単体テストが完了すると、ステップS108に進む。
ステップS108にて、NAND単体テストを実行するか否か判定される。NAND単体テストを実行する場合、ステップS102に戻る。NAND単体テストを実行しない場合、テスト動作が終了する。
以上詳細に説明したように、第1実施形態によれば、コマンドにより移行動作及び復帰動作を制御するため、ピン数を増加させることなく第2モードを実現できる。更に、特定のコマンドシーケンスによって第2モードを制御することで、書き込み時や読み出し時であるとして誤動作することを回避できる。また、ホスト機器2が、第2モード時において第1モード時よりも大きい消去ブロックサイズを取り扱うため、NAND型フラッシュメモリ4の単体テストに要する時間を短縮できる。
(第2実施形態)
本発明の第2実施形態に係るメモリカード1bは、図12に示すように、アクセス経路設定部32bが、電源の投入を検知して、ホスト機器2と不揮発性半導体メモリの間にアクセス経路を自動的に設定する構成である点で、図1に示すメモリカード1aと異なっている。その他の構成については図1に示すメモリカード1aの構成と同様である。
上述した第1実施形態に係るメモリカード1aでは、処理部31a等の起動中に不具合が発生した場合、第2モードに移行できず、解析(テスト)を進めることができない。このため、電源投入時は自動的に第2モードに設定することでNAND単体テストを確実に実行可能となる。
アクセス経路設定部32bは、図2及び図3に示す第1及び第9ピンP1,P9に接地電圧GNDが、第18ピンP18に電源電圧Vccがそれぞれ印加されると、例えば電源電圧Vccの立ち上がりをトリガとしてアクセス経路を設定する。
メモリカード1bの電源投入時に自動的に設定された第2モードから第1モードに復帰する際には、復帰動作を指示するコマンドシーケンスに限らず、復帰動作を指示するコマンド、例えば“FFh”コマンドを使用すれば良い。すなわち、図12に示すコントローラ3bは、コマンド及びコマンドシーケンスのいずれによっても復帰動作を実行可能である。ただし、図1に示すコントローラ3aと同様に、移行動作を指示するコマンドシーケンスによって第2モードが設定された場合、復帰動作を指示するコマンドシーケンスでなければ第1モードに復帰できないものとする。
以下に、図13に示すフローチャートを参照して、第2実施形態に係るメモリカードテスト方法を説明する。ただし、第1実施形態に係るメモリカードテスト方法と重複する処理については重複する説明を省略する。
先ずステップS201にて、メモリカード1bがホスト機器2の図示を省略するカードスロットに挿入され、ホスト機器2からメモリカード1bに電源が供給される。メモリカード1bに電源が供給されると、動作モードが第2モードに自動的に設定される。
ステップS101にて、NAND単体テストを実行するか否か判定される。NAND単体テストを実行する場合、ステップS102に進む。一方、NAND単体テストを実行しない場合、ステップS202に進む。
ステップS202においては、復帰動作を指示するコマンドがホスト機器2からメモリカード1bへ入力される。復帰動作を指示するコマンドがホスト機器2からメモリカード1bへ供給されると、ステップS105に進む。
ステップS102〜ステップS108の各処理は、図11と同様にして実行される。
このように第2実施形態によれば、電源投入直後は自動的に第2モードに設定することにより、コントローラ3bに異常があった場合でもNAND単体テストを実行可能となる。
(その他の実施形態)
上記のように、本発明は第1及び第2実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなる。
既に述べた第1実施形態においては、NAND型フラッシュメモリ4の消去単位が256Kバイトである場合を説明したが、消去単位が例えば128Kバイトとなるように構築することも実用上有効である。この場合、128Kバイトブロックの数は、1024個となる。
上述した第1及び第2実施形態においては、不揮発性半導体メモリとしてNAND型フラッシュメモリ4を用いる一例を説明したが、NOR型メモリ等の他の不揮発性半導体メモリにも適用できる。
なお、NAND型フラッシュメモリ4及びコントローラ3aは、ハイブリッド集積回路としてプリント回路基板(PCB)上に実装されていても良いし、モノリシック集積回路として同一の半導体チップ上に集積化されていても良い。
更に、NAND型フラッシュメモリ4は、1つのメモリセルに1ビットの情報を記憶する2値メモリであっても良いし、1つのメモリセルに1ビットより多い情報(例えば2ビット)を記憶する多値メモリであっても良い。
更に、上述した第1及び第2実施形態においては、ホスト機器が想定しているNAND型フラッシュメモリの消去ブロックサイズと、実際に使用するNAND型フラッシュメモリの消去ブロックサイズとが異なる場合を説明したが、これらの消去ブロックサイズは同一であっても良い。
更に、上述した第1及び第2実施形態においては、ホスト機器が物理アドレスを用いてメモリカードに対してアクセスを実行する場合を説明したが、ホスト機器は論理アドレスを用いてメモリカードに対してアクセスを実行しても良い。この場合、メモリカード内のコントローラは、第1モード時において、ホスト機器から受け取った論理アドレスをNAND型フラッシュメモリの物理アドレスに変換してNAND型フラッシュメモリに対するアクセスを実行する。
このように本発明は、ここでは記載していない様々な実施形態等を包含するということを理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲の発明特定事項によってのみ限定されるものである。
第1実施形態に係るメモリカードの構成例を示すブロック図である。 第1実施形態に係るメモリカードの外観例及びピン配置例を示す平面図である。 第1実施形態に係るメモリカードのピンアサイン例を示す図である。 第1モード時においてホスト機器が想定するNAND型フラッシュメモリと、メモリカードに実際に搭載されるNAND型フラッシュメモリのデータ配置の関係を示す模式図である。 第1実施形態に係るホスト機器及びメモリカードのそれぞれの機能構成例を示す機能ブロック図である。 図6(a)及び(b)は、第1実施形態に係るメモリカードに入力されるコマンドのフォーマット例を示す模式図である。 図7(a)は第1モード時においてホスト機器が想定するブロック書き込み動作を示す模式図であり、図7(b)は第1実施形態に係るメモリカードにおけるブロック書き込み動作を示す模式図である。 第1実施形態に係るメモリカードのブロックフォーマット例を示す模式図である。 第1実施形態に係るメモリカードに対してホスト機器が第1モード時において書き込みを行う際に、ホスト機器から出力される信号例を示すタイムチャートである。 第1実施形態に係るメモリカードに対してホスト機器が書き込みを行う際に、ホスト機器から出力される信号例を示すタイムチャートである。 第1実施形態に係るメモリカードにおけるテスト動作例を示すフローチャートである。 第2実施形態に係るメモリカードの構成例を示すブロック図である。 第2実施形態に係るメモリカードにおけるテスト動作例を示すフローチャートである。
符号の説明
1a,1b…メモリカード
2…ホスト機器
3a,3b…コントローラ
4…NAND型フラッシュメモリ(不揮発性半導体メモリ)
31a,31b…処理部
32a,32b…アクセス経路設定部
51…ホストI/F

Claims (5)

  1. ホスト機器に接続して使用するメモリシステムであって、
    不揮発性半導体メモリと、
    前記ホスト機器が出力したコマンド及びアドレスを受け取るホストインタフェースと、
    前記ホストインタフェースが受け取った前記アドレスを変換し、この変換されたアドレスを用いて前記不揮発性半導体メモリにアクセスする第1モードと、前記ホストインタフェースが受け取った前記アドレスを用いて前記ホスト機器が前記不揮発性半導体メモリに直接アクセスする第2モードとで動作し、前記第1モードと前記第2モードとの動作モードの切り替えを前記コマンドに応じて制御するコントローラ
    とを備えることを特徴とするメモリシステム。
  2. 前記ホストインタフェースが、前記ホスト機器が出力した特定のコマンドシーケンスを受け取り、前記コントローラが、前記第1モードと前記第2モードとの動作モードの切り替えを前記特定のコマンドシーケンスに応じて切り替えることを特徴とする請求項1に記載のメモリシステム。
  3. 前記コントローラは、電源投入時において、前記ホスト機器と前記不揮発性半導体メモリの間にアクセス経路を設定するアクセス経路設定部を備えることを特徴とする請求項1又は2に記載のメモリシステム。
  4. 前記コントローラは、前記第1モード時において、前記ホスト機器が前記不揮発性半導体メモリの消去ブロックサイズよりも小さい消去ブロックサイズを想定して発行するコマンドシーケンスを処理し、前記不揮発性半導体メモリに対する書き込み、読み出し、及び消去の動作を制御することを特徴とする請求項1〜3のいずれか1項に記載のメモリシステム。
  5. ホスト機器に接続して使用するメモリシステムに搭載されるコントローラであって、
    前記ホスト機器が出力したコマンド及びアドレスを受け取るホストインタフェースと、
    前記ホストインタフェースが受け取った前記アドレスを変換し、この変換されたアドレスを用いて前記不揮発性半導体メモリにアクセスする第1モードと、前記ホストインタフェースが受け取った前記アドレスを用いて前記ホスト機器が前記不揮発性半導体メモリに直接アクセスする第2モードとで動作し、前記第1モードと前記第2モードとの動作モードの切り替えを前記コマンドに応じて制御する処理部
    とを備えることを特徴とするコントローラ。













JP2006098377A 2006-03-31 2006-03-31 メモリシステム及びコントローラ Pending JP2007272635A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006098377A JP2007272635A (ja) 2006-03-31 2006-03-31 メモリシステム及びコントローラ
US11/690,367 US7793035B2 (en) 2006-03-31 2007-03-23 Memory system and controller
US12/851,928 US8145831B2 (en) 2006-03-31 2010-08-06 Memory system and controller with mode for direct access memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006098377A JP2007272635A (ja) 2006-03-31 2006-03-31 メモリシステム及びコントローラ

Publications (1)

Publication Number Publication Date
JP2007272635A true JP2007272635A (ja) 2007-10-18

Family

ID=38560837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006098377A Pending JP2007272635A (ja) 2006-03-31 2006-03-31 メモリシステム及びコントローラ

Country Status (2)

Country Link
US (2) US7793035B2 (ja)
JP (1) JP2007272635A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013125527A (ja) * 2011-12-16 2013-06-24 Toshiba Corp 半導体記憶装置、半導体記憶装置の制御方法、制御プログラム
KR101665667B1 (ko) * 2015-04-16 2016-10-11 황태래 낸드 플래시 메모리 제어장치
JP2017045498A (ja) * 2015-08-28 2017-03-02 株式会社東芝 メモリシステム
CN108572923A (zh) * 2017-03-09 2018-09-25 株式会社东芝 管理装置、信息处理装置以及管理方法
JP2019028667A (ja) * 2017-07-28 2019-02-21 富士通セミコンダクター株式会社 無線通信機能を備えた半導体記憶装置及び書き込み制御方法

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272635A (ja) * 2006-03-31 2007-10-18 Toshiba Corp メモリシステム及びコントローラ
US8364881B2 (en) * 2006-10-04 2013-01-29 Marvell World Trade Ltd. Flash memory controller and methods of programming and reading flash memory devices using the controller
US8131912B2 (en) * 2007-09-27 2012-03-06 Kabushiki Kaisha Toshiba Memory system
US8103936B2 (en) * 2007-10-17 2012-01-24 Micron Technology, Inc. System and method for data read of a synchronous serial interface NAND
US8185778B2 (en) * 2008-04-15 2012-05-22 SMART Storage Systems, Inc. Flash management using separate metadata storage
US8566505B2 (en) * 2008-04-15 2013-10-22 SMART Storage Systems, Inc. Flash management using sequential techniques
US8180954B2 (en) * 2008-04-15 2012-05-15 SMART Storage Systems, Inc. Flash management using logical page size
WO2009129338A2 (en) * 2008-04-15 2009-10-22 Adtron, Inc. Flash management using sequential techniques
US8028123B2 (en) * 2008-04-15 2011-09-27 SMART Modular Technologies (AZ) , Inc. Circular wear leveling
US20090259806A1 (en) * 2008-04-15 2009-10-15 Adtron, Inc. Flash management using bad page tracking and high defect flash memory
TWI363969B (en) * 2008-04-30 2012-05-11 Asustek Comp Inc A computer system with data accessing bridge circuit
TWI381393B (zh) * 2008-10-06 2013-01-01 Phison Electronics Corp 區塊管理與更換方法、快閃記憶體儲存系統及其控制器
US20100131808A1 (en) * 2008-11-25 2010-05-27 Bei-Chuan Chen Method For Testing Memory
TWI401691B (zh) * 2009-03-20 2013-07-11 Phison Electronics Corp 具快閃記憶體測試功能的控制器及其儲存系統與測試方法
US8301942B2 (en) 2009-04-10 2012-10-30 International Business Machines Corporation Managing possibly logically bad blocks in storage devices
US20110041005A1 (en) * 2009-08-11 2011-02-17 Selinger Robert D Controller and Method for Providing Read Status and Spare Block Management Information in a Flash Memory System
US8909851B2 (en) 2011-02-08 2014-12-09 SMART Storage Systems, Inc. Storage control system with change logging mechanism and method of operation thereof
US8935466B2 (en) 2011-03-28 2015-01-13 SMART Storage Systems, Inc. Data storage system with non-volatile memory and method of operation thereof
US9098399B2 (en) 2011-08-31 2015-08-04 SMART Storage Systems, Inc. Electronic system with storage management mechanism and method of operation thereof
US9021319B2 (en) 2011-09-02 2015-04-28 SMART Storage Systems, Inc. Non-volatile memory management system with load leveling and method of operation thereof
US9063844B2 (en) 2011-09-02 2015-06-23 SMART Storage Systems, Inc. Non-volatile memory management system with time measure mechanism and method of operation thereof
US9021231B2 (en) 2011-09-02 2015-04-28 SMART Storage Systems, Inc. Storage control system with write amplification control mechanism and method of operation thereof
US9239781B2 (en) 2012-02-07 2016-01-19 SMART Storage Systems, Inc. Storage control system with erase block mechanism and method of operation thereof
TW201337637A (zh) * 2012-03-13 2013-09-16 Sunix Co Ltd 多串口連接裝置及其連接卡
US9298252B2 (en) 2012-04-17 2016-03-29 SMART Storage Systems, Inc. Storage control system with power down mechanism and method of operation thereof
US8949689B2 (en) 2012-06-11 2015-02-03 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US9671962B2 (en) 2012-11-30 2017-06-06 Sandisk Technologies Llc Storage control system with data management mechanism of parity and method of operation thereof
US9123445B2 (en) 2013-01-22 2015-09-01 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US9214965B2 (en) 2013-02-20 2015-12-15 Sandisk Enterprise Ip Llc Method and system for improving data integrity in non-volatile storage
US9329928B2 (en) 2013-02-20 2016-05-03 Sandisk Enterprise IP LLC. Bandwidth optimization in a non-volatile memory system
US9183137B2 (en) 2013-02-27 2015-11-10 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US9470720B2 (en) 2013-03-08 2016-10-18 Sandisk Technologies Llc Test system with localized heating and method of manufacture thereof
US9043780B2 (en) 2013-03-27 2015-05-26 SMART Storage Systems, Inc. Electronic system with system modification control mechanism and method of operation thereof
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening in a storage system
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9543025B2 (en) 2013-04-11 2017-01-10 Sandisk Technologies Llc Storage control system with power-off time estimation mechanism and method of operation thereof
US10546648B2 (en) 2013-04-12 2020-01-28 Sandisk Technologies Llc Storage control system with data management mechanism and method of operation thereof
US9898056B2 (en) 2013-06-19 2018-02-20 Sandisk Technologies Llc Electronic assembly with thermal channel and method of manufacture thereof
US9313874B2 (en) 2013-06-19 2016-04-12 SMART Storage Systems, Inc. Electronic system with heat extraction and method of manufacture thereof
US9367353B1 (en) 2013-06-25 2016-06-14 Sandisk Technologies Inc. Storage control system with power throttling mechanism and method of operation thereof
US9244519B1 (en) 2013-06-25 2016-01-26 Smart Storage Systems. Inc. Storage system with data transfer rate adjustment for power throttling
US9146850B2 (en) 2013-08-01 2015-09-29 SMART Storage Systems, Inc. Data storage system with dynamic read threshold mechanism and method of operation thereof
US9431113B2 (en) 2013-08-07 2016-08-30 Sandisk Technologies Llc Data storage system with dynamic erase block grouping mechanism and method of operation thereof
US9448946B2 (en) 2013-08-07 2016-09-20 Sandisk Technologies Llc Data storage system with stale data mechanism and method of operation thereof
US9361222B2 (en) 2013-08-07 2016-06-07 SMART Storage Systems, Inc. Electronic system with storage drive life estimation mechanism and method of operation thereof
US9152555B2 (en) 2013-11-15 2015-10-06 Sandisk Enterprise IP LLC. Data management with modular erase in a data storage system
US9613715B2 (en) 2014-06-16 2017-04-04 Sandisk Technologies Llc Low-test memory stack for non-volatile storage
US8976609B1 (en) 2014-06-16 2015-03-10 Sandisk Enterprise Ip Llc Low-test memory stack for non-volatile storage
US9653184B2 (en) 2014-06-16 2017-05-16 Sandisk Technologies Llc Non-volatile memory module with physical-to-physical address remapping
US9904647B2 (en) 2014-10-03 2018-02-27 Sandisk Technologies Llc Data flow circuits for intervention in data communication
KR102369940B1 (ko) * 2015-04-27 2022-03-04 에스케이하이닉스 주식회사 저장 장치 및 이를 포함하는 메모리 시스템
KR20170086345A (ko) * 2016-01-18 2017-07-26 에스케이하이닉스 주식회사 메모리 칩 및 메모리 컨트롤러를 포함하는 메모리 시스템
US10634723B2 (en) 2017-01-03 2020-04-28 Advantest Corporation Method and system for acquisition of test data

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175891B1 (en) * 1997-04-23 2001-01-16 Micron Technology, Inc. System and method for assigning addresses to memory devices
JP2004158098A (ja) * 2002-11-06 2004-06-03 Renesas Technology Corp システム・イン・パッケージ型半導体装置
US7058868B2 (en) * 2003-08-14 2006-06-06 Broadcom Corporation Scan testing mode control of gated clock signals for memory devices
US7392442B2 (en) * 2003-03-20 2008-06-24 Qualcomm Incorporated Built-in self-test (BIST) architecture having distributed interpretation and generalized command protocol
JP4751037B2 (ja) 2004-06-22 2011-08-17 株式会社東芝 メモリカード
JP4460967B2 (ja) 2004-07-23 2010-05-12 株式会社東芝 メモリカード、不揮発性半導体メモリ、及び半導体メモリの制御方法
US20060044934A1 (en) * 2004-09-02 2006-03-02 Micron Technology, Inc. Cluster based non-volatile memory translation layer
JP4406339B2 (ja) 2004-09-21 2010-01-27 株式会社東芝 コントローラ、メモリカード及びその制御方法
US7770027B2 (en) * 2004-11-15 2010-08-03 Nintendo Co., Ltd. Semiconductor memory device
US7346742B2 (en) * 2004-11-18 2008-03-18 Lsi Logic Corporation Methods and structure for bypassing memory management mapping and translation features
US7376807B2 (en) * 2006-02-23 2008-05-20 Freescale Semiconductor, Inc. Data processing system having address translation bypass and method therefor
JP2007272635A (ja) * 2006-03-31 2007-10-18 Toshiba Corp メモリシステム及びコントローラ

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013125527A (ja) * 2011-12-16 2013-06-24 Toshiba Corp 半導体記憶装置、半導体記憶装置の制御方法、制御プログラム
US8984375B2 (en) 2011-12-16 2015-03-17 Kabushiki Kaisha Toshiba Semiconductor storage device, method for controlling the same and control program
US9239758B2 (en) 2011-12-16 2016-01-19 Kabushiki Kaisha Toshiba Semiconductor storage device, method for controlling the same and control program
KR101665667B1 (ko) * 2015-04-16 2016-10-11 황태래 낸드 플래시 메모리 제어장치
JP2017045498A (ja) * 2015-08-28 2017-03-02 株式会社東芝 メモリシステム
CN108572923A (zh) * 2017-03-09 2018-09-25 株式会社东芝 管理装置、信息处理装置以及管理方法
JP2018151687A (ja) * 2017-03-09 2018-09-27 株式会社東芝 管理装置、情報処理装置および管理方法
JP2019028667A (ja) * 2017-07-28 2019-02-21 富士通セミコンダクター株式会社 無線通信機能を備えた半導体記憶装置及び書き込み制御方法

Also Published As

Publication number Publication date
US7793035B2 (en) 2010-09-07
US8145831B2 (en) 2012-03-27
US20070234004A1 (en) 2007-10-04
US20100325467A1 (en) 2010-12-23

Similar Documents

Publication Publication Date Title
JP2007272635A (ja) メモリシステム及びコントローラ
JP4406339B2 (ja) コントローラ、メモリカード及びその制御方法
JP3892851B2 (ja) メモリカード及び半導体装置
US9245634B2 (en) Initialization of flash storage via an embedded controller
US8131912B2 (en) Memory system
US7814264B2 (en) Memory card, semiconductor device, and method of controlling semiconductor memory
JP4828816B2 (ja) メモリカード、半導体装置、及びメモリカードの制御方法
US8386694B2 (en) Memory device, its access method, and memory system
JP4460967B2 (ja) メモリカード、不揮発性半導体メモリ、及び半導体メモリの制御方法
JPWO2005083573A1 (ja) 半導体メモリ装置
JP4256307B2 (ja) メモリカード
JP4751037B2 (ja) メモリカード
US7644247B2 (en) System controller for flash memory
JP4843222B2 (ja) 半導体記憶装置の制御方法、メモリカード、及びホスト機器
JP2007011872A (ja) メモリカードとその制御方法
JP2009099112A (ja) メモリシステム
JP4498341B2 (ja) メモリシステム