図面 (/)

技術 複数の復号化スキームのうちの1つに従って送信されたデータ通信信号を復号化する再構成可能なアーキテクチャと、畳み込み符号とターボ符号の一方を復号化する通信復号化デバイスのパスメトリックを取り扱う方法。

出願人 ルーセントテクノロジーズインコーポレーテッド
発明者 マークアンドリュービッカースタッフクリストファージェイニコルビンフランホンヤン
出願日 2001年9月17日 (19年2ヶ月経過) 出願番号 2001-281586
公開日 2002年6月14日 (18年5ヶ月経過) 公開番号 2002-171173
状態 未査定
技術分野 エラーの検出訂正 デジタル記録再生の信号処理 符号誤り検出・訂正
主要キーワード 結合リード フェーズモード 補正付き 階層スイッチ 移動ワイヤ ノードユニット 状態コントローラ 最大値比
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2002年6月14日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

畳み込み符号ターボ符号を含む複数の符号化スキームのうちの1つの系に従って送信されたデータ送信信号復号化する単一の復号化器を提供する。

解決手段

本発明の単一の復号化器は、異なるスループットレートで変動するデータストリームに基づいて必要とされる操作をダイナミックに実行するよう区分けされる。音声(畳み込み符号)とデータ(ターボ符号)を同時に復号化する。プロセッサは積層/相互接続され個別にあるいは単一の高速復号化器と強調して機能する。本発明の単一の復号化器は、マルチメディア/音声をサポートする。更に本発明の単一の復号化器は、異なる標準仕様満足する。

概要

背景

通信ステムは、送信器から受信器への情報の伝送を扱う。情報が通る通信媒体は、しばしば、宇宙線加法的白色ガウスノイズAWGN:Additive WhiteGauss Noise)、レイリー散乱マルチパス伝搬)および電磁ノイズなどの多くのノイズ源を含む。これらのノイズ源の存在は、所望の情報の伝送を障害ないし妨害し、通信の能力を制限する。

業者に周知のように、ソース情報源)の情報から計算される冗長情報の付加により、送信されるべき情報を符号化することにより、送信情報を正しく受信する能力が改善される。復号は、受信されたデータについて、この冗長情報を用いて、誤りの存在を検出し、あるいは、最も確からしい送信ビット推定することである。送信された冗長情報が、後で受信データにより計算されたものとは異なるとき、誤りが検出される。

符号語の重みは、その符号語からデータを回復することができる能力の尺度である。ビット数の大きい符号語は高い重みを有する。低い重みの符号語は、データを回復する能力が低いのに対して、高い重みの符号語は、データの回復能力が高い。

自動再送要求(ARQ符号化方式は、誤り検出符号を使用する。受信された情報において誤りの存在が検出された場合、関連する情報の再送を要求するメッセージが、受信器から送信器に送られる。ARQ符号化方式は比較的単純であるが、フィードバックチャネルを使用することを要し、スループットは変動して比較的に低い。

前方誤り訂正(FEC)符号化方式は、伝搬遅延およびレイテンシが問題となるシステムにおいて情報を符号化するために用いられる。受信器は、フィードバックチャネルを必要とせずに、誤りを検出・訂正することができる。

符号化方式は、ブロック符号および畳込み符号に大きく分類することができる。

ブロック符号は、k個の情報ビットのメッセージを、構造化されたnビット(ただし、n>k)の系列シーケンス)へとマッピングする。この符号を(n,k)符号という。比(n−k)/kを、符号の冗長度といい、全ビット数に対する情報ビット数の比k/nを符号レート符号化率)という。挿入される追加ビット冗長性を提供し、復号器誤り検出・訂正を行うために用いられる。符号化中に付加される冗長ビットは、そのメッセージブロック内のk個の情報ビットのみに依存する。ブロック符号は、ARQが実装されるときに誤りを検出するためにしばしば用いられる。

畳込み符号化は、与えられた期間におけるn個の符号ビットブロックを、k個の情報ビットから生成する。ただし、nおよびkは一般に小さい。符号器によって生成されるnビットのブロックは、その期間のk個の情報ビットだけでなく、あらかじめ規定された個数先行する期間中に生成されたメッセージブロックにも依存する。この符号化について与えられるメモリ(記憶)により、許容される符号系列に基づいて、誤りを訂正することが可能となる。畳込み復号は、ビタビアルゴリズムまたは対数MAPアルゴリズムのいずれかを用いて実行することが可能である。

畳込み復号は、データの再送およびそれに伴う遅延が許されないワイヤレス音声通信システムにとって好ましい。ブロック符号は、高いスループットを出すことが可能であり、レイテンシがあまり問題とならないデータの伝送にとって好ましい。

ターボ符号並列連接符号ともいう)は、その性能がシャノン容量限界に非常に近い符号のクラスである。ターボ符号は、畳込み符号器を並列または直列に接続して連接出力を生成することにより実現される。ある符号器から次の符号器に移るビット系列は、インタリーバによって置換並べ換え)される。このように、単一の符号器によって生成される低重み符号語は、高重み符号語に変換される。こうして、ターボ復号は、2個の低重み符号語を受け取り、ずっと高い重みの符号語の効果を得る。

現在、消費者向けワイヤレス通信方式は主に、音声の伝送に関するものである。このようなワイヤレス通信方式には、AMPS(Advanced Mobile Phone Services)、GSM(Global System for Mobile Communication)およびCDMA符号分割多元接続)がある。これらは、第1世代(1G)および第2世代(2G)の方式を代表する。データと音声の通信方式の結合とともに、データの伝送がより重要となる第2.5世代(2.5G)および第3世代(3G)の方式が現れ始めている。高い伝送レートですぐれた誤り性能を達成するためには、ターボブロック符号化が好ましい。ブロック符号化に特有のレイテンシは、音声の伝送の場合ほど重要な問題ではない。UMTS(Universal Mobile Telecommunication Service)やCDMA2000のような新しい第3世代の移動ワイヤレス標準は、データストリームについてはターボ符号化を、音声ストリームについては畳込み符号化を要求する。これらの方式は、データについて複雑なターボ復号器を、音声についてビタビ復号器を要求する。さらに、下位互換性から、第2世代標準もサポートすることが要求される。

概要

畳み込み符号とターボ符号を含む複数の符号化スキームのうちの1つの系に従って送信されたデータ送信信号復号化する単一の復号化器を提供する。

本発明の単一の復号化器は、異なるスループットレートで変動するデータストリームに基づいて必要とされる操作をダイナミックに実行するよう区分けされる。音声(畳み込み符号)とデータ(ターボ符号)を同時に復号化する。プロセッサは積層/相互接続され個別にあるいは単一の高速復号化器と強調して機能する。本発明の単一の復号化器は、マルチメディア/音声をサポートする。更に本発明の単一の復号化器は、異なる標準仕様満足する。

目的

音声およびデータの伝送は、伝送レートと、レイテンシ・伝搬遅延との競合する要求を提示する。このような問題点を解決するための現在の主流は、相異なる符号化方式、すなわち、データストリームについてターボ符号化を、音声ストリームについて畳込み符号化を、提供することである。その結果、相異なる復号器も必要となるため、複数のハードウェアプラットフォームが生じ、通信事業者コストが増大する。

効果

実績

技術文献被引用数
1件
牽制数
2件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

畳み込み符号ターボ符号を含む複数の符号化スキームのうちの1つのスキームに従って送信されたデータ送信信号復号化する、再構成可能なアーキテクチャにおいて、(a) 前記送信された信号から取り出された入力信号受領するトレリス処理構成と、新たなパスメトリックを用いて中間復号化結果を決定する新たなパスメトリックと、(b)修正された復号化結果を受領し、復号化出力を与える中間記憶装置と、(c) 前記トレリス処理装置接合され、(i)前記トレリス処理装置から出力されたパスメトリックを用いて新たなパスメトリックを形成し、(ii)前記中間復号化結果から前記修正された復号化結果を決定し、(iii)前記修正復号化結果のうち1つを選択することにより前記復号化出力を決定することにより、畳み込み復号化とターボ復号化の一方用に、前記アーキテクチャを構成するよう動作する制御プロセッサ手段と、を有することを特徴とする複数の復号化スキームのうちの1つに従って送信されたデータ通信信号を復号化する再構成可能なアーキテクチャ。

請求項2

前記制御プロセッサ手段は、ビタービアルゴリズムを用いて畳み込み復号化用のアーキテクチャを構成し、前記新たなパスメトリックは、生成されたパスメトリックを有し、前記中間復号化結果は、前記トレリス処理装置からの決定ビットを含み、前記中間記憶装置と前記制御構成は、畳み込み復号化出力を与えるために、前記中間復号化結果のトレースバック処理を実行することを特徴とする、請求項1記載のアーキテクチャ。

請求項3

前記(a)トレリス処理装置は、(a1) 前記入シンボルを受領し、中間復号化結果とパスメトリックを生成するバタフライ処理手段と、

技術分野

0001

本発明は、ワイヤレス通信に関し、特に、ワイヤレス通信システムのための復号器アーキテクチャに関する。

背景技術

0002

通信ステムは、送信器から受信器への情報の伝送を扱う。情報が通る通信媒体は、しばしば、宇宙線加法的白色ガウスノイズAWGN:Additive WhiteGauss Noise)、レイリー散乱マルチパス伝搬)および電磁ノイズなどの多くのノイズ源を含む。これらのノイズ源の存在は、所望の情報の伝送を障害ないし妨害し、通信の能力を制限する。

0003

業者に周知のように、ソース情報源)の情報から計算される冗長情報の付加により、送信されるべき情報を符号化することにより、送信情報を正しく受信する能力が改善される。復号は、受信されたデータについて、この冗長情報を用いて、誤りの存在を検出し、あるいは、最も確からしい送信ビット推定することである。送信された冗長情報が、後で受信データにより計算されたものとは異なるとき、誤りが検出される。

0004

符号語の重みは、その符号語からデータを回復することができる能力の尺度である。ビット数の大きい符号語は高い重みを有する。低い重みの符号語は、データを回復する能力が低いのに対して、高い重みの符号語は、データの回復能力が高い。

0005

自動再送要求(ARQ符号化方式は、誤り検出符号を使用する。受信された情報において誤りの存在が検出された場合、関連する情報の再送を要求するメッセージが、受信器から送信器に送られる。ARQ符号化方式は比較的単純であるが、フィードバックチャネルを使用することを要し、スループットは変動して比較的に低い。

0006

前方誤り訂正(FEC)符号化方式は、伝搬遅延およびレイテンシが問題となるシステムにおいて情報を符号化するために用いられる。受信器は、フィードバックチャネルを必要とせずに、誤りを検出・訂正することができる。

0007

符号化方式は、ブロック符号および畳込み符号に大きく分類することができる。

0008

ブロック符号は、k個の情報ビットのメッセージを、構造化されたnビット(ただし、n>k)の系列シーケンス)へとマッピングする。この符号を(n,k)符号という。比(n−k)/kを、符号の冗長度といい、全ビット数に対する情報ビット数の比k/nを符号レート符号化率)という。挿入される追加ビット冗長性を提供し、復号器が誤り検出・訂正を行うために用いられる。符号化中に付加される冗長ビットは、そのメッセージブロック内のk個の情報ビットのみに依存する。ブロック符号は、ARQが実装されるときに誤りを検出するためにしばしば用いられる。

0009

畳込み符号化は、与えられた期間におけるn個の符号ビットブロックを、k個の情報ビットから生成する。ただし、nおよびkは一般に小さい。符号器によって生成されるnビットのブロックは、その期間のk個の情報ビットだけでなく、あらかじめ規定された個数先行する期間中に生成されたメッセージブロックにも依存する。この符号化について与えられるメモリ(記憶)により、許容される符号系列に基づいて、誤りを訂正することが可能となる。畳込み復号は、ビタビアルゴリズムまたは対数MAPアルゴリズムのいずれかを用いて実行することが可能である。

0010

畳込み復号は、データの再送およびそれに伴う遅延が許されないワイヤレス音声通信システムにとって好ましい。ブロック符号は、高いスループットを出すことが可能であり、レイテンシがあまり問題とならないデータの伝送にとって好ましい。

0011

ターボ符号並列連接符号ともいう)は、その性能がシャノン容量限界に非常に近い符号のクラスである。ターボ符号は、畳込み符号器を並列または直列に接続して連接出力を生成することにより実現される。ある符号器から次の符号器に移るビット系列は、インタリーバによって置換並べ換え)される。このように、単一の符号器によって生成される低重み符号語は、高重み符号語に変換される。こうして、ターボ復号は、2個の低重み符号語を受け取り、ずっと高い重みの符号語の効果を得る。

0012

現在、消費者向けワイヤレス通信方式は主に、音声の伝送に関するものである。このようなワイヤレス通信方式には、AMPS(Advanced Mobile Phone Services)、GSM(Global System for Mobile Communication)およびCDMA符号分割多元接続)がある。これらは、第1世代(1G)および第2世代(2G)の方式を代表する。データと音声の通信方式の結合とともに、データの伝送がより重要となる第2.5世代(2.5G)および第3世代(3G)の方式が現れ始めている。高い伝送レートですぐれた誤り性能を達成するためには、ターボブロック符号化が好ましい。ブロック符号化に特有のレイテンシは、音声の伝送の場合ほど重要な問題ではない。UMTS(Universal Mobile Telecommunication Service)やCDMA2000のような新しい第3世代の移動ワイヤレス標準は、データストリームについてはターボ符号化を、音声ストリームについては畳込み符号化を要求する。これらの方式は、データについて複雑なターボ復号器を、音声についてビタビ復号器を要求する。さらに、下位互換性から、第2世代標準もサポートすることが要求される。

発明が解決しようとする課題

0013

音声およびデータの伝送は、伝送レートと、レイテンシ・伝搬遅延との競合する要求を提示する。このような問題点を解決するための現在の主流は、相異なる符号化方式、すなわち、データストリームについてターボ符号化を、音声ストリームについて畳込み符号化を、提供することである。その結果、相異なる復号器も必要となるため、複数のハードウェアプラットフォームが生じ、通信事業者コストが増大する。

課題を解決するための手段

0014

復号に関する従来技術の課題は、本発明の原理によれば、1つのアーキテクチャで畳込み復号およびターボ復号の両方を実行する単一の統合復号器によって解決される。この統合復号器のアーキテクチャは、複数のデータストリームおよび複数の音声ストリームを同時にサポートすることができる。統合復号器は、相異なるスループットレート可変数のデータストリームに対して必要な復号演算を実行するために動的に分割されることが可能である。また、統合復号器は、音声(畳込み復号)およびデータ(ターボ復号)のストリームの同時復号をサポートする。これにより、統合復号器は、TDMA、IS−95、GSM、GPRS、EDGE、UMTS、およびCDMA2000のすべての標準について、復号を行うために使用可能となる。

0015

この再構成可能なアーキテクチャは、複数の符号化方式のうちの1つに従って送信されたデータ通信信号を復号することが可能である。このアーキテクチャは、パスメトリックを用いて中間復号結果を求めるために、送信信号から導出される入力信号と新しいパスメトリックを受け取るトレリス処理装置と、修正復号結果を受け取り、復号出力を生成する中間ストアと、コントローラと、を有する。コントローラは、トレリス処理装置に接続され、トレリス処理装置から出力される生成済みパスメトリックを用いて新しいパスメトリックを形成し、中間復号結果から修正復号結果を求め、修正復号結果のうちから選択される1つから復号出力を求めることによって、畳込み復号またはターボ復号のいずれかを実行するように、アーキテクチャを構成することができる。一実施例によれば、通信復号装置は、1つの処理ループとして構成された、復号プロセッサと少なくとも1つのストアとからなる。通信復号装置は、処理ループが少なくとも2つの相異なる復号方式に従って動作することができるように処理ループを再構成することが可能な制御装置を有する。

0016

もう1つの実施例は、時間領域および空間領域の一方または両方でスケーラブル規模拡大縮小が可能)な通信復号装置に関する。本発明の原理によれば、復号装置は、アトミック処理ユニットからなる。それぞれのアトミック処理ユニットは、複数の符号化方式のうちの1つに従って提供される入力データを復号することが可能である。アトミック処理ユニットは、積み重ねて、階層スイッチング構造を用いて相互接続することが可能である。個々の処理ユニットは、別個の復号器として独立に動作することができる。また、個々の処理ユニットは、1つの所定のプロセッサを主要なプロセッサとして、単一の高速復号器を形成するように結合することも可能である。このアーキテクチャのフレキシビリティにより、入力シンボルの複数の並列ストリームを同時に処理することも可能であるし、複数の処理ユニットを結合することによって入力シンボルの単一のストリームをより高速に処理することも可能である。実施例では、2個のプロセッサのうちの一方が、提示される入力シンボルの所定の符号化方式によるトレリスを評価するようにすることによって、ビタビ計算および対数MAP計算の両方を実行することができる。本発明により実現されるフレキシビリティにより、通信事業者は、ハードウェアコスト節減し、送信信号の多様な符号化方式に動的に対応することができる。

発明を実施するための最良の形態

0017

好ましい実施例は、ワイヤレス通信システムのための統合復号器のアーキテクチャを提供する。統合復号器は、畳込み符号化およびターボ符号化がなされたデータストリームに必要な復号を実現する。統合復号器アーキテクチャは、複数のデータストリームおよび複数の音声ストリームを同時にサポートすることができる。さらに、この復号器は、必要に応じて動的に分割され、相異なる標準の音声ストリームを復号することができる。好ましい実施例はモジュール性を有するため、容易にスケーラブルとなる。

0018

図1に、ワイヤレス通信ネットワーク100を示す。UMTS基地局110は送受信器112を有し、送受信器112は、復号器モジュール150aを有する。送受信器112は、交換ネットワーク160を通じて、リモート基地局140に配置された、復号器モジュール150fを有する別のUMTS送受信器146と通信する。また、送受信器112は、復号器モジュール150iを有する移動ハンドセット160aとも通信する。送受信器146は、復号器ユニット150mを有する別の移動ハンドセット160fと通信する。

0019

基地局140は、復号器ユニット150dを有する送受信器142と、復号器ユニット150eを有する送受信器144とをさらに有する。送受信器142は、CDMA送受信器として動作し、交換ネットワーク160を通じて、CDMA送受信器132および復号器ユニット150cを有するリモートCDMA基地局130と通信するように構成される。また、送受信器142は、復号器ユニット150jを有する移動ハンドセット160dとも通信する。送受信器132は、復号器ユニット150gを有する移動ハンドセット160cと通信する。

0020

送受信器144は、交換ネットワーク160を通じて、送受信器122および復号器ユニット150bを有する、リモートに配置された基地局120と通信する。また、送受信器144は、復号器ユニット150kを有する移動ハンドセット160eとも通信する。送受信器122は、復号器ユニット150hを有する移動ハンドセット160bと通信する。

0021

送受信器112、122、132、142、144および146ならびに移動ハンドセット160a〜160fに配置される復号器ユニット150a、150b、150c、150d、150e、150f、150g、150h、150i、150j、150kおよび150mは、相異なるセルラネットワーク標準に準拠するように構成された、統合復号器アーキテクチャの実施例である。

0022

図1の統合復号器アーキテクチャは、複数のネットワーク標準を運用している通信会社に対して、フレキシビリティおよびコスト削減の点で多大な利益を提供する。というのは、同じ復号器ブロックが、相異なるネットワークコンポーネントにおける多くの相異なる符号化方式を実現するために使用可能であるからである。

0023

図2に、送信器210から受信器270への情報の伝送を改善するために符号化が用いられる通常の通信システム200を示す。送信器210は、入力データストリームを符号器220に供給する情報源205を有する。符号器220では、通信チャネル240に存在するノイズ源の結果として情報の伝送中に生じうる誤りを検出・訂正する能力を改善するように、あらかじめ規定された符号化アルゴリズムに従って入力データストリームに冗長情報が付加される。符号化された入力ストリームは、続いて、その符号化データストリーム送信波形印加するために変調される(230)。符号化された情報は、チャネル240を通じて伝送される。チャネル240は、それに作用する多くのノイズ源280を有する。チャネル240は、受信器270に結合する。受信器270は、変調器230に対応する復調器250を有し、復調器250は、復号器260への出力を生成し、復号器260は、受信情報信号275を出力する。

0024

図3に、復号器260が一般のビタビ復号器である通信システム200を示す。ビタビ復号器260への入力は、チャネル240から受信される符号化情報である。ビタビ復号器は、枝メトリック計算器BMC:branch metric calculator)ユニット289を有する。BMCユニット289の出力は、加算比較選択(ACS)ユニット291に提供される。状態コントローラ290は、BMCユニット289、ACSユニット291およびパスメトリックメモリ292に入力を提供する。パスメトリックメモリ292は、二重バッファとして作用し、ACSユニット291と情報を交換する。ACSユニット291のボロー出力294は、トレースバックメモリ・コントローラ293に提供され、トレースバックメモリ・コントローラ293の出力は受信情報信号275となる。

0025

図4に、図2の復号器260のターボ復号構成を示す。ターボ復号器における受信シンボルは、送信された実際のデータを表す組織データと、パリティデータとからなる。第1入力261は、受信シンボルのパリティデータであり、デマルチプレクサ263に提供される。デマルチプレクサ263の第1出力264は、第1復号器266に提供される。第2入力262は、受信シンボルの組織データであり、第1復号器266に提供される。再帰入力277もまた、第1復号器266に提供される。第1復号器266の出力267は、インタリーバ268に提供され、インタリーバ268の出力269は、第2復号器271に提供される。デマルチプレクサ263の第2出力265もまた、第2復号器271に提供される。第2復号器271の第1出力272は、第1デインタリーバ274に提供され、第1デインタリーバ274の出力は再帰入力277となる。第2復号器271の第2出力273は、第2デインタリーバ276に提供される。第2デインタリーバ276の出力は、スライサ278に提供され、スライサ278は、ソフト(軟)出力にしきい値を適用してそれをハード(硬)出力に変換し、受信情報信号275とする。

0026

好ましい実施例の統合復号器アーキテクチャは、音声およびデータの両方の機能を有するワイヤレス通信システムにおける復号器260を置き換えることを意図しており、ビタビ復号および対数MAPターボ復号に必要な計算の類似性活用して、メモリおよび処理ユニットが、これらのいずれの方式のために設定されるときにも効率的に使用されるようにする。対数MAPは、畳込み符号の復号に利用可能なアルゴリズムである。対数MAPはまた、ターボ復号反復の半サイクルにも用いられる。好ましい実施例におけるプロセッサは、互いに積み重ねられ、階層スイッチング構造を用いて相互接続されることにより、それらのプロセッサは、別個の復号器として独立に動作することも可能であり、また、1つの所定のプロセッサを主要なプロセッサとして単一の高速復号器を形成するように結合することも可能である。

0027

図5に、本発明の実施例による統合復号器構造900のブロックアーキテクチャを示す。特定の伝送に対してあらかじめ合意された符号化方式のアルファベットからのマルチビット入力シンボル901が、バタフライ復号プロセッサバンク920にブロードキャストされる。バタフライ復号プロセッサバンク920はまた、第1ストアバンク940の出力を、入力として受け取る。制御ユニット960は、中間復号結果メモリ910、バタフライ復号プロセッサバンク920、第1ストアバンク940および第2ストアバンク950のそれぞれに入力を提供する。制御ユニット960は、必要に応じて畳込み符号化またはターボ符号化を実行するために、それらの入力を通じて適当な制御信号発行する。

0028

図5の実施例は、1ロー(行)復号器のものである。複数の復号器ローを相互接続して単一の復号器を形成するとき、その単一復号器内のそれぞれの復号器ローには、同じマルチビット入力シンボル901が提供される。複数の復号器ローが複数の復号器として作用するとき、実現されるそれぞれの復号器には、別個のマルチビット入力シンボル901が提供される。

0029

バタフライ復号プロセッサバンク920は、第1出力962、964、966および968を生成し、これらは、バス990を通じて第2ストアバンク950に送られる。第2ストアバンク950の出力は、第1ストアバンク940に入力される。復号器の一般的な実施例は通常、第1ストアバンク940および第2ストアバンク950を二重バッファリングモードで使用する。

0030

バタフライ復号プロセッサバンク920は、第2出力961、963、965および967を生成し、これらは、制御ユニット960に提供される中間復号結果となる。

0031

バタフライ復号プロセッサバンク920と、少なくとも1つのストアを通じてのループフィードバック接続は、トレリスプロセッサとしてのループ機能を形成する。

0032

中間復号結果メモリ910は、復号出力999を生成する。中間復号結果メモリ910は、対数MAPアルゴリズムを計算する際に制御ユニット960に再帰結果を提供することが可能である(後述)。

0033

図6に、本発明の好ましい実施例による統合復号器1200のブロックアーキテクチャを示す。統合復号器1200の制御ユニット1210は、レート1201、拘束長1202、畳込み・ターボセレクタ1203、多項式1204、トレリス方向1205、反復数1206、ブロック長1207、クロック1208およびリセット1209を含む複数の入力を受け取る。レート1201は、送信ブロックに存在する1個のデータビット表現するために使用される情報の量を示す。拘束長1202は、提供される入力情報ビットを符号化するために使用される先行入力シンボル数を示し、従って、与えられた1個の入力シンボルを復号するために処理されるトレリスの複雑さの指標でもある。多項式1204は、復号プロセスで用いられる生成多項式係数である。反復数1206は、ターボモードで動作するときに復号器1200によって実行されるループ回数を定める。反復数1206の値が大きいほど、計算時間の増大という犠牲のもとで、復号出力1294の精度が高いことを示す。

0034

制御ユニット1210は、中間復号メモリ・プロセッサ1240、対数尤度プロセッサ1250aおよび1250b、マルチプレクサバンク1250c、比較器1247、バタフライ復号プロセッサ1260、逆アドレスプロセッサ1270、正規化減算器1278、マルチプレクサバンク1278a、パスメトリックストア1280、順アドレスプロセッサ1290、対数尤度比プロセッサ1297ならびに入力シンボル履歴1298と相互接続される。制御ユニット1210は、これらの接続を通じて統合復号器1200のアーキテクチャを再構成することにより、必要に応じて、畳込み復号器またはターボ復号器のいずれを実現することも可能である。

0035

入力シンボル1299は、入力シンボル履歴1298に提供される。入力シンボル履歴1298は、一定のデータフローが維持されることを保証するための二重バッファとして作用する。入力シンボル履歴1298はまた、入力シンボル履歴バンクセレクト1211、入力シンボル履歴アドレス1219、入力シンボル履歴クロック1223および入力シンボル履歴リセット1225を制御ユニット1210から受け取る。入力シンボル履歴1298は、第1出力1291aと第2出力1291bを生成する。第1出力1291aはバタフライ復号プロセッサ1260に提供され、第2出力1291bは対数尤度プロセッサ1250aに提供される。

0036

バタフライ復号プロセッサ1260はまた、入力として、逆トレリスパスメトリック1265を逆アドレスプロセッサ1270から、外部情報を中間復号メモリ・プロセッサ1240から受け取る。制御ユニット1210はまた、バタフライリセット1215、バタフライレート1216、バタフライクロック1217、バタフライ多項式1218、バタフライ拘束1220、バタフライモード1221およびベータフェーズイネーブル1235を含む複数の入力を、バタフライ復号プロセッサ1260に提供する。

0037

バタフライ復号プロセッサ1260は、トレリスダイヤグラムにおける対応する1つの状態に対する新しい複数ビットのパスメトリックを生成する。この新しいパスメトリックは、32ビットバス1266および1267上に出力される。32ビットバス1266および1267は、比較器1247およびマルチプレクサバンク1250cに接続される。バタフライ復号プロセッサ1260はまた、判定ビット1255を生成する。判定ビット1255は、中間復号メモリ・プロセッサ1240に入力される。

0038

対数MAP計算の第1フェーズにおいて、バタフライ復号プロセッサ1260はガンマおよびアルファを計算する。第2フェーズにおいて、バタフライ復号プロセッサ1260は、第1フェーズで対数尤度プロセッサ1250aおよび対数尤度プロセッサ1250bによって計算されたダミーベータを用いて、ベータを計算する。

0039

図7に示されるように、バタフライプロセッサバンク1260内のそれぞれのバタフライプロセッサは、2個の加算比較選択ユニット(ACSとして図示)320と、中間枝メトリック計算器(BMC)330を含む。BMC330は、周知のビタビ復号器における枝メトリックユニット(BMU:Branch Metric Unit)と同じ機能を実行し、それぞれのACS320は、トレリス復号に対するパスメトリック計算を実行する。

0040

図7に、図6のバタフライプロセッサ1260の例示的なバタフライユニットを示す。これは、2個の加算比較選択ユニット320と、1個の中間枝メトリック計算器330を有する。それぞれの加算比較選択ユニット320には、入力パスメトリック0(1265a)および入力パスメトリック1(1265b)が提供される。入力シンボル1291aおよび外部情報1242は、バタフライプロセッサバンク1260内のそれぞれの枝メトリック計算器330にブロードキャストされる。中間枝メトリック計算器には、バタフライレート1216、バタフライ拘束1220およびバタフライ多項式1218も提供される。

0041

トレリスの1つのコラム(列)内の各状態は、それに至る1対の枝メトリックを有する。それぞれの枝メトリックには、1個のシンボルが関連づけられる。したがって、与えられた向きにトレリスをたどると、注目している1つの状態について、2個の可能なシンボルのうちの一方が、前の状態に依存して期待される。BMC330は、受け取った入力シンボル1291aの、期待されるシンボルへの近接性の尺度を決定する。BMC330は、出力枝メトリック0(406)を生成し、これは、mビット幅のバスを通じて、第1ACSユニット0(320)および第2ACSユニット1(320)に提供される。BMC330は、トレリスの対称性を活用して、枝メトリック0(406)を算術的反転させることによって、第2の枝メトリック1(402)を生成する。枝メトリック1(402)は、同じくmビット幅のバスを通じて、第1ACSユニット0(320)および第2ACSユニット1(320)に提供される。バタフライモード1221は、それぞれのACSユニット320に提供され、使用する符号化方式のためにそれらを適当に設定する。ACSユニット320およびBMCユニット330はまた、バタフライリセット1215、バタフライクロック1217およびベータフェーズイネーブル1235も受け取る。

0042

。それぞれのACSユニット320は、2個の出力を生成する。これらの出力は、図7のACS0の場合、第1出力1255aおよび第2出力1267aからなる。第1出力1255aは、比較ボロービットの値をとる判定ビットであり、上側または下側のいずれの可能パスメトリックを選択するかを示す。値0の判定ビットは、下側の可能パスメトリックが選択されることに対応し、他方、値1の判定ビットは、上側の可能パスメトリックが選択されることに対応する。第2出力1267aは、トレリスダイヤグラムにおける対応する1つの状態に対する新しい複数ビットのパスメトリックである。ACS1は、対応する出力1255bおよび1267bを生成する。

0043

図8に、図7のACSユニット0(320)のアーキテクチャを示す。2対の入力402と1265b、および、406と1265aがそれぞれ、加算器410および412に提供される。第1の入力の対は、枝メトリック1(402)およびパスメトリック1(1265b)からなり、第2の入力の対は、枝メトリック0(406)およびパスメトリック0(1265a)からなる。それぞれの入力対の構成要素は、それぞれの加算器410および412で加算され、加算器410および412の対応する出力411および413は、全減算器414に提供される。出力411および413はまた、第1の2対1マルチプレクサ420にも提供される。全減算器414のボロー出力1255aは、入力値最大値MAXを計算するために、第1マルチプレクサ420に供給される。ボロービット1255aはまた、ACSユニット320の出力としても提供され、値0は下側パスメトリックが選択されたことを示し、値1は上側パスメトリックが選択されたことを示す。

0044

全減算器414の第2出力415は、2個の加算器結果411および413の差を表し、対数和補正テーブル440に提供される。対数和補正テーブル440は、全減算器414の出力が小さいときに、対数MAP復号の場合に対数領域における結果の精度を高めるために、新しいパスメトリックの結果を調整する。対数和補正テーブル440の出力441は、加算器460に提供される。第1マルチプレクサ420の出力421は、加算器460と、第2の2対1マルチプレクサ450に提供される。加算器460からの結果461は、第2マルチプレクサ450に第2の入力として提供される。バタフライモード1221である制御信号もまた、第2マルチプレクサ450に入力され、ビタビ符号化方式または対数MAP符号化方式のいずれが実行されているかを判断するために用いられる。第2マルチプレクサ450は、出力451を生成し、これは、累算レジスタ470および別のマルチプレクサ480に供給される。累算レジスタ470は、バタフライリセット1215を受け取り、マルチプレクサ480への出力472を生成する。マルチプレクサ480は、イナクティブ時に出力451を選択し、アクティブ時に累算レジスタ470からの出力472を選択するセレクト(選択)信号として、ベータフェーズイネーブル1235を受け取る。マルチプレクサ480からの選択された出力は、ACSユニット320の出力パスメトリック1267aである。

0045

マルチプレクサバンク1250cは、制御ユニット1210からセレクト信号1258を受け取る。セレクト信号1258は、バタフライプロセッサ1260から出力されるバタフライパスメトリック1266および1267か、あるいは、対数尤度プロセッサ0(1250a)および対数尤度プロセッサ1(1250b)により生成されるパスメトリックかのいずれかを選択するために用いられる。ビタビ計算中は、バタフライパスメトリック1266および1267が選択される。対数MAP計算の第1フェーズにおいては、バタフライパスメトリック1266および1267が選択される一方、バタフライ復号プロセッサ1260はガンマおよびアルファを計算する。同時に、対数尤度プロセッサ0(1250a)はダミーベータを計算する。第1フェーズの終了時に、対数尤度プロセッサ0(1250a)によって生成されたパスメトリックが、マルチプレクサバンク1205cによって選択され、対数尤度計算の第2フェーズでベータを計算することを可能にするためにブロードキャストされる。

0046

マルチプレクサバンク1205cは、下側パスメトリックバス1295および上側パスメトリックバス1296上に、新しいパスメトリックを出力する。バス1295および1296は、対数尤度プロセッサ1250aおよび1250b、マルチプレクサバンク1278aならびに順アドレスプロセッサ1290に接続される。

0047

順アドレスプロセッサ1290は、順トレリスセレクト1232、順トレリスホールド1234、順トレリス透過ビット1236およびパスメトリック入力MUXセレクト1238を制御ユニット1210から受け取る。これらは、統合復号器1200がトレリスを順方向または逆方向のいずれの方向にたどるために使用されているかに従って、順アドレスプロセッサ1290を設定するために用いられる。

0048

順アドレスプロセッサ1290は、トレリスを順方向にたどっているときに、トレリスの次のコラムの計算のために、パスメトリックの見かけ上順次リストがバタフライプロセッサ1260に提供されるように、バス1295および1296を通じて受け取られる新しいパスメトリックを並べ換える。トレリスを逆方向にたどっているときは、順アドレスプロセッサ1290は透過的に作用する。

0049

パスメトリックストア1280は、順アドレスプロセッサ1290から出力される順トレリスパスメトリック1285を受け取るほか、制御ユニット1210から、アドレシング情報DDR0(1228a)およびADDR1(1228b)、パスメトリックリセット1230ならびにパスメトリックリードライトクロック1231を受け取る。パスメトリックストア1280は、記憶されているパスメトリック1276を、マルチプレクサバンク1278aと、対数尤度プロセッサ1250aおよび1250bに出力する。

0050

マルチプレクサバンク1278aは、複数の復号器ロー構成に対する相互接続点として用いられ、記憶パスメトリック1276、制御ユニット1210からの制御信号1278b、ならびに、バス1295および1296上の新しいパスメトリックを受け取る。マルチプレクサバンク1278aは、対数MAP計算中にベータ計算の初期化を行い、正規化減算器1278への出力1277を生成する。

0051

比較器1247は、バス1266および1267を通じてバタフライ復号プロセッサ1260からバタフライパスメトリックを受け取り、最大の新しいパスメトリックを決定する。この最大新パスメトリックは、記憶されている最大パスメトリックと比較され、それらの2つの値のうちの大きいほうが、正規化出力1246として提供される。正規化出力1246は、正規化減算器1278と、中間復号メモリ・プロセッサ1240に送られる。

0052

正規化減算器1278は、マルチプレクサバンク1278aからの出力1277を受け取り、パスメトリックがアーキテクチャのダイナミックレンジ内に含まれることを保証するために、正規化出力1246を減算する。正規化されたパスメトリック1275は、逆アドレスプロセッサ1270と、対数尤度プロセッサ1250aおよび1250bに出力される。逆アドレスプロセッサ1270はまた、入力として、対数尤度イネーブル1214、対数尤度0イネーブル12030および対数尤度1イネーブル12031、逆トレリスセレクト1222、逆トレリスホールド1224ならびに逆トレリス透過ビット1226を制御ユニット1210から受け取る。制御ユニット1210からの入力は、復号器1200がトレリスを順方向または逆方向のいずれの方向にたどっているかに依存して、逆アドレスプロセッサ1270を適当に設定するために用いられる。逆アドレスプロセッサ1270の出力は、逆トレリスパスメトリック1265として、バタフライ復号プロセッサ1260に提供される。

0053

逆アドレスプロセッサ1270は、トレリスを逆方向にたどっているときに、トレリスの次のコラムの計算のために、パスメトリックの好ましい系列がバタフライプロセッサ1260に提示されるように、正規化パスメトリックを並べ換える。トレリスを順方向にたどっているときは、逆アドレスプロセッサ1270は透過的に作用する。

0054

対数尤度プロセッサ1250aは、対数尤度モード1214a、逆トレリスホールド1224a、逆トレリス透過ビット1226a、対数尤度レート1248a、対数尤度拘束1249a、対数尤度クロック1251a、対数尤度リセット1252a、対数尤度多項式1253a、対数尤度0イネーブル1203a0、対数尤度イネーブル1203a1、逆トレリスセレクト1222a、およびセレクト信号1258aを制御ユニット1210から受け取る。対数尤度プロセッサ1250aはまた、入力として、正規化パスメトリック1275、入力シンボル履歴1298からの出力1291b、記憶パスメトリック1276、バス1296および1295上の新しいパスメトリックならびにインタリーバ外部情報1256も受け取る。対数尤度プロセッサ1250aは、第1出力1245aを生成し、これは、対数尤度比プロセッサ1297に提供される。対数尤度プロセッサ1250aはまた、入力1266′および1267′をマルチプレクサバンク1250cに提供する。

0055

第2の対数尤度プロセッサ1250bは、対応する入力1214b、1224b、1226b、1248b、1249b、1251b、1252b、1253b、1203b0、1203b1、1222bおよび1258bを制御ユニットから受け取る。対数尤度プロセッサ1250bはまた、入力として、正規化パスメトリック1275、記憶パスメトリック1276、インタリーバ外部情報1256ならびにバス1296および1295上の新しいパスメトリックも受け取る。対数尤度プロセッサ1250bは、出力1245bを生成し、これは、対数尤度比プロセッサ1297に提供される。

0056

対数尤度プロセッサ1250aは、対数MAP計算の第1フェーズにおいて、ダミーベータを計算するために使用される。対数MAP計算の第2フェーズでは、対数尤度プロセッサ1250aおよび1250bは、バタフライ復号プロセッサ1260とともに使用され、それぞれ「1」および「0」に対する対数尤度結果を生成する。

0057

中間復号メモリ・プロセッサ1240は、ビタビ計算中は、出力を生成するためのバッファとして作用する。対数MAP計算中には、中間復号メモリ・プロセッサ1240は、パスメトリックストア1280の拡張ストアとして作用する。中間復号メモリ・プロセッサ1240は、中間復号モード1212、中間復号方向1237、拡散入力1243、リード/ライトクロック1257、リセット1259およびクロッキング信号1254を制御ユニット1210から受け取る。中間復号メモリ・プロセッサ1240はまた、正規化出力1246および判定ビット1255を受け取る。中間復号メモリ・プロセッサ1240は、外部情報1242およびトレースバックプロセッサ出力1567を対数尤度比プロセッサ1297に提供し、対数尤度比プロセッサ1297から入力1293を受け取る。中間復号メモリ・プロセッサ1240はまた、インタリーバ外部情報1256を対数尤度プロセッサ1250aおよび1250bに出力する。

0058

対数尤度比プロセッサ1297は、対数尤度プロセッサ1250aおよび1250bから出力1245aおよび1245bを受け取るとともに、ハード・ソフト出力セレクト1213および拡散入力1243を制御ユニット1210から受け取る。対数尤度比プロセッサ1297はまた、入力として、中間復号メモリ・プロセッサ1240の外部情報1242と、スクランブルアドレスデータ1286を受け取る。対数尤度比プロセッサ1297は、復号出力1294と、中間復号メモリ・プロセッサ1240への出力1293とを生成する。

0059

出力1245aおよび1245bはそれぞれ、復号出力が「1」および「0」である確率を表す。対数尤度比プロセッサ1297は、出力1245aと1245bの減算を対数領域で実行する。これは、真数領域で除算を実行することと等価である。この減算の結果が復号出力1294を提供する。対数尤度比プロセッサ1297はまた、出力1245aおよび1245bと外部情報1242を減算して、出力1293を生成する。これは新しい外部情報を表す。

0060

最大拘束長kの符号は、2k−1状態のトレリスダイヤグラムを生成する。図9に、最大拘束長6の符号に対応する32状態生トレリスダイヤグラム1000を示す。時刻Stにおける32個の状態1002のそれぞれは、時刻St+1における32個の状態1004のうちの1つにマッピングされる2個の可能な枝メトリックを有する。例えば、時刻Stにおける状態0(1003)は、時刻St+1における状態0(1009)および状態16(1007)に至る枝メトリック1006および1008を有する。

0061

32状態生トレリスダイヤグラム1000は、同じトレリスの16個の対応するバタフライ接続1010によって表現することも可能である。図からわかるように、トレリスの1つのコラム1012における状態対が、トレリスの次のコラム1014における対応する状態対にマッピングされる。時刻St+1におけるトレリス状態1014は、結果として得られるパスメトリックを表す。それぞれのバタフライ接続1010は、単一のバタフライプロセッサ1260によって処理されることも可能である。本発明の好ましい実施例によれば、図6に示したように、4個のバタフライプロセッサ1260が設けられる。これにより、各クロックサイクルにおいて、8個の結果パスメトリック位置を計算することが可能である。

0062

図10に、32状態トレリスダイヤグラムに対する結果パスメトリック位置1014を示す。32個の結果パスメトリック位置は、4個のコラム1022、1024、1026および1028に並べ換えられている。各コラムは、4個のバタフライプロセッサによって生成される8個の結果パスメトリック位置を含む。

0063

トレリス演算は、それぞれ1クロックサイクルに対応するいくつかのサブトレリス演算を含む。図11A、図11B、図11C、図11Dおよび図11Eは、本発明の好ましい実施例がインプレースパスメトリックアドレシングを実行するプロセスを示す。図11Aは、時刻t=1を示す。これは、第1サブトレリス演算に対応し、この演算で、8個の新パスメトリック1112が入力される。0、1、2および3を表す新パスメトリック1112は、パスメトリックストア1280の上側メモリブロックB0に対応するメモリ1102の第1コラムに書き込まれる一方、パスメトリック16、17、18および19は、4個の保持レジスタ1114に書き込まれる。パスメトリック16、17、18および19は、メモリに書き込まれる前に1クロックサイクルの間保持される。それらが書き込まれることになるメモリ位置は、トレリス状態8〜15に対する新パスメトリックの計算が完了する次のクロックサイクルまで利用可能にならないからである。

0064

図11Bに示すように、次のクロックサイクルt=2において、さらに8個の新パスメトリック1122が入力される。新しいパスメトリック位置4、5、6および7に対応するパスメトリック1122が、パスメトリックストア1280の下側メモリブロックB1に対応するメモリ1104の第1コラムに書き込まれる。保持レジスタ1114の内容が、パスメトリックストア1280のB0に対応するメモリ1102の第2コラムに書き込まれ、パスメトリック位置20、21、22および23に対応する新パスメトリックが、保持レジスタ1114の新しい内容として書き込まれる。

0065

図11Cに示す第3のクロックサイクルにおいて、さらにもう1つのグループの新パスメトリック1134が提供される。状態8、9、10および11に対応する新パスメトリックが、パスメトリックストア1280のB0に対応するメモリ1102の第3コラムに書き込まれ、状態20、21、22および23である保持レジスタ1114の内容が、パスメトリックストア1280のB1に対応するメモリ1104の第2コラムに書き込まれる。

0066

図11Dは、第4クロックサイクルを示す。このクロックサイクル中に、最後の8個の新パスメトリック1144が提供される。状態12、13、14および15に対応するこれらの新パスメトリックは、パスメトリックストア1280のB1に対応するメモリ1104の第3コラムに書き込まれ、状態24、25、26および27に対応する保持レジスタの内容は、パスメトリックストア1280のB0に対応するメモリ1102の第4コラムに書き込まれ、状態28、29、30および31に対応する新パスメトリックは保持レジスタ1114に書き込まれる。

0067

図11Eに示すように、保持レジスタ1114の内容を、パスメトリックストア1280のB1に対応するメモリ1104の第4コラムに書き込むために、t=5に対応する次のクロックサイクルが必要である。

0068

図12は、本発明の好ましい実施例による、32状態トレリスに対するパスメトリックコラムのアドレシングを表す。パスメトリックコラムのアドレシング順序1150は、パスメトリックコラムのリード/ライトアドレスに対応する。テーブル1160の各ローは、シンボル時刻n(Sn)、シンボル時刻n+1(Sn+1)およびシンボル時刻n+2(Sn+2)を表す、トレリスダイヤグラムの相異なるコラムに対応する。明らかなように、パスメトリックコラムのアドレスの移動は周期的である。

0069

図11A〜Eは、SnからSn+1への進行を示している。次のクロックサイクルt=6は、Sn+1からSn+2への遷移を開始させ、状態の順次リストをACSユニットに提供するために、コラム0、2、1、3が実行されることになる。

0070

図13図14a、図14b、図14c、図14dおよび図14eに、本発明の好ましい実施例が逆トレリスをたどる間にインプレースパスメトリックアドレシングを実行するプロセスを示す。図13は、図14a〜eで用いる記法を示す。図14aは、時刻t=1を示し、第1のサブトレリス演算に対応する。メモリAの第1コラムC0Aにあるパスメトリックは、保持レジスタ3010にシフトされている。図14bでは、時刻t=2において、メモリBの第1コラムC0Bが保持レジスタ3010に移動され、C0AとC2Aの関数が結果パスメトリックC0A′およびC0B′を形成し、これらの結果パスメトリックがそれぞれメモリAおよびBの第1コラムに書き込まれる。図14cでは、メモリAの第2コラムC1Aが保持レジスタ3010に入れられる。保持レジスタの前の内容C0BとC2Bの関数が、新パスメトリックC1A′およびC1B′を形成し、これらの新パスメトリックがそれぞれAおよびBの第3コラムに書き戻される。

0071

図14dでは、時刻t=4において、C1Bが保持レジスタ3010に書き込まれる。C1AとC3Aの関数が新パスメトリックC2A′およびC2B′を生成し、これらの新パスメトリックがそれぞれメモリAおよびBの第2コラムに書き込まれる。図14eは、時刻t=5に対応する逆サブトレリス演算であり、この時刻には、C1BおよびC3Bの関数が結果パスメトリックC3A′およびC3B′を形成し、これらの結果パスメトリックがそれぞれメモリAおよびBの第4コラムに書き込まれる。逆トレリスの計算において、パスメトリックはスクランブルされて4個のバタフライプロセッサに提供され、図14a〜図14eで説明したインプレースパスメトリックアドレシングは、結果パスメトリックが順次(シーケンシャルに)提供されることを保証する。

0072

図15は、中間復号メモリ・プロセッサ1240の実施例の高レベル概略ブロック図である。これは、それぞれの復号方式におけるトレースバックおよびインタリーバの機能を実行する。中間復号メモリ・プロセッサ1240は、入力として、判定ビット1255、正規化出力1246、拡散入力1243、中間復号方向1237、中間復号モード1212、クロッキング信号1254、リード/ライトクロック1257、リセット信号1259、および、対数尤度比プロセッサ1297からの出力1293を受け取る。中間復号メモリ・プロセッサ1240は、外部情報1242、インタリーバ外部情報1256およびトレースバックプロセッサ出力1567を含む出力を生成する。

0073

図16は、中間復号メモリ・プロセッサ1240の分解図である。トレースバックアドレスコントローラ1510は、入力として、判定ビット1255、中間復号方向1237、正規化出力1246、クロッキング信号1254、リセット信号1259、リード/ライトクロック1257、および、中間復号モード1212を反転したものを受け取る。トレースバックアドレスコントローラ1510は出力1567を生成する。

0074

トレースバックアドレスコントローラ1510は、毎クロックサイクルに、判定ビット1255をウィンドウメモリサブシステム1530に書き込む。トレースバック中に、トレースバックアドレスコントローラ1510は、トレリスセクション検査し、始点として使用すべき最大値を決定する。なお、各状態について完全に値を記憶する必要はない。新しいトレースバックバイトアドレスは、判定ビット1255のうちの1つを用いて生成することができるからである。

0075

インタリーバコントローラ1520もまた、クロッキング信号1254、リセット信号1259、リード/ライトクロック1257および中間復号モード1212を受け取る。さらに、インタリーバコントローラ1520は、対数尤度比プロセッサ1297からの出力1293、拡散入力1243、および、中間復号方向1237も受け取る。インタリーバコントローラ1520は、外部情報1242および1256を生成する。外部データ1242は、復号器1200がターボ復号器として動作するときには、バタフライプロセッサ1260への再帰入力として使用される。

0076

インタリーバコントローラ1520は、毎クロックサイクルの最初に外部情報1242および1256を生成する。毎クロックサイクルの最後に、インタリーバコントローラ1520は、対数尤度比プロセッサ1297からの出力1293の形で新しい外部情報を受け取り、それをメモリに書き込む。

0077

トレースバックアドレスコントローラ1510とインタリーバコントローラ1520は相互接続され、結合リードライト信号1515をウィンドウメモリサブシステム1530に供給する。トレースバックアドレスコントローラ1510、インタリーバコントローラ1520およびウィンドウメモリサブシステム1530はさらに、双方向データバス1526およびアドレスバス1525によって相互接続される。インタリーバコントローラ1520は、ウィンドウメモリサブシステム1530に接続された第2のアドレスバス1535を有し、ウィンドウメモリサブシステム1530は、第2のデータバス1536上にインタリーバコントローラ1520への出力を生成する。

0078

図17に、トレースバックプロセッサ1510を示す。判定ビット1255が第1マルチプレクサ1550に提供される。マルチプレクサ1550の出力は判定レジスタ1555に提供される。判定レジスタ1555の出力はデータ1526であり、これは、トレースバックプロセッサ1510の出力として提供されるとともに、第1マルチプレクサ1550の再帰入力としてフィードバックされ、また、ビットセレクト1558に入力される。

0079

中間復号方向1237は、アドレス変換ユニット1560に入力される。アドレス変換ユニット1560はまた、リード/ライトクロック1257を受け取り、出力アドレス1525およびリード/ライト信号1515を生成する。リード/ライトクロック1257は、第1マルチプレクサ1550のセレクト信号としても提供される。

0080

正規化出力1246は、状態レジスタ1562に入力される。状態レジスタ1562の出力は、アドレス変換ユニット1560に入力されるとともに、前状態ユニット1564への入力となる。前状態ユニット1564は、2個の入力を第2マルチプレクサ1566に提供し、第2マルチプレクサ1566の出力はトレースバックプロセッサ出力1567となる。

0081

ビットセレクト1558の出力は、第1ANDゲート1568に入力される。ANDゲート1568の出力は、状態レジスタ1562に入力される。ビットセレクト1558の出力は、第2ANDゲート1569にも提供され、第2ANDゲート1569の出力もまた状態レジスタ1562に提供される。

0082

中間復号方向1237は、第1ANDゲート1568に第2入力として提供されるとともに、マルチプレクサ1566のセレクト入力となる。中間復号方向1237はまた、NOTゲート1570を介して、第2ANDゲート1569にも提供される。

0083

図18に、図16のインタリーバコントローラ1520を示す。中間復号モード1212が、ANDゲート1580に提供され、ANDゲート1580の出力は、2個のトライステートバッファ1582および1583に提供される。ANDゲート1580への他方の入力は、拡散入力1243を反転したものである。トライステートバッファ1582はまた、入力として、リード/ライトクロック1257も受け取る。第2トライステートバッファ1583は、その第2入力として、対数尤度比プロセッサ1297からの出力1293を受け取る。対数尤度比プロセッサ1297からの出力1293は、2個の論理ブロック1584および1586にも入力される。拡散入力1243は、リセット信号1259、およびクロック信号1254とともに、論理ブロック1584および1586のそれぞれに提供される。インタリーバ1520は、データバス1526を入力として受け取り、対応する出力を外部情報1242として提供する。第2データバス1536は、インタリーバ外部情報1256として出力される。データバス1526は双方向であり、インタリーバ1520からデータバス1526への出力は、トライステートバッファ1583の出力である。

0084

第1論理ブロック1584は、中間復号モード1212および中間復号方向1237を受け取り、アドレス1525を生成する。第2論理ブロック1586もまた、中間復号モード1212および中間復号方向1237を受け取り、アドレス1535を生成する。論理ブロック1584および1586のそれぞれは、入力BETA_Dも受け取る。これは、ロー(LOW)またはハイ(HIGH)パワー信号である。

0085

図19は、図18の論理ブロック1584の分解図である。図18の論理ブロック1586は同じ構成を有する。ウィンドウカウント1590は、入力として、リセット1259、クロック1254およびイネーブル1212を受け取る。ウィンドウカウント1590はまた、入力として、第1加算器1592の出力も受け取る。ウィンドウカウント1590は、加算器1592および1593に提供される出力を生成する。第1加算器1592は、第2入力として、定数1599を受け取り、出力をウィンドウカウント1590に提供する。ビットカウント1591は、入力として、リセット1259、クロック1254、イネーブル1212および第3加算器1594の出力を受け取る。ビットカウント1591は、2個の加算器1593および1594に提供される出力を生成する。BETA_Dは、要素1595に提供される。要素1595は、1を加算し、BETA_Dがアクティブである場合、値のNOTをとり、結果を第3加算器1594への第2入力として提供する。加算器1594の出力は、ビットカウント1591に再帰入力として提供される。

0086

第2加算器1593の出力は、マルチプレクサ1596およびスクランブル1597に入力される。マルチプレクサ1596は、アーキテクチャが第1または第2のいずれの復号器として動作しているかを示すセレクト信号を受け取る。第2入力はスクランブル1597の出力である。マルチプレクサ1596の出力は、アドレス1525である。スクランブル1597は、拡散入力1243をイネーブル信号として受け取り、対数尤度比プロセッサ1297からの出力1293をデータとして受け取る。スクランブル1597は、当業者に周知のメモリあるいは論理機能とすることが可能であり、ターボ復号器計算を実行する際に第1と第2の復号器間でアドレスのスクランブルを実行するために使用される。

0087

図20は、図15のウィンドウメモリサブシステム1530の概略ブロック図である。リード/ライトクロック1515、アドレスバス1525および1535、ならびにデータバス1526および1536が、ウィンドウアドレスデコーダ1530aおよびウィンドウメモリ1530b〜1530dに提供される。

0088

図21に、図6の対数尤度プロセッサ1250aを示す。4個のバタフライユニットのバンク1410が設けられ、このバンクを構成するACSユニット1412a〜1412hには、逆トレリスパスメトリック1415a〜1415hの対が逆アドレスプロセッサ1270bから、および、記憶パスメトリック1276がパスメトリックストア1280から提供される。記憶パスメトリック1276は、対数MAP計算におけるアルファを表す。ACSユニット1412a〜1412hのそれぞれには、対数尤度モード1214a、対数尤度クロック1251aおよび対数尤度リセット1252aも提供される。BMCユニット1414a〜1414dにはそれぞれ、対数尤度レート1248a、対数尤度拘束1249a、対数尤度多項式1253a、インタリーバ外部情報1256および入力シンボル履歴1291bを含む複数の入力が提供される。ACSユニット1412a〜1412hは、第1出力1413a〜1413hを生成する。これらの第1出力は、順序対として、ACSノードユニット1420a〜1420dに提供される。ACSユニット1412a〜1412hは、第2出力480a〜480hを生成する。第2出力480a〜480hのそれぞれは、対応する正規化減算器1470a〜1470hに提供される。正規化減算器1470a〜1470hは、出力1266′および1267′を生成する。これらの出力は、以下で説明するように、マルチプレクサを介して再帰的に逆アドレスプロセッサ1270bに供給され、パスメトリックがアーキテクチャのダイナミックレンジ内にとどまることを保証するために使用される。

0089

第1のバンクを構成するマルチプレクサ1417a〜1417hはそれぞれ、対応する正規化パスメトリック1275a〜1275hを正規化プロセッサ1278から、および、セレクト信号1258を制御ユニット1210から受け取る。また、マルチプレクサ1417a〜1417dは、対応するパスメトリック1296a〜1296dも受け取り、マルチプレクサ1417e〜1417hは、対応するパスメトリック1295a〜1295dも受け取る。パスメトリック1295a〜1295dおよびパスメトリック1296a〜1296dは、対数MAP計算におけるベータを表す。セレクト信号1258は、正規化パスメトリック1275a〜1275hか、それとも、パスメトリック1295a〜1295dおよび1296a〜1296dのいずれが出力されることになるかを決定するために使用される。

0090

第2のバンクを構成するマルチプレクサ1416a〜1416hはそれぞれ、対数尤度モード1214aをセレクト信号として受け取るとともに、第1バンクのマルチプレクサ1417a〜1417hからの対応する出力を受け取る。マルチプレクサ1416a〜1416dは、正規化減算器1470a〜1470dの出力1266′である第3入力を受け取り、マルチプレクサ1416e〜1416hは、正規化減算器1470e〜1470hからの出力1267′を受け取る。マルチプレクサ1416a〜1416hからの出力は、逆アドレスプロセッサ1270bに入力される。

0091

逆アドレスプロセッサ1270bは、対数尤度モード1214a、対数尤度0イネーブルに対するターボイネーブル1203a0、対数尤度1に対するターボイネーブル1203a1、逆トレリスセレクト1222a、逆トレリス透過ビット1226aおよび逆トレリスホールド1224aも受け取る。対数尤度プロセッサ1250aのベータ出力1266′および1267′は、復号器1200が対数MAP/ターボモードで動作しているときに、ベータ処理フェーズの開始のために使用される最終的なダミーベータ値を表す。

0092

ACSノードユニット1420aおよび1420bの出力は、ACSノードユニット1430aに提供され、ACSノードユニット1420cおよび1420dの出力は、ACSノードユニット1430bに提供される。ACSノードユニット1430a、1430bの出力は、さらに別のACSノードユニット1440aに入力される。ACSノードユニット1440aの出力は、マルチロー(多重行)比較器ツリーに提供される。このマルチロー比較器ツリーは、復号器がマルチロー構成で動作するときに、調べているトレリスの状態に対して計算されている最大のパスメトリックを捕捉するように、復号器全体にわたる。マルチロー比較器ツリーからの出力は、減算器1450およびレジスタ1460に提供される。減算器1450は、レジスタ1460への再帰入力も提供する。レジスタ出力1245aは、対数尤度プロセッサ1250aとなるとともに、減算器1450と、正規化減算器1470a〜1470hのそれぞれに供給される。

0093

図22に、図21のACSノードユニット1420aの一構成を示す。ACSリーフユニットからの出力1413aおよび1413bは、比較器1474およびマルチプレクサ1476に入力される。比較器1474のボロー出力は、マルチプレクサ1476のセレクト信号として供給される。比較器1474の差出力は、対数和補正テーブル1478に入力される。対数和補正テーブル1478の出力は、加算器1480に提供され、加算器1480の第2入力は、マルチプレクサ1476の出力である。加算器1480は、その2つの入力の和1425aを計算して出力する。この和1425aは、対数和補正付きで、2つの入力1413aと1413bの最大値を表す。

0094

図23に、8ロー復号器実施例に対する、図6の対数尤度プロセッサ1250aの構成を示す。各ローの対数尤度プロセッサ1250a′は、マルチプレクサ1490のバンクを介して相互接続される。各マルチプレクサ1490は、対応する復号器ローの対数尤度プロセッサ1250a′に1つの入力を提供する。対数尤度プロセッサ1250a′の対は、それらの出力を、ACSノードユニット1420a′、1420b′、1420c′および1420d′に入力する。対数尤度プロセッサ1250a′の出力はまた、マルチプレクサ1490のバンクへも再帰入力として提供される。ACSノードユニット1420a′、1420b′、1420c′および1420d′は、2個ずつ対にされ、それらの出力を、さらに別のACSノードユニット1430a′および1430b′に入力する。ACSノードユニット1420a′、1420b′、1420c′および1420d′の出力はまた、マルチプレクサ1490のバンクへも再帰入力として提供される。ACSノードユニット1430a′および1430b′は、それらの出力を、最後のACSノードユニット1440′に提供するとともに、マルチプレクサ1490のバンクに再帰入力として提供する。最後のACSノードユニット1440′の出力は、最後の再帰入力としてマルチプレクサ1490のバンクに提供される。各マルチプレクサ1490にはセレクト信号が提供される。

0095

図24に、図21のACSユニット1412aの1つの有用なアーキテクチャを示す。第1の入力対、すなわち、枝メトリック1(402′)および枝メトリック0(406′)は、マルチプレクサ408に提供され、マルチプレクサ408は出力402″を生成する。第2の入力対、すなわち、パスメトリック1276aおよびパスメトリック1(1415b)は、マルチプレクサ409に提供され、マルチプレクサ409は出力403′を生成する。マルチプレクサ408および409のそれぞれは、対数尤度モード1214aをセレクト信号として受け取る。対数尤度モード1214aがイナクティブのとき、枝メトリック1(402′)がマルチプレクサ408によって選択され、パスメトリック1415bがマルチプレクサ409によって選択される。他方、対数尤度モード1214aがアクティブのときは、枝メトリック0(406′)がマルチプレクサ408によって選択され、パスメトリック1276a(アルファ値を表す)が409によって選択される。

0096

マルチプレクサ408および409の出力402″および403′は、加算器410′に提供される。和411′が加算器410′から出力され、マルチプレクサ416′およびマルチプレクサ417′に提供される。マルチプレクサ417′は、枝メトリック0(406′)を第2入力として受け取り、対数尤度モード1214aをセレクト信号として受け取る。マルチプレクサ417′の出力418′は、加算器412′に提供される。加算器412′は、パスメトリック0(1415a)を第2入力として受け取る。加算器412′は、和413′を生成する。和413′は、アルファ、ベータおよびガンマの和を表す。和413′は、全減算器414′およびマルチプレクサ420′に提供される。マルチプレクサ416′は、表現可能な最小の2の補数に対応する配線入力407′を受け取るとともに、対数尤度モード1214aをセレクト信号として受け取る。全減算器414′はまた、マルチプレクサ416′の出力408′を第2入力として受け取り、ボロー361′および差415′を生成する。

0097

マルチプレクサ416′の出力408′は、マルチプレクサ420′の第1入力として提供される。マルチプレクサ420′は、加算器412′の和413′を第2入力として受け取る。全減算器414′のボロー出力361′は、入力値の最大値MAXを計算するためにマルチプレクサ420′に供給される。全減算器414′の第2出力415′は、マルチプレクサ出力408′と和413′の差を表し、対数和補正テーブル440′に提供される。対数和補正テーブル440′は、全減算器414′の出力が小さいときに、対数MAP復号の場合に対数領域における結果の精度を高めるために、新パスメトリックの結果を調整する。対数和補正テーブル440′の出力441′は、加算器460′に提供される。マルチプレクサ420′の出力421′もまた、加算器460′に提供される。加算器460′からの結果490′は、累算レジスタ470′に入力される。累算レジスタ470′は、ダミーベータ対数MAP計算のために値を累算する。累算レジスタの出力480aは、さらに別のマルチプレクサ475′に入力されるとともに、ダミーベータ計算において使用するためにACSユニット1412aの出力として提供される。マルチプレクサ475′は、和490′を第2入力として受け取るとともに、対数尤度モード1214aをセレクト信号として受け取る。マルチプレクサ475′の出力1413aは、ACSユニット1412aの第2出力となる。

0098

図25に、好ましい実施例による図6のバタフライ復号プロセッサ1260を示す。構成要素のACSユニットACS0〜ACS7のそれぞれには、バタフライモード1221、バタフライリセット1215、バタフライクロック1217およびベータフェーズイネーブル1235を含む複数の入力が提供される。構成要素のBMCユニットBMC0〜BMC3のそれぞれには、バタフライレート1216、バタフライ拘束1220およびバタフライ多項式1218が提供される。逆トレリスパスメトリック1265は、ACSユニットACS0〜ACS7への入力1265a〜1265hを提供するようにファンアウトし、それぞれのACSユニットが2個の逆トレリスパスメトリックを受け取るようにしている。逆トレリスパスメトリック1265aおよび1265bは、ACSユニットACS0およびACS1のそれぞれに提供され、逆トレリスパスメトリック1265cおよび1265dは、ACSユニットACS2およびACS3のそれぞれに提供され、逆トレリスパスメトリック1265eおよび1265fは、ACSユニットACS4およびACS5のそれぞれに提供され、逆トレリスパスメトリック1265gおよび1265hは、ACSユニットACS6およびACS7のそれぞれに提供される。BMCユニットBMC0〜BMC3はまた、入力として、外部情報1242および入力シンボル履歴入力シンボル1291aも受け取る。

0099

バタフライ復号プロセッサ1260は、好ましくは、8個のACSユニットおよび4個のBMCによって形成され、次のような4個のバタフライプロセッサとして構成される。
(i)ACS0,BMC0,ACS1
(ii)ACS2,BMC1,ACS3
(iii)ACS4,BMC2,ACS5
(iv)ACS6,BMC3,ACS7

0100

統合復号器アーキテクチャは、トレリスダイヤグラム内の各状態は他の2個の状態による影響しか受けないということを利用する。最小拘束長kの符号は、2k−1状態のトレリスダイヤグラムを生じる。2個のACSユニットおよび1個の中間BMCユニットを有するバタフライプロセッサは、トレリス状態ダイヤグラムにおける2個の状態を処理することが可能である。したがって、拘束長4の符号を1クロックサイクルで処理するためには、全部で8個のACSユニットが必要となる。より多くの状態を扱うには、より多くのクロックサイクル数にわたり処理を行うか、または、より多くのバタフライプロセッサを設ければよい。

0101

ACSユニットACS0〜ACS7は、対応する出力1255a〜1255hを生成し、これらの出力はあわせて判定ビット1255を形成する。ACSユニットACS0〜ACS3によって計算される新パスメトリックは、出力1267a〜1267dとして提供され、上側新パスメトリックバス1267に送られる。ACSユニットACS4〜ACS7によって計算される新パスメトリックは、1266a〜1266dは、下側新パスメトリックバス1266に提供される。

0102

図26に、図6の逆アドレスプロセッサ1270を示す。逆アドレスプロセッサ1270は、パスメトリックを遅延させ並べ換えて、所望のパスメトリックのパターンを生成することを可能にする。逆アドレスプロセッサ1270はまた、復号器1200が順トレリスモードで動作しているときは、入力パスメトリックが変更なしに出力として提供されるように透過的に作用することが可能である。逆アドレスプロセッサ1270は、入力として、逆トレリスセレクト1222、逆トレリスホールド1224、逆トレリス透過ビット1226、対数尤度モード1214、対数尤度0イネーブル12030、対数尤度1イネーブル12031、および正規化パスメトリック1275を受け取る。正規化パスメトリック1275は、ファンアウトして、入力対1275a・1275e、1275b・1275f、1275c・1275g、および1275d・1275hを、対応する第1バンクのマルチプレクサ1910a3、1910b3、1910c3および1910d3と、対応する第2バンクのマルチプレクサ1915a〜1915dに提供する。

0103

逆トレリスセレクト1222は、第1バンクのXORゲート1920a〜1920dのそれぞれに提供される。XORゲート1920aおよび1920cは、対数尤度0イネーブル12030を受け取り、XORゲート1920bおよび1920dは、対数尤度1イネーブル12031を受け取る。それぞれのXORゲート1920a〜1920dは、第2バンクのXORゲート1925a〜1925dの対応するXORゲートと、マルチプレクサ1910a3〜1910d3に提供される出力を生成する。第2バンクのXORゲート1925a〜1925dのそれぞれは、対数尤度イネーブル1214を第2入力として受け取り、第2バンクのマルチプレクサ1915a〜1915dの対応するマルチプレクサへの出力を生成する。前述のように、それぞれのマルチプレクサ1915a〜1915dは、正規化パスメトリックの対を受け取る。XORゲート1925a〜1925dからの出力は、それぞれのマルチプレクサ1915a〜1915dが提供される正規化パスメトリックのうちの一方を選択するためのセレクト信号として作用する。マルチプレクサ1915a〜1915dのそれぞれは、マルチプレクサ1910b1、1910d1、1910f1および1910h1のうちの対応するマルチプレクサに出力を提供する。

0104

マルチプレクサ1910a3〜1910d3および1915a〜1915dには、対数尤度イネーブル1214ならびに対数尤度0イネーブル12030および対数尤度1イネーブル12031の値に依存して異なる入力対が提供される。対数尤度0イネーブル12030は、対数尤度プロセッサ0に対してイネーブルされ、対数尤度プロセッサ1に対してディスエーブルされる。逆に、対数尤度1イネーブル12031は、対数尤度プロセッサ1に対してイネーブルされ、対数尤度プロセッサ0に対してディスエーブルされる。逆アドレスプロセッサ1270は統合復号器1200内のいくつかの位置で使用されるため、逆アドレスプロセッサ1270は、相異なる動作モードを扱うことができなければならない。対数尤度イネーブル1214ならびに対数尤度イネーブル12030および12031がイナクティブのとき、逆アドレスプロセッサ1270は、非組織畳込み符号によって生成されるトレリスに作用するビタビモードにある。対数尤度イネーブル1214がアクティブのとき、逆アドレスプロセッサ1270は、対数MAP復号の場合の対数尤度演算のための逆トレリススイッチングを実行する。対数尤度イネーブル1214がアクティブで、対数尤度イネーブル12030および12031のいずれかがアクティブのとき、逆アドレスプロセッサ1270は、ターボ復号の場合のように再帰組織符号を用いて対数尤度演算のために適当なスイッチングを実行する。XORゲートは、逆アドレスプロセッサ1270の相異なる動作モードのために適当なスイッチングを実現する。

0105

第1バンクのマルチプレクサ1910a3〜1910d3のそれぞれは、対応するラッチ1910a2〜1910d2に提供される出力を生成する。ラッチ1910a2〜1910d2のそれぞれは、逆トレリスホールド1224を入力として受け取り、マルチプレクサ1910a1、1910c1、1910e1および1910g1のうちの対応するマルチプレクサへの第2入力として遅延出力を提供する。

0106

逆トレリス透過ビット1226は、第3バンクのマルチプレクサ1910a1〜1910h1のそれぞれにブロードキャストされ、第3バンクのマルチプレクサ1910a1〜1910h1は、対応するパスメトリック1265a〜1265hを生成する。パスメトリック1265a〜1265hは、まとめられて、逆トレリスパスメトリック1265として提供され、逆アドレスプロセッサ1270の出力となる。復号器1200が順トレリス方向に動作しているときは、逆トレリス透過ビット1226がセットされ、逆アドレスプロセッサ1270では正規化パスメトリック1275が変更なしに通過して逆トレリスパスメトリック1265となる。

0107

図27に、図6の正規化減算器1278を示す。正規化出力1246は、減算器1610a〜1610hのそれぞれに入力される。マルチプレクサバンク1278aの出力1277は、個々のパスメトリック1277a〜1277hとして提供され、これらのパスメトリックはそれぞれ対応する減算器1610a〜1610hに提供される。減算器1610a〜1610hの出力1275a〜1275hは、正規化パスメトリック1275を形成する。正規化減算器1278は、トレリスをたどる間に計算され正規化出力1246として提供される最大パスメトリックを新パスメトリックから減算して、パスメトリック値がアーキテクチャのダイナミックレンジ内に保持されることを保証するために、使用される。

0108

図28に、本発明の好ましい実施例による、図6の比較器1247を示す。バス1267上に提供されるバタフライパスメトリックは、ファンアウトされ、対応する最大値比較器1710a〜1710dへの入力1267a〜1267dを生成する。同様に、バス1266上に提供されるバタフライパスメトリックは、ファンアウトされ、対応する最大値比較器1710e〜1710hへの入力1266a〜1266dを生成する。パスメトリック1266a〜1266dおよび1267a〜1267dは相互に比較され、最大パスメトリック1715が、図31に示すマルチロー比較器ツリーに出力される。マルチロー比較器ツリーは、復号器がマルチロー構成で動作するときに、調べているトレリスの状態に対して計算されている最大のパスメトリックを捕捉するように、復号器全体にわたる。マルチロー比較器ツリーからの出力は、レジスタ1720に提供される。レジスタ1720は、トレリスをたどる間に計算された最大パスメトリックを記憶する。出力1716はまた、減算器1730にも入力される。レジスタ1720は、減算器1730への第2入力を提供する。この入力は、トレリスをたどる間に計算された最大パスメトリックを提供する。この減算器は、トレリスをたどる間に計算された最大パスメトリックを最大パスメトリック1715と比較し、計算されたばかりの最大パスメトリック1715が、トレリスをたどる間に計算された最大パスメトリックより大きい場合、ロード信号1735がレジスタ1720に対してイネーブルされ、最大パスメトリック1715がレジスタ1720にロードされて、トレリスをたどる間に計算された最大パスメトリックとなる。このレジスタは、正規化出力1246となるもう1つの出力を提供し、これは、正規化減算器1278および中間復号メモリ・プロセッサ1240に供給される。正規化出力1246は、計算されたパスメトリック値がアーキテクチャのダイナミックレンジ内にとどまることを保証するために使用される。

0109

図29に、好ましい実施例による図6のパスメトリックメモリ1280を示す。パスメトリックリセット1230およびパスメトリックリード/ライトクロック1231が、メモリユニット1810a〜1810hのそれぞれに提供される。上側メモリブロック1810a〜1810dはB0としてまとめられ、入力ADDR0(1228a)を受け取る。他方、下側メモリブロック1810e〜1810hはまとめられてB1を形成し、対応する入力ADDR1(1228b)を受け取る。パスメトリックストア1280は、順トレリスパスメトリック1285を受け取り、これはファンアウトされ、図示のように、対応するメモリブロック1810a〜1810hのそれぞれにパスメトリック1285a〜1285hを提供する。パスメトリックストア1280は、1トレリス処理サイクルの間、順トレリスパスメトリック1285をバッファリングした後、出力1276a〜1276hを生成し、これらの出力はまとめられて記憶パスメトリック1276を形成する。

0110

図30に、本発明の好ましい実施例による図6の順アドレスプロセッサ1290を示す。順アドレスプロセッサ1290は、パスメトリックを遅延させ並べ換えて、所望のパスメトリックのパターンを生成することを可能にする。順アドレスプロセッサ1290はまた、復号器1200が逆トレリスモードで動作しているときは、入力パスメトリックが変更なしに出力として提供されるように透過的に作用することが可能である。上側パスメトリックバス1296は、構成要素のパスメトリック1296a〜1296dに分かれ、これらは、図示のように、2個のマルチプレクサ2010aおよび2010bに提供される。これらのマルチプレクサのそれぞれは、2個の入力パスメトリックを受け取る。下側パスメトリックバス1295は、構成要素のパスメトリック1295a〜1295dに分かれ、これらは、図示のように、2個のマルチプレクサ2010cおよび2010dに提供される。これらのマルチプレクサのそれぞれは、2個の入力パスメトリックを受け取る。マルチプレクサ2010a〜2010dはそれぞれ、順トレリスセレクト1232を受け取る。順トレリスセレクト1232は、提供されるパスメトリック1296a〜1296dおよび1295a〜1295dのいずれを選択すべきかを示す。

0111

マルチプレクサ2010a〜2010dのそれぞれは、対応する保持レジスタ2015a〜2015dに出力を供給する。保持レジスタ2015a〜2015dはそれぞれ、順トレリスホールド1234を入力として受け取る。マルチプレクサ2010a〜2010dおよび保持レジスタ2015a〜2015dの目的は、インプレースパスメトリックアドレシングの一部として、パスメトリック1296a〜1296dおよび1295a〜1295dの一部を1クロックサイクルだけ遅延させることである。

0112

保持レジスタ2015a〜2015dのそれぞれは、図示のように、マルチプレクサバンク2020に提供される出力を生成する。マルチプレクサバンク2020の他方の入力は、同じく図示されているように、上側パスメトリックバス1296および下側パスメトリックバス1295の構成要素のパスメトリックである。パスメトリック入力マルチプレクサセレクト1238が、マルチプレクサバンク2020にブロードキャストされる。マルチプレクサバンク2020は、第2のマルチプレクサバンク2030への出力を生成する。第2マルチプレクサバンク2030の他方の入力は、上側パスメトリックバス1296および下側パスメトリックバス1295の構成要素のパスメトリックである。順トレリス透過ビット1236が、第2マルチプレクサバンク2030に提供され、復号器1200が逆トレリスモードで動作しているときに透過的な経路をなすために使用される。マルチプレクサバンク2030は、パスメトリック1285a〜1285hを生成する。これらのパスメトリックは、まとめられて、順トレリスパスメトリック1285を形成し、順アドレスプロセッサ1290の出力となる。

0113

図31に、8ロー復号器構成で用いられるときの、図6の比較器1247を示す。各ローの比較器1247′は、マルチプレクサ2100のバンクを介して相互接続される。それぞれのマルチプレクサ2110は、対応する復号器ローにおける対応する比較器1247′への単一の入力を提供する。比較器1247′の対は、それらの出力1715を、ACSノードユニット1420a″、1420b″、1420c″および1420d″に入力する。これらのACSノードユニットのそれぞれは、復号器の2個のローにわたる。比較器1247′の出力1715はまた、マルチプレクサ2110のバンクへも再帰入力として提供される。ACSノードユニット1420a″、1420b″、1420c″および1420d″は、2個ずつ対にされ、それらの出力を、さらに別のACSノードユニット1430a″および1430b″に入力する。ACSノードユニット1420a″、1420b″、1420c″および1420d″の出力はまた、マルチプレクサ2110のバンクへも再帰入力として提供される。ACSノードユニット1430a″および1430b″は、それらの出力を、最後のACSノードユニット1440″に提供するとともに、マルチプレクサ2110のバンクに再帰入力として提供する。最後のACSノードユニット1440″の出力は、最後の再帰入力としてマルチプレクサ2110のバンクに提供される。各マルチプレクサ2110にはセレクト信号が提供される。

0114

図32に、アドレスコントローラを含む、図6の入力シンボル履歴1298の構成を示す。入力シンボル履歴アドレス1219は、ウィンドウデコーダ2210に入力される。ウィンドウデコーダ2210は、第1の二重バッファメモリバンク0(2216)および第2の二重バッファメモリバンク1(2218)へのアクセスを可能にするためにアドレスをデコードする。入力シンボル履歴1298は、連続的なデータフローが維持されることを保証するために、受け取った入力を二重バッファリングする。入力シンボル履歴クロック1223および入力シンボル履歴リセット1225は、カウンタ2212に提供され、カウンタ2212の出力1297aもまた、二重バッファメモリバンク0(2216)および二重バッファメモリバンク1(2218)に提供される。入力シンボル1299は、ホストプロセッサから、デマルチプレクサ2214に提供される。デマルチプレクサ2214は、二重バッファメモリバンク0(2216)への出力2224と、二重バッファメモリバンク1(2218)への出力2226を生成する。デマルチプレクサ2214はまた、入力として、リード/ライト信号1297bを受け取る。リード/ライト信号1297bは、第1マルチプレクサ2220および第2マルチプレクサ2222にも供給される。二重バッファメモリバンク0(2216)および二重バッファメモリバンク1(2218)のそれぞれには、バンクセレクト信号1211が提供される。ただし、バンクセレクト信号1211は、二重バッファメモリバンク1(2218)へのインタフェースで反転される。

0115

二重バッファメモリバンク0(2216)は、マルチプレクサ2220への第1出力2228と、第2マルチプレクサ2222への第2出力2230を生成する。二重バッファメモリバンク1(2218)は、マルチプレクサ2220に供給される対応する第1出力2232と、第2マルチプレクサ2222に提供される第2出力2234を生成する。第1マルチプレクサ2220は、対数尤度プロセッサ0(1250b)に入力される出力1291bを生成する。第2マルチプレクサ2222は、バタフライプロセッサ1260に入力される出力1291aを生成する。

0116

図32は、二重バッファメモリバンク1(2218)の分解図も示している。入力データ2226は、1対nデマルチプレクサ2240に提供される。1対nデマルチプレクサ2240はまた、ウィンドウデコーダ2210の出力であるウィンドウセレクトも受け取る。デマルチプレクサ2240からのn個の出力は、n個の対応するウィンドウW0〜Wnに提供される。これらのウィンドウのそれぞれは、第1のm対1マルチプレクサ2242および第2のm対1マルチプレクサ2244に提供される出力を生成する。m対1マルチプレクサ2242、2244のそれぞれは、ウィンドウセレクト入力信号も受け取る。第1のm対1マルチプレクサ2242は、出力2232を生成し、この出力は、ダミーベータ計算のために使用され、対数尤度プロセッサ1250aに送られる。第2のm対1マルチプレクサ2244は、出力2234を生成し、この出力は、バタフライプロセッサ1260の枝メトリックユニットにおいてアルファおよびベータを計算するために使用される。

0117

図33に、図6の対数尤度比プロセッサ1297を示す。対数尤度比プロセッサ1297は、入力1245aおよび1245bを受け取る。これらの入力はそれぞれ、対数尤度プロセッサ1250aおよび対数尤度プロセッサ1250bからの出力である。対数尤度比プロセッサ1297はまた、入力として、外部情報1242、ハード・ソフト出力セレクト1213、拡散入力1243、トレースバックプロセス出力1567およびスクランブルアドレスデータ1286も受け取る。

0118

減算器2310は、それぞれ「1」および「0」の尤度を表す入力1245aおよび1245bを受け取り、第2減算器2320に供給される出力2315を生成する。減算器2310の出力2315はまた、第1マルチプレクサ2330にも供給されるとともに、出力1294の一部を形成する。減算器2320への第2入力は外部情報1242である。減算器2320の出力2325は、第2マルチプレクサ2340に提供される。

0119

トレースバックプロセス出力1567は、第1マルチプレクサ2330への第2入力として提供される。ハード・ソフト出力セレクト1213は、マルチプレクサ2330のセレクト入力として提供され、マルチプレクサ2330の出力は、復号出力1294の0ビットを形成する。減算器2310の出力2315は、マルチプレクサ2330の出力の最下位ビットと組み合わされて、マルチビット復号出力1294を形成する。

0120

第2マルチプレクサ2340は、スクランブルアドレスデータ1286を第2入力として受け取り、拡散入力1243をセレクト信号として受け取る。第2マルチプレクサ2340は、出力1293を生成し、この出力は、対数尤度比プロセッサ1297から中間復号結果・メモリ1240に供給される。

0121

図5に示した実施例は、5フェーズモードで動作する。尤度プロセッサが存在しないため、図6の実施例(これは2フェーズモードで動作する)で対数尤度プロセッサ1250aおよび1250bによって実行される計算において、より多くのアルファおよびベータを記憶するために、より多くのパスメトリックメモリが必要となる。

0122

[動作]復号器1200の動作における第1ステップは、アーキテクチャが畳込み復号またはターボ復号のいずれかの必要な構成を実現するように、復号器を初期化することである。演算に利用可能な変数には、問題となるトレリスサイズに必要なコラムの数、トレリス内の状態数、パスメトリックメモリ内のコラムのアドレシングに使用される適当な数のビットに対するマスク、および、トレースバックプロセスの判定深さがある。処理対象のシンボルの生き残りパスメトリックを保持するレジスタが初期化され、各トレリス演算に必要なコラムアドレス順序を反映するようにシンボル時刻ごとに値が置換される順番号が、レジスタバンク代入される。

0123

なお、復号器1200は、順トレリス方向または逆トレリス方向のいずれにも動作可能である。

0124

トレリスを順方向にたどっている場合、逆アドレスプロセッサ1270は、逆トレリス透過ビット1226をセットすることによって透過モードで動作するように設定される。トレリスを順方向にたどるとき、順番号は、最初に使用した後に左へ回転される。

0125

反復プロセスは、反復番号に対応するパスメトリックストア1280のB0およびB1のコラムからパスメトリックを読み出すことによって開始される。1280 B0および1280 B1の第1コラムに保持されるパスメトリックの順次リストがバタフライプロセッサ1260に提供される。バタフライプロセッサ1260は、マルチプレクサバンク1250cを介して、新パスメトリックを生成する。この新パスメトリックは、もはや宛先状態順ではなく、順アドレスプロセッサ1290に供給される。順アドレスプロセッサ1290は、実質的に、新パスメトリックの各コラムに対するソート操作を実行し、その結果、パスメトリックメモリ1280のB0およびB1のコラムが、コラムを順に読んでいくときに順次状態のセットを表すようになる。それぞれのコラム操作中、図11A〜図11Eに示したように、8個の新パスメトリックのうちの半数はパスメトリックストア1280に直接書き込まれる一方、残りの新パスメトリックは順アドレスプロセッサ1290内の保持レジスタ2015a〜2015dに書き込まれる。これは、パスメトリックのグループごとに入れ替わる。

0126

順トレリスをたどることは、コラム数だけの反復を必要とする。この数は、問題としている特定のトレリスに必要なコラム数より1だけ大きい。反復番号が偶数の場合、バス1296A,C,E,Gからのパスメトリックが、反復番号に対応するパスメトリックストア1280 B0のコラムに書き込まれる。バス1296B,D,F,Hからのパスメトリックは同時に、順アドレスプロセッサ1290の保持レジスタ2015a〜2015dに書き込まれる。

0127

一方、奇数番目の反復である場合、バス1296A,C,E,Gからのパスメトリックが、順アドレスプロセッサ1290の保持レジスタ2015a〜2015dに書き込まれ、バス1296B,D,F,Hからのパスメトリックは、反復番号に対応するパスメトリックストア1280のコラムに書き込まれる。

0128

コラム操作中、バタフライプロセッサ1260のACSユニットによって生成される判定ビット1255は1バイトにまとめられ、中間復号メモリ・プロセッサ1240に書き込まれる。プロセスにおける次の反復は、次の反復の番号に対応するパスメトリックストア1280のB0およびB1からコラムアドレスを読み出すことによって開始される。反復プロセスは、コラム反復の数が、計算しているトレリスに必要なコラム数より1だけ大きい数に一致するまで継続する。

0129

順アドレスプロセッサ1290の保持レジスタ内の4個の新パスメトリックを転送するために、反復プロセスの最後にもう1回の書き込み操作が必要とされる。これらの4個の新パスメトリックは、パスメトリックストアメモリ1280B1の最終コラムに書き込まれる。最終結果として、新パスメトリックは、異なるコラム順序で、パスメトリックストア1280のB0およびB1に書き込まれたことになる。なお、各コラム内の順序は変わっていない。

0130

トレリスを逆方向にたどっているときは、順番号は、右に回転された後にはじめて使用される。4個のパスメトリックからなるグループが、パスメトリックストア1280 B0の第1コラムからフェッチされ、逆アドレスプロセッサ1270内の保持レジスタに入れられる。順アドレスプロセッサ1290は、順トレリス透過ビット1236をセットすることによって透過モードで動作するように設定される。対応する逆トレリス透過ビット1226は、逆アドレスプロセッサ1270がイネーブルされるように設定される。逆トレリスをたどることは、図13および図14で説明した。

0131

トレリスを逆方向にたどることは、その特定のトレリスに必要なコラム数より1だけ大きい数に等しい反復数を必要とする。トレリスを逆方向にたどるとき、インプレースパスメトリック方式は常に、逆アドレスプロセッサ1270を通じて、スクランブルされたパスメトリックのリストを提供し、バタフライプロセッサ1260へのパスメトリックの非順次リストを生成する。バタフライプロセッサ1260によって生成される、結果として得られるトレリス状態順序は、トレリス状態順である。

0132

偶数番目の反復を行う場合、反復番号に1を加えた番号に等しいパスメトリックストア1280 B0内のコラムが読み出され、マルチプレクサ1278a、正規化プロセッサ1278および逆アドレスプロセッサ1270を通ってバタフライプロセッサ1260へと渡される。逆アドレスプロセッサ1270に現在保持されているパスメトリックもまたバタフライプロセッサ1260に読み込まれる。反復番号に等しいパスメトリックストア1280内のコラムが読み出され、逆アドレスプロセッサ1270の保持レジスタに書き込まれる。

0133

反復番号が奇数の場合、反復番号に1を加えた番号に等しいパスメトリックストア1280 B1のコラムが読み出され、マルチプレクサ1278aおよび正規化プロセッサ1278を通って逆アドレスプロセッサ1270に渡され、さらにバタフライプロセッサ1260へと渡される。逆アドレスプロセッサ1270に保持されているパスメトリックもまたバタフライプロセッサ1260に入力される。反復番号に等しいパスメトリックストア1280のコラムが読み出され、逆アドレスプロセッサ1270の保持レジスタに書き込まれる。

0134

逆トレリスをたどるこの時点で、パスメトリックストア1280のB0およびB1の第1コラムに保持されるパスメトリックの順次リストが逆アドレスプロセッサ1270に提供される。逆アドレスプロセッサ1270は、バタフライプロセッサ1260に提供される結果のコラムがもはや宛先状態順ではないという意味で、新パスメトリックの各コラムに対するソート操作を実行する。バタフライプロセッサ1260は、8個の新パスメトリックを生成し、これらの新パスメトリックは、マルチプレクサバンク1250cを介して、順アドレスプロセッサ1290に提供される。順アドレスプロセッサ1290は透過モードにあるため、バタフライプロセッサ1260によって生成されたパスメトリックのトレリス状態順リストが、マルチプレクサバンク1250cを介して、パスメトリックストア1280のB0およびB1に書き戻される。パスメトリックストア1280のB0およびB1は、コラムを順に読んでいくときに順次状態のセットを表す。

0135

コラム操作中、バタフライプロセッサ1260のACSユニットによって生成される判定ビット1255は1バイトにまとめられ、中間復号メモリ・プロセッサ1240に書き込まれる。次の反復は、パスメトリックストア1280のB0およびB1からパスメトリックの適当なコラムを読み出すことによって開始される。

0136

反復プロセスの終了時には、新パスメトリックは、異なるコラム順序で、パスメトリックストア1280のB0およびB1に戻る。なお、各コラム内の順序は変わっていない。

0137

中間復号メモリ・プロセッサ1240内のトレースバックプロセッサ1510は、周知のポインタ型トレースバック演算を実行するので、トレリス処理方向と、判定ビットのビット位置を知っている。判定ビットは、1バイトから抽出され、トレースバックメモリ1530内への次のポインタを生成するために使用される。トレースバックは、あらかじめ規定されたトレースバック深さに達したときに終了する。トレースバック深さは一般に、符号の拘束長の5〜9倍の間にある。

0138

復号器1200がターボ復号のために使用されているときは、処理は、ダミーベータ/アルファ処理と、ベータ/LLR処理という2つの異なるフェーズに分かれる。トレリス状態の数が、バタフライプロセッサ1260のACSユニットサイズ整数(2の累乗)倍でACSユニットACS0〜ACS7の数と一致するという縮退した場合だけを除いては、順トレリスまたは逆トレリスのいずれかの演算が言及されているときには上記の処理が行われる。対数尤度プロセッサ0(1250a)およびバタフライプロセッサ1260内のACSユニットには、それぞれのACSユニットがアルファおよびベータの計算に必要な結果を累算することを可能にするレジスタがそれぞれ設けられる。

0139

ダミーベータおよびアルファの計算は並列に行われる。対数尤度プロセッサ0(1250a)は、リーフACSユニットを自由に使用してダミーベータ計算を実行する。この計算は、それぞれがウィンドウメモリシステムである入力シンボル履歴バッファおよび中間復号メモリ・プロセッサインタリーバメモリへのアクセスを必要とする。入力シンボル履歴バッファは、処理ウィンドウのサイズのバンク2216および2218として組織される。対数尤度プロセッサ0(1250a)は、時刻t+1に処理すべきウィンドウを時刻tに処理することによってダミーベータを累算する。対数尤度プロセッサ0(1250a)は、パスメトリックストア1280へのアクセスを必要としない。これが、対数尤度プロセッサ0(1250a)がバタフライプロセッサ1260内に含まれるACSユニットと並列に動作可能な理由である。

0140

対数尤度プロセッサ0(1250a)は、計算された最大のベータを決定するためにACSツリー内の加算器を使用することにより、ダミーベータ値に対する正規化を実行する。この最大値は、対数尤度プロセッサ0(1250a)のリーフACSユニットへの入力を使用する前に、その入力から減算される。

0141

バタフライプロセッサ1260は、アルファ計算を実行し、構成要素のACSユニット内にあるレジスタにおいてアルファ値を累算する。バタフライプロセッサ1260は、順トレリスをたどる間に行われるのと同様に、順トレリス演算および正規化を実行する。

0142

対数尤度プロセッサ0(1250a)によって計算されるダミーベータは、ベータ計算フェーズの開始時にバタフライプロセッサ1260に提供される。

0143

ベータの計算中は、対数尤度プロセッサ1250aおよび1250bの両方がバタフライプロセッサ1260とともに使用される。対数尤度プロセッサ1250a、1250bのそれぞれは、パスメトリックストア1280からのアルファと、前のクロックサイクルから得られたベータと、中間復号メモリ・プロセッサ1240から生成される外部情報1242とを受け取り、それぞれ、「1」および「0」に対する対数尤度の結果を生成する。対数尤度計算は、複数のローにわたる可能性がある。その計算は、前状態にわたる最大値の結果を決定しているからである。

0144

ベータ計算は、アルファとは異なり、入力シンボル履歴ウィンドウを通して逆方向に動作し、アルファ計算で用いられるガンマを使用する。ベータ計算は、アルファ計算で用いられたのと同じトレリス枝メトリック割当てを使用する。

0145

入力履歴ブロック全体が処理され、結果として得られる出力がインタリーバ1520に供給された後、プロセスは、ターボ復号演算の後半を開始することができる。第1復号器演算中のインタリーバ演算は、順次読み出しおよび順次書き込みである。これに対して、第2復号器演算中、インタリーバは、スクランブラアドレス出力によって決定されるランダムアドレス順序を用いて、読み出しおよび書き込みが行われる。第2復号器演算中、読み出し(リード)および書き込み(ライト)のアドレスは同一である。第1復号器の後のインタリーバ演算は、書き込みは順次であるが、読み出しはランダムであり、第1および第2の復号器に統計的独立性を与えるために用いられるあらかじめ規定された拡散系列に従う。第2復号器のインタリーバ演算は、書き込みは、拡散系列に従ってランダムであり、読み出しは順次である。

0146

なお、ターボ符号化に用いられる符号器は同一である必要はないため、第2復号器の復号レートおよび拘束は、第1復号器のものと必ずしも同一ではない。このため、ターボ復号器の構成を、ブロック処理演算どうしの間で変えなければならないことがある。その場合、これは、設定レジスタの内容を操作することによって容易に対処される。

0147

入力シンボル履歴の各ブロックは、許容されるビット誤り率の範囲内で復号を行うために、数回の完全なターボ反復を必要とする。必要な反復数は、必要とされるビット誤り率が達成されることを保証するように設定可能である。

0148

本発明のアーキテクチャの利点は、1回のターボ復号反復を完了するのに2フェーズしか必要としないことである。これは、アーキテクチャの利用におけるフレキシビリティを提供するとともに、使用される復号器ローの数と、必要な反復数とのバランスをとることを可能にする。例えば、4回の反復を行うターボ復号器は、2回の反復を要する2個の復号器ローを使用して実現可能である。

0149

対数MAP計算は、スライディングウィンドウアルゴリズムを用いて実行される。スライディングウィンドウアルゴリズムは、2フェーズで実現される。単一の復号器では、これはレイテンシの増大(図34Aの構成(単一の復号器のみが使用される)に示すように、各ウィンドウに2パス)を生じる。第1パスは、ダミーベータ値と順アルファ値を並列に計算し、順アルファ値をアルファメモリに記憶する(注意:このメモリは、パスメトリック記憶のためにビタビアルゴリズムで使用されるのと同じメモリである)。第2パスは、アルファ値を読み出し、対数MAPアルゴリズムに従ってベータ値を計算し、対数尤度比(LLR)を出力する。

0150

複数の復号器を使用するときは、2フェーズの計算を重畳させることが可能であり、復号器は、小さいレイテンシで1ブロックを処理することができる。複数の復号器は、相異なるデータストリームに対して個別に動作することも可能であり、あるいは、図34Bの構成に示すように、単一のストリームの復号速度を大きくするように協働することも可能である。図5に示した実装は、4個の独立なストリームを処理するか、高速(小さいレイテンシ)で2個のストリームを処理するか、さらに高速(最小のレイテンシ)で1個のストリームを処理することが可能である。

0151

表1に、複数の符号化ストリームを同時にサポートする統合復号器のフレキシビリティを例示する。例えば、4個の復号器ローを有する復号器は、4個までのデータストリームを同時に処理することができる。さらに、復号器ローは協働して、より少数のストリームをより高いスループットで復号することが可能である。これは、音声復号のレイテンシを最小限にするために有用である。表1は、このアプローチのフレキシビリティと、それぞれの場合に得られる適当な復号高速化を例示する(なお、このリストは決して完全ではなく、より多くの復号器ローを互いに結合して、さらに高いフレキシビリティを達成することが可能である)。

0152

より少数のデータストリームを高速で復号するために2個または4個の復号器がどのように協働することができるかを例示するため、図35に、2個の復号器の間の相互接続を示す。「M」と記されたボックスは、隣の復号器からのパスメトリックの一部をパスメトリックメモリに書き込む前に入れ替えることを可能にするマルチプレクサである。さらに、図36には、単一の復号器、2個の復号器、または4個の復号器のいずれとしても機能するように、4個の復号器をどのようにして相互接続することができるかを示す。

0153

統合復号器の複数標準対応性を実証するため、復号器は、表2に示す標準の任意の組み合わせをサポートする。(このリストは決して完全ではないが、この統合復号器のフレキシブルな(したがって有用な)性質を実証するために記載している。)

0154

統合復号器900は、畳込み符号化データストリームおよびターボ符号化データストリームに必要な復号を実現し、複数のデータストリームおよび複数の音声ストリームを同時にサポートすることができる。ターボ符号化データストリームを復号するとき、この復号器は、最大値−対数MAPアルゴリズムまたは対数MAPソフト出力MAPアルゴリズムのいずれかを用いた反復ターボ復号器を実現する。この復号器は、畳込みおよびターボ復号方式の両方の効率的実現を可能にするように、その構成要素を最大限に再利用する。

0155

本発明の復号器は、相異なる標準の音声ストリームを復号するために、必要に応じて、動的に分割されることが可能である。本発明の復号器は、相異なる符号化レート(レート1/2、レート1/3、レート1/4など)でストリームを処理することができる。本発明の復号器はまた、相異なる拘束長で符号化されたストリームを処理することも可能である。したがって、本発明の統合復号器アーキテクチャは、現在規定されている移動ワイヤレス標準(音声およびデータの両方について、第1、第2および第3世代)のそれぞれをサポートすることが可能である。

0156

好ましい実施例の統合復号器アーキテクチャは、非組織(フィードフォワード)符号器と組織(フィードバックワード)符号器の機能を単一のアーキテクチャに組み込む。図37Aに、符号語3225の1個の符号ビット3225_0を生成するための、多項式3240と状態ビット3250のミキシングを示す。多項式3240は、対応するANDゲート3260に提供される。このANDゲート3260は、状態3250も入力として受け取る。それぞれのANDゲート3260は、対応するXORゲート3270への出力を生成する。それぞれのXORゲート3270はまた、遷移入力3280も受け取り、Mビット非組織符号器3230の出力3225_0を生成する。

0157

図37Bに、符号語3225に対する符号器3200の全体を示す。多項式3240は、対応するMビット非組織符号器3230に提供される。入力ビット3220は、XORゲート3275に提供される。RSC_ENABLE信号は、ANDゲート3280に提供され、このANDゲート3280の出力は、XORゲート3275の第2入力となる。ANDゲート3280はまた、入力として、符号器3230の出力も受け取る。XORゲート3275は、Mビットシフトレジスタ3210およびそれぞれの符号器3230に出力を提供する。Mビットシフトレジスタ3210はまた、クロック信号3285およびリセット信号3290を受け取り、時刻Tにおける符号器3200の状態を保持する。この状態値は、非組織符号ビットを生成するために、それぞれの特定の多項式3240(特定の符号によって指定される)とともに使用される。レジスタ3210の出力3250は、それぞれの符号器3230にブロードキャストされる。符号器3230の出力3225_0〜3225_Rは、まとめられて、符号語(CODE_WORD)3225を形成する。

0158

RSC_ENABLE3215をイネーブルすることにより、符号器3200は再帰組織(RS:recursive systematic)符号器となる。再帰組織符号では、入力ビット3220は、符号語3225の組織ビットを形成する。それぞれのMビット符号器3230の生成したビットは、RS符号語3225の残りの部分を形成する。

0159

非組織符号器の場合、CODE_WORD3225はR個のビット(ただし、R=符号のレート)を含むことになる。RSC_ENABLE3215がアクティブのとき、CODE_WORD3225は通常1ビット幅である。出力CODE_WORD3225(今の場合1ビット幅)および入力ビット(INPUT_BIT)3220がRS符号語を形成する。

発明の効果

0160

上記の説明から明らかなように、本発明の実施例は、統合されたスケーラブルなアーキテクチャを用いて、複数の伝送標準の復号に適用可能である。

0161

上記の説明は、本発明の実施例についてのものに過ぎない。本発明の技術的範囲および技術思想から離れることなく、さまざまな修正や変形が可能である。実施例は例示であり、限定的なものではない。

0162

特許請求の範囲の発明の要件の後に括弧で記載した番号がある場合は、本発明の一実施例の対応関係を示すものであって、本発明の範囲を限定するものと解釈すべきではない。

図面の簡単な説明

0163

図1複数のプロトコルを用いた通信ネットワークの概略ブロック図である。
図2符号化を用いた通信システムの概略ブロック図である。
図3符号化を用いた通信システムにおける一般的なビタビ復号器の概略ブロック図である。
図4符号化を用いた通信システムにおける一般的なターボ復号器の概略ブロック図である。
図5統合復号器の概略ブロック図である。
図6統合復号器のアーキテクチャの概略ブロック図である。
図7図6のバタフライプロセッサの概略ブロック図である。
図8図6の加算比較選択(ACS:Add-Compare-Select)ユニットの概略ブロック図である。
図932状態トレリスとその対応するバタフライプロセッサおよびパスメトリックを表す図である。
図10結果のパスメトリック位置を示す図である。
図11A〜Eはそれぞれ、時刻t=1〜t=5におけるインプレースパスメトリックアドレシングを表す図である。
図12パスメトリックコラムのアドレシングを表す図である。
図13トレリス構成のインプレースパスメトリックアドレシングを表す図である。
図14逆トレリス構成のインプレースパスメトリックアドレシングを表す図である。
図15図6の中間復号メモリプロセッサの概略ブロック図である。
図16ウィンドウメモリサブシステム、トレースバックコントローラおよびインタリーバコントローラを示す、図15の分解概略ブロック図である。
図17図16のトレースバックコントローラの概略ブロック図である。
図18図16のインタリーバの概略ブロック図である。
図19図18のインタリーバアドレスコントローラの分解図である。
図20図16のウィンドウメモリサブシステムの概略ブロック図である。
図211ロー復号器に対する図6の対数尤度プロセッサの概略ブロック図である。
図22図21の加算比較選択ノードユニットの概略ブロック図である。
図238ロー復号器に対する図6の対数尤度プロセッサの概略ブロック図である。
図24図21のACSユニットの概略ブロック図である。
図25図6のバタフライ復号プロセッサバンクの概略ブロック図である。
図26図6の逆アドレスプロセッサの概略ブロック図である。
図27図6の正規化減算器の概略ブロック図である。
図28図6の比較器の概略ブロック図である。
図29図6のパスメトリックメモリの概略ブロック図である。
図30順アドレスプロセッサの概略ブロック図である。
図31図6の比較器(ACSレベル)の概略ブロック図である。
図32図6の入力シンボル履歴の概略ブロック図である。
図33図6の対数尤度比プロセッサの概略ブロック図である。
図34複数の復号器を用いて1つのターボ復号器を実現する例を示す図である。
図35まとめて単一の復号器として動作する2個の相互接続された復号器(サイクルあたり16状態トレリス)の概略ブロック図である。
図36さらに復号性能を高めるために、まとめて単一の復号器として動作する4個の相互接続された復号器(サイクルあたり32状態トレリス)の概略ブロック図である。
図37非組織符号器の概略ブロック図である。

--

0164

100ワイヤレス通信ネットワーク
110 UMTS基地局
112送受信器
122 送受信器
130リモートCDMA基地局
132 CDMA送受信器
140リモート基地局
142 送受信器
144 送受信器
146 UMTS送受信器
150a〜150m復号器モジュール(復号器ユニット)
160交換ネットワーク
160a〜160f移動ハンドセット
200通信システム
205情報源
210送信器
220符号器
230変調器
240通信チャネル
250復調器
260 復号器
261 第1入力
262 第2入力
263デマルチプレクサ
264 デマルチプレクサ263の第1出力
265 デマルチプレクサ263の第2出力
266 第1復号器
267 第1復号器266の出力
268インタリーバ
269 インタリーバ268の出力
270受信器
271 第2復号器
272 第2復号器271の第1出力
273 第2復号器271の第2出力
274 第1デインタリーバ
275受信情報信号
276 第2デインタリーバ
277再帰入力
278スライサ
280ノイズ源
289枝メトリック計算器(BMC)ユニット
290状態コントローラ
291加算比較選択(ACS)ユニット
292パスメトリックメモリ
293トレースバックメモリ・コントローラ
294 ボロー出力
320 加算比較選択ユニット(ACS)
330 中間枝メトリック計算器(BMC)
361′全減算器414′のボロー
402,402′ 枝メトリック1
406,406′ 枝メトリック0
408,409マルチプレクサ
408′ マルチプレクサ416′の出力
410,410′加算器
411 加算器410の出力
412,412′ 加算器
413 加算器412の出力
414,414′ 全減算器
415 全減算器414の第2出力
416′,417′ マルチプレクサ
418′ マルチプレクサ417′の出力
420 第1の2対1マルチプレクサ
420′ マルチプレクサ
421 第1マルチプレクサ420の出力
440,440′対数和補正テーブル
441 対数和補正テーブル440の出力
450 第2の2対1マルチプレクサ
460,460′ 加算器
461 加算器460からの結果
470,470′累算レジスタ
472 マルチプレクサ480への出力
475′ マルチプレクサ
480 マルチプレクサ
480a〜480h ACSユニット1412a〜1412hの第2出力
900統合復号器構造
901マルチビット入力シンボル
910 中間復号結果メモリ
920バタフライ復号プロセッサバンク
940 第1ストアバンク
950 第2ストアバンク
960制御ユニット
961,963,965,967 第2出力
962,964,966,968 第1出力
990バス
999復号出力
1000 32状態生トレリスダイヤグラム
1002時刻Stにおける状態
1003 時刻Stにおける状態0
1004 時刻St+1における状態
1006 枝メトリック
1007 時刻St+1における状態16
1008 枝メトリック
1009 時刻St+1における状態0
1010 バタフライ接続
1102 上側メモリブロックB0に対応するメモリ
1104 下側メモリブロックB1に対応するメモリ
1112 新パスメトリック
1114保持レジスタ
1122,1134 新パスメトリック
1150 パスメトリックコラムのアドレシング順序
1200 統合復号器
1201レート
1202拘束長
1203畳込み・ターボセレクタ
12030対数尤度0イネーブル
12031 対数尤度1イネーブル
1204多項式
1205トレリス方向
1206反復数
1207ブロック長
1208クロック
1209リセット
1210 制御ユニット
1211 入力シンボル履歴バンクセレクト
1212 中間復号モード
1213ハード・ソフト出力セレクト
1214 対数尤度イネーブル
1214a,1214b 対数尤度モード
1215 バタフライリセット
1216 バタフライレート
1217 バタフライクロック
1218 バタフライ多項式
1219 入力シンボル履歴アドレス
1220 バタフライ拘束
1221バタフライモード
1222,1222a,1222b 逆トレリスセレクト
1223 入力シンボル履歴クロック
1224,1224a,1224b 逆トレリスホールド
1225 入力シンボル履歴リセット
1226,1226a,1226b 逆トレリス透過ビット
1228aアドレシング情報ADDR0
1228b アドレシング情報ADDR1
1230 パスメトリックリセット
1231 パスメトリックリード/ライトクロック
1232 順トレリスセレクト
1234 順トレリスホールド
1235ベータフェーズイネーブル
1236 順トレリス透過ビット
1237 中間復号方向
1238 パスメトリック入力マルチプレクサセレクト
1240 中間復号メモリ・プロセッサ
1242外部情報
1243拡散入力
1245a 対数尤度プロセッサ1250aの第1出力
1245b 対数尤度プロセッサ1250bの出力
1246正規化出力
1247,1247′比較器
1248a,1248b 対数尤度レート
1249a,1249b 対数尤度拘束
1250a,1250a′,1250b 対数尤度プロセッサ
1250c マルチプレクサバンク
1251a,1251b 対数尤度クロック
1252a,1252b 対数尤度リセット
1253a,1253b 対数尤度多項式
1254クロッキング信号
1255判定ビット
1255a ACS0(320)の第1出力(全減算器414のボロー出力)
1256 インタリーバ外部情報
1257 リード/ライトクロック
1258,1258a,1258bセレクト信号
1259リセット信号
1260 バタフライ復号プロセッサ
1265 逆トレリスパスメトリック
1265a入力パスメトリック0
1265b 入力パスメトリック1
1266 下側新パスメトリックバス
1267 上側新パスメトリックバス
1267a ACS0(320)の第2出力
1270,1270b 逆アドレスプロセッサ
1275,1275a〜1275h正規化パスメトリック
1276 記憶パスメトリック
1277 正規化減算器1278への出力
1278 正規化減算器
1278a マルチプレクサバンク
1278b制御信号
1280パスメトリックストア
1285 順トレリスパスメトリック
1286スクランブルアドレスデータ
1290 順アドレスプロセッサ
1291a 入力シンボル履歴1298の第1出力
1291b 入力シンボル履歴1298の第2出力
1293対数尤度比プロセッサ1297からの出力
1294 復号出力
1295 下側パスメトリックバス
1295a〜1295d パスメトリック
1296 上側パスメトリックバス
1296a〜1296d パスメトリック
1297 対数尤度比プロセッサ
1297b リード/ライト信号
1298 入力シンボル履歴
1299 入力シンボル
1410バタフライユニットバンク
1412a〜1412h ACSユニット
1413a〜1413h ACSユニット1412a〜1412hの第1出力
1414a〜1414d BMCユニット
1415a〜1415h 逆トレリスパスメトリック
1416a〜1416h 第2バンクのマルチプレクサ
1417a〜1417h 第1バンクのマルチプレクサ
1420a〜1420d,1430a,1430b,1440a ACSノードユニット
1420a′〜1420d′,1430a′,1430b′,1440′ ACSノードユニット
1420a″〜1420d″,1430a″,1430b″,1440″ ACSノードユニット
1450 減算器
1460レジスタ
1470a〜1470h 正規化減算器
1474 比較器
1476 マルチプレクサ
1478 対数和補正テーブル
1480 加算器
1490 マルチプレクサ
1510トレースバックアドレスコントローラ(トレースバックプロセッサ)
1515結合リード/ライト信号
1520 インタリーバコントローラ
1525アドレスバス
1526双方向データバス
1530ウィンドウメモリサブシステム
1530aウィンドウアドレスデコーダ
1530b〜1530d ウィンドウメモリ
1535 第2のアドレスバス
1536 第2のデータバス
1550 第1マルチプレクサ
1555判定レジスタ
1558 ビットセレクト
1560アドレス変換ユニット
1562状態レジスタ
1564 前状態ユニット
1566 第2マルチプレクサ
1567 トレースバックプロセッサ出力
1568 第1ANDゲート
1569 第2ANDゲート
1570 NOTゲート
1580 ANDゲート
1582トライステートバッファ
1583 第2トライステートバッファ
1584 第1論理ブロック
1586 第2論理ブロック
1590 ウィンドウカウント
1591ビットカウント
1592 第1加算器
1593 第2加算器
1594 第3加算器
1596 マルチプレクサ
1597スクランブル
1599定数
1610a〜1610h 減算器
1710a〜1710h最大値比較器
1715最大パスメトリック
1720 レジスタ
1730 減算器
1735ロード信号
1810a〜1810hメモリユニット
1910a1〜1910h1 第3バンクのマルチプレクサ
1910a2〜1910d2ラッチ
1910a3〜1910d3 第1バンクのマルチプレクサ
1915a〜1915d 第2バンクのマルチプレクサ
1920a〜1920d 第1バンクのXORゲート
2010a〜2010d マルチプレクサ
2015a〜2015d 保持レジスタ
2020 マルチプレクサバンク
2030 第2マルチプレクサバンク
2100,2110 マルチプレクサ
2210 ウィンドウデコーダ
2212カウンタ
2214 デマルチプレクサ
2216二重バッファメモリバンク0
2218 二重バッファメモリバンク1
2220 第1マルチプレクサ
2222 第2マルチプレクサ
2226 入力データ
2240 1対nデマルチプレクサ
2242 第1のm対1マルチプレクサ
2244 第2のm対1マルチプレクサ
2310 減算器
2320 第2減算器
2330 第1マルチプレクサ
2340 第2マルチプレクサ
3010 保持レジスタ
3200 符号器
3210Mビットシフトレジスタ
3215 RSC_ENABLE
3220入力ビット
3225符号語
3230 Mビット非組織符号器
3240 多項式
3250状態ビット
3260 ANDゲート
3270,3275 XORゲート
3280遷移入力
3285クロック信号
3290 リセット信号

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ