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

メモリシステム Download PDF

Info

Publication number
JP6542075B2
JP6542075B2 JP2015169392A JP2015169392A JP6542075B2 JP 6542075 B2 JP6542075 B2 JP 6542075B2 JP 2015169392 A JP2015169392 A JP 2015169392A JP 2015169392 A JP2015169392 A JP 2015169392A JP 6542075 B2 JP6542075 B2 JP 6542075B2
Authority
JP
Japan
Prior art keywords
data
memory
signal
memory system
host device
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.)
Active
Application number
JP2015169392A
Other languages
English (en)
Other versions
JP2017045498A (ja
Inventor
加田 憲一郎
憲一郎 加田
武田 慎也
慎也 武田
敏彦 北爪
敏彦 北爪
幹生 高杉
幹生 高杉
伸広 辻
伸広 辻
俊輔 小寺
俊輔 小寺
哲也 岩田
哲也 岩田
良雄 古山
良雄 古山
洋介 奈良井
洋介 奈良井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2015169392A priority Critical patent/JP6542075B2/ja
Priority to TW105103363A priority patent/TWI612534B/zh
Priority to US15/062,018 priority patent/US9959937B2/en
Publication of JP2017045498A publication Critical patent/JP2017045498A/ja
Application granted granted Critical
Publication of JP6542075B2 publication Critical patent/JP6542075B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C29/32Serial access; Scan testing
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/10Aspects relating to interfaces of memory device to external buses
    • G11C2207/107Serial-parallel conversion of data or prefetch
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/36Data generation devices, e.g. data inverters

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

実施形態は、メモリシステムに関する。
記憶デバイスとして、NAND型フラッシュメモリが広く知られている。
Toshiba Datasheet, TC58NVG0S3HTA00, 2012年8月31日 Toshiba Datasheet, TC58BVG0S3HTA00, 2012年8月31日
メモリのピン数よりも少ないピン数の端子を通じて該メモリのテストを行えるメモリシステムを提供する。
実施形態のメモリシステムは、メモリと、前記メモリのピン数よりも少ないピン数を有し、ホスト機器が接続可能な端子と、前記メモリの単体テストに使用され、前記ホスト機器が扱う信号と前記メモリが扱う信号との間の信号変換を行う回路と、前記端子を介して前記ホスト機器と接続される第1のインタフェース部と、前記メモリと接続される第2のインタフェース部と、を具備するメモリシステムにおいて、複数の動作モードとして、前記回路を使用しないで通常の動作を行う通常動作モードと、前記回路を使用して前記メモリの単体テストを行うテストモードとを有し、前記ホスト機器から前記端子の所定のピンを通じて前記第1のインタフェース部に供給されるデータのデータフォーマットは、前記第2のインタフェース部に供給される情報を含む複数のビットを有し、当該複数のビットは所定の位置に第1のビットと第2のビットとを備え、前記第1のビット及び前記第2のビットがそれぞれ予め定められた値を示すか否かに応じて、前記テストモードと前記通常動作モードとの間の遷移が行われるように構成されている。
図1は、第1実施形態に係るメモリシステムの外観図である。 図2は、第1実施形態に係るメモリシステムの断面図である。 図3は、第1実施形態に係るメモリシステムの外部端子の機能を示すダイアグラムである。 図4は、第1実施形態に係るメモリシステムの外観図である。 図5は、第1実施形態に係るメモリシステムの外部端子の機能を示すダイアグラムである。 図6は、第1実施形態に係るメモリシステムのブロック図である。 図7は、第1実施形態に係る半導体記憶装置のブロック図である。 図8は、第1実施形態に係るメモリシステムの読み出し時における各種信号のタイミングチャートである。 図9は、第1実施形態に係るメモリシステムの読み出し時における各種信号のタイミングチャートである。 図10は、第1実施形態に係るメモリシステムの読み出し時における各種信号のタイミングチャートである。 図11は、第1実施形態に係るメモリシステムの読み出し時における各種信号のタイミングチャートである。 図12は、第1実施形態に係るメモリシステムの書き込み時における各種信号のタイミングチャートである。 図13は、第1実施形態に係るメモリシステムの書き込み時における各種信号のタイミングチャートである。 図14は、第1実施形態に係るメモリシステムの書き込み時における各種信号のタイミングチャートである。 図15は、第1実施形態に係るメモリシステムの消去時における各種信号のタイミングチャートである。 図16は、第1実施形態に係るメモリシステムの消去時における各種信号のタイミングチャートである。 図17は、第1実施形態に係るメモリシステムにおいてNAND型フラッシュメモリの単体テストを行う際に使用されるテスト回路を搭載したシステム構成の例を示すブロック図である。 図18は、第1実施形態に係るメモリシステムの動作モードを説明するための概念図である。 図19は、第1実施形態に係るメモリシステムに搭載されるテスト回路を主に示す構成図である。 図20は、第1実施形態に係るメモリシステムに搭載されるテスト回路に入力される入力データフォーマット及び該テスト回路から出力される出力データフォーマットを示す模式図である。 図21は、第1実施形態に係るメモリシステムのテストモード時におけるライト動作を示すタイミングチャートである。 図22は、第1実施形態に係るメモリシステムのテストモード時におけるリード動作を示すタイミングチャートである。 図23は、第1及び第2実施形態の変形例に係るメモリシステムのブロック図である。 図24は、第1及び第2実施形態に係るメモリシステムを利用したシステムの概念図である。 図25は、第1及び第2実施形態に係るメモリシステムを利用したシステムの概念図である。
以下、図面を参照して実施形態について説明する。なお、以下の説明において、同一の機能及び構成を有する構成要素については、共通する参照符号を付す。
1.第1実施形態
第1実施形態に係るメモリシステムについて説明する。
1.1 構成について
1.1.1 メモリシステムの全体構成について
まず、本実施形態に係るメモリシステムの大まかな全体構成について、図1及び図2を用いて説明する。図1は、本実施形態に係るメモリシステムの外観図であり、特に上面から見た様子を示し、図2は図1における2−2線に沿った断面図である。
図示するように、メモリシステム1は2つの半導体チップ100、200を含む。半導体チップ(メモリチップ)100はNAND型フラッシュメモリ等の半導体メモリを含み、半導体チップ200(コントローラチップ)は、メモリチップ100を制御するコントローラを含む。これらの半導体チップ100及び200はリードフレーム300に実装され、更に樹脂350によって封止されてパッケージングされている。
より具体的には、図2に示すように、リードフレーム300のダイパッド310上にメモリチップ100が搭載され、メモリチップ100上にコントローラチップ200が重ねられている。
コントローラチップ200は、例えばボンディングワイヤ340により、リードフレームのインナーリード320に接続され、更に図示せぬボンディングワイヤによりメモリチップ100とも接続されている。そして、メモリチップ100、コントローラチップ200、ダイパッド310、インナーリード320、及びボンディングワイヤ340が、例えば樹脂350によって封止されている。
インナーリード320は、樹脂350外部に露出されたアウターリード330に接続されている。そしてアウターリード330は、メモリシステム1の外部接続端子(外部接続ピン)として機能する。図1の例であると、第1ピンから第16ピンまでの16個の外部接続端子が用意されている。そしてメモリシステム1は、これらのピンを介して、メモリシステム1を制御する(より具体的には、メモリチップにアクセスする)ホスト機器と通信する。
図3は、各ピンの機能を示すダイアグラムである。図示するように、第1ピンは、制御信号/HOLDの入力用、またはシリアルデータSO3の出力用に用いられる。制御信号/HOLDは、ホスト機器とメモリシステム1との間の通信を一時的に停止する際にアサート(“L”レベル)される。第2ピンは、電源電圧Vccを受信する。第3ピンから第6ピン、及び第11ピンから第14ピンは未使用ピンであり、例えば将来的に何らかの信号やデータの送受信が必要になった際に使用することが出来る。第7ピンは、チップセレクト信号/CSを受信する。チップセレクト信号/CSは、メモリチップ100及びコントローラチップ200を活性化させるための信号(言い換えれば、メモリシステム1にアクセスする際に活性化される信号)であり、例えばホスト機器がメモリシステム1にコマンドを入力するタイミングでアサート(“L”レベル)される。第8ピンは、シリアルデータ(SOまたはSO1)の出力用に用いられる。第9ピンは、制御信号/WPの入力用、またはシリアルデータ(SO2)の出力用に用いられる。制御信号/WPはライトプロテクト信号であり、メモリチップへの書き込みを禁止する際にアサート(“L”レベル)される。第10ピンは、基準電位Vssを受信する。第15ピンは、シリアルデータ(SI)の入力用、またはシリアルデータ(SO0)の出力用に用いられる。第16ピンは、シリアルクロック信号SCKを受信する。
上記ピン構成は、SPI(Serial Peripheral Interface)に準拠している。そして、第1ピン、第8ピン、第9ピン、及び第15ピンをシリアルデータ出力用として任意に選択することで、1倍速、2倍速、または4倍速でデータをホスト機器へ出力することが出来る。
図4は、図1とは別のパッケージ構成の例を示している。図4の例では、第1ピンから第8ピンまでの8個の外部接続端子が設けられている。図5は、図4の例における各ピンの機能を示すダイアグラムである。
図示するように、第1ピンはチップセレクト信号/CSを受信し、第2ピンはシリアルデータSO、SO1を出力し、第3ピンはライトプロテクト信号/WPを受信、またはシリアルデータSO2を出力し、第4ピンは基準電位Vssを受信し、第5ピンはシリアルデータSIを受信、またはシリアルデータSO0を出力し、第6ピンはシリアルクロックを受信し、第7ピンは制御信号/HOLDを受信、またはシリアルデータSO3を出力し、第8ピンは電源電圧Vccを受信する。
この場合でも、ピン構成はSPIに準拠している。
図6は、メモリシステム1の内部構成を示す機能ブロック図である。以下では、メモリチップ100をNAND型フラッシュメモリ100と呼び、コントローラチップ200を単にコントローラ200と呼ぶ。
図示するように、メモリシステム1はNAND型フラッシュメモリ100とコントローラ200とを備えている。
NAND型フラッシュメモリ100は、複数のメモリセルを備え、データを不揮発に記憶する。コントローラ200は、NANDバスによってNAND型フラッシュメモリ100に接続され、SPIバスによってホスト機器500に接続される。そしてコントローラ200は、NAND型フラッシュメモリ100へのアクセスを制御する。
NANDバスは、NANDインターフェースに従った信号の送受信を行う。この信号の具体例は、チップイネーブル信号/CE、アドレスラッチイネーブル信号ALE、コマンドラッチイネーブル信号CLE、ライトイネーブル信号/WE、リードイネーブル信号/RE、レディ・ビジー信号/RB、入出力信号I/O、及びライトプロテクト信号/WPである。
信号/CEはlowレベルでアサートされ、NAND型フラッシュメモリ100を活性化させるための信号であり、NAND型フラッシュメモリ100にアクセスする際にアサートされる。信号CLE及びALEは、NAND型フラッシュメモリ100への入力信号I/Oがそれぞれコマンド及びアドレスであることをNAND型フラッシュメモリ100に通知する信号である。信号/WEはlowレベルでアサートされ、入力信号I/OをNAND型フラッシュメモリ100に取り込ませるための信号である。信号/REもlowレベルでアサートされ、NAND型フラッシュメモリ100から出力信号I/Oを読み出すための信号である。レディ・ビジー信号/RBは、NAND型フラッシュメモリ100がレディ状態(コントローラ200からの命令を受信出来る状態)であるか、それともビジー状態(コントローラ200からの命令を受信出来ない状態)であるかを示す信号であり、lowレベルがビジー状態を示す。入出力信号I/Oは、例えば8ビット(n=8)の信号である。そして入出力信号I/Oは、NAND型フラッシュメモリ100とコントローラ200との間で送受信されるデータの実体であり、コマンド、アドレス、書き込みデータ、及び読み出しデータ等である。信号/WPは、NAND型フラッシュメモリ100への書き込みを禁止するための信号である。
SPIバスは、図3及び図5で説明した通りである。
1.1.2 コントローラ200の構成について
次に、コントローラ200の構成の詳細につき、引き続き図6を用いて説明する。図示するようにコントローラ200は、ホスト入出力回路210、ホストインターフェース回路220、NANDインターフェース回路230、NAND入出力回路240、シーケンサ(ステートマシン)250、データバッファ260、270、ステータスレジスタ280、アドレスレジスタ290、及び周辺回路600を備えている。
ホスト入出力回路210は、ホスト機器500との間で送受信される信号のバッファとして機能する。信号SCK、SI、/CS、/HOLD、及び/WPはまずホスト入出力回路210で受信され、その後、ホストインターフェース回路220に出力される。
ホストインターフェース回路220は、信号SCKに同期して信号SIを内部に取り込む。またホストインターフェース回路220は、信号SCKに同期して出力される信号SOを、ホスト入出力回路210を介してホスト機器500へ送信する。
ホストインターフェース回路220は、ホスト入出力回路210を介したホスト機器500との間の信号の送受信制御を司る。またホストインターフェース回路220は、シリアル/パラレル変換器及びパラレル/シリアル変換器として機能する。例えば、ホスト機器500からの入力信号SIをシリアル信号からパラレル信号に変換し、NAND型フラッシュメモリ100から読み出されたデータをパラレル信号からシリアル信号に変換する。更にホストインターフェース回路220は、入力信号SIがコマンドであった場合にコマンドデコーダとして機能し、受信したコマンドをデコードする。そしてデコード結果を例えばシーケンサ250に出力する。
データバッファ260、270は、ホスト機器500から受信した書き込みデータを、ホストインターフェース回路220を介して一時的に保持する。更に、NAND型フラッシュメモリ100から読み出されたデータを、NANDインターフェース回路230を介して一時的に保持する。
ステータスレジスタ280は、メモリシステム1の種々のステータス情報を保持する。例えば、後述する特徴テーブルを保持する。
アドレスレジスタ290は、ホスト機器500から受信したアドレスを、ホストインターフェース回路220を介して保持する。
NANDインターフェース回路230は、NAND入出力回路240を介したNAND型フラッシュメモリ100との間の信号の送受信制御を司る。そしてNANDインターフェース回路230は、シーケンサ250の命令に従って、NANDインターフェースに準拠した各種コマンドを発行し、アドレスレジスタ290内のアドレスと共にNAND入出力回路240を介してNAND型フラッシュメモリ100へ出力する。データの書き込み時には、データバッファ260及び/または270内のデータを、NAND入出力回路240を介してNAND型フラッシュメモリ100へ出力する。更にデータの読み出し時には、NAND型フラッシュメモリ100から読み出されたデータを、データバッファ260及び/または270に転送する。
NAND入出力回路240は、NAND型フラッシュメモリ100との間で送受信される信号のバッファとして機能する。また、NANDインターフェース回路230の命令に従って、信号/CE、CLE、ALE、/WE、/RE、/WPをアサートまたはデアサートする。更に、データの読み出し時には、信号IO(読み出しデータ)を一時的に保持し、NANDインターフェース回路230へ転送し、書き込み時には信号IO(書き込みデータ)を一時的に保持し、NAND型フラッシュメモリ100へ送信する。また、NAND型フラッシュメモリ100からレディ・ビジー信号/RBを受信し、これをNANDインターフェース回路230へ転送する。
シーケンサ250は、コントローラ200全体の動作を制御する。例えば、ホスト機器500からデータの読み出し要求があった際には、NANDインターフェース回路230に対して読み出し動作を実行するためのシーケンスを実行するよう命令する。またホスト機器500からデータの書き込み要求があった際には、NANDインターフェース回路230に対して読み出し動作を実行するためのシーケンスを実行するよう命令する。更に、NAND型フラッシュメモリ100から受信したステータス情報に従って、ステータスレジスタ280内の特徴テーブルを更新する。
周辺回路600は、外部から電源電圧Vccを受信し、各回路ブロックへ転送すると共に、コントローラ200の動作に必要なその他の制御を行う。
1.1.3 NAND型フラッシュメモリ100の構成について
次に、NAND型フラッシュメモリ100の構成について、図7を用いて説明する。図7は、NAND型フラッシュメモリ100のブロック図である。
図示するようにNAND型フラッシュメモリ100は、メモリセルアレイ110、ロウデコーダ120、センスアンプ130、データレジスタ140、カラムデコーダ150、ECC回路400、ステータスレジスタ410、アドレスレジスタ420、コマンドレジスタ430、制御回路440、電圧発生回路450、入出力制御回路460、ロジック回路470、及びデータレジスタ480を備えている。
メモリセルアレイ110は、ロウ及びカラムに対応付けられた複数の不揮発性のメモリセルを備えている。そして、同一行にあるメモリセルは同一のワード線に接続され、同一列にあるメモリセルは同一のビット線に接続される。データの読み出し及び書き込みは、同一のワード線に接続された複数のメモリセルに対して一括して行われる。この単位をページと呼ぶ。1ページ分のデータは、正味のデータと管理データとを含む。正味のデータは、セクタと呼ばれる単位で管理される。例えば本例では、1ページは4つのセクタを含み、各セクタは512バイトのデータサイズを有する。管理データは、例えばエラー訂正のためのECCデータ(パリティ)を含む。エラー訂正はセクタ毎に行われる。従って管理データは、セクタ毎に用意されたECCデータを含む。また、データの消去は、複数のページ単位で一括して行われる。この単位をブロックと呼ぶ。
ロウデコーダ120は、メモリセルアレイ110のロウ方向を指定するロウアドレスをデコードする。そして、デコード結果に応じてワード線を選択し、データの書き込み、読み出し、及び消去に必要な電圧を印加する。
センスアンプ130は、データの読み出し時には、メモリセルアレイ110から読み出されたデータをセンスし、データレジスタ140に転送する。データの書き込み時には、データレジスタ140内のデータをメモリセルアレイ110に転送する。
データレジスタ140は、1ページ分の書き込みデータまたは読み出しデータを一時的に保持する。
カラムデコーダ150は、メモリセルアレイ110のカラム方向を指定するカラムアドレスをデコードする。そしてデコード結果に応じて、書き込み時にはデータをデータレジスタに転送し、読み出し時にはデータレジスタからデータを読み出す。
ECC回路400は、エラー検出及びエラー訂正処理を行う。より具体的には、データの書き込み時には、コントローラ200から受信したデータに基づいて、セクタ毎にパリティを生成し、このパリティと正味のデータとをデータレジスタ140に転送する。データの読み出し時には、データレジスタ140から転送されたデータに含まれるパリティに基づき、セクタ毎にシンドロームを生成し、エラーの有無を検出する。そしてエラーが検出された際には、そのビット位置を特定し、エラーを訂正する。1セクタにつき訂正可能なエラービット数は、本例では例えば1セクタあたり8ビットである。またECC回路400は、各セクタにおいて検出されたエラービット数を、ステータス情報としてステータスレジスタ410に出力可能である。
ロジック回路470は、コントローラ200から信号/CE、CLE、ALE、/WE、/RE、及び/WPを受信する。
入出力制御回路460は、信号IO[n:0]を受信する。そして入出力制御回路460は、信号IOがアドレスであった場合(ALE=“H”の場合)には、これをアドレスレジスタ420に保持させる。また信号IOがコマンドであった場合(CLE=“H”の場合)には、これをコマンドレジスタ430に保持させる。更に信号IOがデータであった場合(ALE=CLE=“L”の場合)には、これをデータレジスタ480に保持させる。
ステータスレジスタ410は、NAND型フラッシュメモリ100の各種ステータス情報を保持する。ステータス情報には、前述のECC回路400から与えられるエラービット数、また制御回路440から与えられる書き込み動作及び消去動作が成功(パス)したか失敗(フェイル)したかを示す情報等が含まれる。
制御回路470は、コマンドレジスタ430に保持されたコマンドと、ロジック回路470に入力された各種信号に基づいて、NAND型フラッシュメモリ100全体を制御する。また制御回路470は、レディ・ビジー信号/RBを発生して、コントローラ200へ出力する。
電圧発生回路450は、制御回路470の命令に基づいて、データの書き込み、読み出し、及び消去動作に必要な電圧を生成し、これをメモリセルアレイ110、ロウデコーダ120、及びセンスアンプ130に供給する。
1.2 動作について
次に、本実施形態に係るメモリシステムにおけるデータの読み出し動作、書き込み動作、及び消去動作につき、SPIバス及びNANDバスで送受信される信号に着目して、以下簡単に説明する。
1.2.1 読み出し動作
まず、読み出し動作について説明する。読み出し動作は、大まかには以下の3ステップを含む。すなわち、
(1)NAND型フラッシュメモリからのデータ読み出し:本動作により、NAND型フラッシュメモリ100からコントローラ200にデータが読み出される。
(2)特徴テーブル読み出し(Get featureと呼ぶことがある):本動作により、メモリシステム1がビジー状態であるかレディ状態であるか、すなわち上記(1)の動作が完了したか否かが判定される。
(3)コントローラ200からのデータ読み出し:本動作により、(1)でコントローラ200に読み出されたデータがホスト機器500に読み出される。
図8は、上記(1)実行時におけるSPIバス上の各種信号のタイムチャートである。図示するようにホスト機器500は、信号/CSをアサートすると共に、第1読み出しコマンドCMD_RD1を信号SIとして発行し、更にクロックSCKを発行する。
コントローラ200のホストインターフェース回路220は、信号/CSがアサートされて最初のクロックSCKを受信した際の信号SIをコマンドとして認識する。このコマンドは、例えば8クロックサイクルにわたって入力される8ビット信号である。第1読み出しコマンドCMD_RD1を受信したことで、シーケンサ250はデータ読み出しシーケンスを開始する。
引き続きホスト機器500は、例えば8クロックサイクルにわたってダミービットDMY_BITをコントローラ200へ送信し、その後例えば16サイクルにわたってアドレスADDをコントローラ200へ送信する。そしてアドレスADDの送信後、ホスト機器500は信号/CSをデアサートする。アドレスADDは、NAND型フラッシュメモリ100におけるブロック及びページを指定するアドレスであり、アドレスレジスタ290に保持される。
このように、特定のコマンドを受信した際に、その後にどのような信号が入力されるか(コマンドシーケンス)は予め定められている。つまりコントローラ200は、例えば第1読み出し命令を受信した際には、その後の8クロックサイクルで入力される信号SIは意味の無いダミーデータであり、その後の16クロックサイクルで入力される信号SIが、実体的なアドレス信号であることを把握している。
上記(1)の動作に引き続いて上記(2)の動作が実行される。図9は、上記(2)実行時におけるSPIバス上の各種信号のタイムチャートである。図示するようにホスト機器500は、信号/CSを再度アサートすると共に、Get featureコマンドCMD_GFを信号SIとして発行し、更にクロックSCKを発行する。
引き続きホスト機器500は、例えば8クロックサイクルにわたってアドレスADDをコントローラ200へ送信する。このアドレスADDは、特徴テーブル内のアドレスであり、当然ながらレディ・ビジー情報が格納された領域を指定するアドレスである。コントローラ200では、アドレスADDの受信後、例えばシーケンサ250の命令に従ってホストインターフェース回路220がステータスレジスタ280から特徴テーブルの指定のエントリを読み出し、これを8サイクルにわたって8ビットのステータスデータST_DATとしてホスト機器500に送信する。このステータスデータST_DATには、レディ・ビジー情報が含まれている。そしてステータスデータST_DATの受信後、ホスト機器500は信号/CSをデアサートする。
受信したステータスデータST_DATにおいて、メモリシステム1がレディ状態であることが示されていれば、上記(3)の動作が実行される。図10は、上記(3)実行時におけるSPIバス上の各種信号のタイムチャートである。図示するようにホスト機器500は、信号/CSをアサートすると共に、第2読み出しコマンドCMD_RD2を信号SIとして発行し、更にクロックSCKを発行する。
引き続きホスト機器500は、例えば4クロックサイクルにわたってダミービットDMY_BITをコントローラ200へ送信し、その後例えば12サイクルにわたってアドレスADDをコントローラ200へ送信する。このアドレスADDは、コントローラ200において、データバッファ260または270における領域を指定するためのアドレスであり、NANDフラッシュメモリ100におけるページ内のカラムを指定するアドレスである。アドレスADDは、アドレスレジスタ290に保持される。すると、例えばシーケンサ250の制御に従い、ホストインターフェース回路220はデータバッファ260または270からデータを読み出す。そして、8クロックサイクル経過の後、ホストインターフェース回路220は、データバッファ260または270から読み出したデータRD_DATをホスト機器500へ送信する。
図11は、上記(1)の動作時におけるNANDバス上の各種信号のタイムチャートである。第1読み出しコマンドCMD_RD1を受信したコントローラ200では、例えばシーケンサ230の制御に従って、NANDインターフェース回路230がアドレス入力コマンド“00h”を発行し、NAND型フラッシュメモリ100へ送信する。引き続き、例えば5サイクルにわってアドレスADDをNAND型フラッシュメモリ100へ送信し、その後読み出しコマンド“30h”を発行して、これをNAND型フラッシュメモリ100へ送信する。なお、このアドレスADDは、図8及び図10で示された動作においてアドレスレジスタ290に保持されたブロック、ページ、及びカラムを示すアドレスを含む。
コマンド“30h”に応答して、NAND型フラッシュメモリ100内では、メモリセルアレイ110からのデータの読み出し動作が開始され、NAND型フラッシュメモリ100はビジー状態(/RB=“L”)となる。
データのメモリセルアレイ110からの読み出しが完了すると、NAND型フラッシュメモリ100はレディ状態となる。これに応答してコントローラ200は、信号/REをトグルさせる。すると、信号/REに同期して、データがNAND型フラッシュメモリ100からコントローラ200へ転送される。
1.2.2 書き込み動作
次に書き込み動作について説明する。書き込み動作は、大まかには以下の3ステップを含む。すなわち、
(1)ホスト機器500からコントローラ200へのデータ転送。
(2)転送したデータのNAND型フラッシュメモリ100への書き込み。
(3)特徴テーブル読み出し(Get feature):本動作により、NAND型フラッシュメモリ100への書き込みがパスしたかフェイルしたかが判定される。
図12は、上記(1)実行時におけるSPIバス上の各種信号のタイムチャートである。図示するようにホスト機器500は、信号/CSをアサートすると共に、第1書き込みコマンドCMD_WR1を信号SIとして発行し、更にクロックSCKを発行する。第1書き込みコマンドCMD_WR1を受信したことで、シーケンサ250はデータ書き込みシーケンスを開始する。
引き続きホスト機器500は、例えば4クロックサイクルにわたってダミービットDMY_BITをコントローラ200へ送信し、その後例えば12サイクルにわたってアドレスADDをコントローラ200へ送信する。このアドレスADDは、データバッファ260または270における領域を指定するためのアドレスであり、NANDフラッシュメモリ100におけるページ内のカラムを指定するアドレスである。アドレスADDは、アドレスレジスタ290に保持される。更にホスト機器500は、書き込みデータWR_DATをコントローラ200へ送信する。この書き込みデータWR_DATは、データバッファ260または270において、直前に受信したADDに対応する領域に保持される。そしてデータWR_DATの送信後、ホスト機器500は信号/CSをデアサートする。
上記(1)の動作に引き続いて上記(2)の動作が実行される。図13は、上記(2)実行時におけるSPIバス上の各種信号のタイムチャートである。図示するようにホスト機器500は、信号/CSを再度アサートすると共に、第2書き込みコマンドCMD_WR2を信号SIとして発行し、更にクロックSCKを発行する。第2書き込みコマンドCMD_WR2を受信したことで、シーケンサ250は上記(2)の動作命令を受信したことを認識する。
引き続きホスト機器500は、例えば8クロックサイクルにわたって8ビットのダミービットDMY_BITをコントローラ200へ送信し、その後例えば16サイクルにわたって16ビットのアドレスADDをコントローラ200へ送信する。このアドレスADDは、NAND型フラッシュメモリ100におけるブロック及びページを指定するアドレスであり、アドレスレジスタ290に保持される。そしてアドレスADDの送信後、ホスト機器500は信号/CSをデアサートする。
上記(2)の動作に引き続いて、上記(3)の動作が行われる。本動作におけるコマンドシーケンスは、読み出し動作時に説明した図9と同様である。またホスト機器500は、受信したステータスデータST_DATにおいて、メモリシステム1がレディ状態であることが示されていれば、続いてデータの書き込みがフェイルしたか否かに関する情報を要求する。
図14は、上記(2)の動作時におけるNANDバス上の各種信号のタイムチャートである。第2書き込みコマンドCMD_WR2を受信したコントローラ200では、例えばシーケンサ250の制御に従って、NANDインターフェース回路230が書き込みコマンド“80h”を発行し、NAND型フラッシュメモリ100へ送信する。引き続き、例えば5サイクルにわたってアドレスADDをNAND型フラッシュメモリ100へ送信し、更に書き込みデータDATが複数サイクルにわたってNAND型フラッシュメモリ100へ送信され、その後書き込みコマンド“10h”を発行して、これをNAND型フラッシュメモリ100へ送信する。なお、このアドレスADDは、図12及び図13で示された動作においてアドレスレジスタ290に保持されたブロック、ページ、及びカラムを示すアドレスを含む。
コマンド“10h”に応答して、NAND型フラッシュメモリ100内では、メモリセルアレイ110へのデータの書き込み動作が開始され、NAND型フラッシュメモリ100はビジー状態(/RB=“L”)となる。
データのメモリセルアレイ110への書き込みが完了すると、NAND型フラッシュメモリ100はレディ状態となる。これに応答してコントローラ200は、ステータス読み出しコマンド“70h”を発行し、信号/REをトグルさせる。すると、信号/REに同期して、書き込み動作がパスしたかフェイルしたかを示すステータスデータST_DATがコントローラ200に転送される。このステータスデータST_DATは特徴テーブルに保持され、上記(3)のGet featureコマンドによってホスト機器500に読み出される。
1.2.3 消去動作
次に消去動作について説明する。消去動作は、大まかには以下の2ステップを含む。すなわち、
(1)ホスト機器500からコントローラ200への消去命令。
(2)特徴テーブル読み出し(Get feature):本動作により、NAND型フラッシュメモリ100への消去動作がパスしたかフェイルしたかが判定される。
図15は、上記(1)実行時におけるSPIバス上の各種信号のタイムチャートである。図示するようにホスト機器500は、信号/CSをアサートすると共に、消去コマンドCMD_ERを信号SIとして発行し、更にクロックSCKを発行する。消去コマンドCMD_ERを受信したことで、シーケンサ250はデータ消去シーケンスを開始する。
引き続きホスト機器500は、例えば8クロックサイクルにわたって8ビットのダミービットDMY_BITをコントローラ200へ送信し、その後例えば16サイクルにわたって16ビットのアドレスADDをコントローラ200へ送信する。このアドレスADDは、メモリセルアレイ110において消去対象となるブロックを指定するためのアドレスであり、アドレスレジスタ290に保持される。その後、ホスト機器500は信号/CSをデアサートする。
上記(1)の動作に引き続いて上記(2)の動作が実行される。本動作におけるコマンドシーケンスは、読み出し動作時に説明した図9と同様である。またホスト機器500は、受信したステータスデータST_DATにおいて、メモリシステム1がレディ状態であることが示されていれば、続いてデータの消去がパスしたかフェイルしたかに関する情報を要求する。
図16は、上記(1)の動作時におけるNANDバス上の各種信号のタイムチャートである。消去コマンドCMD_ERを受信したコントローラ200では、例えばシーケンサ250の制御に従って、NANDインターフェース回路230が消去コマンド“60h”を発行し、NAND型フラッシュメモリ100へ送信する。引き続き、例えば3サイクルにわたってアドレスADDをNAND型フラッシュメモリ100へ送信し、更に消去コマンド“D0h”を発行して、これをNAND型フラッシュメモリ100へ送信する。
コマンド“D0h”に応答して、NAND型フラッシュメモリ100内では、メモリセルアレイ110のデータの消去動作が開始され、NAND型フラッシュメモリ100はビジー状態(/RB=“L”)となる。
データの消去が完了すると、NAND型フラッシュメモリ100はレディ状態となる。これに応答してコントローラ200は、ステータス読み出しコマンド“70h”を発行し、信号/REをトグルさせる。すると、信号/REに同期して、消去動作がパスしたかフェイルしたかを示すステータスデータST_DATがコントローラ200に転送される。このステータスデータST_DATは特徴テーブルに保持され、上記(2)のGet featureコマンドによってホスト機器500に読み出される。
1.3 NAND型フラッシュメモリの単体テストについて
次に、本実施形態に係るNAND型フラッシュメモリ100の単体テスト(以下、NAND単体テストと呼ぶ)を行うための構成及び動作について説明する。NAND単体テストとは、データの書き込み、読み出し、消去等が正常に行えるかどうかを確認する試験である。
1.3.1 NAND単体テストを行うための構成について
以下、NAND単体テストを行うための構成について説明する。
図17は、メモリシステム1においてNAND単体テストを行う際に使用されるテスト回路を搭載したシステム構成の例を示すブロック図である。なお、図6と共通する要素には同一の符号を付している。図18は、メモリシステム1の動作モードを説明するための概念図である。図19は、メモリシステム1に搭載されるテスト回路を主に示す構成図である。
前述の図6では図示を省略しているが、メモリシステム1内には図17に示すようにテスト回路700が備えられる。テスト回路700は、例えば半導体チップ200内に搭載され、ホスト入出力回路210に電気的に接続されると共に、NAND入出力回路240に電気的に接続される。テスト回路700は、メモリシステム1を製品として出荷する前あるいは出荷した後、NAND単体テストを実施する際に使用される回路である。
NAND型フラッシュメモリ100の単体テストを実施する際には、前述したホスト機器500の代わりにNAND単体テスト用のホスト機器900がメモリシステム1に接続される。ホスト機器900は、NAND単体テスト用に予め定められたデータフォーマットに従って各種コマンド(データの書き込み、読み出し、消去等のコマンド)を発行すると共に、NAND型フラッシュメモリ100から伝送されるデータからテストの結果判定・表示出力等を行う機能を有する。ホスト機器900がメモリシステム1に接続されてNAND型フラッシュメモリ100の単体テストを行う際には、テスト回路700は、ホスト機器900が扱う信号(シリアル信号)とNAND型フラッシュメモリ100が扱う信号(パラレル信号)との間の信号変換を行う。
なお、本実施形態のメモリシステム1は、複数の動作モードとして例えば図18に示すような通常動作モードM1とNAND単体テストモードM2(以下、テストモードM2)とを有する。通常動作モードM1は、テスト回路700を使用せずに通常の動作を行うモードである。テストモードM2は、テスト回路700を使用してNAND型フラッシュメモリ100の単体テストを行うモードである。モード間の遷移は、メモリシステム1がホスト機器900より送信されてくるシリアルデータの中の所定の位置に特定コマンドもしくは特定情報が含まれていることを検出した場合に実行される。
図17では図示を省略しているが、図19に示すようにメモリシステム1には外部接続端子(外部接続ピン)800が備えられる。外部接続端子800は、図2で説明したアウターリード330もしくはインナーリード320に相当するものである。外部接続端子800のインナー側には、テスト回路700が図17に示すホスト入出力回路210を介して接続される。また、外部接続端子800のアウター側には、NAND型フラッシュメモリ100の単体テストを行う際に、ホスト機器900が接続される。外部接続端子800のピン構成は、SPIに準拠しており、NAND型フラッシュメモリ100のピン構成に比べるとピン数が少なく、さらに各ピンに割り当てられている信号構成も異なる。テスト回路700は、外部接続端子800のピン数や信号構成がNAND型フラッシュメモリ100と異なっていてもNAND型フラッシュメモリ100の単体テストを問題なく実施できるよう、ホスト機器900が扱う信号とNAND型フラッシュメモリ100が扱う信号との間の信号変換を行う回路を有する。
図19に示すテスト回路700は、シリアル/パラレル変換部710及びパラレル/シリアル変換部720を含むデータ変換部730、データラッチ部740、スイッチSW、各種信号線等の要素を含む。例えばテスト回路700は、シリアル/パラレル変換部710及びデータラッチ部740を含む回路部分を用いて、ホスト機器900から外部接続端子800経由で送信されてくるシリアルデータをパラレルデータに変換してNAND型フラッシュメモリ100側へ送出することができる。また、テスト回路700は、パラレル/シリアル変換部720等を含む第2の回路部分を用いて、NAND型フラッシュメモリ100から送信されてくるパラレルデータをシリアルデータに変換して外部接続端子800側へ送出することができる。
次に、外部接続端子800を構成する個々のピンについて説明する。
NAND単体テスト用のホスト機器900がメモリシステム1に接続された状態においては、外部接続端子800を構成する個々のピンのいくつかは、SPIにおける本来の信号と異なる信号が割り当てられる。
1)SI用のピン(SIピン)
SIピンは、ホスト機器900からメモリシステム1へのデータ入力のみならず、メモリシステム1からホスト機器900へのデータ出力にも使用される。入出力されるデータはシリアルデータDATであり、パケット単位で伝送される。メモリシステム1に入力される入力データのフォーマット(入力データフォーマット)、及びメモリシステム1から出力される出力データのフォーマット(出力データフォーマット)の例を図20に示す。
入力データフォーマットは、スタートビット1’b0からエンドビット1’b1までを1パケットとし、スタートビット1’b0、コマンドイネーブル用ビットCLE、アドレスイネーブル用ビットALE、ライトプロテクト用ビットWPZ、n個のデータビットD0〜Dn、エンドビット1’b1の順で入力データを構成する。
出力データフォーマットもスタートビット1’b0からエンドビット1’b1までを1パケットとし、スタートビット1’b0、n個のデータビットD0〜Dn、エンドビット1’b1の順で入力データを構成する。
2)/WP用のピン(/WPピン)
/WPピンは、入力モードと出力モードとを切替え可能に制御する制御信号CONTをホスト機器900からメモリシステム1へ供給するために使用される。入力モードは、ホスト機器900から供給されるシリアルデータをNAND型フラッシュメモリ100にパラレルデータとして入力するモードである。出力モードは、NAND型フラッシュメモリ100から出力されるパラレルデータをシリアルデータとしてホスト機器900に出力するモードである。入力モードの時は、制御信号CONT(例えば“H”レベル)により信号線L1を通じてスイッチSW及びデータラッチ部740の一部が操作され、NAND型フラッシュメモリ100へのライトイネーブル信号の供給及びデータ入力が可能な状態になる。出力モードの時は、制御信号CONT(例えば“L”レベル)により信号線L1,L2を通じてスイッチSW及びパラレル/シリアル変換部720の一部が操作され、NAND型フラッシュメモリ100へのリードイネーブル信号の供給及びホスト機器900へのデータ出力が可能な状態になる。
3)SCK用のピン(SCKピン)
SCKピンは、ホスト機器900からメモリシステム1へクロック信号SCKを供給するために使用される。メモリシステム1内に取り込まれたクロック信号SCKは、データ変換部730へ供給されると共に、信号線L3を通じてデータラッチ部740へ供給される。
4)/HOLD用のピン(/HOLDピン)
/HOLDピンは、ここでは使用されない。
5)/CS用のピン(/CSピン)
/CSピンは、ホスト機器900からメモリシステム1へチップセレクト信号/CSを供給するために使用される。
6)SO用のピン(SOピン)
SOピンは、ホスト機器900からメモリシステム1へライトイネーブル信号/WEもしくはリードイネーブル信号/REを供給するために使用される。すなわち、SOピンは、ライトイネーブル信号/WEの送信用及びリードイネーブル信号/REの送信用に共用される。
1.3.2 NAND単体テスト時の動作について
以下、NAND単体テスト時の動作について説明する。
NAND単体テストは、メモリシステム1を製品として出荷する前あるいは出荷した後に、NAND単体テスト用のホスト機器900をメモリシステム1に接続した状態で、メモリシステム1の製造業者もしくはメンテナンス業者により実施される。
ホスト機器900からメモリシステム1へシリアルデータを供給するに際し、シリアルデータの中の所定の位置に特定コマンドもしくは特定情報を含める。これにより、メモリシステム1を通常動作モードM1からテストモードM2へ移行させたり、テストモードM2から通常動作モードM1に移行させたりすることが可能となる。例えば、通常動作モードM1にある時は、図8に示すSPI準拠のデータフォーマットと同様のシーケンスにより特定コマンドを入力すると、メモリシステム1はこの情報がNAND単体テストの実施を示す専用コマンドであると認識し、通常動作モードM1からテストモードM2へ移行する。一方、テストモードM2にある時は、図20に示す入力データフォーマットにおいて、CLE=1、ALE=1とすると、メモリシステム1はこの情報がNAND単体テストの終了を示す専用コマンドであると認識し、テストモードM2から通常動作モードM1へ移行する。
なお、メモリシステム1は、現在の動作モードが通常動作モードM1とテストモードM2のいずれであるかを示す情報を所定の記憶領域に保持してもよい。この場合、動作モードの情報管理は、例えばシーケンサ250もしくは別の制御手段により行われる。
また、NAND単体テスト用のホスト機器900が送信するシリアルデータのデータフォーマットは、NAND単体テスト用に予め定められたデータフォーマットであり、メモリシステム1の製造業者もしくはメンテナンス業者以外の者が知りえない情報である。従って、一般のユーザが前述のホスト機器500をメモリシステム1に接続してNAND単体テストを実施することはできない。
次に、図19及び図21を参照して、テストモード時におけるデータ入力の具体的な動作について説明する。
ここでは、ライトコマンドを含むデータがホスト機器900からテスト回路700を経由してNAND型フラッシュメモリ100へ供給される場合について例示する。
ホスト機器900は、外部接続端子800の/WPピンに“H”レベルの制御信号CONTを供給する。これにより、信号線L1を通じてテスト回路700内のスイッチSW及びデータラッチ部740の一部が操作され、NAND型フラッシュメモリ100へのライトイネーブル信号/WEの供給及びデータ入力が可能な状態になり、入力モードが形成される。
またホスト機器900は、外部接続端子800のSOピンに“H”レベルのライトイネーブル信号/WEを供給する。この信号はNAND型フラッシュメモリ100へ供給される。
またホスト機器900は、外部接続端子800のSCKピンにクロック信号SCKを供給する。この信号はデータ変換部730へ供給されると共に、信号線L3を通じてデータラッチ部740へ供給される。
またホスト機器900は、外部接続端子800のSIピンに図20に示した入力データフォーマットに基づくシリアルデータDATを供給する。シリアルデータDATは、実データを含むほか、コマンド情報、アドレス情報、又はライトプロテクト情報を含む。例えば最初にコマンド情報を供給し、その後にアドレス情報を供給するという手順をとる。
シリアルデータDATとしてコマンド情報を供給するには、最初に1パケット分のシリアルデータset0から供給する。シリアルデータset0においては、CLE=1、ALE=0、WPZ=0とし、実データIOに相当するデータビットD0〜Dn[n:0]をコマンドの値(例えば、書き込みコマンドの値)とする。このシリアルデータset0は、シリアル/パラレル変換部710へ供給され、パラレルデータに変換される。
次にホスト機器900は、データset0の供給が終わるタイミングで外部接続端子800の/CSピンに“L”レベルのチップセレクト信号/CSを供給する。これにより、NAND型フラッシュメモリ100へのデータの取り込みが可能な状態(入力データキャプチャイネーブルの状態)となる。
データラッチ部740は、クロック信号SCKに従い、SCKが“L”レベルから“H”レベルに変わるタイミングで、set0の中の実データIOと“H”レベルの信号CLEとをNAND型フラッシュメモリ100へ供給する。この時、外部接続端子800のSOピンから供給するライトイネーブル信号/WEを“L”レベルから“H”レベルへ変化させることでNAND型フラッシュメモリ100側では、テスト回路700から供給されるset0の実データIO及び“H”レベルの信号CLEを受け入れる。NAND型フラッシュメモリ100側では、コマンド(例えばライトコマンド)に応じた処理が実施される。
以降、さらに続けてコマンド情報の残りを供給する場合は、データset0と同様な手順でデータset1, set2,…を処理してNAND型フラッシュメモリ100へ供給する。
次に、ホスト機器900は、シリアルデータDATとしてアドレス情報を供給する。アドレス情報を供給するには、コマンド情報を供給したときと同様の手順で例えばデータset4, set5,…をNAND型フラッシュメモリ100へデータ入力する。例えばデータset4においては、CLE=0、ALE=1、WPZ=0とし、実データIOに相当するデータビットD0〜Dn[n:0]をアドレスの値とする。set5以降も同様となる。
なお、ここでは書き込みコマンドによるデータ入力を実施する場合の例を挙げたが、例えばリードコマンドによるデータ入力を実施する場合も同様な手順で実現することができる。その場合、ホスト機器900が供給するシリアルデータDATの中のデータビットD0〜Dn[n:0]をリードコマンドの値とする。
次に、図19及び図22を参照して、テストモード時におけるデータ出力の具体的な動作について説明する。
ここでは、リードコマンドがNAND型フラッシュメモリ100へ供給され、その応答としてNAND型フラッシュメモリ100からデータがテスト回路700を経由してホスト機器900へ供給される場合について例示する。
ホスト機器900は、外部接続端子800の/CSピンに“L”レベルのチップセレクト信号/CSを供給する。
またホスト機器900は、外部接続端子800のSOピンから供給するライトイネーブル信号/WEを“L”レベルから“H”レベルへ変化させる。このとき、テスト回路700にて既にパラレル変換済みのリード/アドレス入力コマンド(30h/00h)がデータラッチ部740からNAND型フラッシュメモリ100へ供給される。
その後に、ホスト機器900は、外部接続端子800の/WPピンに“L”レベル制御信号CONTを供給する。これにより、信号線L1を通じてテスト回路700内のスイッチSW及びデータラッチ部740の一部が操作され、NAND型フラッシュメモリ100へのリードイネーブル信号/REの供給及びホスト機器900へのデータ出力が可能な状態になる。
またホスト機器900は、外部接続端子800のSCKピンにクロック信号SCKを供給する。この信号はデータ変換部730(パラレル/シリアル変換部720など)に供給される。
ホスト機器900は、外部接続端子800のSOピンに“L”レベルのリードイネーブル信号/REを供給する。この信号はNAND型フラッシュメモリ100へ供給されると共に、信号線L4を通じてパラレル/シリアル変換部720の一部へ供給される。このときNAND型フラッシュメモリ100側では、リードイネーブル信号/REが“L”レベルとなり、例えば指定された記憶領域から読み出されたパラレルデータIO[n:0]をテスト回路700へ供給する。このパラレルデータIO[n:0]は、信号線L5を通じてパラレル/シリアル変換部720の一部に供給される。
パラレル/シリアル変換部720は、信号線L4を通じて供給される“L”レベルのリードイネーブル信号/REに従い、リードイネーブル信号/REが“H”レベルになるタイミングで、信号線L5を通じて供給されるパラレルデータIO[n:0]を取り込み、当該IO[n:0]をスタートビット1’b0とエンドビット1’b1で挟んだ1パケットのシリアルデータを生成する。そしてパラレル/シリアル変換部720は、生成したシリアルデータをクロック信号CLKに従って出力する。
メモリシステム1は、パラレル/シリアル変換部720から出力されるシリアルデータを外部接続端子800のSIピンを通じてホスト機器900側へ供給する。シリアルデータを取得したホスト機器900側では、当該シリアルデータに基づきNAND型フラッシュメモリ100が正常であるかどうかを確認する。
1.4 本実施形態に係る効果
本実施形態によれば、メモリのピン数よりも少ないピン数の端子を通じて該メモリのテストを行うことができる。本効果につき、以下説明する。
メモリシステムは、少ないピン数でホスト機器と通信できるように、少ピンのパッケージを採用しているのが一般的である。この場合、少ピンであるがために、メモリの各ピンに割り当てられた信号を外部へ出力することができず、メモリの単体テストが行えないか、又はテスト内容が限定される。
この点で本実施形態に係る構成によれば、メモリシステムの外部接続端子にメモリのピン数よりも少ないピン数を採用した場合(例えば少ピンのパッケージを採用した場合)でも、メモリシステム内にテスト回路を設けることにより、別途専用ピンを設けずとも、メモリの単体テストを実施することが可能となる。
2.変形例等
なお、実施形態は上記説明した形態に限られず、種々の変形が可能である。例えば上記実施形態では、NAND型フラッシュメモリ100とコントローラ200及びテスト回路700とが別々の半導体チップである場合を例に説明した。しかし、これらはワンチップで形成されても良い。この場合のメモリシステム1のブロック図を図23に示す。
図示するように、ブロック構成は、図7と同様であるが、ホスト機器500からの信号SCK、/CS、/HOLD、及び/WPがロジック回路470に入力され、信号SI及びSOは入出力制御回路460を介して入出力される。そして、レジスタ410〜430、制御回路440及び460、並びにロジック回路470がコントローラ200の機能を果たす。すなわち、制御回路440がシーケンサ250及びホストインターフェース回路220としての機能を果たし、信号/CSによりホスト機器500からの命令を判別する。入出力制御回路460及びロジック回路470は、ホスト入出力回路210として機能する。レジスタ410及び420はレジスタ280及び290として機能し、特徴テーブルは、例えばステータスレジスタ410等に保持される。
また、上記実施形態で説明したメモリシステムは、例えばテレビやセットトップボックス等のアプリケーションを起動するために用いることも出来る。図24はそのようなシステムの例を示す。本例であると、メモリシステム1の他に、NOR型フラッシュメモリ2が用意され、メモリシステム1及びNOR型フラッシュメモリ2は、共に共通にSPIインターフェースによって接続される。本例では、メモリシステム1を制御するためのコマンド(コマンドCMD_RD1、CMD_RD2、CMD_GF、CMD_SF等)がNOR型フラッシュメモリ2に保持されている。そして、ホスト機器500起動時に、ホスト機器500内のROMの保持するシーケンスによって、ホスト機器500はNOR型フラッシュメモリ2から上記コマンド情報を読み出す。そして、このコマンド情報を用いて、ホスト機器500はメモリシステム1から起動シーケンスを読み出し、これを実行してアプリケーションが起動される。
あるいは、ホスト機器500のROM内にメモリシステム1のコマンド情報が保持されていれば、図25に示すようにNOR型フラッシュメモリ2が廃されても良い。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1…メモリシステム、100…NAND型フラッシュメモリ、200…コントローラ、210…ホスト入出力回路、220…ホストインターフェース回路、230…NANDインターフェース回路、240…NAND入出力回路、250…シーケンサ、260,270…データバッファ、280,410…ステータスレジスタ、290,420…アドレスレジスタ、400…ECC回路、300…リードフレーム、340…ボンディングワイヤ、350…封止樹脂、430…コマンドレジスタ、440…制御回路、450…電圧発生回路、460…入出力制御回路、470…ロジック回路、480…データレジスタ、500,900…ホスト機器、600…周辺回路、700…テスト回路、710…データ入力部、720…データ出力部、730…データ入出力部、740…データラッチ部、800…外部接続端子(外部接続ピン)。

Claims (14)

  1. メモリと、
    前記メモリのピン数よりも少ないピン数を有し、ホスト機器が接続可能な端子と、
    前記メモリの単体テストに使用され、前記ホスト機器が扱う信号と前記メモリが扱う信号との間の信号変換を行う回路と、
    前記端子を介して前記ホスト機器と接続される第1のインタフェース部と、
    前記メモリと接続される第2のインタフェース部と、
    を具備するメモリシステムにおいて、
    複数の動作モードとして、前記回路を使用しないで通常の動作を行う通常動作モードと、前記回路を使用して前記メモリの単体テストを行うテストモードとを有し、
    前記ホスト機器から前記端子の所定のピンを通じて前記第1のインタフェース部に供給されるデータのデータフォーマットは、前記第2のインタフェース部に供給される情報を含む複数のビットを有し、当該複数のビットは所定の位置に第1のビットと第2のビットとを備え、
    前記第1のビット及び前記第2のビットがそれぞれ予め定められた値を示すか否かに応じて、前記テストモードと前記通常動作モードとの間の遷移が行われるように構成されている、
    ことを特徴とするメモリシステム。
  2. 前記ホスト機器が扱う信号はシリアル信号であり、前記メモリが扱う信号はパラレル信号である
    ことを特徴とする請求項1に記載のメモリシステム。
  3. 前記回路は、
    前記ホスト機器から前記端子経由で送信されてくるシリアルデータをパラレルデータに変換して前記メモリ側へ送出する第1の回路部分と、
    前記メモリから送信されてくるパラレルデータをシリアルデータに変換して前記端子側へ送出する第2の回路部分と、
    を含むことを特徴とする請求項1又は2に記載のメモリシステム。
  4. 前記メモリシステムは、前記端子の所定のピンを通じて入力されるデータが特定コマンドを示す情報を含んでいる場合に、前記通常動作モードから前記テストモードへと移行する
    ことを特徴とする請求項1乃至3のいずれか1項に記載のメモリシステム。
  5. 前記メモリシステムは、前記端子の所定のピンを通じて入力されるデータの中の前記第1のビット及び前記第2のビットがそれぞれ予め定められた値を示す場合に、前記テストモードから前記通常動作モードへと移行する
    ことを特徴とする請求項4に記載のメモリシステム。
  6. 前記テストモードは、前記ホスト機器からの第1のコマンドに従って前記メモリにデータを入力する第1モードと、前記ホスト機器からの第2のコマンドに従って前記メモリからデータを出力する第2モードとを含む
    ことを特徴とする請求項3乃至5のいずれか1に記載のメモリシステム。
  7. 前記回路は、前記端子の所定のピンを通じて入力される信号に従って前記第1モードと前記第2モードとを切り替える
    ことを特徴とする請求項6に記載のメモリシステム。
  8. 前記回路は、前記第1モード時には前記端子の所定のピンを通じてデータを入力し、前記第2モード時には前記端子の同一ピンを通じてデータを出力する
    ことを特徴とする請求項6又は7に記載のメモリシステム。
  9. 前記回路は、前記第1モード時に前記端子の所定のピンを通じて入力されるクロックに従って前記メモリ側へパラレルデータを送出する
    ことを特徴とする請求項6乃至8のいずれか1項に記載のメモリシステム。
  10. 前記回路は、前記第1モード時には前記端子の所定のピンを通じて入力される信号をライトイネーブル信号として前記メモリへ送出し、前記第2モード時には前記端子の同一ピンを通じて入力される信号をリードイネーブル信号として前記メモリへ送出することを特徴とする請求項6乃至9のいずれか1項に記載のメモリシステム。
  11. 前記端子のピン配置は、SPI(Serial Peripheral Interface)に準拠したピン配置である
    ことを特徴とする請求項1乃至10のいずれか1項に記載のメモリシステム。
  12. 前記端子は、
    前記ホスト機器からチップセレクト信号を受信可能な第1ピンと、
    前記ホスト機器へ第1信号を出力可能な第2ピンと、
    前記ホスト機器から第2信号を受信可能な第3ピンと、
    前記ホスト機器からクロックを受信可能な第4ピンと、
    を有することを特徴とする請求項1乃至11のいずれか1項に記載のメモリシステム。
  13. 前記回路は、第1半導体チップに実装され、
    前記メモリは、前記第1半導体チップと異なる第2半導体チップに実装される
    ことを特徴とする請求項1乃至12のいずれか1項に記載のメモリシステム。
  14. 前記回路及び前記メモリは、同一の半導体チップ内に実装される
    ことを特徴とする請求項1乃至12のいずれか1項に記載のメモリシステム。
JP2015169392A 2015-08-28 2015-08-28 メモリシステム Active JP6542075B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015169392A JP6542075B2 (ja) 2015-08-28 2015-08-28 メモリシステム
TW105103363A TWI612534B (zh) 2015-08-28 2016-02-02 記憶體系統
US15/062,018 US9959937B2 (en) 2015-08-28 2016-03-04 Memory system including test circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015169392A JP6542075B2 (ja) 2015-08-28 2015-08-28 メモリシステム

Publications (2)

Publication Number Publication Date
JP2017045498A JP2017045498A (ja) 2017-03-02
JP6542075B2 true JP6542075B2 (ja) 2019-07-10

Family

ID=58096643

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015169392A Active JP6542075B2 (ja) 2015-08-28 2015-08-28 メモリシステム

Country Status (3)

Country Link
US (1) US9959937B2 (ja)
JP (1) JP6542075B2 (ja)
TW (1) TWI612534B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017106713A1 (de) * 2016-04-20 2017-10-26 Samsung Electronics Co., Ltd. Rechensystem, nichtflüchtiges Speichermodul und Verfahren zum Betreiben einer Speichervorrichtung
CN108919006A (zh) * 2018-07-12 2018-11-30 长江存储科技有限责任公司 接口扩展模组、老化测试系统、老化测试方法及存储介质
US10867689B2 (en) 2019-02-12 2020-12-15 Micron Technology, Inc. Test access port architecture to facilitate multiple testing modes
JP2021047699A (ja) * 2019-09-19 2021-03-25 東芝情報システム株式会社 フラッシュメモリ評価装置及びその方法
US11417372B2 (en) * 2020-03-06 2022-08-16 Micron Technology, Inc. Interface protocol configuration for memory
US11182312B2 (en) * 2020-04-02 2021-11-23 Micron Technology, Inc. Memory sub-system manufacturing mode
US12112816B2 (en) * 2023-01-10 2024-10-08 Silicon Motion, Inc. Flash memory scheme capable of controlling flash memory device automatically generating debug information and transmitting debug information back to flash memory controller with making memory cell array generating errors
US12105958B2 (en) 2023-01-10 2024-10-01 Silicon Motion, Inc. Flash memory scheme capable of controlling flash memory device automatically generating debug information and transmitting debug information back to flash memory controller without making memory cell array generating errors

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4083944B2 (ja) * 1999-12-13 2008-04-30 東芝マイクロエレクトロニクス株式会社 半導体記憶装置
JP2002323993A (ja) 2001-04-25 2002-11-08 Nec Corp シングルチップマイクロコンピュータ並びにその試験方法及び試験プログラム
JP2006085769A (ja) 2004-09-14 2006-03-30 Toshiba Corp 半導体装置及びその自己テスト方法
JP2006172623A (ja) * 2004-12-16 2006-06-29 Matsushita Electric Ind Co Ltd 半導体装置
US7574638B2 (en) * 2005-02-03 2009-08-11 Samsung Electronics Co., Ltd. Semiconductor device tested using minimum pins and methods of testing the same
US7831882B2 (en) * 2005-06-03 2010-11-09 Rambus Inc. Memory system with error detection and retry modes of operation
EP1764803A1 (en) * 2005-09-09 2007-03-21 STMicroelectronics S.r.l. Memory architecture with serial peripheral interface
JP2007172759A (ja) 2005-12-22 2007-07-05 Oki Electric Ind Co Ltd 読み出し専用記憶装置、そのテスト方法及びその製造方法
JP2007272635A (ja) * 2006-03-31 2007-10-18 Toshiba Corp メモリシステム及びコントローラ
JP2008190975A (ja) * 2007-02-05 2008-08-21 Yokogawa Electric Corp 半導体試験装置
US8429329B2 (en) * 2007-10-17 2013-04-23 Micron Technology, Inc. Serial interface NAND
JP2009099202A (ja) * 2007-10-17 2009-05-07 Toshiba Corp 半導体記憶装置
US8102710B2 (en) 2007-10-17 2012-01-24 Micron Technology, Inc. System and method for setting access and modification for synchronous serial interface NAND

Also Published As

Publication number Publication date
US9959937B2 (en) 2018-05-01
TWI612534B (zh) 2018-01-21
JP2017045498A (ja) 2017-03-02
TW201711028A (zh) 2017-03-16
US20170062077A1 (en) 2017-03-02

Similar Documents

Publication Publication Date Title
JP6542075B2 (ja) メモリシステム
JP6527054B2 (ja) メモリシステム
US10445174B2 (en) Memory device that communicates error correction results to a host
JP6542076B2 (ja) メモリシステム
US10353852B2 (en) Memory system that stores data redundantly
US10732863B2 (en) Memory system storing block protection information
US9747994B2 (en) Memory system
US9728275B2 (en) Memory system that handles access to bad blocks
US10235070B2 (en) Memory system having a semiconductor memory device with protected blocks
US10884668B2 (en) Memory system
TWI640015B (zh) Memory system
JP2018073438A (ja) 半導体記憶装置
US9620230B2 (en) Memory device that performs an advance reading operation

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20170525

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170802

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180807

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20180831

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190402

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190415

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190612

R150 Certificate of patent or registration of utility model

Ref document number: 6542075

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350