(57)【要約】【課題】ターボ復号の過程で行なわれるインタリーブ処理及びデインタリーブ処理に要するメモリへのアクセス競合の発生を回避する。【解決手段】複数の要素復号器１２−ｉ（ｉ＝１〜Ｍ）と、それぞれの要素復号結果を行列状メモリ空間において記憶するメモリ部１５と、前記行列状メモリ空間において、要素復号器１２−ｉ毎に、要素復号結果を異なる行に属するアドレスを書き込み開始アドレスとして当該行又は列方向にそれぞれ書き込んだ後、異なる行に属するアドレスを読み出し開始アドレスとして当該列又は行方向へそれぞれ読み出すメモリ制御部１９とをそなえて構成する。【選択図】図１
2008135813.tif 000002
【特許請求の範囲】
【請求項１】
ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号器であって、
復号対象信号を複数に分割した各分割信号を並列に要素復号する複数の要素復号器と、
前記各要素復号器の要素復号結果を異なる行に対して並列に読み書き可能な行列状メモリ空間において記憶するメモリ部と、
前記行列状メモリ空間において、前記要素復号器毎に、前記要素復号結果を異なる行に属するアドレスを書き込み開始アドレスとして当該行又は列方向にそれぞれ書き込んだ後、異なる行に属するアドレスを読み出し開始アドレスとして当該列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力するメモリ制御部とをそなえて構成されたことを特徴とする、ターボ復号器。
【請求項２】
前記復号対象信号の分割数をＭ、前記行列状メモリ空間の行数をＲ（≧Ｍ）、列数をＣ、前記復号対象信号のビット数をＮ（≦Ｒ×Ｃ）とした場合に、
前記要素復号器がＭ個そなえられるとともに、
該メモリ部が、
Ｃビットの容量をもつメモリをＲ個そなえることによりＲ行Ｃ列の前記行列状メモリ空間を構成していることを特徴とする、請求項１記載のターボ復号器。
【請求項３】
該メモリ制御部が、
前記Ｎ＜Ｒ×Ｃである場合に、（Ｒ×Ｃ−Ｎ）ビット分のパディングデータを前記要素復号器のいずれかの要素復号結果として該メモリ部に書き込み、もしくは、一時停止動作を行ない、当該パディングデータの前記要素復号器への読み出し時に当該要素復号器での要素復号を一時的に停止することを特徴とする、請求項２記載のターボ復号器。
【請求項４】
該メモリ制御部が、
前記列又は行方向への読み出し時に前記要素復号器毎の読み出し開始対象の要素復号結果が同じ列又は行に属する場合に、前記要素復号器毎に読み出し開始タイミングをずらすことを特徴とする、請求項１記載のターボ復号器。
【請求項５】
前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを吸収する緩衝バッファ部をさらにそなえたことを特徴とする、請求項４記載のターボ復号器。
【請求項６】
ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号器であって、
復号対象信号を複数に分割した各分割信号を並列に要素復号する複数の要素復号器と、
前記各要素復号器の要素復号結果を異なる行に対して並列に読み書き可能な行列状メモリ空間において記憶するメモリ部と、
前記行列状メモリ空間において、前記要素復号器毎に、前記要素復号結果を当該行又は列方向にそれぞれ書き込み、列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力するメモリ制御部と、
前記行列状メモリ空間の行列サイズに応じて、前記要素復号器毎の前記要素復号結果が異なる行に属するアドレスを書き込み開始アドレスとして前記書き込みが行なわれ、異なる行に属するアドレスを読み出し開始アドレスとして前記読み出しが行なわれるよう、前記復号対象信号の分割数を制御する分割数制御部とをそなえて構成されたことを特徴とする、ターボ復号器。
【請求項７】
ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号方法であって、
復号対象信号を複数に分割した各分割信号を並列に複数の要素復号器にて要素復号し、
各要素復号結果をメモリ部の行列状メモリ空間において、前記要素復号器毎に、異なる行に属するアドレスを書き込み開始アドレスとして当該行又は列方向にそれぞれ書き込んだ後、異なる行に属するアドレスを読み出し開始アドレスとして当該列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力することを特徴とする、ターボ復号方法。
【請求項８】
ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号方法であって、
復号対象信号を複数に分割した各分割信号を並列に複数の要素復号器にて要素復号し、
各要素復号結果を行列状メモリ空間において、前記要素復号器毎に、当該行又は列方向にそれぞれ書き込み、列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力し、
前記行列状メモリ空間の行列サイズに応じて、前記要素復号器毎の前記要素復号結果が異なる行に属するアドレスを書き込み開始アドレスとして前記書き込みが行なわれ、異なる行に属するアドレスを読み出し開始アドレスとして前記読み出しが行なわれるよう、前記復号対象信号の分割数を制御することを特徴とする、ターボ復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ターボ復号器及びターボ復号方法に関する。
【背景技術】
【０００２】
誤り訂正符号は、移動通信、ＦＡＸ、銀行のキャッシュディスペンサ等、データ通信を行なう際にデータを誤りなく伝送する場合、あるいは、磁気ディスク、ＣＤなどの大容量データ保存を行なう際にデータを誤りなく読み出すことが要求されるシステムに適用される。
誤り訂正符号の一種であるターボ符号は、誤り訂正符号の中でも、符号化利得の高い符号として知られており、移動通信分では、第３世代携帯電話システムで使用されており、次世代の携帯電話システムでも使用されることが期待される。
【０００３】
図１０に、ターボ符号器及びターボ復号器を含む通信システムの構成を示す。なお、この図１０中に示す記号は以下の通りである。
情報          ｕ＝｛u1,u2,…,uN｝
符号化データ  xa＝｛xa1,xa2,…,xak,…,xaN｝
xb＝｛xb1,xb2,…,xbk,…,xbN｝
xc＝｛xc1,xc2,…,xck,…,xcN｝
受信データ    ya＝｛ya1,ya2,…,yak,…,yaN｝
yb＝｛yb1,yb2,…,ybk,…,ybN｝
yc＝｛yc1,yc2,…,yck,…,ycN｝
復号結果      ｕ′＝｛u'1,u'2,…,u'N｝
そして、この図１０に示す通信システムでは、長さＮ（ビット）の情報ｕは、送信機（ターボ符号器１００）により符号化データxa，xb，xcに符号化される。符号化データは、通信路２００により伝搬される際に雑音やフェージング等の影響を受けて、受信信号ya，yb，ycとして受信機（ターボ復号器３００）にて受信される。ターボ復号器３００では、受信信号ya，yb，ycから復号処理を行ない、復号結果ｕ′を得る。
【０００４】
次に、図１１にターボ符号器１００の要部構成を示す。この図１１に示すターボ符号器１００は、２つの要素符号器（ＥＮＣ）１０１，１０２と、インタリーバ１０３とをそなえて構成され、送信すべき情報ｕそのもの（xa）と、インタリーバ１０３によるインタリーブ前の情報ｕを要素符号器１０１で畳み込み符号化した符号化データ（xb）と、情報ｕをインタリーバ１０３でインタリーブした情報ｕをもう１つのエンコーダで畳み込み符号化した符号化データ（xc）との組をターボ符号として送信する。
【０００５】
一方、ターボ復号器３００は、例えば図１２に示すように、伝送路値メモリ（ＲＡＭ）３０１と、２つの要素復号器（ＤＥＣ）３０２，３０５と、２つのインタリーバ３０３，３０４と、デインタリーバ３０６とをそなえて構成される。
このターボ復号器３００では、まず、伝送路値ＲＡＭ３０１に記憶された伝送路値、即ち、受信信号ya，yb，ycのうち、受信信号yaと受信信号ybとの組を用いて要素復号器３０２にて要素復号を行なう。なお、要素復号には、例えば、ＭＡＰ（Maximum A Posteriori Probability）やＳＯＶＡ（Soft Output Viterbi Algorithm）等の復号方法を用いることができる。
【０００６】
次に、その復号結果の尤度と受信信号ycとの組を用いて要素復号器３０５にて要素復号を行なう。この際、要素復号器３０２の復号結果の尤度は、インタリーバ３０３にてインタリーブ処理されてから要素復号器３０５に入力される。
そして、要素復号器３０５の復号結果の尤度は、デインタリーバ３０６にてデインタリーブ処理され、再び要素復号器３０２に入力される。以後、ターボ復号器３００は、上記処理を所定回数繰り返すことによってターボ復号処理を行ない、誤り率特性を改善する。
【０００７】
なお、ターボ符号器及びターボ復号器の動作原理の詳細については、例えば後記特許文献１の段落０００２〜段落００２８に記述されている。
図１２ではターボ復号の原理説明上、２つの要素復号器３０２，３０５と、２つのインタリーバ３０３，３０４と、デインタリーバ３０６とをターボ復号器３００の構成要素として示しているが、ハードウェア構成上、例えば図１３に示すように、２つの要素復号器３０２及び３０５を１つの要素復号器３０７として共用化するとともに、インタリーバ３０３，３０４及びデインタリーバ３０６をインタリーバ／デインタリーバ（インタリーブ／デインタリーブＲＡＭ）３０８として共用化し、これら共用の要素復号器３０７及びインタリーバ／デインタリーバ３０８とを、インタリーブ時とデインタリーブ時とで時分割に動作させる構成とするのが一般的である。
【０００８】
ところで、W-CDMAシステムでの技術標準〔3rd Generation Partnership Project(3GPP)〕では、後記非特許文献１にターボ符号にて使用されるインタリーバの仕様が規定されている。この場合のターボ復号器では、インタリーバ／デインタリーバはＲ×Ｃの行列状のメモリ空間を用いてインタリーブ／デインタリーブ処理を行なう。
即ち、例えば図１５に概念的に示すように、インタリーブ動作の場合は、（１）シーケンシャル（リニア）なライトアドレス指定により、入力順序に従って行方向に入力データを行毎に連続的に書き込み（これをリニアアクセスと呼ぶ）、所定のインタリーブパターンに基づくリードアドレス指定により、（２）行内での並び替え、及び、（３）行間（行単位）でのデータ並び替えのいずれか一方又は双方を行ない、（４）列方向にデータを読み出す。
【０００９】
なお、前記（２）、（３）のデータ並び替え処理の先後は不問である。また、前記行内又は行間でのデータ並び替えは前記メモリ空間上で現実に記憶位置が変更されることを意味するものではなく、前記インタリーブパターンに基づくリードアドレス指定により当該行内又は行間でのデータ並び替えに相当する処理が実現されることを意味している（以降の説明においても同じ）。さらに、デインタリーブ動作では、所定のデインタリーブパターンに基づくアドレス指定により、上記インタリーブ動作とは逆の動作となる。
【００１０】
図１２に示した構成は、ターボ復号器に必要なメモリ量を削減し回路規模を削減するための一手法であるが、復号に要する時間を短縮する手法として、特許文献１により提案される手法がある。
即ち、この特許文献１には、情報（符号）長Ｎ（ビット）の復号対象信号をＭ個（Ｍは２以上の整数）の信号（ブロック）に分割し、それぞれＮ／Ｍビットの分割ブロックについて要素復号を同時並列的に実行することにより処理時間を短縮する（Ｍ倍速処理する）ことが示されている。
【特許文献１】特開２００４−１５２８５号公報
【非特許文献１】3GPP TS 25.212 V6.9.0 (2006-09), Section 4.2.3.2 (Turbo coding)
【発明の開示】
【発明が解決しようとする課題】
【００１１】
図１４に、上記のような要素復号器の並列実装による処理時間短縮技術を適用したターボ復号器の要部構成を示す。
この図１４に示すターボ復号器３００は、伝送路値メモリ（ＲＡＭ）３０１と、Ｍ個（並列）の要素復号器（ＤＥＣ＃１〜ＤＥＣ＃Ｍ）３０７−１〜３０７−Ｍと、インタリーブ／デインタリーブメモリ（ＲＡＭ）３０８とをそなえて構成され、伝送路値ＲＡＭ３０１に伝送路値として記憶されたＮビットの受信信号（ya，yb，yc）がＭ分割されて情報（符号）長Ｎ／Ｍのブロック単位で各要素復号器３０７−１〜３０７−Ｍにて同時並列的に処理されて、インタリーブ／デインタリーブＲＡＭ３０８に入力される。
【００１２】
ここで、インタリーブ／デインタリーブＲＡＭ３０８では、複数の要素復号器３０７−１〜３０７−Ｍに対して同時アクセスが発生する。例えば、インタリーブ動作時には、各要素復号器３０７−１〜３０７−Ｍは、Ｎビットの符号をＭ個に分割した分割ブロックについて要素復号し、それぞれの要素復号結果をシーケンシャル（リニア）なアドレス指定（リニアアクセス）により、データ出力順にＲＡＭ３０８に書き込みを行ない、インタリーブ後のアドレス指定（所定のインタリーブパターン）にてＲＡＭ３０８からＭ個の要素復号結果を同時並列的に読み出す。そのため、ＲＡＭ３０８に対して、書き込み及び読み出し時のそれぞれでＭ個の同時アクセスが発生する。
【００１３】
この場合、書き込み時は、リニアアクセスであることから、アドレス上位などを使用してＲＡＭ３０８のメモリ空間を分割（バンク分割）することによりアクセス競合を回避することができるが、読み出し時にはインタリーブの結果、情報長Ｎに対して略ランダムアクセスとなり、同一時刻に同一バンクに対して複数のアクセスが発生する可能性がある。また、これとは逆に、読み出しに合わせてＲＡＭ３０８をバンク分割したとしても、書き込み時にランダムアクセスとなりアクセス競合が発生する可能性がある。
【００１４】
そのため、単純なバンク分割では書き込み及び読み出し時のアクセス競合を回避することができない。なお、デインタリーブ時についても、インタリーブ時の書き込み及び読み出しのアドレス指定が逆となるために全く同じことがいえる。
このようなアクセス競合を回避するためには、冗長なメモリ容量を用意したり、ＲＡＭ３０８のアクセスクロック速度を上げたり、処理時間を犠牲にしてアクセス競合が発生しないようにしたりすることが考えられる。
【００１５】
しかしながら、いずれの場合でも、回路規模、もしくは、処理時間及び消費電流等にインパクトを与えることとなるために実装上好ましいとはいえない。また、より高速な処理を実現すべく要素復号器の並列数を増やした場合には、これらの方法では対応が極めて困難になる。
本発明は、このような課題に鑑み創案されたもので、複数の要素復号器を並列動作させるターボ復号器において、ターボ復号の過程で行なわれるインタリーブ処理及びデインタリーブ処理に用いるメモリへのアクセス競合の発生を回避することを目的とする。
【００１６】
好ましくは、ターボ復号の過程で行なわれるインタリーブ処理及びデインタリーブ処理に要するメモリ容量を増加させることなく、メモリアクセス競合の発生を回避できるようにすることを目的とする。
【課題を解決するための手段】
【００１７】
上記の目的を達成するために、本発明では、下記のターボ復号器及びターボ復号方法を用いることを特徴としている。即ち、
（１）本発明のターボ復号器の第１の態様は、ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号器であって、復号対象信号を複数に分割した各分割信号を並列に要素復号する複数の要素復号器と、前記各要素復号器の要素復号結果を異なる行に対して並列に読み書き可能な行列状メモリ空間において記憶するメモリ部と、前記行列状メモリ空間において、前記要素復号器毎に、前記要素復号結果を異なる行に属するアドレスを書き込み開始アドレスとして当該行又は列方向にそれぞれ書き込んだ後、異なる行に属するアドレスを読み出し開始アドレスとして当該列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力するメモリ制御部とをそなえて構成されたことを特徴としている。
【００１８】
（２）ここで、前記復号対象信号の分割数をＭ、前記行列状メモリ空間の行数をＲ（≧Ｍ）、列数をＣ、前記復号対象信号のビット数をＮ（≦Ｒ×Ｃ）とした場合に、前記要素復号器がＭ個そなえられるとともに、該メモリ部が、Ｃビットの容量をもつメモリをＲ個そなえることによりＲ行Ｃ列の前記行列状メモリ空間を構成しているのが好ましい。
（３）また、該メモリ制御部は、前記Ｎ＜Ｒ×Ｃである場合に、（Ｒ×Ｃ−Ｎ）ビット分のパディングデータを前記要素復号器のいずれかの要素復号結果として該メモリ部に書き込み、もしくは、一時停止動作を行ない、当該パディングデータの前記要素復号器への読み出し時に当該要素復号器での要素復号を一時的に停止するようにしてもよい。
【００１９】
（４）さらに、該メモリ制御部は、前記列又は行方向への読み出し時に前記要素復号器毎の読み出し開始対象の要素復号結果が同じ列又は行に属する場合に、前記要素復号器毎に読み出し開始タイミングをずらすようにしてもよい。
（５）また、本ターボ復号器は、前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを吸収する緩衝バッファ部をさらにそなえていてもよい。
【００２０】
（６）さらに、該メモリ制御部は、前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを吸収すべく前記各要素復号器での要素復号タイミングを調整するようにしてもよい。
（７）また、本発明のターボ復号復号器の第２の態様は、ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号器であって、復号対象信号を複数に分割した各分割信号を並列に要素復号する複数の要素復号器と、前記各要素復号器の要素復号結果を異なる行に対して並列に読み書き可能な行列状メモリ空間において記憶するメモリ部と、前記行列状メモリ空間において、前記要素復号器毎に、前記要素復号結果を当該行又は列方向にそれぞれ書き込み、列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力するメモリ制御部と、前記行列状メモリ空間の行列サイズに応じて、前記要素復号器毎の前記要素復号結果が異なる行に属するアドレスを書き込み開始アドレスとして前記書き込みが行なわれ、異なる行に属するアドレスを読み出し開始アドレスとして前記読み出しが行なわれるよう、前記復号対象信号の分割数を制御する分割数制御部とをそなえて構成されたことを特徴としている。
【００２１】
（８）さらに、本発明のターボ復号方法の第１の態様は、ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号方法であって、復号対象信号を複数に分割した各分割信号を並列に複数の要素復号器にて要素復号し、各要素復号結果をメモリ部の行列状メモリ空間において、前記要素復号器毎に、異なる行に属するアドレスを書き込み開始アドレスとして当該行又は列方向にそれぞれ書き込んだ後、異なる行に属するアドレスを読み出し開始アドレスとして当該列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力することを特徴としている。
【００２２】
（９）ここで、前記復号対象信号の分割数をＭ、前記行列状メモリ空間の行数をＲ（≧Ｍ）、列数をＣ、前記復号対象信号のビット数をＮ（≦Ｒ×Ｃ）とした場合に、前記要素復号器がＭ個そなえられるとともに、該メモリ部が、Ｃビットの容量をもつメモリをＲ個そなえることによりＲ行Ｃ列の前記行列状メモリ空間を構成しているのが好ましい。
（１０）また、前記Ｎ＜Ｒ×Ｃである場合に、（Ｒ×Ｃ−Ｎ）ビット分のパディングデータを前記要素復号器のいずれかの要素復号結果として該メモリ部に書き込み、もしくは、一時停止動作を行ない、当該パディングデータの前記要素復号器への読み出し時に当該要素復号器での要素復号を一時的に停止するようにしてもよい。
【００２３】
（１１）さらに、前記列又は行方向への読み出し時に前記要素復号器毎の読み出し開始対象の要素復号結果が同じ列又は行に属する場合に、前記要素復号器毎に読み出し開始タイミングをずらすようにしてもよい。
（１２）また、前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを緩衝バッファ部により吸収するようにしてもよい。
【００２４】
（１３）さらに、前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを吸収すべく前記各要素復号器での要素復号タイミングを調整するようにしてもよい。
（１４）また、本発明のターボ復号方法の第２の態様は、ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号方法であって、復号対象信号を複数に分割した各分割信号を並列に複数の要素復号器にて要素復号し、各要素復号結果を行列状メモリ空間において、前記要素復号器毎に、当該行又は列方向にそれぞれ書き込み、列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力し、前記行列状メモリ空間の行列サイズに応じて、前記要素復号器毎の前記要素復号結果が異なる行に属するアドレスを書き込み開始アドレスとして前記書き込みが行なわれ、異なる行に属するアドレスを読み出し開始アドレスとして前記読み出しが行なわれるよう、前記復号対象信号の分割数を制御することを特徴としている。
【発明の効果】
【００２５】
上記本発明によれば、要素復号器毎の前記要素復号結果が異なる行に対して並列に読み書き可能な行列状メモリ空間の異なる行に属するアドレスを書き込み開始アドレスとして書き込まれた後、異なる行に属するアドレスを読み出し開始アドレスとして読み出されるので、少なくとも次のような効果ないし利点が得られる。
即ち、高速なターボ復号を行なうことを目的として複数の要素復号器を並列動作させるターボ復号器において、ターボ復号の過程で行なわれるインタリーブ処理及びデインタリーブ処理に要するメモリ容量を増加させることなく、また、メモリアクセスクロックや処理遅延時間を増大させることなく、メモリアクセス競合の発生を回避することが可能となる。
【発明を実施するための最良の形態】
【００２６】
以下、図面を参照して、本発明の実施の形態を説明する。ただし、以下に示す実施形態は、あくまでも一例に過ぎず、本発明の趣旨を逸脱しない範囲で種々変形して実施できることはいうまでもない。
〔Ａ〕第１実施形態の説明
図１は本発明の第１実施形態としてのターボ復号器の要部構成を示すブロック図で、この図１に示すターボ復号器１は、例えば図１０に示した通信システムを構成する受信機に適用されるものであって、伝送路値メモリ（ＲＡＭ）１１と、Ｍ個（Ｍは２以上の整数）の要素復号器（ＤＥＣ＃１〜ＤＥＣ＃Ｍ）１２−１〜１２−Ｍと、インタリーバ／デインタリーバ部１３とをそなえて構成され、当該インタリーバ／デインタリーバ部１３は、さらに、並列数（ＤＥＣ＃→バンク＃）変換部（接続切替部）１４と、メモリ部１５と、並列数（バンク＃→ＤＥＣ＃）変換部（接続切替部）１６と、制御部（メモリ制御部）１９とをそなえて構成されている。なお、送信機（ターボ符号器）の構成は、例えば図１１に示した構成と同一若しくは同様のものとする。
【００２７】
ここで、伝送路値ＲＡＭ１１は、既述の受信信号（復号対象信号）ya，yb，ycを伝送路値として記憶するものであり、要素復号器１２−ｉ（ｉ＝１〜Ｍ）は、それぞれ、前記伝送路値の情報長Ｎ（ビット）をＭ個のブロックに分割したブロック（情報長Ｎ／Ｍビット）単位で、伝送路値ＲＡＭ１１及び／又は接続切替部１６から入力される情報（伝送路値及び／又はインタリーブ又はデインタリーブ処理された前回の要素復号結果）を用いて既述のＭＡＰやＳＯＶＡ等による要素復号を施すものである。
【００２８】
即ち、各要素復号器１２−ｉは、最初は伝送路値ＲＡＭ１１における受信信号yaと受信信号yb及びycの一方とを用いて要素復号し、その後は、接続切替部１６から入力される前回の要素復号結果（尤度）と、伝送路値ＲＡＭ１１における前回の復号処理で使用しなかった受信信号（yb及びycの他方）とを用いて所定回数に達するまで繰り返し要素復号することを、Ｎビットの復号対象信号をＭ個の信号（ブロック）に分割した分割信号について同時並列的に行なうのである。
【００２９】
インタリーバ／デインタリーバ部１３は、ターボ復号過程において要素復号間で交互に繰り返し実施されるインタリーブ処理とデインタリーブ処理とで共用され、各要素復号器１２−ｉの要素復号結果についてデータ並び替え（インタリーブ処理又はデインタリーブ処理）をそれぞれ所定のアドレス指定（インタリーブパターン又はデインタリーブパターン）に従って施すもので、具体的には、制御部１９によって、メモリ部１５に対するアドレス指定（ライトアドレス及びリードアドレス）が前記インタリーブパターン又はデインタリーブパターンに従って制御されることで、共用のメモリ部１５にてインタリーブ処理とデインタリーブ処理とを実施できるようになっている。
【００３０】
ここで、メモリ部１５は、本例では、Ｒ個の容量Ｃ（ビット）のバンクメモリ（＃１〜＃Ｒ）１５−１〜１５−Ｒにより構成され、全体でＲ行Ｃ列（Ｒ×Ｃ）の、異なる行に対して並列に読み書き可能な行列状メモリ空間が形成されている。なお、各バンクメモリ（以下、単にバンクともいう）１５−ｊ（ｊ＝１〜Ｒ）は、それぞれ、例えば、シングルポートＲＡＭにより構成される。
【００３１】
そして、本例では、当該Ｒ×Ｃの行列状メモリ空間を用いて入力データ、即ち、要素復号結果インタリーブ又はデインタリーブ処理を実施する。即ち、インタリーブ動作時には、要素復号器１２−ｉ毎のシーケンシャル（リニア）なライトアドレス指定により、データ（要素復号結果）の入力順序に従って行方向に入力データを書き込み（リニアアクセス）、所定のインタリーブパターンに応じたリードアドレス指定により、行内での並び替え及び／又は行間（行単位）での並び替えを行ない、列方向にデータを読み出す。
【００３２】
つまり、当該インタリーブ時には、行内並び替え及び行間並び替えのプロセスのいずれか一方又は双方が含まれるが、当該プロセスによって、或る行（バンク）に書き込まれたデータ同士は、インタリーブ後も同一行（同一バンク）内に存在することになる。このように、インタリーバとしてブロックインタリーバ、もしくは、ブロックインタリーバとその他のインタリーバを組み合わせた形のインタリーバを使用していれば、本発明を適用して、メモリアクセス競合を回避することができる。なお、デインタリーブ動作時には、インタリーブ時と逆の動作（アドレス指定）となる。
【００３３】
接続切替部１４は、各要素復号器１２−ｉと各バンクメモリ１５−ｊとの間を選択的に接続して、Ｍ並列の要素復号器１２−ｉのいずれかの復号結果をＲ並列のバンクメモリ１５−ｊのいずれかへ出力するもので、例えば、各要素復号器１２−ｉで得られたＮ／ＭビットずつＭ並列の復号結果が１バンク１５−ｊあたり最大ＣワードずつＲ並列のバンク１５−ｊにそれぞれ入力されるように、その入出力が制御部１９によって切り替え制御されるようになっている。
【００３４】
接続切替部１６は、各バンク１５−ｊと各要素復号器１２−ｉとの間を選択的に接続して、Ｒ並列のバンク１５−ｊのいずれかから読み出された要素復号結果のインタリーブ又はデインタリーブ結果をＭ並列の要素復号器１２−ｉのいずれかへ出力（フィードバック）することができるもので、例えば、各バンク１５−ｊから最大Ｃビットずつ読み出されたＲ並列の復号結果が１要素復号器１２−ｉあたりＮ／Ｍビットずつ各要素復号器１２−ｉに同時並列的に入力されるように、その入出力が切り替え制御されるようになっている。
【００３５】
制御部１９は、上記の要素復号器１２−ｉ，インタリーバ／デインタリーバ部１３（接続切替部１４，１６，メモリ部１５）の動作を制御するもので、前記のインタリーブパターン及びデインタリーブパターンを図示しないＲＡＭやＲＯＭ等の内蔵メモリに記憶しており、所定周期（インタリーブとデインタリーブとの切替周期）で、上記接続切替部１４，１６を制御するとともに、前記パターンのいずれかを選択的に使用することで、インタリーブ動作時にはインタリーブパターン、デインタリーブ動作時にはデインタリーブパターンに従ってメモリ部１５に対するアドレス指定を行ない、ターボ復号過程における要素復号処理、インタリーブ処理及びデインタリーブ処理を制御するようになっている。
【００３６】
以下、上述のごとく構成されたターボ復号器１の動作を説明すると、伝送路値ＲＡＭ１１及び接続切替部１６にて、Ｎビットの復号対象信号がＭ分割されＮ／Ｍビットずつ要素復号器１２−ｉに同時並列的に入力され、各要素復号器１２−ｉにて、同時並列的に要素復号され、それぞれの要素復号結果がインタリーバ／デインタリーバ１３（接続切替部１４）にＭ並列に入力される。
【００３７】
接続切替部１４は、制御部１９からの制御に従い、Ｍ並列で入力された要素復号結果をメモリ部１５のバンク１５−ｊのいずれかに出力する。ここで、要素復号器１２−ｉの並列数Ｍがインタリーブの行数（つまりはバンク数）Ｒ以下（Ｍ≦Ｒ）である場合、インタリーブ時（書き込み時）には、要素復号器１２−ｉ毎のメモリ部１５（バンク１５−ｊ）に対するライトアクセスは、メモリ部１５のＲ行Ｃ列の行列状メモリ空間の行方向（つまり同一バンク１５−ｊ内）へのリニアアクセスとなり、行毎に要素復号結果がその入力順序でシーケンシャルに書き込まれてゆくことになる。
【００３８】
かかる動作を概念的に表すと例えば図２のようになる。ただし、この図２では、要素復号器１２−ｉの並列数（復号対象信号の分割数）Ｍ＝３、バンク数Ｒ＝５、１バンク１５−ｊあたりの容量（ビット数）Ｃ＝８とし、各バンク（＃１〜＃５）１５−１〜１５−５によりＲ×Ｃ＝５×８の行列状メモリ空間が形成されている場合を想定している。また、図２の（２）は要素復号器（＃１〜＃３）１２−１〜１２−３の各要素復号結果の出力順序を時間軸上で表現したものであり、図２の（１）は当該各要素復号結果の書き込み時の前記行列に対するアクセス（ライトアドレス指定）の様子を示している。さらに、図２の（３）は前記行列における行内及び／又は行間のデータ並び替え（インタリーブ）を経た後のデータ配列に対するアクセス（リードアドレス指定）の様子を示しており、図２の（４）は図２の（３）で示される読み出し順序で読み出された各要素復号結果の要素復号器１２−１〜１２−３への出力順序を時間軸上で表現したものである。加えて、図２の（２）及び（４）における各要素復号結果に付した番号は、その要素復号結果が属するバンク１５−ｊの番号に対応している。以上の表現方法は、以降の説明で用いる図３，図５，図７，図９においても同様である。
【００３９】
即ち、本例のターボ復号器１では、図２の（１）及び（２）に示すように、Ｎ＝４０ビットの復号対象信号を各要素復号器１２−１〜１２−３で同時並列的に要素復号した結果の最初のＣ（＝８）ビット分が、前記行列の第１行に相当するバンク１５−１に、続くＣビット分が前記行列の第２行に相当するバンク１５−２に、それぞれの先頭アドレスからシーケンシャルに書き込まれ、同様に、Ｃビット分ずつの要素復号結果が前記行列の第ｊ行に相当するバンク１５−ｊに、その先頭アドレスからシーケンシャルに書き込まれてゆくことになる。
【００４０】
したがって、各要素復号器１２−１〜１２−３から各バンク１５−ｊに対して同時アクセスの発生するアドレス（アクセス開始点）は互いにＣ（＝８）以上の距離が離れることになる（各要素復号器１２−１〜１２−３からのアクセス開始点がそれぞれ異なる行に属するアドレスになる）ため、同一バンク１５−ｊへの同時アクセスは発生しない。
一方、読み出し時には、図２の（３）に示すように、要素復号器１２−１〜１２−３毎のリードアクセスは、列方向（つまり異なるバンク１５−ｊ）へのリニアアクセスとなるから、各バンク１５−１〜１５−５に対してＲサイクルに１回ずつ順番にリードアクセスが発生して要素復号結果が読み出されることになる。したがって、それぞれの要素復号器１２−１〜１２−３毎の最初のリードアクセス（アクセス開始点）が異なるバンク１５−ｊである限り、アクセス競合は発生しない。
【００４１】
デインタリーブ時は、書き込み及び読み出しのアドレス指定が上記インタリーブ時とは逆の動作となる。即ち、各バンク１５−ｊに対して、Ｒサイクルに１回ずつ順番にアクセスが発生して要素復号結果が各バンク１５−ｊ（つまり列方向）に書き込まれる一方、行方向のリニアアクセスによりバンク１５−ｊ毎に要素復号結果が読み出されることになる。したがって、デインタリーブ時の書き込み及び読み出し時においても、アクセス競合を回避することができる。
【００４２】
なお、各バンク１５−ｊから読み出された要素復号結果（インタリーブ又はデインタリーブ結果）は、接続切替部１６に同時並列的に入力され、Ｎ／ＭビットずつのＭ並列で各要素復号器１２−ｉに入力されることになる。
以上のように、本実施形態のターボ復号器１によれば、要素復号器１２−ｉ毎の要素復号結果がＲ×Ｃの行列状メモリ空間の異なる行に属するアドレスをアクセス開始点（書き込み開始アドレス）として行方向（又は列方向）に書き込み、異なる行に属するアドレスをアクセス開始点（読み出し開始アドレス）として列方向（又は行方向）に読み出すので、ターボ復号の過程で交互に繰り返し行なわれるインタリーブ処理及びデインタリーブ処理時の同一バンク１５−ｊに対するアクセス競合を回避することができる。
【００４３】
したがって、高速なターボ復号を行なうことを目的として複数の要素復号器を並列動作させるターボ復号器において、インタリーブ処理及びデインタリーブ処理に要するメモリ容量を増加させることなく、また、メモリアクセスクロックや処理遅延時間を増大させることなく、メモリアクセス競合の発生を回避して、正しいターボ復号動作を実現することが可能となる。
【００４４】
（Ａ１）変形例の説明
図１により上述したターボ復号器１の構成において、インタリーバ／デインタリーバ部１３に入力される要素復号結果のビット数ＮがＮ＜Ｒ×Ｃである時に（Ｒ×Ｃ−Ｎ）分のダミービットを付加してインタリーバ／デインタリーバ部１３にてインタリーブ又はデインタリーブ処理を行なう場合、即ち、例えば要素復号器１２−ｉにてＮビットの要素復号結果のデータ末尾にダミービットを付加し、メモリ部１５からの出力（読み出し）時には当該ダミービットは削除する（読み飛ばす）場合、インタリーブパターン（デインタリーブパターン）によっては、メモリ部１５に対するアクセス競合が発生することがある。
【００４５】
例えば図３の（２）に示すように、各要素復号器１２−１〜１２−３による要素復号結果のビット数がＮ＝３５（＜５×８＝４０）の場合、４０−３５＝５ビット分のダミービットが付加されることになり、図３の（１）に斜線部で示すように、Ｒ×Ｃ（５×８）の行列の最終行に相当するバンク１５−５に当該５ビット分のダミービットが書き込まれることになる。そして、図２の（３）の例と同様に、図３の（３）に示すごとく、行間及び／又は行内でのインタリーブ処理を経た後の列方向への読み出しを行なう際には、斜線部で表したダミービットを読み飛ばすように、前記制御部１９によってリードアドレス指定される。
【００４６】
その結果、各要素復号器１２−１〜１２−３へは、図３の（４）に示す順序で要素復号結果が出力（入力）されることになる。ここで、要素復号器１２−２及び１２−３に着目すると、点線枠２０で示すビット列のバンク番号が共通しているため、バンク１５−１〜１５−４に関して、複数の要素復号器１２−２及び１２−３から同一バンク１５−１〜１５−４に対して同時刻にリードアクセスが発生しアクセス競合が生じることになる。
【００４７】
そこで、本例では、図１に示した構成を前提として、当該アクセス競合を回避すべく、ダミービットに関して、読み出し時に当該ダミービットの出力先である要素復号器１２−ｉを当該ダミービットのタイミングでディゼーブル（一時停止）制御することにより、前記実施形態〔図２の（３）及び（４）〕と同様の動作を実現する。即ち、図３の（５）及び（６）に示すように、前記制御部１９によって、斜線部で示すダミービットの要素復号器１２−１〜１２−３への入力タイミングで対応する要素復号器１２−１〜１２−３をディゼーブル制御する。これにより、図３の（４）中に枠２０で示すような、ダミービットの削除に起因するアクセス競合を回避することが可能となる。なお、上記一時停止動作は、ダミービットの書き込み時に行なってもよい。
【００４８】
〔Ｂ〕第２実施形態の説明
図４は本発明の第２実施形態に係るターボ復号器の要部構成を示すブロック図で、この図４に示すターボ復号器１Ａは、図１により前述したターボ復号器１の構成に比して、インタリーバ／デインタリーバ部１３において、接続切替部１４の入力側に緩衝バッファ部１７が設けられるとともに、接続切替部１６の出力側に緩衝バッファ部１８が設けられ、且つ、既述の制御部１９に代えて制御部（メモリ制御部）１９Ａが設けられている点が異なる。なお、その余の既述の符号と同一符号を付した構成要素については、特に断らない限り、既述の構成要素と同一若しくは同様の機能を具備するものである。
【００４９】
ここで、緩衝バッファ部１７，１８は、それぞれ、制御部１９Ａの制御の下、Ｍ並列の入力データ（要素復号結果）の出力タイミング（位相）を個々に調整（遅延）することができるもので、緩衝バッファ部１８に着目すると、例えば図５の（６）に示すように、接続切替部１６と要素復号器１２−ｉ（ここでは、ｉ＝１〜４）との間のＭ並列のデータラインのうち、要素復号器１２−ｉと接続されたデータライン上に、同じ遅延量（例えば１ビット）をもつ（Ｍ−ｉ）個の遅延器（シフトレジスタ：ＳＲ）２１がシーケンシャルに介装された構成又はこれと等価な構成を有し、要素復号器１２−ｉへのＭ並列の要素復号結果を各要素復号器１２−ｉ間で互いに１ビットずつシフト（遅延）して出力できるようになっている。
【００５０】
緩衝バッファ部１７については、要素復号器１２−ｉと接続切替部１４との間のＭ並列のデータラインのうち、要素復号器１２−ｉと接続されたデータライン上に、同じ遅延量（例えば１ビット）をもつ（ｉ−１）個の遅延器２１が介装された構成又はこれと等価な構成を有し、接続切替部１４へのＭ並列の要素復号結果を各要素復号器１２−ｉ間で互いに１ビットずつシフト（遅延）して出力できるようになっている。
【００５１】
なお、前記各データライン上で要素復号結果が経由する遅延器２１の数は、制御部１９Ａよって、適宜、制御することが可能である。
このような緩衝バッファ部１７，１８をインタリーバ／デインタリーバ部１３にそなえることにより、メモリ部１５（バンク１５−ｊ）からの要素復号結果の読み出し時に、バンク１５−ｊ毎にリードアクセス開始点を変更することが可能となる。即ち、バンク１５−ｊ毎にリードアクセス開始点を変更しても、上記緩衝バッファ部１７，１８において、各バンク１５−ｊから読み出された要素復号結果が経由する遅延器２１の数を制御部１９Ａが制御することによって、各要素復号器１２−ｉ又は接続切替部１４へのＭ並列の要素復号結果の位相（入力タイミング）を揃えることが可能となる。
【００５２】
ここで、バンク１５−ｊ毎にリードアクセス開始点を変更する必要が生じるのは、前記行列のサイズ及び要素復号器１２−ｉの並列数によっては、異なる要素復号器１２−ｉの復号開始点（タイミング）のデータが同一バンク１５−ｊに存在する場合があるためである。
例えば、前記行列のサイズがＲ×Ｃ＝５×８、要素復号器１２−ｉの並列数Ｍ＝４の場合で、復号対象のブロックの情報長Ｎ＝４０（＝Ｒ×Ｃ）である場合、書き込み時には、図５の（１）及び（２）に示すように、要素復号器１２−ｉ毎の行方向のリニアアクセスとなるから、行（バンク１５−ｊ）毎に要素復号結果が１０ずつ、順次、書き込まれ、読み出し時には、図５の（３）に示すように、要素復号器１２−ｉ毎の列方向のアクセスとなるから、各バンク１５−ｊに対してＲサイクルに１回ずつ順番にアクセスが発生して要素復号結果が読み出されることになる。
【００５３】
したがって、書き込み時の要素復号器１２−ｉ毎のライトアクセス開始点は、異なるバンク１５−ｊに存在することになる（Ｃ以上の距離離れている）から、同一バンク１５−ｊに対するアクセス競合は発生しないものの、図５の（３）及び（４）に示すように、各要素復号器１２−ｉから各バンク１５−ｊに対するリードアクセス開始点は同一時刻に同一バンク１５−５に集中することになるから、バンク１５−５に対するアクセス競合が発生することになる。
【００５４】
このような場合は、既述のＲ個のバンク１５−ｊへのバンク分割のみではアクセス競合を回避できないことになる。そこで、制御部１９Ａによって、図５の（５）に示すように、要素復号器１２−ｉ毎に、バンク１５−ｊに対するリードアクセスタイミングを１サイクル（１ビット）ずつずらすことにより、同一時刻に同一バンク１５−ｊに対するリードアクセスが発生することを回避することが可能となる。
【００５５】
そして、前記緩衝バッファ部１８は、このようにリードアクセスタイミングをずらすことによって生じたＭ並列の要素復号結果間の要素復号器１２−ｉへの入力タイミングの不揃い（位相ずれ）を元に戻して揃えることを目的としてそなえられて、当該位相ずれを吸収するように動作するのである。なお、緩衝バッファ部１７は、デインタリーブ動作時のＭ並列の要素復号結果間の位相ずれを吸収するように動作することになる。
【００５６】
（Ｂ１）第１変形例の説明
なお、上述した第２実施形態において、Ｍ並列の要素復号器１２−ｉが同時に動作する必要がなければ、図６に示すように、制御部（メモリ制御部）１９Ｂによって、前記位相ずれに応じた復号開始タイミングずれをもって各要素復号器１２−ｉを動作させれば、Ｍ並列の要素復号結果間の前記位相ずれを緩衝バッファ部１７，１８により吸収しなくてもよいことになる〔図７の（１）〜（４）参照〕。
【００５７】
したがって、図６に示すように、本例のターボ復号器１Ｂは、第１実施形態のターボ復号器１の構成を基本構成として、要素復号器１２−ｉ毎の復号開始点のデータが同一バンク１５−ｊに存在する場合のアクセス競合を回避することが可能となる。
（Ｂ２）第２変形例の説明
上述した第２実施形態及び第１変形例では、符号長、要素復号器１２−ｉの並列数Ｍが、受信した信号の復号中は一意の定数に定まり、復号中にダイナミックに変化することがないことを前提として、符号長（前記行列のサイズ）と要素復号器１２−ｉの並列数Ｍとの間の特定の関係によって生じるアクセス競合を回避する方策について説明したが、例えば、要素復号器１２−ｉの復号開始点のデータの記憶されるバンク１５−ｉが異なるように、要素復号器１２−ｉの動作数（つまりは、復号対象信号の分割数Ｍ）を制御する、換言すれば、要素復号器１２−ｉあたりの扱う情報長を制御することによっても、アクセス競合を回避することができる。
【００５８】
この場合、図８に示すように、ターボ復号器１Ｃの基本構成は、図１に示すターボ復号器１と同様に、伝送路値メモリ（ＲＡＭ）１１と、要素復号器１２−１〜１２−Ｍ、インタリーバ／デインタリーバ部１３〔接続切替部１４，メモリ部１５（バンク１５−１〜１５−Ｒ）及び接続切替部１６〕と、制御部（メモリ制御部）１９Ｃとをそなえて構成されるが、当該制御部１９Ｃによって、要素復号器１２−ｉの動作数を制御して１要素復号器１２−ｉあたりの復号対象データ量を制御することで、各要素復号器１２−ｉの復号開始点のデータを異なるバンク１５−ｊに記憶させることが可能となる。
【００５９】
つまり、この場合の制御部１９Ｃは、行列状メモリ空間の行列サイズに応じて、要素復号器１２−ｉ毎の要素復号結果が異なる行に属するアドレスをアクセス開始点（書き込み開始アドレス）として行方向（又は列方向）に書き込まれた後、異なる列に属するアドレスをアクセス開始点（読み出し開始アドレス）として列方向（又は行方向）に読み出されるよう、復号対象信号の分割数Ｍを制御する分割数制御部としての機能を兼ね備えていることなる。
【００６０】
例えば、図５又は図７を用いて述べたように、前記行列のサイズがＲ×Ｃ＝５×８、要素復号器１２−ｉの並列数Ｍ＝４の場合で、復号対象のブロックの情報長Ｎ＝４０（＝Ｒ×Ｃ）である場合、４つの要素復号器１２−１〜１２−４のうち３つ（要素復号器１２−１〜１２−３）だけ動作させるように制御部１９Ｃによって制御すれば、メモリ部１５（バンク１５−ｊ）に対する書き込み及び読み出し時の動作は図９に示すようになる。
【００６１】
即ち、この図９は図２と同じであり、図９の（２）及び（４）に示すように、４つの要素復号器１２−ｉを動作させる場合に比して１要素復号器１２−ｉあたりのデータ量が増加（１０ビット→１４ビット）し、図９の（３）に示すように、読み出し時の要素復号器１２−ｉ毎のバンク１５−ｊに対するアクセス開始点を異なるバンク１５−ｊに分散させることができるので、アクセス競合を回避することが可能となる。
【００６２】
なお、デインタリーブ時は、書き込み及び読み出しのアドレス指定が上記インタリーブ時とは逆の動作となる。
〔Ｃ〕付記
（付記１）
ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号器であって、
復号対象信号を複数に分割した各分割信号を並列に要素復号する複数の要素復号器と、
前記各要素復号器の要素復号結果を異なる行に対して並列に読み書き可能な行列状メモリ空間において記憶するメモリ部と、
前記行列状メモリ空間において、前記要素復号器毎に、前記要素復号結果を異なる行に属するアドレスを書き込み開始アドレスとして当該行又は列方向にそれぞれ書き込んだ後、異なる行に属するアドレスを読み出し開始アドレスとして当該列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力するメモリ制御部とをそなえて構成されたことを特徴とする、ターボ復号器。
【００６３】
（付記２）
前記復号対象信号の分割数をＭ、前記行列状メモリ空間の行数をＲ（≧Ｍ）、列数をＣ、前記復号対象信号のビット数をＮ（≦Ｒ×Ｃ）とした場合に、
前記要素復号器がＭ個そなえられるとともに、
該メモリ部が、
Ｃビットの容量をもつメモリをＲ個そなえることによりＲ行Ｃ列の前記行列状メモリ空間を構成していることを特徴とする、付記１記載のターボ復号器。
【００６４】
（付記３）
該メモリ制御部が、
前記Ｎ＜Ｒ×Ｃである場合に、（Ｒ×Ｃ−Ｎ）ビット分のパディングデータを前記要素復号器のいずれかの要素復号結果として該メモリ部に書き込み、もしくは、一時停止動作を行ない、当該パディングデータの前記要素復号器への読み出し時に当該要素復号器での要素復号を一時的に停止することを特徴とする、付記２記載のターボ復号器。
【００６５】
（付記４）
該メモリ制御部が、
前記列又は行方向への読み出し時に前記要素復号器毎の読み出し開始対象の要素復号結果が同じ列又は行に属する場合に、前記要素復号器毎に読み出し開始タイミングをずらすことを特徴とする、付記１記載のターボ復号器。
【００６６】
（付記５）
前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを吸収する緩衝バッファ部をさらにそなえたことを特徴とする、付記４記載のターボ復号器。
（付記６）
該メモリ制御部が、
前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを吸収すべく前記各要素復号器での要素復号タイミングを調整することを特徴とする、付記４記載のターボ復号器。
【００６７】
（付記７）
ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号器であって、
復号対象信号を複数に分割した各分割信号を並列に要素復号する複数の要素復号器と、
前記各要素復号器の要素復号結果を異なる行に対して並列に読み書き可能な行列状メモリ空間において記憶するメモリ部と、
前記行列状メモリ空間において、前記要素復号器毎に、前記要素復号結果を当該行又は列方向にそれぞれ書き込み、列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力するメモリ制御部と、
前記行列状メモリ空間の行列サイズに応じて、前記要素復号器毎の前記要素復号結果が異なる行に属するアドレスを書き込み開始アドレスとして前記書き込みが行なわれ、異なる行に属するアドレスを読み出し開始アドレスとして前記読み出しが行なわれるよう、前記復号対象信号の分割数を制御する分割数制御部とをそなえて構成されたことを特徴とする、ターボ復号器。
【００６８】
（付記８）
ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号方法であって、
復号対象信号を複数に分割した各分割信号を並列に複数の要素復号器にて要素復号し、
各要素復号結果をメモリ部の行列状メモリ空間において、前記要素復号器毎に、異なる行に属するアドレスを書き込み開始アドレスとして当該行又は列方向にそれぞれ書き込んだ後、異なる行に属するアドレスを読み出し開始アドレスとして当該列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力することを特徴とする、ターボ復号方法。
【００６９】
（付記９）
前記復号対象信号の分割数をＭ、前記行列状メモリ空間の行数をＲ（≧Ｍ）、列数をＣ、前記復号対象信号のビット数をＮ（≦Ｒ×Ｃ）とした場合に、
前記要素復号器がＭ個そなえられるとともに、
該メモリ部が、
Ｃビットの容量をもつメモリをＲ個そなえることによりＲ行Ｃ列の前記行列状メモリ空間を構成していることを特徴とする、付記８記載のターボ復号方法。
【００７０】
（付記１０）
前記Ｎ＜Ｒ×Ｃである場合に、（Ｒ×Ｃ−Ｎ）ビット分のパディングデータを前記要素復号器のいずれかの要素復号結果として該メモリ部に書き込み、もしくは、一時停止動作を行い、当該パディングデータの前記要素復号器への読み出し時に当該要素復号器での要素復号を一時的に停止することを特徴とする、付記９記載のターボ復号方法。
【００７１】
（付記１１）
前記列又は行方向への読み出し時に前記要素復号器毎の読み出し開始対象の要素復号結果が同じ列又は行に属する場合に、前記要素復号器毎に読み出し開始タイミングをずらすことを特徴とする、付記８記載のターボ復号方法。
（付記１２）
前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを緩衝バッファ部により吸収することを特徴とする、付記１１記載のターボ復号方法。
【００７２】
（付記１３）
前記読み出し開始タイミングをずらしたことによる前記各要素復号器への各要素復号結果の入力タイミングずれを吸収すべく前記各要素復号器での要素復号タイミングを調整することを特徴とする、付記１１記載のターボ復号方法。
（付記１４）
ターボ符号化された信号について要素復号とインタリーブ処理とデインタリーブ処理とを繰り返し施して前記信号を復号するターボ復号方法であって、
復号対象信号を複数に分割した各分割信号を並列に複数の要素復号器にて要素復号し、
各要素復号結果を行列状メモリ空間において、前記要素復号器毎に、当該行又は列方向にそれぞれ書き込み、列又は行方向へそれぞれ読み出して前記要素復号器へインタリーブ又はデインタリーブ処理結果として出力し、
前記行列状メモリ空間の行列サイズに応じて、前記要素復号器毎の前記要素復号結果が異なる行に属するアドレスを書き込み開始アドレスとして前記書き込みが行なわれ、異なる行に属するアドレスを読み出し開始アドレスとして前記読み出しが行なわれるよう、前記復号対象信号の分割数を制御することを特徴とする、ターボ復号方法。
【図面の簡単な説明】
【００７３】
【図１】本発明の第１実施形態としてのターボ復号器の要部構成を示すブロック図である。
【図２】図１に示すターボ復号器のメモリ部に対する書き込み及び読み出し動作を説明するための概念図である。
【図３】第１実施形態の変形例に係るターボ復号器のメモリ部に対する書き込み及び読み出し動作を説明するための概念図である。
【図４】本発明の第２実施形態に係るターボ復号器の要部構成を示すブロック図である。
【図５】図４に示すターボ復号器のメモリ部に対する書き込み及び読み出し動作を説明するための概念図である。
【図６】第２実施形態の第１変形例に係るターボ復号器の要部構成を示すブロック図である。
【図７】図６に示すターボ復号器のメモリ部に対する書き込み及び読み出し動作を説明するための概念図である。
【図８】第２実施形態の第２変形例に係るターボ復号器の要部構成を示すブロック図である。
【図９】図８に示すターボ復号器のメモリ部に対する書き込み及び読み出し動作を説明するための概念図である。
【図１０】ターボ符号器及びターボ復号器を含む通信システムの構成を示すブロック図である。
【図１１】図１０に示すターボ符号器の要部構成を示すブロック図である。
【図１２】図１０に示すターボ復号器の要部構成を示すブロック図である。
【図１３】図１２に示すターボ復号器の変形例を示すブロック図である。
【図１４】要素復号器の並列実装による処理時間短縮技術を適用したターボ復号器の要部構成を示すブロック図である。
【図１５】ターボ復号の過程で行なわれるインタリーブ処理及びデインタリーブ処理を説明するための概念図である。
【符号の説明】
【００７４】
１，１Ａ〜１Ｃ  ターボ復号器
１１  伝送路値メモリ（ＲＡＭ）
１２−１〜１２−Ｍ  要素復号器（ＤＥＣ＃１〜ＤＥＣ＃Ｍ）
１３  インタリーバ／デインタリーバ部
１４，１６  並列数（ＤＥＣ＃→バンク＃）変換部（接続切替部）
１５  メモリ部
１５−１〜１５−Ｒ  バンクメモリ（シングルポートＲＡＭ）
１７，１８  緩衝バッファ部
１９，１９Ａ〜１９Ｃ  制御部
２１  シフトレジスタ（ＳＲ）
【図１】
2008135813.tif 000003
【図２】
2008135813.tif 000004
【図３】
2008135813.tif 000005
【図４】
2008135813.tif 000006
【図５】
2008135813.tif 000007
【図６】
2008135813.tif 000008
【図７】
2008135813.tif 000009
【図８】
2008135813.tif 000010
【図９】
2008135813.tif 000011
【図１０】
2008135813.tif 000012
【図１１】
2008135813.tif 000013
【図１２】
2008135813.tif 000014
【図１３】
2008135813.tif 000015
【図１４】
2008135813.tif 000016
【図１５】
2008135813.tif 000017