(57)【要約】  プログラマブルデバイスで発生するコンフィギュレーションメモリの環境放射線による障害等の想定が困難な異常状態発生時に出力信号が異常となり搭載装置が危険動作に至ることがある。  上記課題を解決するために、コンフィギュレーションメモリを有するプログラマブルデバイスであって、コンフィギュレーションメモリのデータ反転障害を検出するエラー検出部と、コンフィギュレーションメモリのリード、ライトを制御する制御部とを有し、コンフィギュレーションメモリはプログラマブルデバイスの出力信号を制御する回路情報を格納する出力回路領域を有しており、制御部は、エラー検出部からのエラー検出信号をトリガとして、プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを格納する安全データ格納部から該コンフィギュレーションデータを読み出し出力回路領域に上書きする構成とする。
2016110968.tif 000002
【特許請求の範囲】
【請求項１】
コンフィギュレーションメモリを有するプログラマブルデバイスであって、
前記コンフィギュレーションメモリのデータ反転障害を検出するエラー検出部と、
前記コンフィギュレーションメモリのリード、ライトを制御する制御部とを有し、
前記コンフィギュレーションメモリは前記プログラマブルデバイスの出力信号を制御する回路情報を格納する出力回路領域を有しており、
前記制御部は、前記エラー検出部からのエラー検出信号をトリガとして、前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを格納する安全データ格納部から該コンフィギュレーションデータを読み出し前記出力回路領域に上書きすることを特徴とするプログラマブルデバイス。
【請求項２】
請求項１に記載のプログラマブルデバイスであって、
前記制御部は、前記コンフィギュレーションメモリをリード、ライトするリードライト部と出力回路領域上書き制御部であり、
前記出力回路領域のアドレス情報を格納する出力回路領域アドレス保持部を有し、
前記出力回路領域上書き制御部は、前記エラー検出部からのエラー検出信号をトリガとして、前記リードライト部に前記安全データ格納部のリード指示を行い、
前記リードライト部は、前記安全データ格納部から読み出した前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを前記出力回路領域アドレス保持部から読み出したアドレス情報を基に前記出力回路領域に上書きすることを特徴とするプログラマブルデバイス。
【請求項３】
請求項１に記載のプログラマブルデバイスであって、
前記制御部は、外部エラー信号をトリガとして、前記安全データ格納部から読み出した前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを前記出力回路領域に上書きすることを特徴とするプログラマブルデバイス。
【請求項４】
請求項１に記載のプログラマブルデバイスであって、
前記安全データ格納部は、前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを複数格納することを特徴とするプログラマブルデバイス。
【請求項５】
請求項１に記載のプログラマブルデバイスであって、
前記コンフィギュレーションメモリは、前記出力回路領域に接続され、プログラマブルデバイスの出力信号レベルを変化させ順序制御するコンフィギュレーションデータを格納するコンフィギュレーションデータ領域を有することを特徴とするプログラマブルデバイス。
【請求項６】
請求項１に記載のプログラマブルデバイスであって、
前記安全データ格納部は前記プログラマブルデバイス内に設けられていることを特徴とするプログラマブルデバイス。
【請求項７】
請求項２に記載のプログラマブルデバイスであって、
前記出力回路領域アドレス保持部と前記出力回路領域上書き制御部は、前記プログラマブルデバイスとは別のデバイスに構成したことを特徴とするプログラマブルデバイス。
【請求項８】
請求項１に記載のプログラマブルデバイスであって、
前記コンフィギュレーションメモリ内の論理回路で論理エラーを検出する手段と、当該検出したエラー信号を収集するエラー収集部を有し、
前記エラー収集部からのエラー信号をトリガとして、前記制御部は、前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを格納する安全データ格納部から該コンフィギュレーションデータを読み出し前記出力回路領域に上書きすることを特徴とするプログラマブルデバイス。
【請求項９】
請求項１に記載のプログラマブルデバイスであって、
前記プログラマブルデバイスの出力信号の状態を一時的に保持する手段と、当該保持した結果をプログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータとして更新する更新部を有することを特徴とするプログラマブルデバイス。
【請求項１０】
コンフィギュレーションメモリを有するプログラマブルデバイスと、入出力Ｉ／Ｆを備えた制御装置であって、
前記プログラマブルデバイスは、
前記コンフィギュレーションメモリのデータ反転障害を検出するエラー検出部と、
前記コンフィギュレーションメモリをリード、ライトする制御部とを有し、
前記コンフィギュレーションメモリは前記プログラマブルデバイスの出力信号を制御する回路情報を格納する出力回路領域を有しており、
前記制御部は、前記エラー検出部からのエラー検出信号をトリガとして、前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを格納する安全データ格納部から該コンフィギュレーションデータを読み出し前記出力回路領域に上書きすることを特徴とする制御装置。
【請求項１１】
請求項１０に記載の制御装置であって、
前記制御部は、前記コンフィギュレーションメモリをリード、ライトするリードライト部と出力回路領域上書き制御部であり、
前記出力回路領域のアドレス情報を格納する出力回路領域アドレス保持部を有し、
前記出力回路領域上書き制御部は、前記エラー検出部からのエラー検出信号をトリガとして、前記リードライト部に前記安全データ格納部のリード指示を行い、
前記リードライト部は、前記安全データ格納部から読み出した前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを前記出力回路領域アドレス保持部から読み出したアドレス情報を基に前記出力回路領域に上書きすることを特徴とする制御装置。
【請求項１２】
請求項１０に記載の制御装置であって、
前記制御部は、外部エラー信号をトリガとして、前記安全データ格納部から読み出した前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを前記出力回路領域に上書きすることを特徴とする制御装置。
【請求項１３】
請求項１０に記載の制御装置であって、
前記安全データ格納部は、前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを複数格納することを特徴とする制御装置。
【請求項１４】
請求項１０に記載の制御装置であって、
前記コンフィギュレーションメモリは、前記出力回路領域に接続され、プログラマブルデバイスの出力信号レベルを変化させ順序制御するコンフィギュレーションデータを格納するコンフィギュレーションデータ領域を有することを特徴とする制御装置。
【請求項１５】
請求項１０に記載の制御装置であって、
前記安全データ格納部は前記プログラマブルデバイス内に設けられていることを特徴とする制御装置。
【請求項１６】
請求項１１に記載の制御装置であって、
前記出力回路領域アドレス保持部と前記出力回路領域上書き制御部は、前記プログラマブルデバイスとは別のデバイスに構成したことを特徴とする制御装置。
【請求項１７】
請求項１０に記載の制御装置であって、
前記コンフィギュレーションメモリ内の論理回路で論理エラーを検出する手段と、当該検出したエラー信号を収集するエラー収集部を有し、
前記エラー収集部からのエラー信号をトリガとして、前記制御部は、前記プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを格納する安全データ格納部から該コンフィギュレーションデータを読み出し前記出力回路領域に上書きすることを特徴とする制御装置。
【請求項１８】
請求項１０に記載の制御装置であって、
前記プログラマブルデバイスの出力信号の状態を一時的に保持する手段と、当該保持した結果をプログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータとして更新する更新部とを有することを特徴とする制御装置。
【請求項１９】
コンフィギュレーションメモリを有するプログラマブルデバイスの障害対策方法であって、
前記コンフィギュレーションメモリ内のプログラマブルデバイスの出力信号を制御する回路情報を格納する出力回路領域の出力を安全な信号レベルに設定するコンフィギュレーションデータを準備し、
前記コンフィギュレーションメモリのデータ反転障害を検出した際に、前記安全な信号レベルに設定するコンフィギュレーションデータを前記出力回路領域に上書きすることを特徴とするプログラマブルデバイスの障害対策方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルデバイス及びそれを用いた制御装置に係り、その障害対策に関する。
【背景技術】
【０００２】
様々な電子システム装置の制御用ロジックＬＳＩとしてプログラマブルデバイスが多用されており、特にＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ Ａｒｒａｙ）の利用が増大している。ＦＰＧＡは、ロジック回路情報をデバイス内部のメモリ（以下コンフィギュレーションメモリ、ＣＲＡＭと称す）に格納して演算回路や制御回路を構築するものであり、ＣＲＡＭの内容を書き換えることで即座に別な論理回路に変更できることが特徴である。【０００３】
本技術分野の背景技術として、特開２００７−７２８０７号公報（特許文献１）がある。この特許文献１には、「電源投入後、第1の時間内にリセット信号を送出するパワーオンリセット回路と、電源の投入を監視し、前記第1の時間経過後に、電源が投入されたことを示す信号を出力する電源監視回路と、自己がシステムコントローラであるかどうかを判定するシステムコントローラ検知回路と、前記第1の時間より長い第2の時間内にコンフィグレーションを完了するフィールドプログラマブルゲートアレーを有し、自己がシステムコントローラであることを判定する信号およびデージーチェーン接続されるバスグラント出力信号を、少なくとも前記パワーオンリセット回路の動作開始から前記第1の時間までは強制的に固定し、第2の時間経過後からは前記フィールドプログラマブルゲートアレーにより、制御することを特徴とするＶ Ｍ Ｅ システムコントローラ」と記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−７２８０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
半導体デバイスの微細化に伴い、環境放射線（地上における宇宙線中性子，α線）等に  【０００６】
起因するソフトエラーの問題が特にＳＲＡＭや論理ゲート、クロック系などについて顕在化している。ソフトエラーのメカニズムとしては、以下が知られている。すなわち、極めて高いエネルギーを有する中性子がデバイスを構成する原子核内に突入すると核内の核子（中性子、陽子）が衝突を繰り返し、特に高いエネルギーを持った核子は核外に放出される。核子が核外に飛び出すだけの運動エネルギーを持ち得ない状態になると、励起状態にある残留原子核から陽子、中性子、重陽子、アルファ粒子などの軽粒子が蒸発する過程が続き、最終的に残留核も反挑エネルギーを持つためこれらの２次粒子は全てその飛程に見合った距離デバイスの中を飛ぶことになる。半導体パッケージなどに含まれる放射性同位元素から発生するα線や、核反応の結果発生する電荷を持った２次イオンがＳＲＡＭの“ｈｉｇｈ”状態にあるストレージノードの空乏層を通過すると電子はノードに吸収され正孔は反対方向に流れイオンの飛跡に沿って電荷収集領域が広がるファネリングメカニズムによってストレージノードに電荷が収集される。臨界電荷量以上の電荷が収集されると”ｈｉｇｈ”状態が“ｌｏｗ”状態に推移し、ソフトエラーになる。【０００７】
ＦＰＧＡのＣＲＡＭは、ＳＲＡＭで構成されているものが多く、環境放射線によるソフトエラーによって回路情報が破壊され、電子システム装置の誤作動を引き起こす可能性があることが問題視されつつある。中でも社会インフラを制御する電子システム装置では安全上の問題を招く恐れがある。通常、電子システム装置として誤動作による影響がでないよう、複数の部品、装置を用いて対策されているが、消費電力、開発、検証工数、コスト等の増大を招く要因となっている。【０００８】
また、ソフトエラーに限らず経年劣化等によるハードエラー（固定故障）も考慮が必要だが、一般的なＦＰＧＡのハードエラーの発生確率はソフトエラーに比べ１／１００００より小さく、ソフトエラーへの対策が信頼性、安全性の向上には有効である。【０００９】
従来の特許文献１に記載の技術は、バス接続されたプログラマブルデバイスが、電源投入直後のＣＲＡＭメモリへの回路情報書き込み中の電源ノイズ等による不安定動作を他デバイスに影響を与えないためのもので、プログラマブルデバイスの出力を論理的なマスクにより固定化している。これは、プログラマブルデバイスのＣＲＡＭの情報が破壊されることとは無関係であり、ソフトエラー時の誤作動による影響を排除するものではない。【００１０】
本発明の目的は、プログラマブルデバイスのＣＲＡＭで発生した障害で電子システム装置の動作を危険側故障にしないことである。そして、これにより、電子システム装置の安全性の向上を低消費電力、低コストで実現することである。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、例えば請求の範囲に記載の構成を採用する。本願は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、コンフィギュレーションメモリを有するプログラマブルデバイスであって、コンフィギュレーションメモリのデータ反転障害を検出するエラー検出部と、コンフィギュレーションメモリのリード、ライトを制御する制御部とを有し、コンフィギュレーションメモリはプログラマブルデバイスの出力信号を制御する回路情報を格納する出力回路領域を有しており、制御部は、エラー検出部からのエラー検出信号をトリガとして、プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを格納する安全データ格納部から該コンフィギュレーションデータを読み出し出力回路領域に上書きする構成とする。
【発明の効果】
【００１２】
本発明によれば、ＦＰＧＡを使用した装置の危険側障害リスクを削減することができ、装置の安全性向上に貢献できる。
【図面の簡単な説明】
【００１３】
【図１】実施例１に係るプログラマブルデバイスの構成図である。
【図２】実施例１に係る処理フローである。
【図３】実施例１に係るプログラマブルデバイスの出力回路領域の回路構成図である。
【図４】実施例１に係る出力回路領域上書き制御部の構成図である。
【図５】実施例１に係る出力回路領域上書き制御部の動作シーケンス図である。
【図６】実施例２に係る安全データの構成図である。
【図７】実施例３に係る出力回路領域部分を示した構成図である。
【図８】実施例４に係るプログラマブルデバイスの構成図である。
【図９】実施例５に係るプログラマブルデバイスの構成図である。
【図１０】実施例６及び７に係るプログラマブルデバイスの構成図である。
【図１１】実施例８に係るプログラマブルデバイスを搭載した装置基板の構成図である。
【図１２】実施例９に係るプログラマブルデバイスの構成図である。
【図１３】実施例１０に係るプログラマブルデバイスを搭載した制御装置の構成図である。
【図１４】実施例１１に係るプログラマブルデバイスを搭載した車載制御装置の構成図である。
【図１５】実施例１２に係るプログラマブルデバイスを搭載したモータ制御部の構成図である。
【図１６】実施例１３に係るプログラマブルデバイスを搭載したロボットの構成図である。
【図１７】実施例１４に係るプログラマブルデバイスを搭載した建設機械の構成図である。
【発明を実施するための形態】
【００１４】
以下、実施例を図面を用いて説明する。
【実施例１】
【００１５】
図１は、本実施例のプログラマブルデバイスの構成図である。本実施例のプログラマブルデバイス１は、ユーザロジックとして、所望の機能を実現するための論理回路データを有するコンフィギュレーションメモリ（ＣＲＡＭ）２を有している。そして、ＣＲＡＭ２内には、論理回路情報を格納する機能回路ブロック群５と、プログラマブルデバイス１の出力回路領域である出力ピンの信号レベルを設定できる領域３と、プログラマブルデバイス１の入力ピンの設定を保持する領域４を有している。【００１６】
また、プログラマブルデバイス１は、ＣＲＡＭ２内のデータへのアクセスを制御し、ＣＲＡＭにリード、ライトするＣＲＡＭ Ｒ／Ｗ制御部６と、ＣＲＡＭ２内のデータのエラーの有無を判定するＣＲＡＭエラー検出部７を有す。ＣＲＡＭエラー検出部７のエラー検出方法については、例えばＣＲＡＭ２内の論理回路データにエラー検出のためのＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｏｄｅ）コードを付加し、ＣＲＡＭ２内全体を巡回しながらリードし、エラー判定を行う機能を有している。【００１７】
さらに、プログラマブルデバイス１は、出力回路領域上書き制御部８と、出力回路領域のアドレスを記憶保持する出力回路領域アドレス保持部９を有している。また、外部記憶部１０には、プログラマブルデバイス１の機能を定義する回路情報であるコンフィギュレーションデータ１１と、プログラマブルデバイス１の出力ピンの信号レベルを設定できる領域３の出力信号レベルを固定化する安全データ１２が格納されている。ここで、安全データ１２は、出力信号レベルを固定化するためのコンフィギュレーションデータであり、回路構造を強制的に出力固定にするようなコンフィギュレーションデータであるが、プログラマブルデバイス１の機能を定義する回路情報であるコンフィギュレーションデータ１１と区別するために、本実施例では安全データと称す。なお、コンフィギュレーションデータ１１と安全データ１２は、物理的に別なデバイスに格納しても良い。【００１８】
ＣＲＡＭエラー検出部７は、ＣＲＡＭの環境放射線等の要因によるデータ反転を検出後、このエラー検出信号をトリガとして出力回路領域上書き制御部８に出力する。出力回路領域上書き制御部８は、出力回路領域のアドレスを記憶保持する出力回路領域アドレス保持部９から、プログラマブルデバイス１の出力回路領域である出力ピンの信号レベルを設定できる領域３のアドレスを取得し、そのアドレスをＣＲＡＭ Ｒ／Ｗ制御部６に送出する（２４）。また、同時に外部記憶部１０の中の出力信号レベルを固定化する安全データ１２の格納領域アドレスとデータサイズをＣＲＡＭ Ｒ／Ｗ制御部６に送出する（２３）。なお、安全データ１２の格納アドレスは、ＣＲＡＭ Ｒ／Ｗ制御部６が保持していても良い。ＣＲＡＭ Ｒ／Ｗ制御部６は、受信したアドレスに従い安全データ１２をリードするとともに、ＣＲＡＭ内の出力ピンの信号レベルを設定できる領域３にライトする。ライト処理が終了したら完了信号を送出する（２５）。【００１９】
なお、出力回路領域アドレス保持部９にプログラマブルデバイス１の入力ピンの設定を保持する領域４のアドレスを保持し、出力回路領域上書き制御部８を通じて、入力ピンの設定を保持する領域４用の安全データを書き込むことで入力を遮断することもできる。【００２０】
図２に本実施例の構成要素の制御手順を示す。図２において、本実施例によるプログラマブルデバイス１が稼動を開始（３１）し、ＣＲＡＭエラー検出部７は、上述したようにＣＲＡＭ Ｒ／Ｗ制御部６を介してＣＲＡＭ２内のエラーの有無を監視、検出を行う（３２）（３３）。エラーが無い場合（３３ｂ）は、継続してエラー監視を行い、エラーを検出した場合（３３ａ）、ＣＲＡＭエラー検出部７からのエラー検出信号を出力する（３４）。出力回路領域上書き制御部８は安全データ１２のリード指示をＣＲＡＭ Ｒ／Ｗ制御部６に送出する（３５）。さらに出力回路領域上書き制御部８は、出力回路領域を記憶保持する出力回路領域アドレス保持部９から、プログラマブルデバイス１の出力ピンの信号レベルを設定できる領域３のアドレスを取得し、そのアドレスをＣＲＡＭ Ｒ／Ｗ制御部６に送出する（３６）。続いて、ＣＲＡＭ内の出力ピンの信号レベルを設定できる領域３に安全データ１２をライトする（３７）。【００２１】
図３に、ＣＲＡＭ内の出力回路領域である出力ピンの信号レベルを設定できる領域３の具体的な回路構成例を示す。この領域は個々の出力ピン毎に接続される出力ピンブロック４１で構成され、個々の出力ピンブロック４１は、一時的なデータ保持機構であるフリップフロップ４２と、このフリップフロップ４２へのデバイス側入力信号４４、外部信号４３と、外部信号４３の入出力やフリップフロップ４２の初期値や入出力方向、信号電位レベル等を記憶する設定レジスタ４５で構成される。【００２２】
図４に出力回路領域上書き制御部８の回路構成例を示す。出力回路領域上書き制御部８は、領域アドレスの入出力処理を行うリード・ライト制御部１６と、安全データ１２の起点アドレスとデータサイズを保持するデータサイズ記憶部１８と、安全データ１２格納場所のアドレスを生成するアドレス計算部１７とで構成する。【００２３】
図５に図４で示した構成要素の中で主要なシーケンス制御を行うリード・ライト制御部１６の状態遷移図を示す。図５において、稼動開始からエラー検出信号を待つアイドルステートであるＰ０で待機する。トリガ信号である外部エラー信号２１またはＣＲＡＭエラー検出部７からのエラー検出信号を入力すると、ステートＰ１に移動し、アドレス計算部１７に計算開始指示（１６ａ）を発行する。その後、ステートＰ２に移動し、安全データ１２の格納アドレスを受信（１６ｂ）する。ＣＲＡＭ Ｒ／Ｗ制御部６が外部記憶部１０へのアクセスを開始し、安全データ１２の入力を開始したことを知らせる信号（２５）を待つ。安全データ入力開始信号２５を受信した後、ステートＰ３に移動し、ＣＲＡＭへの安全データの上書き指示（２４）を発行し、ＣＲＡＭへのライトが完了したら（２５）、ステートＰ０に移動し、待機状態に戻る。【００２４】
なお、ＣＲＡＭ Ｒ／Ｗ制御部６と出力回路領域上書き制御部８をまとめてＣＲＡＭのリード、ライトを制御する制御部としても良い。【００２５】
以上のように、本実施例は、コンフィギュレーションメモリを有するプログラマブルデバイスであって、コンフィギュレーションメモリのデータ反転障害を検出するエラー検出部と、コンフィギュレーションメモリのリード、ライトを制御する制御部とを有し、コンフィギュレーションメモリはプログラマブルデバイスの出力信号を制御する回路情報を格納する出力回路領域を有しており、制御部は、エラー検出部からのエラー検出信号をトリガとして、プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを格納する安全データ格納部から該コンフィギュレーションデータを読み出し出力回路領域に上書きする構成とする。【００２６】
また、コンフィギュレーションメモリを有するプログラマブルデバイスの障害対策方法であって、コンフィギュレーションメモリ内のプログラマブルデバイスの出力信号を制御する回路情報を格納する出力回路領域の出力を安全な信号レベルに設定するコンフィギュレーションデータを準備し、コンフィギュレーションメモリのデータ反転障害を検出した際に、前記安全な信号レベルに設定するコンフィギュレーションデータを出力回路領域に上書きする構成とする。【００２７】
よって、本実施例によれば、電子システム製品に用いるプログラマブルデバイスで発生するＣＲＡＭの環境放射線による障害等、設計時に考えられない想定が困難な異常状態発生時に、即安全な状態に出力信号を遷移させることが可能となり、ＦＰＧＡを使用した装置の危険側障害リスクをＦＰＧＡ単体で削減することができる。これにより、特に社会インフラシステムである、鉄道、車両制御、信号制御、電力送電機器制御等の安全性を要求される電子システム装置の安全性の向上を低消費電力、低コストで実現することが出来る。
【実施例２】
【００２８】
図６は、本実施例における安全データの構成図である。本実施例は、他の構成は図１と同一で、安全データを複数持つ例（１２ａ）を示す。すなわち、図６（Ａ）は実施例１での安全データ１２を１つ持つ場合を示しており、図６（Ｂ）は安全データを複数持つ１２ａを示している。本実施例では、エラー検出時のトリガ信号に属性データを付与し、例えば外部エラー信号２１とＣＲＡＭ内でのエラー信号の種類、例えばどこのブロックのエラーかを示す属性データとして送出し、出力回路領域上書き制御部８は、この属性データをもとに所望の安全データのアドレスを計算する。【００２９】
よって、本実施例によれば、エラーの種類によって出力信号の固定化パターンを変えることができ、エラーの種類に合わせて、より安全な動作に移行できる出力信号に固定化することができる。
【実施例３】
【００３０】
図７は、本実施例における出力回路領域部分を示した構成図である。本実施例では、ＣＲＡＭ内の出力ピンの信号レベルを設定できる領域３に加え、この領域に接続されるコンフィギュレーションデータ領域５ａも出力回路領域上書き制御部８の上書き対象領域とする。すなわち、図７において、コンフィギュレーションデータ領域５ａは、通常の回路情報を格納する領域で、ここに信号レベルを変化させ順序制御する論理情報を持つコンフィギュレーションデータである安全データを上書きする。コンフィギュレーションデータ領域５ａは論理情報を格納するブロック５ｂを有しており、例えば、ルックアップテーブルとフリップフロップで構成される。【００３１】
よって、本実施例によれば、プログラマブルデバイス１の出力信号を固定化する直前に出力信号を変化させることができ、本実施例のプログラマブルデバイス１の出力信号に接続される次段のデバイス部品に対し、安全な状態に移行するための順序制御信号を送出することができる。これにより、一気に固定値とするのではなく、一旦準備信号を出力できるので、次段のデバイス部品の、前段出力の固定化による通常の動作ではない異常動作に対する後処理対策を簡易化することが可能となる。
【実施例４】
【００３２】
図８は、本実施例に係るプログラマブルデバイスの構成図である。図１と同じ部分には同じ符号を付しており、構成、動作が同じ部分については説明を省略する。【００３３】
本実施例では、図８に示すように、安全データを保持する安全データ保持部１３をプログラマブルデバイス１内に設けることを特徴としている。制御動作は図１と同様であり、安全データの入力が安全データ保持部１３からとなる。【００３４】
この構成により、実施例１と比較して、外部記憶部１０からの安全データ入力にかかるレイテンシを削減することができ、ＣＲＡＭ内の出力ピンの信号レベルを設定できる領域３へのライト処理完了までの時間を短縮することができる。【００３５】
なお、安全データであるコンフィグレーションデータの代わりに、ＣＲＡＭ内に論理情報として格納しても良い。すなわち、ＣＲＡＭ内に回路構造の定義段階で、出力を固定化する回路を入れ込んでおき、イネーブル制御等で出力を固定にするようにしてもよい。以上のことから、本実施例によれば、プログラマブルデバイス１の出力信号を固定化する直前に出力信号を高速に安全状態に移行するための信号レベルに固定できる。
【実施例５】
【００３６】
図９は、本実施例に係るプログラマブルデバイスの構成図である。図１と同じ部分には同じ符号を付しており、構成、動作が同じ部分については説明を省略する。【００３７】
本実施例では、図９に示すように、出力回路領域上書き制御部８と出力回路領域アドレス保持部９をプログラマブルデバイス１から分離し、別デバイスとして構成している。すなわち、図９において、１４で示す出力回路領域上書き制御ＬＳＩに出力回路領域上書き制御部８と出力回路領域アドレス保持部９を格納し、プログラマブルデバイス１から分離する構成とする。制御動作は、図１と同様なので説明を省略する。【００３８】
この構成により、出力回路領域上書き制御部８と出力回路領域アドレス保持部９をＣＲＡＭと同じプログラマブルデバイス１上に構成する場合に比べ、環境放射線によるソフトエラーの影響を受け難くすることができ、信頼性を向上できる。また、複数デバイスによる多様性で機能安全規格に示される安全度水準を上げることが可能となる。
【実施例６】
【００３９】
図１０は、本実施例に係るプログラマブルデバイスの構成図である。図８と同じ部分には同じ符号を付しており、構成、動作が同じ部分については説明を省略する。本実施例では、図１０に示す構成において、プログラマブルデバイス１で実現する論理回路情報を格納する機能回路ブロック群５で、個々の回路ブロックからの論理エラー信号（図中(1)(2)(3)）を、エラー収集部１５で受信し、そのエラー信号を出力回路領域上書き制御部８へ出力する構成とする。そして、このエラー信号をトリガとして、ＣＲＡＭ内の出力ピンの信号レベルを設定する領域３へのライト処理を開始する。なお、ＣＲＡＭエラー検出部７からのエラー検出信号とエラー収集部１５からのエラー信号の両者を用いて、それとトリガとしてＣＲＡＭ内の出力ピンの信号レベルを設定する領域３へのライト処理を開始するようにしても良い。【００４０】
これにより、ＣＲＡＭ内のエラーを巡回して検出する時間によるエラー検出の遅延をなくし、ＣＲＡＭ内の出力ピンの信号レベルを設定する領域３へのライト処理を開始することができる。【００４１】
よって、本実施例によれば、ＣＲＡＭのビット反転から出力信号固定化までの時間が高速化可能となり、誤動作要因となりえる後出力の影響を一層小さくできる。【００４２】
なお、安全データを外部記憶部１０に配置する構成（図１と同じ）としても良い。
【実施例７】
【００４３】
本実施例に係るプログラマブルデバイスの構成図を図１０に示す。本実施例は、図１０に示すように、実施例６の構成に、出力信号状態を、一時的に保持する手段である、ラッチする出力信号一時ラッチ部５cと、そのラッチした結果を収集し、一時的に保持し、その後安全データ１３を更新する安全データ更新部１３ａを設けた構成である。【００４４】
これにより、エラー発生直前の出力信号データを保持し、その状態を安全データとして出力信号を固定化することができる。
【実施例８】
【００４５】
図１１は、本実施例におけるプログラマブルデバイスを搭載した装置基板の構成図である。  
図１１において、本実施例によるプログラマブルデバイス１を複数個装置基板５１上に配置し、その個々のプログラマブルデバイスからのエラー信号５４を、エラー信号収集部５６で収集する。エラー信号収集部５６は、統合エラー信号５５を出力し、実施例１から７で示したプログラマブルデバイス１の外部エラー信号として出力する。複数のプログラマブルデバイス１は、全プログラマブルデバイスの出力信号レベルを一括して固定化し、安全状態出力に設定し、次段のデバイス部品、例えばＬＳＩである、５２，５３に対して、安全動作となる信号レベルを出力し続ける。【００４６】
よって、本実施例によれば、装置基板の安全性を向上できる。
【実施例９】
【００４７】
本実施例に係るプログラマブルデバイスの構成図を図１２に示す。図８と同じ部分には同じ符号を付してあり、構成、動作が同じ部分については説明を省略する。【００４８】
本実施例では、図１２に示すように、外部センサ５０と、外部センサからのデータを入力し正常状態との比較により異常状態を判定するセンサ異常状態判定部１９を設ける。センサ異常状態判定部１９は、センサ異常を検出すると出力回路領域上書き制御部８に異常検出信号を出力し、ＣＲＡＭ内の出力ピンの信号レベルを設定できる領域３へのライト処理を開始する。【００４９】
よって、本実施例によれば、プログラマブルデバイス１に接続されるセンサの異常状態を検出し、その異常状態を次段のデバイス部品に伝播しないことで、センサがつながる電子システム装置の安全性を向上できる。【００５０】
なお、安全データを外部記憶部１０に配置する構成（図１と同じ）としてもよい。【００５１】
また、図８に示す外部エラーと、本実施例の外部センサからのデータ入力とのＯＲで異常状態を検出し、それをトリガとして、出力信号レベルを固定化し安全状態出力に設定してもよい。
【実施例１０】
【００５２】
本実施例におけるプログラマブルデバイスを搭載した制御装置の構成図を図１３に示す。図１３において、５７は制御装置、５８は装置基板群、５９は入出力Ｉ／Ｆ、６０ａは入出力装置、６０ｂは出力装置、６０ｃは入力装置である。【００５３】
図１３において、実施例１から実施例９のプログラマブルデバイスを搭載した制御装置５７は、装置基板群５８に搭載されているプログラマブルデバイス１で環境放射線によるソフトエラーや、外部エラーが発生した場合、出力信号が装置動作として安全側となる出力に固定化し、入出力装置６０ａ、出力装置６０ｂに出力される。【００５４】
すなわち、本実施例は、コンフィギュレーションメモリを有するプログラマブルデバイスと、入出力Ｉ／Ｆを備えた制御装置であって、プログラマブルデバイスは、コンフィギュレーションメモリのデータ反転障害を検出するエラー検出部と、コンフィギュレーションメモリをリード、ライトする制御部とを有し、コンフィギュレーションメモリはプログラマブルデバイスの出力信号を制御する回路情報を格納する出力回路領域を有しており、制御部は、エラー検出部からのエラー検出信号をトリガとして、プログラマブルデバイスの出力信号レベルを固定化するためのコンフィギュレーションデータを格納する安全データ格納部から該コンフィギュレーションデータを読み出し出力回路領域に上書きする構成とする。【００５５】
よって、本実施例によれば、プログラマブルデバイスが搭載される制御装置の安全性を向上できる。
【実施例１１】
【００５６】
図１４は、本実施例の、実施例１から実施例９のプログラマブルデバイスを搭載した車載制御装置の構成図である。図１４において、エンジン制御ユニット６８は、エアフローセンサ６１、カムポジションセンサ６２、クランクポジションセンサ６３、水温センサ６４、車速センサ６５、バッテリセンサ６６等からの各種センシングデータをプログラマブルデバイス１に入力する構成である。プログラマブルデバイス１は、各種センサからの入力データをもとにインジェクタ６７への制御信号を計算、生成し出力する。【００５７】
ここで、従来技術では、プログラマブルデバイス１の論理情報が破壊され、インジェクタ６７への制御信号が異常状態となり、急加速指示や急停止指示になると、エンジン制御ユニット６８を搭載する自動車が異常動作となり、乗車している人等に危険を及ぼす可能性がある。【００５８】
従来の自動車では、エンジン制御ユニット内の制御部を複数使用して、お互いに比較、監視することで異常状態となったことを検出し、論理的な制御を用いて安全状態に遷移するよう制御する。しかし、複数部品を使用することになり、消費電力が増大し、コストが高くなるという問題があった。【００５９】
しかし、本実施例によれば、単一のプログラマブルデバイスで異常状態となった場合の出力を安全状態に即座に遷移することができることから、消費電力、コストを削減することができる。
【実施例１２】
【００６０】
図１５は、本実施例の、実施例１から実施例９のプログラマブルデバイスを搭載した鉄道車両制御装置の例であるモータ制御部の構成例である。図１５において、鉄道車両全体を制御する車上コントローラ７９からの指示を本実施例によるプログラマブルデバイス１で入力する。プログラマブルデバイス１は、上述の車上コントローラ７９からの指示に従ってモータ７３をドライブするドライブ回路７２にドライブ制御信号７５を出力する。ドライブ回路は、電源７１から電力の供給を受け、モータ７３に対してトライブ信号７７，７８を出力する。モータ７３の回転数、回転速度は、エンコーダ７４で計測され、プログラマブルデバイス１にフィードバックされる。【００６１】
ここで、プログラマブルデバイス１にエラーが発生した場合、本実施例の構成を有しない従来技術では、ドライブ制御信号７５が誤ったデータを出力し、異常な加速、減速を引き起こす。その結果がエンコーダ７４からフィードバックされるが、その結果も誤って解釈される恐れがあり、回転数の急激な変化につながる恐れがある。【００６２】
しかし、本実施例によれば、ドライブ制御信号７５をモータ７３が停止する状態に固定化することで、エンコーダ７４のフィードバックの影響も排除でき、安全にモータを停止することができる。さらに実施例３によるプログラマブルデバイス１を用いることにより、モータの回転数を徐々に落とすドライブ制御信号７５を出力することで、鉄道車両の急停車を防ぐことができ、より安全に停止することができる。
【実施例１３】
【００６３】
図１６は、本実施例の、実施例１から実施例９のプログラマブルデバイスを搭載したロボットの構成例である。【００６４】
図１６において、８０はロボット全体制御部、８１は駆動部制御信号、８２、８３、８４はロボット関節駆動部である。ロボット全体制御部８０からの指示を受けて、本実施例によるプログラマブルデバイス１を搭載した装置基板５１から、ロボットの動きを制御するロボット関節駆動部８２、８３、８４に駆動部制御信号８１を出力する。【００６５】
本実施例では、ロボットの作業状態でのロボット関節駆動部８４の位置が８４ａにあった場合、プログラマブルデバイス１にエラーが発生したら、ロボット関節駆動部を即座に停止する信号レベルに固定化する。また、実施例３によるプログラマブルデバイス１を用いることにより、安全な位置であるロボット関節駆動部８４の位置に徐々に移動する出力を行うことができる。
【実施例１４】
【００６６】
図１７は、本実施例の、実施例１から実施例９を搭載した建設機械の構成例である。図１７において、９１は建設機械本体、９２はエンジン制御部、９３，９４はアーム駆動部、９５はショベル、９６はキャタピラであり、本実施例によるプログラマブルデバイス１を搭載した装置基板５１から、建設機械のアーム駆動部９３，９４及びショベル９５に制御信号を出力する（図中では破線矢印で示す）。さらに移動動作を制御するエンジン制御部９２へも移動制御信号を出力する。【００６７】
本実施例では、プログラマブルデバイス１にエラーが発生したら、駆動部およびエンジンを即座に停止する信号レベルに固定化する。また、実施例３によるプログラマブルデバイス１を用いることにより、駆動部を安全な位置に徐々に移動することができる。【００６８】
以上述べたように、本実施例によれば、プログラマブルデバイスで発生するコンフィギュレーションメモリの環境放射線による障害等、想定が困難な異常状態発生時に即安全な状態に出力信号を遷移させることで、ＦＰＧＡを使用した装置の危険側障害リスクを削減することができ、装置の安全性向上に貢献できる。【００６９】
さらに電子システム装置として機能安全に関する国際標準規格ＩＥＣ(International Electrotechnical Commission）６１５０８で要求される安全度水準としてＳＩＬ(Safety Integrity level)３以上の認証取得も容易となる。すなわち、従来は、その設定値が安全側であることを説明する必要があったが、本実施例では、出力値を装置の仕様で決まる安全パターンに固定化するので、その説明は容易となるからである。さらに電子システム装置の信頼性および安全性の向上を簡易な構成で実現でき消費電力やコストを削減できる。【００７０】
なお、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【符号の説明】
【００７１】
１…プログラマブルデバイス、２…コンフィギュレーションメモリ（ＣＲＡＭ）
３…ＣＲＡＭ内の出力ピンの信号レベルを設定できる領域、
４…ＣＲＡＭ内の入力ピンの信号レベルを設定できる領域、
５…機能回路ブロック群、５ａ…コンフィギュレーションデータ領域、
５ｂ…論理情報を格納するブロック、５ｃ…出力信号一時ラッチ部、
６…ＣＲＡＭ  Ｒ／Ｗ制御部、７…ＣＲＡＭエラー検出部、
８…出力回路領域上書き制御部、９…出力回路領域アドレス保持部、
１０…外部記憶部、１１…コンフィギュレーションデータ、１２…安全データ、
１３…安全データ格納部、１３ａ…安全データ更新部、
１４…出力回路領域上書き制御ＬＳＩ、１５…エラー収集部、
１６…リード・ライト制御部、１７…アドレス計算部、１８…データサイズ記憶部、
１９…センサ異常状態判定部、２１…外部エラー信号、
２２…ＣＲＡＭとのＲ／Ｗアクセス信号、
２３…安全データの格納領域アドレスとデータサイズ信号、
２４…ＣＲＡＭ内の出力ピンの信号レベルを設定できる領域アドレスデータ信号、
２５…ＣＲＡＭライト完了信号、４１…出力ピンブロック、４２…フリップフロップ、
４３…外部信号、４４…デバイス側入力信号、４５…設定レジスタ、５０…外部センサ、
５１…装置基板、５２，５３…装置基板に搭載されたデバイス部品、例えばＬＳＩ、
５４…エラー信号、５５…エラー集約信号、５６…エラー収集部、
５７…制御装置、  ５８…装置基板群、６８…エンジン制御ユニット、
７２…ドライブ回路、７３…モータ本体、７５…ドライブ制御信号、
７７、７８…ドライブ信号、８０…ロボット全体制御部、８１…駆動部制御信号、
８２，８３，８４…ロボット関節駆動部、９１…建設機械本体、９２…エンジン制御部
【図１】
2016110968.tif 000003
【図２】
2016110968.tif 000004
【図３】
2016110968.tif 000005
【図４】
2016110968.tif 000006
【図５】
2016110968.tif 000007
【図６】
2016110968.tif 000008
【図７】
2016110968.tif 000009
【図８】
2016110968.tif 000010
【図９】
2016110968.tif 000011
【図１０】
2016110968.tif 000012
【図１１】
2016110968.tif 000013
【図１２】
2016110968.tif 000014
【図１３】
2016110968.tif 000015
【図１４】
2016110968.tif 000016
【図１５】
2016110968.tif 000017
【図１６】
2016110968.tif 000018
【図１７】
2016110968.tif 000019
【国際調査報告】
2016110968.tif 000020
2016110968.tif 000021
2016110968.tif 000022
2016110968.tif 000023