(57)【特許請求の範囲】
【請求項１】
ＲＥＳＯＶＡ(Registration Exchange SOVA)方式を利用した復号装置であって、
エンコーダメモリの個数と同一のｋ個の入力値に対応する２k個のブランチメトリックを同時に計算するブランチメトリック計算回路と、
前記ブランチメトリック及び以前経路メトリックを受信し、それぞれ該当経路選択ビット及び信頼情報を含む２k個のＬＬＲ(Log Likelihood Ratio)を生成する加算比較選択回路と、
前記加算比較選択回路から連続される経路選択ビットを順次に受信し、所定の初期値をもってＤｓクロック期間の間に前記経路選択ビットによってＭＬ(Maximum Likelihood)状態を探し、前記ＭＬ状態として前記初期値のいずれか１つを出力するＭＬ状態探索器と、
前記Ｄｓクロック期間に前記加算比較選択回路から前記ＬＬＲを受信し、前記Ｄｓクロック期間の間に前記ＬＬＲを遅延する遅延器と、
前記遅延器から前記ＬＬＲを受信し、ＤLクロック期間の間に該当経路選択ビット及び信頼情報を順次に受信して前記ＬＬＲを更新するＬＬＲ更新部と、
前記ＭＬ状態の値によって前記更新されたＬＬＲのいずれか１つを選択する選択器と、
から構成されることを特徴とする復号装置。
【請求項２】
現在の経路メトリックは、前記ブランチメトリックと以前経路メトリックを加算することによって得られる請求項１記載の復号装置。
【請求項３】
前記加算比較選択回路において、
エンコーダの生成多項式によって決定された格子構造による第１ブランチメトリックと第１経路メトリックとを受信し加算して、第１加算値を出力する第１加算器と、
格子構造による第２ブランチメトリックと第２経路メトリックとを受信し加算して、第２加算値を出力する第２加算器と、
前記第１加算値及び第２加算値を受信して比較し、前記比較によって経路選択ビットを生成する比較器と、
前記第１加算値、前記第２加算値、及び前記経路選択ビットを受信して前記信頼情報を計算する信頼情報計算部と、
前記第１加算値、前記第２加算値、及び前記経路選択ビットを受信し、次の経路メトリックとして前記加算値のいずれか１つを選択する選択器と、から構成される請求項１記載の復号装置。
【請求項４】
前記信頼情報(δ)は、前記第２加算値から前記第１加算値を引くことによって得られる請求項３記載の復号装置。
【請求項５】
前記信頼情報(δ)は、下記の数式によって計算され、下記の数式において、αは整数であり、ＰＭＵは上位経路メトリックであり、ＰＭＬは下位経路メトリックである請求項３記載の復号装置。
【数１】
0003640924.tif 000012
【請求項６】
前記ＰＭＵは前記第１加算値であり、前記ＰＭＬは前記第２加算値である請求項５記載の復号装置。
【請求項７】
移動通信システムの受信器におけるＲＥＳＯＶＡ(Registration Exchange SOVA)方式を利用した復号方法において、
可能の全てのコードワード及び複数の入力シンボルを２進計算することによって複数のブランチメトリックを計算する過程と、
前記ブランチメトリック及び以前の経路メトリックを受信し、該当経路選択ビット及び信頼情報を含むＬＬＲを生成する過程と、
前記ブランチメトリック及び以前経路メトリックを利用して加算比較選択動作を遂行することによって、次の状態経路メトリック、信頼情報、及び経路選択ビットを時点Ｋに生成する過程と、
Ｄｓクロック期間の間に加算比較選択動作を遂行することによって生成される経路選択ビットを基にして、前記時点ＫからＤｓクロック期間の後にＭＬ状態を出力する過程と、
信頼情報及び該当経路選択ビットを含む各ＬＬＲを、前記Ｋ時点からＤｓクロック期間遅延する過程と、
前記複数の信頼情報及び該当経路選択ビットを使用して、Ｄｓクロック期間遅延されたＬＬＲをＤLクロック期間の間に更新する過程と、
前記更新されたＬＬＲのうち、前記ＭＬ状態によって更新されたＬＬＲを選択する過程と、
からなることを特徴する復号方法。
【請求項８】
前記生成過程において、
エンコーダの生成多項式によって決定される格子構造によって受信された以前経路メトリックとブランチメトリックとを加算して、現在の経路メトリックを計算する過程と、
前記経路メトリックを利用して経路選択ビットを生成する過程と、
前記経路メトリックを利用して信頼情報を計算する過程と、
前記信頼情報に前記経路選択ビットを加算することによってＬＬＲ値を生成する過程と、からなる請求項７記載の復号方法。
【請求項９】
移動通信システムの受信器におけるＲＥＳＯＶＡ(Registration Exchange SOVA)方式を利用した復号方法において、
可能の全てのコードワード及び複数の入力シンボルを使用することによって複数のブランチメトリックを計算する過程と、
前記ブランチメトリック及び以前経路メトリックを利用して加算比較選択動作を遂行することによって、次の経路メトリックと、それぞれ信頼情報及び経路選択ビットを含むＬＬＲと、をＫ時点に生成する過程と、
前記Ｋ時点からＤｓクロック期間の間に経路選択ビットを受信し、ＭＬ状態値を出力する過程と、
前記Ｋ時点から前記Ｄｓクロック期間の間に生成された複数の信頼情報及び経路選択ビットを利用して前記Ｄｓクロック期間の間にＬＬＲを更新する過程と、
前記ＭＬ状態値によって選択された更新ＬＬＲを出力する過程と、
からなることを特徴とする復号方法。
【請求項１０】
ＲＥＳＯＶＡ(Registration Exchange SOVA)方式を利用したターボコード復号装置において、
可能の全てのコードワード及び複数の入力シンボルを使用することによってブランチメトリックを計算するブランチメトリック計算回路と、
前記ブランチメトリックと直前の加算比較選択動作によって生成された以前経路メトリックとを受信し、複数の経路選択ビット及び複数の信頼情報を生成する加算比較選択回路と、
前記加算比較選択回路から受信される連続される経路選択ビットを使用して、ＭＬ経路を示すＭＬ状態値を探すＭＬ状態探索器と、
連続される経路選択ビット及び複数の信頼情報を使用して信頼情報を更新するＬＬＲ更新部と、
前記ＭＬ状態値によって更新された信頼情報を選択する選択器と、
から構成されることを特徴とする復号装置。
【請求項１１】
ＲＥＳＯＶＡ(Registration Exchange SOVA)方式を利用したターボコード復号方法において、
可能の全てのコードワード及び複数の入力シンボルを使用してブランチメトリックを計算する過程と、
前記ブランチメトリックと直前の加算比較選択動作によって生成された以前経路メトリックとを受信する過程と、
複数の経路選択ビット及び複数の信頼情報を生成する過程と、
連続される経路選択ビットを使用して、ＭＬ経路を示すＭＬ状態値を探す過程と、
連続される経路選択ビット及び複数の信頼情報を使用することによって前記信頼情報を更新する過程と、
前記ＭＬ状態値によって更新された信頼情報を選択する過程と、
からなることを特徴とする復号方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、移動通信システムにおける復号装置及び方法に関し、特に、繰り返し循環コンボルーションコード(Recursive Systematic Convolutional Codes: 以下、ＲＳＣと称する)を利用するターボコード(turbo code)によって変調されたデータを復号するための構成復号装置及び方法に関する。
【０００２】
【従来の技術】
Ｗ−ＣＤＭＡ(Wideband-CDMA)やＣＤＭＡ−２０００のような無線通信システムにおける信頼できるデータ通信のために、チャネルコードが幅広く使用されている。前記チャネルコードには、コンボルーションコード、ターボコードなどがある。
【０００３】
一般的に、前記コンボルーションコード化した信号は、ＭＬ(Maximum Likelihood: 以下、ＭＬと称する)を基にしたビタビアルゴリズム(Viterbi Algorithm)を使用して復号される。前記ビタビアルゴリズムは、入力においてソフト入力(Soft-Input)を受け入れ、硬判定(Hard Decision)値を出力する。しかしながら、大部分の場合、鎖状復号(Concatenated Decoding)を遂行して性能を改善させるためには、ソフト出力復号器が要求される。これに関して、ソフト出力または復号化したシンボルの信頼性を達成するために、多様な方法が提案された。前記方法には、周知のソフト入力／ソフト出力(ＳＩＳＯ)復号方法、つまり、ＭＡＰ(Maximum A-posteriori Probability: 以下、ＭＡＰと称する)復号アルゴリズムとＳＯＶＡ(Soft-Output Viterbi Algorithm: 以下、ＳＯＶＡと称する)がある。前記ＭＡＰアルゴリズムは、硬判定を事後確率(A-posteriori Probability)とともに出力するので、ビット誤り率(bit error rate: ＢＥＲ)の観点からは最適の方式と言えるが、具現上の複雑性が問題である。１９８９年、Ｊ.Ｈａｇｅｎａｕｅｒは、ビタビアルゴリズムを一般化するＳＯＶＡ方式を提案した。 前記ＳＯＶＡ方式は、硬判定だけでなく、前記硬判定に関連するソフト出力である信頼情報を出力する方式である。しかしながら、Ｈａｇｅｎａｕｅｒは、ＳＯＶＡ方式の実際の構造及び動作に関しては提供しなかった。
【０００４】
ＳＯＶＡ方式は、従来のビタビアルゴリズムとは違って、硬判定及びそれに関する信頼情報も生成する。つまり、前記ソフト出力は、次の復号のために、復号されたシンボルの極性(−１又は＋１)だけでなく、前記復号されたシンボルの信頼性も提供する。ＳＯＶＡ方式は、前記信頼情報を得るために、生存経路(Survivor Path: ＳＰ)及び競争経路(Competition Path: ＣＰ)に対する経路メトリック(Path Metric: 以下、ＰＭと称する)を計算し、前記ＳＰのＰＭと前記ＣＰのＰＭとの差の絶対値を信頼情報として出力する。前記信頼情報δは、＜数２＞のように計算される。
【数２】
0003640924.tif 000002
ここで、ＰＭは、一般的なビタビアルゴリズムにおけるＰＭ計算方式と同一の方式で計算される。
【０００５】
以下、ＳＯＶＡについて具体的に説明するために、格子に関して、状態はＳ＝２k-1(ｋ=拘束長(constraint length))であり、各状態には２つのブランチ(Branch)が到達されると仮定する。
【０００６】
一般的なビタビアルゴリズムにおいて、十分な遅延Ｗが与えられると、全ての生存経路は１つの経路に併合される。前記Ｗは、状態セルウィンドウのサイズとしても使用される。つまり、状態セルウィンドウのサイズＷを十分に大きくすると、全ての生存経路は１つに併合される。これをＭＬ経路と称する。前記ビタビアルゴリズムは、所定の時点ｋで前記ＭＬ経路上の状態ＳKを選択するために、＜数３＞によって計算されたｍ個のＰＭの最小のものを選択する。
【数３】
0003640924.tif 000003
ここで、ｘjn(m)は、時点ｊでｍ番目の経路上のブランチにおけるＮビットのコードシンボルのｎ番目のビットであり、ｙjn(m) は、前記コードシンボルｘjn(m)の位置における受信コードシンボルであり、ＥS／ＮOは、信号対雑音比である。Ｐmを利用してｍ番目の経路を選択する確率、つまり、＜数３＞によって、経路１または経路２を選択する確率は＜数４＞のようである。
【数４】
0003640924.tif 000004
【０００７】
＜数４＞によって、小さいＰＭを有する経路が１であると仮定すると、ビタビアルゴリズムは経路１を選択する。ここで、間違った経路を選択する確率は、＜数５＞のようである。
【数５】
0003640924.tif 000005
ここで、Δ＝Ｐ2−Ｐ1＞０である。時点ｊで、経路１及び経路２上の情報ビットをＵj(1)及びＵj(2)とすると、前記ビタビアルゴリズムは、Ｕj(1)≠Ｕj(2)の全ての位置(ｅ0, ｅ1, ｅ2, …, ｅ0n-1)で、ｈ個のエラーを発生する。前記２つの経路が長さδm（δm≦Ｗｍ）の地点で合流する場合、ｈ個の相違する情報ビット及び(δm−ｈ)個の同一の情報ビットが存在する。経路１に関連した以前の間違った判断の確率Ｐjが貯蔵される場合、経路１が選択されたとの仮定から、前記確率は＜数６＞によって更新できる。
【数６】
0003640924.tif 000006
【０００８】
＜数６＞において、Ｐj(１−Ｐsk)は、正しい経路を選択する確率であり、(１−Ｐj)Ｐskは、間違った経路を選択する確率である。＜数６＞は、正しい経路を選択する確率を間違った経路を選択する確率に加算することによって、確率を更新することを意味する。
【０００９】
前記のような繰り返し更新動作は、＜数７＞によって表現されるＬＬＲ(Log Likelihood Ratio: 以下、ＬＬＲと称する)によって具現される。
【数７】
0003640924.tif 000007
ここで、ΔはＰ2−Ｐ1であり、αは定数である。
【００１０】
要するに、ＳＯＶＡの更新動作は、生存経路(経路１)及び競争経路(経路２)上で推定された情報ビットが相違する場合、つまり、Ｕj(1)≠Ｕj(2) である場合、前記ｊ時点におけるＬＬＲが以前ＬＬＲより小さい時のみに適用される。
【００１１】
図１は、状態が４である場合、格子上におけるＬＬＲ更新の例を示す。具体的に、タイムｔ１からタイムｔ２に進行する時、生存経路(経路１)及び競争経路(経路２)の情報ビットは同一である。前記ＬＬＲの更新は、この状態遷移に適用されない。一方、タイムｔ２からタイムｔ３に、また、タイムｔ３からタイムｔ４に進行する時は、経路１及び経路２に対する情報ビットが相違し、前記ＬＬＲは更新される。タイムｔ３及びタイムｔ４に対しては、前記ＬＬＲを以前ＬＬＲと比較して、前記ＬＬＲが前記以前ＬＬＲより小さい場合に更新される。
【００１２】
前記ようなＳＯＶＡ方式は、逆追跡ＳＯＶＡ(Trace Back or Chain Back ＳＯＶＡ: 以下、ＴＢＳＯＶＡと称する)によって具現される。前記ＴＢＳＯＶＡにおけるそれぞれの復号において、ＭＬ経路は、ウィンドウのサイズＷの分だけ逆追跡(Trace Back)される。前記復号遅延の結果、高速動作の応用、例えば、移動端末機の場合、具現上の問題点が発生する。
【００１３】
【発明が解決しようとする課題】
本発明の目的は、移動通信システムにおいて、登録変換ＳＯＶＡ(Registration Exchange ＳＯＶＡ: 以下、ＲＥＳＯＶＡと称する)方式を利用して、ターボ符号化したデータを復号する装置及び方法を提供することにある。
【００１４】
本発明の他の目的は、移動通信システムにおいて、ターボ符号化したデータ及びコンボルーション符号化したデータを復号するＲＥＳＯＶＡ復号装置及び方法を提供することにある。
【００１５】
本発明のまた他の目的は、ターボ符号化したデータまたはコンボルーション符号化したデータを受信する移動通信システムの受信器において、復号遅延及び必要とするメモリのサイズを低減するＲＥＳＯＶＡ復号装置及び方法を提供することにある。
【００１６】
本発明のまた他の目的は、移動通信システムの構成復号器において、ＭＬ状態探索ウィンドウ(ＭＬ状態セルウィンドウ)は、任意の時点ｋに対して、時点ｋ−ＤｓでＭＬ状態値を出力し、ＬＬＲ更新ウィンドウは、およそ時点ｋ−Ｄｓ−ＤLで、前記ＭＬ状態値によって選択されたＬＬＲを出力するＲＥＳＯＶＡ復号装置及び方法を提供することにある。
【００１７】
本発明のまた他の目的は、ＭＬ状態探索ウィンドウ及びＬＬＲ更新ウィンドウを備える移動通信システムの復号器において、フレームの境界におけるＭＬ状態探索の正確性を高めるために仮想のコードを受信し、前記ＭＬ状態探索ウィンドウのサイズの分だけフレーム境界におけるＭＬ状態探索動作をさらに遂行する復号装置及び方法を提供することにある。
【００１８】
【課題を解決するための手段】
前記目的を達成するために、本発明は、送信器から受信されたデータを復号するＲＥＳＯＶＡ(Registration Exchange SOVA)方式を利用した復号装置及び方法を提供する。前記データは、移動通信システムにおいて、ＲＳＣによって符号化される。前記復号装置において、ブランチメトリック計算回路(Branch Metric Calculating circuit: 以下、ＢＭＣと称する)は、複数の入力値に関連するブランチメトリック値を計算する。加算比較選択回路(Add-Compare-Select circuit: 以下、ＡＣＳと称する)は、前記ブランチメトリック値及び以前経路メトリック値を受信し、第１時点で、複数の経路選択ビットと、前記複数の経路選択ビット及び信頼情報を含むＬＬＲデータと、を生成する。ＭＬ状態探索器は、行及び列から構成されるアレイの複数のセルを有し、符号器の格子によって他のＭＬ状態探索器と接続され、各行のセルは処理時間Ｄｓを有し、前記経路選択器に応答して、ＭＬ経路を示すＭＬ状態値と同一である最後の列のセルの値を出力する。遅延器は、前記ＡＣＳから受信された前記ＬＬＲデータを時間Ｄｓだけ遅延する。ＬＬＲ更新部は、行及び列から構成されるアレイの複数のプロセシングエレメント(Processing Element: 以下、ＰＥと称する)を有し、符号器の格子によって相互接続され、各行のＰＥは処理時間ＤLを有し、前記遅延器から受信された前記遅延されたＬＬＲデータに応答して、ある時点(第１時点−およそＤｓ＋ＤL)で、前記ＰＥから更新されたＬＬＲ値を生成する。選択器は、前記ＭＬ状態値によって前記更新されたＬＬＲのいずれか１つを選択する。
【００１９】
【発明の実施の形態】
本発明の望ましい実施形態を添付図面を参照して詳細に説明する。下記説明において、本発明の要旨を明確にするために関連した公知機能または構成に対する具体的な説明は省略する。
【００２０】
本発明では、今まで提案された復号方式のうち、最高の性能を具現するＲＥＳＯＶＡ方式によって動作する復号器の具体的な構造及び動作を説明する。
【００２１】
図２は、本発明の実施形態によるＲＥＳＯＶＡ復号器のブロック図である。図２を参照すると、ＲＥＳＯＶＡ復号器１００は、制御部１１７の制御下で動作し、クロック発生器１１８から受信されたクロック信号によって駆動される。本発明によって、前記クロック発生器１１８は、前記制御部１１７の制御下で前記クロック信号を発生して前記ＲＥＳＯＶＡ復号器１００に提供する。前記ＲＥＳＯＶＡ復号器１００の説明において、前記制御部１１７の制御動作及び前記クロック発生器１１８から生成されるクロック信号を連関させて説明しない。
【００２２】
本発明において、１／３ターボエンコーダは３つのメモリ(つまり、ｋ＝４)を有すると仮定する。復調されたコードワードｒ０(ｋ)、ｒ１(ｋ)、及びｒ２(ｋ)を受信すると、ブランチメトリック計算部(ＢＭＣ)１０１は、現在時点での状態と以前時点での状態との間の全ての可能の経路に対するブランチメトリック(Branch Metric: 以下、ＢＭと称する)を計算する。実際具現において、前記現在の状態が知られると、前記以前状態は格子上で検出される。従って、コンボルーションコードまたはターボコードの場合、以前状態から遷移される各状態に対して２つのＢＭが生成される。状態が８である場合、ある時点で、２つのブランチが各状態に入力され、全ての可能の状態に対して１６個のＢＭ(値)が計算される。前記ＢＭ(値)は、一種の相関大きさ(Correlation Measurements)である。つまり、前記ＢＭＣに貯蔵されている全ての可能のコードワードｃ０、ｃ１、及びｃ２と受信されたコードワードｒ０、ｒ１、及びｒ２との相関である。前記ＢＭＣに予め貯蔵されているコードワードは、エンコーダの生成多項式ｇ(ｘ)から生成される格子上の全ての可能のコードワードである。例えば、符号率Ｒ＝１／３の場合、ｃ０, ｃ１, ｃ２∈{０, １}の８つの組合せに対して、各状態に対する１つのＢＭは、＜数８＞によって表現できる。各状態に対して２つのＢＭが生成されるが、ｃ０、ｃ１、及びｃ２の組合せによって８個のコードワードが発生できる。従って、実際的に８個のＢＭＣ１０１が必要である。８個のＢＭは、同時にＡＣＳ１０３に提供される。
【数８】
0003640924.tif 000008
前記＜数８＞の上行は、コードシンボルｃ０、ｃ１、及びｃ２と受信されたコードシンボルｒ０、ｒ１、及びｒ２とによるＢＭ計算を示し、下行は、前記上行の式を一般化した式である。前記コードシンボルｃ０、ｃ１、及びｃ２は、受信器に知られており、それぞれ０または１の値を有する。前記受信されたコードシンボルｒ０、ｒ１、及びｒ２は、受信器が送信器から受信したものである。
【００２３】
前記ｒ０、ｒ１、及びｒ２はソフト値を有する。本発明によって、ターボコードを使用する場合、前記ｒ０は８ビットであり、ｒ１及びｒ２はそれぞれ６ビットである。復号の時に発生される追加情報(Extrinsic Information)がシステマティックコードシンボルに加わるので、前記ｒ０は８ビットである。初期復号の時、前記追加情報は０ビットであるので、ｒ０として６ビットのシステマティックコードが受信される。
【００２４】
図６は、＜数８＞によって具現される１つの状態に対するＢＭＣ１０１を示す。乗算器１２１は、前記受信されたコードシンボルｒ０、ｒ１、及びｒ２と前記ＢＭＣに貯蔵されたコードシンボルｃ０、ｃ１、及びｃ２とを乗算して、Ｍ０、Ｍ１、及びＭ２を加算器１２３に出力する。従って、前記加算器１２３の出力も、初期復号の時にｒ０が６ビットである場合を除けば、８ビットである。
【００２５】
図６のＢＭＣ１０１の構造をハードウェア的に実際具現する時は、乗算を省略し、前記コードワード(ｃ０、ｃ１、ｃ２)によって入力シンボルビットを反転させることによって、Ｍ０、Ｍ１、及びＭ２が得られる。＜表１＞は、６ビットの２進システムにおけるＢＭＣの動作を示す。＜表１＞を参照すると、前記コードワードが０である場合、前記ＢＭＣの動作中の前記入力シンボルの変化はない。前記コードワードが１である場合、各入力シンボルビットが反転された後、０００００１を加える。
【表１】
0003640924.tif 000009
【００２６】
図７及び図８を参照して、前記ＡＣＳ１０３を具体的に説明する。
【００２７】
図７は、本発明の実施形態によって、８個の状態を有する格子の場合における前記ＡＣＳ１０３のブロック図である。図７において、前記ＡＣＳ１０３は、８個の構成ＡＣＳ１２５を有する。これは、８個の状態に対して、加算・比較・選択計算が同時に行われることを意味する。前記ＡＣＳ１０３は、それぞれｂビットの８個のＢＭ(ＢＭ０乃至ＢＭ７)を前記ＢＭＣ１０１から受信し、以前時点でＡＣＳ計算されたＰＭ(ＰＭ０乃至ＰＭ７)を経路メトリックメモリ(Path Metric Memory: 以下、ＰＭＭと称する)１０５から受信する。前記格子上の状態関係によって、前記構成ＡＣＳ(＃０乃至＃７)は、各状態に対する前記ＢＭ(ＢＭ０乃至ＢＭ７)のうち２つを受信する。前記該当状態に到達する上位ブランチメトリックをＢＭUと言い、下位ブランチトリックをＢＭLと言う。また、前記構成ＡＣＳ(＃０乃至＃７)は、それぞれ前記格子上の連結状態によって、ＢＭU及びＢＭLに対応されるＰＭU及びＰＭLを受信する。前記のように、構成ＡＣＳ１２５とＢＭU及びＢＭLとの連結、構成ＡＣＳ１２５とＰＭU及びＰＭLとの連結は、前記格子上の状態関係によって決定される。
【００２８】
現在の時点での前記可能の全ての状態に対するＰＭを計算するために、各状態に対する２つの仮説(生存経路と競争経路)のうち１つを選択する。以前時点で、２つの状態の所定のＢＭU及びＢＭLとＰＭU及びＰＭLとを利用して算出されたＮＰＭ(Next Path Metric)は、＜数９＞によって特定の状態に遷移することができる。
【数９】
0003640924.tif 000010
【００２９】
図８は、前記構成ＡＣＳ１２５の詳細ブロック図である。図８を参照すると、構成ＡＣＳ１２５は、２つの加算器１２６、１２７、比較器１２９、選択器１２１、及び信頼情報計算部１２２から構成される。第１加算器１２６は、ＢＭUとＰＭUを加算し、第２加算器１２７は、ＢＭLとＰＭLを加算する。前記比較器１２９は、前記第１加算器１２６の出力と第２加算器１２７の出力とを比較し、アップ経路またはダウン経路を示す経路選択ビットを前記信頼情報計算部１２２及び選択器１２１に出力する。前記信頼情報計算部１２２は、前記第１加算器１２６及び第２加算器１２７の出力から信頼情報δを計算し、前記比較器１２９から受信された前記経路選択ビットに前記信頼情報δを加えることによってＬＬＲを出力する。前記信頼情報δは、＜数１０＞によって計算される。
【数１０】
0003640924.tif 000011
ここで、αは整数で、１／２である。本発明によって、前記信頼情報δは、競争経路及び生存経路によって計算されることでなく、上位及び下位ＰＭ(ＰＭU及びＰＭL)によって計算される。
【００３０】
前記のように、前記信頼情報計算部１２２は、経路選択ビット及びδを含む信頼データ(ＬＬＲ)を出力する。前記信頼データ(ＬＬＲ)は、最上位ビット(Most Significant Bit: ＭＳＢ)の１経路選択ビットと、最下位ビット(Least Significant Bit: ＬＳＢ)からのｎ−１ビットのδと、から構成される。前記ＬＬＲのＭＳＢにおけるサインビット(sign bit)または推定された情報ビットを示す経路選択ビットは、エンコーダがＲＳＣを使用する時のみに使用できる。なぜならば、一般的なコンボルーションコードの場合、１つの状態に到達する２つの経路上の入力情報は同一の値を有するためである。例えば、前記経路のいずれか１つ上の入力情報が０である場合、残りの１つの経路上の入力情報も０である。それに比べて、繰り返し循環コンボルーションコードの場合は、特定の状態に入る２つの経路のいずれか１つは情報ビット０によって状態遷移が行われ、残りの１つの経路は情報ビット１によって状態遷移が行われる。ここで、アップ／ダウン(ロー)経路選択が定義されるべきである。例えば、前記経路選択ビット１は上位分岐(upper bifurcation)、０は下位分岐(lower bifurcation)として、または、前記経路選択ビット１は下位分岐、０は上位分岐として定義されることができる。前記選択器１２１は、前記第１加算器１２６及び第２加算器１２７からＰＭを、前記比較器１２９から経路選択ビットを受信し、前記ＰＭのいずれか１つを状態値として選択する。つまり、前記ＡＣＳ１０３は、８個のＬＬＲ及び次の時点に対する８個の状態値を出力する。
【００３１】
前記ＰＭＭ１０５は、前記ＡＣＳ１０３から受信されたＰＭ値を貯蔵する。図９は、８状態のＰＭＭの構造を示し、各状態は８ビットで表現される。前記ＰＭＭ１０５は、現在時点で計算される８状態に対する８ビットのＰＭ値を貯蔵し、次の時点で、前記貯蔵されたＰＭを以前ＰＭとして前記ＡＣＳ１０３に提供する。具体的に、各構成ＰＭＭ(ＰＭＭ０乃至ＰＭＭ７)は、８ビットレジスタである。前記構成ＰＭＭ０は、前記ＡＣＳ１０３から受信されたＰＭ値であるＰＭ０の８ビットを貯蔵する。同様に、前記構成ＰＭＭ(ＰＭ０乃至ＰＭ７)は、それぞれ前記ＡＣＳから受信されたＰＭ値(ＰＭ１乃至ＰＭ７)の８ビットを貯蔵する。
【００３２】
ＭＬ状態探索器１０７は、前記所定状態を分類する状態値を有し、前記ＡＣＳ１０３から一連の経路選択ビットを並列に受信し、登録変換(Registration Exchange)方式によって前記状態値のうちＭＬ状態値を探す。
【００３３】
図１０Ａは、本発明の実施形態によるＭＬ状態探索器１０７のブロック図である。前記登録変換方式によるＭＬ状態探索器の構成及び動作は、大韓民国特許出願番号第１９９８−６２７１３号に開示されている。前記ＭＬ状態探索器１０７は、行及び列から構成されるアレイの複数のセルと複数の経路選択ラインとを含む。各選択ラインは、対応される行のセルに接続され、経路選択ビットを受信する。前記アレイの複数のセルは、第１列のセルを除いて、エンコーダの生成多項式による格子構造によって、以前セルから２個の状態値を受信するように相互連結される。図１０ａのように、前記第１列のセルは、上位入力値及び下位入力値の２つの入力値を受信する。各列のセルは、前記受信された該当経路選択ビットを基にした前記２つの入力値のいずれか１つを貯蔵し、次の時点で格子構造の状態関係によって、前記次の列の該当行の２つのセルに前記貯蔵された状態値を提供する。所定時間に対して前記のような過程を連続して遂行することによって、ある時点で特定列のセルの状態値が同一の値に収斂する。前記ＭＬ状態探索器１０７の最終の列は、ＭＬ状態値として前記収斂された値を出力する。前記ＭＬ状態探索器１０７は、前記ＭＬ状態値を探すために、Ｄｓクロック時間(例えば、４×ｋ、ここで、ｋ＝エンコーダメモリの個数＋１)を有する。
【００３４】
例えば、８状態において、前記ＭＬ状態探索器１０７の第１列の第１行のセルには０及び１が入力され、第１列の第２行のセルには２及び３が入力され、第１列の第３行のセルには４及び５が入力され、第１列の第４行のセルには６及び７が入力される。第１列の第５行乃至第８行のセルの入力は、前記第１列の第１行乃至第４行への入力と同じである。前記第１列の各セルは、クロック信号によって該当選択ラインから受信された経路選択ビットを基にした前記状態値のいずれか１つを選択し、前記格子構造の状態連結による次の列のセルに前記選択された状態値を提供する。所定の時間(Ｄｓ)の間に前記過程を繰り返して遂行すると、前記最終列のセルの状態値は、前記状態値０乃至７のいずれか１つの値に収斂される。例えば、収斂された値が５である場合、前記最終列の全てのセルは、同一の状態値５を有する。ここで、５はＭＬ状態値として決定される。前記ＭＬ状態探索器１０７は、前記第１列の初期状態値を受信するための遅延時間Ｄｓを有し、前記初期状態値を１つの状態値に収斂し、最右側の列から前記収斂された値を出力する。
【００３５】
図１０Ｂは、前記ＭＬ状態探索器１０７のセルの構成を示す。前記ＭＬ状態探索器１０７のセルは、選択器及びレジスタメモリを有する。前記選択器は、以前セルからの状態値及び初期状態値を受信する２つの入力ポートと、経路選択ビットを受信する１つの選択ポートと、を有する。つまり、前記セルは、前記経路選択ビットを基にした２つの入力状態値のいずれか１つを選択し、前記レジスタメモリに前記選択された状態値を貯蔵する。前記レジスタメモリは、入力クロックによって前記貯蔵された状態値を出力する。
【００３６】
図２を参照すると、遅延器１０９は、前記ＡＣＳ１０３から各状態に対する１ビットの経路選択ビット及びｎ−１ビットの信頼情報δを有するｎビットのＬＬＲを受信し、前記ＭＬ状態探索器１０７に含まれる遅延器によってＤｓの間に前記入力を遅延する。図１２Ａは、状態数と同一の個数の８個の行を形成するメモリセルを有する遅延器１０９の構造を示す。前記遅延器１０９は、遅延時間Ｄｓに前記受信されたＬＬＲを遅延して出力する。図１２Ｂは、バッファとして動作する構成メモリセルの構造を示す。前記メモリセルは、所定の遅延時間の間にＬＬＲを受信して貯蔵し、クロック信号によって次のメモリセルに前記ＬＬＲを出力する。ＬＬＲ更新部１１１は、前記遅延器１０９からＤｓ遅延されたＬＬＲを受信し、前記ＬＬＲと以前ＬＬＲを比較し、前記比較値が以前ＬＬＲより小さい場合、ＬＬＲを更新する。
【００３７】
図１１Ａは、状態数と同一の数の行及び所定の列から構成されるＰＥと、０.ｄ＿ｍａｘまたは１.ｄ＿ｍａｘの複数の初期入力値と、を有するＬＬＲ更新部１１１の構造を示す。前記ｄ＿ｍａｘは、最大量子化レベル(例えば、１２７である場合は７ビット)によって決定される。従って、前記初期入力値は８ビットで表現され、前記ＭＳＢは０または１であり、他のビットは全て１である。前記ＬＬＲ更新部１１１は、ＤLクロック区間(例えば、１６×ｋ、ここで、ｋ＝エンコーダメモリの個数(３)＋１＝４)を必要とする。図１１Ａを参照すると、ＲＥＳＯＶＡのセルの変形である前記ＬＬＲ更新部１１１は、列及び行から構成されるアレイのＰＥと、複数の選択ラインと、から構成される。前記選択ラインは、経路選択ビット及びδを受信し、該当行のＰＥに並列に接続される。前記ＬＬＲ更新部１１１は、１ビットの硬判定は更新しなく、ｎビットのソフト値であるＬＬＲを更新する。従って、前記ＬＬＲ更新部１１１の内の内部データ通信ラインはｎビットである。ここで、ｎ−１はδを示し、他の１ビットは経路選択ビットを示す。また、各ＰＥは、前記以前ＬＬＲを更新するためのロジック(logic)を含む。前記ＬＬＲ更新部１１１は、クロック発生器１１８から発生されるクロック毎に、ＤｓまたはＤｓ−１クロックだけ遅延されたＬＬＲ値を前記遅延器１０９から受信する。前記ＬＬＲは、ＤｓまたはＤｓ−１クロックが経過する前に、８の状態に対するＡＳＣ演算を通して予め算出された値である。各ＰＥは、前記選択ラインを除いた２つの入力ポートを有する。図１１ａのように、前記第１列のＰＥは、上位(または下位)入力ポートを通して情報ビット０を受信し、他の下位(または上位)入力ポートを通して情報１を受信する。他の列の各ＰＥは、前記格子構造によって以前列の２つのＰＥに接続され、前記以前ＰＥの値を受信する。
【００３８】
前記ＰＥの構成及び動作は、図１１Ｂを参照して詳細に説明する。ここで、ＬＬＲが、ｎ−１ビットのδ及び１ビットの経路選択器として定義されるということに注意すべきである。図１１Ｂを参照すると、１つのＰＥは、前記以前ＰＥから上位入力ポート及び下位入力ポートを通して２つのｎビットのＬＬＲを受信する。ただ、前記第１の列のＰＥがｎビットの初期入力値を受信する場合は例外である。第１多重化器１４１は、格子構造によって前記ＰＥに連結された前記以前列のＰＥから前記２つのＬＬＲの２つの経路選択ビット(それぞれ第１経路選択ビット及び第２経路選択ビットと称する)を受信し、該当選択ラインから受信された経路選択ビット(第３経路選択ビットと称する)によって前記第１及び第２経路選択ビットのいずれか１つを選択する。第２多重化器１４３は、２つの入力ポートを通して前記２つのＬＬＲの２つのｎ−１ビットのδ値を受信し、前記第３経路選択ビットによって前記２つのδ値のいずれか１つを選択する。比較器１４７は、前記第２多重化器１４３から受信されたｎ−１ビットのδ値と、現在の前記該当選択ラインを通して受信されたＬＬＲのδ値と、を比較する。前記第２多重化器１４３から受信されたδとを“ａ”と言い、現在前記選択ラインを通して前記ＰＥに受信されるδを“ｂ”と言う。ａがｂより大きい場合、前記比較器１４７は、ハイ信号１(または、ロー信号)を出力し、ｂがａより大きい場合、ロー信号０(または、ハイ信号)を出力する。排他的論理和演算器(XOR gate)１４５は、前記以前ＰＥから受信された２つの経路選択ビットを排他的論理和演算する。前記比較器１４７及び前記排他的論理和演算器１４５の出力は、それぞれ１ビットである。アンドゲート(AND Gate)１４９は、前記排他的論理和演算器１４５及び前記比較器１４７の出力をアンドゲーティングする。第３多重化器１５１は、第２多重化器１４３からｎ−１ビットのδ値を、前記選択ラインからｎ−１ビットのδ値を受信し、前記アンドゲート１４９の出力によって前記δ値のいずれか１つを選択信号として選択する。メモリ１４６及び１４８には、それぞれ第１多重化器１４１及び第３多重化器１５１の出力が貯蔵される。前記メモリ１４８からの経路選択ビット及び前記メモリ１４６からのδ値は、更新されたｎビットのＬＬＲを形成する。
【００３９】
図２を参照すると、ＬＬＲ選択器１１３は、前記ＬＬＲ更新部１１１から更新された８個のＬＬＲを受信し、前記ＭＬ状態探索器１０７から受信されたＭＬ状態値によって前記ＬＬＲのいずれか１つを選択する。例えば、前記ＬＬＲ選択器１１３は、前記ＭＬ状態探索器１０７から収斂された値５を受信し、前記更新された５番目のＬＬＲを出力する。出力バッファ１１５は、前記選択器１１３によって選択されたＬＬＲを順次にバッファリングする。
【００４０】
本発明において、メモリを効率的に使用し、復号時間遅延を低減するために、２つのスライディングウィンドウ(sliding window)を使用する。前記スライディングウィンドウのいずれか１つのウィンドウは、前記ＭＬ状態値を探すためにＭＬ状態探索器１０７によって動作されるＭＬ状態探索ウィンドウＤｓであり、また他のウィンドウは、最適のＬＬＲを出力するために前記ＬＬＲ更新部１１１によって動作されるＬＬＲ更新ウィンドウＤLである。前記ＭＬ状態探索ウィンドウは、およそＤｓの遅延時間の後にＭＬ状態値を探す。前記ＬＬＲ更新ウィンドウは、前記更新された複数のＬＬＲのうち前記ＭＬ状態値に該当される更新されたＬＬＲを選択し、およそＤｓ＋ＤＬの遅延時間の後に出力する。
【００４１】
図３は、前記ＭＬ状態探索ウィンドウと前記ＬＬＲ更新ウィンドウとの時間による動作関係を示し、図４は、ＭＬ状態探索ウィンドウと前記ＬＬＲ更新ウィンドウとの動作によるＭＬ状態値及びＬＬＲ値の出力時点を示す。前記ＡＣＳ動作が時点Ｋで行われる場合、図３のように、前記ＭＬ状態値は、Ｋ−Ｄｓ＋１の遅延時間の後に出力される。最適のＬＬＲは、前記ＭＬ状態値が出力される時点に選択され、Ｋ−Ｄｓ＋１時点からＤL＋１の遅延の後に更新されて出力される。前記更新されたＬＬＲは、前記Ｋ時点からＤL＋Ｄｓ−２の遅延時間の後に出力されるので、最終のＬＬＲは、時点ＫからＫ−ＤL−Ｄｓ−２の遅延時間の後に出力される。
【００４２】
図５は、本発明によるＲＥＳＯＶＡの動作を示すフローチャートである。図５を参照すると、５０１段階で、システムからクロック信号が提供されない場合、遅延器１０９、ＰＭＭ１０５、ＭＬ状態探索器１０７、及びＬＬＲ更新部１１１は、それぞれのセル又はＰＥをリセットして初期化する。前記クロック信号が受信されると、前記ＢＭＣ１０１は、５０３段階で、入力バッファ(図示せず)から入力データを受信する。５０５段階で、前記ＢＭＣ１０１は、前記入力データ及び前記復号器に知られているコードワードを利用して、以前時点の状態と現在時点の状態との間の経路に対するＢＭを計算し、前記ＡＣＳ１０３に提供する。前記ＡＣＳ１０３は、５１０段階で、前記ＢＭから各状態に対するアップ(上位入力ポート)及びダウン(下位入力ポート)ＰＭを求め、＜数１０＞によって信頼情報及びＬＬＲを計算する。
【００４３】
５１０段階を具体的に説明すると、前記ＡＣＳ１０３は、５０６段階で、ＬＬＲ及び経路選択ビットを計算し、５０７段階で、前記ＢＭを使用してＰＭを計算し、５０８段階で、前記ＰＭを正規化する。前記ＰＭの正規化は、ＰＭ値のオーバーフローを防止するために、前記ＰＭが所定の値より大きい場合、ＰＭから所定の値を引く過程である。具体的には、大韓民国特許出願番号第１９９８−０６２７２４号に開示されている。前記ＡＣＳ１０３は、５１１段階で、前記ＬＬＲを前記遅延器１０９に提供し、５１３段階で、前記経路選択ビットを前記ＭＬ状態探索器１０７に提供する。前記経路選択ビットは、各状態に対する硬判定によって推定された情報である。前記遅延器１０９は、前記ＬＬＲをＤｓ(Delay for Search ML state)の間遅延して前記ＬＬＲ更新部１１１に提供する。５１５段階で、前記ＬＬＲ更新部１１１は、前記遅延されたＬＬＲを受信し、図１の格子で示す方法と同様な方法でＬＬＲを更新する。前記ＬＬＲ選択器１１３は、５１７段階で、前記更新されたＬＬＲを受信し、前記ＭＬ状態探索器１０７から受信された前記ＭＬ状態選択値によって前記ＬＬＲのいずれか１つを選択し、前記選択されたＬＬＲを出力バッファ１１５でバッファリングする。
【００４４】
前記制御部１１７は、５１９段階で、クロックを１増加させ、５２１段階で、前記クロックがフレームの長さより大きいか否かを判断する。前記クロックが前記フレームの長さより大きい場合、前記制御部１１７は復号過程を終了し、前記フレームの長さより小さい場合、５０３から５１９までの段階を繰り返して遂行する。
【００４５】
前記のような本発明の実施形態において、前記ＭＬ状態探索ウィンドウがフレーム境界に到達する時、ゼロターミネーション(zero termination)によってフレーム単位の動作を終了する。前記の場合、前記ＭＬ状態探索ウィンドウの出力側で前記ＭＬ状態のみが出力され、前記ＭＬ状態探索ウィンドウ内の他のＭＬ状態は出力されない。
【００４６】
従って、本発明の他の実施形態によるＲＥＳＯＶＡ復号器は、前記ＭＬ状態探索ウィンドウ内の全てのＭＬ状態が出力できるように構成される。
【００４７】
図１３は、ＲＥＳＯＶＡ復号器のＭＬ状態探索ウィンドウ及びＬＬＲ更新ウィンドウにおける仮想シンボル入力による復号動作を示し、図１４は、本発明の第２実施形態によって仮想コード入力による復号を遂行する前記ＲＥＳＯＶＡ復号器を示すブロック図である。
【００４８】
図１３を参照すると、前記ＭＬ状態探索ウィンドウがフレーム境界に到達する時、その時点の次の時点からＤｓ期間に仮想ゼロシンボルが挿入される。従って、前記ＭＬ状態探索ウィンドウ及び前記ＬＬＲ更新ウィンドウの出力側は、フレーム境界に到達する。
【００４９】
図１３の動作は、図１４のＲＥＳＯＶＡ復号器で具現され、図２と同一の構成の説明は省略する。
【００５０】
図１４において、前記制御器１１７は、フレーム境界を検出し、前記フレーム境界が到達されるか否かを示すフレーム境界信号を出力する。選択器１４０１は、入力コードシンボル及び仮想ゼロシンボルを受信し、前記制御器１１７から受信されたフレーム境界信号によって、前記入力コードシンボル及び仮想ゼロシンボルのうち１つを選択する。具体的に、前記選択器１４０１は、Ｄｓクロック時間の間、フレーム境界以外の位置では入力コードシンボルを選択し、フレーム境界では仮想ゼロシンボルを選択する。逆多重化器１４０３は、前記選択器１４０１から受信された一連のシンボルをｒ０、ｒ１、及びｒ２に逆多重化し、前記フレーム境界の前記ＢＭＣ１００に提供する。前記仮想ゼロシンボルは、前記ＭＬ状態探索ウィンドウの出力側がフレーム境界毎に到達するようにするために、Ｄｓ期間に前記復号器１００に提供される。
【００５１】
一方、前記本発明の詳細な説明では具体的な実施形態に挙げて説明してきたが、本発明の範囲内で様々な変形が可能であるということは勿論である。従って、本発明の範囲は前記実施形態によって限られてはいけなく、特許請求の範囲とそれに均等なものによって定められるべきである。
【００５２】
【発明の効果】
前述してきたように、本発明によるＲＥＳＯＶＡは、前記ＲＥＳＯＶＡによる前記ＭＬ状態探索ウィンドウ及びＬＬＲ更新ウィンドウを使用することにより、ＴＢＳＯＶＡとは違って時間を遅延させずにＭＬ状態を探すので、復号遅延を低減することができ、前記ＭＬ状態を探すためのメモリが要らなくなるので、メモリのサイズを小さくすることができる。また、ＭＬ状態探索動作は、フレーム境界においてゼロターミネーションされず、フレーム境界で前記ＭＬ状態探索ウィンドウのサイズの分だけさらに遂行されるので、より正確な復号動作が遂行できる。
【図面の簡単な説明】
【図１】  本発明に適用されるＬＬＲ更新方法を説明するための格子図である。
【図２】  本発明の実施形態によるＲＥＳＯＶＡ復号器のブロック図である。
【図３】  図２のＲＥＳＯＶＡ復号器において、ＬＬＲセルと状態セルを同期化する方法を示す図である。
【図４】  図２のＲＥＳＯＶＡ復号器において、状態セルウィンドウ及びＬＬＲセルウィンドウにおける復号過程を示す格子図である。
【図５】  図２のＲＥＳＯＶＡ復号器の全体の動作を示すフローチャートである。
【図６】  図２のブランチメトリック計算回路の構造を示す図である。
【図７】  図２の加算比較選択回路の構造を示す図である。
【図８】  図７の構成加算比較選択回路のブロック図である。
【図９】  本発明によって格子構造に８状態が存在する場合、図２のＰＭメモリの構造を示す図である。
【図１０】  図１０Ａは、図２のＭＬ状態探索器の構造を示す図である。図１０Ｂは、図１０Ａのメモリセルの構造を示す図である。
【図１１】  図１１Ａは、図２のＬＬＲ更新部を示す図である。図１１Ｂは、図１１ＡのＰＥの構造を示す図である。
【図１２】  図１２Ａは、は、図２の遅延器の構造を示す図である。図１２Ｂは、は、図１２Ａのメモリセルの構造を示す図である。
【図１３】  本発明の他の実施形態によるＲＥＳＯＶＡ復号器において、仮想シンボルが受信される場合、ＭＬ状態探索ウィンドウ及びＬＬＲ更新ウィンドウにおける復号過程を示す格子図である。
【図１４】  本発明の第２実施形態による仮想コードシンボルの入力によって復号を遂行するＲＥＳＯＶＡ復号器のブロック図である。
【符号の説明】
１００  ＲＥＳＯＶＡ復号器
１０１  ブランチメトリック計算部
１０３  加算比較選択回路
１０５  経路メトリックメモリ
１０７  ＭＬ状態探索器
１０９  遅延器
１１１  ＬＬＲ更新部
１１３  ＬＬＲ選択器
１１５  出力バッファ
１１７  制御部
１１８  クロック発生器
１２１  乗算器
１２２  信頼情報計算部
１２３、１２６、１２７  加算器
１２５  構成加算比較選択回路
１２９、１４７  比較器
１４１、１４３、１５１  多重化器
１４５  排他的論理和演算器
１４６、１４８  メモリ
１４９  アンドゲート
１４０１  選択器
１４０３  逆多重化器
【図１】
0003640924.tif 000013
【図２】
0003640924.tif 000014
【図３】
0003640924.tif 000015
【図４】
0003640924.tif 000016
【図５】
0003640924.tif 000017
【図６】
0003640924.tif 000018
【図７】
0003640924.tif 000019
【図８】
0003640924.tif 000020
【図９】
0003640924.tif 000021
【図１０ａ】
0003640924.tif 000022
【図１０ｂ】
0003640924.tif 000023
【図１１ａ】
0003640924.tif 000024
【図１１ｂ】
0003640924.tif 000025
【図１２ａ】
0003640924.tif 000026
【図１２ｂ】
0003640924.tif 000027
【図１３】
0003640924.tif 000028
【図１４】
0003640924.tif 000029