自己診断装置、自己診断方法及び自己診断機能を備えた電子機器
【課題】信号線における不具合の発生箇所と不具合モードとを精度良く特定することができる自己診断装置、自己診断方法及び自己診断機能を備えた電子機器を提供する。
【解決手段】出力バッファ部4に接続する複数の信号線0〜3の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信するとともに、複数の信号線0〜3を介して出力バッファ部4と接続する入力バッファ部6でパターンデータを順次受信し、パターンデータ間の信号線ごとの論理値又は信号線ごとの論理値の論理演算値から、複数の信号線0〜3における短絡又は開放の発生及びその発生箇所を判定する。
【解決手段】出力バッファ部4に接続する複数の信号線0〜3の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信するとともに、複数の信号線0〜3を介して出力バッファ部4と接続する入力バッファ部6でパターンデータを順次受信し、パターンデータ間の信号線ごとの論理値又は信号線ごとの論理値の論理演算値から、複数の信号線0〜3における短絡又は開放の発生及びその発生箇所を判定する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、信号線の不具合を自己診断する自己診断装置、自己診断方法及び自己診断機能を備えた電子機器に関するものである。
【背景技術】
【0002】
例えば、特許文献1には、信号線の不具合を自己診断する装置が開示されている。この装置は、メモリに記憶したテストパターンと、フレキシブル基板(FPC)を通じてパラレルバスの線路通過後に受信されるパラレルデータ(期待値)とを比較して、両者が一致しない場合に、パラレルバスで接続不良が発生したものとしてドライバ回路の動作を停止させる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−293054号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来の技術では、テストパターンを、パラレルバスにおける隣接する線路で信号の電圧がハイ(1)とロー(0)で交互に異なる値としている。例えば、パラレルバスが4つの線路で構成されている場合、(1010)又は(0101)が、テストパターンとなる。この場合、誤りがある線路の組み合わせによっては、不良を検知できないという課題があった。例えば、テストパターンのいずれかのビットの値が“1”であり、このビットに対応するパラレルバスの線路が開放モードで“1”になる場合、開放モードの不具合が発生しても正常な値と区別がつかない。
【0005】
また、パラレルバスの隣接した線路が互いに同一値を示すとき、不具合と判定するが、開放モード及び短絡モードのいずれにおいても同一値となる場合がある。このため、発生した不具合が、開放モードであるのか、短絡モードであるのかを特定することができなかった。
【0006】
この発明は、上記のような課題を解決するためになされたもので、信号線における不具合の発生箇所と不具合モードとを精度良く特定することができる自己診断装置、自己診断方法及び自己診断機能を備えた電子機器を得ることを目的とする。
【課題を解決するための手段】
【0007】
この発明に係る自己診断装置は、複数の信号線に接続する出力バッファ部と、出力バッファ部に接続する複数の信号線の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信する第1のデータ処理部とを有する送信側信号処理ブロックと、複数の信号線を介して出力バッファ部と接続する入力バッファ部と、入力バッファ部でパターンデータを順次受信し、パターンデータ間の信号線ごとの論理値又は信号線ごとの論理値の論理演算値から、複数の信号線における短絡又は開放の発生及びその発生箇所を判定する受信側信号処理ブロックとを備えるものである。
【発明の効果】
【0008】
この発明によれば、出力バッファ部に接続する複数の信号線の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信するとともに、複数の信号線を介して出力バッファ部と接続する入力バッファ部でパターンデータを順次受信し、パターンデータ間の信号線ごとの論理値又は信号線ごとの論理値の論理演算値から、複数の信号線における短絡又は開放の発生及びその発生箇所を判定する。このようにすることで、信号線における不具合の発生箇所と不具合モードを精度良く特定することができるという効果がある。
【図面の簡単な説明】
【0009】
【図1】この発明の実施の形態1による自己診断装置の構成を示すブロック図である。
【図2】実施の形態1における第1のデータ処理部による動作の流れを示すフローチャートである。
【図3】第1のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートである。
【図4】第1のデータ処理部が自己診断モードで出力する信号を示す図である。
【図5】実施の形態1における第2のデータ処理部による動作の流れを示すフローチャートである。
【図6】第2のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートである。
【図7】自己診断モードにおいて信号線の正常時に第2のデータ処理部が入力する信号を示す図である。
【図8】信号線が短絡している際の第2のデータ処理部の入力データを示す図である。
【図9】信号線が開放となっている際の第2のデータ処理部の入力データを示す図である。
【図10】この発明の実施の形態2による自己診断装置の構成を示すブロック図である。
【図11】この発明の実施の形態3による自己診断装置の構成を示すブロック図である。
【図12】実施の形態3による第2のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートである。
【発明を実施するための形態】
【0010】
実施の形態1.
図1は、この発明の実施の形態1による自己診断装置の構成を示すブロック図である。図1において、実施の形態1による自己診断装置1は、送信側信号処理ブロック2、受信側信号処理ブロック5及び命令入力部8を備える。命令入力部8は、第1のデータ処理部3及び第2のデータ処理部7へ自己診断モードを設定する指令を入力する構成部である。また、送信側信号処理ブロック2は、自己診断モードで使用するデータを生成して送信する構成部であり、第1のデータ処理部3及び出力バッファ部4を備える。
【0011】
第1のデータ処理部3は、自己診断モードで使用するデータを生成する処理部であり、出力バッファ部4は、第1のデータ処理部3で生成されたデータを電気信号として信号線0〜3へ出力する出力バッファ0〜3を備える。なお、データ“1”は5V、データ“0”は0Vの電圧にて送信するものとする。また、入力バッファ0〜3は、入力インピーダンスを持っており、データ“1”とデータ“0”との間の閾値は、2.5Vであるものとする。
【0012】
自己診断モードで使用するデータとは、複数の信号線の電位レベルを並列に設定して得られるデータであり、ハイレベルに相当する“1”から始まって隣接する信号線で交互に“1”と“0”とが入れ替わるデータ、ローレベルに相当する“0”から始まって隣接する信号線で交互に“1”と“0”とが入れ替わるデータ、全ての信号線で“1”となるデータ及び全ての信号線で“0”となるデータ、といった4種類のパターンデータである。信号線0〜3であれば、互いに相補する(1010)と(0101)及び(1111)と(0000)という相補データとなる。
【0013】
受信側信号処理ブロック5は、自己診断モードにおいて、送信側信号処理ブロック2側から受信したデータに基づいて自己診断を実行する構成部であり、入力バッファ部6及び第2のデータ処理部7を備える。入力バッファ部6は、信号線0〜3を介して送信されてきた電気信号を、第2のデータ処理部7へ出力する入力バッファ0〜3を備える。第2のデータ処理部7は、自己診断モードにおいて、入力バッファ0〜3を介して上述のパターンデータを順次入力し、これらのパターンデータに基づいて信号線0〜3における不具合の発生箇所と不具合モードとを特定する処理部である。
【0014】
また、第2のデータ処理部7は、第1のデータ処理部3から自己診断モードのデータを受信することで得た自己診断モード処理のステータスを、信号線aを介して第1のデータ処理部3へ返す。第1のデータ処理部3は、ステータスを得ると、上述のパターンデータを自己診断モードのデータとして順次生成し、第2のデータ処理部7側へ送信する。
【0015】
次に動作について説明する。
図2は、実施の形態1における第1のデータ処理部による動作の流れを示すフローチャートであり、第1のデータ処理部3のメインルーチンの処理を示している。
先ず、第1のデータ処理部3は、メインルーチンの処理を開始すると(ステップST1)、命令入力部8からの入力を受け付け、自己診断モードの指示があるか否かを判定する(ステップST2)。ここで、自己診断モードの指示がなければ(ステップST2;NO)、第1のデータ処理部3は、通常動作モードで動作する(ステップST3)。
【0016】
一方、自己診断モードの指示を受けると(ステップST2;YES)、第1のデータ処理部3は、自己診断モードで動作する(ステップST4)。ここでは、第1のデータ処理部3が、予め保持しているデータを第2のデータ処理部7へ出力する。自己診断モードにおける処理の詳細は後述する。
【0017】
第2のデータ処理部7は、第1のデータ処理部3から、信号線0〜3を介して受信したデータに基づいて、信号線0〜3の不具合発生及び不具合モードの自己診断を実行する。第2のデータ処理部7による自己診断結果は、第1のデータ処理部3へ送信される。
【0018】
第1のデータ処理部3は、第2のデータ処理部7から受信した自己診断結果が正常であったか否かを判定する(ステップST5)。ここで、自己診断結果が正常であれば(ステップST5;YES)、第1のデータ処理部3は、ステップST3へ移行し、通常動作モードで動作する。一方、自己診断結果が正常でなければ(ステップST5;NO)、第1のデータ処理部3は、エラー終了する(ステップST6)。
【0019】
図3は、第1のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートであり、図2のステップST4の処理に相当する。また、図4は、第1のデータ処理部3が自己診断モードで出力する信号を示す図である。図4に示すように、第1のデータ処理部3が自己診断モードで出力する信号は、信号線0〜3のそれぞれに並列して出力した論理値からなるINPUT1=A1、INPUT2=A2、INPUT3=A3、INPUT4=A4の4種類の信号データである。
【0020】
自己診断モードが指示されると、先ず、第1のデータ処理部3は、保持するINPUT1のデータA1(1010)を並列データとして出力バッファ0〜3を介して送信側信号処理ブロック2から出力する(ステップST4−1)。このとき、第1のデータ処理部3内のタイマが、INPUT1のデータA1を出力した時間からの経過時間を計時する。
【0021】
所定の時間が経過すると、第1のデータ処理部3は、保持するINPUT2のデータA2(0101)を並列データとして出力バッファ0〜3を介して送信側信号処理ブロック2から出力する(ステップST4−2)。INPUT2のデータA2を出力すると、第1のデータ処理部3は、図2のステップST5の処理へ移行する。
【0022】
なお、INPUT1,2と同様に、第1のデータ処理部3が、INPUT2のデータA2を出力してから所定時間経過後に、INPUT3のデータA3(1111)を並列データとして出力バッファ0〜3を介して送信側信号処理ブロック2から出力し、その所定時間経過後に、INPUT4のデータA4(0000)を並列データとして出力バッファ0〜3を介して送信側信号処理ブロック2から出力するようにしてもよい。
【0023】
図5は、実施の形態1における第2のデータ処理部による動作の流れを示すフローチャートであり、第2のデータ処理部7のメインルーチンの処理を示している。
先ず、第2のデータ処理部7は、メインルーチンの処理を開始すると(ステップST1a)、第1のデータ処理部3と同様に、命令入力部8からの入力を受け付けて、自己診断モードの指示があるか否かを判定する(ステップST2a)。ここで、自己診断モードの指示がなければ(ステップST2a;NO)、第2のデータ処理部7は、通常動作モードで動作する(ステップST3a)。
【0024】
一方、自己診断モードの指示を受けると(ステップST2a;YES)、第2のデータ処理部7は、自己診断モードで動作する(ステップST4a)。ここでは、第2のデータ処理部7が、送信側信号処理ブロック2から受信した自己診断モードで使用するデータに基づいて、信号線0〜3の不具合状況及びその不具合モードを特定する自己診断を行い、自己診断結果を第1のデータ処理部3へ出力する。自己診断モードにおける処理の詳細は後述する。
【0025】
第2のデータ処理部7は、送信側信号処理ブロック2から受信したデータに基づく自己診断の結果が正常であったか否かを判定する(ステップST5a)。ここで、自己診断結果が正常であれば(ステップST5a;YES)、第2のデータ処理部7は、ステップST3aへ移行し、通常動作モードで動作する。一方、自己診断結果が正常でなければ(ステップST5a;NO)、第2のデータ処理部7は、エラー終了する(ステップST6a)。
【0026】
図6は、第2のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートであり、図5のステップST4aの処理に相当する。また、図7は、自己診断モードにおいて信号線の正常時に第2のデータ処理部が入力する信号を示す図である。図7に示すように、第2のデータ処理部7が自己診断モードで入力する信号は、信号線0〜3のそれぞれに並列して入力した論理値からなるOUTPUT1=B1、OUTPUT2=B2、OUTPUT3=B3、OUTPUT4=B4の4種類の信号データである。
【0027】
自己診断モードが指示されると、第2のデータ処理部7は、送信側信号処理ブロック2からのINPUT1のデータA1とINPUT2のデータA2を、入力バッファ0〜3を介して並列データとして入力することにより、OUTPUT1=B1、OUTPUT2=B2を、この順で受信側信号処理ブロック5に取り込む(ステップST4a−1)。
【0028】
次に、第2のデータ処理部7は、OUTPUT1=INPUT1で、かつOUTPUT2=INPUT2であるか否かを判定する(ステップST4a−2)。ここで、図7に示すように、OUTPUT1=INPUT1(1010)で、かつOUTPUT2=INPUT2(0101)であると(ステップST4a−2;YES)、第2のデータ処理部7は、信号線0〜3が正常であると診断し、信号線aを介してステータスを第1のデータ処理部3へ返す(ステップST4a−3)。この後、第2のデータ処理部7は、自己診断の結果が正常であるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−4)。
【0029】
一方、OUTPUT1=INPUT1(1010)で、かつOUTPUT2=INPUT2(0101)でない場合(ステップST4a−2;NO)に、第2のデータ処理部7は、OUTPUT1のデータB1について信号線0〜3に対応する各ビットの値をb1n(n=0〜3)とし、OUTPUT2のデータB2について信号線0〜3に対応する各ビットの値をb2n(n=0〜3)として、n=0〜2のうち、b1n=b1n+1、かつb2n=b2n+1が成立するnの値が存在するか否かを判定する(ステップST4a−5)。
【0030】
ここで、b1n=b1n+1、かつb2n=b2n+1が成立するnの値が存在する場合(ステップST4a−5;YES)、第2のデータ処理部7は、当該関係が成立するnで特定される信号線nと信号線n+1との間で短絡が発生していると判断し、信号線aを介してステータスを第1のデータ処理部3へ返す(ステップST4a−6)。この後、第2のデータ処理部7は、信号線nと信号線n+1との間で短絡が発生している不具合があるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−7)。これにより、不具合モードが短絡であり、短絡の発生箇所が信号線nと信号線n+1との間であることが特定される。
【0031】
図8は、信号線が短絡している際の第2のデータ処理部の入力データを示す図であり、信号線0と信号線1との間で短絡が発生している場合を示している。なお、図8は、出力バッファ0〜3及び入力バッファ0〜3が5V電源で、出力バッファ0〜3の出力インピーダンスが50Ωであり、入力バッファ0〜3の入力インピーダンスが1KΩ(対グランド(GND)間)で、入力バッファ0〜3の閾値が2.5Vである場合を示している。
【0032】
図8に示す例では、データB1の信号線0に対応するビット値b10が論理値“1”であるべきところ、論理値“0”となっており、データB2の信号線1に対応するビット値b21が論理値“1”であるべきところ、論理値“0”となっている。
従来では、各データB1,B2が、その期待値(1010)、(0101)と等しいか否かで不具合の発生のみを判定するものであった。このため、不具合の箇所と内容を特定することができなかった。
【0033】
これに対して、本発明では、b1n=b1n+1、かつb2n=b2n+1が成立するnが存在するか否かを判定することにより、信号線間の短絡及びその発生箇所を特定することができる。つまり、2つの隣り合う信号線は、本来、相異なる論理値であるところ、信号線が短絡して、図8のように同一の論理値になっていると推測することができる。図8では、上記の関係をn=0が満たすので、不具合モードが短絡であり、短絡の発生箇所が信号線0と信号線1との間であることが特定される。なお、論理値が“0”で同一になった場合を示したが、論理値“1”で同一になるように設計することも可能である。
【0034】
また、b1n=b1n+1、かつb2n=b2n+1が成立するnの値が存在しなければ(ステップST4a−5;NO)、第2のデータ処理部7は、n=1〜3のうち、b1nとb2nとの排他的論理和を演算した結果が論理値“1”でないnの値が存在するか否かを判定する(ステップST4a−8)。
【0035】
b1nとb2nとの排他的論理和が論理値“1”でないnの値が存在する場合(ステップST4a−8;YES)、第2のデータ処理部7は、当該関係が成立するnで特定される信号線nが開放していると判断し、信号線aを介してステータスを第1のデータ処理部3へ返す(ステップST4a−9)。この後、第2のデータ処理部7は、信号線nが開放している不具合があるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−10)。これにより、不具合モードが開放であり、開放の発生箇所が信号線nであることが特定される。
【0036】
図9は、信号線が開放(オープン)している際の第2のデータ処理部の入力データを示す図であり、信号線1に開放が発生している場合を示している。なお、図9は、図8と同様に、出力バッファ0〜3及び入力バッファ0〜3が5V電源で、出力バッファ0〜3の出力インピーダンスが50Ωであり、入力バッファ0〜3の入力インピーダンスが1KΩ(対グランド(GND)間)であり、入力バッファ0〜3の閾値が2.5Vである場合を示している。
【0037】
図9に示す例では、データB2の信号線1に対応するビット値b21が論理値“1”であるべきところ、論理値“0”となっている。
このような場合においても、従来では、各データB1,B2が、その期待値(1010)、(0101)と等しいか否かで不具合の発生のみを判定するものであったため、不具合の箇所と内容を特定することができなかった。
【0038】
これに対して、本発明では、b1nとb2nとの排他的論理和が論理値“1”でないnの値が存在するか否かを判定することにより、信号線の開放及びその発生箇所を特定することができる。つまり、2つの隣り合う信号線は、本来、相異なる論理値であるところ、信号線が開放して、図9のように同一の論理値になっていると推測することができる。図9では、上記の関係をn=1が満たすので、不具合モードが開放であり、開放の発生箇所が信号線1であることが特定される。
【0039】
なお、この後、OUTPUT1,2と同様に、第2のデータ処理部7が、OUTPUT3=B3、OUTPUT4=B4を、この順で取り込んでいる場合、データB3の信号線1に対応するビット値b31が論理値“1”であるか否かを判定して、信号線1が論理値“0”となっていることを確認してから、信号線1が開放していると判断してもよい。
図9の例では、データB3(1111)の信号線1に対応するビット値b31が論理値“0”となっており、データB1,B2での診断結果と合わせて確実に信号線1の開放を特定することができる。
【0040】
一方、b1nとb2nとの排他的論理和が論理値“1”でないnの値が存在しない場合(ステップST4a−8;NO)、第2のデータ処理部7は、起こり得ない不条理モードであると判断し、信号線aを介してステータスを第1のデータ処理部3へ返す(ステップST4a−11)。この後、第2のデータ処理部7は、不条理モードであるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−12)。これにより、信号線0〜3のハード的な不具合でなく、データ送信時のソフト的な誤りによる不条理モードが発生したものとして、再び自己診断を促す。
【0041】
以上のように、この実施の形態1によれば、出力バッファ部4に接続する複数の信号線0〜3の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信するとともに、複数の信号線0〜3を介して出力バッファ部4と接続する入力バッファ部6でパターンデータを順次受信し、パターンデータ間の信号線ごとの論理値又は信号線ごとの論理値の論理演算値から、複数の信号線0〜3における短絡又は開放の発生及びその発生箇所を判定する。
特に、送信側信号処理ブロック2から順次送信されるパターンデータが、論理値1から始まって隣接する信号線で交互に論理値1と論理値0が入れ替わるパターンデータ、及び論理値0から始まって隣接する信号線で交互に論理値1と論理値0が入れ替わるパターンデータであり、受信側信号処理ブロック5の第2のデータ処理部7が、順次受信したパターンデータの双方で隣接する信号線の論理値が同一である場合、当該信号線間が短絡していると判定し、パターンデータ間で対応する信号線の論理値を排他的論理和した値が論理値1でない場合、当該信号線が開放していると判定する。
このようにすることで、信号線における不具合の発生箇所と不具合モードとを精度良く特定することができる。
【0042】
実施の形態2.
図10は、この発明の実施の形態2による自己診断装置の構成を示すブロック図である。図10において、実施の形態2における自己診断装置1Aは、上記実施の形態1で図1を用いて説明した構成に加えて、信号線0〜3のそれぞれに抵抗9−0〜9−3の一端を接続し、他端をグランド(GND)に接続している。抵抗9−0〜9−3は、出力バッファ0〜3の出力インピーダンスに相当する値の抵抗である。なお、図1と同一符号を付した構成は同一又はそれに相当する機能を有するので説明を省略する。
【0043】
出力バッファ0〜3の出力インピーダンスに相当する値の抵抗9−0〜9−3を設けることで、信号線同士の短絡によって入力バッファ0〜3における電圧の変化を大きくすることができる。例えば、入力バッファ0〜3及び出力バッファ0〜3が、5V電源で、入力インピーダンス及び出力インピーダンスが共に50Ωである場合に、信号線同士が短絡すると、入力バッファ0〜3への入力電位は1.25Vとなり、大きく電圧が低下する。これにより、隣接する信号線間にて短絡しているときは、2.5Vの閾値で確実にデータ“0”と判別できる。
【0044】
以上のように、この実施の形態2によれば、信号線0〜3のそれぞれとグランド(GND)との間に、出力バッファ0〜3の出力インピーダンスに相当する値の抵抗9−0〜9−3を接続したので、信号線同士の短絡を容易に検知することができる。
【0045】
実施の形態3.
図11は、この発明の実施の形態3による自己診断装置の構成を示すブロック図である。図11において、実施の形態3における自己診断装置1Bは、上記実施の形態2で図10を用いて説明した構成に加えて、信号線0〜3と抵抗9−0〜9−3との間にスイッチ10−0〜10−3をそれぞれ接続している。スイッチ10−0〜10−3(以下、SW10と適宜総称する)は、通常動作モードのときはオフ(開状態)として、入力バッファ0〜3の入力インピーダンスが高い状態となり、自己診断モードのときはオン(閉状態)となり、入力バッファ0〜3の入力インピーダンスが低い状態になるようにする。なお、図1及び図10と同一符号を付した構成は同一又はそれに相当する機能を有するので説明を省略する。
【0046】
次に動作について説明する。
ここでは、第2のデータ処理部7による自己診断モードの処理を述べる。
図12は、実施の形態3による第2のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートであり、図5のステップST4aの処理に相当する。
自己診断モードが指示されると、先ず、第2のデータ処理部7は、SW10をオン(閉状態)とする(ステップST4a−0)。
続いて、上記実施の形態1と同様に、ステップST4a−1からステップST4a−3までの処理が完了し、信号線0〜3に不具合がないと判定すると、SW10がオフ(開状態)とする(ステップST4a−3−1)。
この後、第2のデータ処理部7は、自己診断の結果が正常であるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−4)。
【0047】
また、上記実施の形態1と同様に、ステップST4a−1、ステップST4a−2、ステップST4a−5及びステップST4a−6までの処理が完了し、信号線nと信号線n+1との間で短絡が発生している不具合があると判定すると、第2のデータ処理部7は、SW10がオフ(開状態)とした上で(ステップST4a−6−1)、メインルーチンの処理(図5のステップST5a)へ戻る(ステップST4a−7)。これにより、不具合モードが短絡であり、短絡の発生箇所が信号線nと信号線n+1との間であることが特定される。
【0048】
さらに、上記実施の形態1と同様に、ステップST4a−1、ステップST4a−2、ステップST4a−5、ステップST4a−8及びステップST4a−9までの処理が完了し、信号線nが、開放が発生している不具合があると判定すると、第2のデータ処理部7は、SW10がオフ(開状態)とした上で(ステップST4a−9−1)、メインルーチンの処理(図5のステップST5a)へ戻る(ステップST4a−7)。これにより、不具合モードが開放であり、開放の発生箇所が信号線nであることが特定される。
【0049】
さらに、上記実施の形態1と同様に、ステップST4a−1、ステップST4a−2、ステップST4a−5、ステップST4a−8及びステップST4a−11までの処理が完了し、起こり得ない不条理モードになったと判定すると、第2のデータ処理部7は、SW10はオフ(開状態)とした上で(ステップST4a−11−1)、メインルーチンの処理(図5のステップST5a)へ戻る(ステップST4a−12)。これにより、信号線0〜3のハード的な不具合でなく、データ送信時のソフト的な誤りによる不条理モードが発生したものとして、再び自己診断を促す。
【0050】
以上のように、この実施の形態3によれば、信号線0〜3と抵抗9−0〜9−3との間にスイッチ10−0〜10−3をそれぞれ接続し、スイッチ10−0〜10−3を、通常動作モードではオフ(開状態)とし、自己診断モードでオン(閉状態)としたので、通常動作時はノイズに強い状態で使用することが可能で、同時に自己診断モードでは信号線同士の短絡を容易に検知でき、誤検知を防ぐことができる。
【0051】
なお、上記実施の形態1〜3までに示した自己診断装置1〜1Bの機能を、信号線0〜3を有する電子機器に適用すれば、上記実施の形態1〜3までに示した自己診断機能を有する電子機器を実現することができる。
【符号の説明】
【0052】
1,1A,1B 自己診断装置、2 送信側信号処理ブロック、3 第1のデータ処理部、4 出力バッファ部、5 受信側信号処理ブロック、6 入力バッファ部、7 第2のデータ処理部、8 命令入力部、9−0〜9−3 抵抗、10,10−0〜10−3 スイッチ(SW)。
【技術分野】
【0001】
この発明は、信号線の不具合を自己診断する自己診断装置、自己診断方法及び自己診断機能を備えた電子機器に関するものである。
【背景技術】
【0002】
例えば、特許文献1には、信号線の不具合を自己診断する装置が開示されている。この装置は、メモリに記憶したテストパターンと、フレキシブル基板(FPC)を通じてパラレルバスの線路通過後に受信されるパラレルデータ(期待値)とを比較して、両者が一致しない場合に、パラレルバスで接続不良が発生したものとしてドライバ回路の動作を停止させる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−293054号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来の技術では、テストパターンを、パラレルバスにおける隣接する線路で信号の電圧がハイ(1)とロー(0)で交互に異なる値としている。例えば、パラレルバスが4つの線路で構成されている場合、(1010)又は(0101)が、テストパターンとなる。この場合、誤りがある線路の組み合わせによっては、不良を検知できないという課題があった。例えば、テストパターンのいずれかのビットの値が“1”であり、このビットに対応するパラレルバスの線路が開放モードで“1”になる場合、開放モードの不具合が発生しても正常な値と区別がつかない。
【0005】
また、パラレルバスの隣接した線路が互いに同一値を示すとき、不具合と判定するが、開放モード及び短絡モードのいずれにおいても同一値となる場合がある。このため、発生した不具合が、開放モードであるのか、短絡モードであるのかを特定することができなかった。
【0006】
この発明は、上記のような課題を解決するためになされたもので、信号線における不具合の発生箇所と不具合モードとを精度良く特定することができる自己診断装置、自己診断方法及び自己診断機能を備えた電子機器を得ることを目的とする。
【課題を解決するための手段】
【0007】
この発明に係る自己診断装置は、複数の信号線に接続する出力バッファ部と、出力バッファ部に接続する複数の信号線の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信する第1のデータ処理部とを有する送信側信号処理ブロックと、複数の信号線を介して出力バッファ部と接続する入力バッファ部と、入力バッファ部でパターンデータを順次受信し、パターンデータ間の信号線ごとの論理値又は信号線ごとの論理値の論理演算値から、複数の信号線における短絡又は開放の発生及びその発生箇所を判定する受信側信号処理ブロックとを備えるものである。
【発明の効果】
【0008】
この発明によれば、出力バッファ部に接続する複数の信号線の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信するとともに、複数の信号線を介して出力バッファ部と接続する入力バッファ部でパターンデータを順次受信し、パターンデータ間の信号線ごとの論理値又は信号線ごとの論理値の論理演算値から、複数の信号線における短絡又は開放の発生及びその発生箇所を判定する。このようにすることで、信号線における不具合の発生箇所と不具合モードを精度良く特定することができるという効果がある。
【図面の簡単な説明】
【0009】
【図1】この発明の実施の形態1による自己診断装置の構成を示すブロック図である。
【図2】実施の形態1における第1のデータ処理部による動作の流れを示すフローチャートである。
【図3】第1のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートである。
【図4】第1のデータ処理部が自己診断モードで出力する信号を示す図である。
【図5】実施の形態1における第2のデータ処理部による動作の流れを示すフローチャートである。
【図6】第2のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートである。
【図7】自己診断モードにおいて信号線の正常時に第2のデータ処理部が入力する信号を示す図である。
【図8】信号線が短絡している際の第2のデータ処理部の入力データを示す図である。
【図9】信号線が開放となっている際の第2のデータ処理部の入力データを示す図である。
【図10】この発明の実施の形態2による自己診断装置の構成を示すブロック図である。
【図11】この発明の実施の形態3による自己診断装置の構成を示すブロック図である。
【図12】実施の形態3による第2のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートである。
【発明を実施するための形態】
【0010】
実施の形態1.
図1は、この発明の実施の形態1による自己診断装置の構成を示すブロック図である。図1において、実施の形態1による自己診断装置1は、送信側信号処理ブロック2、受信側信号処理ブロック5及び命令入力部8を備える。命令入力部8は、第1のデータ処理部3及び第2のデータ処理部7へ自己診断モードを設定する指令を入力する構成部である。また、送信側信号処理ブロック2は、自己診断モードで使用するデータを生成して送信する構成部であり、第1のデータ処理部3及び出力バッファ部4を備える。
【0011】
第1のデータ処理部3は、自己診断モードで使用するデータを生成する処理部であり、出力バッファ部4は、第1のデータ処理部3で生成されたデータを電気信号として信号線0〜3へ出力する出力バッファ0〜3を備える。なお、データ“1”は5V、データ“0”は0Vの電圧にて送信するものとする。また、入力バッファ0〜3は、入力インピーダンスを持っており、データ“1”とデータ“0”との間の閾値は、2.5Vであるものとする。
【0012】
自己診断モードで使用するデータとは、複数の信号線の電位レベルを並列に設定して得られるデータであり、ハイレベルに相当する“1”から始まって隣接する信号線で交互に“1”と“0”とが入れ替わるデータ、ローレベルに相当する“0”から始まって隣接する信号線で交互に“1”と“0”とが入れ替わるデータ、全ての信号線で“1”となるデータ及び全ての信号線で“0”となるデータ、といった4種類のパターンデータである。信号線0〜3であれば、互いに相補する(1010)と(0101)及び(1111)と(0000)という相補データとなる。
【0013】
受信側信号処理ブロック5は、自己診断モードにおいて、送信側信号処理ブロック2側から受信したデータに基づいて自己診断を実行する構成部であり、入力バッファ部6及び第2のデータ処理部7を備える。入力バッファ部6は、信号線0〜3を介して送信されてきた電気信号を、第2のデータ処理部7へ出力する入力バッファ0〜3を備える。第2のデータ処理部7は、自己診断モードにおいて、入力バッファ0〜3を介して上述のパターンデータを順次入力し、これらのパターンデータに基づいて信号線0〜3における不具合の発生箇所と不具合モードとを特定する処理部である。
【0014】
また、第2のデータ処理部7は、第1のデータ処理部3から自己診断モードのデータを受信することで得た自己診断モード処理のステータスを、信号線aを介して第1のデータ処理部3へ返す。第1のデータ処理部3は、ステータスを得ると、上述のパターンデータを自己診断モードのデータとして順次生成し、第2のデータ処理部7側へ送信する。
【0015】
次に動作について説明する。
図2は、実施の形態1における第1のデータ処理部による動作の流れを示すフローチャートであり、第1のデータ処理部3のメインルーチンの処理を示している。
先ず、第1のデータ処理部3は、メインルーチンの処理を開始すると(ステップST1)、命令入力部8からの入力を受け付け、自己診断モードの指示があるか否かを判定する(ステップST2)。ここで、自己診断モードの指示がなければ(ステップST2;NO)、第1のデータ処理部3は、通常動作モードで動作する(ステップST3)。
【0016】
一方、自己診断モードの指示を受けると(ステップST2;YES)、第1のデータ処理部3は、自己診断モードで動作する(ステップST4)。ここでは、第1のデータ処理部3が、予め保持しているデータを第2のデータ処理部7へ出力する。自己診断モードにおける処理の詳細は後述する。
【0017】
第2のデータ処理部7は、第1のデータ処理部3から、信号線0〜3を介して受信したデータに基づいて、信号線0〜3の不具合発生及び不具合モードの自己診断を実行する。第2のデータ処理部7による自己診断結果は、第1のデータ処理部3へ送信される。
【0018】
第1のデータ処理部3は、第2のデータ処理部7から受信した自己診断結果が正常であったか否かを判定する(ステップST5)。ここで、自己診断結果が正常であれば(ステップST5;YES)、第1のデータ処理部3は、ステップST3へ移行し、通常動作モードで動作する。一方、自己診断結果が正常でなければ(ステップST5;NO)、第1のデータ処理部3は、エラー終了する(ステップST6)。
【0019】
図3は、第1のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートであり、図2のステップST4の処理に相当する。また、図4は、第1のデータ処理部3が自己診断モードで出力する信号を示す図である。図4に示すように、第1のデータ処理部3が自己診断モードで出力する信号は、信号線0〜3のそれぞれに並列して出力した論理値からなるINPUT1=A1、INPUT2=A2、INPUT3=A3、INPUT4=A4の4種類の信号データである。
【0020】
自己診断モードが指示されると、先ず、第1のデータ処理部3は、保持するINPUT1のデータA1(1010)を並列データとして出力バッファ0〜3を介して送信側信号処理ブロック2から出力する(ステップST4−1)。このとき、第1のデータ処理部3内のタイマが、INPUT1のデータA1を出力した時間からの経過時間を計時する。
【0021】
所定の時間が経過すると、第1のデータ処理部3は、保持するINPUT2のデータA2(0101)を並列データとして出力バッファ0〜3を介して送信側信号処理ブロック2から出力する(ステップST4−2)。INPUT2のデータA2を出力すると、第1のデータ処理部3は、図2のステップST5の処理へ移行する。
【0022】
なお、INPUT1,2と同様に、第1のデータ処理部3が、INPUT2のデータA2を出力してから所定時間経過後に、INPUT3のデータA3(1111)を並列データとして出力バッファ0〜3を介して送信側信号処理ブロック2から出力し、その所定時間経過後に、INPUT4のデータA4(0000)を並列データとして出力バッファ0〜3を介して送信側信号処理ブロック2から出力するようにしてもよい。
【0023】
図5は、実施の形態1における第2のデータ処理部による動作の流れを示すフローチャートであり、第2のデータ処理部7のメインルーチンの処理を示している。
先ず、第2のデータ処理部7は、メインルーチンの処理を開始すると(ステップST1a)、第1のデータ処理部3と同様に、命令入力部8からの入力を受け付けて、自己診断モードの指示があるか否かを判定する(ステップST2a)。ここで、自己診断モードの指示がなければ(ステップST2a;NO)、第2のデータ処理部7は、通常動作モードで動作する(ステップST3a)。
【0024】
一方、自己診断モードの指示を受けると(ステップST2a;YES)、第2のデータ処理部7は、自己診断モードで動作する(ステップST4a)。ここでは、第2のデータ処理部7が、送信側信号処理ブロック2から受信した自己診断モードで使用するデータに基づいて、信号線0〜3の不具合状況及びその不具合モードを特定する自己診断を行い、自己診断結果を第1のデータ処理部3へ出力する。自己診断モードにおける処理の詳細は後述する。
【0025】
第2のデータ処理部7は、送信側信号処理ブロック2から受信したデータに基づく自己診断の結果が正常であったか否かを判定する(ステップST5a)。ここで、自己診断結果が正常であれば(ステップST5a;YES)、第2のデータ処理部7は、ステップST3aへ移行し、通常動作モードで動作する。一方、自己診断結果が正常でなければ(ステップST5a;NO)、第2のデータ処理部7は、エラー終了する(ステップST6a)。
【0026】
図6は、第2のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートであり、図5のステップST4aの処理に相当する。また、図7は、自己診断モードにおいて信号線の正常時に第2のデータ処理部が入力する信号を示す図である。図7に示すように、第2のデータ処理部7が自己診断モードで入力する信号は、信号線0〜3のそれぞれに並列して入力した論理値からなるOUTPUT1=B1、OUTPUT2=B2、OUTPUT3=B3、OUTPUT4=B4の4種類の信号データである。
【0027】
自己診断モードが指示されると、第2のデータ処理部7は、送信側信号処理ブロック2からのINPUT1のデータA1とINPUT2のデータA2を、入力バッファ0〜3を介して並列データとして入力することにより、OUTPUT1=B1、OUTPUT2=B2を、この順で受信側信号処理ブロック5に取り込む(ステップST4a−1)。
【0028】
次に、第2のデータ処理部7は、OUTPUT1=INPUT1で、かつOUTPUT2=INPUT2であるか否かを判定する(ステップST4a−2)。ここで、図7に示すように、OUTPUT1=INPUT1(1010)で、かつOUTPUT2=INPUT2(0101)であると(ステップST4a−2;YES)、第2のデータ処理部7は、信号線0〜3が正常であると診断し、信号線aを介してステータスを第1のデータ処理部3へ返す(ステップST4a−3)。この後、第2のデータ処理部7は、自己診断の結果が正常であるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−4)。
【0029】
一方、OUTPUT1=INPUT1(1010)で、かつOUTPUT2=INPUT2(0101)でない場合(ステップST4a−2;NO)に、第2のデータ処理部7は、OUTPUT1のデータB1について信号線0〜3に対応する各ビットの値をb1n(n=0〜3)とし、OUTPUT2のデータB2について信号線0〜3に対応する各ビットの値をb2n(n=0〜3)として、n=0〜2のうち、b1n=b1n+1、かつb2n=b2n+1が成立するnの値が存在するか否かを判定する(ステップST4a−5)。
【0030】
ここで、b1n=b1n+1、かつb2n=b2n+1が成立するnの値が存在する場合(ステップST4a−5;YES)、第2のデータ処理部7は、当該関係が成立するnで特定される信号線nと信号線n+1との間で短絡が発生していると判断し、信号線aを介してステータスを第1のデータ処理部3へ返す(ステップST4a−6)。この後、第2のデータ処理部7は、信号線nと信号線n+1との間で短絡が発生している不具合があるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−7)。これにより、不具合モードが短絡であり、短絡の発生箇所が信号線nと信号線n+1との間であることが特定される。
【0031】
図8は、信号線が短絡している際の第2のデータ処理部の入力データを示す図であり、信号線0と信号線1との間で短絡が発生している場合を示している。なお、図8は、出力バッファ0〜3及び入力バッファ0〜3が5V電源で、出力バッファ0〜3の出力インピーダンスが50Ωであり、入力バッファ0〜3の入力インピーダンスが1KΩ(対グランド(GND)間)で、入力バッファ0〜3の閾値が2.5Vである場合を示している。
【0032】
図8に示す例では、データB1の信号線0に対応するビット値b10が論理値“1”であるべきところ、論理値“0”となっており、データB2の信号線1に対応するビット値b21が論理値“1”であるべきところ、論理値“0”となっている。
従来では、各データB1,B2が、その期待値(1010)、(0101)と等しいか否かで不具合の発生のみを判定するものであった。このため、不具合の箇所と内容を特定することができなかった。
【0033】
これに対して、本発明では、b1n=b1n+1、かつb2n=b2n+1が成立するnが存在するか否かを判定することにより、信号線間の短絡及びその発生箇所を特定することができる。つまり、2つの隣り合う信号線は、本来、相異なる論理値であるところ、信号線が短絡して、図8のように同一の論理値になっていると推測することができる。図8では、上記の関係をn=0が満たすので、不具合モードが短絡であり、短絡の発生箇所が信号線0と信号線1との間であることが特定される。なお、論理値が“0”で同一になった場合を示したが、論理値“1”で同一になるように設計することも可能である。
【0034】
また、b1n=b1n+1、かつb2n=b2n+1が成立するnの値が存在しなければ(ステップST4a−5;NO)、第2のデータ処理部7は、n=1〜3のうち、b1nとb2nとの排他的論理和を演算した結果が論理値“1”でないnの値が存在するか否かを判定する(ステップST4a−8)。
【0035】
b1nとb2nとの排他的論理和が論理値“1”でないnの値が存在する場合(ステップST4a−8;YES)、第2のデータ処理部7は、当該関係が成立するnで特定される信号線nが開放していると判断し、信号線aを介してステータスを第1のデータ処理部3へ返す(ステップST4a−9)。この後、第2のデータ処理部7は、信号線nが開放している不具合があるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−10)。これにより、不具合モードが開放であり、開放の発生箇所が信号線nであることが特定される。
【0036】
図9は、信号線が開放(オープン)している際の第2のデータ処理部の入力データを示す図であり、信号線1に開放が発生している場合を示している。なお、図9は、図8と同様に、出力バッファ0〜3及び入力バッファ0〜3が5V電源で、出力バッファ0〜3の出力インピーダンスが50Ωであり、入力バッファ0〜3の入力インピーダンスが1KΩ(対グランド(GND)間)であり、入力バッファ0〜3の閾値が2.5Vである場合を示している。
【0037】
図9に示す例では、データB2の信号線1に対応するビット値b21が論理値“1”であるべきところ、論理値“0”となっている。
このような場合においても、従来では、各データB1,B2が、その期待値(1010)、(0101)と等しいか否かで不具合の発生のみを判定するものであったため、不具合の箇所と内容を特定することができなかった。
【0038】
これに対して、本発明では、b1nとb2nとの排他的論理和が論理値“1”でないnの値が存在するか否かを判定することにより、信号線の開放及びその発生箇所を特定することができる。つまり、2つの隣り合う信号線は、本来、相異なる論理値であるところ、信号線が開放して、図9のように同一の論理値になっていると推測することができる。図9では、上記の関係をn=1が満たすので、不具合モードが開放であり、開放の発生箇所が信号線1であることが特定される。
【0039】
なお、この後、OUTPUT1,2と同様に、第2のデータ処理部7が、OUTPUT3=B3、OUTPUT4=B4を、この順で取り込んでいる場合、データB3の信号線1に対応するビット値b31が論理値“1”であるか否かを判定して、信号線1が論理値“0”となっていることを確認してから、信号線1が開放していると判断してもよい。
図9の例では、データB3(1111)の信号線1に対応するビット値b31が論理値“0”となっており、データB1,B2での診断結果と合わせて確実に信号線1の開放を特定することができる。
【0040】
一方、b1nとb2nとの排他的論理和が論理値“1”でないnの値が存在しない場合(ステップST4a−8;NO)、第2のデータ処理部7は、起こり得ない不条理モードであると判断し、信号線aを介してステータスを第1のデータ処理部3へ返す(ステップST4a−11)。この後、第2のデータ処理部7は、不条理モードであるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−12)。これにより、信号線0〜3のハード的な不具合でなく、データ送信時のソフト的な誤りによる不条理モードが発生したものとして、再び自己診断を促す。
【0041】
以上のように、この実施の形態1によれば、出力バッファ部4に接続する複数の信号線0〜3の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信するとともに、複数の信号線0〜3を介して出力バッファ部4と接続する入力バッファ部6でパターンデータを順次受信し、パターンデータ間の信号線ごとの論理値又は信号線ごとの論理値の論理演算値から、複数の信号線0〜3における短絡又は開放の発生及びその発生箇所を判定する。
特に、送信側信号処理ブロック2から順次送信されるパターンデータが、論理値1から始まって隣接する信号線で交互に論理値1と論理値0が入れ替わるパターンデータ、及び論理値0から始まって隣接する信号線で交互に論理値1と論理値0が入れ替わるパターンデータであり、受信側信号処理ブロック5の第2のデータ処理部7が、順次受信したパターンデータの双方で隣接する信号線の論理値が同一である場合、当該信号線間が短絡していると判定し、パターンデータ間で対応する信号線の論理値を排他的論理和した値が論理値1でない場合、当該信号線が開放していると判定する。
このようにすることで、信号線における不具合の発生箇所と不具合モードとを精度良く特定することができる。
【0042】
実施の形態2.
図10は、この発明の実施の形態2による自己診断装置の構成を示すブロック図である。図10において、実施の形態2における自己診断装置1Aは、上記実施の形態1で図1を用いて説明した構成に加えて、信号線0〜3のそれぞれに抵抗9−0〜9−3の一端を接続し、他端をグランド(GND)に接続している。抵抗9−0〜9−3は、出力バッファ0〜3の出力インピーダンスに相当する値の抵抗である。なお、図1と同一符号を付した構成は同一又はそれに相当する機能を有するので説明を省略する。
【0043】
出力バッファ0〜3の出力インピーダンスに相当する値の抵抗9−0〜9−3を設けることで、信号線同士の短絡によって入力バッファ0〜3における電圧の変化を大きくすることができる。例えば、入力バッファ0〜3及び出力バッファ0〜3が、5V電源で、入力インピーダンス及び出力インピーダンスが共に50Ωである場合に、信号線同士が短絡すると、入力バッファ0〜3への入力電位は1.25Vとなり、大きく電圧が低下する。これにより、隣接する信号線間にて短絡しているときは、2.5Vの閾値で確実にデータ“0”と判別できる。
【0044】
以上のように、この実施の形態2によれば、信号線0〜3のそれぞれとグランド(GND)との間に、出力バッファ0〜3の出力インピーダンスに相当する値の抵抗9−0〜9−3を接続したので、信号線同士の短絡を容易に検知することができる。
【0045】
実施の形態3.
図11は、この発明の実施の形態3による自己診断装置の構成を示すブロック図である。図11において、実施の形態3における自己診断装置1Bは、上記実施の形態2で図10を用いて説明した構成に加えて、信号線0〜3と抵抗9−0〜9−3との間にスイッチ10−0〜10−3をそれぞれ接続している。スイッチ10−0〜10−3(以下、SW10と適宜総称する)は、通常動作モードのときはオフ(開状態)として、入力バッファ0〜3の入力インピーダンスが高い状態となり、自己診断モードのときはオン(閉状態)となり、入力バッファ0〜3の入力インピーダンスが低い状態になるようにする。なお、図1及び図10と同一符号を付した構成は同一又はそれに相当する機能を有するので説明を省略する。
【0046】
次に動作について説明する。
ここでは、第2のデータ処理部7による自己診断モードの処理を述べる。
図12は、実施の形態3による第2のデータ処理部の自己診断モードにおける動作の流れを示すフローチャートであり、図5のステップST4aの処理に相当する。
自己診断モードが指示されると、先ず、第2のデータ処理部7は、SW10をオン(閉状態)とする(ステップST4a−0)。
続いて、上記実施の形態1と同様に、ステップST4a−1からステップST4a−3までの処理が完了し、信号線0〜3に不具合がないと判定すると、SW10がオフ(開状態)とする(ステップST4a−3−1)。
この後、第2のデータ処理部7は、自己診断の結果が正常であるとして、メインルーチンの処理(図5のステップST5a)へ移行する(ステップST4a−4)。
【0047】
また、上記実施の形態1と同様に、ステップST4a−1、ステップST4a−2、ステップST4a−5及びステップST4a−6までの処理が完了し、信号線nと信号線n+1との間で短絡が発生している不具合があると判定すると、第2のデータ処理部7は、SW10がオフ(開状態)とした上で(ステップST4a−6−1)、メインルーチンの処理(図5のステップST5a)へ戻る(ステップST4a−7)。これにより、不具合モードが短絡であり、短絡の発生箇所が信号線nと信号線n+1との間であることが特定される。
【0048】
さらに、上記実施の形態1と同様に、ステップST4a−1、ステップST4a−2、ステップST4a−5、ステップST4a−8及びステップST4a−9までの処理が完了し、信号線nが、開放が発生している不具合があると判定すると、第2のデータ処理部7は、SW10がオフ(開状態)とした上で(ステップST4a−9−1)、メインルーチンの処理(図5のステップST5a)へ戻る(ステップST4a−7)。これにより、不具合モードが開放であり、開放の発生箇所が信号線nであることが特定される。
【0049】
さらに、上記実施の形態1と同様に、ステップST4a−1、ステップST4a−2、ステップST4a−5、ステップST4a−8及びステップST4a−11までの処理が完了し、起こり得ない不条理モードになったと判定すると、第2のデータ処理部7は、SW10はオフ(開状態)とした上で(ステップST4a−11−1)、メインルーチンの処理(図5のステップST5a)へ戻る(ステップST4a−12)。これにより、信号線0〜3のハード的な不具合でなく、データ送信時のソフト的な誤りによる不条理モードが発生したものとして、再び自己診断を促す。
【0050】
以上のように、この実施の形態3によれば、信号線0〜3と抵抗9−0〜9−3との間にスイッチ10−0〜10−3をそれぞれ接続し、スイッチ10−0〜10−3を、通常動作モードではオフ(開状態)とし、自己診断モードでオン(閉状態)としたので、通常動作時はノイズに強い状態で使用することが可能で、同時に自己診断モードでは信号線同士の短絡を容易に検知でき、誤検知を防ぐことができる。
【0051】
なお、上記実施の形態1〜3までに示した自己診断装置1〜1Bの機能を、信号線0〜3を有する電子機器に適用すれば、上記実施の形態1〜3までに示した自己診断機能を有する電子機器を実現することができる。
【符号の説明】
【0052】
1,1A,1B 自己診断装置、2 送信側信号処理ブロック、3 第1のデータ処理部、4 出力バッファ部、5 受信側信号処理ブロック、6 入力バッファ部、7 第2のデータ処理部、8 命令入力部、9−0〜9−3 抵抗、10,10−0〜10−3 スイッチ(SW)。
【特許請求の範囲】
【請求項1】
複数の信号線に接続する出力バッファ部と、前記出力バッファ部に接続する前記複数の信号線の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信する第1のデータ処理部とを有する送信側信号処理ブロックと、
前記複数の信号線を介して前記出力バッファ部と接続する入力バッファ部と、前記入力バッファ部で前記パターンデータを順次受信し、前記パターンデータ間の前記信号線ごとの論理値又は前記信号線ごとの論理値の論理演算値から、前記複数の信号線における短絡又は開放の発生及びその発生箇所を判定する受信側信号処理ブロックとを備えた自己診断装置。
【請求項2】
前記送信側信号処理ブロックから順次送信されるパターンデータは、論理値1から始まって隣接する信号線で交互に論理値1と論理値0が入れ替わるパターンデータ、及び論理値0から始まって隣接する信号線で交互に論理値1と論理値0が入れ替わるパターンデータであり、
前記受信側信号処理ブロックの前記第2のデータ処理部は、順次受信した前記パターンデータの双方で隣接する信号線の論理値が同一である場合、当該信号線間が短絡していると判定し、前記パターンデータ間で対応する信号線の論理値を排他的論理和した値が論理値1でない場合、当該信号線が開放していると判定することを特徴とする請求項1記載の自己診断装置。
【請求項3】
前記複数の信号線のそれぞれと接地電位との間に、前記入力バッファ部の入力インピーダンスとなる抵抗を設け、前記入力バッファ部の論理レベル判定を容易にすることを特徴とする請求項1または請求項2記載の自己診断装置。
【請求項4】
前記複数の信号線のそれぞれと前記抵抗との間に、前記信号線と前記抵抗の接続を開閉するスイッチを備え、自己診断時に前記スイッチを閉状態にすることを特徴とする請求項3記載の自己診断装置。
【請求項5】
出力バッファ部に接続する複数の信号線の各電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを少なくとも互いに相補する相補データとして順次送信するステップと、
前記複数の信号線を介して前記出力バッファ部と接続する入力バッファ部で前記パターンデータを順次受信し、前記パターンデータ間の前記信号線ごとの論理値又は前記信号線ごとの論理値の論理演算値から、前記複数の信号線における短絡又は開放の発生及びその発生箇所を判定するステップとを備えた自己診断方法。
【請求項6】
出力バッファ部に接続する複数の信号線の各電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを少なくとも互いに相補する相補データとして順次送信するとともに、前記複数の信号線を介して前記出力バッファ部と接続する入力バッファ部で前記パターンデータを順次受信し、前記パターンデータ間の前記信号線ごとの論理値又は前記信号線ごとの論理値の論理演算値から、前記複数の信号線における短絡又は開放の発生及びその発生箇所を判定する自己診断機能を備えた電子機器。
【請求項1】
複数の信号線に接続する出力バッファ部と、前記出力バッファ部に接続する前記複数の信号線の電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを、少なくとも互いに相補する相補データとして順次送信する第1のデータ処理部とを有する送信側信号処理ブロックと、
前記複数の信号線を介して前記出力バッファ部と接続する入力バッファ部と、前記入力バッファ部で前記パターンデータを順次受信し、前記パターンデータ間の前記信号線ごとの論理値又は前記信号線ごとの論理値の論理演算値から、前記複数の信号線における短絡又は開放の発生及びその発生箇所を判定する受信側信号処理ブロックとを備えた自己診断装置。
【請求項2】
前記送信側信号処理ブロックから順次送信されるパターンデータは、論理値1から始まって隣接する信号線で交互に論理値1と論理値0が入れ替わるパターンデータ、及び論理値0から始まって隣接する信号線で交互に論理値1と論理値0が入れ替わるパターンデータであり、
前記受信側信号処理ブロックの前記第2のデータ処理部は、順次受信した前記パターンデータの双方で隣接する信号線の論理値が同一である場合、当該信号線間が短絡していると判定し、前記パターンデータ間で対応する信号線の論理値を排他的論理和した値が論理値1でない場合、当該信号線が開放していると判定することを特徴とする請求項1記載の自己診断装置。
【請求項3】
前記複数の信号線のそれぞれと接地電位との間に、前記入力バッファ部の入力インピーダンスとなる抵抗を設け、前記入力バッファ部の論理レベル判定を容易にすることを特徴とする請求項1または請求項2記載の自己診断装置。
【請求項4】
前記複数の信号線のそれぞれと前記抵抗との間に、前記信号線と前記抵抗の接続を開閉するスイッチを備え、自己診断時に前記スイッチを閉状態にすることを特徴とする請求項3記載の自己診断装置。
【請求項5】
出力バッファ部に接続する複数の信号線の各電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを少なくとも互いに相補する相補データとして順次送信するステップと、
前記複数の信号線を介して前記出力バッファ部と接続する入力バッファ部で前記パターンデータを順次受信し、前記パターンデータ間の前記信号線ごとの論理値又は前記信号線ごとの論理値の論理演算値から、前記複数の信号線における短絡又は開放の発生及びその発生箇所を判定するステップとを備えた自己診断方法。
【請求項6】
出力バッファ部に接続する複数の信号線の各電位を並列に設定して、隣接する信号線で交互に異なる論理値のパターンデータを少なくとも互いに相補する相補データとして順次送信するとともに、前記複数の信号線を介して前記出力バッファ部と接続する入力バッファ部で前記パターンデータを順次受信し、前記パターンデータ間の前記信号線ごとの論理値又は前記信号線ごとの論理値の論理演算値から、前記複数の信号線における短絡又は開放の発生及びその発生箇所を判定する自己診断機能を備えた電子機器。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2011−226917(P2011−226917A)
【公開日】平成23年11月10日(2011.11.10)
【国際特許分類】
【出願番号】特願2010−96964(P2010−96964)
【出願日】平成22年4月20日(2010.4.20)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
【公開日】平成23年11月10日(2011.11.10)
【国際特許分類】
【出願日】平成22年4月20日(2010.4.20)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】
[ Back to top ]