本発明に先立って、本発明者等は、自動車や産業機器等に搭載される高信頼性が要求されるマイクロコントローラの開発に従事した。これらの分野で使用されるマイクロコントローラには、マイクロコントローラの作動中にマイクロコントローラが正常に動作しているのかをテストする自己診断機能が必要とされる。
上記非特許文献1に記載されているように、デュアルもしくは多重のマイクロプロセッサシステムを使用することにより、誤り検出や自己テストを行うことも1つの考え方である。
しかし、本発明者等は、自動車や産業機器等の分野で使用されるマイクロコントローラやマイクロプロセッサを搭載したシステムの故障の相当多くの部分は、各種センサーの故障や各種センサーからのアナログ信号のLSIへの入力のための多入力マルチプレクサーや、入力されたアナログ信号からディジタル信号へのA/D変換のためのA/D変換器に起因することを明らかとした。
マイクロコントローラやマイクロプロセッサを搭載した自動車や産業機器等の応用システムのマザーボードには、種々のメカトロニクスのための各種センサーが搭載されている。各種センサーは、マイクロコントローラやマイクロプロセッサよりも過酷な動作条件で種々のアナログ情報を収集している。従って、各種センサーからの各種アナログ信号のマイクロコントローラやマイクロプロセッサ等のLSIへの入力に際して、応用システムのマザーボードの上で、各種センサーの断線や電源ショートやグランドショートの不具合が生じる可能性がある。また、近年、1つのマイクロコントローラやマイクロプロセッサのLSIへ入力される各種センサーのアナログ入力チャンネル数も、数十チャンネルと増加している。
また、マイクロコントローラやマイクロプロセッサ等のLSIの内部では、他の内部回路ブロックと比較して、各種センサーからのアナログ信号のLSIへの入力のための多入力マルチプレクサーや、各種センサーからのアナログ信号をディジタル信号へ変換するA/D変換器は、動作時間や動作電圧の面でも過酷な動作条件となっていると言い得る。
従って、本発明は、上記のような本発明者等による検討結果を基にしてなされたものである。従って、本発明の目的とするところは、マイクロコントローラやマイクロプロセッサのLSIへのアナログ入力部のA/D変換器の故障もしくは多入力マルチプレクサーの故障、応用システムのマザーボードの上での各種センサーの断線、電源ショート、グランドショート等の不具合を診断するに際して、診断回路のオーバーヘッドを削減してマイクロコントローラやマイクロプロセッサ等の半導体集積回路に占める診断回路のコストを低減することにある。
本発明の前記並びにその他の目的と新規な特徴とは、本明細書の記述及び添付図面から明らかになるであろう。
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば、下記の通りである。
すなわち、本発明のひとつの形態による半導体集積回路は、アナログ信号をディジタル信号へ変換するA/D変換器(10bit A/D_Conv)と、2ビットの入力信号(C、B)に応答して高レベル(H)、低レベル(L)、中間レベル(M)、高インピーダンス(Hi−Z)の4状態の出力信号(O)を生成する診断信号生成回路(BIDT Cirt)とを含む。前記診断信号生成回路(BIDT Cirt)から生成された前記高レベル(H)、前記低レベル(L)、前記中間レベル(M)の3状態の前記出力信号(O)を前記A/D変換器(10bit A/D_Conv)のアナログ信号入力端子に供給してA/D変換を実行せしめ、前記A/D変換器(10bit A/D_Conv)のディジタル出力信号から前記A/D変換器(10bit A/D_Conv)の良・不良を診断するものである(図1、図2参照)。
本発明のひとつの形態の手段によれば、2ビットの入力信号(C、B)に応答する出力信号(O)の高レベル(H)、低レベル(L)、中間レベル(M)の3値アナログ信号のA/D変換後のディジタル出力信号からA/D変換器(10bit A/D_Conv)の良・不良を十分に診断することができる。従って、診断回路のオーバーヘッドを削減でき、マイクロコントローラやマイクロプロセッサ等の半導体集積回路に占める診断回路のコストを低減することができる。
本発明のひとつの形態による半導体集積回路は、多入力・1出力のマルチプレクサー(MPX)を更に含み、前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)に供給される複数の入力信号から選択された1つの入力信号が前記マルチプレクサー(MPX)の前記1出力に出力される。前記マルチプレクサー(MPX)の前記1出力に、前記A/D変換器(10bit A/D_Conv)の前記アナログ信号入力端子に接続されている。前記A/D変換器(10bit A/D_Conv)の前記アナログ信号入力端子に、前記診断信号生成回路(BIDT Cirt)から生成される前記3状態の前記出力信号が供給される(図1、図3参照)。
本発明のひとつの形態による半導体集積回路では、前記A/D変換器(10bit A/D_Conv)の前記アナログ信号入力端子に前記診断信号生成回路(BIDT Cirt)から生成される前記3状態の前記出力信号が供給される間に、前記マルチプレクサー(MPX)の前記多入力と前記1出力との間の電気的導通が遮断される(図1、図3参照)。
本発明のひとつの形態による半導体集積回路は、前記マルチプレクサー(MPX)の多入力(AN0、AN1…AN7)に接続された複数の他の診断信号生成回路(BIDT Cirt0、BIDT Cirt1…BIDT Cirt7)を更に具備している。前記複数の他の診断信号生成回路(BIDT Cirt0、BIDT Cirt1…BIDT Cirt7)の各診断信号生成回路は、2ビットの入力信号(C0、B0、C1、B1…C7、B7)に応答して高レベル(H)、低レベル(L)、中間レベル(M)、高インピーダンス(Hi−Z)の4状態の複数の出力信号(O0、O1…O7)を生成する(図5、図6、図8、図11参照)。
本発明のひとつの形態による半導体集積回路では、前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)には応用システムの複数のセンサー(Rsense0、Rsense1…Rsense7)からのセンサー出力信号が供給可能である。前記複数の他の診断信号生成回路(BIDT Cirt0、BIDT Cirt1…BIDT Cirt7)と前記A/D変換器(10bit A/D_Conv)とにより前記複数のセンサー(Rsense0、Rsense1…Rsense7)と前記マルチプレクサー(MPX)との少なくともいずれかを診断するものである(図5、図6、図7参照)。
本発明のひとつの具体的な形態による半導体集積回路では、前記複数の他の診断信号生成回路(BIDT Cirt0、BIDT Cirt1…BIDT Cirt7)と前記A/D変換器(10bit A/D_Conv)とによる前記複数のセンサー(Rsense0、Rsense1…Rsense7)と前記マルチプレクサー(MPX)との前記いずれかの診断に先行して、予め前記診断信号生成回路(BIDT Cirt)から生成された前記3状態の前記出力信号(O)を利用した前記A/D変換器(10bit A/D_Conv)の良・不良の診断が実行される(図5、図6、図7参照)。
本発明のひとつの具体的な形態による半導体集積回路では、前記複数の他の診断信号生成回路(BIDT Cirt0、BIDT Cirt1…BIDT Cirt7)から生成された前記高レベル(H)、前記低レベル(L)、前記中間レベル(M)の3状態(3値アナログ信号)の前記複数の出力信号(O0、O1…O7)を前記マルチプレクサー(MPX)の前記多入力に逐次供給することにより、前記マルチプレクサー(MPX)の前記1出力からの逐次出力信号を前記A/D変換器(10bit A/D_Conv)のアナログ信号入力端子に逐次供給してA/D変換を実行する。前記A/D変換器(10bit A/D_Conv)によってA/D変換されたディジタル出力信号から、前記マルチプレクサー(MPX)の前記多入力・前記1出力の間の電気的導通を診断するものである(図5参照)。
本発明の他のひとつの具体的な形態による半導体集積回路では、前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)には応用システムの複数のセンサー(Rsense0、Rsense1…Rsense7)からのセンサー出力信号が供給可能である。前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)に供給される複数のアナログ入力信号の前記A/D変換器(10bit A/D_Conv)による複数のA/D変換動作(AN0_A/D_Conv、AN1A/D_Conv…AN7A/D_Conv)の間に、複数の空き時間(NO_Ope)が設定されている。前記複数の空き時間(NO_Ope)の間に、前記複数の診断回路(BIDT Cirt0、BIDT Cirt1…BIDT Cirt7)から前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)を前記高レベル(H)と前記低レベル(L)との一方の状態(高レベル(H))に短時間駆動する。前記複数の空き時間(NO_Ope)の間の前記一方の状態(高レベル(H))への短時間駆動によって前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)の少なくとも1つの端子が前記一方の状態(高レベル(H))へ到達することに応答する前記A/D変換器(10bit A/D_Conv)のディジタル出力信号から、前記少なくとも1つの端子に接続されるべきセンサーの断線が診断される(図6、図7参照))。
本発明の他のひとつの具体的な形態による半導体集積回路では、更に前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)に供給される前記複数のアナログ入力信号の前記A/D変換器(10bit A/D_Conv)による他の複数のA/D変換動作(AN0_A/D_Conv、AN1A/D_Conv…AN7A/D_Conv)の間に、他の複数の空き時間(NO_Ope)が設定されている。前記他の複数の空き時間(NO_Ope)の間に、前記複数の診断回路(BIDT Cirt0、BIDT Cirt1…BIDT Cirt7)から前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)を前記高レベル(H)と前記低レベル(L)との他方の状態(低レベル(L))に短時間駆動する。前記他の複数の空き時間(NO_Ope)の間の前記他方の状態(低レベル(L))への短時間駆動によって前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)の少なくとも1つの端子が前記他方の状態(低レベル(L))へ到達することに応答する前記A/D変換器(10bit A/D_Conv)のディジタル出力信号から、前記少なくとも1つの端子に接続されるべきセンサーの断線が診断される。前記複数の空き時間(NO_Ope)の間の前記一方の状態(高レベル(H))への短時間駆動によって前記一方の状態(高レベル(H))へ到達した前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)の少なくとも1つの端子と前記他の複数の空き時間(NO_Ope)の間の前記他方の状態(低レベル(L))への短時間駆動によって前記他方の状態(低レベル(L))へ到達した前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)の少なくとも1つの端子とが同一の端子である場合に、前記同一の端子に接続されるべきセンサーが断線と判定されるものである(図6、図7参照)。
本発明の更に別のひとつの具体的な形態による半導体集積回路は、前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)と前記マルチプレクサー(MPX)の前記1出力との間に複数のCMOSアナログスイッチ(CMOSSW0、CMOSSW1…CMOSSW7)が接続され、前記複数のCMOSアナログスイッチ(CMOSSW0、CMOSSW1…CMOSSW7)の複数の出力と前記マルチプレクサー(MPX)の前記1出力との間に複数の高入力インピーダンス・低出力インピーダンスのインピーダンス変換器(OP_Amp0、OP_Amp1…OP_Amp7)が接続されている(図8、図11参照)。
本発明の更に別のひとつの具体的な形態による半導体集積回路では、前記マルチプレクサー(MPX)の前記1出力と前記診断回路(BIDT Cirt)の出力とは共通接続ノードに接続され、前記共通接続ノードと前記A/D変換器(10bit A/D_Conv)の前記アナログ入力端子との間には少なくとも1つの高入力インピーダンス・低出力インピーダンスのインピーダンス変換器(OP_Amp)が接続されている(図9参照)。
本発明の更に別のひとつの具体的な形態による半導体集積回路では、前記診断信号生成回路(BIDT Cirt)による診断動作の終了の後、前記診断信号生成回路(BIDT Cirt)は2ビットの前記入力信号(C8、B8)の組み合わせにより高インピーダンス(Hi−Z)のディスエーブル状態に制御され、また高入力インピーダンス・低出力インピーダンスの前記インピーダンス変換器(OP_Amp)は2ビットの前記入力信号(C8、B8)の組み合わせによりディスエーブル状態に制御されるものである(図9参照)。
本発明の更に別のひとつの具体的な形態による半導体集積回路では、前記マルチプレクサー(MPX)の前記多入力(AN0、AN1…AN7)には応用システムの複数のセンサー(Rsense0、Rsense1…Rsense7)からのセンサー出力信号が供給可能であり、前記複数の他の診断信号生成回路(BIDT Cirt0、BIDT Cirt1…BIDT Cirt7)から生成された前記複数の出力信号(O0、O1…O7)を前記マルチプレクサー(MPX)の前記多入力に逐次供給することにより、前記マルチプレクサー(MPX)の前記1出力からの逐次出力信号を前記A/D変換器(10bit A/D_Conv)のアナログ信号入力端子に逐次供給してA/D変換を実行する。前記A/D変換器(10bit A/D_Conv)のディジタル出力信号から、前記マルチプレクサー(MPX)の前記多入力と前記複数のセンサー(Rsense0、Rsense1…Rsense7)の間の電気的接続を診断するものである(図5、図11参照)。
本発明の更に別のひとつの具体的な形態による半導体集積回路は、内部電圧(Vint)を生成する内部回路(PSWC)を更に含み、前記A/D変換器(10bit A/D_Conv)は前記内部回路(PSWC)から生成される前記内部電圧(Vint)のレベルを診断する(図10参照)。
本発明の更に別のひとつの具体的な形態による半導体集積回路では、前記A/D変換器(10bit A/D_Conv)が前記内部電圧(Vint)の前記レベルを異常と診断すると、前記診断回路(BIDT Cirt)は前記高レベル(H)、前記低レベル(L)、前記中間レベル(M)の3状態(3値アナログ信号)の前記出力信号で前記内部電圧(Vint)を生成する前記内部回路(PSWC)のノードを駆動するものであり、前記ノードの電圧を前記A/D変換器(10bit A/D_Conv)がディジタル信号に変換する(図10参照)。
本発明の最も具体的なひとつの形態による半導体集積回路では、前記診断信号生成回路(BIDT Cirt)は2ビットの入力信号(C、B)の一方の入力信号(C)にゲートが応答してソース・ドレイン電流経路が第1動作電位点(AVref)と出力端子(O)との間に接続されたPチャンネルMOSトランジスタ(Mp1)と、2ビットの入力信号(C、B)の他方の入力信号(B)にゲートが応答してドレイン・ソース電流経路が前記出力端子(O)と第2動作電位点(AVss)との間に接続されたNチャンネルMOSトランジスタ(Mn1)とを含む(図2、図9参照)。
本発明の他の最も具体的なひとつの形態による半導体集積回路では、前記複数の他の診断信号生成回路(BIDT Cirt0…BIDT Cirt)のそれぞれは2ビットの入力信号(C0、B0、C1、B1…C7、B7)の一方の入力信号(C1、C2…C7)にゲートが応答してソース・ドレイン電流経路が第1動作電位点(AVref)と出力端子(O1、O2…O7)との間に接続されたPチャンネルMOSトランジスタ(Mp01、Mp11…MP71)と、2ビットの入力信号(C0、B0、C1、B1…C7、B7)の他方の入力信号(B1、B2…B7)にゲートが応答してドレイン・ソース電流経路が前記出力端子(O1、O2…O7)と第2動作電位点(AVss)との間に接続されたNチャンネルMOSトランジスタ(Mn01、Mn11…Mn71)とを含む(図5、図6、図8、図11参照)。
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
すなわち、本発明によれば、マイクロコントローラやマイクロプロセッサのLSIへのアナログ入力部のA/D変換器の故障もしくは多入力マルチプレクサーの故障、応用システムのマザーボードの上での各種センサーの断線、電源ショート、グランドショート等の不具合を診断するに際して、診断回路のオーバーヘッドを削減してマイクロコントローラやマイクロプロセッサ等の半導体集積回路に占める診断回路のコストを低減することができる。
≪半導体集積回路の構成≫
図1は、本発明のひとつの実施形態に従ってチップ上に逐次比較型A/D変換器を含む半導体集積回路の構成を示す図である。
同図に示すように、半導体集積回路のチップIC Chipのアナログ回路ブロックAnalog Cirの10ビットの逐次比較型A/D変換器10bit A/D_Convは、10ビットの局部D/A変換器10bit Local D/A_Convと、電圧比較器Compと、コントローラCntrlとから構成されている。また、半導体集積回路のこのチップIC Chipには、中央処理ユニットCPUを含み、中央処理ユニットCPUにはCPUバスCPU Busと制御線Cntr_Linesと周辺バスPeriph Busとを介してリードオンリーメモリROM、ランダムアクセスメモリRAM、フラッシュ不揮発性メモリNV_Flash、バススイッチコントローラBSC、周辺回路Periph Cirt1,Periph Cir2が接続されている。また、半導体集積回路のチップIC Chipのアナログ回路ブロックAnalog CirはマルチプレクサーMPXを含み、このマルチプレクサーMPXは8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7を含んでいる。マルチプレクサーMPXは8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7から任意の1つのアナログ入力端子に印加されたアナログ入力信号を選択して、10ビットの逐次比較型A/D変換器10bit A/D_Convに供給する。
従って、アナログ回路ブロックAnalog Cirの10ビットの逐次比較型A/D変換器10bit A/D_ConvによってマルチプレクサーMPXで選択されサンプルされた入力アナログ信号がディジタル信号に変換されて、変換された10ビットのディジタル信号は周辺バスPeriph Bus、バススイッチコントローラBSC、CPUバスCPU Busを介して中央処理ユニットCPUによって処理されることができる。
まず、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは、10ビットの局部D/A変換器10bit Local D/A_Convの上位8ビットのデコーダ8bit DECと下位2ビットのデコーダ2bit DECとに10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの75%に相当する10ビットディジタル信号を供給する。すると、10ビットの局部D/A変換器10bit Local D/A_Convから10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの75%に相当するアナログ基準電圧Vxが出力される。10ビットの局部D/A変換器10bit Local D/A_Convの出力からの75%相当アナログ基準電圧VxとマルチプレクサーMPXで選択されサンプルされた入力アナログ信号とが、電圧比較器Compにより比較される。75%相当アナログ基準電圧VxよりもマルチプレクサーMPXで選択されサンプルされた入力アナログ信号が低くければ、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの50%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。すると、10ビットの局部D/A変換器10bit Local D/A_Convから10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの50%に相当するアナログ基準電圧Vxが出力される。50%相当アナログ基準電圧VxよりもマルチプレクサーMPXで選択されサンプルされた入力アナログ信号が高ければ、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの62.5%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。62.5%相当アナログ基準電圧VxよりもマルチプレクサーMPXで選択されサンプルされた入力アナログ信号が低ければ、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの57.5%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。57.5%相当アナログ基準電圧VxよりもマルチプレクサーMPXで選択されサンプルされた入力アナログ信号が高ければ、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの60%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。このようにして、10ビットの逐次比較型A/D変換器10bit A/D_ConvによるA/D変換のディジタル出力信号が、収束されていく。従って、10ビットの逐次比較型A/D変換器10bit A/D_Convは、マルチプレクサーMPXで選択されサンプルされた任意の1つのアナログ入力信号の逐次A/D変換を行う。
図1の本実施形態では、10ビットの逐次比較型A/D変換器10bit A/D_Convが正常に動作しているかを検証するための診断回路BIDT Cirtが、特に配置されている。この診断回路BIDT Cirtは、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlの出力により制御される。また、診断回路BIDT Cirtによる10ビットの逐次比較型A/D変換器10bit A/D_Convの診断動作の間に、コントローラCntrlの出力はマルチプレクサーMPXの多入力AN0、AN1…AN7・1出力間の全ての電気的導通が遮断されるようにマルチプレクサーMPXを制御する。その結果、マルチプレクサーMPXの多入力AN0、AN1…AN7のいずれかの通常アナログ入力信号と診断回路BIDT Cirtからの診断アナログ信号とが逐次比較型A/D変換器10bit A/D_Convの入力で競合することが回避される。
図1の半導体集積回路の電源投入時のシステム起動時には、コントローラCntrlは診断回路BIDT Cirtに2ビットの制御信号C、Bを3回転送する。この診断回路BIDT Cirtによる10ビットの逐次比較型A/D変換器10bit A/D_Convの診断動作は、CPUバスCPU_Busに接続されたリードオンリーメモリROM、もしくはフラッシュ不揮発性メモリNV_Flashに格納された診断制御プログラムによって制御されることができる。
この診断動作でコントローラCntrlから1回目に診断回路BIDT Cirtに転送される2ビットの制御信号C、Bは“0(L)”、“0(L)”であるので、この2ビットの制御信号に応答して診断回路BIDT Cirtは高レベル(H)のアナログ電圧を出力する。この診断回路BIDT Cirtからの高レベル(H)のアナログ出力電圧は、10ビットの逐次比較型A/D変換器10bit A/D_ConvによりA/D変換されて、高レベル(H)のアナログ出力電圧に対応する10ビットのディジタル出力信号が得られる。この高レベル(H)のアナログ出力電圧に対応する10ビットのディジタル出力信号の診断結果は、周辺バスPeriph_BusとCPUバスCPU_Busとを介して、ランダムアクセスメモリRAMに格納される。次の2回目にコントローラCntrlから診断回路BIDT Cirtに転送される2ビットの制御信号C、Bは“0(L)”、“1(H)”であるので、この2ビットの制御信号に応答して診断回路BIDT Cirtは中間レベル(M)のアナログ電圧を出力する。この診断回路BIDT Cirtからの中間レベル(M)のアナログ出力電圧は、10ビットの逐次比較型A/D変換器10bit A/D_ConvによりA/D変換されて、中間レベル(M)のアナログ出力電圧に対応する10ビットのディジタル出力信号が得られる。この中間レベル(M)のアナログ出力電圧に対応する10ビットのディジタル出力信号の診断結果も、周辺バスPeriph_BusとCPUバスCPU_Busとを介して、ランダムアクセスメモリRAMに格納される。3回目にコントローラCntrlから診断回路BIDT Cirtに転送される2ビットの制御信号C、Bは“1(H)”、“1(H)”であるので、この2ビットの制御信号に応答して診断回路BIDT Cirtは低レベル(L)のアナログ電圧を出力する。この診断回路BIDT Cirtからの低レベル(L)のアナログ出力電圧は、10ビットの逐次比較型A/D変換器10bit A/D_ConvによりA/D変換されて、低レベル(L)のアナログ出力電圧に対応する10ビットのディジタル出力信号が得られる。この低レベル(L)のアナログ出力電圧に対応する10ビットのディジタル出力信号の診断結果も、周辺バスPeriph_BusとCPUバスCPU_Busとを介して、ランダムアクセスメモリRAMに格納される。中央処理ユニットCPUは、ランダムアクセスメモリRAMに格納された高レベル(H)のアナログ出力電圧に対応する10ビットのディジタル出力信号の診断結果と中間レベル(M)のアナログ出力電圧に対応する10ビットのディジタル出力信号の診断結果と低レベル(L)のアナログ出力電圧に対応する10ビットのディジタル出力信号の診断結果とから、10ビットの逐次比較型A/D変換器10bit A/D_Convが正常動作を行うものと診断する。この半導体集積回路の電源投入時のシステム起動時でのリードオンリーメモリROM、もしくはフラッシュ不揮発性メモリNV_Flashに格納された診断制御プログラムにより制御される診断回路BIDT Cirtの10ビットの逐次比較型A/D変換器10bit A/D_Convの診断動作以外にも、後に図5と図7とで説明するように電源投入の後の通常動作中の空き時間に10ビットの逐次比較型A/D変換器10bit A/D_Convの診断動作を行うことも可能である。
≪診断回路BIDT Cirtの構成≫
図2は、図1に示した半導体集積回路のチップIC Chipの内部に配置された診断回路BIDT Cirtの構成を示すものである。
同図に示すように、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlからの2ビットの制御信号C、BはPチャンネルMOSトランジスタMp1のゲートとNチャンネルMOSトランジスタMn1のゲートとにそれぞれ供給されている。PチャンネルMOSトランジスタMp1のソースにはアナログ動作電圧AVrefが供給され、NチャンネルMOSトランジスタMn1のソースにはアナログ接地電圧AVssが供給されている。また、PチャンネルMOSトランジスタMp1のドレインとNチャンネルMOSトランジスタMn1のドレインとの間には抵抗R1、R2が直列接続され、直列接続抵抗R1、R2の共通接続点は診断回路BIDT Cirtの診断出力端子Oとなっている。まず、1回目に転送される2ビットの制御信号C、Bの“0(L)”、“0(L)”に応答して、PチャンネルMOSトランジスタMp1はオン状態に、NチャンネルMOSトランジスタMn1はオフ状態になるので、診断回路BIDT Cirtの診断出力端子Oには高レベル(H)のアナログ動作電圧AVrefが生成される。この診断回路BIDT Cirtからの高レベル(H)のアナログ出力電圧は、図1に示した10ビットの逐次比較型A/D変換器10bit A/D_ConvによりA/D変換されて、高レベル(H)のアナログ出力電圧に対応する10ビットのディジタル出力信号が得られる。2回目に転送される2ビットの制御信号C、Bの“0(L)”、“1(H)” に応答して、PチャンネルMOSトランジスタMp1はオン状態に、NチャンネルMOSトランジスタMn1はオン状態になるので、診断回路BIDT Cirtの診断出力端子Oには中間レベル(M)のアナログ動作電圧(AVref+AVss)/2が生成される。この診断回路BIDT Cirtからの中間レベル(M)のアナログ出力電圧は、図1に示した10ビットの逐次比較型A/D変換器10bit A/D_ConvによりA/D変換されて、中間レベル(M)のアナログ出力電圧に対応する10ビットのディジタル出力信号が得られる。さらに、診断回路BIDT Cirtをディスエーブル状態に制御する2ビットの制御信号C、Bの“1(H)” 、“0(L)”に応答して、PチャンネルMOSトランジスタMp1はオフ状態に、NチャンネルMOSトランジスタMn1はオフ状態になるので、診断回路BIDT Cirtの診断出力端子Oには高インピーダンス(Hi−Z)の状態が生成される。3回目に転送される2ビットの制御信号C、Bの“1(H)”、“1(H)”に応答して、PチャンネルMOSトランジスタMp1はオフ状態に、NチャンネルMOSトランジスタMn1はオン状態になるので、診断回路BIDT Cirtの診断出力端子Oには低レベル(L)のアナログ接地電圧AVssが生成される。この診断回路BIDT Cirtからの低レベル(L)のアナログ出力電圧は、図1に示した10ビットの逐次比較型A/D変換器10bit A/D_ConvによりA/D変換されて、低レベル(L)のアナログ出力電圧に対応する10ビットのディジタル出力信号が得られる。
≪その他の実施形態による半導体集積回路の構成≫
図3は、本発明のその他の実施形態に従った半導体集積回路の構成を示す図である。同図に示すように、半導体集積回路のチップIC Chipは、アナログ回路部Analog_Cirとディジタル回路部Digital_Cirとを含んでいる。アナログ回路部Analog_Cirは、8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7と1チャンネルのアナログ出力のマルチプレクサーMPXと、10ビットの逐次比較型A/D変換器10bit A/D_Convと、10ビットの局部D/A変換器 10bit Local D/A_Convと、本発明の特徴部分である診断信号生成回路BIDT Cirtとを含んでいる。ディジタル回路部Digital_Cirは、10ビットの逐次比較型A/D変換器10bit A/D_Convにより制御され、局部D/A変換器用レジスタLocal D/A Regを介して10ビットの局部D/A変換器10bit Local D/A_Convを制御するコントロール回路Control_Cirを含む。このコントロール回路Control_Cirには、データレジスタData Reg A、Data Reg B、Data Reg C、Data Reg D、ステータスレジスタStatue Reg、コントロールレジスタControl Reg、診断信号生成回路制御用フリップフロップDE、PE、NEが接続されている。これらのデータレジスタData Reg A、Data Reg B、Data Reg C、Data Reg D、ステータスレジスタStatue Reg、コントロールレジスタControl Reg、診断信号生成回路制御用フリップフロップDE、PE、NEには、モジュールデータバスMod_Data_Busを介してバスインターフェースBus_Intが接続され、バスインターフェースBus_Intには更に内部データバスInt_Data_Busが接続される。尚、図3のバスインターフェースBus_Intは図1の周辺バスPeriph BusとバススイッチコントローラBSCとを介して中央処理ユニットCPUに接続されることも可能である。尚、10ビットの局部D/A変換器10bit Local D/A_Convは、直列接続された257個の抵抗R0、R1…R127、R128、R129、R130、R131…R255、R256と、上位8ビットのデコーダ8bit DECによって制御される256個の上位ビットスイッチと、下位2ビットのデコーダ2bit DECによって制御される4個の下位ビットスイッチとにより構成されている。10ビットの局部D/A変換器10bit Local D/A_Convの256個の上位ビットスイッチにより選択された上位ビット基準電圧VREF1が10ビットの逐次比較型A/D変換器10bit A/D_Convの比較器Compの入力のサンプリング容量C1に供給され、10ビットの局部D/A変換器10bit Local D/A_Convの4個の下位ビットスイッチにより選択された下位ビット基準電圧VREF2が10ビットの逐次比較型A/D変換器10bit A/D_Convの比較器Compの入力の他のサンプリング容量C4に供給される。
図3の半導体集積回路のチップIC Chipは、半導体集積回路の電源投入時のシステム起動時に診断信号生成回路BIDT Cirtによる診断動作をまず開始する。コントロール回路Control_Cirは、診断信号生成回路制御用フリップフロップDEの値を“0(Low)”に設定することにより、マルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7と1出力との間の信号伝達経路を全て遮断する。この入力遮断状態において、コントロール回路Control_Cirは、診断信号生成回路制御用フリップフロップPE、NEのそれぞれの値をまず“0(Low)”、“0(Low)”に設定する。この診断信号生成回路制御用フリップフロップPE、NEの値は、レベルシフト回路LV_Shifterに供給される。レベルシフト回路LV_Shifterから診断信号生成回路BIDT Cirtにそれぞれ“0(Low)”、“0(Low)”に設定された2ビットの制御信号C、Bが供給される。すると、診断信号生成回路BIDT Cirtは、“0(Low)”、“0(Low)”に設定された2ビットの制御信号C、Bに応答した高レベル(H)のアナログ電圧を10ビットの逐次比較型A/D変換器10bit A/D_Convのサンプリング容量C1に供給する。すると、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは、10ビットの局部D/A変換器10bit Local D/A_Convの上位8ビットのデコーダ8bit DECと下位2ビットのデコーダ2bit DECとに10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの75%に相当する10ビットディジタル信号を供給する。すると、10ビットの局部D/A変換器10bit Local D/A_Convから10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの75%に相当するアナログ基準電圧Vxが出力される。10ビットの局部D/A変換器10bit Local D/A_Convの出力からの75%相当アナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの高レベル(H)のアナログ電圧とが、電圧比較器Compにより比較される。75%相当アナログ基準電圧Vxよりも診断信号生成回路BIDT Cirtからの高レベル(H)のアナログ電圧が高いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの87.5%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。87.5%相当アナログ基準電圧Vxよりも診断信号生成回路BIDT Cirtからの高レベル(H)のアナログ電圧が高いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの93.75%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。以下同様にして、アナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの高レベル(H)のアナログ電圧との電圧比較器Compでの比較結果によりアナログ基準電圧Vxが高レベルへ更新され、更新されたアナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの高レベル(H)のアナログ電圧とが電圧比較器Compで更に比較される。このようにして、10ビットの逐次比較型A/D変換器10bit A/D_ConvによるA/D変換のディジタル出力信号が、高レベルへ収束されていく。従って、10ビットの逐次比較型A/D変換器10bit A/D_Convにより、診断信号生成回路BIDT Cirtからの高レベル(H)のアナログ電圧に対応する相当する10ビットディジタル変換信号が得られる。
次に、コントロール回路Control_Cirは、診断信号生成回路制御用フリップフロップPE、NEのそれぞれの値を“0(Low)”、“1(High)”に設定する。この診断信号生成回路制御用フリップフロップPE、NEの値は、レベルシフト回路LV_Shifterに供給される。レベルシフト回路LV_Shifterから診断信号生成回路BIDT Cirtにそれぞれ“0(Low)”、“1(High)”に設定された2ビットの制御信号C、Bが供給される。すると、診断信号生成回路BIDT Cirtは、中間レベル(M)のアナログ電圧を10ビットの逐次比較型A/D変換器10bit A/D_Convのサンプリング容量C1に供給する。まず、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは、10ビットの局部D/A変換器10bit Local D/A_Convの上位8ビットのデコーダ8bit DECと下位2ビットのデコーダ2bit DECとに10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの75%に相当する10ビットディジタル信号を供給する。すると、10ビットの局部D/A変換器10bit Local D/A_Convから10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの75%に相当するアナログ基準電圧Vxが出力される。10ビットの局部D/A変換器10bit Local D/A_Convの出力からの75%相当アナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの中間レベル(M)のアナログ電圧とが、電圧比較器Compにより比較される。75%相当アナログ基準電圧Vxよりも中間レベル(M)のアナログ電圧が低いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの50%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。50%相当アナログ基準電圧Vxよりも中間レベル(M)のアナログ電圧がほんのわずかに高いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの62.5%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。すると、10ビットの局部D/A変換器10bit Local D/A_Convから10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの62.5%に相当するアナログ基準電圧Vxが出力される。62.5%相当アナログ基準電圧Vxよりも診断信号生成回路BIDT Cirtからの中間レベル(M)のアナログ電圧が低いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの57.5%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。57.5%相当アナログ基準電圧Vxよりも診断信号生成回路BIDT Cirtからの中間レベル(M)のアナログ電圧が低いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの52.5%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。以下同様にして、アナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの中間レベル(M)のアナログ電圧との電圧比較器Compでの比較結果によりアナログ基準電圧Vxが中間レベルへ更新され、更新されたアナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの中間レベルのアナログ電圧とが電圧比較器Compで更に比較される。このようにして、10ビットの逐次比較型A/D変換器10bit A/D_ConvによるA/D変換のディジタル出力信号が、中間レベルへ収束されていく。従って、10ビットの逐次比較型A/D変換器10bit A/D_Convにより、診断信号生成回路BIDT Cirtからの中間レベル(M)のアナログ電圧に対応する相当する10ビットディジタル変換信号が得られる。
さらに、コントロール回路Control_Cirは、診断信号生成回路制御用フリップフロップPE、NEのそれぞれの値を“1(High)”、“1(High)”に設定する。この診断信号生成回路制御用フリップフロップPE、NEの値は、レベルシフト回路LV_Shifterに供給される。レベルシフト回路LV_Shifterから診断信号生成回路BIDT Cirtにそれぞれ“1(High)”、“1(High)”に設定された2ビットの制御信号C、Bが供給される。すると、診断信号生成回路BIDT Cirtは、低レベル(L)のアナログ電圧を10ビットの逐次比較型A/D変換器10bit A/D_Convのサンプリング容量C1に供給する。まず、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは、10ビットの局部D/A変換器10bit Local D/A_Convの上位8ビットのデコーダ8bit DECと下位2ビットのデコーダ2bit DECとに10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの75%に相当する10ビットディジタル信号を供給する。すると、10ビットの局部D/A変換器10bit Local D/A_Convから10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの75%に相当するアナログ基準電圧Vxが出力される。10ビットの局部D/A変換器10bit Local D/A_Convの出力からの75%相当アナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの低レベル(L)のアナログ電圧とが、電圧比較器Compにより比較される。75%相当アナログ基準電圧Vxよりも低レベル(L)のアナログ電圧が低いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの50%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。10ビットの局部D/A変換器10bit Local D/A_Convの出力からの50%相当アナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの低レベル(L)のアナログ電圧とが、電圧比較器Compにより比較される。50%相当アナログ基準電圧Vxよりも低レベル(L)のアナログ電圧が低いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの25%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。すると、10ビットの局部D/A変換器10bit Local D/A_Convから10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの25%に相当するアナログ基準電圧Vxが出力される。25%相当アナログ基準電圧Vxよりも診断信号生成回路BIDT Cirtからの低レベル(L)のアナログ電圧が低いので、10ビットの逐次比較型A/D変換器10bit A/D_ConvのコントローラCntrlは10ビットの逐次比較型A/D変換器10bit A/D_Convの入力ダイナミックレンジの12.5%に相当する10ビットディジタル信号を10ビットの局部D/A変換器10bit Local D/A_Convに供給する。以下同様にして、アナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの低レベル(L)のアナログ電圧との電圧比較器Compでの比較結果によりアナログ基準電圧Vxが低レベルへ更新され、更新されたアナログ基準電圧Vxと診断信号生成回路BIDT Cirtからの低レベルのアナログ電圧とが電圧比較器Compで更に比較される。このようにして、10ビットの逐次比較型A/D変換器10bit A/D_ConvによるA/D変換のディジタル出力信号が、低レベルへ収束されていく。従って、10ビットの逐次比較型A/D変換器10bit A/D_Convにより、診断信号生成回路BIDT Cirtからの低レベル(L)のアナログ電圧に対応する相当する10ビットディジタル変換信号が得られる。
以上のように診断信号生成回路BIDT Cirtからの高レベル(H)、中間レベル(M)、低レベル(L)のアナログ電圧に対応する相当する10ビットディジタル変換信号が次々に10ビットの逐次比較型A/D変換器10bit A/D_Convから得られることにより、10ビットの逐次比較型A/D変換器10bit A/D_Convは正確なA/D変換を実行するものとして、診断されることができる。
図4は、図3の半導体集積回路のチップIC Chipが半導体集積回路の電源投入時のシステム起動時に診断信号生成回路BIDT Cirtによる診断動作だけでなく、電源投入の後の通常動作においても、動作中の空き時間に10ビットの逐次比較型A/D変換器10bit A/D_ConvやマルチプレクサーMPXの診断動作を行うことを示すものである。同図に示すように、図3のマルチプレクサーMPXの1チャンネル目のアナログ入力端子AN0からのアナログ信号のサンプリング処理Sampとサンプリングされたアナログ信号から10ビットのディジタル信号へのA/D変換の変換処理Convの後の空き時間に、図3の診断回路BIDT Cirによる10ビットの逐次比較型A/D変換器10bit A/D_Convを診断する診断処理BIDT Testが行われる。また、図3のマルチプレクサーMPXの2チャンネル目のアナログ入力端子AN1からのアナログ信号のサンプリング処理Sampとサンプリングされたアナログ信号から10ビットのディジタル信号へのA/D変換の変換処理Convの後の空き時間に、図3の診断回路BIDT Cirによる10ビットの逐次比較型A/D変換器10bit A/D_Convを診断する診断処理BIDT Testが行われる。以下同様に、マルチプレクサーMPXの8チャンネル目のアナログ入力端子AN7からのアナログ信号のサンプリング処理Sampとサンプリングされたアナログ信号から10ビットのディジタル信号へのA/D変換の変換処理Convの後の空き時間に、図3の診断回路BIDT Cirによる10ビットの逐次比較型A/D変換器10bit A/D_Convを診断する診断処理BIDT Testが行われる。
図5は、本発明のその他の実施形態に従ってチップ上に逐次比較型A/D変換器を含む半導体集積回路の構成を示す図である。
同図に示すように、マルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7には、8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7と、8個のCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7とが接続されている。また、マルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7には、A/D変換されるアナログ入力信号を生成する応用システムのマザーボードの各種のセンサーRsense0、Rsense1…Rsense7が接続されている。更にマルチプレクサーMPXの1出力には、診断回路BIDT Cirt8と10ビットの逐次比較型A/D変換器10bit A/D_Convとが接続されている。応用システムのマザーボードの上で各種のセンサーRsense0、Rsense1…Rsense7が正常に動作している場合には、8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7には、センサーRsense0、Rsense1…Rsense7からのセンス電圧がセンサーの出力インピーダンスを介して供給されている。センサーRsense0、Rsense1…Rsense7からのセンス電圧は、アナログ動作電圧AVrefとアナログ接地電圧AVssの間の種々の電圧レベルとなるものである。
しかし、マルチプレクサーMPXの8個のCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7のいずれかが故障すると、マルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7のいずれかとマルチプレクサーMPXの1出力との間の電気的導通が確保できなくなる。
8個の診断信号生成回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7は、2ビットの入力信号C0、B0、C1、B1…C7、B7に応答して高レベル(H)、低レベル(L)、中間レベル(M)、高インピーダンス(Hi−Z)の4状態の複数の出力信号O0、O1…O7を生成する。8個の診断信号生成回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7から生成された高レベル(H)、低レベル(L)、中間レベル(M)の3状態(3値アナログ信号)の複数の出力信号O0、O1…O7をマルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7に逐次供給する。この逐次供給の状態でマルチプレクサーMPXの1出力からの逐次出力信号をA/D変換器10bit A/D_Convのアナログ信号入力端子に逐次供給して、A/D変換を実行する。A/D変換器10bit A/D_ConvによってA/D変換されたディジタル出力信号から、マルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7とマルチプレクサーMPXの1出力との間の電気的導通を診断することができる。
尚、マルチプレクサーMPXの1出力に接続された9個目の診断信号生成回路BIDT Cirt8も、2ビットの入力信号C8、B8に応答して高レベル(H)、低レベル(L)、中間レベル(M)、高インピーダンス(Hi−Z)の4状態の複数の出力信号O8を生成する。上述のマルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7とマルチプレクサーMPXの1出力との間の電気的導通の診断に先立って、9個目の診断信号生成回路BIDT Cirt8から生成された高レベル(H)、低レベル(L)、中間レベル(M)の3状態(3値アナログ信号)の出力信号O8をA/D変換器10bit A/D_Convのアナログ信号入力端子に供給して、A/D変換を実行する。A/D変換器10bit A/D_ConvによってA/D変換されたディジタル出力信号から、A/D変換器10bit A/D_Convの良・不良を診断する。この診断の間には、マルチプレクサーMPXの8個のCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の全てがオフ状態となるように、8個の選択信号SEL0、SEL1…SEL7は全てハイレベルとされる。従って、この診断の間にセンサーRsense0、Rsense1…Rsense7からのセンス電圧がA/D変換器10bit A/D_Convに供給されないようにマルチプレクサーMPXが8個の選択信号SEL0、SEL1…SEL7により制御される。A/D変換器10bit A/D_Convが良と診断されると、上述のマルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7とマルチプレクサーMPXの1出力との間の電気的導通の診断が開始される。この診断の間には、センサーRsense0、Rsense1…Rsense7の出力インピーダンス(10KΩから100KΩ)よりも8個の診断信号生成回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7の高レベル(H)、低レベル(L)、中間レベル(M)の3状態(3値アナログ信号)の出力信号O0、O1…O7を生成する出力インピーダンスが、例えば数KΩと、十分低くされている。その結果、センサーRsense0、Rsense1…Rsense7からのセンス電圧は、8個の診断信号生成回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7から生成される高レベル(H)、低レベル(L)、中間レベル(M)の3状態(3値アナログ信号)のレベルにほとんど影響を与えることはない。
尚、図5の実施形態において、9個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7、BIDT Cirt8によるマルチプレクサーMPXのCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の断線状態の診断と、10ビットの逐次比較型A/D変換器10bit A/D_Convの故障診断とを、図1と同様に半導体集積回路の電源投入時のシステム起動時と伴に電源投入の後の通常動作中の空き時間にもリードオンリーメモリROMもしくはフラッシュ不揮発性メモリNV_Flashに格納された診断制御プログラムにより実行することが推奨される。このような断線状態や故障が診断されると、応用システムのユーザーに警報が発せられるものである。このユーザー警告処理のための制御プログラムも、図1のリードオンリーメモリROMもしくはフラッシュ不揮発性メモリNV_Flash中に格納されることができる。
図6は、本発明のその他の実施形態に従った半導体集積回路の構成を示す図である。図6の実施形態は、図5の実施形態と同様に9個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7、BIDT Cirt8によるマルチプレクサーMPXのCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の断線状態の診断と、10ビットの逐次比較型A/D変換器10bit A/D_Convの故障診断とを行うことが可能である。更に図6の実施形態は、図5の実施形態にコントローラCNTRLR、レジスタREG1(PLS_Int)、レジスタREG2(PLS_Wid)が追加され、センサーRsense0、Rsense1…Rsense7の診断を可能としている。
図7は、図6の半導体集積回路IC Chipが複数のセンサーRsense0、Rsense1…Rsense7からマルチプレクサMPXの複数のアナログ入力端子AN0、AN1…AN7に供給される複数の通常アナログ入力信号の複数のA/D変換動作AN0_A/D_Conv、AN1A/D_Conv…AN7A/D_Convの間の複数のノーオペレーションNO_Opeの間に、複数のセンサーRsense0、Rsense1…Rsense7が断線状態となっていないかを診断する動作を示すものである。尚、複数のA/D変換動作AN0_A/D_Conv、AN1A/D_Conv…AN7A/D_Convは、それぞれマルチプレクサーMPXのアナログ入力端子からのアナログ信号のサンプリング処理Sampと、サンプリングされたアナログ信号から10ビットのディジタル信号へのA/D変換の変換処理Convとを含んでいる。
複数のセンサーRsense0、Rsense1…Rsense7が複数のアナログ入力端子AN0、AN1…AN7と正常に電気的に接続されている場合、複数のセンサーRsense0、Rsense1…Rsense7のインピーダンスは10KΩから100KΩ程度の値となっている。半導体集積回路IC Chipを搭載した電子機器への強い機械的衝撃等により、複数のセンサーRsense0、Rsense1…Rsense7が断線状態またはそれに近い半断線状態となる。このように、複数のセンサーRsense0、Rsense1…Rsense7が断線状態またはそれに近い半断線状態の高インピーダンス状態となると、数MΩからGΩオダーの極めて高いインピーダンスとなる。機械的衝撃等により一部のセンサーが段線状態またはそれに近い半断線状態となっても、残りのセンサーは正常な状態で正常なセンス電圧を出力していることが想定される。従って、図5の実施形態のCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の断線状態の診断のためにアナログ入力端子AN0、AN1…AN7を診断回路により高レベル(H)の状態、中間レベル(M)の状態、低レベル(L)の状態にシーケンシャルに低インピーダンス駆動するならば、正常な状態の残りのセンサーの正常なセンス電圧を破壊してしまう危険性がある。図6と図7とに示した本発明のその他の実施形態は、このような正常なセンス電圧の破壊を回避できるように考慮されている。
すなわち、図6と図7とに示した本発明のその他の実施形態では、複数のアナログ入力端子AN0、AN1…AN7に供給される複数の通常アナログ入力信号の複数のA/D変換動作AN0_A/D_Conv、AN1A/D_Conv…AN7A/D_Convの間の複数のノーオペレーションNO_Opeの間に、複数の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7から複数のアナログ入力端子AN0、AN1…AN7の各入力端子を高レベル(H)の状態に短時間駆動する。複数のノーオペレーションNO_Opeの間の入力端子の高レベル(H)の状態に短時間駆動によって、断線状態のセンサーに対応する入力端子の電圧は徐々に増加して最終的には高レベル(H)の状態に到達する。この高レベル(H)の状態への到達より入力端子のセンサーの断線が診断される。尚、入力端子の高レベル(H)の状態への到達は、10ビット逐次A/D変換器10bit A/D_Convからのディジタル出力信号から判定することができる。また、断線状態でも半断線状態でもない正常な状態でセンサーが接続されているアナログ入力信号は短時間の駆動時間以外は正常なセンサー電圧により長時間駆動されるので、高レベル(H)の状態へ到達することはない。
上述のマルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7に接続されるセンサーRsense0、Rsense1…Rsense7の診断に先立って、9個目の診断信号生成回路BIDT Cirt8から生成された高レベル(H)、低レベル(L)、中間レベル(M)の3状態(3値アナログ信号)の出力信号O8をA/D変換器10bit A/D_Convのアナログ信号入力端子に供給して、A/D変換を実行する。A/D変換器10bit A/D_ConvによってA/D変換されたディジタル出力信号から、A/D変換器10bit A/D_Convの良・不良を診断する。この診断の間には、マルチプレクサーMPXの8個のCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の全てがオフ状態となるように、8個の選択信号SEL0、SEL1…SEL7は全てハイレベルとされる。従って、この診断の間にセンサーRsense0、Rsense1…Rsense7からのセンス電圧がA/D変換器10bit A/D_Convに供給されないようにマルチプレクサーMPXが8個の選択信号SEL0、SEL1…SEL7により制御される。A/D変換器10bit A/D_Convが良と診断されると、上述のマルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7に接続されるセンサーRsense0、Rsense1…Rsense7の診断が開始される。
また、センサーの断線判定の精度を向上するために、他の複数のノーオペレーションNO_Opeの間に、複数の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7から複数のアナログ入力端子AN0、AN1…AN7の各入力端子を低レベル(L)の状態に短時間駆動する。複数のノーオペレーションNO_Opeの間の入力端子の低レベル(L)の状態に短時間駆動によって、断線状態のセンサーに対応する入力端子の電圧は徐々に低下して最終的には低レベル(L)の状態に到達する。尚、入力端子の低レベル(L)の状態への到達は、10ビット逐次A/D変換器10bit A/D_Convからのディジタル出力信号から判定することができる。また、断線状態でも半断線状態でもない正常な状態でセンサーが接続されているアナログ入力信号は短時間の駆動時間以外は正常なセンサー電圧により長時間駆動されるので、低レベル(L)の状態へ到達することはない。このような複数回の高レベル(H)の状態の短時間駆動と複数回の低レベル(L)の状態の短時間駆動とによって同一の入力端子のセンサーの断線が2回検出されると、この入力端子のセンサーは段線状態となっていると最終判断されて、図5の実施形態と同様に応用システムのユーザーに警報が発せられる。
図6のレジスタREG1(PLS_Int)には短時間駆動のインターバル期間が設定され、レジスタREG2(PLS_Wid)には短時間駆動の駆動期間が設定され、コントローラCNTRLRはレジスタREG1(PLS_Int)、REG2(PLS_Wid)の設定情報に従って複数の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7を制御するための制御信号C0、B0、C1、B1…C7、B7を生成する。
図7に示したセンサー断線診断のためのコントローラCNTRLRの制御による複数の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7から複数のアナログ入力端子AN0、AN1…AN7の駆動は、例えば、次のように制御される。まず、アナログ入力端子AN0、AN1…AN7に供給される通常アナログ入力信号の合計16回のA/D変換動作AN0_A/D_Conv、AN1A/D_Conv…AN7A/D_Convの間の合計16回のノー・オペレーションNO_Opeの間に、アナログ入力端子AN0、AN1…AN7のそれぞれは2回の高レベル(H)の状態の短時間駆動を体験する。尚、この高レベル(H)の短時間駆動の駆動時間の長さは、アナログ入力端子AN0、AN1…AN7のセンサーRsense0、Rsense1…Rsense7の抵抗値とアナログ入力端子AN0、AN1…AN7の入力浮遊容量の容量値とで決定される時定数で決定される。また、10ビットA/D変換器10bit A/D_Convの入力端子の電荷の漏洩を防止するため、10ビットA/D変換器10bit A/D_Convのサンプリング期間以外の期間では、マルチプレクサーMPXの出力端子に接続された診断回路BIDT Cir8は10ビットA/D変換器10bit A/D_Convの入力端子を高レベル(H)に駆動する。その後、アナログ入力端子AN0、AN1…AN7が高レベル(H)の状態に到達しているかが、10ビット逐次A/D変換器10bit A/D_Convにより判断される。
更に、アナログ入力端子AN0、AN1…AN7に供給される通常アナログ入力信号の合計16回の次のA/D変換動作AN0_A/D_Conv、AN1A/D_Conv…AN7A/D_Convの間の合計16回の次のノー・オペレーションNO_Opeの間に、アナログ入力端子AN0、AN1…AN7のそれぞれは2回の低レベル(L)の状態の短時間駆動を体験する。この低レベル(L)の短時間駆動の駆動時間の長さも、アナログ入力端子AN0、AN1…AN7のセンサーRsense0、Rsense1…Rsense7の抵抗値とアナログ入力端子AN0、AN1…AN7の入力浮遊容量の容量値とで決定される時定数で決定される。同様に、10ビットA/D変換器10bit A/D_Convの入力端子の電荷の漏洩を防止するため、10ビットA/D変換器10bit A/D_Convのサンプリング期間以外の期間では、マルチプレクサーMPXの出力端子に接続された診断回路BIDT Cir8は10ビットA/D変換器10bit A/D_Convの入力端子を高レベル(H)に駆動する。その後、アナログ入力端子AN0、AN1…AN7が低レベル(L)の状態に到達しているかが、10ビット逐次A/D変換器10bit A/D_Convにより判断される。このような合計2回の高レベル(H)の状態の短時間駆動と合計2回の低レベル(L)の状態の短時間駆動とにより同一の入力端子のセンサーの断線が4回検出されると、この入力端子のセンサーは段線状態となっていると最終判断されて、図5の実施形態と同様に応用システムのユーザーに警報が発せられる。尚、図6と図7とに示した実施形態によるセンサーの診断動作では、マルチプレクサーMPXの多入力と1出力との間の電気的導通が確保されていると言う前提に立っている。しかし、図6と図7とに示した実施形態によるセンサーの診断動作は、図5の実施形態のマルチプレクサーMPXの多入力と1出力との間の電気的導通の診断の機能も兼ねていると言える。すなわち、マルチプレクサーMPXの多入力のいずれかの入力と1出力との間の電気的導通が遮断されていれば、上述のいずれかの入力端子の高レベル(H)または低レベル(L)またはセンサーからのセンス電圧に応答するはずの10ビット逐次A/D変換器10bit A/D_Convから高レベル(H)または低レベル(L)またはセンス電圧に対応するディジタル出力信号が得られないことが検出されることができる。また、変形実施形態としては、計1回の高レベル(H)の状態の短時間駆動と計1回の低レベル(L)の状態の短時間駆動とによって同一の入力端子のセンサーの断線が2回検出されると、入力端子のセンサーは段線状態となっていると最終判断することも可能である。
図8は、本発明のその他の実施形態に従った半導体集積回路の構成を示す図である。同図に示すように、図3の実施形態のマルチプレクサーMPXのCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の出力とマルチプレクサーMPXの1出力との間に高入力インピーダンス・低出力インピーダンスのインピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7を配置したものである。このインピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7により、マルチプレクサーMPXの1出力に接続されたA/D変換器10bit A/D_Convの入力の駆動能力を改善することができる。インピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7の動作の初期に、スイッチSW01、SW11…SW71はオン状態とされる。その後、インピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7の差動入力オフセット電圧の影響を軽減するため、スイッチSSW01、SW11…SW71はオフ状態とされ、入出力バイパス用スイッチSW02、SW12…SW72がオン状態とされる。また、入出力バイパス用スイッチSW02、SW12…SW72がオン状態となった後に、インピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7の動作は停止され、低消費電力モードに設定される。
この図8の実施形態でも、図3と図4と図6の実施形態と同様に、診断回路BIDT Cir8による10ビットの逐次比較型A/D変換器10bit A/D_Convの診断動作と、診断回路BIDT Cirt0、BIDT Cirt1…によるマルチプレクサーMPXのCMOSアナログスイッチCMOSSW0…CMOSSW7もしくはアナログ入力端子AN0…AN7のセンサーRsense0…Rsenseの診断動作とを行うことができる。
図9は、本発明のその他の実施形態に従ってチップ上に逐次比較型A/D変換器を含む半導体集積回路の構成を示す図である。
同図の実施形態は、図1の実施形態と比較すると8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7を持つマルチプレクサーMPXの1出力と10bitの逐次比較型A/D変換器10bit A/D_Convの入力との間に高入力インピーダンス・低出力インピーダンスのインピーダンス変換器OP_Ampが追加的に接続されることによって、10bitの逐次比較型A/D変換器10bit A/D_Convの入力の駆動能力を改善することができる。インピーダンス変換器OP_Ampの動作の初期に、スイッチSW1はオン状態とされて、A/D変換器10bit A/D_Convの入力の入力容量CinがマルチプレクサーMPXの1出力の出力信号により高速に充電される。その後、インピーダンス変換器OP_Ampの差動入力オフセット電圧の影響を軽減するため、スイッチSW1はオフ状態とされ、入出力バイパス用スイッチSW2がオン状態とされて、マルチプレクサーMPXの1出力の出力信号は入出力バイパス用スイッチSW2を介して入力容量Cinに供給される。
また、図1と同様に図9の実施形態でも、アナログ入力端子AN0、AN1…AN7からのアナログ信号のサンプリング処理とディジタル信号へのA/D変換の変換処理との後の空き時間に、マルチプレクサーMPXの多入力と1出力との間の電気的導通が遮断された状態で、2ビットの入力信号C8、B8の組み合わせに従って診断回路BIDT Cirは高レベル(H)と低レベル(L)と中間レベル(M)の3状態の出力信号を生成して、逐次比較型A/D変換器10bit A/D_Convのディジタル出力信号から良・不良が診断される。
更に、診断信号生成回路BIDT CirtによるA/D変換器の診断動作の終了の後に、診断信号生成回路BIDT Cirtは2ビットの入力信号C8、B8の組み合わせにより診断信号生成回路BIDT Cirtが高インピーダンス(Hi−Z)のディスエーブル状態に制御され、また高入力インピーダンス・低出力インピーダンスのインピーダンス変換器OP_Ampも2ビットの入力信号C8、B8の組み合わせによりディスエーブル状態に制御され、低消費電力化を実現することができる。すなわち、診断回路BIDT Cirtをディスエーブル状態に制御する2ビットの制御信号C8、B8の“1(H)”、“0(L)”に応答して、NAND回路NAND1の出力はローレベルとなり、インバータINV1の出力はハイレベルとなる。その結果、インピーダンス変換器OP_Ampと定電流源CS1との間のスイッチSW3はオフ状態に制御され、インピーダンス変換器OP_Ampはディスエーブル状態に制御される。尚、スイッチSW3がオフ状態に制御されるのと同時に、入出力バイパス用スイッチSW2がオン状態とされる。
≪変形実施形態による半導体集積回路の構成≫
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
例えば、図2の診断回路BIDT CirtのPチャンネルMOSトランジスタMp1とNチャンネルMOSトランジスタMn1とはPNP型バイポーラトランジスタとNPN型バイポーラトランジスタとによってそれぞれ置換することができる。
また、センサーの段線状態の検出に際して、正常なセンサーの正常なセンサー電圧の破壊が問題とならなければ、図5の実施形態による8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7を使用してセンサーの段線状態を検出することができる。
すなわち、図5において応用システムのマザーボードの上で全てのセンサーRsense0、Rsense1…Rsense7が完全な断線状態となると、8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7の全て高インピーダンス(Hi−Z)の状態となる。この異常状態は、8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7によって検出されることができる。すなわち、8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7が2ビットの制御信号C、Bを3回転送することによって、8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7は8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7を、高レベル(H)の状態、中間レベル(M)の状態、低レベル(L)の状態にシーケンシャルに駆動する。従って、10ビットの逐次比較型A/D変換器10bit A/D_Convにより、高レベル(H)のアナログ出力電圧に対応する10ビットのディジタル出力信号と、中間レベル(M)のアナログ出力電圧に対応する10ビットのディジタル出力信号と、低レベル(L)のアナログ出力電圧に対応する10ビットのディジタル出力信号とがシーケンシャルに得られるならば、応用システムのマザーボードの上で全てのセンサーRsense0、Rsense1…Rsense7が完全な断線状態となっていることが診断される。また、応用システムのマザーボードの上で全てのセンサーRsense0、Rsense1…Rsense7が全て低インピダンス状態での電源ショートやグランドショートとなっている場合も、同様に診断することができる。すなわち、8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7は8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7を中間レベル(M)の状態に駆動しても、10ビットの逐次比較型A/D変換器10bit A/D_Convから中間レベル(M)のアナログ出力電圧に対応する10ビットのディジタル出力信号が得られないことにより、低インピダンス状態での電源ショートやグランドショートの異常状態を診断することができる。
更に、図5の実施形態では、8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7を用いることにより、8個のCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の完全な段線状態や低インピダンス状態での電源ショートやグランドショートなどの異常状態を診断することができる。
また、マルチプレクサーMPXの1出力に接続された9個目の診断回路BIDT Cirt8は、センサーRsense0、Rsense1…Rsense7の完全な断線状態、低インピダンス状態での電源ショートやグランドショートの診断やCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の完全な断線状態、低インピダンス状態での電源ショートやグランドショートの診断に先立って、マルチプレクサーMPXの8個のCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の全てをオフ状態に制御した状態で10ビットの逐次比較型A/D変換器10bit A/D_Convの故障を診断することができる。この診断により10ビットの逐次比較型A/D変換器10bit A/D_Convが良と判断されると、センサーRsense0、Rsense1…Rsense7の診断や8個のCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の診断が開始される。
尚、図5の実施形態において、9個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7、BIDT Cirt8によるセンサーRsense0、Rsense1…Rsense7の完全な断線状態、低インピダンス状態での電源ショートやグランドショートの診断、CMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の完全な断線状態、低インピダンス状態での電源ショートやグランドショートの診断、10ビットの逐次比較型A/D変換器10bit A/D_Convの故障診断を、図1と同様に半導体集積回路の電源投入時のシステム起動時と伴に電源投入の後の通常動作中の空き時間にもリードオンリーメモリROMもしくはフラッシュ不揮発性メモリNV_Flashに格納された診断制御プログラムにより実行することが推奨される。更に、マザーボード上のセンサーRsense0、Rsense1…Rsense7の電源ショート、グランドショートの発生によって、8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7による中間レベル(M)のアナログ出力電圧のレベルがセンサーの電源ショート、グランドショートの発生以前のレベルから微妙に変化する。これは、診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7での中間レベル(M)を出力する際の出力インピーダンス(図2に示した診断回路BIDT Cirtでは略抵抗R1、R2の並列接続インピーダンスとなる)に対して、センサーの電源ショート、グランドショートの発生前ではセンサーの正常状態のインピーダンスは比較的高く、センサーの電源ショート、グランドショートの発生後ではセンサーのインピーダンスは比較的低いことに起因する。従って、センサーの電源ショート、グランドショートの発生前後のセンサーのインピーダンス変化による8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7による中間レベル(M)のアナログ出力電圧の微妙な変化を、図1のフラッシュ不揮発性メモリNV_Flash中に履歴情報として格納することが推奨される。図1の中央処理ユニットCPUは定期的な周期にてフラッシュ不揮発性メモリNV_Flashから、8個の診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7による中間レベル(M)のアナログ出力電圧の微妙な変化を読み出す。この微妙な変化が統計的な許容値を超えた時には、中央処理ユニットCPUはセンサーに電源ショート、もしくはグランドショートが発生したものとして診断して、応用システムのユーザーに警報を発するものである。以上説明したようなセンサーの電源ショート、グランドショートによる診断回路の中間レベル(M)のアナログ出力電圧の微妙な変化のフラッシュ不揮発性メモリNV_Flashへの履歴情報格納処理、フラッシュ不揮発性メモリNV_Flashからの履歴情報の定期的な読み出し処理、微妙な変化が許容範囲か否かの統計的な判断処理、ユーザー警告処理のための制御プログラムも、図1のリードオンリーメモリROMもしくはフラッシュ不揮発性メモリNV_Flash中に格納されることができる。
図10は、本発明のその他の実施形態に従った半導体集積回路の構成を示す図である。同図に示すように、半導体集積回路のチップIC Chipの内部には、中央処理ユニットCPUに外部電源電圧Vddよりも低い内部動作電圧Vintを供給するパワースイッチ回路PSWCが配置されている。このパワースイッチ回路PSWCは、内部動作電圧Vintを供給するPチャンネルMOSトランジスタQpsを含み、このPチャンネルMOSトランジスタQpsのゲートには差動増幅器DAの出力信号が供給されている。差動増幅器DAの反転入力端子−には電圧レギュレータVregからの基準電圧Verfが供給され、差動増幅器DAの非反転入力端子+にはPチャンネルMOSトランジスタQpsのドレインからの内部動作電圧Vintが負帰還で供給されている。パワースイッチ回路PSWCが正常に動作している間は、負帰還作用によって内部動作電圧Vintの生成の際の出力インピーダンスは極めて低い状態となっている。この正常な状態のパワースイッチ回路PSWCで生成される内部動作電圧Vintが、電源投入後の空き時間の間にスイッチSWPを介して10ビットの逐次比較型A/D変換器10bit A/D_Convのアナログ入力端子に供給される。この空き時間の間に、内部動作電圧Vintのアナログ電圧レベルは10ビットの逐次比較型A/D変換器10bit A/D_Convによりディジタル信号に変換される。この空き時間の間の10ビットの逐次比較型A/D変換器10bit A/D_Convからのディジタル信号から、パワースイッチ回路PSWCが正常に動作しているかが診断されることができる。
しかし、この半導体集積回路のチップIC Chipの経年劣化により、パワースイッチ回路PSWCのPチャンネルMOSトランジスタQpsのソース・ドレイン間や中央処理ユニットCPUの内部動作電圧供給ノードと接地電位との間が半導体集積回路の配線のエレクトロマイグレーション等によってショートや断線に近い状態となることが危惧される。このような異常状態では、空き時間の間の10ビットの逐次比較型A/D変換器10bit A/D_Convからのディジタル信号が異常な値となり、パワースイッチ回路PSWCの異常状態をまず診断することができる。更に、診断の精度を向上するために、診断回路BIDT Cirtによる診断動作が開始される。このような異常状態では、パワースイッチ回路PSWCのPチャンネルMOSトランジスタQpsのソース・ドレイン間や中央処理ユニットCPUの内部動作電圧供給ノードと接地電位との間が種々のインピーダンス状態のショートや断線に近い状態となる。すると、診断回路BIDT CirtがスイッチSWPを介して内部動作電圧Vintの供給ノードを高レベル(H)、中間レベル(M)、低レベル(L)の3状態にシーケンシャルに駆動しても、10ビットの逐次比較型A/D変換器10bit A/D_Convの出力から3状態に対応する10ビットのディジタル出力信号はパワースイッチ回路PSWCが正常に動作している時のディジタル値と相当異なる。この異常なディジタル値を図1のリードオンリーメモリROMもしくはフラッシュ不揮発性メモリNV_Flash中に格納された統計的な判断処理することにより、パワースイッチ回路PSWCの異常状態を診断することができる。
図11は、本発明のその他の実施形態に従った半導体集積回路の構成を示す図である。同図に示すように、マルチプレクサーMPXの8チャンネルのアナログ入力端子AN0、AN1、AN2、AN3、AN4、AN5、AN6、AN7のそれぞれに診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7と高入力インピーダンス・低出力インピーダンスのインピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7とを配置したものである。診断回路BIDT Cirt8は、まず10ビットの逐次比較型A/D変換器10bit A/D_Convの良・不良を診断する。10ビットの逐次比較型A/D変換器10bit A/D_Convが良と診断された後、診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7と10ビットの逐次比較型A/D変換器10bit A/D_Convとは、インピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7を介してマルチプレクサーMPXのCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の段線状態や電源ショートやグランドショートなどの異常状態を診断することができる。すなわち、診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7の3状態の出力信号はマルチプレクサーMPXのCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の出力・入力とインピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7とを介して10ビットの逐次比較型A/D変換器10bit A/D_Convの入力に供給される。また診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7とCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7と10ビットの逐次比較型A/D変換器10bit A/D_Convとは、インピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7を介して応用システムのマザーボードの上で全てのセンサーRsense0、Rsense1…Rsense7の断線状態を診断することができる。すなわち、診断回路BIDT Cirt0、BIDT Cirt1…BIDT Cirt7の3状態の出力信号はマルチプレクサーMPXのCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の出力・入力を介してセンサーRsense0、Rsense1…Rsense7に供給され、センサーRsense0、Rsense1…Rsense7の電圧はマルチプレクサーMPXのCMOSアナログスイッチCMOSSW0、CMOSSW1…CMOSSW7の入力・出力とインピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7とを介して10ビットの逐次比較型A/D変換器10bit A/D_Convの入力に供給される。尚、インピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7の動作の初期に、スイッチSW01、SW11…SW71はオン状態とされる。その後、インピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7の差動入力オフセット電圧の影響を軽減するために、スイッチSSW01、SW11…SW71はオフ状態とされ、入出力バイパス用スイッチSW02、SW12…SW72がオン状態とされる。また、図9と同様に図11の実施形態でも入出力バイパス用スイッチSW02、SW12…SW72がオン状態となった後に、インピーダンス変換器OP_Amp0、OP_Amp1…OP_Amp7の動作は停止されて、低消費電力モードに設定される。
また、本発明は、マイクロコントローラやマイクロプロセッサ以外にも各種の用途に使用されるシステムLSIやディジタル・アナログ・ミックスド・シグナルLSI等のように、A/D変換器や多入力・1出力のマルチプレクサーを含むLSI全般に適用可能であることは言うまでもないであろう。