(57)【要約】少なくとも２つの通信端末を有する通信システムを介してデータを伝送する際にコード生成する方法と装置であって、その場合に第１の通信端末が少なくとも１つのデータワードを受信して、そのデータワードまたは少なくとも部分的に変更されたデータワードを少なくとも１つの第２の通信端末へさらに伝え、その場合にデータが、２つの異なる値をとることができるビットとして表示され、データワードの少なくとも２つのビットが少なくとも３つのビットに次のように、すなわち３つのコード化されたビット内で常に少なくとも２つの、等しい値のビットが連続し、かつ３つのコード化されたビットの１つまたは２つの受信後にはすでに、どのような第１のコードビットが送出されたかを決定することができるように、コード化される。【選択図】図１
2007533183.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つの通信端末を有する通信システムを介してデータを伝送する際にコードを生成するコード生成方法であって、前記方法において第１の通信端末が少なくとも１つのデータワードを受信して、前記データワードまたは少なくとも部分的に変更されたデータワードを少なくとも１つの第２の通信端末にさらに伝え、その場合にデータが２つの異なる値をとることのできるビットとして表示される、前記コード生成方法において、
前記データワードの少なくとも２つのビットが、３つのコード化されたビット内で常に等しい値の少なくとも２つのビットが互いに連続し、かつ３つのコード化されたビットの１つまたは２つの受信後にすでに、どのような第１のコードビットが送出されたか、を決定できるように、少なくとも３つのビットにコード化されることを特徴とする、通信システムを介してデータを伝送する際にコード生成方法。
【請求項２】
コード化されたデータの伝送が、前記データワードの最も低い値のビットで開始されて、少なくとも１つの前記データワードの少なくとも個々のデータビットのインクリメンテーションが実施されることを特徴とする請求項１に記載の方法。
【請求項３】
コード化されたデータの伝送が、前記データワードの最も低い値のビットで開始されて、少なくとも１つの前記データワードの少なくとも個々のビットのデクリメンテーションが実施されることを特徴とする請求項１に記載の方法。
【請求項４】
コード化されたデータの伝送が、前記データワードの最も高い値のビットで開始されて、少なくとも１つの受信された前記データワードの少なくとも個々のビットと、第２のデータワードのそれらとの比較が実施されて、その場合に比較結果が出力されて、それが少なくとも１つの送信すべきデータワードの選択に利用されることを特徴とする請求項１に記載の方法。
【請求項５】
少なくともそれぞれ２つのビットが３つのビットにコード化されて、前記データワードの残りすべてのビットはコード化されずに引き継がれることを特徴とする請求項１に記載の方法。
【請求項６】
それぞれ２つのビットを有する前記データワードのすべてのビットが３つのビットにコード化されて、その場合に前記データワードが２の倍数のビット数を有していることを特徴とする請求項１に記載の方法。
【請求項７】
前記インクリメンテーション、前記デクリメンテーションおよび前記比較の間、つまり前記データワードの最も高い値のビットでの開始とデータワードの最も低い値のビットでの開始との間で切り替えることができることを特徴とする請求項２、３または４に記載の方法。
【請求項８】
前記インクリメンテーションと前記デクリメンテーションの間、従って前記データワードのコード化の種類の間で切り替えることができるが、伝送は常にデータワードの最も低い値のビットで開始されることを特徴とする請求項２または３に記載の方法。
【請求項９】
切替えが、前記データワード内またはデータフレーム内の少なくとも１つのビットの位置に従って行われることを特徴とする請求項７または８に記載の方法。
【請求項１０】
切替えが、前記データワードまたはデータフレーム内の少なくとも１つの識別子に従って行われることを特徴とする請求項７または８に記載の方法。
【請求項１１】
前記データワードの代わりに、それに対して逆のデータワードが伝送され、その場合に開始のために伝送種類を識別するための選択ビットが伝送されることを特徴とする請求項１に記載の方法。
【請求項１２】
どのコード化されたデータにも対応せず、他の情報、特に制御情報を伝送する、非データワードが設けられていることを特徴とする請求項１に記載の方法。
【請求項１３】
通信システムを介してデータ伝送する際にコード生成する装置であって、その場合にデータが、少なくとも２つの異なる値をとることのできるビットとして表示される、前記装置において、
コード化手段が設けられており、前記コード化手段は、データワードの少なくとも２つのビットが少なくとも３つのビットに次のように、すなわち３つのコード化されたビット内で常に等しい値の少なくとも２つのビットが互いに連続し、かつさらに伝えるべきデータワードの３つのコード化されたビットの１つまたは２つを受信した後にすでに、どのような第１のコードビットが送出されたか、を決定することができるように、コード化されるように形成されていることを特徴とする通信システムを介してデータ伝送する際にコード生成する装置。
【請求項１４】
通信システム内でデータ伝送する際にコード生成する装置を有する通信システムの通信端末であって、その場合にデータが、２つの異なる値をとることのできるビットとして表示される、前記通信システムの通信端末において、
コード化手段が設けられており、前記コード化手段は、データワードの少なくとも２つのビットが３つのビットに次のように、すなわちコード化された３つのビット内で常に等しい値の少なくとも２つのビットが互いに連続し、かつさらに伝えるべきデータワードの３つのコード化されたビットの１つまたは２つを受信した後にすでに、どのような第１のコードビットが送出されたか、がすでに決定されるように、形成されていることを特徴とする通信システムの通信端末。
【請求項１５】
プログラムがコンピュータで支援される通信システム内で実施された場合に、請求項１から１２のいずれか１項に記載の方法を実施するための、データ担体上に記憶された、プログラムコードを有するコンピュータプログラム製品。
【請求項１６】
プログラムがコンピュータで支援される通信システム内で実施された場合に、請求項１から１２のいずれか１項に記載のすべてのステップを実施するためのプログラムコードを有するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、請求項の上位概念に記載の、少なくとも２つの通信端末を有する通信システムを介してデータを伝送する際のコード生成方法と装置および通信システムの該当する通信端末と該当するコンピュータプログラム並びにコンピュータプログラム製品に関する。
【背景技術】
【０００２】
通信システムを介して、特にシリアルバスを介して、データを伝送するためのコードは、それぞれ伝送媒体、ビットレートおよびクロックリカバリーとＥＭＶ特性値の要請に応じて異なる。２５Ｍビット／秒までのデータを伝送するためには、たとえばＭＯＳＴシステムにおいて、ＥＭＶ両立性を保証するために、光学的伝送が設けられていた。しかしその場合に電気−光学変換器は、極めて高価であって、使用されるプラスチック光ファイバーはボディ内の敷設に対して特殊な要請を有している。この目的のために、ＭＯＳＴバス内の信号はＢｉ位相マークコード（Bi-Phase marc Code/Ｂｉ周波数コード）に従ってコード化されている。その場合に各情報ビットは、２つのコードビットによって表示される。２つのコードビットが等しい値を有する場合には、それは情報ビット０の値に相当する。コードビットの異なる値によって、１が示される。さらに、２つのコードビットの後は、情報値に関係なく、常にレベルの変化が行われる：
コードビット 00 10 10 11 00 11 01 01...
情報ビット    0  1  1  0 0  0  1 1...
【０００３】
その場合にコードビットは、有効ビットに比較して１００％の冗長性を有している。しかしこの種のコードビット列を電気的導線を介して伝送する場合に、レベルの頻繁な変化に基づいてビットレート（好ましくはゼロの場合）と二重のビットレート（好ましくは１の場合）に応じて高いＥＭＶ放射が行われる。１とゼロの間の移行のために、周波数スペクトル内で他の周波数値も生じるが、支配的な２つの周波数が本質的に減衰されることはない。これは、ビット境界においてはコード規則によって常にレベル変化が要請されるために可能となる。冗長性なしで、すなわち１、２、４、８などの値を有するバイナリコーディングで、たとえば１６進コーディング（０ｘ０は２進数の００００に相当し、０ｘＦは２進数の１１１１に相当する）でも表示可能なデータを伝送する場合に、１つにはレベル変化が設けられる必要がなく（常に０ｘ０または０ｘＦ）、あるいは、常に０ｘ５または０ｘＡが送信される限りにおいて、これが各ビットにおいて上と同じ頻度で行われる、という欠点を有している。しかしここではコード冗長性は存在せず、すべてのビットは情報ビットであるので、伝送周波数を半分の値に低下させることができる。しかしそれによってこの使用されるコードは、ＤＣフリーであることはできず、同時にＰＬＬ（phase locked loop）によるクロックリカバリーの可能性を提供しない。というのは、予め定められた最大の、レベル変化なしのビット数は存在しないからである。ＰＬＬは、少なくともすべてのｎビットの１同期化のためにレベル変化を必要とする。従ってコードは、上述したように、幾つかの望ましくない欠点を示す。
【０００４】
部分的に欠点を、既知のブロックコード（たとえば、"A new 8B10B Blockcode for High Speed Data Transmission Over Unshielded Twisted Pair Channels" by Alistair Coles, Hewlett Packard, Oktober 1996に記載されているような）の使用によって、回避することができる。その場合にコード冗長性は、２５％である。というのは、８情報ビットの代わりに１０コードビットが伝送されるからである。コードは、平均してＤＣフリーである。というのは、ゼロに比較して伝送される１の数に従って（running digital sum：RDS）、コードは反転され、あるいは反転されずに伝送されるからである。同一のコードビット値の最大の数（maximum run length：MRL）は、１７である。従って原理的にクロックリカバリーのためにさらに１つのＰＬＬの接続が可能であって、しかしその場合にここでは、ＰＬＬの安定性に対して高い要請が課せられ、過渡時間が著しく長くなってしまう。
【０００５】
ブロックコードの特別な欠点は、それが系統的なコードではなく、従ってたとえばその位置に従って該当するコードビットの値対応を有する１６進コードにおけるような、コーディング規則がないことである。
【０００６】
これは特に、インクリメンタまたは比較器を実現する場合に作用する。というのは、まず、特にインクリメンタにおいて、全部のコードワードが受信されなければならず、コードワードが表によるデコーディングによって求められなければならず、１だけ高いコード値のためにそれに応じたコードワードが表を用いて生成されて、その後初めてそのコードワードが、少なくとも１つのフリップフロップによって同期されて、送信できるようになるからである。従って上述したブロックコードのためには、少なくとも１１クロックの遅延が生じる。同期ＲＡＭ内でコード表を安全確保する場合には、特に少なくとも１３クロックの遅延が生じる。
【０００７】
上述したように、従来技術は、どの観点においても最適な特性を示さない。
【０００８】
特に、使用されるコードがＤＣフリーであるべきであって、必要とされるクロックリカバリーのために頻繁な側面を持つべきであり、かつ、特殊なコントロールビットの単純なインクリメンテーションによりノードのネットワーク位置を生成し、かつ大きな遅延なしでさらに伝導するためには、シリアルインクリメンテーションの可能性が提供されるべきである、という特性の合計が生じる。その場合に特に、より小さいコストを有し、すなわち特にＥＭＶ電磁両立性の枠内でシールドの必要なしで使用することができる、電気的解決を見出すことが望まれる。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
以下で説明する、本発明に基づく解決は、従来技術の欠点を回避して、同時に必要とされる特性を提供することができる。というのは、特に系統的なコードにおいては、低い価値を有するコードビットを受信した場合にこのビットのインクリメントされた値を介してすでに定めることができ、かつコードワード全体をすでに受信し終わることなしに、送信することができるからである。
【課題を解決するための手段】
【００１０】
本発明は、少なくとも２つの通信端末を有する通信システムを介してデータをシリアルに伝送する際にコード生成する方法と装置および該当する通信端末に基づいており、その場合に少なくとも１つの第１の通信端末が少なくとも１つのデータワードを受信して、そのデータワードまたは少なくとも部分的に変化されたデータワードを少なくとも１つの第２の通信端末へさらに伝え、その場合にデータは、２つの異なる値を取ることのできるビットとして、従ってバイナリで表示される。その場合に本発明によれば、データワードの少なくとも２つのビットが少なくとも３つのビットに次のように、すなわち３つのコード化されたビット内で常に等しい値の少なくとも２つのビットが互いに連続し、かつ３つのコード化されたビットの２つを受信した後にすでに、どのような第１のコードビットが送出されたか、を決定することができ、あるいは決定されるように、コード化される。従って１つには、シリアルインクリメンテーションの可能性が容易に実現でき、それが他方で、大きな時間的遅延なしに、そして特にブロックコードの場合よりもずっと少なく、得られる。特にアービトレーションの場合に、それぞれコード化に従って通常すでに１ビットの後に、しかし確実には２ビットの後に、ＭＳＢファーストで伝送される場合に、何が送信されるか、を決定することができる。
【００１１】
好ましくは、１つには、データワードの最も低い値のビットにおいてコード生成ないしコード伝送を開始し、従ってデータワードの少なくとも個々のビットのインクリメンテーションあるいはまたデクリメンテーションも実施することができる。同様に、データワードの最も高い値のビットにおいてコード生成ないしコード伝送を開始し、少なくとも個々のビットの比較、特にデータワードのアービトレーションを実施することができ、その場合に比較結果を出力することができ、あるいはアービトレーションの枠内で送信すべきデータの選択ないし最も高い優先順位を通すデータを求めることができる。
【００１２】
手間を著しく制限するために、好ましくは少なくともそれぞれ２つのビットを３つのビットにコード化することができ、その場合にデータワードの残りのすべてのビットはコード化されずに引き継がれる。他の実施形態においては、それぞれ２ビットを有するデータワードのすべてのビットが３つのビットにコード化され、その場合にデータワードは、２の倍数のビット数を有する。
【００１３】
特別な実施形態においては、特に、インクリメンテーションないしデクリメンテーションと比較の間、そしてそれに伴ってデータワードの最も低い値のビットでの開始とデータワードの最も高い値のビットでの開始との間で、特にアービトレーションの枠内で切り替えることができる。
【００１４】
特に好ましくは、データワードに加えて、それに対して反転されたデータワードも伝送され、その場合に特に開始時に、各データワードに応じて、伝送種類、従って反転か非反転かを識別するための選択ビットが伝送される。それによってその場合には、必要とされるＤＣフリーが得られるので、直流レベルに依存する参照レベルのシフトなしで、電気的解決（あるいはまた光学的伝送）を実現することができる。
【００１５】
その場合にインクリメンテーションないしデクリメンテーションと比較との間の切替えは、特にデータフレーム内のデータワード（あるいは少なくとも１つのビット）の位置に従って行うことができる。同様に、切替えを先行するデータワード内の少なくとも１つの識別子に従って、あるいは特別な識別子を有する特別なデータフレームに従って行うことも、考えられる。
【００１６】
補足として、好ましくは、非データワードが設けられており、それはコード化されたデータに対応せず、他の情報、特に制御情報を伝送し、かつその種の非データワードとして一義的に認識可能である。
【００１７】
特に好ましくは、本発明に基づく方法は、データ担体上に記憶されている、プログラムコードを有するコンピュータプログラムまたはコンピュータプログラム製品の枠内で表され、その場合に本方法は、プログラムがコンピュータ支援される通信システム内で上述したように実施される場合に、実施される。
【発明の効果】
【００１８】
他の利点と好ましい形態が、明細書および請求項の特徴から明らかにされる。
【発明を実施するための最良の形態】
【００１９】
以下、図面に示す図を用いて本発明を詳細に説明する。
【００２０】
図１は、入力インターフェイス１１０、１０８および１１２、受信器または受信モジュールと出力インターフェイス１０９、１０７、１１１、送信器または送信モジュールを有する通信システムまたはバスシステム１００を示している。この送信器および受信器と通信端末１０１、１０２および１０３が通信システム１００によって互いに接続されている。符号１０６は、処理ユニットを示しており、その処理ユニットは本発明によればコード生成および／またはデコーディングおよび／またはインクリメンテーションおよび／または比較またはアービトレーションを実施する。符号１０４は、通信システム１００に対して外部のユニットを示しており、それがインターフェイス１０５を介して一方向または双方向で通信端末、ここでは特に通信端末１０１と接続されている。この外部のユニット１０４は、インターフェイスまたはバスシステムあるいは通信システムを介して他の機器、ユニットまたはエレメントを個々の通信端末に結合することを代表している。
【００２１】
その場合に、シリアルバス、従って特に通信システム１００を介してデータを伝送する場合に、破線の伝送矢印で示すようにコード化されたデータを伝送する場合に、特にインクリメンテーションあるいはまたアービトレーション、つまり比較が行われる。しかし同様に、外部の通信端末１０４を介してデータを通信端末１０１へ入力し、それをその後コード化して、たとえばここでは通信端末１０３へ、再び破線の矢印で示すようにさらに伝導し、あるいはまた通信端末１０２から通信端末１０１へのコード化されたデータを受信して、それをその後外部の通信端末１０４へデコードしてさらに伝導することも可能である。しかし特に、通信システム１００上で、ここではたとえば通信端末１０２から通信端末１０１へ、そしてその後通信端末１０３へ、特にインクリメンテーションまたは比較またはアービトレーションを取り入れながら、コード化されたデータがさらに伝導される。
【００２２】
コード化のためにバイフリーケンシーコードが使用される場合には、たとえばデータワードの最も低い値のビット、従ってＬＳＢ（Least Significant Bit）をまず伝送する場合には、シリアルインクリメンテーションのために２クロックの遅延のみが必要とされる。その場合に、さらに送信し、従ってそれぞれのビットのさらに伝導すべき値を定めるために、その時受信されたビット値とその前のビット値がどの値を有するか、を知ることのみが必要とされる。
【００２３】
そこで本発明によれば、２つの情報ビットを３つのコードビットによって以下のようにコード化を行うことが提案される（規則１）：
【表１】
2007533183.tif 000003
【００２４】
それによってここでは、５０％のコード冗長性をもって、コードワード０１０と１０１が回避され、それによってコードワード内の高いスペクトル成分の影響が減少される。左の情報には値２１ないし２０が対応づけられるが、すべてのコードビットの重み付けは、２０である。コード内の個別ビットを区別するために、ここでは左から右へ標識０（３）、２０（２）または２０（１）が、以下の規則２、３および４に従って使用される。それによって、他のどのコードに基づいても機能する、系統的なコード化規則が与えられた。たとえば、ワンホット（one-hot）コーディングを有する場合に、４つのコード値０００１、００１０、０１００、１０００は、グレイコード００、０１、１１および１０の場合と同様に、値０、１、２および３に対応づけることができる。
【００２５】
従って図２に示す入力コードワードまたは入力データワードＥＣ２から、常に一義的にコードジェネレータ２００ＣＧによって出力コードワードまたは出力データワードＡＣ２へのコード生成が可能である。同様に、図２ａには、デコーダＤＣ２０１によるデータワードＥＣ２ａのデータワードＡＣ２ａへのデコーディングが示されている。この本発明に基づくコードは、以下でさらに説明するように、シリアルインクリメンテーションを実施するのにも適している。規則２、３および４（後述）に従って、コード内のこれらの個別ビットは、左から右へ向かって標識２０（３）、２０（２）ないし２０（１）に従って区別することができ、その場合にインクリメントされた値が表示され、かつ繰越しまたはオーバーフローＯＦに従って生じる。この生成された繰越しまたはオーバーフローＯＦは、後に規則５において、あるいは図５に示すように、シリアルコード化において利用される。
規則２：
２０（１）の生成のため
【表２】
2007533183.tif 000004
規則３：
２０（２）の生成のため
【表３】
2007533183.tif 000005
規則４：
【表４】
2007533183.tif 000006
【００２６】
すなわち、図３に示す入力ビット列または入力データワードまたは入力データコードＥＣ３から、インクリメンタＩＮＣ３００によって出力列ＡＣ３が生成される。これが図４に示すように、コンパレータＣＯＭＰ４００による比較の枠内で、特に図４に示す入力コード列または入力コードワードＥＣ４から出力データワードＡＣ４へアービトレートする場合に、可能である。
【００２７】
その場合にインクリメンテーションからアービトレーションへの変化は、方向切替えにおいて、特に、インクリメンテーションのために必要であるように、ＬＳＢ（Least Significant Bit）がまず評価されるように、あるいは送信方向を変更する場合に、ＭＳＢ（Most Significant Bit）が最初に評価されるように行われ、従って比較、特にアービトレーションをもたらす。これについては、後で詳しく説明する。従って図２のコードジェネレータＣＧ２００は、規則１に従って対応づけを実施し、図３に示すインクリメンタは規則２、３および４に従って対応づけを実施し、その場合に図２においては入力コードＥＣ２から生成された本発明に基づく出力コードＡＣ２が生成され、図３においてはすでにコード化された入力コードＥＣ３からインクリメントされた本発明に基づく出力コードＡＣ３が生成される。
【００２８】
シリアルインクリメンテーションを、規則５に従ってそれぞれの値ｃまたはｕ、ｘ、ｙ、ｚ、ｗを有する図５を用いて詳しく説明する：
規則５：
【表５】
2007533183.tif 000007
【００２９】
図５は、インクリメンテーションモジュールＩＮＣ３０６、インクリメント手段３０１および、フリップフロップ３０５を備えたフィードバックルートを有する、図３に示すインクリメンタ３００を示している。このフリップフロップは、クロック制御される任意のメモリ素子によって実現することができる。このインクリメンタ３００内で、従ってフィードバック手段を有するインクリメンテーション手段３０１において、一方で、図示のように、データワードまたは複数の、少なくとも２つのデータワードを有するデータフレームに従って入力ビット列ＥＢＦが入力されて、同時に図示のように繰越し、従ってオーバーフローＯＦが考慮されて、本発明に基づくインクリメントされた出力ビット列ＡＢＦあるいは出力データワードあるいはまた出力データフレームに変換される。コードのシリアルインクリメンテーションのために、ビット列のLSB（Least Significant Bit）、従って最も値の低いビットで伝送を開始する場合には、コードビットｘを生成するために常に次のコードビットｙに関する情報が必要である。従ってコードは、少なくとも１つのクロックだけ遅延されてさらに伝えられなければならない。受信または送信すべきデータビット列を同期化するために、好ましくはそれぞれ入力と出力にフリップフロップ、従って３０２と３０４が挿入される。インクリメンテーションは、出力ビットｚと生成された中間繰越しｗのための規則５に基づいて、入力繰越しまたはオーバーフローＯＦ、ｃ、中間繰越しｕ、入力ビットｘとｙについて行われる。従って、より大きいコードワードもコードワードのそれぞれの部分について規則１を場合によっては数回利用しながらまとめ、あるいは部分を他のコード化なしで、規則１内の情報ビットを、直接挿入することが可能であって、それについて規則６で詳細に説明する。
規則６：
【表６】
2007533183.tif 000008
【００３０】
ブロックコードのインクリメンテーションに比較して（すでに示したように、シリアルでは不可能）、図５に示す配置によって規則６の場合でも常に、３クロックだけの遅延が生じる。というのは、２つのコード部分が次々と処理されるからである。規則６のコードは、情報ワードとして半バイト、つまり４つの情報ビット＝４ビットを処理する。コード冗長性は、５０％である。その場合の欠点はもちろん、値０またはＦを並べることによってレベル変化なしの比較的大きいブロックが生じる可能性があり、コードはＤＣフリーではないことである。
【００３１】
これに対処するために、まず、規則７に基づくコードが選択され、それは、オリジナルコードの一部をそのまま引き継ぐ場合に、２５％のコード冗長性しか持たない。
規則７：
【表７】
2007533183.tif 000009
【００３２】
規則７に基づくコードをＤＣフリーに構成するために、Least Significant Bit、つまり最も低い値のビットの下に、さらに反転ビットが挿入され、そのビットはまず値０を有する。その場合にコードワード全体の、つまり反転ビットも含めての反転は、値の変化をもたらさない。従って、異なるビット値で開始される、等しい値を有する２つのコードワードが存在する。その場合には、ゼロが連続する場合に、交互にコードワード００００００と１１１１１１を送信することができる。従って直流電流成分の完全な補償、つまりそれぞれ２つのコードワードの後に異なる数の１とゼロが得られる。ここではさらに、コードワードの各開始時にレベル変化が存在し、それがＰＬＬによるクロックリカバリーのために利用できる。従って、以下に示すように、規則８が得られる。
規則８：
【表８】
2007533183.tif 000010
【００３３】
次に、規則９は、すべてのデータワードをその２つの可能な変形例と共に示している。
規則９（ＬＳＢファーストで送信のために）
【表９】
2007533183.tif 000011
【００３４】
規則９は、ＬＳＢファーストで送信するための好ましい実施例を示している。伝送する場合には常に、１の数が加算されて、それからゼロの数が引き算されるので、ＲＤＳ（Running Digital Sum）が得られ、それが、１が多く送信されるか、ゼロが多く送信されるかに関する情報を与える。異なる数の１とゼロを有するコードワードによって、ＲＤＳがコードワード１とコードワード２の間の選択によって影響を受ける。好ましい方法で、ＲＤＳ＝０を計算し、それによって平均してコードをＤＣフリーにすることが試みられる。しかしその場合に、たとえばクロックリカバリー、つまりＰＬＬのために、コードワード間でレベル変化を強制するか、あるいはまた、たとえば周波数スペクトルのために、それを回避しようとする場合に、この規則からのわずかなずれも可能であり、かつ考えることができる。
【００３５】
規則９に従って入力コードワードがインクリメンタ内で連続的にインクリメントされる場合、つまり値が変化する場合には、元の値に対してインクリメントされたデータ値に基づいてＲＤＳ値の変化をもたらす可能性がある。その場合に送信すべきインクリメントされたデータワードについて、逆のコードワードを選択する可能性はない。というのは、反転ビットは、コードワード全体が受信される前に、すでに送信されなければならないからである。ここでは、補正は、後続の非データコードワードによって可能であって、それはたとえば、フレーム標識に関して等しい意味において異なるＲＤＳ値を有する複数の値から選択が許される場合に、データフレームの開始を特徴づける。
【００３６】
規則２、３、４および５に基づくインクリメンテーションは、規則９に基づくコードワード１についてだけ説明されている。コードワード２については、すべての０が１に代えられ、かつ逆に１が０に代えられる。その場合に同一の規則が当てはまる。
【００３７】
規則９に基づく先行する部分において説明されたコードは、特にシリアルインクリメンテーション（ＬＳＢファーストの場合）に、あるいはアービトレーション（ＭＳＢファーストの場合）に適している。デクリメンテーションするには、このコードは余り適していない。というのは、このコードのためには、コード内の位置に関係なく入力ビットｘとｙおよび繰越しビットｃとｕから新しい（送出すべき）コードビットを定める規則５に相当する規則が存在しないからである。従って特にデクリメンテーションのためには、規則１の代わりに次の生成規則１．ｂが利用される：
【表１０】
2007533183.tif 000012
【００３８】
規則１に基づくインクリメンテーションのための規則２、３および４の代わりに、コード１．ｂに基づくデクリメンテーションのための以下の規則２ｂ、２ｂないし４ｂが得られる：
（規則２ｂ）：
２０’の生成のため
【表１１】
2007533183.tif 000013
（規則３ｂ）：
２０’’の生成のため
【表１２】
2007533183.tif 000014
（規則４ｂ）：
２０’’’の生成のため
【表１３】
2007533183.tif 000015
【００３９】
生成された繰越しは、連続的なコード化の際に利用される（規則５ｂを参照）。このコードにおける利点は、デクリメンテーションの場合に初期値と繰越しが同一であって、そうでない場合には繰越しが０であることである。
【００４０】
コードのシリアルデクリメンテーションについて、コードビットｘを生成するためには、常に後続のコードビットｙに関する情報が必要である（ＬＳＢで伝送を開始する場合）。従って連続的なインクリメンテーションの場合のように、コードは少なくとも１クロック遅延してさらに伝えられなければならない。受信したデータビット列と送信すべきデータビット列を同期させるために、好ましくはそれぞれ入力と出力にフリップフロップが挿入される。デクリメンテーションは、出力ビットｚと生成された中間繰越しｗのための規則５ｂに従って、入力繰越しｃ、中間繰越しｕ、入力ビットｘおよびｙについて行われる（図３ａ）：
規則５ｂ
【表１４】
2007533183.tif 000016
【００４１】
しかし、規則１に基づき、あるいはまた規則１ｂに基づく本発明のコードは、アービトレーション目的のため、つまり比較目的のためにも使用することができる。すなわち、特に規則１に基づく規則９に従って、記載されたコードは、可変の優先順位を有するアービトレーション目的のためにも使用することができる。そのためには、最も値の高いビット、つまりMost Significant Bitの送信で開始することが必要であって、インクリメンテーションとデクリメンテーションのためには、すでに説明したように、Least Significant Bit、つまりＬＳＢ、最も値の低いビットで開始される。しかしその場合でも、反転ビットは最初に伝送される（規則１０）。
コード規則１に基づくＭＳＢファーストで送信するための規則１０：
【表１５】
2007533183.tif 000017
【００４２】
この比較またはアービトレーションのための切替えが、図６と図６ａに基づく比較器４００によって示されている。その中に、本来の比較器４０５または４０９（ＣＯＭＰ）を有する比較器モジュール４０１または４０８が示されており、その場合にここでは、比較すべき２つの入力ビット列を遅延させて同期させるために、それぞれ２つのフリップフロップ４０２、４０３および４１２、４１３のみが必要とされ、それらはここでも任意のクロック制御されるメモリ素子によって示すことができる。コードのアービトレーションのために、図６または図６ａのコードビットｘあるいはｒの送信について決定するためには、一般的な場合において、ここでも後続のコードビットｙまたはｓに関する情報が必要である。ここで、従って、ＭＳＢ（Most Significant Bit）で伝送を開始する場合に、ここでもコードは少なくとも１クロック遅延してさらに伝えられなければならない。受信されたデータビット列と送信すべきデータビット列を同期化するために、ここでも好ましくは、それぞれ入力と出力にフリップフロップ４０２または４１２と４０４が挿入される。その場合に本発明に基づく規則に従って、入力ビットｘとｙないしｒとｓから出力ビットｚおよびそれに伴ってアービトレーションの枠内で入力ビット列ＥＢＦまたはＥＢＦ１またはＥＢＦ２の選択とそれの出力ビット列ＡＢＦへの変換が実施される。その場合に比較器決定は、図６ａにおいて、制御ユニット４０７により決定がリセットされるまで、メモリ素子４０６内に記憶されたままとなる。一度行われた比較器決定は、２つの入力ビット列間でさらに切替えを所望に行うために、データ伝送の以降の推移においても利用することができる。そのために、実際に行われた比較器決定が、制御ユニット４０７へ伝達されて、そこに記憶される。この情報を用いて、メモリ素子４０６ないし４０７を任意にセットし、かつリセットすることができる。図６ａには、さらにスイッチないし切替えユニットＳ２が設けられており、それが、図６と６ａについて説明したように、入力ビット列ＥＢＦ１とＥＢＦ２の間の交代を可能にする。
【００４３】
図４ａは、この交代、図４に示す比較器４０１のための２つの入力データワードＥＣ４とＥＣ５および出力データワードＡＣ４のためのスイッチないし切替えユニットＳ１によるこの切替えを示している。
【００４４】
インクリメンテーション（ないしデクリメンテーション）とアービトレーションは、同時にデータワード内で両立しない。しかし、アービトレーションすべきか、あるいはインクリメンテーション（デクリメンテーション）すべきか、という状況の枠内で、伝送順序または送信順序の交代を行うことができる。送信方向に従って、規則９について、好ましい実施例において、ＬＢＳファーストとそれに伴うインクリメンテーション変形例あるいは規則１０によるＭＳＢファーストとそれに伴うアービトレーション変形例が生じる。その場合にデータの最初の２つのビットが、２ビット−３ビットコード化に従って変換され、第２の２つのビット、従ってデータのビット３とビット４はコード化されずに引き継がれる。同時に、反転ビット、つまりそれが反転された変形例であるか、反転されない変形例であるかを表示するビットが、規則９に従ってコードワード１とコードワード２内にLeast Significant Bitとして、従って完全に右側に付加される。ＭＳＢ側に関して同様に示されるので、データの最初の２ビットはそれぞれ中央の３ブロック内で３ビットにコード化され、コードワード１または２の２つの最後のビット、単純にデータのビット３と４は、引き継がれる。その場合に反転を表示するビットは、もちろん、最高の値を有するビット、ＭＳＢとして、それぞれＭＳＢ変形例のコードワード１とコードワード２の左に付加される。
【００４５】
例として、ここでは表示のために、ＭＯＳＴバスにおけるように固定長の枠内でデータが伝送されるバスが適しており、その場合にそれぞれ枠（フレーム）位置に従って、伝送列または送信方向の交代を行うことができる。たとえば、受信した優先順位を自己の優先順位と比較することによって、優先順位に従ってコントロールフレーム情報の送信を決定しようとする場合には、ＭＳＢファーストで送信することが、効果的である。それによって、図６ａに示すように、直接的な切替えを行うことができる。それに対してネットワーク位置を定めて、同時に（中間記憶なしで）後続のノードに伝達しようとする場合には、連続的にインクリメントすることができるようにするために、ＬＳＢファーストで該当するコントロールバイトを送信しなければならない（図５）。コントロールフレーム情報は、常にデータフレーム内、つまりフレーム内で固定の位置で、ＭＯＳＴにおいては常に第６１と第６２バイトで伝送されるので、ここで好ましくはデータフレーム内部のワードカウンタまたはビットカウンタないしバイトカウンタ、従ってカウンタに従って、伝送順序が変化される。
【００４６】
その場合に原則的に、つまりＭＯＳＴケースについてだけでなく、注意しなければならないことは、本発明によれば反転ビットが常に、従ってＬＳＢで開始されるか、ＭＳＢで開始されるかに関係なく、最初に送信されることである。ＥＭＶ特性に関して本発明に基づいて２つの情報ビットを３つのコードビットにコード化するための最も好ましい系統的解決変形例を示す、上述した規則１に関して、以下の変形例が考えられ、かつ可能である。
【表１６】
2007533183.tif 000018
【表１７】
2007533183.tif 000019
【００４７】
その場合にデクリメンテーションの場合のための１．ｂに示すコード規則は、インクリメンテーションのための規則１と比較して同じ利点を有している。ここでも、系統的コードが存在し、そのコードにおいては各コードビットに値２０を対応づけることができる。しかしここでは、まずインクリメンテーションの場合についてさらに説明する。
【００４８】
規則１または規則１に基づいて展開された規則９と１０に基づく好ましい実施変形例によれば、図７と図８に示す特別な送信および受信モジュール、つまり送信器と受信器を示すことができる。図７は、シリアルの送信器を示しており、それにおいてはパラレルのデータ入力ＰＤＩ、従ってたとえばｎビットが、レジスタとコードジェネレータ７０５へパラレルに入力される。この例において、ｎは好ましくは４である。ｋビット（その場合にｋは好ましくは６）を収容することのできるシフトレジスタ７０５を用いて、出力ビット列ＡＢＦを通信システム１００上へ出力することができる。その場合に送信モジュール７００は選択的なエレメント７０１〜７０３を有しており、それについてはさらに説明する。たとえば、ＬＳＢファーストとＭＳＢファーストの間で、つまりインクリメンテーションとアービトレーションの間で切り替える場合に、ワードカウンタまたはカウンタに従って伝送順序が変更される場合に、この種のカウンタ７０１が必要である。同時に、コントロール回路７０３が必要であって、それは特に反転コントロール、従って規則９または１０に従ってＬＳＢとＭＳＢに応じて反転ビットの設定を制御する。同時に、ＲＤＳ値ないし設定の監視を、この回路７０３によって行うことができる。ブロック７０２は、後述する、非データワードを使用するために用いられる。同様にブロック７０３にＤコントロールの機能を実装することができ、それについても後で詳しく説明する。
【００４９】
送信モジュール７００に対応して、図８は符号８００で受信モジュールまたはシリアルの受信器を示している。この実施例において、入力ビット列ＥＢＦがｋビット（ここでも好ましくはｋ＝６）を有するシフトレジスタ８０４へ供給される。符号８０３は、特にレジスタを有する、対応するデコーダモジュールを示している。たとえばｎビット（ｎ＝４）の、パラレルのビット列、従ってＰＤＯ、を本発明に基づいて出力するために、ここでも切替えが使用され、たとえばワードカウンタに従って伝送順序が変更され、ここでもこのカウンタ８０１は選択的に使用されている。ブロック８０２は、ここでも非データワードを認識し、従ってそれをデコードするために用いられ、それによってカウンタの部分的セットを行うことができ、それについては後に説明する。すなわち、図７と８に示す送信器と受信器は、本発明に基づいて完全なコード化ないしデコード化を行うことができる。
【００５０】
エレメント７０２と８０２に関連してすでに言及した非データワードを、詳しく説明する。６コードビットのためのコードスペースは、２６＝６４の異なる可能性を許し、その内の３２データコードワードのみが規則９に従って対応づけられている。多くの適用の場合のために、幾つかの非データコードワードまたは非データワードを制御目的のために、他の情報、特に制御情報と一体化することが重要である。それによってたとえば、伝送の開始を特徴づけ、あるいは、たとえば他の駆動モードへの移行を促すような、他の制御機能および特別な列情報の伝送を導入することができる。この非データコードワードは、たとえばブロックヘッダーラベルまたはデータフレームヘッダーラベル、従ってフレームヘッダーラベルとすることができる。フレームヘッダーラベルは、フレームの開始のみを特徴づける。多くのフレームヘッダーラベルを許可する場合には、変形例の選択によって種々の付加情報を伝送することができる。この種の付加情報は、それの元で連続するコード化が行われた、ＲＤＳ値とすることができる。その例が、表２に記載されており、その場合にこの表の値に限られない。
【表１８】
2007533183.tif 000020
【００５１】
非データコードワードにおいて特別な役割を果たすのは、ビット列０１０１０１または反転された１０１０１０である。このビット列は、同期のために使用され、相前後する２つのデータワードの組み合わせによっても、意図せずに生じるものではない。付加的な条件なしで、規則９に従って列は、たとえば、ＬＳＢで開始して伝送する場合に、４、５、６または７（コードワード１から）の後にデータワードＤ（コードワード１）を結合することによって生じ：１１１０１０  １００ｘｘ０、その場合にこれら２つのデータワードの間にＲＤＳ規則によってレベル交代が設けられている。データコードワードの組み合わせによるビットパターンの生成は、ＲＤＳ規則を無視して、Ｄを伝送する場合に常にレベル交代が生じないようにされる場合には、回避される。従って規則９に基づく上の例において、得られるのはビット列０００１０１  １００ｘｘ０であって、選択されたビット列は生じ得ない。これは、場合によっては短時間で直流成分の増大をもたらす可能性がある。しかし、Ｄの送出が何回か連続することがＲＤＳを徐々に増大させることは、排除されている。というのは、その場合にはまさにコードワード１とコードワード２の間で規則９に従って交代するからである。さらに、値Ｄに続く、均等な数のゼロと１を有するすべてのコードワードにおいて（７、９、Ａ、Ｃおよび非データコードワード）、常に（釣り合わないコードワードがこの規則を中断しない間）レベル交代が行われるようにする場合には、ＲＤＳはその後再度データ値Ｄが送信された場合でも加算されない。というのは、その場合にはＤとは異なるコードワードが利用可能であって、上述の規則に従って強制的に使用もされるからである。図７のブロック７０３内に実装可能なような、送信器内の特殊な制御ユニットが、データワードＤの送出を制御する。他の規則は、ＲＤＳ＝０の場合にＲＤＳ値が増大される、ということであるので、ＲＤＳはゼロの後負にはならず、従って一義性が与えられている。
【００５２】
これらの周辺条件の下で、特別なコードワード０１０１０１とその反転値の伝送は、受信器内に特殊な制御信号のリリースを許し、それが選択されたシステム状態をもたらす。これは、たとえば、受信器内で、たとえば図８のカウンタ８０１内のブロック８０２によって、カウンタをセットすることである。非データコードワードまたは非データワードが、それらがたとえば一定の長さを有するデータフレームの開始をマークするので、規則的な時点においてのみ許されている場合には、すべての他の非データワードをこれらの時点の倍数または分数においてのみ許すことも、有意義である。その場合には、これらのコードワードをデータワードと取り違えることはなく、あるいは、２つの互いに連続するデータワードから形成されて、非データワードのビット列と一致するパターンについて、この特殊な制御信号と取り違えることがない。従ってエラー認識の制限された可能性も実現可能である。規則９または１０に基づく好ましい変形例を有する、図示されているコード変形例の他に、規則１の他のコンポーネントまたは組み合わせ、従ってこの規則と直接的な２進コード化の多重利用が、同様に幾重にも可能である。好ましい実施例のコードは、バイフリーケンシーコードの片側が支配的なスペクトルを回避する。インクリメンテーションによる後からのデータ変更を考慮せず、＋６と−５までの外部のＲＤＳ値から出発する場合には、コードは、平均してＤＣフリーであって、典型的に１３の最大ランレングスを有する。例外場合において、たとえばＤ値の伝送によって、あるいはインクリメンテーションによって上述したＲＤＳ限界を短時間上回る場合に、この値はさらに増大することができる。しかし、このデータ変更は、後続の非データコードワードによって再び補償される。好ましくは、非データコードワードは、たとえば表に従って１０１０１０、００１１１０、００１１００、０１１１１０、０１１１００とそれに対して反転された値であるが、他のすべての比データワードも、原理的に使用可能である。
【００５３】
規則９の実施例に基づくコード化されたデータワードの組み合わせによるビット列１０１０１０を回避する規則は、インクリメンテーションとアービトレーションを切り替える場合にそれに応じて適合される：
【００５４】
ＬＳＢファーストからＭＳＢファーストへ交代する場合に、ＲＤＳ値の絶対値における減少の他は、反転に関して規則は生じない。
【００５５】
２つのＭＳＢファースト値の間で、１６進値”Ａ”の後ろ（”Ｄ”の前の代わりに）のレベル交代は避けなければならない。
【００５６】
”Ａ”の後のすべての釣り合ったコード値について、規則はない。というのは、”Ａ”自体釣り合っているからである（ＡによるＲＤＳ値変化なし、従って間接的に連続する”Ａ”のための規則は不要である）。
【００５７】
ＭＳＢファーストからＬＳＢファーストへ移行するために、最後の３ビットがオルタネーティブである限り（２、６、Ａ、Ｄの後）、レベル交代は一般に阻止される。
【００５８】
次の”Ｄ”について、その他と同じ条件、従ってレベル交代なし、が当てはまる。
【００５９】
２つより多いビットからなるデータワードをコード化するために、さらに、すべてのビットペアを規則１に従ってコード化するか、１ｂに従ってするか、ないしはどのビットペアをコード化せずに引き継ぐか、を決定することができる。規則９において、それは４ビットデータワードの２ＬＳＢであって、それは規則１に従ってコード化されており、２ＭＳＢは直接引き継がれている。規則９ａに基づく、正反対の方法が可能であって、それにおいてはＬＳＢが直接引き継がれ、ＭＳＢが規則１に従ってコード化される：
規則９ａ：（規則１に基づく元のコード化における好ましい実施例とコード化されたデータビットの順序の交換）
【表１９】
2007533183.tif 000021
【００６０】
同様に、特にデクリメンテーション可能性を選択する場合に、他のコード規則が可能である（規則９ｂと９ｃ）：
規則９ｂ（コード化されたデータビットの順序の交換あり、かつ規則１．ｂに基づくコード化）
【表２０】
2007533183.tif 000022
【表２１】
2007533183.tif 000023
【００６１】
規則９ｂは、ＬＳＢファーストを有する伝送における単純なデクリメンテーションのために好ましい。というのは、ここでは非データコードワード０１０１０１または１０１０１０を避けるために、常に”６”の後のレベル交代を回避しなければならないからである。
【００６２】
コードの選択について、以下の一般的な規則が当てはまる：
１．インクリメントあるいはデクリメントしようとする場合に、ＬＳＢファーストで送信する
２．インクリメンテーションは、規則９または９ａに従うことが好ましい
３．デクリメンテーションは、規則９．ｂまたは９．ｃに従うことが好ましい
４．アービトレートしようとする場合には、ＭＳＢファーストで送信する
５．アービトレーションは、規則９または９ａに従うことが好ましい
６．コード化種類は、どの位置で、どのコードで処理されるか、がわかっている場合に、任意に交代させることができる。
【００６３】
コードワード０１０１０１ないし１０１０１０を回避するために、以下の表の規則が守られなければならない：
【表２２】
2007533183.tif 000024
【図面の簡単な説明】
【００６４】
【図１】図１は、加入者を有する通信システムを示しており、図１ａは、規則１ｂに基づく対応づけを有する本発明に基づくコードジェネレータを示している。
【図２】図２はコードジェネレータを用いて、図２ａはデコーダ−「矢印方向反転」、すなわちＥＣ２ａがＡＣ２に相当し、ＡＣ２ａがＥＣ２に相当−を用いて、図２ｂはデクリメンタとして形成されたコードジェネレータをを用いて入力コードを出力コードに変換することを概略的に示している。
【図３】図３はインクリメンタを用いて入力コードを出力コードに変換することを概略的に示しており、図３ａは、ここでは特に規則５ｂに基づいて、デクリメンタによる変換を示している。
【図４】図４はコンパレータ、従って比較器用いて、図４ａはコンパレータ（比較器）と切替えユニットとを有するアービトレーティンユニットを用いて、入力コードを出力コードに変換することを概略的に示している。
【図５】本発明に基づくシリアルインクリメンタを示している。
【図６】本発明に基づくシリアルコンパレータまたは比較器を示している。
【図７】通信システムの、あるいは通信システムへのインターフェイスとしてのシリアルの送信器を示している。
【図８】対応するシリアルの受信器を示している。
【図１】
2007533183.tif 000025
【図１ａ】
2007533183.tif 000026
【図２】
2007533183.tif 000027
【図２ａ】
2007533183.tif 000028
【図２ｂ】
2007533183.tif 000029
【図３】
2007533183.tif 000030
【図３ａ】
2007533183.tif 000031
【図４】
2007533183.tif 000032
【図４ａ】
2007533183.tif 000033
【図５】
2007533183.tif 000034
【図６】
2007533183.tif 000035
【図６ａ】
2007533183.tif 000036
【図７】
2007533183.tif 000037
【図８】
2007533183.tif 000038
【国際調査報告】
2007533183.tif 000039
2007533183.tif 000040
2007533183.tif 000041
2007533183.tif 000042