(57)【要約】【課題】マップ・デコーダのためのメモリ・アーキテクチャ【解決手段】本発明は、ターボ、または対話型復号する技術に、特定技術を適用するための新規で改良された技術である。本発明の一実施形態によれば、復号するためのシステムは、シンボル評価のブロックを記憶するためのチャネル・ディインターリーバＲＡＭ、一連のＳ状態のメトリック計算装置を含んでいる。各状態メトリック計算装置は一連の状態メトリック計算装置と一連のＳ＋１ウインドウＲＡＭを発生させるためのものであり、ここに前記Ｓ＋１ウインドウＲＡＭのＳはシンボル評価を前記Ｓ状態メトリック計算装置に提供する。残りのウインドウＲＡＭは前記チャネル・デインターリーバＲＡＭからのシンボル評価を受信する。【選択図】    図５
2010016861.tif 000002
【特許請求の範囲】
【請求項１】
下記を具備する、復号システム：
ａ）１ブロックのシンボル評価を蓄積するためのチャネル・ディインターリーバーＲＡＭ；
ｂ）Ｓ状態メトリック計算機の組、各状態メトリック計算機は１組の状態メトリック計算を形成する；
ｃ）複数のＳ＋１ウインドウＲＡＭの組、前記複数のＳ＋１ウインドウＲＡＭのＳは、シンボル評価を前記S状態メトリック計算機に供給し、及び残りのウインドウＲＡＭは前記チャネル・ディインターリーバＲＡＭからシンボル評価を受信する。
【請求項２】
Ｓは３に等しい、請求項１に記載されたシステム。
【請求項３】
前記複数のウインドウＲＡＭは前記チャネル・ディインターリーバーＲＡＭよりも相当小さい、請求項１に記載されたシステム。  
【請求項４】
前記状態メトリック計算機は、複数のウインドウ上のデータをウインドウＲＡＭのサイズ以下に処理する、請求項１に記載されたシステム。
【請求項５】
下記を具備する復号器：
受信評価のチャネル・インターリーバー・ブロックを蓄積するためのチャネル・インターリーバー・メモリ；
受信評価を復号するための復号機エンジン；
第一の組の受信評価及び第二の組の受信評価を前記復号機エンジンに同時に読み出し、そして前記チャネルインターリーバー・メモリからの第三の組の受信評価に書き込むための復号機バッフア。
【請求項６】
前記復号機バッフアは、さらに第三の組の受信評価を同時に読み出す、請求項５に記載された複合機。
【請求項７】
前記復号機エンジンは、ＭＡＰ復号機エンジンである、請求項５に記載された複合機。
【請求項８】
前記復号機エンジンは下記を具備する、請求項５に記載された複合機：
前記第一の組の受信評価に応答して、順方向状態メトリックを形成するための順方向状態メトリック計算機；
前記第二の組の受信評価に応答して、逆方向状態メトリックを形成するための逆方向状態メトリック計算機。
【請求項９】
前記復号機エンジンは更に下記を具備する、請求項６に記載された複合機：
前記第一の組の受信評価に応答して、順方向状態メトリックを形成するための順方向状態メトリック計算機；
前記第二の組の受信評価に応答して、逆方向状態メトリックを形成するための第一の逆方向状態メトリック計算機；及び
前記第三の組の受信評価に応答して、逆方向状態メトリックを形成するための第二の逆方向状態メトリック計算機。
【請求項１０】
前記復号機バッフアが下記を具備する、請求項５に記載された復号機：
複数の受信サンプルを読み出し及び書き込むための第一のメモリ；
複数の受信サンプルを読み出し及び書き込むための第二のメモリ；及び
複数の受信サンプルを読み出し及び書き込むための第三のメモリ。
【請求項１１】
下記工程を具備する、データを復号する方法：
ａ）第一の状態メトリック計算機を第一の組の受信評価に結合し、初期値を形成する；
ｂ）第二の状態メトリック計算機を第二の組の受信評価に結合し、第一の組の状態メトリックを形成する；
ｃ）第三の状態メトリック計算機を第三の組の受信評価に結合し、第二の組の状態メトリックを形成する；
ｄ）第四の組の受信評価をデータバッフアに結合する、
ここで、工程a、ｂ、ｃ及びｄは、同時に実行する。
【請求項１２】
前記第二の組の状態メトリックは、以前に計算された初期値を使用して形成し、及びデータ評価を形成するために以前に計算された組の状態メトリックを用いて処理される、請求項１１に記載された方法。
【請求項１３】
さらに下記を具備をする請求項１１に記載された方法：
前記第一の状態メトリック計算機を前記第二の組の受信評価に結合する；
前記第三の状態メトリック計算機を前記第一の組の受信評価に結合する。
【請求項１４】
下記を具備する復号方法：
ａ）第一の方向に第一のウインドウを第一の復号を実行し、及び同時に第二の方向に第二のウインドウ上で第二の復号を実行する、
ｂ）第一の復号の結果を蓄積する、
ｃ）第二の復号の結果を使用して第三の復号を初期化する、
ｄ）前記第二の方向に前記第一のウインドウ上で第三の複合し、及び第三の復号及び前記結果の間において計算されたメトリックを使用してＬＬＲ値を計算する、及び
工程ｄ）と同時に、
新しいウインドウ上で第二の方向に第六の複合することと同様に、第一の方向で他のウインドウについて第四の復号、第五の復号を実行する、
ｅ）初期値に関する第六の復号の結果を使用して、前記第五の復号から第五の復号の結果を蓄積する。
【請求項１５】
前記第二の方向は前記第一の方向と反対である、請求項１４に記載された方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコーディング(coding)に関する。より詳しくは、本発明は事後確率(posteriori probability)（ＭＡＰ）復号を最大に実行する新規で改善された技術に関する。
【背景技術】
【０００２】
「ターボ・コーディング(Turbo coding)」は、順方向エラー修正（ＦＥＣ）の分野で重要な発展を示している。多数の多様なターボ・コーディングがあるが、ほとんど対話型復号すると組み合わせたインターリーブ工程によって分離されたマルチ・エンコーディング工程を使用している。この組み合わせが、通信システムにおけるノイズ・トレーランス(noise tolerance)に関する前もって利用できない性能を有することになる。すなわち、ターボ・コーディングは、既存の順方向エラー修正技術を使用する以前に許容されないＥｂ／Ｎｏレベルでの通信を許容する。
【０００３】
多数のシステムが順方向エラー修正技術を使用し、従って、ターボ・コーディングの使用することで利点がある。例えば、ターボ・コードは無線衛星リンクの性能を改善することができ、ここで制限されたダウンリンク送信電力が、低いＥｂ／Ｎｏレベルで動作する受信機を必要とする。無線衛星リンク中でターボ・コードを使用することは、デジタル・ビデオ放送（ＤＶＢ）システムのためのディシュ・サイズ(dish size)を縮小し、あるいは別の方法として、所与の周波数帯域内でのより多くのデータの送信を許容する。
【０００４】
デジタル・セルラーおよびＰＣＳ電話システムのようなデジタル無線通信システムも、順方向エラー修正を使用する。例えば、ＩＳ−９５オーバー・ザ・エア・インターフェース標準装置、およびＩＳ−９５Ｂのようなその誘導製品は、たたみ込みエンコーディングを使用してコーディング利得を提供してシステムの要領を増大するデジタル無線通信システムを規定する。ＩＳ−９５標準装置の使用による実質的にＲＦ信号を処理するためのシステムおよび方法は、本発明の譲渡人に譲渡された、「ＣＤＭＡセルラー電話システムにおいて信号波形を発生させるためのシステムおよび方法」と称する米国特許第５，１０３，４５９号に開示されており、ここでは参照例として取り入れる（’４５９特許）。
【０００５】
ＩＳ−９５のようなデジタル無線通信システムが、主として移動体通信装置であるため、電力利用が最小で、小型、計量であることが重要である。一般的に、これはほとんど、または全ての必要な処理を実行する半導体集積回路（「チップ」）の開発が必要である。たたみ込みエンコーディングが比較的複雑である一方で、回路がたたみ込みエンコーディングを実行する必要があり、また復号が、いずれの他の必要とされる回路とともに単一チップ上に規制される。
【０００６】
ターボ・コーディング（特に復号する操作）が、たたみ込みエンコーディング（および復号する）よりもずっと複雑である。それにもかかわらず、移動体デジタル通信システムおよび衛星通信システムを含むデジタル無線通信システムにおけるターボ・コーディングに含ませることが高く望まれている。従って、本発明はある一定の復号する操作が多様なシステム内でターボ・コーディングの使用を容易に実行できる率で増大することが望まれている。
【発明の概要】
【０００７】
本発明は、ターボ、または対話型復号する技術に、特定技術を適用するための新規で改良された技術である。本発明の一実施形態によれば、復号するためのシステムは、シンボル評価(symbol estimate)のブロックを記憶するためのチャネル・デインターリーバＲＡＭ、一連のＳ状態のメトリック(metric)計算装置を含んでいる。各状態メトリック計算装置は一連の状態メトリック計算装置と一連のＳ＋１ウインドウＲＡＭを発生させるためのものであり、ここに前記Ｓ＋１ウインドウＲＡＭのＳはシンボル評価を前記Ｓ状態メトリック計算装置に提供する。残りのウインドウＲＡＭは前記チャネル・デインターリーバＲＡＭからのシンボル評価を受信する。
【図面の簡単な説明】
【０００８】
【図１Ａ】無線通信システムのブロック図。
【図１Ｂ】無線通信システムのブロック図。
【図２】送信システムのブロック図。
【図３Ａ】ターボ・コーダの概略図。
【図３Ｂ】ターボ・コーダの概略図。
【図４】受信処理システムのブロック図。
【図５】デコーダと、チャネル・デインターリーバの一部を示すブロック図。
【図６】例示的な一連の復号する工程を示すフローチャート。
【発明を実施するための形態】
【０００９】
本発明はターボ・コーディングを実行するための新規で完全された技術である。典型的な実施形態をデジタル・セルラー電話システムに関して説明する。この関連内での使用が有利であるが、本発明の異なる実施形態が、衛星通信システムおよびデジタル・ケーブルおよび電話システムのようなデジタル有線通信システムを含む異なる環境、形態ないしデジタル・データ送信システムと組み合わせることもできる。
【００１０】
一般的に、ここで説明する種々のシステムは、ソフトウエア制御プロセッサ、集積回路または専用ロジックを使用して形成できるが、集積回路内の実行も行われる。アプリケーション全体を通して関連するデータ、指示、命令、情報、信号、シンボルおよびチップは、電圧、電流、電磁波、磁場または粒子(particles)、光学フィールドまたは粒子あるいはこれらの組み合わせによって有利に表すことができる。さらに、各ブロック図に示したブロックはハードウエアまたは方法工程のいずれかを表している。
【００１１】
図１Ａは本発明に基づいて形成されたセルラー電話システムの極めて簡略化された図である。電話または他の通信装置の呼び出しを実行するために、加入者ユニット１０がＲＦ信号を介して基地局１２と連絡する。基地局１２が基地局コントローラ（ＢＳＣ）１４を介して公衆交換電話ネットワークに連絡する。
【００１２】
図１Ｂは本発明の他の実施形態に基づいて形成された衛星通信システムの極めて簡略化された図である。アップリンク局(Uplink station)４０が、ビデオ・プログラミングのような情報を含むＲＦ信号を衛星４２に送信する。衛星４２がＲＦ信号を地上にリレーし、ここで受信機４４が受信したＲＦ信号をデジタル・データに変換する。
【００１３】
図２は本発明の一実施形態に基づいて構成された典型的な送信システムのブロック図である。この送信機システムは、加入者ユニット１０、基地局１２またはアップリンク局４０、送信のためのデジタル信号を発生するいずれの他のシステム内で使用することができる。送信処理を本発明のただ一つの可能な実施形態で示しているが、多数の他の送信処理構成が本発明の種々の実施形態を使用して、実施でき有利である。
【００１４】
データ７０がＣＲＣ発生装置７２に供給され、ここで受信データの所与の各所定量のためのＣＲＣチェックサム(checksum)データが形成される(generate)。得られるデータ・ブロックがターボ・コーダー７６に供給され、コード・シンボル(code symbols)が発生されて、チャネル・インターリーバ７８に供給される。一般的に、コード・シンボルは、オリジナル・データ（システム的なシンボル）の再送信と一つまたはそれ以上のパリティ・シンボルを含んでいる。
【００１５】
各システム的なシンボルのために送信された多数のパリティ・シンボルはコーディング・レートに依存している。コーディング・レートについては、一つのパリティ・シンボルが全てのシステム的なシンボルのために送信され、また総計して二つのシンボルが受信された各データ・ビット（ＣＲＣを含む）のために発生される。レート１／３ターボ・コーダーについては、二つのパリティ・シンボルが各システム的なシンボルのために発生され、総計して三つのシンボルが受信された各データ・ビットのために発生される。
【００１６】
ターボ・コーダー７６からのコード・シンボルがチャネル・インターリーバ７８に供給される。チャネル・インターリーバ７８が、シンボルが受信されるとこれをブロック上でインターリーブを実行して、インターリーブされたシンボルを出力する。これがマッパ(Mapper)８０で受信される。一般的に、チャネル・インターリーバ７８がブロックないしビット反転インターリーブを実行し、実質的には全ての他のタイプのインターリーブはチャネル・インターリーバとして使用される。
【００１７】
マッパ８０がインターリーブされたコード・シンボルを取り入れ、所定のマッピング・スキームに基づいてある一定のビット幅のシンボル・ワードを発生する。次に、このシンボル・ワードが変調器８２に加えられ、受信されたシンボル・ワードに基づいて変調波形が発生される。一般的な変調技術には、ＱＰＳＫ、８−ＰＳＫおよび１６ＱＡＭが含まれるが、種々の他の変調スキームも利用することができる。次に、変調された波形がＲＦ周波数で送信するためにアップコンバートされる。
【００１８】
図３Ａは本発明の第１実施形態によって構成されたターボ・コーダのブロック図である。本発明のこの第１実施形態において、ターボ・コーダは並列結合ターボ・コーダとして構成されている。ターボ・コーダ７６の変形例の内において、構成要素コーダ９０とコード・インターリーバ９２が、ＣＲＣ発生装置７２からのデータを受信し、上述したように、入力およびＣＲＣチェックサム・ビットを出力する。構成要素コーダ９０はテイル・ビット(tail bits)も発生し、各フレームの終端で既知の状態を提供する。
【００１９】
周知のように、コード・インターリーバ９２は、最高性能を発揮するために最高にランダム化されたインターリーバとしなければならない。コード・インターリーバとして最小の複雑さを有する優れた性能を提供するインターリーバとしては、「インターリーバを基本とする状態マシンを備えたコード・システム」と称する１９９８年９月２２日出願の米国特許願第０９／１５８，４５９号、および「インターリーバを基本とする状態マシンを備えたコード・システム」と称する出願中の部分継続出願である１９９８年１０月１３日出願の出願番号第０９／１７２，０６９号、さらに、「線形結合シーケンスを使用するターボ・コード・インターリーブ」と称する１９９８年１２月４日出願の米国特許願第０９／２０５，５１１号に開示されており、全て本願の譲受人に譲渡されたものであり、ここでは参照例として取り入れる。構成要素コーダ９０はシステム的シンボル９４（一般的にオリジナル入力のビットのコピーである）とパリティ・シンボル９６を出力する。構成要素コーダ９８がコード・インターリーバ９２のインターリーブされた出力を受信し、付加的なパリティ・シンボル９９を出力する。構成要素コーダ９０は、テイル・ビットを付加して各フレームの終端で既知状態を提供する。
【００２０】
構成要素コーダ９０と構成要素コーダ９８の出力が、１／３のトータル・コーディング・レートＲのための出力データ・ストリームに最大化される。付加的な構成要素コーダとコード・インターリーバ対が、増大された順方向エラー修正のためのコーディング・レートを縮小するために付加される。別の方法として、いくつかのパリティ・シンボル９６と９９が、何度も中断され（送信されない）、コーディング・レートを増大する。例えば、コーディング・レートが全ての他のパリティ・シンボル９６と９９を中断することによって増大させることができるが、パリティ・シンボル９６を全く送信できない。
【００２１】
構成要素コーダ９０と９８は、ブロック・コードまたはたたみ込みコードを含む種々のタイプのコードである。たたみ込みコードとして、構成要素コーダ９０と９８は、一般的に４のような小さい圧縮長さを有し、複雑性を少なくし、また再帰システム的たたみ込み（ＲＳＣ）エンコーダである。低い圧縮長さが受信システムにおける対応するデコーダの複雑性を少なくしている。
【００２２】
一般的に、二つのコーダが一つのシステム的シンボルと一つのパリティ・シンボルを出力し、各ビットは構成要素コーディング・レートＲ＝＿のために受信される。図１Ａのターボ・コーダの総計コーディング・レートはＲ＝１／３であるが、構成要素コーダ９８からのシステム的ビットは使用されない。上述したように、付加的なインターリーバとコーダ対が、並列に付加されて、コーディング・レートが縮小され、またこれによってより高いエラー修正が提供されるか、または何回もの中断が実行されてコーディング・レートが増大される。
【００２３】
図３Ｂは本発明の他の実施形態による直列接続ターボ・コーダとしてのターボ・コーダ７６を示す。図３Ｂのターボ・コーダ内で、ＣＲＣ発生装置７２からのデータが、構成要素コーダ(constituent coder)１１０によって受信され、得られたコード・シンボルがコード・インターリーバ１１２に供給される。得られるインターリーブされたパリティ・シンボルが構成要素コーダ１１４に供給され、付加的なエンコーディングを実行してパリティ・シンボル１１５を発生する。一般的に、構成要素コーダ１１０（外部コーダ）は、ブロック・エンコーダまたはたたみ込みエンコーダを含む種々のタイプのエンコーダでよいが、構成要素コーダ１１４（内部コーダ）は再帰コーダ(recursive coder)であるのが好ましく、また一般的に再帰システム的エンコーダである。
【００２４】
再帰システム的たたみ込み（ＲＳＣ）エンコーダとして、構成要素コーダ１１０と１１４がコーディング・レートＲ＜１でシンボルを発生する。すなわち、所与の数の入力ビットＮに対して、Ｍの出力シンボルが発生される。ここにＭ＞１である。図１Ｂの直列連結ターボ・コーダのための総計コーディング・レートは構成要素コーダ１１０のコーディング・レートに構成要素コーダ１１４のコーディング・レートを乗算したものである。付加的なインターリーバとコーダ対も直列に付加され、コーディング・レートが縮小され、従って、付加的なエラー保護が提供される。
【００２５】
図４は本発明の一実施形態によって構成された受信システムのブロック図である。アンテナ１５０が受信されたＲＦ信号をＲＦユニット１５２に提供する。ＲＦユニットがダウン変換と、フィルタと、デジタル化を実行する。マッパ１４０がデジタル化データを受信し、ソフト決定データをチャネル・ディインターリーバ１５６に提供する。ターボ・デコーダ１５８がチャネル・ディインターリーバ１５６からのソフト決定データをデコードし、得られた決定データを受信システムにおけるプロセッサないし制御ユニットに供給する。ここでＣＲＣチェックサム・データを使用することでデータの精度がチェックすることができる。
【００２６】
図５は本発明の一実施形態によって構成されたターボ・コーダ１５８とチャネル・ディインターリーバの一部のブロック図である。図示したように、ターボ・デコーダ１５８は図３Ａに示したターボ・コーダからのデータを復号するために構成されている。
【００２７】
開示された実施形態において、チャネル・インターリーバ・メモリの二つのバンク(banks)が、チャネル・インターリーバＲＡＭ１６０ａと１６０ｂを提供し、各バンクが一つのチャネル・インターリーバ・ブロックを記憶する能力がある。二つのチャネル・インターリーバ・メモリ・バンクのアドレス入力が、マルチプレクサ２０８と２１０を介してアドレス入力に供給されたチャネル・アドレス発生装置２０４とカウンタ２０６によって制御される。マルチプレクサ２０８と２１０は、信号Ｉと信号！Ｉ（Ｉの論理反転）によって制御され、また従って、一つのチャネル・ディインターリーバＲＡＭがチャネル・インターリーバ・アドレス発生装置２０４によって制御されたときに、他方がカウンタ２０６によって制御される。一般的に、いずれの制御機能性もメモリに記憶されたマイクロプロセッサ駆動ソフトウエアと、専用論理回路とによって提供されるが、制御システムの種々の他のタイプの使用も本発明の使用と一致する。
【００２８】
チャネル・インターリーバ・メモリ・バンクのＩ／Ｏポートがマルチプレクサ２１２と２１４に接続されている。マルチプレクサ２１２がマッパ１４０からソフト決定データを受信し、二つのチャネル・ディンターリーバ・メモリ・バンクの一つに供給する。マルチプレクサ２１４が二つのチャネル・ディインターリーバ・メモリ・バンクの一つに記憶されたソフト決定データを部分加算(partial sum)２１８に出力する。マルチプレクサ２１２と２１４は、それぞれ信号Ｂと！Ｂによって制御され、従って、一つのチャネル・ディインターリーバＲＡＭがマッパ１４０からサンプルを受信すると、他方がサンプルを部分加算２１８に出力する。
【００２９】
動作中、チャネル・ディインターリーバ・アドレス発生装置２０４が、チャネル・ディインターリーバ・メモリ・バンクに、マッパ１４０からの受信サンプルを提供する。チャネル・ディインターリーバ・アドレス発生装置が、図３のチャネル・インターリーバ７８によって実行されたインターリーバに関して逆の順序でアドレスが発生する。従って、サンプルが非インターリーブ順（チャネル・インターリーバに関して非インターリーブ）でチャネル・ディインターリーブ・メモリ・バンク内に読み込まれる。
【００３０】
カウンタ２０６が、チャネル・ディインターリーバ・メモリ・バンクに、部分加算２１８からの読み込みを提供する。ソフト決定データが逆の順序で読み込みされるので、ソフト決定データはカウンタ２０６を単に使用してディインターリーブ順に読み込みされる。ソフト決定データをバッファする種々の他の方法も使用され、デュアル・ポート・メモリを含んでいる。さらに、ディインターリーブ・アドレスを発生する他の方法も使用され、スイッチング・カウンタ２０６とチャネル・ディインターリーバ・アドレス発生装置２０４を含んでいる。
【００３１】
ターボ・コーダ１５８内で、部分加算２１８がＡＰＰメモリ１７０からの優先確率(a priori probability)（ＡＰＰ）データだけでなく、チャネル・ディインターリーバから受信評価(receive estimates)(ソフト決定データ(soft decision data))を受信する。周知のように、ＡＰＰ値は以前の復号反復(decoding iteration)に基いて送信されたデータの評価である。最初の反復中、ＡＰＰ値が等価な確率状態に設定される。
【００３２】
チャネル・ディインターリーブ・メモリからの評価は、チャネル・インターリーバ・ブロックに関係する各データ・ビットにおける二つのパリティ・シンボルの評価だけでなく、システム的シンボルの評価を含んでいる。部分加算２１８がＡＰＰ値をシステム的シンボルに加算して、「精選システム的評価(refined systematic estimate)」を生成する。二つのパリティ・シンボルとともに精選システム的評価が、ＲＡＭファイル２２４内に読み込まれる。
【００３３】
ＲＡＭファイル２２４内において、評価値がウインドウＲＡＭ２３０ａ−ｄ（ＲＡＭ ０−ＲＡＭ ３が付される）に書き込まれる。本発明の一実施形態において、評価はシーケンス順にＲＡＭ０−３のアドレス・スペース内に書き込まれる。この処理はＲＡＭ ０で開始され、ＲＡＭ ３まで進行する。いずれの所与の時刻において、ただ一つのウインドウＲＡＭが書き込まれる。三つの残りのウインドウＲＡＭ（これらは書き込まれない）が、マルチプレクサ２６０を介してＭＡＰエンジン(engine)２７０に（読み取ることによって）印加される。これにつては次に詳細に説明する。
【００３４】
本発明の一実施形態において、滑り(sliding)ウインドウ・アーキテクチャがマップ・復号を実行するのに使用される。この滑りウインドウ・復号を実行するためのシステムと方法は、本発明の譲渡人に譲渡された出願中の「たたみ込み式にエンコードされたコードワードをデコードするためのソフト決定出力復号器」と称する米国特許出願番号第０８／７４３，６８８号に開示されており、ここでは参照例として取り入れる。
【００３５】
本願において、ＭＡＰ復号はデータの「ウインドウ」上で実行される。本発明の説明された実施形態において、ＲＡＭウインドウ・バンク２３０がＬｘｑのサイズであり、ここにＬはウインドウ内の送信されたデータ・ビット数であり、またｑは精選システム的シンボルの評価と各データ・ビットのために発生された二つのパリティ・シンボルの評価を記憶するのに必要とするメモリ・ビット数である。本発明の一実施形態において、６ビットが二つのパリティ・シンボル評価のために使用され、７ビットが精選されたシステム的シンボル評価（上述したように、受信システム的シンボル評価とＡＰＰ値の加算である）のために使用される。ここにｑは１８ビットである。
【００３６】
上述したように、精選されたシステム的シンボル評価とパリティ・シンボル評価を含む評価が、シーケンス順でウインドウＲＡＭａ−ｄ内に書き込まれる。一般的に、ただ一つのウインドウＲＡＭ２３０が書き込まれ、残りの三つのウインドウ２３０がＭＡＰエンジン２７０によって読み込まれる。
【００３７】
例示的な処理において、新しいチャネル・ブロックからのデータがまずウインドウＲＡＭ２３０ａに書き込まれ、次にウインドウＲＡＭ２３０ｂが書き込まれる。従って、ウインドウＲＡＭ２３０ａが、評価の第１セットＬ（１Ｌ）を含み（セットは精選システム的評価と二つのパリティ評価からなる）、ウインドウＲＡＭ２３０ｂが、評価の第２セットＬ（２Ｌ）を含んでいる。最初の二つのセットのＬ評価がウインドウＲＡＭ２３０に記憶されたときに、マルチプレクサ２６０がウインドウＲＡＭ２３０に記憶されたデータを、以前の（ＭＡＰ）復号器２７０の最高状態にある状態メトリック計算器（ＳＭＣ）に供給する。本発明の一実施形態において、三つのＳＭＣが順方向(forward)ＳＭＣ（ＦＳＭＣ）２７２と二つの逆方向(reverse)ＳＭＣ（ＲＳＭＣ）２７４ａと２７４ｂからなる。
【００３８】
データが続いてＲＡＭファイル２２４に書き込まれるにつれて、マルチプレクサ２６０が四つのウインドウＲＡＭの三つに記憶された評価を、表Ｉに基づいてＭＡＰデコーダ２７０内の三つの状態メトリック的計算器に供給される。
【表１】
2010016861.tif 000003
【００３９】
特定状態メトリックに適用された特定ウインドウＲＡＭにより、表Ｉはまたその時点におけるウインドウＲＡＭに包含された一連の評価をリストし、従って、評価は対応するＳＭＣによって処理される。
【００４０】
ウインドウは一度順方向に処理され、またＭＡＰ処理に基づいて一度逆方向に処理される。付加的に、ほとんどのウインドウが逆方向に付加的時間で処理され他の逆方向状態メトリック処理のために初期化状態を発生する。表Ｉにおいて、初期化処理はイタリック体によって記されている。開示された実施形態において、各セットの評価は３回処理され、従って、評価の記憶されたウインドウＲＡＭはその上３回アクセスされる。３個のウインドウＲＡＭを使用して、ＲＡＭ論争を阻止する。
【００４１】
表Ｉによって示したように、いずれの特定時刻において、少なくとも一つのウインドウＲＡＭがいずれのＳＭＣとも結合されておらず、また従って、利用可能で書き込まれた新しいデータを有すること利用できる。ＲＡＭファイル２２４内のＲＡＭの三つのウインドウよりも多く設けることにより、データが正しいシーケンスでＭＡＰエンジンに連続的、かつ、反復して供給することができ、また三つのＳＭＣの正しい一つに供給でき、一方パーシャル・サム２１８を介してチャネル・インターリーバ・メモリ１６０から同時に受信できる。
【００４２】
さらに注意しなければならないのは、表Ｉがデータの６個のウインドウにつき実行される結合を示していることである。従って、例示的なチャネル・インターリーバ・ブロック・サイズは６Ｌであり、チャネル・インターリーバ・メモリは６Ｌｘｑである。６Ｌのチャネル・ブロック・サイズはただの例であって、一般的なチャネル・ブロック・サイズは６Ｌよりも大きくなる。
【００４３】
なおも図５を参照して、ＭＡＰデコーダ２７０内で、ＦＳＭＣ２７２が上述したようにＲＡＭファイル２２４から評価を受信し、ウインドウＬを介して順方向状態のメトリック値を計算する。順方向状態のメトリック値が、メトリック・バッファ２７６に記憶される。付加的に、表Ｉに基づいて、一つのＲＳＭＣ２７４がもう一つのウインドウＬを介して逆方向状態のメトリック値を計算する。本発明の一実施形態において、各状態のメトリック計算器はそれ自体のブランチ(branch)・メトリック計算器を包含している。本発明の他の実施形態において、単一の時分割ブランチ・メトリック計算器が状態メトリックのセットに使用され、好ましくはブランチ・メトリック・バッファと組み合わされる。
【００４４】
本発明の一実施形態において、使用されるＭＡＰデコーダはログＭＡＰデコーダであって、評価を対数で操作してハードウエアの複雑性を小さくしている。状態メトリックとブランチ・メトリック計算器を含むログＭＡＰデコーダの実行例は、「衛星通信のインターナショナル・ジャーナル」、１９９７年２月に提示されたＳ．Ｓ．ピエトロボーンによる「ターボ／ＭＡＰデコーダの装置および性能」の参考例に開示されている。ピエトロボーンのログＭＡＰデコーダは、上述した参考例である「たたみ込み式にエンコードされたコードワードをデコードするためのソフト決定出力デコーダ」に開示された滑りウインドウ・アーキテクチャを使用していない。
【００４５】
第１ＲＳＭＣ２７４によって計算された最終値が、他のＲＳＭＣ２７４を初期化するのに使用され、ウインドウＬ上で逆方向状態メトリック計算を実行し、順方向状態メトリックが既に計算され、メトリック・バッファ２７６に記憶されている。逆方向状態メトリックが計算されるにつれて、マルチプレキサ２７８を介してログ見込み比(log likelihood ratio)（ＬＬＲ）計算器２８０に送られる。ＬＬＲ計算器２８０が、マルチプレキサ２７８から受信された逆方向メトリックとメトリック・バッファ２７６に記憶された順方向状態メトリックとのログ見込み計算を実行する。
【００４６】
滑りメトリック計算処理を使用することにより、必要とする処理を実行するのに使用されるメモリの量が減じられる。例えば、一連のウインドウＲＡＭ２３０が、全体のインターリーバ・ブロックのサイズではなくウインドウＬと同じだけの大きさを必要とする。同様にして、順方向状態メトリックのただ一つのウインドウＬが、いずれの所与の時間でメトリック・バッファ２７６内に記憶するのに必要とされる。これが回路サイズを相当小さくする。
【００４７】
付加的に、三つのメトリック計算器の使用が、実行される復号のレートを相当増大させる。レートが増大するが、これは初期化と機能の復号するが平行に実行されるからである。初期化がデコーダの精度を高める。
【００４８】
本発明の別の実施形態において、二つの順方向状態メトリック計算器が一つの逆方向状態メトリック計算器に関して使用できる。さらに、クロックが十分高いレートで多数の操作で２度実行されれば、少ない状態メトリック計算器を使用することができる。しかし、クロック・レートの増大が、電力の消費を増大させ、これは移動体通信またはバッテリ駆動される通信システムの多くの場合において望ましいことではない。
【００４９】
付加的に、ＲＡＭファイル２２４の使用が回路エリアと、復号器内のＲＡＭ論争を小さくする一方で、本発明の他の実施形態が別のメモリ・アーキテクチャを選択する。
【００５０】
例示的な実施形態を参照して上述したように、復号は第１方向で第１ウインドウの第１の復号を実行することによって行なわれ、また同時に第２方向で第２ウインドウを実行する。第２方向は第１方向とは反対であるのが好ましい。
【００５１】
第１の復号の結果は蓄積される(stored)。第２の復号の結果が第２方向で第１ウインドウで実行される第３の復号を初期化するのに使用される。第３の復号中、ＬＬＲ値が第３の復号中に計算された値と記憶された値を使用して計算される。
【００５２】
第３の復号と同時に、他のウインドウの第４の復号が第１方向に実行され、さらに他のウインドウ上で第２方向に第５の復号が実行される。第４の復号の結果が蓄積され、また第５の復号が、初期化値を発生するのに使用される。これらの工程は全チャネル・インターリーバ・ブロックがデコードされるまで、反復される。
【００５３】
本発明の種々の他の実施形態は、説明した実施形態に使用した工程のいくつかを省略することができる。しかし、説明した一連の工程を使用することは、メモリと付加的な回路を最少にして迅速、かつ、正確な復号を提供し、従って、相当優れた性能を発揮する。
【００５４】
本発明の一実施形態において、ＡＰＰメモリ１７０は二つのＡＰＰメモリ・バンク２８４からなる。マルチプレキサ２８６が、各メモリ・バンク２８４を、部分加算２１８による読取りと、ＬＬＲ２８０による書込み間を切り替えして二重バッファ動作を提供する。マルチプレクサ２８８をカウンタ２９０かコード・インターリーバ・アドレス発生装置２９２のいずれかに適用して、復号の各反復のためのターボ・コード・インターリーブと逆インターリーブを実行する。
【００５５】
さらに、ＡＰＰメモリ・バンク２８８が一つのチャネル・インターリーバ・ブロックのためのすべてのデータ評価を保有するのに十分な大きさであり、評価が送信されたデータであって、パリティ・シンボルではない。６ビット解像度の評価が使用できる。
【００５６】
全復号する処理が、チャネル・ディインターリーバ・バッファ１６０からの受信評価の反復読取りと、ＡＰＰメモリ・バンク１７０からのＡＰＰ値による処理とによって進行される。一連の反復後、評価が一連の値として収束され、次にハード決定を発生するために使用される。こうして復号の結果がＣＴＣ値を使用してチェックされる。復号すると同時に、他のチャネル・ディインターリーバ・バッファが、受信評価の次のブロックを受信する。
【００５７】
図６は本発明の一実施形態に基づくチャネル・インターリーバ・ブロックのログＭＡＰ復号する中に実行される工程を示すフローチャートである。これらの工程は図５に示した要素を参照して説明する。
【００５８】
復号する工程３００で開始され、工程３０２においてウインドウ・インデックスＮが０にセットされる。工程３０４において、チャネル・インターリーバＲＡＭに記憶された評価のウインドウ［Ｎ］およびウインドウ［Ｎ＋１］が、それぞれウインドウＲＡＭ［Ｎｍｏｄ３］とウインドウＲＡＭ［（Ｎ＋１）ｍｏｄ３］に書き込まれる。上述したように、評価のウインドウは送信されるべきデータ・ビットのウインドウＬに関して発生されたシンボルに対応している。
【００５９】
工程３０８において、ＦＳＭＣが評価をＲＡＭ［Ｎｍｏｄ３］（この場合ＲＡＭ０である）で処理し、ＲＳＭＣ０が評価をＲＡＭ［（Ｎ＋１）mod３］（ＲＡＭ１である）で処理する。付加的に、チャネル・ディインターリーバＲＡＭからの評価のウインドウ［Ｎ＋１］がウインドウＲＡＭ［（Ｎ＋２）ｍｏｄ３］（ＲＡＭ２である）に書き込まれる。
【００６０】
工程３１０において、ウインドウ・インデックスＮが増大し、またＸがＮｍｏｄ２にセットされ、Ｙが（Ｎ＋１）ｍｏｄ２にセットされる。工程３１２において、Ｎ＋１が処理されるべき評価の最終ウインドウに対応しているかどうかが決定される。もし対応していなければ、工程３１４が実行される。
【００６１】
工程３１４において、ＦＳＭＣがウインドウＲＡＭ［Ｎｍｏｄ３］に記憶された評価を処理し、ＲＳＭＣ Ｘ（第１パスにおいてＸ＝０）がウインドウＲＡＭ［（Ｎ＋１）ｍｏｄ３］に記憶された評価を処理し、またＲＳＭＣ Ｙ（第１パスにおいてＹ＝１）がウインドウＲＡＭ［（Ｎ−１）ｍｏｄ３］に記憶された評価を処理する。付加的に、チャネル・ディインターリバＲＡＭからの評価のウインドウ［Ｎ＋１］がウインドウＲＡＭ［（Ｎ＋２）ｍｏｄ３］に書き込まれる。
【００６２】
図示していないが、ＲＳＭＣ １によって実行される処理中、データのウインドウ［Ｎ−１］に対応する一連のＡＰＰ値が工程３１４で発生される。ウインドウでの復号を実行することにより、メトリック・バッファのサイズが、各復号する工程で発生されたメトリック数の倍の長さＬに維持される。多数のメトリックが各復号する工程で記憶されるので、メトリック・メモリの縮小が、全体のチャネル・デインターリーバ・ブロックによる状態メトリックを記憶するのと比較して重要である。
【００６３】
付加的に、第２逆方向状態メトリック計算器を使用することが、処理速度と精度を高める。例えば、第２ＲＳＭＣが次の復号する・ウインドウのための新しい初期値を計算でき、一方で前回の復号する・ウインドウが処理される。この新しい初期値の計算が、新しい値が前回ウインドウの全てを復号するのに使用できるように、各復号する工程のための新しいＲＳＭＣ計算を実行する必要性を排除している。
【００６４】
工程３１４がＲＡＭファイル２２４によって例示されたように評価を処理することによって得られた効率の優れた実例を提供する。特に、工程３１４は復号する処理中の四つの工程を同時に実行する能力を示す。これが、コーディングが所与のクロック・レートで実行できるレートを高めることになる。説明した実施形態において、工程は状態メトリック計算処理および付加的なサンプルをＲＡＭファイル２２４に書き込むことを含んでいる。さらに、ＡＰＰ値が工程３１４中に計算される。
【００６５】
一度工程３１４が完了すると、ウインドウ・インデックスＮが工程３１０で増大される。もし値Ｎ＋１が最終ウインドウに等しければ、次に配管処理が中断され、またＲＡＭファイル２２４内の残りの評価が工程３１６から３２２で処理される。
【００６６】
特に、工程３１６において、ＦＳＭＣがウインドウＲＡＭ［Ｎｍｏｄ３］を処理し、ＲＳＭＣ ＸがウインドウＲＡＭ［（Ｎ＋１）ｍｏｄ３］を処理し、またＲＳＭＣ ＹがウインドウＲＡＭ［（Ｎ＋１）ｍｏｄ３］を処理する。工程３１８において、ウインドウ・インデックスＮが増大され、ＸがＮモッド２にセットされ、またＹが（Ｎ＋１）ｍｏｄ２にセットされる。工程３２０において、ＦＳＭＣがＲＡＭ［Ｎｍｏｄ３］を処理し、またＲＳＭＣ ＹがＲＡＭ［（Ｎ−１）ｍｏｄ３］を処理する。工程３２２において、ＲＳＭＣ１がＲＡＭ［Ｎｍｏｄ３］を処理する。工程３２４において、チャネル・ディインターリーバ・ブロックが処理終了で完了される。
【００６７】
従って、ターボ・コーディングを実行するための新規で改良された技術が開示された。
【図１Ａ】
2010016861.tif 000004
【図１Ｂ】
2010016861.tif 000005
【図２】
2010016861.tif 000006
【図３Ａ】
2010016861.tif 000007
【図３Ｂ】
2010016861.tif 000008
【図４】
2010016861.tif 000009
【図５】
2010016861.tif 000010
【図６】
2010016861.tif 000011
【手続補正書】
【提出日】平成21年10月13日(2009.10.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
下記工程を具備する、データを復号する方法：
ａ）第一の状態メトリック計算機を第一の組の受信評価に結合し、初期値を形成する；
ｂ）第二の状態メトリック計算機を第二の組の受信評価に結合し、第一の組の状態メトリックを形成する；
ｃ）第三の状態メトリック計算機を第三の組の受信評価に結合し、第二の組の状態メトリックを形成する；
ｄ）第四の組の受信評価をデータバッフアに結合する、
ここで、工程a、ｂ、ｃ及びｄは、同時に実行する。
【請求項２】
前記第二の組の状態メトリックは、以前に計算された初期値を使用して形成し、及びデータ評価を形成するために以前に計算された組の状態メトリックを用いて処理される、請求項１に記載された方法。
【請求項３】
さらに下記を具備をする請求項１に記載された方法：
前記第一の状態メトリック計算機を前記第二の組の受信評価に結合する；
前記第三の状態メトリック計算機を前記第一の組の受信評価に結合する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００６７
【補正方法】変更
【補正の内容】
【００６７】
従って、ターボ・コーディングを実行するための新規で改良された技術が開示された。  
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［１］下記を具備する、復号システム：
ａ）１ブロックのシンボル評価を蓄積するためのチャネル・ディインターリーバーＲＡＭ；
ｂ）Ｓ状態メトリック計算機の組、各状態メトリック計算機は１組の状態メトリック計算を形成する；
ｃ）複数のＳ＋１ウインドウＲＡＭの組、前記複数のＳ＋１ウインドウＲＡＭのＳは、シンボル評価を前記S状態メトリック計算機に供給し、及び残りのウインドウＲＡＭは前記チャネル・ディインターリーバＲＡＭからシンボル評価を受信する。
［２］Ｓは３に等しい、上記［１］に記載されたシステム。
［３］前記複数のウインドウＲＡＭは前記チャネル・ディインターリーバーＲＡＭよりも相当小さい、上記［１］に記載されたシステム。  
［４］前記状態メトリック計算機は、複数のウインドウ上のデータをウインドウＲＡＭのサイズ以下に処理する、上記［１］に記載されたシステム。
［５］下記を具備する復号器：
受信評価のチャネル・インターリーバー・ブロックを蓄積するためのチャネル・インターリーバー・メモリ；
受信評価を復号するための復号機エンジン；
第一の組の受信評価及び第二の組の受信評価を前記復号機エンジンに同時に読み出し、そして前記チャネルインターリーバー・メモリからの第三の組の受信評価に書き込むための復号機バッフア。
［６］前記復号機バッフアは、さらに第三の組の受信評価を同時に読み出す、上記［５］に記載された複合機。
［７］前記復号機エンジンは、ＭＡＰ復号機エンジンである、上記［５］に記載された複合機。
［８］前記復号機エンジンは下記を具備する、上記［５］に記載された複合機：
前記第一の組の受信評価に応答して、順方向状態メトリックを形成するための順方向状態メトリック計算機；
前記第二の組の受信評価に応答して、逆方向状態メトリックを形成するための逆方向状態メトリック計算機。
［９］前記復号機エンジンは更に下記を具備する、上記［６］に記載された複合機：
前記第一の組の受信評価に応答して、順方向状態メトリックを形成するための順方向状態メトリック計算機；
前記第二の組の受信評価に応答して、逆方向状態メトリックを形成するための第一の逆方向状態メトリック計算機；及び
前記第三の組の受信評価に応答して、逆方向状態メトリックを形成するための第二の逆方向状態メトリック計算機。
［１０］前記復号機バッフアが下記を具備する、上記［５］に記載された復号機：
複数の受信サンプルを読み出し及び書き込むための第一のメモリ；
複数の受信サンプルを読み出し及び書き込むための第二のメモリ；及び
複数の受信サンプルを読み出し及び書き込むための第三のメモリ。
［１１］下記工程を具備する、データを復号する方法：
ａ）第一の状態メトリック計算機を第一の組の受信評価に結合し、初期値を形成する；
ｂ）第二の状態メトリック計算機を第二の組の受信評価に結合し、第一の組の状態メトリックを形成する；
ｃ）第三の状態メトリック計算機を第三の組の受信評価に結合し、第二の組の状態メトリックを形成する；
ｄ）第四の組の受信評価をデータバッフアに結合する、
ここで、工程a、ｂ、ｃ及びｄは、同時に実行する。
［１２］前記第二の組の状態メトリックは、以前に計算された初期値を使用して形成し、及びデータ評価を形成するために以前に計算された組の状態メトリックを用いて処理される、上記［１１］に記載された方法。
［１３］さらに下記を具備をする上記［１１］に記載された方法：
前記第一の状態メトリック計算機を前記第二の組の受信評価に結合する；
前記第三の状態メトリック計算機を前記第一の組の受信評価に結合する。
［１４］下記を具備する復号方法：
ａ）第一の方向に第一のウインドウを第一の復号を実行し、及び同時に第二の方向に第二のウインドウ上で第二の復号を実行する、
ｂ）第一の復号の結果を蓄積する、
ｃ）第二の復号の結果を使用して第三の復号を初期化する、
ｄ）前記第二の方向に前記第一のウインドウ上で第三の複合し、及び第三の復号及び前記結果の間において計算されたメトリックを使用してＬＬＲ値を計算する、及び
工程ｄ）と同時に、
新しいウインドウ上で第二の方向に第六の複合することと同様に、第一の方向で他のウインドウについて第四の復号、第五の復号を実行する、
ｅ）初期値に関する第六の復号の結果を使用して、前記第五の復号から第五の復号の結果を蓄積する。
［１５］前記第二の方向は前記第一の方向と反対である、上記［１４］に記載された方法。
【外国語明細書】
2010016861000001.pdf