JP6317653B2 - 自動車用電子制御装置及びデータ記憶方法 - Google Patents
自動車用電子制御装置及びデータ記憶方法 Download PDFInfo
- Publication number
- JP6317653B2 JP6317653B2 JP2014190372A JP2014190372A JP6317653B2 JP 6317653 B2 JP6317653 B2 JP 6317653B2 JP 2014190372 A JP2014190372 A JP 2014190372A JP 2014190372 A JP2014190372 A JP 2014190372A JP 6317653 B2 JP6317653 B2 JP 6317653B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- bank
- processor
- storage area
- sequence number
- 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
- 238000000034 method Methods 0.000 title claims description 176
- 238000013500 data storage Methods 0.000 title claims description 11
- 230000015654 memory Effects 0.000 claims description 96
- 230000002159 abnormal effect Effects 0.000 claims description 19
- 238000012795 verification Methods 0.000 claims description 6
- 239000000872 buffer Substances 0.000 description 19
- 230000005856 abnormality Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004092 self-diagnosis Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
Description
そこで、従来、不揮発性メモリでは、例えば、そのメモリ上に複数の記憶領域を設け、同一の記憶領域に対する書込み回数を制限し、各々の記憶領域におけるデータの消去回数を略均等化するため、記憶領域を選択して順番にデータを更新する技術が用いられている。
ここで、従来例では、各記憶領域内にデータ格納部と、各記憶領域のデータの書換え毎に増加される領域選択用のカウンタと、データの有効性を検証するためのチェックデータを格納するチェックデータ部とを設けている。これにより、従来例では、記憶領域の書込み先を移動させてデータを記憶させるために、カウンタの値に基づいて、各記憶領域のデータの新旧を判定して、書込み先を決定している(例えば、特許文献1参照)。
[自動車用電子制御装置のハード構成例]
図1は、自動車用電子制御装置のハード構成例を示す図である。図1に示す自動車用電子制御装置100は、例えば、自動車に搭載され、エンジン、自動変速機、燃料ポンプ等を電子制御するデバイスである。
自動車用電子制御装置100は、プロセッサ110と、RAM(Random Access Memory)120と、フラッシュメモリ130と、バス140とを備える。プロセッサ110、RAM120及びフラッシュメモリ130は、バス140を介して、互いに接続されている。なお、プロセッサ110は、制御部の一例であり、フラッシュメモリ130は、不揮発性メモリの一例である。
これにより、プロセッサ110は、カウンタのサイズに依存せずに、データの新旧を特定できる。そして、プロセッサ110は、特定したデータの新旧に基づいて、新たなデータの書込み先、又は、データの読込み先のアクセス先を決定する。なお、詳細については、処理動作の説明の際、後述する。
次に、本実施形態におけるデータ記憶方法の動作の一例について説明する。先ず、フラッシュメモリ130への書込みや消去の仕方の概要について説明する。なお、本実施形態におけるデータ記憶方法は、データの書込みだけでなく、データの読込み(読出し)も含む。
ステップS104:プロセッサ110は、シーケンス番号が最大値であるか否かを判定する。この判定処理は、シーケンス番号が最大値の場合、シーケンス番号を循環させる必要があり、プロセッサ110が、シーケンス番号を0(ゼロ)に戻すためである。なお、シーケンス番号の最大値は、全てのバンクにシーケンス番号が割り振れるようにするため、バンクの総数の値よりも大きいこととする。そこで、シーケンス番号が最大値である場合(ステップS104:Yes)、ステップS105の処理に移行し、シーケンス番号が最大値でない場合(ステップS104:No)、ステップS106の処理に移行する。
ステップS106:プロセッサ110は、シーケンス番号のインクリメント処理を行う。具体的には、プロセッサ110は、シーケンス番号を、現在のシーケンス番号+1の値とする。
ステップS109:プロセッサ110は、そのデータを消去して新しいデータを格納領域に書込み、チェックデータの領域にチェックデータ用の情報を書込む。また、シーケンス番号の領域にシーケンス番号を書込む。
ステップS110:プロセッサ110は、新しいデータを格納領域に書込み、ステップS109の処理と同様にして、チェックデータ用の情報やシーケンス番号を書込む。つまり、ステップS109、S110の処理において、一例として、プロセッサ110は、ベース領域における書込み対象のシーケンス番号のバンクに対して、データの書込みをする。さらに、プロセッサ110は、ベース領域に書込んだシーケンス番号、チェックデータ用の情報、新しいデータ等の複製データの書込みを、ミラー領域の同一のシーケンス番号のバンクに対して実行する。そして、プロセッサ110は、フローチャートの処理を終了する。
なお、本実施形態では、図7及び図8に示す処理の何れであってもよいが、説明の便宜上、以下の説明では、図7に示す、1つのセクタを複数のバンクに分割した場合におけるデータ記憶方法を例示する。
図9は、データの読込み処理の一例を示すフローチャートである。この処理は、例えば、自動車用電子制御装置100の電源(不図示)がオンされ、起動を開始した際に実行される。
ステップS201:プロセッサ110は、先ず、データの書込みが最新のバンクとなる判定処理のサブルーチンを実行する。なお、このサブルーチンの処理については、図10〜図15等を用いて後述する。
ステップS209:プロセッサ110は、チェックデータが誤っているので、記憶データの消失と判定し、図9に示すフローチャートの処理を終了する。
ステップS210:プロセッサ110は、データの書込みが未実施と判定し、図9に示すフローチャートの処理を終了する。
以上より、プロセッサ110は、データの書込みが最新のバンクからデータを読込むことができる。
図10は、バンクの終端検索処理の一例を示すフローチャートである。
ステップS301:プロセッサ110は、チェックバンクの設定処理を実行する。ここで、チェックバンクは、配列番号(アドレス番号)である。本実施形態では、チェックバンクを検索対象のバンクを指定するために利用する。具体的には、プロセッサ110は、データが記憶されたバンクの終端を、以下に示す後方サーチにより調べるため、チェックバンクに、バンク数−1の値を設定する。本実施形態では、バンクの配列番号を、0(ゼロ)から指定しているので、バンク全体の終端の配列番号は、バンク数−1の値となる。なお、バンクの配列番号を1から指定すれば、プロセッサ110は、チェックバンクにバンク数の値を設定すればよい。
図11は、シーケンス番号のチェック処理の一例を示すフローチャートである。シーケンス番号のチェック処理では、例えば、異常値等が誤って書込まれることにより、図14で後述する最新のバンクの判定処理でのエラーを防ぐ必要がある。そこで、シーケンス番号のチェック処理では、検索対象の現バンクと配列番号が1つ前のバンクとの間のシーケンス番号の関係が、最初に所定値を加算した関係にあるバンクの組合せを検索する。本実施形態では、例えば、所定値を1とする。つまり、プロセッサ110は、終端バンクの配列番号から遡る方向へ、前後のバンクのシーケンス番号を順次比較し、最初に所定値分、シーケンス番号が加算されている関係になっているバンクの組合せを特定する後方サーチを実行する。
ステップS404:プロセッサ110は、1つ前のバンクを指定する。具体的には、プロセッサ110は、チェックバンク−1の値を設定する。そして、ステップS405の処理に移行する。
ステップS405:プロセッサ110は、ベース領域とミラー領域との少なくとも一方のシーケンス番号の関係が、+1であるか否かを判定する。この条件を満たしていれば(ステップS405:Yes)、ステップS406に移行する。一方、この条件を満たしていなければ(ステップS405:No)、ステップS407に移行する。
ステップS407:プロセッサ110は、後方サーチにより、1つ前のバンクを選択するため、チェックバンクの値に、チェックバンク−1の値を代入すると共に、チェックカウントの値にチェックカウント−1の値を代入する。
一方、読込み処理の場合には、図9に示すステップS202に戻る。この場合、ステップS203の判定処理に移行する。
図14は、最新のバンクの判定処理の一例を示すフローチャートである。図15は、最新のバンクの判定処理の一例を説明する図である。この判定処理では、推定値というパラメータを導入することで、データの書込みが最新のバンクの判定を容易にすることができる。
ここで、チェックカウントには、データの書込みされているバンク数が設定される。この値は、後述するステップS511において、チェック回数として、ステップS502〜S511の処理をループする回数を設定することに相当する。また、チェックバンクには、検索基準バンクの配列番号が設定される。
ステップS504:プロセッサ110は、チェックバンクの値をチェックバンク+1に設定する。
ステップS507:プロセッサ110は、シーケンス番号(推定値)に、0(ゼロ)を設定する。
ステップS509:プロセッサ110は、最新バンクにチェックバンクの値を設定し、最新シーケンス番号に、シーケンス番号(推定値)を設定する。
ステップS511:プロセッサ110は、チェックカウントの値が、0(ゼロ)であるか否かを判定する。チェックカウントの値が、0(ゼロ)以外の値であれば(ステップS511:No)、ステップS502の処理に戻る。一方、チェックカウントの値が、0(ゼロ)であれば(ステップS511:Yes)、後方サーチにより、ループする回数に達したことになるので、図14に示すフローチャートの処理を終了し、書込み処理の場合には、図6に示すステップS102の処理に戻る。一方、読込み処理の場合には、図9に示すステップS202に戻る。
次に、図9で示したデータの読込み処理において、最新のバンクが特定された後のデータの読込み処理をより詳細に説明する。
図16は、データの読込み処理の一例を示すフローチャートである。
データの読込み処理の詳細について、本実施形態では、上述したバンクの新旧を特定した後に、バンクの有効性判断を実行する。つまり、バンクは、図4に示すデータ構造において、データチェックの項目を有しており、プロセッサ110は、データチェックに基づくチェックサム等でデータの検証をする前に、シーケンス番号等を解析することにより、データの書込みが最新のバンクを判定することができる。これにより、全てのバンクのデータに対して、データの検証を行わずに済むので、無駄なメモリアクセスを行わずにフラッシュメモリ130の初期チェック等の処理時間を短縮することが可能となる。
一方、この条件を満たしていない場合(ステップS604:No)、ベース領域とミラー領域との何れか一方のデータを選択するため、ステップS605の処理に移行する。
ステップS607:プロセッサ110は、既にS604の処理において、両方の領域におけるチェックデータの有効性を判定しているので、ベース領域のデータが無効であれば、ミラー領域のデータを選択して、正常なバンクのデータとする。
ステップS609:プロセッサ110は、チェックカウントの値が、0(ゼロ)の値であるか否かを判定する。0(ゼロ)の値である場合(テップS609:Yes)、ステップS611の処理に移行する。一方、0(ゼロ)以外の値である場合(テップS609:No)、ステップS610の処理に移行する。
ステップS611:プロセッサ110は、正常なバンクのデータを記憶済みであるか否かを判定する。この条件を満たしている場合(ステップS611:Yes)、ステップS612の処理に移行し、この条件を満たしていない場合(ステップS611:No)、ステップS613の処理に移行する。
ステップS613:プロセッサ110は、異常を検出し、図16に示すフローチャートの処理を終了する。
ステップS614:プロセッサ110は、ベース領域から正常なバンクのデータを読出し、図16に示すフローチャートの処理を終了する。
ステップS615:プロセッサ110は、ミラー領域から正常なバンクのデータを読出し、図16に示すフローチャートの処理を終了する。
図17は、チェックバンク及びシーケンス番号(推定値)を決定するためのサブルーチンの一例を示すフローチャートである。
ステップS702:プロセッサ110は、チェックバンクをバンク全体の終端を指定する。具体的には、プロセッサ110は、チェックバンクの値に、バンク数−1の値を代入する。
ステップS704:プロセッサ110は、シーケンス番号が、0(ゼロ)であるか否かを判定する。この条件を満たす場合(ステップS704:Yes)、ステップS705の処理に移行し、この条件を満たさない場合(ステップS704:No)、ステップS706の処理に移行する。
ステップS706:プロセッサ110は、シーケンス番号(推定値)に、1を減算するデクリメント処理を実行する。そして、図16に示すステップS602の処理に戻る。
また、本実施形態では、例えば、図15に示す通り、最新のバンクの次のシーケンス番号のバンクに書込み時刻が最も古いデータが記憶されている。したがって、本実施形態では、バンクに記憶されているデータを書込む場合、例えば、フラッシュメモリ130のアクセス先として、最も更新順序が古いシーケンス番号を選択することで、最も古いデータを消去して、新たにデータを書込むことができる。
(1)本実施形態では、フラッシュメモリ130において、記憶するデータの種類により、複数のエリアに分けて、バンクが構成されてもよい。
図18は、複数の種類のバンク構成例を説明する図である。本実施形態では、データの種類は、主に、書込み要求が発生するタイミングによって分けられる。例えば、エラー発生時のデータ保存領域(Freeze Frame Data)、シャットダウン時の各種情報、システム学習データ等である。
そこで、図18では、フラッシュメモリ130内に、例えば、3つのエリアを設定する。具体的には、フラッシュメモリ130は、第0エリアとして、エラー発生時のデータ保存領域(Freeze Frame Data)130a、第1エリアとして、シャットダウン情報130b、第2エリアとして、システム学習データ130cの領域を設ける。なお、それぞれエリアは、ベース領域とミラー領域とを備える。
また、システムの学習データの場合、工場出荷前に一度しか書込みをしないような場合は、バンク数は1として設定することが好ましい。
あるいは、複数のバンクの構成において、プロセッサ110がミラー領域にデータを書込み、その上で異常と判定した場合、1回だけ、次のバンクのベース領域に書込むと共に、そのベース領域に対するミラー領域に書込むようにしてもよい。
ステップS802:プロセッサ110は、ステップS801で設定したバンクのミラー領域のみ異常であるか否かを判定する。このミラー領域のみ異常である条件を満たす場合(ステップS802:Yes)、ステップS803の処理に移行する。一方、この条件を満たさない場合(ステップS802:No)、ステップS804の処理に移行する。
ステップS804:プロセッサ110は、フラッシュメモリ130上における書込み対象のバンクのベース領域へデータを書込む。これにより、フラッシュメモリ130は、そのベース領域にデータを記憶する。
ステップS806:プロセッサ110は、同じ領域にデータの再書込みを実行する。すなわち、バンク数が1つの場合には、プロセッサ110は、ベース領域で異常が発生した場合には、そのベース領域に再書込みを実行し、ミラー領域で異常が発生した場合には、そのミラー領域に再書込みを実行する。
ステップS808:プロセッサ110は、バンク数が1つであって、かつ、書込み異常が再度発生したか否かを判定する。この条件を満たす場合(ステップS808:Yes)、ステップS809の処理に移行する。一方、この条件を満たさない場合(ステップS808:No)、ステップS810の処理に移行する。
ステップS810:プロセッサ110は、ベース領域及びミラー領域において、共に書込みが正常終了したか否かを判定する。正常終了した場合(ステップS810:Yes)、図20に示すフローチャートの処理を終了する。一方、正常終了しなかった場合(ステップS810:No)、ステップS811の処理に移行する。
ステップS812:プロセッサ110は、書込み異常と検出し、図20に示すフローチャートの処理を終了する。
図23は、書込み要求発生時における各バッファの更新の一例を説明する図である。
図23において、RAM120は、RAMバッファ120a〜120dを有する。RAMバッファ120aは、第0エリアとして、エラー発生時のデータ保存領域(Freeze Frame Data)に使用される。RAMバッファ120bは、第1エリアとして、シャットダウン情報に使用される。RAMバッファ120cは、第2エリアとして、システム学習データに使用される。RAMバッファ120dは、書込み開始時にRAMバッファ120a〜120cからデータをロードするために使用される。
(a)上記制御部は、上記記憶領域に記憶されているデータを読込む場合、上記アクセス先として、最も更新順序が新しい識別子を選択し、上記データを上記記憶領域へ書込む場合、上記アクセス先として、最も更新順序が古い識別子を選択することを特徴とする請求項1に記載の自動車用電子制御装置。
このようにすれば、同一の記憶領域に対する書込み回数を制限し、各々の記憶領域におけるデータの消去回数を略均等化するようにデータの書込み先又は読込み先を決定できるので、フラッシュメモリ130の寿命をより延ばすことができる。
このように判定すれば、上記制御部は、データを読込む場合、データの書込みが最新のバンクからデータを容易に読込むことができる。また、上記制御部は、データを書込む場合、最新のデータが書込みされた記憶領域の次の識別子(最も更新順序が古い識別子)の記憶領域にデータを容易に書込むことができる。
110…プロセッサ
120…RAM
130…フラッシュメモリ
140…バス
13a…第1セクタ
13b…第2セクタ
Claims (3)
- データの最小消去単位であるセクタを複数の記憶領域に分割してデータを記憶し、前記記憶領域を指定するための配列番号が付与され、データの再書込みが可能な不揮発性メモリと、該不揮発性メモリへのアクセスを制御する制御部とを含む自動車用電子制御装置であって、
前記制御部は、
前記記憶領域を順次変更してデータを該記憶領域へ書込む場合、書込み順を示す識別子を循環させてカウントする方式で、データの書込み対象の前記記憶領域に前記識別子を割り振り、該識別子に基づいてデータの新旧を特定し、
前記記憶領域の配列内で、空きを示すデータと異なるデータが記憶されている、前記配列番号が最大となる終端の記憶領域を検索し、
前記終端の記憶領域から前後の記憶領域の識別子を順次比較し、異常値が誤って書込まれることによる、後続の判定処理でのエラーを防ぐ処理をした後、
最新のデータが書込みされた記憶領域を判定し、
該最新のデータの有効性を検証し、検証結果に基づいて、前記記憶領域へのアクセス先を決定することを特徴とする自動車用電子制御装置。 - 各々の前記記憶領域は、データを記憶する第1領域と、該データの複製データを記憶する第2領域とを、前記不揮発性メモリの異なる前記セクタ上に有し、
前記制御部は、前記第1領域と、前記第2領域とに対して、前記識別子を各々割り振り、各々の前記識別子に基づいて、前記第1領域及び第2領域のデータの新旧を特定することを特徴とする請求項1に記載の自動車用電子制御装置。 - データの最小消去単位であるセクタを複数の記憶領域に分割してデータを記憶し、前記記憶領域を指定するための配列番号が付与され、データの再書込みが可能な不揮発性メモリへのアクセスを制御する、自動車用電子制御装置の制御部が、
前記記憶領域を順次変更してデータを該記憶領域へ書込む場合、書込み順を示す識別子を循環させてカウントする方式で、データの書込み対象の前記記憶領域に前記識別子を割り振り、該識別子に基づいてデータの新旧を特定し、
前記記憶領域の配列内で、空きを示すデータと異なるデータが記憶されている、前記配列番号が最大となる終端の記憶領域を検索し、
前記終端の記憶領域から前後の記憶領域の識別子を順次比較し、異常値が誤って書込まれることにより、後続の判定処理でのエラーを防ぐ処理をした後、
最新のデータが書込みされた記憶領域を判定し、
該最新のデータの有効性を検証し、検証結果に基づいて、前記記憶領域へのアクセス先を決定する処理を実行することを特徴とするデータ記憶方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014190372A JP6317653B2 (ja) | 2014-09-18 | 2014-09-18 | 自動車用電子制御装置及びデータ記憶方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014190372A JP6317653B2 (ja) | 2014-09-18 | 2014-09-18 | 自動車用電子制御装置及びデータ記憶方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016062349A JP2016062349A (ja) | 2016-04-25 |
JP6317653B2 true JP6317653B2 (ja) | 2018-04-25 |
Family
ID=55797819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014190372A Active JP6317653B2 (ja) | 2014-09-18 | 2014-09-18 | 自動車用電子制御装置及びデータ記憶方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6317653B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114518845A (zh) * | 2022-01-06 | 2022-05-20 | 中汽创智科技有限公司 | 数据存储方法、装置、介质及设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7313648B2 (en) * | 2004-09-30 | 2007-12-25 | Rockwell Automation Technologies, Inc. | Corruption tolerant method and system for deploying and modifying data in flash memory |
JP4227149B2 (ja) * | 2006-04-19 | 2009-02-18 | 三菱電機株式会社 | 電子制御装置の情報記憶方法 |
JP2008123473A (ja) * | 2006-10-20 | 2008-05-29 | Toshiba Corp | 記憶装置及びその制御方法 |
JP2009093528A (ja) * | 2007-10-11 | 2009-04-30 | Victor Co Of Japan Ltd | メモリデータ管理装置 |
US8171205B2 (en) * | 2008-05-05 | 2012-05-01 | Intel Corporation | Wrap-around sequence numbers for recovering from power-fall in non-volatile memory |
JP2011175449A (ja) * | 2010-02-24 | 2011-09-08 | Kyocera Corp | 記憶装置 |
JP6274857B2 (ja) * | 2013-12-26 | 2018-02-07 | キヤノン株式会社 | メモリ制御装置、メモリ制御方法、およびプログラム |
-
2014
- 2014-09-18 JP JP2014190372A patent/JP6317653B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016062349A (ja) | 2016-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102750191B (zh) | 用于启动固态非易失性存储设备内的刷新操作的方法 | |
US20210027845A1 (en) | Read retry threshold voltage selection | |
US9792070B2 (en) | Data storage device, method of storing data, and on-vehicle control apparatus | |
JP6317653B2 (ja) | 自動車用電子制御装置及びデータ記憶方法 | |
US20180052635A1 (en) | Electronic control apparatus and information storage method for the same | |
JP5066894B2 (ja) | 記憶媒体制御装置 | |
KR101826778B1 (ko) | 플래쉬 라이프 사이클 및 성능 개선을 고려한 eeprom 에뮬레이션 구현 방법 | |
JP5660521B2 (ja) | 不揮発性半導体記憶装置およびメモリ管理方法 | |
CN111045600A (zh) | 向存储器写入数据的方法、装置及存储介质 | |
US11169828B2 (en) | Electronic control unit and method for verifying control program | |
JP6832448B2 (ja) | プログラムの更新方法および装置 | |
JP5983512B2 (ja) | 書き込み装置 | |
JP6040895B2 (ja) | マイクロコンピュータ及び不揮発性メモリのブロック管理方法 | |
US8503241B2 (en) | Electronic apparatus and data reading method | |
CN104751881B (zh) | 快闪存储器烧录方法 | |
US9465730B2 (en) | Flash memory device | |
US20170200503A1 (en) | Storage apparatus, flash memory control apparatus, and program | |
JP2018063527A (ja) | 電子制御装置 | |
JP5939120B2 (ja) | フラッシュメモリのデータ処理方法、及び、このデータ処理用のプログラム | |
JP2006291720A (ja) | 制御装置 | |
JP6568826B2 (ja) | 電子制御装置 | |
JP5643708B2 (ja) | 電子制御装置 | |
JP4935101B2 (ja) | メモリアクセス方法及び装置 | |
JP6118045B2 (ja) | 半導体記憶装置 | |
US20040098555A1 (en) | Method for dynamic memory management |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170315 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180213 |
|
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: 20180327 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180330 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6317653 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |