(57)【要約】【課題】外部バスで接続された二つの制御装置のそれぞれに入力される信号間の遅延を補正する遅延補正システム及び遅延補正方法を提供すること。【解決手段】第一制御装置１に入力される第一信号Ｄ１と第一制御装置１に外部バス６を介して接続される第二制御装置２に入力される第二信号Ｄ２との間で生じる遅延を補正する遅延補正システム１００は、所定クロック数毎に第一信号Ｄ１及び第二信号Ｄ２の両信号の値を記憶領域ＤＤ１、ＤＤ２に記憶する記憶手段１２と、記憶手段１２が第一クロックタイミングＴで記憶した第一信号Ｄ１の値と該第一クロックタイミングＴ後に記憶手段１２が記憶した第二信号Ｄ２の値とを対応させる遅延補正手段１３とを備える。【選択図】図１
2008125003.tif 000002
【特許請求の範囲】
【請求項１】
第一制御装置に入力される第一信号と該第一制御装置に外部バスを介して接続される第二制御装置に入力される第二信号との間で生じる遅延を補正する遅延補正システムであって、
所定クロック数毎に前記第一信号及び前記第二信号の両信号の値を記憶領域に記憶する記憶手段と、
前記記憶手段が第一クロックタイミングで記憶した前記第一信号の値と該第一クロックタイミング後に前記記憶手段が記憶した第二信号の値とを対応させる遅延補正手段と、
を備えることを特徴とする遅延補正システム。
【請求項２】
第一制御装置に入力される第一信号と該第一制御装置に外部バスを介して接続される第二制御装置に入力される第二信号との間で生じる遅延を補正する遅延補正システムであって、
所定クロック数毎に前記第一信号及び前記第二信号の両信号の値を記憶領域に記憶する記憶手段と、
前記記憶手段が前記第一クロックタイミングで記憶した前記第一信号の値と該第一クロックタイミング後に前記記憶手段が記憶した前記第二信号の連続する複数の値に基づいて導出される値とを対応させる遅延補正手段と、
を備えることを特徴とする遅延補正システム。
【請求項３】
第一制御装置に入力される第一信号と該第一制御装置に外部バスを介して接続される第二制御装置に入力される第二信号との間で生じる遅延を補正する遅延補正方法であって、
所定クロック数毎に前記第一信号及び前記第二信号の両信号の値を記憶領域に記憶する記憶ステップと、
前記記憶ステップにおいて第一クロックタイミングで記憶した前記第一信号の値と該第一クロックタイミング後に記憶した前記第二信号の値とを対応させる遅延補正ステップと、
を備えることを特徴とする遅延補正方法。
【請求項４】
第一制御装置に入力される第一信号と該第一制御装置に外部バスを介して接続される第二制御装置に入力される第二信号との間で生じる遅延を補正する遅延補正方法であって、
所定クロック数毎に前記第一信号及び前記第二信号の両信号を記憶領域に記憶する記憶ステップと、
前記記憶ステップにおいて第一クロックタイミングで記憶した前記第一信号の値と該第一クロックタイミング後に記憶した前記第二信号の連続する複数の値に基づいて導出される値とを対応させる遅延補正ステップと、
を備えることを特徴とする遅延補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号間の遅延を補正する遅延補正システム及び遅延補正方法に関し、特に、外部バスを介して接続される二つの制御装置のそれぞれに入力される信号間の遅延を補正する遅延補正システム及び遅延補正方法に関する。
【背景技術】
【０００２】
従来、ＴＴＣ標準Ｈ．２２１のフレーム構成を有するデータの通信制御回路において二チャンネル間におけるデータ遅延の補正処理を行う遅延補正回路が知られている（例えば、特許文献１参照。）。
【０００３】
この遅延補正回路は、第一及び第二チャンネルにおける各データからマルチフレーム番号を抽出してこれら抽出したマルチフレーム番号間の差分を算出し、差分が存在すると判定した時点から、先行するチャンネルのデータを記憶しておき、その後、後続のチャンネルのマルチフレーム番号が先行するチャンネルのマルチフレーム番号に達したことを検出した時点で、記憶しておいた先行するチャンネルのデータを読み出し、二つのチャンネルに入力されたデータを対応付けて出力する。
【０００４】
この遅延補正回路は、全ての処理をハードウェアにより実現するため、ソフトウェアに
より遅延補正を行う場合に比べ、高速な遅延補正を行うことができる。
【特許文献１】特開平５−２３５８８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の遅延補正回路は、ＴＴＣ標準Ｈ．２２１のフレーム構成を有するデータの通信制御を行うためのものであり、外部バスで接続された二つの電子制御装置のそれぞれに入力される信号間の遅延を補正する場合には適用することができない。
【０００６】
上述の点に鑑み、本発明は、外部バスで接続された二つの制御装置のそれぞれに入力される信号間の遅延を補正する遅延補正システム及び遅延補正方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述の目的を達成するために、第一の発明に係る遅延補正システムは、第一制御装置に入力される第一信号と該第一制御装置に外部バスを介して接続される第二制御装置に入力される第二信号との間で生じる遅延を補正する遅延補正システムであって、所定クロック数毎に前記第一信号及び前記第二信号の両信号の値を記憶領域に記憶する記憶手段と、
前記記憶手段が第一クロックタイミングで記憶した前記第一信号の値と該第一クロックタイミング後に前記記憶手段が記憶した第二信号の値とを対応させる遅延補正手段と、を備えることを特徴とする。
【０００８】
また、第二の発明に係る遅延補正システムは、第一制御装置に入力される第一信号と該第一制御装置に外部バスを介して接続される第二制御装置に入力される第二信号との間で生じる遅延を補正する遅延補正システムであって、所定クロック数毎に前記第一信号及び前記第二信号の両信号の値を記憶領域に記憶する記憶手段と、前記記憶手段が前記第一クロックタイミングで記憶した前記第一信号の値と該第一クロックタイミング後に前記記憶手段が記憶した前記第二信号の連続する複数の値に基づいて導出される値とを対応させる遅延補正手段とを備えることを特徴とする。
【０００９】
また、第三の発明に係る遅延補正方法は、第一制御装置に入力される第一信号と該第一制御装置に外部バスを介して接続される第二制御装置に入力される第二信号との間で生じる遅延を補正する遅延補正方法であって、所定クロック数毎に前記第一信号及び前記第二信号の両信号の値を記憶領域に記憶する記憶ステップと、前記記憶ステップにおいて第一クロックタイミングで記憶した前記第一信号の値と該第一クロックタイミング後に記憶した前記第二信号の値とを対応させる遅延補正ステップと、を備えることを特徴とする。
【００１０】
また、第四の発明に係る遅延補正方法は、第一制御装置に入力される第一信号と該第一制御装置に外部バスを介して接続される第二制御装置に入力される第二信号との間で生じる遅延を補正する遅延補正方法であって、所定クロック数毎に前記第一信号及び前記第二信号の両信号の値を記憶領域に記憶する記憶ステップと、前記記憶ステップにおいて第一クロックタイミングで記憶した前記第一信号の値と該第一クロックタイミング後に記憶した前記第二信号の連続する複数の値に基づいて導出される値とを対応させる遅延補正ステップと、を備えることを特徴とする。
【発明の効果】
【００１１】
上述の手段により、本発明は、外部バスで接続された二つのＣＰＵのそれぞれに入力される信号間の遅延を補正する遅延補正システム及び遅延補正方法を提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、複数の図面を参照しながら本発明を実施するための最良の形態について説明する。
【実施例１】
【００１３】
図１は、本発明に係る遅延補正システムの構成例を示す図である。遅延補正システム１００は、メインＣＰＵ(Central  Processing  Unit)１、拡張ＩＯ(Input/Output)ボード２、Ａ／Ｄ(Analog/Digital)コンバータ３、４、及び、ＲＡＭ(Random  Access  Memory)５を有し、メインＣＰＵ１及び拡張ＩＯボード２、並びに、メインＣＰＵ１及びＲＡＭ５がそれぞれ外部バス６で接続され、メインＣＰＵ１及びＡ／Ｄコンバータ３、並びに、拡張ＩＯボード２及びＡ／Ｄコンバータ４がそれぞれ一対一でシリアル接続される。
【００１４】
メインＣＰＵ１は、入力ポート１０、１１、記憶手段１２及び遅延補正手段１３を有する制御装置であって、入力ポート１０に入力されるデジタル信号（以下、「第一デジタル入力Ｄ１」という。）をラッチし、ラッチしたデータをＲＡＭ５に格納する。
【００１５】
また、メインＣＰＵ１は、Ａ／Ｄコンバータ３を介して入力ポート１１に入力されるデジタル信号（Ａ／Ｄコンバータ３の入力ポート３１に入力されたアナログ信号（以下、「第一アナログ入力Ａ１」という。）をデジタル変換した信号）をラッチし、ラッチしたデータをＲＡＭ５に格納する。
【００１６】
拡張ＩＯボード２は、入力ポート２０、２１を有する制御装置であって、入力ポート２０に入力されるデジタル信号（以下、「第二デジタル入力Ｄ２」という。）をラッチし、外部バス６を介してラッチしたデータをメインＣＰＵ１に転送してＲＡＭ５に格納させる。
【００１７】
また、拡張ＩＯボード２は、Ａ／Ｄコンバータ４を介して入力ポート２１に入力されるデジタル信号（Ａ／Ｄコンバータ４の入力ポート４１に入力されたアナログ信号（以下、「第二アナログ信号Ａ２」という。）をデジタル変換した信号）をラッチし、外部バス６を介してラッチしたデータをメインＣＰＵ１に転送しＲＡＭ５に格納させる。
【００１８】
Ａ／Ｄコンバータ３、４は、アナログ信号をデジタル信号に変換するための回路であり、例えば、０Ｖ乃至５Ｖの電圧を０乃至６５５３５（１６桁の２進数で表現できる１０進数の最大値）の数値に変換する１６ビットＡ／Ｄコンバータである。なお、Ａ／Ｄコンバータ３、４は、それぞれ、メインＣＰＵ１、拡張ＩＯボードに内蔵されていてもよい。
【００１９】
ＲＡＭ５は、データを一時的に記憶するための揮発性記憶装置であり、例えば、キャパシタに電荷を蓄えることによりデータを記憶するＤＲＡＭ(Dynamic  RAM)等の半導体素子である。
【００２０】
外部バス６は、ＣＰＵと外部機器とを接続するための信号線であり、例えば、メインボード上のクロックジェネレータによって生成されるクロック周波数に基づいてＣＰＵと複数のデバイスとの間のデータ転送を実現させる。
【００２１】
また、外部バス６は、ＩＥＥＥ１３９４、ＵＳＢ(Universal  Serial  Bus)、ＰＣＩ(Peripheral  Component  Interconnect)Ｅｘｐｒｅｓｓ等のシリアルバスであってもよく、ＳＣＳＩ(Small  Computer  System  Interface)、ＰＣＩ等のパラレルバスであってもよい。本実施例における外部バス６は、例えば、クロック周波数３２ＭＨｚ、信号線幅１６ビットのパラレルバスであるものとする。
【００２２】
次に、メインＣＰＵ１が有する各種手段について説明する。
【００２３】
記憶手段１２は、メインＣＰＵ１が取り込んだデータをＲＡＭ５に記憶するための手段であり、例えば、メインＣＰＵ１の入力ポート１０、１１に入力されたデジタル信号をラッチし、ラッチしたデジタル信号のデータをＲＡＭ５に記憶したり、或いは、拡張ＩＯボード２の入力ポート２０、２１に入力され、拡張ＩＯボード２によりラッチされ、かつ、拡張ＩＯボード２により外部バス６を介してメインＣＰＵ１に転送されたデータをＲＡＭ５に記憶したりする。
【００２４】
遅延補正手段１３は、二つのデータ間にある遅延を補正するための手段であり、例えば、メインＣＰＵ１の入力ポート１０を介してメインＣＰＵ１に直接的に入力される第一デジタル入力Ｄ１に対する、拡張ＩＯボード２の入力ポート２０を介してメインＣＰＵ１に間接的に入力される第二デジタル入力Ｄ２の遅延を補正する。なお、第二デジタル入力Ｄ２の遅延時間は、例えば、データが転送される経路の違い（経路の長短や経由する回路の違い等をいう。）によって生ずるものである。
【００２５】
遅延補正手段１３は、例えば、第一デジタル入力Ｄ１に対する第二デジタル入力Ｄ２の遅延時間にバラツキがない場合（例えば、第二デジタル入力Ｄ２の値は、常に、第一デジタル入力Ｄ１に対し２クロック遅延してＲＡＭ５に格納される。）、その遅延時間（例えば、２クロック）を登録しておくことにより第二デジタル入力Ｄ２と２クロック前にＲＡＭ５に格納した第一デジタル入力Ｄ１とを対応付けて第二デジタル入力Ｄ２の遅延を補正する。
【００２６】
これにより、遅延補正システム１００は、メインＣＰＵ１において所定の演算を実行させる場合、第一デジタル入力Ｄ１の値と第一デジタル入力Ｄ１に対する遅延のない第二デジタル入力Ｄ２の値とを用いて演算を実行させることができる。
【００２７】
また、遅延補正手段１３は、第一デジタル入力Ｄ１に対する第二デジタル入力Ｄ２の遅延時間にバラツキがある場合にも（例えば、第二デジタル入力Ｄ２の値は、標準的には第一デジタル入力Ｄ１に対し２クロック遅延してＲＡＭ５に格納されるが（標準遅延時間）、１クロック遅延してＲＡＭ５に格納されたり（最小遅延時間）、３クロック遅延してＲＡＭ５に格納されたりする（最大遅延時間）場合がある。）、遅延補正を実行するようにしてもよい。
【００２８】
このような遅延時間のバラツキは、メインＣＰＵ１及び拡張ＩＯボード２のそれぞれのラッチタイミングのズレ、メインＣＰＵ１の内部クロックに基づいた外部バス６へのアクセスタイミングのズレ、拡張ＩＯボード２の内部クロックに基づいた外部バス６へのデータ転送タイミングのズレ、又は、それらの組み合わせにより生ずる。
【００２９】
図２は、第一デジタル入力Ｄ１に対する第二デジタル入力Ｄ２の遅延時間を説明するための図であり、上から順に、ジェネラルクロックの値（メインボードにあるクロックジェネレータが生成するクロック信号の値をいう。）、第一デジタル入力Ｄ１の値、メインＣＰＵ１による第一デジタル入力Ｄ１のラッチのタイミング、メインＣＰＵ１による第一デジタル入力Ｄ１の値のＲＡＭ５への格納タイミング、第二デジタル入力Ｄ２の値、拡張ＩＯボード２による第二デジタル入力Ｄ２のラッチのタイミング、拡張ＩＯボード２による第二デジタル入力Ｄ２の値の外部バス６への転送タイミング、及び、メインＣＰＵ１による第二デジタル入力Ｄ２の値のＲＡＭ５への格納タイミングを示す。なお、図中左から右に時間経過を示す。
【００３０】
図２が示すように、タイミングＴにおいて拡張ＩＯボード２がラッチした第二デジタル入力Ｄ２の値は、タイミングＴにおいてメインＣＰＵ１がラッチした第一デジタル入力Ｄ１の値をメインＣＰＵ１がＲＡＭ５に格納した時点（タイミング（Ｔ＋１））から、１クロック（最小遅延時間）乃至３クロック（最大遅延時間）遅れて、メインＣＰＵ１によりＲＡＭ５に格納される。
【００３１】
この場合、遅延補正手段１３は、その標準遅延時間（例えば、２クロック）を登録しておくことにより、記憶手段１２がタイミング（Ｔ＋１）で第一デジタル入力Ｄ１の値をＲＡＭ５に格納してから、１クロック（最小遅延時間）後のタイミング（Ｔ＋２）、２クロック（標準遅延時間）後のタイミング（Ｔ＋３）、及び、３クロック（最大遅延時間）後のタイミング（Ｔ＋４）のそれぞれのタイミングでＲＡＭ５に格納された連続する三つの第二デジタル入力Ｄ２の値を取得し、三つの値が全て等しい場合にその値を第二デジタル入力Ｄ２の代表値として、タイミング（Ｔ＋１）でＲＡＭ５に格納された第一デジタル入力Ｄ１の値に対応させる。
【００３２】
また、遅延補正手段１３は、三つの値の何れかが他の何れかの値と異なる場合、所定の値（例えば、前回代表値に採用された値とする。）を代表値として、タイミング（Ｔ＋１）でＲＡＭ５に格納された第一デジタル入力Ｄ１の値に対応させる。
【００３３】
これにより、遅延補正システム１００は、ラッチ時や転送時等に第二デジタル入力Ｄ２に混入するノイズを除去することができる。
【００３４】
また、遅延補正手段１３は、Ａ／Ｄコンバータ３及びメインＣＰＵ１の入力ポート１１を介してメインＣＰＵ１に直接的に入力される第一アナログ入力に対する、Ａ／Ｄコンバータ４及び拡張ＩＯボード２の入力ポート２１を介してメインＣＰＵ１に間接的に入力される第二アナログ入力Ａ２の遅延を補正することもできる。
【００３５】
図３は、第一アナログ入力に対する第二アナログ入力Ａ２の遅延時間を説明するための図であり、上から順に、ジェネラルクロックの値、第一アナログ入力の値、Ａ／Ｄコンバータ３による第一アナログ入力のデジタルデータへの変換のタイミング、メインＣＰＵ１による第一アナログ入力の値のＲＡＭ５への格納タイミング、第二アナログ入力Ａ２の値、Ａ／Ｄコンバータ４による第二アナログ入力Ａ２のデジタルデータへの変換のタイミング、拡張ＩＯボード２による第二アナログ入力Ａ２の値の外部バス６への転送タイミング、及び、メインＣＰＵ１による第二アナログ入力Ａ２の値のＲＡＭ５への格納タイミングを示す。なお、図中左から右に時間経過を示す。
【００３６】
図３が示すように、タイミングＴにおいてＡ／Ｄコンバータ４によりデジタルデータに変換される第二アナログ入力Ａ２の値は、タイミングＴにおいてＡ／Ｄコンバータ３によりデジタルデータに変換される第一アナログ入力Ａ１の値をメインＣＰＵ１がＲＡＭ５に格納した時点（タイミング（Ｔ＋１））から、１クロック（最小遅延時間）乃至３クロック（最大遅延時間）遅れて、メインＣＰＵ１によりＲＡＭ５に格納される。
【００３７】
この場合、遅延補正手段１３は、その標準遅延時間（例えば、２クロック）を登録しておくことにより、記憶手段１２がタイミング（Ｔ＋１）で第一アナログ入力Ａ１の値をＲＡＭ５に格納してから、１クロック（最小遅延時間）後のタイミング（Ｔ＋２）、２クロック（標準遅延時間）後のタイミング（Ｔ＋３）、及び、３クロック（最大遅延時間）後のタイミング（Ｔ＋４）のそれぞれのタイミングでＲＡＭ５に格納された連続する三つの第二アナログ入力Ａ２の値を取得し、三つの値の平均値を第二アナログ入力Ａ２の代表値として、タイミング（Ｔ＋１）でＲＡＭ５に格納された第一アナログ入力の値に対応させる。
【００３８】
また、遅延補正手段１３は、平均値以外にも、三つの値の最頻値又は中間値等、三つの値に基づいて導出される値を代表値として、タイミング（Ｔ＋１）でＲＡＭ５に格納された第一アナログ入力の値に対応させるようにしてもよい。
【００３９】
これにより、遅延補正システム１００は、Ａ／Ｄ変換時や転送時等に第二アナログ入力Ａ２に混入するノイズを除去し、第二アナログ入力Ａ２の真値に近い値を取得することができる。
【００４０】
また、遅延補正システム１００は、Ａ／Ｄコンバータ３、４のそれぞれが異なるメーカー製である場合や異なる仕様を有する場合等、Ａ／Ｄコンバータ３、４の間で信号の遅延を生じさせるような場合であっても、第一アナログ入力Ａ１と第一アナログ入力Ａ１に対する遅延のない第二アナログ入力Ａ２とを用いてメインＣＰＵ１に所定の演算を実行させることができる。
【００４１】
次に、図４乃至図６を参照しながら、遅延補正システム１００によるデータの遅延補正処理の流れについて説明する。
【００４２】
図４は、メインＣＰＵ１にある記憶手段１２が取得したデータをＲＡＭ５に格納する処理（以下、「格納処理」という。）の流れを示すフローチャートである。なお、遅延補正システム１００は、車載制御装置に適用され、格納処理は、車輌のイグニッションスイッチがオンの状態にある限り繰り返し実行されるものとする。
【００４３】
最初に、記憶手段１２は、クロックタイミングＴ（Ｔは、クロックジェネレータが生成するクロックが１周期進むにつれて１だけ増加する整数であると共に、配列ＤＤ１、ＤＤ２、ＡＤ１、ＡＤ２、ＮＤＤ２及びＮＡＤ２の要素番号を示す値である。）において入力ポート１０に入力された第一デジタル入力Ｄ１の値を配列ＤＤ１の要素ＤＤ１（Ｔ）に格納する（ステップＳ１）。
【００４４】
また、記憶手段１２は、同じくクロックタイミングＴにおいて外部バス６経由で拡張ＩＯボード２から転送された第二デジタル入力Ｄ２の値を配列ＤＤ２の要素ＤＤ２（Ｔ）に格納する（ステップＳ２）。
【００４５】
さらに、記憶手段１２は、同じくクロックタイミングＴにおいて入力ポート１１に入力された第一アナログ入力Ａ１の値を配列ＡＤ１の要素ＡＤ１（Ｔ）に格納し（ステップＳ３）、外部バス６経由で拡張ＩＯボード２から転送された第二アナログ入力Ａ２の値を配列ＡＤ２の要素ＡＤ２（Ｔ）に格納する（ステップＳ４）。
【００４６】
その後、記憶手段１２は、値Ｔを１だけインクリメントし（ステップＳ５）、値Ｔが配列群の最大要素数（例えば、１０００）に到達したか否かを判定する（ステップＳ６）。
【００４７】
値Ｔが配列群の最大要素数に到達した場合（ステップＳ６のＹＥＳ）、記憶手段１２は、値Ｔをゼロにリセットして処理を終了させる。また、値Ｔが配列群の最大要素数に到達しない場合（ステップＳ６のＮＯ）、記憶手段１２は、値Ｔをゼロにリセットすることなく処理を終了させる。
【００４８】
なお、配列群の最大要素数は、各配列で共通し、遅延時間（例えば、２クロック）分の値を格納できる必要最小限の数となるようにしてＲＡＭの有効活用を図るようにしてもよい。
【００４９】
図５は、メインＣＰＵ１にある遅延補正手段１３がデジタルデータの遅延を補正する処理の流れを示すフローチャートである。なお、以下の処理は、格納処理と同様、イグニッションスイッチがオンの状態にある限り繰り返し実行されるものとし、第二デジタル入力Ｄ２の遅延時間が２クロックを標準遅延として１クロックずつ前後にばらつくものとする。
【００５０】
最初に遅延補正手段１３は、値Ｔを取得し（ステップＳ１１）、値Ｔが配列群における要素数の最小値以上でかつ最大値未満であるか否かを判定する（ステップＳ１２）。
【００５１】
値Ｔが配列群における要素数の最小値未満又は最大値以上である場合（ステップＳ１２のＮＯ）、遅延補正手段１３は、配列ＮＤＤ２の要素ＮＤＤ２（Ｔ）に初期値を格納して（ステップＳ１３）、処理を終了させる。値Ｔが異常値であるとされるからである。
【００５２】
なお、配列ＮＤＤ２は、遅延補正された第二デジタル入力Ｄ２の値を格納するための配列であり、配列ＮＤＤ２の各要素ＮＤＤ２（Ｔ）は、配列ＤＤ１の各要素ＤＤ１（Ｔ―Ｘ）に対応付けられる。Ｘは、標準遅延時間を示すクロック数であり、本実施例では２となる。
【００５３】
また、「初期値」は、第二デジタル入力Ｄ２を出力するデバイスが正常に稼働している際に出力する代表的な値とする。
【００５４】
一方、値Ｔが配列群における要素数の最小値以上でかつ最大値未満である場合（ステップＳ１２のＹＥＳ）、遅延補正手段１３は、最大遅延時間となる３クロック前の値ＤＤ２（Ｔ−３）、標準遅延時間となる２クロック前の値ＤＤ２（Ｔ−２）、及び、最小遅延時間となる１クロック前の値ＤＤ２（Ｔ−１）を読み出す（ステップＳ１４）。
【００５５】
その後、遅延補正手段１３は、ＤＤ２（Ｔ−３）、ＤＤ２（Ｔ−２）及びＤＤ２（Ｔ−１）の値をそれぞれ比較し（ステップＳ１５）、三つの値が全て等しい場合（ステップＳ１５のＹＥＳ）、配列ＮＤＤ２の要素ＮＤＤ２（Ｔ）に要素ＤＤ２（Ｔ−１）の値を格納して（ステップＳ１６）、処理を終了させる。
【００５６】
また、三つの値の何れかが他の何れかの値と異なる場合（ステップＳ１５のＮＯ）、遅延補正手段１３は、配列ＮＤＤ２の要素ＮＤＤ２（Ｔ）に前回の値ＮＤＤ２（Ｔ−１）を格納して（ステップＳ１７）、処理を終了させる。ノイズが混入したものと判定するからである。
【００５７】
なお、遅延補正手段１３は、配列ＤＤ２の複数の要素の過半数が示す値（本実施例では二つの配列要素が示す値となる。）を配列ＮＤＤ２の要素ＮＤＤ２（Ｔ）に格納するようにしてもよい。
【００５８】
図６は、メインＣＰＵ１にある遅延補正手段１３がアナログデータの遅延を補正する処理の流れを示すフローチャートである。なお、以下の処理は、格納処理と同様、イグニッションスイッチがオンの状態にある限り繰り返し実行されるものとし、第二アナログ入力Ａ２の遅延時間が２クロックを標準遅延として１クロックずつ前後にばらつくものとする。
【００５９】
最初に遅延補正手段１３は、値Ｔを取得し（ステップＳ２１）、値Ｔが配列群における要素数の最小値以上でかつ最大値未満であるか否かを判定する（ステップＳ２２）。
【００６０】
値Ｔが配列群における要素数の最小値未満又は最大値以上である場合（ステップＳ２２のＮＯ）、遅延補正手段１３は、配列ＮＡＤ２の要素ＮＡＤ２（Ｔ）に初期値を格納して（ステップＳ２３）、処理を終了させる。値Ｔが異常値であるとされるからである。
【００６１】
なお、配列ＮＡＤ２は、遅延補正された第二アナログ入力Ａ２の値を格納するための配列であり、配列ＮＡＤ２の各要素ＮＡＤ２（Ｔ）は、配列ＡＤ１の各要素ＡＤ１（Ｔ―Ｘ）に対応付けられる。Ｘは、標準遅延時間を示すクロック数であり、本実施例では２となる。
【００６２】
また、「初期値」は、第二アナログ入力Ａ２を出力するデバイスが正常に稼働している際に出力する代表的なアナログ値をデジタル値に変換した値とする。
【００６３】
一方、値Ｔが配列群における要素数の最小値以上でかつ最大値未満である場合（ステップＳ２２のＹＥＳ）、遅延補正手段１３は、最大遅延時間となる３クロック前の値ＡＤ２（Ｔ−３）、標準遅延時間となる２クロック前の値ＡＤ２（Ｔ−２）、及び、最小遅延時間となる１クロック前の値ＡＤ２（Ｔ−１）を読み出す（ステップＳ２４）。
【００６４】
その後、遅延補正手段１３は、ＡＤ２（Ｔ−３）、ＡＤ２（Ｔ−２）及びＡＤ２（Ｔ−１）の平均値を算出し（ステップＳ２５）、その算出値を配列ＮＡＤ２の要素ＮＡＤ２（Ｔ）に格納して（ステップＳ２６）、処理を終了させる。
【００６５】
以上の構成により、遅延補正システム１００は、二つの異なる経路を介して取得される信号間に生じる遅延を迅速かつ確実に補正することができる。
【００６６】
また、遅延補正システム１００は、複数のタイミングで取り込んだ値に基づいて、メインＣＰＵ１における所定の演算に使用する一の値を決定するので、拡張ＩＯボード２に入力される信号がメインＣＰＵ１に取り込まれるまでに混入するノイズを効率的に除去することができる。
【００６７】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなしに上述した実施例に種々の変形及び置換を加えることができる。
【００６８】
例えば、上述の実施例では、遅延補正システム１００は、第一デジタル入力Ｄ１に対する第二デジタル入力Ｄ２の遅延時間、又は、第一アナログ入力Ａ１に対する第二アナログ入力Ａ２の遅延時間が２クロックを標準遅延として１クロックずつ前後にばらつくものとするが、２クロック以上ずつ前後にばらつくものとして遅延補正を行ってもよく、１クロック、または、３クロック以上を標準遅延時間として遅延補正を行ってもよい。
【００６９】
また、遅延補正システム１００は、二つの異なる経路を介して一つの信号の値を取得し、取得した値を比較することにより、その一つの信号の値が正常であるか否かを判定することができるので、取得した値の信頼性を高める用途に適用されてもよい。
【図面の簡単な説明】
【００７０】
【図１】本発明に係る遅延補正システムの構成例を示す図である。
【図２】第一デジタル入力Ｄ１に対する第二デジタル入力Ｄ２の遅延時間を説明するための図である。
【図３】第一アナログ入力に対する第二アナログ入力Ａ２の遅延時間を説明するための図である。
【図４】メインＣＰＵにある記憶手段が取得したデータをＲＡＭに格納する処理の流れを示すフローチャートである。
【図５】メインＣＰＵにある遅延補正手段がデジタルデータの遅延を補正する処理の流れを示すフローチャートである。
【図６】メインＣＰＵにある遅延補正手段がアナログデータの遅延を補正する処理の流れを示すフローチャートである。
【符号の説明】
【００７１】
１      メインＣＰＵ
２      拡張ＩＯボード
３、４  Ａ／Ｄコンバータ
５      ＲＡＭ
６      外部バス
１０、１１、２０、２１、３１、４１  入力ポート
１２    記憶手段
１３    遅延補正手段
３０、４０  出力ポート
１００  遅延補正システム
Ａ１    第一アナログ入力
Ａ２    第二アナログ入力
Ｄ１    第一デジタル入力
Ｄ２    第二デジタル入力
ＡＤ１、ＡＤ２、ＤＤ１、ＤＤ２、ＮＡＤ２、ＮＤＤ２  データ配列
Ｔ      クロックタイミング値
【図１】
2008125003.tif 000003
【図２】
2008125003.tif 000004
【図３】
2008125003.tif 000005
【図４】
2008125003.tif 000006
【図５】
2008125003.tif 000007
【図６】
2008125003.tif 000008