(57)【特許請求の範囲】
【請求項１】
データの転送前に行われる手続きにおいてデータ転送レートを識別し、データの受信時に受信信号からデータとクロックパルスを分離し、前記手続きによって識別されたデータ転送レートに基づいた基準周波数クロックパルスに同期して前記クロックパルスから第１クロックパルスを作成し、前記手続きによって識別されたデータ転送レートに基づいた基準周波数クロックパルスに同期して第１クロックパルスから第２クロックパルスを作成し、前記第１クロックパルスと前記第２クロックパルスとの排他的論理和を取ったときローレベルを維持するか否かで前記手続きによって識別されたデータ転送レートと受信データの転送レートが異なっているか否かを通知する信号を出力し、ローレベルを維持しないことを検出してエラー通知を行なう信号を出力することを特徴とするデータ転送レート判別方法。
【請求項２】
前記基準周波数クロックパルスを、該基準周波数クロックパルスと前記エラー通知を行う信号をインバータを介して反転した信号の論理和をとった信号に置き換えたことを特徴とする請求項１記載のデータ転送レート判別方法。
【請求項３】
前記エラー通知を行なった回数が規定回数を超えたときにエラー規定回数超過通知を行なうことを特徴とする請求項１記載のデータ転送レート判別方法。
【請求項４】
前記規定回数を任意に設定することを特徴とする請求項３記載のデータ転送レート判別方法。
【請求項５】
データの受信時に受信信号からデータとクロックパルスを分離し、予め設定した異なる周波数の基準周波数クロックパルス毎に該基準周波数クロックパルスに同期して前記クロックパルスから第１クロックパルスを作成すると共に該第１クロックパルスから第２クロックパルスを作成し、この作成した前記第１クロックパルスと第２クロックパルスの排他的論理輪をとったときローレベルを維持するか否かを前記異なる周波数の基準周波数クロックパルス毎に検出して前記異なる周波数の基準周波数クロックパルス毎に該基準周波数のデータ転送レートと受信データのデータ転送レートが異なっているか否かを通知する信号を出力し、ローレベルを維持しないことを検出してエラー通知を行なう信号を出力することを特徴とするデータ転送レート判別方法。
【請求項６】
データの受信時に受信信号からデータとクロックパルスを分離してそれぞれ出力し、前記クロックパルスを入力し、データ転送レートに基づいた基準周波数クロックパルスに同期して前記クロックパルスから第１クロックパルスを作成すると共に該第１クロックパルスから第２クロックパルスを作成し、この作成した前記第１クロックパルスと第２クロックパルスの排他的論理和をとり、該排他的論理和がローレベルを維持するか否かで前記データ転送レートと受信データのデータ転送レートが異なっているか否かを通知する信号を出力し、ローレベルを維持しないことを検出してエラー通知を行なう信号を出力するように構成したことを特徴とするデータ転送レート判別回路。
【請求項７】
前記エラー通知を行う信号を反転するようにインバータを設け、前記基準周波数クロックパルスが、前記基準周波数クロックパルスと前記インバータの出力信号の論理和をとった信号に置き換えられるように論理和回路を設けたことを特徴とする請求項６記載のデータ転送レート判別回路。
【請求項８】
前記エラー通知を行なった回数が規定回数を超えたときにエラー規定回数超過通知を行なうようにカウンタを設けたことを特徴とする請求項６記載のデータ転送レート判別回路。
【請求項９】
前記規定回数を任意に設定することができる前記カウンタとしたことを特徴とする請求項８記載のデータ転送レート判別回路。
【請求項１０】
前記エラー通知を行う信号を反転するようにインバータを設け、
前記基準周波数クロックパルスが、前記基準周波数クロックパルスと前記インバータの出力信号の論理和をとった信号に置き換えられるように論理和回路を設けたことを特徴とする請求項８又は９記載のデータ転送レート判別回路。
【請求項１１】
データの受信時に受信信号からデータとクロックパルスを分離し、予め設定した異なる周波数の基準周波数クロックパルス毎に該基準周波数クロックパルスに同期して前記クロックパルスから第１クロックパルスを作成すると共に該第１クロックパルスから第２クロックパルスを作成し、この作成した前記第１クロックパルスと第２クロックパルスの排他的論理輪をとったときローレベルを維持するか否かを前記異なる周波数の基準周波数クロックパルス毎に検出して前記異なる周波数の基準周波数クロックパルス毎に該基準周波数のデータ転送レートと受信データのデータ転送レートが異なっているか否かを通知する信号を出力し、ローレベルを維持しないことを検出してエラー通知を行なう信号を出力するように構成したことを特徴とするデータ転送レート判別回路。
【請求項１２】
前記エラー通知が行われたときに、少なくとも前記エラー通知を行なった前記異なる周波数の基準周波数クロックパルス毎の転送レート判別動作を停止させるようにしたことを特徴とする請求項１１記載のデータ転送レート判別回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、データ転送レートの判別方法およびその判別回路に関し、特に、ＩＥＥＥ１３９４のシリアルバスを介しての、またはイーサネット（登録商標）のデータ転送レートの判別方法およびその判別回路に関する。
【０００２】
【従来技術】
図１２はＩＥＥＥ１３９４規格のケーブルメディアインタフェース部分の回路図である。ＩＥＥＥ１３９４規格では２対の差動信号（ＴＰＡ／ＴＰＡ＊、ＴＰＢ／ＴＰＢ＊）を用いてデータの送受信やアービトレーション（Ａｒｂｉｔｒａｔｉｏｎ：同じリソースの割り当てを要求するデバイス間の競合の解決）手続き等のすべての処理が行われ、装置間の接続に用いられるケーブルはクロスケーブルが使用される（一方のＴＰＡ／ＴＰＡ＊端子と他方のＴＰＢ／ＴＰＢ＊端子また逆に一方のＴＰＢ／ＴＰＢ＊端子と他方のＴＰＡ／ＴＰＡ＊端子が接続される）。また、ＩＥＥＥ１３９４規格ではデータの転送レートは１００Ｍｂｐｓ、２００Ｍｂｐｓ、４００Ｍｂｐｓなど複数の転送レートが規定されているが、データ転送レートの告知はデータパケットの送受信の前に行なわれるアービトレーション手続き時に送信側、受信側の装置の双方がＴＰＢ／ＴＰＢ＊端子よりＣｏｍｍｏｎ  ｍｏｄｅ  ｓｉｇｎａ１ｉｎｇ  ｃｕｒｒｅｎｔ（共通モード信号電流）を引き込みコモンモード電圧を変化させることによって行なわれ、クロスケーブルによって接続されているため送信側、受信側の装置の双方がＴＰＡ／ＴＰＡ＊端子のコモンモード電圧を比較することでデータ転送レートの判別を行なっていた。
【０００３】
【発明が解決しようとする課題】
しかしながら、データの転送レートを告知する方法は、コモンモード電圧を変化させ、その変化した電圧によってデータの転送レートを決定するものである。しかし、製造ばらつきによって特性が異なる可能性があり、データ転送レートの判別が送信側と受信側で異なる可能性があった。また、上記構成の場合、データの転送レートを告知するだけの機構のみを備えているだけで、データ転送レートが送信側、受信側で一致しているか否かを判別する手段が無いという問題点があった。
【０００４】
また、データの転送レートを告知するためにコモンモード電圧を変化させるにはＣｏｍｍｏｎ  ｍｏｄｅ  ｓｉｇｎａ１ｉｎｇ  ｃｕｒｒｅｎｔを引き込むことが必要なため、消費電流を増加させる要因となっていた。
【０００５】
さらに、上記問題は他の関連技術であるイーサネット（登録商標）においても発生していた。
【０００６】
本発明の目的は、上記問題点に鑑み、消費電流の増加を抑え、受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートが同じであるか否かをデータパケット受信時に判別することができるデータ転送レートの判別方法およびその回路を提供することにある。
【０００７】
【課題を解決するための手段】
本発明は上記課題を解決するために以下の解決手段を採用した。
（１）データ転送レート判別方法において、データの転送前に行われる手続きにおいてデータ転送レートを識別し、データの受信時に受信信号からデータとクロックパルスを分離し、前記手続きによって識別されたデータ転送レートに基づいた基準周波数クロックパルスに同期して前記クロックパルスから第１クロックパルスを作成し、前記手続きによって識別されたデータ転送レートに基づいた基準周波数クロックパルスに同期して第１クロックパルスから第２クロックパルスを作成し、前記第１クロックパルスと前記第２クロックパルスとの排他的論理和を取ったときローレベルを維持するか否かで前記手続きによって識別されたデータ転送レートと受信データの転送レートが異なっているか否かを通知する信号を出力し、ローレベルを維持しないことを検出してエラー通知を行なう信号を出力することを特徴とする。
（２）上記（１）記載のデータ転送レート判別方法において、前記基準周波数クロックパルスを、該基準周波数クロックパルスと前記エラー通知を行う信号をインバータを介して反転した信号の論理和をとった信号に置き換えたことを特徴とする。
（３）上記（１）記載のデータ転送レート判別方法において、前記エラー通知を行なった回数が規定回数を超えたときにエラー規定回数超過通知を行なうことを特徴とする。
（４）上記（３）記載のデータ転送レート判別方法において、前記規定回数を任意に設定することを特徴とする。
（５）データ転送レート判別方法において、データの受信時に受信信号からデータとクロックパルスを分離し、予め設定した異なる周波数の基準周波数クロックパルス毎に該基準周波数クロックパルスに同期して前記クロックパルスから第１クロックパルスを作成すると共に該第１クロックパルスから第２クロックパルスを作成し、この作成した前記第１クロックパルスと第２クロックパルスの排他的論理輪をとったときローレベルを維持するか否かを前記異なる周波数の基準周波数クロックパルス毎に検出して前記異なる周波数の基準周波数クロックパルス毎に該基準周波数のデータ転送レートと受信データのデータ転送レートが異なっているか否かを通知する信号を出力し、ローレベルを維持しないことを検出してエラー通知を行なう信号を出力することを特徴とする。
（６）データ転送レート判別回路において、データの受信時に受信信号からデータとクロックパルスを分離してそれぞれ出力し、前記クロックパルスを入力し、データ転送レートに基づいた基準周波数クロックパルスに同期して前記クロックパルスから第１クロックパルスを作成すると共に該第１クロックパルスから第２クロックパルスを作成し、この作成した前記第１クロックパルスと第２クロックパルスの排他的論理和をとり、該排他的論理和がローレベルを維持するか否かで前記データ転送レートと受信データのデータ転送レートが異なっているか否かを通知する信号を出力し、ローレベルを維持しないことを検出してエラー通知を行なう信号を出力するように構成したことを特徴とする。
（７）上記（６）記載のデータ転送レート判別回路において、前記エラー通知を行う信号を反転するようにインバータを設け、前記基準周波数クロックパルスが、前記基準周波数クロックパルスと前記インバータの出力信号の論理和をとった信号に置き換えられるように論理和回路を設けたことを特徴とする。
（８）上記（６）記載のデータ転送レート判別回路において、前記エラー通知を行なった回数が規定回数を超えたときにエラー規定回数超過通知を行なうようにカウンタを設けたことを特徴とする。
（９）上記（８）記載のデータ転送レート判別回路において、前記規定回数を任意に設定することができる前記カウンタとしたことを特徴とする。
（１０）上記（８）又は（９）記載のデータ転送レート判別回路において、前記エラー通知を行う信号を反転するようにインバータを設け、前記基準周波数クロックパルスが、前記基準周波数クロックパルスと前記インバータの出力信号の論理和をとった信号に置き換えられるように論理和回路を設けたことを特徴とする。
（１１）データ転送レート判別回路において、データの受信時に受信信号からデータとクロックパルスを分離し、予め設定した異なる周波数の基準周波数クロックパルス毎に該基準周波数クロックパルスに同期して前記クロックパルスから第１クロックパルスを作成すると共に該第１クロックパルスから第２クロックパルスを作成し、この作成した前記第１クロックパルスと第２クロックパルスの排他的論理輪をとったときローレベルを維持するか否かを前記異なる周波数の基準周波数クロックパルス毎に検出して前記異なる周波数の基準周波数クロックパルス毎に該基準周波数のデータ転送レートと受信データのデータ転送レートが異なっているか否かを通知する信号を出力し、ローレベルを維持しないことを検出してエラー通知を行なう信号を出力するように構成したことを特徴とする。
（１２）上記（１１）記載のデータ転送レート判別回路において、前記エラー通知が行われたときに、少なくとも前記エラー通知を行なった前記異なる周波数の基準周波数クロックパルス毎の転送レート判別動作を停止させるようにしたことを特徴とする。
【０００８】
【発明の実施の形態】
以下、本発明を図に基づいて詳細に説明する。
（第１実施例）
ＩＥＥＥ１３９４規格ではデータパケットの送受信にデータストローブ符号化方式が採用されている。
【０００９】
図１３は従来のデータストローブ符号化方式のタイムチャートを示す図である。データストローブ符号化方式とは、この図１３に示すように、データとストローブの排他的論理和がクロックパルスとなる方式であって、そのクロックパルスによってデータが取り込まれる。
【００１０】
図１４は、データストローブ符号化方式に必要な、受信側で必要とされる従来のデータストローブデコード回路図である。
【００１１】
図１は本発明の第１実施例を示す回路図である。
【００１２】
ＴＰＡ、ＴＰＡ＊差動信号入力端子は、データレシーバ１の＋（プラス）端子、−（マイナス）端子にそれぞれ接続され、ＴＰＢ、ＴＰＢ＊差動信号入力端子は、ストローブレシーバ２の＋端子、−端子にそれぞれ接続される。
【００１３】
データレシーバ１とストローブレシーバ２は共に＋端子に入力される信号の電圧が−端子に入力される信号の電圧よりも高い場合にはＨレベルを出力し、−端子に入力される信号の電圧が＋端子に入力される信号の電圧よりも高い場合にはＬレベルを出力する回路である。データレシーバ１の出力は２入力ＯＲゲート３の一方の入力に接続され、ストローブレシーバ２の出力は２入力ＯＲゲート３のもう一方の入力に接続される。また、データレシーバ１の出力はフリップフロップ４のＤ端子とフリップフロップ５のＤ端子にも接続される。フリップフロップ４およびフリップフロップ５のＱ端子はデータ＿１およびデータ＿０出力端子に接続され受信データとなる。２入力ＯＲゲート３の出力はフリップフロップ４およびフリップフロップ５のＣＬ端子とフリップフロップ６のＤ端子に接続される。また、Ｒｅｃｅｉｖｅ＿ＣＬＫ出力端子に接続され受信クロックとなる。一般的に前記受信データ（データ＿０、データ＿１）は上位ブロックでのデータ処理のためにシフトレジスタやＦＩＦＯなどに前記受信クロック（Ｒｅｃｅｉｖｅ＿ＣＬＫ）に基づいて取り込まれる。ここで、データレシーバ１、ストローブレシーバ２、２入力ＯＲゲート３の構成は前記データストローブデコード回路のものと同一である。
【００１４】
次に、フリップフロップ６のＱ端子はフリップフロップ７のＤ端子と２入力排他的ＮＯＲゲート８の一方の入力に接続され、フリップフロップ７のＱ端子は２入力排他的ＮＯＲゲート８のもう一方の入力に接続される。２入力排他的ＮＯＲゲート８の出力は２入力ＯＲゲート９の一方の入力に接続される。２入力ＯＲゲート９の出力はフリップフロップ１０のＤ端子に接続され、フリップフロップ１０のＱ端子は２入力ＯＲゲート９のもう一方の入力に接続され、また、データ転送レートの相違を通知するためのＥｒｒｏｒ出力端子に接続される。Ｓｅｎｓｅ＿ｅｎ入力端子はフリップフロップ１０のＣＬ（クロック）端子に接続され、データ転送レートの判別を実施するか否かの制御が行なわれる。Ｃｌｏｃｋ入力端子はフリップフロップ６とフリップフロップ７とフリップフロップ１０のＣＬ端子に接続される。Ｃｌｏｃｋ入力端子からはクロックパルスが入力されるが、その周波数はデータパケットの送受信の前に行なわれるアービトレーション手続きによって判別されたデータ転送レートに基づいた周波数のクロックパルスが入力される。
（動作）
ＩＥＥＥ１３９４規格では前述した通りデータの転送レートは１００Ｍｂｐｓ、２００Ｍｂｐｓ、４００Ｍｂｐｓなど複数の転送レートが規定されているが、本発明ではデータ転送レートが２００Ｍｂｐｓとして説明する。
【００１５】
図２は第１実施例の動作を示すタイムチャートである。このタイムチャートを基に以下説明する。
【００１６】
ＴＰＡ、ＴＰＡ＊差動信号入力端子に信号が入力されると、データレシーバ１は＋端子に入力される信号の電圧が−端子に入力される信号の電圧よりも高い場合にはＨレベルを出力し、−端子に入力される信号の電圧が＋端子に入力される信号の電圧よりも高い場合にはＬレベルを出力する。同様にＴＰＢ、ＴＰＢ＊差動信号入力端子に信号が入力されると、ストローブレシーバ２は＋端子に入力される信号の電圧が−端子に入力される信号の電圧よりも高い場合にはＨレベルを出力し、−端子に入力される信号の電圧が＋端子に入力される信号の電圧よりも高い場合にはＬレベルを出力する。
【００１７】
次に、ＩＥＥＥ１３９４規格に従って、２入力ＯＲゲート３はデータレシーバ１の出力信号とストローブレシーバ２の出力信号に基づいて排他的論理和を出力し、フリップフロップ４は２入力ＯＲゲート３の出力信号の立ち上がりでデータレシーバ１の出力信号を取りこみデータ＿１出力端子へ出力する。  また同様に、フリップフロップ５は２入力ＯＲゲート３の出力信号の立ち下がりでデータレシーバ１の出力信号を取りこみデータ＿０出力端子へ出力する。２入力ＯＲゲート３の出力信号は、図示しない上位ブロックでのデータ処理のためにデートを再度取りこむためのシフトレジスタやＦＩＦＯなどヘクロックパルスを供給するためＲｅｃｅｉｖｅ＿ＣＬＫ出力端子に出力される。
【００１８】
また、前述したとおり、データ転送レートの告知はデータパケットの送受信の前に行なわれるアービトレーション手続き時に決定するが、それに基づいた周波数のクロックパルスがＣｌｏｃｋ入力端子から入力される。
【００１９】
図２ではＣｌｏｃｋ入力端子から入力されるクロックパルスの周波数が上から４００ＭＨｚ、１００ＭＨｚ、２００ＭＨｚの場合を破線によって区切り、それぞれの動作を説明する。
【００２０】
まず、前記クロックパルスの周波数がデータ転送レートより高速な４００ＭＨｚの場合について説明する。
【００２１】
Ｃｌｏｃｋ入力端子からクロックパルスが入力され、そのクロックパルスの立ち上がりでフリップフロップ６は２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。次に、２入力ＯＲゲート３の出力信号がＨレベルになった次のクロックパルスの立ち上がりでフリップフロップ６は同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。
【００２２】
これによって２入力排他的ＮＯＲゲート８の出力信号はＨレベルからＬレベルに変化し、２入力排他的ＮＯＲゲート８の出力信号がＬレベルとなったことにより２入力ＯＲゲート９の出力信号もＨレベルからＬレベルに変化する。次のクロックパルスの立ち上がりでフリップフロップ６は同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＨレベルを出力する。これによって２入力排他的ＮＯＲゲート８の出力信号はＬレベルからＨレベルに変化し、２入力排他的ＮＯＲゲート８の出力信号がＨレベルとなったことにより２入力ＯＲゲート９の出力信号もＬレベルからＨレベルに変化する。以降、クロックパルスの立ち上がり毎に２入力排他的ＮＯＲゲート８の出力信号が反転することは図１の回路より容易に理解できる。次に、Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこむことが可能となる。
【００２３】
２入力ＯＲゲート９の出力信号がＨレベルの状態でクロックパルスが立ち上がると、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこみＨレベルを出力する。フリップフロップ１０がＨレベルを出力すると２入力ＯＲゲート９の出力信号はＨレベルに固定される。また、フリップフロップ１０はＥｒｒｏｒ（エラー）出力端子に出力する。Ｅｒｒｏｒ出力端子がＨレベルとなることによって、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが異なっていることをＥｒｒｏｒとして通知できる。ここでＳｅｎｓｅ＿ｅｎ信号は上位ブロックより入力され、アービトレーション手続き時やアイドル時にはＥｒｒｏｒ出力端子にデータ転送レートが異なっているエラー通知をすることを無効にできる場合について説明したが、本発明はアービトレーション手続き時やアイドル時にエラー通知ができるか否かで限定されるものではく、エラー通知ができる手段を備えていればよい。また、エラーを通知した場合には、その情報をそのまま保持する場合について説明したが、本発明はエラー通知の保持方法で限定されるものではなく、同じくエラー通知ができる手段を備えていればよい。
【００２４】
次に、クロックパルスの周波数がデータ転送レートより低速な１００ＭＨｚの場合について説明する。クロックパルスの周波数が４００ＭＨｚの場合と同様、クロックパルスの立ち上がりでフリップフロップ６は２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。フリップフロップ６およびフリップフロップ７の出力信号は共にＬレベルであるため、２入力排他的ＮＯＲゲート８の出力信号はＨレベル、２入力ＯＲゲート９の出力信号はＨレベルとなる。以降、フリップフロップ６、フリップフロップ７および２入力排他的ＮＯＲゲート８の出力信号が変化しないことは図１の回路より容易に理解できる。
【００２５】
Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこむことが可能となり、次のクロックパルスの立ち上がりでフリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこみＨレベルをＥｒｒｏｒ出力端子に出力する。また、２入力ＯＲゲート９の出力信号はＨレベルに固定される。これによって、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが異なっていることをエラーとして通知できる。
【００２６】
次に、前記クロックパルスの周波数がデータ転送レートと同じ２００ＭＨｚの場合について説明する。前述と同様、クロックパルスの立ち上がりでフリップフロップ６は２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。次のクロックパルスの立ち上がりでフリップフロップ６は同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。これによって２入力排他的ＮＯＲゲート８の出力信号はＨレベルからＬレベルに変化し、２入力排他的ＮＯＲゲート８の出力信号がＬレベルとなったことにより２入力ＯＲゲート９の出力信号もＨレベルからＬレベルに変化する。以降、フリップフロップ６はクロックパルスの立ち上がり毎に２入力ＯＲゲート３の出力信号を取りこみ出力信号が反転し、フリップフロップ７はクロックパルスの立ち上がり毎にフリップフロップ６の出力信号を取りこみ出力信号が反転し、また、２入力排他的ＮＯＲゲート８の出力信号は変化しないことは図１の回路より容易に理解できる。Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこむことが可能となり、次のクロックパルスの立ち上がりでフリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこみＬレベルを２入力ＯＲゲート９およびＥｒｒｏｒ出力端子に出力する。クロックパルスの周波数がデータ転送レートと同じ２００ＭＨｚの場合にはエラーが通知されず、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが同じであることが確認できる。
（第１実施例の効果）
以上のように、本発明の第１実施例によればアービトレーション手続き時に受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートが同じであるか否かをデータパケット受信時に判別することが可能となる。
（第２実施例）
本発明の第１実施例では、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが異なっていることをエラーとして通知した後であってもフリップフロップ６、フリップフロップ７、フリップフロップ１０へのクロックパルスの供給されつづけたままとなっており、消費電流を抑える妨げとなっていた。
【００２７】
図３は本発明の第２実施例を示す回路図である。本発明の第２実施例では、フリップフロップ１０のＱ端子はインバータゲート１１の入力にも接続される。２入力ＡＮＤゲート１２の入力はインバータゲート１１の出力とＣｌｏｃｋ入力端子に接続される。また、フリップフロップ６、フリップフロップ７、フリップフロップ１０のＣＬ端子と２入力ＡＮＤゲート１２の出力が接続される。
【００２８】
以上によって、エラー通知後に前記フリップフロップ６、フリップフロップ７、フリップフロップ１０へのクロックパルスの供給を停止することができる。
（動作）
図４は第２実施例の動作を示すタイムチャートである。本説明でもデータ転送レートが２００Ｍｂｐｓとして説明する。また、図４でもＣｌｏｃｋ入力端子から入力されるクロックパルスの周波数が上から破線によって４００ＭＨｚ、１００ＭＨｚ、２００ＭＨｚの場合を区切り、それぞれの動作を説明する。
【００２９】
前記クロックパルスの周波数が４００ＭＨｚおよび１００ＭＨｚの場合はＥｒｒｏｒ出力端子がＨレベルとなるところまでは、本発明の第１実施例の動作を示す。図２のタイムチャートと同じであるため説明は省略する。Ｅｒｒｏｒ出力端子がＨレベルとなることによって、インバータゲート１１の出力信号はＬレベルとなり、２入力ＡＮＤゲート１２の出力信号はＬレベルに固定される。これにより、フリップフロップ６、フリップフロップ７、フリップフロップ１０へのクロックパルスの供給が停止する。
【００３０】
次に、前記クロックパルスの周波数がデータ転送レートと同じ２００ＭＨｚの場合であるが、本発明の第１実施例でも説明した通り、エラー通知がされずＥｒｒｏｒ出力端子がＬレベルのままであるため、インバータゲート１１の出力信号はＨレベルであって、２入力ＡＮＤゲート１２の出力信号はＣｌｏｃｋ入力端子から信号がそのまま出力される。
（第２実施例の効果）
以上のように、本発明の第２実施例によれば、アービトレーション手続き時に受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートが同じであるか否かをデータパケット受信時に判別することが可能となる、といった本発明の第１実施例と同じ効果が得られるだけでなく、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが異なっていることをエラーとして通知した場合には、データ転送レートの判別を行う回路の動作を停止することができるため、消費電流を抑えることができる。
（第３実施例）
実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが等しい場合には前述した通り、データパケット受信時にフリップフロップ６はＣｌｏｃｋ入力端子から入力されるクロックパルスの立ち上がり毎に出力信号が反転する構成となっているが、本発明の第１実施例ではフリップフロップ６が１度誤った信号の取りこみを行なっただけで実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが等しい場合であってもエラー通知を行なう構成であった。
【００３１】
誤った信号を取りこむ原因には以下のようなことが考えられる。
（１）送信側と受信側とでは同じクロックパルスに同期してデータの送受信が行なわれているわけではなく、それぞれ独立してクロックパルスを発生させる手段を備えているため、送信側と受信側とではわずかにクロックパルスの周波数が異なる可能性があること、
（２）ケーブルなどの外乱要因でのノイズによる信号品質の劣化やジッター等により２対の差動信号間にタイミングのずれが発生すること、
等である。
【００３２】
図５は本発明の第３実施例を示す回路図である。
【００３３】
本発明の第３実施例ではクロックパルスの立ち上がり時に２入力排他的ＮＯＲゲート８の出力信号がＨレベルとなっている回数をカウンタ１３で数え、その回数が規定回数を超えた場合にエラー通知を行なう構成である。
【００３４】
２入力排他的ＮＯＲゲート８の出力はカウンタ１３のＣＮＴ＿ＥＮ端子に接続される。カウンタ１３のＣＯ端子は２入力ＯＲゲート９の一方の入力に接続される。カウンタ１３のＣＬ端子はＣｌｏｃｋ入力端子に接続される。ここで、カウンタ１３はＣＮＴ＿ＥＮ端子に入力される信号レベルがＨレベルの状態でＣＬ端子に入力される信号が立ち上がるとカウントアップし、また、カウント値がフルカウントになるとＣＯ端子がＨレベルとなる構成となっている。
【００３５】
ただ、本発明はカウンタ１３の構成で限定されるものではなく、クロックパルスの立ち上がり時に２入力排他的ＮＯＲゲート８の出力信号がＨレベルとなっている回数を数える機能を有していればよい。
（動作）
図６は第３実施例の動作を示すタイムチャートである。この説明でもデータ転送レートが２００Ｍｂｐｓとして説明する。また、図６でもＣｌｏｃｋ入力端子から入力されるクロックパルスの周波数が上から４００ＭＨｚ、１００ＭＨｚ、２００ＭＨｚの場合を破線によって区切り、それぞれの動作を説明する。ＴＰＡ、ＴＰＡ＊差動信号入力端子およびＴＰＢ、ＴＰＢ＊差動信号入力端子に信号が入力されてからのデータレシーバ１、ストローブレシーバ２、２入力ＯＲゲート３、フリップフロップ４およびフリップフロップ５の動作については本発明の第１実施例の説明を援用する。
【００３６】
まず、クロックパルスの周波数がデータ転送レートより高速な４００ＭＨｚの場合について説明する。Ｃｌｏｃｋ入力端子からクロックパルスが入力され、そのクロックパルスの立ち上がりでフリップフロップ６は２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。次に、２入力ＯＲゲート３の出力信号がＨレベルになった次のクロックパルスの立ち上がりでフリップフロップ６は同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。これによって２入力排他的ＮＯＲゲート８の出力信号はＨレベルからＬレベルに変化し、２入力排他的ＮＯＲゲート８の出力信号がＬレベルとなったことにより２入力ＯＲゲート９の出力信号もＨレベルからＬレベルに変化する。
【００３７】
次のクロックパルスの立ち上がりでフリップフロップ６は同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＨレベルを出力する。これによって２入力排他的ＮＯＲゲート８の出力信号はＬレベルからＨレベルに変化し、２入力排他的ＮＯＲゲート８の出力信号がＨレベルとなったことにより２入力ＯＲゲート９の出力信号もＬレベルからＨレベルに変化する。以降、クロックパルスの立ち上がり毎に２入力排他的ＮＯＲゲート８の出力信号が反転することは図５の回路より容易に理解できる。
【００３８】
次に、Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、カウンタ１３はカウント動作が可能となり、また、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこむことが可能となる。なお、本説明においてはカウンタ１３には４ｂｉｔカウンタを用いた場合を例に挙げ説明する。
【００３９】
２入力排他的ＮＯＲゲート８の出力信号がＨレベルの状態でクロックパルスが立ち上がると、カウンタ１３は１づつカウントアップする。カウンタ１３のカウント値が“ＦＥｈ”の状態で再度２入力排他的ＮＯＲゲート８の出力信号がＨレベルの時にクロックパルスが立ち上がると、カウント値がフルカウントとなりカウンタ１３のＣＯ端子からＨレベルを出力し、これによって２入力ＯＲゲート９の出力信号がＨレベルとなる。この状態でクロックパルスが立ち上がると、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこみＨレベルを出力する。フリップフロップ１０がＨレベルを出力すると２入力ＯＲゲート９の出力信号はＨレベルに固定される。また、フリップフロップ１０はＥｒｒｏｒ出力端子に出力する。Ｅｒｒｏｒ出力端子がＨレベルとなることによって、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが異なっていることをエラーとして通知できる。
【００４０】
次に、クロックパルスの周波数がデータ転送レートより低速な１００ＭＨｚの場合について説明する。クロックパルスの周波数が４００ＭＨｚの場合と同様、クロックパルスの立ち上がりでフリップフロップ６は２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。フリップフロップ６およびフリップフロップ７の出力は共にＬレベルであるため、２入力排他的ＮＯＲゲート８の出力信号がＨレベルとなる。以降、フリップフロップ６、フリップフロップ７および２入力排他的ＮＯＲゲート８の出力信号が変化しないことは図５の回路より容易に理解できる。
【００４１】
Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、カウンタ１３はカウント動作が可能となり、また、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこむことが可能となる。２入力排他的ＮＯＲゲート８の出力信号はＨレベルのためクロックパルスが立ち上がる毎にカウンタ１３は１づつカウントアップする。カウンタ１３のカウント値が“ＦＥｈ”の状態で再度クロックパルスが立ち上がると、カウント値がフルカウントとなりカウンタ１３のＣＯ端子からＨレベルを出力し、これによって２入力ＯＲゲート９の出力信号がＨレベルとなる。この状態でクロックパルスが立ち上がると、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこみＨレベルを出力する。フリップフロップ１０がＨレベルを出力すると２入力ＯＲゲート９の出力信号はＨレベルに固定される。また、フリップフロップ１０はＥｒｒｏｒ出力端子に出力する。Ｅｒｒｏｒ出力端子がＨレベルとなることによって、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが異なっていることをエラーとして通知できる。
【００４２】
次に、前記クロックパルスの周波数がデータ転送レートと同じ２００ＭＨｚの場合について説明する。前述と同様、クロックパルスの立ち上がりでフリップフロップ６は２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。次のクロックパルスの立ち上がりでフリップフロップ６は同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７はフリップフロップ６の出力信号を取りこみＬレベルを出力する。これによって２入力排他的ＮＯＲゲート８の出力信号はＨレベルからＬレベルになる。以降、フリップフロップ６はクロックパルスの立ち上がり毎に２入力ＯＲゲート３の出力信号を取りこみ出力信号が反転し、フリップフロップ７はクロックパルスの立ち上がり毎にフリップフロップ６の出力信号を取りこみ出力信号が反転し、また、２入力排他的ＮＯＲゲート８の出力信号は変化しないことは図５の回路より容易に理解できる。
【００４３】
Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、カウンタ１３はカウント動作が可能となり、また、フリップフロップ１０は２入力ＯＲゲート９の出力信号を取りこむことが可能となるが、２入力排他的ＮＯＲゲート８の出力信号はＬレベルのままであるため、カウンタ１３はカウントアップせず、ＣＯ端子からの出力信号もＬレベルのままとなる。また、２入力ＯＲゲート９の出力信号もＬレベルのままとなる。よって、フリップフロップ１０は２入力ＯＲゲート９およびＥｒｒｏｒ出力端子にＬレベルを出力する。
【００４４】
以上述べたことから、クロックパルスの周波数がデータ転送レートと同じ２００ＭＨｚの場合にはエラーが通知されず、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが同じであることが確認できる。
【００４５】
また、クロックパルスの周波数がデータ転送レートと同じ２００ＭＨｚの場合であっても信号品質の劣化やジッター等により２対の差動信号間にタイミングのずれが発生し、２入力排他的ＮＯＲゲート８の出力信号がＨレベルの状態でクロックパルスが立ち上がった場合には、本発明の前記第１実施例では１度その状態が発生しただけでエラー通知をしていたのに対して、本発明のこの第３実施例ではカウンタ１３によってある特定の回数はその状態が発生してもエラー通知を抑制することが可能となる。
（第３実施例の効果）
以上のように、本発明の第３実施例によればアービトレーション手続き時に受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートをデータパケット受信時に判別し、異なる場合にはエラーとして通知することが可能となり、また、受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートが同じ場合であっても信号品質の劣化やジッター等により２対の差動信号間にタイミングのずれの発生等による、誤った情報によってエラーとして通知することをある特定の回数は抑制することが可能となる。
（第４実施例）
前記本発明の第３実施例においても、前記本発明の第１実施例と同様、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが異なっていることをエラーとして通知した後であっても、フリップフロップ６、フリップフロップ７、フリップフロップ１０へのクロックパルスが供給されつづけたままとなっており、消費電流を抑える妨げとなっていた。
【００４６】
図７は本発明の第４実施例を示す回路図である。
【００４７】
本発明の第４実施例では、フリップフロップ１０のＱ端子はインバータゲート１１の入力にも接続される。２入力ＡＮＤゲート１２の入力はインバータゲート１１の出力とＣｌｏｃｋ入力端子に接続される。また、フリップフロップ６、フリップフロップ７、カウンタ１３、フリップフロップ１０のＣＬ端子と２入力ＡＮＤゲート１２の出力が接続される。このように構成することによって、エラー通知後に前記フリップフロップ６、フリップフロップ７、カウンタ１３、フリップフロップ１０へのクロックパルスの供給を停止することができる。
（動作）
図７の回路の動作については本発明の第２実施例および本発明の第３実施例での説明を援用し、ここでは他の実施例にない新規な回路のクロック供給停止動作について説明する。Ｅｒｒｏｒ出力端子がＨレベルとなった場合には、インバータゲート１１の出力信号はＬレベルとなり、また、２入力ＡＮＤゲート１２の出力信号はＬレベルに固定されるため、フリップフロップ６、フリップフロップ７、カウンタ１３、フリップフロップ１０へのクロックパルスの供給が停止する。
（第４実施例の効果）
以上のように、本発明の第４実施例によれば、アービトレーション手続き時に受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートをデータパケット受信時に判別し、異なる場合にはエラーとして通知することが可能となり、また、受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートが同じ場合であっても信号品質の劣化やジッター等により２対の差動信号間にタイミングのずれの発生等による、誤った情報によってエラーとして通知することをある特定の回数は抑制することが可能になるといった本発明の前記第３実施例と同じ効果が得られるだけでなく、実際に送信側から転送されるデータ転送レートとアービトレーション手続き時に受信側で判別したデータ転送レートが異なっていることをエラーとして通知した場合には、データ転送レートの判別を行う回路の動作を停止することができ、消費電流を抑えることができるといった本発明の前記第２実施例と同じ効果も同時に得ることができる。
（第５実施例）
ＩＥＥＥ１３９４規格では、前述した通りデータの転送レートの告知はアービトレーション手続き時にＣｏｍｍｏｎ  ｍｏｄｅ  ｓｉｇｎａ１ｉｎｇ  ｃｕｒｒｅｎｔを引き込むことでコモンモード電圧を変化させることによって行なわれていたが、これが消費電流を抑える妨げとなっていた。
【００４８】
図８は本発明の第５実施例を示す回路図である。
【００４９】
ＴＰＡ、ＴＰＡ＊差動信号入力端子はデータレシーバ１の＋端子、−端子にそれぞれ接続され、ＴＰＢ、ＴＰＢ＊差動信号入力端子はストローブレシーバ２の＋端子、−端子にそれぞれ接続される。データレシーバ１とストローブレシーバ２は共に＋端子に入力される信号の電圧が−端子に入力される信号の電圧よりも高い場合にはＨレベルを出力し、−端子に入力される信号の電圧が＋端子に入力される信号の電圧よりも高い場合にはＬレベルを出力する回路である。データレシーバ１の出力は２入力ＯＲゲート３の一方の入力に接続され、ストローブレシーバ２の出力は２入力ＯＲゲート３のもう一方の入力に接続される。また、データレシーバ１の出力はフリップフロップ４のＤ端子とフリップフロップ５のＤ端子にも接続される。フリップフロップ４およびフリップフロップ５のＱ端子はデータ＿１およびデータ＿０出力端子に接続され受信データとなる。２入力ＯＲゲート３の出力はフリップフロップ４およびフリップフロップ５のＣＬ端子とフリップフロップ６ａ、フリップフロップ６ｂ、フリップフロップ６ｃのＤ端子に接続される。また、Ｒｅｃｅｉｖｅ＿ＣＬＫ出力端子に接続され受信クロックとなる。一般的に前記受信データ（データ＿１、データ＿０）は上位ブロックでのデータ処理のためにシフトレジスタやＦＩＦＯなどに前記受信クロック（Ｒｅｃｅｉｖｅ＿ＣＬＫ）に基づいて取り込まれる。
【００５０】
フリップフロップ６ａ、フリップフロップ７ａ、２入力排他的ＮＯＲゲート８ａ、２入力ＯＲゲート９ａ、フリップフロップ１０ａはデータ転送レートが１００Ｍｂｐｓであるか否かの判別を行なうブロックである。フリップフロップ６ａのＱ端子はフリップフロップ７ａのＤ端子と２入力排他的ＮＯＲゲート８ａの一方の入力に接続され、フリップフロップ７ａのＱ端子は２入力排他的ＮＯＲゲート８ａのもう一方の入力に接続される。２入力排他的ＮＯＲゲート８ａの出力は２入力ＯＲゲート９ａの一方の入力に接続される。２入力ＯＲゲート９ａの出力はフリップフロップ１０ａのＤ端子に接続され、フリップフロップ１０ａのＱ端子は２入力ＯＲゲート９ａのもう一方の入力に接続され、また、データ転送レートの相違を通知するためのＥｒｒｏｒ１００出力端子に接続される。
【００５１】
Ｃｌｏｃｋ１００入力端子はフリップフロップ６ａとフリップフロップ７ａとフリップフロップ１０ａのＣＬ端子に接続され、１００ＭＨｚのクロックが入力される。
【００５２】
また、フリップフロップ６ｂ、フリップフロップ７ｂ、２入力排他的ＮＯＲゲート８ｂ、２入力ＯＲゲート９ｂ、フリップフロップ１０ｂはデータ転送レートが２００Ｍｂｐｓであるか否かの判別を行なうブロックである。フリップフロップ６ｂのＱ端子はフリップフロップ７ｂのＤ端子と２入力排他的ＮＯＲゲート８ｂの一方の入力に接続され、フリップフロップ７ｂのＱ端子は２入力排他的ＮＯＲゲート８ｂのもう一方の入力に接続される。２入力排他的ＮＯＲゲート８ｂの出力は２入力ＯＲゲート９ｂの一方の入力に接続される。２入力ＯＲゲート９ｂの出力はフリップフロップ１０ｂのＤ端子に接続され、フリップフロップ１０ｂのＱ端子は２入力ＯＲゲート９ｂのもう一方の入力に接続され、また、データ転送レートの相違を通知するためのＥｒｒｏｒ２００出力端子に接続される。Ｃｌｏｃｋ２００入力端子はフリップフロップ６ｂとフリップフロップ７ｂとフリップフロップ１０ｂのＣＬ端子に接続され、２００ＭＨｚのクロックが入力される。
【００５３】
また、フリップフロップ６ｃ、フリップフロップ７ｃ、２入力排他的ＮＯＲゲート８ｃ、２入力ＯＲゲート９ｃ、フリップフロップ１０ｃはデータ転送レートが４００Ｍｂｐｓであるか否かの判別を行なうブロックである。フリップフロップ６ｃのＱ端子はフリップフロップ７ｃのＤ端子と２入力排他的ＮＯＲゲート８ｃの一方の入力に接続され、フリップフロップ７ｃのＱ端子は２入力排他的ＮＯＲゲート８ｃのもう一方の入力に接続される。２入力排他的ＮＯＲゲート８ｃの出力は２入力ＯＲゲート９ｃの一方の入力に接続される。２入力ＯＲゲート９ｃの出力はフリップフロップ１０ｃのＤ端子に接続され、フリップフロップ１０ｃのＱ端子は２入力ＯＲゲート９ｃのもう一方の入力に接続され、また、データ転送レートの相違を通知するためのＥｒｒｏｒ４００出力端子に接続される。Ｃｌｏｃｋ４００入力端子はフリップフロップ６ｃとフリップフロップ７ｃとフリップフロップ１０ｃのＣＬ端子に接続され、４００ＭＨｚのクロックが入力される。
【００５４】
Ｓｅｎｓｅ＿ｅｎ入力端子はフリップフロップ１０ａ、フリップフロップ１０ｂ、フリップフロップ１０ｃのＣＬ端子に接続され、データ転送レートの判別を実施するか否かの制御が行なわれる。
（動作）
図９は第５実施例の動作を示すタイムチャートである。本説明でもデータ転送レートが２００Ｍｂｐｓとして説明する。ＴＰＡ、ＴＰＡ＊差動信号入力端子およびＴＰＢ、ＴＰＢ＊差動信号入力端子に信号が入力されてからのデータレシーバ１、ストローブレシーバ２、２入力ＯＲゲート３、フリップフロップ４およびフリップフロップ５の動作については前記の実施例から容易に理解できるためここでは省略する。
【００５５】
まず、データ転送レートが１００Ｍｂｐｓであるか否かの判別を行なうブロックの動作について説明する。Ｃｌｏｃｋ１００入力端子から１００ＭＨｚクロックパルスが入力され、その１００ＭＨｚクロックパルスの立ち上がりでフリップフロップ６ａは２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７ａはフリップフロップ６ａの出力信号を取りこみＬレベルを出力する。
【００５６】
フリップフロップ６ａおよびフリップフロップ７ａの出力信号は共にＬレベルであるため、２入力排他的ＮＯＲゲート８ａの出力信号がＨレベル、２入力ＯＲゲート９ａの出力信号もＨレベルとなる。以降、フリップフロップ６ａ、フリップフロップ７ａおよび２入力排他的ＮＯＲゲート８ａの出力信号が変化しないことは図８の回路より容易に理解できる。
【００５７】
Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、フリップフロップ１０ａは２入力ＯＲゲート９ａの出力信号を取りこむことが可能となり、次の１００ＭＨｚクロックパルスの立ち上がりでフリップフロップ１０ａは２入力ＯＲゲート９ａの出力信号を取りこみＨレベルをＥｒｒｏｒ１００出力端子に出力する。また、２入力ＯＲゲート９ａの出力信号はＨレベルに固定される。これによって、送信側から転送されるデータ転送レートが１００Ｍｂｐｓではないことをエラーとして通知できる。
【００５８】
次に、データ転送レートが２００Ｍｂｐｓであるか否かの判別を行なうブロックの動作について説明する。Ｃｌｏｃｋ２００入力端子から２００ＭＨｚクロックパルスが入力され、その２００ＭＨｚクロックパルスの立ち上がりでフリップフロップ６ｂは２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７ｂはフリップフロップ６ｂの出力信号を取りこみＬレベルを出力する。
【００５９】
次の２００ＭＨｚクロックパルスの立ち上がりでフリップフロップ６ｂは同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７ｂはフリップフロップ６ｂの出力信号を取りこみＬレベルを出力する。これによって２入力排他的ＮＯＲゲート８ｂの出力信号はＨレベルからＬレベルに変化し、２入力排他的ＮＯＲゲート８ｂの出力信号がＬレベルとなったことにより２入力ＯＲゲート９ｂの出力信号もＨレベルからＬレベルに変化する。以降、フリップフロップ６ｂは２００ＭＨｚクロックパルスの立ち上がり毎に２入力ＯＲゲート３の出力信号を取りこみ出力信号が反転し、フリップフロップ７ｂは２００ＭＨｚクロックパルスの立ち上がり毎にフリップフロップ６ｂの出力信号を取りこみ出力信号が反転し、また、２入力排他的ＮＯＲゲート８ｂの出力信号は変化しないことは図８の回路より容易に理解できる。Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、フリップフロップ１０ｂは２入力ＯＲゲート９ｂの出力信号を取りこむことが可能となり、次の２００ＭＨｚクロックパルスの立ち上がりでフリップフロップ１０ｂは２入力ＯＲゲート９ｂの出力信号を取りこみＬレベルを２入力ＯＲゲート９ｂおよびＥｒｒｏｒ２００出力端子に出力する。
【００６０】
以上述べたとおり、エラー通知を行なわないため送信側から転送されるデータ転送レートが２００Ｍｂｐｓであることが確認できる。
【００６１】
次に、データ転送レートが４００Ｍｂｐｓであるか否かの判別を行なうブロックの動作について説明する。Ｃｌｏｃｋ４００入力端子から４００ＭＨｚクロックパルスが入力され、その４００ＭＨｚクロックパルスの立ち上がりでフリップフロップ６ｃは２入力ＯＲゲート３の出力信号を取りこみＬレベルを出力し、フリップフロップ７ｃはフリップフロップ６ｃの出力信号を取りこみＬレベルを出力する。
【００６２】
次に、２入力ＯＲゲート３の出力信号がＨレベルになった次の４００ＭＨｚクロックパルスの立ち上がりでフリップフロップ６ｃは同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７ｃはフリップフロップ６ｃの出力信号を取りこみＬレベルを出力する。これによって２入力排他的ＮＯＲゲート８ｃの出力信号はＨレベルからＬレベルに変化し、２入力排他的ＮＯＲゲート８ｃの出力信号がＬレベルとなったことにより２入力ＯＲゲート９ｃの出力信号もＨレベルからＬレベルに変化する。次の４００ＭＨｚクロックパルスの立ち上がりでフリップフロップ６ｃは同じく２入力ＯＲゲート３の出力信号を取りこみＨレベルを出力し、フリップフロップ７ｃはフリップフロップ６ｃの出力信号を取りこみＨレベルを出力する。これによって２入力排他的ＮＯＲゲート８ｃの出力信号はＬレベルからＨレベルに変化し、２入力排他的ＮＯＲゲート８ｃの出力信号がＨレベルとなったことにより２入力ＯＲゲート９ｃの出力信号もＬレベルからＨレベルに変化する。以降、４００ＭＨｚクロックパルスの立ち上がり毎に２入力排他的ＮＯＲゲート８ｃの出力信号が反転することは図９より容易に理解できる。次に、Ｓｅｎｓｅ＿ｅｎ入力端子からＨレベルが入力されると、フリップフロップ１０ｃは２入力ＯＲゲート９ｃの出力信号を取りこむことが可能となる。２入力ＯＲゲート９ｃの出力信号がＨレベルの状態で４００ＭＨｚクロックパルスが立ち上がりると、フリップフロップ１０ｃは２入力ＯＲゲート９ｃの出力信号を取りこみＨレベルを出力する。フリップフロップ１０ｃがＨレベルを出力すると２入力ＯＲゲート９ｃの出力信号はＨレベルに固定される。また、フリップフロップ１０ｃはＥｒｒｏｒ出力端子に出力する。これによって、送信側から転送されるデータ転送レートが４００Ｍｂｐｓではないことをエラーとして通知できる。
（第５実施例の効果）
以上のように、本発明の第５実施例によれば、アービトレーション手続きでのデータ転送レートの告知の有無にかかわらず、実際に送信側から転送されるデータ転送レートを受信側で判別することが可能となるため、同じ機能を備えた装置同士でのデータ転送ではアービトレーション手続き時にＣｏｍｍｏｎ  ｍｏｄｅＳｉｇｎａ１ｉｎｇ  Ｃｕｒｒｅｎｔを引き込む必要が無くデータ転送レートの判別を行なうことができるため、消費電流を抑えることができる。
【００６３】
また、送信側の装置に同じ機能を備えていない場合には、データ転送レートの告知のためにＣｏｍｍｏｎ  ｍｏｄｅ  ｓｉｇｎａ１ｉｎｇ  ｃｕｒｒｅｎｔを引き込む機能を実装する必要があるが、その機能を阻害することはないため、従来の装置との接続も可能である。
【００６４】
また、実際に送信側から転送されるデータ転送レートを受信側で判別することが可能となるため、アービトレーション手続き時にデータ転送レートの判別が送信側と受信側で異なっていても、上位ブロックでは送信側から転送されるデータ転送レートに基づいてデータ処理を行なうことが可能となる。
（第６実施例）
前記本発明の第５実施例では、送信側から転送されるデータ転送レートが１００Ｍｂｐｓであるか否かの判別を行なうブロック、２００Ｍｂｐｓであるか否かの判別を行なうブロック、４００Ｍｂｐｓであるか否かの判別を行なうブロックのすべてがエラーを通知した後であっても各周波数のクロックパルスが供給され続けたままとなっており、消費電流を抑える妨げとなっていた。
【００６５】
図１０は本発明の第６実施例を示す回路図である。
【００６６】
本発明の第６実施例では、フリップフロップ１０ａのＱ端子はインバータゲート１１ａの入力にも接続される。２入力ＡＮＤゲート１２ａの入力はインバータゲート１１ａの出力とＣｌｏｃｋ１００入力端子に接続される。また、フリップフロップ６ａ、フリップフロップ７ａ、フリップフロップ１０ａのＣＬ端子と２入力ＡＮＤゲート１２ａの出力が接続される。
【００６７】
また、フリップフロップ１０ｂのＱ端子はインバータゲート１１ｂの入力にも接続される。２入力ＡＮＤゲート１２ｂの入力はインバータゲート１１ｂの出力とＣｌｏｃｋ２００入力端子に接続される。また、フリップフロップ６ｂ、フリップフロップ７ｂ、フリップフロップ１０ｂのＣＬ端子と２入力ＡＮＤゲート１２ｂの出力が接続される。
【００６８】
また、フリップフロップ１０ｃのＱ端子はインバータゲート１１ｃの入力にも接続される。２入力ＡＮＤゲート１２ｃの入力はインバータゲート１１ｃの出力とＣｌｏｃｋ４００入力端子に接続される。また、フリップフロップ６ｃ、フリップフロップ７ｃ、フリップフロップ１０ｃのＣＬ端子と２入力ＡＮＤゲート１２ｃの出力が接続される。
【００６９】
以上述べたとおりであるから、エラー通知後にエラーを通知したデータ転送レートの判別を行なうブロックヘのクロックパルスの供給を停止することができる。
（動作）
図１１は第６実施例の動作を示すタイムチャートである。この回路動作の説明でもデータ転送レートを２００Ｍｂｐｓとした例で説明する。
【００７０】
データ転送レートが１００Ｍｂｐｓであるか否かの判別を行なうブロックの場合はＥｒｒｏｒ１００出力端子がＨレベルとなるところまでは、本発明の前記第５実施例の動作を示す図９のタイムチャートと同じであるためその説明を援用する。Ｅｒｒｏｒ１００出力端子がＨレベルとなることによって、インバータゲート１１ａの出力信号はＬレベルとなり、２入力ＡＮＤゲート１２ａの出力信号はＬレベルに固定される。これにより、フリップフロップ６ａ、フリップフロップ７ａ、フリップフロップ１０ａへのクロックパルスの供給が停止する。
【００７１】
データ転送レートが２００Ｍｂｐｓであるか否かの判別を行なうブロックの場合は、本発明の前記第５実施例でも説明したとおり、エラー通知がされずＥｒｒｏｒ２００出力端子がＬレベルのままであるため、インバータゲート１１ｂの出力信号はＨレベルであって、２入力ＡＮＤゲート１２ｂの出力信号はＣｌｏｃｋ２００入力端子から信号がそのまま出力される。
【００７２】
データ転送レートが４００Ｍｂｐｓであるか否かの判別を行なうブロックの場合はＥｒｒｏｒ４００出力端子がＨレベルとなるところまでは、本発明の前記第５実施例の動作を示す図９のタイムチャートと同じであるためその説明を援用する。Ｅｒｒｏｒ４００出力端子がＨレベルとなることによって、インバータゲート１１ｃの出力信号はＬレベルとなり、２入力ＡＮＤゲート１２ｃの出力信号はＬレベルに固定される。これにより、フリップフロップ６ｃ、フリップフロップ７ｃ、フリップフロップ１０ｃへのクロックパルスの供給が停止する。
（第６実施例の効果）
以上述べたとおり、本発明の第６実施例によれば、本発明の前記第５実施例と同じ効果が得られるだけでなく、エラーを通知した送信側から転送されるデータ転送レートの判別をするブロックの回路の動作を停止することができ、消費電流を抑えることができるといった効果も同時に得ることができる。
本発明の前記各実施例では、Ｓｅｎｓｅ＿ｅｎ信号によってエラー通知を行なわないようにできる場合について説明したが、本発明はエラー通知を行なうか否かの制御機能の有無で限定されるものではく、エラー通知ができる手段を備えていればよい。また、エラーを通知した場合には、その情報をそのまま保持する場合について説明したが、本発明はエラー通知の保持方法で限定されるものではなく、同じくエラー通知ができる手段を備えていればよい。
【００７３】
本発明の第１実施例から第４実施例では、Ｃｌｏｃｋ端子から入力され、送信側から転送されるデータ転送レートを判別するために用いられるクロックパルスの周波数は１００ＭＨｚ、２００ＭＨｚ、４００ＭＨｚの場合についてのみを説明したが、本発明はＣｌｏｃｋ端子から入力されるクロックパルスの周波数で限定されるものではない。今後、拡張される可能性がある８００Ｍｂｐｓ、１．６Ｇｂｐｓ等のデータ転送レートにもクロックパルスの周波数を変えることによって対応することが可能であり、また、データ転送レートは１００Ｍｂｐｓのみをサポートする装置や１００Ｍｂｐｓ、２００Ｍｂｐｓまでをサポートする装置にも対応することが可能である。
【００７４】
本発明の第３実施例から第４実施例では、カウンタ１３には４ｂｉｔカウンタを用いた場合を例に挙げ説明したが、本発明はカウンタ１３の構成で限定されるものではない。例えば、８ｂｉｔカウンタを用いることも可能である。また、カウンタ１３にデータロード機能を設けていれば、エラーとして通知するまでの誤った情報を抑制する回数を任意にかつ容易に設定することが可能となる。
【００７５】
本発明の第５実施例と第６実施例では、送信側から転送されるデータ転送レートが１００Ｍｂｐｓ、２００Ｍｂｐｓ、４００Ｍｂｐｓの場合に判別を行なうことができることを説明したが、本発明は送信側から転送されるデータ転送レートの種類やその数で限定されるものではない。今後、拡張される可能性がある８００Ｍｂｐｓ、１．６Ｇｂｐｓ等のデータ転送レートにも送信側から転送されるデータ転送レートの判別を行なうブロックを追加するだけで対応することが可能である。
（第７実施例）
以上述べた実施例のアービトレーションにおいては、ＴＰＡ、ＴＰＢはツイストペア線による差動動作であり、扱う情報として“０”、“１”、“Ｈｉ−Ｚ”の３値である。ＴＰＡ、ＴＰＢはそれぞれドライバとレシーバをもっており、自ノードのＴＰＡは対向ノードのＴＰＢに、自ノードのＴＰＢは対向ノードのＴＰＡに接続される。ＩＥＥＥ１３９４では、ＴＰＡ、ＴＰＢの２本のペア線上で両端のドライバのアクションに対するケーブル上の状態をレシーバで監視し、ＴＰＡ、ＴＰＢの２本のケーブル上で作り出される状態により、ノード間の複雑な制御を行っている。
【００７６】
ＴＰＡ、ＴＰＢ信号は、ストローブ信号およびデータ信号によりデータとクロック成分を受け渡すだけでなく、前記差動信号による“０”、“１”、“Ｈｉ−Ｚ”の３つの状態と、ＴＰＡ、ＴＰＢのペア線に印加されるバイアスによりケーブルの挿抜や、速度信号、その他バスリセットやアービトレーションなど、ノード間の状態のやりとりを行う。
【００７７】
上で述べた実施例では、バケットを送信する前のＰＲＩＦＩＸ時間において、バケットのスピード情報が転送される。ＩＥＥＥ１３９４ケーブル環境として取り扱えるスピードは、今のところ９８．３０４Ｍｂｐｓ（Ｓ１００）、１９６．６０８Ｍｂｐｓ（Ｓ２００）、３９３．２１６Ｍｂｐｓ（Ｓ４００）となっている。スピード情報を送信するには、ＤＡＴＡ＿ＰＲＩＦＩＸ時間にＴＰＢペア線とＧＮＤ間にバイアス電流を流すことで行う。Ｓ２００で３．５ｍＡ、Ｓ４００で１０ｍＡを流し、Ｓ１００では流さない。バイアス電流の差は受信側で振幅の差として検出できるので、対向ノードのＴＰＡに実装されている２つのスピード情報検出用コンパレータの検出状態でスピードが判断できる。
【００７８】
上記アービトレーションと同様な機能として、他にイーサネット（登録商標）におけるオートネゴシエーション機能（１つの対撚り線リンク・セグメント上で対向接続された装置が、お互いの共通する最高の動作モードで接続することを実現する機能）がある。
【００７９】
次に、イーサネット（登録商標）に適応した本発明の第７実施例について説明する。
【００８０】
この第７実施例は、本発明の前記第１実施例に示すデータ転送レートの相違をＥｒｒｏｒ信号によって通知する回路を組み込んで拡張する例である。前記ＩＥＥＥ１３９４とイーサネット（登録商標）との相違は、前記ＩＥＥＥ１３９４が１対の通信線で送受信を行うものであるのに対して、イーサネット（登録商標）は送信と受信をそれぞれ１対の通信線で行う点にある。
【００８１】
図１５は、本発明の第７実施例を示す回路図である。
【００８２】
ＲＸＤ＋、ＲＸＤ−受信データ信号入力端子は、レシーバ２１の＋端子、−端子にそれぞれ接続される。レシーバ２１の出力端子はＤＬＬ（遅延ロックループ）回路２２に接続される。ＤＬＬ回路２２は、受信信号を遅延させてクロックを検出する機能を有し、データ（Ｄａｔａ）とクロック（Ｃｌｏｃｋ）を分離して出力する出力端子を有する。ＤＬＬ回路２２のＤａｔａ端子は図示しないデータ処理回路に接続される。ＤＬＬ回路２２のＣｌｏｃｋ端子はフロップフリップ６のＤ端子に接続される。
【００８３】
このフリップフロップ６から後段の、フリップフロップ７、２入力排他的ＮＯＲゲート８、２入力ＯＲゲート９、フリップフロップ１０から構成され、Ｓｅｎｓｅ−ｅｎ入力端子から制御信号が入力され、Ｃｌｏｃｋ入力端子からクロックパルスが入力され、Ｅｒｒｏｒ出力端子にエラー信号を出力する回路は、既に前記第１実施例として述べたとおりの回路構成となっている。
【００８４】
イーサネット（登録商標）に適用されるＩＥＥＥ８０２．３規格では、データの転送レートは１００Ｍｂｐｓ、１０Ｍｂｐｓなど複数の転送レートが規定されている。
（動作）
Ｃｌｏｃｋ入力端子から入力されたクロックパルスの周波数が受信データ信号のデータ転送レートと同じ周波数の場合について説明する。
【００８５】
レシーバ２１で受信した受信データ信号ＲＸＤ＋、ＲＸＤ−は、ＤＬＬ回路２２によりデータ信号とクロック信号に分離されて出力される。前記クロック信号はフリップフロップ６のＤ端子に入力される。一方、Ｃｌｏｃｋ入力端子からは前記転送レートのいずれか一つ、例えば１００Ｍｂｐｓの入力クロックパルスが供給され、前記フリップフロップ６およびフリップフロップ７のクロック端子に入力される。
【００８６】
まず、入力クロックパルスが両フリップフロップ６および７のクロック端子に入力すると、フリップフロップ６は入力クロックパルスの立ち上がりに同期してＤＬＬ回路２２の出力クロックのＨレベルを取り込み２入力排他的ＮＯＲゲート８にＨレベルを出力する。
【００８７】
次の入力クロックパルスの立ち上がりに同期して、フリップフロップ６はＤＬＬ回路２２の出力クロックのＬレベル取り込み２入力排他的ＮＯＲゲート８にＬレベルを出力し、フリップフロップ７はフリップフロップ６の出力を取り込み２入力排他的ＮＯＲゲート８にＨレベルを出力する。以降、フリップフロップ６はクロックパルスの立ち上がり毎にＤＬＬ回路２２の出力信号を取り込み出力信号が反転し、フリップフロップ７はクロックパルスの立ち上がり毎にフリップフロップ６の出力信号を取り込み出力信号が反転する。この結果、２入力排他的ＮＯＲゲート８の出力信号は変化しないことになる。
【００８８】
一方、入力クロックパルスの周波数がデータ転送レートと異なる周波数の場合について説明する。
【００８９】
両フリップフロップ６および７の出力がクロックパルスの立ち上がりに同期して交互にＨレベルを出力するように出力しなくなったとき、即ち、１入力クロックパルスの遅れをもって同じ周波数で同じ波形のパルスを両フリップフロップ６および７で交互に出力しない限り、転送レートの不一致としてＥｒｒｏｒ出力で検出することができる。
【００９０】
図１５は前記図１のＥｒｒｏｒ検出回路を適用したが、他の実施例のＥｒｒｏｒ検出回路を適用することも同様に可能である。
（第７実施例の効果）
以上のように、本発明の第７実施例によればデータ転送前に受信側で判別したデータ転送レートと、実際に送信側から送られるデータ転送レートが同じであるか否かをデータ受信前に判別することが可能となる。
【００９１】
【発明の効果】
本発明は以下に示す効果を奏する。
（１）アービトレーションまたはオートネゴシエーションなどのデータ転送前の手続き時に受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートが同じであるか否かをデータパケット受信時に判別することができる。
（２）実際に送信側から転送されるデータ転送レートとデータ転送前の手続き時に受信側で判別したデータ転送レートが異なっていることをエラーとして通知した場合には、データ転送レートの判別を行う回路の動作を停止することができるため、消費電流を抑えることができる。
（３）受信側で判別したデータ転送レートと、実際に送信側から転送されるデータ転送レートが同じ場合であっても信号品質の劣化やジッター等により２対の差動信号間にタイミングのずれの発生等による、誤った情報によってエラーとして通知することをある特定の回数は抑制することが可能となる。
（４）送信側の装置に同じ機能を備えていない場合には、データ転送レートの告知のためにＣｏｍｍｏｎ  ｍｏｄｅ  ｓｉｇｎａ１ｉｎｇ  ｃｕｒｒｅｎｔを引き込む機能を実装する必要があるが、その機能を阻害することはないため、従来の装置との接続も可能である。
【００９２】
また、実際に送信側から転送されるデータ転送レートを受信側で判別することが可能となるため、データ転送前の手続き時にデータ転送レートの判別が送信側と受信側で異なっていても、上位ブロックでは送信側から転送されるデータ転送レートに基づいてデータ処理を行なうことが可能となる。
（５）データ転送前の手続き機能の可否や信号波形の状態を簡便に知ることができる。
【図面の簡単な説明】
【図１】本発明の第１実施例を示す回路図である。
【図２】本発明の第１実施例の動作を示すタイムチャートである。
【図３】本発明の第２実施例を示す回路図である。
【図４】本発明の第２実施例の動作を示すタイムチャートである。
【図５】本発明の第３実施例を示す回路図である。
【図６】本発明の第３実施例の動作を示すタイムチャートである。
【図７】本発明の第４実施例を示す回路図である。
【図８】本発明の第５実施例を示す回路図である。
【図９】本発明の第５実施例の動作を示すタイムチャートである。
【図１０】本発明の第６実施例を示す回路図である。
【図１１】本発明の第６実施例の動作を示すタイムチャートである。
【図１２】従来のケーブルメディアインタフェース回路図である。
【図１３】従来のデータストローブ符号化方式のタイムチャートを示す図である。
【図１４】従来のデータストローブデコード回路図である。
【図１５】本発明の第７実施例を示す回路図である。
【符号の説明】
ＴＰＡ、ＴＰＡ＊    ストローブ信号
ＴＰＢ、ＴＰＢ＊    データ信号
１    データレシーバ
２    ストローブレシーバ
３    ２入力ＯＲゲート
４、５、６、６ａ、６ｂ、６ｃ、７、７ａ、７ｂ、７ｃ    フリップフロップ
８、８ａ、８ｂ、８ｃ    ２入力排他的（ｅｃｌｕｓｉｖｅ）ＮＯＲ  ゲート
９、９ａ、９ｂ、９ｃ    ２入力排他的（ｅｃｌｕｓｉｖｅ）ＯＲ  ゲート
１０、１０ａ、１０ｂ、１０ｃ    フリップフロップ
１１、１１ａ、１１ｂ、１１ｃ    インバータゲート
１２、１２ａ、１２ｂ、１２ｃ    ２入力ＡＮＤゲート
１３    カウンタ
２１    レシーバ
２２    ＤＬＬ（遅延ロックループ）回路
Ｒｅｃｅｉｖｅ＿ＣＬＫ    受信クロック
Ｄａｔｅ＿１    データ  １
Ｄａｔｅ＿０    データ  ０
Ｅｒｒｏｒ    エラー
Ｅｒｒｏｒ１００    （データ転送レートが１００Ｍｂｐｓの場合の）エラー
Ｅｒｒｏｒ２００    （データ転送レートが２００Ｍｂｐｓの場合の）エラー
Ｅｒｒｏｒ４００    （データ転送レートが４００Ｍｂｐｓの場合の）エラー
Ｓｅｎｓｅ＿ｅｎ    データ転送レートの判別を実施するか否かの制御用の信号
Ｃｌｏｃｋ      （データパケットの送受信の前に行われるアービトレーション手続によって判別されたデータ転送レートに基づいた周波数の）クロックパルス
Ｃｌｏｃｋ１００  （周波数が１００ＭＨｚの場合の）クロックパルス
Ｃｌｏｃｋ２００    （周波数が２００ＭＨｚの場合の）クロックパルス
Ｃｌｏｃｋ４００  （周波数が４００ＭＨｚの場合の）クロックパルス
【図１】
0003845003.tif 000002
【図２】
0003845003.tif 000003
【図３】
0003845003.tif 000004
【図４】
0003845003.tif 000005
【図５】
0003845003.tif 000006
【図６】
0003845003.tif 000007
【図７】
0003845003.tif 000008
【図８】
0003845003.tif 000009
【図９】
0003845003.tif 000010
【図１０】
0003845003.tif 000011
【図１１】
0003845003.tif 000012
【図１２】
0003845003.tif 000013
【図１３】
0003845003.tif 000014
【図１４】
0003845003.tif 000015
【図１５】
0003845003.tif 000016