JPH11272444A - 不揮発性メモリへのデータ書き込み装置及び方法 - Google Patents
不揮発性メモリへのデータ書き込み装置及び方法Info
- Publication number
- JPH11272444A JPH11272444A JP7703098A JP7703098A JPH11272444A JP H11272444 A JPH11272444 A JP H11272444A JP 7703098 A JP7703098 A JP 7703098A JP 7703098 A JP7703098 A JP 7703098A JP H11272444 A JPH11272444 A JP H11272444A
- Authority
- JP
- Japan
- Prior art keywords
- data
- writing
- identification information
- ring buffer
- 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.)
- Pending
Links
Abstract
(57)【要約】
【課題】 不揮発性メモリ上にリングバッファを構成す
るにあたってポインタによる位置制御を不要にし、各記
憶領域へのデータ書き込み回数の均等化及び書き込み回
数の増大を図る。 【解決手段】 データ書き込み装置1において、データ
の書き込み回数に制限のある不揮発性メモリ上にリング
バッファ2を構成する。そして、データ書き込み手段4
が、前回のデータを記憶させた記憶場所を検索するため
の識別情報とデータをリングバッファ2の記憶領域2a
に書き込む。次のデータを書き込む際には、識別情報検
索/書き込み位置指定手段5が、各記憶領域2aから識
別情報を読み出して、隣接する記憶領域の間で識別情報
の不一致が認められるメモリ境界を探索し、その次に位
置する記憶場所にデータを新規に書き込むようにデータ
書き込み手段4に書き込み位置を指示する。識別情報の
不一致が認めらない場合にはリングバッファ2の先頭か
ら新規データの書き込みを行う。
るにあたってポインタによる位置制御を不要にし、各記
憶領域へのデータ書き込み回数の均等化及び書き込み回
数の増大を図る。 【解決手段】 データ書き込み装置1において、データ
の書き込み回数に制限のある不揮発性メモリ上にリング
バッファ2を構成する。そして、データ書き込み手段4
が、前回のデータを記憶させた記憶場所を検索するため
の識別情報とデータをリングバッファ2の記憶領域2a
に書き込む。次のデータを書き込む際には、識別情報検
索/書き込み位置指定手段5が、各記憶領域2aから識
別情報を読み出して、隣接する記憶領域の間で識別情報
の不一致が認められるメモリ境界を探索し、その次に位
置する記憶場所にデータを新規に書き込むようにデータ
書き込み手段4に書き込み位置を指示する。識別情報の
不一致が認めらない場合にはリングバッファ2の先頭か
ら新規データの書き込みを行う。
Description
【0001】
【発明の属する技術分野】本発明は、書き込み回数が制
限されている不揮発性メモリ上のリングバッファにデー
タの書き込みを行うデータ書き込み装置及び方法に関す
るものである。
限されている不揮発性メモリ上のリングバッファにデー
タの書き込みを行うデータ書き込み装置及び方法に関す
るものである。
【0002】
【従来の技術】メモリ番地の先頭と最後尾とが繋がった
環状の配列構造は「リングバッファ」と称され、該リン
グバッファを、データの書き込み回数が制限される不揮
発性のメモリ(例えば、EEPROM(Electri
cally ErasableProgrammabl
e Read−Only Memory)等。)上に構
成してこれにデータを順次に記憶していくにあたって
は、データの次の記憶場所を覚えておく必要がある。
環状の配列構造は「リングバッファ」と称され、該リン
グバッファを、データの書き込み回数が制限される不揮
発性のメモリ(例えば、EEPROM(Electri
cally ErasableProgrammabl
e Read−Only Memory)等。)上に構
成してこれにデータを順次に記憶していくにあたって
は、データの次の記憶場所を覚えておく必要がある。
【0003】しかしながら、次の記憶場所を一時的に格
納するためのメモリとして、データの書き込み制御部側
に揮発性メモリしか設けられていない場合には、電源供
給の停止とともに記憶情報(つまり、次の記憶場所)が
忘れ去られてしまうので、当該情報を不揮発性メモリに
記憶してデータの書き込みを行う度に次の書き込み場所
を更新していかなければならない。
納するためのメモリとして、データの書き込み制御部側
に揮発性メモリしか設けられていない場合には、電源供
給の停止とともに記憶情報(つまり、次の記憶場所)が
忘れ去られてしまうので、当該情報を不揮発性メモリに
記憶してデータの書き込みを行う度に次の書き込み場所
を更新していかなければならない。
【0004】そこで、図7に示すように、不揮発性メモ
リa内のN個の領域a1、a2、・・・、aNの各アド
レスを指し示すポインタPを設け、データの次の記憶場
所(アドレス)をポインタPに記憶させる方法が知られ
ており、該ポインタPの領域としては、不揮発性メモリ
a内の領域の一部が割り当てられる。
リa内のN個の領域a1、a2、・・・、aNの各アド
レスを指し示すポインタPを設け、データの次の記憶場
所(アドレス)をポインタPに記憶させる方法が知られ
ており、該ポインタPの領域としては、不揮発性メモリ
a内の領域の一部が割り当てられる。
【0005】そして、不揮発性メモリaの領域a1とa
Nとが繋がるように、ポインタ制御を行う、つまり、領
域aNの次の記憶場所としてポインタPが領域a1を指
し示すように巡回的な制御を行うことで、リングバッフ
ァを構成することが可能となる。
Nとが繋がるように、ポインタ制御を行う、つまり、領
域aNの次の記憶場所としてポインタPが領域a1を指
し示すように巡回的な制御を行うことで、リングバッフ
ァを構成することが可能となる。
【0006】
【発明が解決しようとする課題】ところで、上記リング
バッファにデータを繰り返し書き込む場合において、メ
モリデバイスに固有の制限に起因してデータの書き込み
回数に上限(以下、上限値を「M」と記す。)がある
と、このようなメモリデバイスを上記メモリaに使用し
たときには、各領域にはM回だけデータを書き込むこと
が可能である。
バッファにデータを繰り返し書き込む場合において、メ
モリデバイスに固有の制限に起因してデータの書き込み
回数に上限(以下、上限値を「M」と記す。)がある
と、このようなメモリデバイスを上記メモリaに使用し
たときには、各領域にはM回だけデータを書き込むこと
が可能である。
【0007】しかしながら、メモリ領域においてデータ
の次の記憶場所を格納するポインタPについても同様に
M回のデータ書き込みしか行うことができないので、リ
ングバッファの各領域(上記a1乃至aN)への書き込
み回数が、「M/N」回に制限されてしまう(つまり、
リングバッファの巡回数が「M/N」回となる。)とい
う問題がある。例えば、M=20、N=10とすると、
M/N=2となり、リングバッファを2巡しか使用でき
ないことになる。よって、リングバッファの各構成領域
についてその書き込み回数が未だM回に達しておらず、
さらにデータの書き込みが可能であるにもかかわらず、
ポインタの領域に対する書き込み回数がM回に達したた
めに、それ以上のリングバッファへのデータ書き込みが
できなくなるので、不揮発性メモリの利用効率が低く、
また、ポインタに割り当てた領域だけに書き込み回数の
大半が集中し、メモリの使用寿命が短くなる等の不都合
がある。
の次の記憶場所を格納するポインタPについても同様に
M回のデータ書き込みしか行うことができないので、リ
ングバッファの各領域(上記a1乃至aN)への書き込
み回数が、「M/N」回に制限されてしまう(つまり、
リングバッファの巡回数が「M/N」回となる。)とい
う問題がある。例えば、M=20、N=10とすると、
M/N=2となり、リングバッファを2巡しか使用でき
ないことになる。よって、リングバッファの各構成領域
についてその書き込み回数が未だM回に達しておらず、
さらにデータの書き込みが可能であるにもかかわらず、
ポインタの領域に対する書き込み回数がM回に達したた
めに、それ以上のリングバッファへのデータ書き込みが
できなくなるので、不揮発性メモリの利用効率が低く、
また、ポインタに割り当てた領域だけに書き込み回数の
大半が集中し、メモリの使用寿命が短くなる等の不都合
がある。
【0008】本発明は、不揮発性メモリを使ってリング
バッファを構成するにあたってポインタによる位置制御
を不要にし、各記憶領域へのデータ書き込み回数の均等
化及び書き込み回数の増大を図ることを課題とする。
バッファを構成するにあたってポインタによる位置制御
を不要にし、各記憶領域へのデータ書き込み回数の均等
化及び書き込み回数の増大を図ることを課題とする。
【0009】
【課題を解決するための手段】本発明は上記した課題を
解決するために、下記(イ)及び(ロ)に示す手段を設
けたものである。
解決するために、下記(イ)及び(ロ)に示す手段を設
けたものである。
【0010】(イ)前回のデータを記憶させた記憶場所
を検索するための識別情報をデータとともにリングバッ
ファを構成する記憶領域に書き込むデータ書き込み手
段。
を検索するための識別情報をデータとともにリングバッ
ファを構成する記憶領域に書き込むデータ書き込み手
段。
【0011】(ロ)リングバッファの各記憶領域から上
記識別情報を読み出して、隣接する記憶領域の間で識別
情報の不一致が認められる場合には、当該不一致の認め
られるメモリ境界を探して、その次に位置する記憶場所
から新たなデータを書き込むようにデータ書き込み手段
に対して書き込み位置を指示し、また、隣接する記憶領
域の間で識別情報の不一致が認められない場合には、リ
ングバッファの先頭に位置する記憶場所から新たなデー
タを前回までとは異なる識別情報とともに書き込むよう
にデータ書き込み手段に対して書き込み位置を指示する
識別情報検索/書き込み位置指定手段。
記識別情報を読み出して、隣接する記憶領域の間で識別
情報の不一致が認められる場合には、当該不一致の認め
られるメモリ境界を探して、その次に位置する記憶場所
から新たなデータを書き込むようにデータ書き込み手段
に対して書き込み位置を指示し、また、隣接する記憶領
域の間で識別情報の不一致が認められない場合には、リ
ングバッファの先頭に位置する記憶場所から新たなデー
タを前回までとは異なる識別情報とともに書き込むよう
にデータ書き込み手段に対して書き込み位置を指示する
識別情報検索/書き込み位置指定手段。
【0012】従って、本発明によれば、リングバッファ
の各記憶領域にデータとともに記憶される識別情報を検
索することによって、データを次に書き込むべき位置を
把握することができるので、不揮発性メモリ上にポイン
タの領域を設ける必要がない。
の各記憶領域にデータとともに記憶される識別情報を検
索することによって、データを次に書き込むべき位置を
把握することができるので、不揮発性メモリ上にポイン
タの領域を設ける必要がない。
【0013】
【発明の実施の形態】図1は、本発明に係るデータ書き
込み装置の基本構成を示すものである。
込み装置の基本構成を示すものである。
【0014】データ書き込み装置1においては、データ
の書き込み回数に制限のある不揮発性メモリ上にリング
バッファ2が構成され、該リングバッファ2を構成する
各記憶領域2a、2a、・・・に対して巡回的にデータ
を書き込むための制御が行われる。
の書き込み回数に制限のある不揮発性メモリ上にリング
バッファ2が構成され、該リングバッファ2を構成する
各記憶領域2a、2a、・・・に対して巡回的にデータ
を書き込むための制御が行われる。
【0015】記憶領域2aのデータ構造としては、例え
ば、図示するように、番地情報であるアドレスAi(i
=1、2、・・・)が付与された記憶領域2a内をさら
に2つの格納域B1と格納域B2とに分け、格納域B1
には、前回のデータを記憶させた記憶場所を検索するた
めの識別情報を格納し、格納域B2には、書き込み対象
であるデータを格納するようにした構造が挙げられる
が、識別情報の格納場所をデータの記憶域の先頭位置に
限る必要はなく、要は識別情報とデータとが区別可能な
状態で同一の記憶領域に格納されるのであれば如何なる
データ構造を用いても構わない。
ば、図示するように、番地情報であるアドレスAi(i
=1、2、・・・)が付与された記憶領域2a内をさら
に2つの格納域B1と格納域B2とに分け、格納域B1
には、前回のデータを記憶させた記憶場所を検索するた
めの識別情報を格納し、格納域B2には、書き込み対象
であるデータを格納するようにした構造が挙げられる
が、識別情報の格納場所をデータの記憶域の先頭位置に
限る必要はなく、要は識別情報とデータとが区別可能な
状態で同一の記憶領域に格納されるのであれば如何なる
データ構造を用いても構わない。
【0016】データは、指令手段3からの書き込み指令
によって、先ず、データ書き込み手段4に送られた後、
上記した識別情報とともにリングバッファ2の記憶領域
2aに順次に(図1の時計回り方向の矢印CWを参
照。)書き込まれる。
によって、先ず、データ書き込み手段4に送られた後、
上記した識別情報とともにリングバッファ2の記憶領域
2aに順次に(図1の時計回り方向の矢印CWを参
照。)書き込まれる。
【0017】その際、データをリングバッファ2に対し
て新規に書き込みたい場合に、該データをどの記憶領域
に格納すべきかを管理しているのが識別情報検索/書き
込み位置指定手段5である。これは、リングバッファ2
の各記憶領域2aから上記識別情報を読み出して下記の
ようにデータの次の書き込み位置を決定する。
て新規に書き込みたい場合に、該データをどの記憶領域
に格納すべきかを管理しているのが識別情報検索/書き
込み位置指定手段5である。これは、リングバッファ2
の各記憶領域2aから上記識別情報を読み出して下記の
ようにデータの次の書き込み位置を決定する。
【0018】(i)隣接する記憶領域の間で識別情報の
不一致が認められる場合には、当該不一致の認められる
メモリ境界を探して、その次に位置する記憶場所から新
たなデータを書き込むようにデータ書き込み手段4に対
して書き込み位置を指示する (ii)隣接する記憶領域の間で識別情報の不一致が認
められない場合には、リングバッファの先頭に位置する
記憶場所から新たなデータを前回までとは異なる識別情
報とともに書き込むようにデータ書き込み手段4に対し
て書き込み位置を指示する。
不一致が認められる場合には、当該不一致の認められる
メモリ境界を探して、その次に位置する記憶場所から新
たなデータを書き込むようにデータ書き込み手段4に対
して書き込み位置を指示する (ii)隣接する記憶領域の間で識別情報の不一致が認
められない場合には、リングバッファの先頭に位置する
記憶場所から新たなデータを前回までとは異なる識別情
報とともに書き込むようにデータ書き込み手段4に対し
て書き込み位置を指示する。
【0019】例えば、上記した識別情報を、「1」又は
「0」の2値化された情報とする方法(つまり、データ
の最上位に1ビットデータを付加したデータ構造を用い
る。)を採用した場合には、リングバッファ2へのデー
タを書き込みを始める前に、全ての識別情報を「0」に
初期化しておき、リングバッファ2へのデータの書き込
みが一巡するまでの間、データを書き込む度にその識別
情報として「1」を書き込めば良い。これによって、以
前にデータが書き込まれた記憶領域2a1の格納域B1
に「1」が書き込まれており、当該記憶領域の次の記憶
領域2a2の格納域B1には「0」が書き込まれている
場合に、両記憶領域の境界がメモリ境界であると判断さ
れて、データの新たな書き込みは記憶領域2a2に対し
て行われる。
「0」の2値化された情報とする方法(つまり、データ
の最上位に1ビットデータを付加したデータ構造を用い
る。)を採用した場合には、リングバッファ2へのデー
タを書き込みを始める前に、全ての識別情報を「0」に
初期化しておき、リングバッファ2へのデータの書き込
みが一巡するまでの間、データを書き込む度にその識別
情報として「1」を書き込めば良い。これによって、以
前にデータが書き込まれた記憶領域2a1の格納域B1
に「1」が書き込まれており、当該記憶領域の次の記憶
領域2a2の格納域B1には「0」が書き込まれている
場合に、両記憶領域の境界がメモリ境界であると判断さ
れて、データの新たな書き込みは記憶領域2a2に対し
て行われる。
【0020】但し、このままでは、リングバッファへの
データ書き込みが一巡すると記憶領域の識別情報が全て
「1」だけとなってしまい、これ以後メモリ境界を検索
することができなくなるので、リングバッファの先頭番
地を予め決めておいて、リングバッファへのデータ書き
込みが一巡した後では、リングバッファの先頭番地から
順にデータを書き込む度に、これまでの識別情報「1」
に対してビット反転させた識別情報「0」を書き込むよ
うにすれば良い(その詳細については後述する。)。
データ書き込みが一巡すると記憶領域の識別情報が全て
「1」だけとなってしまい、これ以後メモリ境界を検索
することができなくなるので、リングバッファの先頭番
地を予め決めておいて、リングバッファへのデータ書き
込みが一巡した後では、リングバッファの先頭番地から
順にデータを書き込む度に、これまでの識別情報「1」
に対してビット反転させた識別情報「0」を書き込むよ
うにすれば良い(その詳細については後述する。)。
【0021】データ読み込み手段6は、指令手段3から
の読み込み指令によって、リングバッファ2の記憶領域
から情報を読み込んでこれを取り出すために設けられて
いる。尚、その際、データ読み込み手段6が上記識別情
報とともにデータを読み込んだ後、両者を区分けして識
別情報を識別情報検索/書き込み位置指定手段5に送出
する形態や、識別情報検索/書き込み位置指定手段5が
記憶領域から識別情報を直接読み取って管理する形態等
が挙げられる。
の読み込み指令によって、リングバッファ2の記憶領域
から情報を読み込んでこれを取り出すために設けられて
いる。尚、その際、データ読み込み手段6が上記識別情
報とともにデータを読み込んだ後、両者を区分けして識
別情報を識別情報検索/書き込み位置指定手段5に送出
する形態や、識別情報検索/書き込み位置指定手段5が
記憶領域から識別情報を直接読み取って管理する形態等
が挙げられる。
【0022】図2は、図1の構成を具現化するための一
般的なハードウェア構成を示すものであり、操作入力や
情報表示を行うユーザーインターフェース部7を通して
システム制御用コンピュータ8に指示された内容に従っ
て制御対象9の動作や状態が制御される。尚、本発明に
関する限り制御対象9についての制約は何もなく、機構
的な駆動部を有するアクチュエータや回路制御下に置か
れるレーザー装置等、様々な対象の制御に適用可能であ
る。
般的なハードウェア構成を示すものであり、操作入力や
情報表示を行うユーザーインターフェース部7を通して
システム制御用コンピュータ8に指示された内容に従っ
て制御対象9の動作や状態が制御される。尚、本発明に
関する限り制御対象9についての制約は何もなく、機構
的な駆動部を有するアクチュエータや回路制御下に置か
れるレーザー装置等、様々な対象の制御に適用可能であ
る。
【0023】制御中枢としてのシステム制御用コンピュ
ータ8は、ユーザーインターフェース部7や制御対象9
の制御を司っており、その内部には揮発性メモリが設け
られている。つまり、システム制御用コンピュータ8へ
の電源供給が行われている限り当該メモリの内容は保持
される。しかし、システム制御用コンピュータ8への電
源供給が止まりメモリ内容が保持されない場合であって
も、記憶しておきたいデータの格納領域を確保するため
に、不揮発性メモリ10が付設されており、上記したリ
ングバッファ2はこの不揮発性メモリ10上に構成され
る。
ータ8は、ユーザーインターフェース部7や制御対象9
の制御を司っており、その内部には揮発性メモリが設け
られている。つまり、システム制御用コンピュータ8へ
の電源供給が行われている限り当該メモリの内容は保持
される。しかし、システム制御用コンピュータ8への電
源供給が止まりメモリ内容が保持されない場合であって
も、記憶しておきたいデータの格納領域を確保するため
に、不揮発性メモリ10が付設されており、上記したリ
ングバッファ2はこの不揮発性メモリ10上に構成され
る。
【0024】尚、本構成において取り扱う情報としては
どのようなデータであっても構わないが、動作例につい
てのより具体的な描像が得られるように、以下ではデー
タとして、ユーザーインターフェース部7からの操作履
歴に関する情報(つまり、ユーザーが行ったキー操作等
の情報。)をとり挙げ、これらを操作順に不揮発性メモ
リ10に格納する例について説明する。
どのようなデータであっても構わないが、動作例につい
てのより具体的な描像が得られるように、以下ではデー
タとして、ユーザーインターフェース部7からの操作履
歴に関する情報(つまり、ユーザーが行ったキー操作等
の情報。)をとり挙げ、これらを操作順に不揮発性メモ
リ10に格納する例について説明する。
【0025】また、説明の簡単化を考慮して、不揮発性
メモリ10には、図3に示すように、10個の記憶領域
10_i(i=1〜10)が用意されており、各記憶領
域10_iには、1個の操作履歴情報を記憶させること
ができるものとする。
メモリ10には、図3に示すように、10個の記憶領域
10_i(i=1〜10)が用意されており、各記憶領
域10_iには、1個の操作履歴情報を記憶させること
ができるものとする。
【0026】この比較的少数のメモリを有効に利用する
ために不揮発性メモリ10上にリングバッファ2を構成
する(つまり、各記憶領域10_iにアドレスAi(i
=1〜10)をそれぞれ付与したとすると、リングバッ
ファが一巡したときにA10の次の記憶場所がA1に示
す場所(リングバッファの先頭)となる。)と、ユーザ
ーが過去に行った操作の履歴情報を10個分リングバッ
ファに記憶することができる。尚、各記憶領域10_i
には、操作履歴情報とこれに付加される付加情報(上記
した識別情報に相当する。)とを1組みにしたデータを
記憶させることができるものとする。但し、各記憶領域
10_iへのデータの書き込み回数にはその上限値Mが
あり、この値を越えるデータ書き込みは許されない。
ために不揮発性メモリ10上にリングバッファ2を構成
する(つまり、各記憶領域10_iにアドレスAi(i
=1〜10)をそれぞれ付与したとすると、リングバッ
ファが一巡したときにA10の次の記憶場所がA1に示
す場所(リングバッファの先頭)となる。)と、ユーザ
ーが過去に行った操作の履歴情報を10個分リングバッ
ファに記憶することができる。尚、各記憶領域10_i
には、操作履歴情報とこれに付加される付加情報(上記
した識別情報に相当する。)とを1組みにしたデータを
記憶させることができるものとする。但し、各記憶領域
10_iへのデータの書き込み回数にはその上限値Mが
あり、この値を越えるデータ書き込みは許されない。
【0027】上記の付加情報は、記憶領域10_iに対
して最後にデータの書き込みを行った場所を探すために
必要とされ、該付加情報を読み出すことによって次回の
データ書き込みを行うべき記憶領域10_iが決定され
る。
して最後にデータの書き込みを行った場所を探すために
必要とされ、該付加情報を読み出すことによって次回の
データ書き込みを行うべき記憶領域10_iが決定され
る。
【0028】図4はリングバッファへのデータの書き込
み状況について時間順序を追って示したものである。
尚、付加情報としては最低2つの状態を示すことが可能
な情報量が必要であり、本例では付加情報として「0」
又は「1」の2つの状態値を用い、図には当該情報だけ
についての経時変化を示している。
み状況について時間順序を追って示したものである。
尚、付加情報としては最低2つの状態を示すことが可能
な情報量が必要であり、本例では付加情報として「0」
又は「1」の2つの状態値を用い、図には当該情報だけ
についての経時変化を示している。
【0029】付加情報の書き込み方法に関するアルゴリ
ズムは下記の(1)乃至(5)に示す通りである。
ズムは下記の(1)乃至(5)に示す通りである。
【0030】(1)先ず、各記憶領域内の付加情報を全
て「0」に初期化する (2)操作の履歴情報を記憶領域に書き込む度に付加情
報「1」を書き込んでいく (3)リングバッファが一巡すると、各記憶領域内の付
加情報が全て「1」となるので、次の記憶領域(リング
バッファの先頭)からは、操作の履歴情報を記憶領域に
書き込む度に付加情報「0」を書き込んでいく (4)リングバッファが一巡すると、各記憶領域内の付
加情報が全て「0」となるので、次の記憶領域からは上
記(2)の手順に戻る (5)記憶領域へのデータの書き込み回数が上限値に達
するまで上記(2)乃至(4)の手順を繰り返す。
て「0」に初期化する (2)操作の履歴情報を記憶領域に書き込む度に付加情
報「1」を書き込んでいく (3)リングバッファが一巡すると、各記憶領域内の付
加情報が全て「1」となるので、次の記憶領域(リング
バッファの先頭)からは、操作の履歴情報を記憶領域に
書き込む度に付加情報「0」を書き込んでいく (4)リングバッファが一巡すると、各記憶領域内の付
加情報が全て「0」となるので、次の記憶領域からは上
記(2)の手順に戻る (5)記憶領域へのデータの書き込み回数が上限値に達
するまで上記(2)乃至(4)の手順を繰り返す。
【0031】図4において黒塗りで示す部分は次に操作
履歴情報を書き込むべき位置を示しており、付加情報
「1」が書き込まれた記憶領域の次に位置する記憶領域
の付加情報が「0」である場合に当該記憶領域に新たな
操作履歴情報が順次に書き込まれていく様子が示されて
いる。そして、リングバッファが一巡すると、次の記憶
場所、つまり、記憶領域10_1からは付加情報「0」
を書き込んでいく。これにより次に操作履歴情報を書き
込むべき場所は、付加情報が「0」から「1」に変化す
るメモリ境界の次に来る記憶領域となる。
履歴情報を書き込むべき位置を示しており、付加情報
「1」が書き込まれた記憶領域の次に位置する記憶領域
の付加情報が「0」である場合に当該記憶領域に新たな
操作履歴情報が順次に書き込まれていく様子が示されて
いる。そして、リングバッファが一巡すると、次の記憶
場所、つまり、記憶領域10_1からは付加情報「0」
を書き込んでいく。これにより次に操作履歴情報を書き
込むべき場所は、付加情報が「0」から「1」に変化す
るメモリ境界の次に来る記憶領域となる。
【0032】これ以後は、リングバッファが一巡する度
に、付加情報を「0」から「1」へ又は「1」から
「0」へと交互に切り替えていけば良い。
に、付加情報を「0」から「1」へ又は「1」から
「0」へと交互に切り替えていけば良い。
【0033】このようにリングバッファへのデータの書
き込みが一巡した後で、新たにデータの書き込みを行う
際に、前回書き込んだ付加情報(識別情報)に対してビ
ット反転を施した情報をデータとともに記憶場所に記憶
させるように制御すると、ポインタを用いることなくデ
ータの次の書き込み位置を管理することができ、しかも
簡単な識別情報をデータに付加するだけで済むという利
点がある。尚、識別情報に関するビット反転処理は、識
別情報検索/書き込み位置指定手段5によりリングバッ
ファが一巡したと判断されたときに当該手段からデータ
書き込み手段4に送出される信号によって行われる。
き込みが一巡した後で、新たにデータの書き込みを行う
際に、前回書き込んだ付加情報(識別情報)に対してビ
ット反転を施した情報をデータとともに記憶場所に記憶
させるように制御すると、ポインタを用いることなくデ
ータの次の書き込み位置を管理することができ、しかも
簡単な識別情報をデータに付加するだけで済むという利
点がある。尚、識別情報に関するビット反転処理は、識
別情報検索/書き込み位置指定手段5によりリングバッ
ファが一巡したと判断されたときに当該手段からデータ
書き込み手段4に送出される信号によって行われる。
【0034】図5及び図6はシステム制御用コンピュー
タ8における処理例を示すフローチャート図であり、図
5はデータの書き込み処理の流れを示し、図6はデータ
の書き込み開始位置の検出手順を示している。
タ8における処理例を示すフローチャート図であり、図
5はデータの書き込み処理の流れを示し、図6はデータ
の書き込み開始位置の検出手順を示している。
【0035】図5において、先ず、ステップS1ではリ
ングバッファの初期化を行う。つまり、全記憶領域内の
付加情報を「0」に初期化する。
ングバッファの初期化を行う。つまり、全記憶領域内の
付加情報を「0」に初期化する。
【0036】そして、次ステップS2ではシステム制御
用コンピュータ8内に設けられた揮発性メモリの内容が
消去されているか否かを判断し、そうであればステップ
S3に進み、消去されていなければステップS4に進
む。
用コンピュータ8内に設けられた揮発性メモリの内容が
消去されているか否かを判断し、そうであればステップ
S3に進み、消去されていなければステップS4に進
む。
【0037】ステップS3では、リングバッファにおい
てデータ(操作履歴情報)を次に書き込むべき位置をセ
ットする。この位置の検出については、図6に示すよう
に、ステップS1でデータの読み出し位置をリングバッ
ファの先頭(つまり、記憶領域10_1)にセットした
後、次ステップS2で読み出し対象である記憶領域に書
き込まれた付加情報を読み出し、該情報の内容が前回読
み出した付加情報の内容と同じであるか否かについて次
ステップS3で判断する。
てデータ(操作履歴情報)を次に書き込むべき位置をセ
ットする。この位置の検出については、図6に示すよう
に、ステップS1でデータの読み出し位置をリングバッ
ファの先頭(つまり、記憶領域10_1)にセットした
後、次ステップS2で読み出し対象である記憶領域に書
き込まれた付加情報を読み出し、該情報の内容が前回読
み出した付加情報の内容と同じであるか否かについて次
ステップS3で判断する。
【0038】そして、今回の付加情報と前回の付加情報
が同じあれば次ステップS4に進むが、相違する場合に
はステップS5に進み、現在の読み出し位置、つまり、
前ステップS2で付加情報を読み出した記憶領域10_
iの位置をデータの新たな書き込み場所とする。
が同じあれば次ステップS4に進むが、相違する場合に
はステップS5に進み、現在の読み出し位置、つまり、
前ステップS2で付加情報を読み出した記憶領域10_
iの位置をデータの新たな書き込み場所とする。
【0039】ステップS4では、リングバッファの最後
に到達したか否か、つまり、付加情報を読み出した位置
がリングバッファの先頭からカウントして10番目に来
たか否かを判断し、そうであれば、リングバッファが一
巡したと判断してステップS6に進み、リングバッファ
の先頭をデータの新たな書き込み場所とする。また、リ
ングバッファが一巡しないのであれば、ステップS7に
進み、付加情報の読み出し位置を次の位置に進めて(読
み出しアドレスのインクリメント「Ai→Ai+1」)
からステップS2に戻る。
に到達したか否か、つまり、付加情報を読み出した位置
がリングバッファの先頭からカウントして10番目に来
たか否かを判断し、そうであれば、リングバッファが一
巡したと判断してステップS6に進み、リングバッファ
の先頭をデータの新たな書き込み場所とする。また、リ
ングバッファが一巡しないのであれば、ステップS7に
進み、付加情報の読み出し位置を次の位置に進めて(読
み出しアドレスのインクリメント「Ai→Ai+1」)
からステップS2に戻る。
【0040】こうして、新たなデータの書き込み位置の
検索及び設定が行われる。
検索及び設定が行われる。
【0041】図5においてステップS4では、前ステッ
プS3でセットされた書き込み位置にデータを書き込
む。つまり、操作履歴情報とともに識別情報(「1」又
は「0」)が記憶領域に記憶される。
プS3でセットされた書き込み位置にデータを書き込
む。つまり、操作履歴情報とともに識別情報(「1」又
は「0」)が記憶領域に記憶される。
【0042】そして、次ステップS5では、リングバッ
ファにおける最後尾に達したか否かを判断する。即ち、
前ステップS4での書き込み位置が記憶領域10_10
のアドレスであるか否かによってリングバッファが一巡
したかどうかを判定し、そうであれば次ステップS6に
進み、次回以降に書き込むべき付加情報を反転させる。
つまり、前回までの付加情報が「0」である場合には次
回から「1」にし、又は前回までの付加情報が「1」で
ある場合には次回から「0」にした後ステップS7に進
む。
ファにおける最後尾に達したか否かを判断する。即ち、
前ステップS4での書き込み位置が記憶領域10_10
のアドレスであるか否かによってリングバッファが一巡
したかどうかを判定し、そうであれば次ステップS6に
進み、次回以降に書き込むべき付加情報を反転させる。
つまり、前回までの付加情報が「0」である場合には次
回から「1」にし、又は前回までの付加情報が「1」で
ある場合には次回から「0」にした後ステップS7に進
む。
【0043】他方、リングバッファが一巡する前であれ
ば、ステップS6を経ることなくステップS7に進む。
ば、ステップS6を経ることなくステップS7に進む。
【0044】ステップS7では、データ(操作履歴情報
と付加情報)の書き込み位置を次の位置に進めた後、ス
テップS2に戻る。
と付加情報)の書き込み位置を次の位置に進めた後、ス
テップS2に戻る。
【0045】尚、リングバッファに対して最後にデータ
の書き込みを行った記憶領域を付加情報に基づいて一旦
検索した後は、当該位置情報又はその次の記憶領域の位
置情報をシステム制御用コンピュータ8内の揮発性メモ
リ上の記憶領域に順次に記憶させて更新していけば、次
の電源供給停止までの間、不揮発性メモリ10の記憶領
域の付加情報をデータ書き込み時に毎回検索する必要が
なくなる。また、このことは、データ読み出しにおいて
も同様であり、システム制御用コンピュータ8内の揮発
性メモリ上の記憶領域に記憶された位置情報を用いて、
最後に書き込みをしたデータを容易に取り出すことがで
きる。
の書き込みを行った記憶領域を付加情報に基づいて一旦
検索した後は、当該位置情報又はその次の記憶領域の位
置情報をシステム制御用コンピュータ8内の揮発性メモ
リ上の記憶領域に順次に記憶させて更新していけば、次
の電源供給停止までの間、不揮発性メモリ10の記憶領
域の付加情報をデータ書き込み時に毎回検索する必要が
なくなる。また、このことは、データ読み出しにおいて
も同様であり、システム制御用コンピュータ8内の揮発
性メモリ上の記憶領域に記憶された位置情報を用いて、
最後に書き込みをしたデータを容易に取り出すことがで
きる。
【0046】以上のように、データの次の書き込み位置
は、付加情報のみに基づいて検索することができ、全て
の付加情報が同じ内容である場合にはリングバッファが
一巡したと判断されてリングバッファの先頭がデータの
次の書き込み位置となる。また、リングバッファが一巡
する前においては、隣接する付加情報が互いに相違する
メモリ境界を探すことでデータの次の書き込み位置を知
ることができる。
は、付加情報のみに基づいて検索することができ、全て
の付加情報が同じ内容である場合にはリングバッファが
一巡したと判断されてリングバッファの先頭がデータの
次の書き込み位置となる。また、リングバッファが一巡
する前においては、隣接する付加情報が互いに相違する
メモリ境界を探すことでデータの次の書き込み位置を知
ることができる。
【0047】しかして、本発明によれば、データの次の
書き込み位置を保持するためのポインタを不揮発性メモ
リ上に用意してこれにデータの次の記憶場所を示す位置
情報を書き込む必要がなくなるので、リングバッファを
構成する各記憶領域に対してデータの書き込み可能回数
がM回となり、また、各記憶領域へのデータの書き込み
回数が平均化される。
書き込み位置を保持するためのポインタを不揮発性メモ
リ上に用意してこれにデータの次の記憶場所を示す位置
情報を書き込む必要がなくなるので、リングバッファを
構成する各記憶領域に対してデータの書き込み可能回数
がM回となり、また、各記憶領域へのデータの書き込み
回数が平均化される。
【0048】
【発明の効果】以上に記載したところから明らかなよう
に、請求項1や請求項2に係る発明によれば、前回のデ
ータを記憶させた記憶場所を検索するための識別情報を
データと混在させてリングバッファの各記憶領域に書き
込んでおくことによって、ポインタによる位置制御を不
要にし、各記憶領域へのデータ書き込み回数の均等化及
び記憶領域にデータを書き込むことのできる回数を増や
すことができるので、書き込み回数に制約があるメモリ
について利用効率を高めることが可能となる。
に、請求項1や請求項2に係る発明によれば、前回のデ
ータを記憶させた記憶場所を検索するための識別情報を
データと混在させてリングバッファの各記憶領域に書き
込んでおくことによって、ポインタによる位置制御を不
要にし、各記憶領域へのデータ書き込み回数の均等化及
び記憶領域にデータを書き込むことのできる回数を増や
すことができるので、書き込み回数に制約があるメモリ
について利用効率を高めることが可能となる。
【0049】また、請求項3や請求項4に係る発明によ
れば、リングバッファへのデータの書き込みが一巡する
度に、識別情報のビット反転を繰り返すことによって、
識別情報の状態値を最低で2つ用意するだけで、データ
の次の書き込み位置を簡単に検索することができる。
れば、リングバッファへのデータの書き込みが一巡する
度に、識別情報のビット反転を繰り返すことによって、
識別情報の状態値を最低で2つ用意するだけで、データ
の次の書き込み位置を簡単に検索することができる。
【図1】本発明に係る装置の基本構成を示す図である。
【図2】ハードウェア構成を示すブロック図である。
【図3】リングバッファの構成例を示す図である。
【図4】リングバッファへのデータの書き込み状況につ
いて時間順序を追って示す説明図である。
いて時間順序を追って示す説明図である。
【図5】図6とともにシステム制御用コンピュータにお
ける処理手順について説明するための図であり、本図は
データの書き込み処理例を示すフローチャート図であ
る。
ける処理手順について説明するための図であり、本図は
データの書き込み処理例を示すフローチャート図であ
る。
【図6】データの書き込み開始位置の検出手順を示すフ
ローチャート図である。
ローチャート図である。
【図7】ポインタを使った従来例についての説明図であ
る。
る。
1…データ書き込み装置、2…リングバッファ、2a…
記憶領域、4…データ書き込み手段、5…識別情報検索
/書き込み位置指定手段、10…不揮発性メモリ
記憶領域、4…データ書き込み手段、5…識別情報検索
/書き込み位置指定手段、10…不揮発性メモリ
Claims (4)
- 【請求項1】 データの書き込み回数に制限のある不揮
発性メモリを用いてリングバッファを構成し、これに巡
回的にデータを書き込むための、不揮発性メモリへのデ
ータ書き込み装置において、 前回のデータを記憶させた記憶場所を検索するための識
別情報をデータとともにリングバッファを構成する記憶
領域に書き込むデータ書き込み手段と、 リングバッファの各記憶領域から上記識別情報を読み出
して、隣接する記憶領域の間で識別情報の不一致が認め
られる場合には、当該不一致の認められるメモリ境界を
探して、その次に位置する記憶場所から新たなデータを
書き込むように上記データ書き込み手段に対して書き込
み位置を指示し、また、隣接する記憶領域の間で識別情
報の不一致が認められない場合には、リングバッファの
先頭に位置する記憶場所から新たなデータを前回までと
は異なる識別情報とともに書き込むように上記データ書
き込み手段に対して書き込み位置を指示する識別情報検
索/書き込み位置指定手段とを設けたことを特徴とする
不揮発性メモリへのデータ書き込み装置。 - 【請求項2】 データの書き込み回数に制限のある不揮
発性メモリを用いて構成されるリングバッファに巡回的
にデータを書き込むための、不揮発性メモリへのデータ
書き込み方法において、 前回のデータを記憶させた記憶場所を検索するための識
別情報と書き込み対象であるデータとを混在させて、リ
ングバッファの記憶領域に書き込んだ後、 リングバッファの各記憶領域から上記識別情報を読み出
して、隣接する記憶領域の間で識別情報の不一致が認め
られるか否かを判断し、当該不一致が認められる場合に
は識別情報の変化するメモリ境界を検索し、その次に位
置する記憶場所に新たなデータを書き込むようにし、ま
た、隣接する記憶領域の間で識別情報の不一致が認めら
れない場合には、リングバッファの先頭に位置する記憶
場所から新たなデータを前回までとは異なる識別情報と
ともに書き込むようした、 ことを特徴とする不揮発性メモリへのデータ書き込み方
法。 - 【請求項3】 請求項1に記載した不揮発性メモリへの
データ書き込み装置において、 リングバッファへのデータの書き込みが一巡する度に、
識別情報検索/書き込み位置指定手段からデータ書き込
み手段に送出される信号によって、前回書き込まれた識
別情報に対してビット反転を施した識別情報が新たな書
き込みデータとともに次の記憶場所に記憶されるように
したことを特徴とする不揮発性メモリへのデータ書き込
み装置。 - 【請求項4】 請求項2に記載した不揮発性メモリへの
データ書き込み方法において、 リングバッファへのデータの書き込みが一巡した後で、
新たにデータの書き込みを行う際には、前回書き込んだ
識別情報に対してビット反転を施した識別情報をデータ
とともに次の記憶場所に記憶させるようにしたことを特
徴とする不揮発性メモリへのデータ書き込み方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7703098A JPH11272444A (ja) | 1998-03-25 | 1998-03-25 | 不揮発性メモリへのデータ書き込み装置及び方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7703098A JPH11272444A (ja) | 1998-03-25 | 1998-03-25 | 不揮発性メモリへのデータ書き込み装置及び方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11272444A true JPH11272444A (ja) | 1999-10-08 |
Family
ID=13622365
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7703098A Pending JPH11272444A (ja) | 1998-03-25 | 1998-03-25 | 不揮発性メモリへのデータ書き込み装置及び方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH11272444A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006048585A (ja) * | 2004-08-09 | 2006-02-16 | Fujitsu Ltd | フラッシュメモリのアクセス方法 |
| JP2008097107A (ja) * | 2006-10-06 | 2008-04-24 | Seiko Epson Corp | データ記録装置及びその制御方法 |
| US7518944B2 (en) | 2006-06-16 | 2009-04-14 | Sanyo Electric Co., Ltd. | Memory and control unit |
-
1998
- 1998-03-25 JP JP7703098A patent/JPH11272444A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006048585A (ja) * | 2004-08-09 | 2006-02-16 | Fujitsu Ltd | フラッシュメモリのアクセス方法 |
| US7518944B2 (en) | 2006-06-16 | 2009-04-14 | Sanyo Electric Co., Ltd. | Memory and control unit |
| US7821868B2 (en) | 2006-06-16 | 2010-10-26 | Hideaki Miyamoto | Memory and control unit |
| JP2008097107A (ja) * | 2006-10-06 | 2008-04-24 | Seiko Epson Corp | データ記録装置及びその制御方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5328020B2 (ja) | メモリ装置及びメモリアクセス方法 | |
| US6154808A (en) | Method and apparatus for controlling data erase operations of a non-volatile memory device | |
| JPS6049332B2 (ja) | マイクロプログラム制御方式 | |
| JPH11272444A (ja) | 不揮発性メモリへのデータ書き込み装置及び方法 | |
| JPH11282758A (ja) | 不揮発性メモリへのデータ書き込み装置及び方法 | |
| JPH11110339A (ja) | Dmaコントローラ | |
| JPS58208994A (ja) | 不揮発性半導体記憶装置 | |
| JPS6353636A (ja) | バツフア制御装置 | |
| US7844789B2 (en) | Device for controlling access to a secured memory, comprising a synchronous attribute search circuit | |
| EP0368250B1 (en) | Apparatus for transmitting stored information | |
| US5268768A (en) | Transmitting method and transmitting apparatus of stored information of memory | |
| JP2000066960A (ja) | バックアップ方式 | |
| JP2835159B2 (ja) | 携帯可能記憶媒体 | |
| JPH1027225A (ja) | 非接触icカードのメモリ管理方式 | |
| JP4086481B2 (ja) | 算術復号化方法及び装置並びに記憶媒体 | |
| JPH11219492A (ja) | 制御信号発生器を有する移動無線機 | |
| JP2665058B2 (ja) | 波形表示装置 | |
| JP3370222B2 (ja) | シーケンサ | |
| JPH10178437A (ja) | バスライン通信エンコーダ及びその通信方法 | |
| HU183820B (en) | Method and circuit arrangement for fast rearranging digital data stored in a memory | |
| JPH0563448A (ja) | 波形発生装置 | |
| JPS60243760A (ja) | システムパラメ−タ設定方式 | |
| JP2000035809A (ja) | プログラマブル・コントローラ | |
| JPH08237084A (ja) | タイミング信号発生回路 | |
| JPH10161925A (ja) | アドレス発生方法およびアドレス発生装置 |