JP5593254B2 - 半導体メモリ装置及び半導体メモリシステム - Google Patents

半導体メモリ装置及び半導体メモリシステム Download PDF

Info

Publication number
JP5593254B2
JP5593254B2 JP2011040853A JP2011040853A JP5593254B2 JP 5593254 B2 JP5593254 B2 JP 5593254B2 JP 2011040853 A JP2011040853 A JP 2011040853A JP 2011040853 A JP2011040853 A JP 2011040853A JP 5593254 B2 JP5593254 B2 JP 5593254B2
Authority
JP
Japan
Prior art keywords
semiconductor memory
memory device
identification information
rewrites
flash memory
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
JP2011040853A
Other languages
English (en)
Other versions
JP2011258182A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2011040853A priority Critical patent/JP5593254B2/ja
Publication of JP2011258182A publication Critical patent/JP2011258182A/ja
Application granted granted Critical
Publication of JP5593254B2 publication Critical patent/JP5593254B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/1847File system types specifically adapted to static storage, e.g. adapted to flash memory or SSD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1032Reliability improvement, data loss prevention, degraded operation etc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、メモリカード等の半導体メモリ装置及び当該半導体メモリ装置を備える半導体メモリシステムに関し、特に半導体メモリ装置内部の不揮発性メモリの性能劣化による信頼性低下を防ぐ技術に関する。
従来、フラッシュメモリが内蔵されたカード型の記録媒体であるSD(Secure Digital)カード等の半導体メモリ装置は、超小型、超薄型であり、その取り扱い易さから、ディジタルカメラ、携帯機器等において画像等のデータを記録するために広く利用されている。
この半導体メモリ装置に内蔵されているフラッシュメモリは、一定サイズのブロック単位でデータを消去し書き換えできる不揮発性のメモリである。例えば、フラッシュメモリの一つにNAND型フラッシュメモリがある。このNAND型フラッシュメモリにおけるデータの記録方式として、メモリセルに2値のデータを格納するシングルレベルセル(Single Level Cell;SLC)方式と、2値を超えるデータを格納するマルチレベルセル(Multi Level Cell;MLC)方式とがある。SLC方式では、2つの電圧レベルを0と1に対応させることにより、1セルあたりに2値からなる1ビットのデータを記録する。MLC方式では、例えば、4つの電圧レベルを0,1,2,3に対応させることにより、1セルあたりに4値からなるデータを記録する。
図13を用いて、SLCフラッシュメモリ(以下、「フラッシュメモリ」と記載する)のフローティングゲートに蓄積する電子の数と閾値電圧(Vth)との関係を説明する。
図13は、フラッシュメモリの1セルの構成を示す図であり、図13(a)は、電荷が蓄積されておらずデータ書き込み前の初期状態を示す図である。また、図13(b)は、電荷が蓄積されておりデータを書き込んだ状態を示す図である。
図13(a)及び図13(b)に示すように、フラッシュメモリは、Pチャンネルサブストレート1007上にNチャンネルのソース電極1005及びドレイン電極1006が形成され、ソース電極1005とドレイン電極1006との間に、トンネル酸化膜1004、フローティングゲート1003、酸化絶縁膜1002及びコントロールゲート1001が積層して構成される。
このように、フラッシュメモリは、揮発性ダイナミック・ランダム・アクセス・メモリ(DRAM)と異なり、フローティングゲート1003という電荷を保持する領域がトランジスタ内部に追加されている。そして、フラッシュメモリでは、フローティングゲート1003に蓄積されている電荷の状態によって、電流が流れる時の電圧の閾値が変わる。図13(a)に示すように、データが書き込まれる前の初期状態では、フローティングゲート1003に電荷が蓄積されておらず、また、図13(b)に示すように、データが書き込まれた状態では、フローティングゲート1003に電子が蓄積されている。
フラッシュメモリではフローティングゲート1003における電子の蓄積の有無により電流が流れる時の電圧(閾値)が変わり、1セルあたり1ビットの情報を表現する2値フラッシュメモリの場合は、電子の量によって電流が流れる時の閾値電圧が2状態存在する。例えば、図13(a)に示すように、蓄積する電子が無い場合は電位が低く、図13(b)に示すように、電子が蓄積していくにつれて電位が上昇するので、所定の電位の閾値に収まるように電子の蓄積状態を2状態で制御することができる。これにより、1つのメモリセルに1ビットのデータを記録することができる。
また、フラッシュメモリでは、フローティングゲート1003に蓄積した電子を保持するために、絶縁機能を持つトンネル酸化膜1004が用いられ、データの書き込み時や消去時には、トンネル酸化膜1004を電子が通り抜けることになる。したがって、データの書き換えが繰り返し行われると、電子の注入と引き抜きによってトンネル酸化膜1004が劣化していき、トンネル酸化膜1004の損傷が積み重なり、最終的に絶縁の役目を果たさなくなる。
さらに1セルあたりに4値からなるデータを記録するMLC方式では、電子の量によって電流が流れるときの閾値電圧を4状態に増やしている。蓄積する電子の有無だけでなく、電子の量で閾値電圧を制御するために、書き換え時のトンネル酸化膜1004の劣化による電子量の変化の影響を受けやすい。
このように、フラッシュメモリは、構造上書き換え回数が制限されるという特徴を有しており、従来より半導体メモリ装置ではフラッシュメモリの書き換え回数を記録して管理することが行われている(例えば、特許文献1参照)。
図14を用いて、フラッシュメモリにおける従来の書き換え回数の管理方法について説明する。図14は、従来の半導体メモリシステムの構成を示す図である。
図14に示すように、従来の半導体メモリシステムは、PC(Personal Computer)等のホスト1100と、内蔵された半導体メモリにデータを保持することができるSDカード等の半導体メモリ装置1110とで構成される。
従来の半導体メモリ装置1110は、ホスト1100からのアクセスを受け付けるインターフェイス変換部(以下、「IF変換部」と記載する)1120と、データを記録するフラッシュメモリ1140と、フラッシュメモリ1140に対してデータの書き込みと読み出しを行うフラッシュメモリアクセス部1130と、半導体メモリ装置1110の情報を管理するメモリ情報管理部1150とから構成される。さらに、メモリ情報管理部1150は、フラッシュメモリ1140への書き込み回数を記憶する書き換え回数記憶部1156を有する。
半導体メモリ装置1110は、ホスト1100からのデータの書き込み要求に対して、IF変換部1120はフラッシュメモリ1140への書き込みシーケンスに変換してデータを書き込む。さらにメモリ情報管理部1150は、書き込み回数を加算して書き換え回数記憶部1156に保存する。
ホスト1100は、書き換え回数を確認する場合、半導体メモリ装置1110に対して、書き換え回数を取得するための独自の要求(コマンド)を発行する。この書き換え回数を取得するコマンドは、IF変換部1120によって解析されて、メモリ情報管理部1150の書き換え回数記憶部1156に記憶されている書き換え回数が、書き換え回数を取得するコマンドの応答として、ホスト1100に返される。
特開2005−284659号公報
しかしながら、上記従来の半導体メモリシステムの構成では、メーカによって新しいタイプのSDカードが作られた場合等によって半導体メモリ装置の種類が変わった場合、ホストは、その半導体メモリ装置の種類ごとに書き換え回数を取得するための独自のコマンドを発行する必要がある。
このように、従来の半導体メモリシステムでは、半導体メモリ装置の種類ごとに書き換え回数を取得するためのアクセス方法を変えなければならず、異なる種類の半導体メモリ装置に対して統一的にアクセスすることができないという課題がある。
本発明は、上記課題を解決するためになされたものであり、半導体メモリ装置の種類に関わらず、統一的なアクセス方法によって書き換え回数を取得することができる半導体メモリ装置及び半導体メモリシステムを提供することを目的とする。
この課題を解決するために、本発明に係る半導体メモリ装置の一態様は、情報を記憶する半導体メモリ装置であって、当該半導体メモリ装置に依存するパラメタを有する所定のファイルシステムによって管理された不揮発性メモリと、前記不揮発性メモリの書き換え回数を記憶する書き換え回数記憶部と、前記不揮発性メモリに、前記書き換え回数と対応付けられた第1の識別情報が前記パラメタとして記憶されているか否かを検出する識別情報検出部と、前記識別情報検出部によって前記第1の識別情報が記憶されていることが検出された場合に、前記書き換え回数記憶部に記憶されている前記書き換え回数を前記第1の識別情報に対応する記憶領域に反映する管理部とを有する。
本態様によれば、所定のファイルシステムにおけるデバイス依存のパラメタを利用して不揮発性メモリの書き換え回数であることを示す第1の識別情報を設定し、書き換え回数記憶部に記憶されている書き換え回数を第1の識別情報に対応する値に反映させる。これにより、第1の識別情報に対応する値を参照することにより、半導体メモリ装置の種類に関わらず、不揮発性メモリの書き換え回数を取得することができる。
さらに、本発明に係る半導体メモリ装置の一態様において、前記第1の識別情報に対応する記憶領域は、前記不揮発性メモリにおける記憶領域である。
さらに、本発明に係る半導体メモリ装置の一態様において、前記不揮発性メモリは、複数のブロックに分けられており、前記書き換え回数記憶部は、前記複数のブロックの各ブロック単位での書き変え回数を、前記書き換え回数として記憶し、前記識別情報検出部は、さらに、前記不揮発性メモリに、前記不揮発性メモリが前記複数のブロックに分けられて前記書き換え回数が管理されていることを示す第2の識別情報が前記パラメタとして記憶されているか否かを検出する。
さらに、本発明に係る半導体メモリ装置の一態様において、前記第1の識別情報は、前記複数のブロックの各ブロックに対応して設定されている。
さらに、本発明に係る半導体メモリ装置の一態様において、前記半導体メモリ装置は、時間を管理するタイマーと、前記タイマーを参照することで、前記不揮発性メモリへ書き込みを行った書き込み時間と現在時間とから前記不揮発性メモリに記録された記録データの保証ができるか否かを判定するリテンション判定部とを有し、前記管理部は、前記不揮発性メモリに情報が書き込まれる際に、前記タイマーによって示される書き込み時間を、当該書き込み時間と対応付けられた第3の識別情報に対応する記憶領域に反映する。
さらに、本発明に係る半導体メモリ装置の一態様において、前記半導体メモリ装置は、前記所定のファイルシステムのフォーマットを検出するファイルシステム検出部を有する。
さらに、本発明に係る半導体メモリ装置の一態様において、前記所定のファイルシステムがexFATであり、前記識別情報検出部は、前記ファイルシステム検出部によって前記所定のファイルシステムがexFATであることが検出された場合に、前記第1の識別情報が前記不揮発性メモリに記憶されているか否かを検出する。
さらに、本発明に係る半導体メモリ装置の一態様において、前記不揮発性メモリは、フラッシュメモリである。
また、本発明に係る半導体メモリシステムの一態様は、所定のファイルシステムによって管理され、不揮発性メモリを有する半導体メモリ装置と、前記半導体メモリ装置の情報を管理するメモリ情報更新部を有するホスト機器とを備える半導体メモリシステムであって、前記所定のファイルシステムは、前記半導体メモリ装置に依存するパラメタを有し、前記メモリ情報更新部は、前記半導体メモリ装置の書き換え回数を記憶する書き換え回数記憶部と、前記不揮発性メモリに、前記書き換え回数と対応付けられた第1の識別情報が前記パラメタとして記憶されているか否かを検出する識別情報検出部とを有し、前記メモリ情報更新部は、前記識別情報検出部によって前記第1の識別情報が記憶されていることが検出された場合に、前記書き換え回数記憶部に記憶されている前記書き換え回数を前記第1の識別情報に対応する記憶領域に反映する。
本態様によれば、所定のファイルシステムにおけるデバイス依存のパラメタを利用して不揮発性メモリの書き換え回数であることを示す第1の識別情報を設定し、書き換え回数記憶部に記憶されている書き換え回数を第1の識別情報に対応する値に反映させる。これにより、第1の識別情報に対応する値を参照することにより、半導体メモリ装置の種類に関わらず、不揮発性メモリの書き換え回数を取得することができる。
さらに、本発明に係る半導体メモリシステムの一態様において、前記第1の識別情報に対応する記憶領域は、前記不揮発性メモリにおける記憶領域である。
さらに、本発明に係る半導体メモリシステムの一態様において、前記不揮発性メモリは、複数のブロックに分けられており、前記書き換え回数記憶部は、前記複数のブロックの各ブロック単位での書き変え回数を前記書き換え回数として記憶し、前記識別情報検出部は、前記不揮発性メモリに、前記不揮発性メモリが前記複数のブロックに分けられて前記書き換え回数が管理されていることを示す第2の識別情報が前記パラメタとして記憶されているか否かを検出する。
さらに、本発明に係る半導体メモリシステムの一態様において、前記第1の識別情報は、前記複数のブロックの各ブロックに対応して設定されている。
さらに、本発明に係る半導体メモリシステムの一態様において、前記メモリ情報更新部は、時間を管理するタイマーと、前記タイマーを参照することで、前記半導体メモリ装置に書き込みを行った書き込み時間と現在時間とから前記半導体メモリ装置に記録された記録データの保証ができるか否かを判定するリテンション判定部とを有し、前記メモリ情報更新部は、前記半導体メモリ装置に情報が書き込まれる際に、前記タイマーによって示される書き込み時間を、当該書き込み時間と対応付けられた第3の識別情報に対応する記憶領域に反映する。
さらに、本発明に係る半導体メモリシステムの一態様において、前記メモリ情報更新部又は前記半導体メモリ装置の一方は、時間を管理するタイマーをさらに具備し、前記メモリ情報更新部又は前記半導体メモリ装置の他方は、前記タイマーを参照することで、前記半導体メモリ装置に書き込みを行った書き込み時間と現在時間とから前記半導体メモリ装置に記録された記録データの保証ができるか否かを判定するリテンション判定部を有し、前記メモリ情報更新部又は前記半導体メモリ装置は、前記半導体メモリ装置に情報が書き込まれる際に、前記タイマーによって示される前記書き込み時間を、当該書き込み時間に対応付けられた第3の識別情報に対応する記憶領域に反映するとする。
さらに、本発明に係る半導体メモリシステムの一態様において、前記メモリ情報更新部は、前記所定のファイルシステムのフォーマットを検出するファイルシステム検出部を有する。
さらに、本発明に係る半導体メモリシステムの一態様において、前記所定のファイルシステムがexFATであり、前記識別情報検出部は、前記ファイルシステム検出部によって前記所定のファイルシステムがexFATであることが検出された場合に、前記第1の識別情報が前記不揮発性メモリに記憶されているか否かを検出する。
さらに、本発明に係る半導体メモリシステムの一態様において、前記不揮発性メモリは、フラッシュメモリである。
本発明に係る半導体メモリ装置及び半導体メモリシステムによれば、半導体メモリ装置の種類に関わらず、統一的なアクセス方法によって書き換え回数を取得することができる。
図1は、第1の実施の形態に係る半導体メモリ装置の構成を示すブロック図である。 図2Aは、第1の実施の形態に係る半導体メモリ装置におけるOEMパラメタの構造を示す図である。 図2Bは、図2AにおけるOEMパラメタの各パラメタの構造を示す図である。 図3Aは、第1の実施の形態に係る半導体メモリ装置を初期化する場合のフローチャートである。 図3Bは、第1の実施の形態に係る半導体メモリ装置に対して書き込み処理を行う場合のフローチャートである。 図4は、第1の実施の形態に係る半導体メモリ装置におけるOEMパラメタのデータの割り当てを示す図である。 図5は、第2の実施の形態に係る半導体メモリシステムの構成を示すブロック図である。 図6Aは、第2の実施の形態に係る半導体メモリシステムにおける半導体メモリ装置を初期化する場合のフローチャートである。 図6Bは、第2の実施の形態に係る半導体メモリシステムにおける半導体メモリ装置に対して書き込み処理を行う場合のフローチャートである。 図7は、第3の実施の形態に係る半導体メモリシステムにおけるホストの構成を示すブロック図である。 図8は、第3の実施の形態に係る半導体メモリシステムにおける半導体メモリ装置の構成を示すブロック図である。 図9は、第3の実施の形態に係る半導体メモリ装置におけるOEMパラメタのデータの割り当てを示す図である。 図10Aは、第3の実施の形態に係る半導体メモリシステムにおける初期化処理のフローチャートである。 図10Bは、第3の実施の形態に係る半導体メモリシステムにおける半導体装置に対して書き込み処理を行う場合のフローチャートである。 図11は、第3の実施の形態に係る半導体メモリシステムにおけるリテンション判定の処理のフローを示すフローチャートである。 図12は、第3の実施の形態に係る半導体メモリシステムのリテンション判定において、データ保持可能期間を算出するために用いる図である。 図13は、SLCフラッシュメモリの構造を示す図である。 図14は、従来の半導体メモリ装置の構成を示すブロック図である。
以下、本発明の実施の形態に係る半導体メモリ装置及び半導体メモリシステムについて、図面を参照しながら説明する。
(第1の実施の形態)
まず、第1の実施の形態に係る半導体メモリ装置について、図1を用いて説明する。図1は、第1の実施の形態に係る半導体メモリ装置の構成を示すブロック図である。
図1に示すように、第1の実施の形態に係る半導体メモリ装置110は、情報を記憶する半導体メモリ装置であって、インターフェイス変換部(IF変換部)120と、フラッシュメモリアクセス部130と、フラッシュメモリ140と、メモリ情報管理部150とを備える。半導体メモリ装置110は、例えばホスト100に対して着脱可能なSDカード等である。なお、ホスト100はPC等のホスト機器であり、ホスト100と半導体メモリ装置110とで半導体メモリシステムが構成される。
以下、本実施の形態に係る半導体メモリ装置110の各構成要素について詳述する。
まず、IF変換部120について説明する。IF変換部120は、ホスト100等の外部機器からのアクセスを受け付けるインターフェイスであって、ホスト100から所定の制御コマンドやデータを受信したり、ホスト100からの制御コマンドに従ってホスト100に対してデータ等を送信したりする。
また、IF変換部120は、プロトコルを変換する機能を有しており、ホスト100から受け付けた制御コマンドやデータに対して必要に応じてプロトコル変換し、フラッシュメモリアクセス部130を介してフラッシュメモリ140に対してアクセス可能にする。このように、IF変換部120は、ホスト100から受け付けた制御コマンドやデータをフラッシュメモリアクセス部130に転送したり、フラッシュメモリアクセス部130から転送されるデータ等を受け付けたりする。
例えば、IF変換部120は、ホスト100から、書き込みコマンド(ライトコマンド)及びフラッシュメモリ140に記録するためのデータ(書き込みデータ)を受け付けて、当該ライトコマンド及び記録データをフラッシュメモリアクセス部130に転送する。さらに、IF変換部120は、ホスト100からの読み出しコマンド(リードコマンド)を受け付けて、フラッシュメモリアクセス部130を介して読み出されたフラッシュメモリ140に記録されている記録データをホスト100に送信する。
次に、フラッシュメモリアクセス部130について説明する。フラッシュメモリアクセス部130は、ホスト100からの制御コマンドに基づいてフラッシュメモリ140へのアクセスを制御する機能を有するメモリアクセス部であって、フラッシュメモリ140に対してデータの書き込みを行ったり、フラッシュメモリ140に記録された記録データの読み出しを行ったりする。例えば、フラッシュメモリアクセス部130は、ホスト100からの書き込みコマンド又は読み出しコマンドに示されるアドレスに従って、フラッシュメモリ140に対してデータの書き込み又は読み出しを行う。
さらに、フラッシュメモリアクセス部130は、メモリ情報管理部150へのアクセス制御も行い、フラッシュメモリアクセス部130によってメモリ情報管理部150とフラッシュメモリ140との間のアクセス制御が行われる。
例えば、フラッシュメモリアクセス部130は、フラッシュメモリ140の初期化が完了した時点、あるいはホスト100からのコマンド等によって、メモリ情報管理部150のファイルシステム検出部151に対して、フラッシュメモリ140を管理するファイルシステムのフォーマットを検出するように指示したり、メモリ情報管理部150のID検出部152に対して、フラッシュメモリ140から所定の識別情報(識別子)を検出するように指示したりする。メモリ情報管理部150に対して、書き換え回数記憶部156に記憶されている書き換え回数を、フラッシュメモリ140の所定の記憶領域に反映するように指示したりもする。
次に、フラッシュメモリ140について説明する。フラッシュメモリ140は、データを記憶するため記憶部であり、不揮発性メモリによって構成される。
フラッシュメモリ140は、半導体メモリ装置110(デバイス)に依存するパラメタを有する所定のファイルシステムによって管理されている。従って、フラッシュメモリ140には、ホスト100等の外部機器から見たときに所定のファイルシステムで管理されていることを識別するためのファイルシステム識別子が所定の記憶領域に格納されている。また、上記のデバイス依存のパラメタは複数存在し、各パラメタとしての情報(データ)はフラッシュメモリ140の所定の記憶領域に格納される。各パラメタはユーザが独自に利用することができ、パラメタとしての情報(データ)は、ホスト100等の外部機器によって定義されたり更新されたりする。なお、パラメタの詳細な構造については後述する。
本実施の形態において、フラッシュメモリ140は、図13に示すようなSLCフラッシュメモリであり、複数の所定の記憶領域である複数の物理ブロックによって構成される。物理ブロックとはデータの消去単位であって、各物理ブロックは複数のページによって構成される。なお、ページとは、ホスト機器等の外部装置から見たときに、データを記録できる最小単位(書き込み単位)である。
次に、メモリ情報管理部150について説明する。メモリ情報管理部150は、半導体メモリ装置110の情報を管理する機能を有し、書き換え回数記憶部156と、ファイルシステム検出部(以下、「FS検出部」と記載する)151と、ID(Identification)検出部152とを有する。
書き換え回数記憶部156は、フラッシュメモリ140の書き換え回数を記憶する機能を有し、書き換え回数記憶部156には、書き換え回数として、フラッシュメモリ140に対して書き込み処理を行った回数(値)が記憶保持されている。
書き換え回数記憶部156に記憶される書き換え回数は、フラッシュメモリ140に書き込みが行われた回数をカウントすることによって更新される。すなわち、フラッシュメモリ140の所定の記憶領域に対して書き込み処理が行われる毎に書き換え回数が1つずつ加算されて更新される。本実施の形態では、後述するように、フラッシュメモリ140は複数のブロックに分けられているので、書き換え回数記憶部156は、複数のブロックの各ブロック単位での書き変え回数を記憶する。この場合、フラッシュメモリ140に書き込みを行ったブロック数をカウントすることによって書き換え回数を取得することができる。なお、ブロック数のカウントは、フラッシュメモリ140の消去ブロックの消去回数をカウントすることによって行うことができる。
FS検出部151は、フラッシュメモリ140を管理するファイルシステムのフォーマットを検出する機能を有する。本実施の形態において、FS検出部151は、フラッシュメモリアクセス部130の指示に従ってフラッシュメモリ140から所定のデータを読み出してファイルシステムのフォーマットを検出し、フォーマットされているファイルシステムの種類を特定する。なお、フラッシュメモリ140が所定のファイルシステムで管理されている場合、フラッシュメモリ140には、当該ファイルシステムで管理されていることを示す識別子が記憶されている。
ID検出部152は、フラッシュメモリ140に記憶されている情報の中に、所定のファイルシステムにおけるデバイス依存のパラメタとして、フラッシュメモリ140の書き換え回数と対応付けられた第1の識別情報(第1の識別子)が存在するか否かを検出する識別情報検出部である。第1の識別情報は、当該第1の識別情報に対応する記憶領域に記憶されたデータがフラッシュメモリ140に対して書き込みを行った回数、すなわちフラッシュメモリ140の書き換え回数であることを示す書き換え回数用識別子である。
本実施の形態において、ID検出部152は、FS検出部151によってデバイス依存のパラメタを有するファイルシステムであることが検出された場合に、フラッシュメモリ140におけるパラメタのフィールド内を検索して、書き換え回数であることを示す第1の識別情報がパラメタとして記憶されているか否かを検出し、当該第1の識別情報が記憶されている場合は第1の識別情報を検出する。つまり、フラッシュメモリ140におけるデバイス依存のパラメタとしての記憶領域に、第1の識別情報が存在するか否かを検出する。
そして、メモリ情報管理部150は、ID検出部152によってフラッシュメモリ140に第1の識別情報が記憶されていることが検出された場合に、書き換え回数記憶部156に記憶されている書き換え回数を、第1の識別情報に対応する記憶領域に反映する。本実施の形態では、第1の識別情報に対応する記憶領域は、フラッシュメモリ140におけるパラメタとしての記憶領域である。従って、メモリ情報管理部150によって、フラッシュメモリ140の記憶領域に記憶されている書き換え回数の値(第1の識別情報に対応する値)が、書き換え回数記憶部156に記憶されている書き換え回数の値によって上書きされて更新される。
なお、本実施の形態では、フラッシュメモリ140への書き換え回数記憶部156に記憶されている書き換え回数の反映の処理は、メモリ情報管理部150によって行ったが、メモリ情報管理部150以外の管理部によって行っても構わない。
以下、本実施の形態の説明では、デバイス依存のファイルシステムとしてマイクロソフト社がフラッシュメモリ向けに開発したファイルシステムであるExtended FAT(以下、「exFAT」と記載する)を具体例として説明する。exFATのファイルシステムは、PC等のCPUやOSには依存しないファイルシステムであって、OEMがデバイス(半導体メモリ装置)のファイルシステムを独自に設計できるようにOEMによって定義することができるデバイス依存のパラメタ(OEMパラメタ)を有する。OEMパラメタは、ファイルシステムの初期化時に特定の条件を除いて消去されないデータとしてフラッシュメモリ140に記憶することができる。
ここで、図2Aを用いて、デバイス依存のパラメタであるOEMパラメタについて説明する。図2Aは、第1の実施の形態に係る半導体メモリ装置におけるOEMパラメタの構造を示す図である。図2Aにおいて、各列は、左の列から、バイト位置(BP)、バイト長(Length)、名称(Field Name)、説明(Contents)を示している。
OEMパラメタは、exFATで管理された記録領域であってフラッシュメモリ140における固定のアドレスの記憶領域を用いて設定されており、本実施の形態では、図2Aに示すように、Parameters[0]からParameters[9]までの、10個のデータがフラッシュメモリ140において管理されている。すなわち、本実施の形態では、10個のOEMパラメタを用いて最大で10個のデータを登録することができる。なお、各OEMパラメタのバイト長は48バイトである。
さらに、図2Aにおける10個のOEMパラメタの各パラメタの構造について、図2Bを用いて説明する。図2Bは、図2AにおけるOEMパラメタの各パラメタの構造を示す図である。
図2Bに示すように、各パラメタは、“Parameters Guid”と、“Custom defined”とによって構成されている。“Parameters Guid”は、グローバル一意識別子(Globally Unique Identifier)(以下、「GUID」と記載する)としてユーザが独自に割り当てて登録することができるパラメタのタイプである。また、“Custom Defined”は、GUID毎にユーザによって独自に定義することができるパラメタのタイプである。
本実施の形態では、OEMパラメタの1つに、上記の書き換え回数に対応付けられた第1の識別情報として、フラッシュメモリ140の書き換え回数を示すGUIDを割り当てるとともに、当該書き換え回数を示すGUIDに対応する書き換え回数の値を管理する記憶領域として“Custom Defined”のフィールドを割り当てる。
すなわち、フラッシュメモリ140のexFATで管理されたOEMパラメタに関する記憶領域のうち、“Parameters Guid”に対応する記憶領域には書き換え回数を示すGUIDが定義されて記憶されており、“Custom Defined”に対応する記憶領域にはフラッシュメモリ140の実際の書き換え回数に応じた書き換え回数の値が記憶される。
なお、書き換え回数を示すGUIDがGUIDの一つとして一旦“Parameters Guid”に記憶されると、当該書き換え回数を示すGUIDそのものは変更されない。また、“Custom Defined”に記憶される書き換え回数の値は、後述するように、フラッシュメモリ140の書き換え回数に応じて更新される。また、このようなOEMパラメタの割り当ては、ホスト100等の半導体メモリ装置110に対する外部機器によって行うことができる。
次に、第1の実施の形態に係る半導体メモリ装置110の動作処理について、図3A及び図3Bを用いて説明する。図3Aは、第1の実施の形態に係る半導体メモリ装置110を初期化する場合のフローを示すフローチャートである。図3Bは、第1の実施の形態に係る半導体メモリ装置に対してデータの書き込みを行う場合のフローを示すフローチャートである。
最初に、図3Aを用いて、本実施の形態に係る半導体メモリ装置110の初期化フローを説明する。
図3Aに示すように、半導体メモリ装置110は、半導体メモリ装置110への電源の投入又はリセット信号等をトリガとして、初期化を開始する(S101)。
まず、フラッシュメモリアクセス部130によってフラッシュメモリ140の初期化が行われ、フラッシュメモリ140に対してデータの読み出し及び書き込みを行える状態にする(S102)。
次に、フラッシュメモリ140を管理するファイルシステムのフォーマットを検出する(S103)。
具体的に、FS検出部151は、フラッシュメモリアクセス部130の指示に従いフラッシュメモリアクセス部130経由でフラッシュメモリ140から所定のデータを読み出すことによってフラッシュメモリ140を管理するファイルシステムのフォーマットを検出して、フォーマットされているファイルシステムの種類を特定する。
このとき、ステップS103において、ファイルシステムの種類がexFAT以外であれば初期化完了のステップ(S106)に進み、ファイルシステムの種類がexFATであれば次のステップ(S104)に進む。
本実施の形態では、半導体メモリ装置110のフラッシュメモリ140には、当該フラッシュメモリ140がexFATで管理されていることを示す識別子が記憶されている。従って、ステップS103においては、フラッシュメモリ140から所定のデータとして当該識別子が読み出され、フラッシュメモリ140を管理するファイルシステムの種類としてexFATが検出される。
ステップS103において、フラッシュメモリ140のファイルシステムがexFATであることが検出された場合、ID検出部152は、フラッシュメモリアクセス部130経由でフラッシュメモリ140のすべてのOEMパラメタのフィールド(Parameters[0]〜[9])をシーケンスに検索して、既にホスト100によって登録された書き換え回数を示すGUID(第1の識別情報)が“Parameters Guid”のフィールド内に存在するか否かを検出し、書き換え回数を示すGUIDが存在する場合は当該書き換え回数を示すGUIDを検出する(S104)。
すなわち、フラッシュメモリ140のすべてのOEMパラメタのフィールドに記憶されたデータを順次読み出して、読み出したデータの中に書き換え回数を示すGUIDが存在するか否かを検出する。
ステップS104において、書き換え回数を示すGUIDが存在しない場合には初期化完了のステップ(S106)に進み、書き換え回数を示すGUIDが存在する場合には次のステップ(S105)に進む。
ステップS104において書き換え回数を示すGUIDが検出された場合、メモリ情報管理部150は、書き換え回数記憶部156に記憶している書き換え回数を、フラッシュメモリアクセス部130経由でフラッシュメモリ140のOEMパラメタの“Custom Defined”のフィールドに反映する(S105)。
これにより、フラッシュメモリ140のOEMパラメタにおける“Custom Defined”に記憶されている書き換え回数のデータ(値)が、書き換え回数記憶部156に記憶されている書き換え回数のデータ(値)に従って更新される。すなわち、書き換え回数を示すGUIDに対応する書き換え回数の値が、書き換え回数記憶部156に記憶されている書き換え回数の値となる。
その後、初期化完了のステップ(S106)に進んで初期化完了となる。
このように半導体メモリ装置110の初期化を行うことにより、ホスト100からフラッシュメモリ140に対してアクセス要求を行う際にはホスト100とのプロトコルをIF変換部120で変換してフラッシュメモリアクセス部130経由でフラッシュメモリ140に対してアクセスを行うが、ホスト100からのアクセス要求がOEMパラメタにおける書き換え回数を示すGUIDを定義した領域へのアクセスであった場合には、半導体メモリ装置110で管理している書き換え回数がOEMパラメタの情報としてホスト100に通知される。
例えば、フラッシュメモリ140の書き換え回数を確認するために、ホスト100が半導体メモリ装置110に対してフラッシュメモリ140の書き換え回数を取得するためのコマンドを発行すると、半導体メモリ装置110では、フラッシュメモリアクセス部130がフラッシュメモリ140におけるOEMパラメタの記憶領域から書き換え回数を示すGUIDに対応する書き換え回数のデータを読み出して、IF変換部120経由でホスト100に通知する。
次に、図3Bを用いて、半導体メモリ装置110にデータを書き込む場合の書き込みフローについて説明する。
本実施の形態に係る半導体メモリ装置110では、デバイス依存のパラメタ(OEMパラメタ)を有するファイルシステムとしてexFATを用いることにより、フラッシュメモリ140の書き換え回数を管理する。本実施の形態では、書き換え回数記憶部156に記憶されている書き換え回数のデータを、OEMパラメタにおける“Custom Defined”のフィールドに反映することによって管理する。
ここで、図4を用いて、フラッシュメモリ140の書き換え回数をOEMパラメタの“Custom Defined”のフィールドに反映する例について詳しく説明する。図4は、第1の実施の形態に係る半導体メモリ装置におけるOEMパラメタのデータの割り当てを示す図である。なお、図4では、フラッシュメモリ140の全領域を8つのブロックに分けて、それぞれの書き換え回数を管理する例を示している。
本実施の形態において、フラッシュメモリ140は複数のブロックに分けられており、例えば、図4に示すように、フラッシュメモリ140を8つのブロックに分けることができる。そして、フラッシュメモリ140における8つのブロックの書き換え回数は、図2A及び図2Bに示される最初の8つの“Custom Defined”のフィールド(Generic Parameters TemplateのBP1〜8)を用いて管理される。
そして、図4に示すように、フラッシュメモリ140における8つのブロックは、ブロック番号とBPとが対応するように割り当てられており、BPの番号の1がブロック番号の1、BPの番号の2がブロック番号の2、のように、BPの番号がそれぞれ対応するブロック番号を示している。また、8つのブロックは、それぞれのブロック番号ごとに書き換え回数が管理される。図4では、ブロック番号が1で管理されるブロックにおける書き換え回数が400であり、ブロック番号が2で管理されるブロックにおける書き換え回数が500であることを示している。
次に、図3Bを用いて、フラッシュメモリ140にデータを書き込む場合の書き込みフローについて説明する。
まず、半導体メモリ装置110は、フラッシュメモリ140へのアクセス要求としてホスト100から書き込みコマンドを受け付けて、これにより、フラッシュメモリ140への書き込みが開始する(S111)。
書き込みコマンドにおけるホスト100とのプロトコルがIF変換部120によって変換されて、フラッシュメモリアクセス部130によってフラッシュメモリ140への書き込みが実行される。このとき、フラッシュメモリ140への書き込みと同時に、メモリ情報管理部150によって、書き換え回数記憶部156に記憶されたフラッシュメモリ140の書き換え回数が更新される(S112)。
具体的には、フラッシュメモリアクセス部130がアクセスしたアドレスを基にして、書き込みが行われたフラッシュメモリ140のブロックに対応する書き換え回数が更新される。本実施の形態では、上述のようにフラッシュメモリ140を8つのブロックに分けて管理しているので、書き換え回数記憶部156は、8つのブロックの各ブロックに対応させて書き換え回数を記憶している。なお、この場合、書き換え回数記憶部156内においても複数のブロックによって書き換え回数を記憶するように構成しても構わないし、複数のブロックに分けることなく書き換え回数を記憶しても構わない。
次に、フラッシュメモリ140を管理するファイルシステムのフォーマットを検出する(S113)。
具体的に、FS検出部151は、フラッシュメモリアクセス部130の指示に従ってフラッシュメモリ140から所定のデータを読み出すことによってフラッシュメモリ140を管理するファイルシステムのフォーマットを検出して、フォーマットされているファイルシステムの種類を特定する。
このとき、ステップS113において、ファイルシステムの種類がexFAT以外であれば、書き込み処理の終了ステップ(S116)に進み、ファイルシステムの種類がexFATであれば次のステップ(S114)に進む。
ステップS114の処理は、図3AのステップS104の処理と同様である。すなわち、ステップS113において、フラッシュメモリ140のファイルシステムがexFATであることが検出された場合、ID検出部152は、フラッシュメモリアクセス部130経由でフラッシュメモリ140のすべてのOEMパラメタのフィールドを検索して、フラッシュメモリ140内にOEMパラメタとして書き換え回数を示すGUIDが存在するか否かを検出し、書き換え回数を示すGUIDが存在する場合は当該書き換え回数を示すGUIDを検出する(S114)。
ステップS114において、メモリ情報管理部150は、書き換え回数を示すGUIDが存在しない場合には書き込み処理を終了する(S116)が、書き換え回数を示すGUIDが存在する場合には、次のステップ(S115)に進む。
そして、ステップS114において書き換え回数を示すGUIDが検出された場合、メモリ情報管理部150は、書き換え回数記憶部156に記憶している書き換え回数のデータを、フラッシュメモリアクセス部130経由でフラッシュメモリ140のOEMパラメタの“Custom Defined”のフィールドに反映する(S115)。
これにより、フラッシュメモリ140のOEMパラメタの記憶領域に記憶されている書き換え回数のデータが、書き換え回数記憶部156に記憶されている書き換え回数のデータに従って更新される。すなわち、書き換え回数を示すGUIDに対応する書き換え回数の値が、書き換え回数記憶部156に記憶されている書き換え回数の値となる。
その後、書き込み処理の終了ステップ(S116)に進んで、書き込み処理が終了する。
なお、その後、例えば、フラッシュメモリ140の書き換え回数を確認する場合は、上述と同様に、ホスト100は、半導体メモリ装置110に対してフラッシュメモリ140の書き換え回数を取得するためのコマンドを発行すればよい。半導体メモリ装置110は、ホスト100からフラッシュメモリ140の書き換え回数を取得するためのコマンドを受信すると、フラッシュメモリアクセス部130によってフラッシュメモリ140におけるOEMパラメタの記憶領域から書き換え回数を示すGUIDに対応する書き換え回数のデータが読み出され、当該書き換え回数のデータがIF変換部120経由でホスト100に通知される。
以上、第1の実施の形態に係る半導体メモリ装置110によれば、半導体メモリ装置110のファイルシステムがexFAT等のデバイス依存のパラメタを有する特定のファイルシステムであれば、ホスト100のファイルシステムの機能を用いることにより、半導体メモリ装置110の種類を特定することなく、統一的なアクセス方法でデバイス固有の情報を取得することが可能になる。
本実施の形態では、exFATにおけるデバイス依存のパラメタを利用して、フラッシュメモリ140の書き換え回数であることを示す第1の識別情報を設定し、書き換え回数記憶部156に記憶されている書き換え回数を第1の識別情報に対応する値に反映させる。これにより、第1の識別情報に対応する書き換え回数の値を読み出して参照することにより、半導体メモリ装置110の種類に関わらず、統一的なアクセス方法によってフラッシュメモリ140の書き換え回数を取得することができる。
また、第1の実施の形態では、上述のとおり、フラッシュメモリ140を複数のブロックに分けて管理するように構成した。この場合、フラッシュメモリ140が複数のブロックに分けられて書き換え回数が管理されていることを示す第2の識別情報(第2の識別子)がOEMパラメタとしてフラッシュメモリ140に記憶されていることが好ましい。この第2の識別情報としては、例えば、複数のブロックに分けられて書き換え回数が管理されていることを示すGUIDとして設定することができる。
さらに、フラッシュメモリ140を複数のブロックに分けた場合、ID検出部152は、さらに、フラッシュメモリ140に第2の識別情報がOEMパラメタとして記憶されているか否かを検出して、第2の識別情報が記憶されている場合は当該第2の識別情報を検出するように構成することが好ましい。そして、第2の識別情報が記憶されていることが検出された場合、書き換え回数記憶部156においてフラッシュメモリ140の各ブロック単位での書き変え回数が、対応するフラッシュメモリ140の各ブロックのOEMパラメタにおける所定の記憶領域に反映される。
このように、フラッシュメモリ140を複数のブロックに分けた場合、書き換え回数を示すGUID(第1の識別情報)は、フラッシュメモリ140における複数のブロックの各ブロックに対応させて設定することが好ましい。すなわち、例えば、図4に示すように、フラッシュメモリ140を8つのブロックに分けた場合、書き換え回数を示すGUID(第1の識別情報)としては8つ設定することが好ましい。
なお、第1の実施の形態において、書き換え回数を示すGUID(第1の識別情報)に対応する書き換え回数のデータは、書き換え回数を示すGUIDとともにデバイス依存のOEMパラメタとしてフラッシュメモリ140の所定の記憶領域に記憶したが、これに限らない。
例えば、書き換え回数を示すGUID(第1の識別情報)に対応する書き換え回数のデータは、フラッシュメモリ140のexFATによって管理されていない他の記憶領域、あるいは、メモリ情報管理部150等の半導体メモリ装置110内におけるフラッシュメモリ140以外の他の記憶領域に記憶されていてもよい。この場合、フラッシュメモリ140の記憶領域に書き換え回数を示すGUID(第1の識別情報)がデバイス依存のパラメタとして存在することが検出された場合に、書き換え回数記憶部156に記憶されている書き換え回数を、上記の他の記憶領域に反映する。
この場合であっても、上記の他の記憶領域に記憶されているデータは書き換え回数を示すGUID(第1の識別情報)と対応しているので、第1の識別情報に対応する書き換え回数のデータを読み出すことにより、半導体メモリ装置110の種類に関わらず、統一的なアクセス方法によってフラッシュメモリ140の書き換え回数を取得することができる。なお、この処理を実現するために専用のドライバを設けても構わない。例えば、メモリ情報管理部150内に、書き換え回数記憶部156の書き換え回数が反映される記憶領域が存在する場合、メモリ情報管理部150に当該専用のドライバを設けることができる。
(第2の実施の形態)
次に、第2の実施の形態について、図5を用いて説明する。図5は、第2の実施の形態に係る半導体メモリシステムの構成を示すブロック図である。
図5に示すように、第2の実施の形態に係る半導体メモリシステムは、ホスト200と半導体メモリ装置270とで構成されており、ホスト200が半導体メモリ装置270に対してアクセスを行う。
ホスト200は、PC又は半導体メモリ装置270を記録メディアにするビデオカメラ等である。本実施の形態では、ホスト200はPCとして説明を行う。
また、半導体メモリ装置270は、ホスト200に対して着脱可能なSDカード等であり、第1の実施の形態と同様の構成のフラッシュメモリを有する。すなわち、半導体メモリ装置270のフラッシュメモリはOEMパラメタを有するexFATのファイルシステムによって管理されており、OEMパラメタとしてはフラッシュメモリの書き換え回数を示すGUIDと当該GUIDに対応する書き換え回数の値とが割り当てられている。
本実施の形態において、ホスト200は、ホスト200の機能を実現するアプリケーション210と、物理的に半導体メモリ装置270を制御するハードウェアをソフトウェアで制御するデバイスドライバ260と、アプリケーション210とデバイスドライバ260との間で中間的な処理を行うフィルタドライバ220とから構成される。
フィルタドライバ220は、半導体メモリ装置270に記録されているデータをファイルとして管理するファイルシステムドライバ230と、デバイスドライバ260経由で半導体メモリ装置270に対してデータの書き込み又は読み出し等の処理を指示するアクセス部250と、メモリ情報更新部240とから構成される。
メモリ情報更新部240は、第1の実施の形態に係るメモリ情報管理部150と同等の機能を有しており、FS検出部251と、ID検出部252と、書き換え回数記憶部256とを有する。
FS検出部251、ID検出部252及び書き換え回数記憶部256は、それぞれ第1の実施の形態に係る、FS検出部151、ID検出部252及び書き換え回数記憶部256と同等の機能を有するので、その説明は省略する。
次に、第2の実施の形態に係る半導体メモリシステムの動作処理について、図6A及び図6Bを用いて説明する。図6Aは、第2の実施の形態において、ホスト200が半導体メモリ装置270を検出した時に、半導体メモリ装置270を初期化する場合のフローを示すフローチャートである。図6Bは、第2の実施の形態において、ホスト200が半導体メモリ装置270に対してデータの書き込みを行った場合のフローを示すフローチャートである。
最初に、図6Aを用いて、本実施の形態における初期化フローを説明する。
図6Aに示すように、ホスト200は半導体メモリ装置270を検出した場合に処理を開始する(S201)。
例えば、ホスト200に半導体メモリ装置270がセットされた場合に、ホスト200は半導体メモリ装置270を検出し、以下の処理を実行する。
次に、半導体メモリ装置270におけるフラッシュメモリを管理するファイルシステムのフォーマットを検出する(S202)。
ステップS202の処理は、第1の実施の形態のステップS103の処理と同様であり、FS検出部251は、検出した半導体メモリ装置270にアクセスして、フラッシュメモリを管理するファイルシステムのフォーマットを検出して、フォーマットされているファイルシステムの種類を特定する。
このとき、ステップS203において、ファイルシステムの種類がexFAT以外であれば初期化完了のステップ(S206)に進み、ファイルシステムの種類がexFATであれば次のステップ(S203)に進む。
ステップS203の処理は、第1の実施の形態のステップS104の処理と同様である。すなわち、ステップS202において、フラッシュメモリのファイルシステムがexFATであることが検出された場合、ID検出部252は、フラッシュメモリのすべてのOEMパラメタのフィールドを検索して、書き換え回数を示すGUIDが存在するか否かを検出し、書き換え回数を示すGUIDが存在する場合は当該書き換え回数を示すGUIDを検出する(S203)。
ステップS203において、書き換え回数を示すGUIDが存在しない場合には初期化完了のステップ(S206)に進み、書き換え回数を示すGUIDが存在する場合には次のステップ(S204)に進む。
ステップS203において書き換え回数を示すGUIDが検出された場合、メモリ情報更新部240は、OEMパラメタの読み出しを通じて、半導体メモリ装置270から、書き換え回数を示すGUIDに対応する書き換え回数を読み出すことによってフラッシュメモリの書き換え回数を取得する(S204)。
次に、読み出した書き換え回数を書き換え回数記憶部256に記憶する(S205)。これにより、ホスト200によって検出された特定の半導体メモリ装置270におけるフラッシュメモリの書き換え回数を取得することができる。
その後、初期化完了のステップ(S206)に進んで初期化完了となる。
次に、図6Bを用いて、ホスト200が半導体メモリ装置270にデータを書き込む場合の書き込みフローについて説明する。
図6Bにおいて、ステップS211からステップS216の処理は、基本的には、図3Bに示す第1の実施の形態におけるステップS111からステップS116の処理と同様である。
但し、本実施の形態では、ステップS215が第1の実施の形態のステップS115と異なり、ステップS215において、メモリ情報更新部240は、アクセス部250及びデバイスドライバ260経由で、書き換え回数記憶部256に記憶されている書き換え回数のデータを、半導体メモリ装置270のフラッシュメモリにおける所定のOEMパラメタの情報として反映する。以下、本実施の形態に係る書き込みフローについて詳述する。
まず、ホスト200は、半導体メモリ装置270に対してフラッシュメモリへの書き込みコマンドを送信し、これにより、半導体メモリ装置270におけるフラッシュメモリへの書き込みが開始する(S211)。
このとき、フラッシュメモリへの書き込み処理が実行されると同時に、メモリ情報更新部240によって、書き換え回数記憶部256に記憶される書き換え回数が更新される(S212)。
次に、フラッシュメモリを管理するファイルシステムのフォーマットを検出する(S213)。
具体的に、FS検出部251は、フラッシュメモリから所定のデータを読み出すことによってフラッシュメモリを管理するファイルシステムのフォーマットを検出して、フォーマットされているファイルシステムの種類を特定する。
このとき、ステップS213において、ファイルシステムの種類がexFAT以外であれば、書き込み処理の終了ステップ(S216)に進み、ファイルシステムの種類がexFATであれば次のステップ(S214)に進む。
次に、ステップS213において、フラッシュメモリのファイルシステムがexFATであることが検出された場合、ID検出部252は、すべてのOEMパラメタのフィールドを検索して、OEMパラメタの中に書き換え回数を示すGUIDが存在するか否かを検出し、書き換え回数を示すGUIDが存在する場合は当該書き換え回数を示すGUIDを検出する(S214)。
ステップ214において、メモリ情報更新部240は、書き換え回数を示すGUIDが存在しない場合には書き込み処理を終了する(S216)が、書き換え回数を示すGUIDが存在する場合には、次のステップ(S215)に進む。
そして、ステップS214において書き換え回数を示すGUIDが検出された場合、メモリ情報更新部240は、書き換え回数記憶部256に記憶している書き換え回数のデータを、半導体メモリ装置270におけるフラッシュメモリのOEMパラメタに反映する(S215)。
これにより、フラッシュメモリに記憶されている書き換え回数のデータが、書き換え回数記憶部256に記憶されている書き換え回数のデータに従って更新される。すなわち、書き換え回数を示すGUIDに対応する書き換え回数の値が、書き換え回数記憶部256に記憶されている書き換え回数の値となる。
その後、書き込み処理の終了ステップ(S216)に進んで、書き込み処理が終了する。
以上、第2の実施の形態に係る半導体メモリシステムによれば、半導体メモリ装置270を管理するファイルシステムがexFAT等のデバイス依存のパラメタを有する特定のファイルシステムであれば、ホスト200のファイルシステムの機能を用いることにより、ホスト200の処理のみで、半導体メモリ装置270の種類を特定することなく、統一的なアクセス方法でデバイス固有の情報を取得することが可能になる。
本実施の形態では、第1の実施の形態と同様に、exFATにおけるデバイス依存のパラメタを利用して、フラッシュメモリの書き換え回数であることを示す第1の識別情報を設定し、書き換え回数記憶部256に記憶されている書き換え回数を第1の識別情報に対応する値に反映させる。これにより、第1の識別情報に対応する書き換え回数の値を読み出して参照することにより、半導体メモリ装置270の種類に関わらず、統一的なアクセス方法によってフラッシュメモリの書き換え回数を取得することができる。
なお、第2の実施の形態における半導体メモリ装置270としては、第1の実施の形態に係る半導体メモリ装置110を用いることもできる。但し、この場合、半導体メモリ装置のフラッシュメモリへの書き換え回数の反映は、ホストと半導体メモリ装置とで重複して行われないように、ホスト及び半導体メモリ装置のいずれか一方のみで行うことが好ましい。
また、第2の実施の形態では、半導体メモリ装置270のフラッシュメモリにデータを書き込む毎に、書き換え回数記憶部256に記憶される書き換え回数を半導体メモリ装置270におけるOEMパラメタの書き換え回数に反映させるようにしたが、これに限らない。例えば、ホスト200における書き換え回数記憶部256の書き換え回数の更新は、半導体メモリ装置270のフラッシュメモリにデータを書き込む毎に行うが、半導体メモリ装置270におけるOEMパラメタへの書き換え回数の反映は、数回の書き込みを1つの繰り返し単位として又は所定の時間間隔によって行っても構わない。あるいは、半導体メモリ装置270への電源の供給を停止するときに、又は、半導体メモリ装置270をホスト200から外すときに、上記のOEMパラメタへの書き換え回数の反映の処理を行っても構わない。
(第3の実施の形態)
次に、第3の実施の形態について、図7〜図12を用いて説明する。
まず、第3の実施の形態に係る半導体メモリシステムにおけるホストの構成について、図7を用いて説明する。図7は、第3の実施の形態に係る半導体メモリシステムにおけるホストの構成を示すブロック図である。なお、図7において、図5に示す構成要素と同じ構成要素については同じ符号を用い、その説明を省略する。
図7に示すように、本実施の形態に係るホスト300と第2の実施の形態に係るホスト200とは、メモリ情報更新部の構成が異なる。すなわち、本実施の形態において、ホスト300におけるメモリ情報更新部340は、現在時間を管理するとともにデータを書き込んだ時間を管理するタイマー301を有する。
次に、第3の実施の形態に係る半導体メモリシステムにおける半導体メモリ装置の構成について、図8を用いて説明する。図8は、第3の実施の形態に係る半導体メモリシステムにおける半導体メモリ装置の構成を示すブロック図である。なお、図8において、図1に示す構成要素と同じ構成要素については同じ符号を用い、その説明を省略する。
図8に示すように、本実施の形態に係る半導体メモリ装置310と第1の実施の形態に係る半導体メモリ装置110とは、メモリ情報管理部の構成が異なる。すなわち、本実施の形態において、半導体メモリ装置310におけるメモリ情報管理部350は、半導体メモリ装置310に書き込みを行った書き込み時間と現在時間とから半導体メモリ装置310に記録された記録データの保証ができるか否かを判定するリテンション判定部353を有する。
リテンション判定部353は、タイマー301を参照することで、半導体メモリ装置310のフラッシュメモリ140にデータが書き込まれた時間と現在の時間とから、フラッシュメモリ140に記録された記録データの保証ができるか否かを判定する機能を有しており、フラッシュメモリ140に記録された記録データがデータ保持可能期間を過ぎているかどうかを判断する。
本実施の形態に係る半導体メモリ装置310におけるOEMパラメタのデータの割り当てについて、図9を用いて説明する。図9は、第3の実施の形態に係る半導体メモリ装置310におけるOEMパラメタのデータの割り当てを示す図である。本実施の形態では、第1の実施の形態と同様に、フラッシュメモリ140における8つのブロックの書き換え回数を、OEMパラメタの8つの“Custom Defined”のフィールドに反映する例を示す。
図9に示すように、本実施の形態において、フラッシュメモリ140における8つのブロックは、BP、ブロック番号、書き換え回数に加えて、最終書き込み時間と現在時間とを保持する。各ブロックでは、最終書き込み時間と現在時間とが管理されている。なお、図9に示すように、本実施の形態では、最後にデータが書き込まれた年月日である最終書き込み年月日を最終書き込み時間とし、現在の年月日を現在時間として管理している。これにより、最終書き込み日からの経過時間を日数の精度で管理することができる。なお、最終書き込み時間及び現在時間は、年月日に限らず、時刻であっても、あるいは、年月日と時刻との組み合わせであっても構わない。すなわち、最終書き込み時間とは、最後にデータが書きこまれたときのタイミングを示す時間情報であり、現在時間とは、現在の時間情報である。
次に、第3の実施の形態に係る半導体メモリシステムの動作処理について、図10A及び図10Bを用いて説明する。図10Aは、第3の実施の形態において、ホスト300が半導体メモリ装置310を検出した際の初期化処理のフローを示すフローチャートである。図10Bは、第3の実施の形態において、ホスト300が半導体メモリ装置310に対してデータの書き込みを行った場合のフローを示すフローチャートである。
最初に、図10Aを用いて、本実施の形態における初期化フローを説明する。
図10Aにおいて、ステップS301からステップS305の処理及びステップS307の処理は、基本的には、図6Aに示す第2の実施の形態におけるステップS201からステップS206の処理と同様である。
本実施の形態では、第2の実施の形態の初期化フローに対して、ステップS306が追加されている。すなわち、本実施の形態において、ホスト300は、半導体メモリ装置310を検出して、フラッシュメモリ140から読み出した書き換え回数のデータを、書き換え回数記憶部256に記憶させた(S305)後に、タイマー301によって示される現在時間を図9が示すOEMパラメタのフィールドに書き込む(S306)。
このように、本実施の形態では、半導体メモリ装置310がホスト300にセットされたとき等に上記の初期化を行って、半導体メモリ装置310から書き換え回数を示すGUIDに対応する書き換え回数を読み出して書き換え回数記憶部256に記憶する場合、現在時間が半導体メモリ装置310における所定のOEMパラメタとして書き込まれる。
次に、図10Bを用いて、ホスト300が半導体メモリ装置310にデータを書き込む場合の書き込みフローについて説明する。
図10Bにおいて、ステップS311からステップS316の処理は、基本的には、図6Bに示す第2の実施の形態におけるステップS211からステップS216の処理と同様である。
但し、本実施の形態では、ステップS315が第2の実施の形態のステップS215と異なり、ステップS315において、半導体メモリ装置310へ書き込みを行う際に、タイマー301によって示される書き込み時間を、当該書き込み時間と対応付けられた第3の識別情報に対応する記憶領域に反映される。
具体的には、ステップS315において、半導体メモリ装置310のメモリ情報管理部350は、ステップS314において書き換え回数を示すGUIDが検出された場合、書き換え回数のみならず、最終書き込み時間を、書き換え回数を示すGUIDに対応するOEMパラメタのフィールド(記憶領域)に反映させる(S315)。なお、本実施の形態では、上述のように、書き込み時間に対応付けられた第3の識別情報としては、書き換え回数を示すGUID(第1の識別情報)を用いている。
次に、本実施の形態に係る半導体メモリシステムにおけるリテンション判定の動作処理について、図11及び図12を用いて説明する。図11は、第3の実施の形態に係る半導体メモリシステムにおけるリテンション判定の処理のフローを示すフローチャートである。
本実施の形態では、半導体メモリ装置310のフラッシュメモリ140に記憶されたデータがデータ保持可能期間内であるかどうかを判断する。
図11に示すように、ホスト300等からの所定の制御コマンドによって又は所定のタイミングで、フラッシュメモリ140に記憶されたデータがデータ保持可能期間内であるかどうかの判断が開始する(S321)。例えば、半導体メモリ装置310がホスト300にセットされた場合に上記の判断が開始する。
このとき、メモリ情報管理部350によって、書き換え回数記憶部156に記憶されたフラッシュメモリ140の書き換え回数が更新される(S322)。
次に、フラッシュメモリ140を管理するファイルシステムのフォーマットを検出する(S323)。具体的に、FS検出部151は、フラッシュメモリ140から所定のデータを読み出すことによってフラッシュメモリ140を管理するファイルシステムのフォーマットを検出して、フォーマットされているファイルシステムの種類を特定する。
このとき、ステップS323において、ファイルシステムの種類がexFAT以外であれば、判断終了ステップ(S328)に進み、ファイルシステムの種類がexFATであれば次のステップ(S324)に進む。
ステップS323において、フラッシュメモリ140のファイルシステムがexFATであることが検出された場合、ID検出部152は、フラッシュメモリ140のすべてのOEMパラメタのフィールドを検索して、OEMパラメタの中に書き換え回数を示すGUIDが存在するか否かを検出し、書き換え回数を示すGUIDが存在する場合は当該書き換え回数を示すGUIDを検出する(S324)。
ステップ324において、メモリ情報管理部350は、書き換え回数を示すGUIDが存在しない場合には判断終了ステップ(S328)に進むが、書き換え回数を示すGUIDが存在する場合には、次のステップ(S325)に進む。
そして、ステップS324において書き換え回数を示すGUIDが検出された場合、半導体メモリ装置310は、図9に示されるOEMパラメタのフィールドに記憶されている書き換え回数に基づいてデータ保持可能期間を演算する(S325)。
ここで、データ保持可能期間を算出するときの算出処理について、図12を用いて説明する。図12は、第3の実施の形態に係る半導体メモリシステムのリテンション判定において、データ保持可能期間を算出するために用いる図であり、データ保持可能期間と書き換え回数との相関関係を示す図である。図12において、縦軸はデータ保持可能期間を示しており、横軸は書き換え回数を示している。
図12に示すように、データ保持可能期間と書き換え回数とは、書き換え回数が増えるに従ってデータ保持可能期間が短くなる関係を有する。なお、図12では、説明を容易にするために、当該関係を直線で表示している。
図12に示される関係により、「現在の書き換え回数」に対して、「現メモリ状態のデータ保持可能期間」を求めることができる。
次に、リテンション判定部353は、最終書き込み時間と現在時間とに基づいて、最後にデータが書き込まれた最終書き込み時間からの経過期間を求め、当該経過期間とS325によって算出したデータ保持可能期間とを比較して、警告を通知するか否かを判断する(S326)。
例えば、経過期間がデータ保持可能期間を超えている場合に、所定の警告を通知するように設定することができる。なお、現在時間は、半導体メモリ装置310のフラッシュメモリのOEMパラメタのフィールドに記憶された現在時間を読み出すことにより取得することができる。
そして、ステップS326において、警告を通知しないと判断した場合は判断終了ステップ(S328)に進み、警告を通知すると判断した場合は次のステップ(S327)に進む。
警告を通知すると判断した場合、メモリ情報管理部350は、ホスト300に対して、データ保持可能期間が過ぎているという警告を通知する(S327)。
その後、判断終了のステップ(S328)に進んで判断終了となる。
以上、第3の実施の形態に係る半導体メモリシステムによれば、第2の実施の形態と同様に、半導体メモリ装置310を管理するファイルシステムがexFAT等のデバイス依存のパラメタを有する特定のファイルシステムであれば、ホスト300のファイルシステムの機能を用いることにより、ホスト300の処理のみで、半導体メモリ装置310の種類を特定することなく、統一的なアクセス方法でデバイス固有の情報を取得することが可能になる。これにより、半導体メモリ装置310の種類に関わらず、統一的なアクセス方法によってフラッシュメモリ140の書き換え回数を取得することができる。
さらに、本実施の形態に係る半導体メモリシステムによれば、半導体メモリ装置310を管理するファイルシステムがexFAT等のデバイス依存のパラメタを有する特定のファイルシステムであれば、ホスト300のファイルシステムの機能を用いることにより、ホスト300の処理のみで、半導体メモリ装置310の種類を特定することなく、統一的なアクセス方法によってリテンション特性を持つ半導体メモリ装置310に対してデータ保持可能期間を求めることができる。これにより、半導体メモリ装置310に記憶されるデータの信頼性を確保することができるとともに、半導体メモリ装置310に搭載されているフラッシュメモリ140の特性に合わせてホストでの信頼性を判断する判断基準を変える必要がなくなる。
なお、第3の実施の形態では、書き換え回数記憶部を半導体メモリ装置310内で実現する方法について説明したが、書き換え回数記憶部をホスト300内で実現しても、同等の効果を得ることができる。
また、第3の実施の形態では、タイマー301をホスト300に設け、リテンション判定部353を半導体メモリ装置310に設けたが、これに限らない。例えば、タイマーを半導体メモリ装置310のメモリ情報管理部350に設け、リテンション判定部をホスト300のメモリ情報更新部340に設けてもよい。あるいは、半導体メモリ装置310のメモリ情報管理部350にのみタイマー及びテンション判定部を設けても構わないし、ホスト300のメモリ情報更新部340にのみタイマー及びテンション判定部を設けても構わない。
以上、本発明の実施の形態に係る半導体メモリ装置及び半導体メモリシステムについて、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。
例えば、本発明の実施の形態では、不揮発性メモリとしてフラッシュメモリを用いたが、フラッシュメモリのみならず、他の不揮発性メモリに適応しても同様の効果が得られることはいうまでもない。
その他、本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したもの、または異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
本発明に係る半導体メモリ装置及び半導体メモリシステムは、メモリカード等の半導体メモリ装置及び当該メモリカード等の半導体メモリ装置を備える半導体メモリシステムとして広く利用することができ、特に、デバイスの種類に依存せずに利用することができるので信頼性を必要とされる業務用映像記録分野等において有用である。
100、200、300、1100 ホスト
110、270、310、1110 半導体メモリ装置
120、1120 IF変換部
130、1130 フラッシュメモリアクセス部
140、1140 フラッシュメモリ
150、350、1150 メモリ情報管理部
151、251 ファイルシステム検出部
152、252 ID検出部
156、256、1156 書き換え回数記憶部
210 アプリケーション
220 フィルタドライバ
230 ファイルシステムドライバ
240、340 メモリ情報更新部
250 アクセス部
260 デバイスドライバ
301 タイマー
353 リテンション判定部
1001 コントロールゲート
1002 酸化絶縁膜
1003 フローティングゲート
1004 トンネル酸化膜
1005 ソース電極
1006 ドレイン電極
1007 Pチャンネルサブストレート

Claims (17)

  1. 情報を記憶する半導体メモリ装置であって、
    当該半導体メモリ装置に依存するパラメタを有する所定のファイルシステムによって管理された不揮発性メモリと、
    前記不揮発性メモリの書き換え回数を記憶する書き換え回数記憶部と、
    前記不揮発性メモリに、前記書き換え回数と対応付けられた第1の識別情報が前記パラメタとして記憶されているか否かを検出する識別情報検出部と、
    前記識別情報検出部によって前記第1の識別情報が記憶されていることが検出された場合に、前記書き換え回数記憶部に記憶されている前記書き換え回数を前記第1の識別情報に対応する記憶領域に反映する管理部とを有する
    半導体メモリ装置。
  2. 前記第1の識別情報に対応する記憶領域は、前記不揮発性メモリにおける記憶領域である
    請求項1に記載の半導体メモリ装置。
  3. 前記不揮発性メモリは、
    複数のブロックに分けられており、
    前記書き換え回数記憶部は、
    前記複数のブロックの各ブロック単位での書き変え回数を、前記書き換え回数として記憶し、
    前記識別情報検出部は、
    さらに、前記不揮発性メモリに、前記不揮発性メモリが前記複数のブロックに分けられて前記書き換え回数が管理されていることを示す第2の識別情報が前記パラメタとして記憶されているか否かを検出する
    請求項1又は2に記載の半導体メモリ装置。
  4. 前記第1の識別情報は、前記複数のブロックの各ブロックに対応して設定されている
    請求項3に記載の半導体メモリ装置。
  5. 前記半導体メモリ装置は、さらに、
    時間を管理するタイマーと、
    前記タイマーを参照することで、前記不揮発性メモリへ書き込みを行った書き込み時間と現在時間とから前記不揮発性メモリに記録された記録データの保証ができるか否かを判定するリテンション判定部とを有し、
    前記管理部は、さらに、
    前記不揮発性メモリに情報が書き込まれる際に、前記タイマーによって示される書き込み時間を、当該書き込み時間と対応付けられた第3の識別情報に対応する記憶領域に反映する
    請求項1〜4のいずれか1項に記載の半導体メモリ装置。
  6. 前記半導体メモリ装置は、
    さらに、前記所定のファイルシステムのフォーマットを検出するファイルシステム検出部を有する
    請求項1〜5のいずれか1項に記載の半導体メモリ装置。
  7. 前記所定のファイルシステムがexFATであり、
    前記識別情報検出部は、
    前記ファイルシステム検出部によって前記所定のファイルシステムがexFATであることが検出された場合に、前記第1の識別情報が前記不揮発性メモリに記憶されているか否かを検出する
    請求項6に記載の半導体メモリ装置。
  8. 前記不揮発性メモリは、フラッシュメモリである
    請求項1〜7のいずれか1項に記載の半導体メモリ装置。
  9. 所定のファイルシステムによって管理され、不揮発性メモリを有する半導体メモリ装置と、前記半導体メモリ装置の情報を管理するメモリ情報更新部を有するホスト機器とを備える半導体メモリシステムであって、
    前記所定のファイルシステムは、前記半導体メモリ装置に依存するパラメタを有し、
    前記メモリ情報更新部は、
    前記半導体メモリ装置の書き換え回数を記憶する書き換え回数記憶部と、
    前記不揮発性メモリに、前記書き換え回数と対応付けられた第1の識別情報が前記パラメタとして記憶されているか否かを検出する識別情報検出部とを有し、
    前記メモリ情報更新部は、
    前記識別情報検出部によって前記第1の識別情報が記憶されていることが検出された場合に、前記書き換え回数記憶部に記憶されている前記書き換え回数を前記第1の識別情報に対応する記憶領域に反映する
    半導体メモリシステム。
  10. 前記第1の識別情報に対応する記憶領域は、前記不揮発性メモリにおける記憶領域である
    請求項9に記載の半導体メモリシステム。
  11. 前記不揮発性メモリは、
    複数のブロックに分けられており、
    前記書き換え回数記憶部は、
    前記複数のブロックの各ブロック単位での書き変え回数を前記書き換え回数として記憶し、
    前記識別情報検出部は、
    さらに、前記不揮発性メモリに、前記不揮発性メモリが前記複数のブロックに分けられて前記書き換え回数が管理されていることを示す第2の識別情報が前記パラメタとして記憶されているか否かを検出する
    請求項9又は10に記載の半導体メモリシステム。
  12. 前記第1の識別情報は、前記複数のブロックの各ブロックに対応して設定されている
    請求項11に記載の半導体メモリシステム。
  13. 前記メモリ情報更新部は、さらに、
    時間を管理するタイマーと、
    前記タイマーを参照することで、前記半導体メモリ装置に書き込みを行った書き込み時間と現在時間とから前記半導体メモリ装置に記録された記録データの保証ができるか否かを判定するリテンション判定部とを有し、
    前記メモリ情報更新部は、さらに、
    前記半導体メモリ装置に情報が書き込まれる際に、前記タイマーによって示される書き込み時間を、当該書き込み時間と対応付けられた第3の識別情報に対応する記憶領域に反映する
    請求項9〜12のいずれか1項に記載の半導体メモリシステム。
  14. 前記メモリ情報更新部又は前記半導体メモリ装置の一方は、
    時間を管理するタイマーをさらに具備し、
    前記メモリ情報更新部又は前記半導体メモリ装置の他方は、
    前記タイマーを参照することで、前記半導体メモリ装置に書き込みを行った書き込み時間と現在時間とから前記半導体メモリ装置に記録された記録データの保証ができるか否かを判定するリテンション判定部を有し、
    前記メモリ情報更新部又は前記半導体メモリ装置は、
    前記半導体メモリ装置に情報が書き込まれる際に、前記タイマーによって示される前記書き込み時間を、当該書き込み時間に対応付けられた第3の識別情報に対応する記憶領域に反映する
    請求項9〜12のいずれか1項に記載の半導体メモリシステム。
  15. 前記メモリ情報更新部は、
    さらに、前記所定のファイルシステムのフォーマットを検出するファイルシステム検出部を有する
    請求項9〜14のいずれか1項に記載の半導体メモリシステム。
  16. 前記所定のファイルシステムがexFATであり、
    前記識別情報検出部は、
    前記ファイルシステム検出部によって前記所定のファイルシステムがexFATであることが検出された場合に、前記第1の識別情報が前記不揮発性メモリに記憶されているか否かを検出する
    請求項15に記載の半導体メモリシステム。
  17. 前記不揮発性メモリは、フラッシュメモリである
    請求項9〜16のいずれか1項に記載の半導体メモリシステム。
JP2011040853A 2010-05-12 2011-02-25 半導体メモリ装置及び半導体メモリシステム Active JP5593254B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011040853A JP5593254B2 (ja) 2010-05-12 2011-02-25 半導体メモリ装置及び半導体メモリシステム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2010109797 2010-05-12
JP2010109797 2010-05-12
JP2011040853A JP5593254B2 (ja) 2010-05-12 2011-02-25 半導体メモリ装置及び半導体メモリシステム

Publications (2)

Publication Number Publication Date
JP2011258182A JP2011258182A (ja) 2011-12-22
JP5593254B2 true JP5593254B2 (ja) 2014-09-17

Family

ID=44912748

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011040853A Active JP5593254B2 (ja) 2010-05-12 2011-02-25 半導体メモリ装置及び半導体メモリシステム

Country Status (2)

Country Link
US (1) US8566513B2 (ja)
JP (1) JP5593254B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10222982B2 (en) 2016-02-10 2019-03-05 Ricoh Company, Ltd. Lifetime management device and lifetime management method

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2555379B1 (en) 2010-03-31 2015-03-04 Honda Motor Co., Ltd. Contactless charging system
JP5039193B2 (ja) * 2010-09-22 2012-10-03 株式会社東芝 半導体記憶装置および制御方法
TWI517165B (zh) * 2014-03-31 2016-01-11 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
US11461010B2 (en) 2015-07-13 2022-10-04 Samsung Electronics Co., Ltd. Data property-based data placement in a nonvolatile memory device
US10282324B2 (en) 2015-07-13 2019-05-07 Samsung Electronics Co., Ltd. Smart I/O stream detection based on multiple attributes
US10509770B2 (en) 2015-07-13 2019-12-17 Samsung Electronics Co., Ltd. Heuristic interface for enabling a computer device to utilize data property-based data placement inside a nonvolatile memory device
JP2018142240A (ja) 2017-02-28 2018-09-13 東芝メモリ株式会社 メモリシステム
JP2019133471A (ja) * 2018-01-31 2019-08-08 Dynabook株式会社 電子機器、及び電子機器の起動方法
JP7424321B2 (ja) * 2019-02-06 2024-01-30 ソニーグループ株式会社 メモリ診断装置およびメモリ診断方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3078946B2 (ja) * 1993-03-11 2000-08-21 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 一括消去型不揮発性メモリの管理方法及び半導体ディスク装置
US5963970A (en) * 1996-12-20 1999-10-05 Intel Corporation Method and apparatus for tracking erase cycles utilizing active and inactive wear bar blocks having first and second count fields
US5832493A (en) * 1997-04-24 1998-11-03 Trimble Navigation Limited Flash file management system
JP3812933B2 (ja) * 2001-04-19 2006-08-23 シャープ株式会社 ファイルシステムおよびその制御方法
JP4072345B2 (ja) * 2002-01-15 2008-04-09 キヤノン株式会社 ファイル記録制御装置、ファイル管理システム、ファイル管理方法、記録媒体及びプログラム
US7181611B2 (en) * 2002-10-28 2007-02-20 Sandisk Corporation Power management block for use in a non-volatile memory system
US7103732B1 (en) * 2002-10-28 2006-09-05 Sandisk Corporation Method and apparatus for managing an erase count block
US7032087B1 (en) * 2003-10-28 2006-04-18 Sandisk Corporation Erase count differential table within a non-volatile memory system
US7089349B2 (en) * 2003-10-28 2006-08-08 Sandisk Corporation Internal maintenance schedule request for non-volatile memory system
JP3927192B2 (ja) 2004-03-29 2007-06-06 松下電器産業株式会社 メモリカード及びメモリカードドライブ
US8321439B2 (en) * 2004-12-17 2012-11-27 Microsoft Corporation Quick filename lookup using name hash
JP2006235960A (ja) * 2005-02-24 2006-09-07 Fujitsu Ltd ガーベッジコレクション高速化方法
JP4999325B2 (ja) * 2005-12-21 2012-08-15 ルネサスエレクトロニクス株式会社 フラッシュメモリ
JP4645538B2 (ja) * 2006-06-29 2011-03-09 ソニー株式会社 記録装置および寿命情報算出方法
JP5010505B2 (ja) * 2008-03-01 2012-08-29 株式会社東芝 メモリシステム
US8031521B1 (en) * 2008-05-20 2011-10-04 Marvell International Ltd. Reprogramming non-volatile memory devices for read disturbance mitigation
JP5142968B2 (ja) * 2008-12-15 2013-02-13 キヤノン株式会社 記録装置及びその制御方法
US8248856B2 (en) * 2010-10-20 2012-08-21 Seagate Technology Llc Predictive read channel configuration

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10222982B2 (en) 2016-02-10 2019-03-05 Ricoh Company, Ltd. Lifetime management device and lifetime management method

Also Published As

Publication number Publication date
US20110283053A1 (en) 2011-11-17
US8566513B2 (en) 2013-10-22
JP2011258182A (ja) 2011-12-22

Similar Documents

Publication Publication Date Title
JP5593254B2 (ja) 半導体メモリ装置及び半導体メモリシステム
US10657047B2 (en) Data storage device and method of performing partial garbage collection
US9747202B1 (en) Storage module and method for identifying hot and cold data
US8312554B2 (en) Method of hiding file at data protecting mode for non-volatile memory module, memory controller and portable memory storage apparatus
CN111128287B (zh) 操作存储设备的方法、存储设备以及操作存储系统的方法
US9715445B2 (en) File differentiation based on data block identification
JP2011107851A (ja) メモリシステム
KR102663304B1 (ko) 구역 네임스페이스 디바이스들에서의 판독 처리
KR20080077668A (ko) 플래시 메모리 관리 시스템 및 방법
US20150278087A1 (en) Storage device and an operating method of the storage device
US8090692B2 (en) Method for using an OTP storage device
US8156278B2 (en) Non-volatile data storage system and method thereof
US20200225850A1 (en) Wear Leveling in Solid State Devices
WO2008016081A1 (fr) Contrôleur de mémoire, dispositif de mémoire non-volatile, dispositif d'accès et système de mémoire non-volatile
US20040123064A1 (en) Method for storing data in a write-once memory array using a write-many file system
US10007508B2 (en) Memory system having firmware and controller
JP2007034581A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
US20190114177A1 (en) Data storage device and method for operating non-volatile memory
US8589620B2 (en) Data writing method, memory controller, and memory storage apparatus
US8250285B2 (en) Non-volatile dual memory die for data storage devices
JP5482424B2 (ja) 半導体メモリ装置および半導体メモリシステム
US20240143168A1 (en) Storage device controlling garbage collection or wear leveling on the basis of timestamp, and method thereof
US20240152451A1 (en) Storage device translating logical address on the basis of sequentiality of namespace, and method thereof
KR100688463B1 (ko) 물리 메모리의 데이터 기록 및 삭제 방법
JP2024043337A (ja) メモリシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140611

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140804

R151 Written notification of patent or utility model registration

Ref document number: 5593254

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151