JP2008526170A - 16b/10s符号化装置および方法 - Google Patents
16b/10s符号化装置および方法 Download PDFInfo
- Publication number
- JP2008526170A JP2008526170A JP2007549535A JP2007549535A JP2008526170A JP 2008526170 A JP2008526170 A JP 2008526170A JP 2007549535 A JP2007549535 A JP 2007549535A JP 2007549535 A JP2007549535 A JP 2007549535A JP 2008526170 A JP2008526170 A JP 2008526170A
- Authority
- JP
- Japan
- Prior art keywords
- bit
- codeword
- symbols
- encoding
- character
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4906—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
- H04L25/4908—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using mBnB codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4917—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes
Landscapes
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Dc Digital Transmission (AREA)
- Debugging And Monitoring (AREA)
- Error Detection And Correction (AREA)
- Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
Abstract
2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、伝送デジタル信号の品質を改善するためのシステムおよび方法は、N個のビットからなる組によって表されるデジタル値を符号化して、P個のシンボルからなる対応する組を得るステップを含み、P個のシンボルからなる各組は、フル振幅遷移を減少させ、連続するデジタル信号伝送の間のDCバランシングを実行するように選択される。システムおよび方法はさらに、P個のシンボルからなる組を単一伝送媒体を介して伝送するステップも含む。代替構成では、クロックデータ回復およびカンマ挿入が、付加的に提供されることができる。
Description
本発明は一般に、符号化に関し、より詳細には、シリアル伝送媒体を介してデータおよび制御情報を送信および受信するために、PAM−4などの多値信号方式(multi−level signaling)技法を利用する符号化方式に関する。
現代の通信システムでは、単方向高速シリアルリンクが、モジュール化システムにおける基板上のチップ間または基板間の通信用にしばしば利用される。これに関して、先行世代および現行世代の高速シリアルリンクは、ほとんど一致して、2値NRZ信号方式(非ゼロ復帰信号方式)を利用している。
しかし、多値信号方式は伝送媒体を通り抜けるために必要とされる基本周波数を低減するので、シリアル通信リンクの速度がギガビットの範囲にまで高まると、設計者たちは、多値信号方式を支持して、シリアルリンク上でのNRZ符号化を断念することを次第に考えるようになってきた。そのような一般的な多値信号方式の1つは、4−PAMまたはPAM−4としても知られる4値信号方式である。
Stonick他の米国特許公開第2003/0108134号は、PAM−n技法を使用してデジタル通信データを符号化および復号するための方法および装置について説明している。Stonick他の文献では、2つの最も極端な信号レベルの間の遷移は、符号化系列において除去される。
Stonecypher他の米国特許公開第2004/0109509号は、N個のビットからなる組が、P個のシンボルからなる対応する組を提供すべく符号化され、またP個のシンボルからなる組の各々が、連続するデジタル信号伝送の間のフル振幅(full−swing)遷移を除去するように選択されることによって、多値信号方式システムにおいてデジタル信号の品質を改善するための技法について説明している。
Franaszek他の米国特許第4486739号は、5b/6b符号器と3b/4b符号器とに分割される8b/10b符号器を使用するバイト指向のDCバランシング(DC balancing)技法について説明している。8b/10b符号化方式は、今日の通信システムにおいて一般に利用されている方式である。
高速シリアルリンク上で伝送される前に、データは、信頼性のある通信に必要とされるいくつかの特性を獲得するために符号化される必要がある。
1.受信クロックデータ回復回路がビットストリームから適切な受信クロックを抽出可能であることを保証するために、一定のビット遷移密度(bit transition density)が必要とされる。
2.データはビットの連続ストリームとして受信機に提供されるので、受信機は、ビットストリーム内のデータワードの境界を推測し得る何らかの情報を必要とする。
3.大部分の高速シリアルリンクはAC結合で動作するので、すなわち、送信機と受信機の間の経路内でDCブロッキングキャップ(DC−blocking cap)を利用するので、伝送ビットストリームは、DCバランスが取られる必要がある。
4.多値信号方式を利用する高速シリアルリンク上では、外側信号レベルの間の直接遷移の除去は、伝送信号の最大電圧振幅および最大勾配を減少させ、これにより、周波数成分を減少させ、反射および漏話を僅かにするので、そのような直接遷移はどれも除去することが有利なことがある。
1.受信クロックデータ回復回路がビットストリームから適切な受信クロックを抽出可能であることを保証するために、一定のビット遷移密度(bit transition density)が必要とされる。
2.データはビットの連続ストリームとして受信機に提供されるので、受信機は、ビットストリーム内のデータワードの境界を推測し得る何らかの情報を必要とする。
3.大部分の高速シリアルリンクはAC結合で動作するので、すなわち、送信機と受信機の間の経路内でDCブロッキングキャップ(DC−blocking cap)を利用するので、伝送ビットストリームは、DCバランスが取られる必要がある。
4.多値信号方式を利用する高速シリアルリンク上では、外側信号レベルの間の直接遷移の除去は、伝送信号の最大電圧振幅および最大勾配を減少させ、これにより、周波数成分を減少させ、反射および漏話を僅かにするので、そのような直接遷移はどれも除去することが有利なことがある。
NRZ信号方式を使用する高速シリアルリンクの場合、Franaszek他で説明されているものなどの8b/10b符号化方式は、(そのようなリンクでは特性#4は適用可能でないので)特性#1〜#3を提供する符号化方式を提供する。
しかし、8b/10b符号化方式は、4−PAM信号方式を使用する高速シリアルリンク上では高い遷移密度またはDCバランシングを保証しないので、そのようなリンク上での使用には適していない。Stonecypher他で説明されている4S/5S符号化方式も、DCバランシングを提供しない。PAM−4システムに関するクロックデータ回復(clock data recovery)の問題は、「Equalization and Clock Recovery for a 2.5−10Gb/s 2−PAM/4−PAM Backplane Transceiver Cell」で説明されており、この文献は、符号間干渉に対処するための等化構成について説明している。
したがって、上記の要件に関して、4−PAM、8−PAM、またはその他のタイプの多値符号化リンクの特殊な要件に適した新しい符号化方式が必要とされる。
本発明は、上で説明された1つまたは複数の問題の影響を克服すること、または少なくとも軽減することに関する。
本発明の一態様によれば、2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、伝送デジタル信号の品質を改善するための方法が提供され、前記方法は、N個のビットからなる組によって表されるデジタル値を、P個のシンボルからなる対応する組を提供すべく符号化するステップを含み、P個のシンボルからなる各組は、フル振幅遷移を減少させ、連続するデジタル信号伝送の間のDCバランシングを実行するように選択される。前記方法は、P個のシンボルからなる組を伝送するステップも含み、NおよびPは、整数値である。
本発明の別の態様によれば、単一伝送媒体を介して伝送されるデジタル信号についてのDCバランシングを提供するための方法が提供され、前記方法は、複数の符号語ペアを含む符号語空間を定義するステップを含み、符号語ペアの各々は、データのN個のビットからなる組を等しく表すことができる、正の重みをもつ符号語と負の重みをもつ符号語とを含み、各符号語ペアの正および負の重みをもつ符号語は、振幅が等しく、Nは、正の整数値である。前記方法は、単一伝送媒体上のカレントディスパリティ(current disparity)を決定するステップも含む。前記方法はさらに、前記決定に基づいて、カレントディスパリティがゼロにより近くなるように、対応する符号語ペアの一方を、データのN個のビットからなる組に割り当てるステップを含む。前記方法はまたさらに、複数のシンボルとして割り当てられた対応する符号語ペアの一方を単一伝送媒体上で伝送するステップを含む。
本発明のまた別の態様によれば、2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送する方法が提供される。前記方法は、2つの連続するNビットキャラクタによって表されるデジタル値を、Rビット符号語に符号化するステップを含み、Rビット符号語は、フル振幅を減少させるように構成され、Nビットキャラクタの各々は、Nビットキャラクタの各々に関連付けられたQビットタグに基づいて、データまたは制御情報のどちらかとして指定される。前記方法は、Rビット符号語を複数のPAM−Lシンボルとして単一伝送線路上で伝送するステップも含み、L、N、R、およびQは、正の整数値であり、Rビット符号語は、2つの連続するNビットキャラクタのうちの第1のキャラクタおよびその関連Qビットタグに対応する第1のフィールドと、2つの連続するNビットキャラクタのうちの第2のキャラクタおよびその関連Qビットタグに対応する第2のフィールドと、第1および第2のフィールドの間に提供され、2つの連続するNビットキャラクタおよびそれらの関連Qビットタグの関数である第3のフィールドとを含む。
本発明のまたさらに別の態様によれば、2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送するための方法が提供される。前記方法は、N個のビットからなる組によって表されるデジタル値を、P個のシンボルからなる対応する組を提供すべく符号化するステップを含み、P個のシンボルからなる各組は、PAM−L符号化方式において、P個のシンボルからなる組の中の隣り合うシンボルの間で少なくとも1つの1ステップ遷移を提供するように選択される。前記方法はさらに、P個のシンボルからなる組を単一伝送線路上で伝送するステップを含み、NおよびPは、整数値であり、Lは、4に等しいまたは4の整数倍の整数値である。
本発明のまたさらに別の態様によれば、単一伝送媒体を介して伝送されるデジタル信号についてのDCバランシングを提供するためのシステムが提供される。前記システムは、複数の符号語ペアを含む符号語空間を定義するように構成される定義ユニットを含み、符号語ペアの各々は、データのN個のビットからなる組を等しく表すことができる、正の重みをもつ符号語と負の重みをもつ符号語とを含み、各符号語ペアの正および負の重みをもつ符号語は、振幅が等しく、Nは、正の整数値である。前記システムはさらに、単一伝送媒体上のカレントディスパリティを決定するように構成される決定ユニットを含む。前記システムは、決定ユニットによって下された決定に基づいて、カレントディスパリティがゼロにより近くなるように、対応する符号語ペアの一方を、データのN個のビットからなる組に割り当てるように構成される割り当てユニットも含む。前記システムはさらに、割り当てユニットによって複数のシンボルとして割り当てられた対応する符号語ペアの一方を単一伝送媒体上で伝送するように構成される伝送ユニットを含む。
本発明の別の態様によれば、2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送するためのシステムが提供される。前記システムは、2つの連続するNビットキャラクタによって表されるデジタル値を、2Nビット符号語に符号化するように構成される符号化ユニットを含み、2Nビット符号語は、フル振幅を減少させるように構成され、Nビットキャラクタの各々は、Nビットキャラクタの各々に関連付けられたQビットタグに基づいて、データまたは制御情報のどちらかとして指定される。前記システムはさらに、2Nビット符号語をRビット符号語にマッピングするように構成されるマッピングユニットを含み、Rビット符号語は、2つの連続するNビットキャラクタのうちの第1のキャラクタおよびその関連Qビットタグに対応する第1のフィールドと、2つの連続するNビットキャラクタのうちの第2のキャラクタおよびその関連Qビットタグに対応する第2のフィールドと、第1および第2のフィールドの間に配置され、2つの連続するNビットキャラクタおよびそれらの関連Qビットタグの関数である第3のフィールドとを含み、N、R、およびQは、正の整数値である。
本発明のまたさらに別の態様によれば、2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、伝送デジタル信号の品質を改善するためのシステムが提供される。前記システムは、2つの連続するNビットキャラクタによって表されるデジタル値を、Rビット符号語に符号化するように構成される符号化ユニットを含み、Rビット符号語は、フル振幅を減少させるように構成され、Nビットキャラクタの各々は、Nビットキャラクタの各々に関連付けられたQビットタグに基づいて、データまたは制御情報のどちらかとして指定される。前記システムは、Rビット符号語を複数のPAM−Lシンボルとして出力するように構成される伝送ユニットも含み、L、N、R、およびQは、正の整数値であり、Rビット符号語は、2つの連続するNビットキャラクタのうちの第1のキャラクタおよびその関連Qビットタグに対応する第1のフィールドと、2つの連続するNビットキャラクタのうちの第2のキャラクタおよびその関連Qビットタグに対応する第2のフィールドと、第1および第2のフィールドの間に提供され、2つの連続するNビットキャラクタおよびそれらの関連Qビットタグの関数である第3のフィールドとを含む。
本発明のまたさらに別の態様によれば、2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送するためのシステムが提供される。前記システムは、N個のビットからなる組によって表されるデジタル値を、P個のシンボルからなる対応する組を提供すべく符号化するように構成される符号化ユニットを含み、P個のシンボルからなる各組は、PAM−L符号化方式において、P個のシンボルからなる組の中の隣り合うシンボルの間で少なくとも1つの1ステップ遷移を提供するように選択される。前記システムは、P個のシンボルからなる組を単一伝送線路上で伝送するように構成される伝送ユニットも含み、NおよびPは、整数値であり、Lは、4または4の整数倍に等しい整数値である。
本発明の上記の利点および特徴は、以下の詳細な説明と添付の図面を参照することで明らかになるであろう。
本発明の少なくとも一態様は、多値(例えば、PAM−4)信号を使用する高速シリアルリンク上で使用するために必要な要件を満たす符号化方式に関し、それらの要件は、先に説明された4つの要件を含む。特に、本発明の少なくとも一実施形態は、1つまたは複数の以下の特性を有する16b/10sコーデックシステムおよび方法に関し、すなわち、システムおよび方法は、a)PAM−4リンクにとって適しており、b)2つの独立したPビットキャラクタを、2つのキャラクタの組み合わせに制約を課さずに、単一のNビットシンボルに符号化し、c)符号間および符号内の両方について完全なフル振幅除去を提供し、d)高品質CDRを保証するために高いビット遷移密度を提供し、e)決定論的DCバランシングを提供し、f)従来のシステムおよび方法で行われたような試行錯誤手法を必要とせずにデータワード境界を直接指定する一意的カンマを提供し、g)デジタルハードウェアの効率的実装(例えば、少ないゲート数および高い動作周波数)を提供する。
本発明の実施形態を詳細に説明する前に、本発明の態様の理解を助けるために、4−PAM信号方式、フル振幅除去、ビット遷移密度、およびDCバランシングについての以下に簡単に説明する。
NRZ信号方式は、例えば、図1Bに示されるように、低電圧が論理0を意味し、高電圧が論理1を意味する、ただ2つの信号レベルを使用する。他方、4−PAM信号方式は、図1Aに示されるように、4つの信号レベルを使用してシンボル当たり2ビットを伝送するために使用される方法である。図1Aおよび図1Bでは、Vswは、伝送線路上の様々な論理レベルの間の最大電圧振幅を示す。値「t」は、NRZの場合のシンボル周期を示し、4−PAMの場合のシンボル周期は、(シンボル当たり2ビットを有するので)2tである。
4−PAM信号方式における各レベルは、2ビット値を割り当てられる。図1Aでは、特定のグレイコード表現が使用されているが、その他の表現が代わりに使用されることもできる。しかし、グレイコード表現の使用は、2つの隣り合う信号レベルに関するビット定義は単一のビット位置が異なるだけなので、隣接レベルに対して1レベルだけ誤った場合、単一ビット誤りが導入されるに過ぎないという利点を有する。4−PAM信号方式でグループ化される2つのビットは、2ビットシンボルと呼ばれる。
2つの2ビットシンボル00および10は、最外2ビットシンボルと呼ばれ、一方、2つの2ビットシンボル01および11は、中間レベル2ビットシンボルと呼ばれる。
ギガヘルツ範囲で動作する高速シリアルリンクでは、十分に低いビット誤り率(BER)を達成するのに必要とされるシグナルインテグリティを保つために、反射を絶対最小に維持することが重要である。これは、すべてのフル振幅、すなわち、一方の最外電圧レベルから他方の最外電圧レベルへの直接遷移を除去することを保証する符号化方式によって支援される。図1Aを参照すると、これは、00レベルから10レベルへの直接遷移またはその反対の直接遷移が存在すべきでないことを意味する。
これを保証する符号化方式は、フル振幅除去(FSE:Full−Swing Elimination)を実行すると言われる。一方の最外電圧レベルから他方の最外電圧レベルへの直接遷移はどれも、フル振幅違反(FSV:Full−Swing Violation)と呼ばれる。
受信機は、位相ロックループ(PLL)をデータストリーム内の遷移にロックすることによって、データストリーム自体から受信クロックを抽出する必要がある。これは通常、クロックデータ回復(CDR:Clock−Data−Recovery)と呼ばれる。これが高い信頼性で機能するには、受信機において一定のビット遷移密度が必要とされ、さもないと、PLLはドリフトすることがあり、誤ったデータの捕捉をもたらす。抽出要件は、受信機内のクロックデータ回復回路と、それが扱う必要のある百万分率(ppm)偏差とに依存する。
4−PAMリンクの場合、この要件は、NRZの場合よりも多少微妙である。例えば、NRZリンク上のCDRにとっては問題のないビット系列・・・1010101010101010・・・は、4−PAMリンク上では、(2ビットシンボル境界に応じて、01レベルまたは10レベルどちらかの)一定のレベルにマッピングされるので、使用可能でない。さらに、CDR回路がジッタを誘導するのを防止するため、単一レベル変化だけがCDR用に使用され、これは、6つの1ステップ遷移00/01、01/11、および11/10に対応する。
DCバランシングは、AC結合シリアルリンクの受信機における電圧が、時間とともに、受信機のコモンモード範囲の外にドリフトしないことを保証するプロセスである。これは、伝送されるビットストリームが、長期間にわたって一定の正または負の偏りを有する場合に発生する。4−PAMシリアルリンク上のビット系列のDC特徴を分析する目的で、4つの信号レベルは、以下に示される重み、すなわち、+3、−3、+1、または−1に関連付けられる。
・10:+3
・11:+1
・01:−1
・00:−3
・10:+3
・11:+1
・01:−1
・00:−3
重み値は、任意に選択することができるが、物理的な信号レベルが等間隔に配置されるので、どの2つの隣り合うレベルの間の重み距離も一定(この例では2)である。実際の実装では、生産誤差のため、アイハイト(eye height)は一般に、正確に同じではない。これは、非ゼロ値を有する完全にDCバランスが取られた符号化方式のコモンモード電圧をもたらす。この誤差が適度に小さい限り、受信機の性能には影響しない。
以下の説明は、4−PAM信号方式を利用する高速シリアルリンク上での使用に適した符号化方式のための特定の要件を、少なくとも一実施形態に関して詳細に説明する。先に説明された電気的要件に加えて、符号化方式は、以下で略述されるように、高速シリアルリンク上を伝送される実際のデータ内容に関するその他の能力も有するべきである。
符号化方式は、データを伝送するのと同じ物理的な高速シリアルリンクで、データパケットデリミタなどの付加的な制御情報を透過的に伝送できるべきである。したがって、データから容易に区別可能な付加的な制御情報を符号化することが必要である。「キャラクタ」という用語は、(一般に28=256通りの可能な値をもつバイトである)「データキャラクタ」または(少数の可能な値をもつ)「制御キャラクタ」のどちらかを意味するために定義される。高速シリアルリンクは、符号化キャラクタ系列を伝送する。
従来の8b/10bコーデックは、256個のデータキャラクタと、12個の制御キャラクタとを定義する。本発明の実施形態は、(未符号化)キャラクタレベルで8b/10bコーデックと互換性のある4−PAM符号化方式を提供する。そのため、従来の8b/10bシステム/方法から本発明の一実施形態によるシステム/方法への変換は、相対的に簡単な方法で行われることができる。
全体として、4−PAM符号化方式を利用する高速シリアルリンクで使用するための符号化方式は、以下に列挙する要件を一般に満たす。
1.フル振幅除去(FSE)を実行する。
a.00から10(−3から+3)への、または10から00(+3から−3)への遷移がない。
2.高い遷移密度を保証する。
a.例えば、発明者によって決定された経験的データに基づいて、2つの有効なCDR遷移の間の距離は、たかだか40ビット(20個の2ビットシンボル)であるべきである。
3.決定論的DCバランシングを保証する。
a.例えば、発明者によって決定された経験的データに基づいて、DCレベルは、最大でも、10個の連続する同一の最外2ビットシンボルペア(例えば、00 00 00 00 00 00 00 00 00 00)(すなわち、20ビット相当のデータ)を有することによって引き起こされる大きさだけ偏移させられ得るに過ぎないことが決定される。
4.受信機は、リンク同期を達成できる、すなわち、ある種のカンマキャラクタを含む正常な(well-behaved)データストリームに基づいて、つまり従来のシステムで行われるような明示的なリンクトレーニング系列を必要とせずに、受信データを正しく復号できるべきである。
5.従来の8b/10bキャラクタセットの符号化をサポートする。
a.256個のデータキャラクタ。
b.12個の制御キャラクタと、復号誤りを強制する第13の制御キャラクタ。K0.7として知られる第13の制御キャラクタは、元の8b/10bキャラクタセットの拡張であり、その他の点では符号化方式の特性に違反することなく、受信機において復号誤りを決定論的に強制するために、送信機によって使用される。
c.16b/10s符号化方式におけるカンマ特性だけに基づいて受信機における容易な境界合わせを促進するために、少なくとも1つの8b/10bカンマは、このカンマ特性を有するべきである。カンマが1つだけサポートされる場合、それは好ましくはK28.5である。
6.符号器および復号器のデジタルハードウェアでの効率的な実装。
上記の要件は望ましいが、本発明の範囲に包含されるすべての実施形態のために、そのすべてが必要とされるわけではない。
1.フル振幅除去(FSE)を実行する。
a.00から10(−3から+3)への、または10から00(+3から−3)への遷移がない。
2.高い遷移密度を保証する。
a.例えば、発明者によって決定された経験的データに基づいて、2つの有効なCDR遷移の間の距離は、たかだか40ビット(20個の2ビットシンボル)であるべきである。
3.決定論的DCバランシングを保証する。
a.例えば、発明者によって決定された経験的データに基づいて、DCレベルは、最大でも、10個の連続する同一の最外2ビットシンボルペア(例えば、00 00 00 00 00 00 00 00 00 00)(すなわち、20ビット相当のデータ)を有することによって引き起こされる大きさだけ偏移させられ得るに過ぎないことが決定される。
4.受信機は、リンク同期を達成できる、すなわち、ある種のカンマキャラクタを含む正常な(well-behaved)データストリームに基づいて、つまり従来のシステムで行われるような明示的なリンクトレーニング系列を必要とせずに、受信データを正しく復号できるべきである。
5.従来の8b/10bキャラクタセットの符号化をサポートする。
a.256個のデータキャラクタ。
b.12個の制御キャラクタと、復号誤りを強制する第13の制御キャラクタ。K0.7として知られる第13の制御キャラクタは、元の8b/10bキャラクタセットの拡張であり、その他の点では符号化方式の特性に違反することなく、受信機において復号誤りを決定論的に強制するために、送信機によって使用される。
c.16b/10s符号化方式におけるカンマ特性だけに基づいて受信機における容易な境界合わせを促進するために、少なくとも1つの8b/10bカンマは、このカンマ特性を有するべきである。カンマが1つだけサポートされる場合、それは好ましくはK28.5である。
6.符号器および復号器のデジタルハードウェアでの効率的な実装。
上記の要件は望ましいが、本発明の範囲に包含されるすべての実施形態のために、そのすべてが必要とされるわけではない。
本発明の第1の実施形態によるPAM−4符号化方式の設計について、以下で詳細に説明する。ブロック指向の符号器は、データストリームを等しいサイズの符号語に変換する。「ディスパリティ」という用語は、符号語の重みを指すために使用される。符号語の重みは、2ビットシンボルの重みの和である。「カレントディスパリティ」という用語は、シリアルリンク上の現在のDC不平衡に対して使用される。ディスパリティおよびカレントディスパリティは共に、正の整数もしくは負の整数またはゼロ(0)であることができる。
従来の8b/10b符号化方式によって操作される未符号化データストリームは、256個のデータキャラクタと、13個の制御キャラクタとを含むキャラクタセットから成り、これは、8個のデータビット(D7〜D0)と、キャラクタがデータキャラクタ(Z=0)か、それとも制御キャラクタ(Z=1)かを決定する単一の制御ビット(Z)とを表す。Z=1である場合、8b/10b符号化方式で指定されるように、D7〜D0上で可能な256個の値の中の13個だけが有効である。先に説明したように、第13の制御キャラクタ(K0.7)は、元の8b/10b符号化方式の拡張であり、符号器だけによって認識され、それによって、受信機において復号誤りを引き起こす。未符号化データのこの表現は、以下では単に「キャラクタ」と呼ばれる。
8b/10b符号器は、これらの8+1ビットキャラクタの各々を10ビット符号語に変換する。本発明の少なくとも一実施形態では、これらの符号語の大多数は、正のディスパリティをもつ形と負のディスパリティをもつ形の2つの異なる形で存在し、符号器は、DCバランスの取れた状態にリンクを維持するために、カレントディスパリティに基づいて、どちらの形が使用されるべきかを選択する。
8b/10b符号のようなNRZ符号の場合、原理的には、210=1024個の符号語のすべてが有効である。これらの符号語のいくつかは、適切なビット遷移密度を保証するため、または特定のカンマ属性を維持することを保証するために、使用することができないが、8b/10b符号の存在は、DCバランスが取られた符号化方式が適切に定義され得る十分な組み合わせが存在することを明白に示している。
4−PAM符号化方式に関するFSE基準は、(5つの連続する2ビットシンボルに対応する)10ビット符号語のすべてが有効であるわけではないことを意味している。加えて、単一の符号語がどのようなFSVも引き起こさないことを保証するだけでは十分でなく、どのような符号語にどのような他の有効な符号語が先行しても、または後続しても、FSVが発生しないこと、すなわち、符号語境界でFSVが発生しないことを保証することも必要である。
符号語境界でのFSVの可能性を排除するため、本発明は、すべての符号語を、中間レベルの2ビットシンボルの一方(01または11)で開始するように定義する。このことを仮定した場合、以下のようになることが分かる。
・FSVを引き起こさない01xxxxxxxx形式の178個の有効な符号語が存在する。
・FSVを引き起こさない11xxxxxxxx形式の178個の有効な符号語が存在する。
・FSVを引き起こさない01xxxxxxxx形式の178個の有効な符号語が存在する。
・FSVを引き起こさない11xxxxxxxx形式の178個の有効な符号語が存在する。
FSEを有する符号化方式を定義するにはこれで十分であるが、そのような符号化方式をDCバランスが取れたものにするには、(重みゼロの符号語を考慮しなくても)約2×(256+13)個の異なる符号語を必要とし、有効な符号語の数が十分ではないかもしれない。
したがって、新しい符号化方式に対してDCバランシングを保証するには、10ビットより大きな符号語を操作する符号化方式を定義することが必要である。したがって、8b/10b符号化方式と同じ25%の符号化オーバーヘッドを仮定した場合、次のステップは、(各々8+1ビットで表される)2つのキャラクタを単一の20ビット符号語にマッピングする符号化方式を定義することである。4−PAMリンク上で20ビットは10個の連続する2ビットシンボルによって表されるので、本発明は、そのような符号化方式を定義するために「16b/10s」という用語を使用する。
16b/10s符号化方式は、「キャラクタペア」と呼ばれる2つの独立したキャラクタを操作する。キャラクタペア内の各キャラクタは、256個のデータキャラクタおよび13個の制御キャラクタのうちの1つとすることができる。したがって、16b/10s符号化方式が異なる有効な符号語にマッピングしなければならないキャラクタペアの組み合わせが、(256+13)2=72361個存在する。
符号語境界におけるFSVの可能性を排除するため、第1の実施形態の好ましい実装は、中間レベルの2ビットシンボルの一方(01または11)で開始するように、すべての符号語を定義する。本教示に基づいて当業者であれば理解されるように、本発明の主旨および範囲から逸脱することなく、その他の符号化方式も可能である。第1の実施形態の好ましい実装では、以下のように決定される。
・FSVを引き起こさない01xxxxxxxxxxxxxxxxxx形式の102010個の有効な符号語が存在する。
・FSVを引き起こさない11xxxxxxxxxxxxxxxxxx形式の102010個の有効な符号語が存在する。
・FSVを引き起こさない01xxxxxxxxxxxxxxxxxx形式の102010個の有効な符号語が存在する。
・FSVを引き起こさない11xxxxxxxxxxxxxxxxxx形式の102010個の有効な符号語が存在する。
DCバランシングに関して、各符号語は、正、負、またはゼロ(0)のディスパリティを有する。好ましい実施形態の好ましい実装による符号化方式は、一方が正のディスパリティP+をもち、もう一方が負のディスパリティP−=−P+をもつ2つの有効な符号語を、キャラクタペアの各々が有するように定める。−0=+0であるので、ゼロのディスパリティをもつ符号語は、別の符号語とペアにされる必要はない。その後、DCバランスは、第1の実施形態の好ましい実装による以下のアルゴリズムによって達成される。
・カンレトディスパリティが正であるならば、負のディスパリティP−をもつ符号語を選択する。
・カンレトディスパリティが負であるならば、正のディスパリティP+をもつ符号語を選択する。
・カンレトディスパリティがゼロであるならば、符号語P−とP+のどちらかを選択する。
・カンレトディスパリティが正であるならば、負のディスパリティP−をもつ符号語を選択する。
・カンレトディスパリティが負であるならば、正のディスパリティP+をもつ符号語を選択する。
・カンレトディスパリティがゼロであるならば、符号語P−とP+のどちらかを選択する。
符号語の最大の正のディスパリティがPmaxであり、符号語の最大の負のディスパリティがPmin=−Pmaxであると仮定する。したがって、発生し得るカンレトディスパリティ(DC不平衡)に関する最悪ケースの値は、PminおよびPmaxである。
キャラクタペアに関連付けられるあらゆる符号語に対して、ディスパリティP−をもつ符号語とディスパリティP+をもつ符号語の間の関係が、第1の実施形態の好ましい実装において定義される。2ビットシンボルのMSbを反転することによって定義される、2ビットシンボル間の以下の変換を考える。
・00(−3)⇔10(+3)
・01(−1)⇔11(+1)
・00(−3)⇔10(+3)
・01(−1)⇔11(+1)
この変換が、16b/10s符号語C内に存在する10個の2ビットシンボルの各々において独立に実行される場合、符号語Cは、反対符号のディスパリティを有する別の符号語C'に変換される。さらに、FSVを引き起こさないことに関して、符号語Cが有効であるならば、符号語C'も有効である。これは、符号語C'の境界でさえも成り立つ。符号語の少なくとも一方が境界に中間レベルの2ビットシンボルの一方をもち、中間レベルの2ビットシンボルは互いに他方に変換されるために、FSVが境界で発生し得ないという定義により、FSVが境界において除去されるからである。
この方法を適用することによって、先に説明された各102010個の有効な符号語からなる2つのグループの間に、全単射関係が確立されることができる。
キャラクタペアを20ビット符号語にマッピングするDCバランスが取られた16b/10s符号化方式が開発された。その符号化は、以下のように定義されることができる。
・各キャラクタペアは、01xxxxxxxxxxxxxxxxxx形式の有効な符号語にマッピングされる。
・(伝送線路上のカンレトディスパリティに基づいて)反対のディスパリティ符号をもつ符号語が必要とされる場合、11xxxxxxxxxxxxxxxxxx形式の対応する符号語が選択される。
・各キャラクタペアは、01xxxxxxxxxxxxxxxxxx形式の有効な符号語にマッピングされる。
・(伝送線路上のカンレトディスパリティに基づいて)反対のディスパリティ符号をもつ符号語が必要とされる場合、11xxxxxxxxxxxxxxxxxx形式の対応する符号語が選択される。
したがって、16b/10s符号化方式のさらなる改善において、DCバランシング特性を無視することができ、すべてのキャラクタペアから、その他の必要とされる特性をすべて有する01xxxxxxxxxxxxxxxxxx形式の20ビット符号語へのマッピングを見つけることに集中することができる。
第1の実施形態の好ましい実装で利用される基本的なキャラクタマッピングについて、以下で詳細に説明する。言及されたように、キャラクタペアを20ビット符号語にマッピングする符号化方式が開発された。実装の複雑さを最低限に抑えるため、キャラクタペアのマッピングが、2つのキャラクタ各々の2つの並列した独立マッピングとして実行されて、符号化プロセスを高速化する並列処理を達成することが非常に望ましい。この並列処理特性を有するマッピングを以下で説明し、カンマおよび遷移密度要件を満たすようにこのマッピングに施される変更について、以下で詳細に説明する。
第1の実施形態による一般ケースのマッピングが、図2に示されており、20ビット符号語は、2ビットのサフィックスフィールドと、第1のキャラクタフィールドC0'と、2ビットの中間フィールドMと、第2のキャラクタフィールドC1'とを含む。
マッピングは、好ましくは、以下のアルゴリズムの方法によって実行される。
1.2つの未符号化キャラクタは、C0 = {Z0, D0}と、C1 = {Z1, D1}であり、ここで、Z0およびZ1は、1ビット量であり、D0およびD1は、8ビット量である。
2.2ビットのM0およびM1を定義する。
3.8ビット系列b = b7b6b5b4b3b2b1b0を与えると、8ビット系列b' = b1b0b3b2b5b4b7b6、すなわち、4つの2ビットシンボルの順序を逆転させた系列を返す、関数Reverse(b)を定義する。
4.上で定義されたキャラクタC0を与えた場合、C0が制御キャラクタであるならば、または2ビットシンボル01が先行し、かつ2ビットシンボル00が後続すると、D0がFSVを発生するならば、1を返し、それ以外ならば、0を返す、関数MustMap0(c)を定義する。
5.上で定義されたキャラクタC1を与えた場合、C1が制御キャラクタであるならば、または2ビットシンボル00が先行し、かつ2ビットシンボル01が後続すると、D1がFSVを発生するならば、1を返し、それ以外ならば、0を返す、関数MustMap1(c)を定義する。
6.キャラクタcを与えた場合、対応する8ビットパターンc'を返し、c'に2ビットシンボル01が先行し、かつ2ビットシンボル10が後続すると仮定すれば、c'がFSVを引き起こさない、関数Map0(c)を定義する。
7.キャラクタcを与えた場合、対応する8ビットパターンc'を返し、c'に2ビットシンボル10が先行し、かつ2ビットシンボル01が後続すると仮定すれば、c'がFSVを引き起こさない、関数Map1(c)を定義する。
8.Let M0 = MustMap0(C0):
a.If M0 = = 0, let C0' = Reverse(D0)
b.Else C0' = Map0(C0)
9.Let M1 = MustMap1(C1):
a.If M1 = = 0, let C1' = D1
b.Else C1' = Map1(C1)
1.2つの未符号化キャラクタは、C0 = {Z0, D0}と、C1 = {Z1, D1}であり、ここで、Z0およびZ1は、1ビット量であり、D0およびD1は、8ビット量である。
2.2ビットのM0およびM1を定義する。
3.8ビット系列b = b7b6b5b4b3b2b1b0を与えると、8ビット系列b' = b1b0b3b2b5b4b7b6、すなわち、4つの2ビットシンボルの順序を逆転させた系列を返す、関数Reverse(b)を定義する。
4.上で定義されたキャラクタC0を与えた場合、C0が制御キャラクタであるならば、または2ビットシンボル01が先行し、かつ2ビットシンボル00が後続すると、D0がFSVを発生するならば、1を返し、それ以外ならば、0を返す、関数MustMap0(c)を定義する。
5.上で定義されたキャラクタC1を与えた場合、C1が制御キャラクタであるならば、または2ビットシンボル00が先行し、かつ2ビットシンボル01が後続すると、D1がFSVを発生するならば、1を返し、それ以外ならば、0を返す、関数MustMap1(c)を定義する。
6.キャラクタcを与えた場合、対応する8ビットパターンc'を返し、c'に2ビットシンボル01が先行し、かつ2ビットシンボル10が後続すると仮定すれば、c'がFSVを引き起こさない、関数Map0(c)を定義する。
7.キャラクタcを与えた場合、対応する8ビットパターンc'を返し、c'に2ビットシンボル10が先行し、かつ2ビットシンボル01が後続すると仮定すれば、c'がFSVを引き起こさない、関数Map1(c)を定義する。
8.Let M0 = MustMap0(C0):
a.If M0 = = 0, let C0' = Reverse(D0)
b.Else C0' = Map0(C0)
9.Let M1 = MustMap1(C1):
a.If M1 = = 0, let C1' = D1
b.Else C1' = Map1(C1)
このアルゴリズムを使用して、2つのキャラクタC0およびC1は、互いに完全に独立にマッピングされることができ、Mだけが、両方のキャラクタに依存するが、相対的に単純な関係をもつに過ぎない。「問題のある」ビットパターン00は、C0'とC1'の間の符号語の中央部にあるので、FSVを引き起こさないC0'のビットパターンは、FSVを引き起こさないC1'のビットパターンと同じではないことに留意されたい。しかし、C1'についてFSVを引き起こさないあらゆる単一のビットパターンに対して、ビットパターンReverse(C1')は、C0'についてFSVを引き起こさない。したがって、D0 = Reverse(D1)(かつZ0= Z1)である場合に、キャラクタC0およびC1上で実行されるマッピングが同じとなることを保証するように、Reverse()関数が導入される。これは、C0およびC1上で使用される2つの独立なマッピング関数の間にかなり簡単な関係を生成するので、望ましい特性である。
以下で詳細に説明される、カンマ定義の要件と、あるビット遷移密度を保証する要望とが存在する場合、C0およびC1のマッピングは、第2の実施形態に関して以下で説明されるように、より手の込んだものになることがある。どのキャラクタをマッピングすべきかの決定、および2つのキャラクタの各々の実際のマッピングは、互いに完全に独立とされることはできず、Mの定義はより複雑になることがある。したがって、第1の実施形態に関して上で説明された一般ケースは、第2の実施形態では、これらの例外ケースにも対処できるように拡張されることがある。
関数Map0(c)およびMap1(c)によって実行される実際のマッピングが、以下で詳細に説明される。
符号語の正しい復号を実行できるように、受信機は、符号語を復号する前に、符号語の境界を決定する必要がある。そのような境界を決定するための一般的な方法は、カンマ属性を有する1つまたは複数の符号語を定義することによる(そのような符号語は、簡単に「カンマ」と呼ばれる)。カンマは、受信機が符号語の境界を決定できるようにする一定の長さの一意的なビットパターンとして定義され、すなわち、そのパターンは、符号語内の一定のビット位置で生じるだけで、決して符号語境界をまたがない。
8b/10b符号化方式によって定義される13個の制御キャラクタのうち、3個のキャラクタが、カンマ属性を有する符号語にマッピングされる。これらの3個のカンマは、K28.1、K28.5、およびK28.7として知られている。しかし、最後のものは、符号語境界をまたいで不正カンマパターンを生じさせ得るいくつかの不都合な属性を有するので、実際の使用のためには、2つのカンマ(K28.1、K28.5)が残るだけである。
適切に設計された場合、どのプロトコルも、単一のカンマだけを用いて動作することができる。第2の実施形態の好ましい実装による16b/10s符号化方式の場合、キャラクタの一方または両方が8b/10b制御キャラクタK28.5であるキャラクタペアは、カンマ属性を有する符号語にマッピングされることが定められる。したがって、K28.5シンボルは、上位キャラクタ(C0)もしくは下位キャラクタ(C1)または両方のキャラクタ内に出現することができ、その結果、カンマは、符号語の上位および下位部分で異なる必要がある。
さらに、符号語反転は、符号語境界が決定されるまで、受信機によって実行されることができないので、カンマは、DCバランシングアルゴリズムが、1つまたは2つのカンマを含む符号語を反転した後でさえも、一意的である必要がある。したがって、カンマ定義は、図3、図4、および図5に示されるように、慎重に行われるべきである。
個別的には、図3は、上位キャラクタC0がカンマである、第2の実施形態による20ビット符号語を示しており、図4は、下位キャラクタC1がカンマである、第2の実施形態による20ビット符号語を示しており、図5は、上位および下位キャラクタC0、C1がカンマである、第2の実施形態による20ビット符号語を示している。
第2の実施形態の好ましい実装で利用されるカンマ定義は、以下のように要約される。
1.直後に01または11が後続する場合のビットパターン0100000000および1110101010は、ビット位置19〜10だけに発生することができる。
2.直後に01または11が後続する場合のビットパターン1010101010および0000000000は、ビット位置9〜0だけに発生することができる。
3.直後に01または11が後続する場合のビットパターン0110101010および1100000000は、ビット位置9〜0だけに発生することができる。
1.直後に01または11が後続する場合のビットパターン0100000000および1110101010は、ビット位置19〜10だけに発生することができる。
2.直後に01または11が後続する場合のビットパターン1010101010および0000000000は、ビット位置9〜0だけに発生することができる。
3.直後に01または11が後続する場合のビットパターン0110101010および1100000000は、ビット位置9〜0だけに発生することができる。
したがって、異なるカンマを区別するには、一度に12ビットを見る必要があり、符号化/復号方式は、単に10個のカンマビットを探すことはできない。図6は、探すべき具体的な12ビットパターンと、それらが指定する対応する符号語境界合わせを示している。
したがって、第2の実施形態の好ましい実装では、Map0(K28.5) = = 00000000であり、Map1(K28.5) = = 10101010である。したがって、カンマ定義と衝突するキャラクタ{0, 00000000}は、FSVを含まないにもかかわらず、Map0()およびMap1()によってマッピングされる。やはりカンマ定義と衝突するキャラクタ{0, 10101010}は、FSVを含むので、すでにMap0()およびMap1()によってマッピングされている。
第1の実施形態(一般ケース)に関して先に説明された符号語フィールドMの定義は、図3、図4、および図5に示されたカンマ定義が導入される場合、もはや有効ではない。したがって、この場合、第2の実施形態で使用されるMの定義は、以下で説明されるように、これらのケースにも対処できるように拡張される。
1.C0およびC1の両方がK28.5である場合、M = 01とする(Mは通常は10であるが、両方のキャラクタがマッピングされるこのケースでは、これはFSVを発生させる)。
2.それ以外で、C0がK28.5である場合、M = {-M1, 1}とし、ここで、M1は先に定義されたものである(この場合、Mの一般的定義は、FSVを導入する恐れがある)。
1.C0およびC1の両方がK28.5である場合、M = 01とする(Mは通常は10であるが、両方のキャラクタがマッピングされるこのケースでは、これはFSVを発生させる)。
2.それ以外で、C0がK28.5である場合、M = {-M1, 1}とし、ここで、M1は先に定義されたものである(この場合、Mの一般的定義は、FSVを導入する恐れがある)。
C1がK28.5符号語であり、C0はそうでない第3のケースは、一般ケースによって対処されるので、特別な扱いを必要としないことに留意されたい。
不正カンマが生成されるのを防止する方法でキャラクタのマッピングを定義するのが好ましく、これは、本発明の第3の実施形態で行われる。上で定義されたカンマのすべては、8ビットパターン00000000または10101010を含むので、これらのパターンがカンマ自体の中だけで発生することを保証することによって、不正カンマは防止されることができる。符号語は常に01または11のどちらかで開始するので、符号語境界をまたいでこれらのパターンが発生することはない。図7は、符号語内で発生し得る不正カンマパターンを示している。
図7に示された最初と最後の不正カンマパターンは、キャラクタマッピングの後、C0'がパターンxx000000またはxx101010を含まないこと、同様にC1'がパターン000000xxまたは101010xxを含まないことを保証することによって除去される。これは、少数のキャラクタが、FSVを引き起こしていないにもかかわらず、再マッピングされなければならないことを意味し、そのため、一般ケース向けに先に定義された関数MustMap0()およびMustMap1()は、第3の実施形態で適切に拡張される。
しかし、図7に示された2つの中央のケースの場合、C0'がパターンxxxx0000またはxxxx1010を含まず、C1'がパターン0000xxxxまたは1010xxxxを含まないことを保証するのを可能にする十分に有効なマッピングが存在しない。したがって、これらのパターンが原因で発生する不正カンマは、以下のアルゴリズムによって説明される別の手法によって除去される。
1.生成された符号語が、形式xx xxxx0000 00 00xxxxxx(C0' = = xxxx0000、M = = 00、C1' = = 00xxxxxx)、または形式xx xxxxxx00 00 0000xxxx(C0' = = xxxxxx00、M = = 00、C1' = = 0000xxxx)をとる場合、Mを01に変更し、符号語をxx xxxx0000 01 00xxxxxxまたはxx xxxxxx00 01 0000xxxxのどちらかに変更する。
M = = 01は、C1がMap1()によるマッピングを受けることを意味するが、通常のマッピングC1' = Map1(C1)では、10が先行するとき、定義によってC1'はFSVを発生させないため、C1' = = 00xxxxxxまたはC1' = = 0000xxxxは決して発生しないので、これらの新しい符号語は一意である。
2.生成された符号語が、形式xx xxxx1010 10 10xxxxxx(C0' = = xxxx1010、M = = 10、C1' = = 10xxxxxx)、または形式xx xxxxxx10 10 1010xxxx(C0' = = xxxxxx10、M = = 10、C1' = = 1010xxxx)をとる場合、Mを01に変更し、符号語をxx xxxx1010 01 10xxxxxxまたはxx xxxxxx10 01 1010xxxxのどちらかに変更する。
M = = 01は、C0がMap0()によるマッピングを受けないことを意味するが、C0' = C0の場合、00が後続するとき、定義によってC0はFSVを発生させないため、C0' = = xxxxxx10またはC0' = = xxxx1010は決して発生しないので、これらの新しい符号語は一意である。
1.生成された符号語が、形式xx xxxx0000 00 00xxxxxx(C0' = = xxxx0000、M = = 00、C1' = = 00xxxxxx)、または形式xx xxxxxx00 00 0000xxxx(C0' = = xxxxxx00、M = = 00、C1' = = 0000xxxx)をとる場合、Mを01に変更し、符号語をxx xxxx0000 01 00xxxxxxまたはxx xxxxxx00 01 0000xxxxのどちらかに変更する。
M = = 01は、C1がMap1()によるマッピングを受けることを意味するが、通常のマッピングC1' = Map1(C1)では、10が先行するとき、定義によってC1'はFSVを発生させないため、C1' = = 00xxxxxxまたはC1' = = 0000xxxxは決して発生しないので、これらの新しい符号語は一意である。
2.生成された符号語が、形式xx xxxx1010 10 10xxxxxx(C0' = = xxxx1010、M = = 10、C1' = = 10xxxxxx)、または形式xx xxxxxx10 10 1010xxxx(C0' = = xxxxxx10、M = = 10、C1' = = 1010xxxx)をとる場合、Mを01に変更し、符号語をxx xxxx1010 01 10xxxxxxまたはxx xxxxxx10 01 1010xxxxのどちらかに変更する。
M = = 01は、C0がMap0()によるマッピングを受けないことを意味するが、C0' = C0の場合、00が後続するとき、定義によってC0はFSVを発生させないため、C0' = = xxxxxx10またはC0' = = xxxx1010は決して発生しないので、これらの新しい符号語は一意である。
上の項目1および項目2で説明されたアルゴリズムは、MustMap0()、MustMap1()、Map0()、およびMap1()関数に対する拡張ではなく、一般ケース(第1の実施形態)向けに先に説明されたアルゴリズムによってMが生成された後の、符号語のMフィールドの後処理であるに過ぎないことに留意されたい。
第3の実施形態に関して上で説明された不正カンマ除去アルゴリズムは、キャラクタの一方または両方がカンマである場合にも有効である。具体的には、これは、C1'が形式1010101010のカンマである図4に示された場合に、C0' = = xxxxxxxx10ならば、C1'が0110101010に変換されることを意味する。しかし、1010101010と0110101010は共に、正確に同じ符号語位置でカンマとして使用されるので、これは符号化方式のカンマ属性に影響をもたない。やはり図4に示された、1010101010のDCバランスに関する相手方0000000000についても、同じ推論が成り立つ。
関数Map0()およびMap1()が、一般ケース向けに先に定義され、これらの関数が、上で説明されたように、カンマおよび不正カンマを計算に入れるように拡張された。これらの関数は、すべての入力キャラクタに対して定義される、すなわち、マッピングが行われない場合も含む、関数FullMap0()およびFullMap1()にさらに拡張されることができる。表1は、FullMap0()およびFullMap1()によって実行される具体的なマッピングと、(情報目的で)各キャラクタがなぜマッピングされる必要があるのかその理由を併記した、MustMap0()およびMustMap1()関数の出力とを示している。一例として、表1のマッピング表は、これらの具体的なマッピングを達成するために利用され、コンピュータまたは特定目的コンピュータによってアクセス可能なメモリに保存されたプログラムが、(例えば、メモリに保存されたマッピング表を用いて)そのようなマッピングを実行するために利用されることができる。
先に説明された要件は、マッピングのいくつか(例えば、カンマ)を指図し、その他のいくつか(例えば、不正カンマ防止)を許可しない。残りのマッピングは、デジタルロジックでの実装が簡単になるように、すなわち、マッピングを記述するのに必要な論理式を最低限に抑えるように設計され、その実装は、本教示に照らして当業者によって理解される。
表1から理解され得るように、以下の例外、すなわち、
FullMap0(K28.5) = = 00000000、一方、FullMap1(K28.5) = = 10101010
を除外して、FullMap0(c) = Reverse(FullMap1(c))であり、ここで、関数Reverse()は、先に一般ケース用に定義されたものである。
FullMap0(K28.5) = = 00000000、一方、FullMap1(K28.5) = = 10101010
を除外して、FullMap0(c) = Reverse(FullMap1(c))であり、ここで、関数Reverse()は、先に一般ケース用に定義されたものである。
相違は、符号語の下位および上位部分内のカンマを区別するのに必要なカンマキャラクタの異なるマッピングに起因する。
受信機において信頼性のあるクロックデータ回復(CDR)を可能にするために、16b/10s符号化方式が、十分に高い遷移密度を有することが好ましい。この要件は、一般条件において先に説明された。符号化方式の概要が理解されたので、本発明の第4の実施形態の好ましい実装において、正確な定義が行われることができる。
・20ビットの符号語内には、6つの有効なCDR遷移00/01、01/11、または11/10の少なくとも1つが存在する。
・20ビットの符号語内には、6つの有効なCDR遷移00/01、01/11、または11/10の少なくとも1つが存在する。
この定義を与えた場合、上で定義されたマッピングから得られる符号語が分析されることができる。結果は、72361個の符号語のうち294個がCDR要件に違反するというものである。発明者によって実行されたより詳細な分析は、294個の問題のあるシンボルは、各キャラクタがマッピング後に有効なCDR遷移をもたない21個の特定のC0キャラクタと14個の特定のC1キャラクタのすべての組み合わせから作成されることを示している。これらのキャラクタが組み合わされた場合、結果の符号語もCDR遷移をもたない。以下の表2および表3は、違反キャラクタを示している。
やはり、当業者であれば、CDRに関して上で与えられた定義とは異なる定義も、本発明の主旨および範囲から逸脱することなく、本発明の第4の実施形態による16b/10s方式のために利用され得ることを理解されよう。例えば、単一の20ビット符号語内に少なくとも2つの1ステップ遷移を必要とする方式が、受信機においてCDRを保証するために代替として利用されることができる。
16b/10s符号空間は、CDR遷移問題が、まったく異なるマッピングを違反キャラクタに対して使用することによって解決され得るのに十分な、マッピング選択肢を含まないことを、発明者は確認した。さらなる面倒は、14個の特定のC1キャラクタの1つがK28.5、すなわち、カンマであることであり、これは、ビット9〜0についてのビットパターンの選択が非常に限定されることを意味する。
その結果、所望のCDR遷移特性に違反するこれら少数の符号語を排除するため、2つの付加的な再マッピング関数が、本発明の第5の実施形態による以下のアルゴリズムで説明されるように導入される。
a)cが表2のC0キャラクタの1つであれば1、それ以外ならば0となる、関数Special0(c)を定義する。同様に、cがK28.5を除く表3のC1キャラクタの1つであれば1、それ以外ならば0となる、関数Special1(c)を定義する。
b)Special0(C0) = = 1かつC1 = = K28.5ならば、元の符号語は、形式
{01, C0', mm, 10101010}
をとる。
c)再マッピング符号語は、
{01, ReMap0(C0), 1010, 10101010}
によって定義され、ここで、ReMap0()は、表2に定義されており、CDR遷移を保証するように選択される。これらの符号語は、カンマ属性を維持し、ビット9〜0のパターンのため、その他のすべての符号語から容易に区別可能である。
Special0(C0) = = 1かつSpecial1(C1) = = 1ならば、元の符号語は、形式
{01, C0', mm, C1'}
をとる。
再マッピング符号語は、
{01, C0', 0100, ReMapM(mm), ReMap1(C1)}
として定義され、ここで、ReMap0()は、表2に定義されており、ReMapM()は、
ReMapM(01) = 01、ReMapM(10) = 11
として定義される。01および10以外のmmの値は、このタイプの符号語内では発生しない。
a)cが表2のC0キャラクタの1つであれば1、それ以外ならば0となる、関数Special0(c)を定義する。同様に、cがK28.5を除く表3のC1キャラクタの1つであれば1、それ以外ならば0となる、関数Special1(c)を定義する。
b)Special0(C0) = = 1かつC1 = = K28.5ならば、元の符号語は、形式
{01, C0', mm, 10101010}
をとる。
c)再マッピング符号語は、
{01, ReMap0(C0), 1010, 10101010}
によって定義され、ここで、ReMap0()は、表2に定義されており、CDR遷移を保証するように選択される。これらの符号語は、カンマ属性を維持し、ビット9〜0のパターンのため、その他のすべての符号語から容易に区別可能である。
Special0(C0) = = 1かつSpecial1(C1) = = 1ならば、元の符号語は、形式
{01, C0', mm, C1'}
をとる。
再マッピング符号語は、
{01, C0', 0100, ReMapM(mm), ReMap1(C1)}
として定義され、ここで、ReMap0()は、表2に定義されており、ReMapM()は、
ReMapM(01) = 01、ReMapM(10) = 11
として定義される。01および10以外のmmの値は、このタイプの符号語内では発生しない。
これらの符号語も、C0 = = K28.5でない限り、その他の符号語内では発生しないビット9〜6のパターン0100のため、その他のすべての符号語から容易に区別可能であり、C0= = K28.5である場合は、容易に区別可能である。
上の分析に基づいて、第5の実施形態の好ましい実装による完全な16b/10s符号化アルゴリズムは、以下のように要約されることができる。
1.一般ケースに関して説明されたように、関数MustMap0()、MustMap1()、FullMap0()、およびFullMap1()を定義し、先に説明されたように、関数Special0()、Special1()、ReMap0()、ReMap1()、およびReMapM()を定義する。
2.2つのキャラクタC0およびC1を与えた場合、
a.M0 = MustMap0(C0)
b.M1 = MustMap1(C1)
c.C0' = FullMap0(C0)
d.C1' = FullMap1(C1)
とする。
3.中間マッピングセレクタM'を決定する。
a.If C0 = = K28.5 and C1= = K28.5, M' = 01
b.Else if C0 = = K28.5, M' = {-M1, 1}
c.Else M' = {M0, M0^ M1}
4.C' = {01, C0', M', C1'}を中間符号語とする。
5.別の中間マッピングセレクタMを決定する。
a.If C'がxx xxxx0000 00 00xxxxxx, xx xxxxxx00 00 0000xxxx, xx xxxx1010 10 10xxxxxx またはxx xxxxxx10 10 1010xxxxの1つ, M = 01とする。
b.Else M = M'
6.If Special0(C0) = = 0, C = {01, C0', M, C1'}とする。Else 以下のアクションを実行。
a.If C1 = = K28.5, C = {01, ReMap0(C0), 1010, C1'}
b.Else if Special1(C1) = = 1, C = {01, C0', 0100, ReMapM(M), ReMap1(C1)}
7.この時点で、Cは(DCバランシング前の)最終マッピング符号語である。
8.DCバランシングアルゴリズムを適用した後の最終符号語CFinalを決定する。
a.Disp = Cのディスパリティ、CurDisp = カレントディスパリティとする。
b.If Disp > 0 and CurDisp > 0, or Disp < 0 and CurDisp < 0
1.Disp = -Disp
2.CFinal = C ^ 10 10101010 10 10101010
c.Else CFinal = C
d.新しいカレントディスパリティは、CurDisp + Dispに等しい。
1.一般ケースに関して説明されたように、関数MustMap0()、MustMap1()、FullMap0()、およびFullMap1()を定義し、先に説明されたように、関数Special0()、Special1()、ReMap0()、ReMap1()、およびReMapM()を定義する。
2.2つのキャラクタC0およびC1を与えた場合、
a.M0 = MustMap0(C0)
b.M1 = MustMap1(C1)
c.C0' = FullMap0(C0)
d.C1' = FullMap1(C1)
とする。
3.中間マッピングセレクタM'を決定する。
a.If C0 = = K28.5 and C1= = K28.5, M' = 01
b.Else if C0 = = K28.5, M' = {-M1, 1}
c.Else M' = {M0, M0^ M1}
4.C' = {01, C0', M', C1'}を中間符号語とする。
5.別の中間マッピングセレクタMを決定する。
a.If C'がxx xxxx0000 00 00xxxxxx, xx xxxxxx00 00 0000xxxx, xx xxxx1010 10 10xxxxxx またはxx xxxxxx10 10 1010xxxxの1つ, M = 01とする。
b.Else M = M'
6.If Special0(C0) = = 0, C = {01, C0', M, C1'}とする。Else 以下のアクションを実行。
a.If C1 = = K28.5, C = {01, ReMap0(C0), 1010, C1'}
b.Else if Special1(C1) = = 1, C = {01, C0', 0100, ReMapM(M), ReMap1(C1)}
7.この時点で、Cは(DCバランシング前の)最終マッピング符号語である。
8.DCバランシングアルゴリズムを適用した後の最終符号語CFinalを決定する。
a.Disp = Cのディスパリティ、CurDisp = カレントディスパリティとする。
b.If Disp > 0 and CurDisp > 0, or Disp < 0 and CurDisp < 0
1.Disp = -Disp
2.CFinal = C ^ 10 10101010 10 10101010
c.Else CFinal = C
d.新しいカレントディスパリティは、CurDisp + Dispに等しい。
第6の実施形態による16b/10s復号アルゴリズムは、第5の実施形態の符号化アルゴリズムの反転ステップを逆順に実行することによって推論することができる。復号アルゴリズムが、以下で要約される。
1.受信符号語Cを与えられた場合、DCバランシングの除去を実行する。
a.If C[19]= 1,C' = C ^ 10 10101010 10 10101010
b.Else C' = C
2.それぞれ表2および表3で説明されたような、関数ReMap0 -1()およびReMap1 -1()を定義し、さらに以下のように、関数ReMapped()およびReMapM -1()を定義する。
a.c'が表2のReMap0 -1()欄のマッピングb7-b0の1つならば、ReMapped0(c') = = 1、それ以外ならば、0。
b.ReMapM -1(01) = 01、ReMapM -1(11) = 10、それ以外ならば、未定義。
3.適用可能ならば、逆再マッピングを実行する。
a.If C'[11:0] = = 10 10 10101010, C'' = {C'[19:18], ReMap0 -1(C'[17:12]), C'[7:0]}
b.Else if C'[9:6] = = 0100 and ReMapped0(C'[17:12]) = = 1, C'' = {C'[19:10], ReMapM -1(C'[5:4]), ReMap1 -1(C'[3:0])}
c.Else C'' = C'
4.基本マッピング特徴を決定する。
a.M0 = C''[9]
b.M1 = C''[9] ^ C''[8]
5.除去された不正カンマを補償するためにマッピング特徴を変更する。
a.If C''[11:4] = 00010000 or C''[13:6] = 00000100, M1' = 0
b.Else M1' = M1
c.If C''[11:4] =10011010 or C''[13:6] = 10100110, M0' = 1
d.Else M0' = M0
6.以下のように、関数FullMap0 -1()およびFullMap1 -1()を定義する。
a.c = FullMap0 -1(ch, m)、ここで、FullMap0(c) = ch、MustMap0(c) = = m。これは、MustMap0()を考慮に入れた、表1のFullMap0()の逆マッピングである。
b.c = FullMap1 -1(ch, m)、ここで、FullMap1(c) = ch、MustMap1(c) = = m。これは、MustMap1()を考慮に入れた、表1のFullMap1()の逆マッピングである。
7.実際のキャラクタ復号を実行する。
a.C0 = FullMap0 -1(C''[17:10])
b.C1 = FullMap1 -1(C''[7:0])
8.キャラクタ復号とは独立に、以下の条件のどれかが成り立つ場合、誤り符号語が検出される。
a.C'[19:18] != 01(符号語は01で開始しなければならない)。
b.逆再マッピングを実行する試みにおいて、関数ReMap0 -1()、ReMap1 -1()、またはReMapM -1()のどれかが、関数結果が定義されていないデータに対して使用される。
c.表1によって、FullMap0 -1(C''[17:10],M0'')が定義されていない。
d.表1によって、FullMap1 -1(C''[7:0],M1'')が定義されていない。
1.受信符号語Cを与えられた場合、DCバランシングの除去を実行する。
a.If C[19]= 1,C' = C ^ 10 10101010 10 10101010
b.Else C' = C
2.それぞれ表2および表3で説明されたような、関数ReMap0 -1()およびReMap1 -1()を定義し、さらに以下のように、関数ReMapped()およびReMapM -1()を定義する。
a.c'が表2のReMap0 -1()欄のマッピングb7-b0の1つならば、ReMapped0(c') = = 1、それ以外ならば、0。
b.ReMapM -1(01) = 01、ReMapM -1(11) = 10、それ以外ならば、未定義。
3.適用可能ならば、逆再マッピングを実行する。
a.If C'[11:0] = = 10 10 10101010, C'' = {C'[19:18], ReMap0 -1(C'[17:12]), C'[7:0]}
b.Else if C'[9:6] = = 0100 and ReMapped0(C'[17:12]) = = 1, C'' = {C'[19:10], ReMapM -1(C'[5:4]), ReMap1 -1(C'[3:0])}
c.Else C'' = C'
4.基本マッピング特徴を決定する。
a.M0 = C''[9]
b.M1 = C''[9] ^ C''[8]
5.除去された不正カンマを補償するためにマッピング特徴を変更する。
a.If C''[11:4] = 00010000 or C''[13:6] = 00000100, M1' = 0
b.Else M1' = M1
c.If C''[11:4] =10011010 or C''[13:6] = 10100110, M0' = 1
d.Else M0' = M0
6.以下のように、関数FullMap0 -1()およびFullMap1 -1()を定義する。
a.c = FullMap0 -1(ch, m)、ここで、FullMap0(c) = ch、MustMap0(c) = = m。これは、MustMap0()を考慮に入れた、表1のFullMap0()の逆マッピングである。
b.c = FullMap1 -1(ch, m)、ここで、FullMap1(c) = ch、MustMap1(c) = = m。これは、MustMap1()を考慮に入れた、表1のFullMap1()の逆マッピングである。
7.実際のキャラクタ復号を実行する。
a.C0 = FullMap0 -1(C''[17:10])
b.C1 = FullMap1 -1(C''[7:0])
8.キャラクタ復号とは独立に、以下の条件のどれかが成り立つ場合、誤り符号語が検出される。
a.C'[19:18] != 01(符号語は01で開始しなければならない)。
b.逆再マッピングを実行する試みにおいて、関数ReMap0 -1()、ReMap1 -1()、またはReMapM -1()のどれかが、関数結果が定義されていないデータに対して使用される。
c.表1によって、FullMap0 -1(C''[17:10],M0'')が定義されていない。
d.表1によって、FullMap1 -1(C''[7:0],M1'')が定義されていない。
符号語内にエラーが検出された場合、復号キャラクタの両方が誤りであると見なされる。キャラクタレベルでの誤り検出は存在しない。
16b/10s復号アルゴリズムは、例えば、8b/10b復号器とは対照的に、ディスパリティ問題に留意しない。これは、16b/10s符号化方式がより複雑であり、受信機がすべてのケースで符号語のディスパリティを予測するのが非常に難しいためである。
DCバランシング機能を含む16b/10s符号化方式の重み分布が、図8に示されている。これは、符号語の大多数がかなり低い重みをもつ最適重み分布である。
すべての符号語の符号を反転することができるDCバランシングアルゴリズムのため、重み分布は、完全に対称的である。最大符号語重みは、+24と−24であり、したがって、先に説明されたDCバランシングアルゴリズムによれば、発生し得る最悪ケースのカンレトディスパリティ(DC不平衡)は、+24と−24である。
図9は、本発明の第7の実施形態による16b/10s符号器の実装の構成を示している。16b/10s符号器900は、下位マッパーユニット910と、Mロジックユニット920と、上位マッパーユニット930と、リマッパー940と、ディスパリティ計算器950と、XORユニット960とを含み、XORユニット960の出力は、20ビット(10シンボル)符号語に対応する。8+1ビットキャラクタ0(1ビットは、キャラクタが制御情報か、それともデータかを示す)は、下位マッパーユニット910に入力され、8+1ビットキャラクタ1は、上位マッパーユニット930に入力される。キャラクタ符号化機能は、入力キャラクタだけに依存するので、必要な動作周波数を達成するのに必要とされる場合、符号器900は、キャラクタ符号化機能とDCバランシング/ディスパリティ計算器機能の間で、パイプライン化されることができる。
代替構成では、16b/10s符号化方式は、2つの16b/10s符号器を単に並列して使用することによって、4キャラクタ幅のデータパスにおいて使用されることができる。このシナリオでは、ディスパリティは20ビットデータパス毎に独立に計算されるので、最大ディスパリティ不平衡は2倍にされる。
代替として、本発明の第8の実施形態では、ディスパリティ計算とDCバランシングは、図10に示されるように、2つの16b/10s符号器の間でカスケードされることができるが、これは、回路のタイミングに影響を与えがちである。図10に示される符号化システム1000では、第1のDCバランサ1010は、第1のキャラクタペア符号器1020からの出力符号語を受け取り、第2のDCバランサ1030は、第2のキャラクタペア符号器1040からの出力符号語を受け取る。カンレトディスパリティは、第1のDCバランサ1010に入力され、第1のDCバランサ1010は、(第1のキャラクタペア符号器1020によって出力された符号語のディスパリティに基づいて)更新されたカンレトディスパリティを第2のDCバランサ1030に提供し、第2のDCバランサ1030は、第2のキャラクタペア符号器1040によって出力された符号語のディスパリティに基づいて、新しいディスパリティを計算する。その後、第2のDCバランサ1030の出力は、カンレトディスパリティとして、図10に示されるシステムによって出力される次の符号語の組に提供される。
図10に示される構成の代替構成では、第1および第2のキャラクタペア符号器1020、1040のための新しいディスパリティを計算するために、ただ1つのDCバランサが利用されることができる。
図10に示される構成では、必要に応じて、キャラクタ符号器とDCバランサの間をパイプライン化することによって、さらなる速度向上が達成されることもできる。
図11は、本発明の第9の実施形態による16b/10s復号器の実装の構成を示している。図11では、16b/10s復号器1100は、誤り検出ユニット1110と、第1のキャラクタ復号器1120と、Mロジックユニット1130と、第2のキャラクタ復号器1140と、逆リマッパー1150と、XORユニット1160とを含む。信号伝送線路から受け取られた10個の隣接2ビットシンボルは、XORユニット1160に入力され、逆マッピング演算が、逆リマッパー1150によって、それらのシンボルに対して実行される。逆リマッパー1150の出力は、並列して、誤り検出ユニット1110と、第1のキャラクタ復号器1120と、Mロジックユニット1130と、第2のキャラクタ復号器1140とに提供される。誤り検出ユニット1110は、エラー信号(当業者に知られた方法で、それは誤り訂正および検出技法のために利用されることができる)を出力し、第1のキャラクタ復号器1120は、第1のキャラクタ0を出力し、第2のキャラクタ復号器1140は、第2のキャラクタ1を出力する。Mロジックユニット1130は、Mフィールドを復号し、第1のキャラクタ復号器1120および第2のキャラクタ復号器1140の両方に、それぞれの復号演算のために情報を提供する。第9の実施形態の好ましい実装では、XORユニット1160は、20ビット符号語の2ビット毎に適用される(10個の)並列XORゲートの組に対応する。
キャラクタ復号器と誤り検出ロジックの両方にパイプライン化を導入することが可能だが、ロジックは相対的に簡単であることが分かるので、これは必要とされそうにない。さらに、本発明に従って使用される復号器は、符号器が先に説明されたように独立に動作するかまたはカスケードして動作するかに関係なく、完全に独立に動作する複数の16b/10s復号器を単に並列に有することによって、より広いデータパスに拡張されることができる。
上記に、本発明による装置および方法について説明した。多くの変更および変形が、本発明の主旨および範囲から逸脱することなく、本明細書で説明および例示された技法および構造に施されることができる。例えば、PAM−4に関して異なる実施形態が説明されたが、本発明の主旨および範囲内に留まりながら、シリアルリンクを介してシリアルデータを送信および受信するためのその他のタイプの多値信号方式が想定されることができ、PAM−8、16、...、QAM−8、QAM−16などが想定されることができる。したがって、本明細書で説明された方法および装置は、例示的なものに過ぎず、本発明の範囲を限定するものではないことを理解されたい。さらに、説明された1つまたは複数の態様は、任意の与えられたシステムまたは方法内で組み合わされることができる。またさらに、1つまたは複数の実施形態は、例えば、スキーム設計(schematic design)もしくはハードウェア記述言語(HDL)によってハードウェアで実装されることができ、かつ/またはプログラマブル論理デバイス(FPGA/CPLD)もしくはASICで実装されることができ、かつ/または個別ハードウェアデバイスを使用してハードウェアで実装されることができる。代替として、1つまたは複数の実施形態は、効率性のためテーブルドリブン検索メカニズムを使用することなどによって、ソフトウェアで実装されることができる。
Claims (61)
- 2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、伝送デジタル信号の品質を改善するための方法であって、前記方法が、
N個のビットからなる組によって表されるデジタル値を符号化して、P個のシンボルからなる対応する組を得るステップであって、P個のシンボルからなる各組は、フル振幅遷移を減少させ、連続するデジタル信号伝送の間のDCバランシングを実行するように選択されるステップと、
P個のシンボルからなる前記組を伝送するステップと、を含み、
NおよびPは整数値である方法。 - P個のシンボルからなる前記組が、PAM−4シンボルとして伝送される、請求項1に記載の方法。
- 単一伝送媒体を介して伝送されるデジタル信号についてのDCバランシングを提供するための方法であって、前記方法が、
a)複数の符号語ペアを含む符号語空間を定義するステップであって、前記符号語ペアの各々は、データのN個のビットからなる組を等しく表すことができる、正の重みをもつ符号語と負の重みをもつ符号語とを含み、各符号語ペアの前記正および負の重みをもつ符号語は、振幅が等しく、Nは、正の整数値であるステップと、
b)前記単一伝送媒体上のカレントディスパリティを決定するステップと、
c)ステップb)の前記決定に基づいて、前記カレントディスパリティがゼロにより近くなるように、対応する符号語ペアの一方を、データのN個のビットからなる前記組に割り当てるステップと、
d)複数のシンボルとしてステップc)で割り当てられた前記対応する符号語ペアの一方を前記単一伝送媒体上で伝送するステップと、を含む方法。 - 前記符号語空間が、対応するペア符号語をもたない複数の符号語をさらに含み、前記複数の非ペア符号語の各々は、ゼロDCバランス重みを表す、請求項3に記載の方法。
- 前記複数の符号語ペアの部分集合が、ゼロDCバランス重みを表す、請求項3に記載の方法。
- カンレトディスパリティがゼロであると決定された場合、データのN個のビットからなる前記組に対応する前記符号語ペアの前記符号語のどちらかが、ステップc)で選択される、請求項3に記載の方法。
- 前記単一伝送媒体を介して付加的な情報を伝送するために、前記対応する符号語ペアの前記符号語の任意の一方が、前記カレントディスパリティに関係なく、前記単一伝送媒体上で伝送される、請求項3に記載の方法。
- 前記単一伝送媒体を介して付加的な情報を伝送するために、前記対応する符号語ペアの前記符号語の任意の一方が、符号語ディスパリティの絶対値がゼロである場合に、前記単一伝送媒体上で伝送される、請求項3に記載の方法。
- 2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送する方法であって、前記方法が、
2つの連続するNビットキャラクタによって表されるデジタル値を、Rビット符号語に符号化するステップであって、前記Rビット符号語は、フル振幅を減少させるように構成され、前記Nビットキャラクタの各々は、前記Nビットキャラクタの各々に関連付けられたQビットタグに基づいて、データまたは制御情報のどちらかとして指定されるステップと、
前記Rビット符号語を複数のPAM−Lシンボルとして前記単一伝送媒体上で伝送するステップと、を含み、
L、N、R、およびQは、正の整数値であり、
前記Rビット符号語は、前記2つの連続するNビットキャラクタのうちの第1のキャラクタおよびその関連Qビットタグに対応する第1のフィールドと、前記2つの連続するNビットキャラクタのうちの第2のキャラクタおよびその関連Qビットタグに対応する第2のフィールドと、前記第1および第2のフィールドの間に提供され、前記2つの連続するNビットキャラクタおよびそれらの関連Qビットタグの関数である第3のフィールドとを含む、方法。 - 前記符号化するステップが、DCバランシングとは関係なく実行され、前記方法が、
フル振幅除去に影響を与えずにDCバランシングを提供するために、前記Rビット符号語が変更されるべきかどうかを決定するステップと、
DCバランシングを提供するために、前記Rビット符号語が変更されるべきであると決定された場合、前記Rビット符号語を前記Rビット符号語とは反対極性の重みの別のRビット符号語に変更するステップと、をさらに含む、請求項9に記載の方法。 - 前記符号化するステップが、
前記Rビット符号語内のフル振幅を除去する目的で、前記2つの連続するNビットキャラクタのうちの少なくとも一方を、異なるビットパターンにマッピングするステップを含む、請求項9に記載の方法。 - 前記符号化が、前記2つの連続するNビットキャラクタの各々で、互いに独立して実行される、請求項9に記載の方法。
- 前記符号化が、前記2つの連続するNビットキャラクタの各々で、互いに並列して実行される、請求項9に記載の方法。
- 前記2つの連続するNビットキャラクタの各々で実行される前記符号化が、実質的に同じである、請求項9に記載の方法。
- 前記2つの連続するNビットキャラクタの一方で実行される前記符号化が、符号化ビットの異なる配列のため、前記2つの連続するNビットキャラクタの他方で実行される前記符号化とは異なる、請求項14に記載の方法。
- 前記Rビット符号語内の前記第3のフィールドは、前記2つの連続するNビットキャラクタのうちの前記第1のキャラクタ、前記第2のキャラクタ、もしくはその両方が異なるビットパターンにマッピングされたか、またはどちらも異なるビットパターンにマッピングされなかったかに基づいて、特定のビットストリング値に設定されるビットストリングであり、
前記Rビット符号語内の前記第3のフィールドは、前記第3のフィールドの先頭境界および末尾境界でフル振幅違反が発生しないことを保証するように提供される、請求項9に記載の方法。 - 各Rビット符号語をシンボルからなる複数の組として前記単一伝送媒体を介して伝送するステップをさらに含む、請求項9に記載の方法。
- 前記符号化するステップが、
前記単一伝送媒体上のカレントディスパリティを決定するステップと、
前記カレントディスパリティがゼロにより近くなるように、各Rビット符号語を、同じ重みをもつが、互いに対して異なる極性を有する符号語ペアのうちの一方の符号語に割り当てるステップと、
それによって、結果として、前記単一伝送媒体上でDCバランシングを達成するステップと、を含む、請求項9に記載の方法。 - 前記符号化するステップが、
カンマが前記Rビット符号語内に提供されるべきかどうかを決定するステップであって、提供されるべき場合、前記Rビット符号語の前記第1のフィールドもしくは前記第2のフィールドのどちらかまたは両方に、複数の所定のカンマパターンのうちの1つを含むように符号語マッピングを実行するステップを含み、
前記Rビット符号語の前記第1のフィールドもしくは前記第2のフィールドの一方または両方が、前記複数の所定のカンマパターンのうちの1つを含むかどうかに関係なく、受信機が符号語境界を決定することを可能にするために、前記Rビット符号語の前記第1および第2のフィールドのどちらかまたは両方で使用される前記カンマパターンは、前記第1および第2のフィールドで使用される非カンマのデータパターンとは異なる、請求項9に記載の方法。 - 前記Rビット符号語の前記第1のフィールドもしくは前記第2のフィールドの一方または両方で使用される前記カンマパターンは、1つまたは複数の前記所定のカンマパターンを含む前記Rビット符号語上でDCバランシング演算が実行された後でさえも、前記カンマパターンがその一意性を保持することを可能にする特定のビットパターンを有し、それによって、前記受信機が、前記カンマパターンの検出に先立って前記Rビット符号語上で逆DCバランシング演算を実行することなく、前記Rビット符号語内で前記カンマパターンによって前記符号語境界を決定することを可能にする、請求項19に記載の方法。
- Rビット符号語空間が、同じ重みをもつが、互いに対して異なる極性を有する複数のRビット符号語ペアを含み、前記Rビット符号語ペアの各々の中の一方の符号語は、複数の2ビットサブ符号語に対応し、複数の2ビットサブ符号語は、前記Rビット符号語ペアの前記各々の中の他方の符号語内で対応する位置に置かれたサブ符号語に対して最上位ビットが反転されている、請求項10に記載の方法。
- 前記Rビット符号語の各々は、受信機が前記Rビット符号語の復号を実行する前に、逆DCバランシング演算が実行される必要があるかどうかを前記受信機が決定することを可能にする情報を含む、請求項10に記載の方法。
- DCバランシングに関する前記Rビット符号語の各々に含まれる前記情報は、前記単一伝送媒体上で各Rビット符号語を表す複数のPAM−Lシンボルのうちの最初のシンボルで提供される、請求項22に記載の方法。
- 2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送するための方法であって、 前記方法が、
N個のビットからなる組によって表されるデジタル値を符号化して、P個のシンボルからなる対応する組を得るステップであって、P個のシンボルからなる各組は、PAM−L符号化方式において、P個のシンボルからなる前記組の中の隣り合うシンボルの間で少なくとも1つの1ステップ遷移を提供するように選択されるステップと、
P個のシンボルからなる前記組を単一伝送線路上で伝送するステップと、を含み、
NおよびPは、整数値であり、Lは、4以上の整数値である、方法。 - 前記PAM−L符号化方式が、PAM−4に対応する、請求項24に記載の方法。
- 伝送情報が、4つの異なるステップをそれぞれ表す4つの異なるシンボルによって表されることができ、00が第1のステップを表し、01が第2のステップを表し、11が第3のステップを表し、10が第4のステップを表す、請求項25に記載の方法。
- 前記4つのステップの各々が、重みを割り当てられ、前記方法が、
N個のビットからなる前記組がRビット符号語に割り当てられる符号語空間を定義するステップであって、前記符号語空間が、重みは等しいが、極性は反対の複数のRビット符号語ペアを含むステップと、
前記単一伝送線路上のカレントディスパリティを決定するステップと、
前記カレントディスパリティがゼロにより近くなるような方法で、N個のビットからなる前記組の各々に対応する前記Rビット符号語ペアの一方を割り当てるステップと、
前記Rビット符号語ペアの前記割り当てられた一方を、前記PAM−L符号化方式で、P個のシンボルからなる対応する組として、前記単一伝送媒体上で伝送するステップと、をさらに含む、請求項26に記載の方法。 - 前記符号化するステップが、P個のシンボルからなる前記組を前記単一伝送線路上で受信する受信機においてクロックデータ回復を達成するように実行される、請求項24に記載の方法。
- 2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送するためのシステムであって、前記システムが、
N個のビットからなる組によって表されるデジタル値を符号化して、P個のシンボルからなる対応する組を得るように構成される符号器であって、P個のシンボルからなる各組は、フル振幅遷移を減少させ、連続するデジタル信号伝送の間のDCバランシングを実行するように選択される符号器と、
P個のシンボルからなる前記組を前記単一伝送媒体を介して伝送するように構成される送信機と、を含み、
NおよびPは、整数値である、システム。 - P個のシンボルからなる前記組が、PAM−4シンボルとして伝送される、請求項29に記載のシステム。
- 単一伝送媒体を介して伝送されるデジタル信号についてのDCバランシングを提供するためのシステムであって、前記システムが、
複数の符号語ペアを含む符号語空間を定義するように構成される定義ユニットであって、前記符号語ペアの各々は、データのN個のビットからなる組を等しく表すことができる、正の重みをもつ符号語と負の重みをもつ符号語とを含み、各符号語ペアの前記正および負の重みをもつ符号語は、振幅が等しく、Nは、正の整数値である定義ユニットと、
前記単一伝送媒体上のカレントディスパリティを決定するように構成される決定ユニットと、
前記決定ユニットによって下された前記決定に基づいて、前記カレントディスパリティがゼロにより近くなるように、対応する符号語ペアの一方を、データのN個のビットからなる前記組に割り当てるように構成される割り当てユニットと、
前記割り当てユニットによって複数のシンボルとして割り当てられた前記対応する符号語ペアの一方を前記単一伝送媒体上で伝送するように構成される伝送ユニットと、を含むシステム。 - 前記符号語空間が、対応するペア符号語をもたない複数の符号語をさらに含み、前記複数の非ペア符号語の各々は、ゼロDCバランス重みを表す、請求項31に記載のシステム。
- 前記複数の符号語ペアの部分集合が、ゼロDCバランス重みを表す、請求項32に記載のシステム。
- 前記カンレトディスパリティがゼロであると決定された場合、データのN個のビットからなる前記組に対応する前記符号語ペアの前記符号語のどちらかが、前記割り当てユニットによって割り当てられる、請求項32に記載のシステム。
- 前記単一伝送媒体を介して付加的な情報を伝送するために、前記対応する符号語ペアの前記符号語の任意の一方が、前記カレントディスパリティに関係なく、前記単一伝送媒体上で伝送される、請求項32に記載のシステム。
- 前記対応する符号語ペアの前記符号語の任意の一方が、符号語ディスパリティの絶対値がゼロである場合に、前記単一伝送媒体上で伝送される、請求項34に記載のシステム。
- 2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送するためのシステムであって、前記システムが、
2つの連続するNビットキャラクタによって表されるデジタル値を、Rビット符号語に符号化するように構成される符号化ユニットであって、前記Rビット符号語は、フル振幅を減少させるように構成され、前記Nビットキャラクタの各々は、前記Nビットキャラクタの各々に関連付けられたQビットタグに基づいて、データまたは制御情報のどちらかとして指定される符号化ユニットと、
前記Rビット符号語を複数のPAM−Lシンボルとして出力するように構成される伝送ユニットと、を含み、
L、N、R、およびQは、正の整数値であり、
前記Rビット符号語は、前記2つの連続するNビットキャラクタのうちの第1のキャラクタおよびその関連Qビットタグに対応する第1のフィールドと、前記2つの連続するNビットキャラクタのうちの第2のキャラクタおよびその関連Qビットタグに対応する第2のフィールドと、前記第1および第2のフィールドの間に提供され、前記2つの連続するNビットキャラクタおよびそれらの関連Qビットタグの関数である第3のフィールドとを含む、システム。 - 前記符号化ユニットが、DCバランシングとは関係なく符号化を実行し、前記システムが、
フル振幅除去に影響を与えずにDCバランシングを提供するために、前記Rビット符号語が変更されるべきかどうかを決定するように構成される決定ユニットをさらに含み、
DCバランシングを提供するために、前記Rビット符号語が変更されるべきであると決定された場合、前記決定ユニットは、前記Rビット符号語を前記Rビット符号語とは反対極性の重みの別のRビット符号語に変更するように構成される、請求項37に記載のシステム。 - 前記符号化ユニットが、
前記Rビット符号語内のフル振幅を除去する目的で、
前記2つの連続するNビットキャラクタのうちの少なくとも一方を、異なるビットパターンにマッピングするように構成されるマッピングユニットを含む、請求項38に記載のシステム。 - 前記符号化ユニットが、複数の符号化ユニットを含み、前記符号化が、前記2つの連続するNビットキャラクタの各々で、互いに独立した前記複数の符号化ユニットによって実行される、請求項38に記載のシステム。
- 前記符号化ユニットが、複数の符号化ユニットを含み、前記符号化が、前記2つの連続するNビットキャラクタの各々で、互いに並列した前記複数の符号化ユニットによって実行される、請求項38に記載のシステム。
- 前記2つの連続するNビットキャラクタの各々で前記符号化ユニットによって実行される前記符号化が、実質的に同じである、請求項38に記載のシステム。
- 前記2つの連続するNビットキャラクタの一方で前記符号化ユニットによって実行される前記符号化が、符号化ビットの異なる配列のため、前記2つの連続するNビットキャラクタの他方で前記符号化ユニットによって実行される前記符号化とは異なる、請求項38に記載のシステム。
- 前記Rビット符号語内の前記第3のフィールドは、前記2つの連続するNビットキャラクタのうちの前記第1のキャラクタ、前記第2のキャラクタ、もしくはその両方が異なるビットパターンにマッピングされたか、またはどちらも異なるビットパターンにマッピングされなかったかに基づいて、特定のビットストリング値に設定されるビットストリングであり、
前記Rビット符号語内の前記第3のフィールドは、前記第3のフィールドの先頭境界および末尾境界でフル振幅違反が発生しないことを保証するように提供される、請求項37に記載のシステム。 - 各Rビット符号語をシンボルからなる複数の組として前記単一伝送媒体を介して伝送するように構成される伝送ユニットをさらに含む、請求項37に記載のシステム。
- シンボルからなる前記複数の組が、10個のPAM−4シンボルに対応する、請求項37に記載のシステム。
- 前記符号化ユニットが、
前記単一伝送媒体上のカレントディスパリティを決定するように構成される決定ユニットと、
前記カレントディスパリティがゼロにより近くなるように、各Rビット符号語を、同じ重みをもつが、互いに対して異なる極性を有する符号語ペアのうちの一方の符号語に割り当てるように構成される割り当てユニットと、を含み、
それによって、結果として、前記単一伝送媒体上でDCバランシングを達成する、請求項37に記載のシステム。 - 前記符号化ユニットが、
カンマが前記Rビット符号語内に提供されるべきかどうかを決定し、提供されるべき場合、前記Rビット符号語の前記第1のフィールドもしくは前記第2のフィールドのどちらかまたは両方に、複数の所定のカンマパターンのうちの1つを含むように符号語マッピングを実行するように構成される決定ユニットを含み、
前記Rビット符号語の前記第1のフィールドもしくは前記第2のフィールドの一方または両方が、前記複数の所定のカンマパターンのうちの1つを含むかどうかに関係なく、受信機が符号語境界を決定することを可能にするために、前記Rビット符号語の前記第1および第2のフィールドのどちらかまたは両方で使用される前記カンマパターンは、前記第1および第2のフィールドで使用される非カンマのデータパターンとは異なる、請求項37に記載のシステム。 - 前記Rビット符号語の前記第1のフィールドもしくは前記第2のフィールドの一方または両方で使用される前記カンマパターンは、1つまたは複数の前記所定のカンマパターンを含む前記Rビット符号語上でDCバランシング演算が実行された後でさえも、前記カンマパターンがその一意性を保持することを可能にする特定のビットパターンを有し、それによって、前記受信機が、前記カンマパターンの検出に先立って前記Rビット符号語上で逆DCバランシング演算を実行することなく、前記Rビット符号語内で前記カンマパターンによって前記符号語境界を決定することを可能にする、請求項48に記載のシステム。
- Rビット符号語空間が、同じ重みをもつが、互いに対して異なる極性を有する複数のRビット符号語ペアを含み、前記Rビット符号語ペアの各々の中の一方の符号語は、複数の2ビットサブ符号語に対応し、複数の2ビットサブ符号語は、前記Rビット符号語ペアの前記各々の中の他方の符号語内で対応する位置に置かれたサブ符号語に対して最上位ビットが反転されている、請求項37に記載のシステム。
- 前記Rビット符号語の各々は、受信機が前記Rビット符号語の復号を実行する前に、逆DCバランシング演算が実行される必要があるかどうかを前記受信機が決定することを可能にする情報を含む、請求項37に記載のシステム。
- DCバランシングに関する前記Rビット符号語の各々に含まれる前記情報は、前記単一伝送媒体上で各Rビット符号語を表す複数のPAM−Lシンボルのうちの最初のシンボルで提供される、請求項51に記載のシステム。
- 2ビット以上の情報を表すデジタル信号が単一伝送媒体上を3以上の信号レベルで伝送され得る多値信号方式システムにおいて、デジタル信号を伝送するためのシステムであって、前記システムが、
N個のビットからなる組によって表されるデジタル値を符号化して、P個のシンボルからなる対応する組を得るように構成される符号化ユニットであって、P個のシンボルからなる各組は、PAM−L符号化方式において、P個のシンボルからなる前記組の中の隣り合うシンボルの間で少なくとも1つの1ステップ遷移を提供するように選択される符号化ユニットと、
P個のシンボルからなる前記組を単一伝送線路上で伝送するように構成される伝送ユニットと、を含み、
NおよびPは、整数値であり、Lは、4に等しいまたは4の整数倍の整数値である、システム。 - 前記符号化方式が、PAM−4符号化方式であり、伝送情報が、4つの異なるステップをそれぞれ表す4つの異なるシンボルによって表されることができ、00が第1のステップを表し、01が第2のステップを表し、11が第3のステップを表し、10が第4のステップを表す、請求項53に記載のシステム。
- 前記4つのステップの各々が、重みを割り当てられ、前記システムが、
N個のビットからなる前記組がRビット符号語に割り当てられる符号語空間を定義するように構成される定義ユニットであって、前記符号語空間が、重みは等しいが、極性は反対の複数のRビット符号語ペアを含む定義ユニットと、
前記単一伝送線路上のカレントディスパリティを決定するように構成される決定ユニットと、
前記カレントディスパリティがゼロにより近くなるような方法で、N個のビットからなる前記組の各々に対応する前記Rビット符号語ペアの一方を割り当てるように構成される割り当てユニットと、
前記Rビット符号語ペアの前記割り当てられた一方を、前記PAM−L符号化方式で、P個のシンボルからなる対応する組として、前記単一伝送線路上で伝送するように構成される伝送ユニットと、をさらに含む、請求項54に記載のシステム。 - 前記符号化ユニットが、P個のシンボルからなる前記組を前記単一伝送線路上で受信する受信機においてクロックデータ回復を達成するように符号化を実行する、請求項53に記載のシステム。
- 前記PAM−L符号化方式が、PAM−4に対応する、請求項53に記載のシステム。
- 情報送信および受信方法であって、
カンマキャラクタが2キャラクタ情報パケットのうちの第1のキャラクタ部分もしくは第2のキャラクタ部分のどちらかまたは両方において提供されるべきかどうかを送信機で決定するステップと、
提供されるべき場合、一意的なビットパターンを、対応する前記第1のキャラクタ部分もしくは前記第2のキャラクタ部分、または両方のキャラクタ部分に提供するステップと、
前記2キャラクタ情報パケットをシリアル伝送線路上に出力されるN個のPAM−Lシンボルからなる系列として符号化するステップと、
N個のPAM−Lシンボルからなる前記系列を受信機で受信するステップと、
N個のPAM−Lシンボルからなる前記系列のビットパターンに基づいて、N個のPAM−Lシンボルからなる前記系列に対応するデータの第1のキャラクタ部分もしくは第2のキャラクタ部分または両方が、カンマキャラクタであるかどうかを決定するステップと、
カンマキャラクタである場合、前記カンマキャラクタに基づいて、前記シリアル伝送線路を介して受信された隣り合うキャラクタの間のデータ境界を決定するステップと、を含み、
NおよびLは、整数値である、方法。 - Nが10であり、Lが4である、請求項58に記載の方法。
- 情報送信および受信システムであって、
送信機であって、
カンマキャラクタが2キャラクタ情報パケットのうちの第1のキャラクタ部分もしくは第2のキャラクタ部分のどちらかまたは両方において提供されるべきかどうかを決定するための第1の決定ユニットと、
カンマキャラクタが提供されるべきであると前記第1の決定ユニットが決定した場合、一意的なビットパターンを、対応する前記第1のキャラクタ部分もしくは前記第2のキャラクタ部分、または両方のキャラクタ部分に割り当てるための割り当てユニットと、
前記2キャラクタ情報パケットをシリアル伝送線路上に出力されるN個のPAM−Lシンボルからなる系列として符号化するための符号化ユニットと、を含む送信機と、
受信機であって、
前記シリアル伝送線路を介して送信されたN個のPAM−Lシンボルからなる前記系列を受信するための入力ユニットと、
前記入力ユニットによって受信されたN個のPAM−Lシンボルからなる前記系列のビットパターンに基づいて、N個のPAM−Lシンボルからなる前記系列に対応するデータの第1のキャラクタ部分もしくは第2のキャラクタ部分または両方が、カンマキャラクタであるかどうかを決定するための第2の決定ユニットと、
カンマキャラクタがN個のPAM−Lシンボルからなる前記系列内に存在すると前記第2の決定ユニットが決定した場合、前記カンマキャラクタに基づいて、前記シリアル伝送線路を介して受信された隣り合うキャラクタの間のデータ境界を決定するためのデータ境界決定ユニットと、を含む受信機と、を備え、
NおよびLは、整数値である、情報送信および受信システム。 - Nが10であり、Lが4である、請求項60に記載の情報送信および受信システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/024,052 US7081838B2 (en) | 2004-12-29 | 2004-12-29 | 16b/10s coding apparatus and method |
PCT/US2005/046963 WO2006071825A2 (en) | 2004-12-29 | 2005-12-28 | 16b/10s coding apparatus and method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008526170A true JP2008526170A (ja) | 2008-07-17 |
Family
ID=36353656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007549535A Withdrawn JP2008526170A (ja) | 2004-12-29 | 2005-12-28 | 16b/10s符号化装置および方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7081838B2 (ja) |
EP (1) | EP1834459B1 (ja) |
JP (1) | JP2008526170A (ja) |
CN (1) | CN101112060A (ja) |
AT (1) | ATE429114T1 (ja) |
DE (1) | DE602005014015D1 (ja) |
WO (1) | WO2006071825A2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010213263A (ja) * | 2009-02-10 | 2010-09-24 | Panasonic Corp | 送信装置 |
WO2016129088A1 (ja) * | 2015-02-12 | 2016-08-18 | 日立マクセル株式会社 | 送信装置、受信装置、および送受信システム |
WO2018110480A1 (ja) * | 2016-12-16 | 2018-06-21 | パナソニックIpマネジメント株式会社 | 符号化方法、復号化方法、伝送方法、復号化装置、符号化装置、伝送装置 |
JP2019020614A (ja) * | 2017-07-19 | 2019-02-07 | 日本オクラロ株式会社 | 光送信モジュール |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100630686B1 (ko) * | 2004-06-24 | 2006-10-02 | 삼성전자주식회사 | 전송 데이터의 스큐를 감소시키는 데이터 코딩 방법과이를 이용한 인코딩 장치 및 디코딩 장치와 이들을구비하는 송수신 장치 및 그 송수신 방법 |
US7242329B2 (en) * | 2005-02-02 | 2007-07-10 | Gm Global Technology Operations, Inc. | Method and system for prioritizing data values for robust data representation |
US7487426B2 (en) * | 2005-10-17 | 2009-02-03 | Enigma Semiconductor, Inc. | 64b/66b coding apparatus and method |
US7405679B1 (en) * | 2007-01-30 | 2008-07-29 | International Business Machines Corporation | Techniques for 9B10B and 7B8B coding and decoding |
US7769048B2 (en) * | 2008-06-25 | 2010-08-03 | Intel Corporation | Link and lane level packetization scheme of encoding in serial links |
WO2010019250A2 (en) * | 2008-08-11 | 2010-02-18 | Solarflare Communications, Inc. | Method of synchronization for low power idle |
CN101754053B (zh) * | 2008-12-10 | 2012-11-14 | 湖州瑞万思信息技术有限公司 | 一种光纤通信网交换机的信令降频方法 |
JP5657242B2 (ja) * | 2009-12-09 | 2015-01-21 | 株式会社東芝 | 半導体装置及びメモリシステム |
CN101764617B (zh) * | 2009-12-22 | 2012-05-30 | 清华大学 | 一种9b/10b码的编码方法 |
CN103238304B (zh) * | 2011-10-26 | 2016-11-16 | 松下知识产权经营株式会社 | 多值振幅调制装置、多值振幅解调装置及使用它们的传送系统、以及多值振幅调制方法及多值振幅解调方法 |
CN104247357B (zh) * | 2012-04-19 | 2016-12-21 | 松下知识产权经营株式会社 | 多值信号发送装置及接收装置、多值信号传输系统及方法 |
US8964879B2 (en) * | 2012-07-18 | 2015-02-24 | Rambus Inc. | Crosstalk reduction coding schemes |
CN105847077B (zh) * | 2016-03-17 | 2019-03-08 | 华为技术有限公司 | 一种检测多路串行数据冲突的方法及装置、设备 |
US10110343B2 (en) * | 2016-06-29 | 2018-10-23 | Mapper Lithography Ip B.V. | Method and encoding device for encoding a sequence of m-bit pattern words and outputting a frame comprising corresponding n-bit symbols |
US9887707B2 (en) * | 2016-06-30 | 2018-02-06 | Mapper Lithography Ip B.V. | Method and device for generating a decoded and synchronized output |
US10599606B2 (en) * | 2018-03-29 | 2020-03-24 | Nvidia Corp. | 424 encoding schemes to reduce coupling and power noise on PAM-4 data buses |
US11966348B2 (en) | 2019-01-28 | 2024-04-23 | Nvidia Corp. | Reducing coupling and power noise on PAM-4 I/O interface |
US11159153B2 (en) | 2018-03-29 | 2021-10-26 | Nvidia Corp. | Data bus inversion (DBI) on pulse amplitude modulation (PAM) and reducing coupling and power noise on PAM-4 I/O |
US10657094B2 (en) | 2018-03-29 | 2020-05-19 | Nvidia Corp. | Relaxed 433 encoding to reduce coupling and power noise on PAM-4 data buses |
US10491435B2 (en) * | 2018-03-29 | 2019-11-26 | Nvidia Corp. | Unrelaxed 433 encoding to reduce coupling and power noise on PAM-4 data buses |
US10404505B1 (en) * | 2018-05-10 | 2019-09-03 | Nvidia Corp. | Bus-invert coding with restricted weight range for multi-level signaling |
US10623200B2 (en) | 2018-07-20 | 2020-04-14 | Nvidia Corp. | Bus-invert coding with restricted hamming distance for multi-byte interfaces |
US10840971B2 (en) * | 2018-08-21 | 2020-11-17 | Micron Technology, Inc. | Pre-distortion for multi-level signaling |
CN109165001B (zh) * | 2018-08-24 | 2020-07-10 | 京东方科技集团股份有限公司 | 编码方法、装置及显示装置 |
CN110417811B (zh) * | 2019-08-22 | 2021-08-10 | 上海兆芯集成电路有限公司 | 比特流编码压缩的方法及装置 |
CN112532342B (zh) * | 2019-09-17 | 2023-05-16 | 华为技术有限公司 | 一种背反射通信中的数据传输方法和装置 |
CN112491506B (zh) * | 2020-09-17 | 2022-11-08 | 天津瑞发科半导体技术有限公司 | 一种pam-m容错传输系统与方法 |
US11757567B2 (en) * | 2021-03-10 | 2023-09-12 | Samsung Electronics Co., Ltd. | Devices and methods for encoding and decoding to implement a maximum transition avoidance coding with minimum overhead |
US11824563B2 (en) * | 2021-03-10 | 2023-11-21 | Samsung Electronics Co., Ltd. | Encoding and decoding apparatuses and methods for implementing multi-mode coding |
KR20220140234A (ko) * | 2021-04-09 | 2022-10-18 | 삼성전자주식회사 | 멀티 레벨 신호 시스템에서 최적 전이 코드를 생성하기 위한 신호 처리 방법 및 반도체 장치 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4486739A (en) | 1982-06-30 | 1984-12-04 | International Business Machines Corporation | Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code |
US5974464A (en) * | 1995-10-06 | 1999-10-26 | Silicon Image, Inc. | System for high speed serial video signal transmission using DC-balanced coding |
US6198413B1 (en) * | 1999-07-01 | 2001-03-06 | International Business Machines Corporation | Partitioned DC balanced (0,6) 16B/18B transmission code with error correction |
US6538584B2 (en) * | 2000-12-28 | 2003-03-25 | Intel Corporation | Transition reduction encoder using current and last bit sets |
US6696988B2 (en) * | 2000-12-29 | 2004-02-24 | Intel Corporation | Method and apparatus for implementing circular priority encoder |
US7158575B2 (en) * | 2001-08-17 | 2007-01-02 | Synopsys, Inc. | System and method for embedding a sub-channel in a block coded data stream |
US7260155B2 (en) | 2001-08-17 | 2007-08-21 | Synopsys, Inc. | Method and apparatus for encoding and decoding digital communications data |
US20030152154A1 (en) * | 2002-02-14 | 2003-08-14 | Johnson Ryan C. | Coding and decoding system and method for high-speed data transmission |
US6614369B1 (en) * | 2002-03-05 | 2003-09-02 | International Business Machines Corporation | DC balanced 7B/8B, 9B/10B, and partitioned DC balanced 12B/14B, 17B/20B, and 16B/18B transmission codes |
US7113550B2 (en) | 2002-12-10 | 2006-09-26 | Rambus Inc. | Technique for improving the quality of digital signals in a multi-level signaling system |
US6917312B2 (en) * | 2003-11-10 | 2005-07-12 | Rambus Inc. | Technique for improving the quality of digital signals in a multi-level signaling system |
-
2004
- 2004-12-29 US US11/024,052 patent/US7081838B2/en active Active
-
2005
- 2005-12-28 WO PCT/US2005/046963 patent/WO2006071825A2/en active Application Filing
- 2005-12-28 DE DE602005014015T patent/DE602005014015D1/de not_active Expired - Fee Related
- 2005-12-28 JP JP2007549535A patent/JP2008526170A/ja not_active Withdrawn
- 2005-12-28 EP EP05855510A patent/EP1834459B1/en not_active Not-in-force
- 2005-12-28 AT AT05855510T patent/ATE429114T1/de not_active IP Right Cessation
- 2005-12-28 CN CNA2005800474149A patent/CN101112060A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010213263A (ja) * | 2009-02-10 | 2010-09-24 | Panasonic Corp | 送信装置 |
US8494081B2 (en) | 2009-02-10 | 2013-07-23 | Panasonic Corporation | Transmission device |
WO2016129088A1 (ja) * | 2015-02-12 | 2016-08-18 | 日立マクセル株式会社 | 送信装置、受信装置、および送受信システム |
WO2018110480A1 (ja) * | 2016-12-16 | 2018-06-21 | パナソニックIpマネジメント株式会社 | 符号化方法、復号化方法、伝送方法、復号化装置、符号化装置、伝送装置 |
CN110089081A (zh) * | 2016-12-16 | 2019-08-02 | 松下知识产权经营株式会社 | 编码方法、解码方法、传输方法、解码设备、编码设备、传输设备 |
JP2019020614A (ja) * | 2017-07-19 | 2019-02-07 | 日本オクラロ株式会社 | 光送信モジュール |
JP6998691B2 (ja) | 2017-07-19 | 2022-01-18 | 日本ルメンタム株式会社 | 光送信モジュール |
Also Published As
Publication number | Publication date |
---|---|
ATE429114T1 (de) | 2009-05-15 |
WO2006071825A2 (en) | 2006-07-06 |
CN101112060A (zh) | 2008-01-23 |
US7081838B2 (en) | 2006-07-25 |
US20060139186A1 (en) | 2006-06-29 |
DE602005014015D1 (de) | 2009-05-28 |
WO2006071825A3 (en) | 2006-08-24 |
EP1834459A2 (en) | 2007-09-19 |
EP1834459B1 (en) | 2009-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008526170A (ja) | 16b/10s符号化装置および方法 | |
US7113550B2 (en) | Technique for improving the quality of digital signals in a multi-level signaling system | |
US20060126751A1 (en) | Technique for disparity bounding coding in a multi-level signaling system | |
US8718184B1 (en) | Finite state encoders and decoders for vector signaling codes | |
US6747580B1 (en) | Method and apparatus for encoding or decoding data in accordance with an NB/(N+1)B block code, and method for determining such a block code | |
US7260155B2 (en) | Method and apparatus for encoding and decoding digital communications data | |
US4486739A (en) | Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code | |
US7487426B2 (en) | 64b/66b coding apparatus and method | |
US6995694B1 (en) | Methods, software, circuits and systems for coding information | |
US20190199560A1 (en) | Decoder circuit for a broadband pulse amplitude modulation signal | |
EP0725486A2 (en) | Transmission code having local parity | |
JP5564896B2 (ja) | 符号化装置、符号化方法、及びプログラム | |
US20030152154A1 (en) | Coding and decoding system and method for high-speed data transmission | |
US6917312B2 (en) | Technique for improving the quality of digital signals in a multi-level signaling system | |
US7302631B2 (en) | Low overhead coding techniques | |
CN102741823B (zh) | 带有加扰数据的逗点对齐 | |
US6806817B2 (en) | Means and method of data encoding and communication at rates above the channel bandwidth | |
Shekar et al. | A 27S/32S DC-balanced line coding scheme for PAM-4 signaling | |
JP2003522470A (ja) | Pcmモデムシステムにおける180°位相不変送信を達成するためのための方法と装置 | |
RU2317642C2 (ru) | Способ кодирования цифрового сигнала для передачи информации | |
Chen et al. | DC-balance low-jitter transmission code for 4-PAM signaling | |
Bak et al. | An Overhead-Reduced Key Coding Technique for High-Speed Serial Interface | |
KR0145587B1 (ko) | 전송데이타의 천이 조절과 dc-균형이 가능한 코딩방법 및 시스템 | |
JPH01109826A (ja) | 符号変換方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20090303 |