(57)【特許請求の範囲】
【請求項１】
直流平衡の理論的最小帯域において復号可能であるＭＢ符号の符号化装置であって、
Ｍビット（Ｍは自然数）の固定長入力データブロックを、長さがそれぞれｍｋビット（ｍｋは自然数、ｋ＝１，２，３，…，Ｎ、Ｎは正の偶数）のＮ個の入力サブブロックにそれぞれ分離する分離手段と、
ディジタル和変位（ＤＳＶ：Digital Sum Variation）が有限値に制限されるｍｋＢ／ｎＢ符号変換則（ｎは自然数、ｍｋ＜ｎ，ｋ＝１，２，３，…，Ｎ）を前記Ｎ個の入力サブブロックに対してそれぞれ適用することにより、ｎビットの出力サブブロックをそれぞれ生成する符号化手段と、
前記符号化手段の出力であるＮ個の前記出力サブブロックをビット多重する多重化手段とを有することを特徴とする符号化装置。
【請求項２】
前記分離手段は、
前記Ｍビットの固定長入力データブロックを、長さがそれぞれｍ（ｍは自然数）であるＮ個の入力データサブブロックに分離する請求項１記載の符号化装置。
【請求項３】
直流平衡の理論的最小帯域において復号可能であるＭＢ符号の符号化装置であって、
長さがそれぞれｍｋビット（ｍｋは自然数、ｋ＝１，２，３，…，Ｎ）であるＮ個の固定長入力データサブブロックに対して、前記ディジタル和変位が有限値に制限されるｍｋＢ／ｎＢ符号変換則（ｎは自然数、ｍｋ＜ｎ，ｋ＝１，２，３，…，Ｎ）をそれぞれ適用することによって、ｎビットの出力サブブロックをそれぞれ生成する符号化手段と、
前記符号化手段の出力であるＮ個の前記出力サブブロックをビット多重する多重化手段とを有することを特徴とする符号化装置。
【請求項４】
前記Ｎ個の入力データサブブロックは、長さがそれぞれｍ（ｍは自然数）である請求項３記載の符号化装置。
【請求項５】
前記符号化手段は、
前記ｍｋＢ／ｎＢ符号変換則（ｎは自然数、ｍｋ＜ｎ，ｋ＝１，２，３，…，Ｎ）として、それぞれの状態数の最小のものを用いる請求項１または、３記載の符号化装置。
【請求項６】
前記符号化手段は、
前記ｍＢ／ｎＢ符号変換則（ｎは自然数、ｍ＜ｎ）として、それぞれの状態数の最小のものを用いる請求項２または、４記載の符号化装置。
【請求項７】
前記符号化手段は、
前記ｍＢ／ｎＢ符号変換則において、ｍ＝８である請求項６記載の符号化装置。
【請求項８】
前記多重化手段は、
少なくとも２の出力サブブロック間に位相差を設ける請求項１乃至７記載の符号化装置。
【請求項９】
前記符号化手段は、
Ｎ＝２とし、
各々の入力サブブロックに対して８Ｂ／１０Ｂ符号変換則として、状態数が２であり、前記ＤＳＶが６である５Ｂ／６Ｂ符号変換則と、状態数が２であり、前記ＤＳＶが４である３Ｂ／４Ｂ符号変換則をこの順序で適用する最大走行長が５である符号変換則を採用する手段を含み、
前記多重化手段は、
前記符号化手段の出力である第１の出力サブブロックと第２の出力サブブロックの位相差が３ビットまたは、６ビットとする手段を含む請求項８記載の符号化装置。
【請求項１０】
前記多重化手段は、
Ｎ＝２ｐ（ｐは自然数、ｐ≦［ｎ／２］、［ｘ］はｘを超えない最大の整数を表す）であって、和がｎ−１である相異なる２つの自然数の［ｎ／２］個の組（Ｐ，ｎ−１−Ｐ）（Ｐは非負整数、Ｐ＝０，１，２，３，…，［ｎ／２］−１）の中から相異なるｐ組を選択し、それぞれの組に含まれるいずれか一方の非負整数をそれぞれΔｉ（ｉは自然数、ｉ＝１，２，３，…，ｐ）と定義したときに、前記符号化手段の第１の出力サブブロックと第２の出力サブブロックの位相差をΔｐとし、第（２ｉ＋２ｊ−１）の出力サブブロックと第（２ｉ＋２ｊ）の出力サブブロック（ｊは自然数、ｉ＝１，２，３，…，（ｐ−１），ｊ＝１，２，３，…，２ｐ−１）との位相差をΔｉビットとする手段を含む請求項８記載の符号化装置。
【請求項１１】
前記符号化手段は、
Ｎ＝４であって、各々の入力サブブロックに対して８Ｂ／１０Ｂ符号変換則として、状態数が２であり、前記ＤＳＶが６である５Ｂ／６Ｂ符号変換則と状態数が２であり、前記ＤＳＶが４である３Ｂ／４Ｂ符号変換則をこの順序で適用する最大走行長が５である符号変換則を採用する手段を含み、
前記多重化手段は、
前記符号化手段の出力である第１の出力サブブロックと第２の出力サブブロックとの位相差を４ビットとし、第３の出力サブブロックと第４の出力サブブロックとの位相差を３ビットとし、さらに、該第１の出力サブブロックと該第３の出力サブブロックの位相差を０ビットとする手段を含む請求項１０記載の符号化装置。
【請求項１２】
前記符号化手段は、
Ｎ＝２であって、一方の入力サブブロックに対して８B／１０B符号変換則として、状態数が２であり、前記ＤＳＶが６である５Ｂ／６Ｂ符号変換則と、状態数が２であり、前記ＤＳＶが４である３Ｂ／４Ｂ符号変換則をこの順序で適用し、他の入力サブブロックに対して８Ｂ／１０Ｂ符号変換則として、状態数が２であり、前記ＤＳＶが４である３Ｂ／４Ｂ符号変換則と状態数が２であり、前記ＤＳＶが６である５Ｂ／６Ｂ符号変換則をこの順序で適用する請求項７記載の符号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、符号化装置に係り、特に、各種通信装置に用いられる固定長符号化装置における直流平衡であり、理論的最小帯域において復号可能であるＭＢ符号のための符号化装置に関する。
【０００２】
【従来の技術】
一般に送信符号に求められる特性としては、その出力スペクトルが伝送路に適したものであり、受信クロックを容易に回復でき、さらに直流成分がないことによって識別レベル調整が容易に行えることが望まれる。このような条件を満たす符号の一つにｍＢ／ｎＢ符号（ｍ，ｎは自然数、ｍ＜ｎ）が挙げられる。
【０００３】
この符号は、入力データをｍビット毎にある一定の符号変換則によって、ｎビットの符号語に割り当てることによって符号語を生成する。その変換則は、“１”と“０”の発生頻度をなるべく均等化して直流成分を抑え、“１”または、“０”の連続ビット列の発生を防止することによってクロック回復動作を容易にすることを特徴としている。
【０００４】
また、データ符号語として使用しない符号語の中から特殊符号を定義して、これらをさまざまな制御に使用することができる。例えば、符号語の区切りを示す「コンマ符号」を定義すれば、復号の際の同期をとることが容易となる。
【０００５】
伝送路符号として有名なマンチェスタ符号は、入力データの“０”を“０１”に、“１”を“１０”に変換する１Ｂ／２Ｂ符号である。また、８Ｂ／１０Ｂ符号はギガビットイーサネット（Ｇｉｇａｂｉｔ  Ｅｔｈｅｒｎｅｔ：  ＡＮＳＩ／ＩＥＥＥ  ８０２．３ｚ，  １９９８）  の符号化方式として採用されている。
【０００６】
新たな８Ｂ／１０Ｂ符号の一つに、１０ギガビットイーサネットの符号化方式として提案されているＭＢ８１０符号が存在する（文献：Ｄａｅ  Ｙｏｕｎｇ  Ｋｉｍ  他４名”Ｗｈｉｔｅ  Ｐａｐｅｒ  ｏｎ  ｔｈｅ  ＭＢ８１０  Ｌｉｎｅ  ｃｏｄｅ  ｆｏｒ  １０ＧｂＥ”，  Ｃｈｕｎｇｎａｍ  Ｎａｔｉｏｎａｌ  Ｕｎｉｖｅｒｓｉｔｙ，  Ｔａｅｊｏｎ，  Ｋｏｒｅａ，  １９９９，    ［ｒｅｔｒｉｅｖｅｄ  ｏｎ  ２０００−０１−０６  ］，Ｒｅｔｒｉｅｖｅｄ  ｆｒｏｍ  ｔｈｅ  Ｉｎｔｅｒｎｅｔ  ＜ＵＲＬ：ｈｔｔｐ：／／ｃｃｌ．ｃｈｕｎｇｎａｍ．ａｃ．ｋｒ／Ｌｉｎｅ  Ｃｏｄｉｎｇ／ｄａｔａ／ｍｂ８１０＿ｗｐ．ｐｄｆ＞）以下、この文献に関して詳細に述べる。
【０００７】
ＭＢ８１０符号の名称に関しては、ＭＢ（Ｍｉｎｉｍｕｍ  Ｂａｎｄｗｉｄｔｈ）  とは復号に必要な最小帯域（ナイキスト周波数）で復号可能であることを示し、“８１０”とは、８Ｂ／１０Ｂ符号であることを示す。ＭＢ８１０符号は、“１”と“０”の発生頻度をなるべく等しくし、さらに、“１０１０．．．  ”のような交番を頻繁に繰り返すシーケンスをなくべく起こさないようにすることによって、出力ストリームの直流成分だけでなく高周波成分も抑圧することを特徴とする。“１”と“０”の発生頻度を示す値として、累積ディジタル和（ＲＤＳ：Ｒｕｎｎｉｎｇ  Ｄｉｇｉｔａｌ  Ｓｕｍ）を用いる。ＲＤＳ（ｉ，ｊ  ）は、ｉ番のビットからｊ番のビットまでの“１”と“０”の出現個数の差を表す。例えば、累積ディジタル和（ＲＤＳ）が−１であるときに、ビット列“００１０”を受信すれば、累積ディジタル和（ＲＤＳ）は、−３となり、ビット列“１１１０”を受信すれば、＋１となる。“１”と“０”の発生頻度をなるべく均等にすることは、累積ディジタル和（ＲＤＳ）の振幅を有限な値に制限することに等しい。累積ディジタル和（ＲＤＳ）の最大振幅をディジタル和変位（ＤＳＶ：Ｄｉｇｉｔａｌ  Ｓｕｍ  Ｖａｒｉａｔｉｏｎ  ）と呼び、次の式で定義する。
【０００８】
【数１】
0003552632.tif 000002
但し、符号語ビットｃｎ  ∈｛０，１｝を２値出力ｙｎ  ∈｛−１，１｝に対応させるものとする。
【０００９】
同様に、“１０１０．．．  ”のような交番の頻度を表す指標として、累積交番和（ＲＡＳ：Ｒｕｎｎｉｎｇ  ａｌｔｅｒｎａｔｅ  Ｓｕｍ）を用いる。ＲＡＳ（ｉ，ｊ）  は、ｉ番のビットからｊ番のビットまでのビット“１”と“０”の交番数を表す。同じく、累積交番和（ＲＡＳ）の最大振幅は、交番和変位（ＡＳＶ：Ａｌｔｅｒｎａｔｉｎｇ  Ｓｕｍ  Ｖａｒｉａｔｉｏｎ  ）と呼び、次の式で定義する。
【００１０】
【数２】
0003552632.tif 000003
ＡＳＶは、“１０１０．．．  ”のような交番を行うビット列を受信するとき大きくなり、“１１１１．．．  ”のように交番しないビット列を受信すれば小さくなる。
【００１１】
ＭＢ符号は、ＤＳＶだけでなくＡＳＶも有限値に制限することによって高周波成分を抑圧し、理論的最小帯域において復号可能である特性を有する。図２５に従来のＭＢ符号装置の概要を示す。入力ａから入力された入力データブロックは、符号器２において直接ＭＢ符号に変換され、直列出力ｂにＭＢ符号として出力される。符号器２は、ＡＳＶも考慮した符号変換則を実装する必要があり、一般にその回路構成は、ＤＳＶだけを制限する符号器に比べて複雑になる。
【００１２】
簡単なＭＢ符号の例であるＭＢ３４符号を用いて、ＭＢ符号についてさらに詳細に述べる。ＭＢ符号を図示する方法として、累積ディジタル和（ＲＤＳ）値及び累積交番和（ＲＡＳ）値を２次元平面上に表したＢＵＤＡスタックがＤａｅ  Ｙｏｕｎｄ  Ｋｉｍ  らにより定義されている。ＭＢ符号は、ＢＵＤＡスタック上の状態間を遷移するパスの集合として表すことができる。
【００１３】
図２６は、ＭＢ３４符号のＢＵＤＡスタックを示す。同図において、横軸及び縦軸はそれぞれＲＤＳ値、ＲＡＳ値を示し、ＢＵＤＡスタック上の一格子点は、一組のＲＤＳ，ＲＡＳ値に対応する。但し、本明細書におけるＲＤＳ，ＲＡＳ・値は、式（１）及び式（２）において、ｙｎ  ∈｛−１，１｝とした場合の値に基づくため、ｙｎ  ∈｛−１／２，１／２｝を採用する前述文献とは異なる。また、ＢＵＤＡスタック上でＲＤＳ及びＲＡＳ値がそれぞれａ，ｂである点Ｐを（ａ，ｂ）と表記する。
【００１４】
同図において、Ｓ１（−２，０）、Ｓ２（０，−２）、Ｓ３（２，０），Ｓ４（０，２）であり、この４点のいずれかから符号語が出力され始め、出力後も４点のいずれかに留まる。このような点を状態と呼ぶ。また、同図中の矢印は、その方向にのみ移動可能であることを示し、符号語ビットｃｎ  が“１”のときは、右方向に、“０”のときは左方向に移動可能である。
【００１５】
例えば、同図において、状態Ｓ１を始点とし、Ｓ４を終点とする太線で示すパスは、符号語“１１０１”に相当する。同図の場合、状態間を遷移するパスは１状態につき、９通り存在し、これを状態遷移表にしたものが表１である。
【００１６】
【表１】
0003552632.tif 000004
表１において、左の欄は始点となる状態を示し、上の欄は終点となる状態を示す。この中から適当な８通りを選択して入力データブロックに割り当てる。
【００１７】
ＭＢ３４符号の例として、表２のような符号割り当てを行った。
【００１８】
【表２】
0003552632.tif 000005
同図に示す表において、第１の欄「入力」には、３ビットの入力データブロックのすべてが記載され、第２の欄「符号語／次状態」の欄には出力される符号語及びその符号語の出力後の状態のすべてが記載されている。第２の欄は、４つの小欄に分割されているが、この小欄には、ラベリングされた各々の状態毎に出力される符号語のすべてが記載されている。例えば、始点となる状態Ｓ１における入力“１１０  ”に対する出力符号語は、“１１０１”であり、状態はＳ４に遷移する。同一の入力に対しても、始点となる状態により、その出力符号語が異なる。いずれの出力符号語に対しても、それに対応するパスは図２６のＢＵＤＡスタック上に留まる。従って、ＭＢ３４符号のＲＤＳ、ＲＡＳは同図中に示されるようにそれぞれ、−４から４までの値をとるので、それらの最大振幅であるＤＳＶ及びＡＳＶはそれぞれ８である。
【００１９】
注意を要するのは、ＭＢ３４符号にはこれと異なる状態の取り方、符号の選択方法が多数存在することである。
【００２０】
また、ＭＢ８１０符号が提案されている。これは、図２７に示すように状態数が１２、ＤＳＶ及びＡＳＶがともに１４であり、ＢＵＤＡスタックが大きい。従って、多くのパスが存在するために符号語選択の自由度が大きく、適当な符号語選択方法を発見するのが困難であり、符号化回路も複雑なものになる。また、ＭＢ８１０符号化回路は、４００００ゲート以下の論理ゲートで構成可能であると推定しているが、ＭＢ８１０符号の符号語選択方法及び具体的な符号化回路構成について全く言及されていない。
【００２１】
【発明が解決しようとする課題】
上記のように、従来のＭＢ符号は直流平衡であり、かつ理論的最小帯域において復号可能となる利点は存在するものの、ＤＳＶ，ＡＳＶ、状態数など多くの自由度が存在し適当な符号化則が発見されておらず、一般に符号化回路が非常に複雑になる問題がある。
【００２２】
本発明は、上記の点に鑑みなされたもので、ＭＢ符号の簡単な構成方法を構築し、簡単な符号化回路を構成することが可能な符号化装置を提供することを目的とする。
【００２３】
【課題を解決するための手段】
図１は、本発明の原理構成図である。
【００２４】
本発明（請求項１）は、直流平衡の理論的最小帯域において復号可能であるＭＢ符号の符号化装置であって、
Ｍビット（Ｍは自然数）の固定長入力データブロックを、長さがそれぞれｍｋビット（ｍｋは自然数、ｋ＝１，２，３，…，Ｎ、Ｎは正の偶数）のＮ個の入力サブブロックにそれぞれ分離する分離手段１２と、
ディジタル和変位（ＤＳＶ：Digital Sum Variation）が有限値に制限されるｍｋＢ／ｎＢ符号変換則（ｎは自然数、ｍｋ＜ｎ，ｋ＝１，２，３，…，Ｎ）をＮ個の入力サブブロックに対してそれぞれ適用することにより、ｎビットの出力サブブロックをそれぞれ生成する符号化手段１５，１６と、
符号化手段１５，１６の出力であるＮ個の出力サブブロックをビット多重する多重化手段１９とを有する。
【００２５】
本発明（請求項２）は、分離手段において、
Ｍビットの固定長入力データブロックを、長さがそれぞれｍ（ｍは自然数）であるＮ個の入力データサブブロックに分離する。
【００２６】
本発明（請求項３）は、直流平衡の理論的最小帯域において復号可能であるＭＢ符号の符号化装置であって、
長さがそれぞれｍｋビット（ｍｋは自然数、ｋ＝１，２，３，…，Ｎ）であるＮ個の固定長入力データサブブロックに対して、ディジタル和変位が有限値に制限されるｍｋＢ／ｎＢ符号変換則（ｎは自然数、ｍｋ＜ｎ，ｋ＝１，２，３，…，Ｎ）をそれぞれ適用することによって、ｎビットの出力サブブロックをそれぞれ生成する符号化手段と、
符号化手段の出力であるＮ個の前記出力サブブロックをビット多重する多重化手段とを有する。
【００２７】
本発明（請求項４）は、N個の入力サブブロックの長さをそれぞれｍ（ｍは自然数）とする。
【００２８】
本発明（請求項５）は、請求項１または３の符号化手段において、
ｍｋＢ／ｎＢ符号変換則（ｎは自然数、ｍｋ＜ｎ，ｋ＝１，２，３，…，Ｎ）として、それぞれの状態数の最小のものを用いる。
【００２９】
本発明（請求項６）は、請求項２または４において、符号化手段は、ｍＢ／ｎＢ符号変換則（nは自然数、m＜n）として、それぞれの状態数の最小のものを用いる。
本発明（請求項７）は、請求項６において、符号化手段では、ｍＢ／ｎＢ変換則において、ｍ＝８である。
【００３０】
本発明（請求項８）は、多重化手段において、少なくとも２の出力サブブロック間に位相差を設ける。
【００３１】
本発明（請求項９）は、請求項７において、Ｎ＝２とし、
各々の入力サブブロックに対して８Ｂ／１０Ｂ符号変換則として、状態数が２であり、ＤＳＶが６である５Ｂ／６Ｂ符号変換則と、状態数が２であり、ＤＳＶが４である３Ｂ／４Ｂ符号変換則をこの順序で適用する最大走行長が５である符号変換則を採用する手段を符号化手段に含み、
符号化手段の出力である第１の出力サブブロックと第２の出力サブブロックの位相差が３ビットまたは、６ビットとする手段を多重化手段に含む。
【００３２】
本発明（請求項１０）は、Ｎ＝２ｐ（ｐは自然数、ｐ≦［ｎ／２］、［ｘ］はｘを超えない最大の整数を表す）であって、和がｎ−１である相異なる２つの自然数の［ｎ／２］個の組（Ｐ，ｎ−１−Ｐ）（Ｐは非負整数、Ｐ＝０，１，２，３，…，［ｎ／２］−１）の中から相異なるｐ組を選択し、それぞれの組に含まれるいずれか一方の非負整数をそれぞれΔｉ（ｉは自然数、ｉ＝１，２，３，…，ｐ）と定義したときに、符号化手段の第１の出力サブブロックと第２の出力サブブロックの位相差をΔｐとし、第（２ｉ＋２ｊ−１）の出力サブブロックと第（２ｉ＋２ｊ）の出力サブブロック（ｊは自然数、ｉ＝１，２，３，…，（ｐ−１），ｊ＝１，２，３，…，２ｐ−１）との位相差をΔｉビットとする手段を多重化手段に含む
【００３３】
本発明（請求項１１）は、請求項１０において、Ｎ＝４であって、各々の入力サブブロックに対して８Ｂ／１０Ｂ符号変換則として、状態数が２であり、ＤＳＶが６である５Ｂ／６Ｂ符号変換則と状態数が２であり、ＤＳＶが４である３Ｂ／４Ｂ符号変換則をこの順序で適用する最大走行長が５である符号変換則を採用する手段を符号化手段に含み、
符号化手段の出力である第１の出力サブブロックと第２の出力サブブロックとの位相差を４ビットとし、第３の出力サブブロックと第４の出力サブブロックとの位相差を３ビットとし、さらに、該第１の出力サブブロックと該第３の出力サブブロックの位相差を０ビットとする手段を多重化手段に含む。
【００３４】
本発明（請求項１２）は、請求項７において、符号化手段は、
Ｎ＝２であって、一方の入力サブブロックに対して８B／１０B符号変換則として、状態数が２であり、ＤＳＶが６である５Ｂ／６Ｂ符号変換則と、状態数が２であり、ＤＳＶが４である３Ｂ／４Ｂ符号変換則をこの順序で適用し、他の入力サブブロックに対して８Ｂ／１０Ｂ符号変換則として、状態数が２であり、ＤＳＶが４である３Ｂ／４Ｂ符号変換則と状態数が２であり、ＤＳＶが６である５Ｂ／６Ｂ符号変換則をこの順序で適用する。
【００３５】
上述のように、本発明では、ＭＢ符号を生成するために、Ｎ個（Ｎは正の偶数）のＤＳＶを有限値とする符号をビット多重することによってＭＢ符号を生成するため、簡単なＭＢ符号化装置を構成することが可能となる。
【００３６】
【発明の実施の形態】
本発明の実施例を説明する前に、本発明の基本原理について説明する。
【００３７】
本発明の基本は、２個のＤＳＶを有限値に制限した符号をビット多重することによりＭＢ符号を生成することにある。ここで、その原理については前述の図２６のＢＵＤＡスタックを用いて簡単に述べる。
【００３８】
ＢＵＤＡスタックは、図２に示される２種類の最小サイズのＢＵＤＡスタックに分離でき、この最小構成単位ＢＵＤＡセルと呼ぶ。ＢＵＤＡセルをｘ方向にＸ個、ｙ方向にＹ個ずつ敷き詰め、計Ｘ×Ｙ個のＢＵＤＡセルから構成されるＢＵＤＡスタックをＸ×ＹのＢＵＤＡスタックと呼ぶことにする。但し、ｘ方向及びｙ方向は、図２６においてＲＤＳ軸との４５度の下降矢印及び４５度上昇矢印で示されている方向である。例えば、図２６のＢＵＤＡスタックは、４×４のＢＵＤＡスタックと呼ぶ。一般に、Ｘ×ＹのＢＵＤＡスタック上に存在するＭＢ符号は、ＢＵＤＡスタック上をｘ方向の移動とｙ方向の移動とｙ方向の移動を交互に繰り返すパスとして表現される。
【００３９】
例えば、状態Ｓ１を始点とし、状態４を終点とする太線のパス（符号語化１１０１”に相当）に注目すれば、ｘ方向に＋１、ｙ方向に＋１、ｘ方向に−１、ｙ方向に＋１というように、ｘ方向とｙ方向の移動を繰り返している。従って、符号語を１ビットおきに取り出して、２つのサブブロックに分離すると、そのサブブロックはそれぞれｘ方向または、ｙ方向のみに移動し、その振幅はＢＵＤＡスタックの幅Ｘ，Ｙを超えることはない。即ち、分離されたサブブロックは、ＤＳＶがＸまたは、Ｙに制限された符号であると言い換えることができる。逆に、Ｘ×ＹのＢＵＤＡスタック上に存在するＭＢ符号語は、ＤＳＶが、Ｘ，Ｙに制限された２個の符号をビット多重することによって構成できることに気付く。このＭＢ符号語のＤＳＶ及びＡＳＶは、共にＸ＋Ｙ以下である。また、このＭＢ符号の状態数は、各々の符号語境界における一方の符号の状態と他方の符号の状態の組み合わせの総数に等しい。特に、ＤＳＶが有限値である符号の状態が任意の符号語境界において一致している場合は、その状態数をそれぞれｓ１  ，ｓ２  として、ＭＢ符号の状態数は、ｓ１  ×ｓ２  で表わされる。
【００４０】
例えば、状態数が１，ＤＳＶが２である１Ｂ／２Ｂ符号（マンチェスタ符号）をビット毎に交互に多重すれば、Ｘ＝Ｙ＝２であるからＤＳＶ及びＡＳＶが４以下であり、かつ、状態数１（＝１×１）のＭＢ２４符号を構成できる。
【００４１】
マンチェスタ符号は、入力を“０”を“０１”に、“１”を“１０”に変換する符号である。また、ＭＢ２４符号は、２Ｂ／４Ｂ符号であり、４つのデータ符号語を有する。このＭＢ２４符号では、例えば、入力データブロック“００”は、“０”と“０”の２つの入力データサブブロックにビット毎に多重分離され、入力データサブブロックが１Ｂ／２Ｂ符号変換則によって出力サブブロック“０１”にそれぞれ変換され、２つの出力サブブロックがビット毎に交互に多重されることによって１符号語“００１１”に変換される。ＭＢ２４符号のＢＵＤＡスタック及びその符号表を図３及び表３に示す。
【００４２】
【表３】
0003552632.tif 000006
図３及び表３の説明については、前述のＭＢ３４符号のものに準ずる。図３から、ＭＢ２４符号の状態数は１であり、ＡＳＶ、ＤＳＶはともに４であることが確認できる。
【００４３】
以上が本発明の基本原理である。
【００４４】
以下、図面と共に本発明の実施例を説明する。ＭＢ１６２０符号化装置、及びＭＢ３２４０符号化装置、ＭＢ６４８０符号化装置について詳細に説明する。
【００４５】
［第１の実施例］
本実施例では、ＤＳＶが６である２つの８Ｂ／１０Ｂ符号をビット多重することによってＭＢ１６２０符号を出力するＭＢ１６２０符号化装置について述べる。
【００４６】
ＭＢ１６２０符号は、１６Ｂ／２０Ｂ符号であり、６５５３６（２の１６乗）個のデータ符号語を有する。８Ｂ／１０Ｂ符号については、特開昭５９−１００５６に詳述されている。この８Ｂ／１０Ｂ符号は後述する。
【００４７】
図４は、ＭＢ１６２０符号化装置の概要及びデータの流れを示す。
【００４８】
ここでは、直列インタフェースから入力データストリーム１１が入力される。この符号化装置では、入力データストリームを１６ビット毎の固定長入力データブロックに分割し、１６ビットを１処理単位として考える。
【００４９】
同図では、入力データストリームに含まれる１入力データブロックを四角の太線で囲み、Ａ１  Ａ２  Ｂ１  Ｂ２  ．．．Ｈ１  Ｈ２  なる記号で示した。それぞれのルビ付きアルファベットは、データビットを表し、Ａ１  を先頭として入力される。この入力データストリーム１１は、分離器１２において、２つの入力データサブストリーム１３、１４に多重分離される。従って、入力データブロックは、それぞれ８ビットの入力データサブブロックＡ１  Ｂ１  ．．．Ｈ１  と、Ａ２  Ｂ２  ．．．Ｈ２  に分離される。これらをそれぞれ符号器１５、１６に送り、符号器１５、１６の有する論理機能に従って、１０ビットの符号語ａ１  ｂ１  ．．．ｊ１  とａ２  ｂ２  ．．．ｊ２  に変換する。符号器の論理機能については後述する。
【００５０】
さらに、符号器１５、１６の１０ビットの出力は、多重化装置１９においてビット毎に多重化され、２０ビットの符号語ａ１  ａ２  ｂ１  ｂ２  ．．．ｊ１  ｊ２  として出力インタフェース１Ｘにａ１  を先頭として直列出力される。
【００５１】
符号器１５と符号器１６は、前述の特開昭５９−１００５６に記載されている８Ｂ／１０Ｂ符号器と同一の符号器である。符号器の構成の詳細については、前述の特開昭５９−１００５６を参照されたい。
【００５２】
まず、符号器１５について説明する。
【００５３】
符号器１５は、入力データのために８ビットのインタフェースを備え、制御のために１ビットのＫ線を備えている。入力ＡＢＣＤＥＦＧＨを符号化のための２つのサブブロックＡＢＣＤＥとＦＧＨに区分し、それぞれに表４に示された５Ｂ／６Ｂ符号化則と表５に示された３Ｂ／４Ｂ符号化則を適用する。
【００５４】
【表４】
0003552632.tif 000007
【００５５】
【表５】
0003552632.tif 000008
このとき、入力サブブロック“ＡＢＣＤＥ”は、出力サブブロック“ａｂｃｄｅｉ”に、“ＦＧＨ”は、“ｆｇｈｊ”に変換される。この変換動作において、５Ｂ／６Ｂ符号化則と、３Ｂ／４Ｂ符号化則は互いに連携し、各々の出力ビットを決定している。こうして得られた１０ビットの符号語“ａｂｃｄｅｉｆｇｈｊ”は直列出力される。
【００５６】
次に、５Ｂ／６Ｂ符号及び３Ｂ／４Ｂ符号の符号変換則について述べる。
【００５７】
これらの符号は、ＤＳＶを有限値に制限するために、１符号語内の“１”と“０”の出現個数の差であるディスパリティ（Ｄｉｓｐａｒｉｔｙ  ）を検査して出力すべき符号語を決定する。５Ｂ／６Ｂ符号及び３Ｂ／４Ｂ符号では、“１”と“０”の個数が等しい符号語か、“１”と“０”の個数が２つだけ異なる符号語のみを用いるため、ディスパリティの値としては、＋２，０，−２の３通りに限られる。例えば、符号語“１１００１１”のディスパリティは＋２である。出力符号語は必ずディスパリティのものを選択するか、または、ディスパリティの極性が交互に交代するように選択する。こうして、累積ディジタル和（ＲＤＳ）の長期時間平均が０となり、ＤＳＶが有限値に保たれる。
【００５８】
前述の特開昭５９−１００５６において、「ディスパリティ」なる用語は、１符号語での“１”と“０”の出現個数の差だけでなく、累積ディジタル和（ＲＤＳ）の長期時間平均からの瞬時変位の意味でも用いられている。これを特に、走行ディスパリティ（ＲＤ：Ｒｕｎｎｉｎｇ  Ｄｉｓｐａｒｉｔｙ  ）と呼ぶ。これに倣うとランニングディスパリティと符号語ビット列の関係は、図５のように表される。図５において、各々のビット“１”は、１符号語ビット列で４５度の上昇線で表され、逆に各々のビット“０”は４５度の下降線で表される。すべての８Ｂ／１０Ｂ符号語は図６の４５度の上昇／下降線の範囲に留まる。図５からわかるように、５Ｂ／６Ｂ符号語及び３Ｂ／４Ｂ符号語境界における走行ディスパリティ（ＲＤ）の値は、＋１、または、−１のいずれかの値を取る。
【００５９】
前述の表４は、５Ｂ／６Ｂ符号表を示す。表４において、第１の欄「名称」においてアルファベット「Ｄ」は、データ符号語を表し、「Ｋ」は特殊符号語を表す。特殊符号語は、Ｋ線が１のときに出力される。Ｄｘまたは、Ｋｘなる表記において、ｘはＡを低順位ビット、Ｅを高順位ビットと見たときに、等価な３２個の１０進値を表す。第２の欄「入力データ」は、５ビットの入力の２進表示である。第３欄「符号化」の欄では右５ビット入力値に対応する出力符号語を表している。２つの小欄に分割されているが、左の小欄「ｃｕｒｒｅｎｔＲＤ＋」には走行ディスパリティ（ＲＤ）が＋１のときに出力される符号語が、左の小欄「ｃｕｒｒｅｎｔＲＤ−」には走行ディスパリティ（ＲＤ）が−１のときに出力される符号語が記載されている。例えば、走行ディスパリティ（ＲＤ）が−１で入力“００００”に対する出力はＤ．０“１００１１１”である。
【００６０】
前述の表５は、３Ｂ／４Ｂ符号表を示す。表５において、第１の欄「名称」でのＤ．ｘ．ｙなる表記において、ｙはＦを低順位ビット、Ｈを高順位ビットと見たときに等価な８個の１０進値を表す。その他の表記については、表４のようになり、出力される符号語は５Ｂ／６Ｂ符号の出力後の走行ディスパリティ（ＲＤ）によって決定される。
【００６１】
【表６】
0003552632.tif 000009
Ｄ．ｘ．Ｐ７（基本の７）及び、Ｄ／Ｋ．ｙ．Ａ７（代替の７）について説明する。
【００６２】
Ｄ．ｘ．Ｐ７及び、Ｄ／Ｋ．ｙ．Ａ７によって、ｅｉｆｇｈ  に生じる走行長＝５のシーケンスを除去できる。Ｄ．ｙ．Ａ７は、次の場合にＤ．ｘ．Ｐ７の代替として用いられる。
【００６３】
（ｉ）    ｃｕｒｒｅｎｔＲＤ＋  であり、かつｅ＝ｉ＝０  のとき
（ｉｉ）  ｃｕｒｒｅｎｔＲＤ−  であり、かつｅ＝ｉ＝１  のとき
これにより、８Ｂ／１０Ｂ符号のデータ符号語の出力シーケンスには、走行長＝５を含む“１１０００００  ”及び、“００１１１１１  ”は出現しないため、“１１０００００  ”、または、“００１１１１１  ”を含む符号語をコンマ符号として定義することが可能となる。即ち、受信ビット列が“１１０００００  ＊＊＊  ”または、“００１１１１１  ＊＊＊  ”を検出すればそれが符号語の区切りと判断することができる。但し、“＊  ”は、“１”または、“０”のビットを表す。
【００６４】
２つの符号表から得られる８Ｂ／１０Ｂ符号表は前述の表４に示す通りである。表記については、表１と同様である。
【００６５】
符号器１６は、符号器１５と同様の機能を有する。
【００６６】
以上、図４において、２つの符号器１５、１６の出力は、多重化装置１９によりビット毎に多重化され、ＭＢ１６２０符号として出力される。
【００６７】
図６は、本発明の一実施例のＭＢ１６２０符号のＢＵＤＡスタックを示す。同図の表記は、前述の図２６と同様である。図６に示されるように、ＭＢ１６２０符号の状態数は４であり、ＤＳＶ，ＡＳＶはともに１２である。ＭＢ１６２０符号のデータ符号語数は６５５３６と多いが、その一部を表７に示す。
【００６８】
【表７】
0003552632.tif 000010
表７において、第１の欄「名称」において、Ｄはデータ符号語を表す。また、Ｄ．ｘ．ｙ．ｚ．ｗなる表記において、Ｄ．ｘ．ｙ．ｚ．ｗはそのデータ符号語が符号器１５の出力符号語Ｄ．ｘ．ｙ及び符号器１６の出力符号語Ｄ．ｚ．ｗを二多重化して構成されたものであることを示す。第２の欄「入力」は、１６ビットの入力データの２進表示であり、第３の欄「符号化」は、右の入力値に対応する２０ビットの符号語出力を２進表示している。「符号化」の欄は、４つの小欄に分割されているが、各々の小欄はそれぞれラベリングされたＳ１，Ｓ２，Ｓ３，Ｓ４のいずれかの状態を始点とするときに出力される符号語を表している。例えば、状態Ｓ２での入力“０００００００００００００  ”に対する出力符号語は、“１００１０１１０１０１００１１００１０１”である。
【００６９】
ここでは、８Ｂ／１０Ｂ符号とＭＢ１６２０符号の比較を行う。ＡＳＶなるパラメータは、ナイキスト周波数におけるパワースペクトルの値に等しい。ＡＳＶを有限な十分小さな値に制限することはナイキスト周波数においてパワースペクトルが減衰することを意味する。
【００７０】
図７は、本発明の第１の実施例の８Ｂ／１０Ｂ符号とＭＢ１６２０符号のスペクトル比較を示しており、８Ｂ／１０Ｂ符号を直列出力した際のパワースペクトルとＭ１６２０符号を直列出力した際のパワースペクトルを比較して示したものである。出力パルスを方形波、伝送速度を１２．５Ｇｂｐｓ、データ速度を１０Ｇｂｐｓと仮定してフーリエ変換により計算した。８Ｂ／１０Ｂ符号，ＭＢ１６２０符号もともにスペクトルは、０Ｈｚ及び１２．５ＧＨｚ  において減衰している点は共通している。しかし、ＭＢ１６２０符号のスペクトルはＡＳＶを制限し、８Ｂ／１０符号はＡＳＶを制限していないために、ナイキスト周波数６．２５ＧＨｚ  におけるスペクトル値は全く異なっていることが分かる。ＡＳＶの効果により、ＭＢ１６２０符号のスペクトルでは、ナイキスト周波数においてスペクトルが減衰していることが確認できる。
【００７１】
このＭＢ１６２０符号化装置は、符号器１５及び１６は、８Ｂ／１０Ｂ符号器と同一であるため、符号器に必要な論理ゲート数は、８Ｂ／１０Ｂ符号器の２にあたる約８００ゲートである。この値は、４００００ゲートを要する従来のＭＢ８１０符号器に比べて５０分の１程度である。
【００７２】
本実施例では、直列入力インターフェースを想定し、１６ビットの入力データブロックをそれぞれ８ビットの入力データサブブロックに分離し、各々の入力データサブブロックに対して８Ｂ／１０Ｂ符号変換則を適用することにより、ＭＢ符号を構成したが、並列入力インタフェースであれば、分離器が不要であり、符号器１５及び符号器１６に直接Ａ１  Ａ２  Ｂ１  Ｂ２  Ｃ１  Ｃ２  Ｄ１  Ｄ２  及びＥ１  Ｅ２  Ｆ１  Ｆ２  Ｇ１  Ｇ２  Ｈ１  Ｈ２  が入力されるように結線すればよい。
【００７３】
また、本実施例において、ＤＳＶが有限値である２つの符号としてともに状態数が最小であるものを用いたために、得られたＭＢ符号はビット多重によって生成するＭＢ符号の中で最小の状態数を有し、回路構成が簡単となる効果を得られたが、それらの符号は状態数が最小でなくてもＭＢ符号となる点は変わらない。また、多重されるＤＳＶが有限値である２つの符号は、本実施例では、同一の符号であり、同一の符号語を用いることができるという利点があったが、例えば、４Ｂ／６Ｂ符号と５Ｂ／６Ｂ符号とするなど、異なる符号であってもよい。
【００７４】
さらに、本実施例では、２つの符号器への入力は８ビットであり、一般的な電子計算機の処理単位であるという利点があったが、８ビット以外の場合でも同様にＭＢ符号を構成できる点は変わらない。
【００７５】
また、本実施例では、２個の８Ｂ／１０Ｂ符号をビット多重することによってＭＢ符号を構成したが、Ｎ個（Ｎは正の偶数）の８Ｂ／１０Ｂ符号をビット多重しても同様にＭＢ符号が生成できる。これについて次に述べる。
【００７６】
前述の基本原理をＮ個（Ｎは正の偶数）のＤＳＶが有限値である符号をビット多重する場合に拡張する。一般に任意の個数のＤＳＶが有限値である符号をビット毎に多重して得られる符号のＤＳＶは、有限な値となる。従って、例えば６個のＤＳＶが有限な値である符号をビット多重する場合は、６個の符号を半分の３個ずつに分割し、それぞれビット多重することによって、ＤＳＶが有限である符号をそれぞれ生成し、得られた２個の符号をさらにビット多重すれば得られる符号は、前述の通りＭＢ符号となる。Ｎ個（Ｎは正の偶数）の場合も同様に相異なるＮ／２個のＤＳＶが有限な符号をそれぞれビット多重し、さらに、そのビット多重して得られる２つの符号をビット多重すればＭＢ符号が得られる。従って、Ｎ個の８Ｂ／１０Ｂ符号をビット多重すれば、得られる符号はＭＢ符号となる。
８Ｂ／１０Ｂ符号に限らず、一般にＭビット（２以上のＭは自然数）の入力データブロックをそれぞれｍｋビット（ｍｋは自然数、ｋ＝１，２，３，…，Ｎ，Ｎは正の偶数）のＮ個の入力データサブブロックに分離する分離器と、各々の入力データサブブロックに対してｍｋＢ／ｎＢ符号変換則（ｎは自然数、ｍｋ＜ｎ，ｋ＝１，２，３，…，Ｎ）を適用する符号器を備えれば、同様にＭＢ符号が構成できる。
【００７７】
さらに、並列入力インタフェースの場合もそれぞれ長さがｍｋであるＮ個の入力データサブブロックがｍｋＢ／ｎＢ符号変換則（ｎは自然数，ｍｋ＜ｎ，ｋ＝１，２，３，…Ｎ）を適用する符号器にそれぞれ直接入力されるように結線すればよい。
【００７８】
［第２の実施例］
次に、少なくとも２つの出力サブブロック間にビットのずれ（以下、位相差と呼ぶ）を設けることによって、
（ｉ）  ビット多重して得られるＭＢ符号のＤＳＶ及び最大走行長を小さくする効果を得た例：
（ｉｉ）  復号操作が容易となる効果を得た例：
の順で述べていく。
【００７９】
ビット多重を行うＤＳＶが有限値である２個のビット列の走行ディスパリティ（ＲＤ）値の和は、ＭＢ符号の累積ディジタル和（ＲＤＳ）に対応する。従って、同一のＤＳＶが有限値である符号を単純にビット多重して得られるＭＢ符号のＤＳＶは、累積ディジタル和（ＲＤＳ）が２倍となるから多重化する前の符号のＤＳＶの２倍であり、最大走行長も２倍となる。この値は、２つのＤＳＶが有限値である２つの符号の出力間に一定の位相差を設けてビット多重することによって得られるＭＢ符号出力ストリームと比べて最悪の値である。逆に言えば、その位相差を適当に調整することによってＤＳＶ値及び最大走行長の改善を図ることができる。
【００８０】
前述したＭＢ１６２０符号において、そのＤＳＶ、ＡＳＶの値は、共に１２と非常に大きくなった。
【００８１】
次に、本実施例として、位相差を特定の値とすることによって、出力ストリームのＡＳＶ，ＤＳＶの値を共に１０にした例を述べる。
【００８２】
図８は、本発明の第２の実施例のＭＢ１６２０符号化装置の構成及びデータの流れを示す。図４と異なる点は、一方の符号器２６と多重化装置２Ｘの間に位相器２９が挿入されていることである。この位相器２９によって、第２の出力サブブロック（符号器２６の出力サブブロック）は、第１の出力サブブロック（符号器２５の出力サブブロック）に比べ、３ビット時間遅延する。
【００８３】
符号器２５及び符号器２６ともに前述の８Ｂ／１０Ｂ符号器と同様である。
【００８４】
位相器２９が出力特性に及ぼす影響を理解するために、図９に符号器２５及び符号器２６の出力する８Ｂ／１０Ｂ符号の符号語ビット列とディスパリティの関係を３ビットの位相差も考慮して示す。図９の表記については、図５と同様である。
【００８５】
２つの符号器２５、２６の出力が位相器２９により３ビット遅延することによって、図８において２つの符号のディスパリティがともに最大値（＋３）及び最小値（−３）とならないために、任意の符号語ビット列において、２つの符号のディスパリティの和が−５から＋５の間に存在する。これによって、多重化して得られる出力ストリームのＤＳＶが１０に限定される。この値は、位相器２９による位相差を１ビットから９ビットまで変化させたときの最小値である。このＭＢ１６２０符号化装置の出力ストリームは、図１０のＢＵＤＡスタック上に存在する。
【００８６】
従って、このＭＢ１６２０の符号のＤＳＶ及びＡＳＶは、いずれも１０で出力可能である。８Ｂ／１０Ｂ符号に出現する最大走行長５のビット列は、符号器ビットｃまたは、ｇから始まるが、３ビットの位相差によって２つの符号の走行長が同時に５となる場合が存在しないため、ＭＢ１６２０符号出力の最大走行長は９となる。
【００８７】
このＭＢ１６２０符号化装置では、位相器２９における位相差は３ビットであった。図１１は、本発明の第２の実施例の位相差とＤＳＶの関係を示す。横軸が位相器２９における位相差であり、縦軸がＤＳＶ値及び最大走行長である。図１１から、位相差が６ビットでも同様に、ＤＳＶ値及び最大走行長が最小値となる。また、ＤＳＶは、位相差が４ビット及び５ビットのときにも最小値となる。
【００８８】
２つの８Ｂ／１０Ｂ符号をビット多重することによって得られるＭＢ符号のＤＳＶ及び最大走行長を抑制するためには、３ビットまたは、６ビットの位相差を設定することが有効であることを述べた。
【００８９】
次に、本発明を用いた３ビットまたは、６ビットの位相差が明示されていない装置構成を有する例を説明する。
【００９０】
ＤＳＶ限定符号語ストリームを４多重する場合を想定する。
【００９１】
区別のため、４本のストリームをを順番に、ストリームＳ１、ストリームＳ２、…、ストリームＳ４と呼ぶことにする。
【００９２】
図１２に示すように、ストリームＳ１とストリームＳ２の位相差を１ビットとし、ストリームＳ２とストリームＳ３の位相差を２ビットとし、ストリームＳ３とストリームＳ４の位相差を１ビットとして、ストリームＳ１とストリームＳ２をビット多重し、ストリームＳ３とストリームＳ４をビット多重化し、それぞれ多重化して得られる２つのストリームをさらに、２ビットを単位として多重化する符号化装置を想定する。
【００９３】
この符号化装置は、位相差が３ビットであるストリームＳ１とストリームＳ３をビット多重化し、同じく３ビットであるストリームＳ２とストリームＳ４をビット多重化し、それぞれ多重化して得られる２つのストリームをさらに、ビット多重化する手段を有する符号化装置と等価である。本実施例においても、本発明の範囲である実質３ビット時間の位相差を利用し、ＤＳＶ及び最大走行長の小さなＭＢ符号を構成し、多重していることとなる。
【００９４】
また、このような例は図１２に示した場合に限らない。
【００９５】
また、上記の第２の実施例において、二多重されるＤＳＶが有限値である２つの符号は、同一の符号であり、同一の符号器を用いることができるという利点があったが、異なる符号でもよい。
【００９６】
また、上記の第２の実施例では、２個のＤＳＶが有限である符号をビット多重した場合について述べたが、Ｎ個（Ｎは正の偶数）のＤＳＶが有限である同一のｍＢ／ｎＢ符号（ｍは自然数、ｎは自然数、ｍ＜ｎ）をビット多重して得られるＭＢ符号も位相差を設けないときは、ＤＳＶ及び最大走行長は最大となるから、位相差を設けることによって、ＤＳＶ及び最大走行長の改善を図ることができる。
【００９７】
次に、特定の位相差を設定することにより、復号操作を容易にすることができることについて述べる。
【００９８】
符号長ｎが偶数である符号を２多重するときは、任意の位相差によりサブストリームを識別できるが、、符号長ｎが奇数の場合は、位相差が［ｎ／２］ビットのときに限りサブストリームを識別できない。
【００９９】
多重して得られるＭＢ１６２０符号は、２つの８Ｂ／１０Ｂ符号ストリームに分割した後に各々を復号する。このとき、ＭＢ１６２０符号化装置において、第１と第２の出力サブブロック間に、例えば、３ビットの位相差を設けて多重していれば、復号の際に２つのサブストリームを８Ｂ／１０Ｂ符号語間の位相差を検査することによって、サブストリームを識別できる。その詳細について述べる。
図１３に、その復号装置の概要を示す。
【０１００】
“ａ１  ｂ１  ｃ１  …ｊ１  ”及び、“ａ２  ｂ２  ｃ２  …ｊ２  ”は、図８における符号器２５及び符号器２６による出力ビットを表す。復号の際、“ａ１  ａ２  ｂ１  ｂ２  …ｊ１  ｊ２  …”は、多重分離装置１４０において、２つのサブストリーム“ａ１  ｂ１  ｃ１  …ｊ１  ”と“ａ２  ｂ２  ｃ２  …ｊ２  ”にビット毎に分離され、サブストリームＳ１１に、“ａ１  ｂ１  ｃ１  …ｊ１  ”が、サブストリームＳ１２に“ａ２  ｂ２  ｃ２  …ｊ２  ”が到来し、それぞれ復号器５０及び６０によりそれぞれデータに復号される。しかし、多重分離装置１４０におけるタイミングの取り方によってはサブストリームＳ１１に“ａ２  ｂ２  ｃ２  …ｊ２  ”が、サブストリームＳ１２に“ａ１  ｂ１  ｃ１  …ｊ１  ”が到来することが起こり得るため、いずれの場合か識別しなければならない。図１４では、その識別方法の概要を示す。
【０１０１】
図１４では、サブストリームＳ１１及びＳ１２に到来するビットをそれぞれ四角で表し、符号語の先頭ビットを黒い四角で強調してある。サブストリームＳ１１とＳ１２の符号語間の位相差に着目すると、位相差が３ビットのときは、“ａ１  ｂ１  ｃ１  …ｊ１  ”がサブストリームＳ１１に到来している場合であり、位相差が６ビットであるときは“ａ２  ｂ２  ｃ２  …ｊ２  ”がサブストリームＳ１２に到来している場合であることが識別できる。位相差が６ビットであれば、多重分離装置１４０における分離のタイミングを１ビットずらせばサブストリームＳ１１に“ａ１  ｂ１  ｃ１  …ｊ１  ”が到来するようになる。従って、この位相差を検出する手段を備えることによって正しく復号することができる。
【０１０２】
ただ、４Ｂ／５Ｂ符号のように符号長ｎが奇数である２つの符号を［ｎ／２］の位相差を設けて、ビット多重した場合は、復号のため２つのサブストリームに分割したときにサブストリーム間の位相差が共に［ｎ／２］ビットとなるためにサブストリームを識別できない。
【０１０３】
いま、２個の８Ｂ／１０Ｂ符号に位相差を設けてビット多重した場合について、復号の際に符号語間の位相差を検出することによって、サブストリームを識別する方法について述べたが、４個の８Ｂ／１０Ｂ符号に特定の位相差をそれぞれ設けてビット多重、３２Ｂ／４０Ｂ符号の一つであるＭＢ３２４０符号を構成した場合についても、ＤＳＶの抑制効果とサブストリームの識別効果を共に得ることができる。
【０１０４】
図１５は、本発明の第２の実施例のＭＢ３２４０符号化装置の概要を示す。それぞれ８ビットの入力“Ａ１  Ｂ１  Ｃ１  …Ｈ１  ”、“Ａ２  Ｂ２  Ｃ２  …Ｈ２  ”、…、“Ａ４  Ｂ４  Ｃ４  …Ｈ４  ”は、符号器７１，７２，７３，７４によって、それぞれ１０ビットの出力サブブロック“ａ１  ｂ１  ｃ１  …ｊ１  ”、“ａ２  ｂ２  ｃ２  …ｊ２  ”、…、“ａ４  ｂ４  ｃ４  …ｊ４  ”に変換され、位相器８１，８２，８３，８４によって、出力サブブロック１０９と１１０の位相差及び出力サブブロック１１１と１１２の位相差をそれぞれ特定の値に設定した後、出力サブブロック１１７と１１８、及び出力サブブロック１１９と１２０がそれぞれ多重化装置２１０及び２２０によってビット多重され、さらに、多重化装置２３０によりビット多重された後、出力として２６０からシリアル伝送される。
【０１０５】
便宜上、出力サブブロック１０９、１１０、１１１、１１２をそれぞれ第１、第２、第３、第４の出力サブブロックと呼ぶことにする。図１５の構成において、位相差を変化させたときに、ＭＢ符号語出力の最大走行長及びＤＳＶが共に、最小値となる位相差の組み合わせを図１６に示す。全ての組み合わせについて調べた結果、最大走行長及び、ＤＳＶ値の最小値は、それぞれ１７、１８であった。図１６において、第１から第４の欄「位相差１」「位相差２」、「位相差３」、「位相差４」には、図１５の位相器８１から位相器８４による位相差（ビット）がそれぞれ記載され、第５の欄「位相の和」は、第１から第４に記載された位相差の和（ビット）が記載されている。この図から最大走行長及びＤＳＶ値がともに最小であって位相の和が最小であるのは、（位相差１、位相差２、位相差３、位相差４）＝（０，４，０，３）のとき、即ち、第１と第２の出力サブブロックの位相差が４ビットであり、第３と第４の出力サブブロックの位相差が３ビットであり、第１と第３の出力サブブロックの位相差が０ビットであるときである。位相の和が最小であるものを選択した理由は、位相差を設けるための回路を簡単にするためである。
【０１０６】
ここでは、この場合のサブストリーム識別の方法について述べる。図１７〜図２０に復号の際の出力サブブロックを識別する方法について示す。便宜上、図１５の符号化装置における符号器７１〜７４による出力ビットをそれぞれ、“ａ１  ｂ１  ｃ１  …ｊ１  ”、“ａ２  ｂ２  ｃ２  …ｊ２  ”、…、“ａ４  ｂ４  ｃ４  …ｊ４  ”で表す。図１５の符号化装置の出力ストリーム“ａ１  ｆ２  ａ３  ｇ４  ｂ１  ｇ２  ｂ３  ｈ４  …ｊ１  ｉ２  ｊ３  ｆ４  ”は、多重分離装置１９０により２つのサブストリームに分離され、さらに多重分器装置１５０及び１６０によりサブストリームに分離される。このときタイミングの取り方によって、図１７〜図２０に示す４通りの場合が存在する。
【０１０７】
図１７〜図２０では、到来する各々のビットを四角で表し、符号語の先頭ビットを黒い四角で強調した。サブストリームＳ１とサブストリームＳ３に出現する符号語の位相差に着目すると、その位相差が４ビットであるときのみ所望のサブストリーム１に“ａ１  ｂ１  ｃ１  …ｊ１  ”が到達していることがわかる。その場合は、多重分離器におけるタイミングを操作することによって、“ａ１  ｂ１  ｃ１  …ｊ１  ”がサブストリーム１に到来するようにできる。この調整は、以下の手順により行うことができる。
【０１０８】
サブストリーム１とサブストリーム３間の位相差が、
（ａ）４ビットの場合は、操作しない。
（ｂ）３ビットの場合は、多重分離器１５０及び１６０の分離タイミングを１ビットずらす。
（ｃ）６ビットの場合は、多重分離器１９０の分離タイミングを１ビットずらす。
【０１０９】
なお、３ビットの場合に、多重分離器１９０の分離タイミングを２ビットずらしてもよい。この方法によれば、位相差の検出装置を一つ設置すればよいため制御が簡単となる。また、サブストリームの識別のために特殊符号を新たに定義するなどの特別な手段が不要である。
【０１１０】
本実施例では、４多重の場合を示したが、８Ｂ／１０Ｂ符号を８多重する場合は、次のように位相差を設定する。図２１における符号器３０９から３１６の出力サブブロックをそれぞれ第１から第８の出力サブブロックと呼ぶと、図２１に示すように、第１と第２の出力サブブロックの位相差を１ビット、第３と第４の出力サブブロックの位相差を２ビット、第５と第６の出力サブブロックの位相差及び第７と第８の出力サブブロックの位相差を３ビットとしてビット多重し、ＭＢ６４８０符号を構成する。復号の際には、図２２に示すサブストリームＳ２１とＳ２２の位相差を検出することによって、以下の手順によりサブストリームを整列することが可能である。サブストリームＳ２１とＳ２２の位相差が、
（１）１ビットの場合は操作しない。
（２）８ビットの場合は多重分離器４０９，４１０、４１１，４１２の分離タイミングを１ビットずらす。
（３）２ビットまたは、７ビットの場合は、多重分離器４１７，４１８の分離タイミングを１ビットずらす。
（４）３ビットまたは、６ビットの場合は、多重分離器４２１の分離タイミングを１ビットずらす。
【０１１１】
位相差の設定は、次の手順により行った。
（ａ）相異なる２つの自然数からなり、その和が多重化する前の符号長１０から１を引いた値９に等しい
（０，９），（１，８），（２，７），（３，６），（４，５）
の５組の非負整数の組を作る。
（ｂ）８（＝２の３乗）多重であるから、３つの相異なる組のいずれか一方の非負整数をそれぞれ選び、それぞれΔｉ  （但し、ｉ＝１，２，３）とする。ＭＢ３２４０符号化装置の例では、相異なる組として、
（１，８），（２，７），（３，６）
を選び、Δ１  ＝２、Δ２  ＝３、Δ３  ＝１ビットとした。
（ｃ）その３つの非負整数の中から第１と第２の出力サブブロックの位相差にΔ３  、第３と第４の出力サブブロックの位相差にΔ１  、第５と第６の出力サブブロックの位相差及び第７と第８の出力サブブロックの位相差にΔ２  を割り当てる。
８Ｂ／１０Ｂ符号の多重の場合では、符号長が１０ビットであるから、５組の非負整数が確保でき、５段の多重化装置を用いる２の５乗（５＝［１０／２］）、即ち、３２多重までは前述した方法により復号が容易となる。
【０１１２】
一般に、符号長がｎであれば、和がｎ−１である相異なる２つの非負整数の組は、［ｎ／２］組だけ存在するので、（２の［ｎ／２］乗）多重まで適用可能である。位相差の割り当ては、［ｎ／２］個の組の中から相異なるｐ組（ｐは自然数、ｐ≦［ｎ／２］）を選択し、それぞれの組に含まれるいずれか一方の非負整数をそれぞれΔｉ  （ｉは自然数、ｉ＝１，２，３，…ｐ）と定義したときに、第１の出力サブブロックと第２の出力サブブロックとの位相差をΔｐ  とし、第（２ｉ  ＋２ｊ  −１）の出力サブブロックと第（２ｉ  ＋２ｊ  ）の出力サブブロック（ｊは自然数、ｉ＝１，２，３，…，（ｐ−１），ｊ＝１，２，３，…，２ｐ−１  ）との位相差をΔｉ  ビットとすればよい。
【０１１３】
［第３の実施例］
前述した３ビットまたは、４ビットまたは、５ビットまたは、６ビットの位相差によって、ＤＳＶが小さくなる効果は、位相器を用いない図２３の符号化装置構成を用いて、符号器における符号化方法を変更することによっても得ることができる。
【０１１４】
本実施例では、その符号化方法について述べる。それは、符号器３５では、５Ｂ／６Ｂ符号化と３Ｂ／４Ｂ符号化をこの順序で適用する８Ｂ／１０Ｂ符号（８Ｂ／１０Ｂ符号）を出力し、符号器３６では、状態数が２、ＤＳＶが４である３Ｂ／４Ｂ符号化方法と、同じく状態数が２、ＤＳＶが６である５Ｂ／６Ｂ符号化方法をこの順序で適用する８Ｂ／１０Ｂ符号を出力することである。このとき、符号器３５及び符号器３６の出力する８Ｂ／１０Ｂ符号の符号語ビット列とディスパリティの関係を図２４に示す。
【０１１５】
これより、前述の第２の実施例の場合と同様に、ディスパリティの輪郭線の山と谷が一致し、累積ディジタル和（ＲＤＳ）が−５から５の範囲に存在し、ＤＳＶが１０となることがわかる。
【０１１６】
この場合、符号器３５は、８Ｂ／１０Ｂ符号器と同様であるから、符号器３６について詳細に述べる。
【０１１７】
符号器３６は、到来する８ビット（ＡＢＣ  ＤＥＦＧＨ）を符号化のため、２つのサブブロックＡＢＣとＤＥＦＧＨに区分し、それぞれに３Ｂ／４Ｂ符号化則と５Ｂ／６Ｂ符号化則とを適用する。ここでいう２つの符号化則は、特開昭５９−１００５６のものと若干異なるが、これは、符号器３６において、Ｋ．２８．７をコンマ符号として定義するためである。
【０１１８】
表８乃至表９には、符号器３６に用いる３Ｂ／４Ｂ符号表及び５Ｂ／６Ｂ符号表をそれぞれ示す。
【０１１９】
【表８】
0003552632.tif 000011
【０１２０】
【表９】
0003552632.tif 000012
表８及び、表９の表記については、前述の表４と同様である。但し、特開昭５９−１００５６の３Ｂ／４Ｂ符号化則及び５Ｂ／６Ｂ符号化則と区別するために、Ｄは、Ｄ’で置き換えてある。一部変更した５Ｂ／６Ｂ符号表及び３Ｂ／４Ｂ符号表は、制御信号を出力しない点と、Ｄ’．７及びＤ’．ｙ．Ｐ３、Ｄ’．ｙ．Ａ３，Ｄ’．ｙ．Ｐ２８，Ｄ’．ｙ．Ａ２８が異なる。
【０１２１】
符号器３６において、符号語ビットｆから始まる走行長が５のシーケンスは、５Ｂ／６Ｂ符号語に、“１１００００”及び“００１１１１”を用いないことによって、完全に除去され、符号ビットｄから始まる走行長が５のシーケンスは、５Ｂ／６Ｂ符号に原則として、“１１１１００”及び、“００００１１”を用いないことによって、これも完全に除去される。“１１１１００”及び、“００００１１”を用いるときは、符号語ビットｄにいて走行長１に先行される。符号語ビットｂから始まる走行長が５のシーケンスは除去されないが、このシーケンスを含むＫ．２８．７シーケンス“１１０００００１１１”及び“００１１１１１０００”は以下に述べる手法により除去することができる。
【０１２２】
Ｄ’．ｘ．Ｐ３（基本の３）及びＤ’．ｙ．Ａ３（代替の３）ならびに、Ｄ’ｘ．Ｐ２８（基本の２８）及び、Ｄ’．ｙ．Ａ２８（代替の２８）について説明する。これら４つの符号語によって、ｊａｂｃｄｉｄｅｆｇに生じるＫ．２８．７シーケンスを除去することができる。
【０１２３】
Ｄ’．ｙ．Ａ３は、
ａ＝０，ｂ＝ｃ＝ｉ＝１のとき、
Ｄ’．ｘ．Ｐ３の代替として用いられ、Ｄ’．ｙ．Ａ２８は、
ａ＝１，ｂ＝ｃ＝ｉ＝０のとき、
Ｄ’．ｘ．Ｐ２８の代替として用いられる。これにより、Ｋ．２８．７をコンマ符号として利用することが可能となる。
【０１２４】
これらの２つの符号化則から得られた８Ｂ／１０Ｂ符号表を表１０に示す。表記については、前述の表１と同様である。
【０１２５】
【表１０】
0003552632.tif 000013
以上、２つの符号器から得られるＭＢ１６２０符号の一部を表１１に示す。
【０１２６】
【表１１】
0003552632.tif 000014
第１の欄「名称」において、表記については、ＤがＤ’に置き換えられている点を除いては、前述の表７と同様である。
【０１２７】
特許第２６８４８１５号は、実施例において、複数のＤＳＶが有限値である符号を多重化している一例を挙げて復号の際に多重分離した複数のストリームの位相差をバッファを設けて吸収する手段について述べているが、これは、安価な低速の回路を用いて高速な伝送速度を実現するために多重化しているのであって、偶数のビット多重に限定することによって本発明で述べた効果が生じることには全く触れていない。
【０１２８】
また、本発明は、上記の第１から第３の実施例に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【０１２９】
【発明の効果】
上述のように、本発明によれば、ＭＢ符号を生成するためには、符号化方法として、ＡＳＶを考慮した新たな符号化方法を用いるのではなく、ＤＳＶを有限値とする偶数個の符号をビット多重する方法を採用すればよく、回路構成が簡単なＭＢ符号化装置を構成することができる。
【図面の簡単な説明】
【図１】本発明の原理構成図である。
【図２】ＢＵＤＡセルを示す図である。
【図３】マンチェスタ符号を二重化して得られるＭＢ２４符号ＢＵＤＡスタックを示す図である。
【図４】本発明の第１の実施例の２つの８Ｂ／１０Ｂ符号器を備えたＭＢ１６２０符号化装置の構成及びデータの流れを示す図である。
【図５】本発明の第１の実施例の８Ｂ／１０Ｂ符号出力の符号語ビットとディスパリティ値の関係を示す図である。
【図６】本発明の第１の実施例の８Ｂ／１０Ｂ符号を単純に二重化したときに得られるＭＢ１６２０符号のＢＵＤＡスタックを示す図である。
【図７】本発明の第１の実施例のＭＢ１６２０符号と８Ｂ／１０Ｂ符号のパワースペクトルの差異を示す図である。
【図８】本発明の第２の実施例の２つの符号器のいずれか一方に位相器を備えたＭＢ１６２０符号化装置の構成及びデータの流れを示す図である。
【図９】本発明の第２の実施例の８Ｂ／１０Ｂ符号の位相関係及び符号語ビット列とディスパリティ値の関係を示す図である。
【図１０】本発明の第２の実施例の２つの符号器のいずれか一方に位相器を備えたときのＭＢ１６２０符号出力ストリームのＢＵＤＡスタックを示す。
【図１１】本発明の第２の実施例のＭＢ１６２０符号化装置における位相差とＭＢ１６２０符号出力ストリームのＤＳＶ及び最大走行長との関係を示す図である。
【図１２】本発明の第２の実施例のＤＳＶが有限値である符号を４多重した例を示す図である。
【図１３】本発明の第２の実施例のＭＢ３２４０復号装置の概要を示す図である。
【図１４】本発明の第２の実施例のＭＢ１６２０復号装置におけるサブストリーム識別の概要を示す図である。
【図１５】本発明の第２の実施例のＭＢ３２４０符号化装置の概要を示す図である。
【図１６】本発明の第２の実施例のＭＢ３２４０符号の最大走行長が１７であり、ＤＳＶが１８となる位相差を示す図である。
【図１７】本発明の第２の実施例のＭＢ３２４０復号装置におけるサブストリーム識別の概要を示す図（その１）である。
【図１８】本発明の第２の実施例のＭＢ３２４０復号装置におけるサブストリーム識別の概要を示す図（その２）である。
【図１９】本発明の第２の実施例のＭＢ３２４０復号装置におけるサブストリーム識別の概要を示す図（その３）である。
【図２０】本発明の第２の実施例のＭＢ３２４０復号装置におけるサブストリーム識別の概要を示す図（その４）である。
【図２１】本発明の第２の実施例のＭＢ６４８０符号化装置の概要を示す図である。
【図２２】本発明の第２の実施例のＭＢ６４８０復号装置の多重分離部の構成図である。
【図２３】本発明の第３の実施例の８Ｂ／１０Ｂ符号器と一部を変更した８Ｂ／１０Ｂ符号器とを備えたＭＢ１６２０符号化装置の概要を示す図である。
【図２４】本発明の第３の実施例の８Ｂ／１０Ｂ符号出力と一部を変更した８Ｂ／１０Ｂ符号出力の符号語ビット列とディスパリティ値の関係を示す図である。
【図２５】従来のＭＢ符号化装置の概念図である。
【図２６】ＭＢ３４ＢＵＤＡスタックを示す図である。
【図２７】ＭＢ８１０ＢＵＤＡスタックを示す図である。
【符号の説明】
４  多重分離装置
５  復号器
６  復号器
７  出力サブブロック
８  出力サブブロック
１１  直列データストリーム
１２  分離手段
１３，１４  入力データサブストリーム
１５，１６  符号化手段
１９  多重化手段
２１  直列データストリーム
２２  分離器
２５，２６  符号器
２７  第１の出力サブブロック
２８  第２の出力サブブロック
２９  位相器
３２  分離器
３５、３６  符号器
３９  多重化装置
５０，６０  符号器
７１〜７４  符号器
８１〜８４  位相器
１０９〜１１２  出力サブブロック
１１７〜１２０  出力サブブロック
１４０，１５０，１６０，１９０  多重分離装置
２１０，２２０，２３０  多重化装置
３０９〜３１６  符号器
３３３〜３３６  多重化装置
３４１、３４２  多重化装置
３４５  多重化装置
４０９〜４１２  多重分離装置
４１７、４１８、４２１  多重分離装置
【図１】
0003552632.tif 000015
【図２】
0003552632.tif 000016
【図３】
0003552632.tif 000017
【図４】
0003552632.tif 000018
【図５】
0003552632.tif 000019
【図６】
0003552632.tif 000020
【図７】
0003552632.tif 000021
【図８】
0003552632.tif 000022
【図９】
0003552632.tif 000023
【図１０】
0003552632.tif 000024
【図１１】
0003552632.tif 000025
【図１２】
0003552632.tif 000026
【図１３】
0003552632.tif 000027
【図１４】
0003552632.tif 000028
【図１５】
0003552632.tif 000029
【図１６】
0003552632.tif 000030
【図１７】
0003552632.tif 000031
【図１８】
0003552632.tif 000032
【図１９】
0003552632.tif 000033
【図２０】
0003552632.tif 000034
【図２１】
0003552632.tif 000035
【図２２】
0003552632.tif 000036
【図２３】
0003552632.tif 000037
【図２４】
0003552632.tif 000038
【図２５】
0003552632.tif 000039
【図２６】
0003552632.tif 000040
【図２７】
0003552632.tif 000041