【発明の詳細な説明】
データの符号化および復号の方法および装置 技術分野
本発明は、データを符号化し復号する方法および装置、ならびに、そのような
方法および装置を組み込む通信システムに関するものであり、特に、コード化さ
れた直交周波数分割多重通信方式(すなわちcoded orthogonal frequency divis
ion multiplexingであって以下COFDMと略称する場合がある)のような多搬
送波周波数分割多重通信方式を使用してデータを伝送する方法、装置およびシス
テムに関するものである。背景技術
コンピュータに基づく強力な設備および装置の広範囲な使用の増加に伴って、
有線および無線の両方の技術に基づく高速で大容量の通信に対する必要性が急速
に増大している。この増大する要求に対処する1つの方法は、可能な限り高いシ
ンボル率で動作するように通信システムを設計することである。しかしながら、
シンボル率の増加は、典型的には、シンボル間の間隔がそれに相応して減少し、
そのため、受け取られるシンボルにおけるシンボル間干渉(すなわちinter-symbo
l Interferenceであり以下ISIと略称する)およびその結果としてのエラーを
発生させる。有線接続経路の場合、ISIは、例えば、通信経路の異なる部分の
間のインタフェースが完全に一致しない場合の信号の反射作用から発生すること
がある。無線接続経路の場合は、ISI発生ソースの大部分は、信号が横切る空
間における(建物のような)対象物からの信号反射を伴う多重経路伝搬であり、移
動無線通信は、該通信経路を使用する移動装置の移動によって移動装置に延伸す
る複数伝播経路の連続的で複雑な変動が発生するため、特にこのソースからのI
SIの影響を受けやすい。
通信システム容量を増加させISIに対する対策を講じるため活発に研究され
開発されている技術は、COFDM動作のような多搬送波(またはマルチトーン)
周波数分割多重動作である。COFDMシステムにおいては、複数のシンボルが
同時に伝送され、各シンボルは、間隔の狭い周波数を持つ複数の搬送波信号のう
ちの対応する1つの変調(例えば位相シフト・キーイング)を制御する。シンボル
が各搬送波上で伝送される伝送率に対する適切な関係を持つように伝送波周波数
問隔を選択することによって、各個別伝送波が、隣接する伝送波からの干渉を受
けずに復調されることができる(このようなケースを伝送波が相互に直交してい
るという)。1つのシンボル・ピリオド(すなわち1つのコード・ワード)の間に
それぞれの伝送波に同時に伝送されるシンボルのセットが、データ・シンボル(
すなわちデータ・ワード)の1つのグループを符号化するため選択されるが、こ
のセットには冗長性が含まれる(すなわち符号ワードはデータ・ワードより多い
シンボルを持つ)。この冗長性は、受け取りの際受け取ったシンボルにおけるエ
ラーの検出および必要な場合それらエラーの訂正のため使用される。
COFDMシステムは、複数シンボルの並列伝送によって、逐次処理システム
が個別シンボルを連続的に伝送するために使用される場合に必要とされるよりも
低いシンボル率で所望のデータ速度を達成することが可能とされるので、ISI
問題に対して部分的に対処する。比較的低いシンボル率は、各シンボルに対する
比較的長い持続時間、すなわちシンボル移行の間の比較的長い期間を意味し、こ
れがISIの影響を減少させる。冗長性の包含によって与えられるエラー検出お
よび訂正の能力は、信号強度の変動およびその他の原因による受け取りシンボル
に発生するいくつかのエラーを検出し訂正することを可能にすることによって、
データ破壊に対する抵抗力を強化する。
しかしながら、現在のCOFDMシステムは、実際に伝送された信号の典型的
なピーク平均エンベロープ・パワー比率(すなわちpeak-to-mean envelope power
ratioであり、以下PMEPRと略称する場合がある)のため、特定の送信信号
パワーに関する潜在的利益を最大限に引き出す上で困難な問題に遭遇する。この
信号は、実際には、各シンボル移行において変化するそれぞれの位相を持ち、密
に間隔をおいた周波数におけるいくつかの信号の総和であるので、低いがなお変
動する振幅の実質的に一層長いインターバルで間隔をあけた一時的明白なピーク
を示す傾向がある。送信機器は、クリッピングまたは他のゆがみなしにピークを
再生するように調節されなければならない。それによって、機器は、ピークの間
のインターバルにおいて、大部分の時間、その最大能力を十分下まわる信号レベ
ルで動作することができる。結果として、機器の地理的範囲は、その公称パワー
率に関して予期するものよりかなり低いか、または、所望の範囲をカバーするた
め非常に強力な機器が用意されるが、その稼働率は低くなる。
可能なデータ・ワードを符号化するコード・ワードの慎重な選択によって原理
的にはこの問題を軽減することができるということが知られている。この技術は
、例えば、Electronics Letters,8th December 1994,vol.30,no.25,pp.209
8-2099所載のA.E.Jones、T.A.WilkinsonおよびS.K.Barton3氏著の″Block codi
ng scheme for reduction of peak to mean envelope power ratio of multicar
rier transmission schemes(多搬送波方式のピーク平均エンベロープ・パワー率
の減少のためのブロック符号化方式)に記載されている。しかしながら、PME
PRを減少させるためコード・ワードを選択する際にコードが良好なエラー訂正
特性を持っていることを確認することがまた重要である。更に、高いスループッ
トの通信システムの実施は、長いコード・ワードおよび迅速な符号化/復号化プ
ロシージャの使用を含むことが望ましい。すなわち、特に復号の間に、(約16
ワード以上という)長いコード・ワードを用いる場合が典型的場合であるが、検
査されるべき有効なコード・ワードの数が大きい場合、既知の単純なルックアッ
プ・テーブルの使用は、コンパクトな(かつ低いパワーで廉価な)回路を使用する
迅速な動作の実行には役立たない。従って、例えばデータ・ワードまたはコード
・ワードのシンボルに関して相互変換を行うため例えば組合せ論理を実行したり
、あるいは、使用されるルックアップ・テーブルの大きさを少なくとも制限する
ような分析的プロシージャの観点から符号化および復号化操作が定義可能である
ことが望ましい。
更に、典型的なシステムにおいて使用されるコードを定義するため選択を行な
う対象となるコード・ワード量が少ないことによって別の問題が発生する。コー
ド・ワードのシンボルの数が増加するにつれ、2進数シンボルの場合でさえ可能
なコード・ワードの数は非常に急速に増加する。3つの(3進の)または4つの(
4
進の)可能な値を持つシンボルの場合、使用可能なコードの数は非常に短いコー
ド・ワードに関しても非常に大きくなるので、単にPMEPRを最小にするため
でもすべての可能なコード・ワードを単純に探索するのは現実的時間において不
可能である。エラー訂正および実施上の要件を充足する試みもまた、特に、所望
のサイズでありながら、同時に、PMEPR、エラー検出/訂正および符号化/
復号化の容易性に関する好ましい基準を満たすコード・ワード・セットが実際に
存在するか否かは不明であるので、単にそのような探索の困難性を付加するにす
ぎない。多数の異なるデータ・ワード(すなわち比較的多くのシンボルを含むデ
ータ・ワード)を符号化し許容可能な高データ伝送速度を達成することができる
ようにするため多数のコード・ワードを、選択されるコードにおける使用のため
、利用できるにしたいという欲求によって、この困難性は更に悪化する。
特定の種類のコードがいくつかの望ましい特性を持つことができるということ
は知られている。IEEE Transactions on Communications,vol.39,no.7,July
1991,pp.1031-1033所載のB.M.Popovic氏による論文"Synthesis of Power Effic
Ient Multitone Signals with Flat Amplitude Spectrum(平坦振幅分布を持つ効
率的パワーのマルチトーン信号の合成)"は、6dBV以下の(PMEPRに同等
の)波高率を持つマルチトーン多周波信号を構築するためどのようなバイナリま
たは多相の相補シーケンスでも使用することができることを教示している。例え
ば、IRE Transactions on Information Theory,vol.IT-7,Apr.1961,pp.82-8
7所載のM.J.E.Golay著'Complementary series(相補シリーズ)')のバイナリ相補
シーケンス・ペアのケースに見られるように、これらのシーケンスのいくつかの
例が開示されている。しかしながら、上記Provic氏の論文は、複数経路信号変動
および多重周波ジャムのような状況に向けられている。このような状況では必要
とされる信号を生成するため単一のコード・ワードを継続的に使用することがで
きる。従って、Provic氏の論文は、情報を運ぶ実際のコードにおけるPMEPR
に関する6dBV限界を達成するため複数シーケンスをどのように特定するする
ことができるかに関する指針を与えてなく、また、実際の実施に適するコードに
関する上記以外の必要条件になんら言及していない。Propovic論文は、「最小ピ
ークピーク振幅を持つ多周波信号の構築はいまだに分析的解決策を持たない古く
からある問題である」と記述している。
Golay相補シーケンス・ペアおよびそれを使用して定義されるコードはいわゆ
るGolayコードとは異なるものである点に注意すべきであり、混同されるべきで
はない。Golay相補シーケンス・ペアおよびGolayコードはそれぞれ別々に同一の
研究者によって最初に定義されたものであり、そのためその研究者の名前によっ
てそれらが呼ばれているにすぎない。
可能なコード・ワードの潜在的に巨大な検索空間にもかかわらず非常に多数の
異なるコード・ワードが実際に定義可能であるような形態で、PMEPRに関す
る予測可能な低い限度を提供し、エラー検出および訂正特性を指定し、高速回路
での実施が可能な、符号化および復号化の方法および装置を提供することが本発
明の目的である。発明の開示
本発明の1つの側面に従って、コード化された直交周波数分割多重通信方式(
すなわちCOFDM)のような多搬送波周波数分割多重通信方式を使用する伝送
のため2m個シンボルのコード・ワードとしてデータ・ワードを符号化する方法
が提供される。該方法は、それらデータ・ワードの値、および、上記伝送の所望
のピーク平均エンベロープ・パワー比率特性に関して、
という生成器マトリックスを有するコードの線形サブコードの1つまたは複数の
剰余類セットから上記伝送の所望のピーク平均エンベロープ・パワー比率に関し
て完全な剰余類の形態で選択されるコード・ワードに従って、データ・ワードを
符号化する。但し、この場合、zは0から2m−1までの整数値であり、yはm
から0までの整数値であり、xは(m+1)ビットの2進数として表される因子の
ビット単位乗数を示し、除算の結果は1桁値として表現される。
本発明の別の1つの側面に従って、コード化された直交周波数分割多重通信方
式(すなわちCOFDM)のような多搬送波周波数分割多重通信方式を使用する伝
送のため2m個シンボルのコード・ワードとしてデータ・ワードを符号化する方
法が提供される。該方法は、それらデータ・ワードの値、および、上記伝送の所
望のピーク平均エンベロープ・パワー比率特性に関して、
という生成器マトリックスを有するコードの線形サブコードの1つまたは複数の
剰余類セットから上記伝送の所望のピーク平均エンベロープ・パワー比率に関し
て完全な剰余類の形態で選択されるコード・ワードに従って、データ・ワードを
符号化するステップ、および、分析的符号器を使用して各コード・ワードを復号
するステップを含む。但し、この場合、zは0から2m−1までの整数値であり
、yはmから0までの整数値であり、xは(m+1)ビットの2進数として表され
る因子のビット単位乗数を示し、除算の結果は1桁値として表現される。
本発明の更に別の1つの側面に従って、コード化された直交周波数分割多重通
信方式(すなわちCOFDM)のような多搬送波周波数分割多重通信方式を使用す
る伝送のため、mが少なくとも4である2m個シンボルのコード・ワードとして
データ・ワードを符号化する方法が提供される。該方法は、それらデータ・ワー
ドの値、および、上記伝送の所望のピーク平均エンベロープ・パワー比率特性に
関して、という生成器マトリックスを有するコードの線形サブコードの1つまたは複数の
剰余類セットから上記伝送の所望のピーク平均エンベロープ・パワー比率に関し
て完全な剰余類の形態で選択されるコード・ワードに従って、データ・ワードを
符号化する。但し、この場合、zは0から2m−1までの整数値であり、yはm
から0までの整数値であり、xは(m+1)ビットの2進数として表される因子の
ビット単位乗数を示し、除算の結果は1桁値として表現される。
本発明のなおまた別の1つの側面に従って、コード化された直交周波数分割多
重通信方式(すなわちCOFDM)のような多搬送波周波数分割多重通信方式を使
用する伝送のため、mが少なくとも4であり、jが少なくとも3である各々が2j
の異なる可能な値を有する2m個のシンボルのコード・ワードとしてデータ・ワ
ードを符号化する方法が提供される。該方法は、それらデータ・ワードの値、お
よび、上記伝送の所望のピーク平均エンベロープ・パワー比率特性に関して、
という生成器マトリックスを有するコードの線形サブコードの1つまたは複数の
剰余類セットから上記伝送の所望のピーク平均エンベロープ・パワー比率に関し
て完全な剰余類の形態で選択されるコード・ワードに従って、データ・ワードを
符号化する。但し、この場合、zは0から2m−1までの整数値であり、yはm
から0までの整数値であり、xは(m+1)ビットの2進数として表される因子の
ビット単位乗数を示し、除算の結果は1桁値として表現される。
本発明の別の1つの側面に従つて、通信経路上での伝送のため、jが正整数の
変数である各々が2jの異なる可能な値を持つ2mシンボルのコード・ワードとし
てデータ・ワードを符号化する方法が提供される。該方法は、データ・ワードの
値、および、zが0から2m−1までの整数値を持ち、yがmから0までの整数
値を持ち、xが(m+1)ビット2進数として表現される因子のビット単位乗算を
示し、除算の結果が1桁値として表現されるとして、
という生成器マトリックスを有するコードの線形サブコードの1つまたは複数の
剰余類のセット内に含まれる値jのコード・ワードを持つコードに従ってデータ
・ワードを符号化する。
本発明の更に別の側面に従って、zが0から2m−1までの整数値を持ち、y
がmから0までの整数値を持ち、xが(m+1)ビット2進数として表現される因
子のビット単位乗算を示し、除算の結果が1桁値として表現され、各コード・ワ
ード・シンボルがj>2である2jの異なる可能な値を持ち、
という生成器マトリックスを有するコード・ワードのセットの範囲内で2m個シ
ンボルのコード・ワードを識別する方法が提供される。該方法において、上記マ
トリックスの行に関する係数が、複数の迅速アダマール変換または同等の変換方
式を2mシンボル入力ワードに適用し、その変換の結果を結合して上記コード・
ワードを識別することによって、上記マトリックスの行に関する係数が導出され
る。
本発明また別の1つの側面に従って、直交周波数分割多重通信方式(すなわち
COFDM)のような多搬送波周波数分割多重通信方式を使用する伝送のため2m
シンボルのコード・ワードとしてデータ・ワードを符号化する符号化器が提供さ
れる。該符号化器は、データ・ワードを受け取り、そのデータ・ワードの値、お
よび、zが0から2m−1までの整数値を持ち、yがmから0までの整数値を持
ち、xが(m+1)ビット2進数として表現される因子のビット単位乗算を示し、
除算の結果が1桁値として表現されるとして、
という生成器マトリックスを有するコードの線形サブコードの1つまたは複数の
剰余類セットから上記伝送の所望のピーク平均エンベロープ・パワー比率に関し
て完全な剰余類の形態で選択されるコード・ワードに従って受け取ったコード・
ワードを符号化する手段を備える。
本発明を実施する回路は比較的単純でコンパクトである。従って、例えば符号
化に使用されるコード・ワードの識別は、比較的長いコード・ワードの場合でさ
え膨大な数のコード・ワードをくまなく探索して時間を浪費する必要がない。同
様に、復号も存在する可能性のあるすべての有効なコード・ワードを含む(長い
コード・ワードに関して実用的でない)膨大なルックアップ・テーブルを必要と
しない。従来必要である、または、可能性の限界であると信じられてきた時間浪
費的探索や大きなルックアップ・テーブルと対比して、本発明の実用的実施形態
の単純性およびコンパクトさは、本発明が提供する顕著な進歩を示すものである
。図面の簡単な説明
コード化された直交周波数分割多重通信方式(COFDM)を使用してデータを
伝送する通信システムにおいて本発明に従ってデータを符号化および復号する方
法および装置は、以下のような添付図面を参照して記述される。
図1は、基地局と移動通信装置の間の多経路伝搬を示すブロック図である。
図2は、単一シンボルの伝搬に及ぼす多経路伝搬の影響を示すブロック図であ
る。
図3は、多経路伝搬から派生するシンボル間干渉を示すブロック図である。
図4a乃至図4hは、多搬送波周波数分割多重通信方式の使用によるシンボル
間干渉の減少を示すブロック図である。
図5は、COFDMシステムにおいて使用される符号化器および変調器を示す
ブロック図である。
図6は、図5の符号化器および変調器を組み込むCOFDMシステムのブロッ
ク図である。
図7は、いかなるPMEPRの制限もないCOFDM信号波形の一般形式を示
すグラフ図である。
図8は、8ビットのコード・ワードとして5ビットのデータ・ワードを符号化
するため本発明を取り入れた符号化器および復号器を示すブロック図である。
図9は、16ビットのコード・ワードとして8ビットのデータ・ワードを符号
化する符号化器を示すブロック図である。
図10は、図9の符号化器によって生成されたコード・ワードを復号するため
本発明を取り入れた復号器を示すブロック図である。
図11は、図9の符号化器によって生成されたコード・ワードを復号するため
使用できる復号器の代替形態を示すブロック図である。
図12は、16シンボル4進数コード・ワードとして13ビットのデータ・ワ
ードを符号化するため本発明を取り入れた符号化器を示すブロック図である。
図13は、図12の符号化器によって生成された4進数コード・ワードを復号
するため本発明を取り入れた復号器を示すブロック図である。
図14は、16シンボル8進数コード・ワードとして18ビットのデータ・ワ
ードを符号化するため本発明を取り入れた符号化器を示すブロック図である。
図15は、図14の符号化器によって生成された8進数コード・ワードを復号
するため本発明を取り入れた復号器を示すブロック図である。発明の実施形態
図1乃至図3は、都市環境における移動通信という条件における多経路搬送に
関わる問題を示すための図である。基地局10は無線を介してすなわちマイクロ
波波長で移動電話12のような移動通信装置と通信する。基地局10と電話12
の間には直接見通せる信号経路14があるが、建物やその他の構造物の形態での
(マイクロ波信号に対する)複数の反射体の存在のため複数の反射信号経路16も
また存在する。典型的にはこれらの経路の長さは異なり、従って、目的地までの
到達に種々の伝搬遅延を伴う。例えば移動電話12において受け取られる全般的
信号は、異なる経路を通して電話に到着する種々の信号の総和である。
伝送される信号は、(例えば位相シフトキーイングによって)搬送波を変調する
連続的シンボルを含むとみなすことができる。図2に示されるように、異なる伝
搬遅延を持つ複数の経路にわたる信号の結果、1つのシンボルに関して受け取ら
れる混成信号18はそのシンボルに関して伝送された信号20の正確な複製では
ない。特に、受信された混成信号は、典型的には、送信された信号より持続時間
が長く、送信された信号の正確な複製が完了した時点の後に大きな振幅の余波部
分を持つ。図3に示されるように、この余波部分が、時刻Tで名目的に終了する
パルスについて、シンボル期間の相当部分に延伸している場合、余波部分は、後
続のシンボルと重なりその受信を干渉する。この結果、その後続のシンボルは間
違って受け取られる可能性がある。すなわち、受信装置で検出されるそのシンボ
ルの値が、その他のソースのノイズがない場合でさえ、送信された通りの値を正
しく表現しない可能性がある。この種の信号の破壊は、符号間干渉(ISI)とし
て知られている。
ISIの影響は、図4aに示されるように、受信されるシンボルが多経路伝搬
遅延によって派生する余波を越えて延伸するように、送信されるシンボルの持続
時間を拡大することによって軽減することができる。続いて起こるシンボル率の
減少に対する対策として、各々が複数の搬送波のそれぞれ1つを変調する複数の
シンボルを同時に送信することが提案されてきた。従って、図4a乃至図4hに
示されるように、8搬送波が使用されるとすれば、各搬送波上のシンボル期間は
、同一の全般的シンボル率を維持することを前提とすれば(図3に示されるよう
な)単一搬送波について必要とされるものの8倍となる。多搬送波の間の周波数
間隔がシンボル期間の逆数の整数倍であるとすれば、搬送波の各々を変調する個
々のシンボル・ストリームを他の搬送波からの干渉を受けず復元することは可能
である。この技術は、直交周波数分割多重通信方式(すなわちOFDM)として知
られている。
複数搬送波の使用に加えて、ブロック符号化の使用によるエラー検出および訂
正能力の付与が提案されてきた。この場合、図5に示されるように、データ・シ
ンボル(この例では2進数のシンボル)の連続ストリームが、各々が5つのシンボ
ルを含む連続したグループまたはワードに概念的に分割される。5つのシンボル
からなる1つのグループは、対応する8ビットのコード・ワードを出力する5ビ
ット8ビット(5B/8B)符号化器30への入力とされる。このワード・ワード
は、インターバルΔfの間隔の8個の連続する周波数で搬送波を生成する8つの
発振器34からなる1つのバンクを制御する8つのフェーズ・シフト・コントロ
ーラ32の1つのバンクに適用される。コード・ワードに関する個々のビットの
各々によって、対応するフェーズ・シフト・コントローラは、正または負のいず
れかのフェーズ・シフトΔΦを与え、その現在値に応じて、それぞれの発振器に
よって生成される搬送波信号を変調する。
発振器34の変調された出力は加算機36において結合され、送信される信号
が生成される。実際には、発振器34および加算機36の機能は、図5において
点線で示されている部分38のように、反転高速フーリエ変換(すなわちIFF
T)を実装するデジタル信号プロセッサにおいて便宜上結合される。かくして、
図6を参照すれば、送信されるべきデータは、ブロック40において受け取られ
、直並列変換器42において並列形式に変換される。並列データが上述のように
符号化器30で符号化され、符号化されたデータは、変調器/IFFT32/3
8における多搬送波信号の生成を制御する。この多搬送波信号は、D/Aコンバ
ータ44においてアナログ形式に変換され、増幅され、そして送信機46に送ら
れる。
受信は以下のように本質的に上記プロセスの逆である。信号は受信機48によ
って受け取られ、増幅され、A/D変換器50によってデジタル形式に変換され
る。デジタル信号は、高速フーリエ変換(FFT)を実装するデジタル信号プロセ
ッサを備える復調器52に供給され、構成信号が、混成多搬送波信号に分離、復
調される。復調されたデータは、符号化器30によって適用された符号化を反転
させ、更に典型的にはエラー検出および訂正機能を実行する復号器54に渡され
る。その後、並列逐次コンバータ56がデータを逐次形式に変換して出力部58
へ送る。
符号化器30によって実施されるコードの選択は、送信機46の効率的な動作
に関して重要な意味を持つ。多搬送波信号は、等しい振幅および等しく間隔をあ
けた周波数を持ついくつかの正弦波の総和を含む。この結果、混成信号の最大絶
対値は、構成正弦波の相対的フェーズに非常に影響を受ける。これらの相対的フ
ェーズは、各シンボル期間の終了時に、次のシンボル期間の間に伝送されるべき
コード・ワードの値に従って、フェーズ・シフト・コントローラ32によって変
更される。相対的フェーズの特定のセット言い換えれば現在時コード・ワードの
値に従って、送信される信号の振幅は、図7に示されるように、変動はするが非
常に小さい値のインターバルと共に時折現れる明確なピークを持つであろう。こ
のように、送信される信号のピーク平均エンベロープ・パワー比率(PMEPR)
は相対的に大きい。
そのような信号がゆがみなしで送信されるためには、送信信号の振幅がそのピ
ークの値に達する時そのダイナミック・レンジの大部分がまれな場合を除いて使
用されないようにするため、送信機46は線形増幅器を使用し、それを比較的能
率の悪い状態で操作する必要がある。
伝送のデータを符号化するために実際に使用されるコード・ワードのセットの
適切な選択によってこの問題を減らすことが提案されてきた。PMEPRの極端
な値を作成するコード・ワードの使用を避けるブロック符号化の使用が、1995 I
EEE 45th Vehicular Technology Conference,July 1995,pp.825-829所載のT.
A.WilkinsonおよびA.E.Jones両氏著の"Minimisation of the peak to mean env
elope power ratio of multicarrier transmission schemes of block coding(
ブロック符号化の多搬送波伝送方式のピーク平均パワー・エンベロープ比率の最
小化)"において提唱されている。この提案はPMEPRの減少が可能なことを示
してはいるが、同時に、符号化および復号の効率的実施を可能にし、かつ、復調
された信号におけるエラーを検出し訂正するために要求される能力を提供するコ
ード・ワードのセットを選択することの困難性を指摘している。この問題に対処
する可能な方法は議論されてはいるが、実際の解決策は提示されていない。この
アプローチに対する修正が,1996 IEEE 46th Vehicular Technology Conference
,April 1996,pp.904-908所載の同じ著者による"Combined coding for error
control and increased robustness to system nonlinearities in OFDM(OFD
Mにおけるエラー制御のための組み合わせ符号化およびシステム非線形性に対す
る堅固性の増加)"に開示されている。この修正においては、所望のエラー訂
正および検出特性を備えるように線形ブロック・コードが選択され、次に、PM
EPRを低減させながら同等のエラー検出/訂正特性を維持するようにコードに
おける線形性および冗長性を開拓してコード値を新しい値に変換することが提案
されている。上記論文では、4B/7B、4B/8Bおよび11B/15Bとい
うコードが例として与えられていて、その場合、各コード・ワードに従つて変調
された多搬送波信号に関するPMEPRの順序ですべての可能なコード・ワード
値をリストすることを含むプロシージャによって、必要とされる変換が識別され
ている。そのような徹底的検索アプローチは(例えば15ビットという次数のよ
うな)比較的短いコード・ワードに関しては実行可能であるけれども、検査され
るべき可能なコード・ワードの数は、コード・ワードの長さと共に急速に増加す
る。32ビットのコード・ワードに関してさえ、潜在的に4,000,000,000を越え
るコード・ワードがリストされる必要があり、これはうまくいっても時間を浪費
するものであり、実際問題としておそらく回避すべきものである。コード・ワー
ドの適切なサブセットが検査されているセットの中に実際に存在することを保証
できないことによって上記の問題は更に増幅される可能性がある。
上記引用したPopovic氏の論文は、単一の2進数または多相の相補シーケンス
の使用を提案している。しかし、上記引用の1996年論文は、そのようなシー
ケンスはそれらのエラー訂正/検出能力に関連して修正することが容易ではない
ことを示唆している。
このように、エラー訂正および検出、当該コード・ワードに従って変調される
多搬送波信号の最大PMEPR、および(例えば組合せ論理の使用を含むような)
実際的な符号化器および復号器の簡単で効率的実施に関する所望の基準を満たす
多くの異なるコード・ワードを含むセットを特定する問題は依然として残ってい
る。この問題の大きさは、図5に示されているような8ビットのコード・ワード
を使用して5ビットのデータ・ワードを符号化する例を考察することによって確
認できる。一般的ケースでは、256の可能なコード・ワードがあり、そのうち
の32が32の可能なデータ・ワードを符号化するために選択されなければなら
ない。どのような特定のコード・ワードの組合せが上述の基準に対する適合に影
響を及ぼすかについての知識がない場合、256のうちのすべての可能な32コ
ード・ワードのサブセットを考慮する必要がある。すなわち、それら可能なサブ
セットは、256!/(224!*32!)=1041というオーダーの数に及ぶ。もしも8ビットの
データ・ワードが16ビットを使用して符号化されなければならないとすれば、
考慮しなければならない可能なサブセットは、65536!/(65280*256!)=10726とい
うオーダーの数となる。
図8は、以下のような特性を持つ5B/8B符号化器60および復号器80を
示している。すなわち、
・エラー検出:最小ハミング距離(すなわち有効なコード・ワードをなにか別の
有効なコード・ワードに変換するため、例えば干渉によってその値が変えられな
ければならないシンボルの最小数)が2であること(これを一般化すれば、2m個
のシンボルを含む2進数コード・ワードに関する距離は2m-2である)、
・8ビットのコード・ワードに従って変調された多搬送波信号の最大PMEPR
は例えば6dBVパワー・レベルに関して3dBであること、
・符号化されるデータに関するブロック・コードは、有効な高データ伝送率の達
成を可能にすることができるように十分多数の異なるコード・ワードを含むこと
、および、
・符号化器60および特に復号器80は、組合せ論理を使用して容易に実施する
ことができること、
である。
図8を参照すれば、符号化器60はその入力部において5つのデータ・ビット
を受け取る。これらの下位4ビットは、それぞれ対応する2進数乗算器62−6
8に接続し、第5の最上位ビットはセレクタ70に接続する。各乗算器62−6
8は、乗算器62:0101 0101、乗算器64:0011 0011、乗算器66:0000 111
1、および、乗算器68:1111 1111というそれぞれの固定8ビット値によって、
受け取った入力ビットを乗算するように構成される。実際には、各乗算器は、8
つの論理ANDゲートを使用して、入力ビットをそれぞれの固定8ビット値の各
ビットと別々に結合するように実施される。これらの4つの乗算器の出力は、ビ
ット単位の排他論理和回路(XOR)72に接続され、そこで、受け取った8ビッ
ト値のビット単位2進数加算(すなわち対応する有効ビットの加算モジュロ2)が
実行される。
入力ビットの最上位の値が0であるか1であるかに応じて、セレクタ70は、
0001 0010または0000 0110という2つの可能な8ビット値のうちの1つを選択す
る。選択された値は、XOR回路72の第5の入力に送られ、8ビットのコード
・ワードが出力される。図8の符号化器60は、32個の可能な5ビット・デー
タ・ワードを以下の表1のような8ビットのコード・ワードに符号化する。 復号器80は、その入力部において8ビット・コード・ワードを受け取り、そ
のビット値を8ビットの2次リードーマラー(RM)復号器82にかける。この復
号器は、例えばNorth-Holland,Amsterdam,1986,pp.385-388所載のF.J.MacWi
lliams、N.J.A.Sloane両氏著の'The Theory of Error-Correcting Codes(エラ
ー訂正コードの理論)'に記載されている多数論理復号という既知のリードーマレ
ー復号アルゴリズムを使用する。この復号器は、復号と、少なくともコード・ワ
ードの長さに関する限度までの入力コード・ワードのビット数に影響を与えるエ
ラー検出/訂正を同時に実行する。RM復号器82は、RM復号器の出力値を構
成する2セットの出力信号を生成する。信号の「2次」セット84(この場合3
個の信号)は、出力値の「ファミリ」または剰余類を識別し、信号の「1次」セ
ット86(この場合4個の信号)は、その剰余類の範囲内の特定の出力値を識別す
る。この1次の4個の信号86は、全体の復号器80によって出力されるデータ
・ワードの少なくとも下位4ビットに関する復号された値を直接作成する。2次
の3つの信号84はセレクタ88に接続され、そこで全体復号器80によって出
力されるデータ・ワードの第5の最上位ビットの値が生成される。具体的には、
セレクタ88は、3つの2次信号を記憶されている2つの3ビット値と比較する
。2次信号84が値101を持てば、セレクタは最上位出力ビットの値として2進
数0を与え、値110を持てば2進数1を与える。信号84が101または110以外の
値を持つ場合、RM復号器は受け取られた8ビット・コード・ワードを上記表1
に掲載されているコードではないと認識して、それがセレクタ88のデータ・エ
ラー出力部90における信号によって標示される。
16ビット・コードワードの観点から図11を参照して後述される代替的復号
技術は、有効なコード・ワード(符号化器によって出力され得るコード・ワード
)のみを出力する。
2次RM復号器82自体のエラー検出および訂正の能力は、RM復号器82の
組み込みによって全体復号器80に継承される。かくして、上述のように、コー
ドの最小ハミング距離は2である(m=3の場合2m-2=2)。復号器80は、コ
ード・ワードを形成するビットに影響を与える最高2m-2−1のエラーを検出す
ることができる。従って、m=3の場合、検出可能なエラーは1である。説明の
便宜上8ビットのコード・ワードに限れば、復号器80は、一般的ケースにおけ
る訂正可能なエラーの数は2m-3−1でありm=3とすればゼロに等しいので、
エラーの訂正を実際には保証できない。受け取ったコード・ワードにおける単一
ビット・エラーに関しては、2つの有効な8ビット・コードのいずれかが、場合
によっては、単一ビット位置の変更によって同一の受け取りコード・ワードを作
成するように影響されるであろう。実際には、上記の復号技術は有効である可能
性のあるコードのうちの1つを恣意的に選択するので、エラーを訂正することが
できるかもしれない(保証はされないが)。これより長いコード・ワード(後述)の
場合エラー訂正は可能である。
表1の8ビットのコード・ワードに従って変調された多搬送波信号のPMEP
Rは3dB以下である。復号器80は、解析手法を使用して(すなわちコード・
ワードのセットの範囲内における体系的パターンを活用して)動作し、例えば少
くとも部分的に組合せ論理を使用し実施することができる。セレクタ88はルッ
クアップ・テーブルであるが、このテーブルはコード・ワードのセット全体を含
まないし、ルックアッブ・テーブルという実施形態は必須のものではない。
表1のコードにおいて、許容可能なデータ伝送率(すなわちコード・ワードに
つき5データ・ビット)を提供する32個のコード・ワードがある。復号器80
自体は既知の2次RM復号器82を含むが、表1のコードは、2次リード−マラ
ー・コードを含まない点に注意する必要がある。2次リードーマラー・コードは
、長さ8の2次リードーマラー・コードの非線形サブセットであり、上述された
特性の新機軸で利点の多い組合せを持つ。そのようなコードが現在まで認識され
たことはない。同様に、復号器80は、7B/8B2次リード−マラー・コード
に従って符号化されたデータの復号を行う従来技術の8ビットの2次RM復号器
を使用しない。
図8の符号化器60および復号器80によって実施され所望の組み合わせの特
性を持つ5B/8Bコードは、以下のように導出され、比較的長いコード・ワー
ドでコードを生成するように拡張される。5B/8Bコードのための出発点は、「
基底」コードを定義する以下のような8ビット値の生成器マトリックスである。
(0000 1111)(X1)
(0011 0011)(X2)
(0101 0101)(X3)
(1111 1111)(X')
このマトリックスの各行は、以下の説明の便宜上、X1、X2、X3およびX'という符
号が付けられている。
基底コードは、この生成器マトリックスの行のすべての16個の線形の組合せ
を含むが、その組み合わせの形式は次の通りである。
a1X1(+)a2X2(+)a3X3(+)a'X'
但し、記号(+)はビット単位加算モジュロ2を示し、a1、a2、a3およびa'は0また
は1という値を取る係数である(注:記号(+)は、添付の図面を含む本明細書の一
部において、円で囲まれた十記号として表記される場合がある)。この基底コー
ドは線形である、すなわち、そのコード・ワードのうちの任意の2つのコード・
ワードに対するビット単位XOR演算の結果は、コード中の別の1つのコード・
ワードである。このコードのサブコードは、基底コードにあるコード・ワードの
いずれかのサブセットであり(また特に全体コードでもあり得る)、線形サブコー
ドがそれ自体線形であるようなサブコードである。実際には、サブコードは、有
用なシステムを構成するように、基底コードにおけるコード・ワードの十分な割
合を含まなければならない。実際の割合は、種々のパラメータ、特に、コード・
ワードの長さおよびコード・ワードにおける各シンボルに関する可能な値の数(
2進数の場合2つの値)に依存する。長さが8の2進コード・ワードという現在
のケースでは、基底コードにおける16のコード・ワードのうちの8つを含む線
形サブコードが十分なものであるかもしれない。より長いコード・ワードやより
可能なシンボル値に関しては、(4分の1、8分の1、16分の1など)2分の1
より小さい割合で十分よい場合がある。
行X1、X2およびX3のすべての可能なペアのビット単位乗算すなわちX1*X2、X1*X3
およびX2*X3によって導出される以下のような3つの付加的行を生成器マトリッ
クスと結合することによって8ビットの生成器アレイが作成される。
(0000 0011) (X1*X2)
(0000 0101) (X1*X3)
(0001 0001) (X2*X3)
記号*によって標示されるビット単位乗算は、乗算される2つの値の対応する位
置にあるビットを乗算するか、または、それら2つの値に関してビット単位論理
AND演算を実行する。
これら付加行は、ビット単位の排他論理和(XOR)演算(すなわちビット単位
加算モジュロ2)によって結合され、(長さ8のコード・ワードの場合)3つの2
次値または2次剰余類代表値を生成する。第1の剰余類代表値は、行(X1*X2)と(
X2*X3)を結合することによって次のように生成される。
(0001 0010)(X1*X2)(+)(X1*X3)
残りの剰余類代表値は、行識別子X1*X2およびX3のサブスクリプトのすべての可
能な順列を識別することによって次のように生成される。
(0001 0100)(X1*X3)(+)(X2*X3)
(0000 0110)(X1*X2)(+)(X1*X3)
(X1*X2)が(X2*X1)と同じ値を持ち、(X2*X3)が(X3*X2)と同じ値を持つので、(X1*
X2)(+)(X2*X3)および(X3*X2)(+)(X2*X1)は同じ値を持ち、相違はない。同様
に、順列(X1*X3)(+)(X3*X2)は、どの付加行が各剰余類代表値に含まれている
かを明示する目的から、同等の式(X1*X3)(+)(X2*X3)によって置き換えられて
いる。
最後に、これらの剰余類代表値の各々は、ビット単位排他論理和演算によって
基底コードの中のすべてのコード・ワードと結合され、以下の表2のような基底
コードの3つの剰余類からなるセットを構成する合計48個のコード・ワードが
生成される。
これらの48のコード・ワードのすべては、前述の特性の組合せを備え、最も
一般的ケースにおいてこれら48のコード・ワードの中からいずれを選択するこ
ともできる。実際問題として、2の整数累乗である多数のコード・ワードを使用
することが好ましく、それによって、符号化のため到来データストリームをブロ
ックヘ分割することが単純化され、更に、コード・ワードを同じ剰余類代表値を
持つ16のグループにおけるコード・ワードの選択および実施が容易となる。従
って、選択される剰余類代表値の数は、利用できる剰余類代表値の数よりは大き
くない最大の2の累乗値である。現在のケースでは、利用できるものは3であり
、対応する2の最大累乗数は、21すなわち2である。2つの剰余類代表値を選
択することは、32個のコード・ワードを提供する。従って、すべてのデータ・
ワードを符号化できる対応する最大の2進データ・ワード長は表1に示されるよ
うな5ビットである。
図8に示される符号化器60および復号器80の場合、セレクタ70の内部で
示されているように、剰余類代表値(X1*X2)(+)(X2*X3)(すなわち0001 0010)
および(X1*X2)(+)(X1*X2)(すなわち0000 0110)を持つコード・ワードが恣意的
に選択されている。また、入力データ・ワードの最上位ビットの値に従ってセレ
クタ70によって選択される値自身は、これら2つの剰余類代表値である。
特定の剰余類代表値の特定の入力、実際には特定の入力ビット位置(最上位ビ
ット)への割り当ては、任意であるが、符号化器のセレクタ70と復号器80の
セレクタ88の間では整合していなければならない。RM復号器82によって提
供される3つの2次信号84は、上記の8ビット生成器アレイにおける付加行(X1
*X2)、(X1*X3)および(X2*X3)に対応する。セレクタ88に記憶される3ビット
値の個々のビットはそれぞれこれら行の各々に対応する。各3ビットの値は、最
上位データ・ビットに関する特定の値と関連づけられ、3つの付加行のいずれか
のぺアが、(符号化器60において)そのデータ・ビット値に割り当てられた剰余
類代表値の中に現在存在するかを標示する。従って、値0を持つデータ・ビット
は剰余類代表値(X1*X2)(+)(X2*X3)を割り当てられ、それに対応して、付加行(
X1*X2)(+)(X2*X3)の剰余類代表値における存在が、そのデータ・ビット値に関
してセレクタ88に記憶されている3ビット値101の1ビットの位置によって標
示される。
また、図8に示されるように、符号化器60において、4つの最下位データ・
ビットに生成器マトリックスの行X3、X2、X1およびX'が乗算される。RM復号器8
2によって提供される1次信号86は、これらの行の各々に関する係数a3、a2、a1、
a'に対応する。これらの行の各々への特定入力データ・ビットの割り当ては、
同じ割り当てが符号化器60および復号器80で使用されることを前提として、
任意である。これが意味することは、特定の8ビットのコード・ワードの特定の
5ビットのデータ・ワードへの割り当ての可能性は、これらの行の各々への個々
の入力データ・ビットの割り当てによって支配されるが、割り当ては多数あり、
どのデータ・ビットがセレクタ70における剰余類代表値の選択を制御するかと
いう選択、および、その選択を行う剰余類の選択によって、割り当てが行われる
ということである。
上述のように、表2のコード・ワードは行X1、X2、X3およびX'からなる生成
器マトリックスを持つ線形サブコード(この場合全コード)の剰余類セットを構成
する。この種類の基底コードの使用は、所望のエラー検出および訂正特性を与え
る。線形サブコードの選択は、例えば組合せの論理を使用して、各剰余類の範囲
内でコンパクトに符号化および復号を実施することができることを保証する。剰
余類は、一般に、基底コードを可能なコード・ワードの全体空間の異なる部分へ
体系的にシフトまたは変換することであるとみなされる。線形のサブコードの剰
余類の使用によって、(すべてゼロまたはすべて1のような)特定の望ましくない
コード・ワードを回避することが可能とされ、その結果、特にPMEPRの値が
高くなるが、基底コードのエラー制御特性はある程度に維持される。そのような
剰余類セットからのコード・ワードの選択はPMEPRの良好な制御を可能にす
る。なぜならば、前述のように、基底コードの各剰余類は、広く類似した関連P
MEPRを持つコード・ワードを含む傾向があるからである。剰余類代表値が上
述のような識別された形式を持つような特定のケースでは、PMEPRは3dB
を上回らないことが観察される。
本発明の符号化および復号能力は、次のように比較的長いコード・ワードに適
用することができる。エラー制御および実施の容易さという利点を保持するため
、コード・ワードの長さは2の整数累乗であることが望ましい。
従って、8より大きい次のコード・ワードの長さは16である。16ビットのコ
ード・ワードに関する生成器マトリックスは次の通りである。
(0000 0000 1111 1111) (X1)
(0000 1111 0000 1111) (X2)
(0011 0011 0011 0011) (X3)
(0101 0101 0101 0101) (X4)
(1111 1111 1111 1111) (X')
16ビットの基底コードは、この生成器マトリックスの行のすべての32個の線
形の組合せを含み、以下のような形式の組み合わせである。
a1X2(+)a2X2(+)a3X3(+)a4X4(+)a'X'
但し、a1、a2、a3、a4およびa'は0または1の値を取る。
行X1、X2、X3およびX4のすべての可能なペアのビット単位乗算によって導出され
る以下のような3つの付加行を上記16ビット生成器マトリックスと結合するこ
とによって次のような対応する生成器アレイが作成される。
(0000 0000 0000 1111) (X1*X2)
(0000 0000 0011 0011) (X1*X3)
(0000 0000 0101 0101) (X1*X4)
(0000 0011 0000 0011) (X2*X3)
(0000 0101 0000 0101) (X2*X4)
(0001 0001 0001 0001) (X3*X4)
これら付加行は、ビット単位の排他論理和(XOR)演算によって結合され、1
2個の2次剰余類代表値を生成する。第1の剰余類代表値は、行(X1*X2)、(X2*X3
)および(X3*X4)を結合することによって次のように生成される。
(0001 0010 0001 1101) (X1*X2)(+)(X2*X3)(+)(X3*X4)
残りの剰余類代表値は、行識別子X1、X2、X3およびX4のサブスクリプトのすベての
可能な順列を識別することによつて次のように生成される。
(0001 0100 0001 1011) (X1*X2)(+)(X2*X4)(+)(X3*X4)
(0000 0110 0011 0101) (X1*X3)(+)(X2*X3)(+)(X2*X4)
(0001 0100 0010 0111) (X1*X3)(+)(X3*X4)(+)(X2*X4)
(0000 0110 0101 0011) (X1*X4)(+)(X2*X4)(+)(X2*X3)
(0001 0010 0100 0111) (X1*X4)(+)(X3*X4)(+)(X2*X3)
(0001 0001 0010 1101) (X1*X2)(+)(X1*X3)(+)(X3*X4)
(0001 0001 0100 1011) (X1*X2)(+)(X1*X4)(+)(X3*X4)
(0000 0011 0110 0101) (X2*X3)(+)(X1*X3)(+)(X1*X4)
(0000 0101 0110 0011) (X2*X4)(+)(X1*X4)(+)(X1*X3)
(0000 0101 0011 1001) (X1*X3)(+)(X1*X2)(+)(X2*X4)
(0000 0011 0101 1001) (X2*X3)(+)(X1*X2)(+)(X1*X4)
上述の場合と同様に、どの付加行が各剰余類代表値に含まれているかを明示する
目的から、一部の順列は同等の式によって置き換えらている。
最後に、これらの剰余類代表値の各々は、ビット単位排他論理和演算によって
16ビット基底コードの中のすべてのコード・ワードと結合され、以下の表3の
ような基底コードの12の剰余類からなるセットを構成する合訃384個のコー
ド・ワードが生成される。 これらコード・ワードのすべては、上述の特性に対応する次のよう特性を持つ。
・エラー検出:最小ハミング距離4(m=4の場合2m-2=4)。エラー訂正復
号器は1つのコード・ワードを構成するビットに影響を及ぼす最高3つの(2m- 2
−1=3)エラを検出し、そのようなエラーの1つ(2m-3−1=1)を訂正す
ることができる。
・表3の16ビットのコード・ワードに従って変調された多搬送波信号のPME
PRは3dBを越えない。
・許容可能なデータ伝送率の達成を可能にすることができるように十分多数のコ
ード・ワードが使用できる。
(2の整数累乗である多数のコード・ワードを使用し、同じ剰余類代表値を持
つ32のグループにおけるコード・ワードを選択する)好ましいケースに関して
、(剰余類代表値の数である)12を越えない最大の2の累乗値は23すなわち8
である。従って、好ましいケースにおいて、各々が32のコード・ワードの剰余
類のうちの8つが選択され、8ビットの長さのデータ・ワードに対応する256
個のコード・ワードが与えられる。
図9は、表3のコード・ワードを使用して本発明に従って8ビットのデータ・
ワードを16ビットのコード・ワードとして符号化する8B/16B符号化器1
00を示す。この符号化器は、入力データ・ワードの5つの下位ビットに16ビ
ットの生成器マトリックス行X4、X3、X2、X1およびX'をそれぞれ乗ずる5個の
2進乗算器102−110を含む。入力データ・ワードの3つの最上位ビットは
セレクタ112に供給され、セレクタ112は、それらの3つのビットの組み合
わせ値に従って8つの可能な剰余類代表値のうちの1つを選択する。図9に示さ
れる実施形態において、表3にリストされた12の可能な剰余類代表値のうちの
最初の8つがセレクタ112における使用のため選択されている。5個の2進乗
算器102−1105およびセレクタ112の出力が、ビット単位排他論理和(
XOR)回路114によって結合され、16ビットのコード・ワードが生成され
る。
図10は、16ビットのコード・ワードを対応するデータ・ワードに戻す復号
を行う復号器120の第1の実施例を示す。コード・ワードは、mの値は大きい
が図8の8ビット2次RM復号器82に対応する16ビット2次RM復号器12
2に供給される。RM復号器122によって生成される5つの1次信号124は
、全体復号器120によって出力されるデータ・ワードの5つの最下位ビットに
関する復号された値を提供する。これら信号124は、16ビットの生成器マト
リックスの行X4、X3、X2、X1およびX'に関する係数a4、a3、a2、a1およびa'に対
応する。生成器アレイの6つの付加行(X1*X2)、(X1*X3)、(X1*X4)、(X2*X3)、(X2
*X4)および(X3*X4)に相当するRM復号器からの6つの2次信号126は、全体
的出力データ・ワードの3つの最上位ビットの値を生成するため、セレクタ12
8に送られる。具体的には、セレクタ128はそれら6つの2次信号126の値
を図10に示される8つの6ビット値と比較する。これらの6ビットは、必要に
応じてソフトウェアかファームウェアの形態で実施される適切なプロシージャに
よって記憶または導出されることができる。各6ビットの値は、3つの最上位デ
ータ・ビットに関する特定の組合せの値に関連づけられ、6つの付加行のどの3
つの組み合わせが、当該組み合わせの3つのデータ・ビット値に(符号化器10
0において)割り当てられた剰余類代表値の中に存在するかを標示する。2次信
号126が8つの記憶された値のうちの1つを持つ場合、セレクタ128は、最
上位出力ビットとして対応する3つのデータ・ビット値を提供する。信号がその
他の値であれば、受け取った16ビットのコード・ワードは表3の最初の8つの
剰余類の中には含まれていないものとRM復号器122によってみなされ、この
事象がセレクタ128のデータ・エラー出力部130における信号によって標示
される。
エラー訂正コードを処理する機能を持ち、d=2m-2である復号器120のよ
うな最小ハミング距離がdであるいかなる復号器も、伝送されたコード・ワード
からの距離がd/2である受け取りコード・ワードを正しく復号する。しかしな
がら、復号器120は「最小距離」の復号器ではない。最小距離復号器は、たと
えその距離がd/2以上であっても受け取ったコード・ワードから最も少ない距
離を持つコード・ワードを復号するという特性を付加的に持つ。更に、データ・
エラー出力部130における信号の発生は、RM復号器122による2次リード
ーマラー・コード・ワード出力が不確定な結果であって、符号化器100によっ
て実際に出力されるものではあり得ないことを意味する。
図11は、有効なコード・ワード(すなわち符号化器100による出力であり
得るコード・ワード)のみを出力する代替的16ビット復号器140を示す。こ
の復号器は、このコード・ワード・セットに関する最小距離復号器である。
復号器140において使用される方法は、IEEE Trans.Inform.Theory,1986
,vol.IT-32,no.1,pp.41-50に記載のJ.H.ConwayおよびN.J.A.Sloane両氏
による「Soft decoding techniques for codes and lattices,including the G
olay code and the Leech lattice(GolayコードおよびLeech格子を含むコードお
よび格子に関するソフトウェア復号技術)」において記述されている「スーパー
コード」復号方法の1例である。各剰余類代表値に関して順番に、受け取ったコ
ード・ワードは、その剰余類代表値に対し排他論理和され、結果は、長さ16の
1次リード−マラー符号のエレメントRM(1,4)として復号され、同時にその復号
に「スコア」が割り当てられる。どのコード・ワードを復号すべきかの決定は、
代表値が最高のスコアを持つ剰余類を(複数の場合それらのうちの任意の剰余類
を)選択することによって行われる。
RM(1,4)のエレメントの復号は、North-Holland,Amsterdam,1986所載のF.J.Ma
cWilliamsおよびN.J.A.Sloane両氏による'The Theory of Error-Correcting Co
des(エラー訂正コード理論)'に記述されている迅速アダマール(Hadamard)変換法
を使用する。長さ2mの2進数シーケンスに関する迅速アダマール変換は、各々
が長さ2mの1次リード−マラー符号のエレメント・ペアRM(l,m)に関連する2m
個の変換コンポーネントを生成する。すべてのコンポーネントのうちで最大のも
のが復号を行うための「スコア」であり、復号アルゴリズムは、(関連するコー
ド・ワード・ペアのどれが使用されているのかを判断する当該コンポーネントの
符号を持つ)最大コンポーネンに対応するRM(l,m)エレメントを選択する。
図11を参照すると、復号器140は各16ビットのコード・ワードを排他論
理和(XOR)ゲート142に受け取り、そこでコード・ワードからの剰余類記憶
機構144における値のビット単位減算モジュロ2を実行する。(モジュロ2演
算の場合、ビット単位減算および加算は等しく、ビット単位排他論理和ゲートは
いずれの演算に対しても使用できる。ゲート142の機能は、以下の記述との整
合性を図るため減算として定義される。)剰余類記憶機構144は、符号化器1
00のセレクタ112によって選択が行われるものと同じ8つの剰余類代表値を
含む。同記憶機構144は、また、8つの可能な3ビット値のすべてを入力部1
48の増分信号に応答して連続的に循環する3ビット・カウンタ146を備える
。このカウンタの3ビットの現在値は、8つの剰余類代表値のうちのどれが排他
論理和ゲート142に供給されるか、すなわち、符号化器の場合と同じ剰余類代
表値と3ビット値の間の対応関係を制御する。このように、カウンタ146がそ
の8つの可能な値を循環するにつれ、8つの剰余類代表値の各々が排他論理和ゲ
ート142に順番に提供される。
現在時の剰余類代表値に関してゲート142によって出力される16桁2進数
ワードが、置き換え回路150に送られ、そこで、迅速アダマール法の適用のた
めエレメント値を一致させるため、そのワードの値+1および−1がそれぞれ2
進数値0および1に置き換えられる。
迅速アダマール変換(上記引用MacWilliams、Sloane両氏著の文献参照)または
その修正版(by Designs,Codes and Cryptography,vol.7,1996,pp.187-214所
載のA.E.AshikhnrinおよびS.N.Litsyn両氏著'Fast decoding algorithms for
first order Reed-Muller and related codes(1次リード−マラー符号に関する
迅速復号アルゴリズム)'参照)を実行するため、回路150から出力される16
シンボル・ワードは、いわゆる「Greenマシン」152へ送られる。Greenマシン
152の出力は、E0からE15までの符号がつけらている変換コンポーネントから
なる(長さ2mのコード・ワードという一般形の場合サブスクリプト15は2m-1によ
って置き換えられる)。コンポーネントE0は、コード生成器マトリックスの行の
最も左のシンボルに対応し、コンポーネントE15は最も右側のシンボルに対応す
る。これらのコンポーネントは比較器154に送られる。比較器154は、変換
コンポーネントの絶対値を比較し、最大絶対値|Ez|およびそれに対応する(0か
ら15までの)値zを識別する。最大絶対値を持つコンポーネントが複数あれば、
そのうちの1つが任意に選択される。比較器は値Ezおよびzをラッチ156へ
出力し、ラッチ156は、それらの値と併せて、記憶機構144のカウンタ14
6によって与えられる対応する3ビットのインデックス値を受け取る。
第1剰余類代表値に関して、ラッチ156は、受け取ったEz、zおよび剰余類
インデックスを単に記億する。(同じ16ビット入力コード・ワードに関して)カ
ウンタ146の増分にともなって、各連続的剰余類代表値がXORゲート142
に供給され、Ezおよびzのそれぞれの値がラッチ156に渡される。そのような
変換コンポーネントEzが現在ラッチされているコンポーネントより大きい絶対値
を持つ場合、ラッチは、新たに受け取った値を、それに関連するzおよび剰余類
インデックスと共に、選択する。
カウンタ146がすべての8つの可能な値を循環した時、ラッチ156の内容
は、図11のブロック158において復号された出力データに集められる。zの
値は,zが4ビットの2進数a1a2a3a4a'で表現される場合4つの復号された行係
数a4、a3、a2およびa1の値を直接決定する。第5の係数a'は最後のラッチされた
値Ezが正であればゼロで、負であれば1であり、剰余類インデックスは3つの最
上位出力ビットを構成する。
特に復号がハードウェアで実行される場合必要に応じて各剰余類代表値に対し
て連続的に行われるものとして迅速アダマール変換の実施形態が上述されている
が、各々に別々のGreenマシンを与えることによってすべての剰余類代表値に関
する必要な迅速アダマール変換を並列して計算することもできる。
前述した復号器120は、復号器140に比較して動作が迅速であるという利
点を一般的に持っている。従って、速度の利益を得るため復号器120を主要復
号器として使用することが望ましい。但し、RM復号器122からの信号126
が、データ・エラー出力部130において標示されるように符号化器100によ
って出力できないコード・ワードに対応していることが判明する場合、受け取っ
たコード・ワードを復号器140に送ることができる。復号器120と140の
間のそのような選択は、データ・エラー出力部130における信号の発生の頻度
によって表されるような現在時ノイズ・レベルに基づいて、適応することができ
る。そのような信号が相対的に多発し、現在の通信経路にノイズが多いことが標
示される場合、各コード・ワードに対する即時の使用のため復号器140を選択
し、一方、復号器120は通信品質を監視するため並列して継続使用することが
できる。データ・エラー出力部130における信号が減少すれば、復号器120
を再び主要復号器として選択することができる。
65,536個の可能な16ビットのコード・ワードのうちの表3に示された
特定の384個の16ビットのコード・ワードは、上述の異なる特性のすべて(
すなわち大きい最小ハミング距離、実際の実施のPMEPRの低い値、有用な数
の可能なコード・ワード)を同時に有して、従って、顕著で非常に有利な効用を
与える。特に、所望のレベルを越えないエラー制御特性を低いPMEPRと組み
合わせた比較的長いワードに関するコード・ワードのセットを発見することは手
に負えない問題であり、解決策が存在する確実性のない問題であった。本発明は
、このような組合せのみならず、実施の便宜性および満足の行くデータ伝送率が
達成されることを可能にする適切なサイズのコード・ワード母集団を提供する。
比較的長いコード・ワード長に関して対応する特性を持つコード・セットは、
表3を作成する上述のプロシージャを拡張することによって容易に識別すること
ができる。かくして、32ビットのコード・ワードに関する生成器マトリックス
は次の通りとなる。
(0000 0000 0000 0000 1111 1111 1111 1111)(X1)
(0000 0000 1111 1111 0000 0000 1111 1111)(X2)
(0000 1111 0000 1111 0000 1111 0000 1111)(X3)
(0011 0011 0011 0011 0011 0011 0011 0011)(X4)
(0101 0101 0101 0101 0101 0101 0101 0101)(X5)
(1111 1111 1111 1111 1111 1111 1111 1111)(X')
32ビット基底コードは、この生成器マトリックスの行のすべての64個の線形
組合せを含む。すなわち、以下のような形式の組み合わせである。
a1X1(+)a2X2(+)a3X3(+)a4X4(+)a5X5(+)a'X'
但し、a1、a2、a3、a4、a5およびa'はそれぞれ0または1の値を取る。
32ビット生成器マトリックスを、行X1、X2、X3、X4およびX5のすべての可能
な組み合わせのビット単位乗算によって導出される10個の付加行と組み合わせ
ることによって、対応する生成器アレイが作成される。それら付加行は次の通り
である。
(0000 0000 0000 0000 0000 0000 1111 1111) (X1*X2)
(0000 0000 0000 0000 0000 1111 0000 1111) (X1*X3)
(0000 0000 0000 0000 0011 0011 0011 0011) (X1*X4)
(0000 0000 0000 0000 0101 0101 0101 0101) (X1*X5)
(0000 0000 0000 1111 0000 0000 0000 1111) (X2*X3)
(0000 0000 0011 0011 0000 0000 0011 0011) (X2*X4)
(0000 0000 0101 0101 0000 0000 0101 0101) (X2*X5)
(0000 0011 0000 0011 0000 0011 0000 0011) (X3*X4)
(0000 0101 0000 0101 0000 0101 0000 0101) (X3*X5)
(0001 0001 0001 0001 0001 0001 0001 0001) (X4*X5)
これらの付加行はビット単位排他論理和演算によって結合され、(長さ32のコ
ード・ワードの場合)60個の2次剰余類代表値が生成される。このようにして
、第1剰余類代表値は、行(X1*X2)、(X2*X3)、(X3*X4)、(X4*X5)を組み合わせる
ことによって生成され、残りの剰余類代表値は、行識別子X1、X2、X3、X4および
X5のサブスクリプトのすべての可能な順列を明示的結果を生む式(X1*X2)(+)(X2
*X3)(+)(X3*X4)(+)(X4*X5)で識別することによって、作成される。
これらの剰余類代表値は、ビット単位排他論理和演算によって32ビット基底
コードのすべてのコード・ワードと各々組み合わせられ、基底コード60個の剰
余類のセットを構成する合計3840個の可能なコード・ワードが生成される。
これらの特定のコード・ワードは、以下のような特性組み合わせを提供する。
・コードの最小ハミング距離は(m=5の場合2m-2=8)8である。
・エラ訂正復号器は、コード・ワードを構成するビットに影響を及ぼす最高7つ
(2m-2−1=7)のエラーを検出し、最高3つ(2m-3−1=3)のエラーを訂正す
ることができる。
・これら特定の32ビットのコード・ワードに従って変調された多搬送波信号は
、
3dB以上のPMEPRを持たない。
・このコードに対する使用のための復号器は、解析手法を使用して操作すること
ができ、また、例えば、少くとも部分的に組合せの論理を使用して実施すること
ができる。
・許容可能なデータ伝送率が達成されることを可能にするため利用できるコード
・ワードが存在する。
32ビットの長さの4,000,000,000以上の可能なコード・ワードから選択された
これら特定の3840個の32ビットのコード・ワードは、上記の広範囲な種々
の特性を同時に持っていて、そのためそれらに関連する実際的な利益が得られる
。
(2の整数累乗である多数のコード・ワードを使用し、各々が同じ剰余類代表
値を持つ64個のコード・ワードのグループを選択する)好ましいケースの場合
、(剰余類代表値の数である)60を越えない2の最大累乗数は25の32である
。従って、好ましいケースにおいては、64個のコード・ワード各々の32個の
剰余類が選択され、11ビットの2進数データ・ワード長に対応する2048個
のコード・ワードが作成される。このケースでは、符号化器において、6個の入
力データ・ビットa1、a2、a3、a4、a5およびa'が32ビットの生成器マトリック
ス行X1、X2、X3、X4、X5およびX'それぞれのビットによって乗算され、入力デー
タ・ワードの残りの5ビットが、それらの5ビットの結合された値に従って32
個の選択された剰余類代表値のうちの1つの選択のためセレクタに供給される。
復号に関しては、32ビットの2次RM復号器が、(復号されるデータ・ワード
の6ビットを構成する)6つの1次信号および10個の2次信号を生成する。こ
の10個の2次信号は、10個の信号と共に32個の可能な10ビット値を記憶
し、復号される11ビットのデータ・ワードの残りの5ビットを生成するセレク
タに送られる。代替的形態として迅速アダマール変換法を使用する図11の復号
器140に類似する復号器を使用することも可能である。
長さ2mの特定のコード・ワードに対する生成器マトリックスを一般化して表
現すれば次のようになる。但し、zは0から2m−1までの整数値を持ち、yはmから0までの整数値を持
ち、xは、ともに(m+1)ビット2進数として表される((2.z+1)および2yのよう
な)2つの係数のビット単位乗算(すなわちビット単位論理AND)を標示し、除
算の結果は1桁で表される。(y=m)であるこのマトリックスの第1行は行X1を与
え、(y=m-1)である第2行は行X2を与え、(y=1)である最後から2番目の行は行Xm
を与え、(y=0)である最後の行は行X'を与える。
このように、例えば、(m=6である)64ビット長コード・ワードの場合、(y=m-
1=5)である第2の行X2上の最初のシンボル(z=0)は、
((2.0+1)x2m-1)/2m-1
すなわち(1x32)/32
である。
ビット単位乗算に含まれる因子を(m+1)ビット2進数として表現すると、結果は
、
(0000001x0100000)/32となり、
これは、(0000000)/32または1桁の0として表現される。
第2行上の2番目のシンボル(z=1)は、
(2.1+1)x2m-1)/2m-1、
すなわち(3x32)/32であり、これは同様に
(0000011x0100000)/32または1桁の0を生む。
この行の16番目のシンボル(z=15)は、
(2.15+1)x2m-1)/2m-1、
すなわち(31x32)/32であり、これは同様に
(00111111x0100000)/32または1桁の0を生成する。
この行の17番目のシンボル(z=16)は、
(2.16+1)x2m-1)/2m-1、
すなわち(33x32)/32であり、これは
(0100001x0100000)/32すなわち0100000)/32または1桁の1を生成する。
18番目から32番目までのシンボルについて同じ結果が得られる。
33番目のシンボル(z=32)の場合、マトリックスは((2.32+1)x2m-1)/2m-1を与
え、これは、(65x32)/32すなわち(1000001x0100000)/32または1桁の0を生む。
同様に後続の15個のシンボルに関して0という結果が得られる。
49番目のシンボル(z=48)の場合、マトリックスは((2.48+1)x2m-1)/2m-1を与
え、これは、(97x32)/32すなわち(11000001x0100000)/32または1桁の1を生む
。以下の最後の15個のシンボルについても同様の結果が得られる。このように
して、第2行は全体として、
(0000 0000 0000 0000 1111 1111 1111 1111 0000 0000 0000 0000 1111 111111
11 1111)となる。
第3の行X3(y=m-2=4)については、第1のシンボルは((2.0+1)x2m-2)/2m-2すな
わち(1x16)/16であり、(0000001x0010000)/16または0が得られる。以下の7個
のシンボルについても同様の結果が得られる。第9のシンボルは((2.8+1)x2m-2)
/2m-2すなわち(17x16)/16であり、(0010001x0010000)/16または1が得られる。
以下10番目から16番目までのシンボルについて同様の結果が得られる。その
後、8つのゼロと8つの1のブロックが交互に続き、行は全体として、
(0000 0000 1111 1111 0000 0000 1111 1111 0000 0000 1111 1111 0000 0000 1
111 1111)となる。
64ビットのコード・ワードに関する生成器マトリックスの他の行も同様にして
導出される。
2mビット基底コードは、次のような形式の組合せである生成器マトリックス
の行のすべての線形組合せを含む。
a1X1 (+) a2X2(+) a3X3(+)....(+)amXm(+) a'X'
但し、a1、a2、a3、....、amおよびa'は0または1の値を取る。
対応する生成器アレイは、2mビット生成器マトリックスを行X1、X2、X3、...
.Xmのすべての可能なペアのビット単位乗算によって引き出される付加行と組み
合わせることによって作成される。これら付加行はビット単位排他論理和演算に
よって組み合わされ、基底コードのm!/2個の2次剰余類代表値が生成される。す
なわち、第1の剰余類代表値は行(X1*X2)、(X2*X3)、...および(Xm-1*Xm)を組み
合わせることによって生成され、残りの剰余類代表値は、明確な1つの結果を生
む式(X1*X2)(+)(X2*X3)(+)....(+)(Xm-1*Xm)において行識別子X1、X2、X3
、....Xmのサブスクリプトのすべての可能な順列を識別することによって生成さ
れる。
これらの剰余類代表値の各々は、ビット単位排他論理和演算によって2mビッ
トの基底コードにおけるすべてのコード・ワードと組み合わせられ、基底コード
のm!/2個の剰余類のセットを構成する計m!(2m+1)/2個の可能なコード・ワードが
生成される。これらのコード・ワードは以下のような特性組合せを持つ。
・コードの最小ハミング距離は2m-2である。エラー訂正復号器は、コード・ワ
ードを構成するビットに影響を与える最高2m-2−1のエラーを検出し、最高2m -3
−1個のエラーを訂正することができる。
・これらコード・ワードに従って変調される多搬送波信号は3dB以上のPME
PRを持たない。
・このコードに関して使用される復号器は、解析手法を使用して操作することが
できえば少くとも部分的に組合せの論理を使用して実施することができる。
・許容可能なデータ伝送率が達成されることを可能にするため利用できるコード
・ワードが存在する。
コード・ワード長の範囲の各々に関して利用できる2進コード・ワードの総数
およびその他パラメータは以下に示される通りである。その他パラメータは、剰
余類代表値の数、利用できる数のコード・ワードを使用して符号化され得る2の
整数累乗のデータ・ワードの最大数、その場合のデータ・ワード長、当該コード
・
ワード長に関してRM復号器によって与えられる1次および2次信号の数、およ
び図8、図9に示されるような符号化器および復号器に記憶されるセレクタ値の
数である。
単純化および明快さの目的から、上記の記述はただ2つのシンボル値すなわち
2進数符号を使用する符号化を対象とした。しかしながら、本発明は、また、2
のj累乗という一層多数のシンボル値を用いる符号化にも適用できる。例えば、
J=2の4次数、j=3の8次数のシンボル値を使用することも可能である。そのよう
な場合上述のものと同じ生成器マトリックスが使用される。例えば(m=3として2m
=8の)8シンボルを含むコード・ワードの場合、生成器マトリックスは次のよう
になる。
(0000 1111) (X1)
(0011 0011) (X2)
(0101 0101) (X3)
(1111 1111) (X')
8シンボル4進数基底コード(4つの可能なシンボル値)は、以下の形式のよう
な組合せである生成器マトリックスの行の256個すべての線形組合せを含む。
a1X1(+)a2X2(+) a3X3(+) a'X'
但し、(+)はシンボル単位加算モジュロ2j(すなわち4進数の場合モジュロ4)
を示し、a1、a2、a3およびa'は、0から3までのすべての整数値を取る係数であ
る。
この基底コードは線形である、すなわち、そのコード・ワードのうちのいかなる
2つに対するシンボル単位加算モジュロ2の結果がコードの中の別のコード・ワ
ードである。
対応する生成器アレイは、生成器マトリックスを付加行と組み合わせることに
よって作成される。これら付加行は、行X1、X2およびX3のすべての可能なペアの
シンボル単位乗算すなわちX1*X2、X1*X3およびX2*X3、更に4進数符号化の場合
2、8進数符号化の場合4を乗ずることによって導出される。従って、8シンボ
ル4進数符号化の場合の付加行は次の通りとなる。
(0000 0022) 2(X1*X2)
(0000 0202) 2(X1*X3)
(0002 0002) 2(X2*X3)
付加行は、シンボル単位加算モジュロ2jによって組み合わされ、m!/2個の2次
剰余類代表値が生成される。長さ8の4進数コード・ワードの場合、第1剰余類
代表値は、行2(X1*X2)および2(X2*X3)を結合することによって次のように生成さ
れる。
(0002 0020) 2(X1*X2) (+)2(X2*X3)
残りの剰余類代表値は式2(X1*X2)(+)2(X2*X3)における行識別子X1、X2およびX3
のサブスクリプトのすべての可能な順列を識別することによって次のように生
成される。
(0002 0200) 2(X1*X3) (+)2(X2*X3)
(0000 0220) 2(X1*X2) (+)2(X1*X3)
最終的に、これらの剰余類代表値の各々はシンボル単位加算モジュロ2jによ
って基底コードにおけるすべてのコード・ワードと結合され、基底コードのm!/2
個の剰余類のセットを構成するm!(2j(m+1))/2個のコード・ワードが生成される
。8シンボル4進数ケースにおいてこのように生成される768個のコード値お
よび係数a1、a2、a3およびa'の対応する値の例は次の表4の通りである。表4に
おいて、CR1=2(X1*X2)(+)2(X2*X3)、CR2=2(X1*X3)(+)2(X2*X3)、および、CR3
=2(X1*X2)(+)2(X1*X3)である。 2m個シンボル4進基底コードは、以下の形式の組合せである生成器マトリッ
クスの行のすべての線形の組合せを含む。
a1X1(+)a2X2(+)a3X3(+)....(+)amXm(+)a'X'
但し、a1、a2、a3、....、amおよびa'は各々0、1、2または3の値を取る。対
応する生成器アレイは、行X1、X2、X3、...、Xmのすべての可能なペアのシンボ
ル単位乗算によって導出される付加行を生成器マトリックスと組み合わせること
によって作成される。これら付加行がシンボル単位加算モジュロ4によって結
合されm!/2個の2次剰余類代表値が生成される。かくして、第1剰余類代表値は
、行2(X1*X2)、2(X2*X3)、...、および2(Xm-1*Xm)を結合することによって生成
され、残りの剰余類代表値は式2(X1*X2)(+)2(X2*X3)(+)....(+)2(Xm-1*Xm
)における行識別X1、X2、X3、...、Xmのサブスクリプトのすべての可能な順列を
識別することによって生成される。
これら剰余類代表値の各々はシンボル単位加算モジュロ4によって2m基底コ
ードにおけるすべてのコード・ワードと結合され、基底コードのm!/2個の剰余類
のセットを構成するm!(4(m+1)/2個のコード・ワードが生成される。
その他の長さのコード・ワードや(例えば8進数など)異なる数のシンボルを用
いる符号化のための同様のコードを同様の方法で定義することができる。一般的
に、シンボル値の数が2jである場合、基底コードは、以下の形式の組合せであ
る生成器マトリックスの行のすべての線形の組合せを含む。
a1X1(+)a2X2(+)a3X3(+) ....(+)amXm(+)a'X'
但し、a1、a2、a3、....、amおよびa'は各々0、1、2、...、2j−1の値を取
り、(+)はシンボル単位加算モジュロ2jを表す。対応する生成器アレイは、行
X1、X2、X3、...、Xmのすべての可能なペアのシンボル単位乗算および更に2j-1
を乗ずることによって導出される付加行を2m生成器マトリックスと組み合わせ
ることによって作成される。これら付加行がシンボル単位加算モジュロ2jによ
って結合されm!/2個の2次剰余類代表値が生成される。かくして、第1剰余類代
表値は、行2j-1(X1*X2)、2j-1(X2*X3)、...、および2j-1(Xm-1*Xm)を結合するこ
とによって生成され、残りの剰余類代表値は式2j-1(X1*X2)(+)2j-1(X2*X3)(+
)....(+)2j-1(Xm-1*Xm)における行識別X1、X2、X3、...、Xmのサブスクリプ
トのすべての可能な順列を識別することによって生成される。
これら剰余類代表値の各々はシンボル単位加算モジュロ2jによって2m基底コ
ードにおけるすべてのコード・ワードと結合され、基底コードのm!/2個の剰余類
のセットを構成するm!(2j(m+1))/2個のコード・ワードが生成される。
4、8およびそれ以上の次数コードのエラー検出およびエラー訂正特性を論議
する際、最小ハミング距離は、コード・ワードに影響を及ぼしている可能性のあ
るエラーの範囲を完全に記述していない。これは、単一シンボルにおけるエラー
は、最高2j-1の隣接シンボル値への移動を伴う可能性があるためである(ここで
値2j-1および0が隣接であるとみなされる)。実際の影響は、各々が隣接シンボ
ル値への1つだけの移動を含む異なるシンボルにおける少なくとも2つのエラー
の場合に比較して少なくとも同等以上に深刻である。例えば、値6から値1への
単一4進シンボルの変化(3つの隣接値を通過する移動)は、1つが値6から7へ
もう1つが7から0へという2つの8進数シンボルの変化(共に隣接値への移動)
より深刻である。従って、有用な付加的基準は、有効なコード・ワードをなにか
別の有効なコード・ワードに変換するために必要とされるシンボル値移動の最小
値として定義される最小リー距離である。(上記2進数ケースではハミング距離
とりー距離は同一であったので、最小りー距離は議論されなかった。)
4進数、8進数およびそれ以上の高い次数のケースに関して上記のように定義
されたコード・ワードは、以下のような有利な特性組合せを持つ。
・コードの最小ハミング距離は、2m-2である。
・ハミング距離に基づいたエラー訂正復号器は、コード・ワードを構成するシン
ボルに影響を及ぼす最高2m-2−1のエラーを任意に検出することができ、また
、2m-3−1までのそのようなエラーを訂正することができる。
・コードの最小りー距離は2m-1である。リー距離に基づいたエラー訂正復号器
は、最高2m-1−1のシンボル値移動を伴う(コード・ワード・シンボルの同じ数
に影響を及ぼす)エラーを検出することができ、また、2m-2−1までのそのよう
な移動を訂正することができる。実際、リー距離に基づいた最小距離復号器は、
コード・ワードを構成するシンボルに影響を及ぼすエラーの一定の付加パターン
を任意に訂正する(すなわちハミング距離に基づいた復号器の特性のいくつかを
備える)。
・これらのコード・ワードに従って変調された多搬送波信号は、3dB以上のP
MEPRを持たない。
・このコードに関して使用されるハミング距離またはリー距離のいずれかに基づ
く復号器は、解析手法を使用して操作することができ、例えば少くとも部分的に
組合せの論理を使用して実施することができる。
・許容可能なデータ伝送率が達成されることを可能にするため利用できるコード
・ワードが存在する。
実際問題として、これらのコードは、データ・ビットによって表現される情報
を符号化器および復号器を含む経路上で伝送するため使用される。2進符号に関
して生成器マトリックスの行係数へのデータ・ビットの割り当ては上述のように
任意でよいが、(4進数、8進数など)その他のすべてケースでは、行係数へのデ
ータ・ビットの周到な割り当てを行うことが望ましい。
4進数コードの場合、(以下の選択された)データ・ビットのペアの各々が次の
表5のように行係数a1、a2、a3、...、amおよびa'に対応付けされる。
この対応付けは、Grayコードの例であり、2つの隣接係数値の間の変化を含むエ
ラー(3と0が隣接と見なされる)がただ1つのデータ・ビットのエラーの原因とな
るという有利な特性を持っている。このように、コード・ワードにおける比較的
小さいエラーが伝送の終了においてデータ・ワードの大きいエラーを生成する可
能性はほとんどない。
2進数ケースの場合におけるように、2の整数累乗倍である多数のコード・ワ
ードを使用することが好ましく、それによって符号化のための到来データ・スト
リームのブロックへの分割を単純化し、コード・ワードを同じ剰余類代表値を持
つグループに分類するようにすることが容易となる。かくして、選択される剰余
類代表値の数は、利用できる剰余類代表値の数を超えない最大の2の累乗値(2r
)である。次に、r個のデータ・ビットを使用して1つの剰余類代表値が選択され
、上記表5のGlayコードに従って残りのデータ・ビットの連続したペアが4進
数シンボルa1、a2、a3、...、amおよびa'に変換される。
図12は、図9の符号化器100と類似しているが、本発明に従って、以下の
生成器アレイから上述のように導出されるコード・ワードを使用して、13ビッ
トのデータ・ワードを16個の4進数シンボルのコード・ワードとして符号化す
る13B/16Q符号化器160を示す。
(0000 0000 1111 1111) (X1)
(0000 1111 0000 1111) (X2)
(0011 0011 0011 0011) (X3)
(0101 0101 0101 0101) (X4)
(1111 1111 1111 1111) (X')
(0000 0000 0000 2222) 2(X1*X2)
(0000 0000 0022 0022) 2(X1*X2)
(0000 0000 0202 0202) 2(X1*X4)
(0000 0022 0000 0022) 2(X2*X3)
(0000 0202 0000 0202) 2(X2*X4)
(0002 0002 0002 0002) 2(X3*X4)
特に、この符号化器は次のような剰余類代表値を持つ8つの剰余類を使用する。
(0002 0020 0002 2202) 2(X1*X2)(+)2(X2*X3)(+)2(X3*X4)
(0002 0200 0002 2022) 2(X1*X2)(+)2(X2*X4)(+)2(X3*X4)
(0000 0220 0022 0202) 2(X1*X3)(+)2(X2*X3)(+)2(X2*X4)
(0002 0200 0020 0222) 2(X1*X3)(+)2(X3*X4)(+)2(X2*X4)
(0000 0220 0202 0022) 2(X1*X4)(+)2(X2*X4)(+)2(X2*X3)
(0002 0020 0200 0222) 2(X1*X4)(+)2(X3*X4)(+)2(X2*X3)
(0002 0002 0020 2202) 2(X1*X2)(+)2(X1*X3)(+)2(X3*X4)
(0002 0002 0200 2022) 2(X1*X2)(+)2(X1*X4)(+)2(X3*X4)
このように、2rは8という値を持っているので、rは3である。
図12を参照すれば、13B/16Q符号化器160は、入力データ・ワード
の最下位10ビットの連続したペア・ビットを上記表5に従って対応する4進数
シンボルに符号化する5つのGray符号化器162−170を含む。各符号化器1
62−170は、その出力4進数シンボルを5つの乗算器172−180のそれ
ぞれの1つへ供給し、16シンボル生成器マトリックス行X4、X3、X2、X1および
X'のうちのそれぞれ対応する行が乗算される。入力データ・ワードの最上位3ビ
ットが、セレクタ182に供給され、それら3ビットの組み合わせ値に従って、
8つの可能な剰余類代表値のうちの1つが選択される。5つの乗算器172−1
80およびセレクタ182の出力が、シンボル単位モジュロ4加算器184によ
って組み合わされ、符号化器160によって出力される4進数16シンボルのコ
ード・ワードが生成される。
図13は、符号化器100によって生成された4進数16シンボルのコード・
ワードを13ビットのデータ・ワードに復号するリー距離に基づいた16Q/1
3B最小距離復号器200を示す。復号器200において使用される方法は、図
11の復号器140に関連して引用した「スーパーコード」に基づくものである
が、4進数およびそれ以上の大きいコードに関して使用できるように大幅な修正
が加えられる。各剰余類代表値に関して順番に、例えば4進数の場合シンボル単
位モジュロ4を用いて剰余類代表値が受け取ったコード・ワードから差し引かれ
、その結果が長さ16の4進数基底コードのエレメントとして復号され、同時に
以下に述べるようにその剰余類代表値に「スコア」が割り当てられる。どのコー
ド・ワードに復号すべきかの判断は、代表値が最高スコアの剰余類(複数ある場
合はそぬちの任意の1つ)を選択し、該剰余類の範囲内で該剰余類に関して既に
識別されている基底コードのエレメントを選択することによって行われる。
基底コードのエレメントの復号には、迅速アダマール変換を使用する。しかし
ながら、復号器140とは対照的に、復号器200は、あたかも基底コードの受
け取ったコード・ワードであるかのように上記の減算結果を集合的に復号するた
め、(復号器の場合のような)+1または−1という値を持つようにそのシンボル
が制約されない複数入力ベクトルに迅速アダマール変換を適用する。各入力ベク
トルに関して、最大の変換係数が選択される。その変換係数の符号に従って、1
次リード−マラー符号RM(1,m)の関連ペアの1つまたは複数が出力される。この
方法は、受け取ったRM(1,m)のコード・ワードを復号するプロシージャに類似し
ているが、各入力ベクトルに対する出力は、そのベクトルの復号をRM(1,m)のエ
レメントとして表現しない。
図13を参照すれば、復号器200は、モジュロ4減算器202において4進
数16シンボルのコード・ワードを受け取り、そのコード・ワードから剰余類記
憶機構204に記憶されている値を減算する。この剰余類記憶機構は、符号化器
160のセレクタ182によってその中から選択が行われる同じ8つの剰余類代
表値を含む。記憶機構204は、また、8つの剰余類代表値の各々が減算器に順
番に送られるようにするため、入力208における増分信号に応答してすべての
8つの可能な3ビット値を連続的に循環する3ビット・カウンタ206を持つ。
現在時剰余類代表値に関して減算器202によって出力される4進数16シン
ボル・ワードSがベクトル生成器210に渡される。ベクトル生成器210は、
当該ワードSに関して32個の16シンボル入力ベクトル・シーケンスDをそれら
ベクトルの各々に対して迅速アダマール変換を実行するGreenマシン212に送
る。この場合、生成器210は、5つの係数b1、b2、b3、b4およびb'の各々に0
または1を割り当て、そのため、それら係数が全体として32の可能な組合せす
べてに及ぶこととなる。そのような組合せの各々に関して、以下の関係式に従う
値Bが導出される。
B=b1X1(+)b2X2(+)b3X3(+)b4X4(+)b'X'
次ぎに、Dが次式によって導出される。
D=|2X'-((S-B)mod 4)|-X'
この式において、X'、SおよびBのような値を伴う減算が|・・・|によって標示
されているモジュロ演算としてシンボル単位で実行される。
Greenマシン212の出力は、各ベクトルDに関して、E0からE15までの符号が
付けられた16の変換コンポーネントである。これらのコンポーネントは比較器
214に送られ、変換コンポーネントの絶対値が比較され、最大絶対値|Ez|およ
び対応する(0から15までの)値zが識別される。同じ絶対値を持つコンポーネント
が複数ある場合、その内の1つが任意に選択される。次に、比較器214が、値
zおよびEzをラッチ216へ出力し、ラッチ216は、加えて、生成器210か
ら係数b1、b2、b3、b4およびb'の値および記憶記憶204のカウンタ206によ
って供給される対応する3ビット・インデックス値を受け取る。
第1剰余類代表値および係数b1、b2、b3、b4およびb'の値の組み合わせに関し
て、ラッチ216は、受け取ったEz、z、5つの係数および剰余類インデックス
を単に記憶する。31個の付加ベクトルDが第1の剰余類代表値に関して生成器
210によって導出されるに伴い、また、カウンタ206が増分され各連続的剰
余類代表値に関する32個以上のベクトルDが導出されるにつれ、Ezおよびzのそ
れぞれの値が、係数および剰余類インデックス値と共に、ラッチ216に渡され
る。そのような変換コンポーネントEzが現在ラッチされているコンポーネントよ
り大きい絶対値を持つ場合、ラッチ216は、新たに受け取った値を、それに関
連するz、剰余類インデックスおよび係数b1、b2、b3、b4およびb'の値と共に、
選択する。
カウンタ206がすべての8つの可能な値を循環した時、ラッチ216の内容
は、図13のブロック218において復号された出力データに集められる。zの
値、Ezの符号および係数b1、b2、b3、b4およびb'があわせて復号されるデータの
最下位10ビットの値を以下に記述のように直接決定し、剰余類インデックスは
3つの最上位出力ビットを構成する。
最下位10出力ビットの値を決定するため、係数c'はEzが負であれば1に、正
であれば0にセットされ、zの値は、c1c2c3c4という4ビット2進数として表現
される。a4、a3、a2、a1およびa'という5つの復号される行係数は次式によって
決定される。
a1=b1+2c1
a2=b2+2c2
a3=b3+2c3
a4=b4+2c4
a'=b'+2c'
復号されるデータ・ビットは、表5のGrayコードの参照によって、これら行係数
からペアで導出されることができる。
8進数コードの場合、以下の表6に示されるように、3データ・ビットが行係
数a1、a2、a3、...、amおよびa'に対応づけられる。
上述の場合と同様に、選択される剰余類代表値の数は、利用できる剰余類代表
値の数を超えない最大の2の累乗値(2r)である。次に、r個のデータ・ビットを
使用して1つの剰余類代表値が選択され、上記表6の8進数Glayコードに従って
残りのデータ・ビットの連続したペアが8進数シンボルa1、a2、a3、...、amお
よびa'に変換される。
図14は、図9の符号化器100および図12の符号化器160と類似してい
るが、本発明に従って、以下の生成器アレイから上述のように導出されるコード
・ワードを使用して、18ビットのデータ・ワードを8進数16シンボル・コー
ド・ワードとして符号化する18B/160符号化器160を示す。
(0000 0000 1111 1111) (X1)
(0000 1111 0000 1111) (X2)
(0011 0011 0011 0011) (X3)
(0101 0101 0101 0101) (X4)
(1111 1111 1111 1111) (X')
(0000 0000 0000 4444) 4(X1*X2)
(0000 0000 0044 0044) 4(X1*X3)
(0000 0000 0404 0404) 4(X1*X4)
(0000 0044 0000 0044) 4(X2*X3)
(0000 0404 0000 0404) 4(X2*X4)
(0004 0004 0004 0004) 4(X3*X4)
特に符号化器は以下の剰余類代表値を持つ8個の剰余類を使用する。
(0004 0040 0004 4404) 4(X1*X2)(+)4(X2*X3)(+)4(X3*X4)
(0004 0400 0004 4044) 4(X1*X2)(+)4(X2*X4)(+)4(X3*X4)
(0000 0440 0044 0404) 4(X1*X3)(+)4(X2*X3)(+)4(X2*X4)
(0004 0400 0040 0444) 4(X1*X3)(+)4(X3*X4)(+)4(X2*X4)
(0000 0440 0404 0044) 4(X1*X4)(+)4(X2*X4)(+)4(X2*X3)
(0004 0040 0400 0444) 4(X1*X4)(+)4(X3*X4)(+)4(X2*X3)
(0004 0004 0040 4404) 4(X1*X2)(+)4(X1*X3)(+)4(X3*X4)
(0004 0004 0400 4044) 4(X1*X2)(+)4(X1*X4)(+)4(X3*X4)
このように、2rは8という値を持っているので、rは3である。
図14を参照すれば、18B/160符号化器230は、入力データ・ワード
の最下位15ビットの連続した3ビット1組を上記表6に従って対応する8進数
シンボルに符号化する5つのGray符号化器232−240を含む。各符号化器2
32−240は、その出力8進数シンボルを5つの乗算器242−250のそれ
ぞれの1つへ供給し、16シンボル生成器マトリックス行X4、X3、X2、X1および
X'のうちのそれぞれ対応する行が乗算される。入力データ・ワードの最上位3ビ
ットが、セレクタ252に供給され、それら3ビットの組み合わせ値に従って、
8つの可能な剰余類代表値のうちの1つが選択される。5つの乗算器242−2
50およびセレクタ252の出力が、シンボル単位モジュロ8加算器254によ
って組み合わされ、符号化器230によって出力される16シンボル8進コード
・ワードが生成される。
図15は、図13に示された復号に対応するもので、符号化器230によって
生成された16シンボル8進コード・ワードを18ビットのデータ・ワードに復
号する160/18B最小リー距離復号器260を示す。
図15を参照すれば、復号器260は、モジュロ8減算器262において8進
数16シンボルのコード・ワードを受け取り、そのコード・ワードから剰余類記
憶機構264に記憶されている値を減算する。この剰余類記憶機構は、符号化器
230のセレクタ252によってその中から選択が行われる同じ8つの剰余類代
表値を含む。剰余類記憶機構264は、また、8つの剰余類代表値の各々が減算
器に順番に送られるようにするため、入力268における増分信号に応答してす
ベての8つの可能な3ビット値を連続的に循環する3ビット・カウンタ266を
持つ。
現在時剰余類代表値に関して減算器262によって出力される8進数16シン
ボル・ワードSがベクトル生成器270に渡される。ベクトル生成器270は、
当該ワードSに関して1024個の16シンボル入力ベクトル・シーケンスDをそ
れらベクトルの各々に対して迅速アダマール変換を実行するGreenマシン272
に送る。この場合、生成器270は、5つの係数b1、b2、b3、b4およびb'の各々
に0、1、2または3を割り当て、そのため、それら係数が全体として1024
の可能な組合せすべてに及ぶこととなる。そのような組合せの各々に関して、以
下の関係式に従う値Bが導出される。
B=b1X1(+)b2X2(+)b3X3(+)b4X4(+)b'X'
次に、次式からベクトルDが導出される。
D=|4x'-((S-B)mod 8)|-2X'
前述の場合と同様に、この式において、X'、SおよびBのような値を伴う減算が|・・・
|によって標示されているモジュロ演算としてシンボル単位で実行される。
Greenマシン272の出力は、各ベクトルDに関して、E0からE15までの符号が
付けられた16の変換コンポーネントである。これらのコンポーネントは比較器
274に送られ、変換コンポーネントの絶対値が比較され、最大絶対値|Ez|およ
び対応する(0から15までの)値zが識別される。同じ絶対値を持つコンポーネント
が複数ある場合、その内の1つが任意に選択される。次に、比較器274が、値
zおよびEzをラッチ216へ出力し、ラッチ216は、加えて、生成器270
から係数b1、b2、b3、b4およびb'の値および記憶記憶264のカウンタ266に
よって供給される対応する3ビット・インデックス値を受け取る。
第1剰余類代表値および係数b1、b2、b3、b4およびb'の値の組み合わせに関し
て、ラッチ276は、受け取ったEz、z、5つの係数および剰余類インデックス
を単に記憶する。1024個の付加ベクトルDが第1の剰余類代表値に関して生
成器270によって導出されるに伴い、また、カウンタ266が増分され各連続
的剰余類代表値に関する1024個以上のベクトルDが導出されるにつれ、Ezお
よびzのそれぞれの値が、係数および剰余類インデックス値と共に、ラッチ27
6に渡される。そのような変換コンポーネントEzが現在ラッチされているコンポ
ーネントより大きい絶対値を持つ場合、ラッチ276は、新たに受け取った値を
、それに関連するz、剰余類インデックスおよび係数b1、b2、b3、b4およびb'の
値と共に、選択する。
カウンタ276がすべての8つの可能な値を循環した時、ラッチ276の内容
は、図15のブロック278において復号された出力データに集められる。zの
値、Ezの符号および係数b1、b2、b3、b4およびb'があわせて復号されるデータの
最下位15ビットの値を以下に記述のように直接決定し、剰余類インデックスは
3つの最上位出力ビットを構成する。
最下位15出力ビットの値を決定するため、係数c'はEzが負であれば1に、正
であれば0にセットされ、zの値は、c1c2c3c4という4ビット2進数として表現
される。a4、a3、a2、a1およびa'という5つの復号される行係数は次式によって
決定される。
a1=b1+4c1
a2=b2+4c2
a3=b3+4c3
a4=b4+4c4
a'=b'+4c'
次に、表6のGrayコードの参照によって上記係数から復号データ・ビットが導出
される。
図12および図14に示されものに対応する符号化器を他の長さ(m≠4)のコー
ド・ワードまたはより高い次数(j>3)のコードに関して同様に構築することが可
能である。上述のように、rデータ・ビットを使用して剰余類代表値が選択され
、残りのデータ・ビットのサイズjの連続したグループがGrayコード表に従って
それぞれのシンボルa1、a2、a3、...、amおよびa'に変換される。シンボルa1、a2
、a3...amおよびa'に基底コードの生成器マトリックスのそれぞれの行X1、X2、
X3、...、XmおよびX'が乗算され、その結果が選択された剰余類代表値にシンボ
ル単位モジュロ2j演算によって加算される。
図13および図15において示されるものに対応する復号器を、別の長さや一
層高次のコードに関して同様に構築することもできる。シンボルの長さが2mで
各シンボルが2jの可能な値を持つコード・ワードという一般的ケースにおいて
、減算器は、受け取ったコード・ワードからモジュロ2j演算によって剰余類代
表値を減ずる。係数b1、b2、...、bmおよびb'の各々は0から2j-1−1までの整
数値を持ち、そのため、それら係数は全体として2(j-1)(m+1)の可能能な組合せ
すべてに及ぶこととなる。そのような組合せの各々に関して、以下の関係式に従
う値BおよびDが導出される。
B= b1X1(+)b2X2(+)...(+)bmXm(+)b'X'
D=|2j-1X'-((S-B)mod2j)|-2j-2X'
但し、記号(+)はシンボル単位加算モジュロ2jを表す。それぞれの下位出力ビ
ットの値を決定する際、zが2進数c1c2...cmとして表されるとすれば、復号さ
れる行係数a1、a2、...、amおよびa'は、次の式によって決定される。
a1=b1+2j-1c1
a2=b2+2j-1c2
...
am=bm+2j-1cm
a'=b'+2j-1c'
復号器は、上述のように、固定的判断復号器であって、すなわち入力として0
と2j−1の間の整数値を取る。同様の復号器を柔軟な判断復号器として使用す
ることもできる。この場合、受け取るアナログ信号の大きさに従って受け取った
コード・ワードのシンボルが0と2jの間の実数であるように表現される。この
場合、値Sは(整数値の)剰余類代表値のモジュロ2j減算によって取得される。上
記復号プロシージャに続いて、実数値化された変換コンポーネントが生成され、
その内の最大絶対値を持つ1つが選択される。その後の復号プロシージャは上述
のものと同様である。
図13および図15の復号器200および260は、復号された出力2進数デ
ータを直接提供する。それら復号器は剰余類代表値を受け取ったコード・ワード
から減算し、その結果を関連基底コードのエレメントとして復号するが、基底コ
ードにおけるコード・ワードを中間ステップとして明示的に識別しない。すべて
の値Bおよびすべての記憶された剰余類代表値に対して、値Zおよび最大絶対値を
持つ変換コンポーネントEzを使用してこの基底コード・ワードの値を取得して、
対応する値Bと共に、1次リード−マラー符号RM(1,m)のエレメント・ペアの1つ
を選択することは可能である。次数2mのシルベスタ(Sylvester)−アダマール行
列Hの列z(下記参照)が、ベクトルcを生成するため置き換えられる(行列の最も
左の列が列0である)。Ezが正であれば、cにおける+シンボルが0に、−シンボル
が1に変換され、負であれば、cにおける+シンボルは1に、−シンボルは0に
変換される。cは今や必要なRM(1,m)エレメントを含む。復号器によって選択され
る基底コード・ワードは、次の式によって導出されることができる。
2j-1C(+)B
復号される行係数a1、a2、...、amおよびa'は、既知の方法でガウス消去を適用
することによって、このコード・ワードおよび生成器マトリックスの行X1、X2、
...XmおよびX'から取得される。符号化器による出力に対応する復号コード・ワ
ードは、シンボル単位モジュロ2j演算によってこの基底コード・ワードを、ラ
ッチされた剰余類インデックスによって識別される剰余類代表値へ加算すること
によって取得される。
次数2のシルベスタ−アダマール行列H2は、である。すなわち、右下の負を除きすべてのエレメントは同じである。次に高い
2の累乗の行列H4を導出するため、上記のH2の右と下にH2を複製し、その負(-H2
)を右下に配置する。このようにして、H4は、
である。
このプロセスは、引き続いて一層高い2の累乗のシルベスタ−アダマール行列を
導出するため繰り返される。例えば、H8を導出するには、H4の右と下にH4を複製
し、その負(-H4)を右下に配置する。
例えば13ビットのデータ・ワード1 1011 0110 0001が13B/16Q符号化
器160の入力に適用される場合を考察してみる。対応する行係数a4、a3、a2、
a1およびa'は値2、1、3、0および1をそれぞれ持ち、基底コードにおけるコード
・ワード1320 0213 1320 0213を与える。選択される剰余類代表値は、0002 0002
0020 2202である。従って、出力される4進数コード・ワードは、1322 0211 13
00 2011である。符号化器160から復号器200への通信の間に、コード・ワ
ードが壊れ1322 0212 1300 2031という値になったと仮定する。この場合受け取
られたコード・ワードは送信されたコード・ワードから3というリー距離を持つ
。
復号器の減算器202は、各剰余類代表値をこの受け取ったコード・ワードか
ら減ずる。110とう数の剰余類の場合、この減算の結果は、1320 0210 1320 0233
であり、これがベクトル生成器210へ渡される。この生成器は、各々がGreen
マシーン212において結合される32個のベクトルDを生成して、行ベクトルE
の16個の変換コンポーネントE0からE15を生成する。そのようなベクトルEの各
々は、対応する行ベクトルDに、以下のような16次数のシルベスタ−アダマー
ル行列H16を乗算することによって得られる結果である。これらのベクトルおよび対応する変換コンポーネントEは以下のように与えられ
る。
(b1,b2,b3,b4,b')=(0,0,0,0,0)の場合:
B=(0000 0000 0000 0000),D=(0,0,-1,1,1,-1,0,1,0,0,-1,1,1,-1.0,0),
E=(1,-1,-1,9,-1,-7,1,-1,1,-1,1,1,-1,1,1,-1).
(b1,b2,b3,b4,b')=(0,0,0,0,1)の場合:
B=(1111 1111 1111 1111),D=(1,-1,0,0,0,0,1,0,1,-1,0,0,0,0,-1,-1),
E=(-1,5,1,3,1,3,-1,5,3,1,-3,-1,-3,-1,3,1).
(b1,b2,b3,b4,b')=(0,0,0,1,0)の場合:
B=(0101 0101 0101 0101),D=(0,-1,-1,0,1,0,0,0,0,-1,-1,0,1,0,0,-1),
E=(-3,3,3,5,-5,-3,-3,3,1,1,1,1,1,1,1,1)
.....
(b1,b2,b3,b4,b')=(0,1,1,0,0)の場合:
B=(0011 1122 0011 1122),D=(0,0,0,0,0,0,0,-1,0,0,0,0,0,0,0,0),
E=(-1,1,1,-1,1,-1,-1,1,-1,1,1,-1,1,-1,-1,1).
(b1,b2,b3,b4,b')=(0,1,1,0,1)の場合:
B=(1122 2233 1122 2233),D=(1,-1,1,-1,-1,1,-1,0,1,-1,1,-1,-1,1,1,1),
E=(1,3,-1,-3,-1,13,1,3,-3,-1,3,1,3,1,-3,-1).
(b1,b2,b3,b4,b')=(0,1,1,1,0)の場合:
B=(0112 1223 0112 1223),D=(0,-1,0,-1,0,1,0,0,0,-1,0,-1,0,1,0,1),
E=(-1,1,1,-1,-7,7,-1,1,-1,1,1,-1,1,-1,1).
......
(b1,b2,b3,b4,b')=(1,1,1,1,0)の場合
B=(0112 1223 1223 2330),D=(0,-1,0,-1,0,1,0,0,1,0,1,0,-1,0,1,0),
E=(1,3,-1,-3,-1,5,1,3,-3,-1,3,1,-5,1,-3,-1).
(b1,b2,b3,b4,b')=(1,1,1,1,1)の場合:
B=(1223 2330 23303001),D=(1,0,1,0,-1,0,-1,1,0,1,0,1,0,-1,0,-1),
E=(1,-1,-1,1,7,1,1,-1,1,-1,-1,1,-1,9,1,-1).
この剰余類に対する最大絶対値の変換係数は、B=(1122 22331122 2233)すなわ
ちz=5に関して発生するE5=13である。この係数は、また、復号器の記憶機構20
4にある他の7つの剰余類代表値のいずれに関してでも生成される変換係数より
絶対値の点で大きい。H16の列5は(+-+--+-++-+--+-+)である。E5は正である
ので、+シンボルは0に−シンボルは1に置き換えられ、従って、C=(0101 1010
0101 1010)である。従って、復号器によって選択される基底コード・ワードは2
C(+)B=(1320 0213 1320 0213)で、これが符号化器160から出力されたコー
ド・ワードであると見なされ、かくして通信エラーは訂正された。
図13および図15において示される符号化器200および復号器260のよ
うな、4進数、8進数およびそれ以上の次数のコードに関するリー距離に基づく
最小距離復号器は、専用ハードウェアの形態で実施される場合がある。この場合
、図11の復号器140に関連して前述したように、迅速アダマール変換のいく
つかまたはすべてを例えばそれぞれ毎にGreenマシンを準備することによって並
列的に計算することができる。代替的には、汎用プロセッサを使用して、後述の
C言語プログラムで表現される機能性を取り入れた適切なソフトウェア・プロシ
ー
ジャを実行することも可能である。このプログラムは、
- (上述のmに等しい)パラメータMによって定められる長さを持ち、各シンボルが
(上述のjに等しい)パラメータJによって定められる値の数を持つコード・ワード
、および、
- 剰余類代表値のリスト
を入力とし、
- 最大絶対値の変換係数が検出される剰余類代表値の上記リストにおける位置、
一部分的ではあるがその変換係数の位置zから識別される基底コード・ワード、
および、
- 対応する行係数a1、a2、…、a3およびa'の値、
を出力する。
4進数またはそれ以上の次数のコードに関して使用することを主な目的とするけ
れども、このプログラムは、2進符号についても有用である。
以下はこのようなプログラムのソース・コードの例である。
図8および図10に示される2次2進数RM復号器82および122は、専用
ハードウェアで実施することもできるし、また、以下のようなC言語プログラム
のような適切なソフトウェア・プロシージャを実行する汎用プロセッサを使用す
ることによって実施することもできる。
長さ2mシンボルの4進数コードの場合、長さ2m-1のコードに対して2進数復号
器を使用することによって復号を達成するこもできる。この形態は、(4進数信
号に作用するための回路の必要性を避けることによる)実施の容易性や動作速度
の観点から望ましい。そのような復号は、2、1、3、0および1という値を持つ行
係数a4、a3、a2、a1およびa'の)基底コード・ワード1320 0213 1320 0213お
よび剰余類代表値0002 0002 0020 2202から導出される(前述の例で既に使用され
た)16シンボル4進数コード・ワード1322 0211 1300 2011を参照することによ
って例証される。2進数データ・ワード11011 0110 0001を表すこのコード・ワ
ードは、1322 0212 1300 2031というエラーを含むコードとして受け取られるも
のと仮定する。受け取られたコード・ワードの各シンボルは、先ず、表5のGray
コードに従って、2進数シンボル・ペアに変換され、それら2進数シンボルは、
32ビット・ワードのそれぞれの半分に割り当てられる。このようにして、最初
の4進数シンボル(1)については対応する2進数シンボル・ペアは01であり、こ
のペアの最初のシンボル(0)は、32ビットのワードの最初のシンボルを構成し
、このペアの2番目のシンボル(1)は、そのワードの17番目のシンボルを構成
する。2番目の4進数は3であり、対応する2進数シンボル・ペアは10であり、
このペアの最初のシンボル(1)は、32ビットのワードの2番目のシンボルを構
成し、このペアの2番目のシンボル(0)は、そのワードの18番目のシンボルを
構成する。このように、残りの4進数コード・ワードに対して処理が続き、
0111 0101 0100 1010 1011 0111 1000 1001
という32ビット・ワードが生成される。
この2進数ワードは、32ビットの2次2進数RM復号器に供給される。これ
は、図10の復号器122の場合に類似しているが、付加ビットを取り扱うよう
に拡張されている。この復号器は、2セットの2進数出力信号を生成する。その
1つは、係数u1、u2、u3、u4、u5およびu'を表す6個の1次信号であり、2つ目
のセットは、,係数u12、u13、u14、u15、u23、u24、u25、u34、u35およびu45を
表す10個の2次信号である。32ビット・ワードの場合、RM復号器の出力信
号は次の値を持つ。
u1=1 u12=0 u23=1
u2=0 u13=1 u24=1
u3=0 u14=1 u25=0
u4=1 u15=0 u34=1
u5=1 u35=0
u'=0 u45=1
これらの1次および2次信号は、2進数4進数変換器に送られ、次の関係式に
従って入力4進数データ・ワードに対応する行係数a1、a2、a3、a4およびa'が作
成される。
a1=(2u2+u12(1+2u1))mod4 [=0]
a2=(2u3+u13(1+2u1))mod4 [=3]
a3=(2u4+u14(1+2u1))mod4 [=1]
a4=(2u5+u15(1+2u1))mod4 [=2]
a'=2u'+u1 [=1]
[]内の値は、上述のように与えられる1次および2信号の特定の値に対する関
係式の結果を示す。5つの復号される行係数a4、a3、a2、a1およびa'に対しそれ
ぞれ4進数2、1、3、0および1が生成されることが示されている。
係数変換器は、また、以下の関係式に従って係数a12、a13、a14、a23、a24お
よびa34を表す6つの信号を生成する。
a12=(u23+u12u13)mod2 [=1]
a13=(u24+u12u14)mod2 [=1]
a14=(u25+u12u15)mod2 [=0]
a23=(u34+u13u14)mod2 [=0]
a24=(u35+u13u15)mod2 [=0]
a34=(u45+u14u15)mod2 [=1]
これら付加信号は、16シンボル4進数コード・ワードがそれを基に生成された
剰余類代表値を形成するため6個の付加行2(X1*X2)、2(X1*X3)、2(X1*X4)、2(X2
*X3)、2(X2*X4)および2(X3*X4)のうちのどれが組み合わされたかを標示する。
データ・ワード11011 0110 0001の場合、当該剰余類代表値は2(X1*X2)(+)2(X1*X3
)(+)2(X3*X4)であり、関連する係数a12、a13およびa34はこれを示すため1とい
う値を持つ。
6つの係数信号a12、a13、a14、a23、a24およびa34の組合せを用いて、図10
の復号器120におけるセレクタ128と同様のセレクタ手段によって当該デ
ータ・ワードの最上位3ビットを導出することができる。下位10ビットは、表
5のGrayコードを参照して復号される行係数a1、a2、a3、a4およびa'からペアで
導出される。
注意すべき点であるが、このような方法で長さ2m+1ビットのコードに関する
2進数復号器を使用する2mシンボル4進数コード・ワードの復号は、次のよう
な2つの目的からGrayコード表の参照を必要とする。1つの目的は、図12およ
び図14の符号化器160および230に関連して上述したように、エラーの検
出および訂正機能を含むデータの完全な通信経路上への伝送を援助することであ
る。第2の目的は、2進数復号器回路の使用を可能にし、それによって、4進数
信号を直接処理して動作速度を向上させる回路を実施する費用と努力を節約する
ことである。
2mシンボルを含む4進数コード・ワードという一般的ケースに2進数復号器
を適用するため、上述のように、コード・ワードは、表5のGrayコードを使用し
て対応する2m+1ビット2進数コード・ワードへシンボル単位で変換される。こ
の場合、Grayコードの2進数シンボルの各ペアにおけるそれぞれのシンボルが、
その2進コード・ワードのそれぞれの半分に割り当てられる。この2進数コード
・ワードは、係数u1、u2、…、um+1、u'、u12、u13、…、um.m+1を与えるため2
進数復号器を使用して、長さ2m+1の2次リードーマラー・コードのエレメント
すなわちRM(2,m+1)として復号される。これらの係数は、次の関係式に従って、
必要とされる4進出力係数に変換される。
a'=2u'+u1
ai=(2ui+1+u1,i+1(1+2u1))mod4 (1=<1=<mの場合)
aik=(ui+1,k+1+u1,i+1 u1,k+1)mod2 (1=<i<k=<mの場合)
値a1、a2、…、amおよびa'は、表5のGrayコードを介して2(m+1)復号データ
・ビットを与える。残りのビットは、係数a12、a13、…am-1,mの値に従って、使
用のため選択された剰余類のルックアップ・テーブルを参照し復元される。
Grayコード2進数シンボルの各ペアにおけるそれぞれのシンボルの2m+1ビッ
ト2進コード・ワードのそれぞれの半分への割り当てが唯一の可能性ではない。
係数u1、u2、…、um+1、u'、u12、u13、…、um,m+1を4進数出力係数へ変換する
ための関係式を変えて、2進数シンボルを2進数コード・ワードのそれぞれの位
置へ割り当てるという代替方法が可能である。例えば、復号されるべき4進コー
ド・ワードは、4進コード・ワードにおける対応する4進シンボルと同じ次数で
Grayコード2進数シンボルのペアを連結することによって、拡張することができ
る。このようにして、4進数ワード1322 0212 1300 2031は2進数ワード0110 11
11 0011 0111 0110 0000 1100 1001に変換される。
この場合係数変換のための関係式は次の通りである。
a'=2u'+um+1
ai=((2ui+ui,m+1)(1+2um+1))mod4 (1=<1=<mの場合)
aik=(ui,k+ui,muk,m+1)mod2 (1=<i<k=<mの場合)
また、図13の16Q/13B復号器200の形式を持つ復号器を用いて、2
進数処理を4進数処理へ置き換えることも可能である。これは、復号器200の
場合、受け取られる4進数コード・ワードおよび剰余類記憶機構204によって
出力される剰余類代表値の両方が表5のGrayコードを使用してシンボル単位で3
2ビットのコード・ワードに変換されるように復号器を修正することによって、
実施可能となる。これに対応して、減算器202は、モジュロ2ではなくモジュ
ロ4演算を行うように修正される。
現在時剰余類代表値に関する減算器202によって出力される32ビットのワ
ードSは、ベクトル生成器210に送られる。このベクトル生成器もまた、16
個の32ビットの入力ベクトル・シーケンスDを、それらベクトルの各々に対し
て迅速アダマール変換を実行するGreenマシン212へ供給するように修正され
る。すなわち、修正ベクトル生成器210は、係数全体が16個の可能な組み合
わせの値全部に及ぶように、4つの係数b1、b2、b3およびb4の各々に0または1
の値を割り当てる。そのような組合せの各々毎に、4進16シンボル値が、次の
関係式に従って導出される。
(b1X1+b2X2+b3X3+b4X4)mod4
この値は、また、入力4進コード・ワードおよび現在次剰余類代表値と同じ方法
で32ビットのワードBに変換される。上記の関係は無修正復号器200の場合
の値Bに関するもとのと似ているけれども、同一ではない。特に、修正された関
係式は、係数b'を含まない。
各ベクトルDは、32ビットのワードSおよびそれぞれの32ビットのワードB
のビット単位加算モジュロ2によって導出され、そのベクトルDにおける値+1
および−1は、2進数値0および1にそれぞれ置き換えられる。次に、ベクトル
Dは、長さ32の迅速アダマール変換を実施するように修正されたGreenマシン2
12に供給される。
Greenマシン212の出力は、各ベクトルD毎に32個の変換コンポーネントで
あり、それらは、(32のコンポーネントを受け取るように修正された)比較器2
14およびラッチ216に送られ、剰余類代表値の各々に関するBの値のすべて
にわたって、最大絶対値ならびに対応する(0から31までの)zの値を持つ変換
コンポーネントEz、4つの係数b1、b2、b3およびb4、および剰余類インデックス
が選択される。選択されたzの値、Ezの符号および係数b1、b2、b3およびb4は、
後述のように、復号される下位10ビットの値を決定し、一方、剰余類インデッ
クスは上位3ビット出力を形成する。
出力される下位10ビットの値を決定するため、係数C'はEzが負であれば1に
、正であれば0にセットされ、zの値は5ビット2進数c1c2c3c4c5として表現さ
れる。5個の行係数a4、a3、a2、a1およびa'が、次の式によって決定される。
a1=(2c2+b1(1+2c1))mod4
a2=(2c3+b2(1+2c1))mod4
a3=(2c4+b3(1+2c1))mod4
a4=(2c5+b4(1+2c1))mod4
a'=2c'+c1
次に、復号されるデータ・ビットが、表5のGrayコードの参照によってこれら行
係数からペアの形態で導出される。
2mシンボルを含む4進コード・ワードという一般的ケースについてこのよう
な方法で修正された復号器200を使用するため、コード・ワードおよび剰余類
代表値は、対応する2進コード・ワードにシンボル単位で変換される。2進数係
数b1、b2、…、bmは、全体として、2m個の可能な組合せの値をカバーする。
値Bは、(b1X1+b2X2+...+bmXm)mod4
という4進式の値を2m+1ビット2進数ワードに変換すことによって導出される
。行係数から2(m+1)最下位出力ビットの値を決定するため、zの値は、2進
数c1c2...cm+1として表され、復号される行係数a1、a2、...、amおよびa'は次の
式によって決定される。
ai=(2ci+1+bi(1+2c1))mod4 (1=<1=<mの場合)
a'=2c'+c1
4進数コードに関する上記記述は、0、1、2、3という可能な値を持つ4進数シ
ンボルに関して行われた。実際の伝送の場合、例えば直角位相シフト・キーイン
グ(すなわちQPSK)変調によって、これらの値はフェーズ・シフトの4つの異
なる値に対応する。1つの可能性は、(i=√-1として)複雑ベクトル1,i,-1およ
び-iと同等な)0度、90度、180度および270度のフェーズ・シフトであ
る。しかし、その他の変形も可能である。例えば、複雑ベクトル(1+i)/√2,(-1+
i)/√2,(-1-i)/√2および(1-i)/√2と同等な45度、135度、225度および
315度の場合もあり得る。この原理は、多数の(j〉2)シンボル値を持つコード
に対して適用でき、実際シンボル値はいかなる2j個の識別可能な信号変調によ
ってでも表現されることは可能であり、それらの振幅は等しい必要はなく、位相
シフト・キーイングの場合、隣接ペアの間の位相の差は等しい必要はない。
COFDM信号を符号化し復号する上述の方法および装置は、エラー検出およ
び訂正特性、低いPMEPR、実施の便宜性および役立つデータ伝送率というい
くつかの利点を提供する。特に長いコード・ワード(すなわち多搬送波システム
における多くの搬送波)が高いデータ率を提供する必要があるような場合、(おそ
らく不可能で時間の無駄な)すべてのコード・ワードをもれなく探索することを
行うことなく、これらの特性を得ることができる。特定の状況においては、これ
らの異なる特性の間での妥協を図るためコード・ワードの選択を修正することが
必要になることもある。
例えば、PMEPRの比較的高い最大値を受け入れる代わりにデータ率を増加
させるため、利用可能なコード・ワード母集団を増加させることが望まれる場合
がある。例えば長さ16(すなわちm=4)の2進コードを考察すると、その剰余類
代表値が生成器アレイにおける付加行の線形組合せである基底コードのあらゆる
可能な剰余類を構築し、その剰余類の範囲内のコード・ワードの使用から生じる
最大ピーク・エンベロープ・パワー(PEP)を導出することは可能である。これ
は、以下の表7に示されるように、各剰余類に対する最大PEPの昇順で剰余類
をリストすることを可能にする。このような表において、第1の列が、コードの
生成器アレーのそれぞれの付加行に対する乗数を含む6つの係数を含み、それら
係数をシンボル単位モジュロ2jで加算することによって剰余類代表値が作成さ
れる。このようにして、例えば、'12'という見出しの下の1は、付加行(X1*X2)
が剰余類代表値に含まれるように1を乗算され、0は0を乗算(実質的には除外)
されることを意味する。中央の列は、剰余類代表値そのものを示し、最後の列は
、その剰余類におけるコード・ワードの使用から生じる最大PEPを示す。
表7:2進(長さ16) 1つの剰余類に対するPEPの導出は、時間領域におけるエンベロープに沿って
連続したサンプル・ポイントにおいてコード・ワードによって生成される複合波
形のエンベロープの振幅を計算することを必要とする点は、注意されべきである
。連続したサンプルに関する時間値の間のインターバルは結果の精度に影響を及
ぼす。すなわち、時間インターバルが短いほど精度は高くなるが、波形全体のた
め必要とされるサンプルの数は増加し、従って、計算量は増加するという代価を
払う。典型的にはPEPの導出は、取得されるPEPがあらかじめ定められた数
の有効数字または10進数に対して安定するまで比較的短い連続的インターバル
に関して反復される。表7のケースにおいては、丸めの後、2番目の10進の場
所が安定するまで、計算はこのように繰り返された。
上述のように、表7の点線(1)より上にリスとされている最初の12個の剰余
類代表値に関連した384個のコード・ワードは、3dBを越えないPEPR、
すなわち、2というファクタを与える(長さ2mのコード・ワードに関する平均エ
ンベロープ・パワーは、2mであり、従って長さ16のコード・ワードに関して
は平均エンベロープ・パワーは16で、最高32のPEPが最高2のPMEPR
を与える)。
使用されるコード・ワードが、表7の上半分すなわち点線(2)より上の最初の
27の剰余類代表値プラス点線(3)より上の次の25の剰余類代表値の内のいず
れか5つと関連づけられると、最小ハミング距離を2*2(=4)で変えないまま
に維持しながら、10データ・ビットを符号化することが可能となる。これは、
最大PMEPRは2から単に4へ増加するだけで(どのようなコード・ワードで
もよい場合は16となるのに対して)単に4へ増加するだけにしながら、16ビ
ットのコード・ワードで表現され得るデータ・ビットの数を8から10へ増加さ
せる。これらの付加的データ・ビットは、図9のセレクタ112によって適応さ
れることができるが、この場合、このセレクタは、データ・ワードの最上位(3
ビットではなく)5ビットの値に従って、選択された(25の)32個の剰余類代表
値から選択するように修正される。
その他の長さの2進数コード・ワードのため表7と同様の表を準備することが
できる。2mのコード・ワード長さに関しては、そのようなテーブルから選択さ
れる剰余類セットを含むいかなるコードも(3dBを越えないPMEPRを持つ
2進数コードの場合のように)2m-2の最小ハミング距離を持ち、上述の適切な復
号器のいずれかを使用することができる。
データ伝送率およびPMEPRの間の同様の妥協を、4進数、8進数およびそ
れ以上の次数のコードに関して適用することができる。次の表8は、長さ16シ
ンボルの4進数コードに関する剰余類代表値を表7と同じ形式で剰余類各々に対
する最大PEPの順序で示すものである。表8:4進(長さ16) この表は、表7の場合と同様に使用されることができる。例えば、表8の点線(1
)より上の最初の12の剰余類に関連するコード・ワードは、点線(1)と(2)の間
の次の40剰余類のうちの任意の20に関連するコード・ワードと共に、16シ
ンボル長の4進数コード・ワードとして15までのデータ・ビットを符号化する
ため使用され得る。それらコード・ワードに従って変調される多搬送波信号の最
大PMEPRは4(6dB)である。
その他どのような長さの4進数コード・ワードのため表8と同等の表を準備す
ることができる。2mのコード・ワード長に関して、そのような表から選択され
る剰余類セットを含むいかなるコードも、(3dBを越えないPMEPRを制せ
得る前述の4進数コードの場合と同様に)2m-1の最小ハミング距離および2m-1
の最小リー距離を持つ。そのようなコードに対し上述のいかなる復号器をも使用
することができ、その場合も前述の諸特性は維持される。
表7および表8にリストされた剰余類代表値の各々はそれぞれの生成器アレー
における付加行の線形組合せである。類似した方法で一層大きい表を生成するた
め基底コードに関する他の剰余類代表値を含めることも可能であるが、表にされ
たPEPだけに基づいてそのようなテーブルからコード・ワードを選択すること
は一般にあまり望ましくはない。なぜなら、そのようなコード・ワードの選択は
、低いエラー検出および訂正特性を持つ可能性があるからである。表7および表
8を引き出す際に使用された生成器アレイは、前述のそれぞれ2進数および4
進数の最小PMEPRコードを導出する際に使用されたものと同じ生成期アレイ
である。
表9は、長さ16シンボルの8進数コードに関する剰余類代表値を各剰余類に
対する最大PEPの順で示したものである。この場合、最初の欄は、2mシンボ
ル・ワードに関する2(Xi*Xk)という形式の乗数を構成する6つの係数を含み(一
方8進数生成器アレイの付加行は4(Xi*Xk)という形式である)、それらはシンボ
ル単位モジュロ2jによって加算され剰余類代表値が作成される。従って、見出
し'12'の下の3は、ワード2(X1*X2)のシンボルの各々が剰余類代表値に包含され
るように3を乗算されることを示す。このように、この場合、リストされた剰余
類代表値は、8進数生成器アレイの追加行の線形の組合せに限定されない。この
表は大きいので,選択される行だけが以下の表9に含められている。表9−8進(長さ16) 表9を作成する際、PEPの計算は、丸めの後少なくとも最初の10進の場所が
安定するまでエンベロープ・サンプル時間値の間の比較的短いインターバルに関
して繰り返された。
表9からわかるように、8進数コードの場合、PMEPRが4よりも高くなら
ないような利用できる多数の剰余類が存在する。
16シンボルの長さ以外の8進数コード・ワードについても、表9と同じよう
な表を準備することができる。長さ2mのコード・ワードに関して、そのような
表から選択される剰余類セットを含むいかなるコードも(前述のような3dBを
越えないPMEPRに対する8進数コードの場合と同様に)最小ハミング距離2m -2
および最小リー距離2m-1を持つ。とはいえ、8進数ケースにおいて、リスト
された剰余類代表値が8進数生成器アレイにおける追加行の線形組合せに限定さ
れるわけではない。この予想外の特徴は、低いPMEPRに関連する非常に多数
の剰余類に貢献する。
表9にリストされた剰余類代表値の各々は、形式2(Xi*Xk)の2mシンボル・ワ
ードの線形組合せである。形式(Xi*Xk)の2”シンボル・ワードの線形組合せを
受け入れることによって更に多数の8進数剰余類を利用可能とすることができる
。この場合、最小リー距離は減少するかもしれないが、コードの最小ハミング距
離は不変のままである。実際には、符号化器230(図14)におけるセレクタ2
52に行を付加し、それによって、セレクタが剰余類代表値の選択を決定する
ため追加の入力データを受け入れることを可能にすることによって、上記オプシ
ョンが実施される。上述の8進数復号器はそのようなコードについても使用可能
であり、その場合でも上述の諸特性は維持できる。
同様の方法で一層大きい表を作成するため基底コードに関する一層多数の剰余
類代表値を含めることは可能ではあるが、表にされたPEPだけに基づいてその
ようなテーブルからコード・ワードを選択することは一般にあまり望ましくはな
い。なぜなら、そのようなコード・ワードの選択は、低いエラー検出および訂正
特性を持つ可能性があるからである。
剰余類代表値の各々が形式2(Xi*Xk)の2mシンボル・ワードの線形組合せであ
るように表9に類似する表を生成することができる。長さ2mのコード・ワード
に関して、そのような表から選択される剰余類セットを含むいかなるコードも最
小ハミング距離2m-2および最小リー距離2m-1を持つ。形式(Xi*Xk)の2mシンボ
ル・ワードの線形組合せを受け入れることによって更に多数の剰余類を利用可能
とすることができる。この場合、最小リー距離は減少するかもしれないが、コー
ドの最小ハミング距離は不変のままである。上述のような復号器を適切に使用し
てそのようなコードを復号することができる。
表7、表8および表9に見られるような剰余類の順序づけされたリストは、C
プログラミング言語による以下のようなプログラムを使用して生成することがで
きる。
データ伝送率とPMEPRの間の妥協点を選択するだけではなく、例えばデー
タ伝送率と最小リー距離の間の妥協を図ることも可能である。例えば、表7の先
頭の12行によって定義される剰余類の中から4つのサブセットを選択すること
によって、3dBの最大PMEPRを維持する一方、データ・ビットの数を8か
ら7へ減少させる代わりに最小距離を4から6へ増加させることができる。その
ようなサブセットの1つの例は、表7の2番目、3番目、4番目および6番目の
行によって定義される剰余類から構成される。同様の妥協がその他のコード・ワ
ード長および高次のコードに関して可能である。極端なケースでは、基底コード
の単一の剰余類を使用して、いかなる次数のコードに対しても2m-1の最小ハミ
ングおよび最小リー距離を提供しながら、j(m+1)データ・ビットだけを符号化す
ることも可能である。
各剰余類に対する最大PEPの順序で剰余類代表値のリストを構築することに
よってデータ伝送率とPMEPRの間の可能な妥協を図ることは、上述のように
、特に比較的長いコード・ワードや高次のコードについては多大な計算を要する
という欠点を持つ。以下の技術は、各剰余類に対する最大PEPを計算せずに、
基底コードと組み合わせて、既知の値を越えないPMEPRに関連したコード・
ワードを生成することができる剰余類代表値セットを識別する(この技術は剰余
類をPMEPRの順に並べることはしない)。この技術を使用する最初の例は、
以
下のような生成器アレイを持つ長さ16(m=4)の2進数コードのケースである。
(0000 0000 1111 1111) (X1)
(0000 1111 0000 1111) (X2)
(0011 0011 0011 0011) (X3)
(0101 0101 0101 0101) (X4)
(1111 1111 1111 1111) (X')
(0000 0000 0000 1111) (X1*X2)
(0000 0000 0011 0011) (X1*X3)
(0000 0000 0101 0101) (X1*X4)
(0000 0011 0000 0011) (X2*X3)
(0000 0101 0000 0101) (X2*X4)
(0001 0001 0001 0001) (X3*X4)
剰余類代表値のセットを生成する最初のステップとして、8つの(2m-1)式の初
期セットが構築される。これらの各々は、次の形式を持つ。
(X1*X2)(+)(X2*X3)(+)v1(X1*X4)(+)v2(X2*X4)(+)v3(X3*X4)
但し、v1、v2およびv3は値0または1を持つ係数であり、記号(+)はビット単位
加算モジュロ2を示す。従って、初期セットは次の通りとなる。
(X1*X2)(+)(X2*X3) (v1=0,v2=0,v3=0)
(X1*X2)(+)(X2*X3)(+)(X1*X4) (v1=1,v2=0,v3=0)
(X1*X2)(+)(X2*X3)(+)(X2*X4) (v1=0,v2=1,v3=0)
(X1*X2)(+)(X2*X3)(+)(X1*X4)(+)(X2*X4) (v1=1,v2=1,v3=0)
(X1*X2)(+)(X2*X3)(+)(X3*X4) (v1=0,v2=0,v3=1)
(X1*X2)(+)(X2*X3)(+)(X1*X4)(+)(X3*X4) (v1=1,v2=0,v3=1)
(X1*X2)(+)(X2*X3)(+)(X2*X4)(+)(X3*X4) (v1=0,v2=1,v3=1)
(X1*X2)(+)(X2*X3)(+)(X1*X4)(+)(X2*X4)*(X3*X4) (v1=1,v2=1,v3=1)
この初期セットは、次に、各式における行識別子X1、X2、X3およびX4のサブスク
リプトのすべての可能な順列を適用することによって拡張される。最終セットは
、拡張されたセットの範囲内で同類のない式を識別することによって作成され
る。この目的のため、(X1*X2およびX2*X1のような)サブスクリプトのペアが同じ
であるが順序が逆になっている項目は同一のものとみなされ、1つの式の中のそ
のような項目の順序付けは無視される。
表10には、剰余類代表値の必要なセットを定義する全部で49の式の最終セ
ットが示されている。モジュロ2加算されるコード生成器アレイの付加行のそれ
ぞれに対する乗数を構成する6つの係数の観点から表は構成され、対応する剰余
類代表値が作成されている。例えば、見出し'12'の下の1は、付加行(X1*X2)
が剰余類代表値に含まれるように1を乗算されることを意味し、0は0を乗算さ
れるすなわち除外されることを意味する。表10 これらの剰余類代表値のいずれかを基底コードと組み合わせることによって得
られるコードは、次のような特性を有する。
・コードの最小ハミング距離は4(2m-2)である。
・これらのコード・ワードに従って変調される多搬送波信号は6dBを越えるP
MEPRを持たない。
・そのようなコードに対して使用される、ハミング距離に基づいた復号器は、解
析手法を使用して動作させることができ、例えば少くとも部分的に組合せの論理
を使用して実施することができる。
・許容可能なデータ伝送率を達成するため利用可能なコード・ワードが存在する
。
m>=3として長さ2mビットの2進数コードという一般的ケースにおいて、2m-1個
の式の初期セットは次のような形式で構築される。
(X1*X2)(+)(X2*X3)(+)...(+)(Xm-2*Xm-1)(+)v1(X1*Xm)
(+)v2(X2*Xm)(+)...(+)vm-1(Xm-1*Xm)
但し、v1,v2,...vm-1は0または1という値を持つ係数であり、サブスクリプ
トの順列および類似のない式の識別は前述の場合の通り行われる。(パラメータm
に関すう限り)種々のコード・ワード長のためこのプロシージャによって与えら
れる剰余類の数およびコード・ワードの全数は以下の通りである。m 剰余類 コード・ワード数
3 7 1792
4 49 50176
5 552 2260992
6 7800 127795200
7 126360 8281128960
64ビット以上(m>6)のワード長さに対して適用できるこの技術の修正は、類
似する式を検出し除外するため式のセットを検査する必要性なしに、剰余類の大
きなサブセットを識別することを可能にする。言い換えると、この修正技術は、
本来的に他に類似のない式の拡張セットを生成することを保証することができる
。このため、係数v1,v2,...vm-1の値の組合せは、形式v1v2v3...vm-2vm-1の2
進数ワードが次のような2つの特性を持つような組み合わせに限定される。すな
わち、各ワードv1v2v3...vm-2vm-1は少くとも4というハミング加重を持つこと
、および、
である。
制限された係数の組み合わせセットという上記のような形式で与えられる初期セ
ットの式を構築し、各式における行識別子のサブスクリプトのすべての可能な順
列を適用することによって、剰余類代表値の必要なサブセットを定義する明確な
式のセットが作成される。基底コードをこのサブセットにおけるどのような剰余
類代表値との組み合わせよって生成されるコード・ワードも、6dBを越えない
PMEPRを生む。m>7の場合で少なくともm!.2m-4の剰余類代表値がこのプロシ
ージャによって識別される。
同様の技術を使用して、既知の最大PMEPRという結果に結びつく4進およ
び高次コード・ワードの剰余類を識別することができる。m>=3の場合の長さ2m
の4進数コード・ワードに関しては、2m-1個の式の初期セットは次の形式で構
築される。
2(X1*X2)(+)2(X2*X3)(+)...(+)2(Xm-2*Xm-1)(+)2v1(X1*Xm)
(+)2v2(X2*Xm)(+)...(+)2vm-1(Xm-1*Xm)
但し、v1、v2、...vm-1は0または1という値を持つ係数であり、記号(+)はシンボ
ル単位加算モジュロ4を示す。この初期セットは、次に、各式における行識別子
X1、X2、X3...Xmのサブスクリプトのすべての可能な順列を適用することによっ
て拡張される。最終セットは、拡張されたセットの範囲内で同類のない式を識別
することによって作成される。(パラメータmに関する限り)種々のコード・ワー
ド長のためこのプロシージャによって与えられる剰余類の数およびコード・ワー
ドの全数は以下の通りである。m 剰余類 コード・ワード数
3 37 9472
4 661 676864
5 14472 59277312
6 360600 5908070400
7 >=1290240 >=84557168640
この場合更に多数の剰余類が存在し、従って、潜在的に一層高いデータ伝送率が
利用可能である。この修正技術によって識別されるどのような剰余類代表値と4
進数基底コードの組み合わせよって生成されるコード・ワードも、6dBを越え
ないPMEPRを生むが、リー最小距離は2m-2に減少する。
更に、係数v1およびvm-1の値を1と3に固定し、その他の係数は0から3まで
の任意の値を持つことを許容することによって、行識別子のサブスクリプトの順
列における類似のない式からなる拡張セットを生成する修正プロシージャを利用
することができる。
m>=3の場合の長さ2mの8進数コード・ワードに関しては、4m-1個の式の初期セ
ットは次の形式で構築される。
4(X1*X2)(+)4(X2*X3)(+)...(+)4(Xm-2*Xm-1)(+)2v1(X1*Xm)
(+)2v2(X2*Xm)(+)...(+)2vm-1(Xm-1*Xm)
但し、v1,v2,...vm-1は0または1という値を持つ係数であり、記号(+)はシンボ
ル単位加算モジュロ8を示す。この初期セットは、次に、各式における行識別子
X1、X2、X3...Xmのサブスクリプトのすべての可能な順列を適用することによっ
て拡張される。最終セットは、拡張されたセットの範囲内で同類のない式を識別
することによって作成される。
これらの剰余類代表値のいずれかを基底コードと組み合わせることによって得
られる8進数コードは、次のような特性を有する。
・コードの最小ハミング距離は2m-2で、最小リー距離は2m-1である。
・これらのコード・ワードに従って変調される多搬送波信号は6dBを越えるP
MEPRを持たない。
・そのようなコードに対して使用される、ハミング距離に基づいた復号器は、解
析手法を使用して動作させることができ、例えば少くとも部分的に組合せの論理
を使用して実施することができる。
・許容可能なデータ伝送率を達成するため利用可能なコード・ワードが存在する
。一般的に、このプロシージャはm=>4の時少なくともm!.4m-3個の類似のない剰
余類代表値を識別する。
(パラメータmに関する限り)種々のコード・ワード長のためこのプロシージャ
によって与えられる剰余類の数およびコード・ワードの全数は以下の通りである
。m 剰余類 コード・ワード数
3 37 151552
4 661 21659648
5 14472 3793747968
6 360600 756233011200
7 >=1290240 >2.16x1013
4進数の場合と同様に、16以上の(m=>4の)シンボルのワード長に関して、類
似性の検証を行うことなくこれら剰余類の大きなサブセットを識別することがで
きる。これは、係数v1およびvm-1の値を1と3に固定し、その他の係数は0から
3までの任意の値を持つことを許容することによって達成される。このプロシー
ジャによって正確にm!.4m-3個の類似のない剰余類代表値が得られる。
m>=3の場合の長さ2mの8進数コード・ワードに関して、係数v1、v2、...vm-1が
0から7の任意の数を持つことを許容し、初期セットの式の形式を次のように修
正することによって、更に別の修正が可能である。
4(X1*X2)(+)4(X2*X3)(+)...(+)4(Xm-2*Xm-1)(+)v1(X1*Xm)
(+)v2(X2*Xm)(+)...(+)vm-1(Xm-1*Xm)
この初期セットは、次に、各式における行識別子X1、X2、X3...Xmのサブスクリ
プトのすべての可能な順列を適用することによって拡張される。最終セットは、
上述の2進数の場合と同様に、拡張されたセットの範囲内で同類のない式を識別
することによって作成される。(パラメータmに関する限り)種々のコード・ワー
ド長のためこのプロシージャによって与えられる剰余類の数およびコード・ワー
ドの全数は以下の通りである。m 剰余類 コード・ワード数
3 169 692224
4 5917 193888256
5 243912 63940067328
6 >5.52x106 >1.15x1013
7 >3.09x108 >5.19x1015
この場合更に多数の剰余類が存在し、従って、潜在的に一層高いデータ伝送率が
利用可能である。この修正技術によって識別されるどのような剰余類代表値と4
進数基底コードの組み合わせよって生成されるコード・ワードも、6dBを越え
ないPMEPRを生むが、リー最小距離は2m-2に減少する。
更に、行識別子のサブスクリプトの順列を作成した後確実に類似のない式から
なる拡張セットを生成するもう1つの修正プロシージャが提供される。このプロ
シージャは、係数v1およびvm-1の値を以下に示されるような順序の値のペアに固
定する。すなわち、v1,vm-1の値は、1,2;1,3;1,5;1,6,1,7,2,3;2,5,2,6;2,7;3,
5,3,6,3,7;5,6;5,7,6,7;とされる。他の係数は0から7のどのような値でも持つ
ことができる。このアプローチによって、m>=4の場合、少なくとも15.m!.8m-3
の類似のない剰余類代表値が取得される。
6dBを越えないPMEPRを生成するコード・ワードを定義する剰余類を識
別するこれら技術は、一層高次のコードヘ拡張することができる。更に一般化す
れば、剰余類の大きなセットは、各々が2jの可能な値を持つ(m>=3の)2mシンボ
ルを含むコードに対して識別可能であり、この場合、PMEPRは、1=<p=<m-2
としていかなる固定整数pに関しても最大2P+1が保証される。すなわち、係数の
p個のセットは次のように定義される。
(v1,1,v1,2,...v1,m-p)
(v2,1,v2,2,...v2,m-p)
...
(vp,1,vp,2,...vp,m-p)
但し各係数は0から2j−1までの整数を持つ。1=<i<j=<pとして、各々が0か
ら2j−1までの整数を持つ更なるp(p-1)/2個の係数が定義される。係数Vij,お
よびWijの初期選択のため以下の形式の式が構築される。
2j-1(X1*X2)(+)2j-1(X2*X3)(+)...(+)2j-1(Xm-p-1*Xm-p)
(+)v1,1(X1*Xm-p+1)(+)v1,2(X2*Xm-p+1)(+)...(+)v1,m-p(Xm-p*Xm-p+1)
(+)v2,1(X1*Xm-p+2)(+)v2,2(X2*Xm-p+2)(+)...(+)v2,m-p(Xm -p
*Xm-p+2)...
(+)vp,1(X1*Xm)(+)vp,2(X2*Xm)(+)...(+)vp,m-p(Xm-p*Xm)
(+)w1,2(Xm-P+1*Xm-P+2)
(+)w1,3(Xm-p+1*Xm-p+3)(+)w2,3(Xm-p+2*Xm-p+3)
(+)w1,4(Xm-P+1*Xm-P+4)(+)w2,4(Xm-P+2*Xm-P+4)(+)w3,4(Xm-P+3*Xm-p+4)
...
(+)w1,p(Xm-p+1*Xm)(+)w2,p(Xm-p+2*Xm)(+)...(+)wp-1,p(Xm-1*Xm)
但し、記号(+)はシンボル単位加算モジュロ2jを示す。この形式の更なる式が、
係数vijおよびwijの選択の残りの可能な組み合わせに関して構築され、2jp(m-p) +jp(p-1)/2
の式からなる初期セットが取得される。この初期セットは、各式にお
いて行識別子X1,X2,X3,...Xmのサブスクリプトのすべての可能な順列を適用
することによって拡張される。剰余類代表値の必要なセットを定義する式の最終
セットが2進数に関して上述したように拡張セットなしに他に類似のない式を識
別することによって生成される。このプロシージャによって識別される任意の剰
余類代表値と2j次の基底コードを組み合わせることによって生成されるコード
・ワードのセットは、両方共2m-2の最小り一距離および最小ハミング距離を持
つ。係数VijおよびWijが上述の範囲値を持つように限定されるように更に修正を
加えることも可能である。この場合識別される剰余類は少なくなるが、結果とし
て生ずるコードは2m-1の最小リー距離を持つ。
更に上記以外の方法でデータ伝送率、PMEPRおよびエラー検出/訂正能力
の間の妥協を図ることができる。例えば、上述のように11データ・ビットを直
接符号化するため32ビットのコード・ワードを使用する代わりに、表3から導
出される8B/16Bコードを使用して16ビットのコード・ワードとして連続
8ビット・ブロックを符号化し、次に、そのようなコード・ワードのペアを連結
して伝送用の混成32ビット・ワードを生成することも可能である。このような
連結コードは11B/32Bコードの直接使用と比較して、次のような特性を持
つ。
・一層すぐれたデータ転送率(伝送される32ビットによって表現される16デ
ータ・ビット)。
・PMEPRは悪くとも4(=6dB)であり、コンポーネント・コード・ワード
に関する最大PMEPRの2倍である。
このように、上記連結方法は、すぐれたデータ伝送率が要求され、また必ずしも
最適でなくてもよいがPMEPRが制御されている状況において役立つことがで
きる。
連結されたコードを復号する際には、コード・ワードは先ず2つの連続する1
6ビットのコード・ワードに分割され、次に16B/8B復号器120または1
40によって個々に処理されてそれぞれ8ビットのデータ・ワードが取り出され
る。
コード・ワードのペアを伝送のため連結する以外の方法で長さの短いコード・
ワードを伝送用の一層長い混成コード・ワードに結合することは可能である。例
えば4つのコード・ワードを連結し、受け取った混成コード・ワードを復号ため
4つの部分に分割するとう方法も可能である。代替的方法としては、個々のより
短いコード・ワードのコンポーネントのビットまたはシンボルを1つ1つまたは
ペアや4個組の単位でインターリブすることもできる。混成コード・ワードを構
成するコード・ワードは、同じ剰余類のメンバーである必要はない。構成する特
定のコード・ワードに関する剰余類代表値の選択を複数の値にわたるようにする
こともできる。この場合、例えば図8の復号器60のセレクタの機能と同様な形
態でデータ・ワードの1つまたは複数の付加ビットを定義することによって、選
択された構成コード・ワードの各々が属する剰余類の識別情報それ自体を情報の
伝送に使用することができる。
このような連結またはインターリーブによって作成される混成伝送コード・ワ
ードは、上述のような同じ長さの行を持つ生成器マトリックスからではなく(例
えば半分の)行を持つ生成器マトリックスから導出される。しかしながら、その
ような混成コード・ワードによって実際構成されるコードを、混成コード・ワー
ドとして同じ長さの行の生成器マトリックスを持つ1つのコードの混成剰余類セ
ットから選択するような実施形態も可能である。
別の修正方法として、16ビットのコード・ワードおよび32ビットのコード
・ワードを、各々を上述のようにそれぞれ導出されるコードから選択し、伝送用
の混成48ビット・ワードにそれらを連結することも可能である。更に、この4
8ビット・ワードに付加的な16個のゼロ・ビットを連結して、伝送用IFFT
方式で処理するための64ビット・ワードを生成することもできる。16個の付
加0ビットは受け取りの際、サンプル数に関して2の累乗の最適選択を与えなが
ら過サンプリングの使用を可能にする。もう1つの可能性は、各々が16ビット
のコードから選択される3つの16ビットのコード・ワードを連結して混成48
ビット・コード・ワードを生成するものである。
注意すべき点であるが、上述された所与の長さの2進数、4進数および8進数
のコードすべては単一の共通の生成器マトリックスから導出される点である。実
際、このような生成器マトリックスは同様の高次コードを導出するため使用する
ことができる。通信経路の一般的特徴に従って使用されるコードの次数を変更す
る適応型システムを実施する上で上記のような特性は価値がある。このように、
高品質の経路が使用中の時、8進数のような比較的高い次数のコードを使用して
高いデータ伝送率を獲得することができる。経路の品質が悪くなりエラー率が増
加する場合、4進数または2進数のような低次コードの使用に切り替えることが
できる利点がある。これは、次数の異なるコード各々に対して回路の完全な複製
を使用するようにする必要性なしに、本発明を用いて達成することができる。ま
た、共通の生成器マトリックスを組み込むまたはそれに基づく同様の回路を、例
えば各コードの生成器アレイの付加行における値に対応する切り替え可能なパラ
メータと共に、使用することも可能である。それらのパラメータの適切な値の選
択によって、同じ基本回路を、必要とされる特定次数のコードを生成するため、
使用することができる。
上述されたように導出される剰余類代表値は特に利点の多い特性を提供する。
最も一般的ケースにおいて、剰余類代表値は、体系的方法でそれらの値をシフト
するためシンボル単位加算モジュロ2jによってコード・ワードと組み合わせら
れるいかなる値でもあり得る。
上述のように定義されるコードにおけるコード・ワードは、また、回路動作の
受け取った信号とのタイミングの同期を確立するために役に立つ特性を持つ。従
って、これらコードを復号する上述の回路もまた受け取ったデータにおける同期
シーケンスを識別するように使用されることができる。これらのコードは、CO
FDM以外の技術による通信に関する利点のある特性を持つことが観察される。
例えば、それらコードは、符号分割多元接続(すなわちCDMA)技術に関するコ
ードとしてあるいはアナログ通信経路上のデジタル・データのモデム伝送ための
コードとして使用することができる。
─────────────────────────────────────────────────────
フロントページの続き
(31)優先権主張番号 9625710.0
(32)優先日 平成8年12月11日(1996.12.11)
(33)優先権主張国 イギリス(GB)
(31)優先権主張番号 9715721.8
(32)優先日 平成9年7月26日(1997.7.26)
(33)優先権主張国 イギリス(GB)
(81)指定国 EP(AT,BE,CH,DE,
DK,ES,FI,FR,GB,GR,IE,IT,L
U,MC,NL,PT,SE),JP,US