IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 東芝情報システム株式会社の特許一覧

特許7436901テスト用NAND装置及びNAND装置のデバッグ方法
<>
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図1
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図2
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図3
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図4
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図5
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図6
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図7
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図8
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図9
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図10
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図11
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図12
  • 特許-テスト用NAND装置及びNAND装置のデバッグ方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-02-14
(45)【発行日】2024-02-22
(54)【発明の名称】テスト用NAND装置及びNAND装置のデバッグ方法
(51)【国際特許分類】
   G06F 11/36 20060101AFI20240215BHJP
【FI】
G06F11/36 164
【請求項の数】 8
(21)【出願番号】P 2022164340
(22)【出願日】2022-10-12
【審査請求日】2023-02-20
(73)【特許権者】
【識別番号】391016358
【氏名又は名称】東芝情報システム株式会社
(74)【代理人】
【識別番号】100156199
【弁理士】
【氏名又は名称】神崎 真
(74)【代理人】
【識別番号】100124497
【弁理士】
【氏名又は名称】小倉 洋樹
(74)【代理人】
【識別番号】100074147
【弁理士】
【氏名又は名称】本田 崇
(72)【発明者】
【氏名】岩田 匡紀
【審査官】武田 広太郎
(56)【参考文献】
【文献】特開2020-154477(JP,A)
【文献】特開2021-163512(JP,A)
【文献】米国特許出願公開第2021/0224158(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/36
(57)【特許請求の範囲】
【請求項1】
メモリにNAND型フラッシュメモリを用いたSSD(Solid State Drive, SSD)により構成されるテスト用NAND装置において、
前記テスト用NAND装置に疑似エラーの発生を指示する疑似エラー発生指示手段と、
発生する前記疑似エラーの内容と範囲を指定するエラー内容・範囲指定手段と、
前記疑似エラー発生指示手段により疑似エラーの発生指示がなされ、前記エラー内容・範囲指定手段により発生する疑似エラーの内容と範囲の指定があると、この指示の内容と範囲に応じた疑似エラーを発生実行する疑似エラー発生実行手段と、
を具備することを特徴とするテスト用NAND装置。
【請求項2】
前記疑似エラー発生実行手段は、リードコマンドの発生に対して疑似リードエラーを発生させることを特徴とする請求項1に記載のテスト用NAND装置。
【請求項3】
前記疑似エラー発生実行手段は、リードコマンドの発生に対して疑似リードエラーを発生させる場合に所定回のリトライリードを繰返し実行することを特徴とする請求項2に記載のテスト用NAND装置。
【請求項4】
前記疑似エラー発生実行手段は、リトライリードを実行する際にリードエラーとするためのランダマイズキーを用いることを特徴とする請求項3に記載のテスト用NAND装置。
【請求項5】
コマンドが生成されてから当該コマンドに対応する結果を出すまでの過程において関わる複数のファームウェア機能のいずれか1つの機能を順次停止する動作を行わせる機能順次停止手段を備えることを特徴とする請求項4に記載のテスト用NAND装置。
【請求項6】
前記エラー内容・範囲指定手段は、発生する前記疑似エラーの内容と範囲について、複数候補を有し、外部からの指示の内容と範囲に応じた疑似エラーの内容と範囲を指定することを特徴とする請求項5に記載のテスト用NAND装置。
【請求項7】
前記疑似エラー発生実行手段はリード、ライト、イレーズを実行する際にエラーとなるフラグを用いることを特徴とする請求項1に記載のテスト用NAND装置。
【請求項8】
請求項1乃至7のいずれか1項に記載のテスト用NAND装置を用いてデバッグを行うことを特徴とするNAND装置のデバッグ方法。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、テスト用NAND装置及びNAND装置のデバッグ方法に関するものである。
【背景技術】
【0002】
現在、NANDフラッシュメモリ開発が多数国共同で進められている。このプロジェクトは、アメリカとイギリスの海外会社がFWやHardwareを抽象化したHardware Abstraction Layer(HAL)の設計・実装を担っている。一方、日本ではNANDの疲弊を抑える機能やNANDが疲弊しても正常なデータの読み書きを行うための機能の確認に特化したNAND信頼性テストの実施やFW不具合のデバッグ作業等を行い、海外開発チームの不具合改修をサポートしている。アメリカ、イギリス、日本の三者の作業範囲をまとめると図1のようになる。つまり、設計、実装、論理テストをアメリカとイギリスが担当し、テストを日本が担当し、実機テスト、デバッグをアメリカとイギリスと日本が担当している。
【0003】
前述のように、NAND信頼性テストの実施やデバッグ作業を行っているものの、開発したFWに、多くの不具合が検出され、修正が長期化し、エンドユーザへのFWリリースが遅延する事態も予想される。FWの不具合修正において不具合分析とデバッグ作業に時間を要することも気がかりである。このため、デバッグツールのスペックを向上させること、更に、特定条件や環境下で検出した不具合の再現を短時間で行うことが求められている。
【0004】
特に、NANDフラッシュメモリの場合には、リードエラーの発生が問題であり、応答性の悪化やNAND疲弊に関する状況を把握することが肝要である。
【0005】
上記のような課題に対し、応答性能の悪化を抑制したメモリシステムを提供することを目的として特許文献1に記載のものが知られている。
この特許文献1の実施形態によれば、メモリシステムは、不揮発性のメモリと、コントローラと、を備える。メモリは、複数の記憶領域を備える。複数の記憶領域のそれぞれは、データに応じてしきい値電圧が設定される複数のメモリセルを備える。コントローラは、複数の記憶領域のうちの第1の記憶領域が備える複数のメモリセルのしきい値電圧の分布である第1の分布を取得する。コントローラは、複数の記憶領域のうちの第2の記憶領域が備える複数のメモリセルのしきい値電圧の分布である第2の分布を取得する。コントローラは、第1の分布と第2の分布との乖離量である第1の乖離量に基づいて第1の記憶領域または第2の記憶領域の異常を検出する。
【0006】
また、ガベージコレクションという観点から問題を捕えたものが特許文献2に記載されている。即ち、この特許文献2のものは、ガベージコレクション時の消費電力を削減するものである。
この特許文献2の実施形態によるメモリシステムは、不揮発性メモリにおける各物理ブロックの疲弊度情報を管理する疲弊度管理部と、前記疲弊度管理部で管理されている各物理ブロックの前記疲弊度情報に基づいて、ガベージコレクションの対象とされた物理ブロックの有効クラスタから読み出されたデータに対する符号化・復号処理部による復号及び符号化の実行の有無を判定するガベージコレクション管理部と、を備える。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2021-149991号公報
【文献】特開2019-53415号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
上記のFILの機能別の不具合件数を整理したところ、Retry Read機能が大半を占めていることが判った。(図2)Retry Read機能とはNAND疲弊が進み正しいデータを一度で読み込めなかったときに発動する再読み込み機能である。Retry Read機能はNAND疲弊が進むことで動作する機能であるため、同機能を用いた不具合は、NAND疲弊が進んだ後工程のテストで多く検出される。図2のPLP機能は、Power Loss Protection機能の略であり、SSD(Solid State Drive, SSD)への電力供給が突如断たれた場合、その時に行われていたSSDに対するWriteデータを保護するための機能を示す。統計情報集計機能は、ホストからのWrite/Readの要求回数などを示す統計データの集計を行う機能を示す。デバッグ機能は、SSD FWのデバッグ用機能でFWの特定領域のデータを読み書きする機能を示す。各機能の後に付記されている数字は、各機能別の比率を示している。
【0009】
現在進めているNANDフラッシュメモリ開発におけるFW開発では、開発工程ごとに複数のテストを実施しており、後工程へ進むほどNANDに着目したテストとなっている。Retry Read機能を用いた不具合は、図3に示す通り、後工程でのテストで多く検出されている。前工程のテストであるシステムテスト、ヒートランテストの段階ではNANDの疲弊が少なく、Retry Read機能のパスを通過することが少ないため、同機能を用いても不具合が見つかり難い。後工程の温度交差テストやNAND負荷テストはNAND疲弊を促すテストであり、後工程のテストにおいてRetry Read機能の不具合が多く検出されるのはこのためである。
【0010】
これら後工程のテストは、恒温槽を使用してNANDの温度の上昇と下降とが行われ、高温状態で長時間放置を行うなどの実際の温度を変動させる手順が必要なため、テスト実行時間は1週間から1月を要するものもある。このため、不具合の再現や動作確認に時間がかかり、不具合修正までに長い時間を要するケースが見られる問題がある。既存のテスト手順を調査して、時間を要する要因を特定してみると、図4に示すようになる。
【0011】
即ち、要因の第1は、外的環境の変動時間を要することであり、具体的には、恒温槽を使用する温度交差などテストの前提条件である外的環境を意図的に変動させるため、時間を要することである。また、要因の第2は、事象発生の再現が困難なことにあり、具体的には、NANDエラーなど異常状態時における機能確認など偶発的なイベント発生を待つため、再現までに時間を要することである。
【0012】
本発明は、NANDフラッシュメモリ開発における問題点を解決せんとしてなされたもので、その目的は、上記のような不具合の再現を短時間で行うことができるテスト用NAND装置を提供することである。また、本発明は、実施形態に係るテスト用NAND装置を用いたNAND装置のデバッグ方法を提供する。
【課題を解決するための手段】
【0013】
実施形態に係るテスト用NAND装置は、メモリにNAND型フラッシュメモリを用いたSSD(Solid State Drive, SSD)により構成されるテスト用NAND装置において、前記テスト用NAND装置に疑似エラーの発生を指示する疑似エラー発生指示手段と、発生する前記疑似エラーの内容と範囲を指定するエラー内容・範囲指定手段と、前記疑似エラー発生指示手段により疑似エラーの発生指示がなされ、前記エラー内容・範囲指定手段により発生する疑似エラーの内容と範囲の指定があると、この指示の内容と範囲に応じた疑似エラーを発生実行する疑似エラー発生実行手段と、を具備することを特徴とする。
【0014】
実施形態に係るテスト用NAND装置では、前記疑似エラー発生実行手段は、リードコマンドの発生に対して疑似リードエラーを発生させることを特徴とする。
【0015】
実施形態に係るテスト用NAND装置では、前記疑似エラー発生実行手段は、リードコマンドの発生に対して疑似リードエラーを発生させる場合に所定回のリトライリードを繰返し実行することを特徴とする。
【0016】
実施形態に係るテスト用NAND装置では、前記疑似エラー発生実行手段はリトライリードを実行する際にリードエラーとするためのランダマイズキーを用いることを特徴とする。
【0017】
実施形態に係るテスト用NAND装置では、コマンドが生成されてから当該コマンドに対応する結果を出すまでの過程において関わる複数のファームウェア機能のいずれか1つの機能を順次停止する動作を行わせる機能順次停止手段を備えることを特徴とする。
【0018】
実施形態に係るテスト用NAND装置では、前記エラー内容・範囲指定手段は、発生する前記疑似エラーの内容と範囲について、複数候補を有し、外部からの指示の内容と範囲に応じた疑似エラーの内容と範囲を指定することを特徴とする。
【0019】
実施形態に係るテスト用NAND装置では、前記疑似エラー発生実行手段はリード、ライト、イレーズを実行する際にエラーとなるフラグを用いることを特徴とする。
【0020】
実施形態に係るNAND装置のデバッグ方法は、請求項1乃至7のいずれか1項に記載のテスト用NAND装置を用いてデバッグを行うことを特徴とする。
【図面の簡単な説明】
【0021】
図1】現在進められている、NANDフラッシュメモリ開発における各国の役割を示す図。
図2】現在開発中のNANDフラッシュメモリにおける不具合件数を、FILの機能別に示す図。
図3】現在進めているNANDフラッシュメモリにおけるRetry Read機能を用いた不具合件数を、工程の経過により示した図。
図4】NANDフラッシュメモリにおける不具合の再現や動作確認について、時間を要する要因を特定してみた図。
図5】本実施形態に係るテスト用NAND装置の要部構成例を示すブロック図。
図6】本実施形態に係るテスト用NAND装置の要部構成例を示すブロック図。
図7】本実施形態に係るテスト用NAND装置の第1の実施形態における要部構成例を示すブロック図。
図8】本実施形態に係るテスト用NAND装置の第1の実施形態における要部構成例における動作の説明図。
図9】本実施形態に係るテスト用NAND装置の要部構成例を示すブロック図。
図10】本実施形態に係るテスト用NAND装置の第2の実施形態における要部構成例を示すブロック図。
図11】本実施形態に係るテスト用NAND装置の第2の実施形態における要部構成例における動作の説明図。
図12】本発明の実施形態に係るNAND装置のデバッグ方法によって生じる効果を従来の手法と比較して数値で示した図。
図13】本発明の実施形態に係るNAND装置のデバッグ方法によって生じる効果を従来の手法と比較して棒グラフで示した図。
【発明を実施するための形態】
【0022】
以下、添付図面を参照して本発明の実施形態に係るテスト用NAND装置及びNAND装置のデバッグ方法を説明する。各図において同一の構成要素には、同一の符号を付して重複する説明を省略する。本実施形態に係るテスト用NAND装置は、メモリにフラッシュメモリを用いたSSD(Solid State Drive, SSD)と称されるものであり、半導体メモリをディスクドライブのように扱える補助記憶装置の一種とする。即ち、本実施形態に係るテスト用NAND装置は、メモリにNAND型フラッシュメモリを用いたSSDにより構成され、図5図6に示される。
【0023】
このSSDのFW(ファームウエア)は、図5で示すHost Interface Layer,Back End Layer,Host Write/Read or FW Write Erase Readのレイヤで構成されている。FIL(フラッシュ・インタフェース・レイヤ)はFIL0~FIL3の4並列分存在し、複数あるBack EndレイヤからWrite、Erase、Read要求を受け、NANDを効率よく制御するレイヤである。
【0024】
各FILとNAND間の構成は図6に示す通りであり、各FILとNANDの間にはNANDのコマンド制御を吸収してくれるFlash Controller uCode(以降、FC uCode)が存在し、各FILはFC uCodeを経由して接続されているNANDを制御している。以上のように、本実施形態に係るテスト用NAND装置は、HostがNANDをアクセスするためのハードウェアとファームウェアとがHostとNANDとの間に設けられた構成となっている。
【0025】
図7に、第1の実施形態に係るテスト用NAND装置の要部構成を示す。本実施形態では、疑似エラー発生指示手段21、エラー内容・範囲指定手段22、疑似エラー発生実行手段23を備える。疑似エラー発生指示手段21は、上記テスト用NAND装置に疑似エラーの発生を指示するものである。
【0026】
エラー内容・範囲指定手段22は、発生する前記疑似エラーの内容と範囲を指定するものである。発生する上記疑似エラーの内容とは、エラーがリードエラー(Read Disturb)かプログラムディスターブ(Program Disturb)か、データリテンション(Data Retention)を示し、疑似エラーの範囲とは、チャネル(channel)やバンク(bank)などの物理位置の範囲を示す。
【0027】
疑似エラー発生実行手段23は、上記疑似エラー発生指示手段21により疑似エラーの発生指示がなされ、上記エラー内容・範囲指定手段22により発生実行する疑似エラーの内容と範囲の指定があると、この指示の内容と範囲に応じた疑似エラーを発生実行するものである。本実施形態では、上記疑似エラー発生実行手段23は、リードコマンドの発生に対して疑似リードエラーを発生実行する。
【0028】
実際には、テスト用NAND装置から見ると外部であるHostに、いくつかの疑似エラー発生指示用キーを設けるかいくつかの疑似エラー発生指示用コマンドを用意(設定)しておき、キー操作やコマンドを受けてFILに備えられた上記エラー内容・範囲指定手段22が外部からの指示の内容と範囲に応じた疑似エラーの内容と範囲を指定するように構成することができる。
【0029】
また、本実施形態では、上記疑似エラー発生実行手段23は、リードコマンドの発生に対して疑似リードエラーを発生させる場合に所定回(本実施形態では、2回)のリトライリードを繰返し実行する。更に、上記疑似エラー発生実行手段23はリトライリードを実行する際にリードエラーとするためのランダマイズキーを用いる。通常、NAND型フラッシュメモリにおいては、NAND疲弊を防ぐためにNANDに対して書き込むデータの1bitと0bitが均一になるようランダマイズを行っている。本実施形態では、そのランダマイズに用いられるランダマイズキーを敢えて誤った値を指定することで必ずエラーとなるように構成している。
【0030】
以上のように構成されたテスト用NAND装置の動作を、図8を参照して説明する。例えば、ホストからリトライリードにより疑似エラー発生の指示入力がなされ、対応するリードコマンドがHost Interface Layer,Back End Layerを介してFILへ到る。すると、上記疑似エラー発生指示手段21により疑似エラーの発生指示がなされ、上記エラー内容・範囲指定手段22により発生実行する疑似エラーの内容と範囲の指定が、「2回のリトライエラー」として指定があったものとする。
【0031】
すると、FC uCodeからは3度のリードエラーが返され、FILからは2度のリトライリードの要請が出される。このように本実施形態によってNANDの疲弊があって、3度のリードエラーが短時間に生じた如く、事象を発生することができる。
【0032】
図9に示すように、コマンドが生成されてから当該コマンドに対応する結果を出すまでの過程において関わる複数のファームウェア機能のいずれか1つの機能を順次停止する動作を行わせる機能順次停止手段31を備える。例えば、Programコマンドを実行中にReadコマンドを先に処理させるProgram Suspend機能などを1つずつ無効化させて所定のエラーが発生することの再現試験を行うことによりどの機能に不具合があるのかをチェックすることができ、この手段31の機能を用いてデバッグを行うことができる。
【0033】
本実施形態に係る疑似エラー発生実行手段23はリード、ライト、イレーズを実行する際にエラーとなるフラグを用いることで、エラーを発生させることができ、図8に示した本実施形態と同様に、NANDの疲弊があって、何度かのリードエラーが短時間に生じた如く、事象を発生することができる。
【0034】
NANDエラーは複数の種類があり、既に説明した如く、通常ではそれらを自然発生させるには時間を要し効率が悪い。そこで本実施形態では、任意のNANDエラーを発生させるために、FWにエラー内容・範囲指定手段22を備えさせてテスト環境の構築を行い、時短を図ることにした。任意のNANDエラーを発生させるための条件(channel,bank等の物理位置などであり、「エラー内容」や「エラー範囲」としている)を指定できる機能とその条件成立時にNANDエラーを疑似に発生させる機能の追加を示した。NANDエラーを疑似発生させるためにFC uCodeに、例えば疑似エラー発生実行手段23を具備させ、NANDエラーを発生させるための条件を指定するために過去の開発経験を活かし、Host Interface Layerへエラー内容・範囲指定手段22を追加し、専用テストスクリプトも具備させるようにした。以上の構成を採用した第2の実施形態に係るテスト用NAND装置の構成例を図10に示す。
【0035】
先に、Hostからキー操作やコマンドによりHost Interface Layerに備えられた上記エラー内容・範囲指定手段22が外部からの指示の内容と範囲に応じた疑似エラーの内容と範囲を疑似エラー発生実行手段23へ指定する。次に、NANDエラーを発生させるためのリードコマンドを入力することで、FILの疑似エラー発生指示手段21により疑似エラーの発生指示がなされる。NAND疑似エラーリードが、FC uCodeの疑似エラー発生実行手段23へ送られる。既に、疑似エラー発生実行手段23には、疑似エラーの内容と範囲が指定されており、NAND疑似エラーが送られる。
【0036】
上記エラー内容・範囲指定手段22と疑似エラー発生実行手段23は、FWとFC uCodeにより実現されるものであり、これを「FWの作り(構成)」と「FC uCodeの作り(構成)」として説明すると以下のようである。まず、「FWの作り」については、Host Interface Layerからch,bank,エラーとするコマンドの指定(Read or Program or Erase)を行い、何回目のコマンド発行でエラーにするか?(閾値)をFILへ渡し、FIL側でRead/Program/Eraseを発行するたびにカウンタを設けて閾値超過時にNAND疑似エラーをFC uCodeに発行するように、構成することができる。
また、「FC uCodeの作り」については、FWからFC uCodeに発行するRead/Program/Eraseのコマンドの予備領域にフラグを設けて、フラグがONならFC uCodeが特定のエラーコードをFWに返すように、構成することができる。
【0037】
以上のようにして、上記エラー内容・範囲指定手段22が外部からの指示の内容と範囲に応じた疑似エラーの内容と範囲を疑似エラー発生実行手段23へ指定しておくことにより、所定の内容・範囲のNAND疑似エラーという事象が再現できることになる。
【0038】
以上の実施形態に係るテスト用NAND装置及びNAND装置のデバッグ方法によって、各手段を用いた場合の効果を従来の手法と比較して図12に示す。改善1は、第1の実施形態による処理へ改善したことを示している。改善2は、第2の実施形態による処理により改善したことを示している。全体として、図13の棒グラフに示すように、469日を要していた処理を3日に短縮することができ、作業時間の削減率は99%とすることができた。
【符号の説明】
【0039】
21 疑似エラー発生指示手段
22 エラー内容・範囲指定手段
23 疑似エラー発生実行手段
31 機能順次停止手段
【要約】
【課題】不具合の再現を短時間で行うことができるテスト用NAND装置を提供する。
【解決手段】テスト用NAND装置に疑似エラーの発生を指示する疑似エラー発生指示手段21と、発生する前記疑似エラーの内容と範囲を指定するエラー内容・範囲指定手段22と、前記疑似エラー発生指示手段21により疑似エラーの発生指示がなされ、前記エラー内容・範囲指定手段22により発生する疑似エラーの内容と範囲の指定があると、この指示の内容と範囲に応じた疑似エラーを発生実行する疑似エラー発生実行手段23と、を具備する。
【選択図】図8
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13