(57)【要約】【課題】自己診断機能を備えるマイコンにおいて、機能試験がリセットされることを抑制する技術を提供する。【解決手段】マイコンは、所定の機能を実行する複数の機能回路ブロックと、複数の機能回路ブロックの診断処理を実行する制御部と、を備え、制御部が、複数の機能回路ブロックのうち、一部の機能回路ブロックの診断処理を開始した後、当該診断処理が終了する前に他の少なくとも一つの機能回路ブロックの診断処理を開始する。【選択図】図４
2018071992.tif 000002
【特許請求の範囲】
【請求項１】
所定の機能を実行する複数の機能回路ブロックと、
前記複数の機能回路ブロックの診断処理を実行する制御部と、を備え、
前記制御部が、前記複数の機能回路ブロックのうち、一部の機能回路ブロックの診断処理を開始した後、当該診断処理が終了する前に他の少なくとも一つの機能回路ブロックの診断処理を開始する、
マイコン。
【請求項２】
所定の機能を実行する複数の機能回路ブロックと、
負荷回路と、
前記負荷回路を動作させると共に前記複数の機能回路ブロックの診断処理を実行する制御部と、を備え、
前記制御部は、前記複数の機能回路ブロックの診断処理を順次実行し、且つ、少なくとも、現在の前記機能回路ブロックの診断処理が終了してから次の前記機能回路ブロックの診断処理が開始するまでの間に、前記負荷回路を動作させる、
マイコン。
【請求項３】
前記制御部は、現在の前記機能回路ブロックの診断処理の終了時と次の前記機能回路ブロックの診断処理の開始時とを含む時間帯に、前記負荷回路を動作させる、請求項２に記載のマイコン。
【請求項４】
前記診断処理は、前記複数の機能回路ブロックによるＢＩＳＴ（Built-In Self Test）によって実行される、請求項１から３の何れか１項に記載のマイコン。
【請求項５】
請求項１から４の何れか１項に記載のマイコンと、
前記マイコンに電力を供給するレギュレータと、を備え、
前記複数の機能回路ブロックは、前記レギュレータにより供給される電流を消費して前記診断処理を実行する、
システム。
【請求項６】
請求項５に記載のシステムを備える、電子制御装置。
【請求項７】
所定の機能を実行する複数の機能回路ブロックを有するマイコンの機能試験方法であって、
前記複数の機能回路ブロックの診断処理を実行する診断処理ステップを備え、
前記診断処理ステップでは、前記複数の機能回路ブロックのうち、一部の機能回路ブロックの診断処理を開始した後、当該診断処理が終了する前に他の少なくとも一つの機能回路ブロックの診断処理を開始させる、
マイコンの機能試験方法。
【請求項８】
所定の機能を実行する複数の機能回路ブロックと、負荷回路と、を有するマイコンの機能試験方法であって、
前記複数の機能回路ブロックの診断処理を順次実行する診断処理ステップを備え、
前記診断処理ステップでは、少なくとも、現在の前記機能回路ブロックの診断処理が終了してから次の前記機能回路ブロックの診断処理が開始するまでの間に、前記負荷回路を動作させる、
マイコンの機能試験方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイコン、システム、電子制御装置、及びマイコンの機能試験方法に関する。
【背景技術】
【０００２】
ＬＳＩ（Large-Scale Integration）の故障の原因は、トランジスタの不良、配線の断
線、短絡等多くの原因があり、その影響も異なるが、多くのＬＳＩテストは特定の論理素子（論理ゲート）の入出力が論理「０」あるいは論理「１」に固定される縮退故障（stuck-at fault）という故障モードを前提としている。従来、マイコン等の大規模化ＬＳＩでは、このような内部回路故障モードに対しての診断処理を自分自身で行うＢＩＳＴ（Built-In Self Test）の機能が内蔵されている。このような自己診断処理を実行する組み込み式の自己診断回路はＢＩＳＴ回路と呼ばれ、広く利用されている。
【０００３】
しかしながら、ＢＩＳＴによる診断はマイコンに内蔵しているすべての機能を動作させることによって状態のチェックを行うため、消費電流が大きくなる。それにより、マイコンやマイコンに電源を供給するレギュレータの発熱が問題となっていた。
【０００４】
このような問題の解決手段として、内部機能を分割し、ＢＩＳＴ時のテストを部分的に実施していくことにより消費電流を低減させ、発熱を抑える技術が知られている。
【０００５】
上記に関連して、特許文献１には、披検ＬＳＩの回路を複数の回路ブロックに分割し、各回路ブロックのＢＩＳＴをシリアルに行うことや診断時間を短縮するためにパラレルに行う、試験システムが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１４１１４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述の試験方法でマイコンの自己診断処理を実行する場合、各回路ブロックのＢＩＳＴが切り替わる際に、過渡的に消費電流が一旦０ｍＡになってから急峻に増加する現象が発生する。マイコンに電源を供給するレギュレータは、一般に、消費電流が０ｍＡから変動した際に出力電圧の変動が大きくなる傾向がある。この、レギュレータの出力変動が大きいと、マイコンが動作異常を起こし、正常に自己診断を実施できない可能性がある。例えば、レギュレータの電源出力がマイコン自身の持っているリセット電圧以下まで変動すると、ＢＩＳＴがリセットされた後に再開し、再びレギュレータの電源出力がリセット電圧以下まで変動し、ＢＩＳＴが初期化される、という動作を繰り返し、自己診断を正常に実行できない虞があった。
【０００８】
上記の問題の解決方法として、以下の二つの方法が考えられるが、何れもデメリットがあった。一つは、レギュレータの出力にコンデンサを追加することによって、レギュレータの出力電圧の変動を抑制する方法である。しかしながら、この方法では、コンデンサが余分に必要となり、コストアップ及び電源部のサイズアップを引き起こす可能性がある。もう一つは、レギュレータにプルダウン抵抗を接続する等して、レギュレータに常に一定の電流を流す方法である。しかしながら、この方法では、レギュレータの最大電流も増加するため、発熱が増加してしまう。また、レギュレータ側の電流能力を増加させる必要が
あるため、レギュレータのコストアップが懸念される。
【０００９】
本発明は、上記の問題を鑑みてなされたものであり、その目的は、診断機能を備えるマイコンにおいて、診断処理がリセットされることを抑制する技術を提供することである。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本発明は、以下の手段を採用した。即ち、本発明に係るマイコンは、所定の機能を実行する複数の機能回路ブロックと、前記複数の機能回路ブロックに自己診断処理を実行させる制御部と、を備え、前記制御部が、前記複数の機能回路ブロックのうち、一部の機能回路ブロックに自己診断処理を開始させた後、当該自己診断処理が終了する前に他の少なくとも一つの機能回路ブロックに自己診断処理を開始させる。
【００１１】
本発明によると、診断処理の際に、常に少なくとも１つ以上の機能回路ブロックの診断処理を実行するため、マイコンの消費電流が０ｍＡとなることを抑制することができる。そうすることにより、各機能回路ブロックの診断処理が切り替わる際にマイコンに電源を供給するレギュレータの出力電圧が変動することを抑制することができる。その結果、各機能回路ブロックのテストの切り替わる際において診断処理がリセットされることを抑制することができる。
【発明の効果】
【００１２】
本発明によれば、診断機能を備えるマイコンにおいて、機能試験がリセットされることを抑制することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、第１実施形態に係る試験システムの構成を示すブロック図である。
【図２】図２は、第１実施形態に係るマイコンの構成を示すブロック図である。
【図３】図３は、第１実施形態に係る試験システムの機能試験における手順を示すフローチャートである。
【図４】図４は、第１実施形態に係るマイコンの機能試験における動作を示すタイムチャートである。
【図５】図５は、比較例に係る試験システムの機能試験における手順を示すフローチャートである。
【図６】図６は、比較例に係るマイコンの機能試験における動作を示すタイムチャートである。
【図７】図７は、第２実施形態に係るマイコンの構成を示すブロック図である。
【図８】図８は、第２実施形態に係る試験システムの機能試験における手順を示すフローチャートである。
【図９】図９は、第２実施形態に係るマイコンの機能試験における動作を示すタイムチャートである。
【図１０】図１０は、第２実施形態に係るマイコンの機能試験における動作を示すタイムチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の好適な実施の形態について、図面を参照して説明する。但し、以下で説明する実施形態は本発明を実施するための例示であり、本発明は以下に説明する態様に限定されない。
【００１５】
＜第１実施形態＞
図１は、第１実施形態に係るマイコン３の試験システム１００の構成を示すブロック図である。試験システム１００は、マイコン３の機能試験を実行する。試験システム１００
は、機能試験において、マイコン３にＢＩＳＴによる診断処理を実行させることによって、マイコン３の良否を判定する。マイコン３の試験システム１００は、試験装置１と、試験対象であるマイコン３と、試験装置１とマイコン３とを接続するテストボード等を含むＩ／Ｆ（Interface）部２と、マイコン３に電源を供給するレギュレータ４と、を備える
。マイコン３は、通常の動作モードにおいて、図示しないセンサ等の入力と記憶されたデータ等とに基づきレギュレータ４から供給される電力で演算処理した結果を、図示しない出力回路に出力する。試験装置１は、テストプログラムを実行することでマイコン３内部の機能を診断し、マイコン３が正常であるか否かを判定する。
【００１６】
図１に示すように、試験装置１は、入力部１１、中央処理部１２、メモリ部１３、記憶部１４、表示部１５を備える。テストプログラムは、記憶部１４に格納されており、機能試験実行時にユーザがキーボードやマウス等の入力部１１から入力した指示に基づいてメモリ部１３に転送される。中央処理部１２は、メモリ部１３に格納されたテストプログラムを実行し、試験結果を表示部１５に出力する。
【００１７】
ここで、中央処理部１２は、例えば、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）である。また、メモリ部１３は、例えば、ＲＡＭ（Random Access Memory）やＲＯＭ（Read Only Memory）である。また、記憶部１４は、例えば、Ｅ
ＰＲＯＭ（Erasable Programmable ROM）、ハードディスクドライブ（ＨＤＤ、Hard Disk
Drive）、ソリッドステートドライブ（ＳＳＤ、Solid State Drive）である。また、記
憶部１４は、リムーバブルメディア、即ち可搬記録媒体を含むことができる。リムーバブルメディアは、例えば、ＵＳＢ（Universal Serial Bus）メモリ、あるいは、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）のようなディスク記録媒体である。
【００１８】
本実施形態に係るマイコン３は、ＢＩＳＴによる診断機能を有している。マイコン３のＢＩＳＴは、レギュレータ４によって供給される電流を電源として実行される。図２は、本実施形態に係るマイコン３の構成を示すブロック図である。マイコン３は、ＢＩＳＴによる診断処理の対象である機能回路３６を含む機能回路ブロック３２−１〜４と、機能試験時に試験装置１から出力される信号に基づいて機能回路ブロック３２−１〜４を制御する制御回路３１と、レギュレータ４の出力電圧を監視する電圧監視回路３７とを備える。機能回路ブロック３２−１〜４は、マイコン３内部に含まれる複数の機能回路を４のグループに分割したブロックである。機能回路ブロック３２−１〜４は、それぞれ、ＢＩＳＴを実行するための回路として、実行回路３３、テストパタン供給回路３４、解析回路３５を備える。また、機能回路ブロック３２−１〜４の機能回路３６は、例えば、ＣＰＵや、メモリ、ＲＯＭ、ＲＡＭ等を含むことができる。各機能回路ブロック３２−１〜４は、バスを介して相互に通信可能なように構成されている。また、本実施形態においては、機能回路ブロック３２−１〜４の４ブロックを例示して説明するが、ブロック数は４つに限定されない。また、以下の説明において、機能回路ブロック３２−１〜４の何れかを特定せずに説明するときには機能回路ブロック３２と総称する。
【００１９】
制御回路３１は、試験装置１から供給されるデータ及びクロック、電圧監視回路３７からの信号を監視し、試験時のマイコン３の内部回路を制御する。実行回路３３は、制御回路３１から受信する命令を実施するための制御信号を生成し、マイコン３内の回路に供給する。また、実行回路３３は、解析回路３５からの診断結果を制御回路３１に送る。即ち、制御回路３１は、試験装置１からのテスト制御信号を受け取り、各機能回路ブロック３２の実行回路３３との間で制御信号をやりとりする。また、制御回路３１は、各機能回路ブロック３２の実行回路３３からの診断結果を受け取り処理した後に試験装置１に出力する。制御回路３１は、本発明における「制御部」に相当する。
【００２０】
テストパタン供給回路３４は、実行回路３３の制御に従ってテストパタンを生成し、機
能回路３６に供給する。解析回路３５は、機能回路３６から出力される診断結果を示すデータを取り込んで解析する。解析回路３５は、診断結果に基づいて機能回路ブロック３２が正常か否かの判定を実行し、判定結果を実行回路３３に出力する。電圧監視回路３７は、レギュレータ４から供給される電圧を常に監視する。電圧監視回路３７は、レギュレータ４の出力電圧がマイコン３の所定電圧であるリセット電圧以下となることを検出すると、リセット処理を実行する。リセット処理では、機能試験をリセットさせるためのリセット信号が制御回路３１に出力され、制御回路３１がリセット信号に基づいて機能試験をリセットする。
【００２１】
通常、レギュレータ４は一定の電圧でマイコン３に電力を供給し続ける。しかしながら、例えば、レギュレータ４が電圧を供給しているときにマイコン３の消費電流が一瞬だけ０ｍＡになり、再度消費電流が増加するような場合、レギュレータ４の出力電圧が変動する傾向がある。この出力電圧の変動が所定の値を超えることによって、レギュレータ４の出力電圧がマイコン３のリセット電圧以下となることがある。レギュレータ４の出力電圧がリセット電圧以下となったことを電圧監視回路３７が検出すると、機能試験がリセットされ、正常に機能試験を実行できない虞がある。
【００２２】
次に、機能回路ブロック３２のＢＩＳＴによる診断処理について説明する。機能回路ブロック３２の診断は、制御回路３１が試験装置１から出力されたテストプログラムに基づいて診断処理を実行する機能回路ブロック３２に対応する制御信号を生成し、診断処理を行う機能回路ブロック３２の実行回路３３へ出力することによって開始される。実行回路３３は、テストパタン供給回路３４及び解析回路３５を動作する状態に制御する。テストパタン供給回路３４からテストパタンが機能回路３６に供給され、所定のテストパタンによるテストが終了すると、機能回路３６から出力される診断結果を示すデータを解析回路３５が解析する。機能回路３６が正常である場合、テストパタンを供給された機能回路３６は所定の値（期待値）をテスト応答として出力する。解析回路３５は、テスト応答と期待値とを比較し、テスト応答が期待値とが一致する場合、その機能回路ブロック３２を正常判定とする。テスト応答が期待値と一致しない場合には、その機能回路ブロック３２を動作異常として、異常判定とする。判定結果は実行回路３３によって制御回路３１へ出力される。制御回路３１が判定結果を試験装置１に送ることによって、機能回路ブロック３２のＢＩＳＴが終了する。尚、本実施形態に係るテストパタンは、一般的にマイコン３の機能試験において適用されるテストパタンであり、マイコン３内の機能回路３６の故障を検出することを目的とするテストパタンである。
【００２３】
ＢＩＳＴによる診断処理を実行しない機能回路ブロック３２には制御回路３１からの制御信号の供給が停止され、テストパタン供給回路３４及び解析回路３５が停止する。テストパタン供給回路３４及び解析回路３５の動作が停止されることにより、ＢＩＳＴを実行していない機能回路ブロック３２が電力を消費することが抑制されている。
【００２４】
本実施形態に係るマイコン３は、ＢＩＳＴによる診断処理の際に、レギュレータ４の出力電圧が変動することを抑制する特別な機能を備えている。以下、図を参照して、本実施形態に係るマイコン３の機能試験時における一連の動作を説明する。
【００２５】
図３は、本実施形態に係る試験システム１００の機能試験における手順を示すフローチャートである。また、図４は、機能試験におけるマイコン３の動作を示すタイムチャートである。ここで、機能回路ブロック３２−１〜４のすべてのＢＩＳＴを同時に実行してしまうと、マイコン３が一度に大量の電流を消費するため、マイコン３やマイコン３に電力を供給するレギュレータ４の発熱量が大きくなる。そのため、本実施形態に係る試験システム１００による機能試験の診断処理ステップは、マイコン３やレギュレータ４の発熱を抑制するために、機能回路ブロック３２−１〜４をすべて同時ではなく順次診断すること
によって行われる。但し、後述するように、本実施形態に係るマイコン３の試験システム１００は、各機能回路ブロック３２のＢＩＳＴによる診断処理を一部重複させることによって、レギュレータ４の出力電圧の変動を抑制している。
【００２６】
まず、ユーザが試験装置１の入力部１１から指示を入力することによって、テストプログラムが記憶部１４からメモリ部１３に転送される。次に、中央処理部１２がメモリ部１３に格納されたテストプログラムを制御回路３１に送る。制御回路３１がテストプラグラムに基づいて、最初にＢＩＳＴを実行する機能回路ブロック３２−１に制御信号を出力することで機能試験が開始される。図３に示すように、機能試験が開始すると、ステップＳ１０１、ステップＳ１１１、ステップＳ１２１、ステップＳ１３１、ステップＳ１４１が同時に開始される。詳細については後述するが、本実施形態に係る試験システム１００による機能試験では、制御回路３１が機能回路ブロック３２−１のＢＩＳＴを開始させた後に機能回路ブロック３２−２〜４に所定時間の遅延処理を行ってから、機能回路ブロック３２−２〜４のＢＩＳＴを開始させる。
【００２７】
機能試験が開始されると、電圧監視回路３７がレギュレータ４の出力電圧を監視する（ステップＳ１０１）。次に、電圧監視回路３７は、レギュレータ４の出力電圧がマイコン３のリセット電圧以下であるか否かを判定する（ステップＳ１０２）。レギュレータ４の出力電圧がマイコン３のリセット電圧以下である場合（ステップＳ１０２−ＹＥＳ）、電圧監視回路３７がリセット信号を制御回路３１に出力する。すると、制御回路３１が電圧監視回路３７からのリセット信号に基づいてリセット処理を実行し、機能試験をリセットする（ステップＳ１０３）。レギュレータ４の出力電圧がリセット電圧以下でない場合（ステップＳ１０２−ＮＯ）、処理がステップＳ１０１に戻る。即ち、機能試験において、レギュレータ４の出力電圧がリセット電圧を超えている限り、電圧監視回路３７による電圧監視が連続して実行される。
【００２８】
電圧監視回路３７による電圧監視と並行して、各機能回路ブロック３２のＢＩＳＴが実行される。まず、制御回路３１がテストプログラムに基づいて機能回路ブロック３２−１の実行回路３３へ制御信号を出力することによって、機能回路ブロック３２−１のＢＩＳＴが開始される（ステップＳ１１１）。即ち、機能回路ブロック３２−１の実行回路３３がテストパタン供給回路３４及び解析回路３５を制御することによって、所定のテストパタンによるＢＩＳＴが開始される。そして、解析回路３５が機能回路ブロック３２−１のテスト応答を解析し、機能回路ブロック３２−１が正常であるか否かを判定する。
【００２９】
機能試験が開始すると、機能回路ブロック３２−２には、まず、制御回路３１によって所定時間の遅延処理がなされる（ステップＳ１２１）。遅延処理では、制御回路３１によって時間がカウントされている。制御回路３１は、所定時間が経過するまで機能回路ブロック３２−２〜４の実行回路３３への制御信号の供給を停止する。そのため、遅延処理では、機能回路ブロック３２−２のテストパタン供給回路３４及び解析回路３５が停止されている。所定時間は、機能試験が開始してから機能回路ブロック３２−１のＢＩＳＴが終了するまでの時間よりも短く設定されている。所定時間が経過して遅延処理が終了すると、制御回路３１によって機能回路ブロック３２−２のＢＩＳＴが開始される（ステップＳ１２２）。機能回路ブロック３２−２のＢＩＳＴにおいて、機能回路ブロック３２−２が正常である否かが判定される。
【００３０】
機能回路ブロック３２−３においても、まず、遅延処理が所定時間の間だけ実行される（ステップＳ１３１）。機能回路ブロック３２−３における遅延処理の所定時間は、機能試験が開始してから機能回路ブロック３２−２のＢＩＳＴが終了するまでの時間よりも短く設定されている。遅延処理が終了すると、機能回路ブロック３２−３のＢＩＳＴが開始され（ステップＳ１３１）、機能回路ブロック３２−３が正常であるか否かを判定される
。機能回路ブロック３２−４においては、まず、機能試験が開始してから機能回路ブロック３２−３のＢＩＳＴが終了するまでの時間よりも短く設定された所定時間の遅延処理がなされる（ステップ１４１）。その後、機能回路ブロック３２−４のＢＩＳＴが実行される（ステップＳ１４２）。
【００３１】
すべての機能回路ブロック３２のＢＩＳＴが終了すると、制御回路３１によって各機能回路ブロック３２が正常であるか否かの判定結果が試験装置１に出力される。判定結果において、マイコン３に含まれるすべての機能回路ブロック３２が正常判定であれば（ステップＳ１５１−ＹＥＳ）、試験装置１がマイコン３をＰＡＳＳ判定とする（ステップＳ１５２）。一方、正常判定とされない機能回路ブロック３２がある場合、即ち、何れかの機能回路ブロック３２が動作不良を起こしている場合（ステップＳ１５１−ＮＯ）、診断対象であるマイコン３を動作不良であると判断し、ＦＡＩＬ判定とする（ステップＳ１５３）。以上で本実施形態に係るマイコン３の機能試験が終了する。マイコン３の機能試験の結果は、試験装置１の中央処理部１２によって表示部１５に出力される。
【００３２】
次に、図４を参照して、本実施形態に係るマイコン３の機能試験におけるマイコン３の消費電流の推移について説明する。まず、機能回路ブロック３２−１のＢＩＳＴが開始されることによって、マイコン３が電流を消費する。このとき、レギュレータ４は一定の電圧を保ちながらマイコン３に電流を供給し続ける。そして、機能回路ブロック３２−１のテストが終了する前に、機能回路ブロック３２−２のＢＩＳＴが開始されるため、機能回路ブロック３２−１のＢＩＳＴが実行される時間帯と機能回路ブロック３２−２のＢＩＳＴが実行される時間帯は、一部において重複する。機能回路ブロック３２−１のＢＩＳＴが実行される時間帯と機能回路ブロック３２−２のＢＩＳＴが実行される時間帯とが重複している時間帯は、機能回路ブロック３２−１と機能回路ブロック３２−２とがレギュレータ４からの電流を消費している。その結果、重複している時間帯において、マイコン３の消費電流は機能回路ブロック３２−１のみのＢＩＳＴを実行しているときよりも増加する。そして、機能回路ブロック３２−１のＢＩＳＴは、機能回路ブロック３２−２のＢＩＳＴが実行している時間帯に終了する。そのため、機能回路ブロック３２−１と機能回路ブロック３２−２のＢＩＳＴが切り替わる際において、マイコン３には常にレギュレータ４から電流を供給されている状態となる。それにより、機能回路ブロック３２−１のＢＩＳＴ終了後にマイコン３の消費電流が０ｍＡ付近にまで低下することが抑制されている。即ち、機能回路ブロック３２−２のＢＩＳＴ開始時にマイコン３の消費電流が０ｍＡから急峻に大きく変動することがない。そのため、レギュレータ４の出力電圧の変動が抑制され、レギュレータ４の出力電圧がリセット電圧以下となることが抑制される。その結果、機能回路ブロック３２−１と機能回路ブロック３２−２のＢＩＳＴが切り替わる際に、機能試験がリセットされることがない。
【００３３】
同様に、機能回路ブロック３２−２のＢＩＳＴが終了する前に機能回路ブロック３２−３のテストが開始され、機能回路ブロック３２−３のテストが終了する前に機能回路ブロック３２−４のＢＩＳＴが開始される。その結果、機能回路ブロック３２−２と機能回路ブロック３２−３のＢＩＳＴが実行される時間帯が一部重複し、機能回路ブロック３２−３と機能回路ブロック３２−４のＢＩＳＴが実行される時間帯が一部重複する。そうすることにより、機能回路ブロック３２−２と機能回路ブロック３２−３のＢＩＳＴが切り替わる際及び機能回路ブロック３２−３と機能回路ブロック３２−４のＢＩＳＴの切り替わる際においても、マイコン３の消費電流が０ｍＡ付近にまで低下することが抑制され、レギュレータ４の出力電圧の変動が抑制されている。以上より、機能試験を実行中において、電圧監視回路３７によってレギュレータ４の出力電圧がリセット電圧以下とならないため、リセット処理が実行されない。その結果、機能試験がリセットされることなく、すべての機能回路ブロック３２のＢＩＳＴが実行される。
【００３４】
以上のように、本実施形態に係るマイコン３の機能試験は、制御回路３１が、現在の機能回路ブロック３２にＢＩＳＴを開始させた後、その機能回路ブロック３２のＢＩＳＴが終了する前に、次にＢＩＳＴを実行する機能回路ブロック３２のＢＩＳＴを開始させる。そうすることによって、現在ＢＩＳＴを実行している機能回路ブロック３２と次にＢＩＳＴを実行する機能回路ブロック３２において、ＢＩＳＴが実行される時間帯の一部が重複している。即ち、本実施形態に係るマイコン３は、自己診断処理の際に、常に少なくとも１つ以上の機能回路ブロック３２にＢＩＳＴによる診断処理を実行させることによって、マイコン３の消費電流が０ｍＡとなることを抑制している。そうすることにより、各機能回路ブロック３２のＢＩＳＴが切り替わる際にレギュレータ４の電圧が変動することが抑制されている。その結果、機能回路ブロック３２のＢＩＳＴが切り替わる際にレギュレータ４の出力電圧がリセット電圧以下にならず、機能試験がリセットされない。
【００３５】
ここで、比較例に係るマイコン３Ａの機能試験について説明する。図５は、比較例に係る試験システム１００Ａにおける機能試験の動作を示すフローチャートである。また、図６は、機能試験におけるマイコン３Ａの動作を示すタイムチャートである。比較例に係る試験システム１００Ａによる機能試験は、各機能回路ブロック３２のＢＩＳＴが実行される時間帯を重複させずに順次実行する点において、第１実施形態に係るマイコン３の機能試験と大きく相違する。以下、比較例に係るマイコン３Ａについて、第１実施形態との相違点を中心に説明し、同一の構成については同一の符号を付すことにより詳細な説明は割愛する。
【００３６】
図５に示すように、比較例に係るマイコン３Ａの機能試験は、第１実施形態に係るマイコン３の機能試験と異なり、機能回路ブロック３２−１〜４のＢＩＳＴを、時間帯を重複させずに順次実行することによって行われる。比較例に係る機能試験においても電圧監視回路３７による電圧監視（ステップＳ２０１）が各機能回路ブロック３２のＢＩＳＴと並行して実行されており、レギュレータ４の出力電圧がリセット電圧以下である場合（ステップＳ２０２−ＹＥＳ）、マイコン３Ａのリセット処理（ステップＳ２０３）がなされる。レギュレータ４の出力電圧がリセット電圧以下でない場合（ステップＳ２０２−ＮＯ）、ステップＳ２０１に戻る。レギュレータ４の出力電圧がリセット電圧を超えている限り、電圧監視回路３７による電圧監視が連続して実行される。
【００３７】
比較例では、制御回路３１から機能回路ブロック３２の実行回路３３に制御信号が供給されることによって、機能回路ブロック３２−１のＢＩＳＴが実行される（ステップＳ２１１）。ここで、機能回路ブロック３２−１のＢＩＳＴを実行している時間帯は、機能回路ブロック３２−２〜４の実行回路３３へは制御信号の供給が停止されており、テストパタン供給回路３４及び解析回路３５が停止している。そのため、機能回路ブロック３２−１のＢＩＳＴ実行時は、機能回路ブロック３２−２〜４のＢＩＳＴは実行されない。即ち、機能回路ブロック３２−２〜４による消費電流は生じない。そして、機能回路ブロック３２−１が正常判定（ステップＳ２１２−ＹＥＳ）であれば、制御回路３１が機能回路ブロック３２−２の実行回路３３に制御信号を供給し、機能回路ブロック３２−２のＢＩＳＴが開始される（ステップＳ２１３）。即ち、機能回路ブロック３２−１による電流の消費が終了した後で、機能回路ブロック３２−２のＢＩＳＴが開始される。同様に、機能回路ブロック３２−２のＢＩＳＴが終了して正常判定（ステップＳ２１４−ＹＥＳ）となった後に機能回路ブロック３２−３のＢＩＳＴが開始され（ステップＳ２１５）、機能回路ブロック３２−３のＢＩＳＴが終了して正常判定（ステップＳ２１６−ＹＥＳ）となった後に、機能回路ブロック３２−４のＢＩＳＴが開始される（ステップＳ２１７）。そして、レギュレータ４の出力電圧がリセット電圧以下とならないまま（ステップＳ２０２−ＮＯ）、機能回路ブロック３２−４が正常判定（ステップＳ２１８−ＹＥＳ）となると、すべての機能回路ブロック３２が正常判定であるので、試験装置１がマイコン３ＡをＰＡＳＳ判定とする（ステップＳ２１９）。反対に、何れかの機能回路ブロック３２が異常判定
（ステップＳ２１２−ＮＯ、ステップＳ２１４−ＮＯ、ステップＳ２１６−ＮＯ、ステップＳ２１８−ＮＯ）となると、試験装置１がマイコン３ＡをＦＡＩＬ判定とする（ステップＳ２２０）。
【００３８】
このような制御を行う比較例に係るマイコン３Ａの機能試験では、図６に示すように、ある機能回路ブロック３２のＢＩＳＴの終了時と次にＢＩＳＴが実行される機能回路ブロック３２のＢＩＳＴの開始時は完全に同時とはならずに、各機能回路ブロック３２のＢＩＳＴが実行される時間帯の間に微小時間である隙間時間Ｔが存在してしまう。そのため、比較例に係るマイコン３Ａの機能試験では、各機能回路ブロック３２のＢＩＳＴが切り替わる際に生じる隙間時間Ｔにおいて、マイコン３Ａの消費電流が一旦０ｍＡとなってしまう。その結果、図６に示すように、比較例に係るマイコン３Ａの機能試験では、マイコン３Ａの消費電流が微小時間だけ０ｍＡになった後に再度消費電流が急峻に増加し、レギュレータ４の出力電圧が変動する可能性があった。比較例に係るマイコン３Ａの機能試験では、上述の理由で出力電圧が変動してリセット電圧以下になると、電圧監視回路３７がリセット信号を制御回路３１に出力し、制御回路３１が機能試験をリセット処理する虞があった。この不具合を解消するために、レギュレータ４の出力に出力電圧の変動を抑制するコンデンサを設ける方法があるが、この方法ではコストアップやサイズアップとなる虞がある。
【００３９】
［第１実施形態の作用・効果］
第１実施形態に係るマイコン３の機能試験は、機能回路ブロック３２毎にＢＩＳＴを実行しているため、マイコン３内のすべての機能回路３６のＢＩＳＴを同時に実行する場合よりも機能試験時の発熱量を抑えている。そして、第１実施形態に係るマイコン３は、制御回路３１が、現在の機能回路ブロック３２にＢＩＳＴを開始させた後に、その機能回路ブロック３２のＢＩＳＴが終了する前に、次にＢＩＳＴを実行する機能回路ブロック３２のＢＩＳＴを開始させる。即ち、第１実施形態に係るマイコン３は、機能試験において常に少なくとも１つ以上の機能回路ブロック３２に診断処理を実行させている。そうすることにより、隙間時間Ｔが生じることがなく、レギュレータ４の消費電流が瞬間的に０ｍＡとなることを抑制することができる。そのため、各機能回路ブロック３２のＢＩＳＴが切り替わる際にレギュレータ４の電圧が変動することが抑制される。その結果、第１実施形態に係るマイコン３によれば、レギュレータ４の出力電圧がリセット電圧以下となることによって機能試験がリセットされることを防止することができる。また、本実施形態に係るマイコン３によれば、レギュレータ４に出力電圧の変動を抑制するためのコンデンサを設けることなく、レギュレータ４の電圧変動を抑制することができるため、比較例よりもコストやサイズを低減することができる。
【００４０】
尚、以上の説明では、各機能回路ブロック３２−１〜４のＢＩＳＴのうち、２つの機能回路ブロック３２のＢＩＳＴを重複させていたが、常に少なくとも１つ以上の機能回路ブロック３２に診断処理を実行させていればよく、重複させる機能回路ブロック３２の数はこれに限定されない。即ち、機能回路ブロック３２−１〜４のうち、３つ以上が重複してＢＩＳＴを実行していてもよい。但し、同時に実行される診断処理が増えると、マイコン３の発熱量も増加するため、ＢＩＳＴによる診断処理の重複はより少ない方が好ましい。本実施形態に係るマイコン３の機能試験は、機能回路ブロック３２−１〜４のＢＩＳＴのうち、２つのみを重複させることによって、マイコン３の発熱量を少なく抑えることができる。また、各機能回路ブロック３２のＢＩＳＴが重複する時間は、より短い方が好ましい。そうすることによって、マイコン３の発熱量をより少なく抑えることができる。
【００４１】
＜第２実施形態＞
次に、第２実施形態に係るマイコン３Ｂの機能試験について説明する。第２実施形態に係るマイコン３Ｂの試験システム１００Ｂの診断処理ステップは、各ブロックのＢＩＳＴ
を重複させないで連続的に実行する点と、所定のタイミングで電流を消費する負荷回路３８を備える点において、第１実施形態に係るマイコン３の試験システム１００と相違する。以下、第２実施形態に係るマイコン３Ｂの試験システム１００Ｂについて、第１実施形態との相違点を中心に説明し、同一の構成については同一の符号を付すことにより詳細な説明は割愛する。
【００４２】
図７は、第２実施形態に係るマイコン３Ｂの構成を示す図である。また、図８は、第２実施形態に係る試験システム１００Ｂの機能試験における手順を示すフローチャート、図９、１０は、機能試験におけるマイコン３Ｂの動作を示すタイムチャートである。図７に示すように、第２実施形態に係るマイコン３Ｂには、試験対象である機能回路ブロック３２とは別に設けられた負荷回路３８を有している。負荷回路３８は、制御回路３１からの信号を受けてレギュレータ４の電流を消費する回路である。負荷回路３８は、例えば、抵抗回路を含む。第２実施形態に係るマイコン３Ｂの試験システム１００Ｂは、所定のタイミングで負荷回路３８を動作させてレギュレータ４の電流を消費することによって、マイコン３Ｂの試験時にレギュレータ４の消費電流が瞬間的に０ｍＡとなることを抑制している。
【００４３】
以下、第２実施形態に係るマイコン３Ｂの機能試験における一連の動作を説明する。第１実施形態と同様に、制御回路３１がテストプラグラムに基づいて最初にＢＩＳＴを実行する機能回路ブロック３２−１の実行回路３３に制御信号を出力することで機能試験が開始される。機能試験が開始することにより、ステップＳ３０１、ステップＳ３１１、ステップＳ３２１が同時に開始される。機能試験が開始すると、第１実施形態と同様に、電圧監視回路３７がレギュレータ４の出力電圧を監視する（ステップＳ３０１）。レギュレータ４の出力電圧がリセット電圧以下である場合（ステップＳ３０２−ＹＥＳ）、マイコン３Ａのリセット処理（ステップＳ３０３）がなされる。リセット電圧以下でない場合（ステップＳ３０２−ＮＯ）、ステップＳ３０１に戻る。レギュレータ４の出力電圧がリセット電圧を超えている限り、電圧監視回路３７による電圧監視が連続して実行される。
【００４４】
電圧監視回路３７による電圧監視と並行して、機能回路ブロック３２−１のＢＩＳＴが実行される（ステップＳ３１１）。ここで、機能回路ブロック３２−１のＢＩＳＴを実行している最中は、機能回路ブロック３２−２〜４の実行回路３３へは制御信号の供給が停止されており、機能回路ブロック３２−２〜４のＢＩＳＴは実行されない。そして、機能回路ブロック３２−１のＢＩＳＴが終了し、機能回路ブロック３２−１が正常判定（ステップＳ３１２−ＹＥＳ）であれば、隙間時間Ｔが経過した後に、機能回路ブロック３２−２のＢＩＳＴが開始される（ステップＳ３１３）。同様に、機能回路ブロック３２−２が正常判定（ステップＳ３１４−ＹＥＳ）であれば、隙間時間Ｔが経過した後に、機能回路ブロック３２−３のＢＩＳＴが開始され（ステップＳ３１５）、機能回路ブロック３２−３が正常判定（ステップＳ３１６−ＹＥＳ）であれば、隙間時間Ｔが経過後に機能回路ブロック３２−４のＢＩＳＴが開始される（ステップＳ３１７）。
【００４５】
そして、レギュレータ４の出力電圧がリセット電圧以下とならないまま（ステップＳ３０２−ＮＯ）、機能回路ブロック３２−４が正常判定（ステップＳ３１８−ＹＥＳ）となると、すべての機能回路ブロック３２が正常判定であるので、試験装置１がマイコン３ＢをＰＡＳＳ判定とする（ステップＳ３１９）。反対に、何れかの機能回路ブロック３２が異常判定（ステップＳ３１２−ＮＯ、ステップＳ３１４−ＮＯ、ステップＳ３１６−ＮＯ、ステップＳ３１８−ＮＯ）となると、試験装置１がマイコン３ＢをＦＡＩＬ判定とする（ステップＳ３２０）。
【００４６】
第２実施形態に係るマイコン３Ｂは、電圧監視回路３７による電圧監視や各機能回路ブロック３２のＢＩＳＴと並行して、負荷回路３８の処理を実行する。負荷回路３８は各機
能回路ブロック３２のＢＩＳＴが実行される時間帯同士の間の時間帯である隙間時間Ｔに動作する。以下、負荷回路３８の動作について説明する。機能試験が開始すると、制御回路３１が負荷回路３８の動作を所定時間の間だけ停止させる（ステップＳ３２１）。所定時間の間、制御回路３１が時間をカウントしている。制御回路３１は、所定時間が経過するまで負荷回路３８への制御信号の供給を停止する。負荷回路３８が動作を停止している間は、レギュレータ４から負荷回路３８に電流が供給されない。即ち、負荷回路３８はレギュレータ４の電流を消費しない。動作が停止される所定時間は、機能回路ブロック３２−１のＢＩＳＴが実行される時間に設定されている。即ち、負荷回路３８の動作停止は、機能回路ブロック３２−１のＢＩＳＴが終了するタイミングで終了する。所定時間が経過すると同時に、制御回路３１が負荷回路３８に制御信号を出力し、負荷回路３８の動作が開始される（ステップＳ３２２）。このとき、負荷回路３８は、所定時間の間だけ動作する。負荷回路３８が動作する所定時間は、隙間時間Ｔに等しい。即ち、負荷回路３８の動作は、機能回路ブロック３２−２のＢＩＳＴが開始するタイミングで終了する。ステップＳ３２２では、負荷回路３８が動作することによって、負荷回路がレギュレータ４の電流を消費する。ステップＳ３２２が終了すると、制御回路３１が所定時間の間だけ負荷回路３８の動作を停止させる（ステップＳ３２３）。ステップＳ３２３の所定時間は、機能回路ブロック３２−２のＢＩＳＴが実行される時間と等しい。即ち、制御回路３１は、機能回路ブロック３２−２のＢＩＳＴが終了するタイミングで、負荷回路３８の動作を開始させる（ステップＳ３２４）。同様にして、制御回路３１は、負荷回路３８を隙間時間Ｔの間だけ動作させた後に、機能回路ブロック３２−３のＢＩＳＴが開始するタイミングで所定時間の間だけ負荷回路３８の動作を停止させる（ステップＳ３２５）。その後、制御回路３１は機能回路ブロック３２−２のＢＩＳＴが終了するタイミングで負荷回路３８の動作を開始させる（ステップＳ３２６）。そして、制御回路３１は、負荷回路３８を隙間時間Ｔの間だけ動作させた後に、機能回路ブロック３２−４のＢＩＳＴが開始するタイミングで負荷回路３８の動作を停止させる（ステップＳ３２７）。
【００４７】
図９に示すように、負荷回路３８が停止している時間帯は、マイコン３Ｂが電流を消費せずに、負荷回路３８が動作している時間帯は、マイコン３Ｂが電流を消費する。第２実施形態に係るマイコン３Ｂは、各機能回路ブロック３２のＢＩＳＴ間の隙間時間Ｔに負荷回路３８を動作させる。隙間時間Ｔの間にマイコン３Ｂの負荷回路３８がレギュレータ４の電流を消費するため、各機能回路ブロック３２のＢＩＳＴが切り替わる際にレギュレータ４の消費電流が０ｍＡとなることが抑制されている。その結果、レギュレータ４は、機能試験において、常に電流を消費する。
【００４８】
［第２実施形態の作用・効果］
以上のように、第２実施形態に係るマイコン３Ｂの機能試験は、機能回路ブロック３２毎にＢＩＳＴを実行しているため、マイコン３内のすべての機能回路３６のＢＩＳＴを同時に実行する場合よりも機能試験時の発熱量が低減されている。そして、第２実施形態に係るマイコン３Ｂでは、制御回路３１が、現在ＢＩＳＴを実行している機能回路ブロック３２のＢＩＳＴ終了時と次にＢＩＳＴを実行する機能回路ブロック３２のＢＩＳＴ開始時を含む時間帯の間に負荷回路３８を動作させる。そうすることによって、ＢＩＳＴが切り替わる際の隙間時間Ｔにレギュレータ４の消費電流が瞬間的に０ｍＡとなることを抑制することができる。そのため、機能回路ブロック３２のＢＩＳＴが切り替わる際の隙間時間Ｔにおいてレギュレータ４の電圧が変動することが抑制される。その結果、第２実施形態に係るマイコン３Ｂによれば、機能試験がリセットされることを防止することができる。また、機能試験において負荷回路３８が断続的に動作しているため、負荷回路３８が機能試験の間に連続して動作する場合と比較して、マイコン３Ｂの発熱量を低減することができる。また、第２実施形態に係るマイコン３Ｂによれば、レギュレータ４に出力電圧の変動を抑制するためのコンデンサを設けることなく、レギュレータ４の電圧変動を抑制し、機能試験がリセットされることを防止することができる。
【００４９】
尚、本実施形態に係る負荷回路３８は、現在ＢＩＳＴを実行している機能回路ブロック３２のＢＩＳＴ終了時と同時に動作を開始し、次にＢＩＳＴを実行する機能回路ブロック３２のＢＩＳＴ開始時と同時に動作を終了しているが、負荷回路３８は、現在ＢＩＳＴを実行している機能回路ブロック３２のＢＩＳＴが終了した直後に動作を開始してもよいし、次にＢＩＳＴを実行する機能回路ブロック３２のＢＩＳＴが開始する直前に動作を終了してもよい。即ち、負荷回路３８は、少なくとも、現在ＢＩＳＴを実行している機能回路ブロック３２のＢＩＳＴが終了してから次にＢＩＳＴを実行する機能回路ブロック３２のＢＩＳＴが開始するまでの間に動作すればよい。このとき、負荷回路３８が動作する時間帯は、機能回路ブロック３２のＢＩＳＴが切り替わる際の隙間時間Ｔにおいてレギュレータ４の電圧変動を抑制することができる時間帯であればよい。
【００５０】
但し、本実施形態に係るマイコン３Ｂは、現在ＢＩＳＴを実行している機能回路ブロック３２のＢＩＳＴ終了時と次にＢＩＳＴを実行する機能回路ブロック３２のＢＩＳＴ開始時を含む時間帯に動作することによって、より確実に、且つ、効果的に電圧の変動を抑制することができる。この場合、負荷回路３８は、少なくとも隙間時間Ｔを含む時間帯に動作していればよい。即ち、図１０に示すように、負荷回路３８の動作時間は、現在ＢＩＳＴを実行している機能回路ブロック３２のＢＩＳＴの時間帯と、次にＢＩＳＴを実行する機能回路ブロック３２のＢＩＳＴの時間帯とに、一部において重複していてもよい。そうすることによって、負荷回路３８の動作を開始するタイミングや終了させるタイミングに多少の誤差が生じたとしても、レギュレータ４の消費電流が瞬間的に０ｍＡとなる時間帯を無くすことができる。但し、負荷回路３８の動作する時間帯と各機能回路ブロック３２のＢＩＳＴの時間帯が重複する時間は、短い方が好ましい。そうすることによって、マイコン３Ｂの発熱量を低減することができる。第２実施形態に係るマイコン３Ｂは、負荷回路３８が隙間時間Ｔの時間帯に合わせて動作し、隙間時間Ｔ以外の時間帯では動作を停止することによって、マイコン３Ｂの発熱量をより低減することができる。
【００５１】
また、本実施形態に係るマイコン３Ｂは、制御回路３１によって負荷回路３８の動作の切り替えを行ったが、負荷回路３８の動作の切り替えは、スイッチを用いて手動で行ってもよい。
【００５２】
また、本実施形態に係る負荷回路３８はマイコン３Ｂに備えられているが、負荷回路３８はレギュレータ４に備えられていてもよい。
【００５３】
尚、以上説明した実施形態に係るＢＩＳＴを実行する順番は、上記に限定しない。即ち、ＢＩＳＴにおける機能回路ブロック３２−１〜４の順番は順不同であり、例えば、機能回路ブロック３２−４からＢＩＳＴを実行してもよい。
【００５４】
また、各機能回路ブロック３２の診断処理の方法は、ＢＩＳＴに限定されず、種々の方法を選択することができる。本発明は、ＢＩＳＴによる診断処理を行うことによって、内部回路故障モードに対する診断をマイコン３、３Ｂ自身で実行することができる。
【００５５】
また、以上説明した実施形態に係る電圧監視回路３７は、マイコン３、３Ｂに内蔵されているが、電圧監視回路３７は、マイコン３、３Ｂの外部に接続されていてもよい。
【００５６】
また、以上説明した実施形態に係る試験システム１００、１００Ｂは、例えば、ＥＣＵ(engine control unit)等の電子制御装置に含まれていてもよい。マイコン３、３Ｂは、
例えば、車両各部に備えられた各センサからの入力信号によりエンジンの燃料噴射及び点火時期を最適に制御する機能を有してもよい。その場合、試験システム１００、１００Ｂは、ユーザがエンジンを起動しようとしてイグニションスイッチをオンにしたときに機能
試験を開始してもよい。また、試験システム１００、１００Ｂは、マイコン３、３ＢがＰＡＳＳ判定となった場合はマイコン３を通常の動作モードへ移行し、ＦＡＩＬ判定となった場合にはマイコン３、３Ｂを通常の動作モードへ移行せずに表示部１５を介してユーザに異常を通知してもよい。
【００５７】
尚、本発明に係るマイコン３、３Ｂの試験システム１００、１００Ｂにおいて、試験装置１、Ｉ／Ｆ部２は必須の構成ではない。試験システム１００、１００Ｂは、各機能回路ブロック３２の診断処理を実行する制御回路３１と、マイコン３に電流を供給するレギュレータ４とを備えていればよい。また制御回路３１は、例えば、ＣＰＵであってもよい。
【００５８】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。上記実施の形態は、矛盾のない限り組み合わせることができる。
【符号の説明】
【００５９】
１・・試験装置
１１・・・入力部
１２・・・中央処理部
１３・・・メモリ部
１４・・・記憶部
１５・・・表示部
２・・・Ｉ／Ｆ部
３、３Ｂ・・・マイコン
３１・・・制御回路（制御部）
３２・・・機能回路ブロック
３３・・・実行回路
３４・・・パタン生成回路
３５・・・解析回路
３６・・・機能回路
３７・・・電圧監視回路
３８・・・負荷回路
４・・・レギュレータ
１００、１００Ｂ・・・試験システム
Ｔ・・・隙間時間
【図１】
2018071992.tif 000003
【図２】
2018071992.tif 000004
【図３】
2018071992.tif 000005
【図４】
2018071992.tif 000006
【図５】
2018071992.tif 000007
【図６】
2018071992.tif 000008
【図７】
2018071992.tif 000009
【図８】
2018071992.tif 000010
【図９】
2018071992.tif 000011
【図１０】
2018071992.tif 000012