(57)【要約】      （修正有）【課題】自動検査中にブレークポイントによる車載制御装置ソフトウェアの停止が発生した場合でも、ＴＤＭＡ（時分割多重接続）方式の通信エラーにより自動検査が継続不可能を防止できる自動検査装置を提供する。【解決手段】検査装置１は、通信路を介して接続された車載制御装置１０と検査管理装置２０を含む。検査管理装置内のソフトウェア検査指示部２００は、Ｄｂｇ  ＩＦ接続部２０４を介して、車載制御装置のＤｂｇ  ＩＦ１２０に、各指示部２０１〜２０３による指示を送信する。車載ＴＤＭＡ方式通信処理部２１０は、ソフトウェア検査指示部から指示を送信する際に、通信速度設定部２１１を用いて、車載制御装置とＴＤＭＡ方式により通信するための通信相手となる通信手段１６０との通信速度の設定変更も同時に行う。検査管理装置は、ＴＤＭＡ方式の通信を用いて、車載制御装置に実装されている車載制御装置ソフトウェア１８０の検査を実施する。【選択図】図１
2018128892.tif 000002
【特許請求の範囲】
【請求項１】
検査対象である制御ソフトウェアを内蔵する車載制御装置と、前記制御ソフトウェアのテストシナリオが規定された検査処理プログラムを内蔵する検査管理装置とが同期通信を行うことで、前記検査管理装置が前記テストシナリオに従って前記制御ソフトウェアの検査を実行する車載制御装置の自動検査装置であって、
前記車載制御装置は、ＣＰＵと、周辺機器と、クロックと、デバッグインターフェースと、通信手段とを含んで構成され、
前記検査管理装置は、
前記デバッグインターフェースを介して、前記テストシナリオに従った検査を行うために前記クロックの設定を通常設定値から検査用設定値に変更するとともに、前記制御ソフトウェアにブレークポイントを設定し、
前記クロックに設定された前記検査用設定値による通信速度に一致するように、前記通信手段との間で行う前記同期通信の通信速度を変更した後、前記制御ソフトウェアを前記ブレークポイントで停止するまで実行させ、
前記制御ソフトウェアが前記ブレークポイントで停止した後に、前記デバッグインターフェースを介して、前記クロックを停止させるとともに、前記ＣＰＵおよび前記周辺機器の設定を前記テストシナリオに合わせて変更し、
前記ブレークポイントを解除して前記制御ソフトウェアを再実行させることで、前記テストシナリオに従った検査を開始させ、
前記検査の開始後、前記クロックを前記検査用設定値から前記通常設定値に復帰させるとともに、復帰後の前記クロックに設定された前記通常設定値による通信速度に一致するように、前記同期通信の通信速度を変更する
車載制御装置の自動検査装置。
【請求項２】
前記検査管理装置は、
前記制御ソフトウェアが前記ブレークポイントで停止してから再実行されるまでの停止時間が、前記同期通信の１通信フレームにかかる時間に対して、基準値以下になる検証用通信速度があらかじめ記憶された設定情報保持部を有し、
前記検査用設定値による通信速度として、前記検証用通信速度を用いる
請求項１に記載の車載制御装置の自動検査装置。
【請求項３】
前記前記検査管理装置は、
前記同期通信による通信記録を取得し、前記通信記録から前記制御ソフトウェアの検査中におけるログを作成するログ作成部と、
前記クロックを停止させる第１指令を出力してから、前記クロックを復帰させる第２指令を出力するまでの経過時間を算出する経過時間算出部と
をさらに有し、
前記ログ作成部は、前記経過時間算出部で算出された前記経過時間に基づいて、前記通信記録の中から前記制御ソフトウェアが停止していた時間を除いた時間軸を持つ第１のログを生成し、検査前の通信速度と前記検証用通信速度との比に基づいて、前記第１のログを前記検査前の通信速度に相当する時間軸を持つ第２のログに復元する
請求項２に記載の車載制御装置の自動検査装置。
【請求項４】
ＣＰＵと、周辺機器と、クロックと、デバッグインターフェースと、通信手段とを含んで構成されるとともに、検査対象である制御ソフトウェアを内蔵する車載制御装置と、前記制御ソフトウェアのテストシナリオが規定された検査処理プログラムを内蔵する検査管理装置と、が同期通信を行うことで、前記検査管理装置により、前記テストシナリオに従って前記制御ソフトウェアの検査を実行するための車載制御装置の自動検査方法であって、
前記検査管理装置において、
前記デバッグインターフェースを介して、前記テストシナリオに従った検査を行うために前記クロックの設定を通常設定値から検査用設定値に変更するとともに、前記制御ソフトウェアにブレークポイントを設定する第１ステップと、
前記クロックに設定された前記検査用設定値による通信速度に一致するように、前記通信手段との間で行う前記同期通信の通信速度を変更した後、前記制御ソフトウェアを前記ブレークポイントで停止するまで実行させる第２ステップと、
前記制御ソフトウェアが前記ブレークポイントで停止した後に、前記デバッグインターフェースを介して、前記クロックを停止させるとともに、前記ＣＰＵおよび前記周辺機器の設定を前記テストシナリオに合わせて変更する第３ステップと、
前記ブレークポイントを解除して前記制御ソフトウェアを再実行させることで、前記テストシナリオに従った検査を開始させる第４ステップと、
前記検査の開始後、前記クロックを前記検査用設定値から前記通常設定値に復帰させるとともに、復帰後の前記クロックに設定された前記通常設定値による通信速度に一致するように、前記同期通信の通信速度を変更する第５ステップと
を有する車載制御装置の自動検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＴＤＭＡ（時分割多元接続）方式の通信を用いる車載制御装置の自動検査装置および車載制御装置の自動検査方法に関するものである。より具体的には、デバッグインターフェースを介して、制御中の処理に対して実行停止・続行処理を実施しながら、ＴＤＭＡ方式の通信に関する検査を実施する場合に、ＴＤＭＡ方式の通信を維持しながら自動で検査を実施する自動検査に関するものである。
【背景技術】
【０００２】
実行停止・続行処理を用いた車載制御装置の自動検査装置について、例えば、以下のような従来技術がある（例えば、特許文献１、２参照）。
【０００３】
特許文献１は、プログラムのデバッグを効率的に行えるプログラム・デバッグ制御方式に関するものである。特許文献１では、繰り返し処理を行うプログラムにおいて、ブレークポイント割込み命令が検出されたときに、ダミー・ポイント割込み命令がブレークポイント命令処理と置き換えられて実行される。
【０００４】
ダミー・ポイント割込み命令内では、検査処理が実行され、従来、ブレークポイント割込み命令を検出してから、手動で繰り返し行っていた検査処理（デバッグ処理）を、自動化している。
【０００５】
特許文献２は、検査対象に接続されているデバッグ装置が有するコマンドコード群の書込み、読出しをする機能によって、検査処理を実行することで、自動的にデバッグ作業を実施できるようにしている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開昭５８−４４６１号公報
【特許文献２】特開昭６１−２７９９５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来技術には、以下のような課題がある。
上述した従来の方法は、検査対象の車載制御装置ソフトウェアにあらかじめ停止ポイント（ブレークポイント）を設定しておく。そして、車載制御装置ソフトウェアの停止後、検査内容の設定をし、車載制御装置ソフトウェアを再実行する。
【０００８】
このような再実行処理を順に繰り返し実行しながら検査する従来の検査装置を基に、同期通信であるＴＤＭＡ方式の通信を用いる車載制御装置の自動検査装置を構築する場合を考える。この場合、ＴＤＭＡ方式の通信は、同期通信を前提としている、このため、従来の自動検査装置は、ブレークポイントによる車載制御装置ソフトウェアの停止によって、同期通信が維持できなくなり、車載制御装置ソフトウェアの検査を継続できなくなる課題がある。
【０００９】
例えば、ＴＤＭＡ方式の通信であるＦｌｅｘＲａｙを用いる車載制御装置の検査装置を考える。この検査装置が、検査管理装置、車載制御装置、通信路、デバッガから構成されている場合、従来方法のように、ただブレークポイントの実行・解除と、検査内容の実行を実施するだけでは、以下のような問題が発生する。
【００１０】
検査管理装置からデバッグインターフェース（以下、Ｄｂｇ  ＩＦと称す）を介して、必要なデータ転送する時間（Ｄｂｇ  ＩＦへのデータ転送時間等）、ブレークポイントによる停止と再実行を実施する処理時間、検査内容を車載制御装置内のＣＰＵやＲＡＭ、ＲＯＭに設定するために停止している時間、などの間には、車載制御装置内のＦｌｅｘＲａｙ通信ドライバが停止している。
【００１１】
そして、車載制御装置内のＦｌｅｘＲａｙ通信ドライバが停止しているにも関わらず、検査管理装置内にある車載制御装置の通信相手となっているＦｌｅｘＲａｙ通信ドライバは、停止しない。このため、従来方法を用いた検査管理装置では、連続的に同期通信を期待した通信シグナルが、車載制御装置のＦｌｅｘＲａｙ通信ドライバの停止で通信が断絶し、車載制御装置の通信相手役側でエラーとなり、検査を続行できなくなる。
【００１２】
その課題によって、例えば、車載制御装置ソフトウェアの検査内容が通信シグナルのタイミング検査である場合には、通信を継続できないことに起因して、この検査が実施できなくなる。
【００１３】
また、ＦｌｅｘＲａｙ通信の１通信フレームの中で、停止時間を吸収でき、通信が継続できたとしても、遅延時間が長くなりすぎることが発生する。ＴＤＭＡ方式の通信フレームには、一般に、ＦｌｅｘＲａｙフレームのエラー検出を行うための遅延検出機構が埋め込まれていることが多い。このため、そのエラー検出により、検査対象の制御装置の本来期待している制御処理が実行されず、エラー処理となり、期待した検査の続行が不可能になる。
【００１４】
上述したように、従来技術においては、検査のために使用したブレークポイントによって車載制御装置の車載ＴＤＭＡ通信のドライバが停止しているにも関わらず、検査管理装置内にある車載制御装置の通信相手となっている車載ＴＤＭＡ通信のドライバが停止しないため、車載ＴＤＭＡ通信が継続できなくなることが課題となっている。
【００１５】
そのため、ブレークポイントによる車載制御装置の車載ＴＤＭＡ通信のドライバが、停止している時間を無視できるようにする技術を採用することが望まれる。
【００１６】
本発明は、前記のような課題を解決するためになされたものであり、自動検査中においてブレークポイントによる車載制御装置ソフトウェアの停止が発生した場合にも、ＴＤＭＡ方式の通信エラーにより自動検査の継続が不可能になることを防止することができ、制御中の処理を実行停止・続行処理を実施しながら、ＴＤＭＡ方式の通信を自動検査できる車載制御装置の自動検査装置および車載制御装置の自動検査方法を得ることを目的とする。
【課題を解決するための手段】
【００１７】
本発明に係る車載制御装置の自動検査装置は、検査対象である制御ソフトウェアを内蔵する車載制御装置と、制御ソフトウェアのテストシナリオが規定された検査処理プログラムを内蔵する検査管理装置とが同期通信を行うことで、検査管理装置がテストシナリオに従って制御ソフトウェアの検査を実行する車載制御装置の自動検査装置であって、車載制御装置は、ＣＰＵと、周辺機器と、クロックと、デバッグインターフェースと、通信手段とを含んで構成され、検査管理装置は、デバッグインターフェースを介して、テストシナリオに従った検査を行うためにクロックの設定を通常設定値から検査用設定値に変更するとともに、制御ソフトウェアにブレークポイントを設定し、クロックに設定された検査用設定値による通信速度に一致するように、通信手段との間で行う同期通信の通信速度を変更した後、制御ソフトウェアをブレークポイントで停止するまで実行させ、制御ソフトウェアがブレークポイントで停止した後に、デバッグインターフェースを介して、クロックを停止させるとともに、ＣＰＵおよび周辺機器の設定をテストシナリオに合わせて変更し、ブレークポイントを解除して制御ソフトウェアを再実行させることで、テストシナリオに従った検査を開始させ、検査の開始後、クロックを検査用設定値から通常設定値に復帰させるとともに、復帰後のクロックに設定された通常設定値による通信速度に一致するように、同期通信の通信速度を変更するものである。
【００１８】
また、本発明に係る車載制御装置の自動検査方法は、ＣＰＵと、周辺機器と、クロックと、デバッグインターフェースと、通信手段とを含んで構成されるとともに、検査対象である制御ソフトウェアを内蔵する車載制御装置と、制御ソフトウェアのテストシナリオが規定された検査処理プログラムを内蔵する検査管理装置と、が同期通信を行うことで、検査管理装置により、テストシナリオに従って制御ソフトウェアの検査を実行するための車載制御装置の自動検査方法であって、検査管理装置において、デバッグインターフェースを介して、テストシナリオに従った検査を行うためにクロックの設定を通常設定値から検査用設定値に変更するとともに、制御ソフトウェアにブレークポイントを設定する第１ステップと、クロックに設定された検査用設定値による通信速度に一致するように、通信手段との間で行う同期通信の通信速度を変更した後、制御ソフトウェアをブレークポイントで停止するまで実行させる第２ステップと、制御ソフトウェアがブレークポイントで停止した後に、デバッグインターフェースを介して、クロックを停止させるとともに、ＣＰＵおよび周辺機器の設定をテストシナリオに合わせて変更する第３ステップと、ブレークポイントを解除して制御ソフトウェアを再実行させることで、テストシナリオに従った検査を開始させる第４ステップと、検査の開始後、クロックを検査用設定値から通常設定値に復帰させるとともに、復帰後のクロックに設定された通常設定値による通信速度に一致するように、同期通信の通信速度を変更する第５ステップとを有するものである。
【発明の効果】
【００１９】
本発明によれば、検査管理装置から車載制御装置内のソフトウェアの検査を実施中において、検査対象であるソフトウェアがブレークポイントで停止した際にも、車載ＴＤＭＡ通信の停止期間を無視できるくらいに通信速度を落とし、検査が終了することで元の通信速度に復帰できる構成を備えている。この結果、自動検査中においてブレークポイントによる車載制御装置ソフトウェアの停止が発生した場合にも、ＴＤＭＡ方式の通信エラーにより自動検査の継続が不可能になることを防止することができ、制御中の処理を実行停止・続行処理を実施しながら、ＴＤＭＡ方式の通信を自動検査できる車載制御装置の自動検査装置および車載制御装置の自動検査方法を得ることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の実施の形態１における実行停止・続行処理を用いた車載制御装置の自動検査方法を実現する検査装置の全体構成図である。
【図２】本発明の実施の形態１における検査装置の基本検査処理に関するフローチャートである。
【図３】本発明の実施の形態１における検査装置で実行される停止準備処理に関するフローチャートである。
【図４】本発明の実施の形態１における検査装置で実行される停止完了処理に関するフローチャートである。
【図５】本発明の実施の形態１における検査装置で実行される通信速度変更処理に関するフローチャートである。
【図６】本発明の実施の形態１における検査装置で実行される通信速度復帰処理に関するフローチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明の車載制御装置の自動検査装置および車載制御装置の自動検査方法の好適な実施の形態につき、図面を用いて説明する。ただし、本発明の技術的範囲は、以下で説明する実施の形態に限定されず、特許請求の範囲に記載された事項と、その均等物まで及ぶものである。
【００２２】
実施の形態１．
図１は、本発明の実施の形態１における実行停止・続行処理を用いた車載制御装置の自動検査方法を実現する検査装置の全体構成図である。この図１は、本発明を実現する検査装置１の最小構成の一例を示している。
【００２３】
本発明を実現するための検査装置１は、通信路３０を介して相互通信可能に接続された車載制御装置１０と検査管理装置２０を含んで構成されている。
【００２４】
車載制御装置１０は、ＣＰＵ１００、クロック１１０、Ｄｂｇ  ＩＦ（デバッグインターフェース）１２０、ＲＯＭ１３０、ＲＡＭ１４０、割り込みコントローラ１５０、通信手段１６０が、バス１７０により接続されて構成されている。また、車載制御装置１０は、検査対象の車載制御装置ソフトウェア１８０が実装されている。
【００２５】
ここで、Ｄｂｇ  ＩＦ１２０は、通信手段用クロック操作部１２１、ソフトウェア停止・再実行部１２２、ＣＰＵ／周辺機器設定部１２３を含んで構成されている。
【００２６】
検査管理装置２０内のソフトウェア検査指示部２００は、ソフトウェア停止・再実行指示部２０１、通信手段用クロック操作指示部２０２、ＣＰＵ／周辺機器設定指示部２０３、Ｄｂｇ  ＩＦ接続部２０４を備えている。そして、ソフトウェア検査指示部２００は、Ｄｂｇ  ＩＦ接続部２０４を介して、車載制御装置１０内のＤｂｇ  ＩＦ１２０に、各指示部２０１〜２０３による車載制御装置１０への接続や切断のための指示、検査内容を実行するための指示、通信に関する指示を送信する。
【００２７】
また、ソフトウェア検査指示部２００から指示を送信する際に、検査管理装置２０内の車載ＴＤＭＡ方式通信処理部２１０は、車載制御装置１０内の通信相手となる通信手段１６０の設定変更も同時に行う。これにより、検査管理装置２０は、車載制御装置１０に搭載されている車載制御装置ソフトウェア１８０の検査を実施する。
【００２８】
車載ＴＤＭＡ方式通信処理部２１０は、少なくとも通信速度設定部２１１、通信機能設定部２１２、および通信接続部２１３を有している。
【００２９】
車載ＴＤＭＡ方式通信処理部２１０は、車載制御装置１０の通信相手となる。そこで、通信機能設定部２１２は、車載制御装置１０との通信のための各種設定を行う。通信機能設定部２１２は、例えば、通信で用いる信号の定義、生成や送受信、状態遷移の管理の設定を行うことが可能である。
【００３０】
また、車載ＴＤＭＡ方式通信処理部２１０は、通信速度設定部２１１を用いて、車載制御装置１０と、車載ＴＤＭＡ方式により通信するための通信速度を設定することができる。
【００３１】
車載ＴＤＭＡ方式通信処理部２１０は、通信速度設定部２１１および通信機能設定部２１２等の設定を用いて、車載ＴＤＭＡ方式による通信設定ができていれば、通信接続部２１３および車載ＴＤＭＡ方式の通信路３０を介して、車載制御装置１０内の通信手段１６０と接続されることで、車載ＴＤＭＡ方式の通信を行う。
【００３２】
また、車載ＴＤＭＡ方式通信処理部２１０は、車載制御装置１０内の通信手段１６０と接続され、ＴＤＭＡ方式の通信ができているときに、通信記録作成処理部２３４によって、例えば、通信周期ごとにＴＤＭＡ方式の通信のフレーム情報をテキストファイルに記載するなどして、通信記録を作成しておくことができる。なお、通信記録作成処理部２３４の機能は、車載ＴＤＭＡ方式通信処理部２１０内に含まれる構成としてもよい。
【００３３】
以上の機能を用いて、検査管理装置２０は、車載ＴＤＭＡ方式通信処理部２１０を用いて、車載ＴＤＭＡ方式での通信に関する接続・切断・送信・受信・エラー管理・ログ表示等の管理・操作を行うことができる。
【００３４】
なお、車載ＴＤＭＡ方式通信処理部２１０は、検査管理装置２０からの命令を受けることのできるインターフェースを有することができ、検査管理装置２０内の各構成との間で、相互に各管理・操作に必要な情報をやり取りできる。
【００３５】
そのために、車載ＴＤＭＡ方式通信処理部２１０は、検査管理装置２０からの命令を受けることができるインターフェースとして、検査管理装置２０に、例えば、ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供することもある。なお、車載ＴＤＭＡ方式通信処理部２１０は、検査管理装置２０の一機能として存在してもよいし、独立の構成として存在してもよい。
【００３６】
車載制御装置ソフトウェア１８０は、検査対象であり、開発中のソフトウェアを想定している。車載制御装置ソフトウェア１８０は、検査管理装置２０からソフトウェア停止・再実行指示部２０１、通信手段用クロック操作指示部２０２、ＣＰＵ／周辺機器設定指示部２０３からの各指示が、Ｄｂｇ  ＩＦ接続部２０４を介して与えられる。
【００３７】
そして、Ｄｂｇ  ＩＦ１２０内の通信手段用クロック操作部１２１、ソフトウェア停止・再実行部１２２、ＣＰＵ／周辺機器設定部１２３から実行されて、バス１７０を介して、ＣＰＵ１００、クロック１１０、ＲＯＭ１３０等の設定が変更され、車載制御装置ソフトウェア１８０の検査が実行される。
【００３８】
また、車載制御装置ソフトウェア１８０内では、主に通信手段１６０用のクロック１１０の設定、および車載制御装置１０の通信相手との信号のやり取りとして、通信処理が実装されている。
【００３９】
次に、車載制御装置１０の内部構成について説明する。図１に示した車載制御装置１０の内部構成は、実行停止・続行処理を用いた車載制御装置１０の自動検査方法を実現し、車載制御装置ソフトウェア１８０を実行するために必要な最小構成の一例である。
【００４０】
本実施の形態１における自動検査方法を実現するために、車載制御装置１０の構成としては、ＣＰＵ１００、クロック１１０、Ｄｂｇ  ＩＦ１２０、ＲＯＭ１３０、ＲＡＭ１４０、割り込みコントローラ１５０、通信手段１６０、バス１７０が最低限必要である。
【００４１】
ＣＰＵ１００は、車両制御や各種ＥＣＵの機能で求められるソフトウェアの処理を実施する箇所である。ＣＰＵ１００は、ＲＯＭ１３０やＲＡＭ１４０等の周辺装置にアクセスしてデータの入出力処理を実施し、演算処理を実施することで、ソフトウェアに求められる機能を実現する。すなわち、ＣＰＵ１００で、図１の車載制御装置ソフトウェア１８０が実行される。
【００４２】
本実施の形態１では、ブレークポイントで停止中に、ＣＰＵ１００内のプログラムカウンタやスタックポイントがＤｂｇ  ＩＦ１２０によって書き換えられることで、車載制御装置ソフトウェア１８０の検査内容（テストシナリオ）が実施されていく。
【００４３】
クロック１１０は、ＣＰＵ１００や周辺機器を動作させるためのクロックを与えるものである。一般的には、水晶振動子からクロック信号が生成され、車載制御装置１０全体は、このクロック信号に基づいて駆動している。
【００４４】
特に、本実施の形態１では、車載ＴＤＭＡ方式の通信を制御する通信手段１６０（通信コントローラ、通信ドライバ）に対しても、水晶振動子からのクロック信号を供給している。このため、通信手段１６０は、車載ＴＤＭＡ方式通信処理部２１０と通信をするための通信速度を決めることができる。
【００４５】
ここで、ＣＰＵ１００に供給しているクロックと通信手段１６０に供給しているクロックは、同じものでもよいし、別のものでもよい。そのため、通信手段１６０へのクロックの供給が減速・停止・復帰すると、通信手段１６０の通信速度も減速・停止・復帰することができる。
【００４６】
また、クロック１１０の初期化処理は、車載制御装置１０の起動時に実行されるものとする。さらに、クロック１１０は、Ｄｂｇ  ＩＦ１２０から制御でき、Ｄｂｇ  ＩＦ１２０の通信手段用クロック操作部１２１により、バス１７０を介して制御される。
【００４７】
Ｄｂｇ  ＩＦ１２０は、少なくとも、通信手段用  クロック操作部１２１、車載制御装置ソフトウェア１８０に関するソフトウェア停止・再実行部１２２、ＣＰＵ／周辺機器設定部１２３の機能を有している。
【００４８】
Ｄｂｇ  ＩＦ１２０は、検査管理装置２０内のＤｂｇ  ＩＦ接続部２０４によって、検査管理装置２０と接続される。この結果、検査管理装置２０内のソフトウェア停止・再実行指示部２０１、通信手段用クロック操作指示部２０２、ＣＰＵ／周辺機器設定指示部２０３のそれぞれによる指示内容が、車載制御装置１０のＤｂｇ  ＩＦ１２０内の通信手段用クロック操作部１２１、ソフトウェア停止・再実行部１２２、ＣＰＵ／周辺機器設定部１２３のそれぞれによって、実際に実行される。
【００４９】
なお、実行の際には、バス１７０を介して、ＣＰＵ１００や周辺回路が操作される。
【００５０】
ＲＯＭ１３０は、ＣＰＵ１００で実行できるコード、および変更しない変数の値を記録している記憶媒体である。車載制御装置ソフトウェア１８０の停止処理を実施した後の検査のために、ＲＯＭ１３０にあらかじめ検査用コードを実装しておく場合や、検査コマンドを仲介する通信インターフェースを実装しておく場合もある。
【００５１】
ＲＡＭ１４０は、書き換えが必要なデータの一次記憶、およびスタック領域として用いられ、実行中のみ記憶、読み出しができる記憶媒体である。検査の実行方法によっては、ＲＡＭ１４０は、検査用データのバッファエリアとして使用される場合もある。
【００５２】
割り込みコントローラ１５０は、割り込み処理を制御するハードウェアであり、車載制御では、よく用いられる。本実施の形態１では、車載ＴＤＭＡ方式の通信として、ＦｌｅｘＲａｙや一部の産業用ＥｔｈｅｒＮｅｔ等を想定しているが、ＦｌｅｘＲａｙでは、割り込みを使用する場合もある。なお、割り込みコントローラ１５０も、クロック１１０からクロック信号が供給されているものとする。
【００５３】
通信手段１６０は、車載制御でよく用いられるＣＡＮ、ＦｌｅｘＲａｙ、ＬＩＮ、ＥｔｈｅｒＮｅｔなどの通信をコントロールするハードウェアのことである。本実施の形態１では、特に、ＴＤＭＡ方式の通信として、ＦｌｅｘＲａｙや一部の産業用ＥｔｈｅｒＮｅｔ等を想定している。
【００５４】
また、車載制御装置１０内のクロック１１０から動作用のクロックが供給されているとする。なお、通信手段１６０の通信速度は、車載制御装置１０の通信相手のドライバである車載ＴＤＭＡ方式通信処理部２１０で操作でき、設定されている通信速度と一致しなければ、通信ができない。
【００５５】
バス１７０は、ＣＰＵ１００と周辺装置を繋いでいる。アドレスバス、データバス、コントロールバスがあり、プログラムカウンタ（ＰＣ）によって参照すべきアドレスバスを取得し、データバスでレジスタ群にＣＰＵ１００が必要なデータの入出力を行っている。
【００５６】
以上が検査装置１の構成に関する説明であるが、次に、車載制御装置ソフトウェア１８０の基本検査処理について、フローチャートを用いて説明する。本発明は、以上のような図１の検査装置１の構成に対して、実行停止・続行処理を用いた車載制御装置１０の自動検査方法を実施することを想定している。
【００５７】
ここからは、検査装置１で、実行停止・続行処理（ブレークポイント設定、解除）を用いて、車載制御装置１０に搭載された車載制御装置ソフトウェア１８０の自動検査を実行する方法について、図２〜図６のフローチャートを参照しながら説明する。
【００５８】
図２は、本発明の実施の形態１における検査装置１の基本検査処理に関するフローチャートである。図２のフローチャートだけであっても、車載ＴＤＭＡ通信以外の車載非同期通信（例えば、ＣＡＮ通信など）を用いる車載制御装置ソフトウェア１８０では、通信相手のドライバが少しの間、停止しても通信が維持できる。このため、図２の一連処理により、車載ＴＤＭＡ通信以外の車載非同期通信を用いる車載制御装置ソフトウェア１８０の自動検査を行うことができる。
【００５９】
しかしながら、本実施の形態１では、ＴＤＭＡ通信を用いて自動で車載制御装置ソフトウェア１８０の検査を行う。このため、図２の動作に加え、図３〜図６で説明する動作が必要となる。図２〜図６のような動作をさせるための処理は、テストシナリオが含まれている検査処理プログラム２２０として、検査管理装置２０にあらかじめ実装されている。
【００６０】
そして、検査管理装置２０は、図２〜図６のフローチャートに基づいて、設定情報保持部２４０内にあらかじめ保持された各種情報２４１〜２４４を用いて、演算処理部２３０内の各処理部２３１〜２３４によって検査処理プログラム２２０を実行することとなる。
【００６１】
図２で説明するブレークポイントを用いたソフトウェアの基本的な検査フローだけでは、上述したように、本発明で論ずるような同期通信である車載ＴＤＭＡ方式の通信を用いた車載制御装置ソフトウェア１８０の検査において、問題が発生する。
【００６２】
すなわち、ブレークポイントを使用したことで、車載制御装置１０内の通信手段１６０が停止しているにも関わらず、検査管理装置２０内にある、車載制御装置１０の通信相手が停止せずに、連続的に車載ＴＤＭＡ通信を継続しようとする。この結果、車載ＴＤＭＡ方式の通信のエラー検出機能が動作し、期待したソフトウェアの検査を継続できない問題が発生する。
【００６３】
なお、車載制御装置１０内の通信手段１６０が停止しているにも関わらず、検査管理装置２０内にある、車載制御装置１０の通信相手が停止せずに連続的に通信を継続した場合であっても、停止時間が短く、車載ＴＤＭＡ方式の１通信フレームでその停止時間が吸収できることも考えられる。しかしながら、停止時間が吸収できた場合であっても、その停止時間による遅延が、タイミング検査の課題となる。
【００６４】
以上を踏まえ、まず始めに、図２におけるステップＳ２０１〜ステップＳ２０８に関して、ブレークポイントを用いたソフトウェアの基本検査フローについて説明する。その後、上述した課題を解決するための処理フローを、図３〜図６を用いて説明する。
【００６５】
なお、図３〜図６の処理は、車載制御装置１０内の通信手段１６０が停止しているにも関わらず、検査管理装置２０内にある、車載制御装置１０の通信相手が停止せずに、連続的に通信を継続しようとすることを無視するための手順に相当する。
【００６６】
そして、図３のステップＳ３０１、ステップＳ３０２は、図２におけるステップＳ２０４で実行される。図４のステップＳ４０１、ステップＳ４０２は、図２におけるステップＳ２０５の終わりで実行される。図５のステップＳ５０１、ステップＳ５０２は、図２におけるステップＳ２０１の処理が実行された後に、実行される。さらに、図６のステップＳ６０１、ステップＳ６０２は、図２におけるステップＳ２０８の処理が実行された後に、実行される。ここからは、図２のソフトウェアの基本検査フローをまず説明する。
【００６７】
ソフトウェアテストのメイン処理である図２のフローチャートは、検査管理装置２０が、検査処理プログラム２２０を実施することで実行される。ステップＳ２０１において、検査管理装置２０は、車載制御装置ソフトウェア１８０の自動検査を実施するために、車載制御装置１０へアクセスを開始し、車載制御装置１０との接続処理を行う。
【００６８】
具体的には、検査管理装置２０は、車載制御装置ソフトウェア１８０の自動検査を実施するために、車載ＴＤＭＡ方式通信処理部２１０およびＤｂｇ  ＩＦ接続部２０４を介して、車載制御装置１０へアクセスする。
【００６９】
このとき、車載制御装置１０へのアクセス設定は、検査管理装置２０によって必要な設定にされている。例えば、ブレークポイント等の停止箇所の設定、Ｄｂｇ  ＩＦ１２０へのアクセス設定等は、検査管理装置２０で実施しておく。なお、このとき与える停止箇所の設定は、車載制御装置ソフトウェア１８０内の繰り返し処理に設定してもよいし、一度のみ実行される処理に設定してもよい。また、このような停止箇所の設定は、複数箇所設定してもよい。
【００７０】
また、車載ＴＤＭＡ方式通信処理部２１０も、車載制御装置１０との通信に必要な設定が全て実施されている。
【００７１】
そして、ステップＳ２０１により車載制御装置１０にアクセスした後は、ステップＳ２０２において、検査管理装置２０の指示により、車載制御装置ソフトウェア１８０が実行される。このとき、実行される車載制御装置ソフトウェア１８０は、設定されている停止箇所まで、車載制御で期待される動作を実行する。
【００７２】
次に、ステップＳ２０３において、検査管理装置２０は、車載制御装置ソフトウェア１８０の処理が実行された後、停止箇所に処理が到達したか否かを判定する。設定されたブレークポイントに処理が到達し、プログラムが停止していると判断されるまでは、ステップＳ２０２、ステップＳ２０３の処理を繰り返す。そして、設定されたブレークポイントに処理が到達し、プログラムが停止していると判断された場合には、ステップＳ２０４に進む。
【００７３】
なお、本実施の形態１では、ステップＳ２０１による接続処理の後に、図５のステップＳ５０１、ステップＳ５０２による通信速度変更処理を行っている。この結果、車載制御装置１０内の通信手段１６０が停止しているにも関わらず、検査管理装置２０内にある、車載制御装置１０の通信相手が停止せずに連続的に通信を継続しようとすることを無視できるようにしている。なお、図５のフローチャートについては、後で説明する。
【００７４】
停止箇所に処理が到達したことでステップＳ２０４に進んだ場合には、検査管理装置２０は、車載制御装置ソフトウェア１８０の車載制御処理を停止し、検査（ソフトウェアテスト）のための準備を実行する。停止箇所に車載制御の処理が到達していない場合には、ステップＳ２０２により、そのまま車載制御装置ソフトウェア１８０の車載制御の処理が続行される。
【００７５】
ステップＳ２０４において、検査管理装置２０は、検査処理プログラム２２０（ソフトウェアテスト）のための準備をする。具体的には、検査管理装置２０は、検査処理プログラム２２０に従った検査内容を実現するために、ブレークポイントで停止している間に、次の処理を行う。
【００７６】
すなわち、検査管理装置２０内のＣＰＵ／周辺機器設定指示部２０３は、Ｄｂｇ  ＩＦ１２０のＣＰＵ／周辺機器設定部１２３を介して、車載制御装置１０内のＣＰＵ１００のプログラムカウンタやスタックポインタ、ＲＯＭ１３０、ＲＡＭ１４０にある変数や各種レジスタの設定値にアクセスする。
【００７７】
さらに、ＣＰＵ／周辺機器設定指示部２０３は、Ｄｂｇ  ＩＦ１２０のＣＰＵ／周辺機器設定部１２３を介して、これらの設定値の書き換えを行い、ブレークポイントの解除後、検査内容が実行できるように、準備を実施する。
【００７８】
ここで、このような事前処理は、非同期の通信テスト、例えば、同期通信のＣＡＮ通信等であれば、問題はない。しかしながら、上述したように、本発明で取り扱うような同期通信のＴＤＭＡ方式の通信（例えば、ＦｌｅｘＲａｙ等の通信方式）では、検査処理でなければ本来使用しないＤｂｇ  ＩＦ１２０内のソフトウェア停止・再実行部１２２（すなわち、ブレークポイント）を使用する。このため、ブレークポイントでの停止中に車載制御装置１０の通信相手のドライバが停止しないことが問題となる。
【００７９】
この問題は、具体的には、ブレークポイントの停止時間だけみると、μｓオーダであるが、繰り返し実行すると、積算され、遅延時間は、大きくなる点が挙げられる。加えて、検査内容によっては、ＣＰＵ１００やＲＯＭ１３０、ＲＡＭ１４０の設定にかかる時間が長くなる場合もあり、μｓオーダで済まず、ｍｓオーダになることも考えられる。
【００８０】
車載ＴＤＭＡ方式の１通信フレーム時間は、例えば、ＦｌｅｘＲａｙでは、μｓオーダで設定される。このような場合に、設定にかかる時間がｍｓオーダにもなると、車載ＴＤＭＡ方式の１通信フレーム時間と比べると、遅延時間が致命的になり、検査が継続できなくなることがある。
【００８１】
これに対して、本実施の形態１では、図５に示した通信速度変更処理を実施することで、停止時間によるエラーの発生を抑制しながら、検査を継続することが可能になる。
【００８２】
例えば、検査処理プログラム２２０の要求で、車載ＴＤＭＡ方式による通信の検査として時間同期をとりながら、仮にＦｌｅｘＲａｙにて、２サイクルタイム中に、検査処理（１サイクルタイム）、判定処理（２サイクルタイム）を実施して検査したい場合を考える。このような場合にも、通信速度変更処理を適用することで、従来の方法では検査の継続ができなかったところが、期待どおり、判定（２サイクルタイム）を実施できるようになる。
【００８３】
次に、図２の説明に戻り、ステップＳ２０５において、検査管理装置２０は、ブレークポイントの解除を行う。具体的には、検査管理装置２０内のソフトウェア検査指示部２００は、先のステップＳ２０４において準備完了した検査内容を車載制御装置１０で実施させるために、先のステップＳ２０３の判定時にブレークポイントによって停止されていた車載制御装置ソフトウェア１８０の動作を、Ｄｂｇ  ＩＦ１２０内のソフトウェア停止・再実行部１２２（ブレークポイント設定・解除）を用いて再実行させる。
【００８４】
Ｄｂｇ  ＩＦ１２０内のソフトウェア停止・再実行部１２２は、検査管理装置２０から、ソフトウェア停止・再実行指示部２０１により指示され、再実行処理を行う。
【００８５】
なお、本実施の形態１では、ステップＳ２０４において、図３に示した停止準備処理が、事前処理として実施される。さらに、ステップＳ２０５において、図４に示した停止完了処理が、事後処理として実施される。なお、図３、図４のフローチャートについては、後で説明する。
【００８６】
次に、ステップＳ２０６において、検査管理装置２０は、検査処理プログラム２２０の検査内容を、車載制御装置１０内で実施させる。ここで、検査処理プログラム２２０による検査処理としては、車載ＴＤＭＡ方式の通信に関する検査を想定している。例えば、通信の送受信でやり取りする値の確認、通信シーケンスのタイミング、状態遷移、通信に関するアプリケーションの動作検査等の検査を想定している。
【００８７】
次に、ステップＳ２０７において、先のステップＳ２０６で実施した検査処理プログラム２２０の結果に対する判定処理が実施される。この判定処理は、検査内容に応じて、検査管理装置２０で実施してもよいし、車載ＴＤＭＡ方式通信処理部２１０で実施してもよいし、さらには、車載制御装置１０内で実施してもよい。
【００８８】
判定処理は、検査内容（テストシナリオ）に合わせたものを実施する。例えば、通信の送受信でやり取りする値の確認であれば、期待した値と送受信した値が同値であるか否かによって、判定処理が行われる。判定処理によって得られた結果は、検査結果としてログを残すため、検査管理装置２０で収集される。
【００８９】
次に、ステップＳ２０８において、検査管理装置２０は、全テスト工程の実施が完了したか否かを判定する。すなわち、検査処理プログラム２２０で、複数の検査（テスト）ステップが含まれている検査工程を実施する場合には、検査管理装置２０は、１つの検査ステップの実施と判定の処理が完了した後、全検査（テスト）ステップが完了しているか否かを確認する。
【００９０】
全検査（テスト）ステップが完了していれば、ステップＳ２０９に進む。一方、全検査（テスト）ステップが完了していなければ、ステップＳ２０２に戻り、車載制御装置ソフトウェア１８０の続行処理が行われる。
【００９１】
なお、本実施の形態１では、ステップＳ２０８において、全テスト工程を実施し終えて、判定がＹｅｓになる場合には、図６に示した通信速度復帰処理が実施される。これにより、図５に示した通信速度変更処理としてステップＳ２０１で実施した通信速度、変更前の通信速度に復帰させる。なお、この通信速度の復帰処理は、次に説明するステップＳ２０９の中で、最初に実施してもよい。
【００９２】
ステップＳ２０９に進んだ場合には、検査・判定処理が完了したとして、検査管理装置２０は、車載制御装置１０との接続を切断する。具体的には、検査管理装置２０から、車載制御装置１０内のＤｂｇ  ＩＦ１２０を介して、停止指示を与える。さらに、停止指示を与えた後、検査管理装置２０から、ソフトウェア検査指示部２００および車載ＴＤＭＡ方式通信処理部２１０による、車載制御装置１０との接続状態を切断する処理を実施する。
【００９３】
切断処理が実行された後、通信記録作成処理部２３４は、ログ作成処理を実施する。なお、通信記録作成処理部２３４は、検査中の全通信記録を、取得しており、切断処理後に、ログ作成処理を実施することができる。
【００９４】
以上の内容が、図２に示した基本検査処理に関する説明である。ここからは、図２の一連処理の説明の中で、詳細な説明を省略した図３〜図６のフローチャートについて、説明する。
【００９５】
図３は、本発明の実施の形態１における検査装置１で実行される停止準備処理に関するフローチャートである。この図３に示した停止準備処理は、上述したように、図２のステップＳ２０４において実行されるものであり、車載制御装置ソフトウェア１８０の停止処理を実施する前に行われる。
【００９６】
ステップＳ３０１において、検査管理装置２０は、ブレークポイントによって車載制御装置ソフトウェア１８０が停止しているときに、車載制御装置１０内のクロック１１０を操作する処理を実施することで、通信手段１６０に供給している動作クロックを停止させる。
【００９７】
検査管理装置２０が、通信手段用クロック操作指示部２０２を用いて、Ｄｂｇ  ＩＦ１２０を介し、通信手段用クロック操作部１２１を実行させることで動作クロックを停止させる。
【００９８】
具体的には、例えば、検査管理装置２０からインターフェース（ＴＣＰ／ＩＰを介した接続等）を介して、車載制御装置１０に接続し、接続したＤｂｇ  ＩＦ１２０から、Ｄｂｇ  ＩＦ１２０の機能を用いて、クロック１１０に関係するレジスタを強制的に書き換えることで、動作クロックを停止させる。
【００９９】
レジスタを強制書き換えする前に、元の設定値は、検査管理装置２０内の元通信速度保持処理部２３２の処理によりＲＡＭ１４０に保存されるか、あらかじめ検査管理装置２０が参照できる箇所に記録しているものとする。また、ステップＳ３０１の処理は、前記の具体的な方法に限らず、動作クロックを停止できる方法であればよい。
【０１００】
次に、ステップＳ３０２において、検査管理装置２０は、タイムスタンプを取得する。本タイムスタンプは、検査管理装置２０内の停止・再実行指示時間算出処理部２３３により停止時間として生成され、保持される。本タイムスタンプは、検査管理装置２０内の通信記録作成処理部２３４で検査結果のログを構成するときに用いられる。
【０１０１】
一方、図４は、本発明の実施の形態１における検査装置１で実行される停止完了処理に関するフローチャートである。この図４に示した停止完了処理は、上述したように、図２のステップＳ２０５において、事後処理として実行されるものである。
【０１０２】
ステップＳ４０１において、検査管理装置２０は、ブレークポイントを解除した後、車載制御装置１０内のクロック１１０を操作する処理を実施することで、通信手段１６０に供給している動作クロックを復帰させる。
【０１０３】
検査管理装置２０が、通信手段用クロック操作指示部２０２を用いて、Ｄｂｇ  ＩＦ１２０を介し、通信手段用クロック操作部１２１を実行させることで動作クロックを復帰させる。
【０１０４】
具体的には、例えば、検査管理装置２０からインターフェース（ＴＣＰ／ＩＰを介した接続等）を介して、車載制御装置１０に接続し、接続したＤｂｇ  ＩＦ１２０から、Ｄｂｇ  ＩＦ１２０の機能を用いて、クロック１１０に関係するレジスタを強制的に書き換えることで、動作クロックを復帰させる。なお、ステップＳ４０１の処理は、前記の具体的な方法に限らず、動作クロックを復帰できる方法であればよい。
【０１０５】
次に、ステップＳ４０２において、検査管理装置２０は、タイムスタンプを取得する。本タイムスタンプは、検査管理装置２０内の停止・再実行指示時間算出処理部２３３により再実行時間として生成され、保持される。本タイムスタンプは、検査管理装置２０内の通信記録作成処理部２３４で検査結果のログを構成するときに用いられる。
【０１０６】
ここで、検査管理装置２０は、転送時間情報２４１、停止実行時間情報２４２、再実行時間情報２４３を、あらかじめ測定して保持しているものとする。なお、これらの３つの時間は、以下の意味を持つ。
【０１０７】
転送時間情報２４１：ソフトウェア停止・再実行指示部２０１によって、検査管理装置２０からＤｂｇ  ＩＦ１２０に必要なデータを転送するためにかかる転送時間に関する情報
停止実行時間情報２４２：Ｄｂｇ  ＩＦ１２０のソフトウェア停止・再実行部１２２によって、車載制御装置ソフトウェア１８０が停止される停止実行時間に関する情報
再実行時間情報２４３：車載制御装置ソフトウェア１８０が再実行される再実行時間に関する情報
【０１０８】
そして、検査管理装置２０は、停止時間算出処理部２３１により、ステップＳ４０２で取得したタイムスタンプから、ステップＳ３０２で取得したタイムスタンプを減算することで、停止準備処理から停止完了処理までにかかった時間を経過時間として算出する。
【０１０９】
さらに、検査管理装置２０は、算出した経過時間から、転送時間情報２４１と停止実行時間情報２４２を除き、再実行時間情報２４３を加えることで、実際の停止時間を算出する。
【０１１０】
検査管理装置２０は、以上のようにして実際の停止時間を算出した後、ログ生成を行う。ログ生成は、検査管理装置２０内の通信記録作成処理部２３４で行われる。
【０１１１】
具体的には、検査管理装置２０は、ログを生成する指示を出す。これに対して、通信記録作成処理部２３４は、取得した検査中の全通信記録から、算出した実際の停止時間のログを削除し、時間軸も停止時間を除き連続しているようにして、通信ログを再生成する。
【０１１２】
例えば、検査中の全通信記録が１μｓごとに記録されていたとして、その全通信記録から実際の停止時間を除く場合を考える。この場合、単純に実際の停止時間を取り除くと、時間軸が、１μｓごとに、１μｓ、２μｓ、３μｓ・・・７７μｓ、７８μｓ・・・となっていたものが、１μｓ、７７μｓ、７８μｓ・・・と停止時間分抜けてしまう。そこで、通信記録作成処理部２３４は、時間軸を１μｓ、修正２μｓ、修正３μｓ・・・と修正し、停止時間を除いて連続している時間軸を再生成する。
【０１１３】
このようにして再生成された通信ログは、先の図２を用いて説明したように、検査を行うために適した通信速度に変更された状態で生成されたものであり、実際の制御動作時の通信速度に対して加工されている。すなわち、検査前に通信速度を変更するとともに、検査後に通信速度を元に戻す必要がある。
【０１１４】
図３によるフローチャートを実行することで、停止準備処理が終了したため、検査管理装置２０は、検査準備処理へ操作を進める。先のステップＳ２０４の処理は、まだ続き、車載制御装置ソフトウェア１８０の停止処理中に、検査管理装置２０は、検査準備を実行する。検査内容は、検査管理装置２０から転送され、Ｄｂｇ  ＩＦ１２０を介して、車載制御装置１０内のＣＰＵ１００や周辺機器に設定される。
【０１１５】
以上が、図２の基本検査フローのステップＳ２０４で実行される図３に示した停止準備処理と、この停止時間の間に実施される検査準備処理である。
【０１１６】
次に、停止準備処理および検査準備処理が実施された後に、図２の基本検査フローのステップＳ２０５で実行される停止完了処理について、図４を用いて説明する。図４は、本発明の実施の形態１における検査装置１で実行される停止完了処理に関するフローチャートである。
【０１１７】
この停止完了処理は、ブレークポイントによる停止処理を実施した後に行われる。車載制御装置ソフトウェア１８０を実行して、ステップＳ２０４で準備した検査内容を検証するために、検査管理装置２０は、停止処理を解除する。
【０１１８】
まず、ステップＳ４０１において、検査管理装置２０は、ステップＳ３０１で実施した車載制御装置１０のクロック１１０の停止処理を解除する。
【０１１９】
検査管理装置２０から車載制御装置１０内のクロック１１０への操作方法としては、先のステップＳ３０１で使用した操作方法を使用する。そして、検査管理装置２０は、元の設定値として、ステップＳ３０１で記憶しておいたクロック値、もしくは元から検査管理装置２０に記録させておいたクロック値を用いて、車載制御装置ソフトウェア１８０の動作を復帰させる。
【０１２０】
次に、ステップＳ４０２において、検査管理装置２０は、ステップＳ３０２と同様にして、タイムスタンプを取得する。本タイムスタンプは、検査管理装置２０内の通信記録作成処理部２３４で、検査結果のログを構成するときに用いられる。
【０１２１】
先のステップＳ３０２で記載したように、検査管理装置２０は、取得した検査中の全通信記録から、停止時間を除き、通信速度を変更した倍率で実時間換算し、検査結果ログを作成する。これによって、通信路に期待する検査ログの取得が容易になる。詳細は、以下で説明する。
【０１２２】
図４によるフローチャートを実行することで、停止完了処理が終了したため、車載制御装置１０の処理と、車載ＴＤＭＡ方式による通信動作が復帰できたこととなる。そこで、図２のステップＳ２０５に処理を戻し、検査を継続する。
【０１２３】
以上が図３および図４の説明であり、ここからは、図５による通信速度変更処理、および図６による通信速度復帰処理について説明する。通信速度を変更することで、車載制御装置１０内の通信手段１６０が停止しているにも関わらず、検査管理装置２０内にある、車載制御装置１０の通信相手が停止せずに連続的に通信を継続できないといった課題を、無視できるようになる。
【０１２４】
ここで、図５におけるステップＳ５０１、ステップＳ５０２の処理は、図２におけるステップＳ２０１の処理の前に行われる。また、図６におけるステップＳ６０１、ステップＳ６０２の処理は、図２におけるステップＳ２０８の後に行われる。
【０１２５】
まず、図５について説明する。図５は、本発明の実施の形態１における検査装置１で実行される通信速度変更処理に関するフローチャートである。上述した課題を解決するために、図２におけるステップＳ２０１の処理の前に、この通信速度変更処理が開始される。
【０１２６】
ステップＳ５０１において、検査管理装置２０は、通信速度を変更するために、検証用通信速度設定情報２４４を参照する。この検証用通信速度設定情報２４４は、車載制御装置１０の通信手段１６０が停止しているにも関わらず、検査管理装置２０内にある、車載制御装置１０の通信相手が停止せずに連続的に通信を継続できない課題を無視できる通信速度として、あらかじめ記録されている。
【０１２７】
具体的には、この検証用通信速度設定情報２４４は、車載ＴＤＭＡ方式通信の１通信フレームにかかる時間に対して、基準値以下になるように求めた通信速度情報である。基準値としては、１／１０程度を用いる。１／１０程度とした理由は、１通信フレーム内で規格として同期誤差を吸収する割り当て時間幅が、１／１０として定められているからである。
【０１２８】
例えば、車載ＴＤＭＡ方式通信のＦｌｅｘＲａｙでは、１通信フレームの中にＮｅｔＷｏｒｋ  Ｉｄｌｅ  ＴｉｍｅまたはＩｄｌｅ  Ｔｉｍｅが用意されている。そして、その用意された時間の中で、ＦｌｅｘＲａｙドライバによって同期がとれるように、調整される。この用意されているＮｅｔＷｏｒｋ  Ｉｄｌｅ  ＴｉｍｅまたはＩｄｌｅ  Ｔｉｍｅが、通信の設定によるが、１通信フレーム中に約１／１０程度の割合で用意されている。
【０１２９】
次に、ステップＳ５０２において、検査管理装置２０は、通信速度を変更するために、クロック１１０を操作して、ステップＳ５０１で参照した検証用通信速度設定情報２４４を、変更すべき通信速度として設定する。
【０１３０】
さらに、検査管理装置２０は、車載ＴＤＭＡ方式通信処理部２１０に対して指示を出し、通信速度設定部２１１を用いて、車載制御装置１０および車載ＴＤＭＡ方式通信処理部２１０の通信速度を変更する。これによって、車載制御装置１０だけ通信が止まっても、車載制御装置１０の通信速度を減速させたことで、通信がエラーによって止まってしまう状態を回避することができる。
【０１３１】
具体的には、例えば、車載制御装置１０と車載ＴＤＭＡ方式通信処理部２１０とが、インターフェース（プロセスを介した接続等）にて接続され、車載ＴＤＭＡ方式通信処理部２１０が提供するＡＰＩにて、車載ＴＤＭＡ方式の通信速度を変更する。
【０１３２】
なお、ステップＳ５０１おける通信速度の変更処理は、前記の方法に限らず、通信速度を変更できる方法であれば他の方法を採用してもよい。また、元の通信速度の設定値は、強制書き換えする前に、検査管理装置２０の元通信速度保持処理部２３２の処理により、設定情報保持部２４０内に保存しておくか、あるいは、あらかじめ検査管理装置２０が参照できる箇所に記録されているものとする。
【０１３３】
図５によるフローチャートを実行することで、検証用通信速度設定情報２４４が検査時の通信速度として設定でき、その後、検査を開始することとなる。
【０１３４】
次に、図６について説明する。図６は、本発明の実施の形態１における検査装置１で実行される通信速度復帰処理に関するフローチャートである。図２のステップＳ２０８において、全テスト工程が実施されたと判定された後に、この通信速度復帰処理が開始され、検査前の通信速度に戻されることとなる。
【０１３５】
ステップＳ６０１において、検査管理装置２０は、現在設定されている検証用の通信速度を、ステップＳ５０２で保存した値、もしくはあらかじめ保有していた通信速度に変更するために、元通信速度保持処理部２３２によって保持されている変更前の通信速度を参照する。
【０１３６】
次に、ステップＳ６０２において、検査管理装置２０は、通信速度を検査前の値に戻すために、クロック１１０を操作して、ステップＳ６０１で参照した検査前の通信速度を復帰通信速度として設定する。
【０１３７】
さらに、このステップＳ６０２において、検査管理装置２０は、車載ＴＤＭＡ方式通信処理部２１０に対して指示を出し、通信速度設定部２１１を用いて、車載ＴＤＭＡ方式通信処理部２１０の通信速度も、検査前の通信速度に変更する。
【０１３８】
図６によるフローチャートを実行することで、通信速度が検査前の状態に戻ったため、検査管理装置２０は、終了処理を実施するが、その前にログの加工も行う。検査管理装置２０は、図４の停止完了処理において生成されたログに対して、元通信速度保持処理部２３２によって保持された検査前の通信速度と、検証用通信速度設定情報２４４に相当する検査時の通信速度の比をかけて、実時間に直したログを生成する。
【０１３９】
以上のように、実施の形態１によれば、ブレークポイントによる車載制御装置の車載ＴＤＭＡ通信のドライバが停止している間を無視できるくらい通信速度を落とし、検査中に車載制御装置の通信相手となっている車載ＴＤＭＡ通信方式のドライバの通信速度を変更し、検査が終了したことに合わせて、通信相手の車載ＴＤＭＡ通信方式の通信ドライバも変更する前の通信処理速度で再駆動させる構成を備えている。
【０１４０】
このような実行停止・続行処理を用いた車載制御装置の自動検査方法を用いることにより、ＴＤＭＡ方式で通信している車載制御装置の自動検査を自動化することができる。具体的には、検査時の通信速度を下げることで、デバッグインターフェースを介し、制御ソフトウェアの実行停止・続行処理を実施しながらでも、車載制御装置ソフトウェアの自動検査を行うことができる方法が確立される。この結果、デバッグ作業が自動化でき、ソフトウェア検査の効率化を実現できる。
【０１４１】
また、実施の形態１に係る車載制御装置の自動検査装置は、ブレークポイントの影響で停止した時間を補正した通信ログを生成できる構成を備えている。この結果、補正された通信ログと、実環境試験で使用した場合に出力される通信ログとを比較できるようになり、エラーの早期発見によって、デバッグの効率化ができる。さらに、ブレークポイントにより、車載ＴＤＭＡ通信のドライバが停止している時間を補正できる構成も提供することができる。
【０１４２】
なお、本発明は、上述した実施の形態に限定されるものではなく、種々の処理変更を行うことが可能である。また、本発明の実施の形態では、車載制御装置に適用する場合について説明したが、車載制御装置に限定されるものではなく、船舶の制御装置等、他の輸送機器の制御装置に適用することも可能である。
【符号の説明】
【０１４３】
１  検査装置、１０  車載制御装置、２０  検査管理装置、３０  通信路、１００  ＣＰＵ、１１０  クロック、１２０  Ｄｂｇ  ＩＦ（デバッグインターフェース）、１２１  通信手段用クロック操作部、１２２  ソフトウェア停止・再実行部（車載制御装置ソフトウェア停止・再実行部）、１２３  ＣＰＵ／周辺機器設定部、１３０  ＲＯＭ、１４０  ＲＡＭ、１５０  割り込みコントローラ、１６０  通信手段、１７０  バス、１８０  車載制御装置ソフトウェア、２００  ソフトウェア検査指示部、２０１  ソフトウェア停止・再実行指示部、２０２  通信手段用クロック操作指示部、２０３  ＣＰＵ／周辺機器設定指示部、２０４  Ｄｂｇ  ＩＦ接続部、２１０  車載ＴＤＭＡ方式通信処理部、２１１  通信速度設定部、２１２  通信機能設定部、２１３  通信接続部、２２０  検査処理プログラム、２３０  演算処理部、２３１  停止時間算出処理部、２３２  元通信速度保持処理部、２３３  停止・再実行指示時間算出処理部（経過時間算出部）、２３４  通信記録作成処理部（ログ作成部）、２４０  設定情報保持部、２４１  転送時間情報、２４２  停止実行時間情報、２４３  再実行時間情報、２４４  検証用通信速度設定情報。
【図１】
2018128892.tif 000003
【図２】
2018128892.tif 000004
【図３】
2018128892.tif 000005
【図４】
2018128892.tif 000006
【図５】
2018128892.tif 000007
【図６】
2018128892.tif 000008
【手続補正書】
【提出日】平成30年2月5日(2018.2.5)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
本発明に係る車載制御装置の自動検査装置は、検査対象である制御ソフトウェアを内蔵する車載制御装置と、制御ソフトウェアのテストシナリオが規定された検査処理プログラムを内蔵する検査管理装置とが同期通信を行うことで、検査管理装置がテストシナリオに従って制御ソフトウェアの検査を実行する車載制御装置の自動検査装置であって、車載制御装置は、ＣＰＵと、周辺機器と、クロックと、デバッグインターフェースと、通信手段とを含んで構成され、検査管理装置は、デバッグインターフェースを介して、テストシナリオに従った検査を行うためにクロックの設定を通常設定値から検査用設定値に変更するとともに、制御ソフトウェアにブレークポイントを設定し、クロックに設定された検査用設定値による通信速度に一致するように、通信手段との間で行う同期通信の通信速度を変更した後、制御ソフトウェアをブレークポイントで停止するまで実行させ、制御ソフトウェアがブレークポイントで停止した後に、デバッグインターフェースを介して、通信手段に供給している動作クロックを停止させるとともに、ＣＰＵおよび周辺機器の設定をテストシナリオに合わせて変更し、ブレークポイントを解除した後に、デバッグインターフェースを介して、通信手段に供給している動作クロックを復帰させるとともに、制御ソフトウェアを再実行させることで、テストシナリオに従った検査を開始させ、検査の開始後、クロックを検査用設定値から通常設定値に復帰させるとともに、復帰後のクロックに設定された通常設定値による通信速度に一致するように、同期通信の通信速度を変更するものである。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
また、本発明に係る車載制御装置の自動検査方法は、ＣＰＵと、周辺機器と、クロックと、デバッグインターフェースと、通信手段とを含んで構成されるとともに、検査対象である制御ソフトウェアを内蔵する車載制御装置と、制御ソフトウェアのテストシナリオが規定された検査処理プログラムを内蔵する検査管理装置と、が同期通信を行うことで、検査管理装置により、テストシナリオに従って制御ソフトウェアの検査を実行するための車載制御装置の自動検査方法であって、検査管理装置において、デバッグインターフェースを介して、テストシナリオに従った検査を行うためにクロックの設定を通常設定値から検査用設定値に変更するとともに、制御ソフトウェアにブレークポイントを設定する第１ステップと、クロックに設定された検査用設定値による通信速度に一致するように、通信手段との間で行う同期通信の通信速度を変更した後、制御ソフトウェアをブレークポイントで停止するまで実行させる第２ステップと、制御ソフトウェアがブレークポイントで停止した後に、デバッグインターフェースを介して、通信手段に供給している動作クロックを停止させるとともに、ＣＰＵおよび周辺機器の設定をテストシナリオに合わせて変更する第３ステップと、ブレークポイントを解除した後に、デバッグインターフェースを介して、通信手段に供給している動作クロックを復帰させるとともに、制御ソフトウェアを再実行させることで、テストシナリオに従った検査を開始させる第４ステップと、検査の開始後、クロックを検査用設定値から通常設定値に復帰させるとともに、復帰後のクロックに設定された通常設定値による通信速度に一致するように、同期通信の通信速度を変更する第５ステップとを有するものである。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
検査対象である制御ソフトウェアを内蔵する車載制御装置と、前記制御ソフトウェアのテストシナリオが規定された検査処理プログラムを内蔵する検査管理装置とが同期通信を行うことで、前記検査管理装置が前記テストシナリオに従って前記制御ソフトウェアの検査を実行する車載制御装置の自動検査装置であって、
前記車載制御装置は、ＣＰＵと、周辺機器と、クロックと、デバッグインターフェースと、通信手段とを含んで構成され、
前記検査管理装置は、
前記デバッグインターフェースを介して、前記テストシナリオに従った検査を行うために前記クロックの設定を通常設定値から検査用設定値に変更するとともに、前記制御ソフトウェアにブレークポイントを設定し、
前記クロックに設定された前記検査用設定値による通信速度に一致するように、前記通信手段との間で行う前記同期通信の通信速度を変更した後、前記制御ソフトウェアを前記ブレークポイントで停止するまで実行させ、
前記制御ソフトウェアが前記ブレークポイントで停止した後に、前記デバッグインターフェースを介して、前記通信手段に供給している動作クロックを停止させるとともに、前記ＣＰＵおよび前記周辺機器の設定を前記テストシナリオに合わせて変更し、
前記ブレークポイントを解除した後に、前記デバッグインターフェースを介して、前記通信手段に供給している動作クロックを復帰させるとともに、前記制御ソフトウェアを再実行させることで、前記テストシナリオに従った検査を開始させ、
前記検査の開始後、前記クロックを前記検査用設定値から前記通常設定値に復帰させるとともに、復帰後の前記クロックに設定された前記通常設定値による通信速度に一致するように、前記同期通信の通信速度を変更する
車載制御装置の自動検査装置。
【請求項２】
前記検査管理装置は、
前記制御ソフトウェアが前記ブレークポイントで停止してから再実行されるまでの停止時間が、前記同期通信の１通信フレームにかかる時間に対して、基準値以下になる検証用通信速度があらかじめ記憶された設定情報保持部を有し、
前記検査用設定値による通信速度として、前記検証用通信速度を用いる
請求項１に記載の車載制御装置の自動検査装置。
【請求項３】
前記検査管理装置は、
前記同期通信による通信記録を取得し、前記通信記録から前記制御ソフトウェアの検査中におけるログを作成するログ作成部と、
前記動作クロックを停止させる第１指令を出力してから、前記動作クロックを復帰させる第２指令を出力するまでの経過時間を算出する経過時間算出部と
をさらに有し、
前記ログ作成部は、前記経過時間算出部で算出された前記経過時間に基づいて、前記通信記録の中から前記制御ソフトウェアが停止していた時間を除いた時間軸を持つ第１のログを生成し、検査前の通信速度と前記検証用通信速度との比に基づいて、前記第１のログを前記検査前の通信速度に相当する時間軸を持つ第２のログに復元する
請求項２に記載の車載制御装置の自動検査装置。
【請求項４】
ＣＰＵと、周辺機器と、クロックと、デバッグインターフェースと、通信手段とを含んで構成されるとともに、検査対象である制御ソフトウェアを内蔵する車載制御装置と、前記制御ソフトウェアのテストシナリオが規定された検査処理プログラムを内蔵する検査管理装置と、が同期通信を行うことで、前記検査管理装置により、前記テストシナリオに従って前記制御ソフトウェアの検査を実行するための車載制御装置の自動検査方法であって、
前記検査管理装置において、
前記デバッグインターフェースを介して、前記テストシナリオに従った検査を行うために前記クロックの設定を通常設定値から検査用設定値に変更するとともに、前記制御ソフトウェアにブレークポイントを設定する第１ステップと、
前記クロックに設定された前記検査用設定値による通信速度に一致するように、前記通信手段との間で行う前記同期通信の通信速度を変更した後、前記制御ソフトウェアを前記ブレークポイントで停止するまで実行させる第２ステップと、
前記制御ソフトウェアが前記ブレークポイントで停止した後に、前記デバッグインターフェースを介して、前記通信手段に供給している動作クロックを停止させるとともに、前記ＣＰＵおよび前記周辺機器の設定を前記テストシナリオに合わせて変更する第３ステップと、
前記ブレークポイントを解除した後に、前記デバッグインターフェースを介して、前記通信手段に供給している動作クロックを復帰させるとともに、前記制御ソフトウェアを再実行させることで、前記テストシナリオに従った検査を開始させる第４ステップと、
前記検査の開始後、前記クロックを前記検査用設定値から前記通常設定値に復帰させるとともに、復帰後の前記クロックに設定された前記通常設定値による通信速度に一致するように、前記同期通信の通信速度を変更する第５ステップと
を有する車載制御装置の自動検査方法。