JPH04280516A - エンコード方法及び装置 - Google Patents

エンコード方法及び装置

Info

Publication number
JPH04280516A
JPH04280516A JP3200087A JP20008791A JPH04280516A JP H04280516 A JPH04280516 A JP H04280516A JP 3200087 A JP3200087 A JP 3200087A JP 20008791 A JP20008791 A JP 20008791A JP H04280516 A JPH04280516 A JP H04280516A
Authority
JP
Japan
Prior art keywords
coder
byte
bit
state
code
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.)
Granted
Application number
JP3200087A
Other languages
English (en)
Other versions
JPH0789617B2 (ja
Inventor
Roy D Cideciyan
シデシアン、ロイ、ダロン
Erwin A Zurfluh
ツールフリュー、エルビン、アレクサンダー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH04280516A publication Critical patent/JPH04280516A/ja
Publication of JPH0789617B2 publication Critical patent/JPH0789617B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
    • H03M5/145Conversion to or from block codes or representations thereof
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting 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/4906Transmitting 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/4908Transmitting 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • G11B20/1426Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code conversion to or from block codes or representations thereof
    • G11B2020/14388 to 10 modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Dc Digital Transmission (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は夫々kビットを含む逐次
データバイトの夫々mビットのコードバイトへのエンコ
ードに関し、すなわち逐次データバイトは制限をもたな
いが任意のコードバイトシーケンスが拘束される〔例え
ばバウンデッドランニングディジタルRDS;同一記号
の制限されたランレングス(ラン長さ)〕ようになった
、k<mとしたkB/mBコーデングに関する。
【0002】詳細には数個の逐次データバイト群が同時
に夫々のコードバイト群に変換されうるようになったコ
ーダに関する。
【0003】本発明のコード化技術はディジタルデータ
転送並びにディジタルデータの磁気的あるいは光学的記
録に適用しうる。
【0004】
【従来の技術及び課題】通常の伝送障害の検出を容易に
するために伝送される信号に必要な拘束条件をラインコ
ードは与える。実際にしばしば必要な信号特性はDCに
おける0スペクトル、小さい低周波成分をもつスペクト
ル、一つの信号レベルから他への転位間の最大距離が小
さいこと、最小および平均転位密度が大きいことである
。光ファイバ伝送およびディジタル磁気記録に用いられ
るような2進伝送または記録法では伝送される信号のこ
れら必要な特性はチャンネルデータ速度の増加、すなわ
ちデータストリームへの冗長度のそう入(信号レベルセ
ットの拡大を伴わないコーディング)を行わない限り達
成出来ない。異なる2進コード化法の内、kビットバイ
トのデータをmビットコードバイトへのマッピングを行
うkB/mBブロックコードは非常に一般的である。 ここで述べるコード化法は8B/10Bブロックコード
である。
【0005】ラインコードの所望の特性は適用業務によ
り決定される。光ファイバリンクでは直流分のない伝送
コードが好適であり、その理由はレーザダイオード送信
器と高感度受信器が動作周波数の下限と上限できまる一
般的な交流結合設計となっているからである。上限周波
数は達成可能な最高チャンネルデータ速度を示し、下限
周波数は信号スペクトル内の許容しうる低周波成分の量
を決定する。レーザダイオードドライバにおける下限周
波数は平均出力を一定レベルに維持する制御ループによ
りきまる。直流成分のない、送信信号は直流シフトを受
けた信号に対処するために用いられるデータ基準回路を
送信器に必要としない。受信側の下限周波数は高機能増
幅器の前段回路の設計における寄生ノイズの良好な制御
を可能にするアナログ前置増幅手段のAC結合により与
えられる。
【0006】ランニングディジタル和(RDS)がバウ
ンドされるときにのみコードは直流成分なしとなる。値
RDSの数はコードスペクトルの低周波成分を決定しそ
してVで表わされる。ディジタル和の変動(DSV)は
V−1で与えられる。容量計算によればVはコード速度
8/10については6より小さくてはならない。また、
AC結合を容易にするにはV(またはDSV)が小さい
ほどコードスペクトル内の低周波までの出力抑圧は大き
くなる。受信側での正確なタイミングの回復には2進シ
ーケンスをもって伝送される信号レベル+1と−1(ま
たはゼロ交点)との間に充分な転位がなくてはならない
。タイミング回復についてコードの性能を決定する三つ
のパラメータがある。すなわち、同一記号の最大ラン長
R、エンコード化シーケンスにおける最小転位密度TD
min およびエンコード化シーケンスにおける平均転
位密度TDavである。容量計算によれば、Rはコード
速度8/10については3より小さく出来ない。
【0007】ラインコード用のデコーダは一般に無限の
エラー伝ぱんを避けるためにブロックデコーダとなって
いる。特に、kB/mBコード用のブロックデコーダは
その入力における単一のmビットコードバイトにおける
エラーがその出力における単一のkビットデータバイト
にのみ影響するという望ましい特性を有する。そのよう
なブロックデコーダはその入力が許容されたコードバイ
トではないmビットバイトであるときフラグを上げるこ
とにより無効コードバイトを検出するためにも用いられ
る。ブロックデコーダの他の特徴はその同期化、すなわ
ち入来するシリアルビットストリームからコードバイト
の境界を推断する能力である。これは一般にmビット同
期バイトにjビット同期パターンを入れそしてそれを伝
送されるコードバイトストリームにそう入することで行
われる。それにより、このjビット同期パターンはそれ
がそのコードバイトストリーム内のどこにも生じえない
ように選ばれる。同期バイトに関連する他の望ましい特
性はコードバイトが伝送エラーにより同期バイトについ
て誤りをおかす確率を低下させるために1以上のビット
についてすべてのコードバイトとは異なることである。
【0008】また、kB/mBラインコードはフレーミ
ングと制御のために用いることの出来る適正な数の特別
なmビットバイトを与えることがしばしば必要となる。 データを表わさないこれら特別のバイトはコード拘束条
件を満たさねばならない。最後に、非常に高いチャンネ
ルデータ速度でのエンコーダ/デコーダは実行と相互接
続のために多バイトインターフェースを提供しなければ
ならない。
【0009】光ファイバでのパケット伝送用の直流成分
を含まない区画化されたブロック8B/10Bコードは
米国特許第4,486,739号に示されている。この
コードは3B/4Bおよび5B/6Bコードからのコー
ドバイトをインターリーブして簡単な論理インプリメン
テーションを可能にし、そして次の特性を有する:並列
バイト形コーディング;DCを含まぬライン信号;V=
7(DSV=6);R=5;TDmin =30%;T
Dav=60%;1ビット伝送エラーが1バイトの誤り
を生じること(ブロックデコーダ);有効コードバイト
の検出能力;制御用に9個の特別なバイトおよび3個の
同期用バイト。これら同期バイトの1つはすべてのコー
ドバイトとは2個以上のビットで異なる。しかしながら
、この同期バイトのくり返しは許されない。他の2個の
同期バイトは1ビットだけいくつかのコードバイトとは
異なっており、30%および50%の遷移密度でくり返
しうる。コーディングを行うために用いられる論理ゲー
トは1ボーのインターバルを越えないゲート遅れをもた
なければならない。2.4Gビット/Sのチャンネルデ
ータ速度が0.416nsのゲート遅延に対応するとす
ると、このコーディングのこの速度での実行は非常に難
しくなる。米国特許第4488142号および同第48
88779号は、コーダが次の入力データビット群とは
別にエンコードされたデータからとり出されるコーダ状
態情報を受けるようになったコーディング装置を示して
いる。 しかしながらこのコーダ状態情報はエンコーダ装置の出
力にのみ得られるからこれらコーダでは並列エンコーデ
ィングは不可能である。
【0010】本発明の目的は無拘束データバイトシーケ
ンスを、数個のデータバイトの夫々のコードバイトへの
同時変換を可能にする或る拘束条件を満足するコードバ
イトシーケンスに変換するためのコーディング技術およ
び装置を提供することにある。本発明の他の目的は現在
のデータバイト群のエンコーディングが続けられている
間に次のデータバイト群のエンコーディングがスタート
されてパイプライン動作が可能となるようにするそのよ
うなコーディング技術および装置を提供することにある
。本発明の他の目的は現在のデータバイトブロックを越
えてのエラーの伝ぱんを伴わずにデコーディングを可能
にすると共にエンコーダおよびデコーダ装置の構造を非
常に簡単にするようなパイプライン形並列動作用のコー
ディング技術と装置を提供することである。
【0011】
【課題を解決するための手段】本発明の、k<mとして
少くとも2つの状態を有するコード化手順を用いて逐次
kビットデータバイトを予定の拘束条件を満足する逐次
mビットコードバイトにコード化するための方法は次の
段階を含む:前のデータバイトDB(i−1)のビット
値により、夫々のデータバイトDB(i)のコード化の
ための状態変化インジケータT(i−1)を発生する段
階;および下記段階によりq個のデータバイトDB(N
)…DB(N+q−1)を並列にコード化する段階;夫
々前のデータバイトDB(i−1)に関連するコーダ状
態インジケータS(i−1)と夫々前のデータバイトD
B(i−1)により発生される状態変化インジケータT
(i−1)を論理的に合成することにより夫々q個のデ
ータバイトからなるデータバイトセットでなるデータバ
イトDB(i)についてのコーダ状態インジケータS(
i)を同時に発生する段階;および上記q個のデータバ
イトからなるセットの夫々のデータバイトDB(i)を
関連するコーダ状態インジケータS(i)と共に割当て
られたmビットコードバイトCB(i)に変換する段階
【0012】本発明による、q個の並列セクションと少
くとも2個のパイプライン段を含む、コーダ装置は− 
 上記並列セクションの夫々が入力データバイトDB(
i)を出力コードバイトCB(i)に変換するために設
けてあり、そして、 −−  第1パイプライン段40において、データバイ
トDB(i)およびそれに関連するコーダ状態インジケ
ータS(i)用のレジスタ11および新しいコーダ状態
インジケータを発生するための手段32を有し、−− 
 第2パイプライン手段において、データバイトDB(
i)とそれに関連するコーダ状態インジケータS(i)
を入力13;15として受けそしてその出力21に夫々
のコードバイトCB(i)を出すコード変換手段19を
有し、 −  隣接するセクションの第1パイプライン段間に設
けられてコーダ状態インジケータを一つのセクションか
ら次のセクションへ転送するための相互接続手段30;
36が設けられている。
【0013】
【作用】このエンコーダ装置は並列そしてパイプライン
エンコーディングにより、例えばデータを光学リンクを
介してGビット/S速度で伝送すべきときに必要な非常
に高速の動作を行うことが出来る。
【0014】伝送コードは直流分を含まず、交流結合を
可能にするものであるからバイアス回復回路の使用を避
けることにより回路カウントを大幅に減少させるもので
ある。
【0015】
【実施例】用語の説明   ここで用いる用語「バイト」は予定数のビットを含
むビット群、例えば8ビットデータバイトおよび10ビ
ットコードバイトまたは一般にkビットデータバイトお
よびmビットコードバイトを示すために用いられる。与
えられた数のバイトが1つのワードを形成し、例えば4
個の10ビットコードバイトが40ビットコードワード
を構成する。用語「バイト」はここでは8ビットエンタ
ィティに限られない。更に、ここでバイトと呼ぶビット
群については、他の文献等において「データワード」お
よび「コードワード」として用いられているものと同じ
である。
【0016】本発明の方法および装置の特徴は状態遷移
機能Tとコーダ状態機能Sである。一般にこれらは「状
態遷移インジケータT」および「コーダ状態インジケー
タS」と呼ばれるが、これら機能はここに示す2状態コ
ーダの実施では2進であるから、ここでは「状態遷移ビ
ットT」および「コーダ状態ビットS」と呼ぶ。 1.コーディングの原理   図1は本発明の実施例に用いられる2つのコーダ状
態と4つのコーダ状態遷移を示す状態遷移図を示す。一
般にkビットデータバイトからmビットコードバイトへ
の変換が行われる。時点nにおいてコードバイト群Ai
jの内の1個のmビットコードバイトが時刻nでの状態
iから時刻n+1での状態jへの遷移の結果として発生
される。但しi=0,1、j=0,1である。ここで用
いる8B/10Bコードについては、|X|をX内のコ
ードバイトの数として、|A00|=|A01|=|A
10|=|A11|=128である。
【0017】時刻nでのコーダ状態は時刻n−1でのコ
ードバイトの発生後に達成される走行ディジタル和(R
DS)に等しい。RDSは2進ストリームのNRZ変調
後、すなわち0を−1に1を+1にマッピングした後に
計算される。状態0はRDS=−1に、状態1はRDS
=+1に対応する。従ってA00とA11のコードバイ
トのディスパリティは0(これらは0を5個、1を5個
有する)であり、A01とA10のコードバイトのディ
スパリティは夫々+2(4個の0と6個の1を有する)
および−2(6個の0と4個の1を有する)である。更
に、A00,A01,A10,A11のコードバイトは
それらが次の四つの拘束条件を満足するように選ばれる
。 a)  同一記号の最大走行長についての拘束条件A0
0,A01,A10,A11のコードバイトのいずれも
6個(あるいはそれ以上)の連続した0または1を含ま
ない。状態を0にするA00とA10のコードバイトは
4個の0または3個の1では終らず、状態1にするコー
ドバイトA01とA11は4個の1または3個の0では
終らない。 更に、状態0からのA00とA01内のコードバイトは
4個の1または3個の0でははじまらず、状態1から出
るA10とA11のコードバイトは4個の0または3個
の1でははじまらない。これらルールはコードバイトス
トリーム内の同一記号の最大走行長さが必ず5(R=5
)となるようにするものである。 b)  最小遷移密度についての拘束条件最小遷移密度
TDmin =40%は、1の次に0があるいは0の次
に1があるならば1回の遷移が生じるごとくにコードバ
イトのすべてが少くとも4回の遷移を有するようにそれ
らを選ぶことにより保証される。 c)  RDS値の最大数についての拘束条件a,a2
 …a10をRDS=−1で状態0から出るA00また
はA01内のコードバイトあるいはRDS=+1で状態
1から出るA10またはA11内のコードバイトとし、
b,b2 …b10を対応するNRZ変調波形、すなわ
ちai =1のときbi =+1、ai =0のときb
i =−1とする。A00またはA01内のコードバイ
トa,a2 …a10はi=3,4,…,10として−
3<−1+b1+b2 +…+bi <+3となるよう
に選ばなければならず、A10またはA11内のコード
バイトa,a2 …a10は−3<1+b1 +b2 
+…+bi <+3のように選ばれねばならない。これ
らルールはコードバイトストリーム内のRDSが七つの
値、−3,−2,−1,0,+1,+2,+3(V=7
)のみをもつようにするものである。 d)  同期バイトに関する拘束条件 フレーム同期化はデータ伝送前に同期バイトを送ること
で行われる。エンコーダが状態0(1)であるとき発生
されるこの同期バイトは0101111100(101
0000011)に選ばれそして固有の同期パターン1
011111(0100000)を埋込む。同期バイト
ストリームはこのとき遷移密度50%を有する。これら
コードバイトは、同期が失われた後にデコーダがコード
バイトの境界を再整合しうるように両同期パターンがコ
ードバイトストリームのどこにも発生しえないように選
ばれる。同期バイトまたはその補数とは1ビットだけ異
なるすべてのコードバイトも発生を許されない。これは
、遷移エラーのためにコードバイトが同期バイトとして
あるいは同期バイトがコードバイトとしてとり出される
確率を低下させる。逐次同期バイトからなる同期化シー
ケンスの伝送中にコーダ状態は夫々の同期バイト後に変
化する。すなわち2個の相補同期バイトが交互に用いら
れる。
【0018】テーブル1と2は夫々161個および12
9個の10ビットバイトを夫々含む潜在的なコードバイ
トの2つのリストPとQを与える。A00,A01,A
10およびA11のコードバイトのリストは、A00が
Pの部分集合、A01がQの部分集合であり、A11=
NA00およびA10=NA01であるように選ばなく
てはならず、NXはX内のすべてのバイトを補数とする
ことで得られる。この2つのリストPとQは上記のルー
ルに従って得られたものである。状態遷移ルールに従う
P,Q、NPおよびNQ内のバイトの連接は上記所望の
拘束条件を満足するバイトストリームをつくる。PとN
Pのみが共通のバイトを有すること、すなわちQ内のバ
イトはP,NPまたはNQには生ぜず、NQ内のバイト
はP,NPまたはQには生じないことに注意され度い。 最後に、各状態には256個のコードバイトのみが必要
であるから、制御目的に使用可能なバイトの数はPとQ
内のバイトの数の和から256を引いたもの、すなわち
161+129−256=34で与えられる。使用され
るべき(すなわちROMに記憶されるべき)実際のコー
ドバイト群については、128個のコードバイトが夫々
群PとQから選ばれる。この選択は任意であり、あるい
は残りの128個のバイト群が特定の適用業務について
選ばれる他の拘束条件を満足するようにされうる。その
ような選択でキャンセルされる34個のバイトは制御目
的用の特殊バイトとして使用可能である。
【0019】数Gビット/Sでの多バイトインターフェ
ースおよびエンコーダ/デコーダの実行を可能にする状
態遷移の原理を次に論じる。
【0020】要約すると、8B/10Bコードは次の特
性を有する: ・並列バイト形コーディング ・直流分のないライン信号 ・V=7(DSV=6) ・R=5 ・TDmin =40% ・TDav=63% ・単一ビット伝送エラーが1バイトのエラーを生じさせ
る(ブロックデコーダ) ・無効コードバイトを検出する能力 ・フレーミングと制御用の34個の特殊バイトおよび1
個の同期バイト ・同期バイトは最小2桁ビットでコードバイトとは異な
る ・同期バイトストリームの遷移密度は50%である・コ
ード性能を劣化させない多バイトインターフェース・非
常に高いチャンネルデータ速度での実行。 2.状態遷移   エンコーダが状態0(1)のときA00とA01(
A10とA11)内のコードバイトへの256個のデー
タバイトD0 ,D1 …D7 の割当ては二つのルー
ルに従う:1)  特定のエンコーダ状態には無関係に
同一のコードバイトは二つの異なるデータバイトに割当
てられない。 2)  D7 =0の128個のバイトの内の1個が状
態0(1)のエンコーダの入力にあれば、そのエンコー
ダはリストA00(A11)から1個のコードバイトを
選ぶ。すなわちエンコーダの状態はそのコードバイトの
発生後には変化しない。D7 =1の128個のバイト
の内の1個が状態0(1)のエンコーダの入力にあれば
、そのエンコーダはリストA01(A10)から1つの
コードバイトを選ぶ。すなわちこのエンコーダの状態は
そのコードバイトの発生後に変化する。
【0021】ルール1は、入力のコードバイトを元のデ
ータバイトにマッピングするブロックデコーダとしてデ
コーダを実現しうるようにする。このブロックデコーダ
の入力の10ビットバイト内のエラーは1個のデコード
されたデータバイトにのみエラーを生じさせる。デコー
ダ入力がA00,A01,A10およびA11にない1
0ビットバイトであるならば、そのデコーダは無効コー
ドバイトの検出を示すフラグを出す。
【0022】ルール2は一つのデータバイトの一つのビ
ットがエンコーダの状態を変えるようにする。すなわち
時刻n+1での次の状態は、時刻nでの入力データバイ
トの最終ビットが0、すなわちD7 (n)=0であれ
ば時刻nにおける現在の状態に等しく、D7 (n)=
1であれば時刻n+1での次の状態は時刻nでの現在の
状態に等しくない。D7 の選択は任意であり、そして
i=0,1,…,6として他の任意のビットDi をエ
ンコーダ状態の変更のために選ぶことが出来る。S(n
)を現在のエンコーダの状態、S(n+1)を次のエン
コーダ状態とする。上記の最も簡単な形での状態変化は
*をXOR動作を表わすものとしてS(n+1)=S(
n)*D7 (n)で表わすことが出来る。
【0023】状態変化の原理は一般化されそして他のエ
ンコーダで使用しうる。図1が|A00|=|A11|
および|A01|=|A10|のkB/mBコード用の
2状態エンコーダを示すものとする。各状態で発生しう
るmビットコードバイトの総数は|A00|+|A01
|=|A10|+|A11|=2k である。この場合
の状態変化はS(n+1)=S(n)*T(n)で表わ
される。この状態遷移変数T(n)は入力バイトの関数
であり、すなわち、|A00|ケースで値0、他のケー
スで1とするとT(n)=f(D0 (n),D1 (
n),…,Dk+1 (n))である。ここに述べる8
B/10Bコーディング法ではf(D0 (n),D1
 (n),…,D7 (n))=D7 (n)である。 3.実  行   8B/10Bブロックコーダ/デコーダは2または
4バイトについて並列に動作することが望ましい。イン
ターフェースのデータパス幅に合わせるための独立ブロ
ックコーダの複数のグループはコードの状態が主として
DSVの増加により低下するから好ましくない。
【0024】本発明の方法ではパイプライン動作および
2入力XORゲート機能により限定される単一帰還状態
変数を与えることにより実行される。この新しいコーデ
ィング法は多バイトインターフェースについて互いに独
立したコーダを設計するために固有の能力を与えるもの
である。 3a.基本コーダユニット   図2、3、4は本発明により動作する基本コーダユ
ニットの異なった形式を示す。このユニットはその入力
にデータバイトを受け、そしてその出力にエンコードさ
れたバイト(または後に示すように「コードバイト」)
を出す。
【0025】図2のコーダユニットではレジスタ11が
エンコード中のkビットデータバイトDB(N)および
夫々のデータバイトがエンコードされるときのエンコー
ダ状態を示すコーダ状態ビットS(N)を保持する。こ
のレジスタの内容はライン17のクロック信号CL−1
によりロードされている。このデータバイトはライン1
3(k本の並列ビットライン)上に、状態ビットはライ
ン15上にある。これらは一緒にエンコーダ19に与え
られる。エンコーダ19はライン13と15の入力によ
りアドレスされるときその出力ライン21にmビットコ
ードバイトCB(N)を出す単なるルックアップテーブ
ルである。これはライン17のクロック信号CL−1の
次のパルスの制御により出力レジスタ23に記憶される
。コードバイトはシフトクロック信号CL−2がライン
44に与えられるとき出力ライン25に得られる(直列
)。
【0026】次のデータバイトDB(N+1)は入力ラ
イン27に与えられる。次のコーダ状態ビットS(N+
1)は前に概説したように前のコーダ状態ビットS(N
)と前のデータバイトの関数とにもとづきライン29に
発生される。コーダ状態は前のデータバイトDB(N)
からとり出される2進関数により変化されあるいは変化
されない。排他OR(XOR)ゲート31が設けられ、
その2つの入力はライン15上の前のコーダ状態ビット
S(N)とライン33上の2進状態遷移関数Tを受け、
その出力35は新しいコーダ状態ビットを出す。 論理回路37は前のデータバイトDB(N)のビットか
ら2進状態遷移関数T(状態遷移ビットT)をとり出す
ためのものである。ライン17にクロック信号CL−1
の次のクロックパルスが生じると、この新しいデータバ
イトDB(N+1)と新しいコーダ状態ビットS(N+
1)がレジスタ11にロードされる。
【0027】レジスタ11、XORゲート31および論
理回路37は図2に点線ブロックで示す、以下DRCS
ブロック39と記す「データレジスタおよびコーダ状態
ブロック」39を形成する。この基本エンコーダユニッ
トは2つのパイプライン段を含み、段1は次のデータバ
イトDB(N+1)のコーディングを用意するDRCS
ブロック39からなり、段2はデータバイトDB(N)
とそれに関連する状態ビットS(N)をコードバイトC
B(N)に変換する単なるテーブルルックアップ機能を
もつ実際のエンコーダである。
【0028】図3にはこれと幾分似た基本コーダユニッ
トが示してある。このコーダユニットではライン33の
状態遷移ビットTは夫々のデータバイトの最後のビット
(D7)に同一である。これは図3に示すように論理回
路37を不要にする。更に、図3は好適なデータバイト
長を8ビット、コードバイト長を10ビットとして示し
てある。かくしてこのコーダは8/10コーダである。
【0029】DRCSブロックの他の例を図4に示す。 このDRCSブロックは本発明の一つの重要な利点であ
る複数の基本コーダユニットの並列配置に特に適してい
る。このDRCKブロック40はコード化されるべきデ
ータバイトDB(N)と関連するエンコーダ状態ビット
S(N)を保持するレジスタ11を有する。これらは夫
々出力ライン13と15に出る。次のデータバイトDB
(N+1)はライン27から入る。しかしながら、次の
コーダ状態ビットS(N+q)はライン30上の他の部
分から与えられる。他のコーダ状態ビットS(N+q+
1)は、コーダ状態ビットS(N+q)を、ライン27
にある次のデータバイトDB(N+q)から論理回路3
7によりとり出されるライン34上の状態遷移ビットT
(N+q)と組合せることにより、XORゲート32で
とり出される。このコーダ状態ビットS(N+q+1)
はライン36に出る(勿論、論理回路37を省略しライ
ン34をデータビットライン27の内の1本に接続する
ことによりこの実施例の設計を更に簡単にすることも出
来る)。
【0030】前述したように、このエンコーダの原理は
エンコーダのパイプライン動作並びに並列動作を可能に
する。夫々変更されたDRCSブロック40(例えば図
4)およびエンコーダ19を含むいくつかの基本コーダ
ユニットを並列に組合せることが出来、そしてコーダ状
態ビットを桁上げ機能のように1つのセクションから次
へと伝ぱんさせることにより夫々から同時にとり出すこ
とが出来る。 3b.多バイトエンコーダ(ワードエンコーダ)  4
個の並列コーダセクションを含むエンコーダのブロック
図を図5に示す。このセクションの数をシステムの必要
に応じて増加(例えば8個または16個)することも勿
論可能である。
【0031】図5において、図2、3、4と同じである
が複数となっている要素は同じ参照番号に文字を付して
示してある。4個のDRCSブロック40A,40B,
40C,40Dが設けられ、夫々がその入力ライン(2
7A…27D)に1つの入力データバイトを受けてその
出力ライン(13A…13D;15A…15D)にエン
コードされるべきデータバイトDBと対応するコーダ状
態ビットSを出す。夫々のDRCSブロックの、次のセ
クションのためのコーダ状態ビットを出す出力(36A
…36D)は次のデータバイト用にDRCSブロックの
入力(30B,30C,30D,30A)に接続する。 他方、最終セクションDとはじめのセクションAとの間
、すなわち出力36Dと入力30Aとの間のもどり接続
には最終セクションで発生されるコーダ状態ビットが1
クロックインターバル後に第1セクションに入るように
クロックされる遅延段42が設けてある。これにより4
バイト並列エンコーダ(ワードエンコーダ)のパイプラ
イン段1が構成される。
【0032】更に、夫々1データバイトをエンコードし
そして夫々の出力ライン(21A…21D)にコードバ
イトを出す4個のエンコーダ19A,19B,19C,
19D(ルックアップテーブル)が設けられる。これら
エンコーダは並列バイトエンコーダ(ワードエンコーダ
)のパイプライン段2を構成する。コード化されたバイ
トはライン17上のクロック信号CL−1の制御により
出力レジスタ(23A…23D)にロードされる。これ
らはライン44上のシフトクロック信号CL−2の制御
により出力ライン26に直列形式で出される。このシフ
トクロック信号の周波数はワードクロック信号CL−1
の40倍である。
【0033】動作は次の通りである。ある時点でDRC
Sブロック(データレジスタおよびコーダ状態ブロック
)は4個のデータバイトDB(N)…DB(N+3)お
よびそれらに関連するコーダ状態ビットS(N)…S(
N+3)を保持する。これらは出力ライン13A…13
Dと15A…15Dにおいても使用可能であり、エンコ
ーダ出力21A…21Dにコード化されたバイトCB(
N)…CB(N+3)が同時に生じるようにエンコーダ
19A…19Dをアドレスする。
【0034】またこの時点でDRCSブロックの入力に
は入力データバイトDB(N+4)…DB(N+7)が
生じる。コーダ状態ビットS(N+4)は遅延ユニット
42からDRCSブロック40Aの入力に出るが、コー
ダ状態ビットS(N+5)…S(N+7)はDRCSブ
ロック40A,40B,40Cの内部で発生されて夫々
隣りのDRCSブロック40B,40C,40Dに出さ
れる。このように、パイプライン段1の出力にはデータ
バイトDB(N)…DB(N+3)とそれらに対応する
コーダ状態ビットが出るが、パイプライン段1の入力は
次のデータバイト群(ワード)DB(N+4)…DB(
N+7)およびそれに対応するコーダ状態ビットを待つ
【0035】そして、次のワードクロック信号CL−1
のパルスが生じると、コード化されたバイトCB(N)
…CB(N+3)が出力レジスタ23A…23Dにロー
ドされ新しいデータバイトDB(N+4)…DB(N+
7)がDRCSブロック内のパイプラインレジスタにロ
ードされ、そして、前のデータバイトDB(N)…DB
(N+3)が消える。データバイトDB(N+7)とコ
ーダ状態ビットS(N+7)からすでにとり出されてい
るコーダ状態ビットS(N+8)はクロックされる遅延
段42に記憶されそして次のデータバイト群DB(N+
8)ffを処理すべきときに使用される。
【0036】4個の連続するコーダ状態ビットの同時発
生により可能となるこのパイプライン形の並列処理は非
常に高い動作をもたらすものである。コード化されない
データ速度を240Mバイト/Sとすると、これにより
得られる直列エンコードデータ速度(出力ライン26で
の)は2.4Gビット/Sであり、これは16.7ns
のエンコーダサイクル時間に相当する。 3c.8B/10Bブロックコーダの詳細  図6、7
は図5に示す原理を用いる多バイトブロックエンコーダ
の詳細回路図である。ここにおいても図2−4に示す要
素には同じ参照番号を用いている。このエンコーダは4
個のパイプラインレジスタ11A…11D、4個のエン
コーダ(ルックアップテーブル)19A…19Dおよび
4個の出力レジスタ23A…23Dを含む。
【0037】状態の更新は4個のXORゲート32A…
32Dの連鎖で行われ、そして状態更新は4バイトワー
ドにまたがり徐々に広がり4個のコーダ状態ビットSの
すべてを更新する。クロックされる1ビット遅延段42
は次のクロックインターバルまで最後のXORゲート3
2Dの出力を保持して第1のパイプラインレジスタ11
Aについて使用しうるようにする。
【0038】入力データバイトがエンコーダの第1パイ
プライン段に入る前にそれを保持するために4個の入力
レジスタ51A…51Dが設けてある。これらはライン
17のクロック信号CL−1の制御により新しいデータ
バイトでロードされる。各データバイトDBの個々のビ
ットをD0…D7で示す。
【0039】図6、7の実施例はすべてのデータバイト
レジスタ内の付加ビットZおよびデータビットラインD
0…D7に並列の入力ラインZを示す。この付加ビット
は夫々のデータバイトが実際のデータバイト(Z=0)
を構成するか制御バイト(Z=1)を構成するかを決定
する。前述したように、この新しいコーディングでは多
数の制御バイトが可能であり、それらはデータバイトか
ら区別されねばならない。これら制御ビットZもパイプ
ラインレジスタに入れられ、そして関連するデータバイ
トDB(N)と状態ビットS(N)と共にエンコーダル
ックアップテーブル(19A等)をアクセスするための
組合せアドレスとして用いられる。夫々のアドレスビッ
トをA0…A7,A8;A9で示している。
【0040】各エンコーダテーブルはパイプラインレジ
スタ(11A等)にある10ビット入力でアドレスされ
る、210個(すなわち1024個)の10ビットコー
ドバイトを記憶するROMである。このように、パイプ
ライン段2で行われる残りのエンコードプロセスは1つ
の10ビットバイト群から他の群への単なる変換である
【0041】各ルックアップテーブル19A…19Dの
出力は10ビットコードバイトQ0…Q9であり、これ
は出力レジスタ(23A…23D)に移される(ライン
17のクロック信号の制御により)。
【0042】4個の出力レジスタ23A…23Dの内容
は特殊なロードクロック信号(ライン53上)の制御に
よりシリアライザ55に移される。このシリアライザは
その入力の40ビット(4バイト)ワードを出力ライン
26上で40個の直列ビットのストリームに変換し、4
個の直列コードバイトを表わす(ライン44のシフトク
ロックCL−2の制御による)。
【0043】この回路の動作のこれ以上の説明は、それ
が図5について述べたエンコーダのそれと同じであるか
ら必要ではない。 3d.10B/8Bデコーダの説明   直列10ビットコードバイトを表わすビットストリ
ームを8ビットデータバイトに変更するデコーダを図8
、9に示す。
【0044】一つのバイトのデコーディングは前に伝送
されたバイトには全く依存せずそしてルックアップテー
ブルにより行われる。このブロックコードの特徴は伝送
ビットエラーにより生じるエラーの伝ぱんを防止する。 その結果、デコーダはエンコーダにおけるような状態ビ
ットを処理するための部分を必要としない。
【0045】入力ライン57のコード化されたビットス
トリームはライン61のシフトクロックの制御によりデ
シリアライザ59に入る。シリアライザはライン63に
ワードクロックを発生する(これは夫々4バイトの各群
についてすなわち各ワードについて1個のクロックパル
スを出す)。
【0046】4個のコードバイトCB(N)…CB(N
+3)はシリアライザにおいてワードクロック信号の制
御により4個のデコーダ入力レジスタ65A…65Dに
移される。これらレジスタの出力(各コードバイトのビ
ットB0…B9)は4個のデコーダテーブル(ルックア
ップテーブル)67A…67Dをアドレスする。それら
の出力は、デコードされたデータバイト(夫々ビットP
0…P7)を含む)と、関連するデータバイトがデータ
バイトか制御バイトかを決定する関連制御ビットZ(P
8)との組合せである。
【0047】デコードされたデータバイト、この例では
DB(N−4)…DB(N−1)と夫々の制御ビットZ
はライン63のワードクロックの制御により4個のデコ
ーダ出力レジスタ69A…69Dに記憶される。各バイ
トは夫々の出力ラインD0…D7(71A…71D)と
Z(73A…73D)に生じる。 4.変更例   上記した基本ユニットと実施例に対する変更または
改良を次に述べる。 4a.変更基本コーダユニット   図4においてDRCSブロック(データレジスタお
よびコーダ状態ブロック)は数個(例えば4個)の入力
データバイトの同時処理を可能にするための並列構成に
適するものとして示されている。そのようなユニットが
使用される場合、並列セクションの内の最後のセクショ
ンの状態ビットSが新しい値となるまで新しい入力デー
タバイト群の適用後にある遷移時間が必要である。この
遷移時間は論理ユニット37(すべての並列セクション
でそれらの状態が同時に変わる)の遷移時間と直列接続
されるすべての並列セクションのXORゲート32を通
じて新しい状態値がリップルするに要する時間の和に等
しい。このように、使用しうるライン17上のクロック
信号CL−1の最高周波数はこの遷移時間によりきまる
【0048】新しいコーダ状態値Sを発生するに必要な
この遷移時間による遅れを避けるために、DRCSブロ
ックの変形を図10のように設けることが出来る。この
ユニットでは状態遷移ビットTは入力バイトDBから前
もってとり出される。
【0049】このDRCSブロックの部分40−1は現
在エンコード中のデータバイトDB(N)および関連す
る状態ビットS(N)用のレジスタ11と、隣りのセク
ションからの状態ビットS(N+q)とライン34′上
の状態遷移ビットT(N+q)を組合せるためのXOR
ユニット32を含む。
【0050】付加的なDRCSブロックの部分40−2
は状態遷移ビットTの前もっての発生を可能にするため
に設けられていなければならない。この部分40−2は
夫々のコーダセクション用の次のデータバイトDB(N
+q)と状態遷移ビットT(N+q)を保持するための
付加レジスタ75を含む。レジスタ75の入力はライン
27′であり、これらを介して夫々のセクション用の更
に次のデータバイトDB(N+2q)が入る。論理回路
38は更に次のデータバイトから状態遷移ビットT(N
+2q)をとり出すためにこれら入力ライン27′に接
続する。この先行状態遷移ビットはライン17に次のク
ロックパルスが生じるとき夫々のデータバイトと共にレ
ジスタ75に記憶される。
【0051】この変形DRCSブロックはエンコーダの
並列バイトセクションの夫々について1個のレジスタ7
5を加えるだけで図4の実施例より、より高速の動作を
可能にし、高いクロック周波数を可能にする。 4b.変形コーダ状態ビット伝ぱん   図10のDRCSブロックでは予め記憶されたデー
タバイトDB(N+q)用のコーダ状態ビットS(N+
q)は左隣りのセクションから入り、必要な状態遷移ビ
ットT(N+q)はこのデータバイトDB(N+q)と
共に記憶され、そしてXORゲート32で右隣りのセク
ション用のコーダ状態ビットS(N+q+1)が発生す
る。
【0052】変形例では状態遷移ビットT(N+q−1
)とコーダ状態ビットS(N+q−1)は左隣りのセク
ション(これはS用の1本ではなくTとS用の2本の遷
移ラインを必要とする)から入り、XORユニットは夫
々のセクションでの使用と右隣りのセクションへの転送
のためのコーダ状態ビットS(N+q)を発生するため
に用いられる。このとき予め記憶された状態遷移ビット
T(N+q)は夫々のセクションでは用いられないが右
隣りのセクションに移される。最も右のセクションから
最も左のセクションへのコーダ状態ビットSと状態遷移
ビットTのもどり転送には1個ではなく2個の遅延レジ
スタ42が必要となる。 4c.異なるバイトサイズについての並列セクション 
 ここで用いる「バイト」なる用語は前述したように予
定数のビットを有する任意のビット群を意味する。
【0053】図5、6、7に示す並列パイプラインエン
コーダではすべての並列セクションはkビット(または
特に8ビット)の同一データバイトサイズおよびmビッ
ト(10ビット)の同一のコードバイトサイズについて
設計されている。
【0054】本発明のコード化原理を用いれば、これら
並列セクションに異なるバイトサイズを用いることも出
来る。例えば、4個の並列バイトセクションを有するコ
ーダを考えると、第1および第3のセクションはp/r
ブロックエンコード(例えば9/10ブロックエンコー
ド)を与え、第2および第4セクション(これらは第1
および第3セクションと相互に接続する)はu/wブロ
ックエンコード(例えば7/8ブロックエンコード)を
与える。異なるバイトサイズをもつユニットの組合せが
適用業務およびコード化要求により可能である。各セク
ションが隣りのセクションに次の状態ビットSを与え、
このセクションが他のセクションから入るコーダ状態ビ
ットおよびそれ自体の次のデータバイトの状態遷移機能
から次のコーダビットを発生しうるようにするだけでよ
い。 4d.多ビットコーダ状態インジケータおよび多ビット
状態遷移インジケータ   これまで述べたケースはコーダ状態関数S(i)と
状態遷移関数T(i)を値0または1である2進変数に
限定している。それ故、実施例の説明ではこれらを「コ
ーダ状態ビットS(i)」および「状態遷移ビットT(
i)」と記した。S(i+1)=g(S(i),T(i
))すなわち時刻i+1での有限の状態エンコーダの状
態S(i+1)が前の状態S(i)と状態遷移インジケ
ータT(i)=f(D0 (i),D1 (i)…,D
k−1 (i))によりきまるという本発明の基本的特
徴はコーダ状態インジケータS(i)と状態遷移インジ
ケータT(i)が夫々sとtの値をとるものであるとき
にも適用しうる。この場合、CEIL(log2 s)
とCEIL(log2 t)ビットが夫々S(n)とT
(n)を表わすために必要である。但し、CEIL(x
)はx以上の最小整数である。すべてのレジスタはS(
i)とT(i)を記憶しうる適当なサイズを有する。例
えば、図8のコーダユニットでは、レジスタ11は(k
+s)ビットを、レジスタ75は(k+t)ビットを記
憶しなければならない。また図2−8において、XOR
ブロック31,32はブール関数gを行う論理回路で置
き換えられ、そしてS(i)またはそしてT(i)を表
わすに2以上のビットが必要な場合には対応するライン
は多ビット変数を伝送すべく多ラインであらねばならな
い。
【図面の簡単な説明】
【図1】本発明のコード化技術の一実施例において用い
られる2個のエンコーダ状態間の考えられる遷移を示す
図。
【図2】本発明により、2状態コード化技術を用いてデ
ータバイトをエンコードするための基本回路のブロック
図。
【図3】次のデータバイトについてのコーダ状態を決定
するために単一ビットの現在データバイトを用いる簡略
化された基本エンコード回路のブロック図。
【図4】並列動作に適した図2の基本エンコード回路の
レジスタ手段の他の構成を示す図。
【図5】4個の並列セクションと2個のパイプライン段
を与える本発明によるエンコーダ装置の原理的ブロック
図。
【図6】図5の原理にもとづく8B/10Bエンコーダ
装置の詳細ブロック図。
【図7】図5の原理にもとづく8B/10Bエンコーダ
装置の詳細ブロック図。
【図8】図6、7のエンコーダについて動作するように
なった10B/8Bデコーダの詳細ブロック図。
【図9】図6、7のエンコーダについて動作するように
なった10B/8Bデコーダの詳細ブロック図。
【図10】各コーダセクションに1個の付加レジスタを
必要とするがより高速の動作を可能にする、図2の基本
コーダ回路のレジスタ段の変更例を示す図。
【図11】必要なコード拘束条件を与える、図6、7の
エンコーダにおけるROMの内容として用いられるべき
10ビットコードバイトの選択を示す。
【図12】必要なコード拘束条件を与える、図6、7の
エンコーダにおけるROMの内容として用いられるべき
10ビットコードバイトの選択を示す。
【符号の説明】
11  レジスタ 19  エンコーダ 23  出力レジスタ 31,32  XORゲート 37  論理ユニット 39,40  DRCSブロック 42  遅延段 51  入力レジスタ 55  シリアライザ 59  デシリアライザ 69  出力レジスタ

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】k<mとして少くとも2つの状態を有する
    コード化手順を用いて逐次kビットデータバイトを予定
    の拘束条件を満足する逐次mビットコードバイトにコー
    ド化するための、下記段階を含む方法:−  前のデー
    タバイトDB(i−1)のビット値により、夫々のデー
    タバイトDB(i)のコード化のための状態変化インジ
    ケータT(i−1)を発生する段階;および −下記段階によりq個のデータバイトDB(N)…DB
    (N+q−1)を並列にコード化する段階;−−  夫
    々前のデータバイトDB(i−1)に関連するコーダ状
    態インジケータS(i−1)と夫々前のデータバイトD
    B(i−1)により発生される状態変化インジケータT
    (i−1)を論理的に合成することにより夫々q個のデ
    ータバイトからなるデータバイトセットでなるデータバ
    イトDB(i)についてのコーダ状態インジケータS(
    i)を同時に発生する段階;および−−  上記q個の
    データバイトからなるセットの夫々のデータバイトDB
    (i)を関連するコーダ状態インジケータS(i)と共
    に割当てられたmビットコードバイトCB(i)に変換
    する段階。
  2. 【請求項2】−  2状態コード化手段が用いられそし
    て−  前記コーダ状態インジケータS(i)と前記状
    態変化インジケータT(i−1)が夫々状態変化ビット
    およびコーダ状態ビットにより表わされる2進量である
    、請求項1の方法。
  3. 【請求項3】前のデータバイトDB(i−1)に関連し
    たコーダ状態ビットS(i−1)、前記状態変化ビット
    T(i−1)の値が、前のデータバイトに関連する2進
    コーダ状態が維持されるかあるいは現在のデータバイト
    について変更されるかを決定するように、排他OR演算
    で前のデータバイトDB(i−1)により発生される状
    態変化ビットT(i−1)を論理的に合成する段階を更
    に含む請求項2の方法。
  4. 【請求項4】前記状態変化ビットT(i−1)を前のデ
    ータバイトDB(i−1)のビットの内の特定の1個(
    D7)に等しく選ぶ段階を含む請求項2の方法。
  5. 【請求項5】下記段階を更に含む請求項2の方法:一つ
    のセットの最終データバイトDB(N+q−1)および
    それに関連するコーダ状態ビットS(N+q−1)には
    無関係に発生されたコーダ状態ビットS(N+q)を別
    のレジスタ(42)に維持しそしてこのコーダ状態ビッ
    トS(N+q)を与えられた遅延後に次のq個のデータ
    バイトDB(N+q)…DB(N+2q−1)のセット
    の第1データバイトDB(N+q)のエンコード用の入
    力として用いる段階。
  6. 【請求項6】下記段階を更に含む請求項2の方法:− 
     各データバイトDB(i)に、夫々のデータバイトが
    実際のデータを表わすかまたは制御情報を表わすかを決
    定する付加制御ビットZ(i)を与える段階;−  各
    データバイトDB(i)を関連するコーダ状態ビットS
    (i)と関連する制御ビットZ(i)と共に割当てられ
    たコードバイトCB(i)に変換する段階。
  7. 【請求項7】任意の可能な逐次配置における前記mビッ
    トコードバイトが下記拘束条件を満足する請求項1の方
    法: (a)  同一記号のランレングス(ラン長さ)が予定
    の値Rに制限される; (b)  転移密度が予定の値TDmin により小さ
    くない; (c)  ランディジタル和RDSが異なった値の内の
    予定の数Vのみと仮定しうる; (d)  予定の同期化パターンSPとその補数NSP
    が決して生じない。
  8. 【請求項8】各コードバイトがm=10ビットを含み、
    これらコードバイトにより満足される拘束条件が下記の
    値を有する請求項7の方法: (a)  同一記号の最大ランレングスがR=5である
    ;(b)  最小転移密度がTDmin =40%であ
    る;(c)  ランディジタル和RDSについての異な
    る値の数がV=7である; (d)  同期化パターンSPがビットシーケンス10
    11111でありその補数NSPがビットシーケンス0
    100000である。
  9. 【請求項9】前記コードバイトが下記拘束条件を更に満
    足するようになった請求項8の方法: (e)  前記予定の同期化パターンSP(10111
    11)を組込んだ同期化バイトと補数同期化パターンN
    SP(0100000)を組込んだその補数が少くとも
    2ビットだけコードバイトの夫々から異なる。
  10. 【請求項10】q個の並列セクションと少くとも2個の
    パイプライン段を含む、請求項1の方法を実施するため
    のコーダ装置であって、 −  上記並列セクションの夫々が入力データバイトD
    B(i)を出力コードバイトCB(i)に変換するため
    に設けてあり、そして、 −−  第1パイプライン段(40)において、データ
    バイトDB(i)およびそれに関連するコーダ状態イン
    ジケータS(i)用のレジスタ(11)および新しいコ
    ーダ状態インジケータを発生するための手段(32)を
    有し、 −−  第2パイプライン手段において、データバイト
    DB(i)とそれに関連するコーダ状態インジケータS
    (i)を入力(13;15)として受けそしてその出力
    (21)に夫々のコードバイトCB(i)を出すコード
    変換手段(19)を有し、 −  隣接するセクションの第1パイプライン段間に設
    けられてコーダ状態インジケータを一つのセクションか
    ら次のセクションへ転送するための相互接続手段(30
    ;36)が設けられた、請求項1の方法を実施するため
    のコーダ装置。
  11. 【請求項11】下記条件を有する請求項10のコーダ装
    置: −  各セクションにおいて発生された前記新しいコー
    ダ状態インジケータは隣りのセクションにおいてエンコ
    ードされるべき次のデータバイトDB(i+q+1)に
    関連づけられるべきコーダ状態インジケータS(i+q
    +1)であり、 −  この新しいコーダ状態インジケータS(i+q+
    1)が前記相互接続手段(30;36)により前記夫々
    の隣接セクションに転送される。
  12. 【請求項12】下記条件を有する請求項10のコーダ装
    置: −  各セクションで発生される前記新しいコーダ状態
    インジケータはそのセクションでエンコードされるべき
    次のデータバイトDB(i+q)に関連づけられるべき
    コーダ状態インジケータS(i+q)であり、−  こ
    の新しいコーダ状態インジケータS(i+1)は前記相
    互接続手段(30;36)により前記夫々の隣接セクシ
    ョンに転送され、 −  状態転位インジケータT(i+q)を上記隣接セ
    クションに転送するための付加相互接続手段が設けられ
    、−  新しいコーダ状態インジケータを発生するため
    の前記手段(32)は入力として隣接セクションから前
    記相互接続手段および上記付加相互接続手段を介して転
    送されるコーダ状態インジケータおよび状態転位インジ
    ケータを受ける。
  13. 【請求項13】前記コーダは二つの異なる状態を有し、
    前記状態転位インジケータは状態転位ビットTで表わさ
    れる2進量であり、前記コーダ状態インジケータはコー
    ダ状態ビットSで表わされる2進量であり、更に下記要
    件を含む請求項10のコーダ装置: −  与えられたデータバイトDB(N+q)から状態
    転位ビットT(N+q)をとり出すための手段(34,
    37;34′,38,75)、 −  上記与えられたデータバイトDB(N+q)に関
    連する前記状態転位ビットT(N+q)とコーダ状態ビ
    ットS(N+q)を組合せそして上記与えられたデーダ
    バイトDB(N+q)に続くデータバイトDB(N+q
    +1)に関連づけられるべき新しいコーダ状態ビットS
    (N+q+1)を出す論理手段(32)。
  14. 【請求項14】前記q個の並列セクションの夫々におけ
    るコード変換手段として下記要件を含む請求項10のコ
    ーダ装置: −  すべての可能な出力コードバイトCB(i)を記
    憶する読取専用のテーブルルックアップメモリ手段(1
    9A…19D); −  前記第1パイプライン段における前記レジスタ(
    11A…11D)の内容によりアドレスづけ(15A…
    15D;A0…A9)される上記テーブルルックアップ
    メモリ手段。
  15. 【請求項15】下記要件を更に含む請求項10のコーダ
    装置: −  前記q個の並列セクションの夫々に設けられ、下
    記要件を含む第3パイプライン段(40−2);−− 
     エンコードされるべき次のブロックのデータバイトD
    B(N+q)およびそれからとり出される状態転位イン
    ジケータT(N+q)を保持するための付加レジスタ(
    75); −−  上記第3パイプライン段の入力において生じう
    る前の次ブロックのデータバイトDB(N+2q)から
    状態転位インジケータT(N+2q)を前もって発生す
    るための論理手段(38)。
  16. 【請求項16】下記要件を含む請求項10のコーダ装置
    : −  一方のセクションにおいて第1データバイト幅p
    を有するデータバイトを第1コードバイト幅qを有する
    コードバイトにそして他のセクションにおいて第2デー
    タバイト幅aを有するデータバイトを第2コードバイト
    幅wを有するコードバイトに同時にエンコードしうるよ
    うにデータバイトおよびコードバイトを転送するための
    、異なるレジスタサイズを有し異なるビットライン数を
    有する少くとも二つのセクション。
  17. 【請求項17】前記第1パイプライン段の前記レジスタ
    (11A…11B)の夫々に、制御ビットZ(i)用の
    付加ビット位置を含み、前記コード変換手段(19)は
    付加入力として制御ビットZ(i)をデータバイトDB
    (i)とそれに関連するコーダ状態インジケータS(i
    )と共に有する請求項10のコーダ装置。
JP3200087A 1990-08-16 1991-07-15 エンコード方法及び装置 Expired - Lifetime JPH0789617B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CH90810614.9 1990-08-16
EP90810614A EP0471130B1 (en) 1990-08-16 1990-08-16 Coding method and apparatus for pipelined and parallel processing

Publications (2)

Publication Number Publication Date
JPH04280516A true JPH04280516A (ja) 1992-10-06
JPH0789617B2 JPH0789617B2 (ja) 1995-09-27

Family

ID=8205946

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3200087A Expired - Lifetime JPH0789617B2 (ja) 1990-08-16 1991-07-15 エンコード方法及び装置

Country Status (6)

Country Link
US (1) US5177482A (ja)
EP (1) EP0471130B1 (ja)
JP (1) JPH0789617B2 (ja)
BR (1) BR9103454A (ja)
CA (1) CA2046953C (ja)
DE (1) DE69024045T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014531143A (ja) * 2011-08-16 2014-11-20 シリコン・ライン・ゲー・エム・ベー・ハー 符号化および/または復号化するための回路装置および方法

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5424881A (en) 1993-02-01 1995-06-13 Cirrus Logic, Inc. Synchronous read channel
EP0644544B1 (en) * 1993-09-21 1999-11-17 STMicroelectronics S.r.l. High-frequency pipelined RLL decoder
DE69330957T2 (de) * 1993-11-10 2002-04-04 Stmicroelectronics S.R.L., Agrate Brianza Programmierbarer RLL/NRZ-Dekoder für Einzel-/Doppel-Ausgangsdatenströme
SE503920C2 (sv) * 1994-10-03 1996-09-30 Ericsson Telefon Ab L M Sätt att synkronisera signaler och anordning härför
JP3339539B2 (ja) * 1995-12-13 2002-10-28 松下電器産業株式会社 デジタル変調装置、その方法及び記録媒体
US5663724A (en) * 1996-03-28 1997-09-02 Seagate Technology, Inc. 16B/20B encoder
JP3962439B2 (ja) * 1996-06-21 2007-08-22 パイオニア株式会社 情報記録装置及び情報記録方法並びに情報再生装置及び情報再生方法
US5907566A (en) * 1997-05-29 1999-05-25 3Com Corporation Continuous byte-stream encoder/decoder using frequency increase and cyclic redundancy check
JP3951441B2 (ja) * 1998-04-28 2007-08-01 ソニー株式会社 符号状態判定方法および符号化装置
US6351501B1 (en) * 1998-06-29 2002-02-26 National Semiconductro Corporation Apparatus and method for providing direct current balanced code
US6295010B1 (en) * 1998-07-02 2001-09-25 Seagate Technology, Llc 8B/10B encoder system and method
JP3474794B2 (ja) 1999-02-03 2003-12-08 日本電信電話株式会社 符号変換回路及び符号変換多重化回路
US6172623B1 (en) * 1999-03-22 2001-01-09 Rise Technology Company Efficient bit scan mechanism
FI106758B (fi) * 1999-04-16 2001-03-30 Nokia Networks Oy Segmentointimekanismi lohkoenkooderia varten
KR100315424B1 (ko) * 1999-12-24 2001-11-28 오길록 고속의 데이터 송신을 위한 개선된 8비트/10비트 인코더
US6480125B2 (en) 2000-06-09 2002-11-12 Seagate Technology Llc Method and apparatus for efficient encoding of large data words at high code rates
US6504493B1 (en) 2000-10-31 2003-01-07 Marvell International, Ltd. Method and apparatus for encoding/decoding data
US6847312B2 (en) 2001-03-19 2005-01-25 Kodeos Communications Symmetric line coding
US6501396B1 (en) * 2001-03-30 2002-12-31 Xilinx, Inc. Scalable physical coding sublayer (PCS) and 8B/10B encoder
US7123173B1 (en) * 2004-04-08 2006-10-17 Cypress Semiconductor Corporation Method and system for a feed-forward encoder
DE102004063950B4 (de) * 2004-08-07 2009-02-19 Tropf, Hermann Kanalcodiervorrichtung
DE102004038601B4 (de) * 2004-08-07 2006-08-24 Tropf, Hermann Kanalcodierungsverfahren und Codiereinrichtung
US7307453B1 (en) * 2004-10-12 2007-12-11 Nortel Networks Limited Method and system for parallel state machine implementation
US8949120B1 (en) 2006-05-25 2015-02-03 Audience, Inc. Adaptive noise cancelation
US8201071B2 (en) * 2006-11-15 2012-06-12 Qimonda Ag Information transmission and reception
US7961520B2 (en) * 2009-08-18 2011-06-14 Seagate Technology Llc Encoding and decoding to reduce switching of flash memory transistors
US9640194B1 (en) 2012-10-04 2017-05-02 Knowles Electronics, Llc Noise suppression for speech processing based on machine-learning mask estimation
US9236874B1 (en) * 2013-07-19 2016-01-12 Audience, Inc. Reducing data transition rates between analog and digital chips
US9536540B2 (en) 2013-07-19 2017-01-03 Knowles Electronics, Llc Speech signal separation and synthesis based on auditory scene analysis and speech modeling
US9799330B2 (en) 2014-08-28 2017-10-24 Knowles Electronics, Llc Multi-sourced noise suppression
KR102921871B1 (ko) * 2020-12-17 2026-02-02 삼성전자주식회사 데이터 전송 방법 및 데이터 전송 장치

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3995264A (en) * 1974-11-01 1976-11-30 International Business Machines Corporation Apparatus for encoding and decoding binary data in a modified zero modulation data code
US4486739A (en) * 1982-06-30 1984-12-04 International Business Machines Corporation Byte oriented DC balanced (0,4) 8B/10B partitioned block transmission code
US4551773A (en) * 1982-07-16 1985-11-05 Sperry Corporation Encoding and decoding apparatus and method utilizing hierarchical code substitution
JPS6048645A (ja) * 1983-08-29 1985-03-16 Sony Corp 情報変換装置
US4598326A (en) * 1983-10-18 1986-07-01 Honeywell Inc. Digital recording apparatus with disparity reducing encoder
DE3444315A1 (de) * 1984-12-05 1986-06-05 Deutsche Bundespost, vertreten durch den Präsidenten des Fernmeldetechnischen Zentralamtes, 6100 Darmstadt Schneller nb/mb-codierer
US4684921A (en) * 1985-06-13 1987-08-04 International Business Machines Corporation RLL (1,7) encoder with single state bit
US4688016A (en) * 1985-06-13 1987-08-18 International Business Machines Corporation Byte-wide encoder and decoder system for RLL (1,7) code
DE3608357A1 (de) * 1986-03-13 1987-09-17 Philips Patentverwaltung Multiplex- und nb/mb-codieranordnung
US4864303A (en) * 1987-02-13 1989-09-05 Board Of Trustees Of The University Of Illinois Encoder/decoder system and methodology utilizing conservative coding with block delimiters, for serial communication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014531143A (ja) * 2011-08-16 2014-11-20 シリコン・ライン・ゲー・エム・ベー・ハー 符号化および/または復号化するための回路装置および方法

Also Published As

Publication number Publication date
DE69024045D1 (de) 1996-01-18
CA2046953C (en) 1996-09-10
CA2046953A1 (en) 1992-02-17
JPH0789617B2 (ja) 1995-09-27
US5177482A (en) 1993-01-05
DE69024045T2 (de) 1996-06-20
EP0471130B1 (en) 1995-12-06
BR9103454A (pt) 1992-05-05
EP0471130A1 (en) 1992-02-19

Similar Documents

Publication Publication Date Title
JPH04280516A (ja) エンコード方法及び装置
JP3590209B2 (ja) 変調符号化方法
JP5064867B2 (ja) 同時スイッチングノイズを低減するプリアンブルを含むdcバランスエンコーディングされたデータのための送受信方法及びシステム
KR100306425B1 (ko) 런 길이 제한 코드를 실행하기 위한 시스템
JPH0821957B2 (ja) コード化方法
US5699062A (en) Transmission code having local parity
JPS58119273A (ja) 符号器
JPH07240720A (ja) チャネル変調方法、誤り訂正方法、状態マシン生成方法、コーディング方法、チャネル変調装置、誤り訂正装置
EP0344903A2 (en) Traversed (d, k) code translation
AU757911B2 (en) Arithmetic encoding and decoding of an information signal
US5818362A (en) 5B4T coding scheme
EP0537407A1 (en) Flexible encoding method and architecture for high-speed data transmission and storage
JP3240341B2 (ja) 情報変換方法及び記録再生装置
EP4216442B1 (en) Generalized near optimal packet encoding
JP2000078025A (ja) 符号化されたデ―タを処理する装置
KR100525726B1 (ko) 논리단 축소에 의한 고속 8비트/10비트 인코더/디코더
JP2023036033A (ja) データエンコーディング方法、エンコーダおよびデータデコーディング方法
JPH11145841A (ja) 変調装置および方法、復調装置および方法、並びに伝送媒体
KR20040033022A (ko) 변조 코드 시스템 및 다수의 적분에 의해 신호를 인코딩및 디코딩하는 방법
US6707396B2 (en) Device and method for parallel processing implementation of bit-stuffing/unstuffing and NRZI-encoding/decoding
CN100367675C (zh) 编码方法和设备
US7279928B2 (en) xB/yB coder programmed within an embedded array of a programmable logic device
JP3729129B2 (ja) 符号化方法、符号化装置及び記録方法
JP2794719B2 (ja) 符号変換装置
CN1404674A (zh) 信息处理系统