(57)【要約】【課題】ＲＡＭの異常の誤検出を防止する。【解決手段】タイマ３０は速度センサ１０からのパルス信号のパルス間隔時間Ｔ１を計測すると共にパルス信号の立ち上がりのタイミングで起動信号をＤＭＡＣ２８に出力する。ＤＭＡＣ２８は、パルス間隔時間Ｔ１を所定アドレス２７に転送し、カウンタＣが所定値ＣｓｅｔであるときにはＤＭＡ転送完了割り込み信号をＣＰＵ２２に出力する。ＣＰＵ２２は、検査対象アドレスの値を退避する処理と検査用データの書き込んで読み出す処理と退避したデータの検査対象アドレスへ戻す復元処理と異常判定処理とにより、検査対象アドレスの異常診断を行なう。このとき、ＤＭＡＣ２８に起動信号が出力されてからＣＰＵ２２が復元処理が終了するまでに必要な処理必要時間Ｔ２がパルス間隔時間Ｔ１の最小値より小さくなるよう調整する。これにより異常の誤検出を防止することができる。【選択図】図４
2014048920.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと、ＤＭＡコントローラと、ＲＡＭと、ＤＭＡコントローラによる前記ＲＡＭへのデータ転送を起動する起動信号を前記ＤＭＡコントローラに出力する起動信号出力部と、を備える電子装置であって、
前記ＤＭＡコントローラは、前記起動信号の所定回数の入力に対して一回の割合でデータ転送の終了後に前記ＣＰＵに割り込み信号を出力し、
前記ＣＰＵは、前記割り込み信号を入力したときには、ＲＡＭの予め定められた検査対象領域のデータを退避する退避処理と、前記検査対象領域の異常判定に用いる検査データを書き込んで読み出すデータ読み書き処理と、退避したデータを前記検査対象領域に戻す復元処理と、前記データ読み書き処理により書き込んだデータと読み出したデータとの照合による異常判定を行なう判定処理と、をこの順に行なう割り込みプログラムを実行し、
前記ＣＰＵが前記割り込みプログラムを実行するときでも前記起動信号が前記ＤＭＡコントローラに出力されてから前記ＣＰＵが前記割り込みプログラムにおける前記復元処理を完了するまでに要する時間である処理必要時間が前記起動信号の間隔の時間である信号間隔時間より短くなるよう調整されてなる、
ことを特徴とする電子装置。
【請求項２】
請求項１記載の電子装置であって、
前記信号間隔時間は、変動する時間であり、
前記処理必要時間は、前記信号間隔時間の最小値より短くなるよう調整されてなる、
ことを特徴とする電子装置。
【請求項３】
請求項１または２記載の電子装置であって、
前記起動信号出力部は、パルス信号を入力し、前記パルス信号の立ち上がりのタイミングを用いてパルス間隔時間を計測すると共に前記パルス信号の立ち上がりのタイミングで前記起動信号を前記ＤＭＡコントローラに出力し、
前記ＤＭＡコントローラによるデータ転送は、前記起動信号出力部で計測した前記パルス間隔時間の前記ＲＡＭの所定アドレスへの転送である、
ことを特徴とする電子装置。
【請求項４】
請求項３記載の電子装置であって、
前記パルス信号は、車両の速度を計測するための速度センサからの信号であり、
前記ＣＰＵは、車両が走行しているときに前記割り込みプログラムを実行する、
ことを特徴とする電子装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子装置に関し、詳しくは、ＣＰＵと、ＲＡＭと、ＤＭＡコントローラと、ＤＭＡコントローラによるＲＡＭへのデータ転送を起動する起動信号をＤＭＡコントローラに出力する起動信号出力部と、を備える電子装置に関する。
【背景技術】
【０００２】
従来、この種の電子装置としては、ＲＡＭの診断対象エリアのデータをバッファに退避し、診断対象エリアを診断し、その後、バッファに退避したデータを診断対象エリアに戻すＲＡＭ診断装置が提案されている（例えば、特許文献１参照）。このＲＡＭ診断装置では、ＲＡＭの診断対象エリアのデータをバッファに退避した後に、まず、イニシャライズ処理として診断対象エリアの全セルをビットオフ（値０）とし、全セルをビットオン（値１）とし、その後、リード処理を行なって全て値１であるか否かをチェックする。このチェックで値０のセルには異常が生じていると診断する。そして、全セルをビットオフ（値０）とし、その後、リード処理を行なって全て値０であるか否かをチェックする。このチェックで値１のセルには異常が生じていると診断する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−９７４３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ＲＡＭ診断装置では、診断が終了するまでは、ＲＡＭの診断対象エリアに対するデータの読み書きを行なうことができないから、ＤＭＡ（ダイレクトメモリアクセス：Direct Memory Access）によるＤＭＡ転送先のＲＡＭのエリアと診断対象エリアとが重なると、ＲＡＭの異常の誤検出が生じてしまう。このため、ＤＭＡ転送先のＲＡＭのエリアに対しては、診断対象エリアとすることができない。
【０００５】
本発明の電子装置は、ＲＡＭの異常の誤検出を防止することを主目的とする。
【課題を解決するための手段】
【０００６】
本発明の電子装置は、上述の主目的を達成するために以下の手段を採った。
【０００７】
本発明の電子装置は、
ＣＰＵと、ＤＭＡコントローラと、ＲＡＭと、ＤＭＡコントローラによる前記ＲＡＭへのデータ転送を起動する起動信号を前記ＤＭＡコントローラに出力する起動信号出力部と、を備える電子装置であって、
前記ＤＭＡコントローラは、前記起動信号の所定回数の入力に対して一回の割合でデータ転送の終了後に前記ＣＰＵに割り込み信号を出力し、
前記ＣＰＵは、前記割り込み信号を入力したときには、ＲＡＭの予め定められた検査対象領域のデータを退避する退避処理と、前記検査対象領域の異常判定に用いる検査データを書き込んで読み出すデータ読み書き処理と、退避したデータを前記検査対象領域に戻す復元処理と、前記データ読み書き処理により書き込んだデータと読み出したデータとの照合による異常判定を行なう判定処理と、をこの順に行なう割り込みプログラムを実行し、
前記ＣＰＵが前記割り込みプログラムを実行するときでも前記起動信号が前記ＤＭＡコントローラに出力されてから前記ＣＰＵが前記割り込みプログラムにおける前記復元処理を完了するまでに要する時間である処理必要時間が前記起動信号の間隔の時間である信号間隔時間より短くなるよう調整されてなる、
ことを特徴とする。
【０００８】
この本発明の電子装置では、ＤＭＡコントローラは、起動信号の所定回数の入力に対して一回の割合でデータ転送の終了後にＣＰＵに割り込み信号を出力する。ＣＰＵは、割り込み信号を入力したときには、ＲＡＭの予め定められた検査対象領域のデータを退避する退避処理と、検査対象領域の異常判定に用いる検査データを書き込んで読み出すデータ読み書き処理と、退避したデータを検査対象領域に戻す復元処理と、データ読み書き処理により書き込んだデータと読み出したデータとの照合による異常判定を行なう判定処理と、をこの順に行なう割り込みプログラムを実行する。そして、ＣＰＵが割り込みプログラムを実行するときでも起動信号がＤＭＡコントローラに出力されてからＣＰＵが割り込みプログラムにおける復元処理を完了するまでに要する時間である処理必要時間が起動信号の間隔の時間である信号間隔時間より短くなるよう調整されている。即ち、ＤＭＡコントローラが、次の起動信号を入力するまでに割り込みプログラムによる退避処理とデータ読み書き処理と復元処理とが終了していることになる。このため、割り込みプログラムにより退避処理とデータ読み書き処理と復元処理を行なっている最中にＤＭＡコントローラによるデータ転送は行なわれないから、ＤＭＡコントローラのデータ転送によるＲＡＭの異常の誤検出を防止することができる。ここで、「ＣＰＵ」は、中央演算処理装置（Central Processing Unit）であり、「ＲＡＭ」は、データを一時的に記憶するランダムアクセスメモリ（Random Access Memory）であり、「ＤＭＡコントローラ」は、メモリまたはメモリと入出力デバイス（Ｉ／Ｏデバイス）との間で直接データを転送するダイレクトメモリアクセス（Direct Memory Access）を司るコントローラである。
【０００９】
こうした本発明の電子装置において、前記信号間隔時間は、変動する時間であり、前記処理必要時間は、前記信号間隔時間の最小値より短くなるよう調整されてなる、ものとすることもできる。こうすれば、起動信号の入力間隔が変化しても、割り込みプログラムにより退避処理とデータ読み書き処理と復元処理を行なっている最中にＤＭＡコントローラによるデータ転送は行なわれない。
【００１０】
また、本発明の電子装置において、前記起動信号出力部は、パルス信号を入力し、前記パルス信号の立ち上がりのタイミングを用いてパルス間隔時間を計測すると共に前記パルス信号の立ち上がりのタイミングで前記起動信号を前記ＤＭＡコントローラに出力し、
前記ＤＭＡコントローラによるデータ転送は、前記起動信号出力部で計測した前記パルス間隔時間の前記ＲＡＭの所定アドレスへの転送である、ものとすることもできる。この場合、前記パルス信号は、車両の速度を計測するための速度センサからの信号であり、前記ＣＰＵは、車両が走行しているときに前記割り込みプログラムを実行する、ものとすることもできる。こうすれば、走行中にＲＡＭの故障診断を行なうことができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施例としての電子装置２０の構成の概略を示す構成図である。
【図２】ＤＭＡＣ２８により実行されるＤＭＡ転送処理の一例を示すフローチャートである。
【図３】ＣＰＵ２２により実行されるＤＭＡ転送完了割り込みプログラムの一例を示すフローチャートである。
【図４】実施例の電子装置２０における動作を信号やデータの転送を主体に模式的に示す模式図である。
【発明を実施するための形態】
【００１２】
次に、本発明を実施するための形態を実施例を用いて説明する。
【実施例】
【００１３】
図１は、本発明の一実施例としての電子装置２０の構成の概略を示す構成図である。実施例の電子装置２０は、図示するように、ＣＰＵ（Central Processing Unit）２２を中心として構成されており、ＣＰＵ２２の他に、処理プログラムなどを記憶するＲＯＭ（Read Only Memory）２４と、データを一時的に記憶するＲＡＭ（Random Access Memory）２６と、ＣＰＵ２２を介さずにメモリまたはメモリと入出力デバイス（Ｉ／Ｏデバイス）の間で直接データを転送するダイレクトメモリアクセス（Direct Memory Access）を司るＤＭＡコントローラ（以下、「ＤＭＡＣ」と略す。）２８と、速度センサ１０からのパルス信号の間隔時間を計測するタイマ３０と、これらを接続するバス３２と、を備える。
【００１４】
タイマ３０は、車両に搭載された速度センサ１０からのパルス信号の立ち上がり時に前回のパルス信号の立ち上がりから今回のパルス信号の立ち上がりまでのパルス間隔時間Ｔ１を計測すると共にＤＭＡＣ２８にＤＭＡ転送のための起動信号を出力する。なお、タイマ３０は、図示しないが入出力インターフェースを介してバス３２に接続されている。また、速度センサ１０は、例えば電磁ピックアップなどにより構成されており、出力するパルス信号の間隔の時間（パルス間隔時間Ｔ１）は高車速になるほど短くなるが、最高車速（例えば２５０ｋｍ／ｈ）のときでも５０μｓｅｃ〜１００μｓｅｃ（実施例では、７２μｓｅｃ）程度となるよう調整されている。
【００１５】
ＤＭＡＣ２８は、タイマ３０からの起動信号を入力すると、図２に例示するＤＭＡ転送処理を実行する。ＤＭＡ転送処理では、まず、パルス間隔時間Ｔ１をＲＡＭ２６の所定アドレス２７にＤＭＡ転送により書き込む処理を実行する（ステップＳ１００）。そして、カウンタＣを値１だけインクリメントし（ステップＳ１１０）、カウンタＣが所定値Ｃｓｅｔに一致しているか否かを判定し（ステップＳ１２０）、カウンタＣが所定値Ｃに一致していないときには処理を終了し、カウンタＣが所定値Ｃに一致しているときには、カウンタＣを値０にリセットすると共に（ステップＳ１３０）、ＤＭＡ転送完了割り込み信号をＣＰＵ２２に出力して（ステップＳ１４０）、本処理を終了する。ここで、所定値Ｃｓｅｔは予め定められた正数値であり、例えば、５や１０，１００などを用いることができる。こうしたＤＭＡ転送処理は、まず、パルス間隔時間Ｔ１のＤＭＡ転送を行ない、タイマ３０からの起動信号の所定値Ｃｓｅｔの回数の入力に対して１回の割合でＤＭＡ転送の終了後にＣＰＵ２２にＤＭＡ転送完了割り込み信号を出力する処理となる。
【００１６】
ＣＰＵ２２は、ＤＭＡ転送完了割り込み信号を入力すると、図３に例示するＤＭＡ転送完了割り込みプログラムを実行する。このＤＭＡ転送完了割り込みプログラムでは、まず、ＲＡＭ２６の検査対象アドレスの値をレジスタに退避させ（ステップＳ２００）、検査対象アドレスに検査データＡ１を書き込み（ステップＳ２１０）、検査対象アドレスから値を読み出してデータＢ１とし（ステップＳ２２０）、検査対象アドレスに検査データＡ２を書き込み（ステップＳ２３０）、検査対象アドレスから値を読み出してデータＢ２とし（ステップＳ２４０）、レジスタに退避した値を検査対象アドレスに戻す（ステップＳ２５０）。これにより、検査対象アドレスの値は、ＤＭＡ転送完了割り込みプログラムの実行を開始したときの値となる。ここで、検査データＡ１，Ａ２は如何なる値を用いてもよいが、検査データＡ２は検査データのＡ１の反転値を用いるのが好ましい。例えば、検査データＡ１として「０１０１０１０１」を用い、その反転値である「１０１０１０１０」を検査データＡ２として用いるのである。なお、ＲＡＭ２６の検査対象アドレスの値をレジスタに退避させるステップＳ２００の処理が退避処理に相当し、検査対象アドレスに検査データＡ１を書き込み、検査対象アドレスから値を読み出してデータＢ１とし、検査対象アドレスに検査データＡ２を書き込み、検査対象アドレスから値を読み出してデータＢ２とするステップＳ２１０〜Ｓ２４０の処理がデータ読み書き処理に相当し、レジスタに退避した値を検査対象アドレスに戻すステップＳ２５０の処理が復元処理に相当する。
【００１７】
復元処理を終了すると、検査データＡ１と読み出したデータＢ１とが一致するか否か及び検査データＡ２とデータＢ２とが一致するか否かを判定し（ステップＳ２６０，Ｓ２７０）、検査データＡ１と読み出したデータＢ１とが一致すると共に検査データＡ２とデータＢ２とが一致するときには、検査対象アドレスは正常であると判定して（ステップＳ２８０）、プログラムを終了し、検査データＡ１と読み出したデータＢ１とが一致しないか或いは検査データＡ２とデータＢ２とが一致しないときには、検査対象アドレスは異常であると判定して（ステップＳ２９０）、プログラムを終了する。これにより、検査対象アドレスの異常を判定することができる。
【００１８】
実施例では、ＣＰＵ２２がＤＭＡ転送完了割り込みプログラムを実行するときでも、起動信号がＤＭＡＣ２８に出力されてからＣＰＵ２２がＤＭＡ転送完了割り込みプログラムにおけるステップＳ２５０の処理を終了するまでの処理必要時間Ｔ２がパルス間隔時間Ｔ１の最小値より小さくなるよう調整されている。実施例では、上述したようにパルス間隔時間Ｔ１の最小値は７２μｓｅｃであり、処理必要時間Ｔ２は２．３μｓｅｃであった。Ｔ２＜Ｔ１であれば、検査対象アドレスが所定アドレス２７であるときでも、ＣＰＵ２２により検査対象アドレス（所定アドレス）の異常判定のために検査データＡ１，Ａ２を書き込だりデータＢ１，Ｂ２として読み出したりしている最中に、ＤＭＡＣ２８によるＤＭＡ転送は行なわれない。このため、ＤＭＡ転送完了割り込みプログラムのステップＳ２５０の処理が終了するまでにＤＭＡ転送が行なわれることよる異常の誤検出を防止することができる。なお、パルス間隔時間Ｔ１は、ＤＭＡＣ２８が入力する起動信号の間隔の時間に相当する。
【００１９】
図４は、実施例の電子装置２０における動作を信号やデータの転送を主体に模式的に示す模式図である。図示するように、タイマ３０は、速度センサ１０からのパルス信号の立ち上がりのタイミングを用いてパルス間隔時間Ｔ１を計測すると共にパルス信号の立ち上がりのタイミングで起動信号をＤＭＡＣ２８に出力する。この起動信号を入力したＤＭＡＣ２８は、タイマ３０の計測したパルス間隔時間Ｔ１をＲＡＭ２６の所定アドレス２７にＤＭＡ転送し、カウンタＣを値１だけインクリメントし、カウンタＣを所定値Ｃｓｅｔと比較し、カウンタＣが所定値Ｃｓｅｔに一致していないときには、処理を終了し、カウンタが所定値Ｃｓｅｔに一致しているときには、ＤＭＡ転送完了割り込み信号をＣＰＵ２２に出力する。ＤＭＡ転送完了割り込み信号を入力したＣＰＵ２２は、図３に例示するＤＭＡ転送完了割り込みプログラムを実行して検査対象アドレスの異常診断を行なう。ＤＭＡＣ２８によるＤＭＡ転送処理とＣＰＵ２２によるＤＭＡ転送完了割り込み処理プログラムにおける復元処理（ステップＳ２５０）までの処理に要する時間（処理必要時間Ｔ２）は、パルス間隔時間Ｔ１より短い時間で行なわれる。
【００２０】
以上説明した実施例の電子装置２０では、タイマ３０により、速度センサ１０からのパルス信号の立ち上がりのタイミングを用いてパルス間隔時間Ｔ１を計測すると共にパルス信号の立ち上がりのタイミングで起動信号をＤＭＡＣ２８に出力し、ＤＭＡＣ２８により、起動信号を入力したときに、タイマ３０の計測したパルス間隔時間Ｔ１をＲＡＭ２６の所定アドレス２７にＤＭＡ転送し、起動信号を入力する毎にインクリメントされると共に所定値Ｃｓｅｔに達する毎に値０にリセットされるカウンタＣが所定値Ｃｓｅｔに一致しているときに、ＤＭＡ転送完了割り込み信号をＣＰＵ２２に出力し、ＣＰＵ２２により、ＤＭＡ転送完了割り込み信号を入力したときには、ＤＭＡ転送完了割り込みプログラムを実行してＲＡＭ２６の検査対象アドレスの異常診断を行なう。そして、このＣＰＵ２２によりＤＭＡ転送完了割り込みプログラムが実行されるときでも、起動信号がＤＭＡＣ２８に出力されてからＣＰＵ２２がＤＭＡ転送完了割り込みプログラムにおけるステップＳ２５０の処理を終了するまでの処理必要時間Ｔ２がパルス間隔時間Ｔ１の最小値より小さくなるよう調整されている。このため、ＤＭＡ転送完了割り込みプログラムの復元処理が終了するまでにＤＭＡ転送が行なわれることよる異常の誤検出を防止することができる。もとより、速度センサ１０からのパルス信号は、車速が生じているときに出力されるから、走行中にＲＡＭ２６の異常診断を行なうことができる。
【００２１】
実施例の電子装置２０では、車速センサ１０からのパルス信号を入力するタイマ３０により、パルス間隔時間Ｔ１を計測すると共に起動信号をＤＭＡＣ２８に出力するものとしたが、ＤＭＡＣ２８に起動信号を出力するものであれば如何なるものであってもよい。したがって、車速センサ１０からの信号に限定されるものでもないし、車載されるものに限定されるものでもない。即ち、ＤＭＡコントローラは、起動信号の所定回数の入力に対して一回の割合でデータ転送の終了後にＣＰＵに割り込み信号を出力するものとし、ＣＰＵは、割り込み信号を入力したときには、予め定められたＲＡＭの検査対象領域のデータを退避する退避処理と、検査対象領域の異常判定に用いる検査データを書き込んで読み出すデータ読み書き処理と、退避したデータを検査対象領域に戻す復元処理と、データ読み書き処理により書き込んだデータと読み出したデータとの照合による異常判定を行なう判定処理と、をこの順に行なう割り込みプログラムを実行するものとし、ＣＰＵが割り込み信号を入力してから割り込みプログラムにおける復元処理を完了するまでに要する時間である処理必要時間が起動信号の間隔の時間である信号間隔時間より短くなるよう調整されていれば、データ転送（ＤＭＡ転送）の対象は如何なるものであってもよいし、起動信号を出力するものも如何なるものであってもよいのである。
【００２２】
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、ＣＰＵ２２が「ＣＰＵ」に相当し、ＤＭＡＣ２８が「ＤＭＡコントローラ」に相当し、ＲＡＭ２６が「ＲＡＭ」に相当し、タイマ３０が「起動信号出力部」に相当する。ＤＭＡ転送完了割り込み信号が「割り込み信号」に相当し、ＤＭＡ転送完了割り込みプログラムが「割り込みプログラム」に相当し、処理必要時間Ｔ２が「処理必要時間」に相当し、パルス間隔時間Ｔ１が「信号間隔時間」に相当する。
【００２３】
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。
【００２４】
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。
【産業上の利用可能性】
【００２５】
本発明は、電子装置の製造産業などに利用可能である。
【符号の説明】
【００２６】
１０  速度センサ、２０  電子装置、２２  ＣＰＵ、２４  ＲＯＭ、２６  ＲＡＭ、２７  所定アドレス、２８  ＤＭＡコントローラ（ＤＭＡＣ）、３０  タイマ、３２  バス。
【図１】
2014048920.tif 000003
【図２】
2014048920.tif 000004
【図３】
2014048920.tif 000005
【図４】
2014048920.tif 000006