JP2010152703A - 不揮発性記憶装置、情報記録システム、及び情報記録方法 - Google Patents
不揮発性記憶装置、情報記録システム、及び情報記録方法 Download PDFInfo
- Publication number
- JP2010152703A JP2010152703A JP2008330883A JP2008330883A JP2010152703A JP 2010152703 A JP2010152703 A JP 2010152703A JP 2008330883 A JP2008330883 A JP 2008330883A JP 2008330883 A JP2008330883 A JP 2008330883A JP 2010152703 A JP2010152703 A JP 2010152703A
- Authority
- JP
- Japan
- Prior art keywords
- management information
- user data
- data
- command
- nonvolatile 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000015654 memory Effects 0.000 claims abstract description 88
- 238000012545 processing Methods 0.000 claims abstract description 61
- 238000007726 management method Methods 0.000 claims description 225
- 238000012937 correction Methods 0.000 claims description 15
- 238000013500 data storage Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 54
- 238000010586 diagram Methods 0.000 description 26
- 101000824318 Homo sapiens Protocadherin Fat 1 Proteins 0.000 description 11
- 102100022095 Protocadherin Fat 1 Human genes 0.000 description 11
- 101000824299 Homo sapiens Protocadherin Fat 2 Proteins 0.000 description 7
- 102100022093 Protocadherin Fat 2 Human genes 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000014759 maintenance of location Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 102100031269 Putative peripheral benzodiazepine receptor-related protein Human genes 0.000 description 3
- 101710166801 Translocator protein Proteins 0.000 description 3
- 230000006866 deterioration Effects 0.000 description 3
- 239000012141 concentrate Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/22—Employing cache memory using specific memory technology
- G06F2212/222—Non-volatile memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7206—Reconfiguration of flash memory system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Abstract
【解決手段】ホスト装置から入力される前記ユーザデータ及び前記管理情報に対する処理内容を記述したコマンドを受信し、前記受信したコマンドがいずれに対するものであるかを判別する。その判別の結果に応じて、前記ユーザデータ及び該ユーザデータをファイルシステム上で管理するための管理情報を記憶する不揮発性メモリ手段に対する制御方式を切り換える。そして、切り換え後の制御方式に従い、前記ユーザデータ又は前記管理情報を前記不揮発性メモリ手段に記録する。
【選択図】図1
Description
読出し処理の場合、図32Aに示すように、NVM制御部330が例えばREAD_DATAコマンドを検出して(ステップS231)、不揮発性メモリデバイス350に対し読み出し制御を行う(ステップS232)。このとき、ECC(Error Correcting Code)の確認、すなわち読出しデータの誤りの有無の確認(ステップS233)などが行われる。
一方、書込み処理の場合、図32Bに示すように、NVM制御部330が例えばWRITE_DATAコマンドを検出して(ステップS235)、不揮発性メモリデバイス350に対し書込み制御を行う(ステップS236)。このとき、不揮発性メモリデバイス350のステータスの確認(ステップS237)などが行われる。
アクセス単位となるセクタ(512Byte)をもとに先頭アドレスを0とした連続するアドレス空間としてストレージ空間が存在する。FATファイルシステムを例として、ストレージ空間を論理フォーマットした結果、先頭アドレスにBPBが配置され、それに続きPBR,FAT1,FAT2,ルートディレクトリが管理情報として配置される。User Data Areaは、ディレクトリとファイルを含む。
ホスト400は、スロットにメディア300が装着されたことを検出するとマウント処理を開始する。ホスト400は、まずFATファイルシステムのBPBを読出し(ステップS201)、続いてPBRを読み出す(ステップS202)。その後、ルートディレクトリを読み出す(ステップS203)。このように、BPB,PBR、ルートディレクトリは、メディア300がマウントされる度に必ず1回以上読み出される。それ故、管理情報にアクセスが集中する。
メディア300では、ファイルへの読出しアクセス指示を検出すると、まずFATファイルシステムのディレクトリを読み出し(ステップS211)、続いてFAT1を読出す(ステップS212)。その後、ユーザデータを読出す(ステップS213)。そして、ユーザデータが終了したか否かを判定し(ステップS214)、ユーザデータがまだ終了していない場合はステップS212のFAT1の読出し処理へ戻る。ユーザデータが終了した場合は、一連の処理を終了する。
メディア300では、ファイルへの書込みアクセス指示を検出すると、まずFATファイルシステムのディレクトリを読み出し(ステップS221)、目的のユーザデータを検索して書込みを行う(ステップS222)。書込み後、FAT1にユーザデータの書込み内容を反映し(ステップS223)、続いてFAT2にユーザデータの書込みを反映する(ステップS224)。そして、ユーザデータが終了したか否かを判定し(ステップS225)、ユーザデータがまだ終了していない場合はステップS222のユーザデータの書込み処理へ戻る。ユーザデータが終了した場合は、ディレクトリを書き込み(ステップS226)、一連の処理を終了する。
ホスト400が発行するコマンドには、処理内容、メディアのセクタアドレス及びセクタ数の情報が含まれている。この例では、コマンドのNo.1〜3、No.9〜11が管理情報へのアクセスを伴うものであり、複数回にわたって管理情報へアクセスしている。
まずメディア300は、ファイルへの書込みアクセス指示を検出すると、FATファイルシステムのディレクトリを読み出し(ステップS241)、目的のユーザデータ1を検索して書込みを行う(ステップS242)。書込み後、FAT1にユーザデータ1の書込み内容を反映し(ステップS243)、続いてFAT2にユーザデータの書込みを反映する(ステップS244)。ユーザデータ2をさらに保存処理中(ステップS245)に電源遮断した場合、ユーザデータ2にデータエラーが発生する。
まずメディア300では、ファイルへの読出しアクセス指示を検出すると、FATファイルシステムのディレクトリを読み出し(ステップS251)、続いてFAT1を読出す(ステップS252)。その後、ユーザデータ1を読出す(ステップS253)。続いて、FAT1を読出し(ステップS254)、ユーザデータ2を読み出そうとすると、保存処理が中断されているため(図38参照)、ファイルの途中で読出しエラーが発生する。この場合、そのファイルだけがアクセス不可能になり、他のユーザデータ及び管理情報には影響はない。
まずメディア300は、ファイルへの書込みアクセス指示を検出すると、FATファイルシステムのディレクトリを読み出し(ステップS261)、目的のユーザデータを検索して書込みを行う(ステップS262)。書込み後、FAT1にユーザデータの書込み内容を反映し(ステップS263)、続いてFAT2にユーザデータの書込みを反映する(ステップS264)。上記ユーザデータの変更に伴いディレクトリを保存処理中(ステップS265)に電源遮断が発生したとする。
メディア300では、ファイルへの読出しアクセス指示を検出すると、FATファイルシステムのディレクトリを読み出そうとするが(ステップS271)、ディレクトリアクセスで読出しエラーが発生する。保存処理中に電源遮断が発生したファイル以外の同じディレクトリに存在する全てのファイルがアクセス不可能になる。BPBやPBRがデータエラーとなった場合にはメディアとしての認識が不可能になり、すべてのユーザデータにアクセス不可能となる。
メディア300は、ホスト400からのシーケンス中にREAD_DATAのコマンドを検出すると、目的のデータがキャッシュ上のデータか否かを判定する(ステップS271)。キャッシュ上のデータでない場合は、ユーザデータ用NVM制御部331によって、不揮発性メモリデバイス350又は350Bから読み出す(ステップS272)。一方、キャッシュ上のデータである場合は、キャッシュ用NVM制御部332によって、所定のキャッシュ領域又はキャッシュ用不揮発性メモリデバイス360から読み出す(ステップS273)。
メディア300は、ホスト400からのシーケンス中にWRITE_DATAのコマンドを検出すると、キャッシュに目的のデータを書き込むための空き容量があるか否かを判定する(ステップS281)。キャッシュ上に空きがない場合は、ユーザデータ用NVM制御部331よって、キャッシュ領域に空きを作り(ステップS282)、ステップS283に移る。
一方、キャッシュ領域に空きがある場合、キャッシュ用NVM制御部332によって、所定のキャッシュ領域又はキャッシュ用不揮発性メモリデバイス360に書き込む(ステップS273)。
2.第2の実施の形態(メモリデバイス:ユーザデータ用及び管理情報用で同一のメモリデバイスの例)
3.第3の実施の形態(NVM制御部:不揮発性のキャッシュ領域を備える例)
4.第4の実施の形態(NVM制御部:ユーザデータ用に揮発性のキャッシュ領域を備える例)
5.第5の実施の形態(NVM制御アルゴリズムを切り替える例)
6.第6の実施の形態(ホストとメディアが一体構成である例)
メディアに対しデータの読出し及び書込みを行うホスト装置として機能する情報記録装置(以下、「ホスト」と称する。)と、メディアから構成されるストレージシステムを説明する。メディアは、半導体メモリデバイス等を備え電気的に書き換え可能な不揮発性記憶装置である。ホスト400としては、上記のデジタルカメラや携帯電話端末、パーソナルコンピュータなど、種々の情報記録装置を適用できる。
ストレージシステムは、ホスト100とメディア1からなり、メディア1はメディアコントローラ10、不揮発性メモリデバイス(NVM)80及び高信頼性不揮発性メモリデバイスからなる。
メディアコントローラ10は、ホストインターフェース20、プロトコル判別部30、NVM制御選択部40、ユーザデータ用NVM制御部50、管理情報用NVM制御部60、NVMインターフェース71,72を備える。
NVM制御部は、不揮発性メモリデバイスに対してRead/Write/Erase/Copyなどのストレージ機能を実現する手段であり、NVMを制御するためのNVM制御アルゴリズム50Aと、NVM制御回路50Bからなる。NVM制御部の構成は、周知であるので、ここでは簡単に説明するに留める。
上記空きブロック管理部50A1は、不揮発性メモリデバイス内の使用状況を管理する。また論物アドレス変換部50A2は、ホスト100が指定する論理アドレスを不揮発性メモリデバイス内の物理アドレスに変換する論物変換テーブルを参照して、論理アドレスと物理アドレスの変換を行う。また不良ブロック管理部50A3は、不揮発性メモリデバイス上に発生する不良ブロックの管理を行う。ホスト100からのデータを保存する領域として上記不良ブロックは使用されないようにメディア1内で制御される。
NVMコマンド制御回路50B1は、コマンドの処理内容に基づいて、不揮発性メモリデバイスに対して読出し/書込み処理を行う。ECC回路50B2は、ホスト100から受信したデータに誤りを訂正するための誤り訂正符号(以下、「ECCデータ」と証する。)を付加する。
図3は、ホストの内部構成を示すブロック図である。
ホスト100は、アプリケーション処理部110、ファイルシステム制御部120、メディア制御部130、メディアインターフェース140を備える。
上記ファイルシステム制御部120は、管理情報制御部121とユーザデータ制御部122を含む。またメディア制御部130は、管理情報用バッファ部131−1とユーザデータ用バッファ部131−2を含むデータ転送用バッファ131を備える。
図4に示すように、図3の各ブロックに対応して、アプリケーション150、ファイルシステム160、メディア制御ドライバ170から構成される。アプリケーション150は、ユーザの操作等に従いファイルアクセスを行うとき、ファイルシステム160を介してファイルアクセスを指示する。
メディア1は、ホスト100から読出し/書込みのシーケンスを受信すると、プロトコル判別部30が受信したシーケンス中のコマンドが、管理情報用プロトコルか否かを判別する(ステップS1)。管理情報用プロトコルでない場合は、ユーザデータ用NVM制御部50によって、不揮発性メモリデバイス80を制御する(ステップS2)。一方、管理情報用プロトコルである場合は、管理情報用NVM制御部60によって、高信頼性不揮発性メモリデバイス90を制御する(ステップS3)。
(1)管理情報であることを設定、解除するためのコマンドの例(図6)
指定するセクタ領域のデータを変更せずに、管理情報であることを設定、解除することができる。
(2)ユーザデータとコマンドは共通だが、パラメータで指定する例(図9)
管理情報であることの設定と実際のデータの書込みを同時に可能となる。
(3)それぞれ専用のアクセスコマンドを持った例(図11)
この場合、上記(2)と効果は同じだが、コマンドの形式が異なる。
(4)次に実行するコマンドが管理情報アクセスであることを設定するコマンドの例。(図13)
図6は、ホスト100からメディア1へのシーケンス例(1)を示す図である。
本例は、コマンドでアクセスするデータ属性として管理情報領域を指定する方式であり、例えば、SET_MNG(セクタアドレス, セクタ数)、CLR_MNG(セクタアドレス, セクタ数)のようなコマンド(プロトコル)を使用する。SET_MNGはそのアドレスに保存されるデータが管理情報であることを設定するコマンドである。また、CLR_MNGはそのアドレスに保存されるデータが管理情報ではないことを設定するコマンドである。これらのコマンドの説明に用いるフローチャートを図7、図8に示す。図7はユーザデータを管理情報に変更する処理を示し、図8は管理情報をユーザデータに変更する処理を示す。変更する場合には不揮発性メモリデバイス上での保存方法が異なるため、一度変更前の方法で読出したデータを、変更後の方法で書込みを行う必要がある。
プロトコル判別部30でSET _MNGのコマンドを検出した場合、まずNVM制御選択部40によってユーザデータ用NVM制御部50に切り換えられ、ユーザデータ用NVM制御部50によるユーザデータの読出し制御を行う(ステップS11)。次に、管理情報用NVM制御部60に切り換えられ、管理情報用NVM制御部60による管理情報の書込み制御を行う(ステップS12)。最後に、ユーザデータ用NVM制御部50に切り換えられ、ユーザデータ用NVM制御部50によるユーザデータの消去制御を行う(ステップS13)。
プロトコル判別部30でCLR _MNGのコマンドを検出した場合、まずNVM制御選択部40によって管理情報用NVM制御部60に切り換えられ、管理情報用NVM制御部60による管理情報の読出し制御を行う(ステップS21)。次に、ユーザデータ用NVM制御部50に切り換えられ、ユーザデータ用NVM制御部50によるユーザデータの書込み制御を行う(ステップS22)。最後に、管理情報用NVM制御部60に切り換えられ、管理情報用NVM制御部60による管理情報の消去制御を行う(ステップS23)。
図9は、ホスト100からメディア1へのシーケンス例(2)を示す図である。
本例は、ホスト100からメディア1へのアクセスと同時に属性を設定する方式である。例えば、WRITE_DATA (セクタアドレス, セクタ数,MNGフラグ)、READ_DATA (セクタアドレス, セクタ数,MNGフラグ)のようなコマンド(プロトコル)であり、パラメータとして与えられた値によってそのコマンドで処理を行うデータの属性がわかる。
メディア1は、ホスト100から読出し/書込みのシーケンスを受信すると、プロトコル判別部30はコマンドのパラメータに基づいて、受信したシーケンス中のコマンドが、管理情報用プロトコルか否かを判別する(ステップS31)。
MNGフラグがオフであれば、ユーザデータを対象とするコマンドであると判別して、ユーザデータ用NVM制御部50を選択し、不揮発性メモリデバイス80の制御を行う。一方、MNGフラグがオンあれば、管理情報を対象とするコマンドであると判別して、管理情報用NVM制御部60を選択し、高信頼性不揮発性メモリデバイス90の制御を行う。
図11、ホスト100からメディア1へのシーケンス例(3)を示す図である。
本例は、第2プロトコルと同様、ホスト100からメディア1へのアクセスと同時に属性を設定する方式である。例えば、WRITE_MNG (セクタアドレス, セクタ数)、READ_MNG (セクタアドレス, セクタ数)のようなコマンド(プロトコル)を使用し、オペレーションコードを解析することで管理情報に対する処理を行うコマンドであるかを判別する。
メディア1は、ホスト100から読出し/書込みのシーケンスを受信すると、プロトコル判別部30はオペレーションコードを解析して、受信したシーケンス中のコマンドが、管理情報用プロトコルか否かを判別する(ステップS41)。
解析の結果、ユーザデータコードであれば、ユーザデータを対象とするコマンドであると判別して、ユーザデータ用NVM制御部50を選択し、不揮発性メモリデバイス80の制御を行う。一方、管理情報コードであれば、管理情報を対象とするコマンドであると判別して、管理情報用NVM制御部60を選択し、高信頼性不揮発性メモリデバイス90の制御を行う。
図13は、ホスト100からメディア1へのシーケンス例(4)を示す図である。
本例は、次に記述するアクセスコマンドを管理情報アクセスに設定する方式である。例えば、SET_MNG_ACCESS()のようなコマンド(プロトコル)である。
メディア1は、ホスト100から読出し/書込みのシーケンスを受信すると、プロトコル判別部30はオペレーションコードを解析して、受信したシーケンス中のコマンドに、管理情報用プロトコルがあるか否かを判別する(ステップS41)。解析の結果、直前のコマンドがSET_MNG_ACCESSであれば、管理情報を対象とするコマンドであると判別して、管理情報用NVM制御部60を選択し、高信頼性不揮発性メモリデバイス90の制御を行う。一方、それ以外のコマンドを示すものであれば、ユーザデータを対象とするコマンドであると判別して、ユーザデータ用NVM制御部50を選択し、不揮発性メモリデバイス80の制御を行う。
本実施の形態は、同一の不揮発性メモリデバイスを使用し、管理情報用として誤り訂正コードを保存する領域のサイズを拡張し、ユーザデータよりも高い能力の誤り訂正コードを付加して保存するようにしたものである。
この例は、第1の実施の形態(図1)と比較して、ユーザデータ用メモリデバイスと管理情報用メモリデバイスで同一の不揮発性メモリデバイス80Aを備える。メディアコントローラ10Aは、NVMインターフェース70を介して不揮発性メモリデバイス80Aとデータ伝送を行う。ここで、管理情報用NVM制御部60の持つECC回路50B2はユーザデータ用よりも訂正能力の高い回路を採用し、そのため生成されるECCコードが大きくなるため、そのための領域を不揮発性メモリデバイス80A上に確保しておく。
本実施の形態は、メディアコントローラの各NVM制御部に不揮発性のキャッシュ領域を設けるようにしたものである。
本実施の形態のメディア1Bのメディアコントローラ10Bは、キャッシュメモリ51Aを備えたユーザデータキャッシュ用NVM制御部51、及びユーザデータ用NVM制御部52を備える。またキャッシュメモリ61Aを備えた管理情報キャッシュ用NVM制御部61、及び管理情報用NVM制御部62を備える。それに伴い、NVM制御選択手段もそれぞれについて用意する必要があり、NVM制御選択手段41,42を備える。
本実施の形態は、メディアコントローラの各NVM制御部にキャッシュ領域を設けるようにしたものである。ただし、ユーザデータ用のキャッシュ領域として、大容量で高速アクセス可能な揮発性メモリを採用している。
本実施の形態のメディア1Cのメディアコントローラ10Cは、キャッシュメモリ53Aを備えたユーザデータキャッシュ用NVM制御部53、及びユーザデータ用NVM制御部52を備える。またキャッシュメモリ61Aを備えた管理情報キャッシュ用NVM制御部61、及び管理情報用NVM制御部62を備える。
図18は、図16及び図17のメディアの読出し処理を示すフローチャートである。
メディアは、ホスト100から読出しシーケンスを受信すると、プロトコル判別部30が受信したシーケンス中のコマンドが、管理情報用プロトコルか否かを判別し(ステップS61)、管理情報用プロトコルでない場合は、ステップS62へ移行する。一方、管理情報用プロトコルである場合は、ステップS65へ移行する。
メディアは、ホスト100から読出しシーケンスを受信すると、プロトコル判別部30が受信したシーケンス中のコマンドが、管理情報用プロトコルか否かを判別し(ステップS71)、管理情報用プロトコルでない場合は、ステップS72へ移行する。一方、管理情報用プロトコルである場合は、ステップS75へ移行する。
メディアは、ホスト100からSET_MNGコマンドを検出すると、目的のデータがユーザデータ用キャッシュメモリ上のデータか否かを判定する(ステップS81)。ユーザデータ用キャッシュメモリ上のデータでない場合は、ステップS82へ移行する。一方、ユーザデータ用キャッシュメモリ上のデータである場合は、ステップS83へ移行する。
本実施の形態は、同一の不揮発性メモリデバイス(図15参照)を使用し、管理情報用NVM制御アルゴリズムを切り換えることで信頼性の高い保存を実現するものである。NVM制御部のNVM制御回路(図2参照)はユーザデータ用と管理情報用に持っていてもよいし、共通でもよい。図2のNVM制御アルゴリズム50Aの例として2つの手段が考えられる。いずれも2つの異なるブロックのページを一つのデータに割り当てる場合の例である。ブロックは不揮発性メモリデバイスの物理的な単位を示すものであり、ページは制御されるデータの単位を示すものである。以下、図22を参照して2つのアルゴリズムを説明する。
あるデータ(1ページ)の更新時に、ブロックAとブロックBの各1ページに更新を行う。領域のサイズを2倍に拡張し、1回の更新ごとに保存する領域を2つのページに保存する手段である。
(2)NVM制御アルゴリズム−2:交互書き
あるデータ(1ページ)の更新毎に、ブロックAとブロックBを交互に切換えて1ページずつ更新を行う。二重にデータを保存できるよう2倍に領域のサイズを拡張し、交互に切り替える手段である。
いずれのアルゴリズムも、最終ページまで書込んだ次は、新しい2つのブロックを割り当て、旧ブロックを消去する。
図23は、NVM制御アルゴリズム−1における読出し処理を示すフローチャートである。
管理情報用NVM制御部は、ブロックAの読出し元とページアドレスを決定し(ステップS101)、管理情報を読み出す(ステップS102)。ここで、データエラーが発生したか否かを判定し(ステップS103)、データエラーが発生したらステップS104へ、データエラーが発生していない場合は処理を終了する。ステップS2でデータエラーが発生した場合、ブロックBの読出し元とページアドレスを決定し、(ステップS104)、管理情報を読出し(ステップS105)、処理を終了する。
管理情報用NVM制御部は、ブロックAの書込み先とページアドレスを決定し(ステップS111)、管理情報を書き込む(ステップS112)。次に、ブロックBの書込み先とページアドレスを決定し、(ステップS113)、管理情報を書き込み(ステップS114)、処理を終了する。
(1)ステップS122で電源遮断が発生したケース:
ブロックAの読み出しページmでデータエラーが発生する。
ブロックBの読み出しページm−1が成功する(書込み前の古い管理情報)。
ブロックAの読み出しページmが成功する。
ブロックBのページmは消去状態のままである(書込み後の新しい管理情報)。
ブロックAの読み出しページmが成功する。
ブロックBの読み出しページmはデータエラーが発生する(書込み後の新しい管理情報)。
図26は、NVM制御アルゴリズム−2における読出し処理を示すフローチャートである。
管理情報用NVM制御部は、読み出し元のブロックA又はBを選択するとともに(ステップS131)、読み出し元のページアドレスを決定し(ステップS132)、管理情報を読み出す(ステップS133)。ここで、データエラーが発生したか否かを判定し(ステップS134)、データエラーが発生したらステップS141へ移行し、一つ前のブロックに戻って同様の処理を繰り返す。一方、データエラーが発生していない場合は処理を終了する。
管理情報用NVM制御部は、書込み先のブロックA又はBを選択するとともに(ステップS141)、書込み先のページアドレスを決定し(ステップS142)、管理情報を書き込む(ステップS143)。ステップS133が終了後、処理を終了する。
ステップS153で電源遮断が発生したケース:、
(1)書込み先BlockがBlock Aの場合
ブロックAの読み出しページmでデータエラーが発生する。
ブロックBの読み出しページm−1が成功する。
(2)書込み先ブロックがブロックBの場合
ブロックBの読み出しページmでデータエラーが発生する。
ブロックAの読み出しページmが成功する。
いずれの場合も書込み前の古いデータが読み出される。
本実施の形態は、ホストにメディアを格納し、一体構成としたものである。
図29は、本発明の第6の実施の形態に係るホストの内部構成を示すブロック図である。本例のホスト200は、図3に示したホスト100と比較して、メディア1がホスト本体に含まれた構成である。このように構成した場合、メディアを着脱しないホスト装置(情報記録装置)を提供することができる。なお、メディア1には、第1〜第5の実施の形態の各メディアを適用でき、その場合、各実施の形態の作用効果を得られる。
Claims (9)
- ユーザデータ及び該ユーザデータをファイルシステム上で管理するための管理情報を記憶する不揮発性メモリ手段と、
ホスト装置から入力される前記ユーザデータ及び前記管理情報に対する処理内容を記述したコマンドがいずれに対するものであるかを判別し、判別結果に応じて前記不揮発性メモリ手段に対する制御方式を切り換えるメディアコントローラと、
を備える不揮発性記憶装置。 - ユーザデータを記憶する第1の不揮発性メモリと、
前記第1の不揮発性メモリよりデータ保存の点で信頼性が高く、前記ユーザデータをファイルシステム上で管理するための管理情報を記憶する第2の不揮発性メモリと、を備え、
前記メディアコントローラは、
前記ホスト装置から入力される前記ユーザデータ及び前記管理情報に対する処理内容を記述したコマンドに応じて、前記第1の不揮発性メモリと前記第2の不揮発性メモリを切り換えてデータを保存すべく制御を行う、
請求項1に記載の不揮発性記憶装置。 - 前記メディアコントローラは、
前記ホスト装置から入力される前記ユーザデータ及び前記管理情報に対する前記コマンドを取得するホストインターフェースと、
前記ホストインターフェースで取得した前記ユーザデータ及び前記管理情報に対するコマンドのプロトコルに基づいて、いずれに対するコマンドであるか判別するプロトコル判別部と、
前記第1の不揮発性メモリに対する制御を行う第1の不揮発性メモリ制御部と、
前記第2の不揮発性メモリに対する制御を行う第2の不揮発性メモリ制御部と、
前記プロトコル判別部の判別結果に応じて、前記第1の不揮発性メモリ制御部と前記第2の不揮発性メモリ制御部を切り換える不揮発性メモリ制御選択部と、を更に備える
請求項2に記載の不揮発性記憶装置。 - 前記メディアコントローラは、
前記ホスト装置から入力される、前記ユーザデータ及び前記管理情報に対する処理内容を記述したコマンドが前記管理情報に対するものである場合、管理情報に対し前記ユーザデータより高い能力を持つ誤り訂正コードを付加して前記不揮発性メモリに保存すべく制御を行う、
請求項1に記載の不揮発性記憶装置。 - 前記不揮発性メモリ手段は一つの不揮発性メモリから構成され、
前記メディアコントローラは、
前記ホスト装置から入力される前記ユーザデータ及び前記管理情報に対する前記コマンドを取得するホストインターフェースと、
前記ホストインターフェースで取得した前記ユーザデータ及び前記管理情報に対するコマンドのプロトコルに基づいて、いずれに対するコマンドであるか判別するプロトコル判別部と、
保存すべきデータに第1の誤り訂正コードを付与する第1の誤り訂正回路を有し、前記不揮発性メモリに対する制御を行う第1の不揮発性メモリ制御部と、
保存すべきデータに前記第1の誤り訂正コードより高い訂正能力の第2の誤り訂正コードを付与する第2の誤り訂正回路を有し、前記不揮発性メモリに対する制御を行う第2の不揮発性メモリ制御部と、
前記プロトコル判別部の判別結果に応じて、前記第1の不揮発性メモリ制御部と前記第2の不揮発性メモリ制御部を切り換える不揮発性メモリ制御選択部と、を更に備える
請求項4に記載の不揮発性記憶装置。 - 前記メディアコントローラは、
前記ホスト装置から入力される、前記ユーザデータ及び前記管理情報に対する処理内容を記述したコマンドが前記管理情報に対するものである場合、前記不揮発性メモリに前記管理情報を2重に書き込むべく制御を行う、
請求項1に記載の不揮発性記憶装置。 - 前記メディアコントローラは、
前記ホスト装置から入力される前記ユーザデータ及び前記管理情報に対する前記コマンドを取得するホストインターフェースと、
前記ホストインターフェースで取得した前記ユーザデータ及び前記管理情報に対するコマンドのプロトコルに基づいて、いずれに対するコマンドであるか判別するプロトコル判別部と、
前記プロトコル判別部の判別の結果、前記管理情報に対するコマンドであった場合、前記不揮発性メモリに前記管理情報を2重に書き込むべく制御を行う不揮発性メモリ制御部と、を更に備える
請求項5に記載の不揮発性記憶装置。 - ファイルアクセス指示を行うアプリケーション処理部と、
前記アプリケーション処理部のファイルアクセス指示に基づいて、ユーザデータと該ユーザデータをファイルシステム上で管理するための管理情報に対する処理内容を記述したコマンドを生成するファイルシステム制御部と、
前記ユーザデータと前記管理情報に対するコマンドを、不揮発性記憶装置へ転送するメディア制御部と、
を備えるホスト装置と、
前記ユーザデータ及び該ユーザデータをファイルシステム上で管理するための管理情報を記憶する不揮発性メモリ手段と、
前記ホスト装置から入力される前記ユーザデータ及び前記管理情報に対する処理内容を記述したコマンドがいずれに対するものであるかを判別し、判別結果に応じて前記不揮発性メモリ手段に対する制御を切り換えるメディアコントローラと、
を含む情報記録システム。 - ホスト装置から入力される、処理対象となるデータがユーザデータであるか、管理情報であるかを記述したコマンドを受信する第1ステップと、
前記受信したコマンドがいずれに対するものであるかを判別する第2ステップと、
前記判別の結果に応じて、前記ユーザデータ及び該ユーザデータをファイルシステム上で管理するための管理情報を記憶する不揮発性メモリ手段に対する制御方式を切り換える第3ステップと、
前記切り換え後の制御方式に従い、前記ユーザデータ又は前記管理情報を前記不揮発性メモリ手段に記録する第4ステップと、を含む
情報記録方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008330883A JP5458568B2 (ja) | 2008-12-25 | 2008-12-25 | 不揮発性記憶装置、情報記録システム、及び情報記録方法 |
US12/644,686 US20100169556A1 (en) | 2008-12-25 | 2009-12-22 | Nonvolatile storage device, information recording system, and information recording method |
CN2009102597124A CN101763309B (zh) | 2008-12-25 | 2009-12-23 | 非易失性存储装置、信息记录系统及信息记录方法 |
KR1020090131087A KR20100075769A (ko) | 2008-12-25 | 2009-12-24 | 비휘발성 기억 장치, 정보 기록 시스템 및 정보 기록 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008330883A JP5458568B2 (ja) | 2008-12-25 | 2008-12-25 | 不揮発性記憶装置、情報記録システム、及び情報記録方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010152703A true JP2010152703A (ja) | 2010-07-08 |
JP5458568B2 JP5458568B2 (ja) | 2014-04-02 |
Family
ID=42286287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008330883A Active JP5458568B2 (ja) | 2008-12-25 | 2008-12-25 | 不揮発性記憶装置、情報記録システム、及び情報記録方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20100169556A1 (ja) |
JP (1) | JP5458568B2 (ja) |
KR (1) | KR20100075769A (ja) |
CN (1) | CN101763309B (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4841709B1 (ja) * | 2010-09-06 | 2011-12-21 | 三菱電機株式会社 | メモリ制御装置およびメモリ制御方法 |
JP2012203862A (ja) * | 2011-03-28 | 2012-10-22 | Fujitsu Ltd | 退避処理装置、及び、退避処理方法 |
JP2014092973A (ja) * | 2012-11-05 | 2014-05-19 | Toshiba Corp | メモリシステム |
JP2017054571A (ja) * | 2015-09-11 | 2017-03-16 | 株式会社東芝 | メモリシステム |
JP2021189619A (ja) * | 2020-05-27 | 2021-12-13 | 株式会社バッファロー | 記憶装置 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8131912B2 (en) * | 2007-09-27 | 2012-03-06 | Kabushiki Kaisha Toshiba | Memory system |
US9727570B2 (en) * | 2011-06-03 | 2017-08-08 | Apple Inc. | Mount-time unmapping of unused logical addresses in non-volatile memory systems |
CN103797492B (zh) * | 2011-07-27 | 2016-09-21 | 希捷科技有限公司 | 用于安全存储劫持保护的方法和装置 |
US8756458B2 (en) | 2011-12-12 | 2014-06-17 | Apple Inc. | Mount-time reconciliation of data availability |
US20140129788A1 (en) * | 2012-11-07 | 2014-05-08 | Taejin Info Tech Co., Ltd. | High-performance large scale semiconductor storage module with hybrid technology |
US10095582B2 (en) * | 2014-10-29 | 2018-10-09 | International Business Machines Corporation | Partial rebuilding techniques in a dispersed storage unit |
US20180181332A1 (en) * | 2014-10-29 | 2018-06-28 | International Business Machines Corporation | Expanding a dispersed storage network memory beyond two locations |
US10459792B2 (en) * | 2014-10-29 | 2019-10-29 | Pure Storage, Inc. | Using an eventually consistent dispersed memory to implement storage tiers |
US10175885B2 (en) * | 2015-01-19 | 2019-01-08 | Toshiba Memory Corporation | Memory device managing data in accordance with command and non-transitory computer readable recording medium |
KR102565918B1 (ko) * | 2016-02-24 | 2023-08-11 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작방법 |
JP2019106056A (ja) | 2017-12-13 | 2019-06-27 | 東芝メモリ株式会社 | メモリシステム及びメモリデバイス |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001306393A (ja) * | 2000-04-20 | 2001-11-02 | Mitsubishi Electric Corp | 記憶装置 |
JP2002149479A (ja) * | 2000-11-09 | 2002-05-24 | Matsushita Electric Ind Co Ltd | メモリカード装置 |
JP2005196634A (ja) * | 2004-01-09 | 2005-07-21 | Buffalo Inc | 外部記憶装置 |
JP2005196739A (ja) * | 2003-12-29 | 2005-07-21 | Samsung Electronics Co Ltd | デュアルチップパッケージ |
JP2007066102A (ja) * | 2005-08-31 | 2007-03-15 | Matsushita Electric Ind Co Ltd | メモリコントローラ、不揮発性記憶装置及び不揮発性記憶システム |
JP2008117003A (ja) * | 2006-10-31 | 2008-05-22 | Toshiba Microelectronics Corp | 不揮発性半導体記憶装置およびその制御方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7200842B1 (en) * | 1999-02-02 | 2007-04-03 | Sun Microsystems, Inc. | Object-oriented instruction set for resource-constrained devices |
US8078794B2 (en) * | 2000-01-06 | 2011-12-13 | Super Talent Electronics, Inc. | Hybrid SSD using a combination of SLC and MLC flash memory arrays |
JP3495709B2 (ja) * | 2001-01-12 | 2004-02-09 | 三洋電機株式会社 | データ記録装置 |
US7801930B2 (en) * | 2004-05-10 | 2010-09-21 | Panasonic Corporation | Recording medium, host device, and data processing method |
US7739576B2 (en) * | 2006-08-31 | 2010-06-15 | Micron Technology, Inc. | Variable strength ECC |
JP2008176677A (ja) * | 2007-01-22 | 2008-07-31 | Matsushita Electric Ind Co Ltd | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム |
-
2008
- 2008-12-25 JP JP2008330883A patent/JP5458568B2/ja active Active
-
2009
- 2009-12-22 US US12/644,686 patent/US20100169556A1/en not_active Abandoned
- 2009-12-23 CN CN2009102597124A patent/CN101763309B/zh not_active Expired - Fee Related
- 2009-12-24 KR KR1020090131087A patent/KR20100075769A/ko not_active Application Discontinuation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001306393A (ja) * | 2000-04-20 | 2001-11-02 | Mitsubishi Electric Corp | 記憶装置 |
JP2002149479A (ja) * | 2000-11-09 | 2002-05-24 | Matsushita Electric Ind Co Ltd | メモリカード装置 |
JP2005196739A (ja) * | 2003-12-29 | 2005-07-21 | Samsung Electronics Co Ltd | デュアルチップパッケージ |
JP2005196634A (ja) * | 2004-01-09 | 2005-07-21 | Buffalo Inc | 外部記憶装置 |
JP2007066102A (ja) * | 2005-08-31 | 2007-03-15 | Matsushita Electric Ind Co Ltd | メモリコントローラ、不揮発性記憶装置及び不揮発性記憶システム |
JP2008117003A (ja) * | 2006-10-31 | 2008-05-22 | Toshiba Microelectronics Corp | 不揮発性半導体記憶装置およびその制御方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4841709B1 (ja) * | 2010-09-06 | 2011-12-21 | 三菱電機株式会社 | メモリ制御装置およびメモリ制御方法 |
WO2012032595A1 (ja) * | 2010-09-06 | 2012-03-15 | 三菱電機株式会社 | メモリ制御装置およびメモリ制御方法 |
US9135107B2 (en) | 2010-09-06 | 2015-09-15 | Mitsubishi Electric Corporation | Memory control device and memory control method |
JP2012203862A (ja) * | 2011-03-28 | 2012-10-22 | Fujitsu Ltd | 退避処理装置、及び、退避処理方法 |
US8862808B2 (en) | 2011-03-28 | 2014-10-14 | Fujitsu Limited | Control apparatus and control method |
JP2014092973A (ja) * | 2012-11-05 | 2014-05-19 | Toshiba Corp | メモリシステム |
JP2017054571A (ja) * | 2015-09-11 | 2017-03-16 | 株式会社東芝 | メモリシステム |
JP2021189619A (ja) * | 2020-05-27 | 2021-12-13 | 株式会社バッファロー | 記憶装置 |
JP7457248B2 (ja) | 2020-05-27 | 2024-03-28 | 株式会社バッファロー | 記憶装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101763309A (zh) | 2010-06-30 |
US20100169556A1 (en) | 2010-07-01 |
CN101763309B (zh) | 2013-07-03 |
KR20100075769A (ko) | 2010-07-05 |
JP5458568B2 (ja) | 2014-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5458568B2 (ja) | 不揮発性記憶装置、情報記録システム、及び情報記録方法 | |
US8386698B2 (en) | Data accessing method for flash memory and storage system and controller using the same | |
US8291155B2 (en) | Data access method, memory controller and memory storage system | |
US8589617B2 (en) | Write once recording device | |
KR101086857B1 (ko) | 데이터 머지를 수행하는 반도체 스토리지 시스템의 제어 방법 | |
US8621139B2 (en) | Data writing method for writing data into block of multi-level cell NAND flash memory by skipping a portion of upper page addresses and storage system and controller using the same | |
US8312554B2 (en) | Method of hiding file at data protecting mode for non-volatile memory module, memory controller and portable memory storage apparatus | |
JP4633802B2 (ja) | 不揮発性記憶装置及びデータ読み出し方法及び管理テーブル作成方法 | |
JP4931810B2 (ja) | 最適化されたシーケンシャルなクラスタの管理のためのfat分析 | |
US8364885B2 (en) | Semiconductor storage system for decreasing page copy frequency and controlling method thereof | |
US20070288711A1 (en) | Snapshot copy management method used for logic volume manager | |
US9785384B2 (en) | Semiconductor storage device and method for controlling nonvolatile semiconductor memory | |
US8112575B2 (en) | Memory controller, nonvolatile memory device, access device, and nonvolatile memory system | |
JP2008015769A (ja) | ストレージシステム及び書き込み分散方法 | |
US7694087B2 (en) | Duplicate data storing system, duplicate data storing method, and duplicate data storing program for storage device | |
JPWO2007000862A1 (ja) | メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びデータ書き込み方法 | |
US20130290609A1 (en) | Memory formatting method, memory controller, and memory storage apparatus | |
JP5592478B2 (ja) | 不揮発性記憶装置及びメモリコントローラ | |
JP4829202B2 (ja) | 記憶装置及びメモリ制御方法 | |
JP4130808B2 (ja) | フォーマット方法 | |
JP2010237907A (ja) | ストレージ装置および記録方法 | |
US20110264848A1 (en) | Data recording device | |
JP4245021B2 (ja) | ストレージ装置、ストレージシステム、ストレージ装置の制御方法 | |
JP2010003150A (ja) | メモリコントローラおよびフラッシュメモリのデータ管理方法 | |
JP2008009688A (ja) | データアクセスシステム、データアクセスプログラム及びデータアクセス方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130430 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130501 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130624 |
|
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: 20131217 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131230 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5458568 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |