(57)【要約】【課題】有限の書き込み寿命を有する記録媒体に対して寿命以下の書き込み回数でデータの書き込み量を確保可能とすること。【解決手段】データの書き込み回数が有限であるＣＦカード１４に対するデータ書き込み方法において、一方のバッファ１８に複数回分のデータを書き込み、当該バッファ１８に書き込んである複数回分のデータをＣＦカード１４に１回で書き込む一方、ＣＦカード１４への複数回分のデータの書き込み中に次のデータが入力されるときは、バッファ２０に次のデータを書き込む。【選択図】図２
2008146446.tif 000002
【特許請求の範囲】
【請求項１】
データの書き込み回数が有限である記録媒体に対するデータ書き込み方法において、
少なくとも２つのバッファの一方に複数回分のデータを書き込むステップと、
上記バッファに書き込んである複数回分のデータを上記記録媒体に１回で書き込むステップと、
上記記録媒体へのデータの書き込み中に次のデータが入力されるときは、他方のバッファに該次のデータを書き込むステップと、
を有することを特徴とするデータ書き込み方法。
【請求項２】
データの書き込み回数が有限である記録媒体に対するデータ書き込み方法において、
複数のバッファに対して順次に複数回分のデータを書き込むステップと、
上記複数のバッファへの複数回分のデータの書き込みが完了すると、上記記録媒体に１回で上記複数のバッファに書き込まれているデータを書き込むステップと、
を有することを特徴とするデータ書き込み方法。
【請求項３】
上記バッファから上記記録媒体へのデータの書き込み完了期間をパワーフェイル期間内とする、ことを特徴とする請求項１または２に記載のデータ書き込み方法。
【請求項４】
上記記録媒体がＣＦカードである、ことを特徴とする請求項１ないし３のいずれかに記載の表示器。
【請求項５】
データの書き込み回数が有限である記録媒体が装着可能であり、かつ、この装着した記録媒体にデータを書き込むことが可能な表示器において、
少なくとも２つのバッファと、
一方のバッファに複数回分のデータを書き込み、上記記録媒体に対してはこの書き込んだ複数回分のデータを１回で書き込み制御する一方、上記記録媒体への上記複数回分のデータの書き込み中に次のデータが入力されるときは、他方のバッファに該次のデータを書き込み制御するバッファコントローラと、
を備えることを特徴とする表示器。
【請求項６】
データの書き込み回数が有限である記録媒体が装着可能であり、かつ、この装着した記録媒体にデータを書き込むことが可能な表示器において、
複数のバッファと、
これら複数のバッファに対して順次に複数回分のデータを書き込み、これら複数のバッファへの複数回分のデータの書き込みが完了すると、上記記録媒体に１回で上記複数のバッファに書き込まれているデータを書き込む制御を行うバッファコントローラと、
を備えることを特徴とする表示器。
【請求項７】
上記バッファコントローラは、上記バッファから上記記録媒体への全データの書き込み完了期間をパワーフェイル期間内に制御する、ことを特徴とする請求項５または６に記載の表示器。
【請求項８】
上記記録媒体がＣＦカードである、ことを特徴とする請求項５ないし７のいずれかに記載の表示器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、有限の書き込み回数を有する不揮発性記録媒体に対するデータ書き込み方法およびこれを実施するプログラマブル表示器等の表示器に関する。
【背景技術】
【０００２】
パーソナルコンピュータ、プログラマブル表示器、プログラマブルロジックコントローラ（ＰＬＣ）等から構成されて、デバイスを制御するため、長時間の連続稼動が要求される制御システムでは、当該装置内の揮発性メモリに記録してあるデータを周期的に有限の書き込み回数を有する不揮発性記録媒体、例えばコンパクトフラッシュ（登録商標）カード（ＣＦカード）に記録することが行われている。
【０００３】
この有限の書き込み回数を有するＣＦカードは、その書き込み回数を越えると、正常に動作しなくなって書き込んだデータを保証できなくなる。そのため、その書き込み回数を記録してその書き込みを管理することが望ましいが、書き込みを頻繁に実施すると、ＣＦカードの劣化が早くなる。
【０００４】
なお、ＣＦカードの書き込み寿命は、内部のインデックス領域に対する書き込み更新による。このインデックス領域はデータ位置（クラスタ）を示すＦＡＴ領域（ファット・アロケーション・テーブル）であり、このＦＡＴには書き込み更新の上限があるからである。ＦＡＴの詳細は周知であるので略するが、ＦＡＴが傷つくと、データは正常でもデータを読み出せなくなる。
【０００５】
特開２００５−１８６５２号公報には上記ＣＦカードについての書き込み回数の制限、特開平６−１９８００号公報にはＥＥＰＲＯＭに対する書き込み回数の増大に関する技術が開示されている。
【特許文献１】特開２００５−１８６５２号公報
【特許文献２】特開平６−１９８００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、本発明により解決すべき課題は、有限の書き込み寿命を有する記録媒体に対して寿命以下の書き込み回数でデータの書き込み量を確保可能とすることである。
【課題を解決するための手段】
【０００７】
本発明第１によるデータ書き込み方法は、データの書き込み回数が有限である記録媒体に対するデータ書き込み方法であって、少なくとも２つのバッファの一方に複数回分のデータを書き込むステップと、上記バッファに書き込んである複数回分のデータを上記記録媒体に１回で書き込むステップと、上記記録媒体へのデータの書き込み中に次のデータが入力されるときは、他方のバッファに該次のデータを書き込むステップと、を有することを特徴とするものである。
【０００８】
上記バッファはバッファを複数の領域に分割し、分割された一方と他方とで構成することができる。また、１つまたは複数のバッファに複数回分のデータを書き込んでもよい。また、１つまたは複数のバッファに次のデータを書き込んでもよい。
【０００９】
本発明第１によると、バッファに書き込んでいる複数回分のデータを記録媒体に１回で書き込むので、記録媒体に対する書き込み回数が減り、記録媒体の書き込み寿命を延ばすことができる。本発明では、加えて、記録媒体への上記複数回分のデータの書き込み中に次のデータが入力されるときは、別のバッファに該次のデータを書き込むので、データが損なうことがない。
【００１０】
本発明第２によるデータ書き込み方法は、データの書き込み回数が有限である記録媒体に対するデータ書き込み方法であって、複数のバッファに対して順次に複数回分のデータを書き込むステップと、上記複数のバッファへの複数回分のデータの書き込みが完了すると、上記記録媒体に１回で上記複数のバッファに書き込まれているデータを書き込むステップと、を有することを特徴とするものである。
【００１１】
本発明第２によると、バッファに書き込んでいる複数回分のデータを記録媒体に１回で書き込むので、記録媒体に対する書き込み回数が減り、記録媒体の書き込み寿命を延ばすことができる。
【００１２】
上記では、上記バッファから上記記録媒体への全データの書き込み完了期間をパワーフェイル期間以内とすることが好ましい。
【００１３】
上記では、記録媒体がＣＦカードであることが好ましい。
【００１４】
本発明第３による表示器は、データの書き込み回数が有限である記録媒体が装着可能であり、かつ、この装着した記録媒体にデータを書き込むことが可能な監視制御用表示器であって、少なくとも２つのバッファと、一方のバッファに複数回分のデータを書き込み、上記記録媒体に対してはこの書き込んだ複数回分のデータを１回で書き込み制御する一方、上記記録媒体への上記複数回分のデータの書き込み中に次のデータが入力されるときは、他方のバッファに該次のデータを書き込み制御するバッファコントローラと、を備えることを特徴とするものである。
【００１５】
本発明第４による表示器は、データの書き込み回数が有限である記録媒体が装着可能であり、かつ、この装着した記録媒体にデータを書き込むことが可能な表示器であって、複数のバッファと、これら複数のバッファに対して順次に複数回分のデータを書き込み、これら複数のバッファへの複数回分のデータの書き込みが完了すると、上記記録媒体に１回で上記複数のバッファに書き込まれているデータを書き込む制御を行うバッファコントローラと、を備えることを特徴とするものである。
【発明の効果】
【００１６】
本発明によれば、有限の書き込み寿命を有する記録媒体に対して寿命以下の書き込み回数でデータの書き込み量を確保可能とすることができる。
【発明を実施するための最良の形態】
【００１７】
以下、添付した図面を参照して、本発明の実施の形態に係るデータ書き込み方法を説明する。この実施の形態ではデータの書き込み回数が有限である記録媒体としてＣＦカードを例に用いる。図１は、パーソナルコンピュータ、プログラマブル表示器、ＰＬＣ等から構成される制御システムの概略構成を示す。
【００１８】
図１を参照して、この監視制御システムは、モータ等の出力機器２、センサ等の入力機器４の状態を制御するシステムである。この制御のため、制御システムは、イーサネット（登録商標）等の共通ネットワーク６に接続されたパーソナルコンピュータ８と、この共通ネットワーク６を介してパーソナルコンピュータ８に接続されかつオペレータにより操作される複数のプログラマブル表示器１０と、複数のプログラマブル表示器１０それぞれにＲＳ２３２Ｃ等の専用ネットワークを介して個別に接続された複数のＰＬＣ１２と、を備えている。プログラマブル表示器１０は、データの書き込み回数が有限である記録媒体であるＣＦカード１４を接続することができ、ＣＦカード１４に、上記制御システムにおける各種のデータの書き込み、読出しを行うことができるようになっている。
【００１９】
以上の制御システムにおけるプログラマブル表示器１０の一般的な構成は周知であるので、その詳細を略し、図２にその要部の構成を示す。
【００２０】
図２で示すように、プログラマブル表示器１０は、バッファコントローラ１６、少なくとも２つのバッファ１８，２０を有し、バッファコントローラ１６は、以下に説明するように、両バッファ１８，２０を用いてＣＦカード１４に対するデータの書き込みを制御している。このデータはＰＬＣ１２からのロギングデータである。ただし、上記したように、図２で示すプログラマブル表示器１０のブロック構成は、ＣＰＵ、インターフェース、カードドライバ、等を略し、説明の理解のために概念で示したものであり、ＰＬＣ１２のロギングデータが直接、バッファ１８，２０に書き込まれることに限定するものでは何等ない。例えば、ＰＬＣ１２のロギングデータがバッファコントローラ１６を経由してバッファ１８，２０に書き込まれるブロックの構成にしたり、別のブロックを経由してロギングデータがバッファ１８，２０に書き込まれるブロック構成とすることができる。
【００２１】
図３で示すように、ＣＦカード１４は書き込み回数が有限な小型フラッシュメモリカードであって、ＦＡＴ領域(インデックス領域)、データ領域、その他図示を略するがルートディレクトリエントリ等の領域を有する。ここでは、その他の領域の説明は略する。＄ａ，＄ｂ，＄ｃはセクタ番号である。なお、バッファ１８，２０からＣＦカード１４にデータを書き込むときのＦＡＴの取得、ＣＦカード１４内の利用可能なメモリ空間の決定、等の説明は略する。
【００２２】
このようなＣＦカード１４は、書き込み回数が一定以上越えると正常に動作しなくなる。また、短い周期でデータのバックアップを繰り返すと短期間で書き込みの寿命回数に達するので、頻繁にＣＦカード１４を交換しなければならなくなる。
【００２３】
そこで、実施の形態では、バッファコントローラ１６の制御により、図４（ａ）で示す複数回のデータｄ１を、まず、図４（ｂ）のようにバッファ１８に書き込む。次いで、図４（ｄ）のようにバッファ１８に書き込んだ複数回のデータｄ１をＣＦカード１４に１回でデータを書き込みデータｗ１として書き込む。
【００２４】
また、バッファコントローラ１６の制御により、図４（ａ）で示す複数回分のデータｄ２を、図４（ｃ）のようにバッファ２０に書き込む。次いで、図４（ｄ）のようにバッファ２０に書き込んだ複数回のデータｄ２をＣＦカード１４に１回でデータを書き込みデータｗ２として書き込む。
【００２５】
この複数回分のデータｄ２の書き込み中に、図４（ａ）のように次のデータｄ３が入力されるときは、このデータｄ３を図４（ｂ）で示すようにバッファ１８に書き込むようにしている。
【００２６】
上記において、両バッファ１８，２０交互に複数回分のデータを書き込んでいるが、一方のバッファのみに複数回分のデータを書き込み、一方のバッファから複数回分のデータをＣＦカード１４に書き込み中に次のデータがある場合に、他方のバッファをこの次のデータに対処するバッファとしてもよい。
【００２７】
また、バッファの個数は上記では２つであるが、３つ以上でもよいことはもちろんである。バッファはハードウェア的に別体構成であることに限定するものではなく、同一のバッファを領域分割してよいことはもちろんである。
【００２８】
以上により、この実施の形態では、ＣＦカード１４に複数回分のデータを１回で書き込み、この書き込んだ複数回分のデータを一度でＣＦカード１４に書き込むので、ＣＦカード１４に対する書き込み回数が減り、ＣＦカード１４の書き込み寿命を延ばすことができる。実施の形態では、ＣＦカード１４への複数回分のデータの書き込み中に次のデータが入力されるときは、別のバッファ２２に次のデータを書き込むので、データが損なうことがない。
【００２９】
図２ではバッファ数がバッファ１８，２０の２個のダブルバッファとし、一方のバッファ１８，２０に複数回分のデータを書き込み、当該バッファ１８，２０に書き込んである複数回分のデータをＣＦカード１４に１回で書き込む一方、ＣＦカード１４への複数回分のデータの書き込み中に次のデータが入力されるときは、他方のバッファ２０，１８に該次のデータを書き込むようにした。
【００３０】
このようなバッファ構成は、図５で示す方式でもよい。
【００３１】
図５では、バッファ数がバッファＢ１−Ｂｎのｎ個とし、バッファＢ１にＰＬＣからのロギングデータを複数回書き込み、この書き込みがバッファＢ１に対するデータの書き込み容量に達すると、次のバッファＢ２にＰＬＣからのロギングデータを書き込む。このようにして、順次に、ＰＬＣからのロギングデータを書き込む。こうしてすべてのバッファＢ１−Ｂｎに対する書き込みがそれぞれのバッファ容量になると、ＣＦカード１４に１回でロギングデータを書き込む。なお、図５では、バッファＢ１−Ｂｎはプログラマブル表示器１２内部の構成であり、他のブロック構成は図示を略し、単にＣＦカード１４とのデータの書き込みの関係で示している。
【００３２】
図５の場合でも、図２と同様に、さらに別のバッファを用いて、上記バッファＢ１−ＢｎからＣＦカード１４にデータの書き込み処理中にデータが入力されると、当該別のバッファにそのデータを書き込むようにしてもよい。当該別のバッファを図５のように複数備えることでもよい。
【００３３】
次に、上記のようにＣＦカード１４にデータの書き込み中に装置電源が停止し、書き込み処理が途中で強制終了されてしまうと、ＦＡＴ領域が損なわれてデータの復元ができなくなる可能性がある。
【００３４】
そこで、図６（ａ）で示すように、装置電源が完全に０に停止するまでに当該電源が落ちることを検出して発生するパワーフェイル信号が時刻ｔ０で与えられる。そして、バッファＢ１−Ｂｎは、上記パワーフェイル信号が時刻ｔ０で発生してから期間（パワーフェイル期間）Ｔ１、例えば５０ｍｓ経過した後の時刻ｔ１で装置内システムが作動できないような電源値例えば０あるいは０近くまでは低下するまでの間に、図６（ｂ）で示すように、書き込みデータのすべてをＣＦカード１４に書き込んで更新することができるようなバッファである。この場合、この更新にハッチングで示すように時刻ｔ１を経過した後もさらに時刻ｔ２まで要する場合、データが消失してしまう。これを防止するため、パワーフェイル期間Ｔ１内に、バッファＢ１−ＢｎからＣＦカードへのデータの書き込みが完了する必要がある。Ｔ２（＜Ｔ１）はその書き込み期間である。そのために、バッファＢ１−Ｂｎのサイズを適正に設定することが必要となる。
【００３５】
図７で示すようにファイルオープンして、ステップｎ１でバッファＢ１−ＢｎのデータをＣＦカード１４に書き込む。次いでステップｎ２で書き込みが完了していないバッファＢ１−Ｂｎがあるか否かを判断し、あればステップｎ１に戻って書き込みを行い、書き込みが完了すれば、クローズする。このファイルがオープンしてからクローズするまでの期間Ｔ２が上記パワーフェイル期間Ｔ１内であることが必要である。
【００３６】
以上のようにこの実施の形態では、ＣＦカード１４に複数回分のデータを１回で書き込み、この書き込んだ複数回分のデータを一度でＣＦカード１４に書き込むので、ＣＦカード１４に対する書き込み回数が減り、ＣＦカード１４の書き込み寿命を延ばすことができる。実施の形態では、ＣＦカード１４への複数回分のデータの書き込み中に次のデータが入力されるときは、別のバッファ２２に次のデータを書き込むので、データが損なうことがない。さらに、パワーフェイル期間中にＣＦカード１４へのデータの書き込みを完了することができるバッファＢ１−Ｂｎを用いるので、ＣＦカード１４のデータの消失を防止することができる。
【図面の簡単な説明】
【００３７】
【図１】図１は本発明の実施の形態に係る制御システムの概略構成を示す図である。
【図２】図２は主にプログラマブル表示器のブロック構成を示す図である。
【図３】図３はＣＦカードの構成を示す図である。
【図４】図４はプログラマブル表示器のバッファからＣＦカードへのロギングデータの書き込みを示すタイミングチャートである。
【図５】図５はプログラマブル表示器のバッファの別の構成例を示す図である。
【図６】図６はパワーフェイル期間とＣＦカードへのデータ書き込み期間とを示す図である。
【図７】図７は図５のバッファからＣＦカードへのデータの書き込み動作を示すフローチャートである。
【符号の説明】
【００３８】
１０  プログラマブル表示器
１２  ＰＬＣ
１４  ＣＦカード
１６  バッファコントローラ
１８，２０  バッファ
【図１】
2008146446.tif 000003
【図２】
2008146446.tif 000004
【図３】
2008146446.tif 000005
【図４】
2008146446.tif 000006
【図５】
2008146446.tif 000007
【図６】
2008146446.tif 000008
【図７】
2008146446.tif 000009