Flash テスト学習#
参考文献:
[1] 杨超,张金凤,马成英.NAND FLASH テストデザインと使用に関する考察 [J]. 電子世界,2018,No.551 (17):116-118.DOI:10.19353 /j.cnki.dzsj.2018.17.063.
NAND FLASH は非揮発性メモリであり、基本的なストレージユニットはブロックであり、各ブロックは複数のページで構成されています。その中で、最小の読み書き単位はページであり、最小の消去単位はブロックです。ページのプログラミングを行う前に、そのページが含まれるブロックをまず消去する必要があります。NAND FLASH は出荷時にわずかな不良ブロックが存在し、メーカーはこれらの不良ブロックをマークしており、ユーザーが使用中にこれらを識別できるようにしています。テストや使用中にも新たな不良ブロックが発生する可能性があり、部品の信頼性機関はこれらの不良ブロックを識別し、書き戻す必要があります。ユーザーは不良ブロックを管理してスキップし、データの損失を防ぐために不良ブロックを回避する必要があります。NAND FLASH の主要なサプライヤーは SAMSUNG と MICRON の 2 社であり、内部構造はほぼ同じで、16 ビットと 8 ビットの 2 種類のデータ形式に分かれています。アドレスライン、データライン、コマンドラインはタイムマルチプレクスされ、シリアル動作モードであり、特定の制御コマンドを実行するために特定の制御コマンドが必要です。この記事で選択した MT-29F64G08AJABAWP-IT は 16384 個のブロック、各ブロックは 128 個のページで構成され、各ページには(4096+224)バイトが含まれており、そのうち 224 バイトは設定情報を保存するために使用されます。総容量は 64GB で、データの保存形式は 8 ビットです。TSOP パッケージのデバイスには 48 本のピンがあり、8 つのマルチプレクスされた IO ポートの他に、一部の制御ピンと電源ピンがあり、その他のピンはフローティングしている必要があります。
テスト時にはまずチップの ID を読み取り、技術マニュアルと比較し、一致する場合はテストを続行し、一致しない場合はチップが不適格であるため、テストを停止します。NAND FLASH は出荷時にわずかな不良ブロックが存在し、メーカーはこれらの不良ブロックをマークしています。つまり、このブロックの最初のページまたは 2 番目のページの最初の冗長バイトに 00 を書き込みます。テスト時には、まず各ブロックのこのバイトを判定する必要があります。00 の場合、このブロックは出荷時に不良ブロックとしてマークされていることを示し、不良ブロック数レジスタを 1 つ増やし、次のブロックにジャンプしてテストを続行します。この時、メーカーがマークした不良ブロックを消去しないように注意してください。なぜなら、消去操作はメーカーの不良ブロックのマークをクリアしてしまうからです。FF の場合、このブロックは出荷時には良好なブロックであり、テストが必要です。
テストプロセスでは、NAND FLASH のストレージアレイをブロックごとに検証します。テストプロセスには、ブロック全体の読み書きと消去が含まれます。出荷時にマークされていない不良ブロックが見つかった場合、テストシステムは不良ブロックのアドレスを保存します。全体のテストが完了した後、不良ブロックの数を統計し、技術マニュアルの要件を満たしている場合、チップは合格です。この時、出荷時にマークされていない不良ブロックが存在する場合、不良ブロックの情報を書き戻す必要があります。書き戻し方法は出荷時のマーク方法と同じであり、つまり、このブロックの最初のページまたは 2 番目のページの最初の冗長バイトに 00 を書き込むことで、ユーザーが一貫して識別できるようにします。
注意すべきは、上記の図では煩雑さを避けるため、1 つのテストパターンの読み書きと消去操作のみを図に示していますが、実際のテストプロセスでは、故障カバレッジと時間の複雑さを総合的に考慮して、どのようなテストアルゴリズムを選択するかを決定する必要があります。必要に応じて、複数のテストアルゴリズムを組み合わせてテストを行う必要があります。一般的に使用されるテストパターンアルゴリズムには、時間の複雑度が Nの全 0、全 1、ランダム、チェッカーボード、逆チェッカーボード、対角線などがあります。*時間の複雑度が N2*のステップ、ステップジャンプ、スキップなどのテストアルゴリズムもあります。異なるテストアルゴリズムは特定の故障を検出することができ、時間の複雑度が高いテストアルゴリズムは故障カバレッジが比較的高いです。
選択したチップはシリアル動作モードであり、8 ビットのデータポートで 64GB のストレージスペースをアドレス指定します。時間の複雑度が N のテストアルゴリズムを使用してチップ全体に書き込みを行うと、予想される時間は約 400 秒です。したがって、N2のテストアルゴリズムは故障カバレッジが比較的高いですが、量産品の信頼性機関には適していません。最終的には、全 0、ランダム、チェッカーボード、逆チェッカーボードなどの 4 つの N 型テストアルゴリズムを組み合わせてチップをテストすることにしました。これにより、固定 0、固定 1、アドレスデコードの故障、ショート、オープンなどの一般的なメモリ故障を検出し、テスト時間の許容範囲内で故障カバレッジを最大限に高め、不良チップを効果的に除外することができます。