(57)【要約】【課題】外部監視デバイスが不要で、信号処理用半導体装置へのクロックの停止を検出でき、実装面積が小さく、コストが低い電子制御システムを提供する。【解決手段】この発明の電子制御システム１は、信号処理用半導体装置であるＬＳＩ／ＦＰＧＡ２０においてＣＬＫ２から生成されたＣＬＫが正常に働いている場合、コントローラ１０がＬＳＩ／ＦＰＧＡの同期化回路（ＦＦ１０１〜ＦＦ１０７等）と協働して監視用レジスタのＦＦ１１４にＣＬＫに同期してアクセスすることができる。コントローラは、そこから監視用データを読み出し、既知の監視用データと比較して一致していなければ、第２のクロックは停止しているものと判断できる。この場合、同期化回路は、簡単な論理回路を用いて信号処理用半導体装置の中に作り込めるので、実装面積の増大およびコストを低く抑えることができる。【選択図】　　　　図２
2004118473.tif 000002
【特許請求の範囲】
【請求項１】
第１のクロックに同期して動作するコントローラと、第２のクロックに同期して動作するとともに前記コントローラの制御下で信号処理を行う信号処理回路とを有するクロック停止検出機能付回路であって、
前記信号処理回路は、監視用データが与えられる監視用レジスタと、監視用レジスタに対するコントローラのアクセスを第２のクロックに同期させて実行させる同期化回路とを有し、
前記コントローラは、前記監視用レジスタに格納された既知の監視用データを読み出し、読み出したデータが前記監視用データと一致しない場合には、第２のクロックが停止していると判断するクロック停止検出機能付回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明はクロック停止検出機能付回路に関し、特に、第１のクロックに同期して動作するコントローラと、第２のクロックに同期して動作するとともに前記コントローラの制御下で信号処理を行う信号処理回路とを有し、コントローラが第２のクロックの停止を検出できるクロック停止検出機能付回路に関する。
【０００２】
【従来の技術】
従来、この種のクロック停止検出機能付回路においては、システム管理を行うコントローラと、入力信号の信号処理を行い、その結果の信号を出力したり、信号処理をした結果としてのシステム状態をコントローラ制御信号経由でコントローラに報告したりするための信号処理回路としての信号処理用半導体装置であるＬＳＩ／ＦＰＧＡとが搭載されるのが一般的である。この場合、その信号処理を実行するＬＳＩ／ＦＰＧＡが正常に動作するための絶対条件として、動作クロックが正常に働いていることが大前提である。信号処理を実行するＬＳＩ／ＦＰＧＡに入力されるクロックが停止している場合には、ＬＳＩ／ＦＰＧＡが正常動作しないので、その状態をコントローラで監視して、ＣＬＫが停止している場合には、システム異常と判断し、例えば、表示装置を介して通知する等の処理を行わなければならない。
【０００３】
このような従来の技術において、図７のように、第１のクロックであるＣＬＫ１に同期するコントローラ５０と、第２のクロックであるＣＬＫ２に同期するコＬＳＩ／ＦＰＧＡ６０とが１ユニットずつ使用されている場合、ＬＳＩ／ＦＰＧＡ６０に入力されるＣＬＫ２をワンショットタイマのような外部監視デバイス８０にも入力し、その外部監視デバイス８０の出力をコントローラ５０の割り込み端子やＰＯＲＴに信号ＣＬＫＩＮＴやＣＬＫＳＴＡＴとしてそれぞれ入力するような構成をとっている。このような構成における動作例を示すと図８のようになる。すなわち、外部監視デバイス８０は、ＣＬＫ２を読み取り、ＣＬＫ２が正常に与えられているときは出力を“Ｈ”に、ＣＬＫ２が正常に与えられていないときは出力を“Ｌ”にする。
【０００４】
コントローラ５０は、外部監視デバイス８０の出力をＣＬＫＳＴＡＴ（ＣＬＫＩＮＴ）として、定期的に読み込み、その値が“Ｈ”であれば、ＣＬＫは正常であると判断し、“Ｌ”であれば、ＣＬＫが停止していると判断し、ＣＬＫが停止していると判断した場合には表示装置にＣＬＫ停止の表示を行う。また、外部監視デバイス８０の出力ＣＬＫＳＴＡＴ（ＣＬＫＩＮＴ）をコントローラの割り込み入力に接続した場合には、外部監視デバイス８０の出力が“Ｌ”のとき、すなわち、ＣＬＫ２が停止したときに割り込みが起動されるように構成すれば、定期的な監視をすることなくＣＬＫ２の停止を判断することが可能となる。
【０００５】
また、図９のように複数のＬＳＩ／ＦＰＧＡ６１，６２，〜，６ｎのそれぞれに与えられるクロックであるＣＬＫ２，ＣＬＫ３，〜，ＣＬＫｎを監視する場合には、複数の外部監視デバイス８１，８２，〜，８ｎを設ける必要がある。他方、コントローラのＰＯＲＴ、割り込み入力端子には制限があるので、そのＰＯＲＴ／割り込み端子数以上の外部監視デバイスを監視する場合には、さらにＣＬＫ監視用論理ブロック９０を設け、複数の割り込みをひとまとめにしてコントローラへ割り込み（ＣＬＫＩＮＴ）として出力したり、外部監視デバイスの監視結果をレジスタを経由して通知する等の工夫が必要となってくる。
【０００６】
【発明が解決しようとする課題】
上述した従来のクロック停止検出機能付回路においては、信号処理回路としての信号処理用半導体装置である例えばＬＳＩ／ＦＰＧＡにクロックが正常に与えられているか否かをコントローラが確認するためには、外部監視デバイスを配置する必要があり、実装面積の増大およびコストの上昇をもたらしている。この場合、実装される信号処理用半導体装置の数が増えると、外部監視デバイスの数も増加し、その増加数によっては、複数の割り込みをひとまとめにするためのＣＬＫ監視用論理ブロックを設ける必要があり、上述の困難をさらに大きなものとしている。
【０００７】
この発明は、上記の問題を解決するためになされたものであって、上述のクロック停止検出機能付回路において、外部監視デバイスを配置することなく、信号処理回路（信号処理用半導体装置）に対するクロックの停止を検出でき、実装面積の増大およびコストの上昇をも低く抑えることができるクロック停止検出機能付回路を提供することを目的とする。
【０００８】
【課題を解決するための手段】
前述した課題を解決するために、この発明は、第１のクロックに同期して動作するコントローラと、第２のクロックに同期して動作するとともに前記コントローラの制御下で信号処理を行う信号処理回路とを有するクロック停止検出機能付回路であって、前記信号処理回路は、監視用データが与えられる監視用レジスタと、監視用レジスタに対するコントローラのアクセスを第２のクロックに同期させて実行させる同期化回路とを有し、前記コントローラは、前記監視用レジスタに格納された既知の監視用データを読み出し、読み出したデータが前記監視用データと一致しない場合には、第２のクロックが停止していると判断する。
【０００９】
このような構成によれば、コントローラは、信号処理回路において第２のクロックが正常に働いている場合には、信号処理回路の同期化回路と協働して監視用レジスタにアクセスすることができ、そこから監視用データを読み出すことができる。読み出した監視用データを既知の監視用データと比較して一致していれば、第２のクロックが正常に働いていると判断できる。また、読み出した監視用データが既知の監視用データに一致していなければ、第２のクロックは停止しているものと判断できる。この場合、同期化回路は、簡単な論理回路を用いて信号処理回路の中に作り込めるので、実装面積の増大およびコストの上昇を低く抑えたクロック停止検出機能付回路を実現できる。
【００１０】
【発明の実施の形態】
以下、この発明の実施の形態について添付図面に基づいて説明する。図１は、この発明のクロック停止検出機能付回路である電子制御システムの実施の形態１を示すブロック図、図２は、図１の電子制御システムに用いられている信号処理用半導体装置であるＬＳＩ／ＦＰＧＡの詳細を示すブロック図、図３は、図１の電子制御システムのＬＳＩ／ＦＰＧＡに対するコントローラの書き込み動作を示すタイミングチャート、図４は、図１の電子制御システムのＬＳＩ／ＦＰＧＡに対するコントローラの読み出し動作を示すタイミングチャート、図５は、図１の電子制御システムのＬＳＩ／ＦＰＧＡに対するコントローラの書き込みおよび読み出し動作のタイムシーケンスを示す図である。
【００１１】
図１の電子制御システム（クロック停止検出機能付回路）１は、第１のクロックＣＬＫ１に同期して動作するコントローラ１０と、第２のクロックＣＬＫ２に同期して動作するとともにコントローラ１０の制御下で信号処理を行う信号処理回路としての信号処理用半導体装置であるＬＳＩ／ＦＰＧＡ２０と、コントローラ１０の指示およびその指示によるＬＳＩ／ＦＰＧＡ２０の処理結果等を表示する表示装置３０とから構成されている。なお、この例の場合、ＬＳＩ／ＦＰＧＡ２０は、コントローラ１０が予め決められた監視用データを書き込みまたは読み出すことができるフリップフロップからなる監視用レジスタを有している。
【００１２】
コントローラ１０がＬＳＩ／ＦＰＧＡ２０にデータを書き込む場合の動作について図２、図３および図５を参照して説明する。内部クロック発生部であるＣＬＫＧＥＮ１１８は、ＣＬＫ２に基づいて、電子制御システム１００の全体に適合する（特に、コントローラ１０のＬＳＩ／ＦＰＧＡ２０の監視用レジスタに対するデータの書き込みまたは読み出しを同期化できる）クロックであるＣＬＫを生成している。コントローラ１０は、定期的にＣＬＫが動作しているか否かをチェックするようにプログラムされている。この例において、コントローラ１０は、時刻ｔ１（図３）において、チップ選択信号ＣＥをハイレベル（“Ｈ”）にし、時刻ｔ１１にライト信号ＷＲを“Ｈ”（リード信号ＲＤは“Ｌ”）にしてＣＬＫが正常であるか停止しているかの検出を開始する（図５のステップＳ１１）。
【００１３】
上述したＣＬＫの停止の検出の開始に伴って、コントローラ１０は、そのメモリマップ上において書き込みを行うアドレス（この例の場合、ＬＳＩ／ＦＰＧＡ２０に備えられた監視用レジスタ（例えば、ＦＦ１１４）を指示するアドレス）、および、そこに書き込むべき監視用データ（ライトデータ）をアドレスバス（Ａ・ＢＵＳ）およびデータバス（Ｄ・ＢＵＳ）にそれぞれ出力する（Ｓ１２）。なお、この場合、ＲＤは、“Ｌ”なので、ＦＦ１０４の出力も“Ｌ”であるためにトライステートバッファ１１７は、Ｄ・ＢＵＳとＦＦ１１６の出力端とを切り離した状態としている。
【００１４】
上述したように、“Ｈ”になったＣＥとＷＲとを入力したアンド回路１００は、その出力を“Ｈ”にする。フリップフロップのＦＦ１０１は、入力したアンド回路１００の出力“Ｈ”をＣＬＫＧＥＮ１１８からのＣＬＫに同期して取り込み、時刻ｔ２においてその出力を“Ｈ”にする。ＦＦ１０２は、ＦＦ１０１の出力をＣＬＫに同期して取り込み、１ＣＬＫだけ遅延させて時刻ｔ３に出力を“Ｈ”にする。したがって、アンド回路１０３は、アクティブハイの入力端に入力したＦＦ１０１の出力と、アクティブロウの入力端に入力したＦＦ１０２の出力とに基づいて、時刻ｔ２にその出力Ｐ１を“Ｈ”にし、時刻ｔ３に“Ｌ”にする。この時刻ｔ２〜ｔ３のアンド回路１０３の出力およびオア回路１０８の出力により、ＦＦ１０９はＤ・ＢＵＳの監視用データを、ＦＦ１１０はＡ・ＢＵＳのアドレスデータをそれぞれＣＬＫに同期して時刻ｔ３において取り込む（Ｓ１３）。
【００１５】
ＦＦ１１０が取り込んだＡ・ＢＵＳのアドレスデータは、デコーダ１１２に与えられてデコードされ、該当するレジスタに接続されたアンド回路１１３の一方の入力端が“Ｈ”にされる。アンド回路１１３は、イネーブル信号生成のために、書き込みの対象となるレジスタの数だけ存在するが、図２においては説明の便宜上一つだけにしておく。他方、ＦＦ１１１は、ＦＦ１０３の出力Ｐ１を１ＣＬＫだけ遅延させ、時刻ｔ３〜ｔ４に出力Ｐ２を出力する。書き込みアドレスに従ってデコーダ１１２に選択されたアンド回路１１３は、出力Ｐ２を出力Ｐ３としてＦＦ１１４に与える。ＣＬＫを監視するために用意された監視用レジスタ（フリップフロップ）であるＦＦ１１４は、アンド回路１１３からの出力Ｐ３の立ち下がり、ＣＬＫの立ち上がりに同期してＦＦ１０９の保持している監視用データを時刻ｔ４において取り込み（Ｓ１４）、ＣＬＫを監視するための監視用レジスタへの監視用データの書き込みを完了する（Ｓ１５）。
【００１６】
次に、上述のように監視用レジスタであるＦＦ１１４に書き込まれたデータの読み出しの動作について図２、図４および図５を参照して説明する。コントローラ１０は、時刻ｔ１（図４）にチップ選択信号ＣＥを“Ｈ”にし、時刻ｔ１１にリード信号ＲＤを“Ｈ”（ライト信号ＷＲは“Ｌ”）にするとともに、コントローラ１０は、そのメモリマップ上において読み出しを行うアドレス（この例の場合、ＬＳＩ／ＦＰＧＡ２０に備えられたレジスタであるＦＦ１１４を指示するアドレス）をアドレスバス（Ａ・ＢＵＳ）に出力する。アンド回路１０４は、“Ｈ”となったＣＥおよびＲＤを入力して出力を“Ｈ”にする。この出力はトライステートバッファ１１７とＦＦ１０５とに与えられる。トライステートバッファ１１７は、この出力によりＦＦ１１６の出力端をＤ・ＢＵＳに接続する。
【００１７】
フリップフロップのＦＦ１０５は、入力したアンド回路１０４の出力“Ｈ”をＣＬＫＧＥＮ１１８からのＣＬＫに同期して取り込み、時刻ｔ２においてその出力を“Ｈ”にする。ＦＦ１０６は、ＦＦ１０５の出力をＣＬＫに同期して取り込み、１ＣＬＫだけ遅延させて時刻ｔ３に出力を“Ｈ”にする。したがって、アンド回路１０７は、アクティブハイの入力端に入力したＦＦ１０５の出力と、アクティブロウの入力端に入力したＦＦ１０６の出力とに基づいて、時刻ｔ２にその出力Ｑ１を“Ｈ”にし、時刻ｔ３に“Ｌ”にする。この時刻ｔ２〜ｔ３のアンド回路１０７の出力Ｑ１はオア回路１０８を経由してＦＦ１１０に与えられ、ＦＦ１１０はＡ・ＢＵＳのアドレスデータをそれぞれＣＬＫに同期して時刻ｔ３において取り込む。
【００１８】
ＦＦ１１０に取り込まれたアドレスデータは、デコーダ１１２に与えられ、デコードされた結果に基づき、アドレスデータに対応するレジスタに保持されたデータがセレクタ１１５から出力される。セレクタ１１５から出力されたレジスタ（例えば、ＦＦ１１４）の値は、ＦＦ１１６において時刻ｔ４にＣＬＫに同期化され、トライステートバッファ１１７を経由してＤ・ＢＵＳに出力されコントローラ１０によって読み取られる（図５のＳ１６）。コントローラ１０は、読み取ったデータを書き込んだ監視用データと比較し、両方のデータが一致しているか否かを判断する（Ｓ１７）。判断の結果、両データが一致していると判断できた場合、コントローラ１０は、ＣＬＫ２から生成されたＣＬＫが正常に働いているものと看做し、後続する通常の処理を進める（Ｓ１８）。ステップＳ１７において、両データが一致していないと判断できた場合、コントローラ１０は、ＣＬＫが停止している旨を表示装置３０に表示し、ＣＬＫの停止の処理を開始する（Ｓ１９）。
【００１９】
上述したように、コントローラ１０は、通常の書き込み時には、書き込み対象の監視用レジスタを示すアドレスをＡ・ＢＵＳに出力し、Ｄ・ＢＵＳに監視用データを出力することにより、監視用レジスタに監視用データを適切に書き込むことができる。しかし、ＣＬＫが停止した場合には、ＦＦ１０１以降の各部が動作することができないことから、コントローラ１０は、書き込み対象のレジスタに所望のデータを書き込むことができないことが分かる。また、読み出し時においても、ＣＬＫが停止した場合には、ＦＦ１０５以降の各部が動作することができないことから、コントローラ１０は、既に監視用データを書き込んだ読み出し対象のレジスタから監視用データを読み出すことができないことが分かる。
【００２０】
このように、クロック停止のチェック時に、信号処理用半導体装置（ＬＳＩ／ＦＰＧＡ２０）の内部クロック（ＣＬＫ）に同期して、信号処理用半導体装置の監視用レジスタ（例えば、ＦＦ１１４）に監視用データを書き込み、そこから書き込んだ監視用データを読み出し、書き込んだ監視用データと読み出した監視用データとが一致しているか否かをチェックすることにより、信号処理用半導体装置の内部クロックが停止せずに正常に働いているか否かを外部監視装置を装着することなく監視することができる。なお、上述の例において、ＣＬＫの停止が１回でも検出された場合、ＣＬＫは停止していると判断しているが、監視用レジスタに対して異なるデータの書き込みおよび読み出しを行い、検出精度を高めるようにしてもよい。また、ＦＦ１０１，ＦＦ１０５，ＦＦ１０９，ＦＦ１１０，ＦＦ１１１等は、便宜上一段構成であるものとして説明したが、コントローラ１０からの書き込みデータとアドレスとを確実に取り込むことができるように、すなわち、セットアップ／ホールドを充分に満足させることができるように、それらのＦＦを複数段構成にする必要がある場合には、必要に応じて段数を適宜に変更すべきである。
【００２１】
次に、この発明の電子制御システムの実施の形態２について図６のタイムシーケンスを参照して説明する。この例における回路構成は、図１の回路構成と同じであり、そこに用いられる信号処理用半導体装置（ＬＳＩ／ＦＰＧＡ２０）も同じ構成をしているものとする。ただし、ＬＳＩ／ＦＰＧＡ２０に関しては、監視用レジスタ（ＦＦ１１４）が予め決められた監視用データを自動的に保持するように構成されている（不揮発性素子から構成されていてもよい）。他方、コントローラ１０に関しては、同じ監視用データが不図示のワークメモリあるいはプログラムソース上に格納されている（Ｓ２１）。電子制御システムが起動されると、コントローラ１０は、所定のタイミングでＣＬＫが正常に働いているか停止しているかのチェックを開始する（Ｓ２２）。
【００２２】
ＣＬＫのチェックを開始した場合、コントローラ１０は、監視対象のレジスタ（ＦＦ１１４）にアクセスし、レジスタが保持している監視用データを読み出す（Ｓ２３）。コントローラ１０は、レジスタから読み出した監視用データと、自己側に格納してある監視用データとを比較し、両方のデータが一致しているか否かを判断する（Ｓ２４）。両データが一致していると判断できた場合、コントローラ１０は、ＣＬＫ２から生成されたＣＬＫが正常に働いているものと看做し、後続する通常の処理を進める（Ｓ２５）。ステップＳ２４において、両データが一致していないと判断できた場合、コントローラ１０は、ＣＬＫが停止している旨を表示装置３０に表示し、ＣＬＫの停止の処理を開始する（Ｓ２６）。
【００２３】
この実施の形態２においては、監視対象のレジスタへの監視データの書き込みは、実施の形態１のように、ＣＬＫの動作チェックの都度行うことはしない。すなわち、監視対象のレジスタに予め監視用データを書き込んでおき（例えば、再書き込みできないように）、コントローラ１０は、そのデータをＣＬＫに同期して読み出し、読み出したデータが予め書き込んでおいた監視用データと一致していたらＣＬＫは正常に動作していると判断している。したがって、ＣＬＫの動作チェック時に、監視対象のレジスタへの監視用データの書き込みが不要となり、実施の形態１と比較して、短時間でＣＬＫの動作チェックが可能になる。
【００２４】
【発明の効果】
この発明のクロック停止検出機能付回路は、以上において説明したように構成されているので、コントローラは、信号処理用半導体装置において第２のクロックが正常に働いている場合には、信号処理用半導体装置の同期化回路と協働して監視用レジスタにアクセスすることができ、そこから監視用データを読み出すことができる。読み出した監視用データを既知の監視用データと比較して一致していれば、第２のクロックが正常に働いていると判断できる。また、読み出した監視用データが既知の監視用データに一致していなければ、第２のクロックは停止しているものと判断できる。この場合、同期化回路は、簡単な論理回路を用いて信号処理用半導体装置の中に作り込めるので、実装面積の増大およびコストの上昇を低く抑えた電子制御システムを実現できる。この場合、監視用レジスタの監視用データは、監視の都度、書き込んでもよいし、固定的に与えておいてもよい。
【図面の簡単な説明】
【図１】この発明のクロック停止検出機能付回路の実施の形態１に係る電子制御システムを示すブロック図である。
【図２】図１のクロック停止検出機能付回路に用いられている信号処理用半導体装置であるＬＳＩ／ＦＰＧＡの詳細を示すブロック図である。
【図３】図１の電子制御システムのＬＳＩ／ＦＰＧＡに対するコントローラの書き込み動作を示すタイミングチャートである。
【図４】図１の電子制御システムのＬＳＩ／ＦＰＧＡに対するコントローラの読み出し動作を示すタイミングチャートである。
【図５】図１の電子制御システムのＬＳＩ／ＦＰＧＡに対するコントローラの書き込みおよび読み出し動作のタイムシーケンスを示す図である。
【図６】この発明の電子制御システムの実施の形態２のＬＳＩ／ＦＰＧＡに対するコントローラの読み出し動作のタイムシーケンスを示す図である。
【図７】電子制御システムの従来例を示すブロック図である。
【図８】図７の外部監視デバイスの動作を示すタイミングチャートである。
【図９】電子制御システムの他の従来例を示すブロック図である。
【符号の説明】
１　　電子制御システム
１０　　コントローラ
２０　　ＬＳＩ／ＦＰＧＡ
３０　　表示装置
１００，１０３，１０４，１０７，１１３　　アンド回路
１０１，１０２，１０５，１０６，１０９，１１０，１１１，１１４，１１６
ＦＦ
１０８　　オア回路
１１２　　デコーダ
１１５　　セレクタ
１１７　　トライステートバッファ
１１８　　ＣＬＫＧＥＮ
ＣＬＫ１　　第１のクロック
ＣＬＫ２　　第２のクロック
【図１】
2004118473.tif 000003
【図２】
2004118473.tif 000004
【図３】
2004118473.tif 000005
【図４】
2004118473.tif 000006
【図５】
2004118473.tif 000007
【図６】
2004118473.tif 000008
【図７】
2004118473.tif 000009
【図８】
2004118473.tif 000010
【図９】
2004118473.tif 000011