(57)【特許請求の範囲】
【請求項１】
２m(ｍ＞１)の整数倍でないサイズを有する入力データをインターリービングする方法において、
前記入力データのサイズにオフセット値を加算して仮想アドレスのサイズが２mの整数倍となるようにする過程を備えることを特徴とするインターリービング方法。
【請求項２】
前記入力データをメモリに順次に貯蔵する過程と、
それぞれ２m(ｍ＞１)のサイズを有する複数のアドレス生成領域を定義して前記アドレス生成領域でランダムアドレスを発生する過程と、
前記アドレス生成領域から発生する前記ランダムアドレスを用いて前記メモリから入力データを読み出す過程とをさらに備えることを特徴とする請求項１に記載のインターリービング方法。
【請求項３】
前記ランダムアドレスはＰＮ(Pseudo Noise)シーケンスであることを特徴とする請求項２に記載のインターリービング方法。
【請求項４】
前記オフセット値は、前記入力データのサイズを２進数に変換して前記２進数の最下位ビットから連続する“０”の個数が少なくとも１以上となるように前記２進数に加算される値であることを特徴とする請求項１に記載のインターリービング方法。
【請求項５】
２m(ｍ＞１)の整数倍でないサイズを有する入力データをインターリービングする方法において、
前記入力データをメモリに順次に貯蔵する過程と、
前記入力データのサイズにオフセット値を加算して２m(ｍ＞１)のサイズを有する仮想アドレスを提供する過程と、
それぞれ２mのサイズを有する複数のアドレス生成領域を定義する過程と、
前記アドレス生成領域でランダムアドレスを発生する過程と、
前記アドレス生成領域から発生する前記ランダムアドレスを用いて前記メモリから入力データを読み出す過程とを備えることを特徴とするインターリービング方法。
【請求項６】
前記ランダムアドレスはＰＮシーケンスであることを特徴とする請求項５に記載のインターリービング方法。
【請求項７】
前記オフセット値は、前記入力データのサイズを２進数に変換して前記２進数の最下位ピットから連続する“０”の個数が少なくとも１以上となるように前記２進数に加算される値であることを特徴とする請求項５に記載のインターリービング方法。
【請求項８】
２m(ｍ＞１)の整数倍でないサイズを有する入力データをインターリービングする装置において、
前記入力データを順次に貯蔵するメモリと、
前記入力データのサイズにオフセット値を加算して２m(ｍ＞１)のサイズを有する仮想アドレスを提供し、それぞれ２m(ｍ＞１)のサイズを有する複数のアドレス生成領域を定義して前記アドレス生成領域でランダムアドレスを生成するアドレス生成器とを備え、
前記アドレス生成領域から発生する前記ランダムアドレスを用いて前記メモリから入力データを読み出すことを特徴とするインターリービング装置。
【請求項９】
前記ランダムアドレスはＰＮ生成器により生成されることを特徴とする請求項８に記載のインターリービング装置。
【請求項１０】
前記オフセット値は、前記入力データのサイズを２進数に変換して前記２進数の最下位ビットから連続する“０”の個数が少なくとも１以上となるように前記２進数に加算される値であることを特徴とする請求項８に記載のインターリービング装置。
【請求項１１】
前記アドレス生成器は前記アドレス生成領域の最後のアドレスを読み出しアドレスとして使用することを特徴とする請求項８に記載のインターリービング装置。
【請求項１２】
前記アドレス生成器は、
前記各アドレス生成領域に対応するランダムアドレスを発生する複数のＰＮ生成器を有するランダムアドレス生成器と、
前記オフセット値に対応するアドレスに応じて前記仮想アドレス領域を複数のグループに分け、前記ランダムアドレス生成器からのランダムアドレスがどのグループに属するかを判断する比較器と、
前記ランダムアドレス生成器から提供されるランダムアドレスから前記比較器により判断されたグループに対応する特定値を減算して前記読み出しアドレスを発生する演算器とを備えることを特徴とする請求項８に記載のインターリービング装置。
【請求項１３】
前記ＰＮ生成器は相異なる初期状態値を有することを特徴とする請求項１２に記載のインターリービング装置。
【請求項１４】
前記アドレス生成器は、
前記各アドレス生成領域に対応するランダムアドレスを発生する複数のＰＮ生成器と、
前記複数のＰＮ生成器のうち、いずれか一つを選択する選択信号を発生するカウンタと、
前記カウンタから出力される選択信号に応じて前記複数のＰＮ生成器のうち、所定の一つのＰＮ生成器の状態値を選択して出力する選択器と、
前記カウンタからの前記選択信号に対応するビットと前記選択器から出力されるビットを組み合わせて前記読み出しアドレスを構成するアドレスバッファとを備えることを特徴とする請求項８に記載のインターリービング装置。
【請求項１５】
前記ＰＮ生成器は相異なる初期値を有することを特徴とする請求項１４に記載のインターリービング装置。
【請求項１６】
前記カウンタは前記ＰＮ生成器を順次に選択する前記選択信号を出力することを特徴とする請求項１４に記載のインターリービング装置。
【請求項１７】
前記カウンタは前記ＰＮ生成器をランダムに選択する前記選択信号を出力することを特徴とする請求項１４に記載のインターリービング装置。
【請求項１８】
前記カウンタは最後のＰＮ生成器をモニタリングして前記最後のＰＮ生成器の状態値が前記オフセット値に対応する状態値を有するとき、前記最後のＰＮ生成器を選択せず、次のＰＮ生成器を選択することを特徴とする請求項１６に記載のインターリービング装置。
【請求項１９】
前記カウンタは前記最後のＰＮ生成器をモニタリングして前記最後のＰＮ生成器の状態値が前記オフセット値に対応する状態値を有するとき、前記最後のＰＮ生成器をスキップし、次のＰＮ生成器を選択することを特徴とする請求項１７に記載のインターリービング装置。
【請求項２０】
ターボ符号化装置において、
入力データを符号化する第１構成符号器と、
前記入力データをメモリに順次に貯蔵し、前記入力データのサイズにオフセット値を加算して仮想アドレスのサイズが２m(ｍ＞１)の整数倍となるようにし、それぞれ２m(ｍ＞１)のサイズを有する複数のアドレス生成領域を定義して前記アドレス生成領域でランダムアドレスを発生し、前記アドレス生成領域から発生する前記ランダムアドレスを用いて前記メモリから入力データを読み出すインターリーバと、
前記インターリーバから読み出されるデータを符号化する第２構成符号器とを備えることを特徴とするターボ符号化装置。
【請求項２１】
前記オフセット値は、前記入力データのサイズを２進数に変換して前記２進数の最下位ビットから連続する“０”の個数が少なくとも１以上となるように前記２進数に加算される値であることを特徴とする請求項２０に記載のターボ符号化装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はインターリービング／デインターリービング装置及び方法に係り、特に、衛星、ＩＳＤＮ(Integrated Services Digital Network)、ディジタルセルラー、Ｗ−ＣＤＭＡ(Wideband Code Division Multiple Access)、ＩＭＴ−２０００及びＷ−ＡＴＭ(Wideband Asynchronous Transfer Mode)のような無線通信システムに用いられるターボ符号器のためのインターリービング／デインターリービング装置及び方法に関する。
【０００２】
【従来の技術】
ターボ符号器において、インターリービングは符号器に入力される情報をランダム化し、コードワードの距離特性を改善するように行われる。特に、ＩＭＴ−２０００(又はＣＤＭＡ−２０００)通信システムの付加チャネル(又はトラフィックチャネル)とＥＴＳＩ(European Telecommunication Standards Institute)により提案されたＵＭＴＳ(Universal Mobile Telecommunication System)のデータチャネルでターボ符号器が用いられると見込まれる。これにより、このためのインターリーバの具体的な具現方式が求められている。また、ターボ符号器の使用はディジタル通信システムの信頼度の向上、特に、既存及び今後のディジタル移動通信システムの性能改善をもたらす。
【０００３】
前記ターボ符号器はＬ情報ビットの入力フレームを二つの簡単な並列鎖状符号を用いてパリティシンボルに符号化するが、構成符号としてはＲＳＣ(Recursive Systematic Convolutional)符号を使用する。
【０００４】
図９は一般的なターボ符号器の構成を示しているが、これは米国特許第５，４４６，４７４号(１９９５年８月２９日付登録)に詳しく開示されている。
【０００５】
図９を参照すれば、前記ターボ符号器は入力フレームデータを符号化する第１構成符号器１１と、前記入力フレームデータをインターリービングするインターリーバ１２と、前記インターリーバ１２の出力を符号化する第２構成符号器１３とを備えてなる。前記第１及び第２構成符号器１１，１３にはこの技術分野で広く知られているＲＳＣ符号器を使用することができる。また、前記インターリーバ１２は入力情報ビットフレームと同一のサイズを有し、前記第２構成符号器１３に入力される情報ビットの順序を変えて情報ビット間の相関を低減する。
【０００６】
従来では、前記ターボ符号器の内部インターリーバ１２(又はターボインターリーバ)として、ＰＮ(Pseudo Noise)ランダムインターリーバ、ランダムインターリーバ、ブロックインターリーバ、非線形インターリーバ及びＳ−ランダムインターリーバのような各種のインターリーバが提案された。しかしながら、このようなインターリーバは具現よりは学問的な研究分野の観点から性能改善のために設計されたアルゴリズムに過ぎない。したがって、実際システムを具現するときは、ハードウェア具現の複雑度を考慮すべきである。以下、従来のターボ符号器のインターリーバに対する特性及び問題点について説明する。
【０００７】
上述したターボ符号器の性能はその内部インターリーバにより左右される。一般に、最適の性能を保障するインターリーバの設計は、インターリーバのサイズの増加による要求計算量が幾何級数的に増加するので、実際具現は不可能である。したがって、一般的に数個の基準を備え、その基準を満たすインターリーバを具現する。このような基準となる特性は次の通りである。
距離特性：隣接コードワードシンボル間の距離をある程度に維持すべきである。これは畳み込み符号のコードワード距離特性と同一の役割を果たすため、同一の条件でより長い距離を有するように設計することが望ましい。
加重値特性：ゼロでない情報語に対応するコードワードの加重値が基準値より高くなるべきである。これは畳み込み符号の最小距離特性と同一の役割を果たすため、同一の条件でより大きい加重値を有するように設計することが望ましい。
ランダム特性：インターリービング以前のもとの入力ワードシンボル間の相関係数よりインターリービング以後の出力ワードシンボル間の相関係数が非常に低くなるべきである。すなわち、出力ワードシンボル間のランダム化が十分に行われなければならない。これは連続復号化過程で発生する外部情報特性に直接的な影響を及ぼす。
【０００８】
上述した三つの設計基準は一般的にターボ符号器の役割であるが、このような特性は明らかに分析されない。実験結果によれば、ランダムインターリーバの性能がブロックインターリーバより優れる。しかしながら、ランダムインターリーバはフレームのサイズが多様で大きくなるほど、インターリーバインデックス(すなわち、マッピングルール又はアドレス)を貯蔵するためのメモリの容量も増加するという問題点を有する。したがって、ハードウェアのサイズを考慮すると、インターリーバインデックスを貯蔵するルックアップテーブル方式よりはインデックスを発生させる規則を用いてシンボルクロックごとにアドレスを発生させることにより、該当アドレスに貯蔵されているデータを読み出す計数(enumeration)方式を採用することが望ましい。
【０００９】
結論として、ＩＭＴ−２０００やＵＭＴＳシステムで各種のインターリーバのサイズが要求され、ハードウェア具現の複雑性も制限される場合、ターボ符号器はこのような制限的な条件を考慮して最適のインターリーバ性能を保障するように設計されるべきである。すなわち、アドレスを発生させる規則を考案してそのアドレス発生規則に応じてインターリービング／デインターリービングを行うべきである。勿論、上述したターボインターリーバの特性を十分に満たすように設計されるべきである。
【００１０】
前記ＩＭＴ−２０００又はＵＭＴＳ仕様(specification)ではターボインターリーバに対して具体的に定義していない。ＩＭＴ−２０００仕様により定義される順方向リンク及び逆方向リンクは各種の論理チャネル及び各種のインターリーバサイズを有する。したがって、このような多様性を十分に満たすためには、多量のメモリ容量が必要である。例えば、順方向リンク伝送モードＮ＝３の場合、１４４ビット／フレームから３６８６４ビット／フレームまでの各種のサイズのインターリーバが用いられる。
【００１１】
上述したように、従来の技術の問題点は次の通りである。
第一に、従来のターボ符号器の内部インターリーバとしては、ＰＮランダムインターリーバ、ランダムインターリーバ、ブロックインターリーバ、非線形インターリーバ及びＳ−ランダムインターリーバが用いられる。しかしながら、このようなインターリーバは具現よりは学問的な研究分野の観点から性能改善のためのアルゴリズムに過ぎない。したがって、実際システムの具現時にこのようなインターリーバのバードウェア具現複雑度を考慮すべきである。しかしながら、これは具体的に定義されていない。
【００１２】
第二に、ルックアップテーブルを用いる従来のインターリービング方式で各インターリーバのサイズに応じるインターリービング規則を送受信器の制御部(ＣＰＵ又はホスト)が貯蔵すべきなので、ホストメモリはインターリーババッファの外、別途の貯蔵空間を要する。すなわち、フレームのサイズが多様で大きくなるほど、インターリーバインデックス(マッピングルール又はアドレス)を貯蔵するためのメモリの容量も非常に増加する。
【００１３】
第三に、距離特性及びランダム特性を同時に満たすインターリーバの具現が容易でない。
【００１４】
第四に、ＣＤＭＡ−２０００順方向リンクのターボ符号器のための具体的なターボインターリーバの仕様が提示されていない。
【００１５】
【発明が解決しようとする課題】
したがって、本発明の目的は、上述した従来の技術によるインターリーバの問題点を解決できるインターリーバを具現する装置及び方法を提供することにある。
【００１６】
本発明の他の目的は、通信システムでターボ符号器の特性である距離特性、加重値特性及びランダム特性を同時に満たすインターリービング／デインターリービング装置及び方法を提供することにある。
【００１７】
本発明のさらに他の目的は、通信システムで入力データサイズ値に特定値を加算して２m×Ｎ(Ｎは整数、Ｍは１より大きく、シフトレジスタの数)のサイズを有する仮想アドレス領域を用いてインターリービングを行う装置及び方法を提供することにある。
【００１８】
【課題を解決するための手段】
前記目的を達成するための本発明は、２m(ｍ＞１)の整数倍でないサイズを有する入力データをインターリービングする方法を提供する。前記方法は、入力データをメモリに順次に貯蔵する過程と、入力データのサイズにオフセット値を加算して２mのサイズを有する仮想アドレスを提供する過程と、それぞれ２mのサイズを有する複数のアドレス生成領域を定義して前記アドレス生成領域でランダムアドレスを発生する過程と、前記アドレス生成領域から発生する前記ランダムアドレスを用いて前記メモリから入力データを読み出す過程とを備えることを特徴とする。
【００１９】
【発明の実施の形態】
以下、添付図面を参照して本発明の望ましい実施形態を詳しく説明する。下記の説明において、本発明の要旨を不明瞭にする公知の機能及び構成に対する詳細な説明は省略する。
【００２０】
本発明は上述したターボインターリーバの特性(距離特性、加重値特性及びランダム特性)を満たす最適のインターリービング／デインターリービング装置を提案する。
【００２１】
このため、本発明によるターボインターリーバのアドレス生成器は入力フレームデータのサイズが２m(ｍ＞１)の整数倍でなければ、前記フレームのサイズを２進数に変換してその最下位ビットから連続する“０”の個数が１から６４のうち、一つとなるように所定値(オフセット値(offset value：ＯＳＶ))を加算して仮想アドレスサイズＮを決める。このような仮想アドレスサイズＮを領域数Ｎｇ×２mで表現するためには、領域数Ｎｇとｍは前記インターリーバ特性を最適に満たすように実験により決める。その後、２mサイズの部分アドレス生成領域に応じてＰＮアドレスを発生して全体入力フレームデータをインターリービングする。例えば、フレームのサイズが３７６(＝１０１１１１０００)の場合、最下位ビットから連続する“０”の個数が所定値になるように加算されうるオフセット値は８(＝１０００)となる。
【００２２】
ここで、前記追加オフセット値により不必要な読み出しアドレスが発生するが、このアドレスを無効アドレスと称する。仮に、入力フレームが２の自乗形態で表現されるように前記入力データサイズにオフセット値を追加すると、前記入力フレームのサイズが大きくなるとオフセット値も非常に増加するため、無効アドレスの処理が困難になる。また、前記領域数が増加すると、ランダム特性は劣化する。ここで、“領域”はインターリービングアドレス領域を均等分割したとき、各々のアドレス生成領域を示し、“グループ”は前記オフセット値によりグループ化するアドレス領域を示す。
【００２３】
本発明によるインターリーバは入力情報ビットの順序をＰＮオフセット制御方式を用いて置換して第２構成符号器に提供する。したがって、本発明によるインターリービングは入力情報ビットを貯蔵するインターリーバメモリ(入力データバッファと出力データバッファからなる)と、入力情報ビットの順序を最適に変えるためのオフセット制御ＰＮインターリービング(ＯＣＰＮＩ)ブロック(部分逆インターリーバと比較器からなる)と、アップ／ダウンカウンタとを必要とする。また、第１及び第２構成符号器の場合、ターボ符号器として従来の技術による構成符号器のみならず、ＣＤＭＡ−２０００システムで提示した構成符号器、ＵＭＴＳシステムで提示した構成符号器を使用することができる。さらに、本発明によるインターリーバは直列ターボ符号器の内部インターリーバのみならず、チャネルインターリーバにも適用が可能である。
【００２４】
図１及び図２は本発明の実施形態によるインターリーバ及びデインターリーバの構成を示す。
【００２５】
図１を参照して第１構成符号器から出力されるフレームデータをインターリービングするためのインターリーバの構成を説明する。アドレス生成器１１１は入力フレームデータのサイズＬ及び入力クロックに応じて入力データビットの順序を変えるための読み出しアドレスを生成してインターリーバメモリ１１２に出力する。前記インターリーバメモリ１１２は書き込みモードでは入力データを順次に貯蔵し、読み出しモードでは前記アドレス生成器１１１から提供される読み出しアドレスに応じて貯蔵データを出力する。カウンタ１１３は前記入力クロックをカウントし、その値を前記インターリーバメモリ１１２に書き込みアドレスとして提供する。上述したように、前記インターリーバは書き込みモードでは入力データをインターリーバメモリ１１２に順次に貯蔵し、読み出しモードでは前記アドレス生成器１１１から発生する読み出しアドレスに応じて前記インターリーバメモリ１１２に貯蔵されているデータを出力する。他の例としては、書き込みモードで入力データの順序を予め変えてインターリーバメモリに貯蔵し、読み出しモードでは貯蔵データを順次に読み出すこともできる。
【００２６】
図２を参照してデインターリーバの構成を説明する。アドレス生成器２１１は入力フレームデータのサイズＬ及び入力クロックに応じて入力データビットの順序を復元するための書き込みアドレスを生成してデインターリーバメモリ２１２に提供する。前記デインターリーバメモリ２１２は書き込みモードでは前記アドレス生成器２１１から提供される書き込みアドレスに応じて入力データを貯蔵し、読み出しモードでは貯蔵データを順次に出力する。カウンタ２１３は入力クロックをカウントし、その値を前記デインターリーバメモリ２１２に読み出しアドレスとして提供する。
【００２７】
上述したように、前記デインターリーバはインターリーバの逆過程であり、全ての構造が同一である。但し、前記デインターリーバは読み出し／書き込みモードで入力データの順序のみが異なる。したがって、説明の便宜上、インターリーバのみを参照して説明する。
【００２８】
優れた構造的特性を有するインターリーバを具現するためには、多数のシミュレーションによる結論を下すことが望ましい。一般に、フレームのサイズが一定値以上であれば、ランダムインターリーバは平均的な性能を示す。したがって、ランダムインターリーバと類似した性能を示すインターリーバを設計することが望ましい。このため、本発明の実施形態ではＰＮシーケンスを生成する線形フィードバックシフトレジスタ(ＬＦＳＲ)を使用し、それから生成されるランダムアドレスを用いる。しかしながら、このような方式には次のような問題点がある。すなわち、ＰＮシーケンスの周期が２m−１であり、大部分のフレームサイズが２の自乗形態で表現されない。
【００２９】
このような問題点を解決するため、入力データのサイズＬが２m(ｍ＞１)の整数倍でない場合、前記入力データのサイズＬにオフセット値(ＯＳＶ)を加算して仮想アドレスサイズＮを決め、下記の数式１のようなアルゴリズムに応じて読み出しアドレスを生成する。
【００３０】
本発明の実施形態によるソフトウェアインターリービング方式を説明すると次の通りである。先ず、入力データのサイズＬが２m(ｍ＞１)の整数倍でない場合、前記入力データのサイズＬにオフセット値(ＯＳＶ)を加算して仮想アドレスサイズＮを決め、下記の数式１のようなオフセット制御ＰＮインターリービングアルゴリズムによりインターリービングを行う。
0003961770.tif 000002
【００３１】
前記数式１のようなアルゴリズムにより生成される読み出しアドレスADDRESS＿READはもとのアドレスと１：１にマッピングされる。このようなインターリーバはＰＮインターリーバ特性及び距離特性を有する。数式１において、OFFSET(I)は前記オフセット値により決められる基準値を用いて前記ADDRESS＿READがどのグループに属するかを把握して該当特定値だけアドレスをシフトさせる関数である。
【００３２】
仮に、前記特定値だけシフトさせず、インターリーバメモリの該当アドレスをアドレスしてデータを読み出す場合、オフセット値による無効データが読み出される。すなわち、[０．．Ｌ−１］の入力データに該当するADDRESS＿READ以外にオフセット[Ｌ．．Ｎ−１］に該当する８個のADDRESS＿READがインターリービングシーケンスの間に存在する。これを図３に示した。それをそのまま読み出す場合、実際に伝送するＬシンボルより８個も多いＮ個のシンボルが伝送される。したがって、前記インターリービングシーケンスの間に存在するアドレスを取り除いた後、後続するアドレスを連接させるべきである。これは図４に示した。
【００３３】
図４を参照すれば、ＬからＮ−１までの無効シンボルがインターリービングシーケンスの間に存在する。したがって、前記無効シンボルを除き、インターリービングシンボルを順次に出力すべきである。このため、オフセット制御方式を使用する。すなわち、［Ｌ．．Ｎ−１］の最後の８シンボルに該当するADDRESS＿READは常時インターリービング規則に応じて規則正しく決められる。したがって、インターリービング無効シンボルの位置を予めわかることができる。先ず、８テールシンボルのアドレスをＤ１，Ｄ２，Ｄ３，．．，Ｄ８(すなわち、Ｌ．．Ｎ−１)、各々のＤｉ(ｉ＝１．．８)に該当するインターリービングアドレスをＴｋ＝ＰＩＲＢ(Ｄｉ)、ｋ＝１．．８と仮定する。勿論、Ｄ１＜Ｄ２は必ずしもＴ１＜Ｔ２でなく、インターリービングアドレスは任意の順序により配置される。したがって、便宜上、Ｔ１＜Ｔ２＜．．＜Ｔ８の順序で配置されるように調整したインデックスをｊとし、これを使用したアドレスをＴｊ(ｊ＝１，．．，８)と定義する。その後、Ｎ個のインターリービング空間は前記アドレスを基にして８個のグループに分けられるが、各々のＴｉはその境界を区分する基準値となる。ここで、前記基準値を除いてアドレスを連接させるべきである。例えば、Ｇ０の場合は ADDRESS＿READ−0、Ｇ１の場合は ADDRESS＿READ−１、．．．、Ｇ７の場合にはADDRESS＿READ−7をすることにより、全ての発生アドレスは[０．．Ｌ−１］範囲の値を有する。
【００３４】
また、前記数式１のようなアルゴリズムを適用するためには、各種のパラメータが予め決められるべきである。以下、説明するパラメータは実験により決められたパラメータである。このようなパラメータはＰＮシーケンスを生成するＰＮ生成器の初期値により異なるが、インターリーバの性能には殆ど関係がない。したがって、前記初期値は所定の値に固定される。下記の表１及び表２において、ｐ(ｘ)は Galois field ＧＦ(２)上で決められたＰＮ生成器の原始多項式であるが、最左側のビットはｐ(ｘ)の０次項の係数を、最右側のビットは最高次項の係数を示す。すなわち、ｐ(ｘ)＝［１１００００１］はｐ(ｘ)＝１＋ｘ＋ｘ6を示す。前記生成多項式ｐ(ｘ)＝１＋ｘ＋ｘ6に該当するＰＮ生成器を図５に示した。
【００３５】
一般に、初期化過程でｍ個のシフトレジスタセルに各々の領域に該当する初期値がローディングされる。その後、クロックの進行時ごとにレジスタ値は連結ラインによりアップデートされる。そのアップデート以後、レジスタに貯蔵された値(０／１)の組み合わせにより６ビットアドレスが発生する。すなわち、最低次項セルの内容がｐ[ｌ]であり、最高次項の内容がｐ[ｍ]の場合、ＰＮg(ADDRESS＿WRITE)は初期時間で書き込みアドレスADDRESS＿WRITEだけクロッキングされたとき、シフトレジスタの２進数値(ｐ[１]ｐ[２]．．．ｐ[ｍ-1]ｐ[ｍ])を１０進数(＝ｐ[１］２m-1＋．．．＋ｐ[ｍ]２0)に変換したアドレスである。また、前記ＰＮ生成器から生成されるアドレスは２m−１の周期を有する。さらに、初期値が０でないため、全ての発生アドレスは｛１≦ｋ≦２m−１｝範囲内の値を有する。したがって、[ＰＮg(ADDRESS＿WRITE)−1］は｛０≦ｋ≦２m−２｝範囲内の値を有する。この場合、必要なアドレスの数２mよりＰＮ生成器で発生されるアドレスの数２m−１が１少ないため、毎領域の最後のアドレスはそのままオーバーライトして読み出しアドレスADDRESS＿READとして使用する。これに該当する内容は数式１において次のように表現される。
0003961770.tif 000003
【００３６】
前記数式１のアルゴリズムをハードウェア的に具現した例を説明すると次の通りである。図６は本発明の実施形態によるインターリーバ１１２に順次に貯蔵されたデータを読み出すためのアドレス生成器の具体的な詳細構成を示している。
【００３７】
図６を参照してアドレス生成器１１１を説明する。ランダムアドレス生成器１２１は複数のＰＮ生成器により発生するランダムアドレスを生成して出力する。比較器１２２は前記ランダムアドレス生成器１２１から出力されるランダムアドレスを前記オフセット値により予め決められる基準値(ＧＴＨ：アドレス領域をグループ化する基準値)と比較してグループ値選択信号とランダムアドレスを出力する。また、前記比較器１２２は前記ランダムアドレス生成器１２１から出力されるランダムアドレスを前記オフセット値により決められるグループ基準値(ＧＴＨ)と比較していずれか一つでも一致する場合、そのときのランダムアドレスを削除する。選択器１２３は前記選択信号に応じて該当グループ値を選択して出力する。減算器１２４は前記比較器１２２から出力されるランダムアドレスから前記選択器１２３の特定グループ値を減算して前記インターリーバメモリ１１２からデータを読み出すための読み出すアドレスを生成する。
【００３８】
前記ランダムアドレス生成器１２１の詳細構成を図７Ａに示した。図７Ａを参照すれば、ＰＮ生成器７１１−７Ｎ１はそれぞれ対応するアドレス生成領域に貯蔵されているデータの順序を変えるためのＰＮシーケンスを生成して第１マルチプレクサ７１２に出力する。ここで、各々のＰＮ生成器７１１−７Ｎ１は相異なる状態値に初期化する。カウンタ７１６は前記第１マルチプレクサ７１２の出力を選択するための選択信号を出力する。仮に、アドレス領域数がＮｇであれば、０．．Ｎｇ−１の選択信号を出力する。ここで、前記選択信号は順次的又はランダムに発生されることができる。前記ランダムに発生する場合、実験により決められた所定のパターンに応じて前記選択信号をランダムに発生する。前記マルチプレクサ７１２は前記カウンタ７１６から提供される選択信号に応じてＰＮ生成器７１１−７Ｎ１の出力を選択する。ここで、前記マルチプレクサ７１２の出力データは減算器７１８で１だけ減算されて第２マルチプレクサ７１３に入力される。それは、前記ＰＮ生成器がアドレス値“０”を生成できないので、全ての生成値から“１”を減算してランダムアドレスを“０”からマッピングするためである。領域カウンタ７１５は前記アドレス生成領域のサイズに該当するカウント値を発生して比較器７１４に出力する。前記比較器７１４は前記領域カウンタ７１５から提供されるカウント値が領域サイズ２m−１に該当するとき、前記第２マルチプレクサ７１３に選択信号“１”を出力する。前記第２マルチプレクサ７１３は前記選択信号に応じて前記領域カウンタ７１５により発生するカウント値が領域サイズ−２の場合、前記第１マルチプレクサ７１２の出力を選択し、前記カウント値が領域サイズ−１の場合は前記比較器７１４から提供される２m−１(領域サイズ−１)の出力を選択する。アドレスバッファ７１７は上位アドレス領域に前記カウンタ７１６の出力データを貯蔵し、下位アドレス領域に前記第２マルチプレクサ７１３の出力データを貯蔵する。上述したように前記読み出しアドレスバッファ７１７に貯蔵されたアドレスは図６の比較器１２２に提供される。前記比較器１２２は前記アドレスがどのグループに属するかを判断して該当グループ選択信号を前記選択器１２３に提供する。前記選択器１２３は前記選択信号に応じてグループ値を選択的に出力し、前記減算器１２４は前記比較器１２２から出力されるアドレスから前記選択グループ値を減算して最終の読み出しアドレスを前記インターリーバメモリ１１２に提供し、前記インターリーバメモリ１１２から前記読み出しアドレスに該当するデータを読み出す。
【００３９】
図６及び図７Ａの構成による読み出しアドレスの生成過程を説明する。前記ＰＮ生成器７１１−７Ｎ１はクロックを用いて貯蔵された状態値をシフトさせてＰＮシーケンスを生成し、前記第１マルチプレクサ７１２は前記カウンタ７１６から提供される選択信号に応じて該当ＰＮ生成器７１１−７Ｎ１の状態値を選択する。前記状態値の選択後、前記ＰＮ生成器７１１−７Ｎ１は再度クロックを用いて貯蔵された状態値をシフトさせてＰＮシーケンスを生成する。前記第１マルチプレクサ７１２から出力される前記ＰＮシーケンスは“１”だけ減少して前記第２マルチプレクサ７１３に入力される。前記ＰＮシーケンスは前記領域カウント値(１／Ｎｇ)×ＣＬＫが前記アドレス生成領域のサイズ２m−１値に至るまえに前記アドレスバッファ７１７の下位領域に伝えられる。前記領域カウント値(１／Ｎｇ)×ＣＬＫが前記アドレス生成領域のサイズ２m−１値に至る場合、前記２m−１値は前記アドレスバッファ７１７の下位領域に伝えられる。一方、前記アドレスバッファ７１７の上位領域には前記カウンタ７１６から出力される領域(現在選択されたＰＮ生成器に対応するアドレス生成領域)を示す値が貯蔵される。前記アドレスバッファ７１７に貯蔵されたアドレスは前記比較器１２２に提供されるが、前記比較器１２２は前記アドレスがどのグループに属するかを判断して該当グループ選択信号を前記選択器１２３に提供する。また、前記アドレスを前記減算器１２４に出力する。前記選択器１２３は前記選択信号に応じて該当グループ値を選択し、前記減算器１２４は前記比較器１２２から出力されるアドレス値から前記該当グループ値を減算して読み出しアドレスを前記インターリーバメモリ１１２に提供する。一方、前記アドレスがどのグループにも属しない場合、すなわち、前記オフセット値による基準値に該当する場合、前記比較器１２２は前記アドレスを無効アドレスとして見なして削除する。また、前記インターリーバメモリ１１２は前記提供される読み出しアドレスに応じて該当アドレスに貯蔵されているデータを出力する。
【００４０】
本実施形態ではオフセット値により発生する無効アドレス(ＧＴＨ)を前記比較器１２２で削除する場合を説明したが、他の実施形態としては、最後のＰＮ生成器７Ｎ１から生成されるオフセット値に該当するＰＮシーケンスを当初に選択しない方法もある。この場合、前記比較器１２２の削除機能は不必要である。
【００４１】
図７Ｂを参照すれば、カウンタ７２０は前記最後のＰＮ生成器の状態値をモニタリングして前記状態値がオフセット値による無効値であると判断されると、前記カウンタ７２０は選択器７２１にイネーブル信号を出力する。その後、前記選択器７２１は一番目のＰＮ生成器を選択するための選択信号(ｓ＝０)を前記マルチプレクサ７１２に提供する。ここで、前記ＰＮ生成器を順次に選択する場合、前記選択器７２１は選択信号“０”を出力するが、前記ＰＮ生成器をランダムに選択する場合、前記選択器７２１は次のＰＮ生成器を選択する選択信号を出力する。すなわち、前記最後のＰＮ生成器から生成されるオフセット値による無効値を当初に選択しないことにより、無効アドレスを生成しないようにする。
【００４２】
以下、本発明の実施形態によるインターリービングのためのアドレス生成過程を図８を参照して説明する。図８の過程は数式１のアルゴリズムに基づく。
【００４３】
図８を参照すれば、アドレス生成器(又はＣＰＵ)１２１は８１１段階でインターリービングのための各パラメータ値を計算する。入力フレームのサイズＬを２進数として表現すると、前記アドレス生成器１２１は最下位のビットから連続する“０”の個数が所定値となるように所定値(オフセット値)を加算して仮想アドレスのサイズＮを決める。また、前記仮想アドレスのサイズＮを２の自乗根(２m×Ｎｇ)で表現するとき、前記乗数“ｍ”と領域数Ｎｇを実験により決める。前記パラメータは設計過程で決められるが、その値はルックアップテーブルに貯蔵される。実際のインターリービングの実行時、前記ルックアップテーブルから該当値を読み出す。
【００４４】
また、前記アドレス生成器１２１は８１３段階で書き込みアドレス(ADDRESS＿WRITE)を“０”に初期化し、８１５段階では領域インデックス“ｇ”を“０”に初期化する。前記初期化後、前記アドレス生成器１２１は８１７段階でＰＮシーケンスを用いるランダムアドレスを下記の数式、すなわち、ADDRESS＿READ＝[(ＰＮｇ(ADDRESS＿READ＿WRITE)−１］＋ｇ*２mにより計算する。ここで、前記ＰＮｇ(ADDRESS＿READ＿WRITE)はＰＮシーケンスを生成する関数を示し、“−１”は前記生成ＰＮシーケンスを“０”からマッピングさせるためである。また、“＋ｇ*２m”は前記生成ＰＮシーケンスを各該当領域にマッピングさせるためである。すなわち、領域インデックスｇが０であれば、前記生成ＰＮシーケンスは領域０にマッピングされ、前記領域インデックスが１であれば、領域１にマッピングされる。
【００４５】
８１９段階では、前記アドレス生成器１２１は上述したように計算されたランダムアドレスを用いて最終の読み出しアドレスを下記の数式、すなわち、(ADDRESS＿READ＝ADDRESS＿READ−OFFSET(ADDRESS＿READ)により計算する。ここで、前記数式は前記読み出しアドレスがどのグループに属するかを判断してそのグループに該当するオフセット値を減算することにより得られる読み出しアドレスを示す。前記グループはオフセット値により発生するグループ基準値(無効アドレス)により区分される。例えば、前記読み出しアドレスがグループ１に該当すると、前記アドレス生成器１２１は最終の読み出しアドレスから“１”を減算し、グループ２に該当すると、“２”を減算する。
【００４６】
その後、前記アドレス生成器１２１は８２１段階で前記領域インデックスｇが領域番号Ｎｇ−１に至るかを検査する。この際、前記領域インデックスがＮｇ−１に至ったと判断されると、前記アドレス生成器１２１は８２３段階に進み、前記Ｎｇ−１に至らないと判断されると、前記アドレス生成器１２１は８２５段階に進んで前記領域インデックスを“１”だけ増加させ、前記８１７段階に戻る。
【００４７】
一方、前記領域インデックスが前記Ｎｇ−１に至ったことを感知した前記アドレス生成器１２１は前記８２３段階で前記書き込みアドレス(ADDRESS＿WRITE)が２m−２値(一つのＰＮ生成器が生成できるアドレスの数)に至ったかを検査する。ここで、前記書き込みアドレスは前記領域カウントに対応する。この際、前記書き込みアドレスが前記２m−２に至ったと判断されると、前記アドレス生成器１２１は８２９段階に進み、前記書き込みアドレスが前記２m−２に至らないと判断されると、前記アドレス生成器１２１は８２７段階に進んで前記書き込みアドレスを“１”だけ増加させ、８１５段階に戻る。
【００４８】
一方、前記書き込みアドレスが前記２m−２に至ったことを感知した前記アドレス生成器１２１は前記８２９段階で前記書き込みアドレスを下記の数式、すなわち、ADDRESS＿WRITE＝２m−１，ADDRESS＿READ＝ADDRESS＿WRITE＋ｇ*２m−OFFSET(ADDRESS＿WRITE)”を用いて各領域の読み出しアドレスにマッピングさせ、本過程を終了する。すなわち、最後の書き込みアドレスを読み出しアドレスとして用いる。
【００４９】
下記の表１及び表２は本発明によるインターリービング方式をＩＭＴ−２０００システムに適用する場合、各レートセットに該当するＯＣＰＮＩ設計パラメータを示す。
【表１】
0003961770.tif 000004
【表２】
0003961770.tif 000005
【００５０】
ここで、前記表１でインターリーバのサイズＮが３７６の場合、ＯＣＰＮＩの読み出しアドレスの例は表３の通りである。
【表３】
0003961770.tif 000006
【００５１】
上述したように、本発明では入力データをインターリービングするとき、ランダム特性、距離特性及び加重値特性を満たしながら、ランダムインターリービング実行時に必要なメモリの容量を最少化する方法を提案する。また、本発明によるオフセット制御インターリービング方式は従来のＰＮインターリービング方式がインターリーバのサイズを２の自乗形態で表現できず、インターリーバのサイズが大きい場合、メモリの活用面で非効率的であるという問題点を解決した。さらに、ＩＭＴ−２０００のためのインターリーバの設計時に各論理チャネルのインターリーバのサイズが２の自乗形態で表現されず、インターリーバのサイズも非常に大きいということを考慮するとき、これを解決しうる方式を提案する。既存のインターリービング方式では、各々のインターリーバのサイズによるインターリービングルールを送受信器の制御部(ＣＰＵ又はＨＯＳＴ)に貯蔵すべきなので、ホストメモリがインターリーババッファの外、別途の貯蔵空間を必要とする。しかしながら、本発明は計数可能な形態のインターリーバを具現することにより、ハードウェアの複雑度を低減することができる。また、送受信のためのインターリーバ／デインターリーバ伝送方式が非常に簡単であり、最小限のメモリを使用する。すなわち、前記インターリーバはフレームのサイズＬに該当するインターリーバメモリ容量のみを要する。また、前記インターリーバはターボインターリーバの全ての特性を満たすことにより、平均性能又はそれ以上の性能を保障する。
【００５２】
以上、本発明の実施形態を添付図面を参照して説明したが、本発明はこの特定の実施形態に限るものでなく、各種の変形及び修正が本発明の範囲を逸脱しない限り、該当分野における通常の知識を持つ者により可能なのは明らかである。
【図面の簡単な説明】
【図１】  本発明の実施形態による通信システムのインターリービング装置を示したブロック構成図である。
【図２】  本発明の実施形態による通信システムのデインターリービング装置を示したブロック構成図である。
【図３】  本発明による入力データにオフセット値を加算した仮想アドレス領域を用いてインターリービングする場合、前記オフセット値に応じてインターリービングされた無効シンボルがインターリービングシンボルの間に存在することを示した図である。
【図４】  図３の無効シンボルを取り除いた後、出力シンボルの連接状態を示した図である。
【図５】  (１＋ｘ＋ｘ6)の生成多項式を有するＰＮ生成器を示した図である。
【図６】  本発明の実施形態によるインターリービング読み出しアドレスを生成する装置を示した図である。
【図７】  ７Ａは、図６に示したランダムアドレス生成器の詳細構成図であり、７Ｂは、７Ａに示したランダムアドレス生成器でカウンタ７１６の他の例を示した図である。
【図８】  本発明の実施形態によるインターリービング読み出しアドレス生成過程を示した流れ図である。
【図９】  従来の技術によるターボ符号器を示したブロック構成図である。
【符号の説明】
１１１  アドレス生成器
１１２  インターリーバメモリ
１１３  カウンタ
１２１  ランダムアドレス生成器
１２２  比較器
１２３  選択器
１２４  減算器
２１１  アドレス生成器
２１２  デインターリーバメモリ
２１３  カウンタ
７１１−７Ｎ１  ＰＮ生成器
７１２  第１マルチプレクサ
７１３  第２マルチプレクサ
７１４  比較器
７１５  領域カウンタ
７１６  カウンタ
７１７  アドレスバッファ
７１８  減算器
７２０  カウンタ
７２１  選択器
【図１】
0003961770.tif 000007
【図２】
0003961770.tif 000008
【図３】
0003961770.tif 000009
【図４】
0003961770.tif 000010
【図５】
0003961770.tif 000011
【図６】
0003961770.tif 000012
【図７Ａ】
0003961770.tif 000013
【図７Ｂ】
0003961770.tif 000014
【図８】
0003961770.tif 000015
【図９】
0003961770.tif 000016