JP4550479B2 - 電子制御装置及びデータ調整方法 - Google Patents

電子制御装置及びデータ調整方法 Download PDF

Info

Publication number
JP4550479B2
JP4550479B2 JP2004135574A JP2004135574A JP4550479B2 JP 4550479 B2 JP4550479 B2 JP 4550479B2 JP 2004135574 A JP2004135574 A JP 2004135574A JP 2004135574 A JP2004135574 A JP 2004135574A JP 4550479 B2 JP4550479 B2 JP 4550479B2
Authority
JP
Japan
Prior art keywords
data
adjustment
address
control
storage area
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.)
Expired - Fee Related
Application number
JP2004135574A
Other languages
English (en)
Other versions
JP2005316831A (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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2004135574A priority Critical patent/JP4550479B2/ja
Priority to US11/117,326 priority patent/US20050246513A1/en
Publication of JP2005316831A publication Critical patent/JP2005316831A/ja
Application granted granted Critical
Publication of JP4550479B2 publication Critical patent/JP4550479B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0638Combination of memories, e.g. ROM and RAM such as to permit replacement or supplementing of words in one module by words in another module

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、制御データにて制御対象部を制御することができる電子制御装置及び電子制御装置のデータ調整方法に関し、制御対象部の制御を実行しつつ制御データの調整を可能にした電子制御装置及び電子制御装置のデータ調整方法に関する。
従来、機器等を制御するための制御プログラムや制御パラメータ等のデータは、バッテリが外されても消去されないように不揮発性メモリ(ROM)内に格納されてユーザに供給される場合がある。
また、電子制御装置をシステムに実装した後で、制御対象機器の特性に応じて制御データの調整(キャリブレーション)を希望する場合もある。このため、制御データは、例えばEEPROM(Electronically Erasable and Programmable Read Only Memory)やフラッシュメモリ(フラッシュEEPROM)等の書き換え可能不揮発性メモリなどに格納される。
ところで、フラッシュEEPROMの記憶領域は複数の記憶ブロックに分割して構成されており、書き換え時には記憶ブロック毎にデータの消去や書き込みを行なう。例えば、記憶容量が32キロバイト(KB)の2つの記憶ブロックから構成された64KBのフラッシュEEPROMの場合、32kB毎にデータの書換処理が行なわれる。しかし、フラッシュEEPROMにおいてはデータの書換処理が行われている間、この記憶ブロックのデータの読み出しを行なうことができない。
更に、フラッシュEEPROMは、データの書換処理に要する時間が、RAM(Random Access Memory)の書き換え所要時間に比べて非常に長くかかる。このため、制御対象機器の特性に応じてキャリブレーションを行なう場合には、通常、フラッシュEEPROMに書き込むためのデータをデバッガ等の外部記憶装置に一旦格納し、制御対象の機器を停止させた上、外部記憶装置に格納されたデータを用いてフラッシュEEPROMの書換処理を行なう。従って、1つのフラッシュEEPROMに対して複数回のキャリブレーションを行なう場合、キャリブレーション毎に上記処理を繰り返す必要があり、非常に手間がかかる。
そこで、下記特許文献1においては、制御動作時にも不揮発性メモリのデータの書換処理を行なうことができる電子制御装置が開示されている。図10は、特許文献1に記載の電子制御ユニット(Electric Control Unit:ECU)110を示すブロック図である。ここでは、ECU10を自動車に実装後、自動車を構成する例えば制御対象部111などの各ユニットの制御を行なうため、制御データとしての制御パラメータの調整(キャリブレーション)を行なう場合について説明する。
図10に示すように、ECU110は、CPU200、不揮発性メモリとしてのフラッシュEEPROM201及び揮発性メモリとしての調整用RAM202を備え、CPU200は、フラッシュEEPROM201や調整用RAM202等に格納された各種プログラムを実行するよう構成されている。フラッシュEEPROM201には、ECU110が制御を行なう場合に用いる制御命令及び制御パラメータに関するデータが記録されており、ECU110は、例えばこの制御命令により制御対処部111を制御動作させ、制御パラメータのキャリブレーション処理などを実行する。キャリブレーション終了後などのフラッシュEEPROM201の制御パラメータの書き換え時には記憶ブロック単位毎にデータの消去処理及び書込処理が行なわれる。調整用RAM202は、キャリブレーション時に所定のデータを一時的に記憶するメモリであり、制御対象部111に対応した制御パラメータを格納できる記憶容量を有する。
ECU110は、更に制御対象部111を特定したり、パラメータを確定したりするために使用されるユーザインターフェース部112を接続するための入出力インターフェース部220、CPU200とアドレスバスを介して接続されるアドレスデコーダ210、及びCPU200とデータバスを介して接続され、フラッシュEEPROM101に書き込むべきアドレスや、調整された制御パラメータを保持するフラッシュ制御レジスタ213、CPU200に接続され、フラッシュEEPROM201の書き換えモードを設定するスーパーユーザモードレジスタ212などを有する。
アドレスデコーダ210は、初期化レジスタ211が備えられ、初期化レジスタ211は、キャリブレーションを行なう領域のアドレスに関するデータを記録する領域と、調整用RAM202の起動に関するデータを記録する領域(起動ビット)とからなる。
ECU110において、フラッシュEEPROM201に記録されたデータを制御対象部111に適したデータに書き換える際の処理は、先ず、ECU110がフラッシュEEPROM201に記録されたデータに基づいて制御対象部111を制御中に、ユーザはユーザインターフェース部112を用いて制御対象部111に関してのキャリブレーションの指示を行なう。これにより、ECU10はキャリブレーションモードに設定される。そして、CPU200は、フラッシュEEPROM201上のキャリブレーション領域の決定を行ない、フラッシュEEPROM201のキャリブレーション領域のデータを調整用RAM202にコピーする。
このとき、調整用RAM202のメモリアドレスと、フラッシュEEPROM201のキャリブレーション領域とに同じアドレスを割り振り、制御対象部111の特性に合わせてキャリブレーション処理を実行する。すなわち、最適な制御パラメータとなるようデータの読み出しや書き換えの各種処理は、調整用RAM202を使用して行い、キャリブレーションの終了指示があった場合に、調整用RAM202に記録された制御パラメータを、フラッシュEEPROM201に対してプログラムする書込処理を実行する。
すなわち、この特許文献1などの従来技術においては、以下のようにしてフラッシュ・メモリのデータを書き換えるものである。図11は、従来のフラッシュ・メモリのデータ書き換え方法を説明する図であって、図11(a)は、データ領域が1つの場合、図11(b)はデータ領域が複数ある場合の書き換え方法を説明する図である。
図11(a)に示すように、従来の電子制御装置は、アプリケーション・プログラムが記憶されるプログラム領域、及び制御パラメータが記憶されるデータ領域0を有するフラッシュ・メモリと、データ領域0の容量以上のRAMとを備え、アプリケーション・プログラムを実行して、データ領域0に格納された制御パラメータを使用して制御対象となる機器を制御しつつ、制御パラメータの最適な値をサーチする調整処理を行う。その場合、まず、RAMにデータ領域0のデータを移動する。そして、RAM上にて制御データを書換えていくこととで制御パラメータの最適化(調整処理)を行う。調整処理が終了したら、その最適化されたRAM上の制御パラメータをデータ領域0に書き戻す。
また、大量な制御データを扱うために複数のデータ領域を有する場合においては、図11(a)に示すように、データ領域1つ分の制御パラメータをRAMにコピーして調整し、その後、書き戻す処理を行うといった方法では時間がかかる。このため、例えば図11(b)に示すように、例えばデータ領域2つ分の記憶容量のRAMを用意すれば、一度に2つのデータ領域のデータの最適化を行うことができる。
すなわち、大量の制御パラメータを調整処理するには、複数の制御パラメータの調整を同時並行的に実施する必要があり、このため、調整処理はアプリケーション・プログラムを実行したまま行うことが有用である。したがって、容量が大きいRAMを電子制御装置に搭載することで、調整すべきデータ量が多い場合にも対応することができる。
特開2004−5296号公報
しかしながら、このような従来の調整方法では、アプリケーション・プログラムを実行中にキャリブレーション後の調整済制御パラメータを書き戻すことができず、アプリケーション・プログラム実行後、専用のプログラムを実行することにより、RAMのデータをフラッシュ・メモリのデータ領域に書き戻す必要がある。すなわち、フラッシュ・メモリは書き込みと読み出しを同時に実行できないため、調整済の制御パラメータの書き込みを実行している間はフラッシュ・メモリから制御パラメータを読み出すことができない。上述したように、フラッシュ・メモリのデータの書換処理に要する時間は非常に長く、したがって上記アプリケーション・プログラムを終了させる必要がある。
また、例えば大量の制御パラメータにより制御対象の機器を制御する場合、大量の制御パラメータをその制御対象機器に適した値に調整する必要がある。しかし、大量の制御パラメータの調整を一度に実行しようとすると、大容量のRAMを搭載しなければならず、コストインパクトが大きいという問題点がある。一方、大量の制御パラメータを小さいRMAにて調整処理する場合には、上述したように、アプリケーション・プログラムを一旦終了させ、RAMのデータを書き戻す処理を複数回繰り返す必要があり、制御パラメータの調整に極めて時間がかかるという問題点がある。
本発明は、このような問題点を解決するためになされたものであり、制御データを制御対象の機器に適した値に調整するための調整処理を実行しつつ、調整後の制御データの書き込みを可能とする電子制御装置及びそのデータ調整方法を提供することを目的とする。
本発明にかかる電子制御装置は、制御対象となる機器を制御する制御データを該制御対象の機器に適した値となるよう調整する調整処理を実行する電子制御装置において、複数のデータ格納領域を有する不揮発性記憶部と、前記不揮発性記憶部のデータ格納領域に格納された調整前の制御データである調整前制御データの前記調整処理を実行する際に、前記不揮発性記憶部に代替して使用する代替メモリと、複数のデータ格納領域のうちの少なくとも一のデータ格納領域から調整前制御データを読み出し、前記代替メモリを使用して前記調整前制御データの調整処理を実行し、前記不揮発性記憶部における前記少なくとも一のデータ格納領域の読出しとは独立して書込みが可能な他のデータ格納領域に、前記調整された制御データである調整済制御データを書き込む調整処理手段とを有することを特徴とする。
本発明においては、データ格納領域に格納されている調整処理対象の調整前制御データを、代替メモリ上にて制御対象の機器に適した値となるよう調整し、その後、調整前制御データがもともと格納されているデータ格納領域とは別のデータ格納領域であって、当該調整前制御データが格納されているデータ格納領域とは独立して書込み可能な他のデータ領域に調整した制御データを書き込むため、調整処理を継続しつつ制御データの調整が可能となり、例えば、継続して次のデータ格納領域の制御データの調整処理を実行することができる。
また、前記不揮発性記憶部は、第1のデータ格納領域と該第1のデータ格納領域のデータの読出し、消去及び書込みをする第1のアクセス手段とを有する第1の不揮発性記憶部と、第2のデータ格納領域と該第2のデータ格納領域のデータの読み出し、消去及び書込みをする第2のアクセス処理手段とを有する第2の不揮発性記憶部とを備え、前記第1及び第2のデータ格納領域のいずれか一方に前記調整前制御データが格納され、他方に前記調整済制御データが書き込まれるものとすることができ、2つの不揮発性記憶部により、それぞれ個別の書換え又は読み出し、すなわち一方のデータ格納領域の読出し中に他方のデータ格納領域の書込みを可能にする。
更に、前記第1及び前記第2のデータ格納領域のアドレスを管理するアドレス管理手段を有し、前記アドレス管理手段は、前記第1及び前記第2のデータ格納領域のいずれか一方のアドレスを前記調整前制御データが格納されるデータ格納領域のアドレスを示す第1のアドレスに設定し、他方のアドレスを前記調整済制御データが書き込まれるデータ格納領域のアドレスを示す第2のアドレスに設定することができ、いずれのデータ格納領域も、必要に応じて又は適宜、第1のアドレス又は第2のアドレスに設定することができる。
更にまた、前記アドレス管理手段は、前記調整処理終了後に前記第2のアドレスと前記第1のアドレスとを入れ換えることができ、第1及び第2のデータ格納領域のうち一方を調整された調整済制御データの格納領域とし、他方を次に最適化された制御データを格納するための領域に設定することができる。
また、前記アドレス管理手段は、前記第1及び第2のデータ格納領域のアドレスと前記第1のアドレス又は第2のアドレスとを対応づけて記憶する記憶領域を有することができ、例えばレジスタなどを使用すれば極めて簡単且つ小型な回路構成にてアドレス管理を行うことができる。
また、前記第1のアドレスが設定されたデータ格納領域の制御データを前記制御対象となる機器を制御する際に使用することができ、第1のアドレスが設定されているデータ格納領域の制御データを使用して機器を制御するものとしておけば、調整された制御データが格納されているデータ格納領域のアドレスに第1のアドレスを設定することで、常に調整済制御データを使用することができる。
更にまた、前記代替メモリは、前記不揮発性記憶部の消去単位以上の大きさの記憶容量を有する揮発性メモリとすることができ、揮発性メモリは、不揮発性記憶部の一括消去する最小単位以上の大きさであればよく、調整すべき制御データが上記消去単位以上であっても、順次最適化処理を実行することができ、小さい容量の代替メモリにて大量の制御データの最適化を実行することができる。
本発明に係るデータ最適化方法は、制御対象となる機器を制御する制御データを該制御対象の機器に適した値となるよう調整する調整処理を実行する電子制御装置のデータ調整方法において、前記制御データが格納された不揮発性記憶部の少なくとも一のデータ格納領域から調整前の制御データである調整前制御データを読み出す読出工程と、前記不揮発性記憶部に代替して使用可能な代替メモリを使用して調整処理を実行する調整処理工程と、前記不揮発性記憶部における前記少なくとも一のデータ格納領域の読出しとは独立して書き込み可能な他のデータ格納領域に対して前記調整処理工程にて調整された制御データである調整済制御データを書き込む書込工程とを有することを特徴とする。
本発明に係る電子制御装置及びデータ最適化方法によれば、調整前制御データを読み出しながら調整処理を実行し、調整済データを書き込むことができ、容量が小さい代替メモリであっても大容量の制御データの書換えを効率よく行うことができる。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、フラッシュ・メモリに記憶された制御データにより制御対象を制御しつつ、当該制御データを制御対象の機器に適した値に調整する調整処理を実行する電子制御装置(以下、マイクロコンピュータという。)及びそのデータ調整方法に適用したものである。例えば、本実施の形態におけるマイクロコンピュータを、各センサーからの情報を元に、パラメータを決定するシステムなどに適用すれば、制御対象の機器を制御するための制御パラメータを、当該制御対象の機器に適した値に計算して更新する処理(以下、最適化処理ともいう。)を実行することができる。
実施の形態1.
図1は、本発明の実施の形態にかかるマイクロコンピュータ1を示すブロック図である。図1に示すように、マイクロコンピュータ1は、制御データを使用して制御対象となる機器を制御する電子制御装置であって、制御対象となる機器(以下、対象機器という。)の制御を実行するアプリケーション・プログラムが記憶されたプログラム記憶部2と、このプログラムを読み出し実行するCPU(Central Processing Unit)3と、複数のデータ領域(データ格納領域)を有し、このデータ領域に制御データが格納されるフラッシュ・メモリ(Flash EPROM(Erasable Programmable Read Only Memory)8と、後述する調整前制御データを制御対象の機器に適した制御データに調整する調整処理(以下、最適化処理ともいう。)を実行する際に、データ領域に代替して使用する揮発性メモリとしてのRAM10と、フラッシュ・メモリ8における複数のデータ領域から、調整処理により調整された調整済制御データを格納するデータ領域を選択する書込用選択回路6と、フラッシュ・メモリ8内のいずれのデータ領域からデータを読み出すかを選択する読出用選択回路9と、書込用選択回路6を制御するフラッシュ書換制御回路4と、読出用選択回路9を制御するスワップ用レジスタ5と、外部とのデータのやり取りをするためのI/Oインターフェース部12と、CPU3、書込用選択回路6、読出用選択回路9、及びRAM10などの間でデータをやり取りするためのデータバス11とを有する。ここで、調整前制御データとは、例えばデフォルトの制御データ又は最適化が必要となった制御データなどである。
プログラム記憶部2は、後述するように、例えば、フラッシュ・メモリ又はROM(Read Only Memory)などの不揮発性メモリであり、制御データを使用して対象機器の制御を実行するアプリケーション・プログラムが格納されたものである。CPU3は、このアプリケーション・プログラムを読み出し、フラッシュ・メモリ8に記憶された調整前制御データを使用して対象機器の制御をし、外部からの指示などにより、制御データを対象機器の制御に適した値に調整するための調整処理を実行する。
フラッシュ・メモリ8は、複数のデータ領域を有する。本実施の形態においては、説明の簡単のため、2つのデータ0、データ1を格納するそれぞれ第1及び第2のデータ格納領域としてのデータ領域7a、7bを有するものとする。このデータ領域7a、7bは、独立して読出し、書換え可能処理が可能な構成とする。すなわち、一方のデータ領域7aからデータを読み出しつつ、他方のデータ領域7bへのデータ書込みが可能な構成となっており、例えば、各データ領域に対してデータの読み出し、消去及び書込みが可能なメモリアクセス手段を個別に備えた第1及び第2の不揮発性記憶部からなる構成などとすることができる。具体的には、各データ領域が別のメモリマクロから構成されるものなどとすればよいが、2以上のデータ領域であってそれらが個別に読出し・書込みが可能な構成であればよく、また、そのようなデータ領域を3以上有してもよいことは勿論である。
また、データ領域7a、7bに格納されるデータ0、データ1は、フラッシュ・メモリ8における最小の消去単位(ブロックデータ)以上であればよいが、複数のブロックデータを格納したデータ領域としてもよいことは勿論である。
CPU3は、プログラム記憶部2のアプリケーション・プログラムにより、データ領域7a、7bのいずれかに格納されている制御データを使用して制御対象機器の制御を行う。ここで、制御対象の機器によっては、予め与えられるなどしたデフォルトの制御データ、又は現在使用している制御データを調整(キャリブレーション)して、制御対象の機器に適した制御データとなるよう設定し直す調整処理を必要とする場合がある。ここで、本実施の形態においては、調整処理が必要となった、又は調整処理を必要とする制御データを調整前制御データ、調整処理が終了して最適な値に調整された制御データを調整済制御データということとする。
CPU3は、この調整処理においては、調整前制御データを使用し、アプリケーション・プログラムを実行して対象機器を制御しつつ最適な値(調整済制御データ)を見つける処理を実行する。
RAM10は、調整処理において、フラッシュ・メモリ8のデータ領域7aに調整前制御データが格納されている場合であれば、このデータ領域7aから読み出された調整前制御データを一時的に記憶し、調整処理の際にデータ領域7aの代替領域として使用する代替メモリである。調整処理においては、CPU3は、RAM10にアクセスして調整対象となる調整前制御データを読出し、調整処理を実行する。このため、調整処理の実行中、フラッシュ・メモリ8、RAM10のメモリアドレスを管理している図示せぬアドレス管理部が、調整前制御データが格納されているアドレスをフラッシュ・メモリ8のデータ領域7aからRAM10のアドレスに設定変更する。
フラッシュ書換制御回路4は、調整処理が終了し、最適化された値(調整済制御データ)がRAM10に固定されると、CPU3から調整処理終了の通知を受け、フラッシュ・メモリ8のデータ領域7a、7bのうち、調整前制御データが書き込まれていない方のデータ領域に最適化された調整済制御データを書き込ませるためのセレクト信号を出力したり、データ領域7a、7bのいずれかのデータを消去させるためのセレクト信号を出力して書込用選択回路6を制御する。
書込用選択回路6は、フラッシュ書換制御回路4からのセレクト信号に基づき、フラッシュ・メモリ8の2つのデータ領域7a、7bのいずれかを選択する。そして、フラッシュ・メモリ8において、データ領域のデータ読み出し、消去及び書き込みを行う図示せぬメモリアクセス手段が選択されたデータ領域のデータを消去したり、調整処理後の調整済制御データの書き込みを行う。書き込むデータはRAM10から読み出され、バス11を介して送られる。
スワップ用レジスタ5は、後述するように、データ領域7a、7bのアドレスをスワップ(SWAP)させるために使用するアドレス管理手段として機能するものである。本実施の形態においては、2つのデータ領域7a、7bのうち、一方のデータ領域は、対象機器を制御する制御データを格納する(CPU3が通常アクセスする)データ領域として設定され、他方のデータ領域は調整処理後の調整された調整済制御データが書き込まれるよう設定される。本実施の形態においては、2つのデータ領域7a、7bのうち、通常CPU3がアクセスするデータ領域として使用する側のアドレスを第1のアドレス、調整処理後の調整済制御データがRAM10から書き込まれるデータ領域のアドレスを第2のアドレスということとする。
例えば、調整処理を実行する前であって、調整前制御データがデータ領域7aに格納されている場合、データ領域7aのアドレスは、第1のアドレスに設定され、調整処理前においては、この第1のアドレスが設定されたデータ領域7aから制御データが読み出され、制御対象の機器が制御される。そして、調整処理が必要になるなどして調整処理が実行された場合、上記第1のアドレスが設定されているデータ領域7aの制御データがRAM10にコピーされ、調整処理が実行される。そして、調整処理後の調整済制御データが第2のアドレスが設定されているデータ領域7bに書き込まれる。最後に、データ領域7bのアドレスが第1のアドレスに設定され、データ領域7aのアドレスが第2のアドレスに設定される。すなわち、データ領域7a、7bのアドレスがSWAPされる。なお、例えばその後に更に第1のアドレスが設定されたデータ領域7bの制御データの調整処理が行われ、調整済制御データとしてデータ領域7aに書き込まれれば、再びデータ領域7aのアドレスが第1のアドレスに設定される。
このように、調整処理後には、他方のデータ領域7bに対してCPU3が通常アクセスするよう、データ領域のアドレスを入れ替える処理がなされる(以下、SWAPという。)。スワップ用レジスタ5は、このSWAPを行うためのレジスタであり、データ領域7a、7bのアドレスが、第1のアドレス又は第2のアドレスのいずれに設定されているかの情報を保持しており、調整処理後にその情報を入れ換える。なお、SWAPの方法についての詳細は後述する。また、SWAPの方法は、データ領域の入れ替えを行うことができればよく、このようにレジスタを使用して行う方法に限らず、不揮発性メモリにデータ領域7a、7bのアドレスをマッピングするなどしてもよい。
読出用選択回路9は、フラッシュ・メモリ8の2つのデータ領域7a、7bのいずれかを選択して選択したデータ領域から制御データを読み出すものである。すなわち、調整処理前においては、スワップ用レジスタ5のデータに基づき、調整処理対象の調整前制御データが格納された側のデータ領域を選択する。また、対象機器を制御する場合には、調整された最新の調整済制御データが格納されているデータ領域を選択する。読み出したデータはバス11を介してCPU3、RAM10などに送られる。本実施の形態においては、調整済制御データが格納されると、調整前データが格納されていたデータ領域とそのアドレスがSWAPされるため、読出用選択回路9は、スワップ用レジスタ5に格納されたデータに基づき、常に第1のアドレスに設定された側のデータ領域を選択することとなる。
次に、本実施の形態におけるデータ最適化方法について説明する。図2(a)は、本実施の形態におけるマイクロコンピュータ1の記憶領域のメモリマップを示す図、図2(b)は、データ領域に対するアクセス可否を示す図である。また、図3(a)乃至図3(d)は、データ領域が最適化される様子を示す図、図4は、本実施の形態における最適化方法を示すフローチャートである。また、図5は、図1に示すマイクロコンピュータ1のデータ最適化方法を説明するための模式図である。
ここでは、マイクロコンピュータ1における記憶領域である2つのデータ領域7a、7b(データ領域1、データ領域0とする)8及びプログラム領域が、図2(a)に示すメモリマップ20にマッピングされている場合について説明する。
データ領域0には、調整前制御データとしてデータ0が格納され、プログラム領域には、データ0を使用して対象機器の制御を実行するアプリケーション・プログラムが格納されているものとする。制御データを最適化する際に使用するRAM10、データ領域1、0のデータ容量は、各2KBとする。RAM10は、データ領域0、1と、メモリマップ20上でアドレスが切り替え可能とされる。
これらデータ領域1及びデータ領域0、並びにプログラム領域は、上述したように、異なるメモリマクロにて構成されているものとし、必要に応じて個別に読出し又は書込みの処理が実行可能とする。すなわち、図2(b)に示すように、フラッシュ・メモリのデータ領域0、1は、一方を書き換えつつ他方を読み出す(リード)動作が可能であるものとする。なお、データ領域0は、書き換え、読み出しを同時に行うことはできず、またデータ領域1においても書換え、読み出しを同時に実行することはできない。
このような状態において、通常、図1に示すマイクロコンピュータ1は、データ領域0のデータ0を使用して動作を実行している。すなわち、データ領域0が通常アクセスするデータ領域として設定されているものとする。以下、このデータ0をデータ0(Ver1)とする。この場合において、図4及び図5に示すように、ユーザなどにより外部からI/Oインターフェース部12を介して、データ領域0のデータ0(Ver1)を最適な値に調整する最適化開始指令D1が出された場合、これを受けたCPU3がデータの調整処理を開始する(ステップS1)。調整処理を開始すると、先ず、調整対象となるデータ0(Ver1)D1をRAM10にコピーする(ステップS2、図3(a))。
次に、CPU3は、メモリマップ上のアドレス20において、フラッシュ・メモリのデータ領域0のアドレスとRAM10のアドレスとを切り替える(ステップS3、ST3)。このように、RAM10をデータ0のアドレスにマッピングすることにより、以降、データ領域0へのアクセスは、RAM10が代替して行うこととなる。この状態で、データ0(Ver1)の調整処理を実行する。調整処理では、CPU3が、対象機器が最適に制御されるような、制御データの最適な値を計算するもので、CPU3は、RAM10のデータ0の値をリードしながらアプリケーション・プログラムを実行し、RAM10のデータ0の値を順次書き換えて最適な値をサーチする。最適な値が決定(FIX)したら、その値をデータ0(Ver2)D5としてRAM30に設定する(図3(b))。
そして、最適化されたデータ0(Ver2)D5をRAM10からフラッシュ・メモリのデータ領域1へコピーする(ステップS5)。データ領域1にデータ0(Ver2)が書き込まれると、スワップ用レジスタ5によりデータ領域1のアドレスとデータ領域0のアドレスとをSWAPする。
次に、このSWAPの方法について説明する。データ領域をSWAPする方法として、本実施の形態においては、スワップ用レジスタ5を内蔵し、例えばSWAP=0の場合は、データ領域0を通常CPU3がアクセスするためのデータ領域として使用し、データ領域1を最適化後の調整された制御データを書き込むための調整用領域として使用するものとし、逆に、SWAP=1の場合は、データ領域1をデータ領域として使用し、データ領域0を最適化後のデータを書き込むため調整用領域として使用する方法である。すなわち、SWAP=0の場合、データ領域0は第1のアドレスのデータ領域として認識され、データ領域1は第2のアドレスのデータ領域として認識され、SWAP=1の場合、データ領域0は第2のアドレスのデータ領域、データ領域1は第1のアドレスのデータ領域として認識されることとなる。これにより、簡単な方法でデータ領域のSWAPが可能となる。
そして、調整処理前において、スワップ用レジスタ5がSWAP=0に設定されていた場合であって、調整処理が行われた場合、CPU3より調整処理終了の通知を受けたスワップ用レジスタ5は、SWAP=1に設定変更する。これにより、調整処理前にデータ領域として使用されていたデータ領域0は、調整用領域とされ、調整用領域として使用されていたデータ領域1はデータ領域に入れ替わる。以降、CPU3は、データ領域としてデータ領域1にアクセスすることとなる。このようなスワップ用レジスタ5により、極めて簡単かつ簡素な回路構成にてデータ領域のアドレス管理し、データ領域のSWAPを行うことができる。
SWAPのその他の方法として、上述のスワップ用レジスタを不揮発性領域にマッピングしておく方法がある。これにより、現在アクセスしたいデータが、データ領域0にあるか、データ領域1にあるかを認識することができると共に、電源が遮断されてもデータ領域0、1のいずれがデータ領域であって、いずれが調整用領域であるかの情報が失われることがない。すなわち、スワップ用レジスタ5を使用すると、レジスタ5の内容が電源遮断により初期状態に戻るため、電源遮断前に、データ領域となっている例えばデータ領域0に最終的なデータを書き戻す必要があるが、不揮発性領域にマッピングしておくことにより電源遮断前にデータ領域にデータを書き戻す必要がなくなる。
本実施の形態においては、機器を制御するための制御データを格納するためのデータ領域の例えば2倍の容量のデータ領域であって、各データ領域が個別に書き換えと読み出しとが可能なフラッシュ・メモリと、データ領域における消去単位以上の容量のRAMとを搭載することで、一方のデータ領域に通常使用する制御データを記憶し、他方のデータ領域に調整処理後のデータを書込むことができ、アプリケーション・プログラムを実行しつつ、データ調整処理を行うことができる。したがって、アプリケーション・プログラムを終了することなく、調整されたデータをフラッシュ・メモリに書込むことができ、これにより、例えば消去単位である一のブロックにおける制御データの調整処理が終了してもアプリケーション・プログラムを継続して実行することができる。
また、RAM10の容量は、例えば1ブロック分の制御データを記憶できる容量、すなわち、フラッシュ・メモリ8の少なくとも消去単位以上の大きさであればよく。小さい容量のRAM10があれば制御データの調整処理が実効できる。
更に、調整処理終了後に2つのデータ領域0、1の物理的なデータ領域でなく、アドレスをSWAPする手段として例えばスワップ用レジスタ5を設けることにより、2つのデータ領域0、1の一方を現在の制御データを格納するためのデータ領域、他方を過去の制御データ又は調整後の制御データを格納するための調整用領域とし、制御データが最適化処理により調整されるとデータ領域をSWAPさせることで、最新の制御データがいずれのデータ領域0、1に格納されているかを認識することができる。また、このようなレジスタ5にフラグを格納し、このフラグによりデータ領域のいずれに最新の制御データが格納されているかを判断させるため、回路規模を増大させることがない。
実施の形態2.
次に、本発明の実施の形態2について説明する。図6は、本発明の実施の形態2におけるマイクロコンピュータ21を示すブロック図である。上述したフラッシュ・メモリは、データ領域が2つであったが、本実施の形態におけるフラッシュ・メモリは、データ領域を4つ有するものとする。その他の構成は、図1に示す実施の形態1と同様であり、図1と同様の構成要素には同一の符号を付しその詳細な説明は省略する。
図6に示すように、本実施の形態におけるマイクロコンピュータ21は、データ領域0、1を有する第1の不揮発性記憶部としてのメモリマクロ27aと、データ領域2、3を有する第2の不揮発性記憶部としての第2のメモリマクロ27bとからなるフラッシュ・メモリ28を有する。第1のメモリマクロ27a、第2のメモリマクロ27bのいずれか一方のデータ領域が、CPU3が常に最新の制御データを読み出すデータ領域とされ、他方が最適化後の調整済制御データを書き込むための調整用領域として使用される。
データ領域0、1、2、3は、フラッシュ・メモリ28の例えば消去単位であるブロックデータからなるデータ0、1、2、3を格納する。また、本実施の形態においても、フラッシュ・メモリ28の代替用メモリとして、ブロックデータと同一容量(2KB)のRAM10を有するものとする。
図7(a)は、本実施の形態におけるマイクロコンピュータ21の記憶領域のメモリマップを示す図、図7(b)は、データ領域に対するアクセス可否を示す図である。また、図8(a)乃至図9(c)は、データ領域の制御データを制御対象の機器に適した値に調整する調整処理手順を示す図である。
データ領域0、1と、データ領域2、3は、異なるメモリマクロから構成されるため、図7(a)に示すように、例えばデータ領域0とデータ領域3とが個別にアクセス可能となる。すなわち、図7(b)に示すように、データ領域0、1の書換え中は、同時にデータ領域2、3の読出しが可能であり、データ領域0、1の読出し中は、同時にデータ領域2、3の書換えが可能となっている。なお、データ領域0のデータを読み出し又は書き込み中に、データ領域1のデータを読み出し又は書き込むことはできない。
次に、本実施の形態におけるデータ最適化方法について説明する。マイクロコンピュータ21は、データ領域0、1のデータ0(Ver1)、データ1(Ver1)を使用して制御対象の機器を制御しているものとする。上述した実施の形態1と同様、外部からの最適化指令がI/Oインターフェース部12を介してCPU3に通知されると、先ずデータ領域0のデータ0(Ver1)をRAM10にコピーし(図8(a))、CPU3は、RAM10にコピーされたデータ0(Ver1)を使用し、制御データの最適な値をサーチする。最適な値データ0(Ver2)が決定したら、これを調整用メモリマクロの例えばデータ領域2に書き込む(図8(b))。
同様に、データ領域1のデータ1(Ver1)をRAM10にコピーし(図9(a))、CPU3は、RAM10にコピーされたデータ1(Ver1)を使用し、制御データの最適な値をサーチする。最適な値であるデータ1(Ver2)が決定したら、これを調整用メモリマクロの例えばデータ領域2に書き込む(図9(b))。そして、最後にスワップ用レジスタ5により、データ領域0、1と、データ領域2、3のアドレスをSWAPする(図9(c))。
これにより、第2のメモリマクロ27aがデータ領域とされ、第1のメモリマクロ27aは調整用領域とされ、対象機器を制御する際、物理的には、第2のメモリマクロ27bのデータ領域0、1に格納されている調整前の制御データであるデータ0、1(Ver1)を読み出すことなく、データ領域2、3に格納されているデータ0、1(Ver2)により制御対象の機器を制御することができる。
本実施の形態においては、上述した実施の形態1と同様の効果を奏し、個別に書き換えと読み出しとが可能なデータ領域を有するフラッシュ・メモリと、データ領域の最適化のために一時的にデータを記憶するためのRAMと、フラッシュ・メモリのデータ領域のアドレス管理をするスワップ用レジスタ5などのデータ領域管理手段を搭載することにより、アプリケーション・プログラムを実行しつつデータ書き換えが可能となる。また、大量の制御データのキャリブレーションが必要な場合であっても、少なくともフラッシュ・メモリの消去単位分のメモリ容量を有するRAMを用意すれば、制御プログラムを中断することなく制御データを順次継続して行うことができ、小さい容量のRAMであっても、効率よく調整処理を実行することができる。
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、図6においては、RAM10は、1つのブロックデータを移動できるだけの容量として説明したが、データ領域0、1における2つのデータ(データ0、1)を記憶可能な容量とすれば、データ領域0、1に格納される制御データの最適化処理が一度に行えて最適化処理の高速化を図ることができる。
本発明の実施の形態1にかかるマイクロコンピュータを示すブロック図である。 (a)は、本発明の実施の形態1におけるマイクロコンピュータにおけるメモリマップを示す図、(b)は、データ領域に対するアクセス可否を示す図である。 (a)乃至(d)は、データ領域が最適化される様子を最適化処理順に示す図である。 本発明の実施の形態における最適化方法を示すフローチャートである。 図1に示すマイクロコンピュータ1のデータ最適化方法を説明するための模式図である。 本発明の実施の形態2におけるマイクロコンピュータを示すブロック図である。 (a)は、本発明の実施の形態2におけるマイクロコンピュータ21のCPU3が認識するメモリマップを示す図、(b)は、データ領域に対するアクセス可否を示す図である。 (a)及び(b)は、データ領域が最適化される様子を最適化処理順に示す図である。 (a)乃至(c)は、同じくデータ領域が最適化される様子を最適化処理順に示す図であって図8(a)及び(b)に続く処理を示す図である。 特許文献1に記載の電子制御ユニット(Electric Control Unit:ECU)110を示すブロック図である。 従来のフラッシュ・メモリのデータ書き換え方法を説明する図であって、(a)は、データ領域が1つの場合、(b)はデータ領域が複数ある場合の書き換え方法を説明する図である。
符号の説明
1、21 マイクロコンピュータ 2 プログラム記憶部 3 CPU 4 フラッシュ書換制御回路 5 スワップ用レジスタ 6 書込用選択回路 7a、7b データ領域
7b データ領域 8、28 フラッシュ・メモリ 9 読出用選択回路 11 バス
12 インターフェース部 20 メモリマップ 27a、21b メモリマクロ

Claims (11)

  1. 制御対象となる機器を制御する制御データを該制御対象の機器に適した値となるよう調整する調整処理を実行する電子制御装置において、
    複数のデータ格納領域を有する不揮発性記憶部と、
    前記不揮発性記憶部のデータ格納領域に格納された調整前の制御データである調整前制御データの前記調整処理を実行する際に、前記不揮発性記憶部に代替して使用する代替メモリと、
    複数のデータ格納領域のうちの少なくとも一のデータ格納領域から調整前制御データを読み出し、前記代替メモリを使用して前記調整前制御データの調整処理を実行し、前記不揮発性記憶部における前記少なくとも一のデータ格納領域の読出しとは独立して書込みが可能な他のデータ格納領域に、前記調整された制御データである調整済制御データを書き込む調整処理手段と
    を有することを特徴とする電子制御装置。
  2. 前記不揮発性記憶部は、第1のデータ格納領域と該第1のデータ格納領域のデータの読出し、消去及び書込みをする第1のアクセス手段とを有する第1の不揮発性記憶部と、第2のデータ格納領域と該第2のデータ格納領域のデータの読み出し、消去及び書込みをする第2のアクセス処理手段とを有する第2の不揮発性記憶部とを備え、前記第1及び第2のデータ格納領域のいずれか一方に前記調整前制御データが格納され、他方に前記調整済制御データが書き込まれる
    ことを特徴とする請求項1記載の電子制御装置。
  3. 前記第1及び前記第2のデータ格納領域のアドレスを管理するアドレス管理手段を有し、
    前記アドレス管理手段は、前記第1及び前記第2のデータ格納領域のいずれか一方のアドレスを前記調整前制御データが格納されるデータ格納領域のアドレスを示す第1のアドレスに設定し、他方のアドレスを前記調整済制御データが書き込まれるデータ格納領域のアドレスを示す第2のアドレスに設定する
    ことを特徴とする請求項2記載の電子制御装置。
  4. 前記アドレス管理手段は、前記調整処理終了後に前記第2のアドレスと前記第1のアドレスとを入れ換える
    ことを特徴とする請求項3記載の電子制御装置。
  5. 前記アドレス管理手段は、前記第1及び第2のデータ格納領域のアドレスと前記第1のアドレス又は第2のアドレスとを対応づけて記憶する記憶領域を有する
    ことを特徴とする請求項3記載の電子制御装置。
  6. 前記第1のアドレスが設定されたデータ格納領域の制御データを前記制御対象となる機器を制御する際に使用する
    ことを特徴とする請求項4記載の電子制御装置。
  7. 前記代替メモリは、前記不揮発性記憶部の消去単位以上の大きさの記憶容量を有する揮発性メモリである
    ことを特徴とする請求項1記載の電子制御装置。
  8. 制御対象となる機器を制御する制御データを該制御対象の機器に適した値となるよう調整する調整処理を実行する電子制御装置のデータ調整方法において、
    前記制御データが格納された不揮発性記憶部の少なくとも一のデータ格納領域から調整前の制御データである調整前制御データを読み出す読出工程と、
    前記不揮発性記憶部に代替して使用可能な代替メモリを使用して調整処理を実行する調整処理工程と、
    前記不揮発性記憶部における前記少なくとも一のデータ格納領域の読出しとは独立して書き込み可能な他のデータ格納領域に対して前記調整処理工程にて調整された制御データである調整済制御データを書き込む書込工程と
    を有することを特徴とするデータ調整方法。
  9. 前記不揮発性記憶部は、前記不揮発性記憶部は、第1のデータ格納領域と該第1のデータ格納領域のデータの読出し、消去及び書込みをする第1のアクセス手段とを有する第1の不揮発性記憶部と、第2のデータ格納領域と該第2のデータ格納領域のデータの読み出し、消去及び書込みをする第2のアクセス処理手段とを有する第2の不揮発性記憶部とを備え、
    前記読出工程では、前記第1及び第2のデータ格納領域の一方から前記調整前制御データを読み出し、
    前記書込工程では、前記第1及び第2のデータ格納領域の他方に前記調整済制御データを書き込む
    ことを特徴とする請求項8記載のデータ調整方法。
  10. 前記第1及び前記第2のデータ格納領域のアドレスを管理するアドレス管理手段により前記第1及び前記第2のデータ格納領域の一方のアドレスを前記調整前制御データが格納されるデータ格納領域を示す第1のアドレスに設定し、他方のアドレスを前記調整済制御データが書き込まれるデータ格納領域を示す第2のアドレスに設定するアドレス設定工程を有する
    ことを特徴とする請求項9記載のデータ調整方法。
  11. 前記アドレス設定工程では、前記調整処理工程終了後に前記第2のアドレスと前記第1のアドレスとを入れ換える
    ことを特徴とする請求項10記載のデータ調整方法。
JP2004135574A 2004-04-30 2004-04-30 電子制御装置及びデータ調整方法 Expired - Fee Related JP4550479B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004135574A JP4550479B2 (ja) 2004-04-30 2004-04-30 電子制御装置及びデータ調整方法
US11/117,326 US20050246513A1 (en) 2004-04-30 2005-04-29 Electronic control device and data adjustment method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004135574A JP4550479B2 (ja) 2004-04-30 2004-04-30 電子制御装置及びデータ調整方法

Publications (2)

Publication Number Publication Date
JP2005316831A JP2005316831A (ja) 2005-11-10
JP4550479B2 true JP4550479B2 (ja) 2010-09-22

Family

ID=35188426

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004135574A Expired - Fee Related JP4550479B2 (ja) 2004-04-30 2004-04-30 電子制御装置及びデータ調整方法

Country Status (2)

Country Link
US (1) US20050246513A1 (ja)
JP (1) JP4550479B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7490283B2 (en) * 2004-05-13 2009-02-10 Sandisk Corporation Pipelined data relocation and improved chip architectures
US7849381B2 (en) 2004-12-21 2010-12-07 Sandisk Corporation Method for copying data in reprogrammable non-volatile memory
US9195581B2 (en) 2011-07-01 2015-11-24 Apple Inc. Techniques for moving data between memory types
CN111679599B (zh) * 2020-05-22 2022-01-25 中国航空工业集团公司西安航空计算技术研究所 一种cpu与dsp数据高可靠交换方法
KR20220116650A (ko) * 2021-02-15 2022-08-23 삼성전자주식회사 이형 메모리들을 포함하는 전자 장치 및 그것의 이형 메모리들 간 압축 데이터 이동 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10207705A (ja) * 1997-01-28 1998-08-07 Denso Corp 半導体記憶装置及びマイクロコンピュータ
JP2000322894A (ja) * 1999-05-11 2000-11-24 Fujitsu Ltd 半導体記憶装置
JP2004005296A (ja) * 2002-06-03 2004-01-08 Motorola Inc 電子制御装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2784440B2 (ja) * 1993-04-14 1998-08-06 インターナショナル・ビジネス・マシーンズ・コーポレイション データ・ページの転送制御方法
JP3838840B2 (ja) * 2000-01-06 2006-10-25 Necエレクトロニクス株式会社 コンピュータ

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10207705A (ja) * 1997-01-28 1998-08-07 Denso Corp 半導体記憶装置及びマイクロコンピュータ
JP2000322894A (ja) * 1999-05-11 2000-11-24 Fujitsu Ltd 半導体記憶装置
JP2004005296A (ja) * 2002-06-03 2004-01-08 Motorola Inc 電子制御装置

Also Published As

Publication number Publication date
JP2005316831A (ja) 2005-11-10
US20050246513A1 (en) 2005-11-03

Similar Documents

Publication Publication Date Title
JP4884382B2 (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム及びメモリ制御方法
JP4245585B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP5137002B2 (ja) メモリコントローラ
US20080250188A1 (en) Memory Controller, Nonvolatile Storage, Nonvolatile Storage System, and Memory Control Method
US20100103739A1 (en) Memory configuration of a composite memory device
US20090089489A1 (en) Memory controller, flash memory system with memory controller, and control method of flash memory
KR100265266B1 (ko) 플래쉬 eeprom 을 구비하는 마이크로컴퓨터및 플래쉬 eeprom 의 소거방법
JP4177360B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
US20010014933A1 (en) Memory management table producing method and memory device
JP4550479B2 (ja) 電子制御装置及びデータ調整方法
JP2008034089A (ja) フラッシュメモリ装置と該プログラム方法及びメモリシステム
JP5066894B2 (ja) 記憶媒体制御装置
JP2004005296A (ja) 電子制御装置
US6646917B1 (en) Storage device managing nonvolatile memory by converting logical address to physical address of nonvolatile memory
JPH07153284A (ja) 不揮発性半導体記憶装置及びその制御方法
JP2008047155A (ja) 一括消去型不揮発性メモリおよび携帯電話
JP4594944B2 (ja) メモリ制御装置
US7899974B2 (en) Nonvolatile memory, mapping control apparatus and method of the same
KR20070048384A (ko) 메모리 맵에서 배드 블록 처리방법
JP2000243093A (ja) フラッシュメモリへのデータ記憶方法及びフラッシュメモリからのデータ読出方法
JP4952742B2 (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2011108161A (ja) 情報処理装置
US20040133755A1 (en) Minimization of overhead of non-volatile memory operation
JP2009223449A (ja) 車両用電子制御装置
CN112732309B (zh) Flash存储器的更新方法、装置和电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070308

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100618

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100708

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130716

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees