JP3673165B2 - Digital transmission system, encoding device, decoding device, and data processing method in the digital transmission system - Google Patents
Digital transmission system, encoding device, decoding device, and data processing method in the digital transmission system Download PDFInfo
- Publication number
- JP3673165B2 JP3673165B2 JP2000360595A JP2000360595A JP3673165B2 JP 3673165 B2 JP3673165 B2 JP 3673165B2 JP 2000360595 A JP2000360595 A JP 2000360595A JP 2000360595 A JP2000360595 A JP 2000360595A JP 3673165 B2 JP3673165 B2 JP 3673165B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- sequence
- input
- transmission system
- bits
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Description
【0001】
【発明の属する技術分野】
この発明は、デジタル伝送システム、符号化装置、復号装置、および当該デジタル伝送システムにおけるデータ処理方法に関し、より特定的には誤り訂正向上化の手法に関する構成および手法に関するものである。
【0002】
【従来の技術】
ターボ符号は、1993年に発表されて以来、符号化利得の高いことから注目されており、次世代移動通信システム等の通信路符号化への適用が決定されている。
【0003】
ターボ符号の概要については、たとえば「Near Optimum Error Correcting Coding And Decoding:Turbo-Codes(Claude Berrou, IEEE TRANSACTIONS ON COMMUNICATIONS,VOL.44 NO.10, October 1996, pp1261-1271)」や、「Shannon の限界への道標:"parallel concatenated(Turbo)coding", "Turbo(iterative)decoding"とその周辺(井坂元彦、今井秀樹著,IT98-51(1998-12)」に詳しくその内容が記載されている。
【0004】
以下に、ターボ符号のポイントを簡単に列記する。(a)同一構成の符号器を並列あるいは直列に複数個連接する、(b)それぞれの符号器に入力するデータ率については、相関がなくなるようにインターリーバを用いる。このときランダム性の高いインターリーバを用いることが望ましい、(c)復号側において、軟判定入力から尤度情報についての軟判定出力を行なう、(d)復号側において、軟判定尤度情報を新たな入力として使用することにより繰返し復号を行なう。
【0005】
ターボ符号の原理について、図12−図14を用いて説明する。以下では、符号器を並列に連接する一般的な構成で、符号化レート1/3、拘束長K=3としている。
【0006】
従来のターボ符号器900は、図12に示すように、インターリーバ120と、符号器(RSC1)100と、符号器(RSC2)110とを備える。
【0007】
インターリーバ120は、入力データ列Xを並べ替えて、入力データ列Xと同じ要素で順番の異なるデータ列X′を作成する。
【0008】
符号器100および110は同一構成であり、再帰的畳み込みを実施する。符号器RSC(100および110)は、図13に示すように、2個のレジスタDからなるシフトレジスタとモジュロ2の加算器A1およびA2とにより構成されている。
【0009】
この符号化器における内部状態(b1,b2)はシフトレジスタの値によって表わされる。内部状態(b1,b2)は、内部状態(00),内部状態(01),内部状態(10),内部状態(11)の4つの状態をとり得る。なお、入力が与えられた際に遷移できる内部状態は常に2通りである。
【0010】
符号化器RSC(100および110)における遷移状態を、図14に示す。内部状態(00)の場合、入力が“0”のときは内部状態(00)に遷移し符号出力は“0”となり、入力が“1”のときには内部状態(10)に遷移し符号出力は“1”となる。
【0011】
内部状態(01)の場合、入力が“0”のときには内部状態(10)に遷移し符号出力は“0”となり、入力が“1”のときには内部状態(00)に遷移し符号出力は“1”となる。
【0012】
内部状態(10)の場合、入力が“0”のときは内部状態(11)に遷移し符号出力は“1”となり、入力が“1”のときには内部状態(01)に遷移し符号出力は“0”となる。
【0013】
内部状態(11)の場合、入力が“0”のときは内部状態(01)に遷移し符号出力は“1”となり、入力が“1”のときは内部状態(11)に遷移し符号出力は“0”となる。
【0014】
入力データ列Xについて符号器100による符号化後のデータ列をYとする。また、インターリーバ120によるインターリーブ後の入力データ列X′を受ける符号器110による符号化後のデータ列をY′とする。
【0015】
したがって、従来のターボ符号器900は、入力データ列Xに基づき第1の符号列Yと第2の符号列Y′とを生成する。ターボ符号器900は、データ列X,Y,Y′を並べて出力する。
【0016】
入力データ列Xを{0,1,1,0,0,0,1}とし、インターリーブ後のデータ列X′を{0,0,1,0,1,0,1}とすると、符号結果であるデータ列Yは{0,1,0,0,1,1,1}、データ列Y′は{0,0,1,1,0,1,1}となる。
【0017】
ここで符号器内部の内部状態遷移図を、図15と図16とに示す。図15は、データ列Yに関する内部状態遷移図に相当し、図16はデータ列Y′に関する内部状態遷移図に相当する。図15および図16において、太線で示す線が状態遷移を表わしている。
【0018】
次に、ターボ復号器の基本的な構成を、図17を用いて説明する。“Iteration k”(k=1,2,…,n)と記してあるブロック600,610,620および630は復号の1単位となる。回路600,610,620および630がつながっている構成となっているが、これは処理が繰返し行なわれることを示しているものである。
【0019】
図18には、復号単位ブロック、すなわち各回路(Iteration)における処理を示している。復号単位ブロックは、軟判定デコーダ10および11、インターリーバ20および21、復元用インターリーバ22、ならびに復号計算部30を備える。
【0020】
軟判定デコーダ10および軟判定デコーダ11は、軟判定入力をもとに軟判定出力を出力する復号器である。インターリーバ20および21は、符号器側で使用するインターリーバと同一の動作を行なう。復元用インターリーバ22は、インターリーバにより並べ替えたデータ列をもとのデータ列に復元する。復号計算部30は、エラー訂正後のデータを生成する。
【0021】
復号単位ブロックに入力される信号は、受信系列{X,Y,Y′}、および信号の尤度情報Eである。このうち、{X,Y,E}が1組で、最初の軟判定軟出力のエラー訂正処理を行なう。これにより、符号器100における符号化に対応したエラー訂正処理を行ない、その結果として各信号の新たな尤度情報E1を作成する。
【0022】
次に、{X,Y′,E1}の組合せで次の軟判定軟出力エラー訂正処理を行なう。符号器110における畳み込みの前にインターリーバ120によりデータの並び替えを実施しているので、尤度情報E1に対してはインターリーバ20によるデータの並び替えを行ない、データ列Xについてはインターリーバ21におけるデータの並び替えを実施する。これにより新たなデータ列{X′,E1′}を生成する。{X′,Y′,E1′}の組合せで軟判定軟出力エラー訂正処理を行なう。
【0023】
これにより符号器110における符号化に対応したエラー訂正処理を行ない、その結果として各信号の新たな尤度情報E2を生成する。
【0024】
ここで、符号器110に必要なデータ列{X′,E1′}は、インターリーバ20およびインターリーバ21によって並び替わっているため、尤度情報E2は復元用インターリーバ22によりデータの並び替えを行ない尤度情報E2′となる。
【0025】
尤度情報E2′は、復号単位ブロックで処理を繰返し行なう場合の尤度情報として利用される。また、復号計算部30において、この時点での復号結果X"を得ることができる。
【0026】
ターボ符号の復号方法についてはさまざまな手法が考えられるが、ビタビ処理の応用で出力データを軟出力することを特徴とするSOVA(Soft Output Viterbi Algorithm)あるいは最尤判定法の計算効率の向上したLog−MAP(Maximum A Posteriori probability)が主流となっている。
【0027】
ターボ符号によるエラー訂正特性の一例を、図19に示す。図19において凡例でのプロット700(no−coding)は、符号化なしの場合を示す。プロット710(IT=1)は、繰返し処理が1回の場合を、プロット720(IT=2)は、繰返し処理2回の場合を、プロット730(IT=3)は、繰返し処理3回の場合を、プロット740(IT=4)は、繰返し処理4回の場合を、プロット750(IT=5)は、繰返し処理5回の場合をそれぞれ示している。プロット760(Viterbi)は、5ビットの判定ビタビ(拘束長9、レート=1/3)におけるBER特性を示している。
【0028】
図19に示すBER特性から明らかなように、ターボ符号によれば、繰返しの設定を多くするたびにエラー訂正能力が向上することになる。
【0029】
ところで、W−CDMA(Wideband-CDMA:CDMA=Code Division Multiple Access)方式等の次世代通信においては、通信において情報ビット数が動的に変化することが想定されている。
【0030】
W−CDMA方式のデータフローについて、図20を用いて説明する。W−CDMA方式では、図20に示すように、信号TrCH♯1に対し、処理800(CRC付加処理801、情報データ列の連結処理802、エラー訂正処理803、インターリーブ(1)804、無線フレーム分割処理805、およびレートマッチング処理806)が施される。図示しない他の信号も処理800が施される。
【0031】
これら複数の信号は、マルチプレクス810においてマルチプレクスされる。そして、物理チャネル分割処理811において、複数のチャネルに分割される。分割後、各々がインターリーブ(2)812、物理チャネルマッピング813される。これにより、信号PhCH♯1,PhCH♯2,…が得られる。W−CDMA方式では、図20に示すように同一の無線チャネルに多数の論理チャネルがマルチプレクスされている。
【0032】
動的な情報ビット設定をすることにより、通信状態を変更する。全体での情報ビット数が少ない場合、条件によって通信のレートを下げることも可能となる。この手法をWCDMA方式ではレートマッチングと呼んでいる。レートマッチングでは情報ビットを増やす場合(Repetition)と減らす場合(Puncturing)があり、状況に応じてこれらを適用する。
【0033】
パンクチャリングのレートマッチングに対応する符号化装置の構成例を、図21に示す。符号化装置910は、図21に示されるように、入力インターフェイス部(I/F)160、符号器(RCS1,RCS2)100,110、インターリーバ(固定)120、パンクチャ部130および140、ならびに多重化処理部(MUX)150を含む。
【0034】
符号化装置910は、ターボ符号器900の基本的構成に加えて、符号後データであるデータ列Y,Y′に対しパンクチャリングを行なうパンクチャ部130および140を含む。
【0035】
パンクチャ部130,140では、符号後データであるデータ列Y,Y′に対し、新たな符号語系列としてデータ列YB,YB′を作成する。多重化処理部150においては、データ列X,YBおよびYB′を多重化し出力系列とする。
【0036】
パンクチャリングのレートマッチングに対応する場合のターボ符号構成例については、特開2000−68862号公報(「誤り訂正符号化装置」)に別の構成例が示されている。当該文献に記載されている符号化装置920は、図22に示すように、入力I/F部160、データ列にデータを付加するデータ付加部165、インターリーバ(固定)120、符号器(RSC1,RSC2)100および110、ならびに多重化処理部150を含む。
【0037】
このようなターボ符号器を含む送信側システムで使用する通信手段は、図23に示す手順によって行なわれる。上記した手順と異なり、レートマッチング処理806が情報データ列連結処理802の後段であってエラー訂正処理803の前段に行なわれる。
【0038】
【発明が解決しようとする課題】
上述のように、W−CDMA方式等の次世代通信では、ターボ符号で処理する情報ビットが動的に変化することが要望される。
【0039】
情報ビット数が変化すると、その情報ビット数に応じてターボ符号の内部インターリーバ構成を変更する必要がある。一般的には、インターリーバはランダム性を確保するために複雑な処理となっている。
【0040】
ターボ符号用のインターリーバの計算方法については、たとえば3GPP TS25.212(V3.0.0,1999−10,pp17−18)にその記載が挙げられている。定義上、相当数の組合せが可能となる。
【0041】
実際の通信において、可能な範囲内のすべてのビット数に対応する必要はないが、そのような場合でも数十から数百の範囲でターボ符号の情報ビット数の種類を設定する必要がある。
【0042】
チャネルコーティング処理はリアルタイムで実施する必要があり、この計算を情報ビット数が変わるたびに行なうのは非効率的である。これを解決するための手段として、予め計算済みのデータをテーブルデータとして保有する方法もあるが、必要とするメモリ量の条件によって実現が困難となる。
【0043】
また、この中間解として途中までのデータをテーブルデータで保有し、その後の計算を実施する方法が挙げられるが、処理量・メモリ量の問題をすべて解決できる解にはなり得ない。
【0044】
この状況は、限定されたデータ長を取扱う場合以外には避けられない問題であり、上述した図22および23、ならびに他の構成についても起こり得る。
【0045】
そこで、本発明は係る問題を解決するためになされたものであり、その目的は、動的に変化するターボ符号で処理される情報ビット数に対応することができる訂正処理を実現することができるデジタル伝送システム、符号化装置、復号装置および当該システムにおけるデータ処理方法に関するものである。
【0046】
【課題を解決するための手段】
この発明のある局面によるデジタル伝送システムは、可変ビット長のデータ列が入力系列として入力される入力インターフェース部と、入力インターフェース部に入力された入力系列を予め定められたビット数のデータ列に変換するデータ変換回路と、ターボ符号を用いてデータ変換回路により変換されたデータ列を符号化する第1および第2の符号器と、第1および第2の符号器にそれぞれ対応して設けられ、それぞれの出力を受けてパンクチャリングを行なう第1および第2のパンクチャ部と、第1および第2のパンクチャ部で処理されたデータ列ならびに入力系列を受けて、予め定められた手順で実行されるビットマッピングにより出力系列を送信データとして出力する多重化処理部と、データ変換回路と第2の符号器との間に設けられ、データ変換回路により変換されたデータ列の順番を変えるインターリーブ処理を実行して、第2の符号器に出力する、固定長のインターリーバとを含む送信システムを備え、データ変換回路は、インターリーバでインターリーブ処理される固定長のデータ列となるように入力系列を変換する。デジタル伝送システムはさらに、送信システムの出力に基づき、復号のためのデータ列を作成する第1データ作成回路と、作成されたデータ列に基づき、符号化に対応する復号処理を実行する復号器と、復号器の出力を受けて所望のデータ列を作成する第2データ作成回路とを含む受信システムをさらに備える。
【0047】
好ましくは、送信システムは、複数のビット数の候補のうち、予め定められたビット数を選択する選択回路をさらに含む。
【0048】
特に、データ変換回路は、データ列の特定箇所に、予め定められたデータ(“0”、“1”、またはこれらの組合わせ)を挿入する回路を含む。一方、第2データ作成回路は、特定箇所のデータを削除する。
【0049】
特に、第1および第2のパンクチャ部は、第1および第2の符号器のそれぞれ出力するデータのうち、特定箇所のデータを削除する回路を含む。第1データ作成回路は、削除される特定箇所のデータを、受信データなしとみなすための情報に置換える。
【0050】
この発明のさらなる局面による符号化装置は、可変ビット長のデータ列が入力系列として入力される入力インターフェース部と、入力インターフェース部に入力された入力系列を予め定められたビット数のデータ列に変換するデータ変換回路と、ターボ符号を用いてデータ変換回路により変換されたデータ列を符号化する第1および第2の符号器と、第1および第2の符号器にそれぞれ対応して設けられ、それぞれの出力を受けてパンクチャリングを行なう第1および第2のパンクチャ部と、第1および第2のパンクチャ部で処理されたデータ列ならびに入力系列を受けて、予め定められた手順で実行されるビットマッピングにより出力系列を送信データとして出力する多重化処理部と、データ変換回路と第2の符号器との間に設けられ、データ変換回路により変換されたデータ列の順番を変えるインターリーブ処理を実行して、第2の符号器に出力する、固定長のインターリーバとを含む送信システムを備え、データ変換回路は、インターリーバでインターリーブ処理される固定長のデータ列となるように入力系列を変換する。好ましくは、符号化装置は、複数のビット数の候補のうち、予め定められたビット数を選択する選択回路をさらに備える。
【0051】
この発明のさらなる局面による復号装置は、上記符号化装置に対応するものであって、出力系列を復号するためのデータ列を作成する第1データ作成回路と、作成されたデータ列に基づき、符号化に対応する復号処理を実行する復号器と、復号器の出力を受けて所望のデータ列を作成する第2データ作成回路とを備える。
【0052】
この発明のさらなる局面によるデジタル伝送システムにおけるデータ処理方法は、可変ビット長のデータ列が入力系列として入力される入力ステップと、入力された入力系列を予め定められたビット数のデータ列に変換するデータ変換ステップと、変換されたデータ列の順番を変えるインターリーブ処理を実行するインターリーブステップと、ターボ符号を用いて変換されたデータ列を符号化する符号化ステップと、符合化されたデータ列に対してパンクチャリングを実行するパンクチャリングステップと、パンクチャリング処理されたデータ列ならびに入力系列を受けて、予め定められた手順で実行されるビットマッピングにより出力系列を送信データとして出力する送信データ作成ステップとを備え、データ変換ステップは、インターリーブ処理される固定長のデータ列となるように入力系列を変換する。データ処理方法はさらに、送信データを復号するためのデータ列を作成する復号データ作成ステップと、作成されたデータ列に基づき、符号化に対応する復号処理を実行する復号ステップと、復号処理の結果を受けて、所望のデータ列を作成する出力データ作成ステップとをさらに備える。
【0053】
このように、本発明によるデジタル伝送システムは、ターボ符号の前段にデータ長を調整する手段を設ける。また、ターボ符号の後段にデータ長を調整する手段を設ける。エラー訂正処理を施したデータ列について、想定しているデータ長のデータ列を提供する。すなわち、エラー訂正対象のデータ長は動的に変わるものの、予めターボ符号での処理データ長を限定することにより、通信路符号化・複合化処理を保証することが可能になる。
【0054】
【発明の実施の形態】
本発明の実施の形態によるデジタル伝送システムおよびその処理内容について図を用いて説明する。図中同一または相当部分には同一記号または符号を付しその説明は省略する。
【0055】
本発明の実施の形態によるデジタル放送システムを構成する送信側システムについて、図1を用いて説明する。本発明の実施の形態による送信側システムは、図1に示すように、入力I/F(インターフェース)部160、データ付加部170、インターリーバ(固定)120、符号器(RSC1,RSC2)100および110、第1および第2のパンクチャ部130および140、ならびに多重化処理部(MUX)150を含む符号化装置1000を備える。
【0056】
ターボ符号器に入力される情報ビットは入力系列として、入力I/F部160に蓄積される。情報ビット列Xは、そのまま多重化処理部150に転送される。
【0057】
一方、畳み込み処理については、データ付加部170において情報ビット列Xにデータ付加を行なう。これにより、予め定められたビット数のデータ列XAを作成する。
【0058】
データ付加部170から出力されるデータ列XAは、符号器100とインターリーバ120とに供給される。
【0059】
インターリーブをかけないデータ列XAは、符号器100において符号化される。また、データ列XAに対しては、インターリーバ120において固定長のインターリーブ処理が施される。インターリーバ120で作成されるデータ列XA′は、符号器110に供給される。
【0060】
符号器100の出力データYAに対し、パンクチャ処理(パンクチャ部130)を実施し、実際に必要となるデータ列Yを作成する。
【0061】
符号器110の出力データY′に対し、パンクチャ処理(パンクチャ部140)を実施し、実際に必要となるデータ列Y′を作成する。
【0062】
データ列Y,Y′は、多重化処理部150に供給される。多重化処理部150では、予め定められた手順でのビットマッピングを行ない出力系列とする。多重化処理部150の出力するデータ列は受信側システムに送信される。
【0063】
次に、本発明の実施の形態によるデジタル放送システムに含まれる受信側システムの構成について、図2を用いて説明する。本発明の実施の形態による受信側システムは、図2に示されるように、多重分離処理部(DeMUX)250、第1、第2および第3のビット詰め処理部200、210、220、インターリーバ230を含むターボ符号デコーダ240、およびデータビット選択部260を含む復号装置を備える。
【0064】
受信データである入力系列は、多重分離処理部250において、予め定められた処理手順で、上記したXに相当するデータ、Yに相当するデータおよびY′に相当するデータに分割する。
【0065】
第1のビット詰め処理部200は、Xに相当するデータを受け、第2のビット詰め処理部210は、Yに相当するデータを受け、さらに第3のビット詰め処理部220はY′に相当するデータを受ける。
【0066】
ビット詰め処理部200,210,220は、各々が同一のデータ長となるように、デコーダに必要なデータ列XA,YA,YA′を作成する。
【0067】
ターボ符号デコーダ240においては、データ列XA,YA,YA′をもとに復号処理を行なう。ターボ符号デコード処理に使用するインターリーバ230については、入力する情報ビット数が固定であるために、常時同一なインターリーブ処理を実施する。
【0068】
ターボ符号デコーダ240から出力される復号系列XA′については、不要なデータを含んでいるのでデータビット選択部260において不要なデータを取り除くことで出力系列であるデータ系列X′を作成する。
【0069】
次に、本発明の実施の形態によるターボ符号化器の拡張例について、図3を用いて説明する。扱うデータの幅が大きい場合にデータ幅を単一固定の情報ビットに限定すると、エラー訂正特性への影響が大きくなる。したがって、代表的なビット数を選択する処理手段を備えることにより、本発明の実施の形態でのターボ符号処理システムに柔軟性を持たせる。
【0070】
そこで、所定数の固定インターリーバを備え、外部からセレクト制御部180によって、いずれのインターリーバを使用するかを決定するスイッチを動作させ、使用する固定インターリーバを決定する。
【0071】
具体的に、図3に示す回路は、図1に示す回路に加えて複数のインターリーバ(固定)、複数のスイッチ(SW)およびセレクト制御部180を含む。図においては、代表例として、インターリーバ(固定)121、122、123およびスイッチ190、スイッチ191が記載されている。
【0072】
スイッチ191によりデータ列XAに対しインターリーブ処理を実行するインターリーバが選択され、スイッチ190により選択されたインターリーバの出力が符号器110に供給される。さらに、セレクト制御部180によって、データ付加部170における付加するデータの条件が決定する。
【0073】
なお、復号処理側においても、上記したインターリーバ230に代わりターボ化符号器に対応する複数のインターリーバを配置し、セレクト制御部180の選択に応じて使用する1つの固定インターリーバを選択するように構成する。
【0074】
次に、データ付加部170におけるデータ付加構成の具体例について、図4を用いて説明する。図4において、上側に示すデータD1は、情報ビットを、下側に示すデータD2は、付加情報を加えた後のデータ系列を表している。情報ビットD1は、ビット数が可変であり、データ付加後のデータ系列D2は、ビット数が固定になる。
【0075】
なお、図中、斜線領域が付加データに相当する。図4では、情報ビット(“010110…”)の最後尾に付加情報(“11…11”)を付加した例を示している。
【0076】
ターボ処理においては、情報ビットをランダムにインターリーブすることからも、図4に示すように単純にデータの最後尾にデータを付加する構成をとることが可能となる。
【0077】
付加するデータとしては、図4に示す例ではすべて“1”を想定しているが、すべて“0”、またはその他予め定められたパターンを使用することも可能である。
【0078】
データ付加構成のさらなる例を図5に示す。図5では、データD1は、情報ビットであり、データD3が、データ付加後のデータ系列を表している。データD3に付される斜線領域が、付加データ部分である。図5では、付加データ作成の時点で、データの挿入位置を変更するように構成しており、1ビットおきに“1”を挿入している。なお、付加するデータは、上記したように“1”に限定されない。
【0079】
次に、パンクチャ部および多重化処理部におけるデータ構造の一例について、図6を用いて説明する。図6において、D4は、データ列X(X系列)、D5は、データ列Y(Y系列)、D6は、データ列Y′(Y′系列)、D7は、多重化処理後のデータ列をそれぞれ表している。
【0080】
X系列に関しては、そのままのデータを扱う。Y系列に関しては、符号化後データのうち、必要とするビット数に合うように特定の規則に従ってデータを間引く。Y′系列においても同様の処理により、符号化後データのうち必要とするビット数に合うように特定の規則に従ってデータを間引く。図6に示す例では、“−”で示している箇所がパンクチャリングされるデータとなる。
【0081】
多重化処理部150では、X系列、Y系列、Y′系列のデータを定められた規則に従ってマッピングすることになる。この例では、X系列D4、Y系列D5、Y′系列D6のデータを交互に並べる手法をとっている。
【0082】
次に、受信側システムにおける多重分離処理部250およびビット詰め処理部におけるデータ構成について、図7を用いて説明する。図7において、D8は、多重分離処理を施すデータ列を表し、D9、D10、D11はそれぞれ、ビット詰め処理後のデータ列X(X系列)、データ列Y(Y系列)、データ列Y′(Y′系列)を表している。
【0083】
図7に示す例は、図6に示すビット詰め処理に対応するものであり、X系列、Y系列、Y′系列の交互に並んでいるデータ列D8のうちから、X系列、Y系列、Y′系列のそれぞれのデータ系列を分離する。
【0084】
分離後のデータ系列のそれぞれについて、図6でのパンクチャリング処理に対応するためのビット詰め処理を行なう。
【0085】
X系列については、予め定められた位置に特定のデータパターンを付加することによりビット詰めを行なう。すなわち、図4あるいは図5に示したデータ付加構成に対応する処理である。この例では、図4の場合に対応している。具体的には、X系列のデータ最後尾には、“0”のみで構成されるデータを設定する。
【0086】
Y系列およびY′系列については、もともとデータの存在しない箇所について(図6における“−”)、情報ビットがない、すなわち受信データがないことを示すか、あるいは“1”と“0”との中間の入力があったとして計算を進める。この処理により、固定のデータ長を有するX系列、Y系列、Y′系列を作成することができる。図7の例では、図6における“−”部分を、“0”に置換えている。
【0087】
X系列、Y系列、Y′系列が定まれば、ターボ符号デコーダは動作可能であり、復号結果を得ることができる。
【0088】
復号結果から最終的な復号系列を取出すための手順について、図8を用いて説明する。図8において、D12は、ターボ符号デコーダ240の出力するデータ列を、D13は、データビット選択部260の出力するデータ列をそれぞれ表している。データ列D12のビット数は固定であり、データ列D13のビット数は可変である。
【0089】
図8は、図4に示すデータ付加構成に対応するものであり、復号結果の先頭から必要なビット数が最終的な復号結果として決定される(取出される)。
【0090】
復号結果から最終的な復号系列を取出すためのさらなる手順について、図9を用いて説明する。図9において、D14は、ターボ符号デコーダ240の出力するデータ列を、D15は、データビット選択部260の出力するデータ列をそれぞれ表している。データ列D14のビット数は固定であり、データ列D15のビット数は可変である。
【0091】
図9は、図5に示すデータ付加構成に対応するものであり、復号結果の定められた位置から必要なデータが取出される。これにより最終的な復号結果を得ることができる。
【0092】
なお、本発明の実施の形態による構成は、プログラムを搭載したRAM、ROM等の記憶デバイスをDSPあるいはCPU等の制御手段によってプログラム実行することにより実現することも可能である。
【0093】
本発明の実施の形態による処理をソフトウェアを用いて実現する場合の処理手順を、図10および図11に示す。図10は、送信側のデータ処理に対応するものであり、図11は受信側のデータ処理に対応するものである。
【0094】
図10を参照して、ステップS1において、ターボ符号用データを作成する。ステップS2において、第1の畳み込み処理を実行する(RSC1に対応)。ステップS3においてデータのパンクチャ処理を行なう(パンクチャ部130に対応)。
【0095】
ステップS4においてインターリーブ処理を実施する(インターリーバ120に対応)。ステップS5において第2の畳み込み処理を実行する(RSC2に対応)。ステップS6においてデータのパンクチャ処理を行なう(パンクチャ部140に対応)。そしてステップS7においてデータの多重化を実行する(多重化処理部150に対応)。
【0096】
図11を参照して、受信側においては、ステップS10において、受信データを分解する(多重分離処理部250に対応)。ステップS11において、X系列の不要ビットを処理する(ビット詰め処理部200に対応)。ステップS12において、Y系列の不要ビットを処理する(ビット詰め処理部210に対応)。ステップS13において、Y′系列の不要ビットを処理する(ビット詰め処理部220に対応)。
【0097】
ステップS14において、ターボデコード処理を実行する(ターボ符号デコーダ240に対応)。そして、ステップS15において、復号結果から情報ビットの取出し処理を行なう(データビット選択部260に対応)。
【0098】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【0099】
【発明の効果】
このように本発明によるデジタル伝送システムおよびデジタル伝送方法を用いることにより、ターボ符号の対象となる情報ビット数が動的に変化しても対応することができる。このため、ターボ符号に必要となる情報ビット数に限定なく、エラー訂正処理を軽減化することができる。
【0100】
この結果、従来のシステムに比べてシステムの簡略化が可能となる。したがって、本発明はターボ符号をエラー訂正手段として使用するシステムにおいて品質向上に特に有効な効果を奏することができる。
【図面の簡単な説明】
【図1】 本発明の実施の形態による送信側システムの構成を示すブロック図である。
【図2】 本発明の実施の形態による受信側システムの構成を示すブロック図である。
【図3】 本発明の実施の形態による他の構成例を示すブロック図である。
【図4】 データ付加処理におけるデータ構成例を示す図である。
【図5】 データ付加部におけるデータ構成例の他の構成例を示す図である。
【図6】 パンクチャ部および多重化処理部におけるデータ構成を示す図である。
【図7】 ビット詰め処理部および多重分離処理部におけるデータ構成を示す図である。
【図8】 データビット選択処理の一例を示す図である。
【図9】 データビット選択処理の一例を示す図である。
【図10】 本発明の実施の形態による送信データ処理(ソフトウェアで実現)を示すフローチャートである。
【図11】 本発明の実施の形態による受信データ処理(ソフトウェアで実現)を示すフローチャートである。
【図12】 従来のターボ符号器の構成を示すブロック図である。
【図13】 従来の符号器(RSC)の構成を示すブロック図である。
【図14】 ターボ符号における状態遷移について説明するための図である。
【図15】 ターボ符号における状態遷移の一例を示す図である。
【図16】 ターボ符号における状態遷移の一例を示す図である。
【図17】 ターボ符号デコードにおける繰返し処理について説明するための図である。
【図18】 ターボ符号デコーダの構成を示す構成図である。
【図19】 従来のターボ符号でのBER特性を示す図である。
【図20】 ターボ符号のためのデータフローを示す図である。
【図21】 従来の符号化装置における構成の概要を示すブロック図である。
【図22】 従来の符号化装置における構成の概要を示すブロック図である。
【図23】 図22におけるターボ符号のためのデータフローを示す図である。
【符号の説明】
10,11 軟判定デコーダ、20,21,22,120,230 インターリーバ、30 復号計算部、100,110 符号器(RSC1,RSC2)、130,140 パンクチャ部、150 多重化処理部、160 入力I/F部、170 データ付加部、180 セレクト制御部、190,191 スイッチ、200,210,220 ビット詰め処理部、240 ターボ符号デコーダ、250 多重分離処理部、260 データビット選択部。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a digital transmission system, an encoding device, a decoding device, and a data processing method in the digital transmission system, and more particularly to a configuration and a method related to a technique for improving error correction.
[0002]
[Prior art]
The turbo code has been attracting attention because of its high coding gain since it was announced in 1993, and its application to channel coding for next-generation mobile communication systems and the like has been determined.
[0003]
For an overview of turbo codes, see “Near Optimum Error Correcting Coding And Decoding: Turbo-Codes (Claude Berrou, IEEE TRANSACTIONS ON COMMUNICATIONS, VOL.44 NO.10, October 1996, pp1261-1271)” Signposts to: "parallel concatenated (Turbo) coding", "Turbo (iterative) decoding" and its surroundings (by Motohiko Isaka and Hideki Imai, IT98-51 (1998-12)).
[0004]
Below, the points of the turbo code are listed briefly. (A) A plurality of encoders having the same configuration are connected in parallel or in series. (B) For the data rate input to each encoder, an interleaver is used so as to eliminate correlation. At this time, it is desirable to use an interleaver with high randomness. (C) On the decoding side, soft decision output is performed on the likelihood information from the soft decision input. (D) Soft decision likelihood information is newly updated on the decoding side. By using it as a simple input, iterative decoding is performed.
[0005]
The principle of the turbo code will be described with reference to FIGS. In the following, the coding rate is 1/3 and the constraint length K = 3 in a general configuration in which encoders are connected in parallel.
[0006]
A
[0007]
The
[0008]
[0009]
The internal state (b1, b2) in this encoder is represented by the value of the shift register. The internal states (b1, b2) can take four states: an internal state (00), an internal state (01), an internal state (10), and an internal state (11). Note that there are always two internal states that can transition when an input is given.
[0010]
The transition states in the encoder RSC (100 and 110) are shown in FIG. In the case of the internal state (00), when the input is “0”, the state transitions to the internal state (00) and the code output is “0”. When the input is “1”, the state transitions to the internal state (10) and the code output is “1”.
[0011]
In the case of the internal state (01), when the input is “0”, the state transitions to the internal state (10) and the code output is “0”, and when the input is “1”, the state transitions to the internal state (00) and the code output is “ 1 ".
[0012]
In the case of the internal state (10), when the input is “0”, the state transitions to the internal state (11) and the code output is “1”, and when the input is “1”, the state transitions to the internal state (01) and the code output is It becomes “0”.
[0013]
In the case of the internal state (11), when the input is “0”, the transition is made to the internal state (01) and the code output is “1”, and when the input is “1”, the transition is made to the internal state (11) and the code output. Becomes “0”.
[0014]
Let Y be the data string after encoding by the
[0015]
Therefore, the
[0016]
If the input data string X is {0, 1, 1, 0, 0, 0, 1} and the interleaved data string X ′ is {0, 0, 1, 0, 1, 0, 1}, the code result The data string Y is {0, 1, 0, 0, 1, 1, 1}, and the data string Y ′ is {0, 0, 1, 1, 0, 1, 1}.
[0017]
Here, internal state transition diagrams inside the encoder are shown in FIGS. 15 and 16. FIG. 15 corresponds to an internal state transition diagram relating to the data string Y, and FIG. 16 corresponds to an internal state transition diagram relating to the data string Y ′. In FIG. 15 and FIG. 16, the bold line represents the state transition.
[0018]
Next, a basic configuration of the turbo decoder will be described with reference to FIG.
[0019]
FIG. 18 shows processing in a decoding unit block, that is, each circuit (Iteration). The decoding unit block includes
[0020]
The
[0021]
The signals input to the decoding unit block are the reception sequence {X, Y, Y ′} and signal likelihood information E. Among these, {X, Y, E} is one set, and error correction processing of the first soft decision soft output is performed. Thereby, an error correction process corresponding to the encoding in the
[0022]
Next, the following soft decision soft output error correction processing is performed with a combination of {X, Y ', E1}. Since data rearrangement is performed by the
[0023]
As a result, error correction processing corresponding to encoding in the
[0024]
Here, since the data string {X ′, E1 ′} necessary for the
[0025]
The likelihood information E2 ′ is used as likelihood information when the process is repeatedly performed in the decoding unit block. Further, the
[0026]
There are various methods for decoding the turbo code, but the logarithm is improved in the calculation efficiency of the SOVA (Soft Output Viterbi Algorithm) or the maximum likelihood judgment method characterized in that the output data is soft-output by the application of Viterbi processing. -MAP (Maximum A Posteriori probability) is the mainstream.
[0027]
An example of error correction characteristics by the turbo code is shown in FIG. In FIG. 19, a plot 700 (no-coding) in the legend indicates a case where no encoding is performed. Plot 710 (IT = 1) is for one iteration, plot 720 (IT = 2) is for two iterations, and plot 730 (IT = 3) is for three iterations. Plot 740 (IT = 4) shows the case of 4 iterations, and plot 750 (IT = 5) shows the case of 5 iterations. A plot 760 (Viterbi) shows a BER characteristic in a 5-bit decision Viterbi (
[0028]
As is apparent from the BER characteristics shown in FIG. 19, according to the turbo code, the error correction capability is improved every time the repetition setting is increased.
[0029]
By the way, in next-generation communication such as W-CDMA (Wideband-CDMA: CDMA = Code Division Multiple Access), it is assumed that the number of information bits dynamically changes in communication.
[0030]
A data flow of the W-CDMA system will be described with reference to FIG. In the W-CDMA system, as shown in FIG. 20, processing 800 (
[0031]
These multiple signals are multiplexed in
[0032]
The communication state is changed by dynamically setting information bits. If the total number of information bits is small, the communication rate can be lowered depending on the conditions. This method is called rate matching in the WCDMA system. In rate matching, there are a case where information bits are increased (Repetition) and a case where information bits are decreased (Puncturing), and these are applied depending on the situation.
[0033]
FIG. 21 shows a configuration example of an encoding apparatus corresponding to puncturing rate matching. As shown in FIG. 21, the
[0034]
In addition to the basic configuration of
[0035]
Puncturing
[0036]
Japanese Patent Laid-Open No. 2000-68862 (“Error Correction Encoding Device”) shows another configuration example of a turbo code configuration example corresponding to puncturing rate matching. As shown in FIG. 22, the
[0037]
The communication means used in the transmission side system including such a turbo encoder is performed according to the procedure shown in FIG. Unlike the above procedure, the
[0038]
[Problems to be solved by the invention]
As described above, in the next generation communication such as the W-CDMA system, it is desired that the information bits processed by the turbo code dynamically change.
[0039]
When the number of information bits changes, it is necessary to change the internal interleaver configuration of the turbo code according to the number of information bits. In general, the interleaver is a complicated process to ensure randomness.
[0040]
The calculation method of the interleaver for turbo codes is described in, for example, 3GPP TS25.212 (V3.0.0, 1999-10, pp17-18). By definition, a considerable number of combinations are possible.
[0041]
In actual communication, it is not necessary to deal with all the number of bits within a possible range, but even in such a case, it is necessary to set the number of information bits of the turbo code within a range of several tens to several hundreds.
[0042]
The channel coating process must be performed in real time, and it is inefficient to perform this calculation every time the number of information bits changes. As a means for solving this, there is a method of storing pre-calculated data as table data, but it is difficult to realize it depending on the required amount of memory.
[0043]
Further, as the intermediate solution, there is a method in which halfway data is stored as table data and the subsequent calculation is performed. However, it cannot be a solution that can solve all the problems of the processing amount and the memory amount.
[0044]
This situation is an unavoidable problem except when dealing with a limited data length, and can also occur for the above-described FIGS. 22 and 23 and other configurations.
[0045]
Therefore, the present invention has been made to solve such a problem, and the object thereof is to realize a correction process that can correspond to the number of information bits processed by a dynamically changing turbo code. The present invention relates to a digital transmission system, an encoding device, a decoding device, and a data processing method in the system.
[0046]
[Means for Solving the Problems]
A digital transmission system according to an aspect of the present invention includes: Using an input interface unit to which a data sequence of variable bit length is input as an input sequence, a data conversion circuit for converting the input sequence input to the input interface unit into a data sequence of a predetermined number of bits, and a turbo code The first and second encoders for encoding the data string converted by the data conversion circuit and the first and second encoders are provided corresponding to the first and second encoders, respectively, and receive the respective outputs to perform puncturing. The first and second puncture units, the data sequences processed by the first and second puncture units, and the input sequence are received, and the output sequence is output as transmission data by bit mapping executed in a predetermined procedure. Order of data strings provided between the multiplexing processing unit, the data conversion circuit, and the second encoder and converted by the data conversion circuit A transmission system including a fixed-length interleaver that executes interleaving processing to be changed and outputs to the second encoder so that the data conversion circuit becomes a fixed-length data string that is interleaved by the interleaver. Convert input series to The The digital transmission system further includes a first data creation circuit that creates a data sequence for decoding based on the output of the transmission system, and a decoder that executes a decoding process corresponding to encoding based on the created data sequence. And a receiving system including a second data generation circuit that receives a decoder output and generates a desired data string.
[0047]
Preferably, the transmission system further includes a selection circuit that selects a predetermined number of bits among the plurality of bit number candidates.
[0048]
In particular, the data conversion circuit includes a circuit that inserts predetermined data (“0”, “1”, or a combination thereof) into a specific portion of the data string. On the other hand, the second data creation circuit deletes data at a specific location.
[0049]
In particular, First and second puncture units Is First and second Encoder Respectively Among the data to be output, a circuit for deleting data at a specific location is included. The first data creation circuit replaces the data at the specific location to be deleted with information for regarding that there is no received data.
[0050]
An encoding device according to a further aspect of the present invention provides: Using an input interface unit to which a variable bit length data sequence is input as an input sequence, a data conversion circuit for converting the input sequence input to the input interface unit into a data sequence having a predetermined number of bits, and a turbo code The first and second encoders for encoding the data string converted by the data conversion circuit and the first and second encoders are provided corresponding to the first and second encoders, respectively, and receive the respective outputs to perform puncturing. The first and second puncture units, the data sequences processed by the first and second puncture units, and the input sequence are received, and the output sequence is output as transmission data by bit mapping executed in a predetermined procedure. Order of data strings provided between the multiplexing processing unit, the data conversion circuit, and the second encoder and converted by the data conversion circuit A transmission system including a fixed-length interleaver that executes interleaving processing to be changed and outputs to the second encoder so that the data conversion circuit becomes a fixed-length data string that is interleaved by the interleaver. Convert input series to The Preferably, the encoding device includes a plurality of bit number candidates. , And a selection circuit for selecting a predetermined number of bits.
[0051]
A decoding apparatus according to a further aspect of the present invention corresponds to the above encoding apparatus, and includes a first data generation circuit for generating a data string for decoding an output sequence, and a code based on the generated data string. And a second data creation circuit for creating a desired data string in response to the output of the decoder.
[0052]
A data processing method in a digital transmission system according to a further aspect of the present invention includes: An input step in which a variable bit length data sequence is input as an input sequence, a data conversion step in which the input sequence is converted into a data sequence having a predetermined number of bits, and an interleave that changes the order of the converted data sequence An interleaving step for performing processing, an encoding step for encoding a data sequence converted using a turbo code, a puncturing step for executing puncturing on the encoded data sequence, and a puncturing process A transmission data creation step for receiving the data sequence and the input sequence, and outputting the output sequence as transmission data by bit mapping executed in a predetermined procedure, wherein the data conversion step is a fixed-length data that is interleaved. Convert input series to be a data string The The data processing method further includes a decoded data generation step for generating a data string for decoding transmission data, a decoding step for executing a decoding process corresponding to encoding based on the generated data string, and a result of the decoding process And an output data creation step of creating a desired data string.
[0053]
As described above, the digital transmission system according to the present invention is provided with means for adjusting the data length before the turbo code. Also, means for adjusting the data length is provided after the turbo code. A data string having an assumed data length is provided for the data string subjected to error correction processing. That is, although the data length subject to error correction changes dynamically, it becomes possible to guarantee the channel coding / combining processing by limiting the processing data length in the turbo code in advance.
[0054]
DETAILED DESCRIPTION OF THE INVENTION
A digital transmission system according to an embodiment of the present invention and processing contents thereof will be described with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same symbols or symbols, and the description thereof is omitted.
[0055]
A transmission-side system constituting the digital broadcasting system according to the embodiment of the present invention will be described with reference to FIG. As shown in FIG. 1, the transmission side system according to the embodiment of the present invention includes an input I / F (interface)
[0056]
Information bits input to the turbo encoder are stored in the input I /
[0057]
On the other hand, for the convolution process, the
[0058]
The data string XA output from the
[0059]
Data sequence XA that is not interleaved is encoded by
[0060]
A puncture process (puncture unit 130) is performed on the output data YA of the
[0061]
A puncture process (puncture unit 140) is performed on the output data Y ′ of the
[0062]
The data strings Y and Y ′ are supplied to the
[0063]
Next, the configuration of the receiving system included in the digital broadcasting system according to the embodiment of the present invention will be described with reference to FIG. As shown in FIG. 2, the receiving system according to the embodiment of the present invention includes a demultiplexing processing unit (DeMUX) 250, first, second, and third bit filling
[0064]
In the
[0065]
The first bit padding
[0066]
The bit
[0067]
The
[0068]
Since the decoded sequence XA ′ output from the
[0069]
Next, an extended example of the turbo encoder according to the embodiment of the present invention will be described with reference to FIG. If the data width to be handled is large and the data width is limited to a single fixed information bit, the influence on the error correction characteristics becomes large. Therefore, by providing a processing means for selecting a representative number of bits, the turbo code processing system according to the embodiment of the present invention has flexibility.
[0070]
Therefore, a predetermined number of fixed interleavers are provided, and a switch for determining which interleaver is used is operated by the
[0071]
Specifically, the circuit shown in FIG. 3 includes a plurality of interleavers (fixed), a plurality of switches (SW), and a
[0072]
The
[0073]
On the decoding processing side, a plurality of interleavers corresponding to the turbo encoder are arranged instead of the above-described
[0074]
Next, a specific example of the data addition configuration in the
[0075]
In the figure, the shaded area corresponds to additional data. FIG. 4 shows an example in which additional information (“11... 11”) is added to the end of the information bits (“010110...”).
[0076]
In turbo processing, since information bits are randomly interleaved, it is possible to simply add data to the end of the data as shown in FIG.
[0077]
As the data to be added, all “1” are assumed in the example shown in FIG. 4, but all “0” or other predetermined patterns can be used.
[0078]
A further example of the data addition configuration is shown in FIG. In FIG. 5, data D1 is an information bit, and data D3 represents a data series after data addition. A hatched area attached to the data D3 is an additional data portion. In FIG. 5, the data insertion position is changed at the time of creating additional data, and “1” is inserted every other bit. Note that the data to be added is not limited to “1” as described above.
[0079]
Next, an example of a data structure in the puncturing unit and the multiplexing processing unit will be described with reference to FIG. In FIG. 6, D4 is a data string X (X series), D5 is a data string Y (Y series), D6 is a data string Y '(Y' series), and D7 is a data string after multiplexing processing. Represents each.
[0080]
As for the X series, the data is handled as it is. Regarding the Y series, the data is thinned out according to a specific rule so as to match the required number of bits in the encoded data. Also in the Y ′ series, data is thinned out according to a specific rule so as to match the required number of bits in the encoded data by the same processing. In the example illustrated in FIG. 6, a portion indicated by “−” is data to be punctured.
[0081]
The
[0082]
Next, data structures in the
[0083]
The example shown in FIG. 7 corresponds to the bit padding process shown in FIG. 6, and the X series, Y series, Y from the data series D8 arranged alternately in the X series, Y series, and Y ′ series. 'Separate each data series of series.
[0084]
For each of the separated data series, a bit padding process is performed to correspond to the puncturing process in FIG.
[0085]
As for the X series, bit padding is performed by adding a specific data pattern to a predetermined position. That is, the processing corresponds to the data addition configuration shown in FIG. 4 or FIG. This example corresponds to the case of FIG. Specifically, data consisting only of “0” is set at the end of the X-series data.
[0086]
For the Y sequence and the Y ′ sequence, a portion where no data originally exists (“−” in FIG. 6) indicates that there is no information bit, that is, no received data, or “1” and “0”. The calculation proceeds as if there was an intermediate input. By this process, an X series, a Y series, and a Y ′ series having a fixed data length can be created. In the example of FIG. 7, the “−” portion in FIG. 6 is replaced with “0”.
[0087]
If the X sequence, the Y sequence, and the Y ′ sequence are determined, the turbo code decoder can operate and a decoding result can be obtained.
[0088]
A procedure for extracting a final decoded sequence from the decoding result will be described with reference to FIG. In FIG. 8, D12 represents a data string output from the
[0089]
FIG. 8 corresponds to the data addition configuration shown in FIG. 4, and the necessary number of bits is determined (taken out) from the beginning of the decoding result as the final decoding result.
[0090]
A further procedure for extracting the final decoded sequence from the decoding result will be described with reference to FIG. In FIG. 9, D <b> 14 represents a data string output from the
[0091]
FIG. 9 corresponds to the data addition structure shown in FIG. 5, and necessary data is extracted from the position where the decoding result is determined. As a result, a final decoding result can be obtained.
[0092]
Note that the configuration according to the embodiment of the present invention can also be realized by executing a program on a storage device such as a RAM or ROM loaded with a program by a control unit such as a DSP or a CPU.
[0093]
10 and 11 show processing procedures when the processing according to the embodiment of the present invention is realized using software. FIG. 10 corresponds to data processing on the transmission side, and FIG. 11 corresponds to data processing on the reception side.
[0094]
Referring to FIG. 10, turbo code data is created in step S1. In step S2, the first convolution process is executed (corresponding to RSC1). In step S3, data puncturing is performed (corresponding to the puncturing unit 130).
[0095]
In step S4, an interleaving process is performed (corresponding to the interleaver 120). In step S5, the second convolution process is executed (corresponding to RSC2). In step S6, data puncturing is performed (corresponding to the puncturing unit 140). In step S7, data multiplexing is performed (corresponding to the multiplexing processing unit 150).
[0096]
Referring to FIG. 11, on the receiving side, in step S10, the received data is decomposed (corresponding to demultiplexing processing unit 250). In step S11, unnecessary bits of the X series are processed (corresponding to the bit padding processing unit 200). In step S12, unnecessary bits of the Y series are processed (corresponding to the bit padding processing unit 210). In step S13, unnecessary bits of the Y ′ series are processed (corresponding to the bit stuffing processing unit 220).
[0097]
In step S14, turbo decoding processing is executed (corresponding to turbo code decoder 240). In step S15, an information bit is extracted from the decoding result (corresponding to the data bit selection unit 260).
[0098]
The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
[0099]
【The invention's effect】
As described above, by using the digital transmission system and the digital transmission method according to the present invention, it is possible to cope with a dynamic change in the number of information bits to be turbo-coded. For this reason, the error correction processing can be reduced without being limited to the number of information bits required for the turbo code.
[0100]
As a result, the system can be simplified as compared with the conventional system. Therefore, the present invention can exert an especially effective effect on quality improvement in a system using a turbo code as an error correction means.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a transmission side system according to an exemplary embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of a receiving system according to the embodiment of the present invention.
FIG. 3 is a block diagram showing another configuration example according to the embodiment of the present invention.
FIG. 4 is a diagram illustrating a data configuration example in a data addition process.
FIG. 5 is a diagram illustrating another configuration example of the data configuration example in the data adding unit;
FIG. 6 is a diagram illustrating a data configuration in a puncturing unit and a multiplexing processing unit.
FIG. 7 is a diagram illustrating a data configuration in a bit padding processing unit and a demultiplexing processing unit.
FIG. 8 is a diagram illustrating an example of a data bit selection process.
FIG. 9 is a diagram illustrating an example of a data bit selection process.
FIG. 10 is a flowchart showing transmission data processing (implemented by software) according to the embodiment of the present invention.
FIG. 11 is a flowchart showing received data processing (implemented by software) according to the embodiment of the present invention;
FIG. 12 is a block diagram showing a configuration of a conventional turbo encoder.
FIG. 13 is a block diagram showing a configuration of a conventional encoder (RSC).
FIG. 14 is a diagram for explaining state transition in a turbo code.
FIG. 15 is a diagram illustrating an example of state transition in a turbo code.
FIG. 16 is a diagram illustrating an example of state transition in a turbo code.
FIG. 17 is a diagram for explaining an iterative process in turbo code decoding;
FIG. 18 is a configuration diagram showing a configuration of a turbo code decoder.
FIG. 19 is a diagram illustrating a BER characteristic in a conventional turbo code.
FIG. 20 is a diagram illustrating a data flow for a turbo code.
FIG. 21 is a block diagram showing an outline of a configuration in a conventional encoding device.
FIG. 22 is a block diagram showing an outline of a configuration in a conventional encoding device.
FIG. 23 is a diagram illustrating a data flow for the turbo code in FIG. 22;
[Explanation of symbols]
10,11 Soft decision decoder, 20, 21, 22, 120, 230 interleaver, 30 decoding calculation unit, 100,110 encoder (RSC1, RSC2), 130,140 puncturing unit, 150 multiplexing processing unit, 160 input I / F section, 170 data adding section, 180 select control section, 190,191 switch, 200,210,220 bit padding processing section, 240 turbo code decoder, 250 demultiplexing processing section, 260 data bit selection section.
Claims (27)
前記データ変換回路は、前記インターリーバでインターリーブ処理される固定長のデータ列となるように前記入力系列を変換する、デジタル伝送システム。 An input interface unit to which a variable bit length data sequence is input as an input sequence, a data conversion circuit for converting the input sequence input to the input interface unit into a data sequence having a predetermined number of bits, and a turbo code Are provided corresponding to the first and second encoders for encoding the data string converted by the data conversion circuit, and puncturing by receiving the respective outputs. Receiving the first and second puncture units that perform the data sequence, the data sequence processed by the first and second puncture units, and the input sequence, and transmitting the output sequence by bit mapping executed in a predetermined procedure A multiplexing processing unit that outputs the data, and is provided between the data conversion circuit and the second encoder; Ri Run interleave processing for changing the order of the transformed data string, and outputs to the second encoder, a transmission system comprising a fixed length interleaver,
The data conversion circuit that converts the input sequence such that the fixed-length data string interleaved by the interleaver, a digital transmission system.
複数のビット数の候補のうち、前記予め定められたビット数を選択する選択回路をさらに含む、請求項1または2に記載のデジタル伝送システム。The transmission system includes:
The digital transmission system according to claim 1 or 2, further comprising a selection circuit that selects the predetermined number of bits among a plurality of bit number candidates.
前記予め定められたビット数のデータ列の特定箇所に“0”を挿入する回路を含む、請求項1〜3のいずれかに記載のデジタル伝送システム。The data conversion circuit includes:
It includes circuitry for inserting a "0" to a specific portion of the data sequence number of said predetermined bits, a digital transmission system according to claim 1.
前記予め定められたビット数のデータ列の特定箇所に“1”を挿入する回路を含む、請求項1〜3のいずれかに記載のデジタル伝送システム。The data conversion circuit includes:
It includes circuitry for inserting a "1" to a specific portion of the data sequence number of bits the predetermined digital transmission system according to claim 1.
前記予め定められたビット数のデータ列の特定箇所に、予め定められたデータを挿入する回路を含む、請求項1〜3のいずれかに記載のデジタル伝送システム。The data conversion circuit includes:
The digital transmission system according to any one of claims 1 to 3, further comprising a circuit that inserts predetermined data into a specific portion of the data string having the predetermined number of bits .
削除される前記特定箇所のデータを、受信データなしとみなすための情報に置換える、請求項7に記載のデジタル伝送システム。The first data creation circuit includes:
The digital transmission system according to claim 7, wherein the data of the specific portion to be deleted is replaced with information for regarding that there is no received data.
前記特定箇所のデータを削除する、請求項4〜6のいずれかに記載のデジタル伝送システム。The second data creation circuit includes:
The digital transmission system according to claim 4, wherein the data at the specific location is deleted.
前記データ変換回路は、前記インターリーバでインターリーブ処理される固定長のデータ列となるように前記入力系列を変換する、符号化装置。 An input interface unit to which a variable bit length data sequence is input as an input sequence, a data conversion circuit for converting the input sequence input to the input interface unit into a data sequence having a predetermined number of bits, and a turbo code Are provided corresponding to the first and second encoders for encoding the data string converted by the data conversion circuit, and puncturing by receiving the respective outputs. Receiving the first and second puncture units that perform the data sequence, the data sequence processed by the first and second puncture units, and the input sequence, and transmitting the output sequence by bit mapping executed in a predetermined procedure A multiplexing processing unit that outputs the data, and is provided between the data conversion circuit and the second encoder; Ri Run interleave processing for changing the order of the transformed data string, and outputs to the second encoder, a transmission system comprising a fixed length interleaver,
The data conversion circuit that converts the input sequence such that the fixed-length data string interleaved by the interleaver, the encoding device.
前記予め定められたビット数のデータ列の特定箇所に“0”を挿入する回路を含む、請求項10または11に記載の符号化装置。The data conversion circuit includes:
12. The encoding apparatus according to claim 10, further comprising a circuit that inserts “0” at a specific location of the data string having the predetermined number of bits .
前記予め定められたビット数のデータ列の特定箇所に“1”を挿入する回路を含む、請求項10または11に記載の符号化装置。The data conversion circuit includes:
12. The encoding apparatus according to claim 10, further comprising a circuit that inserts “1” at a specific location of the data string having the predetermined number of bits .
前記予め定められたビット数のデータ列の特定箇所に、予め定められたデータを挿入する回路を含む、請求項10または11に記載の符号化装置。The data conversion circuit includes:
12. The encoding device according to claim 10, further comprising a circuit that inserts predetermined data at a specific location of the data string having the predetermined number of bits .
前記出力系列を復号するためのデータ列を作成する第1データ作成回路と、
前記作成されたデータ列に基づき、前記符号化に対応する復号処理を実行する復号器と、
前記復号器の出力を受けて所望のデータ列を作成する第2データ作成回路とを備える、復号装置。 An input interface unit to which a variable bit length data sequence is input as an input sequence, a data conversion circuit for converting the input sequence input to the input interface unit into a data sequence having a predetermined number of bits, and a turbo code Are provided corresponding to the first and second encoders for encoding the data string converted by the data conversion circuit, and puncturing by receiving the respective outputs. Receiving the first and second puncture units that perform the data sequence, the data sequence processed by the first and second puncture units, and the input sequence, and transmitting the output sequence by bit mapping executed in a predetermined procedure A multiplexing processing unit that outputs the data, and is provided between the data conversion circuit and the second encoder; A transmission system including a fixed-length interleaver that performs an interleaving process for changing the order of the converted data strings and outputs the interleaved data to the second encoder, and the data conversion circuit includes: A decoding device that converts the input sequence to be a fixed-length data string to be interleaved ,
A first data creation circuit for creating a data string for decoding the output series;
A decoder that executes a decoding process corresponding to the encoding based on the generated data sequence;
And a second data creation circuit for creating a desired data sequence in response to the output of the decoder.
前記第1データ作成回路は、
削除される前記特定箇所のデータを、受信データなしとみなすための情報に置換える、請求項16に記載の復号装置。 The first and second puncturing units delete data at specific locations from the data output from the first and second encoders,
The first data creation circuit includes:
The decoding device according to claim 16, wherein the data of the specific portion to be deleted is replaced with information for regarding that there is no received data.
前記予め定められたビット数のデータ列の特定箇所に、予め定められたデータを挿入し、
前記第2データ作成回路は、
前記特定箇所のデータを削除する、請求項16に記載の復号装置。The data conversion circuit includes:
Inserting predetermined data into a specific location of the data string of the predetermined number of bits ,
The second data creation circuit includes:
The decoding device according to claim 16, wherein the data at the specific location is deleted.
前記データ変換ステップは、インターリーブ処理される固定長のデータ列となるように前記入力系列を変換する、デジタル伝送システムにおけるデータ処理方法。 An input step in which a variable bit length data sequence is input as an input sequence, a data conversion step in which the input sequence is converted into a data sequence having a predetermined number of bits, and an interleave that changes the order of the converted data sequence An interleaving step for performing processing, an encoding step for encoding a data sequence converted using a turbo code, a puncturing step for performing puncturing on the encoded data sequence, and a puncturing process A transmission data creation step of receiving the data sequence and the input sequence, and outputting the output sequence as transmission data by bit mapping executed in a predetermined procedure ,
Wherein the data conversion step, that converts the input sequence such that the fixed-length data string interleaved, the data processing method in a digital transmission system.
前記作成されたデータ列に基づき、前記符号化に対応する復号処理を実行する復号ステップと、
前記復号処理の結果を受けて、所望のデータ列を作成する出力データ作成ステップとをさらに備える、請求項19に記載のデジタル伝送システムにおけるデータ処理方法。A decryption data creation step for creating a data string for decrypting the transmission data;
A decoding step of performing a decoding process corresponding to the encoding based on the generated data sequence;
20. The data processing method in the digital transmission system according to claim 19, further comprising an output data creation step of creating a desired data string in response to the result of the decoding process.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000360595A JP3673165B2 (en) | 2000-11-28 | 2000-11-28 | Digital transmission system, encoding device, decoding device, and data processing method in the digital transmission system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000360595A JP3673165B2 (en) | 2000-11-28 | 2000-11-28 | Digital transmission system, encoding device, decoding device, and data processing method in the digital transmission system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002164795A JP2002164795A (en) | 2002-06-07 |
JP3673165B2 true JP3673165B2 (en) | 2005-07-20 |
Family
ID=18832169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000360595A Expired - Fee Related JP3673165B2 (en) | 2000-11-28 | 2000-11-28 | Digital transmission system, encoding device, decoding device, and data processing method in the digital transmission system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3673165B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004040832A1 (en) | 2002-10-31 | 2004-05-13 | Matsushita Electric Industrial Co., Ltd. | Transmitting device and transmitting method |
EP1914897A4 (en) | 2005-08-12 | 2012-01-11 | Fujitsu Ltd | Transmitter apparatus |
KR101283862B1 (en) * | 2006-08-16 | 2013-07-08 | 엘지전자 주식회사 | Apparatus and method for encoding turbo code |
JP4841684B2 (en) * | 2010-09-24 | 2011-12-21 | 富士通株式会社 | Transmitting apparatus and transmitting method |
JP5195989B2 (en) * | 2011-09-09 | 2013-05-15 | 富士通株式会社 | Sending method |
-
2000
- 2000-11-28 JP JP2000360595A patent/JP3673165B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002164795A (en) | 2002-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5457535B2 (en) | Rate matching and channel interleaving for communication systems | |
JP3730238B2 (en) | Adaptive channel coding method and apparatus | |
JP3546063B2 (en) | Channel coding apparatus and method for communication system | |
JP4115701B2 (en) | Transmission rate matching apparatus and method for data communication system | |
JP3857320B2 (en) | Parallel connected tail biting convolution codes and decoders thereof | |
US7827472B2 (en) | Puncture-constrained interleaving for concatenated codes | |
EP1018220B1 (en) | Channel encoding/decoding in communication system | |
JP2002532941A (en) | Turbo code interleaver using linear congruential sequences | |
KR101611631B1 (en) | Methods and apparatus for programmable decoding of a plurality of code types | |
KR100295760B1 (en) | Apparatus and method for convolutional decoding in digital system | |
JP4837645B2 (en) | Error correction code decoding circuit | |
JP3673165B2 (en) | Digital transmission system, encoding device, decoding device, and data processing method in the digital transmission system | |
JP3540224B2 (en) | Turbo decoder, turbo decoding method, and storage medium storing the method | |
JP3837023B2 (en) | Hybrid interleaver for turbo codes | |
US20020172292A1 (en) | Error floor turbo codes | |
KR100454952B1 (en) | Adaptive Channel Coding Method and Apparatus | |
JP4420925B2 (en) | Method and encoder for encoding an information bit sequence | |
JP4580420B2 (en) | Encoder and decoder for concatenated zigzag codes based on improved UMTS-based interleaving | |
KR100845829B1 (en) | Turbo decoder and decoding method | |
Yang et al. | Iterative decoding of serially concatenated convolutional codes applying the SOVA | |
JP4991481B2 (en) | Iterative decoding apparatus and iterative decoding method | |
EP1347580A2 (en) | Hybrid interleaver for turbo codes | |
JP2001326577A (en) | Device and method for directly connected convolutional encoding | |
KR19990081745A (en) | Channel Code and Decoding Device and Method of Communication System | |
CA2590447A1 (en) | Puncture-constrained interleaving for concatenated codes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040817 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041015 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050405 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050421 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080428 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090428 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090428 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100428 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100428 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110428 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120428 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |