(57)【特許請求の範囲】
【請求項１】
バウンダリスキャンバスに接続される２つのプロセッサコアによって相互に相手のプロセッサコアを診断する演算部と、前記演算部で実行するプログラム及びデータを記憶するメモリ部と、前記演算部で処理される入出力信号を処理する入出力部と、前記演算部、前記メモリ部、及び前記入出力部を接続するバスとを備える制御装置であって、
前記演算部は、前記バウンダリスキャンバスに接続された第１の汎用プロセッサコア及び第２の汎用プロセッサコアを備え、
前記メモリ部は、前記演算部がバウンダリスキャン検査を実行するための第１及び第２のバウンダリスキャン制御プログラムと、バウンダリスキャン検査の結果の良否を判定するための第１及び第２の期待値データと、前記演算部が制御を実行するための制御プログラムとを備え、
前記第１の汎用プロセッサコアは、第１のバウンダリスキャン検査回路と、前記第１のバウンダリスキャン検査回路によって検査される第１のプロセッサ内部回路と、前記演算部が実行する制御プログラム、または、第１及び第２のバウンダリスキャン制御プログラムのいずれかを選択し、前記制御装置の制御パターンを前記第１のプロセッサ内部回路に対して予め設定する制御パターン設定部とを備え、
前記第２の汎用プロセッサコアは、第２のバウンダリスキャン検査回路と、前記第２のバウンダリスキャン検査回路により検査される第２のプロセッサ内部回路とを備え、
前記制御パターンにしたがって、前記第１のプロセッサ内部回路は、前記第１のバウンダリスキャン制御プログラムを抽出して、前記バウンダリスキャンバスを介して前記第２の汎用プロセッサコアに対してバウンダリスキャン検査を、または、前記第２のプロセッサ内部回路は、前記制御パターンの設定に基づく診断要求指令を前記第１のプロセッサ内部回路から前記バスを介して受信して、前記第２のバウンダリスキャン制御プログラムを抽出し、前記バウンダリスキャンバスを介して前記第１の汎用プロセッサコアに対してバウンダリスキャン検査を、時分割で相互に実行し、
さらに、前記バスに通信インタフェースを介して接続され、前記第１のプロセッサ内部回路及び前記第２のプロセッサ内部回路の第１の設計データ及び第１の修復データを記憶する設計ツールと、
前記第１のバウンダリスキャン検査回路には、一方を前記バウンダリスキャンバスに他方を前記第１のプロセッサ内部回路に接続される第１の設計データ書き込み制御回路を備え、
前記第２のバウンダリスキャン検査回路には、一方を前記バウンダリスキンバスに他方を前記第２のプロセッサ内部回路に接続される第２の設計データ書き込み制御回路を備え、
前記メモリ部には、前記バウンダリスキャン検査の結果と前記第１及び第２の期待値データとを備え、
前記第１のプロセッサ内部回路は、前記第２の汎用プロセッサコアの前記バウンダリスキャン検査の結果を、前記バウンダリスキャンバスを介して取得し、前記結果と前記第１の期待値データとを比較して、前記結果の良否を判定し、故障有りと判定された場合予め設定された前記第１の修復データを前記設計ツールより抽出し、前記第２の設計データ書き込み制御回路を介して、前記第２のプロセッサ内部回路の不揮発性メモリに記憶される第１の設計データを、抽出した前記第１の修復データで書き換え、
前記第２のプロセッサ内部回路は、前記第１の汎用プロセッサコアの前記バウンダリスキャン検査の結果を、前記バウンダリスキャンチェーンを介して取得し、前記結果と前記第２の期待値データとを比較して、良否を前記判定プログラムで判定し、判定の結果異常と判定された場合予め設定される第２の修復データを前記設計ツールより抽出し、前記第１の設計データ書き込み制御回路を介して、前記第１のプロセッサ内部回路の不揮発性メモリに記憶される前記第２の設計データを、抽出した前記第２の修復データで書き換える
ようにしたことを特徴とする制御装置。
【請求項２】
バウンダリスキャンバスに接続される２つのプロセッサコアによって相互に相手のプロセッサコアを診断する演算部と、前記演算部で実行するプログラム及びデータを記憶するメモリ部と、前記演算部で処理される入出力信号を処理する入出力部と、前記演算部、前記メモリ部、及び前記入出力部を接続するバスとを備える制御装置であって、
前記演算部は、前記バウンダリスキャンバスに接続された第１の汎用プロセッサコア及び第２の専用プロセッサコアを備え、
前記メモリ部は、前記演算部がバウンダリスキャン検査を実行するための第３のバウンダリスキャン制御プログラムと、前記バウンダリスキャン検査の良否を判定するための前記第３及び第４の期待値データと、前記演算部が制御を実行するための制御プログラムとを備え、
前記第１の汎用プロセッサコアは、第１のバウンダリスキャン検査回路と、前記第１のバウンダリスキャン検査回路により検査される第１のプロセッサ内部回路と、前記演算部が実行する制御プログラム、または、第３のバウンダリスキャン制御プログラムのいずれかを選択し、前記制御装置の制御パターンを前記第１のプロセッサ内部回路に対して予め設定する制御パターン設定部とを備え、
前記第２の専用プロセッサコアは、第５のバウンダリスキャン検査回路と、前記第５のバウンダリスキャン検査回路によって検査される第５のプロセッサ内部回路と、前記バウンダリスキャンバスに接続される前記第１の汎用プロセッサコアを検査するバウンダリスキャン制御回路とを備え、
前記制御パターンにしたがって、前記第１のプロセッサ内部回路は、前記第３のバウンダリ制御プログラムを抽出して、前記バウンダリスキャンバスを介して前記第２の専用プロセッサコアに対してバウンダリスキャン検査を、もしくは、前記第５のプロセッサ内部回路は、前記制御パターンに基づく診断要求指令を前記第１のプロセッサ内部回路から前記バスを介して受信して、前記バウンダリスキャン制御回路を起動して、前記バウンダリスキャンバスを介して前記第１の汎用プロセッサコアに対してバウンダリスキャン検査を、時分割で相互に実行し、
さらに、前記バスに通信インタフェースを介して接続され、前記第１のプロセッサ内部回路及び前記第５のプロセッサコア内部回路の夫々が制御する第２３及び第４の設計データと、第３及び第４の修復データとを記憶する設計ツールと、
前記第１のバウンダリスキャン検査回路には、一方を前記バウンダリスキャンバスに他方を前記第１のプロセッサ内部回路に接続される第１の設計データ書き込み制御回路を備え、
前記第５のバウンダリスキャン検査回路には、一方を前記バウンダリスキンバスに他方を前記第５のプロセッサ内部回路に接続される第３の設計データ書き込み制御回路を備え、
前記第１のプロセッサ内部回路は、前記第２の汎用プロセッサコアの前記バウンダリスキャン検査の結果を、前記バウンダリスキャンバスを介して取得し、前記結果と前記第３の期待値データとを比較して、前記結果の良否を判定し、故障ありと判定された場合には、予め設定された前記第３の修復データを前記設計ツールより抽出し、前記第３の設計データ書き込み制御回路を介して、前記第５のプロセッサ内部回路の不揮発性メモリに記憶される、第３の設計データを抽出した前記第３の修復データに書き換え、
前記第５のプロセッサ内部回路は、前記第１の汎用プロセッサコアの前記バウンダリスキャン検査の結果を、前記バウンダリスキャンバスを介して取得し、前記結果と前記第４の期待値データとを比較して、良否を判定し、判定の結果故障ありと判定された場合、予め設定される第４の修復データを前記設計ツールより抽出し、前記第１の設計データ書き込み制御回路を介して、前記第１のプロセッサ内部回路の不揮発性メモリに記憶される前記第４の設計データを、抽出した前記第４の修復データで書き換えるようにしたことを特徴とする制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、鉄鋼プラントや石油化学プラントなどのプロセスを制御する制御装置に関し、特に、演算部に複数のプロセッサコアを備える制御装置のバウンダリスキャン検査に関する。
【背景技術】
【０００２】
従来、触針によるボード検査が困難な集積回路を実装した電子機器の検査方法として、ＩＥＥＥ１１４９．１−１９９０規格として定められている、ＪＴＡＧ（Joint Test Action Group）が提案したバウンダリスキャン検査（ＪＴＡＧ検査とも言う。以後、短縮して表記する場合はＪＴＡＧ検査と言う。）がある。
【０００３】
このＪＡＴＧ検査について、図８を参照して説明する。ＪＴＡＧ検査は、例えば、バウンダリスキャンされる２つの被検査回路８５及び８６を搭載するＪＴＡＧ検査回路８３及び８４と、ＪＴＡＧ検査回路８３及び８４を専用線８７でデイジーチェーン状に接続し、ＪＴＡＧ検査回路８３及び８４を駆動してスキャンを実行するＪＴＡＧコントローラ８２と、このＪＴＡＧコントローラ８２を制御するバウンダリスキャン制御プログラムを備えるパーソナルコンピュータ、ＰＣ８１とから成る。
【０００４】
専用線８７は、通常、２本のシリアルに接続される信号線（ＴＤＩ、ＴＤＯ）と、３本のパラレルに接続される制御線（ＴＭＳ、ＴＣＫ、ＴＲＳＴ）とから成る。これら５本の線をバウンダリスキャンバスという。
【０００５】
図８に示すように、入力データの信号線ＴＤＩ及び被検査回路からの出力データの信号線ＴＤＯは、ＪＴＡＧコントローラ８２、ＪＴＡＧ検査回路８３及び被検査回路８５、ＪＴＡＧ検査回路８４及び被検査回路８６の間をシリアルにチェーン状に接続される。また、これらの信号線ＴＤＩ及び信号線ＴＤＯから転送される入出力データを制御する制御線は、被検査回路間をパラレルに接続される。
【０００６】
ＪＴＡＧ検査回路８３は、搭載される被検査回路８５の入出力ピン８３ｃに対応する入出力端子８３ａと、この入出力端子８３ａと入出力ピン８３ｃとの間に設けられ、入出力端子８３ａと被検査回路８５との間で入出力される入力データ及び出力データをスキャンするバウンダリスキャンセル８３ｂとを備え、ＪＴＡＧコントローラ８２からシリアルに出力されるビット列の入力データを信号線ＴＤＩから転送し、バウンダリスキャンセル８３ｂを通過する全ての出力データを信号線ＴＤＯから出力する。
【０００７】
同様に、ＪＴＡＧ検査回路８４は、搭載される被検査回路８６の入出力ピン８４ｃに対応する入出力端子８４ａと、この入出力端子８４ａと入出力ピン８４ｃとの間に設けられ、入出力端子８４ａと被検査回路８６との間で入出力される入力データ及び出力データをスキャンするバウンダリスキャンセル８４ｂとを備え、ＪＴＡＧコントローラ８２からシリアルに出力されるビット列の入力データを信号線ＴＤＩから転送し、バウンダリスキャンセル８３ｂを通過する全ての出力データを信号線ＴＤＯから出力する。
【０００８】
ＪＴＡＧコントローラ８２は、予め設定されるバウンダリスキャン制御プログラムにしたがって、シリアルの入力データを信号線ＴＤＩから転送し、被検査回路８５及び８６からの出力データを信号線ＴＤＯから受信して、予め設定される基準値データとこの出力データとを比較して、この出力データの良否を判定する。
【０００９】
また、入出力端子８３ａ及び８４ａは、バス８８に接続され、被検査回路８５及び８６が制御する通常の制御動作時の入出力信号が、バス８８を介して処理される。
【００１０】
このようなＪＴＡＧ検査回路を備える電子機器の信頼性を向上させるため、電子機器自身が、電源を投入する毎に自動的にバウンダリスキャン検査を実行し、自身の正常、異常を自己診断する機構を備える技術が開示されている（例えば、特許文献１参照）。
【００１１】
また、従来のバウンダリスキャン検査装置は、突発的な装置の障害にスピーディに対応が出来なかったため、プリント回路基板上のバウンダリスキャン機構入りＩＣに対して自己テスト機能の起動やＩＣ内の特定レジスタ読み取りなどの簡単なバウンダリスキャン命令を実行させるために使用するバウンダリスキャン制御装置がある。（例えば、特許文献２参照）。
【００１２】
一方、鉄鋼や化学プラントなどプロセスの制御に用いられる制御装置においては、近年、複数のプロセッサコア（マルチコアとも言う）を有する制御装置が多く発表されている。
【００１３】
このマルチコアを構成するプロセッサコアには、例えば、ソフトウェアによりプログラミングが可能な汎用命令を処理する汎用プロセッサコアや、例えば、画像や音声などの特定の演算処理を行う専用プロセッサコアがある。
【００１４】
前者は汎用的な処理の実行に適しており、後者は、特定の処理を高速・低消費電力で処理する事が可能である。この事から、マルチコアのプロセッサには、汎用プロセッサのみの構成、汎用と専用プロセッサが混在した構成、また、専用プロセッサコアのみの構成の制御装置も増えている。
【００１５】
また、制御装置内のプロセッサコアを実装するハードウウェアとしては、ＦＰＧＡやＰＬＤなどの再構成可能なデバイスの適用が進んでいる。ＦＰＧＡ（Field Program Gate Array）やＰＬＤ（Programmable Logic Device）は、従来のカスタムＩＣに比較して、基板に実装した後も回路構成を自由に変更する事が出来る特徴を有する。
【００１６】
このため、処理すべきプロトコルが増えたり、対応すべき規格が変更になったりした場合には、回路変更が可能なＦＰＧＡ及びＰＬＤが、特定処理に特化した専用プロセッサコアや伝送用コントロールコアに採用されている。
【００１７】
このようなＦＰＧＡやＰＬＤを備える制御装置においては、制御装置の故障を修復する際や、制御装置内に備えるこれらのデバイスからなる回路の更新を、ネットワークを介し効率よく行う手法が開示されている（例えば、特許文献３参照）。
【００１８】
特許文献３に開示されたＦＰＧＡを有する装置では、ＣＰＵ、メモリ、ネットワーク機能、及びＦＰＧＡを有し、ネットワークでつながる管理装置を介してＦＰＧＡを有する装置にアクセス出来る端末より、ＦＰＧＡの設計データの再構成を行うことが可能とされている。
【特許文献１】特開平９―５４００号公報
【特許文献２】特開２０００−２０６２０２号公報
【特許文献３】特開２００１−３０６３４３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
近年、制御装置が複数のプロセッサコアを有するようになったことにより、制御装置の回路規模が増大し、プロセッサコア等を構成する集積回路のピン数が増える傾向にある。
【００２０】
また、このような集積回路や集積回路を搭載する基板上の配線の微細化も進み、集積回路の入出力ピン数の増大とも相まって、基板上に実装する際の断線や接触不良のよる故障、及び集積回路自身の回路の故障箇所の発見や、故障した集積回路の再構成機能が制御装置の信頼性を確保する上で重要になっている。
【００２１】
特に、これらの故障は、偶発的に発生する場合もあることからインサーキットテスタによる検査では素早く対応できないので、制御装置を稼動した状態でもバウンダリスキャン検査が可能な制御装置とすることが求められている。
【００２２】
しかしながら、特許文献１に記された電子機器では、電子機器の主たる機能を実現する集積回路については、バウンダリスキャン検査を行うことにより正常異常の検査を行う事は可能であるが、バウンダリスキャン検査を行うために設けられる検査装置そのものの検査については、そのための機構が備えられていない。
【００２３】
そのため、バウンダリスキャン検査装置の異常に対しては自己診断の方法が無く、バウンダリスキャン検査装置の故障であるのか、被検査対象である集積回路の故障であるのかを識別する事が出来ない問題がある。
【００２４】
また、集積回路と同様の環境に置かれる検査装置にも、集積回路と同様に故障は発生する。この為、検査装置を備えること自体、検査不能な装置を新たに加える事になり、装置全体の信頼性の向上を阻害する問題がある。
【００２５】
また、特許文献２に記されたプリント回路基板においても、特許文献１における問題と同様の問題が存在する。即ち、特許文献２の簡易型バウンダリスキャン制御装置は、バウンダリスキャン機構入りＩＣの診断を行う事は出来るが、簡易型バウンダリスキャン制御装置自身をプリント基板単体で診断する事が出来ない問題がある。
【００２６】
また、特許文献３に記されたＦＰＧＡを有する装置は、ネットワークでつながる管理装置を介してＦＰＧＡの設計データの提供を受け、装置のＦＰＧＡの内部回路を更新する事が出来る。
【００２７】
しかしながら、ＦＰＧＡの回路の更新には、ＦＰＧＡを有する装置内で更新処理を実行する更新処理装置が必ず必要となるため、この更新処理装置自身を更新対象とする事は出来ないため、更新処理装置自身の設計データを更新する為には、更新処理装置用に別の更新処理装置が必要となる問題がある。
【００２８】
本発明は、上記の問題を解決するためになされたもので、制御装置の演算部のプロセッサコアとその自己診断装置の自己診断を可能とし、運転中でもバウンダリスキャン検査が可能で、演算部のプロセッサコアの故障箇所の自己修復が可能な制御装置を提供することを目的とする。
【課題を解決するための手段】
【００２９】
上記目的を達成するために、本発明による請求項１に係る制御装置は、バウンダリスキャンバスに接続される２つのプロセッサコアによって相互に相手のプロセッサコアを診断する演算部と、前記演算部で実行するプログラム及びデータを記憶するメモリ部と、前記演算部で処理される入出力信号を処理する入出力部と、前記演算部、前記メモリ部、及び前記入出力部を接続するバスとを備える制御装置であって、前記演算部は、前記バウンダリスキャンバスに接続された第１の汎用プロセッサコア及び第２の汎用プロセッサコアを備え、前記メモリ部は、前記演算部がバウンダリスキャン検査を実行するための第１及び第２のバウンダリスキャン制御プログラムと、バウンダリスキャン検査の結果の良否を判定するための第１及び第２の期待値データと、前記演算部が制御を実行するための制御プログラムとを備え、前記第１の汎用プロセッサコアは、第１のバウンダリスキャン検査回路と、前記第１のバウンダリスキャン検査回路によって検査される第１のプロセッサ内部回路と、前記演算部が実行する制御プログラム、または、第１及び第２のバウンダリスキャン制御プログラムのいずれかを選択し、前記制御装置の制御パターンを前記第１のプロセッサ内部回路に対して予め設定する制御パターン設定部とを備え、前記第２の汎用プロセッサコアは、第２のバウンダリスキャン検査回路と、前記第２のバウンダリスキャン検査回路により検査される第２のプロセッサ内部回路とを備え、前記制御パターンにしたがって、前記第１のプロセッサ内部回路は、前記第１のバウンダリスキャン制御プログラムを抽出して、前記バウンダリスキャンバスを介して前記第２の汎用プロセッサコアに対してバウンダリスキャン検査を、または、前記第２のプロセッサ内部回路は、前記制御パターンの設定に基づく診断要求指令を前記第１のプロセッサ内部回路から前記バスを介して受信して、前記第２のバウンダリスキャン制御プログラムを抽出し、前記バウンダリスキャンバスを介して前記第１の汎用プロセッサコアに対してバウンダリスキャン検査を、時分割で相互に実行し、さらに、前記バスに通信インタフェースを介して接続され、前記第１のプロセッサ内部回路及び前記第２のプロセッサ内部回路の第１の設計データ及び第１の修復データを記憶する設計ツールと、前記第１のバウンダリスキャン検査回路には、一方を前記バウンダリスキャンバスに他方を前記第１のプロセッサ内部回路に接続される第１の設計データ書き込み制御回路を備え、前記第２のバウンダリスキャン検査回路には、一方を前記バウンダリスキンバスに他方を前記第２のプロセッサ内部回路に接続される第２の設計データ書き込み制御回路を備え、前記メモリ部には、前記バウンダリスキャン検査の結果と前記第１及び第２の期待値データとを備え、前記第１のプロセッサ内部回路は、前記第２の汎用プロセッサコアの前記バウンダリスキャン検査の結果を、前記バウンダリスキャンバスを介して取得し、前記結果と前記第１の期待値データとを比較して、前記結果の良否を判定し、故障有りと判定された場合予め設定された前記第１の修復データを前記設計ツールより抽出し、前記第２の設計データ書き込み制御回路を介して、前記第２のプロセッサ内部回路の不揮発性メモリに記憶される第１の設計データを、抽出した前記第１の修復データで書き換え、前記第２のプロセッサ内部回路は、前記第１の汎用プロセッサコアの前記バウンダリスキャン検査の結果を、前記バウンダリスキャンチェーンを介して取得し、前記結果と前記第２の期待値データとを比較して、良否を前記判定プログラムで判定し、判定の結果異常と判定された場合予め設定される第２の修復データを前記設計ツールより抽出し、前記第１の設計データ書き込み制御回路を介して、前記第１のプロセッサ内部回路の不揮発性メモリに記憶される前記第２の設計データを、抽出した前記第２の修復データで書き換えるようにしたことを特徴とする。
【００３０】
上記目的を達成するために、本発明による請求項２に係る制御装置は、バウンダリスキャンバスに接続される２つのプロセッサコアによって相互に相手のプロセッサコアを診断する演算部と、前記演算部で実行するプログラム及びデータを記憶するメモリ部と、前記演算部で処理される入出力信号を処理する入出力部と、前記演算部、前記メモリ部、及び前記入出力部を接続するバスとを備える制御装置であって、前記演算部は、前記バウンダリスキャンバスに接続された第１の汎用プロセッサコア及び第２の専用プロセッサコアを備え、前記メモリ部は、前記演算部がバウンダリスキャン検査を実行するための第３のバウンダリスキャン制御プログラムと、前記バウンダリスキャン検査の良否を判定するための前記第３及び第４の期待値データと、前記演算部が制御を実行するための制御プログラムとを備え、前記第１の汎用プロセッサコアは、第１のバウンダリスキャン検査回路と、前記第１のバウンダリスキャン検査回路により検査される第１のプロセッサ内部回路と、前記演算部が実行する制御プログラム、または、第３のバウンダリスキャン制御プログラムのいずれかを選択し、前記制御装置の制御パターンを前記第１のプロセッサ内部回路に対して予め設定する制御パターン設定部とを備え、前記第２の専用プロセッサコアは、第５のバウンダリスキャン検査回路と、前記第５のバウンダリスキャン検査回路によって検査される第５のプロセッサ内部回路と、前記バウンダリスキャンバスに接続される前記第１の汎用プロセッサコアを検査するバウンダリスキャン制御回路とを備え、前記制御パターンにしたがって、前記第１のプロセッサ内部回路は、前記第３のバウンダリ制御プログラムを抽出して、前記バウンダリスキャンバスを介して前記第２の専用プロセッサコアに対してバウンダリスキャン検査を、もしくは、前記第５のプロセッサ内部回路は、前記制御パターンに基づく診断要求指令を前記第１のプロセッサ内部回路から前記バスを介して受信して、前記バウンダリスキャン制御回路を起動して、前記バウンダリスキャンバスを介して前記第１の汎用プロセッサコアに対してバウンダリスキャン検査を、時分割で相互に実行し、さらに、前記バスに通信インタフェースを介して接続され、前記第１のプロセッサ内部回路及び前記第５のプロセッサコア内部回路の夫々が制御する第３及び第４の設計データと、第３及び第４の修復データとを記憶する設計ツールと、前記第１のバウンダリスキャン検査回路には、一方を前記バウンダリスキャンバスに他方を前記第１のプロセッサ内部回路に接続される第１の設計データ書き込み制御回路を備え、前記第５のバウンダリスキャン検査回路には、一方を前記バウンダリスキンバスに他方を前記第５のプロセッサ内部回路に接続される第３の設計データ書き込み制御回路を備え、前記第１のプロセッサ内部回路は、前記第２の汎用プロセッサコアの前記バウンダリスキャン検査の結果を、前記バウンダリスキャンバスを介して取得し、前記結果と前記第３の期待値データとを比較して、前記結果の良否を判定し、故障ありと判定された場合には、予め設定された前記第３の修復データを前記設計ツールより抽出し、前記第３の設計データ書き込み制御回路を介して、前記第５のプロセッサ内部回路の不揮発性メモリに記憶される、第３の設計データを抽出した前記第３の修復データに書き換え、前記第５のプロセッサ内部回路は、前記第１の汎用プロセッサコアの前記バウンダリスキャン検査の結果を、前記バウンダリスキャンバスを介して取得し、前記結果と前記第４の期待値データとを比較して、良否を判定し、判定の結果故障ありと判定された場合、予め設定される第４の修復データを前記設計ツールより抽出し、前記第１の設計データ書き込み制御回路を介して、前記第１のプロセッサ内部回路の不揮発性メモリに記憶される前記第４の設計データを、抽出した前記第４の修復データで書き換えるようにしたことを特徴とする。
【００３１】
上記目的を達成するために、本発明による請求項８に係る制御装置は、バウンダリスキャンバスに接続される２つのプロセッサコアを有する演算装置を備える制御装置であって、２つの前記プロセッサコアは、前記プロセッサコアの診断を、時分割で、相互にバウンダリスキャン検査によって診断することを特徴とする。
【発明の効果】
【００３２】
本発明によれば、制御装置の演算部のプロセッサコアとその自己診断装置の自己診断を可能とし、運転中でもバウンダリスキャン検査が可能で、演算部のプロセッサコアの故障箇所の自己修復が可能な制御装置を提供することができる。
【発明を実施するための最良の形態】
【００３３】
以下、図面を参照して、本発明の実施例を説明する。
【実施例１】
【００３４】
以下に、本発明による実施例１の制御装置について、図１乃至図４を参照して説明する。先ず、図２を参照して本発明の自己診断による検査原理を説明する。図２に示すＪＴＡＧ検査について、図８に示すＪＴＡＧ検査と同一部分は同じ符号を付し、その説明を省略する。
【００３５】
図２に示すＪＴＡＧ検査が図８に示すＪＴＡＧ検査と異なる点は、図８に示すＪＴＡＧ検査は、バウンダリスキャンバスに接続された２つの被検査回路８５及び８６を、ＰＣ８１に備えるバウンダリスキャン制御プログラムを使用して、ＪＴＡＧコントローラ８２からバウンダリスキャン制御を実行するようにしたが、本実施例では、被検査回路８５に搭載するプロセッサ内部回路８５ａによって、ＪＴＡＧ検査回路８４及び被検査回路８６からなるプロセッサコアを検査、また、被検査回路８６に搭載するプロセッサ内部回路８６ａによって、ＪＴＡＧ検査回路８３及び被検査回路８５からなるプロセッサコアを検査する。
【００３６】
即ち、本発明の検査原理は、バウンダリスキャン検査回路とそのバウンダリスキャン検査回路で検査されるプロセッサ内部回路を備える、プロセッサコア１００とプロセッサコア２００とから成り、その動作は、一方のプロセッサ内部回路８５ａで他方のプロセッサコア２００を、他方のプロセッサ内部回路８６ａで一方のプロセッサコア１００を、相互に診断するものである。
【００３７】
そこで、プロセッサコア１００及びプロセッサコア２００とは、相互をバウンダリスキャン検査のため、シリアルに接続される信号線ＴＤＩ、信号線ＴＤＯと、パラレルに接続される制御線ＴＭＳ、ＴＣＫ、ＴＲＳＴとから成る５本の信号線からなるバウンダリスキャンバスを専用線８７で接続し、一方のプロセッサ内部回路８５ａから他方のバウンダリスキャン検査回路８４を起動して、通常、基板上に搭載されるバウンダリスキャン検査回路８４とそのプロセッサ内部回路８６ａとを一括して検査する。
【００３８】
同様に、一方のプロセッサ内部回路８６ａから他方のＪＴＡＧ検査回路８３を起動して、通常、基板上に搭載されるＪＴＡＧ検査回路８３とそのプロセッサ内部回路８５ａとを一括して検査し、相互に時分割で相手のプロセッサコア全体を診断する。
【００３９】
また、プロセッサ内部回路８５ａ及び８６ａは、入出力端子８３ａ及び８４ａを、夫々バス８８に接続し、通常の制御動作はバス８８を介して実行し、バウンダリスキャン検査はバウンダリスキャンバスを介して実行し、検査と制御とを時分割で実行するように構成する。
【００４０】
次に、このような発明原理に基づく実施例１の構成を、図１を参照して説明する。自己診断機能を備える制御装置１は、相互に診断する第１の汎用プロセッサコア２ａ、第２の汎用プロセッサコア２ｂと、第１の専用プロセッサコア４とを備える演算部２と、演算部２が実行するプログラムを記憶するメモリ部５と、演算部２が制御する入出力信号を処理する入出力部３と、演算部２、メモ部５、入出力部３及びこれらを結ぶ制御のためのバス１１とから成る。
【００４１】
さらに、第１の汎用プロセッサコア２ａ及び第２の汎用プロセッサコア２ｂと、第１の専用プロセッサコア４とを接続するＪＴＡＧ検査用のバウンダリスキャンバス１２とから成る。
【００４２】
次に、各部の構成の詳細について説明する。演算部２の実装形態は、第１の汎用プロセッサコア２ａ、第２の汎用プロセッサコア２ｂ、及び第１の専用プロセッサコア４は、同一の基板上に構成される場合もあるが、別々のユニットとして異なる基板上に実装される場合もある。
【００４３】
また、これらの３つのプロセッサコアを別々の半導体チップ上に構成し、両チップ間をチップ間結線で接続する構成や、３つのプロセッサコアを単独の半導体チップ上の別々の半導体ダイに構成し、両ダイ間をチップ内結線で結合する構成とする場合もある。いずれの場合も、ブロック図としては共通で、図１の構成となる。
【００４４】
第１の汎用プロセッサコア２ａ、第２の汎用プロセッサコア２ｂ、及び第１の専用プロセッサコア４は、夫々のコアの信号線ＴＤＩと、他のコアの信号線ＴＤＯとは図に示すようにシリアルに接続され、図示しない制御線はパラレルに接続され、信号線と制御線でバウンダリスキャンバス１２を形成する。
【００４５】
また、実装されるプロセッサコアは３つを搭載する場合を図示したが、２つ以上を搭載し、バウンダリスキャンバスを形成できるものであれば良く、その数は限定されない。
【００４６】
また、第１の汎用プロセッサコア２ａ、第２の汎用プロセッサコア２ｂ、及び第１の専用プロセッサコア４の夫々の入出力信号線は、制御装置１のバス１１に接続され、このバス１１を介して、演算部２としてメモリ部５及び入出力部３との間で制御データを授受して制御プログラムを実行する。
【００４７】
次に、第１の汎用プロセッサコア２ａは、第１のＪＴＡＧ検査回路２２ａと、一方をバウンダリスキャンバス１２に他方をバス１１に接続される第１のＪＴＡＧ検査回路２２ａにより検査される第１のプロセッサ内部回路２１ａと、第１のプロセッサ内部回路２１ａに接続され、演算部２が実行する制御プログラム５３、または、第１のバウンダリスキャン制御プログラム５１ａのいずれかを選択し、制御装置１の制御パターンを第１のプロセッサ内部回２１ａに対して設定する制御パターン設定部２１ｃとを備える。
【００４８】
次に、この制御パターン設定部２１ｃの制御パターンについて、図３を参照して説明する。制御パターンには、制御装置１を制御のみに使用する「運転」、この制御運転とバウンダリスキャン検査を制御運転に影響を与えないように予め定められる周期で検査する「間欠検査」、及び、バウンダリスキャン検査のみを行なう「検査」の３つのパターンがある。
【００４９】
また、バウンダリスキャン検査は、予め定められる周期で、プロセッサ内部回路８５ａ、または、プロセッサ内部回路８６ａが実行する。この制御パターンは制御パターン設定部２１ｃで設定され、この制御パターンを第１のプロセッサ内部回路２１ａが読み取って、自身及びバス１１を介して第２のプロセッサ内部回路２１ｂに設定する。
【００５０】
次に、第２の汎用プロセッサコア２ｂは、第２のＪＴＡＧ検査回路２２ｂと、一方をバウンダリスキャンバス１２に他方をバス１１に接続される第２のＪＴＡＧ検査回路２２ｂにより検査される第２のプロセッサ内部回路２１ｂとを備える。
【００５１】
また、第１の専用プロセッサコア４は、第４のＪＴＡＧ検査回路と、一方をバウンダリスキャンバス１２に他方をバス１１に接続される第４のＪＴＡＧ検査回路４２により検査される第４のプロセッサ内部回路４１とを備える。
【００５２】
次に、入出力部３は、第３のＪＴＡＧ検査回路３１と、第３のＪＴＡＧ検査回路３１により検査される集積回路３２とを備え、第３のＪＴＡＧ検査回路を前記バウンダリスキャンバス１２に接続し、入出力信号をバス１１に接続する。
【００５３】
次に、メモリ部５は、演算部２がバウンダリスキャン検査を実行するための第２のバウンダリスキャン制御プログラム５１ａ及び第２のバウンダリスキャン制御プログラム５１ｂと、バウンダリスキャン検査の良否を判定するための第１の期待値データ５２ａ及び第２の期待値データ５２ｂと、演算部２が入出力部３を介して制御を実行するための制御プログラム５３とを予め記憶しておく。
【００５４】
この第１のバウンダリスキャン制御プログラム５１ａ及び第１の期待値データ５２ａは、第１のプロセッサ内部回路２１ａが第２の汎用プロセッサコア２ｂをバウンダリスキャン検査する場合に、バス１１を介して抽出して使用し、第２のバウンダリスキャン制御プログラム５１ｂ及び第２の期待値データ５２ｂは、第２のプロセッサ内部回路２１ｂが第１の汎用プロセッサコア２ａをバウンダリスキャン検査する場合に、バス１１を介して抽出して使用する。
【００５５】
第１のプロセッサコア内部回路２１ａと第２のプロセッサ内部回路２１ｂとが異なる場合には、第１のバウンダリスキャン制御プログラム５１ａと第２のバウンダリスキャン制御プログラム５１ｂとは、夫々の回路に対応するものが必要となる。同様に、第１の期待値データ５２ａと第２の期待値データ５２ｂも夫々に対応するものが必要になる。しかし、同じ回路である場合には、同じものが使用できるので、いずれも１種類を備えていれば良い。
【００５６】
次に、このように構成された制御装置１の動作について図４のフローチャートを参照して説明する。先ず、制御パターン設定部２１ｃの制御パターンが「間欠検査」、または、「検査」が設定されていることを第１のプロセッサ内部回路２１ａが読み込み（ｓ１）、第１のプロセッサ内部回路２１ａ自身で対応するプログラムを、メモリ部５から抽出して図示しない第１のプロセッサ内部回路２１ａのレジスタに読み込む（ｓ２）。
【００５７】
そして、読み込んだ第１のバウンダリスキャン制御プログラム５１ａにしたがって、第２のプロセッサコア２ｂの検査を開始する（ｓ３）。
【００５８】
即ち、第１のバウンダリスキャン制御プログラム５１ａに基づく検査信号を第１のプロセッサ内部回路２１ａからバウンダリスキャンバス１２を介して、第２のＪＴＡＧ検査回路２２ｂに送信し、第２のＪＴＡＧ検査回路２２ｂが第２のプロセッサ内部回路２１ｂに送信してＪＴＡＧ検査を実行する。
【００５９】
さらに詳細には、第１のプロセッサ内部回路２１ａは、第２のプロセッサコアを検査する検査信号、即ち、入力データをバウンダリスキャンバス１２の第２のＪＴＡＧ検査回路２２ｂの信号線ＴＤＩから送信し、出力データを、第２のＪＴＡＧ検査回路２２ｂの信号線ＴＤＯを介して受信し、予め設定される第２のプロセッサコア２ｂの第１の期待値データ５２ａと比較して故障の有無を判定する（ｓ４）。
【００６０】
そして、故障と判定された場合、予め設定される第１のバウンダリスキャン制御プログラム５１ａに含まれる図示しない故障処理プログラムにしたがって制御の中止や、通報等の故障処理が実行される（ｓ９）。
【００６１】
同様に、第１のプロセッサ内部回路２１ａから順次、入出力部３の検査（ｓ５）と故障の有無判定（ｓ６）が、また、第１の専用プロセッサコア４の検査（ｓ７）と故障の有無判定（ｓ８）が、順次実行される。
【００６２】
そして、バウンダリスキャンバス１２に接続された全ての検査が終了すると第１のプロセッサ内部回路２１ａは、バス１１を介して、第２のプロセッサ内部回路２１ｂに対してＪＴＡＧ検査の開始を指令する。
【００６３】
すると、第２のプロセッサ内部回路２１ｂは、メモリ部５から、第２のバウンダリスキャン制御プログラム５１ｂ及び第２の期待値データ５２ｂを抽出し、バウンダリスキャンバス１２に接続される検査対象、即ち、第１の汎用プロセッサコア２ａ、第１の専用プロセッサコア４、及び、入出力部３について、予め定められる手順で検査を実行し、これらの故障の有無判定と故障が発生した場合の故障処理を実行する。
【００６４】
この第２のプロセッサ内部回路２１ｂの動作は、図４のフローチャートに示すステップｓ１〜ステップｓ９と同様である。
【００６５】
但し、第１のプロセッサ内部回路２１ａは、第２の汎用プロセッサコア２ｂの検査を、第２のプロセッサ内部回路２１ｂは、第１の汎用プロセッサコア２ａの検査を、夫々交互に実行するように構成されていれば良く、その他の検査対象は、いずれか一方で、または、両方で検査するようにしても良い。
【００６６】
ここで、ＪＴＡＧ検査によって判定される故障の有無判定（ｓ８）と、その故障処理（ｓ９）の処理内容は、本発明の主題ではないので詳細を割愛するが、例えば、故障の有無判定は、入力データと出力データの一致・不一致から、ＪＹＡＧ検査回路とプロセッサ内部回路の入出力ピンまでの接続状態を判定する。
【００６７】
また、プロセッサ内部回路の機能的な検査から、プロセッサ内部回路の故障箇所を判定する。
【００６８】
そして、この故障の有無判定に基づいて、故障処理ｓ９が実行される、故障処理ｓ９は、例えば、回路の故障であれば、予め設定されるフェーセーフなデータを強制出力するようにしたり、外部に故障を通報したりする。
【００６９】
以上説明したように、本実施例によれば、２つの汎用プロセッサコアが、バウンダリスキャン検査を実行する検査手段と、バウンダリスキャン検査される被検査手段とを備えるために、相互にバウンダリスキャン検査を行う事が出来る。
【００７０】
従来の構成では、バウンダリスキャン検査を行うために必要とされる検査装置そのものについては、検査を行う手段が備えられていない。そのため、検査装置の故障に対しては自己診断する方法が無かったが、本実施例によればプロセッサコアが相互にバウンダリスキャン検査することが出来るので、制御装置内に自己診断を受ける仕組みを持たない集積回路が無くなり、制御装置全体の信頼性を向上させる事が出来る。
【００７１】
また、新たな検査装置を備えることが不要なので部品点数を増やさずに、自己診断による故障の検出が可能となるので、制御装置の稼働率向上と、制御装置の信頼性を向上させる事が出来る。
【００７２】
また、制御装置本来のプロセスの制御処理を停止させずに、制御装置内のバウンダリスキャン検査を行う事が出来る。これにより、制御装置の動作に関して、応答時間などの厳しいせ制約があっても、故障の検出を運転中にも行なうことが可能で、自己診断による不良の早期発見が可能となる。
【実施例２】
【００７３】
以下に、本発明の実施例２に係る制御装置について、図５及び図６を参照して説明する。図５に示す実施例２の各部について、実施例１の制御装置の各部と同一部分は同一符号で示し、その説明を省略する。
【００７４】
この実施例２が実施例１と異なる点は、実施例１では、相互の汎用プロセッサコアによるバウンダリスキャン検査の結果、故障が検出されると、その故障処理までを実行したが、本実施例２では、汎用プロセッサ内部回路の設計データとその修復データとを備え、プロセッサ内部回路に故障が検出されると、プロセッサ内部回路の修復を実行するようにしたことにある。
【００７５】
実施例２の構成は、第１のＪＴＡＧ検査回路２２ａの内部に、第１の設計データ書き込み制御回路２２ａ１を、第２のＪＴＡＧ検査回路２２ｂの内部に、第２の設計データ書き込み制御回路２２ｂ１を、夫々実装する。
【００７６】
さらに、第１のプロセッサ内部回路２１ａから書き換えを指令する第１の設計データ及び第１の修復データと、また、第２のプロセッサ内部回路２１ｂから書き換えを指令する第２の設計データ及び第２の修復データとを記憶する設計ツール６ａとその通信インタフェース６１とをバス１１に接続、また、メモリ部５に第１のプロセッサ内部回路２１ａの修復プログラム５４ａ及び第２のプロセッサ内部回路２１ｂの修復プログラム５４ｂを備える。
【００７７】
即ち、第１のプロセッサ内部回路２１ａ及び第２のプロセッサ内部回路２１ｂには、通常、ＦＰＧＡやＰＬＤを備えているので、回路の書き換え制御が可能である。
【００７８】
したがって、第１のプロセッサ内部回路２１ａは、バウンダリスキャン検査の結果、第２のプロセッサコア２ｂ及び第２のプロセッサ内部回路２１ｂの故障箇所や故障回路を特定して、図５の矢印破線に示すように、故障に対応する修復データを設計ツール６ａから抽出して、バウンダリスキャンバス１２を介して修復データを送信し、第２の設計データ書き込み制御回路２２ｂ１を起動して、第２のプロセッサ内部回路２１ｂの不揮発性メモリ（ＦＲＯＭ）に記憶する第１の設計データを設計ツール６ａから抽出した第１の修復データに書き換える。
【００７９】
同様に、第２のプロセッサ内部回路２１ｂは、第１のプロセッサコア２ａ及び第１のプロセッサ内部回路２１ａの故障箇所や故障回路を特定して、第１の設計データ書き込み制御回路２２ａ１を起動して、第１のプロセッサ内部回路２１ａの不揮発性メモリ（ＦＲＯＭ）に記憶する第２の設計データを設計ツール６ａから抽出した第２の修復データに書き換える。
【００８０】
上記のように、本実施例２によれば、制御装置１と設計ツール６ａとを通信で接続して修復データを取得し、再構成（書き換え）が可能なプロセッサコアのＪＴＡＧ検査回路に書き込み制御回路を備えることで、プロセッサ内部回路の故障箇所の設計データを修復データで書き換えることを可能とした。
【００８１】
したがって、プロセッサ内部回路を変更するために、人を介することなく修復が可能となる。また、再構成がプロセッサコアの動作中に変更可能なデバイスを使用しておけば、制御装置の運転中でもプロセッサ内部回路の修復が可能となる。
【実施例３】
【００８２】
以下に、本発明の実施例３に係る制御装置について、図７を参照して説明する。図７に示す実施例２の各部について、実施例２の制御装置の各部と同一部分は同一符号で示し、その説明を省略する。
【００８３】
この実施例３が実施例２と異なる点は、実施例２では、相互のバウンダリスキャン検査を実行するのは、いずれもがソフトウェアにより演算内容をプログラムすることが可能な汎用プロセッサコアで実行したが、本実施例３では、第１の汎用プロセッサコア２ａと、ハードウェアにより演算内容が固定化され第２の専用プロセッサコア７との相互でバウンダリスキャン検査を実行するようにしたことにある。
【００８４】
実施例３の第２の専用プロセッサコア７の構成は、第５のプロセッサ内部回路７１と、第３の設計データ書き込み制御回路７２ｂを備える第５のＪＴＡＧ検査回路７２と、第１の汎用プロセッサコア２ａを検査するバウンダリスキャン制御を、バウンダリスキャンチバス１２を介して指令するＪＴＡＧ制御回路７３から成る。
【００８５】
そして、メモリ部５には、第２の専用プロセッサコア７を検査する第３のバウンダリスキャン制御プログラム５１ｃと、第３のバウンダリスキャン制御プログラム５１ｃによる検査の結果から故障判定の基準データである第３の期待値データ５２ｃと、ＪＴＡＧ制御回路７３による検査の結果から故障の有無判定の基準データである第４の期待値データ５２ｄとを備える。
【００８６】
また、設計ツール６ｂには、第１のプロセッサ内部回路２１ａから第３の設計データ書き込み制御回路７２ｂに対して指令する第３の設計データ及び第３の修復データを記憶しておく。また、設計ツール６ｂには、第５のプロセッサ内部回路７１から第１の設計データ書き込み制御回路２２ａ１に対して指令する第４の設計データ及び第４の修復データを記憶しておく。
【００８７】
次に、このように構成された実施例３の動作について、第２の専用プロセッサコア７に対して、第１のプロセッサ内部回路２１ａからバス１１を介して検査が指令された場合の動作について説明する。
【００８８】
第１のプロセッサ内部回路２１ａからバス１１を介して検査が指令されると、第５のプロセッサ内部回路７１は、ＪＴＡＧ制御回路７３に対して検査の開始を指令する。
【００８９】
すると、ＪＴＡＧ制御回路７３はバウンダリスキャンバス１２を介して第１のプロセッサコア２ａに対して検査を実行する。検査の結果と第４の期待値データ５２ｄとを比較して、故障が検知されると修復プログラム５４ｄを起動し、第４の修復データを抽出して、第１の設計データ書き込み制御回路２２ａ１を介して第１のプロセッサ内部回路２１ａの抽出した第４の修復データを不揮発性メモリ（ＦＲＯＭ）に書込みする。
【００９０】
実施例３の動作について、第１のプロセッサ内部回路２１ａから、第２の専用プロセッサコア７に対して検査を実行する場合の動作については、実施例１の動作に説明した、第２の汎用プロセッサコア２ｂが、第２の専用プロセッサコア７に置き換わったに場合に相当し、同様の動作となるのでその説明を省略する。
【００９１】
上記のように、本実施例３によれば、汎用、専用の各プロセッサコアが、バウンダリスキャン検査する手段と、バウンダリスキャン検査される手段の両手段を有するため、一方が専用プロセッサコアであっても、相互にそのプロセッサコアのバウンダリスキャン検査を行う事が出来る。
【００９２】
本発明は、上述した実施例に何ら限定されるものではなく、バウンダリスキャン検査はプロセッサの場合について説明したが、バウンダリスキャンバスはフラッシュメモリ等のメモリの検査に適用することも可能で、本発明の主旨を逸脱しない範囲で種々変形して実施することができる。
【図面の簡単な説明】
【００９３】
【図１】本発明の実施例１の制御装置の構成図。
【図２】本発明の検査原理を説明する構成図。
【図３】本発明の制御パターンの設定例を説明する図。
【図４】本発明の実施例１のＪＴＡＧ検査の動作を説明するフローチャート。
【図５】本発明の実施例２の制御装置の構成図。
【図６】本発明の実施例２のＪＴＡＧ検査の動作を説明するフローチャート。
【図７】本発明の実施例３の制御装置の構成図。
【図８】従来のバウンダリスキャン検査の構成図。
【符号の説明】
【００９４】
１  制御装置
２  演算部
２ａ  第１の汎用プロセッサコア
２ｂ  第２の汎用プロセッサコア
３  入出力部
４  第１の専用プロセッサコア
５  メモリ部
７  第２の専用プロセッサコア
１１  バス
１２  バウンダリスキャンバス
２１ａ／２１ｂ  第１／第２のプロセッサ内部回路
２１ｃ  制御パターン設定部
２２ａ／２２ｂ  第１／第２のＪＴＡＧ検査回路
２２ａ１／２２ｂ１  第１／第２の設計データ書き込み制御回路
３１  第３のＪＴＡＧ検査回路
３２  集積回路
４１  第４のプロセッサ内部回路
４２  第４のＪＴＡＧ検査回路
５１ａ／５１ｂ／５１ｃ  第１／第２／第３のバウンダリスキャン制御プログラム
５２ａ／５２ｂ／５２ｃ／５２ｄ  第１／第２／第３／第４の期待値データ
５３  制御プログラム
５４ａ／５４ｂ／５４ｃ／５４ｄ  修復プログラム
６ａ／６ｂ  設計ツール
６１  通信インタフェース
７１  第５のプロセッサ内部回路
７２  第５のＪＴＡＧ検査回路
７２ｂ  第３の設計データ書き込み制御回路
７３  ＪＴＡＧ制御回路
８１  ＰＣ
８２  ＪＴＡＧコントローラ
８３、８４  ＪＴＡＧ検査回路
８３ａ、８４ａ  入出力端子
８３ｂ、８４ｂ  バウンダリスキャンセル
８３ｃ  入出力ピン
８５、８６  被検査回路
８７  専用線
８８  バス
【図１】
0005095273.tif 000002
【図２】
0005095273.tif 000003
【図３】
0005095273.tif 000004
【図４】
0005095273.tif 000005
【図５】
0005095273.tif 000006
【図６】
0005095273.tif 000007
【図７】
0005095273.tif 000008
【図８】
0005095273.tif 000009