(57)【要約】  データビットのセットを別のモジュールへ通信バスを介してデュアルエンコーディングを用い送信する、切り替え動作の少ないモジュールが提供される。前記モジュールは、データビットのセットを前のデータビットのセットと比較し、データビットの送信に必要な遷移の数の表示を決定し、データビットの送信に必要な遷移の数がデータビットのセットの全ビット数の半数より大きいと決定された場合、データビットを送信前に反転し、及びデータビットのセットが反転されているか否かの表示を提供するバス反転符号化手段；及び他のモジュールへ通信バスを介しデータビットのセット、それらの対応するコピー及びデータビットのセットが反転されているか否かの表示を送信する手段を有する。前記モジュールはまた、データビットのセットのデータビットの対応するコピーを生成する手段；及び他のモジュールへ通信バスを介しデータビットのセット、それらの対応するコピー及びデータビットのセットが反転されているか否かの表示を送信する手段を有する。
2007526574.tif 000002
【特許請求の範囲】
【請求項１】
モジュールであって、データビットのセットを別のモジュールへ通信バスを介し送信し、前記モジュールは：
前記モジュールの動作中に前記通信バスの遷移の数を低減するバス反転符号化手段；
データビットのセットのデータビットの対応するコピーを生成する手段；
他のモジュールへ前記通信バスを介し前記データビットのセット、それらの対応するコピー及び前記データビットのセットが反転されているか否かの表示を送信する手段
を有し、前記バス反転符号化手段は：
前記データビットのセットを前のデータビットのセットと比較し、前記データビットの送信に必要な遷移の数の表示を決定し；
前記データビットの送信に必要な遷移の数が前記データビットのセットの全ビット数の半数より大きいと決定された場合、前記データビットを送信前に反転し；及び
前記データビットのセットが反転されているか否かの表示を提供する、
モジュール。
【請求項２】
前記データビットの対応するコピーを生成する手段は、対応するコピーを更に反転する、請求項１記載のモジュール。
【請求項３】
第１のパリティビットを前記データビットのセットから生成する手段を更に有し；及び
前記手段は、前記第１のパリティビットを他のモジュールへ更に送信する、
請求項１又は２記載のモジュール。
【請求項４】
前記第１のパリティビットを生成する手段は、１つ以上の論理ゲートを有する、請求項３記載のモジュール。
【請求項５】
前記第１のパリティビットのコピーを生成する手段を更に有し；
前記送信する手段は、前記第１のパリティビットのコピーを他のモジュールへ更に送信する、
請求項３又は４記載のモジュール。
【請求項６】
前記第１のパリティビットのコピーを生成する手段は、前記第１のパリティビットのコピーを更に反転する、請求項２に従う請求項５記載のモジュール。
【請求項７】
前記データビットのセットが反転されているか否かの表示は、前記第１のパリティビット及びその対応するコピーに符号化される、請求項５又は６記載のモジュール。
【請求項８】
前記データビットのセットが前記バス反転符号化手段により反転されている場合、前記第１のパリティビット及びその対応するコピーは、送信前に反転される、請求項７記載のモジュール。
【請求項９】
前記データビットのセットが前記バス反転符号化手段により反転されていない場合、前記第１のパリティビット及びその対応するコピーは、送信前に反転される、請求項７記載のモジュール。
【請求項１０】
前記バス反転符号化手段は、１つ以上の論理ゲートを有する、前記請求項の何れか記載のモジュール。
【請求項１１】
前記表示は、反転信号を有する、請求項１乃至６の何れか１項記載のモジュール。
【請求項１２】
前記反転信号のコピーを生成する手段を更に有し；
前記送信する手段は、前記反転信号のコピーを他のモジュールへ更に送信する、
請求項１１記載のモジュール。
【請求項１３】
前記反転信号のコピーを生成する手段は、前記反転信号のコピーを更に反転する、請求項１２記載のモジュール。
【請求項１４】
モジュールであって、データビットのセットを別のモジュールから通信バスを介して受信し、前記モジュールは：
データビットのセット、前記データビットのセットの対応するコピー及び前記データビットのセットが反転されているか否かの表示を受信する手段；
前記データビットのセットが反転されているか否かの表示が前記データビットのセットは反転されていないと示す場合、受信データビットを前記モジュールの出力として選択し、及び前記表示が前記データビットのセットは反転されていると示す場合、受信データビットの反転を前記モジュールの出力として選択する手段、
を有する、請求項５記載のモジュール。
【請求項１５】
前記データビットのセットの対応するコピーは、前記データビットのセットの反転されたコピーである、請求項１４記載のモジュール。
【請求項１６】
前記受信したデータビットのセット内の１つ以上の誤りの存在を検出する手段を更に有する、請求項１４又は１５記載のモジュール。
【請求項１７】
前記受信する手段は、第１のパリティビットを他のモジュールから更に受信し；及び前記モジュールは、
第２のパリティビットを前記受信したデータビットのセットから生成する手段を更に有し：及び
前記受信したデータビットセット内の１つ以上の誤りの存在を検出する手段は、前記第１及び第２のパリティビットを比較する、請求項１６記載のモジュール。
【請求項１８】
前記第２のパリティビットを生成する手段は、１つ以上の論理ゲートを有する、請求項１７記載のモジュール。
【請求項１９】
前記受信データビットの１つ以上の誤りの存在を検出する手段は、論理ゲートを有する、請求項１６又は１７記載のモジュール。
【請求項２０】
前記モジュールは、データビットの受信したセットの誤りを訂正する手段を更に有し、前記誤りを訂正する手段は、受信データビット又はその対応するコピーを検出する手段により出力された制御信号に応じて出力する、請求項１６乃至１９の何れか１項記載のモジュール。
【請求項２１】
前記受信する手段は、前記第１のパリティビットを他のモジュールから更に受信する、請求項１７、１８又は１９記載のモジュール。
【請求項２２】
前記データビットのセットが反転されているか否かの表示は、前記受信された第１のパリティビット及びそのコピーに符号化される、請求項２１記載のモジュール。
【請求項２３】
前記モジュールは：
第３のパリティビットを前記データビットのセットの対応するコピーから生成する手段；
前記受信した第１のパリティビット、前記受信した第１のパリティビットのコピー、前記第２のパリティビット及び前記第３のパリティビットを比較し前記データビットのセットが反転されているか否かを決定する手段、
を更に有する、請求項２２記載のモジュール。
【請求項２４】
前記表示は、反転信号を有する、請求項１４乃至２１の何れか１項記載のモジュール。
【請求項２５】
前記受信する手段は、前記反転信号のコピーを他のモジュールから更に受信する、請求項２４記載のモジュール。
【請求項２６】
前記反転信号のコピーは、前記反転信号の反転されたコピーである、請求項２５記載のモジュール。
【請求項２７】
前記受信した反転信号又はその対応するコピー内に誤りの存在を検出する手段を更に有する、請求項２５又は２６記載のモジュール。
【請求項２８】
前記受信した反転信号又はその対応するコピー内の誤りの存在を検出する手段は、前記受信した反転信号及びその対応するコピーを比較する、請求項２７記載のモジュール。
【請求項２９】
システムであって、請求項１乃至１３の何れか１項記載の送信モジュール、及び請求項１４乃至２８の何れか１項記載の受信モジュールを有し、前記モジュールは、通信バスを介して接続される、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号又はデータバスを有するシステムに関し、特にフォールトトレラントな符号を利用する高速、高集積度回路のバスにおける切り替え動作の減少に関する。
【背景技術】
【０００２】
集積回路技術が向上しチップの集積度を高めるに従い、チップ上の相互接続はますます細くなる。この結果、近隣の配線との結合容量が増加し、配線の間の干渉又はクロストークが増加する。
【０００３】
集積回路技術における、及び特に１ミクロンより遙かに微細な高速設計における問題の１つは、「グランドバウンス」である。オフチップの配線と接続された出力バッファのドライバは、大電流を供給し大容量の容量性負荷を充電しなければならない。ドライバが同時に切り替わると、大電流の引き込みにより電源電圧の降下が生じる。同様に、バッファが外部の導線に放電する時、大量の電荷がグランド層に放出される。結果として、グランド層の電位が上昇し得る。電源及びグランド層の間の電位差が減少すると、ノイズマージンが減少し及び速度も低下する。従って、完全性の問題が生じる。
【０００４】
「グランドバウンス」は、回路の交流及び直流の安定性を向上することにより低減され得ることが知られている。交流安定性は、第１の状態から第２の状態への遷移数が第２の状態から第１の状態への遷移数に等しい場合に達成される。直流安定性は、第１の状態の数が第２の状態の数に等しい場合に達成される。
【０００５】
非特許文献１には、グランドバウンスが低減され、同時に切り替え電流も低減される平衡ＬＶＤドライバが記載されている。
【０００６】
バス又は通信路がデータを回路へ転送する環境が誤りを生じ易い場合、データ送信に利用される符号の誤りを訂正する手段を提供することが望ましい。また、手段は、誤り訂正を提供し、そしてデータは再要求され得る。このようなバス又は通信路は、フォールトトレラントであると考えられる。
【０００７】
図１は、一般的なフォールトトレラントなバス構造１を示す。バス構造１は、データをエンコーダー５及びデコーダー７の間で通信する通信バス３を有する。バス３は、出力データ９をエンコーダー５から受信し、そして入力データ１１をデコーダー７へ供給する。
【０００８】
フォールトトレラントな方法の１つは、「デュアルレールエンコーディング」として知られる。デュアルレールエンコーディングでは、データビットはコピーされ、そしてこのコピーがデータビットに誤りが検出された場合に利用される。データビットの誤りを訂正するために、データビットが誤りを有するかを識別する必要があり、そしてこのためにパリティビットが提供される。ちなみに、データビットとコピービットは同一であり、データ及びコピービットを伝達する２本の線の間のクロストークは、除去される。
【０００９】
図２は、従来のデュアルレールのバス構造２０を示す。入力データビットｄ０、ｄ１、ｄ２及びｄ３は、エンコーダー２２へ提供される信号である。データビットｄ０、ｄ１、ｄ２及びｄ３の対応するコピーｃ０、ｃ１、ｃ２及びｃ３が生成される。パリティビット、ｄｐａｒｉｔｙは、送信されるべきデータビットに対し、例えば排他的論理和ゲート２６、２８及び３０を有するパリティツリー２４を用いて計算される。
【００１０】
送信データのパリティビットｄｐａｒｉｔｙ、データビットｄ０、ｄ１、ｄ２及びｄ３、並びにそれらのコピーｃ０、ｃ１、ｃ２及びｃ３は、通信バス３２を介しデコーダー３４へ送信される。
【００１１】
送信中に、送信データビット及びそれらのコピービットは、「誤り」になり得る。つまり送信されたビットは、「０」の代わりに「１」として検出され得る。逆も同様にあり得る。従って、デコーダー３４で受信されたデータビットＤ０、Ｄ１、Ｄ２及びＤ３、並びにコピーＣ０、Ｃ１、Ｃ２及びＣ３は、エンコーダー２２により送信されたデータビットｄ０、ｄ１、ｄ２及びｄ３並びにコピービットｃ０、ｃ１、ｃ２及びｃ３と同一であるか、又は同一でない可能性がある。データのパリティビット、Ｒｐａｒｉｔｙは、通信バス３２から受信されたデータビットＤ０、Ｄ１、Ｄ２及びＤ３に対し、パリティツリー３６により計算される。パリティツリー３６は、エンコーダー２２のパリティツリー２４と同一の構造である。マルチプレクサ制御ビットｓ０は、データのパリティビットＲｐａｒｉｔｙを通信バス３２を介して受信されたデータのパリティビットと比較することにより、決定される。この図のシステムでは、比較は排他的論理和ゲート３８により実行される。
【００１２】
マルチプレクサ制御ビットｓ０は、訂正回路として動作する複数のマルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３へ供給される。各マルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３は、対応する受信データ信号Ｄ０、Ｄ１、Ｄ２又はＤ３、及び対応するデータ信号の受信したコピーＣ０、Ｃ１、Ｃ２又はＣ３を受信する。マルチプレクサ制御ビットｓ０は、各マルチプレクサが受信データ信号又はデータ信号の受信したコピーの何れを出力するかを制御する。
【００１３】
受信データのパリティビットＲｐａｒｉｔｙが、受信したデータパリティビットと同一である場合、マルチプレクサ制御ビットｓ０は「０」であり、マルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３に指示し、受信データビットＤ０、Ｄ１、Ｄ２及びＤ３を出力させる。データパリティビットＲｐａｒｉｔｙが、受信したデータパリティビットと異なる場合、マルチプレクサ制御ビットｓ０は「１」であり、マルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３に指示し、送信データビットの受信されたコピーＣ０、Ｃ１、Ｃ２及びＣ３を出力させる。
【００１４】
しかしながら、デュアルレールエンコーディングシステムには、同時に切り替わる線が、シングルレールシステムの２倍存在するので、グランドバウンスの問題が増大する。
【発明の開示】
【発明が解決しようとする課題】
【００１５】
データバスを介してデータを送信するデュアルエンコーディングを利用する集積回路内の切り替え動作を減少し、同時にグランドバウンスを低減又は除去する必要がある。
【課題を解決するための手段】
【００１６】
本発明の第１の態様によると、データビットのセットを別のモジュールへ通信バスを介し送信するモジュールが提供される。前記モジュールは、モジュールの動作中に通信バスの遷移の数を低減するバス反転符号化手段；データビットのセットのデータビットの対応するコピーを生成する手段；他のモジュールへ通信バスを介しデータビットのセット、それらの対応するコピー及びデータビットのセットが反転されているか否かの表示を送信する手段を有する。前記バス反転符号化手段は、データビットのセットを前のデータビットのセットと比較し、データビットの送信に必要な遷移の数の表示を決定する。前記モジュールは、データビットの送信に必要な遷移の数がデータビットのセットの全ビット数の半数より大きいと決定された場合、データビットを送信前に反転し、及びデータビットのセットが反転されているか否かの表示を提供する。
【００１７】
本発明のある実施例では、データビットの対応するコピーを生成する手段は、対応するコピーを更に反転する。
【００１８】
望ましくは、第１のパリティビットをデータビットのセットから生成する手段が提供され、及び前記手段は、第１のパリティビットを他のモジュールへ更に送信する。
【００１９】
望ましくは、第１のパリティビットを生成する手段は、１つ以上の論理ゲートを有する。
【００２０】
望ましくは、第１のパリティビットのコピーを生成する手段が提供され、及び前記手段は、第１のパリティビットのコピーを他のモジュールへ更に送信する。
【００２１】
ある実施例では、第１のパリティビットのコピーを生成する手段は、第１のパリティビットのコピーを更に反転する。
【００２２】
望ましい実施例では、データビットのセットが反転されているか否かの表示は、第１のパリティビット及びその対応するコピーに符号化される。
【００２３】
望ましくは、データビットのセットがバス反転符号化手段により反転されている場合、第１のパリティビット及びその対応するコピーは、送信前に反転される。
【００２４】
代案として、データビットのセットがバス反転符号化手段により反転されていない場合、第１のパリティビット及びその対応するコピーは、送信前に反転される。
【００２５】
別の実施例では、表示は反転信号を有する。
【００２６】
望ましくは、反転信号のコピーを生成する手段が提供され、及び前記手段は、反転信号のコピーを他のモジュールへ更に送信する。
【００２７】
望ましくは、反転信号のコピーを生成する手段は、反転信号のコピーを更に反転する。
【００２８】
本発明の第２の態様によると、データビットのセットを別のモジュールから通信バスを介して受信するモジュールが提供される。前記モジュールは、データビットのセット、データビットのセットの対応するコピー、及びデータビットのセットが反転されているか否かの表示を受信する手段；データビットのセットが反転されているか否かの表示がデータビットのセットは反転されていないと示す場合、受信データビットをモジュールの出力として選択し、及び前記表示がデータビットのセットは反転されていると示す場合、受信データビットの反転をモジュールの出力として選択する手段、を有する。
【００２９】
ある実施例では、データビットのセットの対応するコピーは、データビットのセットの反転されたコピーである。
【００３０】
望ましくは、前記モジュールは、受信データビットのセット内の１つ以上の誤りの存在を検出する手段を有する。
【００３１】
望ましくは、受信する手段は、第１のパリティビットを他のモジュールから更に受信し、及び前記モジュールは、第２のパリティビットを受信データビットのセットから更に生成する。  受信データビットのセット内の１つ以上の誤りの存在を検出する手段は、第１及び第２のパリティビットを比較する。
【００３２】
ある実施例では、前記モジュールは、受信データビットのセット内の誤りを訂正する手段を更に有し、前記誤りを訂正する手段は、受信データビット又はその対応するコピーを検出する手段により出力された制御信号に応じて出力する
望ましくは、受信する手段は、第１のパリティビットを他のモジュールから更に受信する。
【００３３】
望ましい実施例では、データビットのセットが反転されているか否かの表示は、受信した第１のパリティビット及びそのコピーに符号化される。
【００３４】
望ましくは、前記モジュールは、第３のパリティビットをデータビットのセットの対応するコピーから生成する手段、及び受信した第１のパリティビット、受信した第１のパリティビットのコピー、第２のパリティビット及び第３のパリティビットを比較しデータビットのセットが反転されているか否かを決定する手段を更に有する。
【００３５】
別の実施例では、表示は反転信号を有する。
【００３６】
望ましくは、受信する手段は、反転信号を他のモジュールから更に受信する。
【００３７】
望ましくは、反転信号のコピーは、反転信号の反転されたコピーである。
【００３８】
望ましくは、前記モジュールは、受信した反転信号又はその対応するコピー内の誤りの存在を検出する手段を更に有する。
【００３９】
望ましくは、前記モジュールは、受信した反転信号又はその対応するコピー内の誤りの存在を検出する手段は、受信した反転信号及びその対応するコピーを比較する。
【００４０】
本発明の第３の態様によると、以上に説明されたような送信モジュール、及び以上に説明されたような受信モジュールを有するシステムが提供される。これらモジュールは、通信バスを介して接続される。
【発明を実施するための最良の形態】
【００４１】
本発明の更なる理解のため、及び効果を明らかにするため、例として添付の図を参照する。
【００４２】
以上に説明された従来のデュアルレールエンコーダーでは、入力データビットｄ０、ｄ１、ｄ２及びｄ３のコピーは、送信モジュールで生成され、そしてこれらコピーは受信モジュールにより受信データビットＤＯ、Ｄｌ、Ｄ２及びＤ３で検出された誤りを訂正するために利用される。
【００４３】
送信モジュールの出力における通信バスへの各データ線は、データ線の信号と同一のコピーを伝達する対応する線を有するので、グランドバウンス及び同時切り替えの問題は、データビットのコピーを利用しないシステムに比べて増大する。
【００４４】
例えば、各データ線がＨｉｇｈ信号（つまり１１１１）を有する４本線のバスを検討する。各データ線でＬｏｗ信号への遷移が生じた場合（つまり４回の遷移が要求される）、大量の電荷がグランド層へ放出され、「グランドバウンス」を生じる。
【００４５】
４本線のバスがデュアルレールエンコーディングを利用する場合、４本のデータ線のそれぞれに別の線が存在し、別の線のそれぞれはそれらの対応するデータ線の信号のコピーを伝達する。従って、各データ線がＨｉｇｈ信号を伝達する場合（及び従って各コピー線もＨｉｇｈ信号を伝達する）、各データ線ではＨｉｇｈ信号からＬｏｗ信号への遷移が生じ、その結果、８本の線でグランド層への放電が生じ、つまり通常の４本線のバスの場合の２倍の「グランドバウンス」が生じそして２倍の遷移（つまり８回）が要求される。
【００４６】
デュアルレールエンコーディングを利用する構造のグランドバウンスの問題を低減するため、データ送信に利用される符号の交流及び直流の安定性が向上される。つまり、交流及び直流の安定性は、Ｈｉｇｈ信号からＬｏｗ信号へ遷移する線の数がＬｏｗ信号からＨｉｇｈ信号へ遷移する線の数と同一であり、且つＨｉｇｈ信号を伝達する線の数がＬｏｗ信号を伝達する線の数と同一の場合に、達成される。
【００４７】
図３は、グランドバウンスが低減されたデュアルレールエンコーディングを利用するシステムを示す。システム５０は、データビットｄ０、ｄ１、ｄ２及びｄ３を伝達する４本の入力データ線を有する。
【００４８】
以上に説明されたように、データビットｄ０、ｄ１、ｄ２及びｄ３を伝達するデータ線に加え、データビットのコピーを伝達する線が設けられる。
【００４９】
しかしながら、システム５０の交流及び直流の安定性は、通信バス５４を介してデータを送信する前に、データビットの対応するコピーを伝達する線の信号を反転することにより向上される。
【００５０】
従って、データビットのコピーは対応するインバーター５６、５７、５８及び５９により反転され、ｃ０、ｃ１、ｃ２及びｃ３として示される（図３から分かるように、ｃ０、ｃ１、ｃ２及びｃ３はデータ線で送信されるビットの反転されたコピーを表し、図２に示されるような非反転のコピーとは異なる）。
【００５１】
データビットを伝達する通信バス５４への各線は、データビットの反転されたコピーを伝達する線をそれぞれ有する。Ｈｉｇｈ信号を伝達する線の数は、Ｌｏｗ信号を伝達する線の数と同一である。従って、送信モジュール５２の出力で直流は安定している。遷移が生じる時、第１の状態から第２の状態へ遷移する如何なるデータビットも、第２の状態から第１の状態へ遷移する対応する反転されたコピーを伴うので（逆も同様）、Ｈｉｇｈ信号からＬｏｗ信号への遷移の数は、Ｌｏｗ信号からＨｉｇｈ信号への遷移の数と同一である。従って、送信モジュール５２の出力で交流は安定している。従って、データ線の遷移により生じる通信バス５４のグランドバウンスの問題は、低減される。
【００５２】
データビットｄ０、ｄ１、ｄ２及びｄ３並びにそれらの対応する反転されたコピーｃ０、ｃ１、ｃ２及びｃ３は、送信モジュール５２の出力を形成し、受信モジュール６０へ通信バス５４を介して送信される。
【００５３】
留意すべき点は、送信及び受信モジュール５２、６０は、通信バス５４と別の回路要素ではなく、それらは単一の統合されたユニットを形成し得ることである。特に、送信モジュール５２は、通信バス５４のドライバであって良く、及びモジュール６０は受信部であって良い。
【００５４】
通信バス５４を介した送信中に、送信データビット及びそれらの対応する反転されたコピーは、「誤り」になり得る。つまり送信されたビットは、「０」の代わりに「１」として検出され得る。逆も同様にあり得る。従って、受信モジュール６０内のデータビットＤ０、Ｄ１、Ｄ２及びＤ３、並びに対応する反転されたコピーＣ０、Ｃ１、Ｃ２及びＣ３は、送信モジュール５２により送信されたデータビットｄ０、ｄ１、ｄ２及びｄ３並びに対応する反転されたコピービットｃ０、ｃ１、ｃ２、ｃ３と同一であるか、又は同一でない可能性がある。
【００５５】
受信モジュール６０では受信データビットＤ０、Ｄ１、Ｄ２及びＤ３の誤りを検出するため、パリティビットｄｐａｒｉｔｙは、送信モジュール５２により計算され、そして受信モジュール６０へ提供される。このパリティビットは、送信モジュール５２において、送信されるべきデータビットに対し、パリティツリー６２を用いて計算される。パリティツリー６２は、この図示されたシステムでは３個の排他的論理和ゲートを有する。しかしながら、パリティツリー６２は、論理ゲートの他の組み合わせを有して良いことが理解されるだろう。
【００５６】
送信モジュール５２は、次に送信データのパリティビットｄｐａｒｉｔｙを受信モジュール６０へ、データビットｄ０、ｄ１、ｄ２及びｄ３並びにそれらの対応する反転されたコピーｃ０、ｃ１、ｃ２及びｃ３と共に、通信バス５４を介して送信される。
【００５７】
受信モジュール６０は、受信データのパリティビットＲｐａｒｉｔｙを、受信データビットＤ０、Ｄ１、Ｄ２及びＤ３に対し計算する。データパリティビットＲｐａｒｉｔｙは、パリティツリー６４を用いて計算される。パリティツリー６４は、送信モジュール５２のパリティツリー６２と同一の構造を有する。
【００５８】
受信モジュール６０は、受信データのパリティビットＲｐａｒｉｔｙを通信バス５４を介して受信されたパリティビットと比較する。この図のシステムでは、比較は排他的論理和ゲート６６により実行される。しかしながら、比較は他の種類の論理和ゲートにより実行されて良いことが理解されるだろう。排他的論理和ゲート６６の出力は、マルチプレクサ制御ビットｓ０である。
【００５９】
マルチプレクサ制御信号ｓ０は、受信モジュール６０の訂正回路として動作する複数の２入力のマルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３へ供給される。各マルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３は、対応する受信データビットＤ０、Ｄ１、Ｄ２又はＤ３、及びデータ信号の対応する受信した反転されたコピーＣ０、Ｃ１、Ｃ２又はＣ３を受信する。
【００６０】
従来のように、マルチプレクサ制御ビットｓ０は、マルチプレクサに入力されたどちらの信号がマルチプレクサの出力として利用されるべきかを決定する。マルチプレクサ制御ビットがＬｏｗ（つまり「０」）の場合、マルチプレクサの出力は受信データビットである。しかしながら、マルチプレクサ制御ビットがＨｉｇｈ（つまり「１」）の場合、マルチプレクサの出力は、受信された関連するデータビットの反転されたコピーである。
【００６１】
しかしながら、受信データビットＤ０、Ｄ１、Ｄ２又はＤ３の誤りがマルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３により訂正されるために、受信されたデータビットの反転されたコピーＣ０、Ｃ１、Ｃ２又はＣ３は、受信データビットに対応して反転されなければならない。
【００６２】
図３は、これを達成する第１の構造を示す。ここで、各受信データビットＤ０、Ｄ１、Ｄ２又はＤ３は、対応するマルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３へ入力される前に、対応するインバーター６８、６９、７０及び７１により反転される。マルチプレクサの出力は、所望の信号の反転であるので、更にインバーター７２、７３、７４及び７５は、マルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３の出力をそれぞれ反転し、受信モジュール６０の出力信号、つまり信号ｏｕｔ０、ｏｕｔ１、ｏｕｔ２及びｏｕｔ３を形成する。
【００６３】
図４は、受信データビットに対応する、受信されたデータビットの反転されたコピーを反転する別の構造を示す。ここで、受信された反転されたコピーＣ０、Ｃ１、Ｃ２及びＣ３のそれぞれは、対応するマルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３へ入力される前に、対応するインバーター７６、７７、７８及び７９により反転される。
【００６４】
従って、これら両方の構造では、受信データのパリティビットＲｐａｒｉｔｙが、受信したデータパリティビットと同一である場合、マルチプレクサ制御ビットｓ０は「０」であり、マルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３に指示し受信データビットＤ０、Ｄ１、Ｄ２及びＤ３を出力させる。しかしながら、受信データのパリティビットＲｐａｒｉｔｙが、受信したデータパリティビットと異なる場合（及び従って受信データビットＤ０、Ｄ１、Ｄ２及び／又はＤ３が送信データビットｄ０、ｄ１、ｄ２及びｄ３と異なる場合）、マルチプレクサ制御信号ｓ０は「１」であり、マルチプレクサＭｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３に指示し送信データビットの受信されたコピーＣ０、Ｃ１、Ｃ２及びＣ３を出力させる。
【００６５】
このシステムでは、単一の誤りモデルを想定する。つまり、単一の誤りだけが受信データ又はパリティビットに生じるとする。従って、受信データ、受信したコピービット又は受信したパリティビットに誤りが生じ得る。従って、受信したパリティビットが受信データビットから生成されたパリティビットと異なる場合、データビットに誤りが存在するか、又は受信したパリティビットに誤りが存在するかの何れかである。これは、受信データが正しく且つ受信したパリティビットが誤りである場合、コピービットが受信モジュールの出力として利用されることを意味する（単一の誤りモデルを想定しているので、コピービットは正しい）。
【００６６】
以上に説明されたデュアルエンコーディングシステムでは、パリティビットが受信モジュール６０へデータビット及びそれらの対応する反転されたコピーと共に送信される場合、送信では完全に交流及び直流が安定していない。
【００６７】
交流及び直流の完全な安定性を達成するため、送信モジュールは、データパリティビットの反転されたコピーを生成し、そしてこれを受信モジュールへデータビット、それらの対応する反転されたコピー、及び送信データパリティビットｄｐａｒｉｔｙと共に送信する。
【００６８】
図５は、交流及び直流が完全に安定したシステムを示す。図５では、図３及び４に示されるシステムと共通する特徴は、同一の参照符号を付される。
【００６９】
以上に説明されたように、通信バス５４を介する通信で、完全な交流及び直流の安定性を達成するために、送信データのパリティビットｄｐａｒｉｔｙはコピーされ、（インバーター７６により）反転され、そして通信バス５４を介して受信モジュール６０へ送信される。従って、各データ線はコピーの反転を有し、且つ送信パリティビットｄｐａｒｉｔｙはコピーの反転ｄｐａｒｉｔｙ’を有するので、送信では完全に交流及び直流が安定する。従って、通信バス５４における遷移により生じるグランドバウンスの問題が除去される。
【００７０】
受信モジュール６０では、受信したデータパリティビットのコピーの反転は、抵抗７８を介してグランド層へ放電される。
【００７１】
通信バスにおける遷移により生じるグランドバウンスの問題は、低減されるが、システムの切り替え動作はシングルレールシステムより依然として高い。
【００７２】
従って、本発明の第１の態様によると、バスのデータ線の半数より多くが切り替えられる場合、バス反転符号が利用され遷移の数を減らす。受信端では、バスのデータの反転された状態が検出され、そして正しいデータを読み出すことができる。この技術は、半数以上の線が一度に切り替えられる必要がなく、システムの切り替え動作を減少させることを意味する。
【００７３】
バス反転符号の例として、バスを介して送信される第１のデータワード１１００を考える。バスを介して次に送信されるべきワードは００１０である。つまり、従来のシステムでは、初めの３本の線のそれぞれで遷移があることを意味する。
【００７４】
しかしながら、半数より多くの線が一度に切り替わる場合、この例では、バス反転符号が利用される。つまり所望のワードの反転がバスを介して送信されることを意味する。従って、以上の例では、バスのコンテンツは反転され、従って第２のワードが１１０１として送信される。これは受信部で反転され、所望のワード（００１０）を得る。従って、この技術はバスを介した３個の遷移を（第４の線の）１つだけに減らす。
【００７５】
図６は、本発明の第１の態様による送信モジュールの実施例を示す。
【００７６】
送信モジュール１０２は、通信バス１０４を介して送信されるべきデータを受信する４個の入力線１０３を有する。勿論、送信モジュールは４個より多い又は少ない線を有して良いことが理解されるだろう。
【００７７】
送信モジュール１０２が動作している場合、データビットは通信バス１０４へ出力されている。適切な時間間隔の後、送信モジュール１０２は通信バス１０４へデータビットの新しいセットを出力する。
【００７８】
図６では、バス１０４を介して現在送信されているデータビットは、ｄ０、ｄ１、ｄ２及びｄ３として示される。本発明によると、バス１０４を介して送信されるデータビットは、反転され得るので、各線１０５を介し通信バス１０４を介して送信されるデータビット（ｄ０、ｄ１、ｄ２及びｄ３）は、送信モジュール１０２の入力線１０３により受信された元のデータビットと同一でない可能性がある。入力線１０３で受信された元のデータビットは、対応するラッチ１０６により格納され、それぞれｄｉｎ０、ｄｉｎ１、ｄｉｎ２及びｄｉｎ３と示される。ここで、これらデータビット（ｄｉｎ０、ｄｉｎ１、ｄｉｎ２及びｄｉｎ３）は、纏めて「第１のデータワード」と称される。
【００７９】
第１のデータワード（ｄ０、ｄ１、ｄ２及びｄ３）が送信される間、第１のデータワードの後に送信モジュールにより送信されるべきデータビットの次のセットは、入力線１０３で受信される。このセットのデータビットは、それぞれｄｉｎ４、ｄｉｎ５、ｄｉｎ６及びｄｉｎ７と示される。ここで、これらデータビット（ｄｉｎ４、ｄｉｎ５、ｄｉｎ６及びｄｉｎ７）は、纏めて「第２のデータワード」と称される。
【００８０】
従って、本発明のこの図示された実施例によると、送信モジュール１０２は、送信されるべきデータビットを受信する入力線１０３を有する。これらの線１０３は、対応するラッチ１０６と接続される。これらのラッチは、通信バス１０４を介して現在送信されているワードの元のデータビット（ｄｉｎ０、ｄｉｎ１、ｄｉｎ２及びｄｉｎ３）を格納する。各ラッチ１０６の出力は、対応する排他的論理和ゲート１０８の１つの入力と接続される。各排他的論理和ゲート１０８の他の入力は、ｄａｔａ＿ｉｎｖｅｒｔ信号を受信する。ｄａｔａ＿ｉｎｖｅｒｔ信号は、データを反転し現在のデータワードを送信するべきか否かを示す。
【００８１】
従来良く知られているが、１つの排他的論理和ゲート１０８の真理値表を以下に示す。
【００８２】
【表１】
2007526574.tif 000003
表から分かるように、データが反転されない（つまり、ｄａｔａ＿ｉｎｖｅｒｔが「０」）と決定された場合、データ線１０５への排他的論理和ゲートの（及び従って送信モジュール１０２の）出力ｄは、入力線１０３で受信された元のデータビットｄｉｎと同一である。しかしながら、データが反転される（つまり、ｄａｔａ＿ｉｎｖｅｒｔが「１」）と決定された場合、排他的論理和ゲートの（及び従って送信モジュール１０２の）出力ｄは、入力線１０３で受信された元のデータビットｄｉｎの反転である。
【００８３】
以上に図３、４及び５を参照して説明されたように、線１０５を通じて送信されるデータビット（ｄ０、ｄ１、ｄ２及びｄ３）のコピーは生成され、そして対応するインバーター１１０により反転され、デュアルレールシステムのグランドバウンスを低減する。図６に示されるモジュールでは、これらデータビットは、再びそれぞれｃ０、ｃ１、ｃ２及びｃ３と示される。
【００８４】
第２のワードのデータビット（ｄｉｎ４、ｄｉｎ５、ｄｉｎ６及びｄｉｎ７）が送信される時に反転されるべきか否かを決定するため、第２のワードを前のデータワードのビットと比較する必要がある。この比較は、第１のセットの後にデータビットの第２のセットを送信するために必要な遷移の数が、データワードの全ビット数の半数より多いか否かを決定する。遷移の数が全データビット数の半数より多い場合、次のデータワードは、送信の前に反転される。
【００８５】
この図示された実施例では、比較は排他的論理和ゲート１１２及び比較回路１１４により実行される。各排他的論理和ゲート１１２は、現在の送信データビット（ｄ０、ｄ１、ｄ２及びｄ３）を１つの入力として、及び送信されるべき次のデータビット（ｄｉｎ４、ｄｉｎ５、ｄｉｎ６及びｄｉｎ７）を他の入力として有する。
【００８６】
従って、現在の送信データビットが送信されるべき次のデータビットと異なる場合、排他的論理和ゲート１１２の出力は「１」である。しかしながら、現在の送信データビットが送信されるべき次のデータビットと同一である場合、出力は「０」である。
【００８７】
排他的論理和ゲート１１２の出力は、比較回路１１４へ供給される。比較回路１１４は、半数より多くの線が第２のデータワードの送信時に変化するかを決定する。図６にこれを実行するある回路を示す。この回路は３個のＯＲゲート及び４個のＡＮＤゲートを有する。この構成（排他的論理和ゲート１１２を含む）は例であり、２つの連続するデータワードを比較するために多くの他の回路が利用されて良いことが理解されるだろう。
【００８８】
比較回路１１４が半数より多くの線が次のバス遷移で変化すると決定した場合（つまり排他的論理和ゲート１１２の出力の半数以上が「１」である場合）、この例である比較回路の出力は、「１」である（送信前にデータが反転されることを示す）。しかしながら、比較回路１１４が半数の又は半数より少ない線が次のバス遷移で変化すると決定した場合、比較回路１１４の出力は「０」である（データが反転されないことを示す）。留意すべき点は、この信号は第２のデータワードのｄａｔａ＿ｉｎｖｅｒｔ信号であることである。
【００８９】
ラッチ１０６は、比較回路１１４の出力に設けられ、第１のデータワードは通信バス１０４を介して送信される間、第１のデータワードのｄａｔａ＿ｉｎｖｅｒｔ信号を格納する。留意すべき点は、第１のデータワードのｄａｔａ＿ｉｎｖｅｒｔ信号は、第１のデータワードビット（ｄｉｎ０、ｄｉｎ１、ｄｉｎ２及びｄｉｎ３）をバス１０４を介して送信されたビットと、第１のデータワードの送信前に比較することにより得られる。
【００９０】
以上に説明されたように、ラッチ１０６の出力、ｄａｔａ＿ｉｎｖｅｒｔ信号は、排他的論理和ゲート１０８の第２の入力へ提供される。排他的論理和ゲート１０８は、データが反転される場合、ビット（ｄｉｎ０、ｄｉｎ１、ｄｉｎ２及びｄｉｎ３）を送信前に反転する。
【００９１】
更に、受信端で読み出されるべき正しいデータのため、第２のデータワードが反転されているか否かの表示は通信バス１０４を介し受信モジュールへ送信される。この図示された実施例では、ｄａｔａ＿ｉｎｖｅｒｔ信号は表示であり、通信バス１０４を介し線１１８の受信モジュールへ送信される。
【００９２】
望ましくは、システムの交流及び直流の安定性を維持するため、及び従って通信バス１０４を介し送信されるデータのコピーを反転することによりグランドバウンスの低減を達成するため、ｄａｔａ＿ｉｎｖｅｒｔ信号のコピーは、送信モジュール１０２で生成され、インバーター１２０により反転され信号ｄａｔａ＿ｉｎｖｅｒｔ’を形成し、そして線１２２で通信バス１０４を介して送信される。
【００９３】
望ましくは、受信モジュールに受信データビットの誤りを訂正させるために、パリティ信号ｄｐａｒｉｔｙは、パリティツリー１２４により生成される。図２乃至５を参照して以上に説明されたように、パリティ信号ｄｐａｒｉｔｙは、送信されているデータビット（ｄ０、ｄ１、ｄ２及びｄ３）から生成される。
【００９４】
パリティ信号は、第１のデータワード（ｄｉｎ０、ｄｉｎ１、ｄｉｎ２及びｄｉｎ３）を構成するビットからも生成され得ることが理解されるだろう。データワードはパリティを変更しないので、パリティ信号ｄｐａｒｉｔｙは、どちらの場合も同一である（信号のセットから生成されたパリティは、それら信号の反転されたコピーから生成されたパリティと同一である）。
【００９５】
また以上に説明されたように、パリティ信号の反転されたコピーは、インバーター１２６により生成され、そして通信バス１０４を介し送信され、システムの交流及び直流の安定性を維持する。
【００９６】
また、パリティ信号ｄｐａｒｉｔｙの遷移はデータを反転するか否かを決定する時に考慮され得ることが理解されるだろう。例えば、この場合（図６に示されない）、現在送信されているデータワードのパリティ信号は、データ線の信号と同様の方法で処理され得る。つまり、現在のパリティ信号は、次のデータワードのパリティ信号と比較され、そしてこの比較の結果は、比較回路１１４へ入力され得る。
【００９７】
更に、ｄａｔａ＿ｉｎｖｅｒｔ信号の遷移はデータを反転するか否かを決定する時に考慮すること可能である。
【００９８】
当業者は、これら選択肢を図６に示されたようなシステムで実施する多くの異なる方法が存在することを理解するだろう。
【００９９】
図７は、本発明の第１の態様による受信モジュールの実施例を示す。
【０１００】
受信モジュール１２８は、通信バス１０４と接続され、送信データビットＤ０、Ｄ１、Ｄ２及びＤ３及びそれらの対応する反転されたコピーＣ０、Ｃ１、Ｃ２及びＣ３を受信する。
【０１０１】
受信モジュール１２８は、図４を参照して説明されたように、マルチプレクサ（Ｍｕｘ０、Ｍｕｘ１、Ｍｕｘ２及びＭｕｘ３）へ入力するデータビットの受信したコピーを反転する対応するインバーター７６、７７、７８及び７９を有する。受信モジュールはまた、パリティビットＲｐａｒｉｔｙを受信データビットから生成するパリティツリー６４を有する。このパリティビットは、受信したパリティビットＤｐａｒｉｔｙと比較され、そして以下に示されるように、マルチプレクサの制御ビットｓ０を決定する。
【０１０２】
以上に説明されたように、半数より多い線がデータワードの送信開始時に切り替わる場合、全ての信号がバス１０４を介し送信される前に反転される。従って、受信モジュールの出力(ｏｕｔ０、ｏｕｔｌ、ｏｕｔ２及びｏｕｔ３)で正しいデータを提供するため、各マルチプレクサの出力は、対応する排他的論理和ゲート１３０と接続される。各排他的論理和ゲート１３０の第２の入力は、受信したバス反転信号Ｄａｔａ＿ｉｎｖｅｒｔにより提供される。
【０１０３】
従って、バスのデータが反転され（つまりＤａｔａ＿ｉｎｖｅｒｔ信号が「１」である）、及びマルチプレクサの出力は正しい信号の反転である場合、排他的論理和ゲート１３０は、信号を反転するよう動作し正しい出力を提供する。バスのデータが反転されていない場合（つまりＤａｔａ＿ｉｎｖｅｒｔ信号は「０」）、排他的論理和ゲート１３０は、マルチプレクサの出力で信号を出力する。
【０１０４】
受信した反転されたデータパリティビットＤｐａｒｉｔｙ’、及び受信した反転された反転信号Ｄａｔａ＿ｉｎｖｅｒｔ’は、抵抗を介して接地される。
【０１０５】
代案として、受信した反転された反転信号Ｄａｔａ＿ｉｎｖｅｒｔ’は、受信した反転信号Ｄａｔａ＿ｉｎｖｅｒｔの誤りを検査するために利用され得る。受信した反転信号及び受信した反転された反転信号に如何なる誤りも生じていない場合、信号は互いに逆である。しかしながら、受信した反転信号及び受信した反転された反転信号の何れかで誤りが生じている場合、信号は同一である。従って、この状況では、どちらの反転信号が誤りを有しているか決定できないので、データの送信が要求されなければならない。
【０１０６】
本発明の第１の態様による以上に説明された実施例は、切り替え動作を低減したデュアルレールエンコーディング構造を提供することが明らかであろう。
【０１０７】
以上に説明されたシステムの不利点の１つは、反転表示信号及びその反転を受信モジュールへ送信するために追加の線が必要であることである。
【０１０８】
従って、本発明の第２の態様によると、データビットの第２のセットが反転されているか否かの表示は、パリティ信号及びそのコピーに符号化される。
【０１０９】
図８は、本発明の第２の態様による送信モジュールの実施例を示す。
【０１１０】
図８に示されるモジュールは、図６に示されたモジュールと共通の多くの構成要素を有する。これら構成要素は、同一の参照符号を付される。
【０１１１】
この図示された実施例では、パリティ信号ｄｐａｒｉｔｙ及びｄｐａｒｉｔｙ’は、信号対と考えられ、両方ともバス１０４のデータ信号が反転された場合に反転される。
【０１１２】
以上に説明されたように、ラッチ１１６の出力（現在バス１０４を介して送信されているデータのデータ反転信号）が利用され、排他的論理和ゲート１０８の動作を制御する。更に、ｄａｔａ＿ｉｎｖｅｒｔ信号は、排他的論理和ゲート１３２へ、パリティツリー１２４により生成されたパリティ信号と共に入力される。排他的論理和ゲート１３２は、バス１０４のデータが反転される場合、パリティ信号を反転するよう動作する。又は排他的論理和ゲート１３２は、バス１０４のデータが反転されない場合、非反転パリティ信号を通過させるよう動作する。ゲート１３２の出力ｄｐａｒｉｔｙは、バスのデータが反転されていない場合、データのパリティと等しく、バスのデータが反転されている場合、データのパリティの反転と等しい。このパリティ信号は、線１３４でバス１０４を介して送信される。
【０１１３】
ｄｐａｒｉｔｙの反転されたコピーは、インバーター１３６により生成され、また線１３８でデータバス１０４を介して送信される。留意すべき点は、ｄｐａｒｉｔｙ’はｄｐａｒｉｔｙの反転されたコピーであり、パリティツリー１２４の出力の反転ではないことである。
【０１１４】
従って、バス１０４のデータが反転されている場合、送信されたパリティ及び反転されたパリティは、それらの期待値の反転である。
【０１１５】
図９は、本発明の第２の実施例による受信部を示す。留意すべき点は、パリティビットはバスのデータの反転を示すために利用されるので、システムはもはや受信信号の誤りを訂正できないことである。しかしながら、受信データの誤りを検出しそして必要ならば再送信を要求可能である。
【０１１６】
受信モジュールは、通信バス１０４と接続され、送信データビットＤ０、Ｄ１、Ｄ２及びＤ３及びそれらの対応する反転されたコピーＣ０、Ｃ１、Ｃ２及びＣ３、並びにパリティ及び反転されたパリティ信号Ｄｐａｒｉｔｙ及びＤｐａｒｉｔｙ’を受信する。
【０１１７】
図７に示された受信モジュールと対照的に、本発明のこの実施例による受信モジュール１２８は、誤りを訂正できないので、受信したデータビットＤ０、Ｄ１、Ｄ２及びＤ３は、各排他的論理和ゲート１３０へ直接接続される。従来通り、これらのゲートは、バスのデータが送信のため反転されると決定された場合、受信データを反転するよう機能する。
【０１１８】
受信モジュール１２８では、バス１０４のデータが反転されているか（及び従って受信モジュール１２８の出力は、正しいデータを得るため反転されるべきか）決定するため、受信パリティ信号は、受信データと比較される。以上に説明されたように、データビットのセットから計算されたパリティは、それらデータビットの反転されたセットから計算されたパリティと同一である。従って、受信モジュール１２８が受信データのパリティと受信したパリティを比較する場合、それぞれの受信したパリティと計算されたパリティの相違は、バス１０４のデータが送信のため反転されていること、及び正しいデータを得るため受信モジュール１２８の出力が反転されるべきであることを示す。
【０１１９】
従って、受信データのパリティビットＲｐａｒｉｔｙは、パリティツリー６４により計算され、そして排他的論理和ゲート６６により受信したパリティビットＤｐａｒｉｔｙと比較される。ゲート６６の出力はｓ０と示される。受信データビットから計算されたパリティＲｐａｒｉｔｙが受信したパリティビットＤｐａｒｉｔｙと同一の場合、ｓ０は「０」である。しかしながら、ＲｐａｒｉｔｙがＤｐａｒｉｔｙと異なる場合、ｓ０は「１」である。
【０１２０】
第２のパリティツリー１４０は、パリティビットＣｐａｒｉｔｙを受信したデータビットのコピー（Ｃ０、Ｃ１、Ｃ２及びＣ３）から計算する。このパリティビットは、インバーター１４２により反転され、そして受信した反転されたパリティＤｐａｒｉｔｙ’と排他的論理和ゲート１４４により比較される。ゲート１４４の出力はｔ０と示される。受信したデータビットのコピーの反転から計算されたパリティの反転（Ｃｐａｒｉｔｙの反転）が受信したパリティビットの反転Ｄｐａｒｉｔｙ’と同一の場合、ｔ０は「０」である。しかしながら、Ｃｐａｒｉｔｙの反転がＤｐａｒｉｔｙ’と異なる場合、ｔ０は「１」である。
【０１２１】
信号ｓ０及びｔ０の比較はＡＮＤゲート１４６により実行され、その出力は各排他的論理和ゲート１３０と接続される。従って、ｓ０及びｔ０の両方が「１」の場合（つまり、それらがＲｐａｒｉｔｙはＤｐａｒｉｔｙと等しくなく、及びＣｐａｒｉｔｙ’はＤｐａｒｉｔｙ’と等しくないと示す場合）、ＡＮＤゲート１４６の出力は「１」であり、排他的論理和ゲート１３０に受信データビットＤ０、Ｄ１、Ｄ２及びＤ３を反転させる。従って、ｓ０及びｔ０の両方が「０」の場合（つまり、それらがＲｐａｒｉｔｙはＤｐａｒｉｔｙと等しく、及びＣｐａｒｉｔｙはＤｐａｒｉｔｙ’と等しいと示す場合）、ＡＮＤゲート１４６の出力は「０」であり、排他的論理和ゲート１３０に受信データビットＤ０、Ｄ１、Ｄ２及びＤ３を通過させる。
【０１２２】
しかしながら、ｓ０及びｔ０の一方が「１」であり他方が「０」である場合、送信中に、受信データビット、受信した反転されたコピー又は受信したパリティの何れかに誤りが生じている。
【０１２３】
従って、ｓ０及びｔ０を入力として有する排他的論理和ゲート１４８が設けられる。排他的論理和ゲート１４８は、送信が誤りを有するか否かを示す信号（ｓｔａｔｕｓ＿ｓｉｇｎａｌ）を出力する。従って、ｓ０及びｔ０が異なる場合、排他的論理和ゲート１４８の出力は「１」であり、誤りを示す。これは、次に現在の受信データを廃棄し、再送信を要求するために利用され得る。ｓ０及びｔ０が同一の場合、排他的論理和ゲート１４８の出力は「０」であり、如何なる誤りも検出されなかったことを示す。
【０１２４】
ｓｔａｔｕｓ＿ｓｉｇｎａｌが誤りを示す場合、複数の原因が考えられる（留意すべき点は、このシステムでは単一の誤りモデルが想定されていることである）。
【０１２５】
第１の原因は、受信したパリティＤｐａｒｉｔｙ及びＤｐａｒｉｔｙ’は等しいことである。この場合、バス１０４のデ―タの状態は不定なので（つまりデータが送信前に反転されたか否か不明である）、どちらのパリティが誤りを有するか決定することができない。
【０１２６】
第２の原因は、受信データビット（Ｄ０、Ｄ１、Ｄ２又はＤ３）又はデータ信号の受信した反転されたコピー（Ｃ０、Ｃ１、Ｃ２又はＣ３）に誤りが存在することである。受信データのパリティ（Ｒｐａｒｉｔｙ）とデータビットの受信した反転されたコピーのパリティ（Ｃｐａｒｉｔｙ）が異なる場合、これはデータビット又はデータビットの反転されたコピーに誤りが存在することを示す。しかしながら、この誤りを訂正することはできず、再送信が要求される。
【０１２７】
本発明の第２の態様は、デュアルエンコーディング構造において、専用のバス反転信号を要求することなく、切り替え動作を減少させる利点を有することが理解されるだろう。
【０１２８】
図１０は、本発明の第２の態様による送信モジュールの別の構成を示す。
【０１２９】
この送信モジュール１０２では、排他的論理和ゲート１０８はそれらの対応するラッチ１０６の前に置かれる。これは、データは、データがラッチに格納される前に反転され、そしてバス１０４へ送信されることを意味する。反転された第２のデータワードビットは、ｄ４、ｄ５、ｄ６及びｄ７と示される。排他的論理和ゲート１０８を制御するデータ反転信号は、比較回路１１４の出力から直接取り込まれる。
【０１３０】
この構成の利点は、ラッチ１０６と反転信号の間のタイミングの不一致によるバス１０４の誤作動が回避されることである。更に、（例えば、図８に示されるモジュールで）以前はラッチ１０６の切り替え及びゲート１０８の切り替え信号の反転によりバス１０４に引き起こされた誤りが低減される。
【０１３１】
また、バス反転符号は、図２に示されるような従来のデュアルレールシステムで利用され得ることが理解されるだろう。この場合、通信バスを介して送信されているデータの状態は、別のバス線で送信されるデータ反転信号により、又は図８及び１０に示されるシステムと同様の方法で複数の信号及びそれらの対応するコピーのデータの状態を符号化することにより示され得る。
【０１３２】
この後者の場合、受信モジュールで受寸された両方のパリティ信号が、受信データビットから計算されたパリティの反対を有する場合、データは送信前に反転され、そして受信データビットは正しいデータワードを得るため反転される。パリティが期待値を有する場合（つまり、それら両者が受信データビットから計算されたパリティと一致する場合）、データは送信前に反転されない。受信したパリティが異なる場合、誤りがパリティビットの一方で生じている。
【０１３３】
再び、データビットの状態がパリティ信号及びそのコピーに符号化されている場合、受信データの誤りを訂正することはできないが、誤りの検出は依然として可能である。
【０１３４】
本発明の更なる利点は、バス反転符号回路は、通信バスの切り替え動作を低減する必要がない場合は、オフに切り替えられ得ることである。これは、ｄａｔａ＿ｉｎｖｅｒｔ信号を単一の値に「固定」し、それによりデータの反転を防止することにより達成され得る。
【０１３５】
本発明は、デュアルエンコーディングを利用するシステムを参照して説明及び図示されたが、本発明はこのようなシステムに限定されないことが明らかであり、及び当業者には本発明の多くの他の適用が明らかであろう。
【０１３６】
従って、通信バスにおいてグランドバウンスを低減し、及び切り替え動作が低減する方法及びシステムが提供される。
【０１３７】
留意すべき点は、以上に説明された実施例は、本発明を制限するものではないことである。当業者は、請求の範囲から逸脱することなく、多くの代替の実施例を考案できるだろう。「有する」の表現は、請求項に記載された以外の構成要素又は段階の存在を排除するものではない。
【図面の簡単な説明】
【０１３８】
【図１】一般的なフォールトトレラントなバス構造を示す。
【図２】従来のデュアルレールのバス構造を示す。
【図３】グランドバウンスが低減されたデュアルレールエンコーディングを利用するシステムを示す。
【図４】グランドバウンスが低減されたデュアルレールエンコーディングを利用する別のシステムを示す。
【図５】グランドバウンスが低減されたデュアルレールエンコーディングを利用する別のシステムを示す。
【図６】本発明の第１の実施例による送信モジュールを示す。
【図７】本発明の第１の実施例による受信モジュールを示す。
【図８】本発明の第２の実施例による送信モジュールを示す。
【図９】本発明の第２の実施例による受信モジュールを示す。
【図１０】本発明の第２の実施例による送信モジュールの別の構成を示す。
【図１】
2007526574.tif 000004
【図２】
2007526574.tif 000005
【図３】
2007526574.tif 000006
【図４】
2007526574.tif 000007
【図５】
2007526574.tif 000008
【図６】
2007526574.tif 000009
【図７】
2007526574.tif 000010
【図８】
2007526574.tif 000011
【図９】
2007526574.tif 000012
【図１０】
2007526574.tif 000013
【国際調査報告】
2007526574.tif 000014
2007526574.tif 000015
2007526574.tif 000016