(57)【特許請求の範囲】
【請求項１】
バッファに記憶された一連のデータを読み出して処理するデータ処理システムにおいて選択的に用いられる、源振が相違する第１及び第２のタイマを処理すべきデータと同期させるタイマ同期システムであって、
第１のタイマのタイムアップを検出して、第１のタイマをゼロリセットする第１のリセット手段と、
第２のタイマのタイムアップを検出して、第２のタイマをゼロリセットする第２のリセット手段と、
読み出したデータから第１のタイマの最新のタイムアップの第１の時点を判定する手段と、
データ処理を第１のタイマの出力系統に同期させている期間中、第１の時点から現在までに処理されたデータの数を検出する手段と、
検出されたデータの数に対応する時間を、第２のタイマにプリセットするプリセット手段と
を備えている、タイマ同期システム。
【請求項２】
請求項１記載のタイマ同期システムにおいて、データ処理システムは計測値をサンプリング及びバッファリングして演算処理するシステムである、タイマ同期システム。
【請求項３】
請求項１又は２記載のタイマ同期システムにおいて、データ処理システムは通信データを処理するシステムである、タイマ同期システム。
【請求項４】
請求項１〜３いずれかに記載のタイマ同期システムにおいて、第１のタイマは交流電源タイマであり、第２のタイマは水晶タイマである、タイマ同期システム。
【請求項５】
請求項１〜４いずれかに記載のタイマ同期システムにおいて、
該システムはさらに、第２のタイマの最新のタイムアップの時点を、データを蓄積するバッファにタイムアップ位置として記憶する手段を備え、
第１のリセット手段は、データ処理を第２のタイマの出力系統に同期させている状態から第１のタイマの出力系統に同期させるように切り換えたとき、バッファに記憶されたタイムアップ位置を検出した時点で第１のタイマをゼロリセットするよう構成されている、同期システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２つのタイマを処理データに同期させる同期システムに関し、より詳細には、サンプリングデータをバッファリングして演算処理するデータ処理システムにおいて用いられる、切り換えて使用される源振が相違する２つのタイマの各々を処理データに同期させるためのタイマ同期システムに関する。
【背景技術】
【０００２】
電流センサ、電力計、電力量計等の電流計測を必要とする計測機器、及び通信機器等の技術分野において、一定時間間隔毎に割り込みを発生させ、該割り込み内でサンプリングされたデータすなわちサンプリングデータをソフトウェアを用いて演算処理する場合、処理対象のサンプリングデータをメモリにバッファリングし、バッファリングされた複数のサンプリングデータを所定の時間後にまとめて演算処理することにより、処理時間を低減して効率化することができることが知られている。
【０００３】
図１は、サンプリングデータをバッファリングすることなくデータ処理を行う場合（左側）と、バッファリングあり、即ち上記したようなサンプリングデータのバッファリングをしてデータ処理を行う場合（右側）とを対比して示した図である。図１に示すように、バッファリングなしのデータ処理においては、サンプリングデータ毎（データ１〜４毎）に条件分岐判定とサンプリングデータの位置を指定するポインタ設定を行ってから、データ処理を行っている。一方、バッファリングありのデータ処理においては、データ１のデータ処理を行う前に条件分岐判定とポインタ設定とを行い、その後はポインタ位置をインクリメントするだけでデータ２〜４毎の処理を行っている。なお、データ１〜４はメモリ上に連続的に配置されているものとする。
【０００４】
図１に示した処理フローの対比図から明らかなように、分岐条件を１つにまとめることができる場合や、ポインタ設定に要する時間がポインタのインクリメントに要する時間よりも長い場合には、サンプリングデータをバッファリングしてからデータ処理を行う方が、データの処理時間を短縮することができる。さらに、バッファリングありのデータ処理は、以下の利点を有している。
・割り込み処理における処理量減少により割り込み処理時間を低減することができ、その結果、割り込み受付時間を増大することができるため、他の割り込みイベントの取りこぼしを低減することができる。
・割り込み処理において使用する変数と関数処理の減少により割り込み時のスタックメモリの消費を低減することができる。これは処理時間の低減にも寄与する。
・通常処理でのイベントタスクでまとめて処理するためにプログラムが分割されず、その結果、プログラムの可読性が向上する。
・割り込みにおいて使用する変数の減少により、通常処理との不意の変数アクセス競合を避けることができる。
【０００５】
一方、バッファリングありでデータ処理する場合、バッファリングのためのメモリ使用量が増大してしまい、また、バッファリングしてからイベントタスクにてデータ処理を行うまでの遅延時間が生じる、という問題がある。
計測機器及び通信機器等の技術分野においては、上記したような利点及び問題点を考慮して、バッファリングありでデータ処理を行うか又はバッファリングなしでデータ処理を行うかを決定し、それに応じて機器設計をすることになる。
【０００６】
図２は、従来例に係る、バッファリングなしのデータ処理の場合の、源振が相違する２つのタイマカウンタである交流電源タイマと水晶タイマとの同期処理について示している。このような２つのタイマを用いたデータ処理は、電圧計、電力計、電流計等の機器において採用されている。図２に示すように、交流電源をΔΣＡ／Ｄサンプリングし、交流電源の電圧が０となる位置、即ちゼロクロスタイミングでゼロクロスカウンタをカウントアップする。ゼロクロスカウンタは、０．５秒を計時する０．５秒交流電源タイマを構成しており、交流電源周波数に応じてゼロクロスカウンタのリセットタイミングが変更される。例えば、交流電源周波数が５０Ｈｚの場合はゼロクロスカウンタが２５にカウントアップしたときに０．５秒経過することになり、交流電源周波数が６０Ｈｚの場合はゼロクロスカウンタが３０にカウントアップしたときに０．５秒経過することになり、それに応じてゼロクロスカウンタのリセットタイミングが設定される。
【０００７】
また、０．５秒交流電源タイマに加えて、通常の初期値を０として０．５秒までカウントアップし、０．５秒毎にタイムアップにより割り込みを発生する０．５秒水晶タイマを外部タイマとして用いている。該水晶タイマは、外部からの水晶クロックを源振としてＣＰＵの機能として提供されるカウンタである。例えば、水晶タイマの分解能が２．５ｍｓの場合には、２．５ｍｓ×２００＝０．５ｓとなるから、０から２００までカウントアップすると０．５秒を計時することになる。
【０００８】
０．５秒交流電源タイマと０．５秒水晶タイマとは独立して別個に計時しており、交流電源による計時は水晶振動子を用いた計時よりも正確であるため、電力量計等の計測機器では、交流電源タイマからの計時出力を通常用いてデータ処理を行い、交流電源の停電時や交流電源周波数が変動許容範囲外である場合にのみ、０．５秒水晶タイマからの出力を採用している。しかしながら、０．５秒交流電源タイマから０．５秒水晶タイマへの変更又はその逆の変更を行う場合には、最大で０．５秒の乗り換え誤差を生じてしまう。
【０００９】
一方、特開平１０−１０４３７２号公報には時計計時用単位時間信号生成装置が記載されており、該単位時間信号生成装置は、商用電源周波数に同期する計時信号と水晶振動子に同期する計時信号とを乗り換える際の誤差を最小化することを意図して構成されている。この従来技術文献の技術を０．５秒交流電源タイマと０．５秒水晶タイマとを同期させるために適用すれば、０．５秒水晶タイマから０．５秒交流電源タイマへ乗り換える際には、０．５秒水晶タイマが２００をカウントしたタイミングで０．５秒交流電源タイマのゼロクロスカウンタを０リセットすることにより、交流電源１周期分の計時誤差で乗り換えを行うことができる。また、その逆の乗り換えの際には、０．５秒交流電源タイマであるゼロクロスカウンタが２５にカウントした時点で０．５秒水晶タイマをゼロリセットすることにより、水晶クロック１周期分の計時誤差で乗り換えを行うことができる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平１０−１０４３７２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、サンプリングデータをバッファリングありでデータ処理を行う場合に、上記した従来例の技術をサンプリングデータと外部タイマとを同期させるために適用したとしても、図３及び図４を参照して以下に説明するような問題が生じる。なお、図３及び図４で説明する例においては、サンプリング対象は５０Ｈｚ交流電源のΔΣＡ／Ｄサンプリングデータであり、源振が相違する２つのタイマとして０．５秒交流電源タイマと０．５秒水晶タイマを用いているものとする。
サンプリング周期が２ｍｓでバッファリングのサンプル数を１０とした場合、イベントタスクにてΔΣＡ／Ｄサンプリングデータを処理するまでの遅延時間は２ｍｓ×１０＝２０ｍｓとなる。上記したように、バッファリングありのデータ処理においては、このような処理タイミングの遅延時間が生じてしまうことが１つの欠点である。
【００１２】
０．５秒交流電源タイマ系の出力をデータ処理に用いている状態から０．５秒水晶タイマ系の出力に乗り換える際に、タイマを処理データに同期させるためには、０．５秒交流電源タイマのゼロクロスカウンタが交流電源のゼロクロス点を２５カウントしたタイミングで、０．５秒水晶タイマをゼロリセットする必要があるが、図３に示すように、バッファリングにより、ゼロクロスカウンタで２５回カウントする処理が遅れ、上述のように最大で２０ｍｓの誤差が生じる。
逆に、０．５秒水晶タイマ系の出力を用いている状態から０．５秒交流電源タイマ系の出力に乗り換える際に、タイマを処理データに同期させるためには、０．５秒水晶タイマが２００にカウントアップしたタイミングでゼロクロスカウンタをゼロリセットすればよいが、図４に示すように、未だカウントアップしていないゼロクロスがサンプリングバッファ内にあるため、イベントタスク処理時にゼロクロスカウンタが不要にカウントアップされることになり、この場合も最大で２０ｍｓの誤差を発生させる。
【００１３】
以上のように、バッファリングありのデータ処理を採用した場合、０．５秒交流電源タイマと０．５秒水晶タイマとを同期させて時計源振の誤差を少なくさせたとしても、バッファリングによる誤差が依然として生じてしまう。
本発明は、このような問題点を解決するためになされたものであり、その目的は、バッファリングありのデータ処理システムにおいて、該処理システムで用いる２つのタイマを同期させる際の誤差を低減させることである。
【課題を解決するための手段】
【００１４】
上記した目的を達成するために、本発明に係るタイマ同期システムは、バッファに記憶された一連のデータを読み出して処理するデータ処理システムにおいて選択的に用いられる、源振が相違する第１及び第２のタイマを処理すべきデータと同期させる。当該タイマ同期システムは、第１のタイマのタイムアップを検出して、第１のタイマをゼロリセットする第１のリセット手段と、第２のタイマのタイムアップを検出して、第２のタイマをゼロリセットする第２のリセット手段と、読み出したデータから第１のタイマの最新のタイムアップの第１の時点を判定する手段と、データ処理を第１のタイマの出力系統に同期させている期間中、第１の時点から現在までに処理されたデータの数を検出する手段と、検出されたデータの数に対応する時間を、第２のタイマにプリセットするプリセット手段と、を備えている。
【００１５】
当該タイマ同期システムにおいて、データ処理システムは、計測値をサンプリング及びバッファリングして演算処理するシステムであり、及び／又は、通信データを処理するシステムである。また、当該タイマ同期システムにおいて、第１のタイマは交流電源タイマであり、第２のタイマは水晶タイマである。加えて、当該タイマ同期システムにおいて、該システムは更に、第２のタイマの最新のタイムアップの時点を、データを蓄積するバッファにタイムアップ位置として記憶する手段を備え、第１のリセット手段は、データ処理を第２のタイマの出力系統に同期させている状態から第１のタイマの出力系統に同期させるように切り換えたとき、バッファに記憶されたタイムアップ位置を検出した時点で第１のタイマをゼロリセットするよう構成されている。
【図面の簡単な説明】
【００１６】
【図１】図１は、サンプリングデータ処理システムにおいて、サンプリングデータをバッファリングしない場合及びバッファリングする場合の処理の流れを対比して示した説明図である。
【図２】図２は、サンプリングデータ処理システムにおいて、サンプリングデータをバッファリングしない場合の誤差発生を説明するための図である。
【図３】図３は、サンプリングデータ処理システムにおいて、サンプリングデータをバッファリングする場合の誤差発生を説明するための図である。
【図４】図４は、サンプリングデータ処理システムにおいて、サンプリングデータをバッファリングする場合の誤差発生を説明するための図である。
【図５】図５は、本発明の一実施例のタイマ同期システムを備えたデータ処理システムの構成を示すブロック図である。
【図６】図６は、図５に示したタイマ同期システムにおいて、０．５秒交流電源タイマ系から０．５秒水晶タイマ系に切り換える際の本発明の原理を説明する図である。
【図７】図７は、図５に示したタイマ同期システムにおいて、０．５秒水晶タイマ系から０．５秒交流電源タイマ系に切り換える際の本発明の原理を説明する図である。
【発明を実施するための形態】
【００１７】
図５〜図７を参照して、本発明の実施例に係るタイマ同期システムを以下に詳細に説明する。なお、該タイマ同期システムとして、ゼロクロスカウンタとして構成される０．５秒交流電源タイマと外部タイマとして構成される０．５秒水晶タイマとを用いていることを前提とし、また、このようなタイマ同期システムが具備されるデータ処理システムの一例として、以下の構成を有していることを前提としている。
・５０Ｈｚ交流電源の電力量等を計測するためのデータ処理システムである。
・マイコンＣＰＵにΔΣＡ／Ｄ変換器が付属しており、サンプリング周波数が交流電源の周波数５０Ｈｚよりも高い。
・サンプリングデータをバッファリングするのに要する時間は、上記した２つのタイマのタイムアップ時間よりも短く０．５秒未満であり、連続的に所定の複数個（例えば１０個）のサンプリングデータをバッファにバッファリングする。
・交流電源をΔΣＡ／Ｄ変換したサンプリングデータの蓄積を行う蓄積データと、該サンプリングデータの処理を行うための処理バッファとを用いたダブルバッファ構成とする。
・所定の一定時間、蓄積バッファにサンプリングデータを蓄積しつつ、処理バッファに記憶したサンプリングバッファを演算処理するが、一定時間後には蓄積バッファが処理バッファとして機能し、処理バッファが蓄積バッファとして使用する。したがって、演算処理は、蓄積バッファが蓄積し終えるまでに完了する必要がある。
・処理バッファに記憶されたサンプリングデータを用いてゼロクロス点を検出し、０．５秒交流電源タイマすなわちゼロクロスカウンタをカウントアップする。
【００１８】
図５は、本発明に係るタイマ同期システム１０を備えたデータ処理システムの構成を示しており、該システムは、コンピュータソフトウェアとして構成されるが、それに限定されるものではない。図５において、２０及び３０はサンプリングデータをバッファリングするバッファを示し、これらバッファ２０及び３０は、蓄積バッファ又は処理バッファとして交互に機能する。また、４０は交流電源ＡＣからの電圧を計測する電圧計、５０は電圧計４０により計測されたアナログ値である電圧値をサンプリングしてデジタル値のサンプリングデータとして出力するΔΣＡ／Ｄ、６０は同期して切り換えられる２つのスイッチング手段を備えたバッファ切換部であり、切換制御部（不図示）からの周期的な制御信号Ｃ１により制御され、バッファ２０及び３０の一方を蓄積バッファとし他方を処理バッファとして交互に周期的に用いるための切り換えを行う。７０はサンプリングデータを処理して計測電圧、計測電流、又は計測電力等を演算して出力するデータ演算処理部である。
【００１９】
タイマ同期システム１０は、ゼロクロス検出部１１、ゼロクロスカウンタで構成させる０．５秒交流電源タイマ１２、０．５秒水晶タイマ１３、時間／データ番号変換部１４及び１５、データ番号出力切換部１６、リセット部１７、リセット・プリセット部１８を備えている。
【００２０】
ゼロクロス検出部１１は、処理バッファとして交互に機能するバッファ３０又は２０からのサンプリングデータに基づき、交流電源のゼロクロスポイントを検出してゼロクロス信号Ｓ０を生成し、０．５秒交流電源タイマ１２に出力する。
０．５秒交流電源タイマ１２は、ゼロクロス信号Ｓ０をカウントした計時信号Ｓ１を出力し、かつ、ゼロクロス信号Ｓ０を２５個カウントしたタイミングすなわち０．５秒毎に、リセット部１７からのリセット信号Ｒ１によりゼロリセットされる。
０．５秒水晶タイマ１３は、外部の水晶振動子回路から入力する一定周期の水晶クロックをカウントして計時信号Ｓ２を出力し、かつ０．５秒毎に、リセット・プリセット部１８によりゼロリセットされる。
【００２１】
時間／データ番号変換部１４及び１５は、処理バッファとしてのバッファ２０又は３０から読み出されたデータのデータ番号とデータ演算処理部７０で処理するデータ番号とが対応するようにするために、０．５秒交流電源タイマ１２及び０．５秒水晶タイマ１３からの計時信号Ｓ１及びＳ２を変換することにより、データ演算処理部７０で処理するデータのデータ番号信号Ｄ１及びＤ２を出力する。
データ番号出力切換部１６は、外部からの切換制御信号Ｃ２に応じて制御され、時間／データ番号変換部１４及び１５からのデータ番号信号Ｄ１及びＤ２を切り換えて、データ演算処理部７０に供給する。なお、電力量計等においては、上述のように、通常は、交流電源に依存する計時信号Ｓ１に基づいて生成されたデータ番号信号Ｄ１を用いているが、交流電源の停電時や交流電源周波数が変動許容範囲外である場合に、切換部１６を切り換え制御して、０．５秒水晶タイマ１３系のデータ番号信号Ｄ２を採用する。
【００２２】
リセット部１７は、０．５秒交流電源タイマ１２からの計時信号Ｓ１が０．５秒を示す度にリセット信号Ｒ１を発生して該タイマ１２をゼロリセットし、かつ、切換制御信号Ｃ２によってデータ番号信号を０．５秒水晶タイマ１３の系統の信号Ｄ２から０．５秒交流電源タイマ１２の系統の信号Ｄ１に切り換えたときに、０．５秒水晶タイマ１３がタイムアップしたタイミングに対応するデータの位置（開始位置）で、リセット信号Ｒ１を発生して０．５秒交流電源タイマ１２をゼロリセットする。
リセット・プリセット部１８は、０．５秒水晶タイマ１３からの計時信号Ｓ２が０．５秒を示す度にリセット信号Ｒ２を発生して該タイマ１３をゼロリセットし、かつ、０．５秒交流電源タイマ１２の系統での信号を用いている期間中は常に、０．５秒水晶タイマ１３に初期値（プリセット値）ＰＳをセットする。また、０．５秒水晶タイマ１３の系統での計時信号を用いている期間中は、該タイマ１３のタイムアップ時点で常に、蓄積バッファに開始位置を記憶する。開始位置は、リセット部１７により検出されて０．５秒交流電源タイマ１２のリセットに用いられる。
リセット部１７及びリセット・プリセット部１８の機能について、以下により詳細に説明する。
【００２３】
図５に示したデータ処理システムにおいて、バッファ切換部６０が図示の状態、すなわち、バッファ２０にデータを蓄積しつつバッファ３０からのデータを演算処理している状態とし、そして、データ番号出力切換部１６が図示の通常の状態、すなわち、０．５秒交流電源タイマ１２の系統のサンプリング番号すなわちデータ番号信号Ｄ１を出力している状態から、切換制御信号Ｃ２により、０．５秒水晶タイマ１３の系統のデータ番号信号Ｄ２に切り換える場合について、説明する。なお、上述したように、５０Ｈｚの交流電源では、ゼロクロスカウンタすなわち０．５秒交流電源タイマ１２で２５回カウントすることにより０．５秒を計時する。
【００２４】
本来、タイマを切り換えるためには、所定の複数個（１クール）のデータのバッファ２０への蓄積中にゼロクロスカウンタが２５回カウントアップ（すなわち０．５秒計時）したときに０．５秒水晶タイマ１３をゼロクリアする必要があるが、バッファリングしていたことにより、既にこのタイミングは経過している。したがって、現在の時刻から０．５秒交流電源タイマ１２すなわちゼロクロスカウンタが２５回カウントした時刻までさかのぼり、０．５秒水晶タイマ１３をリセットする必要があるため、０．５秒水晶タイマ１３に経過時間相当を初期値（プリセット値）ＰＳとしてプリセットすればよいことが分かる。
【００２５】
この初期値は、図６において、ゼロクロスカウンタを２５回カウントアップした位置から演算処理に現在使用しているバッファ３０に記憶されているデータの演算処理の終了までの時間（ｉ）と、データを現在蓄積しているバッファ２０へのデータの蓄積開始から現在までの時間（ｉｉ）とを加算することにより得ることができ、時間（ｉ）及び（ｉｉ）は、データ数をカウントすることにより算出することができる。分解能はサンプリング周波数により決定されるが、ゼロクロスカウンタをインクリメントするゼロクロス信号Ｓ０がゼロクロス検出部１１によりΔΣＡ／Ｄサンプリングデータから算出されているため、同等の精度で算出が可能である。
【００２６】
時間（ｉ）＋（ｉｉ）に対応する初期値を検出するため、リセット・プリセット部１８は、０．５秒交流電源タイマ１２の計時信号Ｓ１及び時間／データ番号変換部１４のデータ番号信号Ｄ１を監視して、該タイマ１２が最後にリセットされた時点から現在までに処理されたデータの数を計数し、そのデータ数に対応する時間を初期値ＰＳとして０．５秒水晶タイマ１３にセットする。
【００２７】
図６の例では、時間（ｉ）＋（ｉｉ）は１０個分のサンプリングに相当し、サンプリング周期が２ｍｓの場合は、バッファリングによる誤差は２ｍｓ×１０＝２０ｍｓとなる。この誤差を０．５秒水晶タイマ１３に初期値ＰＳとして設定すると、０．５秒水晶タイマ１３の分解能が２．５ｍｓである場合、時間／データ番号変換部１５から出力される初期値は２０ｍｓ÷２．５ｍｓ＝８となり、データ番号信号Ｄ２として番号８が出力される。これにより、バッファリングによる誤差２０ｍｓを水晶タイマの分解能２．５ｍｓまで低減させることができる。
【００２８】
切換制御信号Ｃ２により、０．５秒水晶タイマ１３の系統のデータ番号信号Ｄ２を出力している状態から、０．５秒交流電源タイマ１２の系統のデータ番号信号Ｄ１に切り換える場合に備えて、図７に示すように、０．５秒水晶タイマ１３がタイムアップしたタイミングのデータの位置（データ番号に対応）を現在蓄積バッファであるバッファ２０に常に記憶しておく。この記憶は、リセット・プリセット部１８により、０．５秒水晶タイマ１３がタイムアップしたことを検出し、そのタイミングであるタイムアップ位置Ｌ０をバッファ２０に記憶することにより行われる。一定時間後、バッファ切換信号Ｃ１により、バッファ２０は処理バッファとなり、該バッファ２０に記憶されたデータが演算処理される。このとき、データ番号信号Ｄ１がデータ演算処理部７０に供給されている。データは蓄積した順に演算処理されるが、該演算処理の期間中、リセット部１７により、バッファ２０に記憶されたタイムアップ位置Ｌ０が検出されると、そのタイミングで０．５秒交流電源タイマ１２のゼロクロスカウンタをゼロリセットする。なお、切換の後、タイムアップ位置が検出されるまで、データ番号切換部１６から出力されるデータ番号信号Ｄ１が、データ演算処理部７０において無視される。
このようなタイミングでゼロクロスカウンタをゼロリセットすることにより、バッファリングによる誤差２０ｍｓを、ΔΣＡ／Ｄサンプリングの分解能の２．０ｍｓまで低減させることができる。
【００２９】
図５に示したタイマ同期システムにおいて、交流電源タイマ１２及び水晶タイマ１３とそれぞれのリセットについてまとめると、以下の通りである。
・交流電源タイマ１２の計時信号を使用しているときは常に、水晶タイマ１３に初期値ＰＳをセットし、水晶タイマ１３の計時信号を使用するように切り換えた場合には、そのまま水晶タイマの計時信号を使用する。
・水晶タイマ１３の計時信号を使用しているときは常に、蓄積バッファに該タイマ１３のタイムアップ位置を記憶し、交流電源タイマ１３の計時信号を使用するように切り換えた場合には、タイムアップ位置を開始位置とし、タイマ１２の２５回カウントを開始する。
【００３０】
なお、上記説明では、０．５秒水晶タイマ１３の分解能を２．５ｍｓとし、ΔΣＡ／Ｄサンプリングの分解能を２ｍｓとしたが、これらの分解能は水晶クロックの分解能まで細かくすることができる。
また、上記した実施例においては、２つのバッファ２０及び３０からなるダブルバッファ構成を用いたが、処理時間やメモリ容量に余裕があれば単一のバッファを用いてもよく、必要に応じて３以上のバッファを用いてもよい。なお、単一のバッファを用いた場合で、例えば、バッファリング可能なサンプリング数が１０である場合であって、ＣＰＵが全てのサンプリング数を、次のクールの１番目のサンプリングを行うまでに、処理できるほどに十分なスペックを有していない場合、６個バッファリングした状態から処理を開始する等の工夫が必要となる。
【００３１】
また、源振が相違する２つのタイマとして、上記した交流電源タイマ及び水晶タイマ以外に任意のタイマを用いてもよく、さらに、タイムアップ時間を０．５秒に限定せずに、データのサンプリング周波数等に応じて適宜に設定することができる。このとき、サンプリング間隔≦バッファリング時間≦各タイマの設定時間を満足するように設定する。タイマ時間の下限となるサンプリング間隔は、ＣＰＵの処理速度に依存するが、水晶クロックの１周期分の時間まで低減させることができ、また、タイマ時間の上限は、必要に応じて大きくすることができる。
【図１】
0006374350.tif 000002
【図２】
0006374350.tif 000003
【図３】
0006374350.tif 000004
【図４】
0006374350.tif 000005
【図５】
0006374350.tif 000006
【図６】
0006374350.tif 000007
【図７】
0006374350.tif 000008