JP6975202B2 - 瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体 - Google Patents

瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体 Download PDF

Info

Publication number
JP6975202B2
JP6975202B2 JP2019110012A JP2019110012A JP6975202B2 JP 6975202 B2 JP6975202 B2 JP 6975202B2 JP 2019110012 A JP2019110012 A JP 2019110012A JP 2019110012 A JP2019110012 A JP 2019110012A JP 6975202 B2 JP6975202 B2 JP 6975202B2
Authority
JP
Japan
Prior art keywords
momentary interruption
host
level cell
data
block
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
JP2019110012A
Other languages
English (en)
Other versions
JP2020191055A (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.)
Silicon Motion Inc
Original Assignee
Silicon Motion Inc
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 Silicon Motion Inc filed Critical Silicon Motion Inc
Publication of JP2020191055A publication Critical patent/JP2020191055A/ja
Application granted granted Critical
Publication of JP6975202B2 publication Critical patent/JP6975202B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Description

本発明は、データ保存装置に関し、特にフラッシュメモリ装置の瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体に関するものである。
フラッシュメモリ装置は、一般に、NORフラッシュメモリ装置とNANDフラッシュメモリ装置とに分類される。NORフラッシュメモリ装置は、ランダムアクセス装置であり、ホスト(Host)側は、アドレスピンにNORフラッシュメモリ装置のアドレスを任意にアクセスし、そのアドレスに格納されたデータをNORフラッシュメモリ装置のデータピンから取得することができる。一方、NANDフラッシュメモリ装置は、ランダムアクセスではなく、シーケンシャルアクセス装置である。NANDフラッシュメモリ装置は、NORフラッシュメモリ装置のように、任意のランダムアドレスにアクセスすることができず、要請コマンド(Command)の種類(例えば、読み取り、書き込み、消去など)、及びコマンドでのアドレスを定義するために、ホスト側からNANDフラッシュメモリ装置にシーケンスのバイト(Bytes)の数値を書き込む必要がある。アドレスは、一つのページ(フラッシュメモリ装置における書き込む動作の最小データブロック)又は一つのブロック(フラッシュメモリ装置における削除操作の最小データブロック)を指定ことができる。
自然又は人間によって引き起こされる瞬断が揮発性ダイナミックランダムアクセスメモリに保存されたデータを失わせる可能性に対し、本発明の実施形態は、NANDフラッシュメモリを利用して上記の問題を解決できる、瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体を提供する。
本発明は、このような事情に鑑みてなされたものであり、上述関連技術分野における欠点をどのように軽減または排除するかについては、解決すべき問題としている。
本発明は、瞬断からの回復処理方法を提供する。前記瞬断からの回復処理方法は、電子装置の処理ユニットで実行され、電子装置が瞬断を発生したことを検出すると、フラッシュメモリの接続インタフェースを駆動して、ホストに伝送されるデータをシングルレベルセルモードで複数のチャンネルを介して複数の論理ユニット番号の疑似シングルレベルセルブロックに書き込むステップを含む。疑似シングルレベルセルブロックは、正常動作中に、瞬断が検出されるまで保留され、データを書き込まない。
本発明は、処理ユニットが実行可能なコンピュータプログラムを格納し、且つ前記コンピュータプログラムが前記処理ユニットで実行され、前記の方法を実現できる、瞬断からの回復処理のコンピュータ読み取り可能な記憶媒体を提供する。
本発明は、瞬断からの回復処理装置を提供し、前記瞬断からの回復処理装置は、関連するハードウェア又はソフトウェアの指令をロードして前記の方法を実行するための処理ユニットを少なくとも備える。
上述した実施形態の優れる点は、疑似シングルレベルセルブロックを設置すること、及びマルチチャンネルのシングルレベルセルモードでのデータ書き込むことによって、ダイナミックランダムアクセスメモリのデータを、できる限り最短時間で疑似シングルレベルセルブロックに書き込むことができる。
本発明の他の利点は、以下の内容及び図面を参照しながら説明する。
以下の添付図面は、本発明、本発明の一部の構成、例示の実施形態またはそれらに関する説明をより理解しやすいためのものであり、本発明を限定するものではない。
本発明の実施形態に係るフラッシュメモリ装置のシステム構成の概念図である。 フラッシュメモリの接続インタフェースと論理ユニット番号(Logical Unit Number、LUN)との接続を示す概念図である。 本発明の実施形態に係る論理パーティションの概念図。 本発明の実施形態に係るLUNの物理ブロック分割の概念図。 本発明の実施形態に係る瞬断からの回復処理方法のフローチャート。 本発明の実施形態に係る論理−物理表(Logical−to−Physical L2P Table)と物理位置との対応関係を示す概念図。 本発明の実施形態に係る瞬断からの回復処理方法のフローチャート。
実施するための形態
以下、図面を参照しながら本発明の実施形態を説明する。これらの図面において、同じ参照番号は、同じまたは類似の構成要素及び方法のステップを示している。
なお、本発明の明細書に使用されている「含む」、「備える」などの用語は、ある特定の技術的特徴、数値、動作ステップ、構造及び/又は構成要素を有することを意味しており、特定の技術的特徴、数値、動作ステップ、構造、構成要素、又はこれらの任意の組合せを更に備えることを排除しないことを留意されたい。
また、本発明の明細書及び特許請求の範囲に記載の「第1」、「第2」、「第3」などの用語は、請求項又は実施形態における構成要素を区別するための記載であり、構成の順位、方法の先行順位などを区別するものではない。
なお、ある構成要素が別の構成要素に「接続」または「結合」されている場合、その構成要素は他の構成要素に直接接続または結合することができ、または、別の構成要素を介して上記2つの構成要素同士を接続することもできる。つまり、中間の構成要素を有することを排除しない。これに対して、ある構成要素が別の構成要素に「直接接続」または「直接結合」されている場合は、中間の構成要素を有しない。また、構成要素間の関係を説明するために使用される他の用語について、例えば、「介して」に対する「直接介して」、又は「隣接」に対する「直接隣接」なども同様に解釈される。
図1に示すように、システム構成100は、ホスト110と、制御部130と、ダイナミックランダムアクセスメモリ150(Dynamic Random Access Memory、DRAM)と、論理ユニット番号(Logical Unit Number、LUN)170とを含む。前記システム構成100は、サーバ、パーソナルコンピューター、ノートブックコンピューター(Laptop PC)、タブレットコンピューター、携帯電話、デジタルカメラ、デジタルビデオカメラなどの電子製品に実装することができる。制御部130は、LUN 170のデータアクセスを制御するための特定用途向け集積回路(Application−Specific Integrated Circuit ASIC)であり、処理ユニット131と、ホストのインタフェース135と、フラッシュメモリの接続インタフェース139とを含む。LUN 170が提供する保存場所(例えば16、32、64 Gigabytes GBs)は、ブートディスク(Boot Disk)及びキャッシュデータ(Cache Data)の保存場所とすることができる。LUN 170内の保存セルは、トリプルレベルセル(Triple Level Cells、TLCs)又はクアッドレベルセル(Quad−Level Cells、QLCs)である。保存セルがTLCであり且つ8つの状態を記録できる場合、一つの物理ワード線は、ページP#0(最上位ビットページとも呼ばれる、Most Significant Bit MSB page)、ページP#1(センタービットページとも呼ばれる、CSB、Center Significant Bit page)及びページP#2(最下位ビットページとも呼ばれる、Least Significant Bit LSB page)を含む。保存セルがQLCであり且つ16個の状態を記録できる場合、MSB、CSB及びLSBページの他に、TSB(トップビットとも呼ばれる、TSB、Top Significant Bit)ページを更に含む。スタティックランダムアクセスメモリ(Static Random Access Memory SRAM)137は、処理ユニット131が実行中に必要な変数、データテーブル(Data Tables)などのデータを一時に格納することに用いられる。処理ユニット131は、フラッシュメモリの接続インタフェース139を介してNANDフラッシュ170と通信する、例えば、オーペンNANDフラッシュインタフェース(Open NAND Flash Interface ONFI)、ダブルデータレートトグル(DDR Toggle)、又は他のインタフェースを使用することができる。
制御部130は、ホストのインタフェース135を介してホスト110と通信する処理ユニット131を含む。ホストのインタフェース135は、ユニバーサル・フラッシュ・ストレージ(Universal Flash Storage UFS)、高速不揮発性メモリ(Non−Volatile Memory Express NVMe)、ユニバーサル・シリアル・バス(Universal Serial Bus、USB)、アドバンスド・テクノロジー・アタッチメント(advanced technology attachment、ATA)、シリアルアドバンスド・テクノロジー・アタッチメント(serial advanced technology attachment、SATA)、ペリフェラル・コンポーネント・インターコネクト(peripheral component interconnect express、PCI−E)又は他のインタフェースである。ホスト110及び処理ユニット131のいずれも、
汎用ハードウェア(例えば、単一プロセッサ、並列処理能力を有する複数のプロセッサ、又は他の運算機能を有するプロセッサ)を使用するなど、様々な方法で実施され、且つ、ファームウェアやソフトウェアの指令(Instructions)を実行すると後述の機能を提供することができる。マルチプロセッサは、プログラム命令を読み込んで実行するための単一の運算コンポーネントであり、2つ以上の独立したプロセッサ(マルチコアとも呼ばれる)を装備することができる。
図2に示すように、フラッシュメモリの接続インタフェース139は、3つの入出力チャネル(I/O channels、以下チャンネルと称する)CH#0〜CH#2を含み、各チャンネルに3つのLUNが接続され、例えば、チャンネルCH#0がLUN 170#0〜170#2に接続され、チャンネルCH#1がLUN 170#3〜170#5に接続される。つまり、複数のLUNが一つのチャンネルを共有する。例えば、処理ユニット131は、イネーブル信号CE#0を送信してLUN 170#0、170#3及び170#6をイネーブルさせるようにフラッシュメモリの接続インタフェース139を駆動し、次いてイネーブルされたLUNよりユーザーデータを並列に読み取り、又はユーザーデータをイネーブルされたLUNに書き込む。
データ保存装置における保存場所は、異なる種類のデータを格納する複数のパーティション(Partitions)に論理的に分割されることができる。各パーティションは、連続の論理アドレス、例えば、論理ブロックアドレス(Logical Block Address、LBA)を利用して区分する。本実施形態において、各LBAは512バイト(Bytes)、4KB、16KBなどのサイズを有するデータに対応付けることができ、以下の説明では4KBを例に挙げて説明するが、これに限定されない。図3に示すように、第1パーティション310は、6GBのスペースを有し、アドレスの範囲がLBA#0〜LBA#1、572、863であり、ホスト110に対応するユーザーデータ(データと略称する)、例えば、オペレーティングシステム関連プログラムコードを含むことができる。第2パーティション330は、2GBのスペースを有し、アドレスの範囲がLBA#1、572、864〜LBA#2、097、151であり、ホスト110に対応するデータ、例えば、アプリケーション関連プログラムコードを含むことができる。第3パーティション350は、5GBのスペースを有し、アドレスの範囲がLBA#2、097、152〜LBA#3、407、871であり、ホスト110に対応するデータ、例えば、ホスト110が動作中に生じるキャッシュデータを含むことができる。ダイナミックランダムアクセスメモリ150は、ホスト110の動作に必要なデータ、例えば、変数、データテーブル、スレッドコンテキスト(Thread Context)などを格納する。瞬断によりダイナミックランダムアクセスメモリ150に格納されるデータが失われることを防止するために、ホスト110が瞬断を検出すると、直ちに、ダイナミックランダムアクセスメモリ150に格納されるデータを、ホストのインタフェース135を介して、LUN 170に書き込むように、データ保存装置を指令する。上記の目的を達成するために、データ保存装置には、5GBのスペースを有し、アドレスの範囲がLBA#3、407、872〜LBA#4、718、591であり、ダイナミックランダムアクセスメモリ150に格納されるデータに対応する第4パーティション370が設けられても良い。第4パーティション370のザイズは、例えば5GBなどの固定値とすることができ、又はダイナミックランダムアクセスメモリ150のサイズと等しくすることができる。その後、ホスト110は、システムが回復すると、第4パーティション370のデータを提供するようにデータ保存装置を要請することができる。これによって、ホスト110は、元のダイナミックランダムアクセスメモリ150に格納されるデータを迅速に取り戻すことができる。
図4に示すように、データ保存装置内の各LUNの物理ブロック(Physical Blocks)は、異なる動作目的又はプログラミング方式に応じて、ノーマルブロック(Normal Blocks)と疑似シングルレベルセルブロック(pseudo SLC、pSLC Blocks)とに分割されることができる。図4を参照すると、例えば、LUN 170#0内の物理ブロックは、800個のノーマルブロック170#0−0と、400個のpSLCブロック170#0−1とを含むように配置されることができる。LUN 170#1内の物理ブロックは、800個のノーマルブロック170#1−0と400個のpSLCブロック170#1−1とを含むように配置されることができる。処理ユニット131は、LUN 170#0〜170#8内の物理ブロック及び疑似シングルレベルセルブロックの配置情報をスタティックランダムアクセスメモリ137に記録することが好ましい。ノーマルブロックは、第1パーティション310と、第2パーティション330と、第3パーティション350との保存場所を提供することに用いられ、ホストの正常動作中に、オペレーティングシステム、アプリケーションプログラムのコンテンツなどのデータを書き込む。各LUN内の保存セルがTLC又はQLCであるため、処理ユニット131は、フォギープログラミングおよびファインプログラミングなどのマルチセグメントプログラミングを使用してノーマルブロックの保存セルにデータを書き込むように、フラッシュメモリの接続インタフェース139を駆動する。
一方、キャッシュデータなどの疑似シングルレベルセルブロックは第4パーティション370の保存場所を提供するので、pSLCブロックは、正常動作時にデータを書き込まずに、保留される。処理ユニット131が瞬断の発生を検出すると、ホスト110の要求に従って、ダイナミックランダムアクセスメモリ150に保存されたデータをpSLCブロックに書き込む。瞬断を検出した後、ホスト110からの電力はデータ保存装置の動作を数秒間(例えば1〜5秒間)しか維持できないので、データ保存装置はこの時間を利用してダイナミックランダムアクセスメモリ150に保存されるデータをLUN 170に書き込ませる必要がある。正常動作時にpSLCブロック内の保存セルを占有するデータがある場合、処理ユニット131は、時間をかけてpSLCブロックに保存されるデータをノーマルブロックに移行させ、削除動作などを実行する必要がある。これは、時間がかかるだけではなく、わずかの残電力も消費されるため、許容時間内にダイナミックランダムアクセスメモリ150のデータをpSLCブロックに書き込むことができない。処理ユニット13は、シングルレベルセル(Single Level Cells、SLC)モード及びインターリーブドページプログラミング(Interleave Page Programming)方式によって、すべてのチャンネルを利用してダイナミックランダムアクセスメモリ150のデータをpSLCブロック内の保存セルに書き込み、すなわち、最速でダイナミックランダムアクセスメモリ150のデータをデータ保存装置のpSLCブロックに書き込み、例えば、300MB/s、又はそれより以上のデータ伝送速度でデータをデータ保存装置のpSLCブロックに書き込む。なお、本実施形態では、3つのチャンネルがあり、且つ各チャンネルに3つのLUNを接続する例を示しているが、当業者は、NANDフラッシュアーキテクチャを変更して、より多く又はより少なくのチャンネル及びLUNを含んでも良いが、本発明はこれに限定されない。
図5に示されているデータプログラミング方法のフローチャートは、関連するソフトウェアまたはファームウェアプログラムコードをドーロする時に、処理ユニット131によって実行される。ステップS510において、処理ユニット131は、電源断のイベントを有するかどうかを検出する。電源断のイベントを有する場合、ステップS520が実行され、電源断のイベントを有しない場合、ステップS540が実行される。
ステップS520において、処理ユニット131は、マルチチャンネル及びインターリーブドページプログラミングにより、ホスト110に伝送されてきたデータをpSLCブロックに書き込み、ここで、pSLCブロックは、SLCモードでデータプログラミングを実行する物理ブロックである。
ステップS530において、処理ユニット131は、pSLCブロックに格納されるデータに従って論理−物理(Logical−to−Physical、L2P)マッピングテーブルを更新し、ここで、L2PマッピングテーブルはSRAM 137に格納されることが好ましい。
ステップS540において、処理ユニット131は、マルチチャンネル及びインターリーブドページプログラミングにより、ホスト110に伝送されてきたデータをノーマルブロックに書き込む。
ステップS550において、処理ユニット131は、ノーマルブロックに格納されるデータに従って論理−物理L2Pマッピングテーブルを更新する。
ステップS560において、処理ユニット131は、更新されたL2Pマッピングテーブルをノーマルブロックに書き込み、ここで、処理ユニット131は、SLCモードで更新されたL2Pマッピングテーブルをノーマルブロックに書き込むことが好ましい。
そして、ホスト110の電源が再投入された後、データ保存装置は、ホスト110の要請に応じて、pSLCブロックに格納されるデータをダイナミックランダムアクセスメモリ150にアップロードした後、処理ユニット131はpSLCブロックを消去することができる。そのため、再び電源断が発生すると、処理ユニット131はデータをpSLCブロックに再書き込むことができる。
論理位置(ホスト110で管理)と物理位置(制御部130で管理)との間の対応関係を記録するために、制御部130は、SRAM 137にL2Pマッピングテーブルを保守し、各論理アドレスのデータがどの物理アドレスに実際に格納されるかの情報を順次格納し、制御部130が特定の論理アドレスのリード又はライトコマンドを処理する際、対応の物理アドレスを速やかに探し出すことができる。また、SRAM 137のサイズに制約があるため、L2Pマッピングテーブルは複数のサブテーブルに分割可能であり、制御部130は、サブテーブルを順番にSRAM 137にアップロードする。図6に例示されるように、サブテーブル610は、各論理アドレスに対応する物理アドレス情報を順次記憶することが好ましい。サブテーブル610に必要なスペースは、論理アドレスの総数に比例することが好ましい。論理アドレスは、LBAで表示されても良く、各LBAは一定サイズの論理ブロック、例えば、512B又は4KBに対応し、且つこのLBAのデータがLUN 170の物理アドレスに格納される。サブテーブル610は、LBA#26624からLBA#27647までの物理アドレス情報を順次格納する。物理アドレス情報630、例えば、4バイトを含む例とする場合、バイト630−0が(物理)ブロック番号を記録し、バイト630−1がページ番号及びオフセット(offset)を記録し、バイト630−2がフレーム番号を記録し、バイト630−3が論理ユニット番号及び入出力チャネル番号などを記録する。例えば、LBA#26626に対応する物理アドレス情報630はブロック650内の局在部655を指しても良い。
ステップS510の別の実施形態では、処理ユニット131は、ホスト110に送信されるコマンドがスタンバイ・イミーディエットコマンド(STANDBY IMMEDIATE command)であるかどうかを検出することができ、スタンバイ・イミーディエットコマンドの内容はATAコマンドセット−4(ATA Command Set−4、ACS−4)の7.48節の規定を参照できる。スタンバイ・イミーディエットコマンドは、元々ホスト110がデータ保存装置をスタンバイモード(Standby Mode)に入ることを指示するものであるが、ホスト110と制御部130とは、ホスト110が瞬断の発生を検出する時、スタンバイ・イミーディエットコマンドを送信し、処理ユニット131は、続いて送信されるデータを最速でLUN 170に書き込む。なお、本実施形態では、スタンバイ・イミーディエットコマンドを例示しているが、ホスト110は他のコマンドを用いて処理ユニット131を指示して、同様の技術的効果を奏しても良い。
ステップS510のいくつかの実施形態では、処理ユニット131は、コマンドキュー(Command Queue)内のホストライトコマンド(Host Write Commands)を観察して、電子装置が瞬断を起こしているかどうかを判断することができる。100GB以上の保存容量を提供する大容量記憶装置(Mass Storage)を応用する場合では、ホスト110がLUN 170をブートディスク及びキャッシュデータの保存場所とすると、正常動作の状態において、ホスト110がロングデータライトコマンドを送信することが極めて稀である。したがって、処理ユニット131は、コマンドキュー内でロングデータライトコマンドとそれに続く連続ライトコマンドとを見つかる場合、電子装置が瞬断を起こっている可能性が高いと判断することができる。ホストコマンドは、通常、開始論理アドレスおよび長さのパラメーターを含んでおり、ロングデータライトコマンドは、ホストライトコマンド内の長さがデフォルト閾値(例えば1MB)を超えるコマンドを指し、連続ライトコマンドは、ホストライトコマンドの開始論理アドレスがコマンドキュー内のより前のホストライトコマンドの終了論理アドレスの次のアドレスに書き込みコマンドを指す。
ステップS510のいくつかの実施形態では、処理ユニット131は、コマンドキュー内のホストライトコマンドの開始論理アドレスがデフォルト間隔内にあるかどうかを観察して、電子装置が瞬断を起こしているかどうかを判断する。例えば、図3に示すように、いずれかのホストライトコマンドの開始論理アドレスがLBA#26624とLBA#27647との間にあることを判明した場合、処理ユニット131は、電子装置が瞬断を起こしている可能性が高いと判断する。
ステップS520において、処理ユニット131は、フラッシュメモリの接続インタフェース139を介して最初にSLCモードイネーブルコマンド(SLC MODE ENABLE Command)を送信し、次いて、一連のプログラムページコマンド(PROGRAM PAGE Commands)を送信して、予め配置されたpSLCブロックにデータを書き込む。SLCモードでのデータ書き込みは、フラッシュメモリの接続インタフェース139がpSLCブロック内の各保存セルを、8つ又は16つの状態のうちの一つにではなく、2つの状態のうちの一つにプログラムすることを指している。当業者であれば、SLCモードでのデータ書込速度は、TLC又はQLCモードにおけるフォーギアンドファイン(Foggy and fine)技術を使用したデータ書込速度よりも優れていることを理解である。
ステップS520の好ましい実施形態では、処理ユニット131は、インターリーブドページプログラミング方式でデータを書き込むようにフラッシュメモリの接続インタフェースを駆動することができ、例えば、図4に示すチャンネルCH#0を例として、フラッシュメモリの接続インタフェース139は、イネーブル信号CE#0を送信して、LUN 170#0をイネーブルさせ、且つ、チャンネルCH#0を介してpSLCブロック170#0−1にデータを伝送し、次いて、データの伝送が完了した後に、pSLCブロック170#0−1にコマンドを送信して、保存セルのプログラミングを開始するように指示する。pSLCブロック170#0−1が保存セルをプログラミングする実際の期間中、フラッシュメモリの接続インタフェース139がLUN 170#1をイネーブルさせるためのイネーブル信号CE#1を送信し、且つチャンネルCH#0を介してpSLCブロック170#1−1にデータを伝送していく。
ステップS520の好ましい実施形態では、処理ユニット131は、すべてのチャンネルを介してホスト110に伝送されたデータを書き込むように、フラッシュメモリの接続インタフェース139を駆動することもできる。
図7に示されている方法のフローチャートは、関連するソフトウェア又はファームウェアプログラムコードをロードする時に、処理ユニット131によって実行される。電子装置が瞬断からの回復(ステップS710)を完了したこと検出すると、処理ユニット131は、LUN 170内のすべてのpSLCブロックの保存セルを削除し、pSLCブロックは次の発生しうる瞬断への準備状態(ステップS730)になるように、フラッシュメモリの接続インタフェース170を駆動する。
処理ユニット131は、ホスト110から送信された各データセットマネジメントコマンド(DATA SET MANAGEMENT command)の内容により、pSLCブロックをドリム(Trim)することを指示するかどうかを判断し、ここでのデータセットマネジメントコマンドの内容はATAコマンドセット−4(ATA Command Set−4 ACS−4)の7.6節の規定を参考することができる。データセットマネジメントコマンドは、LBAおよびトリムビット(Trim Bit)などのパラメーターを含み、処理ユニット131は、L2Pマッピングテーブルの情報により、データセットマネジメントコマンド内のLBAが一つのpSLCブロックに関連するかどうか、且つ、トリムビットが「1」であるかどうかを判断する。もしそうであれば、処理ユニット131は、電子装置が瞬断からの回復を完了したと判断する。実施形態では、データセットマネジメントコマンドを例示しているが、ホスト110は、他のコマンドで処理ユニット131を指示して、同様の技術的効果を奏しても良い。
ステップS710の他の実施形態では、処理ユニット131は、ホストリードコマンド(Host Read Commands)の実行を記録して、電子装置が瞬断からの回復を完了したかどうかを判断することができる。処理ユニット131は、L2Pマッピングテーブルの内容を参考して、pSLCブロックに関連する各ホストリードコマンドの実行を記録しても良い。L2PマッピングテーブルのpSLCブロックに対応するすべてのLBAのデータがホスト110に読み出された場合、処理ユニット131は、電子装置が瞬断からの回復を完了していると判断する。
本発明の方法におけるステップの全部または一部は、コンピュータのオペレーティングシステム、コンピュータ内の特定のハードウェアのドライバプログラム、またはソフトウェアプログラムなどのコンピュータプログラムで実行することができる。また、上記したプログラムに加え、他の種類のプログラムでも実行することができる。当業者は、本発明の実施形態に係る方法をコンピュータプログラムに書き込むことができるが、ここでは詳細説明されない。本発明の実施形態に係る方法を実行するコンピュータプログラムは、DVD、CD-ROM、USB、またはハードディスクなどのコンピュータ可読データ記憶媒体、または、ネットワーク(たとえばインターネット、または他の記憶媒体)を介してアクセスできるWebサーバに格納することができる。
以上、本発明が図1に示すような構成要素を含むことを示しているが、本発明の精神から逸脱することなく他の追加の構成要素を使用して、より良い技術的効果を達成することもできる。また、図5および図7のフローチャートは特定の順序で実行されるが、当業者であれば、本発明の趣旨を逸脱することなく、同じ効果を得ることなくステップ順を変更することができる。したがって、本発明は、上述したような順序のみの使用に限定されない。さらに、当業者であれば、いくつかのステップを1つのステップに統合すること、またはこれらのステップよりも順次にまたは並行して多くのステップを実行することもでき、本発明は限定されない。
本発明は、上述の実施形態のように説明したが、上述の説明は本発明を限定するものではないことを留意されたい。本発明は、当業者による修正および類似の設計変更を包含し、いずれも本願の特許請求の範囲に含まれている。
符号の簡単な説明
100 システム構成
110 ホスト
130 制御部
131 処理ユニット
135 ホストのインタフェース
137 スタティックランダムアクセスメモリ
139 フラッシュメモリの接続インタフェース
150 ダイナミックランダムアクセスメモリ
170 LUN
170#0〜170#8 LUN
170#0−0〜170#8−0 正常ブロック
170#0−1〜170#8−1 疑似シングルレベルセルブロック
CH#0〜CH#2 入出力チャネル
CE#0〜CE#2 チップイネーブル制御信号
310〜370 論理パーティション
LBA#0〜LBA#36863 論理ブロックアドレス
S510〜S560 方法のステップ
610 論理−物理表
630 物理的位置情報
630−0 (物理)ブロック番号
630−1 (物理)ページ番号
630−2 (物理)フレーム番号
630−3 論理ユニット番号および入出力チャネル番号
650 物理ブロック
655 物理局在部
S710〜S730 方法ステップ

Claims (16)

  1. 瞬断からの回復処理方法であって、電子装置内の処理ユニットに実行され、
    前記方法は、
    前記電子装置が瞬断を発生したことを検出すると、フラッシュメモリの接続インタフェースを駆動して、ホストに接続されているダイナミックランダムアクセスメモリに格納されているデータであって、前記ホストが前記ホストのインタフェースを介して転送するデータを、シングルレベルセルモードで複数のチャンネルを介して複数の論理ユニット番号の疑似シングルレベルセルブロックに書き込むステップを含み、
    前記複数の疑似シングルレベルセルブロックは、正常動作中に、瞬断が検出されるまで保留され、データを書き込まない、ことを特徴とする瞬断からの回復処理方法。
  2. ホストより送信してきた予め設定されるコマンドを検出すると、前記電子装置が瞬断を発生することと判断するステップを含む、ことを特徴とする請求項1に記載の瞬断からの回復処理方法。
  3. コマンドキューにおいて、ロングデータライトコマンドの次に連続ライトコマンドを見つかると、前記電子装置が瞬断を発生することと判断するステップを含む、ことを特徴とする請求項1に記載の瞬断からの回復処理方法。
  4. コマンドキューにおいて、ホストが書き込むコマンドの開始論理アドレスがデフォルト空間にあることを見つかると、前記電子装置が瞬断を発生することと判断するステップを含む、ことを特徴とする請求項1に記載の瞬断からの回復処理方法。
  5. 各前記論理ユニット番号内の各物理ブロックは、ノーマルブロック又は前記疑似シングルレベルセルブロックに分割され、前記疑似シングルレベルセルブロック内の保存セルがトリプルレベルセル又はクアッドレベルセルであり、且つ、前記シングルレベルセルモードでのデータ書き込みは、前記疑似シングルレベルセルブロック内の各保存セルを2つの状態のうちの一つにプログラミングする、ことを特徴とする請求項1〜4のいずれかに記載の瞬断からの回復処理方法。
  6. 前記電子装置が瞬断を発生することを検出した後、前記フラッシュメモリの接続インタフェースを駆動して、前記ホストを介して転送されるデータを、インターリーブドページプログラミング方式で、前記複数の論理ユニット番号に前記疑似シングルレベルセルブロックに書き込む、ことを特徴とする請求項1〜4のいずれかに記載の瞬断からの回復処理方法。
  7. 前記ホストが瞬断からの回復を完了したことを検出すると、前記フラッシュメモリの接続インタフェースを駆動して、すべての疑似シングルレベルセルブロックの保存セルを削除するステップを含む、ことを特徴とする請求項1に記載の瞬断からの回復処理方法。
  8. ホストがコマンドを送信して前記疑似シングルレベルセルブロックをトリムすることを検出すると、前記電子装置が瞬断からの回復を完了したことと判断するステップを含む、ことを特徴とする請求項7に記載の瞬断からの回復処理方法。
  9. すべての疑似シングルレベルセルブロックのデータがホストにより読み取られることを検出すると、前記電子装置が瞬断からの回復を完了したことと判断するステップを含む、ことを特徴とする請求項7に記載の瞬断からの回復処理方法。
  10. 瞬断からの回復処理のコンピュータ読み取り可能な記憶媒体であって、
    処理ユニットが実行するコンピュータプログラムを格納するために用いられ、前記コンピュータプログラムは、前記処理ユニットに、
    電子装置が瞬断を発生したことを検出すると、フラッシュメモリの接続インタフェースを駆動して、ホストに接続されているダイナミックランダムアクセスメモリに格納されているデータであって、前記ホストが前記ホストのインタフェースを介して転送するデータを、シングルレベルセルモードで複数のチャンネルを介して複数の論理ユニット番号の疑似シングルレベルセルブロックに書き込むステップが実行され、
    前記複数の疑似シングルレベルセルブロックは、正常動作中に、瞬断が検出されるまで保留され、データを書き込まない、ことを特徴とする瞬断からの回復処理のコンピュータ読み取り可能な記憶媒体。
  11. 前記コンピュータプログラムは、前記処理ユニットに、
    前記電子装置が瞬断を発生したことを検出すると、前記フラッシュメモリの接続インタフェースを駆動して、前記ホストを介して伝送されるデータを、インターリーブドページプログラミング方式で、前記複数の論理ユニット番号の前記疑似シングルレベルセルブロックに書き込むステップが実行される、ことを特徴とする請求項10に記載の瞬断からの回復処理のコンピュータ読み取り可能な記憶媒体。
  12. 前記コンピュータプログラムは、前記処理ユニットに、
    前記ホストが瞬断からの回復を完了したことを検出すると、前記フラッシュメモリの接続インタフェースを駆動して、すべての疑似シングルレベルセルブロックの保存セルを削除するステップが実行される、ことを特徴とする請求項10又は11に記載の瞬断からの回復処理のコンピュータ読み取り可能な記憶媒体。
  13. 瞬断からの回復処理装置であって、
    ホストのインタフェースと、フラッシュメモリの接続インタフェースと、処理ユニットとを備え、
    前記処理ユニットは、前記ホストのインタフェースと前記フラッシュメモリの接続インタフェースとに接続され、前記ホストがスタンバイ・イミーディエットコマンドを送信することを検出すると、電子装置が瞬断を発生することと判断し、
    前記瞬断からの回復処理装置が瞬断を発生することを検出すると、前記フラッシュメモリの接続インタフェースを駆動して、ホストが前記ホストのインタフェースを介して伝送するデータを、シングルレベルセルモードで、複数のチャンネルを介して、複数の論理ユニット番号の疑似シングルレベルセルブロックに書き込む、ことを特徴とする瞬断からの回復処理装置。
  14. 各前記論理ユニット番号内の各物理ブロックは、ノーマルブロック又は前記疑似シングルレベルセルブロックに分割され、前記疑似シングルレベルセルブロック内の保存セルがトリプルレベルセル又はクアッドレベルセルであり、且つ前記シングルレベルセルモードでのデータ書き込みは、前記疑似シングルレベルセルブロック内の各保存セルを2つの状態のうちの一つにプログラミングする、ことを特徴とする請求項13に記載の瞬断からの回復処理装置。
  15. 前記処理ユニットは、前記ホストが瞬断からの回復を完了することを検出すると、前記フラッシュメモリの接続インタフェースを駆動して、すべての疑似シングルレベルセルブロックの保存セルを削除する、ことを特徴とする請求項13〜14のいずれか一つに記載の瞬断からの回復処理装置。
  16. 前記処理ユニットは、前記ホストがデータセットマネジメントコマンドを送信して前記疑似シングルレベルセルブロックをトリムすることを検出すると、前記ホストが瞬断からの回復を完了することと判断する、ことを特徴とする請求項15に記載の瞬断からの回復処理装置。
JP2019110012A 2019-05-21 2019-06-13 瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体 Active JP6975202B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910423585.0A CN111984441B (zh) 2019-05-21 2019-05-21 瞬间断电回复处理方法及装置以及计算机可读取存储介质
CN201910423585.0 2019-05-21

Publications (2)

Publication Number Publication Date
JP2020191055A JP2020191055A (ja) 2020-11-26
JP6975202B2 true JP6975202B2 (ja) 2021-12-01

Family

ID=73435942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019110012A Active JP6975202B2 (ja) 2019-05-21 2019-06-13 瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体

Country Status (3)

Country Link
US (2) US11188267B2 (ja)
JP (1) JP6975202B2 (ja)
CN (1) CN111984441B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11200162B2 (en) * 2020-04-28 2021-12-14 Western Digital Technologies, Inc. Condensing logical to physical table pointers in SSDs utilizing zoned namespaces
US11704061B2 (en) * 2021-03-16 2023-07-18 Kioxia Corporation Page buffer enhancements
CN115543865B (zh) * 2022-11-25 2023-04-11 成都佰维存储科技有限公司 掉电保护方法、装置、可读存储介质及电子设备

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8959280B2 (en) 2008-06-18 2015-02-17 Super Talent Technology, Corp. Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear
CN104077174B (zh) 2009-03-27 2018-05-01 希捷科技有限公司 用于提供存储系统逻辑块地址的数据固化的方法及系统
US8046628B2 (en) * 2009-06-05 2011-10-25 Micron Technology, Inc. Failure recovery memory devices and methods
US9245653B2 (en) * 2010-03-15 2016-01-26 Intelligent Intellectual Property Holdings 2 Llc Reduced level cell mode for non-volatile memory
JP2012141946A (ja) * 2010-12-16 2012-07-26 Toshiba Corp 半導体記憶装置
JP2013122793A (ja) 2011-12-09 2013-06-20 Toshiba Corp 不揮発性半導体記憶装置
US9158675B2 (en) * 2012-03-16 2015-10-13 Marvell World Trade Ltd. Architecture for storage of data on NAND flash memory
CN103176752A (zh) 2012-07-02 2013-06-26 晶天电子(深圳)有限公司 带有耐用转换层及临时文件转移功能从而实现闪速存储器磨损降低的超耐用固态驱动器
CN103064755B (zh) * 2013-01-25 2015-03-25 珠海全志科技股份有限公司 Nand闪存写数据处理方法和装置
TWI498902B (zh) 2013-11-28 2015-09-01 Phison Electronics Corp 資料管理方法、記憶體儲存裝置及記憶體控制電路單元
JP2015215675A (ja) * 2014-05-08 2015-12-03 富士通株式会社 制御装置、制御方法、及び制御プログラム
TWI569144B (zh) 2015-02-02 2017-02-01 慧榮科技股份有限公司 資料儲存裝置及其斷電事件判斷方法
US9558839B2 (en) * 2015-03-09 2017-01-31 Toshiba Corporation Power fail saving modes in solid state drive with MLC memory
US20160378344A1 (en) * 2015-06-24 2016-12-29 Intel Corporation Processor and platform assisted nvdimm solution using standard dram and consolidated storage
JP6406219B2 (ja) * 2015-11-12 2018-10-17 京セラドキュメントソリューションズ株式会社 通信装置及び画像形成装置
US10599503B2 (en) * 2016-07-28 2020-03-24 Dell Products L.P. Triggering power loss protection on solid-state storage devices
KR20180058894A (ko) * 2016-11-24 2018-06-04 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10095626B2 (en) 2017-03-10 2018-10-09 Toshiba Memory Corporation Multibit NAND media using pseudo-SLC caching technique
CN108733575B (zh) * 2017-04-20 2022-12-27 深圳市得一微电子有限责任公司 一种断电重启后逻辑对物理映像表的重建方法、固态硬盘
TWI628542B (zh) * 2017-04-21 2018-07-01 慧榮科技股份有限公司 快閃記憶體的垃圾回收斷電回復方法以及使用該方法的裝置
US10379979B2 (en) * 2017-05-31 2019-08-13 Western Digital Technologies, Inc. Power fail handling using stop commands
US20190004947A1 (en) * 2017-06-30 2019-01-03 Intel Corporation Selective temporary data storage
US10261914B2 (en) * 2017-08-25 2019-04-16 Micron Technology, Inc. Methods of memory address verification and memory devices employing the same
US10372342B2 (en) * 2017-10-02 2019-08-06 Western Digital Technologies, Inc. Multi-level cell solid state device and method for transferring data between a host and the multi-level cell solid state device
CN108762669B (zh) 2018-05-18 2021-03-05 深圳忆联信息系统有限公司 提升掉电时数据写入速度的方法、装置及计算机设备
CN108782669A (zh) 2018-07-26 2018-11-13 欧炳俄 一种绿茶酥饼及其制备方法

Also Published As

Publication number Publication date
CN111984441A (zh) 2020-11-24
US11188267B2 (en) 2021-11-30
CN111984441B (zh) 2023-09-22
US11803330B2 (en) 2023-10-31
US20200371718A1 (en) 2020-11-26
US20220050638A1 (en) 2022-02-17
JP2020191055A (ja) 2020-11-26

Similar Documents

Publication Publication Date Title
US10776153B2 (en) Information processing device and system capable of preventing loss of user data
JP5554489B2 (ja) ソリッドステートメモリ(ssm)、ssmを有するコンピュータシステム及びssm駆動方法
KR102088403B1 (ko) 저장장치, 이를 포함하는 컴퓨터 시스템 및 이의 동작 방법
JP4422652B2 (ja) 漸進的マージ方法及びそれを利用したメモリシステム
CN105718530B (zh) 文件存储系统及其文件存储控制方法
US20090049234A1 (en) Solid state memory (ssm), computer system including an ssm, and method of operating an ssm
TWI531963B (zh) Data storage systems and their specific instruction enforcement methods
JP6975202B2 (ja) 瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体
CN107908571B (zh) 一种数据写入方法、闪存装置及存储设备
KR20130031046A (ko) 플래시 메모리 장치 및 플래시 메모리 장치의 데이터 관리 방법
KR20140042458A (ko) 스토리지 시스템의 파일 관리 장치, 파일 관리 방법
US8433847B2 (en) Memory drive that can be operated like optical disk drive and method for virtualizing memory drive as optical disk drive
TW201327185A (zh) 記憶體儲存裝置及其記憶體控制器與資料寫入方法
TWI710905B (zh) 資料儲存裝置及邏輯至物理位址映射表之載入方法
KR20190061426A (ko) 플래시 메모리 시스템 및 그 제어 방법
CN114327240A (zh) 计算机可读存储介质、闪存存储器的数据存储方法及装置
JP5594647B2 (ja) ストレージ装置及びその制御方法
TWI754396B (zh) 快閃記憶體的資料儲存方法及裝置以及電腦程式產品
JP2008262452A (ja) 記録デバイスのキャッシュ方法および記録装置
US20170115886A1 (en) Storage device and method of performing a write operation by the same
TWI741296B (zh) 瞬間斷電回復處理方法及裝置以及電腦程式產品
TWI820473B (zh) 瞬間斷電回復處理方法及裝置以及電腦程式產品
KR20240009065A (ko) 메모리 시스템, 메모리 컨트롤러 및 그 동작 방법
KR20090113624A (ko) 솔리드 스테이트 드라이브 및 그 동작 제어방법
JPH10222424A (ja) データキャッシュ制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200915

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210413

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210524

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211105

R150 Certificate of patent or registration of utility model

Ref document number: 6975202

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150