(57)【要約】  ６ビットのデータおよび４つの制御データを８ビットの形式に詰め込む送信コードが提示される。直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードが、１つ以上の６ビットのソース・ベクトルを含む入力データ・ストリームから作成される。所定のコード化されたベクトルが、８つの２進数字がコード化されたベクトル・セットに従って作成される。所定のコード化されたベクトルは、８つの２進数字を有し、所定の符号化されたベクトルは、所定の６ビットのソース・ベクトルに対応している。８つの２進数字でコード化されたベクトル・セット内のコード化された各ベクトルは、バランスが取られている。所定のコード化されたベクトルが出力される。
2008508747.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上の６ビットのソース・ベクトルを含む入力データ・ストリームから、直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを作成する方法であって、
８つの２進数字でコード化されたセットに従って、前記１つ以上の６ビットのソース・ベクトルのうちの所定の６ビットのソース・ベクトルについての８つの２進数字を有する所定のコード化されたベクトルを作成するステップであって、前記８つの２進数字でコード化されたベクトル・セットにおける各コード化されたベクトルは、バランスが取れている、ステップと、
前記所定のコード化されたベクトルを出力するステップと
を含む、方法。
【請求項２】
前記６ビットのソース・ベクトルは、前記８つの２進数字でコード化されたベクトル・セットのために、６ビットのソース・ベクトルの複数のセットに分割される、請求項１に記載の方法。
【請求項３】
前記複数のセットの１つは、バランスの取れた６ビットのソース・ベクトルをすべて備える、請求項２に記載の方法。
【請求項４】
前記作成ステップは、
１つの次に０、または０の次に１の何れかであるビット・シーケンスを選択するステップと、
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、前記選択されたビット・シーケンスを６ビットのソース・ベクトルに付加するステップと
をさらに含む、請求項３に記載の方法。
【請求項５】
６ビットのソース・ベクトルの前記複数のセットの第２のセットは、負のディスパリティを有する１０個のベクトルの第３のセットと、正のディスパリティを有する１０個のベクトルの第４のセットとを備え、前記第４のセットの前記ベクトルのそれぞれは、前記第３のセット内の対応ベクトルの正確な補完物である、請求項４に記載の方法。
【請求項６】
前記複数のセットのうちの１つは、後端のランが４つの１である６ビットのソース・ベクトルを除く、ディスパリティが＋２の６ビットのソース・ベクトルのすべてを備える、請求項２に記載の方法。
【請求項７】
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、０と０という値を有する２ビットのシーケンスを６ビットのソース・ベクトルに付加するステップをさらに含む、請求項６に記載の方法。
【請求項８】
前記複数のセットのうちの１つは、後端のランが４つの０であるソース・ベクトルを除く、ディスパリティが−２の６ビットのソース・ベクトルのすべてを備える、請求項２に記載の方法。
【請求項９】
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、１と１という値を有する２ビットのシーケンスを６ビットのソース・ベクトルに付加するステップをさらに含む、請請求項８に記載の方法。
【請求項１０】
前記複数のセットのうちの第１のセットは、バランスの取れた６ビットのソース・ベクトルのすべてを備え、
前記作成ステップは、
１の次に０、または０の次に１の何れかの２ビットのシーケンスを選択するステップと、
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、前記選択された２ビットのシーケンスを、前記第１のセットからの６ビットのソース・ベクトルに付加するステップとをさらに含み、
６ビットのソース・ベクトルの前記複数のセットのうちの第２のセットは、ディスパリティが４または６の１４個の６ビットのソース・ベクトルと、ディスパリティが２で後端のランが４の２つの６ビットのソース・ベクトルと、４つの制御ベクトルとを備える、請求項２に記載の方法。
【請求項１１】
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、前記選択された２ビットのシーケンスの前記値の補完物を備える他の２ビットのシーケンスを、前記第２のセットからの６ビットのソース・ベクトルに付加するステップをさらに含む、請求項１０に記載の方法。
【請求項１２】
前記作成ステップは、先頭または後端のランが３ではないバランスの取れた１６個の固有の６ビットのベクトルが生成されるように、前記第２のセットからの１６個の６ビットのソース・ベクトルの１から３ビットを補完するステップをさらに含む、請求項１１に記載の方法。
【請求項１３】
前記１６個の６ビットのソース・ベクトルは、６ビットのソース・ベクトルの８つの対を備え、各対は、正のディスパリティを有する６ビットのソース・ベクトルと、負のディスパリティを有する対応する補完された６ビットのソース・ベクトルとを備え、１から３ビットを補完する前記ステップは、６ビットのソース・ベクトルの任意の対における同一のビット位置を補完することを伴う、請求項１２に記載の方法。
【請求項１４】
前記第１のセットを使用して作成された前記８ビットのコード化されたベクトルは、コード化されたデータベクトルを備え、前記第２のセットを使用して作成された前記８ビットのコード化されたベクトルは、コード化されたデータおよび制御ベクトルを備え、補完物である２ビットを付加する前記ステップは、制御入力が４つの所定のバランスの取れた６ビットのソース・ベクトルと共に能動化されると、４つのコード化された制御ベクトルのうちの１つが生成されるように実行される、請求項１２に記載の方法。
【請求項１５】
前記コード化された制御ベクトルの少なくとも１つは、後端のランが３である、請求項１４に記載の方法。
【請求項１６】
後端のランが３である前記コード化された制御ベクトルには、制御文字の３という後端のランの値と一致する値を有する、先頭のランが３のコード化されたデータ・ベクトルが続いて、２コード化されたベクトル同期コンマ・シーケンスを生成する、請求項１５に記載の方法。
【請求項１７】
１つ以上の６ビットのソース・ベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを作成するためのエンコーダであって、前記エンコーダは、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の６ビットのソース・ベクトルのうちの所定の６ビットのソース・ベクトルについての８つの２進数字を有する所定のコード化されたベクトルを作成し、前記８つの２進数字でコード化されたセットにおける各コード化されたベクトルは、バランスが取れており、
前記所定のコード化されたベクトルを出力する
ように適合されている、エンコーダ。
【請求項１８】
１つ以上の６ビットのソース・ベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを作成するための少なくとも１つのエンコーダを備える半導体であって、前記少なくとも１つのエンコーダは、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の６ビットのソース・ベクトルのうちの所定の６ビットのソース・ベクトルについての８つの２進数字を有する所定のコード化されたベクトルを作成し、前記８つの２進数字でコード化されたセットにおける各コード化されたベクトルは、バランスが取れており、
前記所定のコード化されたベクトルを出力する
ように適合されている、半導体。
【請求項１９】
１つ以上の８ビットのコード化されたベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを復号化する方法であって、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の８ビットのコード化されたベクトルのうちの所定の８ビットについての６つの２進数字を有する所定のコード化されていないベクトルを作成するステップであって、前記８つの２進数字でコード化されたベクトル・セットにおける各コード化されたベクトルは、バランスが取れている、ステップと、
前記所定のコード化されていないベクトルを出力するステップと
を含む、方法。
【請求項２０】
各８ビットのコード化されたベクトルは、２つの符号化２進数字と、６つのコード化されていない２進数字とを有し、前記６つのコード化されていない２進数字は、複数の６ビットのソース・ベクトルのうちの６ビットのソース・ベクトルに対応し、前記複数の６ビットのソース・ベクトルは、前記８つの２進数字でコード化されたベクトル・セットについて、６ビットのソース・ベクトルの複数のセットに分割され、各８ビットのコード化されたベクトルは、前記６ビットのソース・ベクトルのうちの１つに対応する、請求項１９に記載の方法。
【請求項２１】
前記複数のセットの第１は、バランスの取れた６ビットのソース・ベクトルのすべてを備え、
前記複数のセットの第２は、後端のランが４つの０である６ビットのソース・ベクトルを除く、ディスパリティが＋２の６ビットのソース・ベクトルのすべてを備え、
前記複数のセットの第３は、後端のランが４つの０である６ビットのソース・ベクトルを除く、ディスパリティが−２の６ビットのソース・ベクトルのすべてを備え、
前記複数のセットの第４は、ディスパリティが４または６の１４個の６ビットのソース・ベクトルと、ディスパリティが２で、後端のランが４の２つの６ビットのソース・ベクトルと、４つの制御ベクトルとを備える、請求項２０に記載の方法。
【請求項２２】
前記作成ステップは、前記第１、第２、および第３のセットに対応するすべての８ビットのコード化されたベクトルについて、前記６個のコード化されていない２進数字を変更しないステップをさらに含む、請求項２１に記載の方法。
【請求項２３】
前記第１のセットは、１０および０１という符号化２進数字を有し、前記第２のセットは、２つの０という符号化２進数字を有し、前記第３のセットは、１１という符号化２進数字を有し、前記第４のセットは、前記第１のセットに対応する前記符号化２進数字の逆数である符号化２進数字を有する、請求項２１に記載の方法。
【請求項２４】
前記所定の８ビットのコード化されたベクトルは、第４のセットに対応し、前記作成ステップは、
前記所定のコード化されたベクトルの前記６つのコード化されていない２進数字が１６個の固有の６ビットのコード化されていないベクトルのうちの１つを備える場合、前記８ビットの２進数字でコード化されたベクトル・セットに従って、前記６つのコード化されていない２進数字のうちの１から３ビットを補完するステップと、
前記所定のコード化されたベクトルの前記６つのコード化されていない２進数字が４つの固有の制御ベクトルのうちの１つを備える場合に、制御信号をアサートするステップと、
前記第４に対応する他のコード化されたベクトルについては、前記コード化されたベクトルについての前記２つの符号化２進数字を落とすステップとをさらに含む、請求項２３に記載の方法。
【請求項２５】
前記所定の８ビットのコード化されたベクトルの先端においてランがせいぜい３でバランスが取れているか、または、前記所定の８ビットのコード化されたベクトルの後端においてランがせいぜい３でバランスが取れている場合に、前記所定の８ビットのコード化されたベクトルは有効であると宣言するステップをさらに含む、請求項１９に記載の方法。
【請求項２６】
制御ベクトルが前記作成ステップにおいて作成される場合、制御信号を能動化するステップをさらに含む、請求項２１に記載の方法。
【請求項２７】
前記所定の８ビットのコード化されたベクトルの２つの２進数字を使用して、前記所定の８ビットのコード化されたベクトルのうちのある２進数字に変更が必要かどうかを判断するステップをさらに含み、
前記８つの２進数字でコード化されたセットは、前記２つの２進数字の４つの予想される組み合わせのうちの１つのみが、８ビットのコード化されたベクトルの２進数字に変更の必要がある旨を示すように設計される、請求項１９に記載の方法。
【請求項２８】
１つ以上の８ビットのコード化されたベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを復号化するためのデコーダであって、前記デコーダは、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の８ビットのソース・ベクトルのうちの所定の８ビットのソース・ベクトルについての６つの２進数字を有する所定のコード化されていないベクトルを作成し、前記８つの２進数字でコード化されたベクトル・セットにおける各コード化されたベクトルは、バランスが取れており、
前記所定のコード化されていないベクトルを出力する
ように適合されている、デコーダ。
【請求項２９】
１つ以上の８ビットのコード化されたベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを復号化するための少なくとも１つのデコーダを備える半導体であって、前記少なくとも１つのデコーダは、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の８ビットのコード化されたベクトルのうちの所定の８ビットのソース・ベクトルについての６つの２進数字を有する所定のコード化されていないベクトルを作成し、前記８つの２進数字でコード化されたベクトル・セットにおける各コード化されたベクトルは、バランスが取れており、
前記所定のコード化されていないベクトルを出力する
ように適合されている、半導体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システムに関し、より特定的には、通信システムにおける送信コードに関する。
【背景技術】
【０００２】
送信コードの目的は、クロッキングが容易に回復可能であり、かつ、交流（ＡＣ）結合が可能であるように、シリアル・データ・ストリームの周波数スペクトルを変換するためのものである。典型的には、直流（ＤＣ）バランス・コードを使用して、ＡＣ結合を提供することができる。また、送信コードを使用して、信号波形整形としばしば組み合わせて、信号スペクトルを特定のチャンネル要件に密接に適応させるようにする。
【０００３】
周波数スペクトルの修正を提供するために、送信コードによってデータ・ベクトルをコード化されたベクトルに変換する。また、典型的な送信コードは、文字同期、フレーム・デリミタ、およびおそらく異常終了、リセット、アイドル、診断、または他の機能のような機能のためのデータ・ベクトル外に、特殊な「制御」文字を提供する。コード化中に、入力データまたは制御ベクトルは、送信コードのコード化規則に従って、コード化されたベクトルに変換される。復号化中に、入力コード化ベクトルは、送信コードの復号化規則に従って、データまたは制御ベクトルに変換し直される。
【０００４】
送信コードは、どのコード化されたベクトル、またはコード化されたベクトルのどのビットにエラーがあるかを判断するために、通常、パリティまたはエラー訂正コードなどの他の技術と組み合わされる。
【０００５】
送信コードは有益であるが、改良された送信コードに対する必要性がそれでもまだある。
【発明の開示】
【課題を解決するための手段】
【０００６】
本発明は、ローカル・パリティを有する直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを提供する。
【０００７】
一実施形態において、ＤＣバランス６Ｂ／８Ｂ送信コードが、１つ以上の６ビットのソース・ベクトルを含む入力データ・ストリームから生じる。所定のコード化されたベクトルが、８つの２進数字でコード化されたベクトル・セットに従って作成される。所定のコード化されたベクトルは、８つの２進数字を有し、所定のコード化されたベクトルは、所定の６ビットのソース・ベクトルに対応している。８つの２進数字でコード化されたベクトル・セット内の符号化された各ベクトルは、バランスが取れている。所定のコード化されたベクトルが出力される。
【０００８】
本発明のさらに完全な理解、ならびに本発明のさらなる特徴および利点は、以下の詳細な説明および図面を参照して得られるだろう。
【発明を実施するための最良の形態】
【０００９】
本発明は、６Ｂ／８Ｂ送信コードを使用して符号化および復号化を行うための方法および装置を提供する。以下に詳細に説明するように、本発明の６Ｂ／８Ｂ送信コードは、４つの先頭または後端のランがない、６８個のバランスの取れたコード化されたベクトルを提供する。８ビット・ベクトル内での同数の間違った１および間違った０を有しない任意のエラー・パターンによって、無効なベクトルが生成される。したがって、６Ｂ／８Ｂ送信コードは、ローカル・パリティを有するとみなすことができる。なぜならば、単一のビット・エラーまたは奇数個のビット・エラーは、コードによって検出されたエラーのサブセットだからである。任意の単一のビット・エラーを有するベクトルを検出できることは、パリティ・ビットをベクトルに付加することによって通常行われる機能である。言い換えれば、以下に説明する６Ｂ／８Ｂ送信コードのようなローカル・パリティを伴うコードにおいて、各６ビットのコード化されていないベクトルは、それに対応する固有のコード化された８ビット・コード化されたベクトルを有する。コード化されたベクトルは、バランスの取れていないエラー・パターンがコード化されたベクトル内にある場合に、有効なコード化されたベクトルが無効なコード化されたベクトルへ変換されるように設計される。この開示において、「コード化された（ｃｏｄｅｄ）」および「符号化された（ｅｎｃｏｄｅｄ）」は、交換可能に使用されることになろう。
【００１０】
さらに、コード化されたベクトル内のある程度のエラーは判断可能なので、他の比較的単純な手法を使用して、コード化されたベクトル内のどのビット（または複数のビット）にエラーがあるかを判断することができる。一例として、コード化されたベクトルのブロックに渡って計算されたパリティ・ベクトルを使用して、エラーを訂正することができる。エラーを訂正するためにパリティ・ベクトルを使用した例は、エー・エックス・ウィドマー（Ａ．Ｘ．Ｗｉｄｍｅｒ）による米国特許第５７４０１８６号「Ａｐｐａｒａｔｕｓ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｂａｓｅｄ  ｏｎ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｄｅ  Ｖｉｏｌａｔｉｏｎｓ  ａｎｄ  Ｐａｒｉｔｙ」（１９８８年）および、２００２年１２月１９日出願のエー・エックス・ウィドマー（Ａ．Ｘ．Ｗｉｄｍｅｒ）による米国特許出願第１０／３２３５０２号「Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  ｗｉｔｈ  Ｌｏｗ  Ｌａｔｅｎｃｙ  ｆｏｒ  Ｂｕｓ  Ｓｔｒｕｃｔｕｒｅｓ」に示されており、これらの開示は、参照により本願に含まれるものとする。
【００１１】
参照を容易にするため、本開示は、以下の章に分ける。序論、６Ｂ／８Ｂ送信コードの一般的な説明、ソース・ベクトルおよびコード化されたベクトル、符号化された８Ｂベクトルの生成、６Ｂ／８Ｂエンコーダの回路実装、復号化された６Ｂベクトルの生成、妥当性チェック、妥当性チェックを含む６Ｂ／８Ｂデコーダの回路実装、および実装の概要である。
【００１２】
Ａ．序論
デジタル時代の幕開け以来、バイトなどのビットのグループにパリティ・ビットを追加することがよく行われてきた。これは、単一のエラーの影響を受けたバイトがパリティ・ビットの他のセットによって識別され、おそらく訂正されることができるようにするためのものである。信頼できるシリアル送信のためには、冗長を追加して、シリアル・ビット・ストリームのラン・レングスおよび帯域幅特性を制御することがよく行われる。ラン・レングスとは、連続した１または０の数のことであり、「先頭のラン」が３とは、コード化されていないか、またはコード化されたベクトルの最初の３ビット内の３つの１又は３つの０のことである。送信コードは、通常、符号化されたベクトルのストリング内の様々な種類のエラーを検出することができる一方で、通常、正確なエラー位置を指し示すこと、または特定の欠陥ベクトルを識別することがいつもできるわけではない。代わりに、そうするためには、追加の冗長が典型的には必要である。この取り組みの例は、米国特許第５７４０１８６号および米国特許出願第１０／３２３５０２号であり、これらの開示は、参照により本願に含まれるものとする。
【００１３】
パリティおよび送信の局面が、エー・エックス・ウィドマー（Ａ．Ｘ．Ｗｉｄｍｅｒ）による米国特許５６９９０６２号「Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｄｅ  ｈａｖｉｎｇ  Ｌｏｃａｌ  Ｐａｒｉｔｙ」（１９９７年）において行われた単一の解決策によって解決されれば、コード化効率全体を上昇させることができ、この開示は、参照により本願に含まれるものとする。広い送信バスにおける送信コードの新規の応用のために、米国特許第５６９９０６２号に説明されているような８ビットのバイト・フォーマットとの互換性は、あまり重みを有しない。いくつかのビットの残りは、１Ｂ／２Ｂ，３Ｂ／４Ｂ，または５Ｂ／６Ｂのような互換性のある送信コードによって取り扱うことができる。他の状況においては、バス幅ｎがｎ×２４のような６および８の倍数である場合には、符号化回路の数と、おそらく送信路の数とを変更すればよい。
【００１４】
６Ｂ／８Ｂコードにおける新規の解決策が、本明細書において提示されている。６Ｂ／８Ｂ送信コードは、非常に高い動作レートに適した非常に単純な回路で実現される。短絡遅延は、待ち時間要件が低いことに対応している。また、シリアル送信レートおよび並列電気的インターフェース・クロックとの割合は、任意の上記参考文献に基づく解決策のためには、２の好ましい累乗対３または５の倍数である。また、単純な回路は、臨界領域における電力損失を含む助けとなる。
【００１５】
この新規の６Ｂ／８Ｂ送信コードは、主に、うまく設計された光リンクなど、統計的に独立した単一のエラーを伴う応用を目的としている一方で、コードは、ローカル・パリティという特徴が副次的役割を有している場合に、前方エラー訂正を伴わない応用にとって利点を有することもできる。統計的に独立した単一のエラーによって、奇数個のエラーを有するコード化された各ベクトルを容易に判断して、再送信することができる。
【００１６】
加えて、６Ｂ／８Ｂ送信コードは、いくつかの選択肢から他の設計ポイントを提供する。一例として、７２本のデータ線を有する電気的バスを、９本を超える８Ｂ／１０Ｂコード化線上を送信してもよい。電気線の距離およびボー・レートが極端な場合には、複数のエラーを生じさせる傾向のある判断フィードバック等価器が必要になる場合もある。この問題を克服するために、エラー訂正のハミング符号を有する５本の線を追加する。ハミング訂正を伴う単一の７２ビットのワードを、バス・レートの１０倍で動作する１４本の高速線上で移送するには、１４×１０＝１４０ビットが必要となる。バス・レートの８倍で動作する１２＋５＝１７本を超える高速線上で６Ｂ／８Ｂコードを使用するには、１７×８＝１３６ビットが必要なだけであり、これは、６Ｂ／８Ｂコードのさらに大きなオーバヘッドを考慮すると驚くべきことである。この節源が生じたのは、訂正エンティティの幅が広いので、エラー訂正のためのオーバヘッドが少ないからである。または、シリアル線をより多く使用して、シリアル送信レートをバス・レートの１０倍から８倍に低減することもできる。代わりに、どちらの場合も、全７２ビットのワードを各バス・レート・クロック周期で送り出すと仮定して、バス・レートおよびスループットを２５％上昇させることもできる。比較のため、さらに複雑な７Ｂ／８Ｂコードを使用して類似の性能を得ることができる。７Ｂ／８Ｂコードでは、ハミング訂正を伴う７７ビットのワードを、バス・レートの８倍で動作するたった１６本の線上で送信することができる。他の例として、周知の５Ｂ／６Ｂコードは、ハミング訂正を伴う７５ビットのワードを、バス・レートの６倍のシリアル・レートの２０本の線上で送信することができる。
【００１７】
Ｂ．６Ｂ／８Ｂ送信コードの一般的な説明
実施形態例において、符号化装置への入力は、７本のラインに加えてクロックを備える。６本の制約のない線は、７本目の線、すなわち制御線がアサートされない場合には、入力データ・ストリームの一部としての６４個のデータ・ベクトルを表す。制御線が４つの特定のデータ・ベクトルのうちの１つと共にアサートされる場合には、データ以外であると認識可能な符号化された制御ベクトルが生成される。６Ｂ／８Ｂ送信コードは、直流のバランスが取れている。なぜなら、各コード化されたベクトルは、ディスパリティが０である。ディスパリティとは、ビットの所期のブロック内、この場合、コード化された８ビットのベクトル内の１および０ビットの数の間の差である。「バランスの取れた（Ｂａｌａｎｃｅｄ）」とは、コード化されたベクトルについてディスパリティが０のことをいう。
【００１８】
６Ｂ／８Ｂ送信コードにおいて、総計６８個の符号化されたベクトルがあり、符号化されたベクトルはすべて、バランスが取れている。したがって、コード化された領域内の任意の単一のビット・エラーまたは任意の奇数個のビット・エラーが、すぐにそうだとわかる無効ベクトルを生成することになる。
【００１９】
符号化および復号化の目的のために、６４個のソース・ベクトルは、４つのセットに分類される。
【００２０】
１．２０個のソース・ベクトルの第１のセットは、すべてバランスが取れた６Ｂベクトルを備える。
２．１４個のソース・ベクトルの第２のセットは、６Ｂベクトルを備え、それら６Ｂベクトルのすべては、後端のランが４つの１を有するベクトルであるという例外を有する（例えば、そのようなベクトルを含まない）、ディスパリティが＋２である。
３．１４個のソース・ベクトルの第３のセットは、６Ｂベクトルを備え、それら６Ｂベクトルのすべては、後端のランが４つの０を有するベクトルであるという例外を有する（例えば、そのようなベクトルを含まない）、ディスパリティが−２である。
４．２０個のソース・ベクトルの第４のセットは、ディスパリティが４または６である１４個のベクトルを備え、２つのベクトルは、ディスパリティが２であり、後端のランが４であり、４つの制御ベクトルを有する。
【００２１】
符号化処理において、４つのセットはすべて、以下により詳細に説明するような２ビットの接頭辞を取得する。代わりに、２ビットは接尾辞として追加されるか、他の特定の位置に追加されることもできる。しかしながら、以下の理由で、接頭辞が有益な実施である。最初の３つのセットのソース・ビットは、符号化および復号化のために変更されないままである。バランスの取れた符号化されたベクトルを生成するには、４番目のセットの１６個のデータ・ベクトルのみが、１，２、または３ビットの一で変更が必要である。接頭辞は、以下のように選択される。
【００２２】
１．第１のセットは、補完ビット値、すなわち、１０または０１を交互に実施した２ビットの接頭辞を取る。
２．第２のセットは、値が１００の接頭辞を取る。
３．第３のセットは、値が１１の接頭辞を取る。
４．第４のセットは、第１のセットの補完ビット値の補完、すなわち、０１または１０を交互に実施した２ビットの接頭辞を取る。
【００２３】
表記
ソース・ベクトルの６ビットは、大文字のＡ，Ｂ，Ｃ，Ｄ，Ｅ，およびＦで識別される。追加の制御入力は、ラベルＫを有している。コード化されたベクトルの８ビットは、各小文字のａ，ｂ，ｃ，ｄ，ｅ，およびｆで識別され、２つの追加のビットが文字ｇおよびｈによって識別される。図１８、図１９、図２７、および図２８を参照して以下に説明する回路図において、コード化された入力および出力「ａ」から「ｈ」は、大文字Ｃが前におかれているが、なぜならば、設計ツールによっては小文字および大文字間で区別していないものもあるからである。すべてのベクトルは、データまたは制御ベクトルをそれぞれ表す文字ＤまたはＫでは始まる名称が割り当てられており、ソース・ベクトルについては２桁の８進数、コード化されたベクトルについては３桁の８進数が続いている。８進数は、右側の低位ビット（すなわち、ビットＡまたはａ）のバイナリ・ビット・パターンを表す。コード化されたベクトルについての高次の８進法の位置は、コード化されたベクトルが属するクラスを識別するビットｇおよびｈの値を示す。
【００２４】
本開示は、高位ビットｈが最初に送信されるものとする。６Ｂ／８Ｂ送信コードは、順序には左右されないが、コード化されたベクトルをビットｇおよびｈを使用して分類しているので、コード化されたベクトルの先端にあるビットｇおよびｈの位置を使用して、受信器の待ち時間をやや減少させる、またはタイミング・マージンを改善することができる。なお、送信順序が逆になると、以下に規定する同期ベクトル対に影響を与えることになる。
【００２５】
本明細書の式において使用されている信号名は、任意の論理レベルを反映していない。その代わりに、信号名は、抽象的な論理表現として解釈されるべきである。しかしながら、回路図において、信号名は、文字ＰまたはＮが前に置かれて、関数が、高位または低位レベルにおいて真かどうかを示す。ＰおよびＮの接頭辞は、それぞれＰおよびＮで始まるネット名には通常使用されない。「ｎ」または「ｍ」で始まるネット番号は、下位レベルにおいて真であり、高位レベルで真であれば、Ｐという接頭辞を取る。論理式において、記号・，＋，および／は、それぞれ、ブールのＡＮＤ，ＯＲ，およびＥＸＣＬＵＳＩＶＥ  ＯＲ関数を表す。アポストロフィ（’）は、否定を表す。
【００２６】
Ｃ．ソース・ベクトルおよびコード化されたベクトル
図１は、Ｋ入力の値を無視する、６４個のソース・ベクトルのトレリス線図である。図２は、６８個のコード化されたベクトルのトレリス線図であって、データではない４つの制御ベクトルを含む。図中の番号は、数字の左のノードで終わるベクトルの数を示す。
【００２７】
低周波数特性
図２のトレリスから、コードは、最大デジタル合計変化が６でＤＣバランスが取れていることが明らかである。正規化されたＤＣオフセットは、０のディスパリティ・レベルおよびトレリスの末端の輪郭の間の領域に関連しており、当該オフセットは、１．７５である。参照として、フラナツェック（Ｆｒａｎａｓｚｅｋ）およびウィドマー（Ｗｉｄｍｅｒ）による米国特許番号４４８６７３９号、「Ｂｙｔｅ  Ｏｒｉｅｎｔｅｄ  ＤＣ  Ｂａｌａｎｃｅｄ  （０，４）８Ｂ／１０Ｂ  Ｐａｒｔｉｔｉｏｎｅｄ  Ｂｌｏｃｋ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｄｅ」（１９８４年）に説明されているように、ファイバ・チャンネル８Ｂ／１０Ｂコードについては、オフセット値は１．９であり、この開示は、参照により本願に含まれるものとする。等しい閉眼のための低域フィルタのパラメータに依存して、高域フィルタに関する低周波数カット・オフ・ポイントは、８Ｂ／１０Ｂについてのそれと同じくらい低いかそれ以下で見つけることができる。
【００２８】
同期特性
実施形態例において、最大ラン・レングスは、８Ｂ境界に渡って中心となる６である。本実施形態において、６の連続したランはない。加えて、６のランは単数であり、すなわち、８Ｂ境界に対する他の配列で現れることはできず、コンマとしての役割を果たすことができる。
【００２９】
制御文字の文脈において６個の０のコンマを生成するためには、制御文字のうちの１つ（例えば、Ｋ１７０）は、３つの０の後端のランで規定される。この文字には、３つの０の先頭のランを伴う図５のセットからの４つのデータ文字のうちのいずれでも（例えば、Ｄ０２７，Ｄ０３３，Ｄ０３５，またはＤ０３６）続いてよい。６つの１の同等の代替コンマが、３つの１の後端のランおよびそれに続く３つの１の先頭のランを伴う図６のセットからの４つのデータ文字のうちのいずれか（例えば、Ｄ３４１，Ｄ３４２，Ｄ３４４，Ｄ３５０）を有する他の制御文字（Ｋ１０７）から生成される。これにより、シグナリング、ならびに両ベクトルの配列のチェックおよびベクトル対によるフレームの最初および最後のチェックが可能となる、
【００３０】
コンマと制御特性を組み合わせた代替ベクトル対は、後端のランが３のデータベクトルを最初に、先頭のランが３の制御ベクトルを２番目に配置することによって、規定することができる。これにより、符号化表のいくつかを変更する必要があることになり、ここでは、完全性のためのみに言及する。
【００３１】
通常のデータ・トラフィックでは、配列または配列チェックのために使用することも可能な同一配列の６つの１または０のシーケンスがあることになる。
【００３２】
配列を生じさせる他の可能性としては、コード化されたベクトルのランダムなシーケンスにおいて、６ボーの間隔で現状のディスパリティをチェックして、境界の値が０と推定でき、エラーなしてそのままであり続けるはずであるというほど安定した値と仮定できるまで、配列を進ませるということである。
【００３３】
６Ｂ／８Ｂ符号化テーブル
６Ｂ／８Ｂ送信コードの一般的な説明において説明したように、図２の６８個のコード化された８ビット（８Ｂ）ベクトルは、４つに分割され、それぞれは、図３、図４、図５、および図６のトレリス線図によって示されるようなコード化されたベクトルを有する。図３、図５、および図６における実線は、２ビットの接頭辞を除く、符号化領域において変化しないままのソース・ベクトルの４８個を表す。図４のトレリス線図は、４つの制御ベクトルと、残りの１６個のデータ・ベクトルとを示す。
【００３４】
符号化のために変更する必要がない図３、図５、および図６の４８個のコード化された８ビット・ベクトルは、図７の表に列挙されている。図４の２０個のベクトルは、図８の表に列挙されている。表の左側の１０個のソース・ベクトルは、負のディスパリティを有する。右側の正のディスパリティを有する１０個のソース・ベクトルは、左側のそれの正確な補完物である。これらのベクトルのうち１６個は、符号化のために以下の表に変更する。
１．ディスパリティが６で、すべてが１または０の２つのベクトルは、３ビットを補完することによってバランスが取られる。
２．ディスパリティが４の１２個のベクトルは、２ビットを補完することによって符号化される。
３．ディスパリティが２で、後端のラン・レングスが４の２つのデータ・ベクトルは、単一のビットの補完によってバランスが取られる。
【００３５】
各ソース・ビットの補完物であるコード化されたビットは、太字で下線が引かれて印刷されている。図８の表の左側および右側間、ならびに、ベクトルＤ１０，Ｄ２０，およびＤ４０の「ａｂｃ」ビットおよびベクトルＤ０４，Ｄ０２，およびＤ０１の「与えられた」ビット間それぞれの、１６個のデータ・ベクトルのセットについての補完ビットのパターンの対照性に注意されたい。符号化のために補完されたビット位置は、補完ベクトルの各対に関して同一である。この特徴により、符号化および復号化式が簡素化される。完全６Ｂ／８Ｂコード化割り当てを、図９の表に示す。
【００３６】
Ｄ．符号化された８Ｂベクトルの生成
符号化式の導出について、図８または図９あるいはその両方の表を参照する。一般適任、符号化されたビットは、コード化されていないビット（ａ＝Ａ，ｂ＝Ｂなど）を保持するが、各式が真の場合およびその場合にのみ（ｉｆｆ）、特定のソースビットが補完される（ａ＝Ａ’，ｂ＝Ｂ’など）。符号化ラベルおよび式において、いくつかのビット値が重複して含まれており、これにより、いくつかのビットの符号化について回路をさらに共有することができる。重複ビット値は、上に線が引かれており（上線）、重複ベクトル名は、アスタリスクが前に付されている。
【００３７】
符号化されたビットａ
「ａ」欄は、Ｄ００，Ｄ０４，Ｄ１０，Ｄ２０，Ｄ４０，Ｄ３７，Ｄ５７，Ｄ６７，Ｄ７３およびＤ７７についての太字入力を有する。コード化されていない各ビットＦＥＤＣＢＡは、図１０に示す表に列挙されており、Ａビットには上線が引かれている。ソース・ビットにおける共通パターンは、太字入力で印付けされて、ベクトルを単純な式によって論理的に分類している。
【００３８】
これらの識別子を使用して、ビット「ａ」についての符号化式は、以下のように書くことができる。
【００３９】
【数１】
2008508747.tif 000003
【００４０】
図１９の回路図において、以下のネット名が使用される。
【００４１】
【数２】
2008508747.tif 000004
【００４２】
符号化されたビットｂ
「ｂ」欄は、Ｄ２０，Ｄ４０，Ｄ３７，およびＤ５７についての太字入力を有する。コード化されていない各ビットＦＥＤＣＢＡが、図１１に示す表に列挙されており、Ｂビットには上線が引かれており、共通パターンは、太字入力で印付けされている。
【００４３】
これらの識別子を使用して、ビット「ｂ」についての符号化式は、以下のように書くことができる。
【００４４】
【数３】
2008508747.tif 000005
【００４５】
図１９の回路図において、以下のネット名が使用される。
【００４６】
【数４】
2008508747.tif 000006
【００４７】
符号化されたビットｃ
「ｃ」欄は、Ｄ６０およびＤ１７についての太字入力を有する。コード化されていない各ビットＦＥＤＣＢＡが、図１２に示す表に列挙されており、Ｃビットには上線が引かれている。
【００４８】
これらの識別子を使用して、ビット「ｂ」についての符号化式は、以下のように書くことができる。
ｃ＝Ｃ・（Ａ・Ｂ・Ｄ・Ｅ’・Ｆ’）’＋Ａ’・Ｂ’・Ｄ’・Ｅ・Ｆ
【００４９】
図１９に示す回路図において、以下のネット名が使用される。
ｎ２１＝Ｃ・（Ａ・Ｂ・Ｄ・Ｅ’・Ｆ’）’
【００５０】
符号化されたビットｄ
「ｄ」欄は、Ｄ００およびＤ７７についての太字入力を有する。コード化されていない各ビットＦＥＤＣＢＡは、図１３に示す表に列挙されており、Ｄビットには上線が引かれている。
【００５１】
これらの識別子を使用して、ビット「ｄ」についての符号化式は、以下のように書くことができる。
【００５２】
【数５】
2008508747.tif 000007
【００５３】
図１９の回路図において、以下のネット名が使用される。
【００５４】
【数６】
2008508747.tif 000008
【００５５】
符号化されたビットｅ
「ｅ」欄は、Ｄ００，Ｄ０１，Ｄ０２，Ｄ７５，Ｄ７６，およびＤ７７についての太字入力を有する。図１４に示す表は、コード化されていない各ビットＦＥＤＣＢＡを列挙しており、Ｅビットには上線が引かれており、共通パターンは、太字入力で印付けされている。
【００５６】
これらの識別子を使用して、ビット「ｅ」についての符号化式は、以下のように書くことができる。
【００５７】
【数７】
2008508747.tif 000009
【００５８】
図１９の回路図において、以下のネット名が使用される。
【００５９】
【数８】
2008508747.tif 000010
【００６０】
符号化されたビットｆ
「ｆ」欄は、Ｄ０１，Ｄ０２，Ｄ０４，Ｄ１０，Ｄ６７，Ｄ７３，Ｄ７５，およびＤ７６についての太字入力を有する。コード化されていない各ビットＦＥＤＣＢＡは、図１５に示す表に列挙されており。符号化のために補完されなければならないＦビットには上線が引かれており、共通パターンは、太字入力で印付けされている。
【００６１】
ビット「ｆ」についての符号化式は、以下のように書くことができる。
【００６２】
【数９】
2008508747.tif 000011
【００６３】
図１９に示す回路図において、以下のネット名が使用される。
【００６４】
【数１０】
2008508747.tif 000012
【００６５】
符号化されたビットｇ
ビット「ｇ」についての値は、図４および図６の３４個のベクトルについての１である。これらのベクトルは、図７に示す表および図８に示す表の右欄に列挙されている。なお、図７の表のコード化された全ベクトルについてのソース・ベクトルは、符号化された各ベクトルの終端６ビットと同一であり、明示的に列挙されていない。
【００６６】
ビット「ｇ」についての値が１である３４個のソース・ベクトルが、図１６の表において再び列挙された共有ビット・パターンに従ってソートされる。４つ以上の０を伴う２２個のソース・ベクトルすべてが、このセットの一部である。論理符号化式の導出のために、これら２２個のベクトルは、３つの重複するセットにグループ化される。重複ベクトルは、アスタリスクによって印付けされている。表の左上側にある７つのソース・ベクトルのセットは、３つの後端の０と、先頭の３ビット分の位置に０の値を有する少なくとも１ビットとによって特徴付けられ、これは、論理式Ａ’・Ｂ’・Ｃ’・（Ｄ’＋Ｅ’＋Ｆ’）によって表わされる。表の右上側にある６つのソース・ベクトル（重複ベクトル＊Ｄ００を数えない）のセットは、３つの先頭の０と、後端の３ビット分の位置に０の値を有する少なくとも１ビットとによって特徴付けられ、これは、論理式（Ａ’＋Ｂ’＋Ｃ’）・Ｄ’・Ｅ’・Ｆ’によって表わされる。左下側にある９つのベクトル（重複ベクトルを数えない）のセットは、先頭の３つの位置に少なくとも２つの０と、後端の３つの位置に少なくとも２つの０とによって特徴付けられ、これは論理式（Ａ’・Ｂ’＋Ａ’・Ｃ’＋Ｂ’・Ｃ’）・（Ｄ’・Ｅ’＋Ｄ’・Ｆ’＋Ｅ’・Ｆ’）によって表わされる。
【００６７】
後端のランが４つの１である図１６の右側の４つのベクトルは、論理式Ａ・Ｂ・Ｃ・Ｄによって識別される。先頭の４つの１を有する図１６における２つのベクトルは、論理式Ｃ・Ｄ・Ｅ・Ｆ・Ａ／Ｂによって識別され、先頭２つの１と後端２つの１とを有する２つのベクトルは、論理式Ａ・Ｂ・Ｅ・Ｆ・Ｃ／Ｄによって識別される。
【００６８】
最後に、１というＫ値によって識別された４つの制御ベクトルはすべて、１というｇ値を有する。
【００６９】
したがって、ｇビットの符号化のための論理式は、以下のように表すことができる。
【００７０】
ｇ＝Ａ’・Ｂ’・Ｃ’・（Ｄ’＋Ｅ’＋Ｆ’）＋（Ａ’＋Ｂ’＋Ｃ’）・Ｄ’・Ｅ’・Ｆ’＋Ａ・Ｂ・Ｃ・Ｄ＋Ｃ・Ｄ・Ｅ・Ｆ・Ａ／Ｂ＋Ａ・Ｂ・Ｅ・Ｆ・Ｃ／Ｄ＋（Ａ’・Ｂ’＋Ａ’・Ｃ’＋Ｂ’・Ｃ’）・（Ｄ’・Ｅ’＋Ｄ’・Ｆ’＋Ｅ’・Ｆ’）＋Ｋ
【００７１】
図１９に示す回路図において、以下のネット名が使用される。
【００７２】
【数１１】
2008508747.tif 000013
【００７３】
符号化されたビットｈ
ビット「ｈ」についての値は、図４および図５の３４個の全ベクトルについて０である。これらのベクトルは、図７に示す表および図８に示す表の中央欄に列挙されている。なお、図７の表の符号化された全ベクトルについてのソース・ベクトルは、符号化された各ベクトルの終端６ビットと同一であり、明示的に列挙されていない。
【００７４】
ビット「ｈ」についての値が０である３４個のソース・ベクトルがソートされ、図１７の表に列挙されている。４つ以上の１を伴う２２個のソース・ベクトルすべてが、このセットの一部である。論理符号化式の導出のために、これら２２個のベクトルは、３つの重複するセットにグループ化される。重複ベクトルは、アスタリスクによって印付けされている。表の左上側にある７つのソース・ベクトルのセットは、３つの後端の１と、先頭の３ビット分の位置に１の値を有する少なくとも１ビットとによって特徴付けられ、これは、論理式Ａ・Ｂ・Ｃ・（Ｄ＋Ｅ＋Ｆ）によって表わされる。表の右上側にある６つのソース・ベクトル（重複ベクトル＊Ｄ７７を数えない）のセットは、３つの先頭の１と、後端の３ビット分の位置に１の値を有する少なくとも１ビットとによって特徴付けられ、これは、論理式（Ａ＋Ｂ＋Ｃ）・Ｄ・Ｅ・Ｆによって表わされる。左下側にある９つのベクトル（重複ベクトルを数えない）のセットは、先頭の３つの位置に少なくとも２つの１と、後端の３つの位置に少なくとも２つの１とによって特徴付けられ、これは論理式（Ａ・Ｂ＋Ａ・Ｃ＋Ｂ・Ｃ・（Ｄ・Ｅ＋Ｄ・Ｆ＋Ｅ・Ｆ）によって表わされる。
【００７５】
後端のランが４つの０である右側の４つのベクトルは、論理式Ａ’・Ｂ’・Ｃ’・Ｄ’
によって識別される。先頭の４つの０を有する２つのベクトルは、論理式Ｃ’・Ｄ’・Ｅ’・Ｆ’・Ａ／Ｂによって識別される。先頭２つと後端２つの０を有する２つのベクトルは、論理式Ａ’・Ｂ’・Ｅ’・Ｆ’・Ｃ／Ｄによって識別される。
【００７６】
最後に、１というＫ値によって識別された４つの制御ベクトルはすべて、０というｈ値を有する。したがって、ｈビットの符号化のための論理式は、以下のように表すことができる。
ｈ＝｛Ａ・Ｂ・Ｃ・（Ｄ＋Ｅ＋Ｆ）＋（Ａ＋Ｂ＋Ｃ）・Ｄ・Ｅ・Ｆ＋（Ａ・Ｂ＋Ａ・Ｃ＋Ｂ・Ｃ）・（Ｄ・Ｅ＋Ｄ・Ｆ＋Ｅ・Ｆ）＋Ａ’・Ｂ’・Ｃ’・Ｄ’＋Ｃ’・Ｄ’・Ｅ’・Ｆ’・Ａ／Ｂ＋Ａ’・Ｂ’・Ｅ’・Ｆ’・Ｃ／Ｄ＋Ｋ｝’
【００７７】
図１９に示す回路図において、以下のネット名が使用される。
【００７８】
【数１２】
2008508747.tif 000014
【００７９】
Ｅ．６Ｂ／８Ｂエンコーダの回路実装
図１８は、入力および出力を示すエンコーダ回路１１００の記号である。図１８および図１９の例において、入力データ・ビット（例えば、ＰＡからＰＦ）と、入力データ・ビットの反転バージョン（例えば、ＮＡからＮＦ）との両方が、エンコーダ回路１１００に入力されるが、エンコーダ回路は、反転を行うこともできる。
【００８０】
図１９は、エンコーダ回路１１００の論理図である。エンコーダ回路１１００は、入力データ・ビット（例えば、ＰＡからＰＦ）および入力データ・ビットの反転バージョン（例えば、ＮＡからＮＦ）と共に制御信号ＰＫを取り、コード化されたベクトルＰＣａ，ＮＣｂ，ＮＣｃ，ＮＣｄ，ＰＣｅ，ＰＣｆ，ＰＣｇ，ＮＣｈを出力する。コード化されたビットＮＣｂ，ＮＣｃ，ＮＣｄおよびＮＣｈは、典型的には、エンコーダ自体における使用か、または好ましくは、ラッチなどの何らかの後続回路における使用のために反転されて、低遅延ペナルティを実現する。図１９に示す論理は、図１０から図１７の表または関連論理式を使用して、当業者によって決定することができる。
【００８１】
エンコーダの代替実装
図８の表の左右の側は対照となっているので、ビットａからｆについての全符号化式は、排他的論理和機能を広範囲に使用することによって利用することができる補完的な特徴を有する。当該ビットａからｆについての変換された符号化式をここに表す。
【００８２】
【数１３】
2008508747.tif 000015
【００８３】
これらの代替式に基づく実装は、シリコン領域において有利な場合がある。特定の技術および応用についての選択をサポートするために、回路遅延および電力損失に関する全回路容量を考慮すべきである。
【００８４】
Ｆ．復号化された６Ｂベクトルの生成
ｈｇ≠０１の符号化された全ベクトル「ｈｇｆｅｄｃｂａ」については、復号化されたビットＦＥＤＣＢＡは、符号化されたビット「ｆｅｄｃｂａ」と等しく、Ｋビットの値は０である。ｈｇ＝０１の場合は、復号化式は、以下に示すような図８および図９に示すテーブルから導出することができる。
【００８５】
復号化されたビットＡ
図８に示す表の「ａ」欄は、Ｄ１３１，Ｄ１４５，Ｄ１５１，Ｄ１２３，Ｄ１４３，Ｄ１４６，Ｄ１３２，Ｄ１２６，Ｄ１５４，およびＤ１３４についての太字入力を有する。コード化された各ビット「ｈｆｅｄｃｂａ」は、図２０に示す表に列挙されており、ａビットには、重複を示すために上線が引かれており、共通パターンは、太字入力で印付けされて、ベクトルを単純な式で論理的に分類している。
【００８６】
ベクトルＤ１３３およびＤ１４６について、上線が引かれたビット「ａ」は、式がＤビットおよびＥビット復号化と共用できるように、復号化式に重複して追加されている。ベクトルＤ１４５，Ｄ１５１，Ｄ１３２およびＤ１２６について、上線が引かれた「ａ」は、式がＦビット復号化と共用できるように、重複して追加されている。ベクトルＤ１２３，Ｄ１４３，Ｄ１５４およびＤ１３４について、上線が引かれたビット「ａ」は、式がＢビット復号化と共用できるように、重複して追加されている。これらの識別子を使用して、ビット「Ａ」についての復号化式は、以下のように書くことができる。
【００８７】
【数１４】
2008508747.tif 000016
【００８８】
図２８に示す回路図において、以下のネット名が使用される。
【００８９】
【数１５】
2008508747.tif 000017
【００９０】
復号化されたビットＢ
図８に示す表の「ｂ」欄は、Ｄ１２３，Ｄ１４３，Ｄ１５４，およびＤ１３４についての太字入力を有する。コード化された各ビット「ｈｆｅｄｃｂａ」は、図２１に示す表に列挙されており、ｂビットには、上線が引かれており、共通パターンは、太字入力で印付けされている。上線が引かれたビット「ｂ」は、式がＡビット復号化と共用できるように、復号化式に重複して追加されている。
【００９１】
これらの識別子を使用して、ビット「Ｂ」についての復号化式は、以下のように書くことができる。
【００９２】
【数１６】
2008508747.tif 000018
【００９３】
図２８に示す回路図において、以下のネット名が使用される。
【００９４】
【数１７】
2008508747.tif 000019
【００９５】
復号化されたビットＣ
図８の表の「ｃ」欄は、Ｄ１６４およびＤ１１３についての太字入力を有する。コード化された各ビット「ｈｆｅｄｃｂａ」は、図２２に示す表に列挙されている。
【００９６】
これらの識別子を使用して、ビット「Ｃ」についての復号化式は、以下のように書くことができる。
Ｃ＝ｃ・（ａ’・ｂ’・ｄ’・ｅ・ｆ・ｇ・ｈ’）’＋ａ・ｂ・ｄ・ｅ’・ｆ’・ｇ・ｈ’
【００９７】
図２８に示す回路図において、以下のネット名が使用される。
ｎ２１＝ｃ・（ａ’・ｂ’・ｄ’・ｅ・ｆ・ｇ・ｈ’）’
【００９８】
復号化されたビットＤ
図８の「ｄ」欄は、Ｄ１３１およびＤ１４６についての太字入力を有する。コード化された各ビット「ｈｆｅｄｃｂａ」は、図２３に示す表に列挙されている。上線が引かれたビット「ｄ」は、式がＡビットおよびＥビット復号化と共用できるように、復号化式に重複して追加されている。
【００９９】
これらの識別子を使用して、ビット「Ｄ」についての復号化式は、以下のように書くことができる。
【０１００】
【数１８】
2008508747.tif 000020
【０１０１】
図２８に示す回路図において、以下のネット名が使用される。
【０１０２】
【数１９】
2008508747.tif 000021
【０１０３】
復号化されたビットＥ
図８に示す表の「ｅ」欄は、Ｄ１３１，Ｄ１６１，Ｄ１６２，Ｄ１４６，Ｄ１１６およびＤ１１５についての太字入力を有する。図２４に示す表は、コード化された各ビット「ｈｆｅｄｃｂａ」を列挙しており、ｅビットには、上線が引かれており、共通パターンは、太字入力で印付けされている。
【０１０４】
ベクトルＤ１３１およびＤ１４６について、後続の式における上線が引かれたビット「ｅ」は、式がＡビットおよびＤビット復号化と共用できるように、復号化式に重複して追加されている。ベクトルＤ１６１，Ｄ１６２，Ｄ１１６およびＤ１１５について、上線が引かれた「ｅ」は、式がＦビット復号化と共用できるように、重複して追加されている。これらの識別子を使用して、ビット「Ｅ」についての復号化式は、以下のように書くことができる。
【０１０５】
【数２０】
2008508747.tif 000022
【０１０６】
図２８に示す回路図において、以下のネット名が使用される。
【０１０７】
【数２１】
2008508747.tif 000023
【０１０８】
復号化されたビットＦ
図８における表の「ｆ」欄は、Ｄ１６１，Ｄ１６２，Ｄ１４５，Ｄ１５１，Ｄ１１６，Ｄ１１５，Ｄ１３２およびＤ１２６についての太字入力を有する。コード化された各ビット「ｈｆｅｄｃｂａ」は、図２５の表に列挙されている。符号化のために補完されなければならないｆビットには、上線が引かれている。
【０１０９】
ベクトルＤ１６１，Ｄ１６２，Ｄ１１６およびＤ１１５について、後続の式における上線が引かれたビット「ｆ」は、式がＥビット復号化と共用できるように、復号化式に重複して追加されている。ベクトルＤ１４５，Ｄ１５１，Ｄ１３２およびＤ１２６について、上線が引かれたビット「ｆ」は、式がＡビット復号化と共用できるように、重複して追加されている。ビット「Ｆ」についての復号化式は、以下のように書くことができる。
【０１１０】
【数２２】
2008508747.tif 000024
【０１１１】
図２８に示す回路図において、以下のネット名が使用される。
【０１１２】
【数２３】
2008508747.tif 000025
【０１１３】
復号化されたビットＫ
図８および図９の表の「Ｋ」欄は、４つのコード化されたベクトルＫ１０７，Ｋ１２５，Ｋ１７０およびＫ１５２について１という値を有する。コード化された各ビット「ｈｆｅｄｃｂａ」は、図２６の表に列挙されている。
【０１１４】
ビット「Ｋ」についての復号化式は、以下のように書くことができる。
Ｋ＝ａ・ｃ・ｄ’・ｆ’・ｇ・ｈ’・ｂ／ｅ＋ａ’・ｃ’・ｄ・ｆ・ｇ・ｈ’・ｂ／ｅ
【０１１５】
図２８に示す回路図において、以下のネット名が使用される。
ｎ６０＝ｃ’・ｄ・ｇ・ｈ’・ｂ／ｅ
【０１１６】
Ｇ．妥当性チェック
任意の受信されたベクトルであって、図２のトレリスに適合しないか、図９の表に列挙されていないものは、無効である。総計２５６の８ビットのベクトルのうち６８個のベクトルのみが有効なので、総計１８８個の無効なベクトルがある。ベクトルが有効なベクトルのセットに属することを検証するための回路は、無効なベクトルをフラグ付けする回路よりも複雑ではない。妥当性チェックは、４，６，および４という数字がラベル付けされた中央ノードを通る重複補完回路の３つのセットを使用して、図２の表のトレリスから直接導出することができる。
ＶＡＬＩＤ＝（ａ／ｂ・ｃ／ｄ＋ｂ／ｃ・ａ／ｄ）・（ｅ／ｆ・ｇ／ｈ＋ｆ／ｇ・ｅ／ｈ）＋（ｃ・ｄ・ａ／ｂ＋ａ・ｂ・ｃ／ｄ）・（ｇ’・ｈ’・ｅ／ｆ＋ｅ’・ｆ’・ｇ／ｈ）＋（ｃ’・ｄ’・ａ／ｂ＋ａ’・ｂ’・ｃ／ｄ）・（ｇ・ｈ・ｅ／ｆ＋ｅ・ｆ・ｇ／ｈ）
【０１１７】
図２８に示す回路図において、以下のネット名が使用される。
【０１１８】
【数２４】
2008508747.tif 000026
【０１１９】
Ｈ．８Ｂ／６Ｂデコーダの回路実装
図２７は、入力および出力を示すデコーダ回路１３００の記号である。図２８は、デコーダ回路１３００の論理図である。デコーダ回路１３００は、コード化されたベクトル（例えば、ＰＣａからＰＣｈ）および符号化されたベクトルの逆ベクトル（例えば、ＮＣａからＮＣｈ）を受領し、復号化された出力ベクトルＰＡ，ＮＢ，ＮＣ，ＮＤ，ＰＥ，およびＰＦを生じさせる。加えて、制御信号ＰＫも生じさせる。典型的には、ＮＢ，ＮＣ，およびＮＤは、例えばラッチなどの何らかの後続の回路において反転されることになる。また、デコーダ回路１３００は、低レベルの際に受信されたコード化されたベクトルが有効であることを示すＮＶＡＬ信号を生じさせる。高レベルの場合は、無効ベクトルを示す。
【０１２０】
図２８に示す論理回路は、図２０から図２６の表または関連論理式を使用して、当業者によって決定することができる。
【０１２１】
デコーダの代替実施
符号化に関して、ビットＡからＦ、ビットＫ、および妥当性チェックに関する全復号化式は、排他的論理和機能を広範囲に使用することによって利用することができる補完的な特徴を有する。当該ビットＡからＦ、ビットＫ、およびＶＡＬＩＤについての変換された符号化式をここに表す。
【０１２２】
【数２５】
2008508747.tif 000027
【０１２３】
ＶＡＬＩＤについての元の式の第２および第３行目は結合されている。同様の説明が、代替符号化回路についての代替復号化回路についても当てはまる。
【０１２４】
Ｉ．実施概要
６Ｂ／８Ｂ−Ｐコードのための符号化回路は、６９個の標準原始論理セル（例えば、２×ＩＮＶ，８×ＮＡＮＤ３，２０×ＮＡＮＤ２，２６×ＮＯＲ３，１０×ＮＯＲ２，３×ＸＮＯＲ２）で構築できる。補完入力を仮定すると、どの論理路にもせいぜい５つしかセルがない。同様に、妥当性チェックを含む復号化回路は、どの論理路も、せいぜい７８個のセル（２×ＩＮＶ，３×ＮＡＮＤ３，１９×ＮＡＮＤ２，１０×ＮＯＲ４，７×ＮＯＲ３，２８×ＮＯＲ２，９×ＸＮＯＲ２）および５つのセルしか必要としない。排他的論理和機能を広範囲に使用する代替実施を、より小さなシリコン領域で実施してもよい。
【０１２５】
本明細書において図示および説明した実施形態および変形は、本発明の原則を例示するに過ぎず、様々な修正が、本発明の範囲および精神から逸脱することなく、当業者によって実施されてもよいことが理解されるべきである。例えば、バランスの取れたコード化されたベクトルを作成するために使用されるビットは、コード化されたベクトル内のいずれに配置してもよいし、コード化されていないかまたはコード化されたベクトルを規定するビットは、反転させてもよい。
【図面の簡単な説明】
【０１２６】
【図１】制御ベクトルを作成するために使用した制御入力の値を無視する、本発明の６４個のソース・ベクトルのトレリス線図である。
【図２】４つの制御ベクトルを含む、６８個のコード化されたベクトルのトレリス線図である。
【図３】図２の符号化されたベクトルを分割してなるコード化されたベクトル・セットの図である。
【図４】図２の符号化されたベクトルを分割してなるコード化されたベクトル・セットの図である。
【図５】図２の符号化されたベクトルを分割してなるコード化されたベクトル・セットの図である。
【図６】図２の符号化されたベクトルを分割してなるコード化されたベクトル・セットの図である。
【図７】符号化中に６つのソース・ビットに変更のない、４８個のコード化されたベクトルに対する符号化割り当ての例を示す表である。
【図８】符号化中に、１、２、または３つのソース・ビットに変更のある、２０個のコード化されたベクトルに対する符号化割り当ての例を示す表である。
【図９】本発明の６Ｂ／８Ｂ送信コードに対する符号化割り当ての例を示す表である。
【図１０】コード化されていないベクトルの６ビットを符号化して、ビットａを有するコード化されたベクトルにするのに使用される表である。
【図１１】コード化されていないベクトルの６ビットを符号化して、ビットｂを有するコード化されたベクトルにするのに使用される表である。
【図１２】コード化されていないベクトルの６ビットを符号化して、ビットｃを有するコード化されたベクトルにするのに使用される表である。
【図１３】コード化されていないベクトルの６ビットを符号化して、ビットｄを有するコード化されたベクトルにするのに使用される表である。
【図１４】コード化されていないベクトルの６ビットを符号化して、ビットｅを有するコード化されたベクトルにするのに使用される表である。
【図１５】コード化されていないベクトルの６ビットを符号化して、ビットｆを有するコード化されたベクトルにするのに使用される表である。
【図１６】コード化されていないベクトルの６ビットを符号化して、ビットｇを有するコード化されたベクトルにするのに使用される表である。
【図１７】コード化されていないベクトルの６ビットを符号化して、ビットｈを有するコード化されたベクトルにするのに使用される表である。
【図１８】６Ｂ／８Ｂエンコーダのブロック図である。
【図１９】図１８の６Ｂ／８Ｂエンコーダの回路図の一例である。
【図２０】８ビットのコード化されたベクトルを符号化して、ビットＡを有するコード化されていないベクトルにするのに使用される表を示す。
【図２１】８ビットのコード化されたベクトルを符号化して、ビットＢを有するコード化されていないベクトルにするのに使用される表を示す。
【図２２】８ビットのコード化されたベクトルを符号化して、ビットＣを有するコード化されていないベクトルにするのに使用される表を示す。
【図２３】８ビットのコード化されたベクトルを符号化して、ビットＤを有するコード化されていないベクトルにするのに使用される表を示す。
【図２４】８ビットのコード化されたベクトルを符号化して、ビットＥを有するコード化されていないベクトルにするのに使用される表を示す。
【図２５】８ビットのコード化されたベクトルを符号化して、ビットＦを有するコード化されていないベクトルにするのに使用される表を示す。
【図２６】８ビットのコード化されたベクトルを符号化して、ビットＫを有するコード化されていないベクトルにするのに使用される表を示す。
【図２７】６Ｂ／８Ｂデコーダのブロック図である。
【図２８】図２７の６Ｂ／８Ｂデコーダの回路図の一例である。
【図１】
2008508747.tif 000028
【図２】
2008508747.tif 000029
【図３】
2008508747.tif 000030
【図４】
2008508747.tif 000031
【図５】
2008508747.tif 000032
【図６】
2008508747.tif 000033
【図７】
2008508747.tif 000034
【図８】
2008508747.tif 000035
【図９】
2008508747.tif 000036
【図１０】
2008508747.tif 000037
【図１１】
2008508747.tif 000038
【図１２】
2008508747.tif 000039
【図１３】
2008508747.tif 000040
【図１４】
2008508747.tif 000041
【図１５】
2008508747.tif 000042
【図１６】
2008508747.tif 000043
【図１７】
2008508747.tif 000044
【図１８】
2008508747.tif 000045
【図１９】
2008508747.tif 000046
【図２０】
2008508747.tif 000047
【図２１】
2008508747.tif 000048
【図２２】
2008508747.tif 000049
【図２３】
2008508747.tif 000050
【図２４】
2008508747.tif 000051
【図２５】
2008508747.tif 000052
【図２６】
2008508747.tif 000053
【図２７】
2008508747.tif 000054
【図２８】
2008508747.tif 000055
【手続補正書】
【提出日】平成19年6月5日(2007.6.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１つ以上の６ビットのソース・ベクトルを含む入力データ・ストリームから、直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを作成する方法であって、
８つの２進数字でコード化されたセットに従って、前記１つ以上の６ビットのソース・ベクトルのうちの所定の６ビットのソース・ベクトルについての８つの２進数字を有する所定のコード化されたベクトルを作成するステップであって、前記８つの２進数字でコード化されたベクトル・セットにおける各コード化されたベクトルは、バランスが取れている、ステップと、
前記所定のコード化されたベクトルを出力するステップと
を含む、方法。
【請求項２】
前記作成ステップは、ローカル・パリティを有する６Ｂ／８Ｂ送信コードにさらに従う、請求項１に記載の方法。
【請求項３】
前記６ビットのソース・ベクトルは、前記８つの２進数字でコード化されたベクトル・セットのために、６ビットのソース・ベクトルの複数のセットに分割される、請求項２に記載の方法。
【請求項４】
前記複数のセットの１つは、バランスの取れた６ビットのソース・ベクトルをすべて備える、請求項３に記載の方法。
【請求項５】
前記作成ステップは、
１つの次に０、または０の次に１の何れかであるビット・シーケンスを選択するステップと、
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、前記選択されたビット・シーケンスを、６ビットのソース・ベクトルに追加するステップと
をさらに含む、請求項４に記載の方法。
【請求項６】
６ビットのソース・ベクトルの前記複数のセットの第２のセットは、負のディスパリティを有する１０個のベクトルの第３のセットと、正のディスパリティを有する１０個のベクトルの第４のセットとを備え、前記第４のセットの前記ベクトルのそれぞれは、前記第３のセット内の対応ベクトルの正確な補完物である、請求項５に記載の方法。
【請求項７】
前記複数のセットのうちの１つは、後端のランが４つの１である６ビットのソース・ベクトルを除く、ディスパリティが＋２の６ビットのソース・ベクトルのすべてを備える、請求項３に記載の方法。
【請求項８】
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、０と０という値を有する２ビットのシーケンスを６ビットのソース・ベクトルに追加するステップをさらに含む、請求項７に記載の方法。
【請求項９】
前記複数のセットのうちの１つは、後端のランが４つの０であるソース・ベクトルを除く、ディスパリティが−２の６ビットのソース・ベクトルのすべてを備える、請求項３に記載の方法。
【請求項１０】
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、１と１という値を有する２ビットのシーケンスを６ビットのソース・ベクトルに追加するステップをさらに含む、請求項９に記載の方法。
【請求項１１】
前記複数のセットのうちの第１のセットは、バランスの取れた６ビットのソース・ベクトルのすべてを備え、
前記作成ステップは、
１の次に０、または０の次に１の何れかの２ビットのシーケンスを選択するステップと、
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、前記選択された２ビットのシーケンスを、前記第１のセットからの６ビットのソース・ベクトルに追加するステップとをさらに含み、
６ビットのソース・ベクトルの前記複数のセットのうちの第２のセットは、ディスパリティが４または６の１４個の６ビットのソース・ベクトルと、ディスパリティが２で後端のランが４の２つの６ビットのソース・ベクトルと、４つの制御ベクトルとを備える、請求項３に記載の方法。
【請求項１２】
前記所定のコード化されたベクトルを作成するために、前記８つの２進数字でコード化されたベクトル・セットに従って、前記選択された２ビットのシーケンスの前記値の補完物を備える他の２ビットのシーケンスを、前記第２のセットからの６ビットのソース・ベクトルに追加するステップをさらに含む、請求項１１に記載の方法。
【請求項１３】
前記作成ステップは、先頭または後端のランが３ではないバランスの取れた１６個の固有の６ビットのベクトルが生成されるように、前記第２のセットからの１６個の６ビットのソース・ベクトルの１から３ビットを補完するステップをさらに含む、請求項１２に記載の方法。
【請求項１４】
前記１６個の６ビットのソース・ベクトルは、６ビットのソース・ベクトルの８つの対を備え、各対は、正のディスパリティを有する６ビットのソース・ベクトルと、負のディスパリティを有する対応する補完された６ビットのソース・ベクトルとを備え、１から３ビットを補完する前記ステップは、６ビットのソース・ベクトルの任意の対における同一のビット位置を補完することを伴う、請求項１３に記載の方法。
【請求項１５】
前記第１のセットを使用して作成された前記８ビットのコード化されたベクトルは、コード化されたデータベクトルを備え、前記第２のセットを使用して作成された前記８ビットのコード化されたベクトルは、コード化されたデータおよび制御ベクトルを備え、補完物である２ビットを追加する前記ステップは、制御入力が４つの所定のバランスの取れた６ビットのソース・ベクトルと共に能動化されると、４つのコード化された制御ベクトルのうちの１つが生成されるように実行される、請求項１３に記載の方法。
【請求項１６】
前記コード化された制御ベクトルの少なくとも１つは、後端のランが３である、請求項１５に記載の方法。
【請求項１７】
後端のランが３である前記コード化された制御ベクトルには、制御文字の３という後端のランの値と一致する値を有する、先頭のランが３のコード化されたデータ・ベクトルが続いて、２コード化されたベクトル同期コンマ・シーケンスを生成する、請求項１６に記載の方法。
【請求項１８】
１つ以上の６ビットのソース・ベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを作成するためのエンコーダであって、前記エンコーダは、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の６ビットのソース・ベクトルのうちの所定の６ビットのソース・ベクトルについての８つの２進数字を有する所定のコード化されたベクトルを作成し、前記８つの２進数字でコード化されたセットにおける各コード化されたベクトルは、バランスが取れており、
前記所定のコード化されたベクトルを出力する
ように適合されている、エンコーダ。
【請求項１９】
前記エンコーダは、ローカル・パリティを有する６Ｂ／８Ｂ送信コードに従って、前記コード化されたベクトルを作成するようにさらに適合されている、請求項１８に記載のエンコーダ。
【請求項２０】
１つ以上の６ビットのソース・ベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを作成するための少なくとも１つのエンコーダを備える半導体であって、前記少なくとも１つのエンコーダは、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の６ビットのソース・ベクトルのうちの所定の６ビットのソース・ベクトルについての８つの２進数字を有する所定のコード化されたベクトルを作成し、前記８つの２進数字でコード化されたセットにおける各コード化されたベクトルは、バランスが取れており、
前記所定のコード化されたベクトルを出力する
ように適合されている、半導体。
【請求項２１】
前記エンコーダは、ローカル・パリティを有する６Ｂ／８Ｂ送信コードに従って、前記コード化されたベクトルを作成するようにさらに適合されている、請求項２０に記載のエンコーダ。
【請求項２２】
１つ以上の８ビットのコード化されたベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを復号化する方法であって、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の８ビットのコード化されたベクトルのうちの所定の８ビットについての６つの２進数字を有する所定のコード化されていないベクトルを作成するステップであって、前記８つの２進数字でコード化されたベクトル・セットにおける各コード化されたベクトルは、バランスが取れている、ステップと、
前記所定のコード化されていないベクトルを出力するステップと
を含む、方法。
【請求項２３】
前記作成は、ローカル・パリティを有する６Ｂ／８Ｂ送信コードにさらに従う、請求項２２に記載の方法。
【請求項２４】
各８ビットのコード化されたベクトルは、２つの符号化２進数字と、６つのコード化されていない２進数字とを有し、前記６つのコード化されていない２進数字は、複数の６ビットのソース・ベクトルのうちの６ビットのソース・ベクトルに対応し、前記複数の６ビットのソース・ベクトルは、前記８つの２進数字でコード化されたベクトル・セットについて、６ビットのソース・ベクトルの複数のセットに分割され、各８ビットのコード化されたベクトルは、前記６ビットのソース・ベクトルのうちの１つに対応する、請求項２３に記載の方法。
【請求項２５】
前記複数のセットの第１は、バランスの取れた６ビットのソース・ベクトルのすべてを備え、
前記複数のセットの第２は、後端のランが４つの０である６ビットのソース・ベクトルを除く、ディスパリティが＋２の６ビットのソース・ベクトルのすべてを備え、
前記複数のセットの第３は、後端のランが４つの０である６ビットのソース・ベクトルを除く、ディスパリティが−２の６ビットのソース・ベクトルのすべてを備え、
前記複数のセットの第４は、ディスパリティが４または６の１４個の６ビットのソース・ベクトルと、ディスパリティが２で、後端のランが４の２つの６ビットのソース・ベクトルと、４つの制御ベクトルとを備える、請求項２４に記載の方法。
【請求項２６】
前記作成ステップは、前記第１、第２、および第３のセットに対応するすべての８ビットのコード化されたベクトルについて、前記６個のコード化されていない２進数字を変更しないステップをさらに含む、請求項２５に記載の方法。
【請求項２７】
前記第１のセットは、１０および０１という符号化２進数字を有し、前記第２のセットは、２つの０という符号化２進数字を有し、前記第３のセットは、１１という符号化２進数字を有し、前記第４のセットは、前記第１のセットに対応する前記符号化２進数字の逆数である符号化２進数字を有する、請求項２５に記載の方法。
【請求項２８】
前記所定の８ビットのコード化されたベクトルは、第４のセットに対応し、前記作成ステップは、
前記所定のコード化されたベクトルの前記６つのコード化されていない２進数字が１６個の固有の６ビットのコード化されていないベクトルのうちの１つを備える場合、前記８ビットの２進数字でコード化されたベクトル・セットに従って、前記６つのコード化されていない２進数字のうちの１から３ビットを補完するステップと、
前記所定のコード化されたベクトルの前記６つのコード化されていない２進数字が４つの固有の制御ベクトルのうちの１つを備える場合に、制御信号をアサートするステップと、
前記第４に対応する他のコード化されたベクトルについては、前記コード化されたベクトルについての前記２つの符号化２進数字を落とすステップとをさらに含む、請求項２７に記載の方法。
【請求項２９】
前記所定の８ビットのコード化されたベクトルの先端においてランがせいぜい３でバランスが取れているか、または、前記所定の８ビットのコード化されたベクトルの後端においてランがせいぜい３でバランスが取れている場合に、前記所定の８ビットのコード化されたベクトルは有効であると宣言するステップをさらに含む、請求項２３に記載の方法。
【請求項３０】
制御ベクトルが前記作成ステップにおいて作成される場合、制御信号を能動化するステップをさらに含む、請求項２５に記載の方法。
【請求項３１】
前記所定の８ビットのコード化されたベクトルの２つの２進数字を使用して、前記所定の８ビットのコード化されたベクトルのうちのある２進数字に変更が必要かどうかを判断するステップをさらに含み、
前記８つの２進数字でコード化されたセットは、前記２つの２進数字の４つの予想される組み合わせのうちの１つのみが、８ビットのコード化されたベクトルの２進数字に変更の必要がある旨を示すように設計される、請求項２３に記載の方法。
【請求項３２】
１つ以上の８ビットのコード化されたベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを復号化するためのデコーダであって、前記デコーダは、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の８ビットのソース・ベクトルのうちの所定の８ビットのソース・ベクトルについての６つの２進数字を有する所定のコード化されていないベクトルを作成し、前記８つの２進数字でコード化されたベクトル・セットにおける各コード化されたベクトルは、バランスが取れており、
前記所定のコード化されていないベクトルを出力する
ように適合されている、デコーダ。
【請求項３３】
前記デコーダは、ローカル・パリティを有する６Ｂ／８Ｂ送信コードに従って、前記コード化されていないベクトルを作成するようにさらに適合されている、請求項３２に記載のデコーダ。
【請求項３４】
１つ以上の８ビットのコード化されたベクトルを含む入力データ・ストリームからの直流（ＤＣ）バランス６Ｂ／８Ｂ送信コードを復号化するための少なくとも１つのデコーダを備える半導体であって、前記少なくとも１つのデコーダは、
８つの２進数字でコード化されたベクトル・セットに従って、前記１つ以上の８ビットのコード化されたベクトルのうちの所定の８ビットのソース・ベクトルについての６つの２進数字を有する所定のコード化されていないベクトルを作成し、前記８つの２進数字でコード化されたベクトル・セットにおける各コード化されたベクトルは、バランスが取れており、
前記所定のコード化されていないベクトルを出力する
ように適合されている、半導体。
【請求項３５】
前記デコーダは、ローカル・パリティを有する６Ｂ／８Ｂ送信コードに従って、前記コード化されていないベクトルを作成するようにさらに適合されている、請求項３４に記載のデコーダ。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１２６
【補正方法】変更
【補正の内容】
【０１２６】
本明細書において図示および説明した実施形態および変形は、本発明の原則を例示するに過ぎず、様々な修正が、当業者によって実施されてもよいことが理解されるべきである。例えば、バランスの取れたコード化されたベクトルを作成するために使用されるビットは、コード化されたベクトル内のいずれに配置してもよいし、コード化されていないかまたはコード化されたベクトルを規定するビットは、反転させてもよい。
【国際調査報告】
2008508747.tif 000056
2008508747.tif 000057
2008508747.tif 000058