Nothing Special   »   [go: up one dir, main page]

JP2012118892A - Data storage device and data storage method - Google Patents

Data storage device and data storage method Download PDF

Info

Publication number
JP2012118892A
JP2012118892A JP2010269927A JP2010269927A JP2012118892A JP 2012118892 A JP2012118892 A JP 2012118892A JP 2010269927 A JP2010269927 A JP 2010269927A JP 2010269927 A JP2010269927 A JP 2010269927A JP 2012118892 A JP2012118892 A JP 2012118892A
Authority
JP
Japan
Prior art keywords
data
block
latest block
latest
generated
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
Application number
JP2010269927A
Other languages
Japanese (ja)
Other versions
JP5666273B2 (en
Inventor
Wataru Takabayashi
亘 高林
Hideki Oe
英城 大江
Shigeo Obata
滋男 小畑
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.)
Yazaki Corp
Original Assignee
Yazaki 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 Yazaki Corp filed Critical Yazaki Corp
Priority to JP2010269927A priority Critical patent/JP5666273B2/en
Publication of JP2012118892A publication Critical patent/JP2012118892A/en
Application granted granted Critical
Publication of JP5666273B2 publication Critical patent/JP5666273B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a data storage device and a data storage method that reduce the number of times of erasure by reducing the amount of data to be written each time the data is generated, and efficiently use a memory to which overwrite is impossible.SOLUTION: Each time data is generated, a CPU 2A stores the data while adding data types to the ending of the data generated in order from the head of a vacant area of the latest block. When there is no vacant area in the latest block, the CPU 2A erases all the data of other blocks except the latest block, then reads the data in order from the ending of the latest block, and extracts every predetermined number of pieces of data backward by the data types added to the ending of the data based upon the data types, and writes the extracted data in order from heads of other blocks.

Description

本発明は、データ格納装置及びデータ格納方法に係り、特に、上書き不可能なメモリに順次発生するデータを格納するデータ格納装置及びデータ格納方法に関するものである。   The present invention relates to a data storage device and a data storage method, and more particularly to a data storage device and a data storage method for storing sequentially generated data in a memory that cannot be overwritten.

ガス漏れや火災などの警報器では、工場出荷時に設定された設定データ(例えばガス濃度の警報値など)、警報発生時の警報履歴、故障発生時の故障履歴、通電時間などをEEPROMに記録している。しかしながら、これらデータを格納するために、EEPROMの容量を大きくする必要がありコスト的に問題があった。   For alarm devices such as gas leaks and fires, the setting data (eg gas concentration alarm value) set at the time of shipment from the factory, the alarm history at the time of alarm occurrence, the failure history at the time of failure occurrence, the energization time, etc. are recorded in EEPROM. ing. However, in order to store these data, it is necessary to increase the capacity of the EEPROM, which causes a problem in cost.

最近では、警報器を構成するマイコン内部のフラッシュメモリをEEPROMの代わりに使用してこれらデータを格納することが考えられている。これにより、EEPROMが必要なくなり、コストダウンとなる。   Recently, it has been considered to use flash memory inside a microcomputer constituting an alarm device in place of EEPROM to store these data. This eliminates the need for an EEPROM and reduces costs.

しかしながら、上記フラッシュメモリは、EEPROMと異なりデータの上書きをすることができない。このため、従来では、データが発生する毎に、フラッシュメモリに全種類のデータ(即ち、設定データ、通電時間、警報履歴、故障履歴)を追記している。   However, unlike the EEPROM, the flash memory cannot overwrite data. For this reason, conventionally, every time data is generated, all types of data (that is, setting data, energization time, alarm history, failure history) are added to the flash memory.

図10〜図14を参照して詳しく説明する。即ち、まず、工場出荷時において、例えば出荷操作が行われると警報器内のCPUは、図10(A)に示すように、フラッシュメモリの領域を2つのブロックB1と、ブロックB2と、に分け、両方のブロックB1、B2に格納されているデータを消去して、空き領域とする。   This will be described in detail with reference to FIGS. That is, first, at the time of factory shipment, for example, when a shipment operation is performed, the CPU in the alarm device divides the flash memory area into two blocks B1 and B2 as shown in FIG. The data stored in both the blocks B1 and B2 are erased to make a free area.

次に、警報器内のCPUは、図10(B)に示すように、外部からの通信により受信した設定データをブロックB1の先頭に書き込む。次に、警報器内のCPUは、通電時間、警報履歴1〜3、故障履歴1〜3の順にブロックB1に書き込む。なお、このとき出荷時であるので、通電時間としては0が書き込まれる。また、警報も故障も発生していない状態であるため、警報履歴1〜3、故障履歴1〜3としては空のデータが書き込まれる。   Next, as shown in FIG. 10B, the CPU in the alarm device writes the setting data received by communication from the outside at the head of the block B1. Next, the CPU in the alarm device writes in the block B1 in the order of energization time, alarm history 1 to 3, and failure history 1 to 3. Since it is the time of shipment at this time, 0 is written as the energization time. In addition, since no alarm or failure has occurred, empty data is written as the alarm histories 1 to 3 and the failure histories 1 to 3.

また、これら通電時間、警報履歴1〜3、故障履歴1〜3は、全て同じデータ長となるように、これらのうち最大データ長よりも短いデータ長のものにはデータ長調整用のエリアが設けられている。例えば、通電時間として、数バイト書き込めばよいところを、警報履歴1〜3、故障履歴1〜3のような長いデータ合わせて、数十バイト書き込んでいる。   Further, these energization times, alarm histories 1 to 3 and failure histories 1 to 3 all have the same data length, so that a data length adjustment area has a data length adjustment area shorter than the maximum data length. Is provided. For example, as the energization time, several tens of bytes are written together with long data such as alarm histories 1 to 3 and failure histories 1 to 3 where a few bytes can be written.

その後、警報が発生すると、警報器内のCPUは、図11に示すように、警報履歴2を警報履歴1へ、警報履歴3を警報履歴2へ移動し、新たな警報履歴を警報履歴3とする全種類のデータ(設定データ、通電時間データ、警報履歴1〜3、故障履歴1〜3)を追記する。   After that, when an alarm is generated, the CPU in the alarm device moves the alarm history 2 to the alarm history 1, the alarm history 3 to the alarm history 2, and the new alarm history as the alarm history 3 as shown in FIG. All types of data (setting data, energization time data, alarm histories 1 to 3 and failure histories 1 to 3) are added.

その後、故障が発生すると、警報器内のCPUは、図12に示すように、故障履歴2を故障履歴1へ、故障履歴3を故障履歴2へ移動し、新たな故障履歴を故障履歴3とする全種類のデータを追記する。   Thereafter, when a failure occurs, the CPU in the alarm unit moves the failure history 2 to the failure history 1 and the failure history 3 to the failure history 2 as shown in FIG. Append all types of data.

その後、設置してから所定時間毎の計時が終了すると、警報器内のCPUは、図13に示すように、所定時間を加算した新たな通電時間を通電時間とする全種類のデータを追記する。ブロックB1の最後まで書き込むと、警報器内のCPUは、図14(A)に示すように、ブロックB2に格納したデータを全消去して空き領域にする。次に、警報器内のCPUは、図14(B)に示すように、消去したブロックB2の先頭に最新の全種類のデータ(即ち、ブロックB1に格納された全種類のデータのうち一番後ろの全種類のデータ)を書き込む。   Thereafter, when the clocking for each predetermined time is completed after the installation, the CPU in the alarm device adds all kinds of data with the new energization time obtained by adding the predetermined time as the energization time, as shown in FIG. . When writing to the end of the block B1, the CPU in the alarm device erases all the data stored in the block B2 to make an empty area as shown in FIG. Next, as shown in FIG. 14B, the CPU in the alarm device has the latest all types of data (that is, the first of all types of data stored in the block B1) at the head of the erased block B2. Write back all data types).

この警報器にフラッシュメモリ内のデータを読み出す設定器を接続すると、警報器は、ブロックB2の後ろの領域からデータが書き込まれているか否かを判断し、データが書き込まれている領域に達すると、そこから通電時間、警報履歴1〜3、故障履歴1〜3の互いに等しいデータ長毎のデータを最新の故障履歴3〜1、最新の警報履歴3〜1、最新の通電時間として、設定器に送信する。   When a setting device that reads data in the flash memory is connected to this alarm device, the alarm device determines whether or not data has been written from the area after block B2, and reaches the area to which data has been written. Then, the energizing time, the alarm history 1 to 3 and the data for each equal data length of the failure history 1 to 3 are set as the latest failure history 3-1, the latest alarm history 3-1, the latest energizing time, and the setting device. Send to.

このように、従来では、データが発生する毎に、フラッシュメモリに全種類のデータ(即ち、設定データ、通電時間、警報履歴、故障履歴)を追記しているため、効率が悪い。また、フラッシュメモリは、消去可能回数がEEPROMに比べて少ないため、データを書き込む回数を少なくする必要があり、警報器での使用には問題がある。   Thus, conventionally, every time data is generated, all types of data (that is, setting data, energization time, alarm history, failure history) are additionally written in the flash memory, so that the efficiency is low. Further, since the flash memory has a smaller number of erasable times than that of the EEPROM, it is necessary to reduce the number of times data is written, and there is a problem in use with an alarm device.

そこで、本発明は、データが発生する毎に、書き込むデータ量を少なくすることにより、消去回数が削減でき、効率良く上書き不可なメモリを使用することができるデータ格納装置及びデータ格納方法を提供することを課題とする。   Accordingly, the present invention provides a data storage device and a data storage method that can reduce the number of times of erasure by reducing the amount of data to be written each time data is generated, and can efficiently use a memory that cannot be overwritten. This is the issue.

上述した課題を解決するための請求項1記載の発明は、上書き不可能なメモリに順次発生する複数種類のデータを格納するデータ格納装置において、前記メモリの領域内に複数のブロックを設け、前記複数のブロックの1つを最新ブロックとして設定する最新ブロック設定手段と、前記データが発生する毎に前記最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納するデータ格納手段と、前記最新ブロックに空き領域があるか否かを判定する空き領域判定手段と、前記空き領域判定手段により空き領域がないと判定された場合、前記最新ブロックを除いた他のブロックのデータを全消去する消去手段と、前記消去手段により全消去された後、前記最新ブロックの後ろから順にデータを読み取り、前記データの最後に付加されたデータ種類に基づいて種類毎に後ろから所定個づつのデータを抽出して、当該抽出したデータを前記他のブロックの先頭から順に書き込むデータ移動手段と、を備え、前記最新ブロック設定手段が、前記データ移動手段による書き込み終了後、当該他のブロックを最新ブロックとして設定することを特徴とするデータ格納装置に存する。   The invention according to claim 1 for solving the above-described problem is a data storage device for storing a plurality of types of data that are sequentially generated in a non-overwriteable memory, wherein a plurality of blocks are provided in the memory area, Latest block setting means for setting one of a plurality of blocks as the latest block, and each time the data is generated, the data type is added to the end of the generated data in order from the beginning of the empty area of the latest block and stored. Data storage means, free area determination means for determining whether or not there is an empty area in the latest block, and other blocks excluding the latest block when the empty area determination means determines that there is no empty area Erasing means for erasing all of the data, and after all erasing by the erasing means, the data is read in order from the back of the latest block, Data moving means for extracting a predetermined number of data from the back for each type based on the data type added at the end of the data, and writing the extracted data in order from the top of the other block, and In the data storage device, the latest block setting means sets the other block as the latest block after completion of writing by the data moving means.

請求項2記載の発明は、上書き不可能なメモリに順次発生する複数種類のデータを格納するデータ格納装置において、前記メモリの領域内に複数のブロックを設け、前記複数のブロックの1つを最新ブロックとして設定する最新ブロック設定手段と、前記データが発生する毎に前記最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納するデータ格納手段と、前記データが発生する毎に上書き可能な第2メモリに前記発生したデータを上書きする第2データ格納手段と、前記空き領域判定手段により空き領域がないと判定された場合、前記最新ブロックを除いた他のブロックのデータを全消去する消去手段と、前記消去手段により全消去された後、前記第2メモリに格納された最新のデータを前記他のブロックの先頭から順に書き込むデータ移動手段と、を備え、前記最新ブロック設定手段が、前記データ移動手段による書き込み終了後、当該他のブロックを最新ブロックとして設定することを特徴とするデータ格納装置に存する。   According to a second aspect of the present invention, in the data storage device for storing a plurality of types of data sequentially generated in a non-overwriteable memory, a plurality of blocks are provided in the area of the memory, and one of the plurality of blocks is updated. The latest block setting means for setting as a block, the data storage means for adding the data type to the end of the generated data in order from the beginning of the empty area of the latest block every time the data is generated, and the data A second data storage means for overwriting the generated data in a second memory that can be overwritten every time it occurs, and other blocks excluding the latest block when the free area determination means determines that there is no free area Erasing means for erasing all of the data, and after erasing all the data by the erasing means, the latest data stored in the second memory And a data moving unit for sequentially writing from the head of the block, wherein the latest block setting unit sets the other block as the latest block after the writing by the data moving unit is completed. .

請求項3記載の発明は、前記データとして、通電時間データが所定時間毎に発生するデータ格納装置において、前記各ブロックの先頭に格納されている通電時間データを比較し、最大の通電時間データが書き込まれているブロックを最新ブロックとして判定する最新ブロック判定手段と、前記最新ブロックの後ろから順にデータを読み取り、前記データの最後に付加されたデータ種類に基づいて種類毎に後ろから所定個づつのデータを最新データとして読み取る読取手段と、を備えたことを特徴とする請求項1又は2に記載のデータ格納装置に存する。   According to a third aspect of the present invention, in the data storage device in which energization time data is generated every predetermined time as the data, the energization time data stored at the head of each block is compared, and the maximum energization time data is obtained. The latest block determination means for determining the written block as the latest block, the data is read in order from the back of the latest block, and a predetermined number of data is read from the back for each type based on the data type added at the end of the data. The data storage device according to claim 1, further comprising reading means for reading data as latest data.

請求項4記載の発明は、前記読取手段及び前記データ移動手段が、前記データの最後に付加されているデータ種類からデータ長を判定し、そのデータ種類が書き込まれているエリアから判定したデータ長分前までのエリアのデータを、前記データ種類のデータであると判定することを特徴とする請求項3に記載のデータ格納装置に存する。   According to a fourth aspect of the present invention, the reading means and the data moving means determine the data length from the data type added to the end of the data, and the data length determined from the area in which the data type is written 4. The data storage device according to claim 3, wherein it is determined that the data of the area up to minutes ago is the data of the data type.

請求項5記載の発明は、上書き不可能なメモリに順次発生する複数種類のデータを格納するデータ格納方法において、前記メモリの領域に複数のブロックを設け、前記複数のブロックの1つを最新ブロックとして設定する最新ブロック設定工程と、前記データが発生する毎に前記最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納するデータ格納工程と、前記最新ブロックに空き領域があるか否かを判定する空き領域判定工程と、前記空き領域判定手段により空き領域がないと判定された場合、前記最新ブロックを除いた他のブロックのデータを全消去する消去工程と、前記消去工程において全消去された後、前記最新ブロックの後ろから順にデータを読み取り、前記データの最後に付加されたデータ種類に基づいて各種類毎に後ろから所定個づつのデータを抽出して、当該抽出したデータを前記他のブロックの先頭から順に書き込むデータ移動工程と、を備え、前記最新ブロック設定工程において、前記データ移動工程による書き込み終了後、当該他のブロックを最新ブロックとして設定することを特徴とするデータ格納方法に存する。   According to a fifth aspect of the present invention, in the data storage method for storing a plurality of types of data sequentially generated in a non-overwriteable memory, a plurality of blocks are provided in the memory area, and one of the plurality of blocks is set as a latest block. A newest block setting step for setting as the data block, a data storage step for adding the data type to the end of the generated data in order from the top of the empty area of the newest block every time the data is generated, An empty area determining step for determining whether or not there is an empty area; and an erasing process for erasing all data of other blocks except the latest block when the empty area determining means determines that there is no empty area; After all erasure in the erasing step, data is read sequentially from the back of the latest block, and the data added to the end of the data is read. A data movement step of extracting a predetermined piece of data from the back for each type based on the data type and writing the extracted data in order from the top of the other block, in the latest block setting step, In the data storage method, the other block is set as the latest block after completion of writing in the data movement step.

請求項6記載の発明は、上書き不可能なメモリに順次発生する複数種類のデータを格納するデータ格納方法において、前記メモリの領域内に複数のブロックを設け、前記複数のブロックの1つを最新ブロックとして設定する最新ブロック設定工程と、前記データが発生する毎に前記最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納するデータ格納工程と、前記データが発生する毎に上書き可能な第2メモリに前記発生したデータを上書きする第2データ格納工程と、前記空き領域判定工程により空き領域がないと判定された場合、前記最新ブロックを除いた他のブロックのデータを全消去する消去工程と、前記消去工程により全消去された後、前記第2メモリに格納された最新のデータを前記他のブロックの先頭から順に書き込むデータ移動工程と、を備え、前記最新ブロック設定工程が、前記データ移動工程による書き込み終了後、当該他のブロックを最新ブロックとして設定することを特徴とするデータ格納方法に存する。   According to a sixth aspect of the present invention, in the data storage method for storing a plurality of types of data sequentially generated in a memory that cannot be overwritten, a plurality of blocks are provided in the memory area, and one of the plurality of blocks is updated. A latest block setting step for setting as a block; a data storage step for adding and storing a data type at the end of the generated data in order from the beginning of the empty area of the latest block each time the data is generated; and A second data storage step of overwriting the generated data in a second memory that can be overwritten every time it occurs, and other blocks except the latest block when it is determined by the free space determination step that there is no free space An erasing process for erasing all data in the memory, and after erasing all the data in the erasing process, the latest data stored in the second memory A data movement step of sequentially writing from the head of the block, wherein the latest block setting step sets the other block as the latest block after the completion of writing by the data movement step. .

以上説明したように請求項1記載の発明によれば、データ格納手段が、データが発生する毎に最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納し、データ移動手段が、消去手段により全消去された後、最新ブロックの後ろから順にデータを読み取り、データの最後に付加されたデータ種類に基づいて種類毎に後ろから所定個づつのデータを抽出して、当該抽出したデータを他のブロックの先頭から順に書き込む。従って、データの最後にデータ種類を付加することにより、データが発生したとき、全種類のデータを追記することなく、その発生したデータだけ後ろに追記しても、最新ブロックから種類毎に後ろから所定個づつのデータ、即ち最新データを読み取ることができる。これにより、データが発生する毎に、書き込むデータ量を少なくすることができ、消去回数が削減でき、効率良く上書き不可なメモリを使用することができる。   As described above, according to the first aspect of the present invention, each time data is generated, the data storage means stores the generated data with the data type added to the end of the generated data in order from the beginning of the empty area of the latest block. After the data erasing unit is completely erased by the erasing unit, the data is read in order from the back of the latest block, and a predetermined number of data is extracted from the back for each type based on the data type added at the end of the data. Thus, the extracted data is written in order from the top of the other blocks. Therefore, by adding the data type to the end of the data, when data is generated, it is not necessary to add all types of data. It is possible to read predetermined data, that is, latest data. As a result, the amount of data to be written can be reduced each time data is generated, the number of erasures can be reduced, and a memory that cannot be overwritten efficiently can be used.

請求項2記載の発明によれば、データ格納手段が、データが発生する毎に最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納し、データ移動手段が、消去手段により全消去された後、第2メモリに格納された最新のデータを他のブロックの先頭から順に書き込む。従って、データの最後にデータ種類を付加することにより、データが発生したとき、全種類のデータを追記することなく、その発生したデータだけ後ろに追記しても、最新ブロックから種類毎に後ろから最新データを読み取ることができる。しかも、最新ブロックの後ろから順に読み取ることなく、最新ブロックに格納されている最新のデータを他のブロックの先頭に移動することができる。これにより、データが発生する毎に、書き込むデータ量を少なくすることができ、消去回数が削減でき、効率良く上書き不可なメモリを使用することができる。   According to the second aspect of the invention, the data storage means adds the data type to the end of the generated data in order from the top of the empty area of the latest block every time data is generated, and the data moving means After all erasure is performed by the erasing means, the latest data stored in the second memory is sequentially written from the top of the other blocks. Therefore, by adding the data type to the end of the data, when data is generated, it is not necessary to add all types of data. The latest data can be read. In addition, the latest data stored in the latest block can be moved to the head of another block without sequentially reading from the back of the latest block. As a result, the amount of data to be written can be reduced each time data is generated, the number of erasures can be reduced, and a memory that cannot be overwritten efficiently can be used.

請求項3記載の発明によれば、最新ブロック判定手段が、各ブロックの先頭に格納されている通電時間データを比較し、最大の通電時間データが書き込まれているブロックを最新ブロックとして判定し、読取手段が、最新ブロックの後ろから順にデータを読み取り、データの最後に付加されたデータ種類に基づいて種類毎に後ろから所定個づつのデータを最新データとして読み取るので、最新ブロックに関する情報を持っていなくても、各ブロックの何れが最新ブロックであるかを判定できる。   According to the invention described in claim 3, the latest block determination means compares the energization time data stored at the head of each block, determines the block in which the maximum energization time data is written as the latest block, The reading means reads the data in order from the back of the latest block, and reads predetermined data from the back as the latest data for each type based on the data type added at the end of the data. Even if not, it can be determined which of the blocks is the latest block.

請求項4記載の発明によれば、読取手段及びデータ移動手段が、データの最後に付加されているデータ種類からデータ長を判定し、そのデータ種類が書き込まれているエリアから判定したデータ長分前までのエリアのデータを、データ種類のデータであると判定する。従って、各種類のデータのデータ長を同じにしなくても、データを特定することができるので、各種類のデータのデータ長を同じに調整するためのデータ長調整エリアを設ける必要がなく、無駄なデータがメモリに格納されることがない。   According to the fourth aspect of the present invention, the reading means and the data moving means determine the data length from the data type added to the end of the data, and the data length determined from the area where the data type is written. It is determined that the data in the previous area is data of the data type. Therefore, since the data can be specified without making the data length of each type of data the same, there is no need to provide a data length adjustment area for adjusting the data length of each type of data to be the same. Data is not stored in memory.

請求項5記載の発明によれば、データ格納工程において、データが発生する毎に最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納し、データ移動工程において、消去工程において全消去された後、最新ブロックの後ろから順にデータを読み取り、データの最後に付加されたデータ種類に基づいて種類毎に後ろから所定個づつのデータを抽出して、当該抽出したデータを他のブロックの先頭から順に書き込む。従って、データの最後にデータ種類を付加することにより、データが発生したとき、全種類のデータを追記することなく、その発生したデータだけ後ろに追記しても、最新ブロックから種類毎に後ろから所定個づつのデータ、即ち最新データを読み取ることができる。これにより、データが発生する毎に、書き込むデータ量を少なくすることができ、消去回数が削減でき、効率良く上書き不可なメモリを使用することができる。   According to the fifth aspect of the present invention, in the data storing step, every time data is generated, the data type is added to the end of the generated data in order from the beginning of the empty area of the latest block, and stored. After all erasure in the erasure process, the data is read sequentially from the back of the latest block, and a predetermined number of data is extracted from the back for each type based on the data type added at the end of the data, and extracted Data is written sequentially from the beginning of other blocks. Therefore, by adding the data type to the end of the data, when data is generated, it is not necessary to add all types of data. It is possible to read predetermined data, that is, latest data. As a result, the amount of data to be written can be reduced each time data is generated, the number of erasures can be reduced, and a memory that cannot be overwritten efficiently can be used.

請求項6記載の発明によれば、データ格納工程において、データが発生する毎に最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納し、データ移動工程において、消去工程により全消去された後、第2メモリに格納された最新のデータを他のブロックの先頭から順に書き込む。従って、データの最後にデータ種類を付加することにより、データが発生したとき、全種類のデータを追記することなく、その発生したデータだけ後ろに追記しても、最新ブロックから種類毎に後ろから最新データを読み取ることができる。これにより、データが発生する毎に、書き込むデータ量を少なくすることができ、消去回数が削減でき、効率良く上書き不可なメモリを使用することができる。   According to the sixth aspect of the present invention, in the data storing step, every time data is generated, the data type is added to the end of the generated data in order from the head of the empty area of the latest block, and stored. After all erasure is performed by the erasing process, the latest data stored in the second memory is sequentially written from the top of the other blocks. Therefore, by adding the data type to the end of the data, when data is generated, it is not necessary to add all types of data. The latest data can be read. As a result, the amount of data to be written can be reduced each time data is generated, the number of erasures can be reduced, and a memory that cannot be overwritten efficiently can be used.

本発明のデータ格納装置を組み込んだ警報器の一実施形態を示すブロック図である。It is a block diagram which shows one Embodiment of the alarm device incorporating the data storage apparatus of this invention. 図1に示すデータ格納装置を構成するフラッシュメモリに書き込まれる通電時間、設定データ、警報履歴、故障履歴の構成を示す図である。It is a figure which shows the structure of the electricity supply time written in the flash memory which comprises the data storage apparatus shown in FIG. 1, setting data, an alarm history, and a failure history. 図1に示すデータ格納装置を構成するCPUのデータ格納処理における処理手順を示すフローチャートである。It is a flowchart which shows the process sequence in the data storage process of CPU which comprises the data storage apparatus shown in FIG. 図1に示す警報器の工場出荷時におけるフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory at the time of factory shipment of the alarm device shown in FIG. 図1に示す警報器の通電時間書き込み時におけるフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory at the time of energization time writing of the alarm device shown in FIG. 図1に示す警報器の警報発生時におけるフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory at the time of the alarm generation of the alarm device shown in FIG. 図1に示す警報器の故障発生時におけるフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory at the time of failure occurrence of the alarm device shown in FIG. 図1に示す警報器のブロックB1の最後まで書き込んだときのフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory when writing to the last of the block B1 of the alarm device shown in FIG. 図1に示す警報器の読み込み時の動作を説明するための説明図である。It is explanatory drawing for demonstrating the operation | movement at the time of the reading of the alarm device shown in FIG. 従来の工場出荷時におけるフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory at the time of the conventional factory shipment. 従来の警報発生時におけるフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory at the time of the conventional alarm generation. 従来の故障発生時におけるフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory at the time of the conventional failure occurrence. 従来の通電時間書き込み時におけるフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory at the time of the conventional energization time writing. 従来のブロックB1の最後まで書き込んだときのフラッシュメモリに格納されるデータを示す図である。It is a figure which shows the data stored in the flash memory when writing to the last of the conventional block B1.

以下、本発明のデータ格納装置及びデータ格納方法について図面を参照して説明する。図1は、本発明のデータ格納装置を組み込んだ警報器の一実施形態を示すブロック図である。同図に示すように、警報器1は、警報器1全体の制御を司るマイクロコンピュータ(以下μCOM)2と、ガス漏れや火災などの異常を検出するセンサ3と、後述する設定器4を接続するための入出力端子5と、を備えている。   Hereinafter, a data storage device and a data storage method of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing an embodiment of an alarm device incorporating the data storage device of the present invention. As shown in the figure, the alarm device 1 is connected to a microcomputer (hereinafter referred to as μCOM) 2 that controls the alarm device 1 as a whole, a sensor 3 that detects abnormalities such as gas leakage and fire, and a setting device 4 that will be described later. The input / output terminal 5 is provided.

上記μCOM2は、処理プログラムに従って各種の処理を行うCPU2Aと、CPU2Aが行う処理のプログラムなどを格納したROM2Bと、CPU2Aでの各種の処理過程で利用するワークエリア、各種データを格納するデータ記憶エリアなどを有する上書き可能な第2メモリとしてのRAM2Cと、上書き不可能な不揮発性のメモリであるフラッシュメモリ2Dと、を備えている。上記CPU2Aは、センサ3からの出力に基づいて警報を発生する警報発生処理や、故障を検出する故障検出処理などを行う。   The μCOM 2 includes a CPU 2A that performs various processes according to a processing program, a ROM 2B that stores a program for processing performed by the CPU 2A, a work area that is used in various processes in the CPU 2A, a data storage area that stores various data, and the like. And a flash memory 2D, which is a non-overwritable non-volatile memory. The CPU 2A performs an alarm generation process for generating an alarm based on an output from the sensor 3, a failure detection process for detecting a failure, and the like.

上記フラッシュメモリ2Dは、メモリ領域に2つのブロックB1、B2が設けられている。このフラッシュメモリ2Dには、通電時間、設定値データ、警報履歴、故障履歴といったデータが順次書き込まれる。これら通電時間、設定データ、警報履歴、故障履歴といったデータは、図2(A)〜(D)に示すように、先頭にチェックサムを書き込む領域、最後尾にデータ種類(即ち、通電時間、設定データ、警報履歴、故障履歴の何れであるかを示すデータ)を書き込む領域、チェックサムとデータ種類との間にデータ自体を書き込む領域が、設けられている。これらデータは、データ種類に応じてデータ長が異なり、設定データが一番長く、その次に警報履歴、故障履歴が長く、通電時間が一番短い。   The flash memory 2D is provided with two blocks B1 and B2 in the memory area. In the flash memory 2D, data such as energization time, set value data, alarm history, and failure history are sequentially written. As shown in FIGS. 2A to 2D, the data such as energization time, setting data, alarm history, and failure history include an area in which a checksum is written at the beginning and a data type at the end (that is, energization time, setting). An area for writing data), and an area for writing the data itself between the checksum and the data type. These data have different data lengths depending on the data type, the longest setting data, the longest alarm history and failure history, and the shortest energization time.

次に、上述した構成のデータ格納装置の動作について図3〜図8を参照して説明する。図3は、図1に示すデータ格納装置を構成するCPU2Aのデータ格納処理における処理手順を示すフローチャートである。図4は、図1に示す警報器1の工場出荷時におけるフラッシュメモリ2Dに格納されるデータを示す図である。図5は、図1に示す警報器1の通電時間書き込み時におけるフラッシュメモリ2Dに格納されるデータを示す図である。図6は、図1に示す警報器1の警報発生時におけるフラッシュメモリ2Dに格納されるデータを示す図である。図7は、図1に示す警報器1の故障発生時におけるフラッシュメモリ2Dに格納されるデータを示す図である。図8は、図1に示す警報器1のブロックB1の最後まで書き込んだときのフラッシュメモリ2Dに格納されるデータを示す図である。   Next, the operation of the data storage device having the above-described configuration will be described with reference to FIGS. FIG. 3 is a flowchart showing a processing procedure in the data storage processing of the CPU 2A constituting the data storage device shown in FIG. FIG. 4 is a diagram showing data stored in the flash memory 2D when the alarm device 1 shown in FIG. 1 is shipped from the factory. FIG. 5 is a diagram showing data stored in the flash memory 2D at the time of writing the energization time of the alarm device 1 shown in FIG. FIG. 6 is a diagram showing data stored in the flash memory 2D when an alarm is generated by the alarm device 1 shown in FIG. FIG. 7 is a diagram showing data stored in the flash memory 2D at the time of failure of the alarm device 1 shown in FIG. FIG. 8 is a diagram showing data stored in the flash memory 2D when writing to the end of the block B1 of the alarm device 1 shown in FIG.

まず、CPU2Aは、電源のオンに応じて上記データ格納処理を開始する。まず、最初のステップS1において、CPU2Aは、警報器1が出荷モードであるか否かを判定する。出荷モードであれば(ステップS1でY)、CPU2Aは、図4(A)に示すように、フラッシュメモリ2D内の両ブロックB1、B2のデータを全消去して空き領域にする(ステップS2)。   First, the CPU 2A starts the data storage process in response to power-on. First, in the first step S1, the CPU 2A determines whether or not the alarm device 1 is in a shipping mode. If it is the shipping mode (Y in step S1), the CPU 2A erases all the data in both the blocks B1 and B2 in the flash memory 2D as shown in FIG. 4A to make a free area (step S2). .

次に、CPU2Aは、最新ブロック設定手段として働き、ブロックB1を最新ブロックとして設定する(ステップS3)。このステップS3が請求項中の最新ブロック設定工程に相当する。その後、CPU2A、図4(B)に示すように、データ格納手段として働き、ブロックB1の先頭に通電時間(通電時間データ)を格納し、その後ろに設定器4などの外部からの通信で得た設定データを格納する(ステップS4)。また、ステップS4において、CPU2Aは、第2データ格納手段として働き、通電時間をRAM2C内に格納する。ここでは、通電時間として0が書き込まれる。このステップS4が請求項中のデータ格納工程及び第2データ格納工程に相当する。   Next, the CPU 2A functions as the latest block setting means, and sets the block B1 as the latest block (step S3). This step S3 corresponds to the latest block setting step in the claims. Thereafter, as shown in FIG. 4B, the CPU 2A functions as data storage means, stores the energization time (energization time data) at the head of the block B1, and is obtained by communication from the outside such as the setting device 4 after that. The set data is stored (step S4). In step S4, the CPU 2A functions as a second data storage unit and stores the energization time in the RAM 2C. Here, 0 is written as the energization time. This step S4 corresponds to the data storage step and the second data storage step in the claims.

その後、CPU2Aは、出荷モードが解除されるのを待って(ステップS5でN)、次のステップS6に進む。出荷モードが解除されると、CPU2Aは、上述した警報発生処理、故障検出処理をこのデータ格納処理と並列に行う。   Thereafter, the CPU 2A waits for the shipment mode to be canceled (N in step S5), and proceeds to the next step S6. When the shipping mode is canceled, the CPU 2A performs the alarm generation process and the failure detection process described above in parallel with the data storage process.

ステップS6では、CPU2Aは、空き領域判定手段として働き、最新ブロックが一杯であるか否かを判定する。具体的には、CPU2Aは、最新ブロックの最後尾からデータを読み込んで空データ「1」が所定バイト以上連続しているか否かを判定する。CPU2Aは、最後尾から空データが所定バイト以上連続していなければ最新ブロックが一杯であると判定し、最後尾から空データが所定バイト以上連続していれば最新ブロックが一杯でないと判定する。このステップS6が請求項中の空き領域判定工程に相当する。   In step S6, the CPU 2A functions as an empty area determination unit and determines whether or not the latest block is full. Specifically, the CPU 2A reads data from the end of the latest block, and determines whether or not empty data “1” continues for a predetermined byte or more. The CPU 2A determines that the latest block is full if empty data is not continuous for a predetermined byte or more from the end, and determines that the latest block is not full if empty data is continuous for a predetermined byte or more from the end. This step S6 corresponds to a free space determination step in the claims.

最新ブロックが一杯ではないと判定すると(ステップS6でN)、次に、CPU2Aは、電源オンしてから開始させている所定時間毎の計時が終了したか否かを判定する(ステップS12)。所定時間の計時が終了したと判定すると(ステップS12でY)、CPU2Aは、図5に示すように、最新ブロック(図5の例ではブロックB1)の空き領域の先頭に前の通電時間に所定時間を加算した新たな通電時間2を書き込むと共に、RAM2C内に格納された通電時間に新たな通電時間を上書きして(ステップS13)、次のステップS14に進む。ステップS13により、RAM2C内には最新の通電時間が常に保存される。所定時間の計時が終了していなければ(ステップS12でN)、CPU2Aは、ステップS13に進むことなく、直ちにステップ14に進む。   If it is determined that the latest block is not full (N in step S6), then the CPU 2A determines whether or not the timing for every predetermined time started after the power is turned on (step S12). If it is determined that the time measurement for the predetermined time has ended (Y in step S12), the CPU 2A, as shown in FIG. 5, sets a predetermined current energization time at the beginning of the empty area of the latest block (block B1 in the example of FIG. 5). The new energization time 2 added with the time is written, and the energization time stored in the RAM 2C is overwritten with the new energization time (step S13), and the process proceeds to the next step S14. By step S13, the latest energization time is always stored in the RAM 2C. If the measurement of the predetermined time has not ended (N in step S12), the CPU 2A immediately proceeds to step 14 without proceeding to step S13.

ステップS14において、CPU2Aは、警報や故障、設定器4による設定データの更新要求などが生じて、フラッシュメモリ2Dに格納すべきデータが発生しているか否かを判定する。フラッシュメモリ2Dに格納すべきデータが発生していなければ(ステップS14でN)、CPU2Aは、直ちにステップS1に戻る。   In step S <b> 14, the CPU 2 </ b> A determines whether data to be stored in the flash memory 2 </ b> D is generated due to an alarm or failure, a setting data update request from the setting device 4, or the like. If there is no data to be stored in the flash memory 2D (N in step S14), the CPU 2A immediately returns to step S1.

一方、フラッシュメモリ2Dに格納すべきデータが発生していれば(ステップS14でY)、CPU2Aは、発生したデータを最新ブロックの空き領域の先頭に書き込んだ後(ステップS15)、ステップS1に戻る。   On the other hand, if data to be stored in the flash memory 2D has occurred (Y in step S14), the CPU 2A writes the generated data at the head of the empty area of the latest block (step S15), and then returns to step S1. .

ステップS15の詳細について説明すると、例えば、警報が発生すると、CPU2Aは、図6に示すように、新たな警報履歴2を最新ブロック(図6に示す例ではブロックB1)の空き領域の先頭に書き込む。また、故障が発生すると、CPU2Aは、図7に示すように、新たな故障履歴3を最新ブロック(図7に示す例ではブロックB1)の空き領域の先頭に書き込む。   The details of step S15 will be described. For example, when an alarm is generated, the CPU 2A writes the new alarm history 2 to the head of the free area of the latest block (block B1 in the example shown in FIG. 6) as shown in FIG. . When a failure occurs, the CPU 2A writes a new failure history 3 at the head of the empty area of the latest block (block B1 in the example shown in FIG. 7) as shown in FIG.

上述したステップS12〜S15において、CPU2Aはデータ格納手段として働く。また、ステップS12〜S15が請求項中のデータ格納工程に相当する。   In steps S12 to S15 described above, the CPU 2A functions as data storage means. Steps S12 to S15 correspond to the data storage step in the claims.

これに対して、最新ブロックが一杯であると判定すると(ステップS6でY)、次に、CPU2Aは、図8(A)に示すように、消去手段として働き、最新ブロックを除いた他のブロック(図8の例ではブロックB2)に格納したデータを全消去して空き領域にする(ステップS7)。このステップS7が請求項中の消去工程に相当する。次に、CPU2Aは、RAM2C内に格納された最新の通電時間を他のブロックの先頭に書き込む(ステップS8)。   On the other hand, if it is determined that the latest block is full (Y in step S6), then, as shown in FIG. 8A, the CPU 2A functions as an erasing unit, and other blocks excluding the latest block. The data stored in (block B2 in the example of FIG. 8) is completely erased to make a free area (step S7). This step S7 corresponds to an erasing process in the claims. Next, the CPU 2A writes the latest energization time stored in the RAM 2C at the head of another block (step S8).

次に、CPU2Aは、図8(B)に示すように、最新ブロックに格納された設定データのうち一番後ろに格納されているものを検索して、通電時間の後ろに書き込む(ステップS9)。その後、CPU2Aは、図8(C)に示すように、最新ブロックに格納された警報履歴のうち後ろから3つ目までの警報履歴を検索して、設定データの後ろに書き込み、その後、図8(D)に示すように、最新ブロックに格納された故障履歴のうち後ろから3つ目までの故障履歴を検索して、警報履歴の後ろに書き込んだ後(ステップS10)、ステップS11に進む。   Next, as shown in FIG. 8B, the CPU 2A searches the setting data stored in the latest block among the setting data stored in the latest block and writes it after the energization time (step S9). . Thereafter, as shown in FIG. 8C, the CPU 2A searches for the third to third alarm histories out of the alarm histories stored in the latest block, writes them to the back of the setting data, and thereafter, FIG. As shown in (D), after searching for the third failure history from the failure history stored in the latest block and writing it after the alarm history (step S10), the process proceeds to step S11.

上記検索について詳細に説明すると、CPU2Aは、まず最新ブロック(ブロックB1)の最後尾から読み込みを開始する。CPU2Aは、最後尾にはデータの最後に付加されたデータ種類が格納されている。CPU2Aは、このデータ種類からブロックB1の最後に書き込まれたデータの種類を判定する。図8(C)に示す例では、CPU2Aは、警報履歴7が最新ブロックの最後に書き込まれていると判定する。CPU2Aは、判定したデータ種類からそのデータのデータ長を判定し、データ種類が書き込まれているエリアから判定したデータ長だけ前までのエリアのデータを、そのデータ種類のデータであると判定する。   The above search will be described in detail. First, the CPU 2A starts reading from the end of the latest block (block B1). The CPU 2A stores the data type added to the end of the data at the end. The CPU 2A determines the type of data written at the end of the block B1 from this data type. In the example shown in FIG. 8C, the CPU 2A determines that the alarm history 7 is written at the end of the latest block. The CPU 2A determines the data length of the data from the determined data type, and determines that the data in the area before the determined data length from the area where the data type is written is the data of that data type.

図8(C)に示す例で説明すると、最後尾から警報履歴のデータ長だけ前までのエリアのデータを警報履歴7であると判定する。さらに、CPU2Aは、最新ブロックの先頭に向かってデータを読み込み、警報履歴7よりも前のエリアに格納されているデータ種類から、警報履歴7の前に書き込まれたデータの種類を判定する。図8(C)に示す例では、警報履歴6が警報履歴7の前に書き込まれていると判定する。このように、CPU2Aは、後ろから前に向かって順にデータを読み取って最新ブロックに格納された警報履歴のうち後ろから3つ目までを検索する。   In the example shown in FIG. 8C, the data in the area from the tail to the previous data length of the alarm history is determined as the alarm history 7. Further, the CPU 2A reads the data toward the head of the latest block, and determines the type of data written before the alarm history 7 from the data type stored in the area before the alarm history 7. In the example illustrated in FIG. 8C, it is determined that the alarm history 6 is written before the alarm history 7. As described above, the CPU 2A sequentially reads data from the back to the front, and searches the alarm history stored in the latest block from the back to the third.

図8(C)に示す例では、警報履歴7、6、5が最新ブロックに格納された警報履歴のうち後ろから3つ目までの警報履歴として検索される。CPU2Aは、これら3つの警報履歴7、6、5のうち一番前から順にブロックB2に書き込んでいく。即ち、警報履歴5を警報履歴1、警報履歴6を警報履歴2、警報履歴7を警報履歴3へ移動して追記する。   In the example shown in FIG. 8C, the alarm histories 7, 6, and 5 are searched as the third to third alarm histories from the alarm histories stored in the latest block. The CPU 2A sequentially writes the three alarm histories 7, 6, and 5 in the block B2 from the front. That is, the alarm history 5 is moved to the alarm history 1, the alarm history 6 is moved to the alarm history 2, and the alarm history 7 is moved to the alarm history 3.

また、図8(D)に示す例では、故障履歴6、5、4が最新ブロックに格納された故障履歴のうち後ろから3つ目までの故障履歴として検索される。CPU2Aは、これら3つの故障履歴6、5、4のうち一番前のものから順にブロックB2に書き込んでいく。即ち、故障履歴4を故障履歴1、故障履歴5を故障履歴2、故障履歴6を故障履歴3へ移動して追記する。   In the example shown in FIG. 8D, the failure histories 6, 5, and 4 are searched as the third failure history from the failure history stored in the latest block. The CPU 2A writes to the block B2 in order from the earliest of these three failure histories 6, 5, and 4. That is, the failure history 4 is moved to the failure history 1, the failure history 5 is moved to the failure history 2, and the failure history 6 is moved to the failure history 3 to be additionally recorded.

上述したステップS8〜S10において、CPU2Aは、データ移動手段として働く。また、ステップS8〜S10が請求項中のデータ移動工程に相当する。   In steps S8 to S10 described above, the CPU 2A functions as a data moving unit. Steps S8 to S10 correspond to the data movement step in the claims.

ステップS11において、CPU2Aは、最新ブロック設定手段として働き、上記他のブロック(図8に示す例ではブロックB2)を最新ブロックに設定し、次のステップS12に進む。このステップS11が請求項中の最新ブロック設定工程に相当する。   In step S11, the CPU 2A functions as the latest block setting means, sets the other block (block B2 in the example shown in FIG. 8) as the latest block, and proceeds to the next step S12. This step S11 corresponds to the latest block setting step in the claims.

次に、設定器4により履歴の読み込み要求が行われたときの動作について説明する。まず、CPU2Aは、最新ブロック判定手段として働き、ブロックB1、B2の先頭に書き込まれている通電時間を比較し、最大値が書き込まれているブロックを最新ブロックとして判定する。その後、CPU2Aは、読取手段として働き、最新ブロックの後ろから読み出し、最初に見つかった通電時間を最新通電時間、最初に見つかった設定データを最新設定データ、後ろから3つ目までの警報履歴、故障履歴を最新警報履歴、最新故障履歴として、設定器4に送信する。   Next, an operation when a history reading request is made by the setting device 4 will be described. First, the CPU 2A functions as the latest block determination means, compares the energization times written at the heads of the blocks B1 and B2, and determines the block in which the maximum value is written as the latest block. After that, the CPU 2A functions as a reading unit, reads from the back of the latest block, the first energization time found first is the latest energization time, the first setting data found is the latest setting data, the alarm history up to the third from the back, failure The history is transmitted to the setting device 4 as the latest alarm history and the latest failure history.

図9に示す例では、CPU2Aは、ブロックB2を最新ブロックとして判定し、通電時間3を最新通電時間、設定データ2を最新設定データ、警報履歴4、3、2を最新警報履歴、故障履歴3、2、1を最新故障履歴として、設定器4に対して送信する。   In the example shown in FIG. 9, the CPU 2A determines that the block B2 is the latest block, the energization time 3 is the latest energization time, the setting data 2 is the latest setting data, the alarm histories 4, 3, and 2 are the latest alarm history, and the failure history 3 2 and 1 are transmitted to the setting device 4 as the latest failure history.

上述した実施形態によれば、CPU2Aが、フラッシュメモリ2Dの領域に2つのブロックB1、B2を設け、2つのブロックB1、B2の1つを最新ブロックとして設定し、データ(通電時間、設定データ、警報履歴、故障履歴)が発生する毎に最新ブロックの空き領域の先頭から順に発生したデータの最後にデータ種類を付加して格納している。また、CPU2Aが、最新ブロックに空き領域があるか判定し、空き領域がないと判定された場合、最新ブロックを除いた他のブロックのデータを消去した後に、最新ブロックの後ろから順にデータを読み取り、データの最後に付加されたデータ種類に基づいて種類毎に後ろから1個、又は、3個づつのデータを抽出して、抽出したデータを他のブロックの先頭から順に書き込む。その後、CPU2Aが、書き込み終了後に、その他のブロックを最新ブロックとして設定している。   According to the above-described embodiment, the CPU 2A provides the two blocks B1 and B2 in the area of the flash memory 2D, sets one of the two blocks B1 and B2 as the latest block, and stores data (energization time, setting data, Each time an alarm history (failure history) is generated, a data type is added to the end of the data generated in order from the top of the empty area of the latest block and stored. Further, the CPU 2A determines whether or not there is an empty area in the latest block, and when it is determined that there is no empty area, after erasing data of other blocks excluding the latest block, the data is read sequentially from the back of the latest block. Based on the data type added to the end of the data, one or three pieces of data are extracted from the back for each type, and the extracted data is written in order from the top of the other blocks. Thereafter, the CPU 2A sets other blocks as the latest blocks after the writing is completed.

このように、データの最後にデータ種類を付加することにより、データが発生したとき、従来例のように全種類のデータ(通電時間、設定データ、警報履歴1〜3、故障履歴1〜3)を追記することなく、その発生したデータだけ後ろに追記しても、最新ブロックから種類毎に後ろから3個づつのデータ、即ち最新データを読み取ることができる。これにより、データが発生する毎に、書き込むデータ量を少なくすることができ、消去回数が削減でき、効率良く上書き不可なメモリを使用することができる。   As described above, when data is generated by adding the data type to the end of the data, all types of data (energization time, setting data, alarm history 1 to 3, failure history 1 to 3) are provided as in the conventional example. Even if only the generated data is added after the data, it is possible to read three pieces of data from the latest for each type, that is, the latest data. As a result, the amount of data to be written can be reduced each time data is generated, the number of erasures can be reduced, and a memory that cannot be overwritten efficiently can be used.

また、上述した実施形態によれば、CPU2Aは、通電時間に関してはRAM2Cに上書き保存して、全消去された後、RAM2Cに格納された最新の通電時間を他のブロックの先頭から順に書き込む。これにより、最新ブロックの後ろから順に読み取ることなく、最新ブロックに格納されている最新の通電時間を他のブロックの先頭に移動することができる。   Further, according to the above-described embodiment, the CPU 2A overwrites and saves the energization time in the RAM 2C, and after all erasure is performed, the latest energization time stored in the RAM 2C is sequentially written from the top of the other blocks. As a result, the latest energization time stored in the latest block can be moved to the head of another block without sequentially reading from the back of the latest block.

また、上述した実施形態によれば、CPU2Aが、各ブロックB1、B2の先頭に格納されている通電時間を比較し、最大の通電時間が書き込まれているブロックを最新ブロックとして判定し、最新ブロックの後ろから順にデータを読み取り、データの最後に付加されたデータ種類に基づいて種類毎に後ろから1個(通電時間、設定データの場合)、又は、3個づつ(警報履歴、故障履歴の場合)のデータを最新データとして読み取るので、最新ブロックに関する情報を持っていなくても、各ブロックの何れが最新ブロックであるかを判定できる。   Further, according to the embodiment described above, the CPU 2A compares the energization times stored at the heads of the blocks B1 and B2, determines the block in which the maximum energization time is written as the latest block, and determines the latest block. The data is read in order from the back, and based on the data type added at the end of the data, one from the back for each type (in the case of energization time and setting data), or three (in the case of alarm history and failure history) ) As the latest data, it is possible to determine which of the blocks is the latest block without having information on the latest block.

上述した実施形態によれば、CPU2Aが、データの最後に付加されているデータ種類からデータ長を判定し、そのデータ種類が書き込まれているエリアから判定したデータ長分前までのエリアのデータを、データ種類のデータであると判定する。従って、従来のように、通電時間、警報履歴、故障履歴のデータ長を同じにしなくても、データを特定することができるので、各種類のデータのデータ長を同じに調整するためのデータ長調整用のエリアを設ける必要がなく、無駄なデータがフラッシュメモリ2Dに格納されることがない。   According to the above-described embodiment, the CPU 2A determines the data length from the data type added at the end of the data, and the data in the area up to the data length determined from the area where the data type is written. The data type is determined to be data. Therefore, since the data can be specified without making the data length of the energization time, the alarm history, and the failure history the same as before, the data length for adjusting the data length of each type of data to the same There is no need to provide an adjustment area, and useless data is not stored in the flash memory 2D.

なお、上述した実施形態によれば、CPU2Aに、データの最後に付加されたデータ種類からそのデータ長を判定する機能を持たせて、通電時間、設定データ、警報履歴、故障履歴のデータ長をそれぞれ可変にしていたが、本発明はこれに限ったものではない。例えば、従来と同様にデータ長調整用のエリアを設け、通電時間、設定データ、警報履歴、故障履歴の互いのデータ長を同じに設ければ、データ長を判定する機能をCPU2Aに持たせる必要がない。   According to the above-described embodiment, the CPU 2A has the function of determining the data length from the data type added at the end of the data, and the data length of the energization time, the setting data, the alarm history, and the failure history is set. Although each is variable, the present invention is not limited to this. For example, if a data length adjustment area is provided in the same manner as in the past and the data lengths of energization time, setting data, alarm history, and failure history are the same, the CPU 2A must have a function for determining the data length. There is no.

また、上述した実施形態によれば、設定器4による読み込み時に、CPU2Aは、各ブロックB1、B2の先頭に格納されている通電時間から最新ブロックを判定していたが、本発明はこれに限ったものではない。例えば、フラッシュメモリ2DのブロックB1、B2とは別の領域に、最新ブロックを示すエリアを設け、そのエリアに格納されたブロックを最新ブロックとして判定するようにしてもよい。この場合、最新ブロックが一杯になったときに、他のブロックの先頭に通電時間を書き込む必要がない。   Further, according to the above-described embodiment, the CPU 2A determines the latest block from the energization time stored at the head of each of the blocks B1 and B2 at the time of reading by the setting device 4, but the present invention is not limited to this. Not a thing. For example, an area indicating the latest block may be provided in an area different from the blocks B1 and B2 of the flash memory 2D, and the block stored in the area may be determined as the latest block. In this case, when the latest block is full, it is not necessary to write the energization time at the beginning of the other blocks.

また、上述した実施形態によれば、フラッシュメモリ2Dには、2つのブロックB1、B2が設けられていたが、本発明はこれに限ったものではない。ブロックとしては、2つ以上のブロックを設ければよく、3つでも、4つでもよい。   Further, according to the embodiment described above, the flash memory 2D is provided with the two blocks B1 and B2. However, the present invention is not limited to this. As the block, two or more blocks may be provided, and three or four blocks may be provided.

また、上述した実施形態によれば、通電時間については、RAM2C内にも上書き保存して、最新ブロックが一杯になったときに、RAM2C内に保存された最新の通電時間を他のブロックの先頭に移動させていたが、本発明はこれに限ったものではない。例えば、警報履歴や故障履歴についてもRAM2C内にも上書き保存して、最新ブロックが一杯になったときに、RAM2C内に保存された最新の警報履歴や故障履歴を他のブロックの先頭に移動させてもよい。   Further, according to the above-described embodiment, the energization time is also overwritten in the RAM 2C, and when the latest block is full, the latest energization time stored in the RAM 2C is set to the head of another block. However, the present invention is not limited to this. For example, the alarm history and failure history are also overwritten in the RAM 2C, and when the latest block is full, the latest alarm history and failure history stored in the RAM 2C is moved to the head of another block. May be.

また、前述した実施形態は本発明の代表的な形態を示したに過ぎず、本発明は、実施形態に限定されるものではない。即ち、本発明の骨子を逸脱しない範囲で種々変形して実施することができる。   Further, the above-described embodiments are merely representative forms of the present invention, and the present invention is not limited to the embodiments. That is, various modifications can be made without departing from the scope of the present invention.

1 警報器(データ格納装置)
2A CPU(最新ブロック設定手段、データ格納手段、空き領域判定手段、消去手段、データ移動手段、最新ブロック判定手段、読取手段)
2D フラッシュメモリ(メモリ)
B1 ブロック
B2 ブロック
1 Alarm (Data storage device)
2A CPU (latest block setting means, data storage means, free space determination means, erasure means, data movement means, latest block determination means, reading means)
2D flash memory (memory)
B1 block B2 block

Claims (6)

上書き不可能なメモリに順次発生する複数種類のデータを格納するデータ格納装置において、
前記メモリの領域内に複数のブロックを設け、前記複数のブロックの1つを最新ブロックとして設定する最新ブロック設定手段と、
前記データが発生する毎に前記最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納するデータ格納手段と、
前記最新ブロックに空き領域があるか否かを判定する空き領域判定手段と、
前記空き領域判定手段により空き領域がないと判定された場合、前記最新ブロックを除いた他のブロックのデータを全消去する消去手段と、
前記消去手段により全消去された後、前記最新ブロックの後ろから順にデータを読み取り、前記データの最後に付加されたデータ種類に基づいて種類毎に後ろから所定個づつのデータを抽出して、当該抽出したデータを前記他のブロックの先頭から順に書き込むデータ移動手段と、を備え、
前記最新ブロック設定手段が、前記データ移動手段による書き込み終了後、当該他のブロックを最新ブロックとして設定する
ことを特徴とするデータ格納装置。
In a data storage device for storing a plurality of types of data that occur sequentially in a memory that cannot be overwritten,
A plurality of blocks in the area of the memory, and a latest block setting means for setting one of the plurality of blocks as a latest block;
Data storage means for adding and storing a data type at the end of the generated data in order from the beginning of the empty area of the latest block every time the data is generated;
Free space determination means for determining whether or not there is a free space in the latest block;
If it is determined by the free area determination means that there is no free area, erasing means for erasing all data of other blocks except the latest block;
After all erasure by the erasing means, data is read in order from the back of the latest block, based on the data type added at the end of the data, a predetermined piece of data is extracted from the back for each type, Data moving means for sequentially writing the extracted data from the top of the other block,
The data storage device, wherein the latest block setting means sets the other block as the latest block after completion of writing by the data moving means.
上書き不可能なメモリに順次発生する複数種類のデータを格納するデータ格納装置において、
前記メモリの領域内に複数のブロックを設け、前記複数のブロックの1つを最新ブロックとして設定する最新ブロック設定手段と、
前記データが発生する毎に前記最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納するデータ格納手段と、
前記データが発生する毎に上書き可能な第2メモリに前記発生したデータを上書きする第2データ格納手段と、
前記空き領域判定手段により空き領域がないと判定された場合、前記最新ブロックを除いた他のブロックのデータを全消去する消去手段と、
前記消去手段により全消去された後、前記第2メモリに格納された最新のデータを前記他のブロックの先頭から順に書き込むデータ移動手段と、を備え、
前記最新ブロック設定手段が、前記データ移動手段による書き込み終了後、当該他のブロックを最新ブロックとして設定する
ことを特徴とするデータ格納装置。
In a data storage device for storing a plurality of types of data that occur sequentially in a memory that cannot be overwritten,
A plurality of blocks in the area of the memory, and a latest block setting means for setting one of the plurality of blocks as a latest block;
Data storage means for adding and storing a data type at the end of the generated data in order from the beginning of the empty area of the latest block every time the data is generated;
Second data storage means for overwriting the generated data in a second memory that can be overwritten each time the data is generated;
If it is determined by the free area determination means that there is no free area, erasing means for erasing all data of other blocks except the latest block;
Data moving means for sequentially writing the latest data stored in the second memory in order from the head of the other block after being completely erased by the erasing means,
The data storage device, wherein the latest block setting means sets the other block as the latest block after completion of writing by the data moving means.
前記データとして、通電時間データが所定時間毎に発生するデータ格納装置において、
前記各ブロックの先頭に格納されている通電時間データを比較し、最大の通電時間データが書き込まれているブロックを最新ブロックとして判定する最新ブロック判定手段と、
前記最新ブロックの後ろから順にデータを読み取り、前記データの最後に付加されたデータ種類に基づいて種類毎に後ろから所定個づつのデータを最新データとして読み取る読取手段と、
を備えたことを特徴とする請求項1又は2に記載のデータ格納装置。
In the data storage device in which energization time data is generated every predetermined time as the data,
Latest block determination means for comparing the energization time data stored at the head of each block and determining the block in which the maximum energization time data is written as the latest block;
Reading means sequentially reading from the back of the latest block, based on the data type added at the end of the data, reading means for reading a predetermined piece of data from the back for each type as the latest data,
The data storage device according to claim 1, further comprising:
前記読取手段及び前記データ移動手段が、前記データの最後に付加されているデータ種類からデータ長を判定し、そのデータ種類が書き込まれているエリアから判定したデータ長分前までのエリアのデータを、前記データ種類のデータであると判定する
ことを特徴とする請求項3に記載のデータ格納装置。
The reading means and the data moving means determine the data length from the data type added at the end of the data, and the data in the area up to the data length determined from the area where the data type is written. The data storage device according to claim 3, wherein the data storage device is determined to be data of the data type.
上書き不可能なメモリに順次発生する複数種類のデータを格納するデータ格納方法において、
前記メモリの領域に複数のブロックを設け、前記複数のブロックの1つを最新ブロックとして設定する最新ブロック設定工程と、
前記データが発生する毎に前記最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納するデータ格納工程と、
前記最新ブロックに空き領域があるか否かを判定する空き領域判定工程と、
前記空き領域判定手段により空き領域がないと判定された場合、前記最新ブロックを除いた他のブロックのデータを全消去する消去工程と、
前記消去工程において全消去された後、前記最新ブロックの後ろから順にデータを読み取り、前記データの最後に付加されたデータ種類に基づいて各種類毎に後ろから所定個づつのデータを抽出して、当該抽出したデータを前記他のブロックの先頭から順に書き込むデータ移動工程と、を備え、
前記最新ブロック設定工程において、前記データ移動工程による書き込み終了後、当該他のブロックを最新ブロックとして設定する
ことを特徴とするデータ格納方法。
In a data storage method for storing multiple types of data that occur sequentially in a memory that cannot be overwritten,
Providing a plurality of blocks in the memory area, and setting one of the plurality of blocks as a latest block;
A data storing step of adding and storing a data type at the end of the generated data in order from the beginning of the empty area of the latest block every time the data is generated,
A free space determination step of determining whether there is a free space in the latest block;
If it is determined by the free area determination means that there is no free area, an erasing step of erasing all data of other blocks except the latest block;
After all erasure in the erasing step, read data sequentially from the back of the latest block, based on the data type added at the end of the data, extract a predetermined piece of data from the back for each type, A data movement step of sequentially writing the extracted data from the top of the other block,
In the latest block setting step, after completion of writing in the data movement step, the other block is set as the latest block.
上書き不可能なメモリに順次発生する複数種類のデータを格納するデータ格納方法において、
前記メモリの領域内に複数のブロックを設け、前記複数のブロックの1つを最新ブロックとして設定する最新ブロック設定工程と、
前記データが発生する毎に前記最新ブロックの空き領域の先頭から順に当該発生したデータの最後にデータ種類を付加して格納するデータ格納工程と、
前記データが発生する毎に上書き可能な第2メモリに前記発生したデータを上書きする第2データ格納工程と、
前記空き領域判定工程により空き領域がないと判定された場合、前記最新ブロックを除いた他のブロックのデータを全消去する消去工程と、
前記消去工程により全消去された後、前記第2メモリに格納された最新のデータを前記他のブロックの先頭から順に書き込むデータ移動工程と、を備え、
前記最新ブロック設定工程が、前記データ移動工程による書き込み終了後、当該他のブロックを最新ブロックとして設定する
ことを特徴とするデータ格納方法。
In a data storage method for storing multiple types of data that occur sequentially in a memory that cannot be overwritten,
A latest block setting step of providing a plurality of blocks in the area of the memory and setting one of the plurality of blocks as a latest block;
A data storing step of adding and storing a data type at the end of the generated data in order from the beginning of the empty area of the latest block every time the data is generated,
A second data storing step of overwriting the generated data in a second memory that can be overwritten each time the data is generated;
When it is determined that there is no free space in the free space determination step, an erasing step of erasing all data of other blocks except the latest block;
A data movement step of sequentially writing the latest data stored in the second memory in order from the beginning of the other block after being completely erased by the erasing step,
In the data storage method, the latest block setting step sets the other block as the latest block after completion of writing by the data movement step.
JP2010269927A 2010-12-03 2010-12-03 Data storage device and data storage method Active JP5666273B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010269927A JP5666273B2 (en) 2010-12-03 2010-12-03 Data storage device and data storage method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010269927A JP5666273B2 (en) 2010-12-03 2010-12-03 Data storage device and data storage method

Publications (2)

Publication Number Publication Date
JP2012118892A true JP2012118892A (en) 2012-06-21
JP5666273B2 JP5666273B2 (en) 2015-02-12

Family

ID=46501605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010269927A Active JP5666273B2 (en) 2010-12-03 2010-12-03 Data storage device and data storage method

Country Status (1)

Country Link
JP (1) JP5666273B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013125435A (en) * 2011-12-15 2013-06-24 Yazaki Energy System Corp Data reading/writing device and method for reading/writing data

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61226847A (en) * 1985-03-30 1986-10-08 Toshiba Corp In-block control method
JPH04243439A (en) * 1991-01-18 1992-08-31 Nec Software Ltd Variable length record access system for computer
JPH07140268A (en) * 1993-11-18 1995-06-02 Sony Tektronix Corp Current flowing time recording device
JP2003076604A (en) * 2001-09-03 2003-03-14 Nec Access Technica Ltd Log information collecting system and method for flash memory
US6535949B1 (en) * 1999-04-19 2003-03-18 Research In Motion Limited Portable electronic device having a log-structured file system in flash memory
JP2007237682A (en) * 2006-03-10 2007-09-20 Oki Data Corp Image formation apparatus
JP2008515054A (en) * 2004-09-24 2008-05-08 アイトロン インコーポレイテッド How to store weighing data using flash memory
JP2008146521A (en) * 2006-12-13 2008-06-26 Hitachi Ltd Automobile electronic controller
JP2009003604A (en) * 2007-06-20 2009-01-08 Victor Co Of Japan Ltd Log information recording device and log information recording method
JP2009064369A (en) * 2007-09-10 2009-03-26 Fuji Electric Fa Components & Systems Co Ltd Alarm
JP2009116465A (en) * 2007-11-02 2009-05-28 Hitachi Ltd Storage device and memory control method
US20100077012A1 (en) * 2008-09-10 2010-03-25 Infinite Memories Ltd. Method For Using An OTP Storage Device
JP2010078499A (en) * 2008-09-26 2010-04-08 Konami Digital Entertainment Co Ltd Apparatus and method for information processing and program

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61226847A (en) * 1985-03-30 1986-10-08 Toshiba Corp In-block control method
JPH04243439A (en) * 1991-01-18 1992-08-31 Nec Software Ltd Variable length record access system for computer
JPH07140268A (en) * 1993-11-18 1995-06-02 Sony Tektronix Corp Current flowing time recording device
US6535949B1 (en) * 1999-04-19 2003-03-18 Research In Motion Limited Portable electronic device having a log-structured file system in flash memory
JP2003076604A (en) * 2001-09-03 2003-03-14 Nec Access Technica Ltd Log information collecting system and method for flash memory
JP2008515054A (en) * 2004-09-24 2008-05-08 アイトロン インコーポレイテッド How to store weighing data using flash memory
JP2007237682A (en) * 2006-03-10 2007-09-20 Oki Data Corp Image formation apparatus
JP2008146521A (en) * 2006-12-13 2008-06-26 Hitachi Ltd Automobile electronic controller
JP2009003604A (en) * 2007-06-20 2009-01-08 Victor Co Of Japan Ltd Log information recording device and log information recording method
JP2009064369A (en) * 2007-09-10 2009-03-26 Fuji Electric Fa Components & Systems Co Ltd Alarm
JP2009116465A (en) * 2007-11-02 2009-05-28 Hitachi Ltd Storage device and memory control method
US20100077012A1 (en) * 2008-09-10 2010-03-25 Infinite Memories Ltd. Method For Using An OTP Storage Device
JP2010078499A (en) * 2008-09-26 2010-04-08 Konami Digital Entertainment Co Ltd Apparatus and method for information processing and program

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSND200100683006; 田中 康之: 'フラッシュメモリカードをストレージデバイスとして活用するフラッシュファイルシステムのファイル管理技術' Interface 第26巻第1号 通巻271号, 20000101, p.176-184, CQ出版株式会社 *
JPN6014023308; 田中 康之: 'フラッシュメモリカードをストレージデバイスとして活用するフラッシュファイルシステムのファイル管理技術' Interface 第26巻第1号 通巻271号, 20000101, p.176-184, CQ出版株式会社 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013125435A (en) * 2011-12-15 2013-06-24 Yazaki Energy System Corp Data reading/writing device and method for reading/writing data

Also Published As

Publication number Publication date
JP5666273B2 (en) 2015-02-12

Similar Documents

Publication Publication Date Title
TWI436369B (en) Methods for measuring usable lifespan and replacing an in-system programming code of a memory device, and data storage system using the same
CN101344868B (en) Data backup and acquiring method and device
JP2008033801A (en) Memory data management device
US10120791B2 (en) Data read apparatus, data read method, and storage medium storing data read program
JP4215746B2 (en) Information processing apparatus and life monitoring method
JP5666273B2 (en) Data storage device and data storage method
JP2007249469A (en) Nonvolatile semiconductor storage device and memory system
JP5851819B2 (en) Data writing / reading apparatus and data writing / reading method
KR101826778B1 (en) EEPROM Emulation Method Considering implementation of Flash Life Cycle and Performance Improvement
JP2009093528A (en) Memory data management apparatus
JP5983512B2 (en) Writing device
JP2014041468A (en) Flash memory controller, flash memory system, and flash memory control method
US20110082995A1 (en) Information processing apparatus
JP2007193905A (en) Semiconductor storage device
JP6040895B2 (en) Microcomputer and non-volatile memory block management method
CN109299018B (en) Method and device for reading historical data in Flash memory
CN109669628B (en) Data storage management method and device based on flash equipment
JP2013200919A (en) Nonvolatile semiconductor memory device and control method thereof
US20170277517A1 (en) Method Of Updating Program Code And Electronic Device Using The Same
JP2017199162A (en) Terminal device, failure handling control program, and failure handling control method
JP2008225922A (en) Nonvolatile storage device
JP4866114B2 (en) MEMORY CONTROLLER, NONVOLATILE MEMORY DEVICE, NONVOLATILE MEMORY SYSTEM, AND MEMORY CONTROL METHOD
JP4468342B2 (en) Data management method
JP6119682B2 (en) Electronic control unit
JP2016151922A (en) Memory control device and memory control method

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20120926

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120927

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20121005

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140717

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141210

R150 Certificate of patent or registration of utility model

Ref document number: 5666273

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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