JPH0744582A - 時系列データ格納方法および時系列データ格納装置 - Google Patents
時系列データ格納方法および時系列データ格納装置Info
- Publication number
- JPH0744582A JPH0744582A JP20849793A JP20849793A JPH0744582A JP H0744582 A JPH0744582 A JP H0744582A JP 20849793 A JP20849793 A JP 20849793A JP 20849793 A JP20849793 A JP 20849793A JP H0744582 A JPH0744582 A JP H0744582A
- Authority
- JP
- Japan
- Prior art keywords
- data
- time
- series
- data storage
- order
- 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
Landscapes
- Tests Of Electronic Circuits (AREA)
Abstract
(57)【要約】
【目的】 限られた大きさのデータ格納領域を用いて所
望の履歴データを残しつつ新たなデータを順次記録する
ことができる時系列データ格納方法および時系列データ
格納装置を提供する。 【構成】 時系列データを記憶装置の予め確保されたデ
ータ格納領域(メモリ21)に順次取り込み、古いデー
タを新たなデータで置き換える場合において、前記時系
列データの取り込みに際して、記憶位置制御装置23に
より、データ格納領域を時系列データで順次満たした以
後は、既に前記データ格納領域に格納されているデータ
が時系列順にとびとびに残るように、古いデータを新た
なデータで置き換える。
望の履歴データを残しつつ新たなデータを順次記録する
ことができる時系列データ格納方法および時系列データ
格納装置を提供する。 【構成】 時系列データを記憶装置の予め確保されたデ
ータ格納領域(メモリ21)に順次取り込み、古いデー
タを新たなデータで置き換える場合において、前記時系
列データの取り込みに際して、記憶位置制御装置23に
より、データ格納領域を時系列データで順次満たした以
後は、既に前記データ格納領域に格納されているデータ
が時系列順にとびとびに残るように、古いデータを新た
なデータで置き換える。
Description
【0001】
【産業上の利用分野】本発明は、データの時系列記録の
分野に係り、さらに詳細には、所定のイベントの発生に
至るまでのデータの時系列的取り込みを必要とし、かつ
該イベントの発生時を予測できない場合に、限られた大
きさのデータ格納領域を用いて所望の履歴データを残し
つつ新たなデータを順次記録することができる時系列デ
ータ格納方法および時系列データ格納装置に関し、たと
えば、電気回路のブレークダウン特性の応答データの格
納に好適な上記方法および装置に関するものである。
分野に係り、さらに詳細には、所定のイベントの発生に
至るまでのデータの時系列的取り込みを必要とし、かつ
該イベントの発生時を予測できない場合に、限られた大
きさのデータ格納領域を用いて所望の履歴データを残し
つつ新たなデータを順次記録することができる時系列デ
ータ格納方法および時系列データ格納装置に関し、たと
えば、電気回路のブレークダウン特性の応答データの格
納に好適な上記方法および装置に関するものである。
【0002】
【技術背景】たとえば、総通電時間に依存して発生する
電気素子のブレークダウン現象を観測する場合には、図
13に示すように、電源(同図においては、直流電源)
01により供試素子02に試験電圧Vを継続的に印加
し、該供試素子02に流れる電流を電流計03で時々刻
々測定し、得られたデータをデータ格納装置04に順次
格納している。
電気素子のブレークダウン現象を観測する場合には、図
13に示すように、電源(同図においては、直流電源)
01により供試素子02に試験電圧Vを継続的に印加
し、該供試素子02に流れる電流を電流計03で時々刻
々測定し、得られたデータをデータ格納装置04に順次
格納している。
【0003】図14は、上記電流計03による測定デー
タを時間軸上にプロットしたもので、データ取り込み開
始時刻(電圧印加開始時刻)T0以降、一定時間間隔t
0ごとに、データが格納装置04に取り込まれ、時刻T
1においてブレークダウンが発生した様子が示されてい
る。このとき、データ格納装置04が、時刻T0から時
刻T1まで、等時間間隔t0でデータを格納するとした
とき、必要とされるデータ格納領域の大きさはブレーク
ダウン発生に至るまでの時間に依存する。すなわち、こ
の場合、上記データ格納領域の大きさは少なくとも、
{(T1−T0)/t0}個のデータを格納できる大き
さでなければならない。
タを時間軸上にプロットしたもので、データ取り込み開
始時刻(電圧印加開始時刻)T0以降、一定時間間隔t
0ごとに、データが格納装置04に取り込まれ、時刻T
1においてブレークダウンが発生した様子が示されてい
る。このとき、データ格納装置04が、時刻T0から時
刻T1まで、等時間間隔t0でデータを格納するとした
とき、必要とされるデータ格納領域の大きさはブレーク
ダウン発生に至るまでの時間に依存する。すなわち、こ
の場合、上記データ格納領域の大きさは少なくとも、
{(T1−T0)/t0}個のデータを格納できる大き
さでなければならない。
【0004】一方、一般にこのような現象を観測する際
には、上記の時間(T1−T0)は、供試素子02の種
類その他種々の条件によって大きく変動するため、あら
かじめ上記時間(T1−T0)、したがってデータ格納
領域の大きさを適切に決めることは困難である。
には、上記の時間(T1−T0)は、供試素子02の種
類その他種々の条件によって大きく変動するため、あら
かじめ上記時間(T1−T0)、したがってデータ格納
領域の大きさを適切に決めることは困難である。
【0005】このため、従来、上記の不都合に対して
は、(i)データの格納時間間隔t0を大きくしてお
く、(ii)データ格納領域として例えば磁気ディスク
装置のように十分容量の大きな記憶装置を使用する、
(iii)これら双方を併用する、等の対応策が採られ
ている。
は、(i)データの格納時間間隔t0を大きくしてお
く、(ii)データ格納領域として例えば磁気ディスク
装置のように十分容量の大きな記憶装置を使用する、
(iii)これら双方を併用する、等の対応策が採られ
ている。
【0006】しかし、上記対応策では、以下に述べるよ
うな不都合がある。 (1)(i)の方法では、時間的精度が必然的に粗くな
り、たとえばこの方法により得られたデータを利用し
て、ブレークダウンに至るまでに供試素子に与えられた
総エネルギー量を計算するような場合、得られる値の精
度が大幅に低下する等の問題がある。 (2)(ii)の方法では、大容量の記憶装置を利用し
なければならないことから、ブレークダウン特性を測定
するシステム全体のコスト増加を招く。 (3)(i),(ii)いずれの方式においても、平均
的な時間でブレークダウンが発生した場合には、かなり
の記憶容量が結局利用されないまま終り、資源の有効利
用が図れないといった問題が生じている。 (4)大容量記憶装置を利用した場合、結果として得ら
れるデータ量が必要以上に大量になる場合があり、結果
としてデータ処理,データ転送などに長時間を要するこ
とは勿論、データの保存にも大容量の記憶装置が必要に
なる等の問題がある。
うな不都合がある。 (1)(i)の方法では、時間的精度が必然的に粗くな
り、たとえばこの方法により得られたデータを利用し
て、ブレークダウンに至るまでに供試素子に与えられた
総エネルギー量を計算するような場合、得られる値の精
度が大幅に低下する等の問題がある。 (2)(ii)の方法では、大容量の記憶装置を利用し
なければならないことから、ブレークダウン特性を測定
するシステム全体のコスト増加を招く。 (3)(i),(ii)いずれの方式においても、平均
的な時間でブレークダウンが発生した場合には、かなり
の記憶容量が結局利用されないまま終り、資源の有効利
用が図れないといった問題が生じている。 (4)大容量記憶装置を利用した場合、結果として得ら
れるデータ量が必要以上に大量になる場合があり、結果
としてデータ処理,データ転送などに長時間を要するこ
とは勿論、データの保存にも大容量の記憶装置が必要に
なる等の問題がある。
【0007】
【発明の目的】本発明は、上記のような問題を解決する
ために提案されたものであって、所定のイベントの発生
に至るまでのデータの時系列的取り込みを必要とし、か
つ該イベントの発生時を予測できない場合に、限られた
大きさのデータ格納領域を用いて所望の履歴データを残
しつつ新たなデータを順次記録することができる時系列
データ格納方法および時系列データ格納装置を提供する
ことを目的とする。
ために提案されたものであって、所定のイベントの発生
に至るまでのデータの時系列的取り込みを必要とし、か
つ該イベントの発生時を予測できない場合に、限られた
大きさのデータ格納領域を用いて所望の履歴データを残
しつつ新たなデータを順次記録することができる時系列
データ格納方法および時系列データ格納装置を提供する
ことを目的とする。
【0008】
【発明の概要】本発明は、時系列データを記憶装置の予
め確保されたデータ格納領域に順次取り込み、古いデー
タを新たなデータで置き換えるための、時系列データ格
納方法および時系列データ格納装置に係るものであり、
基本的には、データ格納領域が時系列データにより満た
された場合に、既に格納されているデータを古い順に数
点毎に捨てるとともに、この古いデータが格納されてい
た番地に新たなデータを格納するものである。
め確保されたデータ格納領域に順次取り込み、古いデー
タを新たなデータで置き換えるための、時系列データ格
納方法および時系列データ格納装置に係るものであり、
基本的には、データ格納領域が時系列データにより満た
された場合に、既に格納されているデータを古い順に数
点毎に捨てるとともに、この古いデータが格納されてい
た番地に新たなデータを格納するものである。
【0009】すなわち、本発明の時系列データ格納方法
は、時系列データの取り込みに際し、データ格納領域を
時系列データで順次満たした以後は、既に前記データ格
納領域に格納されているデータが時系列順にとびとびに
残るように、古いデータを新たなデータで置き換えるこ
とを特徴とするものである。また、本発明の時系列デー
タ格納装置は、上記データの置き換え処理を行う記憶位
置制御装置を内蔵してなることを特徴とするものであ
る。
は、時系列データの取り込みに際し、データ格納領域を
時系列データで順次満たした以後は、既に前記データ格
納領域に格納されているデータが時系列順にとびとびに
残るように、古いデータを新たなデータで置き換えるこ
とを特徴とするものである。また、本発明の時系列デー
タ格納装置は、上記データの置き換え処理を行う記憶位
置制御装置を内蔵してなることを特徴とするものであ
る。
【0010】通常、最初に、データ格納領域が時系列デ
ータで満たされるまでは、データの位置的格納順序は時
系列順序と等しいが、データ格納領域が時系列データで
満たされた後には、既に格納されているデータが時系列
順でとびとびに残るように置き換えられるので、上記デ
ータの位置的格納順序は時系列順序と一致しない。
ータで満たされるまでは、データの位置的格納順序は時
系列順序と等しいが、データ格納領域が時系列データで
満たされた後には、既に格納されているデータが時系列
順でとびとびに残るように置き換えられるので、上記デ
ータの位置的格納順序は時系列順序と一致しない。
【0011】本発明の方法および装置では、予め確保さ
れるデータ格納領域は、通常半導体メモリにより構成さ
れる。本発明では、既に格納されているデータが時系列
順でとびとびに残るような処理が行われるが、この「デ
ータが時系列順でとびとびに残る」とは、「古いデータ
が時系列順にとびとびに新たなデータで置き換えられ
る」と等価である。「時系列順にとびとび」とは、たと
えば、時系列で考えて、古いデータが交互に新たなデー
タと置き換えられた結果、既に格納されているデータが
同じく交互に残るものでもよい。また、たとえば、時系
列で考えて、古いデータが2つおきに新たなデータと置
き換えられた結果、既に格納されている時系列的に連続
した2つずつの古いデータ組がとびとに残される場合で
あってもよい。
れるデータ格納領域は、通常半導体メモリにより構成さ
れる。本発明では、既に格納されているデータが時系列
順でとびとびに残るような処理が行われるが、この「デ
ータが時系列順でとびとびに残る」とは、「古いデータ
が時系列順にとびとびに新たなデータで置き換えられ
る」と等価である。「時系列順にとびとび」とは、たと
えば、時系列で考えて、古いデータが交互に新たなデー
タと置き換えられた結果、既に格納されているデータが
同じく交互に残るものでもよい。また、たとえば、時系
列で考えて、古いデータが2つおきに新たなデータと置
き換えられた結果、既に格納されている時系列的に連続
した2つずつの古いデータ組がとびとに残される場合で
あってもよい。
【0012】本発明の方法および装置は、たとえば、時
系列データが、電気素子または電気回路のブレークダウ
ン特性の応答データである場合に好ましく適用される
が、これに限定されることはなく、あるイベントが発生
することがほぼ確実である(またはその蓋然性が高い)
場合に、測定開始からイベント発生に至るまでの所定物
理量(電流の他、電圧,温度等)の測定に好ましく適用
される。また、電源異常監視装置等、過去の履歴が場合
によっては必要とされる装置にも応用されることは勿論
である。
系列データが、電気素子または電気回路のブレークダウ
ン特性の応答データである場合に好ましく適用される
が、これに限定されることはなく、あるイベントが発生
することがほぼ確実である(またはその蓋然性が高い)
場合に、測定開始からイベント発生に至るまでの所定物
理量(電流の他、電圧,温度等)の測定に好ましく適用
される。また、電源異常監視装置等、過去の履歴が場合
によっては必要とされる装置にも応用されることは勿論
である。
【0013】本発明においては、前記データ格納領域に
格納されるデータと1対1に対応する要素からなるリン
ク・リストを記憶空間内に設け、各リンク・リスト要素
には対応するデータ格納番地に格納されるデータの時系
列順序を律する値(本発明では「列順値」と言う)を与
えることができる。本発明の方法では、データ格納領域
を時系列データで満たした以後における新たなデータの
取り込みに際して、1つのデータの取り込みごとに前記
リンク・リスト要素の列順値を、格納されているデータ
の時系列順序が正しく反映されるように書き換えること
ができる。
格納されるデータと1対1に対応する要素からなるリン
ク・リストを記憶空間内に設け、各リンク・リスト要素
には対応するデータ格納番地に格納されるデータの時系
列順序を律する値(本発明では「列順値」と言う)を与
えることができる。本発明の方法では、データ格納領域
を時系列データで満たした以後における新たなデータの
取り込みに際して、1つのデータの取り込みごとに前記
リンク・リスト要素の列順値を、格納されているデータ
の時系列順序が正しく反映されるように書き換えること
ができる。
【0014】また、本発明の装置では、リンク・リスト
およびその要素の列順値を変更する列順値変更手段が記
憶位置制御装置内に設けられ、該列順値変更手段が1つ
のデータの取り込みごとにリンク・リスト要素の列順値
を書き換えることができる。なお、このリンク・リスト
が設けられる記憶空間は、前記時系列データ格納領域と
連続していてもよいし、前記記憶空間と前記時系列デー
タ格納領域とは異なる空間に存在していてもよい。
およびその要素の列順値を変更する列順値変更手段が記
憶位置制御装置内に設けられ、該列順値変更手段が1つ
のデータの取り込みごとにリンク・リスト要素の列順値
を書き換えることができる。なお、このリンク・リスト
が設けられる記憶空間は、前記時系列データ格納領域と
連続していてもよいし、前記記憶空間と前記時系列デー
タ格納領域とは異なる空間に存在していてもよい。
【0015】前記リンク・リスト要素の列順値を、1つ
のデータの取り込みごとに行う場合、全てのリンク・リ
スト要素の書き換えは必ずしも必要とはされない。たと
えば、各データに対応するリンク・リスト要素の列順値
が、次に取り込まれた、または次に取り込まれるデータ
の格納番地に対応するリンク・リスト要素を指し示すよ
うにしておく。そして、新たなデータの取り込みの際
に、直前に取り込まれたデータに対応するリンク・リス
ト要素が参照される。すなわち、該リンク・リスト要素
の列順値が指し示すリンク・リスト要素に対応する番地
に新たなデータを格納する。
のデータの取り込みごとに行う場合、全てのリンク・リ
スト要素の書き換えは必ずしも必要とはされない。たと
えば、各データに対応するリンク・リスト要素の列順値
が、次に取り込まれた、または次に取り込まれるデータ
の格納番地に対応するリンク・リスト要素を指し示すよ
うにしておく。そして、新たなデータの取り込みの際
に、直前に取り込まれたデータに対応するリンク・リス
ト要素が参照される。すなわち、該リンク・リスト要素
の列順値が指し示すリンク・リスト要素に対応する番地
に新たなデータを格納する。
【0016】このようなリンク・リストを用いて、デー
タ格納領域に格納されたデータの時系列順序を律する場
合には、数個のリンク・リスト要素の書き換えのみで足
りることになる。
タ格納領域に格納されたデータの時系列順序を律する場
合には、数個のリンク・リスト要素の書き換えのみで足
りることになる。
【0017】また、本発明による方法および装置では、
上記リンク・リストを用いることなく、新たに取り込ま
れるデータの前記時系列順序に基づき、該データの格納
番地を特定することができる。このデータの格納番地
は、データの時系列順序をパラメータとする変換関数
(変換手段)により演算される。
上記リンク・リストを用いることなく、新たに取り込ま
れるデータの前記時系列順序に基づき、該データの格納
番地を特定することができる。このデータの格納番地
は、データの時系列順序をパラメータとする変換関数
(変換手段)により演算される。
【0018】また、前記時系列順に応じた時系列データ
の置き換えは、時系列順のひとつおきに行うことができ
る。これにより、古いデータは交互に新たなデータで置
き換えられることになる。この置き換えは、上記リンク
・リストによる時系列データの置き換えによる格納方
法、および変換関数によるデータの置き換えによる格納
方法の双方に適用される。
の置き換えは、時系列順のひとつおきに行うことができ
る。これにより、古いデータは交互に新たなデータで置
き換えられることになる。この置き換えは、上記リンク
・リストによる時系列データの置き換えによる格納方
法、および変換関数によるデータの置き換えによる格納
方法の双方に適用される。
【0019】本発明のデータ格納方法では、新たに取り
込まれるデータの前記時系列順序に基づき、該データの
格納番地を特定することができる。この場合、前記デー
タ格納領域に格納されたデータが、N(データ領域に格
納されうるデータ個数)が偶数の場合には、N/2個取
り込まれるごとに、Nが奇数の場合には、(N−1)/
2個または(N+1)/2個取り込まれるごとに、デー
タの取り込み間隔を2倍することもできる。こうするこ
とで、データ格納領域に最終的に格納されている時系列
データの取り込みの時間間隔は自動拡張され、最終的に
データ格納領域に保存されるデータの時間間隔は結果的
に平均化されたものとなる。
込まれるデータの前記時系列順序に基づき、該データの
格納番地を特定することができる。この場合、前記デー
タ格納領域に格納されたデータが、N(データ領域に格
納されうるデータ個数)が偶数の場合には、N/2個取
り込まれるごとに、Nが奇数の場合には、(N−1)/
2個または(N+1)/2個取り込まれるごとに、デー
タの取り込み間隔を2倍することもできる。こうするこ
とで、データ格納領域に最終的に格納されている時系列
データの取り込みの時間間隔は自動拡張され、最終的に
データ格納領域に保存されるデータの時間間隔は結果的
に平均化されたものとなる。
【0020】
【実施例】図1は本発明を供試素子のブレークダウン特
性に適用する場合の概念図である。同図において、供試
素子02には、電源(同図においては、直流電源)01
が生成する試験電圧Vが継続的に印加されている。そし
て、電流計03は供試素子02の応答(この場合には電
流応答)を時々刻々測定し、得られたデータをディジタ
ル信号として、コンピュータ1の一部を構成するデータ
格納装置2に出力している。このデータ格納装置2に
は、予め確保された大きさのデータ格納領域(メモリ2
1で示す)と記憶位置制御装置22が内蔵されている。
性に適用する場合の概念図である。同図において、供試
素子02には、電源(同図においては、直流電源)01
が生成する試験電圧Vが継続的に印加されている。そし
て、電流計03は供試素子02の応答(この場合には電
流応答)を時々刻々測定し、得られたデータをディジタ
ル信号として、コンピュータ1の一部を構成するデータ
格納装置2に出力している。このデータ格納装置2に
は、予め確保された大きさのデータ格納領域(メモリ2
1で示す)と記憶位置制御装置22が内蔵されている。
【0021】図2は、上記データ格納装置2における処
理の一例を示すフローチャートであり、図3は図2のフ
ローチャートにより時系列データの格納を行う場合の、
データ格納装置2の内部の機能ブロックを示す図であ
る。図3において、メモリ21には所定数(同図ではN
個(ここでは偶数とする))のデータを記憶できる領域
が形成されており、記憶位置制御装置22には、メモリ
21の番地A(0)〜A(N−1)にそれぞれ1対1に
対応するN個の要素L(0)〜L(N−1)からなるリ
ンク・リスト23、および各リンク・リスト要素の列順
値を変更するための列順値変更手段24が設けられてい
る。
理の一例を示すフローチャートであり、図3は図2のフ
ローチャートにより時系列データの格納を行う場合の、
データ格納装置2の内部の機能ブロックを示す図であ
る。図3において、メモリ21には所定数(同図ではN
個(ここでは偶数とする))のデータを記憶できる領域
が形成されており、記憶位置制御装置22には、メモリ
21の番地A(0)〜A(N−1)にそれぞれ1対1に
対応するN個の要素L(0)〜L(N−1)からなるリ
ンク・リスト23、および各リンク・リスト要素の列順
値を変更するための列順値変更手段24が設けられてい
る。
【0022】なお、後述するように、リンク・リスト2
3の要素L(0)〜L(N−1)の列順は列順値変更手
段24により変更される。各要素は、この列順を律する
列順値を持っており、この値は本実施例では次の順位の
要素を特定する数値である。本実施例では、リンク・リ
スト23の列順が、L(4),L(9),L(6),・
・・である場合、L(4)の列順値を「9」、L(9)
の列順値は「6」とされる。
3の要素L(0)〜L(N−1)の列順は列順値変更手
段24により変更される。各要素は、この列順を律する
列順値を持っており、この値は本実施例では次の順位の
要素を特定する数値である。本実施例では、リンク・リ
スト23の列順が、L(4),L(9),L(6),・
・・である場合、L(4)の列順値を「9」、L(9)
の列順値は「6」とされる。
【0023】リンク・リスト23は、所定の記憶空間
(メモリ21が存在する記憶空間であると否とを問わな
い)に設けられる。また、コンピュータ1に搭載された
図示しないCPUが列順値変更手段24の役割を担うこ
ともできるし、このCPUとは別個の図示しないプロセ
ッサが上記役割を担うこともできる。
(メモリ21が存在する記憶空間であると否とを問わな
い)に設けられる。また、コンピュータ1に搭載された
図示しないCPUが列順値変更手段24の役割を担うこ
ともできるし、このCPUとは別個の図示しないプロセ
ッサが上記役割を担うこともできる。
【0024】記憶位置制御装置22は、たとえば上記C
PUから送られてるデータの格納順序情報を、番地情報
(A(0)〜A(N−1)の何れにデータを格納するか
の情報)に変換することができる。記憶位置制御装置2
2は、この変換処理を実現するために、リンク・リスト
22の特定の要素を指すポインタpを持っている。
PUから送られてるデータの格納順序情報を、番地情報
(A(0)〜A(N−1)の何れにデータを格納するか
の情報)に変換することができる。記憶位置制御装置2
2は、この変換処理を実現するために、リンク・リスト
22の特定の要素を指すポインタpを持っている。
【0025】図3において、破線矢印は、L(0)〜L
(N−1)とA(0)〜A(N−1)との間の対応関係
を示している。L(0)〜L(N−1)は、常に枝別れ
や巡回することなく、また、すべての要素が一列に結合
されている。また、L(0)〜L(N−1)の物理的な
配置順序は変化しないが、後述するように、実質上の列
順は変化する。
(N−1)とA(0)〜A(N−1)との間の対応関係
を示している。L(0)〜L(N−1)は、常に枝別れ
や巡回することなく、また、すべての要素が一列に結合
されている。また、L(0)〜L(N−1)の物理的な
配置順序は変化しないが、後述するように、実質上の列
順は変化する。
【0026】データ格納装置2の内部動作を、図2のフ
ローチャート(S1〜S13、S7′〜S9′のステッ
プからなる)に従って、順を追ってさらに詳細に説明す
る。いま、データの生成系(図1における電流計03に
相当する)から順次生成されるデータD(n)(n=
0,1,・・・)が生成されているものとする。まず、
図2のフローチャートにあるように、1点目(n=0)
からN点目(n=N−1)までのデータD(0)〜D
(N−1)が、リンク・リスト22が示す順序に従っ
て、そのままメモリ21に格納される。すなわち、デー
タD(0)の格納の開始時点でnを初期化し(n=0と
し)(S1参照)、ポインタpがリストの先頭L(0)
を指すようにしておく(S2参照)。
ローチャート(S1〜S13、S7′〜S9′のステッ
プからなる)に従って、順を追ってさらに詳細に説明す
る。いま、データの生成系(図1における電流計03に
相当する)から順次生成されるデータD(n)(n=
0,1,・・・)が生成されているものとする。まず、
図2のフローチャートにあるように、1点目(n=0)
からN点目(n=N−1)までのデータD(0)〜D
(N−1)が、リンク・リスト22が示す順序に従っ
て、そのままメモリ21に格納される。すなわち、デー
タD(0)の格納の開始時点でnを初期化し(n=0と
し)(S1参照)、ポインタpがリストの先頭L(0)
を指すようにしておく(S2参照)。
【0027】そして、コンピュータ1に1点目データD
(0)が入力されると(S3参照)、記憶位置制御装置
22はnがN−1を越えていないか否かを判断する(S
4参照)。ここで、判断が真であれば、処理はS5に、
偽であれば処理は後述するS10に移行する。いまは、
n=0であるので、処理はS5のステップに移行する。
S5では、ポインタpで示される要素に対応するメモリ
の所定位置(番地A(0))にデータD(0)を格納す
る。つぎに、ポインタpをリンク・リスト22の次の要
素(この場合には、L(1))に進める(S6参照)。
(0)が入力されると(S3参照)、記憶位置制御装置
22はnがN−1を越えていないか否かを判断する(S
4参照)。ここで、判断が真であれば、処理はS5に、
偽であれば処理は後述するS10に移行する。いまは、
n=0であるので、処理はS5のステップに移行する。
S5では、ポインタpで示される要素に対応するメモリ
の所定位置(番地A(0))にデータD(0)を格納す
る。つぎに、ポインタpをリンク・リスト22の次の要
素(この場合には、L(1))に進める(S6参照)。
【0028】ついで、データ格納装置2はS7におい
て、ポインタpがリンク・リスト22の末尾の要素(す
なわち、L(N−1))に達したか否かを判断し(S7
参照)、達しているときにはポインタpをリンク・リス
トの先頭に移動し(S8参照)、達していないときには
処理はS9に移行する。ここでは、ポインタpはL
(1)を示しているので処理はS9に移行する。そし
て、S9ではnをインクリメントし処理をS3に戻す。
て、ポインタpがリンク・リスト22の末尾の要素(す
なわち、L(N−1))に達したか否かを判断し(S7
参照)、達しているときにはポインタpをリンク・リス
トの先頭に移動し(S8参照)、達していないときには
処理はS9に移行する。ここでは、ポインタpはL
(1)を示しているので処理はS9に移行する。そし
て、S9ではnをインクリメントし処理をS3に戻す。
【0029】以後、時系列データを1点格納する毎に、
ポインタpがリンク・リスト22の次の要素を指すよう
に移動しながら、ポインタpが指しているリンク・リス
ト22の要素L(1)〜L(N−1)に対応するメモリ
21の番地A(1)〜A(N−1)にデータD(1)〜
D(N)を順次格納する。このようにして、まず1〜N
点までのデータD(0)〜D(N−1)が番地A(0)
〜A(N−1)に格納される。
ポインタpがリンク・リスト22の次の要素を指すよう
に移動しながら、ポインタpが指しているリンク・リス
ト22の要素L(1)〜L(N−1)に対応するメモリ
21の番地A(1)〜A(N−1)にデータD(1)〜
D(N)を順次格納する。このようにして、まず1〜N
点までのデータD(0)〜D(N−1)が番地A(0)
〜A(N−1)に格納される。
【0030】なお、ここまでの処理については、あらか
じめリンク・リスト22を、対応するメモリ21の番地
の昇順等に基づいてリンクしておき、データをメモリ2
1に番地順に格納するようにしてもよい。この場合に
は、ポインタpにリンク・リスト22を辿らせる処理は
不要となる。
じめリンク・リスト22を、対応するメモリ21の番地
の昇順等に基づいてリンクしておき、データをメモリ2
1に番地順に格納するようにしてもよい。この場合に
は、ポインタpにリンク・リスト22を辿らせる処理は
不要となる。
【0031】N点までのデータの格納が完了した時点
で、ポインタpが、再びリンク・リスト21の先頭要素
L(0)を指すように改める(前述したS8参照)。こ
の時点で、メモリ21、リンク・リスト22およびポイ
ンタpは図4に示すような状態になる。
で、ポインタpが、再びリンク・リスト21の先頭要素
L(0)を指すように改める(前述したS8参照)。こ
の時点で、メモリ21、リンク・リスト22およびポイ
ンタpは図4に示すような状態になる。
【0032】ここで、さらにN+1点目のデータの格納
要求があった場合、S4における判断は偽となるので、
処理はS10に移行する。S10において、新たなデー
タD(N)を、ポインタpが示すリンク・リスト22の
要素(ここでは、L(0))の次の要素(ここでは、L
(1))に対応するメモリ21の番地A(1)に格納す
る。これにより、以前にA(1)に格納されていたデー
タ(この場合には、D(1))は失われることになる。
要求があった場合、S4における判断は偽となるので、
処理はS10に移行する。S10において、新たなデー
タD(N)を、ポインタpが示すリンク・リスト22の
要素(ここでは、L(0))の次の要素(ここでは、L
(1))に対応するメモリ21の番地A(1)に格納す
る。これにより、以前にA(1)に格納されていたデー
タ(この場合には、D(1))は失われることになる。
【0033】さらに、現在ポインタpが指しているリン
ク・リスト22の要素(ここでは、L(0))の列順値
が、次の次の要素(ここでは、L(2))を指すように
該要素の内容を書き換える(S11)。また、これまで
リンク・リスト21の末尾にあった要素(ここでは、L
(N−1))が、いま新しくデータを格納した番地(こ
こでは、A(1))に対応するリンク・リスト要素(こ
こでは、L(1))を指すようにその列順値を書き換え
る(S12)。そして、リンク・リスト要素L(1)
が、リンク・リスト22の末尾要素とされる(S1
3)。
ク・リスト22の要素(ここでは、L(0))の列順値
が、次の次の要素(ここでは、L(2))を指すように
該要素の内容を書き換える(S11)。また、これまで
リンク・リスト21の末尾にあった要素(ここでは、L
(N−1))が、いま新しくデータを格納した番地(こ
こでは、A(1))に対応するリンク・リスト要素(こ
こでは、L(1))を指すようにその列順値を書き換え
る(S12)。そして、リンク・リスト要素L(1)
が、リンク・リスト22の末尾要素とされる(S1
3)。
【0034】この結果、メモリ21、リンク・リスト2
2およびポインタpは図5に示すような状態になる。な
お、リンク・リスト22の各要素の列順は、図5に見掛
け上示される列順とは異なる。実質上の列順を図6に示
す。ついで、データ格納装置2はS7′において、ポイ
ンタpがリンク・リスト22の末尾の要素から1つ手前
の要素(ここでは、L(N−2))に達したか否かを判
断し(S7′参照)、達しているときにはポインタpを
リンク・リストの先頭に移動し(S8′参照)、達して
いないときには処理はS9′に移行する。ここでは、ポ
インタpがリンク・リスト22の末尾から1つ手前の要
素に到達していないので、S7′〜S9′を介してS3
に戻される。なお、ポインタpがリンク・リスト22の
末尾から1つ手前の要素に到達したときは、データ取り
込み点数は(N+N/2)である。
2およびポインタpは図5に示すような状態になる。な
お、リンク・リスト22の各要素の列順は、図5に見掛
け上示される列順とは異なる。実質上の列順を図6に示
す。ついで、データ格納装置2はS7′において、ポイ
ンタpがリンク・リスト22の末尾の要素から1つ手前
の要素(ここでは、L(N−2))に達したか否かを判
断し(S7′参照)、達しているときにはポインタpを
リンク・リストの先頭に移動し(S8′参照)、達して
いないときには処理はS9′に移行する。ここでは、ポ
インタpがリンク・リスト22の末尾から1つ手前の要
素に到達していないので、S7′〜S9′を介してS3
に戻される。なお、ポインタpがリンク・リスト22の
末尾から1つ手前の要素に到達したときは、データ取り
込み点数は(N+N/2)である。
【0035】図7(A)〜(C)は、N=1024とし
た場合において、上記の処理を行い、N点目、(N+N
/2)点目、2N点目、・・・ごとに、メモリ21に格
納されているデータを時系列順に並べ直して示す図であ
る。なお、同図(A)〜(C)においては、便宜上
D()を省略し、数値のみでデータを示してしいる。た
とえば同図(C)に示すように、メモリに格納されたデ
ータのうちN/2個は、最新の連続するデータ、N/4
個は1つ置きのデータ、残るN/4個は3つ置きのデー
タである。
た場合において、上記の処理を行い、N点目、(N+N
/2)点目、2N点目、・・・ごとに、メモリ21に格
納されているデータを時系列順に並べ直して示す図であ
る。なお、同図(A)〜(C)においては、便宜上
D()を省略し、数値のみでデータを示してしいる。た
とえば同図(C)に示すように、メモリに格納されたデ
ータのうちN/2個は、最新の連続するデータ、N/4
個は1つ置きのデータ、残るN/4個は3つ置きのデー
タである。
【0036】すなわち、本実施例では、ポインタpがメ
モリ21を一巡する間に、既にメモリ21に格納されて
いるN/2点分のデータを捨てながら、新たなN/2点
のデータを格納することができる。このようにして、ポ
インタpがリンク・リスト22の末尾から1つ手前の要
素(L(N−2))に到達する度に、リストの先頭を指
すようにポインタpを設定し直す。そして、上記の処理
を繰り返すことで、データ取り込み開始からのデータを
とびとびに保存しつつ、データの取り込み終了時におい
て、データ取り込み開始から、最新のN/2個のデータ
までを常に保存しておくことができる。
モリ21を一巡する間に、既にメモリ21に格納されて
いるN/2点分のデータを捨てながら、新たなN/2点
のデータを格納することができる。このようにして、ポ
インタpがリンク・リスト22の末尾から1つ手前の要
素(L(N−2))に到達する度に、リストの先頭を指
すようにポインタpを設定し直す。そして、上記の処理
を繰り返すことで、データ取り込み開始からのデータを
とびとびに保存しつつ、データの取り込み終了時におい
て、データ取り込み開始から、最新のN/2個のデータ
までを常に保存しておくことができる。
【0037】なお、上記実施例では、ポインタpが奇数
番目を辿るようにして、該ポインタpを移動し、ポイン
タpの次のリンク・リスト要素(すなわち、偶数番目の
リンク・リスト要素)に対応する番地のデータ書き換え
を行った。これに代えて、たとえば、ポインタpが指し
ているリンク・リスト要素(すなわち、奇数番目のリン
ク・リスト要素)に対応する番地のデータ書き換えを行
うようにしてもよい。
番目を辿るようにして、該ポインタpを移動し、ポイン
タpの次のリンク・リスト要素(すなわち、偶数番目の
リンク・リスト要素)に対応する番地のデータ書き換え
を行った。これに代えて、たとえば、ポインタpが指し
ているリンク・リスト要素(すなわち、奇数番目のリン
ク・リスト要素)に対応する番地のデータ書き換えを行
うようにしてもよい。
【0038】以上、Nが偶数の場合について説明した
が、奇数の場合にも上記と同様の処理による時系列デー
タ格納を行うことができる。この場合には、たとえば、
ポインタpがリンク・リスト22の奇数番目の要素を辿
るときには、偶数番目の要素に対応するデータの書き換
えが行われる。そして、ポインタpがリンク・リスト2
1の末尾(すなわち要素L(N−1))に達したとき
は、ポインタpはリンク・リスト22の2番目の要素に
移動し、今度は偶数番目の要素を辿り、奇数番目の要素
に対応するデータの書き換えが行われる。そして、ポイ
ンタpがリンク・リスト22の末尾から1つ手前の要素
(L(N−2))に達したときは、ポインタpはリンク
・リスト22の先頭に配置される。以下同様にして、奇
数番目の要素に対応するデータの書き換え、偶数番目の
要素に対応するデータの書き換えが交互に行われる。
が、奇数の場合にも上記と同様の処理による時系列デー
タ格納を行うことができる。この場合には、たとえば、
ポインタpがリンク・リスト22の奇数番目の要素を辿
るときには、偶数番目の要素に対応するデータの書き換
えが行われる。そして、ポインタpがリンク・リスト2
1の末尾(すなわち要素L(N−1))に達したとき
は、ポインタpはリンク・リスト22の2番目の要素に
移動し、今度は偶数番目の要素を辿り、奇数番目の要素
に対応するデータの書き換えが行われる。そして、ポイ
ンタpがリンク・リスト22の末尾から1つ手前の要素
(L(N−2))に達したときは、ポインタpはリンク
・リスト22の先頭に配置される。以下同様にして、奇
数番目の要素に対応するデータの書き換え、偶数番目の
要素に対応するデータの書き換えが交互に行われる。
【0039】以上の説明では、N点目以降のデータを格
納するための番地は、リンク・リスト22の要素を一つ
おきに選ぶ方法によって決定していたが、これは本発明
においては本質的ではなく、たとえば、リンク・リスト
22の要素を2つおきに辿る方法でも構わないし、ある
いは、特殊なアルゴリズムを用いて、状況に応じて選ぶ
要素を決定しても構わない。これらは、観測の対象とさ
れているデータ列のうち、どの部分が最も本質的に重要
かに応じて決めることができる。
納するための番地は、リンク・リスト22の要素を一つ
おきに選ぶ方法によって決定していたが、これは本発明
においては本質的ではなく、たとえば、リンク・リスト
22の要素を2つおきに辿る方法でも構わないし、ある
いは、特殊なアルゴリズムを用いて、状況に応じて選ぶ
要素を決定しても構わない。これらは、観測の対象とさ
れているデータ列のうち、どの部分が最も本質的に重要
かに応じて決めることができる。
【0040】また、格納すべきデータが時系列データで
あった場合、そのデータの測定間隔t0は、必ずしも一
定である必要はない。たとえば、上記の実施例におい
て、ポインタpがリンク・リスト22の末尾のひとつ前
の要素(L(N−2))に到達する度に測定間隔t0を
2倍に引き延ばしてゆけば、測定期間が終了した時点で
メモリ21に格納されているデータ列の測定間隔は、測
定終了時において、見かけ上、図8(A)に示すよう
に、測定期間の全域に亙って、等間隔ないしその2倍の
間隔となり得る。なお、この2倍の間隔となるのは、ポ
ンタpがリンク・リスト22の中程に存在しているとき
に測定が終了したために、本来間引きがなされるはずで
あったデータが残っているからである。
あった場合、そのデータの測定間隔t0は、必ずしも一
定である必要はない。たとえば、上記の実施例におい
て、ポインタpがリンク・リスト22の末尾のひとつ前
の要素(L(N−2))に到達する度に測定間隔t0を
2倍に引き延ばしてゆけば、測定期間が終了した時点で
メモリ21に格納されているデータ列の測定間隔は、測
定終了時において、見かけ上、図8(A)に示すよう
に、測定期間の全域に亙って、等間隔ないしその2倍の
間隔となり得る。なお、この2倍の間隔となるのは、ポ
ンタpがリンク・リスト22の中程に存在しているとき
に測定が終了したために、本来間引きがなされるはずで
あったデータが残っているからである。
【0041】これは、メモリ22に格納されたデータ
が、Nが偶数の場合には、N/2個取り込まれるごと
に、Nが奇数の場合には、(N−1)/2個取り込まれ
るごとに、データの取り込み間隔を2倍することを意味
している。
が、Nが偶数の場合には、N/2個取り込まれるごと
に、Nが奇数の場合には、(N−1)/2個取り込まれ
るごとに、データの取り込み間隔を2倍することを意味
している。
【0042】一方、データ格納時の測定間隔t0を常に
一定に保っておけば、測定終了時における見かけ上のサ
ンプリング間隔は、図8(B)に示すように、測定期間
の前半では粗で、後半において密になる。
一定に保っておけば、測定終了時における見かけ上のサ
ンプリング間隔は、図8(B)に示すように、測定期間
の前半では粗で、後半において密になる。
【0043】図9(A)〜(D)は、時定数の異なる減
衰曲線を、サンプリング間隔1ms,データ点数15点
でサンプリングした場合を示す図である。同図は(A)
はイベントが一番早く発生した場合を示しており、
(D)はイベントが一番遅く発生した場合を示してい
る。これらの図からわかるように、イベント発生までの
時間(全サンプリング期間)が長くなるにしたがって、
見かけ上のサンプリング間隔(すなわち、メモリに残さ
れているデータのサンプリング間隔)が粗になる。これ
は、全測定期間の変化に応じてサンプリング間隔が自動
的に調整されることを意味しており、全測定期間が短け
れば短い程見かけ上のサンプリング間隔も短くなるし、
逆に全測定期間が長ければ長い程見かけ上のサンプリン
グ間隔も長くなる。なお、図9の各図において、サンプ
リング間隔が測定終了直前において必ずしも最密でない
のは(特に同図(B),(C)において顕著である)、
前述したようにポンタpがリンク・リスト22の中程に
存在しているときに測定が終了したために、本来間引き
がなされるはずであったデータが残ってしまっているか
らである。
衰曲線を、サンプリング間隔1ms,データ点数15点
でサンプリングした場合を示す図である。同図は(A)
はイベントが一番早く発生した場合を示しており、
(D)はイベントが一番遅く発生した場合を示してい
る。これらの図からわかるように、イベント発生までの
時間(全サンプリング期間)が長くなるにしたがって、
見かけ上のサンプリング間隔(すなわち、メモリに残さ
れているデータのサンプリング間隔)が粗になる。これ
は、全測定期間の変化に応じてサンプリング間隔が自動
的に調整されることを意味しており、全測定期間が短け
れば短い程見かけ上のサンプリング間隔も短くなるし、
逆に全測定期間が長ければ長い程見かけ上のサンプリン
グ間隔も長くなる。なお、図9の各図において、サンプ
リング間隔が測定終了直前において必ずしも最密でない
のは(特に同図(B),(C)において顕著である)、
前述したようにポンタpがリンク・リスト22の中程に
存在しているときに測定が終了したために、本来間引き
がなされるはずであったデータが残ってしまっているか
らである。
【0044】サンプリング間隔を自動的に調整する方法
は、たとえば、本発明を電気素子のブレークダウン現象
の観測に利用する場合に、ブレークダウン発生前後のデ
ータを特に密な時間間隔で得たい場合などに有効であ
る。
は、たとえば、本発明を電気素子のブレークダウン現象
の観測に利用する場合に、ブレークダウン発生前後のデ
ータを特に密な時間間隔で得たい場合などに有効であ
る。
【0045】ところで、ブレークダウンが発生するまで
の時間が長い場合には、図10に示すように、データ取
り込み開始時に近いデータが全くなくなってしまう場合
もある。これを防止するためには、たとえば、一定のタ
イミング毎に、ポインタpが動く範囲をリンク・リスト
要素の先頭側から制限していくことで、履歴データが完
全に消去されないようにすることができる。
の時間が長い場合には、図10に示すように、データ取
り込み開始時に近いデータが全くなくなってしまう場合
もある。これを防止するためには、たとえば、一定のタ
イミング毎に、ポインタpが動く範囲をリンク・リスト
要素の先頭側から制限していくことで、履歴データが完
全に消去されないようにすることができる。
【0046】以上の説明では、記憶位置制御装置6にお
いて、リンク・リスト22を採用した方法について記述
したが、これとは別に、リンク・リスト22を用いるこ
となく、代わりに測定データの順序番号nを、メモリ2
1の番地に変換する関数を用いて記憶位置制御装置2を
構成することも可能である。以下、測定データの順序番
号nを、メモリ21の番地に変換する関数を用いた実施
例について説明する。
いて、リンク・リスト22を採用した方法について記述
したが、これとは別に、リンク・リスト22を用いるこ
となく、代わりに測定データの順序番号nを、メモリ2
1の番地に変換する関数を用いて記憶位置制御装置2を
構成することも可能である。以下、測定データの順序番
号nを、メモリ21の番地に変換する関数を用いた実施
例について説明する。
【0047】前述したように、本発明の要点は、データ
記憶領域が順次格納するデータで満たされる時点で、過
去のデータをとびとびに残すように、それまでに格納さ
れていたデータの一部を捨て、それによって得られた領
域に新たなデータを格納してゆくことである。以下、便
宜上、このデータの一部を捨て去る操作をここでは、
「間引き操作」と呼ぶことにする。 この実施例では、
間引操作を何回か実施した後で、格納されるデータに番
号を振り、その番号と実際のメモリの番地との対応を得
る関数を求めようとするものである。
記憶領域が順次格納するデータで満たされる時点で、過
去のデータをとびとびに残すように、それまでに格納さ
れていたデータの一部を捨て、それによって得られた領
域に新たなデータを格納してゆくことである。以下、便
宜上、このデータの一部を捨て去る操作をここでは、
「間引き操作」と呼ぶことにする。 この実施例では、
間引操作を何回か実施した後で、格納されるデータに番
号を振り、その番号と実際のメモリの番地との対応を得
る関数を求めようとするものである。
【0048】図11は、所定数(同図では偶数N個)の
データを記憶できる領域(番地A(0)〜A(N−
1))を示しており、時系列データは、これらの領域が
満たされるまで、メモリの番地の順序にしたがって単純
に格納される。ここで、データD(n)に振られた番号
n(n=0,1,2,・・・)と、メモリの番地A
(n)とは直接1対1に対応する。
データを記憶できる領域(番地A(0)〜A(N−
1))を示しており、時系列データは、これらの領域が
満たされるまで、メモリの番地の順序にしたがって単純
に格納される。ここで、データD(n)に振られた番号
n(n=0,1,2,・・・)と、メモリの番地A
(n)とは直接1対1に対応する。
【0049】次に、メモリがデータD(0)〜D(N−
1)で満たされた時点で、既に格納済みのデータを、時
系列順に1点おきに捨てる(すなわち、間引き操作を行
なう)。間引いた結果、有効になるデータだけを選ん
で、それらのデータに対して順序番号n′を振ると、
n′と間引く前のデータの順序番号nとの関係は、デー
タ格納装置21の容量をNとして、以下のように表され
る。
1)で満たされた時点で、既に格納済みのデータを、時
系列順に1点おきに捨てる(すなわち、間引き操作を行
なう)。間引いた結果、有効になるデータだけを選ん
で、それらのデータに対して順序番号n′を振ると、
n′と間引く前のデータの順序番号nとの関係は、デー
タ格納装置21の容量をNとして、以下のように表され
る。
【0050】
【数1】n=2n′ (ただし、n′<N/2)
【0051】さて、こうして順序番号を振り直せば、図
12に示すように、n′を新たに格納されるデータに対
しても続けて割り当てることにより、n′≧N/2の順
序番号に対応する記憶要素に対して、新たなデータを格
納することが可能になる。この範囲におけるn′の値
を、元のnに対応づける関数は一般に以下のようにな
る。
12に示すように、n′を新たに格納されるデータに対
しても続けて割り当てることにより、n′≧N/2の順
序番号に対応する記憶要素に対して、新たなデータを格
納することが可能になる。この範囲におけるn′の値
を、元のnに対応づける関数は一般に以下のようにな
る。
【0052】
【数2】n=2n′mod N+1(Nが偶数の場合) n=2n′mod N (Nが奇数の場合)
【0052】ここで、modは、モジュロ演算子であ
り、2n′は常に2N以下であるため、mod演算子
は、単純な引き算で代用可能である。また、2n′は常
に偶数であるから、2n′−Nの偶/奇は、Nの偶/奇
と一致する。その結果、Nが偶数のときに全体に1を加
える操作は、2n′を2進数で表示した時の最下位ビッ
トを1にする操作と等価である。これらを考慮して、上
式を書き直してみると、以下のようになる。なお、|
は、最下位ビットを立てるための論理和の演算子である
とする。
り、2n′は常に2N以下であるため、mod演算子
は、単純な引き算で代用可能である。また、2n′は常
に偶数であるから、2n′−Nの偶/奇は、Nの偶/奇
と一致する。その結果、Nが偶数のときに全体に1を加
える操作は、2n′を2進数で表示した時の最下位ビッ
トを1にする操作と等価である。これらを考慮して、上
式を書き直してみると、以下のようになる。なお、|
は、最下位ビットを立てるための論理和の演算子である
とする。
【0054】
【数3】n=(2n′−N)|1
【0055】以上から、式1と式3をまとめて書き直せ
ば、以下のようになる。
ば、以下のようになる。
【0056】
【数4】n=2n′(2n′<Nの場合) n=(2n′−N)|1(2n′≧Nの場合)
【0057】ここまでは、全く間引きを指定されない状
態から一回目の間引きを行なった場合について説明して
きたが、これを一般化すると、全く同様のことが、m回
目の間引きに対する、データに与えられた順序番号と、
m−1回目の間引きに対する順序番号との間に成立す
る。いま、m−1回目の間引きを行なった時にその回に
対して定義されたデータの順序番号をnとし、データn
を実際のメモリに格納する際の番地A(n)が、ある関
数fを用いて、以下のように与えられるとする。
態から一回目の間引きを行なった場合について説明して
きたが、これを一般化すると、全く同様のことが、m回
目の間引きに対する、データに与えられた順序番号と、
m−1回目の間引きに対する順序番号との間に成立す
る。いま、m−1回目の間引きを行なった時にその回に
対して定義されたデータの順序番号をnとし、データn
を実際のメモリに格納する際の番地A(n)が、ある関
数fを用いて、以下のように与えられるとする。
【0058】
【数5】A(n)=f(m−1,n)
【0059】すると、その後、m回目の間引きを行なっ
た後のデータに与えられる順序番号n′は、数4によっ
てnと関係づけられるから、結局m回目の間引きに対す
るメモリの番地は、以下の式で与えられる。
た後のデータに与えられる順序番号n′は、数4によっ
てnと関係づけられるから、結局m回目の間引きに対す
るメモリの番地は、以下の式で与えられる。
【0060】
【数6】f(m,n′)=f(m−1,2n′)
(2n′<Nの場合) f(m,n′)=f(m−1,(2n′−N)|1)
(2n′≧Nの場合)
(2n′<Nの場合) f(m,n′)=f(m−1,(2n′−N)|1)
(2n′≧Nの場合)
【0061】さらに、m=0の場合には、まだ間引きが
行なわれていないということであり、この時には関数f
は、変換を行なわないから、次のようになる。
行なわれていないということであり、この時には関数f
は、変換を行なわないから、次のようになる。
【0062】
【数7】f(0,n)=n
【0063】数6と数7とをまとめることにより、関数
f(m,n)は、次のように定義される。
f(m,n)は、次のように定義される。
【0064】
【数8】f(m,n)=n (m=0
の場合) f(m,n)=f(m−1,2n) (m>0且つ2n
<Nの場合) f(m,n)=f(m−1,(2n−N)|1)(m>
0且つ2n≧Nの場合)
の場合) f(m,n)=f(m−1,2n) (m>0且つ2n
<Nの場合) f(m,n)=f(m−1,(2n−N)|1)(m>
0且つ2n≧Nの場合)
【0065】以上で説明したような関数fを、記憶位置
制御装置の中に実現し、また、同装置の中で、間引きの
実施回数をカウントしておくことにより、順次格納を要
求される度にfの値を計算すれば、メモリにおける番地
を適切に得ることが可能である。
制御装置の中に実現し、また、同装置の中で、間引きの
実施回数をカウントしておくことにより、順次格納を要
求される度にfの値を計算すれば、メモリにおける番地
を適切に得ることが可能である。
【0066】以下に、C言語で記述したf関数のプログ
ラムを示す。ただし、上記f関数をfold、上記メモ
リに格納しうるデータ数Nをsizeとしている。とし
ている。 #include <stdlib.h> #include <stdio.h> int size; extern int fold(int, int); int main() { int m, n; scanf("%d",&size); while(scanf("%d %d", &m, &n)==2) pritf("fold(%d, %d) = %d\n", m, n, fold(m, n); return(0); } int fold(int m, int n); { if (m==0) return(n); if (2*n <size) return(fold(m-1,2*n)); }
ラムを示す。ただし、上記f関数をfold、上記メモ
リに格納しうるデータ数Nをsizeとしている。とし
ている。 #include <stdlib.h> #include <stdio.h> int size; extern int fold(int, int); int main() { int m, n; scanf("%d",&size); while(scanf("%d %d", &m, &n)==2) pritf("fold(%d, %d) = %d\n", m, n, fold(m, n); return(0); } int fold(int m, int n); { if (m==0) return(n); if (2*n <size) return(fold(m-1,2*n)); }
【0067】上記プログラムの実行結果(size=8
とした場合において、m,nを変化させた場合のf値)
は、 となる。
とした場合において、m,nを変化させた場合のf値)
は、 となる。
【0068】f関数は、配列の各要素を参照するたび
に、言い換えるならサンプリング測定においては一点の
測定のたびに計算される必要がある。また、mが増すに
つれて計算の所要時間も、O{m}の程度であるが、確
実に増加する。このため、特にサンプリング間隔が短い
場合の処理速度が問題となる。
に、言い換えるならサンプリング測定においては一点の
測定のたびに計算される必要がある。また、mが増すに
つれて計算の所要時間も、O{m}の程度であるが、確
実に増加する。このため、特にサンプリング間隔が短い
場合の処理速度が問題となる。
【0069】しかし、サンプリング間隔を間引きのたび
に、2倍にする方法を採用した場合には、以下に述べる
ような利点がある。 (1)間引き処理の回数mに対して、サンプリング間隔
はO{2m}で広がるのに対して、f関数の計算時間
は、O{m}でしか増えないので、mが大きくなって
も、測定に支障を来すことはない。 (2)サンプリング間隔が指数関数的に引き延ばされて
行く結果、少ない間引き動作の回数で、長いサンプリン
グ期間に対応できる。たとえば、m=10で、実効サン
プリング間隔は、最小サンプリング間隔の1000倍に
もなる。したっがって、mが緩やかにしか増えないた
め、f関数の計算時間もそれほど大きくはならない。
に、2倍にする方法を採用した場合には、以下に述べる
ような利点がある。 (1)間引き処理の回数mに対して、サンプリング間隔
はO{2m}で広がるのに対して、f関数の計算時間
は、O{m}でしか増えないので、mが大きくなって
も、測定に支障を来すことはない。 (2)サンプリング間隔が指数関数的に引き延ばされて
行く結果、少ない間引き動作の回数で、長いサンプリン
グ期間に対応できる。たとえば、m=10で、実効サン
プリング間隔は、最小サンプリング間隔の1000倍に
もなる。したっがって、mが緩やかにしか増えないた
め、f関数の計算時間もそれほど大きくはならない。
【0070】なお、f関数の高速化のためには、あるm
に対するf(m,n)の値を、nに対するテーブルとし
て持っておき、これを用いてf(m+1,n)を計算す
るとこともできる。
に対するf(m,n)の値を、nに対するテーブルとし
て持っておき、これを用いてf(m+1,n)を計算す
るとこともできる。
【0071】以上述べた実施例では、供試素子に流れる
電流を測定する場合について説明したが、当業者によれ
ば、本発明の新規な開示事実および長所から実質的に逸
脱することなく、これらの実施例に対して多くの修正等
を加えることが可能であることは容易に理解できよう。
たとえば、本発明の技術は時系列データ格納装置内に複
数のデータ記憶領域を設けておき、異なる測定系(たと
えば、電流,温度,電圧等の測定系)に対して1つの記
憶位置制御装置を設けて使用することができる。また、
本発明は、電源異常監視装置に使用することもできる。
市販のものの場合、過去の履歴を必ずしも必要とせず、
異常が発生した場合、異常時近傍のデータとタイムマー
クとが異常解析の有力資料となるが、本発明ではそのよ
うな技術とは異なり、履歴を残しつつデータを保存して
おくことができるので、異常原因の解析等を効率良く行
うことができる。さらに、音声および/または画像の記
録装置、コンピュータを使用した種々の時系列データの
記録装置などにも使用して、イベント発生前の履歴を効
率よく再生する装置を構成するのにも有効と考えられ
る。したがって、このような修正態様は全て、特許請求
の範囲の記載により確定される本発明の範囲内に含まれ
るものである。
電流を測定する場合について説明したが、当業者によれ
ば、本発明の新規な開示事実および長所から実質的に逸
脱することなく、これらの実施例に対して多くの修正等
を加えることが可能であることは容易に理解できよう。
たとえば、本発明の技術は時系列データ格納装置内に複
数のデータ記憶領域を設けておき、異なる測定系(たと
えば、電流,温度,電圧等の測定系)に対して1つの記
憶位置制御装置を設けて使用することができる。また、
本発明は、電源異常監視装置に使用することもできる。
市販のものの場合、過去の履歴を必ずしも必要とせず、
異常が発生した場合、異常時近傍のデータとタイムマー
クとが異常解析の有力資料となるが、本発明ではそのよ
うな技術とは異なり、履歴を残しつつデータを保存して
おくことができるので、異常原因の解析等を効率良く行
うことができる。さらに、音声および/または画像の記
録装置、コンピュータを使用した種々の時系列データの
記録装置などにも使用して、イベント発生前の履歴を効
率よく再生する装置を構成するのにも有効と考えられ
る。したがって、このような修正態様は全て、特許請求
の範囲の記載により確定される本発明の範囲内に含まれ
るものである。
【0072】
【発明の効果】以上の如く本発明によれば、以下の効果
を奏することができる。 (1)記憶容量を、安全を見越して大きくとる、といっ
た資源の非効率的な利用を回避することができる。した
がって、記憶装置に要するコストを低減することができ
る。もちろん、データ測定の時間分解能を犠牲にするこ
となく、データ取り込み開始時からの履歴を残したまま
効率的なデータ格納が可能となる。 (2)結果として得られるデータ量は、予め確保された
データ格納領域に限られるので、データ量が必要以上に
膨大になったり、データの抽出や処理が煩雑になること
はなくなった。 (3)要求される記憶期間の長さに応じて最適なデータ
の記憶間隔を自動調整することが可能になる。
を奏することができる。 (1)記憶容量を、安全を見越して大きくとる、といっ
た資源の非効率的な利用を回避することができる。した
がって、記憶装置に要するコストを低減することができ
る。もちろん、データ測定の時間分解能を犠牲にするこ
となく、データ取り込み開始時からの履歴を残したまま
効率的なデータ格納が可能となる。 (2)結果として得られるデータ量は、予め確保された
データ格納領域に限られるので、データ量が必要以上に
膨大になったり、データの抽出や処理が煩雑になること
はなくなった。 (3)要求される記憶期間の長さに応じて最適なデータ
の記憶間隔を自動調整することが可能になる。
【図1】本発明を供試素子のブレークダウン特性に適用
する場合の概念図である。
する場合の概念図である。
【図2】図1に示すデータ格納装置における処理の一例
を示すフローチャートである。
を示すフローチャートである。
【図3】図2のフローチャートにより時系列データの格
納を行う場合のデータ格納装置内部の機能ブロックを示
す図である。
納を行う場合のデータ格納装置内部の機能ブロックを示
す図である。
【図4】図3の機能ブロックの動作を詳細に示す図であ
り、メモリにN点までのデータの格納が完了した時点に
おけるメモリ,リンク・リストおよびポインタの状態を
示す図である。
り、メモリにN点までのデータの格納が完了した時点に
おけるメモリ,リンク・リストおよびポインタの状態を
示す図である。
【図5】図4の状態のメモリに新たなデータが取り込ま
れたときの、メモリ21,リンク・リストおよびポイン
タの状態を示す図である。
れたときの、メモリ21,リンク・リストおよびポイン
タの状態を示す図である。
【図6】リンク・リストの各要素の実質上の列順を示す
図である。
図である。
【図7】(A)〜(C)は、N=1024とした場合に
おいて、メモリに格納されているデータを時系列順に並
べ直して示す図である。
おいて、メモリに格納されているデータを時系列順に並
べ直して示す図である。
【図8】(A)は本発明において、データ列の測定間隔
が平均下された場合を示す図、(B)は本発明におい
て、データ列の測定間隔が測定期間の前半には粗で後半
には密となった場合を示す図である。
が平均下された場合を示す図、(B)は本発明におい
て、データ列の測定間隔が測定期間の前半には粗で後半
には密となった場合を示す図である。
【図9】(A)〜(D)は、時定数の異なる減衰曲線を
サンプリングした場合を示す図である。
サンプリングした場合を示す図である。
【図10】ブレークダウンが発生するまでの時間が長い
ために、データ取り込み開始時に近いデータが全くなく
なってしまう場合を示す図である。
ために、データ取り込み開始時に近いデータが全くなく
なってしまう場合を示す図である。
【図11】本発明において間引き操作をする場合におけ
るメモリの状態を示す図である。
るメモリの状態を示す図である。
【図12】図11において、新たなデータを格納するた
めにデータの順序番号を振り直した状態を示す図であ
る。
めにデータの順序番号を振り直した状態を示す図であ
る。
【図13】従来の技術を説明するためのブレークダウン
測定のための回路である。
測定のための回路である。
【図14】図13の回路において測定データを時間軸上
にプロットした図である。
にプロットした図である。
1 コンピュータ 2 データ格納装置 21 メモリ(データ格納領域) 22 記憶位置制御装置 23 リンク・リスト 24 列順値変更手段 A(n) 番地 D(n) 時系列データ L(n) リンク・リスト要素 p ポインタ 01 電源 02 供試素子 03 電流計
Claims (11)
- 【請求項1】 時系列データを記憶装置の予め確保され
たデータ格納領域に順次取り込み、データ領域がいっぱ
いになった後は、古いデータを新たなデータで置き換え
る時系列データ格納方法において、 前記時系列データの取り込みに際し、データ格納領域を
時系列データで順次満たした以後は、既に前記データ格
納領域に格納されているデータが時系列順にとびとびに
残るように、古いデータを新たなデータで置き換えるこ
とを特徴とする時系列データ格納方法。 - 【請求項2】 前記データ格納領域のデータ格納番地と
1対1に対応する要素からなるリンク・リストを記憶空
間内に設け、各要素には対応するデータ格納番地に格納
されるデータの時系列順序を律する列順値を与え、 データ格納領域を時系列データで満たした以後における
新たなデータの取り込みに際して、1つのデータの取り
込みごとに前記要素の列順値を、格納されているデータ
の時系列順序が正しく反映されるように書き換えること
を特徴とする請求項1に記載の時系列データ格納方法。 - 【請求項3】 新たに取り込まれるデータの前記時系列
順序に基づき、該データの格納番地を特定することを特
徴とする請求項1に記載の時系列データ格納方法。 - 【請求項4】 前記時系列順序に応じた時系列データの
置き換えを、時系列順のひとつおきに行うことを特徴と
する請求項1〜3に記載の時系列データ格納方法。 - 【請求項5】 データの取り込み間隔を可変とすること
を特徴とする請求項1〜4に記載の時系列データ格納方
法。 - 【請求項6】 前記データ格納領域に格納されたデータ
が、 N(データ領域に格納されうるデータ個数)が偶数の場
合には、N/2個取り込まれるごとに、 Nが奇数の場合には、(N−1)/2または(N+1)
/2個取り込まれるごとに、データの取り込み間隔を2
倍することを特徴とする請求項5に記載の時系列データ
格納方法。 - 【請求項7】 時系列データが、電気素子または電気回
路のブレークダウン特性の応答データであることを特徴
とする請求項1〜6に記載の時系列データ格納方法。 - 【請求項8】 時系列データを記憶装置の予め確保され
たデータ格納領域に順次取り込み、データ領域がいっぱ
いになった後は、古いデータを新たなデータで置き換え
る時系列データ格納装置において、 前記時系列データの取り込みに際し、データ格納領域を
時系列データで順次満たした以後は、既に前記データ格
納領域に格納されているデータが時系列順にとびとびに
残るように、古いデータを新たなデータで置き換える処
理を行う記憶位置制御装置を有してなることを特徴とす
る時系列データ格納装置。 - 【請求項9】 前記データ格納領域のデータ格納番地と
1対1に対応する要素からなるリンク・リスト、および
該要素の列順値を変更する列順値変更手段を記憶位置制
御装置内に設け、各要素には対応する番地に格納された
データの時系列順序を律する列順値を与えると共に、 前記列順値変更手段は、データ格納領域を時系列データ
で順次満たした以後における新たなデータの取り込みに
際して、1つのデータの取り込みごとに、格納されてい
るデータの時系列順が正しく反映されるように前記要素
の列順値を書き換えることを特徴とする請求項8に記載
の時系列データ格納装置。 - 【請求項10】 前記記憶位置制御装置を、新たに取り
込まれるデータの時系列順序に基づき、該データの格納
番地を特定する手段により構成したことを特徴とする請
求項8に記載の時系列データ格納装置。 - 【請求項11】 時系列データが、電気素子または電気
回路のブレークダウン性の応答データであることを特徴
とする請求項8〜10に記載の時系列データ格納装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20849793A JPH0744582A (ja) | 1993-07-31 | 1993-07-31 | 時系列データ格納方法および時系列データ格納装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20849793A JPH0744582A (ja) | 1993-07-31 | 1993-07-31 | 時系列データ格納方法および時系列データ格納装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0744582A true JPH0744582A (ja) | 1995-02-14 |
Family
ID=16557142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20849793A Pending JPH0744582A (ja) | 1993-07-31 | 1993-07-31 | 時系列データ格納方法および時系列データ格納装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0744582A (ja) |
-
1993
- 1993-07-31 JP JP20849793A patent/JPH0744582A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4890308B2 (ja) | メモリ用データ管理方法 | |
US4878194A (en) | Digital signal processing apparatus | |
JPH0744582A (ja) | 時系列データ格納方法および時系列データ格納装置 | |
CN116383016B (zh) | 一种磁盘状态监控及故障预测方法、装置及设备 | |
JP5176534B2 (ja) | デジタルオシロスコープ | |
JPH08166409A (ja) | 波形記憶装置 | |
JP2003240609A (ja) | データ収録装置、およびデータ蓄積記憶装置 | |
JP3348422B2 (ja) | 測定データ収集装置 | |
JPH11304843A (ja) | デジタルオシロスコープ | |
JP2987953B2 (ja) | 波形観測装置 | |
JP3339398B2 (ja) | 集積回路内部信号監視装置 | |
SU384131A1 (ru) | Устройство для накопления и обработки информации | |
JPH04329043A (ja) | パケット通信装置 | |
JP3343734B2 (ja) | トレースデータ圧縮方法およびトレースデータ圧縮方式 | |
CN115268970A (zh) | 一种电子控制单元的刷写方法、装置、设备及介质 | |
JPS60177492A (ja) | 循環型磁区メモリデバイスのアクセス制御装置 | |
JPS62212848A (ja) | フレキシブルイベントレコ−ダ | |
JPH0677029B2 (ja) | 波形記憶方法 | |
JP2014115235A5 (ja) | ||
JP4946711B2 (ja) | データ記憶方法およびデータ表示方法 | |
SU748303A1 (ru) | Устройство функционального контрол интегральных схем с функцией пам ти | |
CN116259081A (zh) | 一种半导体指纹传感器图像采集方法 | |
JPS6199864A (ja) | 超音波診断装置 | |
JPH0887318A (ja) | データ収集装置 | |
JPH02204845A (ja) | 内部動作履歴記録装置 |