(57)【要約】【課題】  ＵＳＢバスのデータ異常を検出し、ＵＳＢトランシーバ回路の電源を制御して過剰な負荷がかからないようにデバイスを保護する。【解決手段】  ＵＳＢトランシーバ回路１が通信に用いる一対のデータラインの論理値レベルが共に論理値“Ｈ”になるとき異常を検出するデータ異常検出回路３と、データ異常検出回路３の検出結果に基づいてＵＳＢトランシーバ回路１を保護するようにＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を制御するＧＮＤ制御回路４とを備えた。【選択図】        図１
2005085151.tif 000002
【特許請求の範囲】
【請求項１】
外部とＵＳＢ通信を行うＵＳＢトランシーバを備えるＵＳＢバッファ回路において、
前記ＵＳＢトランシーバが通信に用いる一対のデータラインの論理値レベルが共に論理値“Ｈ”になるとき異常を検出するデータ異常検出手段と、
前記データ異常検出手段の検出結果に基づいて前記ＵＳＢトランシーバを保護するように電源を制御する電源制御手段とを備えたことを特徴とするＵＳＢバッファ回路。
【請求項２】
外部とＵＳＢ通信を行うＵＳＢトランシーバと前記ＵＳＢトランシーバを制御するＵＳＢ制御手段とを備えるＵＳＢバッファ回路において、
前記ＵＳＢトランシーバが通信に用いるデータライン上の論理値レベルが同じレベルで所定のビット数以上連続するときデータの異常を検出するデータ異常検出手段と、
前記データ異常手段の検出結果に基づいて前記ＵＳＢトランシーバを保護するように電源を制御する電源制御手段とを備えたことを特徴とするＵＳＢバッファ回路。
【請求項３】
データ異常検出手段は、同じ論理値レベルで連続するビット数をカウントし、所定のカウント値になったとき電源制御手段に電源制御を行わせるデータ異常ビット数カウンタから成ることを特徴とする請求項２記載のＵＳＢバッファ回路。
【請求項４】
データ異常検出手段は、同じ論理値レベルで連続するビット数をカウントするデータ異常ビット数カウンタと、
異常判定に使用する閾値を記憶する記憶手段と、
前記記憶手段に記憶されている閾値と前記データ異常ビット数カウンタのカウント値とを比較する比較手段とを備え、
前記比較手段は、前記データ異常ビット数カウンタのカウント値が前記閾値以上となったとき電源制御手段に電源制御を行わせることを特徴とする請求項２記載のＵＳＢバッファ回路。
【請求項５】
データ異常検出手段は、ＵＳＢバスのＤ−データラインの論理値レベルが“Ｈ”で連続したとき異常と判定し、
電源制御手段は、前記データ異常検出手段が異常を検出したときＵＳＢトランシーバのＧＮＤ接続を開放することを特徴とする請求項２記載のＵＳＢバッファ回路。
【請求項６】
データ異常検出手段が検出した異常回数をカウントし、前記カウント値が所定の値になったとき電源制御手段に電源制御を行わせるデータ異常回数カウンタを備えたことを特徴とする請求項１または請求項２記載のＵＳＢバッファ回路。
【請求項７】
データ異常検出手段が検出した異常回数をカウントするデータ異常回数カウンタと、
許容する前記異常回数を閾値として記憶する異常回数設定手段と、
前記異常回数設定手段に記憶されている閾値と前記データ異常回数カウンタのカウント値とを比較する比較手段とを備え、
前記比較手段は、前記データ異常回数カウンタのカウント値が前記閾値以上となったとき電源制御手段に電源制御を行わせることを特徴とする請求項１または請求項２記載のＵＳＢバッファ回路。
【請求項８】
外部から異常検出を行うか否かを設定させる異常検出設定手段を備え、
データ異常検出手段は、前記異常検出設定手段の設定に基づいて異常検出機能を有効あるいは無効にすることを特徴とする請求項１または請求項２記載のＵＳＢバッファ回路。
【請求項９】
外部とＵＳＢ通信を行うＵＳＢトランシーバを備えるＵＳＢバッファ回路において、
ＵＳＢバスとＶＢＵＳ電源ラインとの短絡及び前記ＵＳＢバスとＧＮＤラインとの短絡を検出するデータ異常検出手段と、
前記データ異常検出手段が、前記ＵＳＢバスと前記ＶＢＵＳ電源ラインとの短絡を検出したとき前記ＵＳＢトランシーバのＧＮＤ接続を開放し、前記ＵＳＢバスと前記ＧＮＤラインとの短絡を検出したとき前記ＵＳＢトランシーバのＶＢＵＳ電源接続を開放する電源制御手段を備えたことを特徴とするＵＳＢバッファ回路。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＬＳＩ等のデバイスに備えられるＵＳＢバッファ回路に関するものである。
【背景技術】
【０００２】
近年のプロセス微細化によりＬＳＩ等のデバイスの低電圧化が進められ、デバイス自身の耐圧は、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（以下、ＵＳＢと記載する）規格に規定されるＶＢＵＳの５Ｖ耐圧を満足することが難しくなってきている。
【０００３】
従来のＵＳＢバッファ回路は、外部とＵＳＢ規格に則ってデータの送受信を行うＵＳＢトランシーバ回路と、ＵＳＢトランシーバ回路の動作を制御するＵＳＢ制御回路とを備える。ＵＳＢ制御回路は、ＵＳＢトランシーバ回路から当該デバイスのＶＢＵＳ端子、Ｄ＋端子、Ｄ−端子の状態を取得し、これらの各端子の状態に応じてＤ＋／Ｄ−データラインを用いる入出力データの制御、およびＵＳＢトランシーバ回路による所定のデータ処理動作の制御を行う。このようなＵＳＢバッファ回路を備えるデバイスは、ＵＳＢ制御回路による制御によってＵＳＢトランシーバ回路を動作させ、Ｄ＋／Ｄ−データラインを用いてホストと、即ちＵＳＢドライバ等のソフトウエアに基づいて動作する制御装置等とＵＳＢ通信を行う。
【０００４】
また、ＵＳＢデバイスと接続されるコンピュータシステムに、接続相手のＵＳＢデバイスを制御するＵＳＢコントローラを備え、このＵＳＢコントローラが自ら備える差動入力バッファの電源を制御して消費電力を抑制するものがある。このコンピュータシステムは前述のホストに相当するもので、ＵＳＢコントローラがＵＳＢポートの使用状況を監視してＵＳＢデバイスからデータ転送が行われていないことを検出したとき、差動入力バッファのパワーダウン制御を行っている。（例えば、特許文献１参照）
【０００５】
【特許文献１】特開平１１−２０５４１２号公報（第５頁、図２〜図４）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来のＵＳＢバッファ回路は以上のように構成されているので、ホスト等と接続されるデバイスは、ＵＳＢケーブルの破損などによりＶＢＵＳ電源がＤ＋／Ｄ−データラインとショートした場合に、接続相手の例えばホストやハブ側でＶＢＵＳ電源供給を停止するまで、デバイスのＤ＋端子またはＤ−端子に異常な電圧が印加され、過剰な負荷がかかるという課題があった。
【０００７】
この発明は、上記のような課題を解決するためになされたもので、第１の目的は、ＵＳＢバスにより送受信されるデータから異常が検出されたとき、ＵＳＢトランシーバ回路の電源を制御して過剰な負荷がかからないようにデバイスを保護するＵＳＢバッファ回路を得るものである。
【課題を解決するための手段】
【０００８】
この発明に係るＵＳＢバッファ回路は、ＵＳＢトランシーバが通信に用いる一対のデータラインの論理値レベルが共に論理値“Ｈ”になるとき異常を検出するデータ異常検出手段と、データ異常検出手段の検出結果に基づいてＵＳＢトランシーバを保護するように電源を制御する電源制御手段とを備えたものである。
【発明の効果】
【０００９】
この発明は、ＵＳＢトランシーバが送受信するデータの論理値レベルが共に“Ｈ”になるとき異常を検出するデータ異常検出手段と、データ異常検出手段の検出結果に基づいてＵＳＢトランシーバを保護するように電源を制御する電源制御手段とを備えたので、デバイスに過剰な負荷がかかる状態を回避し、デバイス破壊を防ぐことができるという効果がある。
【発明を実施するための最良の形態】
【００１０】
以下、この発明の実施の一形態を説明する。
実施の形態１．
図１は、この発明の実施の形態１によるＵＳＢバッファ回路の構成を示すブロック図である。図示したＵＳＢバッファ回路は、ホスト等とＵＳＢバスによって接続されるデバイスに備えられ、例えばＬＳＩに内蔵される。図１に示したＵＳＢバッファ回路は、当該ＵＳＢバッファ回路を備えるデバイスのＶＢＵＳ端子、Ｄ＋端子、Ｄ−端子と接続され、これらの端子を介して外部のホスト等と接続される。また、図示したＵＳＢバッファ回路は、ＵＳＢトランシーバ回路（ＵＳＢトランシーバ）１、ＵＳＢ制御回路２、データ異常検出回路（データ異常検出手段）３、ＧＮＤ制御回路（電源制御手段）４によって構成される。ＵＳＢトランシーバ回路１は、Ｄ＋端子とＤ−端子にそれぞれ接続される二本一組のＤ＋／Ｄ−データライン、即ちＵＳＢバスによって送受信されるデータを蓄積する入出力バッファを備え、ＶＢＵＳ端子に供給される電力を電源としている。ＵＳＢ制御回路２は、トランシーバ制御信号１０２を生成してＵＳＢトランシーバ回路１の動作を制御する。データ異常検出回路３は、ＵＳＢトランシーバ回路１から当該ＵＳＢトランシーバ回路１に接続される各端子の状態を検出する。ＧＮＤ制御回路４は、データ異常検出回路３の検出結果に基づいてＵＳＢトランシーバ回路１の接地状態を制御するもので、具体的にはＵＳＢトランシーバ回路１とＧＮＤ端子との接続のＯＮ／ＯＦＦ状態の切り替えを行う。
【００１１】
次に、動作について説明する。
ＵＳＢトランシーバ回路１は、通常状態ではＧＮＤ制御回路４によって接地され、ＶＢＵＳ端子に供給される電源により動作し、Ｄ＋端子およびＤ−端子を介して接続される一対のＤ＋データラインおよびＤ−データラインを用いてホスト等とシリアルデータの送受信を行う。このように動作しているとき、ＵＳＢトランシーバ回路１はＶＢＵＳ端子、Ｄ＋端子、およびＤ−端子の状態を監視し、例えば、各端子の電圧または論理値レベルなどを示す端子状態信号１０１を生成して、ＵＳＢ制御回路２とデータ異常検出回路３へ出力する。この端子状態信号１０１は、例えばＶＢＵＳ端子、Ｄ＋端子、Ｄ−端子毎に生成され、各端子の状態を個別に示すものである。ＵＳＢ制御回路２は、端子状態情報１０１によって示される、Ｄ＋データラインおよびＤ−データライン即ちＵＳＢバスの状態と、ＶＢＵＳ端子の電圧値とを取得してトランシーバ制御信号１０２を生成し、ＵＳＢトランシーバ回路１の電源投入の確認やＵＳＢバスを介して外部から入力されるデータの受信動作処理や、デバイスから外部へ出力するデータの送信動作処理を制御する。
【００１２】
データ異常検出回路３は、ＵＳＢトランシーバ回路１から各端子の端子状態信号１０１を取得して、ＶＢＵＳ電源の電圧等からＵＳＢトランシーバ回路１の動作状態を把握し、さらにＤ＋端子とＤ−端子の論理値レベルからＵＳＢバスに発生した異常を検出する。なお、端子状態情報１０１によって取得されるＶＢＵＳ端子の電圧は、Ｄ＋データライン上とＤ−データライン上の各データが示す論理値レベルを識別する際などにも用いられる。ＵＳＢ転送のプロトコルは完全な差動動作ではないことから、例えば、データ転送においてパケット間を認識できるようにＤ＋データラインとＤ−のデータラインが共に論理値“Ｌ”を示す場合が有る。これに対して、Ｄ＋データラインとＤ−データラインが共に論理値“Ｈ”となる場合は、ＵＳＢケーブルなどにおいて、Ｄ＋データラインまたはＤ−データラインに破損などの障害が発生し、ＶＢＵＳ電源ライン等とショートした場合が考えられる。データ異常検出回路３は、このような異常状態を検出して、その旨を示すデータ異常検出信号１００を生成し、ＧＮＤ制御回路４へ出力する。なお、上記サイクルはシリアルデータのビットを表し、前述の説明からわかるように１サイクルは転送データの１ビットに対応するもので、以下の説明においても同様なものである。
【００１３】
ＧＮＤ制御回路４は、通常状態ではＵＳＢトランシーバ回路１が動作できるように当該ＵＳＢトランシーバ回路１のＧＮＤ部位をＧＮＤ端子へ接続している。データ異常検出回路３によって異常が検出され、その旨を示すデータ異常検出信号１００を入力すると、ＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を開放して、ＵＳＢトランシーバ回路１内のＧＮＤレベルをＶＢＵＳ端子に印加されている電圧と同一レベルに飽和させる。このような電源制御を行うことにより、例えばＤ−端子に異常電圧が印加されたとき、ＵＳＢトランシーバ回路１の内部にＤ−端子からＧＮＤ端子までの電流パスが形成されないようにすることができ、デバイスに過剰な負荷がかからないようにすることができる。なお、この発明のＵＳＢバッファ回路によるＵＳＢバス上のデータ異常検出は、ＵＳＢトランシーバ回路１が送信状態であっても受信状態であっても同様に行われる。
【００１４】
以上のように、実施の形態１によれば、ＵＳＢトランシーバ回路１によって送受信されるデータが正常なときには、ＧＮＤ制御回路４が当該ＵＳＢトランシーバ回路１のＧＮＤ部位をＧＮＤ端子へ接続してホストとのＵＳＢ通信を行い、Ｄ−データライン上のデータから異常が検出されたときには、ＵＳＢトランシーバ回路１のＧＮＤ部位をＧＮＤ端子から切り離し、Ｄ−端子に過剰な電圧が印加された場合でも電流パスがＵＳＢトランシーバ回路１の内部に形成されないようにしたので、デバイスに過剰な負荷がかからないようにすることができ、デバイス破壊を防ぐことができるという効果がある。
【００１５】
実施の形態２．
図２は、この発明の実施の形態２によるＵＳＢバッファ回路の構成を示すブロック図である。図１に示したものと同一あるいは相当する部分に同じ符号を使用し、その説明を省略する。図２に示すＵＳＢバッファ回路は、データ異常検出回路３に替えて、ＵＳＢトランシーバ回路１から出力される端子状態信号１０１の内、Ｄ−端子の状態を示す信号を入力してＤ−データラインの論理値が“Ｈ”を示すサイクル数をカウントし、このカウント数に基づいてＧＮＤ制御回路４の動作を制御するデータ異常サイクルカウンタ（データ異常検出手段、データ異常ビット数カウンタ）５を備えた他は、図１に示したものと同様に構成される。
【００１６】
次に、動作について説明する。
図２に示すＵＳＢトランシーバ回路１とＵＳＢ制御回路２は、実施の形態１で説明したように動作し、ＵＳＢ制御回路２がＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいてトランシーバ制御信号１０２を生成し、ＵＳＢトランシーバ回路１の動作を制御するもので、ここでは詳細な動作説明を省略する。
【００１７】
ＵＳＢデータ通信では、転送データのビットスタフィングを行っている。ＵＳＢ規格では６ビット、即ち６サイクル連続して同じ論理値レベルが維持されると、Ｅｘｔｒａビットを挿入してデータの論理値レベルを反転させることが規定されている。このことから、正常な状態で動作しているときは７ビット、即ち７サイクル以上連続して論理値“Ｈ”を示す状態は生じないことから、実施の形態２によるＵＳＢバッファ回路は、このような連続したデータが検出された場合に異常が発生したと判定するものである。
【００１８】
実施の形態２によるＵＳＢバッファ回路は、次のように動作する。図２に示すデータ異常サイクルカウンタ５は、ＵＳＢトランシーバ回路１からＤ−端子の状態を示す端子状態情報１０１を取得する。Ｄ−端子の状態を示す端子状態信号１０１が論理値レベル“Ｈ”を示すとき、データ異常サイクルカウンタ５は、カウントを開始して論理値レベルが“Ｈ”を示すサイクルが連続する間、そのサイクル数をカウントする。データ異常サイクルカウンタ５は、このカウント値が所定の値になってオーバーフローしたとき、ＧＮＤ制御信号１０３を生成してＧＮＤ制御回路４へ出力し、データ異常が検出された旨を報知する。ＧＮＤ制御回路４は、データ異常サイクルカウンタ５から取得したＧＮＤ制御信号１０３に基づいてＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を開放して、ＵＳＢトランシーバ回路１内のＧＮＤレベルをＶＢＵＳ端子に印加されている電圧と同一レベルに飽和させる。なお、データ異常サイクルカウンタ５は、オーバーフローする前に論理値“Ｈ”が途切れた場合にカウントを停止し、これまでのカウント値をリセットする。
【００１９】
なお、上述の説明は、Ｄ−データラインの論理値レベルが“Ｈ”一定になる異常の検出を説明したが、データ異常サイクルカウンタ５にＤ＋端子の状態を示す端子状態信号１０１を入力し、Ｄ＋端子の論理値レベルが“Ｈ”を示したときのサイクル数をカウントさせることにより、Ｄ＋データラインに発生した異常を検出することもできる。
【００２０】
以上のように、実施の形態２によれば、Ｄ−端子の論理値レベルが連続して“Ｈ”を示すサイクル数をカウントするデータ異常サイクルカウンタ５を備え、データ異常サイクルカウンタ５のカウント値がオーバーフローしたときＧＮＤ制御回路４がＵＳＢトランシーバ回路１のＧＮＤ接続を開放してＤ−端子からＧＮＤ端子までの電流パスがＵＳＢトランシーバ回路１内に形成されないようにしたので、Ｄ−端子に過剰な電圧が印加された場合でも、デバイスに過剰な負荷がかからないようにしてデバイス破壊を防ぐことができるという効果がある。
【００２１】
実施の形態３．
図３は、この発明の実施の形態３によるＵＳＢバッファ回路の構成を示すブロック図である。図２に示したものと同一あるいは相当する部分に同じ符号を使用し、その説明を省略する。図３に示すＵＳＢバッファ回路は、図２に示したデータ異常サイクルカウンタ５に替えてカウント値１０６を出力するデータ異常サイクルカウンタ（データ異常検出手段、データ異常ビット数カウンタ）５ａと、データ異常の判定に用いる閾値としてサイクル数を記憶させておく異常検出設定レジスタ（データ異常検出手段、記憶手段）６と、データ異常サイクルカウンタ５ａから出力されるカウント値１０６と異常検出設定レジスタ６に記憶されているレジスタ設定値１０５とを比較する比較器（データ異常検出手段、比較手段）７とを図２に示したものに備えたものである。
【００２２】
次に、動作について説明する。
図３に示すＵＳＢトランシーバ回路１およびＵＳＢ制御回路２は、実施の形態１で説明したように動作するもので、ここでは詳細な動作説明を省略する。
【００２３】
異常検出設定レジスタ６には、予め異常検出に用いるレジスタ設定値１０５を設定しておく。このレジスタ設定値１０５は、比較器７がＧＮＤ制御信号１０７を出力するか否かを判定するとき、即ちＵＳＢトランシーバ回路１の電源制御を行うか否かを判定するとき閾値として用いられ、Ｄ−端子の論理値レベルが“Ｈ”のまま連続するサイクル数を示す値である。データ異常サイクルカウンタ５ａは、ＵＳＢトランシーバ回路１から出力される端子状態情報１０１の内、Ｄ−端子の状態を示す信号を入力し、Ｄ−端子の論理値レベルが“Ｈ”を示すときカウントを開始し、論理値“Ｈ”のサイクルが連続する間、そのサイクル数をカウントする。論理値“Ｈ”のサイクルが途切れた場合にはカウントを停止し、そのときのカウント値１０６を比較器７へ出力し、その後カウント値１０６をリセットする。比較器７は、異常検出設定レジスタ６に記憶設定されているレジスタ設定値１０５を取得し、データ異常サイクルカウンタ５ａから順次出力されるカウント値１０６と比較して、カウント値１０６がレジスタ設定値１０５以上となったときＧＮＤ制御信号１０７を生成し、ＧＮＤ制御回路４へ出力してデータ異常が検出された旨を報知する。ＧＮＤ制御回路４は、比較器７から取得したＧＮＤ制御信号１０７が異常検出を示すとき、ＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を開放し、ＵＳＢトランシーバ回路１内のＧＮＤレベルをＶＢＵＳ端子に印加されている電圧と同一レベルに飽和させる。
【００２４】
以上のように、実施の形態３によれば、Ｄ−端子の論理値が“Ｈ”のとき連続するサイクル数をカウントし、そのカウント値１０６を出力するデータ異常サイクルカウンタ５ａと、データ異常の検出に用いるレジスタ設定値１０５を記憶させる異常検出設定レジスタ６と、レジスタ設定値１０５とカウント値１０６とを比較し、カウント値１０６がレジスタ設定値１０５以上になったとき、ＧＮＤ制御信号１０７を生成する比較器７とを備え、比較器７から出力されたＧＮＤ制御信号１０７に基づいてＧＮＤ制御回路４がＵＳＢトランシーバ回路１のＧＮＤ接続を開放してＤ−端子からＧＮＤ端子までの電流パスがＵＳＢトランシーバ回路１内に形成されないようにしたので、Ｄ−端子に過剰な電圧が印加された場合でも、デバイスに過剰な負荷がかからないようにすることができ、デバイス破壊を防ぐことができるという効果がある。
【００２５】
実施の形態４．
図４は、この発明の実施の形態４によるＵＳＢバッファ回路の構成を示すブロック図である。図１に示したものと同一あるいは相当する部分に同じ符号を使用し、その説明を省略する。図４に示すＵＳＢバッファ回路は、図１に示したものに、データ異常検出回路３から出力されるデータ異常検出信号１００を取得してＧＮＤ制御信号１０８を生成するデータ異常回数カウンタ８を備えたものである。
【００２６】
次に、動作について説明する。
図４に示すＵＳＢトランシーバ回路１、ＵＳＢ制御回路２、および、データ異常検出回路３は、実施の形態１で説明したように動作し、ＵＳＢ制御回路２がＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいてトランシーバ制御信号１０２を生成し、ＵＳＢトランシーバ回路１の動作を制御し、またデータ異常検出回路３がＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいてデータ異常検出信号１００を生成するもので、ここでは詳細な動作説明を省略する。なお、図４に示すデータ異常検出回路３を、実施の形態２で説明したデータ異常検出手段であるデータ異常サイクルカウンタ５、あるいは実施の形態３で説明したデータ異常サイクルカウンタ５ａ、異常検出設定レジスタ６、および比較器７によって構成されるデータ異常検出手段に置き換え、これらのデータ異常検出手段からデータ異常検出信号１００と同様な異常検出回数を示す信号を出力するように構成してもよい。
【００２７】
データ異常は偶発的に検出される場合があり、実際にはデバイスに過度の負荷がかかっていないときでも電源制御を行ってしまい、デバイスがＵＳＢ通信を行えない状態に成り易くなるという不具合が生じる。そこで、実施の形態４によるＵＳＢバッファ回路は、データ異常回数カウンタ８を用いてデータ異常を検出した回数をカウントし、データ異常が所定の回数検出されたとき、ＵＳＢトランシーバ回路１の電源制御を行う。データ異常検出回路３は、例えば、実施の形態１で説明したようにＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいて各端子状態を認識し、ＵＳＢバスによって送受信されるデータから異常を検出し、検出結果を表すデータ異常検出信号１００をデータ異常回数カウンタ８へ出力する。データ異常回数カウンタ８は、データ異常検出信号１００を入力してデータに異常が発生した回数をカウントし、所定のカウント値になってオーバーフローしたとき、ＧＮＤ制御信号１０８を生成してＧＮＤ制御回路４へ出力する。ＧＮＤ制御信号１０８を入力したＧＮＤ制御回路４は、ＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を開放して、ＵＳＢトランシーバ回路１内のＧＮＤレベルをＶＢＵＳ端子に印加されている電圧と同一レベルに飽和させる。
【００２８】
データ異常回数カウンタ８のカウント値が所定の値に達していない場合には、データ異常回数カウンタ８からＧＮＤ制御信号１０８が出力されないので、ＵＳＢトランシーバ回路１は動作可能な状態を維持している。このときＵＳＢ制御回路２は、例えば、割り込み処理によりデータ異常が検出されたデータ転送についてリトライ処理を指示するトランシーバ制御信号１０２を生成し、ＵＳＢトランシーバ回路１を制御して当該データの転送をリトライさせる。このデータ転送のリトライ処理は、ＧＮＤ制御信号１０８が生成されるまで、即ちデータ異常回数カウンタ８がオーバーフローするまで行うことができ、後述するようにＵＳＢ制御回路２の制御によって所定の回数だけ行うようにしてもよい。
【００２９】
以上のように、実施の形態４によれば、データ異常検出回路３から出力されたデータ異常検出信号１００をカウントし、所定のカウント値を越えたときＧＮＤ制御信号１０８を生成するデータ異常回数カウンタ８を備え、データ異常回数カウンタ８から出力されたＧＮＤ制御信号１０８に基づいてＧＮＤ制御回路４がＵＳＢトランシーバ回路１のＧＮＤ接続を開放してＤ−端子からＧＮＤ端子までの電流パスがＵＳＢトランシーバ回路１内に形成されないようにしたので、Ｄ−端子に過剰な電圧が印加された場合でも、デバイスに過剰な負荷がかからないようにしてデバイス破壊を防ぐことができるという効果がある。
【００３０】
また、データ異常回数カウンタ８がオーバーフローするまでデータ異常が検出されてもＵＳＢトランシーバ回路１が動作できるようにしたので、簡易にデータ転送が不可能になることを抑制し、また、データ転送のリトライ処理を行うことができるという効果がある。
【００３１】
実施の形態５．
図５は、この発明の実施の形態５によるＵＳＢバッファ回路の構成を示すブロック図である。図４に示したものと同一あるいは相当する部分に同じ符号を使用し、その説明を省略する。図５に示すＵＳＢバッファ回路は、図４に示したデータ異常回数カウンタ８に替えてカウント値１１０を出力するデータ異常回数カウンタ８ａを備え、また、カウント値１１０と比較するレジスタ設定値１０９を記憶させておく異常回数設定レジスタ（異常回数設定手段）９と、レジスタ設定値１０９とカウント値１１０とを比較し、その比較結果に基づいてＧＮＤ制御信号１１１を生成する比較器（比較手段）１０とを備えたものである。なお、図５に示したデータ異常検出回路３も、実施の形態４で説明したように、実施の形態２で説明したデータ異常検出手段であるデータ異常サイクルカウンタ５、あるいは実施の形態３で説明したデータ異常サイクルカウンタ５ａ、異常検出設定レジスタ６、および比較器７によって構成されるデータ異常検出手段に置き換えて構成してもよい。
【００３２】
次に、動作について説明する。
図５に示すＵＳＢトランシーバ回路１、ＵＳＢ制御回路２、データ異常検出回路３、実施の形態１で説明したように動作し、ＵＳＢ制御回路２がＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいてトランシーバ制御信号１０２を生成してＵＳＢトランシーバ回路１の動作を制御し、またデータ異常検出回路３がＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいてデータ異常検出信号１００を生成するもので、ここでは詳細な動作説明を省略する。
【００３３】
データ異常が発生したときのＵＳＢトランシーバ回路１の電源制御に使用する閾値として、許容するデータ異常の検出回数を予め設定して異常回数設定レジスタ９に記憶させる。データ異常回数カウンタ８ａは、データ異常検出回路３から取得したデータ異常検出信号１００がデータ異常を示すとき、カウント値１１０をカウントアップして順次比較器１０へ出力する。比較器１０は、異常回数設定レジスタ９に記憶されているレジスタ設定値１０９を取得して、このレジスタ設定値１０９と順次入力されるカウント値１１０とを比較し、カウント値１１０がレジスタ設定値１０９以上になったときＧＮＤ制御信号１１１を生成してＧＮＤ制御回路４へ出力し、データ異常が検出された旨を報知する。ＧＮＤ制御回路４は、比較器７から取得したＧＮＤ制御信号１１１に基づいてＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を開放して、ＵＳＢトランシーバ回路１内のＧＮＤレベルをＶＢＵＳ端子に印加されている電圧と同一レベルに飽和させる。
【００３４】
データ異常回数カウンタ８ａのカウント値１１０がレジスタ設定値１０９に達していない場合は、比較器１０からＧＮＤ制御信号１１１が出力されないので、ＵＳＢトランシーバ回路１は動作可能な状態を維持している。このときＵＳＢ制御回路２は、実施の形態４で説明したようにデータ異常が検出された転送データのリトライ処理を指示するトランシーバ制御信号１０２を生成してＵＳＢトランシーバ回路１を制御し、データ転送をリトライさせる。このリトライ処理は、外部からソフトウェアなどによって処理内容がＵＳＢ制御部２に設定され、リトライ処理を行うか否か、またリトライ処理を繰り返す回数などを任意に設定できるようにしてもよい。
【００３５】
以上のように、実施の形態５によれば、データ異常検出回路３から出力されたデータ異常検出信号１００をカウントするデータ異常回数カウンタ８ａと、ＵＳＢトランシーバ回路１の電源制御を行わずに許容する異常検出回数を記憶する異常回数設定レジスタ９と、異常回数設定レジスタ９に記憶されているレジスタ設定値１０９とデータ異常回数カウンタ８ａから出力されるカウント値１１０とを比較する比較器１０とを備え、カウント値１１０がレジスタ設定値１０９以上になったとき比較器１０から出力されるＧＮＤ制御信号１１１に基づいてＧＮＤ制御回路４がＵＳＢトランシーバ回路１のＧＮＤ接続を開放し、Ｄ−端子からＧＮＤ端子までの電流パスがＵＳＢトランシーバ回路１内に形成されないようにしたので、Ｄ−端子に過剰な電圧が印加された場合でもデバイスに過剰な負荷がかからないようにしてデバイス破壊を防ぐことができるという効果がある。
【００３６】
また、許容するデータ異常検出回数を設定することができるので、簡易にＵＳＢトランシーバ１の動作を不可能にすることが抑制され、また、データ転送のリトライ処理を行うことができるという効果がある。
【００３７】
実施の形態６．
図６は、この発明の実施の形態６によるＵＳＢバッファ回路の構成を示すブロック図である。図５に示したものと同一あるいは相当する部分に同じ符号を使用し、その説明を省略する。図６に示したＵＳＢバッファ回路は、図５に示したものにデータ異常検出回路３の動作制御に用いる異常検出機能ＯＮ／ＯＦＦレジスタ（異常検出設定手段）１１を備えたものである。
【００３８】
次に、動作について説明する。
図６に示すＵＳＢトランシーバ回路１、ＵＳＢ制御回路２、データ異常検出回路３、データ異常回数カウンタ８ａ、異常回数設定レジスタ９、および比較器１０は、実施の形態１、実施の形態５で説明したように、ＵＳＢ制御回路２がＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいてトランシーバ制御信号１０２を生成してＵＳＢトランシーバ回路１の動作を制御し、またデータ異常検出回路３がＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいてデータ異常検出信号１００を生成して、データ異常回数カウンタ８ａがデータ異常検出信号１００に基づいてデータ異常の発生回数をカウントし、比較器１０が異常回数設定レジスタ９に記憶されているレジスタ設定値１０９とデータ異常回数カウンタ８ａから出力されるカウント値１１０とを比較して、カウント値１１０がレジスタ設定値１０９以上になったときＧＮＤ制御信号１１１を生成するもので、ここでは詳細な動作説明を省略する。
【００３９】
図６に示すＵＳＢバッファ回路は、データ異常検出機能を有効または無効に設定できるように構成したもので、所定のソフトウェアプログラムに基づく設定動作によってデータ異常検出回路３が制御される。このソフトウェアプログラムは、図示されないプロセッサ等により実行され、当該ソフトウェア上において設定されたデータ異常検出機能に関する内容は、異常検出機能ＯＮ／ＯＦＦレジスタ１１に記憶・格納される。ソフトウェアによりデータ異常を検出する設定がなされたとき、異常検出機能ＯＮ／ＯＦＦレジスタ１１は、データ異常検出機能を有効にする異常検出有効信号１１２をデータ異常検出回路３へ出力する。この異常検出有効信号１１２を入力したデータ異常検出回路３は、実施の形態５で説明したように動作し、また、データ異常回数カウンタ８ａ、比較器１０もそれぞれ前述の説明のように動作して、転送データから異常が検出されたとき、比較器１０から出力されたＧＮＤ制御信号１１１に基づいてＧＮＤ制御回路４が制御動作を行い、ＵＳＢトランシーバ回路１のＧＮＤ接続を開放させて、ＵＳＢトランシーバ回路１内のＧＮＤレベルをＶＢＵＳ端子に印加されている電圧と同一レベルに飽和させる。
【００４０】
また、データ異常検出機能が有効に設定されているとき、即ち異常検出機能ＯＮ／ＯＦＦレジスタ１１からデータ異常検出機能を有効とする異常検出有効信号１１２が出力されるとき、ＵＳＢ制御回路２は、実施の形態５で説明したようにデータ異常が検出された転送データのリトライ処理を指示するトランシーバ制御信号１０２を生成してＵＳＢトランシーバ回路１を制御し、データ転送をリトライさせる。
【００４１】
異常検出機能ＯＮ／ＯＦＦレジスタ１１にデータ異常検出機能を無効にする内容が設定されている場合には、当該異常検出機能ＯＮ／ＯＦＦレジスタ１１から有効を示す異常検出有効信号１１２が出力されないことから、データ異常検出回路３は、端子状態信号１０１に基づくデータ異常検出を行わず、これに伴なってデータ異常回数カウンタ８ａ、比較器１０、ＧＮＤ制御回路４は，これまで説明してきたような動作を行わず、ＵＳＢトランシーバ回路１の電源制御を行わない。ＵＳＢトランシーバ回路１は、データ転送を停止することなく実行処理する。なお、この異常検出機能ＯＮ／ＯＦＦレジスタ１１を、前述の各実施の形態で説明した、例えばデータ異常検出回路３などの各データ異常検出手段に接続して、これらのデータ異常検出手段の機能を有効あるいは無効に設定するようにしてもよい。
【００４２】
以上のように、実施の形態６によれば、ソフトウェア上でデータ異常検出機能を有効または無効にする設定を行い、この設定内容を記憶格納する異常検出機能ＯＮ／ＯＦＦレジスタ１１を備え、データ異常検出回路３の動作を有効または無効にすることを可能にしたので、データ転送を停止させなくない場合にはＵＳＢトランシーバ回路１の電源制御を行わずに動作させることができ、ＵＳＢ通信の使用用途に応じてデータ異常検出機能を用いることができるという効果がある。
【００４３】
また、データ異常検出回路３から出力されたデータ異常検出信号１００をカウントするデータ異常回数カウンタ８ａと、ＵＳＢトランシーバ回路１の電源制御を行わずに許容する異常発生回数を記憶する異常回数設定レジスタ９と、異常回数設定レジスタ９に記憶されているレジスタ設定値１０９とデータ異常回数カウンタ８ａから出力されるカウント値１１０とを比較する比較器１０とを備え、カウント値１１０がレジスタ設定値１０９以上になったとき比較器１０から出力されるＧＮＤ制御信号１１１に基づいてＧＮＤ制御回路４がＵＳＢトランシーバ回路１のＧＮＤ接続を開放してＤ−端子からＧＮＤ端子までの電流パスがＵＳＢトランシーバ回路１内に形成されないようにしたので、Ｄ＋端子またはＤ−端子に過剰な電圧が印加された場合でも、デバイスに過剰な負荷がかからないようにしてデバイス破壊を防ぐことができるという効果がある。
【００４４】
また、許容するデータ異常検出回数を設定することができるので、簡易にＵＳＢトランシーバ回路１の動作を不可能にすることが抑制され、また、任意の回数だけデータ転送のリトライ処理を行うことができるという効果がある。
【００４５】
実施の形態７．
図７は、この発明の実施の形態７によるＵＳＢバッファ回路の構成を示すブロック図である。図１に示したものと同一あるいは相当する部分に同じ符号を使用し、その説明を省略する。ＶＢＵＳ電源制御回路（電源制御手段）１２は、データ異常検出回路（データ異常検出手段）１３から電源制御信号１１３を入力して、ＵＳＢトランシーバ回路１の電源部位とＶＢＵＳ端子との接続をＯＮ／ＯＦＦし、ＵＳＢトランシーバ回路１の電源供給を制御する。図７に示すデータ異常検出回路１３は、ＵＳＢトランシーバ回路１から出力される端子状態信号１０１に基づいてＤ＋データラインとＤ−データラインの論理値レベルから各データラインに発生した異常を検出し、電源制御信号１１３とＧＮＤ制御信号１１４を生成する。また、図７に示したＧＮＤ制御回路（電源制御手段）４は、データ異常検出回路１３から入力したＧＮＤ制御信号１１４に基づいてＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を制御する。
【００４６】
次に、動作について説明する。
図７に示すＵＳＢトランシーバ回路１とＵＳＢ制御回路２は、実施の形態１で説明したように動作し、ＵＳＢ制御回路２がＵＳＢトランシーバ回路１から取得した端子状態信号１０１に基づいてトランシーバ制御信号１０２を生成し、ＵＳＢトランシーバ回路１の動作を制御するもので、ここでは詳細な動作説明を省略する。
【００４７】
データ異常検出回路１３から電源制御信号１１３およびＧＮＤ制御信号１１４のいずれもが出力されていない場合、即ちＵＳＢバス等に異常が発生していない場合には、ＵＳＢトランシーバ回路１の電源供給部位がＶＢＵＳ電源制御回路１２によりＶＢＵＳ端子に接続されてＶＢＵＳ電源ラインから電源電力が供給され、またＵＳＢトランシーバ回路１のＧＮＤ部位がＧＮＤ制御回路４によりＧＮＤ端子に接続され、ＵＳＢトランシーバ回路１は動作可能な状態となる。
【００４８】
データ異常検出回路１３は、実施の形態１などで説明したようにＵＳＢトランシーバ回路１から取得した端子状態信号１０１の内容から、ＵＳＢバスがＶＢＵＳ電源ラインとショートしたことを検出した場合は、実施の形態１などで説明したデータ異常検出回路３と同様に動作してＧＮＤ制御信号１１４を生成する。このＧＮＤ制御信号１１４を入力したＧＮＤ制御回路４は、実施の形態１で説明したようにＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を開放する。するとＵＳＢトランシーバ回路１のＧＮＤレベルはＶＢＵＳ端子に供給されている電圧と同一に飽和し、ＵＳＢトランシーバ回路１の内部にＤ＋端子またはＤ−端子からＧＮＤ端子までの電流パスが形成されることを防ぐことができる。
【００４９】
また、データ異常検出回路１３は、例えば、実施の形態２で説明したものと同様なデータ異常サイクルカウンタを備え、このデータ異常サイクルカウンタを用いて、端子状態信号１０１の内容から、各データラインの論理値レベルが“Ｌ”あるいはＧＮＤレベル近傍となったときのサイクル数をカウントし、論理値レベル“Ｌ”等が所定のサイクル数以上連続することにより当該カウンタがオーバーフローしたとき、ＵＳＢバスを構成するＤ＋データラインとＤ−データラインのいずれか一方、あるいは両方がＧＮＤライン等とショートしたことを検出し、電源制御信号１１３を生成する。電源制御信号１１３を入力したＶＢＵＳ電源制御回路１２は、ＶＢＵＳ端子とＵＳＢトランシーバ回路１の電源供給部位との接続を開放する。するとＵＳＢトランシーバ回路１の電源部位はＧＮＤ端子の電位レベルに飽和し、ＵＳＢトランシーバ回路１の内部にＶＢＵＳ端子からＤ＋端子またはＤ−端子までの電流パスが形成されることを防ぐことができる。
【００５０】
以上のように、実施の形態７によれば、ＶＢＵＳ端子からＵＳＢトランシーバ回路１へ供給される電源電力を制御するＶＢＵＳ電源制御回路１２と、ＵＳＢトランシーバ回路１のＧＮＤ部位とＧＮＤ端子との接続を制御するＧＮＤ制御回路４と、ＵＳＢバスとＶＢＵＳ電源ラインとのショートを検出した場合にＧＮＤ制御信号１１４を生成してＧＮＤ制御回路４を制御し、ＵＳＢトランシーバ回路１のＧＮＤ接続を開放させ、またＵＳＢバスとＧＮＤラインとのショートを検出した場合に電源制御信号１１３を生成してＶＢＵＳ電源制御回路１２を制御し、ＵＳＢトランシーバ回路１の電源部位とＶＢＵＳ端子の接続を開放させるデータ異常検出回路１３とを備えたので、ＵＳＢバスがＶＢＵＳ電源ラインあるいはＧＮＤラインのいずれかとショートした場合でも、ＵＳＢトランシーバ回路１の内部に電流パスが形成されることを防ぐことができ、Ｄ＋端子またはＤ−端子に異常な電圧が印加された場合でもデバイスに過剰な負荷がかからないようにしてデバイス破壊を防ぐことができるという効果がある。
【図面の簡単な説明】
【００５１】
【図１】この発明の実施の形態１によるＵＳＢバッファ回路の構成を示すブロック図である。
【図２】この発明の実施の形態２によるＵＳＢバッファ回路の構成を示すブロック図である。
【図３】この発明の実施の形態３によるＵＳＢバッファ回路の構成を示すブロック図である。
【図４】この発明の実施の形態４によるＵＳＢバッファ回路の構成を示すブロック図である。
【図５】この発明の実施の形態５によるＵＳＢバッファ回路の構成を示すブロック図である。
【図６】この発明の実施の形態６によるＵＳＢバッファ回路の構成を示すブロック図である。
【図７】この発明の実施の形態７によるＵＳＢバッファ回路の構成を示すブロック図である。
【符号の説明】
【００５２】
１  ＵＳＢトランシーバ回路（ＵＳＢトランシーバ）、２  ＵＳＢ制御回路、３  データ異常検出回路（データ異常検出手段）、４  ＧＮＤ制御回路（電源制御手段）、５  データ異常サイクルカウンタ（データ異常検出手段、データ異常ビット数カウンタ）、６  異常検出設定レジスタ（記憶手段）、７  比較器（データ異常検出手段、比較手段）、８  データ異常回数カウンタ、９  異常回数設定レジスタ（異常回数設定手段）、１０  比較器（比較手段）、１１  異常検出機能ＯＮ／ＯＦＦレジスタ（異常検出設定手段）、１２  ＶＢＵＳ電源制御回路（電源制御手段）、１３  データ異常検出回路（データ異常検出手段）。
【図１】
2005085151.tif 000003
【図２】
2005085151.tif 000004
【図３】
2005085151.tif 000005
【図４】
2005085151.tif 000006
【図５】
2005085151.tif 000007
【図６】
2005085151.tif 000008
【図７】
2005085151.tif 000009