説明

フラッシュメモリをテストするための方法、システム、および、コンピュータで読み取り可能なコード

【課題】フラッシュメモリ・ダイをテストするための方法、システムおよびデバイスを得る。
【解決手段】デバイス製造のポスト・ウェファ・ソート・ステージ中に、共通ハウジングに関連づけられたフラッシュコントローラ・ダイおよび少なくとも一つのフラッシュメモリ・ダイを各々が含む複数のフラッシュメモリ・デバイスを、例えば、バッチ・テスト・プロセスまたはマス・テスト・プロセス等のテスト・プロセスへ通す。テスト中、各フラッシュコントローラ・ダイ上に属するフラッシュコントローラが、各フラッシュ・デバイスの一つ以上のフラッシュメモリ・ダイの各々をテストするための、少なくとも一つのテスト・プログラムを実行する。少なくとも100個のフラッシュメモリ・デバイスおよびマス・テスト・ボードを含むテスト・システムを開示する。さらに、フラッシュコントローラが一つ以上のフラッシュメモリ・ダイをテストするよう作動可能なフラッシュメモリ・デバイスを開示する。模範的なテストは、不良ブロック・テストを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般的なフラッシュメモリ・デバイスの製造に関し、特に製造中にフラッシュメモリ・ダイをテストすることに関する。
【背景技術】
【0002】
(シングルビットおよびマルチビット・フラッシュメモリ・セル)
フラッシュメモリ・デバイスは、長年知られている。典型的に、フラッシュメモリ・デバイス内の各々のメモリ・セルは、1ビットの情報を記憶する。1ビットをフラッシュメモリ・セルに記憶する従来の方法は、メモリ・セルの二つの状態をサポートすることである。一方の状態が論理「0」を表し、他方の状態が論理「1」を表す。
【0003】
フラッシュメモリ・セルにおけるこの二つの状態は、セルのチャネル(セルのトランジスタのソース素子とドレイン素子とを結合する領域)の上方にフローティングゲートを設け、そのフローティングゲート内に蓄えられる充電量に対して二つの有効な状態を得ることによって実現している。典型的に、一方の状態は、フローティングゲートにゼロ電荷を持ち、消去後の書き込みのないセルの状態であり(一般的に、状態「1」を表す、と定義され)、そして、他方の状態は、フローティングゲートにいくらかの量の陰電荷を持つ(一般的に、状態「0」を表す、と定義される)。ゲートに陰電荷を持つことにより、セルのトランジスタのスレショルド電圧(すなわち、トランジスタを導通状態にさせるためにトランジスタの制御ゲートに印加しなければならない電圧)は、上昇する。したがって、セルのスレショルド電圧をチェックすることによって、記憶ビットを読み取ることが可能である。スレショルド電圧が高い状態であれば、ビット値は「0」であり、また、スレショルド電圧が低い状態であれば、ビット値は「1」である。実に、セルのスレショルド電圧を正確に読み取る必要はない。必要なすべてのことは、セルが現在二つの状態のいずれにあるのかを正しく認識することである。この目的では、セルのスレショルド電圧を、二つの状態の間に位置する基準電圧に比較し、セルのスレショルド電圧が基準値よりも低いのか、それとも高いのかを判定するだけで十分である。
【0004】
図1A(従来の技術)は、これがどのように機能するのかを視覚的に示す。具体的には、図1Aは、かなりの数のセルにおけるスレショルド電圧の分布を表している。フラッシュ・デバイスのセルは、(例えば、けい素構造内の不純物濃度あるいは欠陥における多少の相違から)それらの特徴および作用が必ずしも同一ではないため、すべてのセルに対して同じプログラミング・オペレーションを適用しても、セルのすべてが必ずしも同じスレショルド電圧を持つようになるわけではない。その代わり、スレショルド電圧は、図1Aに示すように分布する。値「1」を記憶しているセルは、典型的に負のスレショルド電圧を持ち、ほとんどのセルが、図1Aの左側ピーク(ラベル1)の中央電圧値に近いスレショルド電圧を持つ。そして少数のセルが、左側ピークの中央電圧よりも低い、あるいは高いスレショルド電圧を持つ。同様に、値「0」を記憶しているセルは、典型的に正のスレショルド電圧を持ち、ほとんどのセルが、図1Aの右側ピーク(ラベル0)の中央電圧に近いスレショルド電圧を持つ。そして少数のセルが、右側ピークの中央電圧よりも低い、あるいは高いスレショルド電圧を持つ。
【0005】
近年、「マルチレベル・セル」(MLC)を採用した、新しい種類のフラッシュ・デバイスが市場に出回ってきている。セルにつきシングルビットを持つフラッシュメモリも上述のように2レベルを用いるので、この用語「マルチレベル・セル」は、まぎらわしいものとなっている。したがって、用語「シングルビット・セル」(SBC)は、以下、2レ
ベルのメモリ・セルに言及するのに用い、そして、用語「マルチビット・セル」(MBC)は、以下、2を超えるレベル、すなわち、1セルにつき複数ビットのメモリ・セルに言及するのに用いる。現在最も一般的なMBCフラッシュメモリは、1セルにつき2ビットを持つものであるため、そのようなMBCメモリを用いる例を、下記に挙げる。しかし、理解すべきことは、本発明が、セルにつき2ビットを超えるものをサポートするフラッシュメモリ・デバイスにも等しく適用できることである。2ビットの情報を記憶している単一のMBCセルは、四つの異なる状態のうちの一つにある。セルの「状態」が、そのセルのスレショルド電圧によって表されるため、一つのMBCセルは、そのセルのスレショルド電圧に対して、四つの異なる有効な範囲をサポートする。図1B(従来の技術)は、セルにつき2ビットの典型的なMBCセルに対するスレショルド電圧分布を示す。予想通り、図1Bには、各々が一つの状態に対応する四つのピークがある。SBCの場合と同様、各々の状態は、実際には電圧範囲であり、単一の電圧ではない。セルの内容を読み取るとき、セルのスレショルド電圧を、一つの限定電圧範囲内に正しく識別しなければならない。MBCフラッシュ・デバイスの従来の技術による例については、ハラリ氏の米国特許第5,434,825号を参照する。これは、すべての目的のために、参照により本文に完全に記述したものとする。
【0006】
例えば四つの状態でのMBCオペレーションに設計されるセルは、典型的に、二つの状態を持つSBCセルとして作動可能である。例えば、すべての目的のために参照により本文に完全に記述したものとする、コンリー氏らの米国特許第6,426,893号は、同じデバイス内にMBCおよびSBCモードの両方を採用し、デバイスの特定な部分を選択して最高密度のMBCモードで作動させる、また、他の部分をSBCモードで用いて、より良好な性能を提供することを開示している。
【0007】
MBCデバイスは、有意なコスト優位性を提供する。セルにつき2ビットを持つMBCデバイスは、シリコン・ウェファに関して、同容量のSBCの半分の領域で済む。しかし、MBCフラッシュを用いることには欠点もある。MBCメモリにおける平均読み取りおよび書き込み時間は、SBCメモリのそれよりも長いため、MBCメモリは性能が悪い。また、MBCの信頼性は、SBCのそれよりも低い。MBCのスレショルド電圧範囲の区別は、SBCのそれよりも非常に小さい。したがって、SBCでは二つの状態間に大きなギャップが存在するために取るに足らないスレショルド電圧への障害(例えば、スレショルド電圧ドリフトを起こす蓄積電荷のリーク、または近隣の作動セルからの干渉)が、MBCセルでは一つの状態からもう一つの状態への移行となり、エラー・ビットを生じることになる。最終結果として、MBCセルは、データ保持時間、あるいは多くの書き込み消去サイクルへのデバイスの耐久度に関して性能仕様が低い。
【0008】
SBCデバイスに比べてMBCデバイスの信頼性が低いことによるもう一つの影響として、エラー訂正の要求レベルがある。SBC・NANDフラッシュ・デバイスのメーカは、典型的に、各ページ512バイトのデータにおいて1ビット・エラーを訂正することが可能なエラー訂正コード(ECC)を適用するようにユーザに勧める。しかし、MBC・NANDフラッシュ・デバイスのデータ・シートは、典型的に、各ページ512バイトのデータにおいて4ビット・エラーを訂正することが可能なECCを適用することを勧める。例えば「大きなブロック・デバイス」として知られるNANDデバイスの場合などは、2048バイト・サイズのページに対しては、ページの512バイトの各部分につきエラー訂正を適用することを提案している。本発明は、ページサイズに関わらず、色々様々なフラッシュ・デバイスに適用できる。本出願において、用語「NビットECC」は、512バイトが、1ページ、1ページ未満、あるいは複数ページのサイズであるかどうかに関わらず、512バイトのデータにおいてNビット・エラーを訂正することが可能なECCスキームに言及する。
【0009】
(フラッシュメモリ・ダイのテスト)
フラッシュメモリ・ダイは、製品内に使用する前に、広範囲なテストが必要である。これは、NANDフラッシュについては特にそうである。この一つの理由としては、フラッシュ・デバイスが、使用すべきでない不良ブロックを含むことが考えられる。ブロックは、単一の消去オペレーションで消去可能な、セルの最小塊であり、典型的に、多数のページを含む。そして、ページは、単一の書き込みオペレーションで書き込みが可能な、セルの最小塊である。ブロックをすべて「1」の状態へ確実に消去することができない、またはブロックの一つ以上のページを確実にプログラムすることができない場合、そのブロックは、ダイを物理的に加工して別のブロックで置換すべき、またはデバイスへ書き込むソフトウェアがそれを使用しないよう、不良ブロックと標識すべきである。
【0010】
任意のフラッシュメモリ・ダイに対しては、他のテストも行ってよいが、不良ブロックに対するテストが、典型的に最も時間を要する。これは、不良ブロックに対するテストが、典型的に、デバイスの各ページへの書き込み、そして各ブロックの消去を必要とするためである。書き込みおよび消去は、典型的に、不良ブロック・テストを、異なるパターンの書き込みデータの下で、異なる温度の下で、またはテスト・パラメータの他のバリエーションの下で行うために、複数回繰り返す。
【0011】
(製造におけるウェファ・ソート・ステージ中のテスト)
いくつかのケースでは、ダイが、まだ製造されたシリコン・ウェファの一部であり、ウェファが複数のダイへ分けられる前に、フラッシュメモリ・ダイの完全なテストを完了させる。このステージは、典型的に、「ウェファ・ソート」ステージと呼ぶ。ウェファ・ソート・ステージでテストを完了したダイは、典型的に、「良いと分かったダイ」(「KGD」)と呼ぶ。フラッシュメモリ・ダイが、マイクロプロセッサ等の高価な第二のダイと共にマルチチップ・パッケージ(「MCP」)へ組み入れられる場合には、KGDフラッシュメモリ・ダイの使用が有利である。MCP組み立ての前にメモリ・ダイを完全にはテストしない場合は、メモリとマイクロプロセッサとを一緒に一つのデバイス内へ組み入れた後にテストを完了させることになる。そしてMCPステージ・テストでメモリ・ダイのいくつかに欠陥があると分かった場合、それらのMCPデバイスは廃棄しなければならない。これは、(とにかく廃棄されるであろう)メモリ・ダイのみの損失ではなく、高価なマイクロプロセッサ・ダイ、そしてパッケージングコストの損失となる。
【0012】
しかしながら、KGDフラッシュメモリ・ダイを製造することは、単純ではない。ウェファ・ソート・ステージのために使用するテスト装置は、複雑で高価であり、そのような装置を長時間のテストに用いることは、テストの費用を高くする。また、不良ブロック・テストは、ウェファ・ソート・ステージで、多くのダイに対して平行にテストを実行するのには余り適していない。ウェファ内のすべてのテスト・ダイが、正確に同じテスト・シーケンスを通過し、そのテスト結果が、各々のダイに対する「進行あるいは停止」決定となる典型的な信号タイミング・テストとは異なり、不良ブロック・テストでは、各々のダイは、異なる位置に不良ブロックを持つことがあり、テスト中に異なるタイミングを示すこともあるため、テスト装置は、各ダイを別々に処理すべきである。このことは、ウェファ・ソート・ステージでの不良ブロック・テストをさらに複雑にし、よりコスト高にする。
【0013】
もう一つの要因は、ウェファ・ソート・ステージでの不良ブロック・テストのコストをさらに上げるため、より深刻である。多くのフラッシュメモリ・メーカは、テストを、室温とは異なる温度で行うよう要求する。このことは、ウェファ・ソート・テスト装置が、テスト・ウェファを特定な温度に維持している間にテストを実行すべきであることを意味する。このことは、テスト装置のコストを増大させるため、結果として、ダイ毎のテスト
経費が増加することになる。
【0014】
(製造中の、パッケージされたデバイス内におけるフラッシュメモリ・ダイのテスト)
上記の理由で、ほとんどのフラッシュメモリ・ダイは、KGDとしては製造されていない。その代わり、フラッシュ・デバイスのテストは、二つの部分に分かれている。ウェファ・ソート・ステージでは、明らかに悪い、すぐに廃棄すべきダイを識別するという目標で、最小のテストのみを行う。それから、ウェファを別々のダイへ切断し、各ダイを、販売時のタイプのデバイス・パッケージ内へ包装する。NANDフラッシュ・デバイスに対しては、これは、典型的に、TSOP、BGAまたはLGAパッケージである。これらは、一般的に、電子機器およびプリント回路基板(PCB)内に用いられるパッケージである。時間のかかる不良ブロック・テストを含む残りのテストは、製造の後のステージ(すなわち、ウェファ・ソート・ステージの後)で、パッケージ・フラッシュ・デバイスに対して行う。したがって、パッケージ・デバイスは、(デバイス製造施設内の)テスト基板上にインストールしてから、残りのテストを実行する。パッケージ・デバイスをテストする場合、ウェファ内のダイへのアクセスが困難なウェファ・ソート・ステージとは異なり、フラッシュ・デバイスをうまい具合に取り扱ってインターフェイスすることができるので、ウェファ・ソーティングに必要とされるタイプのような、高価なプロービング装置の必要はない。
【0015】
しかしながら、たとえ便利なパッケージ内に包装されているとしても、NANDフラッシュ・デバイスを不良ブロックに関してテストすることは、非常にコスト高な作業である。その理由は、(上記に説明したように)各デバイスを個別に処理する必要があり、限られた数(典型的に、約100個)だけのデバイスを同時にテストできる、高価なメモリ・テスタを用いてテストを実行しなければならない、また、各デバイスに対するテスト時間がかなりのもので、テストのコストも相当なものになるためである。このことを、図2にブロック図として表す。
【0016】
したがって、図2に示すように、テストすべきフラッシュメモリ・デバイス110Aをメモリ・テスタ106へ接続する。フラッシュメモリ・デバイス110Aは、フラッシュコントローラ・ダイ102上に属する(プロセッサ104を含む)フラッシュコントローラと、一つ以上のフラッシュメモリ・ダイ100上に属する(複数のメモリ・セルを含む)フラッシュメモリとを含む。したがって、フラッシュコントローラおよびフラッシュメモリは、異なるダイ上にある。メモリ・テスタ106は、プロセッサ108を含み、テスト・プログラムを実行する(いくつかの例では、メモリ・テスタ106の不揮発性メモリ内にもテスト・プログラムが記憶される)。フラッシュメモリ・ダイ100(例えば、フラッシュメモリ・ダイ100の個々のメモリ・セル)をテストするよう作動可能なテスト・プログラムは、メモリ・テスタ内に属する汎用プロセッサ108によって実行する。 図2内に、テスト・プログラムを実行するプロセッサ108を、アスタリスクで標識している。単一のフラッシュメモリ・デバイスのみを図2に表しているが、(上記のように、典型的に約100個の)複数のデバイスを、一緒に一括で(すなわち、実質的に同時に)テストする、と理解すべきである。
【0017】
なお、一般に、MBCフラッシュ・デバイスのテストは、SBCフラッシュ・デバイスのテストよりも長時間を要する。これは、不良ブロック・テストについては特にそうである。その理由は、フラッシュオペレーション、特に書き込みオペレーションが、MBCフラッシュでは非常に遅いためである。不良ブロック・テストは、典型的にテスト中にデバイス内の各ページに複数回書き込むため、多くのそのようなオペレーションを必要とする。MBCフラッシュにおけるセル毎のビット数が多くなれば、書き込みオペレーションはより遅くなる。であるから、(すべてのデバイスが同数のセルを備えていると仮定すれば)SBCフラッシュ・デバイスのテストは、セルにつき2ビットのMBCフラッシュ・デバイスのテストよりも速く、セルにつき2ビットのMBCフラッシュ・デバイスのテストは、セルにつき4ビットのMBCフラッシュ・デバイスのテストよりも速い。これは、MBCデバイスの使用が増加していることを合わせて考えると、フラッシュテストのコストが増大していることを暗示している。
【0018】
したがって、費用効率が高い方式でフラッシュメモリ・デバイスをテストするためのシステムおよび方法を得ることは、非常に有利であろう。また、費用効果がよい方式でうまい具合にテストできる、新規のフラッシュメモリ・デバイスを得ることは非常に有利である。
【発明の概要】
【課題を解決するための手段】
【0019】
本発明のいくつかの局面は、前述の必要性を満たすことができる。
【0020】
いくつかの本発明の実施例によれば、今初めて開示するが、驚くべきことに、テスト装置からテストを切り離して、高価なメモリ・テスタを広範囲に使用する必要性を排除することによって、フラッシュメモリ・デバイスのテスト・コストを減少させることができる。特に、典型的に(すなわち、製造の『ポスト・ウェファ・ソート』ステージ中)前述のメモリ・テスタが実行するテスト・プログラムを、フラッシュ・デバイスのフラッシュコントローラによって実行するように構成することによって、これを達成してもよい。
【0021】
注目すべきことは、デバイス・テストが製造の一つの重要な工程であり、本発明の特定な実施例が提供する方法、システムおよびデバイスが、一般的にデバイス製造の費用、そしてデバイス製造の特にテスト・フェーズの費用を減少させるのに役立つことである。
【0022】
さて、次のことからなるデバイス製造の方法を初めて開示する。(a)複数のフラッシュメモリ・デバイスを製造すること。なお、各フラッシュメモリ・デバイスは、(i)少なくとも一つのフラッシュメモリ・ダイ上に属するフラッシュメモリ、そして(ii)少なくとも一つのフラッシュメモリ・ダイから分離したフラッシュコントローラ・ダイ上に属するフラッシュコントローラを含み、少なくとも一つのフラッシュメモリ・ダイとフラッシュコントローラ・ダイが、共通ハウジングに関連づけられている。そして(b)複数の製造したフラッシュメモリ・デバイスにテスト・プロセスを被験させること。各フラッシュメモリ・コントローラは、少なくとも一つのフラッシュメモリ・ダイの各々をテストするための、少なくとも一つのテスト・プログラムを実行する。
【0023】
いくつかの実施例によれば、テスト・プロセスはマス・テスト・プロセスである。
【0024】
いくつかの実施例によれば、フラッシュメモリ・デバイスにマス・テスト・プロセスを被験させることは、複数のフラッシュメモリ・デバイスを単一のテスト・ボードへ結合させること、そしてテスト・ボードを用いて、複数のフラッシュメモリ・デバイスへ電力を供給することを含む。
【0025】
いくつかの実施例によれば、本開示の方法は、さらに、次のステップからなる。c)テスト・プロセスの後、複数のフラッシュメモリ・デバイスをオリジナル装置として販売するステップ。
【0026】
いくつかの実施例によれば、フラッシュメモリ・デバイスの各々は、マルチチップ・パッケージとして製造される。
【0027】
いくつかの実施例によれば、フラッシュメモリ・デバイスの各々は、メモリ・カードとして製造される。
【0028】
いくつかの実施例によれば、フラッシュメモリ・コントローラおよびフラッシュメモリの各々は、一つの共通マルチチップ・パッケージ内に設けられる。
【0029】
いくつかの実施例によれば、各フラッシュメモリ・デバイスのフラッシュメモリの各々は、複数のフラッシュメモリ・ダイからなり、各フラッシュコントローラが、少なくとも一つのテスト・プログラムを実行することによって、これら複数のフラッシュメモリ・ダイの各々をテストする。
【0030】
いくつかの実施例によれば、各フラッシュメモリ・デバイスにおいて、フラッシュコントローラと少なくとも一つのフラッシュメモリ・ダイの各々は、一つの共通プリント回路基板上に設けられる。
【0031】
いくつかの実施例によれば、各フラッシュメモリ・デバイスにおいて、少なくとも一つのテスト・プログラムは、フラッシュコントローラの不揮発性メモリ内に少なくとも部分的に属する。
【0032】
いくつかの実施例によれば、各フラッシュメモリ・デバイスにおいて、テスト・プログラムは、フラッシュメモリ内に少なくとも部分的に属する。
【0033】
いくつかの実施例によれば、フラッシュコントローラの各々が実行する少なくとも一つのテスト・プログラムが、各フラッシュメモリ内の不良ブロックを識別する。
【0034】
いくつかの実施例によれば、フラッシュコントローラの各々が実行する少なくとも一つのテスト・プログラムが、フラッシュメモリの各々の多数のメモリ・セルに対して不良ブロック・テストを実行する。
【0035】
いくつかの実施例によれば、フラッシュコントローラの各々が実行する少なくとも一つのテスト・プログラムが、フラッシュメモリの各々の大多数のメモリ・セルに対して不良ブロック・テストを実行する。
【0036】
いくつかの実施例によれば、フラッシュコントローラの各々が実行する少なくとも一つのテスト・プログラムが、フラッシュメモリの各々の実質的にすべてのメモリ・セルに対して不良ブロック・テストを実行する。
【0037】
いくつかの実施例によれば、フラッシュコントローラの各々が実行する少なくとも一つのテスト・プログラムが、セルにつき複数ビットのモードにある各フラッシュメモリのメモリ・セルをテストする。
【0038】
いくつかの実施例によれば、少なくとも一つのテスト・プログラムの実行は、以下のことを含む。i)フラッシュメモリ・オペレーション中にエラー訂正が成功しているかどうかを判定すること。そしてii)判定がエラー訂正の失敗を示す場合にテスト不良を記録すること。
【0039】
さて、次のものからなるテスト・システムを今初めて開示する。a)複数の、少なくとも100個のフラッシュメモリ・デバイス。なお、各フラッシュメモリ・デバイスは、少なくとも一つのフラッシュメモリ・ダイ上に属するフラッシュメモリと、少なくとも一つのフラッシュメモリ・ダイから分離したフラッシュコントローラ・ダイ上に属するフラッ
シュコントローラを含み、少なくとも一つのフラッシュメモリ・ダイとフラッシュコントローラ・ダイが、各々、一つの共通ハウジングに関連づけられており、フラッシュメモリ・コントローラの各々が、少なくとも一つのフラッシュメモリ・ダイの各々をテストするための、少なくとも一つのテスト・プログラムを実行するよう作動可能である。そしてb)フラッシュメモリ・デバイスへ電力を供給するように構成した、少なくとも100個のポートを持つマス・テスト・ボード。この場合、各ポートが、各々、フラッシュメモリ・デバイスへ電力を供給する。
【0040】
いくつかの実施例によれば、フラッシュコントローラの各々が実行する少なくとも一つのテスト・プログラムが、フラッシュメモリの各々の多数のメモリ・セルに対して不良ブロック・テストを実行するよう作動可能である。
【0041】
いくつかの実施例によれば、フラッシュコントローラの各々が実行する少なくとも一つのテスト・プログラムが、フラッシュメモリの各々の大多数のメモリ・セルに対して不良ブロック・テストを実行するよう作動可能である。
【0042】
いくつかの実施例によれば、フラッシュコントローラの各々が実行する少なくとも一つのテスト・プログラムが、フラッシュメモリの各々の実質的にすべてのメモリ・セルに対して不良ブロック・テストを実行するよう作動可能である。
【0043】
いくつかの実施例によれば、システムは、複数の少なくとも100個のフラッシュメモリ・デバイスを実質的に同時にテストするよう作動可能である。
【0044】
さて、次のものからなるフラッシュメモリ・デバイスを初めて開示する。a)少なくとも一つのフラッシュメモリ・ダイ上に属するフラッシュメモリ。そしてb)少なくとも一つのフラッシュメモリ・ダイから分離したフラッシュコントローラ・ダイ上に属するフラッシュコントローラ。この場合、i)フラッシュメモリおよびフラッシュコントローラが、一つの共通ハウジングに関連づけられており、そしてii)フラッシュコントローラが、少なくとも一つのフラッシュメモリ・ダイを所定回数だけテストするための、少なくとも一つのテスト・プログラムを実行するように構成されている。
【0045】
さて、次のものからなるフラッシュメモリ・デバイスを初めて開示する。a)少なくとも一つのフラッシュメモリ・ダイ上に属するフラッシュメモリ。そしてb)少なくとも一つのフラッシュメモリ・ダイから分離したフラッシュコントローラ・ダイ上に属するフラッシュコントローラ。この場合、i)フラッシュメモリおよびフラッシュコントローラが、一つの共通ハウジングに関連づけられており、そしてii)フラッシュコントローラが、少なくとも一つのフラッシュメモリ・ダイをテストして少なくともいくつかのテスト結果をフラッシュメモリ内に記録するための、少なくとも一つのテスト・プログラムを実行するように構成されている。
【0046】
さて、次のものからなるフラッシュメモリ・デバイスを初めて開示する。a)少なくとも一つのフラッシュメモリ・ダイ上に属するフラッシュメモリ。そしてb)少なくとも一つのフラッシュメモリ・ダイから分離したフラッシュコントローラ・ダイ上に属するフラッシュコントローラ。この場合、i)フラッシュメモリおよびフラッシュコントローラが、一つの共通ハウジングに関連づけられており、そしてii)フラッシュコントローラが、フラッシュメモリの多数のメモリ・セルに対して不良ブロック・テストを実行するように構成されている。
【0047】
これらの実施例および他の実施例を、以下で詳細に説明する。
【図面の簡単な説明】
【0048】
【図1A】かなりの数のメモリ・セルにおけるスレショルド電圧の分布を表すグラフである(従来の技術)。
【図1B】かなりの数のメモリ・セルにおけるスレショルド電圧の分布を表すグラフである(従来の技術)。
【図2】従来の技術による、フラッシュメモリ・デバイスをテストするためのシステムを表すブロック図である。
【図3】本発明の模範的な実施例による、フラッシュメモリ・デバイスをテストするためのシステムを表すブロック図である。
【発明を実施するための形態】
【0049】
さて、本発明を、特定な実施例に関して説明する。本発明が、開示の実施例に限らないことを理解すべきである。また、フラッシュメモリ・デバイスの製造方法、フラッシュメモリ・デバイスをテストするためのシステム、そして記載のフラッシュメモリ・デバイスのすべての特徴が、添付の請求項の特定な一つに記載の発明を実現するのに必要であるというわけではないことも理解すべきである。発明を完全に具現できるよう、デバイスの種々の素子および特徴を説明する。また、プロセスまたは方法を示すあるいは説明するこの開示を通して、一つのステップが、もう一つのステップが先に実行されることに依存することが文脈から明白でない限り、方法のステップは、どの順序で実行しても、あるいは同時に実行してもよい、と理解すべきである。
【0050】
(フラッシュメモリ・デバイス110およびテスト・システム)
図3を参照する。注目すべきは、本発明の実施例が、フラッシュメモリ・デバイス110Bのフラッシュメモリ・ダイ100のテストに関するということである。テスト中、フラッシュメモリ・デバイス110Bを、(例えば、データを交換し合う、および/またはパワーを受けるために)『マス』テスト・ボード114へ取り外し可能に接続してもよい。典型的に、各マス・テスト・ボードは、複数(例えば、少なくとも100、または少なくとも200、あるいは少なくとも500)のフラッシュメモリ・デバイス110Bに結合するための、『かなりの』数(例えば、少なくとも100、または少なくとも200、あるいは少なくとも500)のポートを含む。多数のデバイスを実質的に同時にテスト可能な『マス』テスト・ボード114を使用することによって、その規模の大きさから、デバイス製造のテスト・ステージに関わるコストを減少させることができる。
【0051】
フラッシュメモリ・デバイス110Bは、一つ以上のフラッシュメモリ・ダイ100上に属するフラッシュメモリ(なお、各フラッシュメモリ・ダイ100は、複数のフラッシュメモリ・セルを持つ)と、フラッシュメモリ・ダイ102から分離した、フラッシュコントローラ・ダイ102上に属するフラッシュコントローラを含む。フラッシュコントローラは、例えば、フラッシュ・セルからデータを読み取る、および/またはフラッシュ・セルへデータを書き込むよう作動可能である。フラッシュコントローラの他の模範的な機能は、エラー検出や訂正、そして別個のデバイス(例えばマイクロコンピュータ等のホスト・デバイス)が、フラッシュメモリ・ダイ100のメモリ・セルにアクセス(読み取りアクセスや書き込みアクセス)するための、(限定せずにNANDインターフェイスおよびUSBインターフェイスを含む)インターフェイスを提供することを含んでもよい。
【0052】
図3の図解では、フラッシュコントローラ102を、単一のフラッシュメモリ・ダイ100を制御してテストするように表している。しかし、本発明者は、(例えば、共通ハウジング112内に、あるいは共通ハウジング上に、すべて一緒にした)複数のフラッシュメモリ・ダイ100をテストするよう、フラッシュコントローラ102を構成する実施例も考えている。
【0053】
注目すべきことは、フラッシュメモリ・デバイス110Bの各フラッシュメモリ・ダイは、フラッシュコントローラ・ダイ102と一緒に、「ハウジング」112に関連づけられている。一つ以上のダイが「ハウジング」に「関連づけられる」との本文で用いる表現は、ダイの各々が、(a)ハウジング内に属する、(b)ハウジング上に属する、(c)ハウジングに取り付けられる、または(d)それらの組み合わせであることを意味する。
【0054】
用語「ハウジング」は、マルチチップ・パッケージの包装(すなわち、フラッシュメモリ・ダイ100およびフラッシュコントローラ・ダイ102の両方が、一緒にマルチチップ・パッケージ内に属するという場所)と、プリント回路基板の基板(すなわち、フラッシュメモリ・ダイおよびフラッシュコントローラの両方が、一緒に同じプリント回路基板
上に属するという場所)との両方を含むことを意図している。
【0055】
共通ハウジング112内にフラッシュコントローラおよびフラッシュメモリ・ダイ100を一緒に含むことには、いくつかの理由がある。
【0056】
a.多くのアプリケーションでは、フラッシュ・デバイスをコントローラなしで作動させても役に立たないことがある。例えば、フラッシュ技術の信頼性が低いので、エラー率が高くなる場合。これは、セルにつき多数のビット、例えばセルにつき4ビット以上を記憶するMBCフラッシュ技術において起こることである。この場合、エラー数が多すぎて、ホストが読み取るデータは利用できないため、フラッシュ・デバイスをホスト・プロセッサへ直接的に結合することは無駄である。そこで、フラッシュ・デバイスとホストとの間に専用のフラッシュコントローラを結合して、コントローラによってエラー訂正コード・スキームを実現する。コントローラはホストへエラーのないフラッシュ・デバイスをエクスポートする。この場合、ホストは、エラーが発生しないならば独立型フラッシュ・デバイスにインターフェイスするのに用いたであろうと同じインターフェイスを用いてインターフェイスする。そのような構成が、本発明者の一人(ラッサー)が2006年1月6日に出願した米国特許出願第11/326,336号、名称「NANDインターフェイスをエクスポートするNANDフラッシュメモリ・コントローラ」に開示されている。この出願の開示は、すべての目的のために、参照により本文に完全に記述したものとする。コントローラ・ダイおよびフラッシュメモリ・ダイ(または複数のダイ)は、一緒にMCPデバイスとしてパッケージしてから、一つのコンポーネントとして販売できる。
【0057】
b.多くの場合、ホスト・プロセッサを、標準インターフェイスを用いてメモリ・デバイスへインターフェイスするのが便利である。例えば、ホスト・プロセッサはビルトインUSBインターフェイスを持つので、このインターフェイスを介してフラッシュメモリへアクセスすることが好ましい。フラッシュメモリは、プロセッサと同じ基板上にあってもよい、あるいは、イスラエル、クファル・サバのMシステムズ・フラッシュ・ディスク・パイオニア社が販売するディスク・オン・キーのようなUSBフラッシュドライブ(USB)等の、取り外し可能なメモリ・デバイス内にあってもよい。そのようなケースでは、ホスト・プロセッサとフラッシュメモリ・ダイ(または複数のダイ)との間をUSBコントローラで連結する必要がある。USBコントローラは、適当なフラッシュ・インターフェイスを用いて、フラッシュ・デバイスにインターフェイスする、また、USBインターフェイスを用いてホストにインターフェイスする。ここでも、USBコントローラ・ダイおよびフラッシュメモリ・ダイは、一緒にMCPデバイスとしてパッケージし、一つのコンポーネントとして販売できる。
【0058】
(フラッシュメモリ・ダイのテスト)
フラッシュメモリ・ダイ100をコントローラ102に有効に連結した後、(例えば、ダイおよびコントローラを共通ハウジング112内へ組み入れた後)、コントローラ102の処理能力を有利に用いることが可能である。(特に、従来の技術によるメモリ・テスタ106のプロセッサ108を用いて)フラッシュメモリ・ダイのすべてのテストをテスト装置で実行する代わりに、これらのテストのいくつかまたはすべてを、フラッシュコントローラ・ダイ102上に属するフラッシュコントローラによって実行してもよい。したがって、図3に示すように、一つ以上のテスト・プログラムを実行するように構成したフラッシュコントローラ102のプロセッサ104をアスタリスクで標識している。
【0059】
フラッシュコントローラ102を用いて実行してもよいテストの一つの非限定的な例は、不良ブロック・テストである。このタイプのテストは、(電流あるいは電圧のような)アナログ信号または他の複雑なタスクのタイミングの測定を必要としない。不良ブロック・テストに必要なすべては、ブロックを消去するためにコマンドを出すこと、データを書
き込んで読み取ること、それから、読み取ったデータを書き込んだデータへ比較することである。これは、フラッシュコントローラで典型的に見られるタイプの単純なプロセッサの能力範囲内のものである。例えば、比較は、フラッシュコントローラのプロセッサ104の、例えばALUによって実行してもよい。
【0060】
典型的に、不良ブロック・テストを製造プロセス中に実行する場合、(単に代表的なサンプルをテストするのではなく)ほとんどの、あるいはすべてのフラッシュメモリ・セルをテストする。これは、高品質なフラッシュ・デバイスが出荷され、オリジナル装置として販売されることを保証する。
【0061】
したがって、種々の実施例においては、任意のフラッシュメモリ・ダイ100の大多数のブロックに対して、フラッシュコントローラ102によって実行するテスト・プログラムを用いて、不良ブロック・テストを行う。いくつかの実施例では、大多数(すなわち、任意のフラッシュメモリ・ダイ100のブロックの少なくとも75%)、または実質的にすべて(すなわち、任意のフラッシュメモリ・ダイ100のブロックの少なくとも90%)、または、任意のフラッシュメモリ・ダイのブロックのすべてに対して、フラッシュコントローラ102を用いて、不良ブロック・テストを行う。
【0062】
これまで、フラッシュメモリ・ダイの製造に時間的に近い段階でフラッシュメモリのテストを行うケースに関する実施例を説明したが、本発明は、このケースに限定されない。フラッシュメモリ・メーカは、MCPデバイスあるいは組み立てたメモリ・カードを販売する代わりに、二つの(またはそれ以上の)ダイ、すなわちコントローラ・ダイおよびフラッシュメモリ・ダイ(または複数のダイ)からなるチップセットを販売してもよい。チップセットは、一緒に用いることを意図した一組のダイである。チップセットの買い手は、それから、これらのチップをメモリ・カード上に、または別のタイプの製品内へ取り付ける。この場合、フラッシュのテストは、買い手の所で、組み立てたカードを初めて起動されたときに行われる。テスト後、チップセットの買い手は、組み立てたカードをオリジナル装置として販売してもよい。
【0063】
(マス・テスト・ボード114)
そのようなアレンジメント(すなわち、図3に説明するもの)のもう一つの利点は、テスト・ボードの構造にある。フラッシュ・デバイスは、コントローラで個々にテストするので、メモリ・テスタを用いる必要がない。このため、以下の利点がある。
− テスト・ボードは、多数(例えば、少なくとも100、または少なくとも200、あるいは少なくとも500)のデバイスを収容するように設計していてもよい。そしてマス・テスト・プロセスで、それらすべてを同時にテストする。本文で用いる『マス・テスト・プロセス』は、多数(例えば、少なくとも100、または少なくとも200、あるいは少なくとも500)のデバイスに対して、実質的に同時に実行できるバッチング・テスト・プロセスのことである。注目すべきことは、マス・テスト・プロセスによって、テスト・コストを減少できることである。
− テスト・ボードの複雑さを緩和させることも可能である。以上から、回路デザインおよび実施例へのきつい制約を持つメモリ・テスタへインターフェイスする代わりに、テスト・ボード114は、デバイスに、電力、そしてテスト・コントローラへの単純なインタフェースのみを提供するだけでよい(例えば、テスト・ボードのホストとしてパソコンを用いてもよい)。
【0064】
(フラッシュ・デバイスの製造、テストおよび出荷)
製造設備内での製造プロセス中にフラッシュ・デバイスをテストするための、本発明の典型的な実施例は、以下のステップを含む。
【0065】
a.複数のフラッシュメモリ・ダイを含むウェファを製造する。
b.ウェファ上でウェファ・ソート・テスト・ステージを行う。各々のダイに対して、基本的な「go/nogo」テストのみを行う。機能しないダイを不良と標識し、以降の処理から取り除く。
c.ウェファを複数のダイへ分断する。
d.フラッシュメモリ・ダイを、コントローラ・ダイとマッチさせて、マルチチップ・パッケージ(MCP)へ組み立てる。
e.MCPデバイスをテスト・ボード上にインストールして、テスト・ボードをテスト・セットアップ内へ入れ、そして、電力を加える。テスト・セットアップは、単純なステーション、例えばパソコン(PC)でもよい。
f.各MCPデバイス内では、コントローラが、典型的にコントローラ内のROMメモリからのコードを実行し始める。
g.各コントローラは、その対となっている、単数の、あるいは複数のフラッシュメモリ・ダイをテストする。見つかった不良ブロックを、フラッシュメモリ内の、関連ブロック内に、あるいはすべての不良ブロックの中央リスト内に記録する。不良ブロック・テストに加えて、他のテストをも実行してもよい。
h.テスト・ステーションは、各デバイスに対するテスト結果を、そのコントローラが報告するように読み取る。(例えば、あまりに多くの不良ブロックを持つために)機能しなかったデバイスを特定する。テストを通過したデバイスは、それらの仕様に応じて要求されるように、それらの不良ブロックを標識する。例えば、各不良ブロックを、その第一のページの特定なバイトに「0」を書き込むことによって標識してもよい。
【0066】
注目すべきことは、コントローラ102によるフラッシュメモリ・ダイ100のテストが、不良ブロックのテストに限らないということである。どのようなテスト(例えば、特殊装置を必要とせずにコントローラのプロセッサで簡単に実現できるテスト)をも実行してもよい。それによって、追加テストの経費を節約できる。
【0067】
製造設備でテストした後、いくつかの実施例では、フラッシュメモリ・デバイス110をオリジナル装置として出荷し、販売してもよい。このオリジナル装置は、共通ハウジング112内で、フラッシュメモリ・ダイ100のテスト・プログラムを実行するのに用いたフラッシュコントローラ102に有効に連結された、一つ以上のフラッシュメモリ・ダイ100を含む。ゆえに、いくつかの実施例では、製造設備からの発送の前に、上述のように、デバイスの不良ブロックの完全なテストを実行することが大切である。用語『オリジナル装置』は、これまで『エンド・ユーザ』に配付されたことのない電子製品を意味する。したがって、本文で用いる『オリジナル装置』は、『ユーザ・データ』(すなわち、フラッシュ・デバイスをテストする、および/またはフラッシュ・デバイスを構成することに関連してフラッシュメモリ・セルへ書き込まれるデータとは異なるデータ(つまり、フラッシュ・デバイスへの『プリローディング』ソフトウェア))が、これまで書き込まれたことのない装置に言及する。
【0068】
(フラッシュメモリ・ダイ100のメモリ・セルをテストするための、コンピュータで読み取り可能なコードの記憶)
注目すべきことは、フラッシュコントローラ102が実行するテスト・プログラムを、不揮発性メモリ、揮発性メモリ、および/あるいはそれらを組み合わせたものに記憶してもよいことである。したがって一つの例では、テスト・プログラムをコントローラ102内のROMに記憶する。もう一つの例によれば、テスト・プログラムをフラッシュ・デバイス内に記憶し、起動時にコントローラにテスト・プログラムをそのRAMへロードさせてから、それを実行させることが可能である。そのようなケースでは、テスト・プログラムを、ウェファ・ソート・ステージの終わりにフラッシュメモリ内へ書き込む。
【0069】
いくつかの実施例においては、デバイスの最初の起動時にのみコントローラ102がテストを実行するように、フラッシュメモリ・デバイス110を構成することが好ましい。これは、テスト・プログラムが、『完全な』あるいは『大規模な』(すなわち、フラッシュメモリ・ダイ100の少なくとも大多数のフラッシュメモリ・セルの)不良ブロック・テストを実行する指令を含むケースに対して特に好ましい。この目的のために、いくつかの実施例においては、一旦コントローラ102がテストを完了すると、コントローラ102がフラッシュメモリ内に(すなわち、フラッシュメモリ・ダイ100の一つ以上のメモリ・セル内に)、特定なテスト・ステージが既に完了したことを示すフラグをセットするようにデバイス110を構成する。デバイスの電源オンで、コントローラ102は、このフラグをチェックし(例えば、コントローラ102は、デバイス電源オン時に常にこのフラグをチェックする)、フラグがセットされていない場合にだけ、テスト・プログラムを実行する。
【0070】
本発明の特定な実施例が提供する方法は、不良ブロック・テスト等の時間のかかるテストを、従来の技術による方法とは異なり、単純で安い装置を用いて実行できるので、フラッシュメモリ・テストの費用を節約する。フラッシュ・デバイスが不良になってしまうと、付随するコントローラおよびパッケージのコストをも失うことになるが、テスト経費の節減はこの損失を十二分に補償する。
【0071】
(ECCの使用)
多くのデバイスにおいて、フラッシュコントローラ102ダイ上に属するフラッシュコントローラは、ECCを含む。したがって、いくつかの実施例においては、テスト中にECCを用いてもよい。例えば、ECCをテストに用いてもよい。そして、もしECCが、データの訂正に失敗したことを報告したら、テスト・プログラムは、テスト障害を報告する。多くの実施例において、これは、データの各々のビットをその「本当の」値に比較する必要性を不要にする。したがって、これらの実施例によれば、データ・ビットを比較することに時間を割かずに、ECC回路に「イエス/ノー」結果を問い合わせることが可能である。
【0072】
したがって、一つの例では、使用中のECCが二つのエラーを訂正することが可能であるため、ページ内における二つのビット・エラーの発生をページの不良と見なさないように決定してもよい。従来の技術によるテスト装置でそのような基準を実現することは、厄介で高価である。コントローラを用いてテストを実行すると、これは非常に単純になる。コントローラ102がフラッシュから読み取ったデータをコントローラに訂正させ、コントローラ102がエラー訂正に失敗した場合にだけ、不良を報告させる。
【0073】
(さらなる考察)
フラッシュメモリ・デバイスがSBCおよびMBCの両モードを採用しているために両モードをテストすべきいくつかの実施例においては、テスト・ステージ間でSBCおよびMBCテストを切り離してもよい。したがって、いくつかの例によれば、ウェファ・ソート・ステージにおけるフラッシュ・セルのテストは、高速オペレーションであるSBCモードのセルのテストを含む。比較的長時間のオペレーションであるMBCモードのフラッシュ・セルのテストは、MCPステージへと遅らせる。もちろん、他の分け方も可能である。例えば、ウェファ・ソート・ステージにおいて少ないサンプルのMBCテストを行い、そしてMCPステージで、MBCテストの大半を実行してもよい。
【0074】
注目すべきことは、本発明がMCPデバイスに限らないことである。本発明の範囲は、コントローラおよびフラッシュメモリを接続し、フラッシュメモリのテストを実行するためにコントローラを用いるどの方法をも含む。例えば、セキュアデジタル(「SD」)またはマルチメディア・カード(「MMC」)等の、メモリ・カードを製造する場合、単数
あるいは複数のフラッシュメモリ・デバイスとコントローラは、小さなカード上にインストールする。コンポーネントは、パッケージしたダイまたは裸のダイでもよい。この場合、カードはMCPに代わって共通『ハウジング』112として機能する。カードに電力を与えると、コントローラは、上述のようにフラッシュ・テスト・プログラムを実行する。
【0075】
NANDタイプ・フローティングゲート・フラッシュメモリ・デバイスを明示的に説明したが、本発明は、例えば、NORタイプ・フローティングゲート・フラッシュメモリまたはフローティングゲートを用いないNROMタイプ・フラッシュメモリ等の、他のどのフラッシュメモリ技術にも関連する。
【0076】
本出願の明細書および請求項における動詞「なる」、「含む」、「持つ」、そしてそれらの活用形の各々は、動詞の単数あるいは複数の目的語が、必ずしも、動詞の単数あるいは複数の主語の部材、コンポーネント、素子または部品の完全なリストであるというわけではないことを示すために用いている。
【0077】
すべての引用文献は、それらの全体が、参照により本文に取り入れられている。参照の引用は、その参照文献が従来の技術であるということを意味しない。
【0078】
本文において用いる冠詞「a」および「an」は、その冠詞に関する文法上の目的語が単数あるいは複数(すなわち、少なくとも一つ)であることに言及する。例証として、「素子」は、一つの素子または複数の素子を意味する。
【0079】
本文で用いる用語「含む」は、表現「限定せずに含む」を意味し、その表現と置換可能に用いている。
【0080】
本文で用いる用語「あるいは」、用語「および/あるいは」を意味し、文脈がそうでないと明確に示すことがない限り、それと置換可能に用いている。
【0081】
本文で用いる用語「例えば」は、表現「限定せずに例えば」を意味し、それと置換可能に用いている。
【0082】
本発明を、例証として提供したその実施例の詳細な説明を用いて説明したが、それらの実施例は、本発明の範囲を制限することを意図していない。説明した複数の実施例は、異なる特徴を持つが、それらのすべてが、本発明のすべての実施例に必要というわけではない。本発明のいくつかの実施例は、いくつかの特徴のみを、または特徴を組み合わせたものを利用している。同業者は、説明した本発明の種々の実施例、そして説明した実施例で注目した特徴の異なる組み合わせからなる本発明の実施例を思いつくであろう。

【特許請求の範囲】
【請求項1】
a)複数のフラッシュメモリ・デバイスを製造すること、
なお、前記フラッシュメモリ・デバイスの各々は、
(i)少なくとも一つのフラッシュメモリ・ダイ上に属するフラッシュメモリ、そして
(ii)前記少なくとも一つのフラッシュメモリ・ダイから分離したフラッシュコントローラ・ダイ上に属するフラッシュコントローラを含み、前記少なくとも一つのフラッシュメモリ・ダイと前記フラッシュコントローラ・ダイが、一つの共通ハウジングに関連づけられている、
b)前記複数の製造したフラッシュメモリ・デバイスにテスト・プロセスを被験させることからなるデバイス製造の方法であって、
前記フラッシュメモリ・コントローラの各々が、少なくとも一つの前記フラッシュメモリ・ダイをテストするために、少なくとも一つのテスト・プログラムを実行する、デバイス製造の方法。

【図1A】
image rotate

【図1B】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2012−146390(P2012−146390A)
【公開日】平成24年8月2日(2012.8.2)
【国際特許分類】
【出願番号】特願2012−48160(P2012−48160)
【出願日】平成24年3月5日(2012.3.5)
【分割の表示】特願2008−537314(P2008−537314)の分割
【原出願日】平成18年10月30日(2006.10.30)
【出願人】(502111536)サンディスク アイエル リミテッド (64)
【住所又は居所原語表記】Central Park 2000,Atir Yeda Street 7,44425 Kfar Sabad,Israel
【Fターム(参考)】