JP6367704B2 - 記憶制御システム及び記憶制御装置 - Google Patents
記憶制御システム及び記憶制御装置 Download PDFInfo
- Publication number
- JP6367704B2 JP6367704B2 JP2014263021A JP2014263021A JP6367704B2 JP 6367704 B2 JP6367704 B2 JP 6367704B2 JP 2014263021 A JP2014263021 A JP 2014263021A JP 2014263021 A JP2014263021 A JP 2014263021A JP 6367704 B2 JP6367704 B2 JP 6367704B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- write
- sector
- cache memory
- storage
- 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
Links
- 238000012545 processing Methods 0.000 claims description 217
- 238000000034 method Methods 0.000 description 30
- 230000008569 process Effects 0.000 description 16
- 238000001514 detection method Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- 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
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- 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
- G06F12/0871—Allocation or management of cache space
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1021—Hit rate improvement
-
- 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/31—Providing disk cache in a specific location of a storage system
- G06F2212/312—In storage controller
-
- 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/46—Caching storage objects of specific type in disk cache
- G06F2212/462—Track or segment
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)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
さらに前記書込制御手段は、前記処理対象データが前記キャッシュメモリに保持されていないときには、前記処理対象データが前記キャッシュメモリに保持された状態となるよう、前記記憶装置から処理対象データの少なくとも一部のデータを取得してキャッシュメモリに格納してもよい。
さらに、本発明の一態様では、この記憶制御装置は、前記記憶装置への書き込み対象データを出力するホスト側装置と一体的に、または前記記憶装置と一体的に構成されてもよい。
すなわち、この例においてデバイスコントローラ22は、各データセグメントをパリティ生成単位として、このデータ長(n−1)×LCのデータセグメントA,B…ごとに、対応するパリティデータAparity,Bparity…を生成する。また、得られたデータセグメントごとにパリティデータを格納するストレージディスクデバイス23を選択する。
次に、コントローラ31の動作について説明する。本実施の形態の例では、記憶制御装置30が、記憶装置20のセグメントごとに、当該セグメントに含まれる論理セクタを特定する情報を関連付けて、マップ情報として記憶しておくものとする。このマップ情報は、デバイスコントローラ22が記憶しているものと同じものである。また、このコントローラ31の動作のうち、ホスト側装置10から読み出しの指示(リードコマンド)を受けたときの動作は、従来例と同様のものであるので、ここでの詳しい説明を省略する。
この方法を採用する場合、書込処理部313としての動作を行うコントローラ31は、マップ情報を参照して、ライトコマンドによる書き換えの対象となった論理セクタ(対象セクタ)を含むセグメントを特定し、当該特定されたセグメントのうちで、対象セクタの前方と後方とに端数が発生しているか否かを調べる。
(1-1)前方にのみ端数が発生する場合(図5(a)):書込処理部313としての動作を行うコントローラ31は、対象セクタより前方の端数部分(対象セクタは含まなくてもよい)に相当する論理セクタを特定する情報を含む読み出し指示を記憶装置20に対して出力する。なお、対象セクタに対応する部分が、複数のセグメントにまたがっている場合も同様に、対象セクタより前方の端数部分(対象セクタは含まなくてもよい)に相当する論理セクタを特定する情報を含む読み出し指示を記憶装置20に対して出力する。
(1-2)後方にのみ端数が発生する場合(図5(b)):書込処理部313としての動作を行うコントローラ31は、対象セクタより後方の端数部分(対象セクタは含まなくてもよい)に相当する論理セクタを特定する情報を含む読み出し指示を記憶装置20に対して出力する。なお、対象セクタに対応する部分が、複数のセグメントにまたがっている場合も同様に、対象セクタより後方の端数部分(対象セクタは含まなくてもよい)に相当する論理セクタを特定する情報を含む読み出し指示を記憶装置20に対して出力する。
この方法を採用する場合、書込処理部313は、マップ情報を参照して、ライトコマンドにより書き換えの対象となった対象セクタを含むセグメントを特定する。そして、書込処理部313としての動作を行うコントローラ31は、特定したセグメントと、当該特定したセグメントの後に続く所定数個のセグメントに含まれるすべての論理セクタ(対象セクタは除いてもよい)を特定する情報を含む読み出し指示を、記憶装置20に対して出力するようにしてもよい。なお、特定したセグメント内で対象セクタの前後に端数部分がある場合は、前方の端数部分と後方の端数部分とを二度に分けて読み出すよりも、前方の端数部分から後方の端数部分まで対象セクタを含んで読み出すほうが効率的である場合もある。従って、このときには読み出し指示に対象セクタを含むように制御してもよい。
また、当該特定したセグメントの後に続く所定数個のセグメントに含まれる論理セクタ内のデータがキャッシュメモリ部33に格納されている場合は、書込処理部313は、当該データを読み出す指示を記憶装置20に出力する代わりに、当該データをキャッシュメモリ部33から読み出してもよい。
また、当該特定したセグメントの後に続く所定数個のセグメントに含まれる論理セクタ内のデータがキャッシュメモリ部33に格納されている場合は、書込処理部313は、当該データを読み出す指示を記憶装置20に出力する代わりに、当該データをキャッシュメモリ部33から読み出してもよい。
その後、書込処理部313は、更新した処理対象データを、書き込み対象データとして記憶装置20に出力する。なお、このとき書込処理部313は、更新した処理対象データの全体を書き込み対象データとして記憶装置20に出力してもよいし、更新した処理対象データのうち、ライトコマンドに含まれるデータで書き換え、またはライトコマンドに含まれるデータを追記した部分を内包したパリティ生成単位のデータを含む一部を取りだして、当該取りだした部分を書き込み対象データとして記憶装置20に出力してもよい。またこのときも書込処理部313は、書き込み先の位置を指定する情報として、上記書き込み対象データに含まれるデータが格納されるべき各論理セクタを特定する情報を併せて出力する。さらにこのとき書込処理部313は、キャッシュメモリ部33に格納した処理対象データを、更新後の処理対象データで置き換える。
本実施の形態の記憶制御システム1は、以上の構成を備えてなり、次のように動作する。図6に例示するように、記憶制御装置30は、ホスト側装置10からデータの書き込み指示(ライトコマンド)を受け入れると(S11)、当該受け入れたライトコマンドに含まれる情報で特定される論理セクタを対象セクタとして、この対象セクタに記録されているセクタデータと端数データとを内包したパリティ生成単位を少なくとも一つ含むデータのうち、セクタデータを除く部分を少なくとも含むデータ(処理対象データ)が、キャッシュされているか否か判断する(S12)。
さらに本実施の形態の記憶制御システムでは、記憶制御装置30が、記憶装置20に格納されているデータをキャッシュする、キャッシュメモリ部33とは異なるキャッシュデバイスをさらに備えてもよい。
なお、上述の例においても、処理対象データの一部がキャッシュデバイス36に保持されている場合(全体は保持されていないが一部は保持されている場合)でも、処理対象データ全体を記憶装置20から取得するように動作する代わりに、書込処理部313は、当該保持されていない部分に係る論理セクタを特定する情報を含む読み出し指示を記憶装置20に対して出力することとしてもよい。
なお、ここまでの説明では、ホスト側装置10とは別体の記憶制御装置30が設けられる構成を例としていたが、本実施の形態はこれに限られず、ホスト側装置10と記憶制御装置30とが一体となっていてもよい。つまり、ホスト側装置10が記憶制御装置30として機能することとしてもよい。この場合、記憶制御装置30のコントローラ31はホスト側装置10であるPCのCPUによって実現され、記憶部32及びキャッシュメモリ部33はPCのメインメモリを用いて実現される。具体的にキャッシュメモリ部33は、ホスト側装置10のメインメモリの一部をキャッシュメモリの領域として確保することによって実現できる。
なお、本実施の形態のある例では、ホスト側装置10から入力されるライトコマンドがシーケンシャルライト(連続したセクタに対するデータの書き込み指示(ライトコマンド)が続けて入力される書き込み方式)に係る場合には、ライトコマンドに対して上述の処理を行わずに、従来例と同様の処理を行うこととしてもよい。つまり、本実施の形態のある例では、記憶制御装置30は、シーケンシャルライトでない場合に限り、上述の端数処理を行うこととしてもよい。
Claims (9)
- 複数のストレージディスクデバイスを含み、書き込み対象データを受け入れて、前記書き込み対象データについて所定データ長のパリティ生成単位でパリティを生成し、前記書き込み対象データと生成したパリティとを前記ストレージディスクデバイスに記憶する記憶装置に接続され、キャッシュメモリと、コントローラと、を含む記憶制御システムであって、
前記コントローラは、
前記書き込み対象データと、前記書き込み対象データの書き込み先となる対象セクタを特定する情報とを含む書き込み指示を受け入れる受入手段と、
前記受け入れた書き込み指示により書き込み先となった対象セクタ内のセクタデータと、前記セクタデータ以外である端数データとを内包するパリティ生成単位を少なくとも一つ含むデータのうち、前記セクタデータを除く部分を含む処理対象データが、前記キャッシュメモリに保持されているか否か判断する判断手段と、
前記判断手段による判断の結果、前記処理対象データが前記キャッシュメモリに保持されていると判断したときには、前記キャッシュメモリ内の処理対象データを前記書き込み指示に基づいて更新し、前記更新後の処理対象データを書き込み対象データとして前記記憶装置に出力する書込制御手段と、
を備え、
前記書込制御手段は、前記処理対象データが前記キャッシュメモリに保持されていないときには、少なくとも前記対象セクタの前後に前記端数データがあるか否かを調べ、前方にのみ前記端数データがある場合と、後方にのみ前記端数データがある場合と、前方と後方との双方に前記端数データがある場合とのそれぞれの場合に対応して予め定めた部分のデータを、前記記憶装置から取得して、あるいは、少なくとも前記対象セクタを含む読み出し/書き込みの単位であるセグメントの後に続く複数セグメント分のデータを、前記記憶装置から取得して、前記処理対象データとしてキャッシュメモリに格納する記憶制御システム。 - 請求項1記載の記憶制御システムであって、
前記書込制御手段は、前記キャッシュメモリ内の処理対象データを前記書き込み指示に基づいて更新する際には、前記キャッシュメモリ内の処理対象データに前記セクタデータに対応するデータ部分が含まれていれば前記書き込み指示に基づいて前記データ部分を書き換え、前記キャッシュメモリ内の処理対象データに前記セクタデータに対応するデータ部分が含まれていなければ、前記キャッシュメモリ内の処理対象データを参照して、前記書き込み指示に基づく前記データ部分の追記位置を特定して、前記特定した追記位置に前記書き込み指示に基づいて前記データ部分を追記して更新する記憶制御システム。 - 請求項1または2に記載の記憶制御システムであって、前記記憶装置に格納されたデータをキャッシュする、前記キャッシュメモリとは異なるキャッシュデバイスをさらに有して、
前記書込制御手段は、前記判断手段の判断の結果、前記処理対象データが、前記キャッシュメモリに保持されていないと判断されたときに、前記キャッシュデバイスに前記処理対象データが保持されているか否かを判断し、前記キャッシュデバイスに保持されていたときには、前記処理対象データを、前記キャッシュメモリに読み出して、前記キャッシュメモリ内の処理対象データに前記セクタデータに対応するデータ部分が含まれていれば前記書き込み指示に基づいて前記データ部分を書き換え、前記キャッシュメモリ内の処理対象データに前記セクタデータに対応するデータ部分が含まれていなければ前記書き込み指示に基づいて前記データ部分を追記して更新し、前記更新後の処理対象データを書き込み対象データとして前記記憶装置に出力する記憶制御システム。 - 請求項3に記載の記憶制御システムであって、
前記書込制御手段は、前記処理対象データが前記キャッシュデバイスに保持されていないときには、前記処理対象データが前記キャッシュメモリ及び前記キャッシュデバイスに保持された状態となるよう、前記記憶装置から処理対象データの少なくとも一部のデータを取得して前記キャッシュメモリ及び前記キャッシュデバイスに格納する記憶制御システム。 - 請求項4に記載の記憶制御システムであって、
前記書込制御手段がデータを前記記憶装置から読み出すときには、前記キャッシュデバイスへの予め定められたデータ長の単位で読み出す記憶制御システム。 - 請求項3から5のいずれか一項に記載の記憶制御システムであって、
書き込み対象データを前記記憶装置に出力するときには、前記書き込み対象データを前記キャッシュデバイスにも書き込む記憶制御システム。 - 複数のストレージディスクデバイスを含み、書き込み対象データを受け入れ、前記書き込み対象データについて所定データ長のパリティ生成単位でパリティを生成し、前記書き込み対象データと生成したパリティとを前記ストレージディスクデバイスに記憶する記憶装置に接続されるとともに、キャッシュメモリにアクセス可能に接続された記憶制御装置であって、
書き込み対象データと、前記書き込み対象データの書き込み先となる対象セクタを特定する情報とを含むデータの書き込み指示を受け入れる受入手段と、
前記受け入れた書き込み指示により書き込み先となった対象セクタ内のセクタデータと、前記セクタデータ以外である端数データとを内包するパリティ生成単位を少なくとも一つ含むデータのうち、前記セクタデータを除く部分を含む処理対象データが、前記キャッシュメモリに保持されているか否か判断する判断手段と、
前記判断手段による判断の結果、前記処理対象データが前記キャッシュメモリに保持されていると判断したときには、前記キャッシュメモリ内の処理対象データを前記書き込み指示に基づいて更新し、前記更新後の処理対象データを書き込み対象データとして前記記憶装置に出力する書込制御手段と、
を有し、
前記書込制御手段は、前記処理対象データが前記キャッシュメモリに保持されていないときには、少なくとも前記対象セクタの前後に前記端数データがあるか否かを調べ、前方にのみ前記端数データがある場合と、後方にのみ前記端数データがある場合と、前方と後方との双方に前記端数データがある場合とのそれぞれの場合に対応して予め定めた部分のデータを、前記記憶装置から取得して、あるいは、少なくとも前記対象セクタを含む読み出し/書き込みの単位であるセグメントの後に続く複数セグメント分のデータを、前記記憶装置から取得して、前記処理対象データとしてキャッシュメモリに格納する記憶制御装置。 - 請求項7記載の記憶制御装置であって、前記記憶装置への書き込み対象データを出力するホスト側装置と一体的に構成される記憶制御装置。
- 請求項7記載の記憶制御装置であって、前記記憶装置と一体的に構成される記憶制御装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014263021A JP6367704B2 (ja) | 2014-12-25 | 2014-12-25 | 記憶制御システム及び記憶制御装置 |
US14/757,505 US10061522B2 (en) | 2014-12-25 | 2015-12-23 | Storage controlling system and storage controlling apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014263021A JP6367704B2 (ja) | 2014-12-25 | 2014-12-25 | 記憶制御システム及び記憶制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016122394A JP2016122394A (ja) | 2016-07-07 |
JP6367704B2 true JP6367704B2 (ja) | 2018-08-01 |
Family
ID=56164204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014263021A Active JP6367704B2 (ja) | 2014-12-25 | 2014-12-25 | 記憶制御システム及び記憶制御装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10061522B2 (ja) |
JP (1) | JP6367704B2 (ja) |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5249282A (en) * | 1990-11-21 | 1993-09-28 | Benchmarq Microelectronics, Inc. | Integrated cache memory system with primary and secondary cache memories |
JP3409859B2 (ja) * | 1991-01-31 | 2003-05-26 | 株式会社日立製作所 | 制御装置の制御方法 |
US5315602A (en) * | 1992-08-12 | 1994-05-24 | Digital Equipment Corporation | Optimized stripe detection for redundant arrays of disk drives |
US6226722B1 (en) * | 1994-05-19 | 2001-05-01 | International Business Machines Corporation | Integrated level two cache and controller with multiple ports, L1 bypass and concurrent accessing |
JP3669103B2 (ja) | 1997-03-14 | 2005-07-06 | 株式会社日立製作所 | 記憶装置および記憶装置サブシステム |
US7210001B2 (en) * | 1999-03-03 | 2007-04-24 | Adaptec, Inc. | Methods of and apparatus for efficient buffer cache utilization |
JP3592640B2 (ja) * | 2001-01-09 | 2004-11-24 | 株式会社東芝 | ディスク制御システムおよびディスク制御方法 |
JP2003196032A (ja) * | 2001-12-26 | 2003-07-11 | Nec Corp | ストレージ装置のライトキャッシュ制御方法及びストレージ装置 |
US7913148B2 (en) * | 2004-03-12 | 2011-03-22 | Nvidia Corporation | Disk controller methods and apparatus with improved striping, redundancy operations and interfaces |
US7353336B2 (en) * | 2005-03-09 | 2008-04-01 | Hewlett-Packard Development Company, L.P. | External RAID-enabling cache |
US7430701B2 (en) * | 2005-06-16 | 2008-09-30 | Mediatek Incorporation | Methods and systems for generating error correction codes |
US7822926B2 (en) * | 2007-04-16 | 2010-10-26 | Arm Limited | Cache memory |
CN102576333B (zh) * | 2009-10-05 | 2016-01-13 | 马维尔国际贸易有限公司 | 非易失性存储器中的数据高速缓存 |
JP2012078939A (ja) * | 2010-09-30 | 2012-04-19 | Toshiba Corp | 情報処理装置およびキャッシュ制御方法 |
JP2012103826A (ja) * | 2010-11-09 | 2012-05-31 | Fujitsu Ltd | キャッシュメモリシステム |
JP2012113789A (ja) | 2010-11-26 | 2012-06-14 | Buffalo Inc | ハードディスクドライブ装置およびその処理装置 |
JP2012185687A (ja) * | 2011-03-07 | 2012-09-27 | Fujitsu Ltd | 制御装置、制御方法およびストレージ装置 |
US8924814B2 (en) * | 2012-08-28 | 2014-12-30 | Seagate Technology Llc | Write management using partial parity codes |
US8966178B2 (en) * | 2012-01-17 | 2015-02-24 | International Business Machines Corporation | Populating a first stride of tracks from a first cache to write to a second stride in a second cache |
KR20150061258A (ko) * | 2013-11-27 | 2015-06-04 | 한국전자통신연구원 | 분산 raid 시스템에서 패리티 청크 운용 방법과 이를 지원하는 데이터 서버 장치 |
-
2014
- 2014-12-25 JP JP2014263021A patent/JP6367704B2/ja active Active
-
2015
- 2015-12-23 US US14/757,505 patent/US10061522B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10061522B2 (en) | 2018-08-28 |
US20160188225A1 (en) | 2016-06-30 |
JP2016122394A (ja) | 2016-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9274713B2 (en) | Device driver, method and computer-readable medium for dynamically configuring a storage controller based on RAID type, data alignment with a characteristic of storage elements and queue depth in a cache | |
US9767035B2 (en) | Pass-through tape access in a disk storage environment | |
US9940198B2 (en) | Optimization of rebuilding in solid state drives | |
KR100510808B1 (ko) | 데이터 저장 장치 및 시스템을 위한 로그 구조 기록 캐시 | |
JP5087347B2 (ja) | 半導体記憶装置及び半導体記憶装置の制御方法 | |
US10621051B2 (en) | Logical to physical table restoration from stored journal entries | |
KR101870521B1 (ko) | 스토리지 저널링을 개선하는 방법 및 시스템 | |
KR101813786B1 (ko) | Ssd 상의 기록-시-복사를 위한 시스템 및 방법 | |
TW201439763A (zh) | 用於管理一快取儲存以達成跨系統重開之改善快取斜增之系統,方法及電腦可讀媒體 | |
US9563524B2 (en) | Multi level data recovery in storage disk arrays | |
JP6089844B2 (ja) | 制御装置,ストレージ装置,及び制御プログラム | |
CN108255414B (zh) | 固态硬盘访问方法及装置 | |
US20160004644A1 (en) | Storage Controller and Method for Managing Modified Data Flush Operations From a Cache | |
US20190042134A1 (en) | Storage control apparatus and deduplication method | |
US20200174689A1 (en) | Update of raid array parity | |
JP2017204037A (ja) | 情報処理装置、重複除去プログラム、及び重複除去方法 | |
US9502052B1 (en) | Writing redundant data on tape media | |
US8321631B2 (en) | Parity calculation and journal generation in a storage device with multiple storage media | |
JP2015225603A (ja) | ストレージ制御装置、ストレージ制御方法およびストレージ制御プログラム | |
JP6521694B2 (ja) | 記憶制御システム及び記憶制御装置 | |
JP6367704B2 (ja) | 記憶制御システム及び記憶制御装置 | |
CN105573862B (zh) | 一种恢复文件***的方法和设备 | |
JP6318769B2 (ja) | ストレージ制御装置、制御プログラム、および制御方法 | |
KR20110089972A (ko) | 메모리 장치 | |
US10210086B1 (en) | Fast cache demotions in storage controllers with metadata |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170821 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180418 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180424 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180613 |
|
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: 20180626 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180705 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6367704 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |