JP3954071B2 - ターボ復号化装置及び方法 - Google Patents

ターボ復号化装置及び方法 Download PDF

Info

Publication number
JP3954071B2
JP3954071B2 JP2004525871A JP2004525871A JP3954071B2 JP 3954071 B2 JP3954071 B2 JP 3954071B2 JP 2004525871 A JP2004525871 A JP 2004525871A JP 2004525871 A JP2004525871 A JP 2004525871A JP 3954071 B2 JP3954071 B2 JP 3954071B2
Authority
JP
Japan
Prior art keywords
terminal
output
input
metric
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
Application number
JP2004525871A
Other languages
English (en)
Other versions
JP2005535222A (ja
Inventor
スン−ジン・パク
ミン−ゴー・キム
ソン−ジャエ・チョイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2005535222A publication Critical patent/JP2005535222A/ja
Application granted granted Critical
Publication of JP3954071B2 publication Critical patent/JP3954071B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
    • H03M13/3927Log-Likelihood Ratio [LLR] computation by combination of forward and backward metrics into LLRs
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/296Particular turbo code structure

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)

Description

本発明は、通信システムの復号化装置及び方法に関し、特に、ターボ復号化のための装置及び方法に関する。
一般に、デジタル通信システムでは、データを伝送する際にチャンネル上で発生する可能性があるエラーを効果的に訂正してデータ伝送の信頼度を高めるために順方向エラー訂正(FEC: Forward Error Correction)符号が広く使われている。このような順方向エラー訂正符号にはターボ符号(turbo code)がある。ターボ符号は、畳み込み符号(convolution code)に比べてデータを高速伝送する際のエラー訂正能力が優れるので、第3世代移動通信システムとして注目されている同期方式のCDMA2000(code division multiple access 2000)システムと非同期方式のUMTS(Universal Mobile Telecommunication System)などに採択された。
図1は、第3世代移動通信システムの受信機の構成を示す図である。この構成は、高速のパケットデータ通信ができるようにする1xEV−DV(Evolution Data and Voice)システムの受信機についての構成を例として示している。
図1において、受信信号は、受信信号処理部10により高域周波数(RF: Radio Frequency)、中間周波数(IF: Intermediate Frequency)及び基底帯域(baseband)に処理される。前記受信信号処理部10により処理された信号は、各チャンネル別に分離される。受信機30は、順方向基本チャンネル(F−FCH: Forward Fundamental Channel)、順方向付加チャンネル(F−SCH: Forward Supplemental Channel)、順方向専用制御チャンネル(F−DCCH: Forward Dedicated Control Channel)の信号を受信して処理する。受信機40は、順方向パケットデータチャンネル(F−PDCH: Forward Packet Data Channel)信号を受信して処理する。受信機50は、順方向パケットデータ制御チャンネル(F−PDCCH: Forward Packet Data Control Channel)信号を受信して処理する。
受信機40は、ブロック42、44、46、48を含んで構成される。ブロック42は、チャンネル上で発生する可能性がある損失を最小化する機能のためのものとして、フィンガー(finger)及びコンバイナー(combiner)を含む。ブロック44は、チャンネル復号化が可能に信号を変換する機能のためのものとして、復調器バッファー(demodulation buffer)と、Walsh逆拡散器(walsh decover)と、シンボルデマッパー(symbol demapper)と、ディスクランブラー(descrambler)と、を含む。ブロック48は、復号化を実行し、復号化された結果をL1階層(Layer)処理部70に参照信号として供給する機能を備えると共に、ターボ復号器(turbo decoder)及び出力バッファー(いずれも図示せず)を含む。前記ブロック46は、復調シンボルを復号化のためにブロック48に伝達する機能を備えると共に、コンバイナー(combiner)と、逆混合器(deshuffler)と、ディインターリーバー(deinterleaver)と、メモリーバッファー(memory buffer)と(いずれも図示せず)、を含む。
探索器(searcher)20は、受信信号の探索のための構成要素であり、HARQ(Hybrid Automatic Request)制御機60は、受信されなかったシンボルについての再伝送を要請するための構成要素である。
図2は、従来技術によるターボ復号化装置の構成を示す図として、図1に示したターボ復号器ブロック48の構成に該当する。この図は、ターボ復号器がSISO(Soft-In Soft-Out:軟入力/軟出力)方式で構成された例を示す。SISO方式の代わって前記ターボ復号器は、MAP(Maximum A Posteriori)方式又はRESOVA(Register Exchange Soft Output Viterbi Algorithm)方式により具現することもできる。ここで、SISO方式は、シンボルについての信頼度に関する確率を求める方式であり、RESOVA方式は、シンボルの経路(path)を長い符号語(codeword)として、符号語についての確率を求める方式である。
図2を参照すれば、ブロック48の入力端には、図1に示したブロック46のメモリーバッファー46-1に保存されているシンボル(データビット)が提供される。メモリーバッファー46-1にはデインターリビングが完了されたビットが構造的符号であるシステム符号(systematic code)と、非構造的符号であるパリティー符号1(parity 1 code)、パリティー符号2(parity 2 code)に区分されて保存される。この時、メモリーバッファー46-1からブロック48へは、システム符号のビットと、パリティー符号のビットが同時に提供される。例えば、1xEV−DVシステムにおいて、メモリーバッファー46-1は、送信端から準補完ターボ符号(QCTC: Quasi-Complementary Turbo Code)で符号化及び送信された後に受信されるシンボルを保存するためのQCTCメモリーバッファーである。このメモリーバッファー46-1から出力される一つの符号は、Mビットで構成され、メモリーバッファー46-1からは、構造的符号(Systematic code)とパリティー符号1(Parity1 code)、パリティー符号2(Parity2 code)の3個の符号が全部出力されるので、メモリーバッファー46-1と前記ブロック48との間には(3×M)ビットのバスが構成され、メモリーバッファー46-1から出力される符号は、ブロック48の多重化器(MUX: Multiplexer)48-1に提供される。
ターボ復号器ブロック48は、多重化器48-1と、SISO方式復号器(以下、"SISO復号器"と称する)48-2と、インターリーバー(interleaver)48-3と、デインターリーバー(deinterleaver)48-4と、出力バッファー(output buffer)48-5と、CRC検査器(Cyclic Redundancy Code checker)48-6からなる。
多重化器48-1は、メモリーバッファー46-1からのビットと、インターリーバー48-3の出力と、デインターリーバー48-4の出力と、を入力し、多重化して出力する。SISO復号器48-2は、多重化器48-1の出力を入力して、後述される図3のように構成してSISO復号化して出力する。インタリバー48-3は、SISO復号器48-2の出力をインターリビングする。デインターリーバー48-4は、SISO復号器48-2の出力をデインターリビングする。出力バッファー48-5は、デインターリーバー48-4によりデインターリビングされた結果をL1階層処理部70が参照できるように保存する。CRC検査機48-6は、デインターリーバー48-4によるデインターリビング結果についてCRC検査を実行し、その検査結果をL1階層処理部70に提供する。
図3は、従来技術によるSISO復号器の構成を示す図である。この図は、SISO復号器がウィンドウモード(sliding window mode)方式により具現された例を示すと共に、ここでは、ウィンドウ数が2であると仮定している。SISO復号器は、MAP方式の復号器と比較して基本構造は同一であり、出力値だけが異なる。
図3を参照すれば、SISO復号器が復号化する過程では、いくつかのメトリック(metrics)を演算する動作が実行される。即ち、SISO復号器の復号化動作中にデルタメトリック(delta metric)、アルファメトリック(αmetric)、ベータメトリック(βmetric)及びLLR(Log Likelihood Ratio)の値が計算される。逆多重化器(DEMUX: Demultiplexer)205は、予め設定された速度、例えば、ターボ復号器のクロック(動作周波数)の3倍の速度でメモリーバッファー46-1に保存されているデータビットにアクセスし、第1の出力(図中の○付き数字“1”)、第2の出力(図中の○付き数字“2”)及び第3の出力(図中の○付き数字“3”)を提供する。デルタメトリック計算部210は、3個の計算機211〜213で構成され、各計算機は、前記第1の出力、第2の出力及び第3の出力各々についてのデルタメトリックを計算する。アルファメトリック計算部220は、デルタメトリック計算機211により計算されたデルタメトリックを入力し、該当するアルファメトリックを計算する。ベータメトリック計算部230は、2個のベータメトリック計算機231、232と、多重化器233で構成される。即ち、前記ベータメトリック計算部230は、第1のベータ(β1)メトリックを計算する計算機231と、第2のベータ(β2)メトリックを計算する計算機232と、前記計算機231、232による計算結果を多重化する多重化器233と、を含む。LLR計算部240は、3個の計算機241〜243で構成され、前記アルファメトリック計算部220により計算されたアルファメトリックと、前記多重化器233による多重化結果を入力して該当するLLRの値を計算する。減算部250は、3個の減算器251〜253で構成され、各減算器は、前記LLR計算機241〜243により計算されたLLRの値から前記逆多重化器205の第1の出力(図中の○付き数字“1”)を減算し、その減算結果をインターリビング/デインターリビングのために図2に示したインターリーバー48-3とデインターリーバー48-4に出力する。
上述のように従来技術によるSISO復号器は、メトリック演算のためのデルタメトリック計算部と、アルファメトリック計算部と、ベータメトリック計算部と、確率に基づいてメトリックを復号化した結果を出力するLLR計算部で構成される。ここで、ベータメトリック計算部は、ウィンドウの数によって2個の計算機で構成したことを示している。
デルタメトリック(Delta metric)は、ステートメトリック(state metric)とも言って、符号器の一つのステートから他のステートへの遷移確率を示す。アルファメトリックは、順方向ステートメトリック(forward state metric)とも言って、前のステートから次のステートへ遷移する確率値のメトリックと、前のステートになる確率値のメトリックとを加算したメトリック値を示す。アルファメトリックは、最初の受信信号から計算している信号区間にわたって累積された確率を意味し、順次に計算される。ベータメトリックは、逆方向ステートメトリック(backward state metric)とも言って、現在のステートから前のステートへの累積確率を示す。アルファメトリックとベータメトリックが全部求められると、LLRの値が計算される。LLRは、シンボルについての確率を示すことで、“1”になる確率と“0”になる確率の比率をログスケール(log scale)で表現した値である。LLRを計算するためのLLR計算機241〜243は、各々順方向ステート、逆方向ステートについての遷移確率に基づいてシンボルについての確率を求める。この時、LLRの値が正の数である場合はシンボル“1”、負の数である場合はシンボル“0”を示す。このように受信された信号を復号化するためにSISO復号器は、アルファメトリック及びベータメトリックの値を全部計算する。ここで、ベータメトリックは、メモリーバッファー46-1に保存された受信信号の逆順に値を演算しなければならないので、ベータメトリックの演算が全部終了するまではLLRの値を求めることができない。
図4A及び図4Bは、図3に示したSISO復号器によるメトリック演算順序を示す図である。図4Aは、αメトリックを演算する過程を示し、図4Bは、βメトリックを演算する過程を示す。図4A及び図4Bを参照すれば、αメトリックを演算する過程とβメトリックを演算する過程との間には差があることが分かる。αメトリックαkは、前の値である(k−1)番目のαメトリックから計算され、βメトリックβkは、次の値である(k+1)番目のβメトリックから計算される。このようにβメトリックを演算するためには受信された信号を逆順に参照しなければならないので、全体受信信号の長さだけの初期遅延が発生する。
図5A及び図5Bは、図3に示したSISO復号器によるフレームモード及びウィンドウモードにおける演算順序を示す図である。図5Aは、SISO復号器がフレームモード(frame mode)でメトリックを演算する順序を示し、図5Bは、SISO復号器が、図3に示したようにウィンドウモード(window mode)でメトリックを演算する順序を示す。
図5Aを参照すれば、βメトリックが全部計算された後にαメトリックとLLRの値(λ)が計算されるので、フレームの区間だけの初期遅延が発生する。このようにフレームモード方式のSISO復号器は、βメトリックを計算した後にαメトリックを計算してLLRの値(λ)を計算する。したがって、βメトリックを計算するうちに遅延時間が発生するが、このような初期遅延を減らすために提案されたものがウィンドウモード方式である。
図5Bを参照すれば、ウィンドウモードのSISO復号器48−2は、ベータメトリック計算のために受信された信号を任意の長さに分割する。任意の長さに分割された受信信号によってβメトリックを計算すれば、初期に計算される値は正確ではない確率を有するが、後に行くほど一層正確な値が計算される。実際のLLRを計算するためには、このような正確な値が出る区間から計算された値を使えば良い。この時、計算の利便性のために不正確な区間と信頼できる区間とのサイズは同一に設定される。一つのウィンドウが正確な値を演算するうちに他のウィンドウは不正確な値を演算して、正確な値と不正確な値とが交互にかみ合うように構成する。このようにβメトリックを計算するにおいて、2種のウィンドウを使用した例が上述の図3に示されたベータメトリック計算部230である。したがって、ウィンドウモードのSISO復号器48−2は、αメトリックと、β1メトリックと、β2メトリックの3個の値を計算する。この3個のメトリックを計算する前に、デルタメトリックの計算が先行されなければならない。
さらに図3を参照すれば、デルタメトリック計算機211〜213は、各々メモリーバッファー46-1の異なるアドレスに保存されている受信信号のデータビットを入力して該当するデルタメトリックを計算する。即ち、デルタメトリック計算機211〜213は、各々図7に示すように、ターボ復号器の動作周波数1クロックの時間の間にメモリーバッファー46-1から異なる位置の信号を読み込む。
図6は、図3に示したSISO復号器によるデータビット入力及びメトリック出力の処理フローを示す図である。
図6を参照すれば、SISO復号器48−2のデルタメトリック計算機211〜213には、各々メモリーバッファー46-1の異なるアドレスに保存されている受信信号のデータビットが印加されることが分かる。横は時間軸を示し、時間が経過するに従ってデルタメトリック計算機211〜213には異なるデータビットが提供されることが分かる。このような動作のためにはメモリーバッファー46-1がターボ復号器の動作周波数より3倍早くアクセスされる必要がある。即ち、前記メモリーバッファー46-1のクロックとしてはターボ復号器クロックの3倍に該当するクロックを使用する必要がある。
図7は、図3に示したSISO復号器によるメモリーバッファーアクセス動作のタイミングを示す図である。
図7を参照すれば、SISO復号器は、図3のメモリーバッファー46-1の異なるアドレスaddr1、addr2、及びaddr3に保存されているデータビットdata1、data2、及びdata3を読み込んでαメトリックのためのデルタメトリック、β1のためのデルタメトリック、及びβ2のためのデルタメトリックを計算する。この時、メモリーバッファー46-1の読み取り動作は、ターボ復号器クロックの3倍の速度で行われる。
図6及び図7に示されたメモリーバッファーアクセス及びデータ処理の動作は、ウィンドウサイズWが実際適用される長さより短いW=4であると仮定した場合である。実際高速のターボ復号器に適用される際に、ウィンドウサイズW=24〜48程度に設定され、状況によってさらに長く設定することもできる。ウィンドウサイズWが変化してもバッファーの構造自体は変化しないし、データフロー図の全体的な形状も変化しないが、長さの比率は大きくなる。
さらに図6を参照すれば、デルタブロック入力(delta block input)の各ボックスの内部に書かれたアルファベットは、メモリーバッファー46-1の異なるアドレスに保存されているデータビットとして、デルタメトリック計算部210に入力される値を意味する。αメトリックに比べてβメトリックが先に求められ、二つのβメトリック計算機231、232は、交互に動作する(図6のT1区間及びT2区間参照)。信頼性あるβ1メトリックが出力される時点からαメトリックが同時に計算される(T2区間参照)。βメトリックが計算される際に、最初のW区間の間は不正確な確率値が出力されるが、その後からW区間の間には信頼できる確率のメトリック値が出力される。α出力(out)、β1出力、β2出力において、ボックス内部のアルファベットはメトリックの順序を意味する。β1及びβ2のためのデルタメトリック計算機212、213の出力は、交互に並ぶので、ベータメトリック計算機231、232により計算されたβメトリックは連続的である。図6には点線で表示された円部分がある。この部分は、その時点で必要なデータビットがメモリーバッファー46-1の異なるアドレスであるd、n、f、または異なる位置にある受信信号であることを示す。
一方、図3に示されたSISO復号器を高速の伝送速度が要求される1xEV−DVシステムに使用すると仮定する際、概略30〜60MHz程度の周波数で動作するターボ復号器が要求される。したがって、メモリーバッファー46-1の動作周波数は、ターボ復号器の動作周波数の3倍に該当する90〜180MHzの範囲内で決定される必要がある。このようなターボ復号器の動作周波数は、低電力の消耗が要求される移動通信端末機には不適切である。
上述のように、代表的な第3世代移動通信システムである1xEV−DVのようなシステムは、高速のパケットデータ通信を可能とする。このような通信システムでは高性能のために高速のターボ復号器が要求される。高速の復号のためにはターボ復号器の前端に連結されたメモリーバッファーに保存されているデータビット(シンボル)が適切な方式によりターボ復号器に入力されなければならない。ウィンドウモード(sliding window)方式のSISO復号器は、フレームモード方式のSISO復号器に比べて初期遅延を減らすことができるので、ウィンドウモード方式のSISO復号器をターボ復号器に使うことが望ましい。この時、ウィンドウモード方式のSISO復号器は、メモリーバッファーからウィンドウの数に対応するデータビットを読み込んで復号化動作を実行する。例えば、ウィンドウの数が2個である場合、SISO復号器はメモリーバッファーから3回にわたってデータビットを読み取った後に復号化のためのメトリックを計算する。このような動作は、ターボ復号器が低速で動作する場合には何の問題もないが、高速で動作する場合には問題になる。その理由は、メモリーバッファーは、ターボ復号器より3倍早く動作しなければならないからで、ターボ復号器の動作周波数が低い場合にその動作周波数より3倍早いメモリーバッファーを使うことは移動通信端末機に無理にならないが、ターボ復号器の動作周波数が高い場合には、その動作周波数より3倍早いメモリーバッファーを使うことが移動通信端末機に相当な無理になるからである。例えば、高速データサービスの提供を目的とするCDMA2000や UMTSのターボ復号器は、高速で動作すればこそ、その元の性能を発揮することができるが、それによって、メモリーバッファーの動作周波数も増加させる場合、移動通信端末機で消耗する電力量は急増するようになる。このような電力消耗量の急増は低電力設計が要求される移動通信端末機には不適切である。
本発明は、上述したような従来技術の問題点を解決するためになされたもので、本発明の目的は、1xEV−DVシステムのように高速のパケットデータをサービスする通信システムに使用するためのターボ復号化装置及び方法を提供することにある。
本発明の他の目的は、高速で動作する移動通信端末機において、復号化のためのターボ復号器の動作周波数と、復号化のためのデータビットを前記ターボ復号器に印加するメモリーバッファーの動作周波数とを同一な周波数で使用可能にする装置及び方法を提供することにある。
本発明の更に他の目的は、高速で動作する移動通信端末機において、復号化のための受信データビットを保存しているメモリーバッファーの動作周波数を高速で増加させる必要性を除去することにより、低電力の消耗が要求される移動通信端末機の具現が可能となる装置及び方法を提供することにある。
このような目的を達成するために、本発明は、ターボ復号器と同一な周波数で動作する高速メモリーバッファーを受信端のメモリーバッファーとターボ復号器との間に接続し、高速メモリーバッファーを通じて受信端のメモリーバッファーに保存されているデータビットを読み込んでターボ復号器で要求される時間だけ遅延させた後にターボ復号器のSISO復号器に入力する復号化装置を提供する。受信端のメモリーバッファーは、ターボ復号器の動作周波数(クロック)でデータビットを出力する。それによって、本発明は、ターボ復号器で処理されなければならないデータの速度が増加する場合にも受信端のメモリーバッファーの動作周波数を増加させる必要がないので、低電力の消耗が要求される移動通信環境に適切な回路の具現ができる。
本発明の一実施の形態によれば、通信システムのターボ復号化装置は、メモリーバッファーと、SISO復号器と、を含む。メモリーバッファーは、単方向シフトレジスターと、少なくとも一つ以上の両方向シフトレジスターから構成される。SISO復号器は、第1のメトリック計算部〜第4のメトリック計算部と、減算部から構成される。
単方向シフトレジスターは、データの入力のための入力端子とデータの出力のための出力端子とを備え、入力データビットを入力端子を通じて順次に入力及びシフトさせて第1の長さのビット列を形成した後に、第1の長さのビット列を出力端子を通じて順次に出力する。
少なくとも一つ以上の両方向シフトレジスターは、各々データの入/出力のための第1の端子及び第2の端子とを備え、入力データビットが、第1の長さの1/2である第2の長さのビットからなるグループに分割され、分割されたグループの中で奇数番目のグループのビットを第1の端子を通じて順次に入力及びシフトさせて第2の長さのビット列を形成した後に第1の端子を通じて順次に出力し、分割されたグループの中で偶数番目のグループのビットを第2の端子を通じて順次に入力及びシフトさせて第2の長さのビット列を形成した後に第2の端子を通じて順次に出力する。
第1のメトリック計算部は、各シフトレジスターからの出力ビットを入力して該当するデルタメトリックを各々計算する。第2のメトリック計算部は、単方向シフトレジスターに対応する第1のメトリック計算部からのデルタメトリックを入力してアルファメトリックを計算する。第3のメトリック計算部は、各々の両方向シフトレジスターに対応する第1のメトリック計算部からのデルタメトリックを入力してベータメトリックを各々計算する。第4のメトリック計算部は、アルファメトリックとベータメトリックの多重化結果とを入力し、各シフトレジスターに対応するLLR値を計算する。減算部は、各LLR値から単方向シフトレジスターの出力を各々減算し、その減算結果をインターリビング/デインターリビングのために出力する。
好ましくは、メモリーバッファーは、入力データビットが分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを判断し、その判断結果によって、入力データビットが第1の端子又は第2の端子に印加されるように制御するための選択信号を両方向シフトレジスター各々に提供する制御ロジックをさらに含む。
好ましくは、メモリーバッファーは、各々の両方向シフトレジスターに対応する逆多重化器と、多重化器と、をさらに含む。逆多重化器は、入力データビットを入力するための入力端と、第1の端子及び第2の端子に各々接続される第1の出力端及び第2の出力端とを備え、制御ロジックから提供される該当する選択信号に応答して奇数番目のグループのビットを第1の出力端を通じて第1の端子に印加し、偶数番目のグループのビットを第2の出力端を通じて第2の端子に印加する。多重化器は、制御ロジックから提供される該当する選択信号に応答して第1の端子を通じて出力されるビット列と第2の端子を通じて出力されるビット列とを多重化して第1のメトリック計算部に出力する。
好ましくは、各々の選択信号は、入力データビットが各々の両方向シフトレジスターに各々別の時点で印加されるように制御するための信号である。
好ましくは、奇数番目のグループのビットが第1の端子を通じて順次に出力されると同時に、偶数番目のグループのビットが第2の端子を通じて順次に入力及びシフトされる。
好ましくは、両方向シフトレジスターの数は、ウィンドウ数により決定される。
好ましくは、第1の長さ及び第2の長さは、ウィンドウサイズとウィンドウ数により決定される。
好ましくは、第2の長さは、ウィンドウサイズとウィンドウ数の乗算により決定される。
好ましくは、入力データビットは、ターボ復号器のクロック速度で入力される。
本発明の他の実施の形態によれば、通信システムのターボ復号化装置は、メモリーバッファーと、SISO復号器と、を含む。メモリーバッファーは、第1のステージの両方向シフトレジスターと、第2のステージの両方向シフトレジスターから構成される。SISO復号器は、第1のメトリック計算部〜第4のメトリック計算部と、減算部から構成される。
各々の第1のステージの両方向シフトレジスターは、データの入/出力のための第1の端子及び第2の端子を備え、入力データビットが予め設定された長さのビットからなるグループに分割され、分割されたグループの中で奇数番目のグループのビットを第1の端子を通じて順次に入力及びシフトさせて長さのビット列を形成した後に第1の端子を通じて順次に出力し、分割されたグループの中で偶数番目のグループのビットを第2の端子を通じて順次に入力及びシフトさせて長さのビット列を形成した後に第2の端子を通じて順次に出力する。
第2のステージの両方向シフトレジスターは、データの入/出力のための第3の端子及び第4の端子を備え、第1の端子を通じて順次に出力されるビットを第3の端子を通じて順次に入力及びシフトさせて長さのビット列を形成した後に第3の端子を通じて順次に出力し、第2の端子を通じて順次に出力されるビットを第4の端子を通じて順次に入力及びシフトさせて長さのビット列を形成した後に第4の端子を通じて順次に出力する。
第1のメトリック計算部は、各シフトレジスターからの出力ビットを入力して該当するデルタメトリックを各々計算する。第2のメトリック計算部は、単方向シフトレジスターに対応する第1のメトリック計算部からのデルタメトリックを入力してアルファメトリックを計算する。第3のメトリック計算部は、各々の両方向シフトレジスターに対応する第1のメトリック計算部からのデルタメトリックを入力してベータメトリックを各々計算する。第4のメトリック計算部は、アルファメトリックと、前記ベータメトリックの多重化結果と、を入力し、各シフトレジスターに対応するLLR値を計算する。減算部は、各LLR値から単方向シフトレジスターの出力を各々減算し、その減算結果をインターリビング/デインターリビングのために出力する。
好ましくは、メモリーバッファーは、入力データビットが分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを判断し、その判断結果によって、入力データビットが第1の端子又は第2の端子に印加されるように制御するための選択信号を第1のステージの両方向シフトレジスター各々に提供する制御ロジックをさらに含む。
好ましくは、メモリーバッファーは、第1のステージの両方向シフトレジスター各々に対応する逆多重化器と、多重化器と、をさらに含む。逆多重化器は、入力データビットを入力するための入力端と、第1の端子及び第2の端子に各々接続される第1の出力端及び第2の出力端を備え、制御ロジックから提供される該当する選択信号に応答して奇数番目のグループのビットを第1の出力端を通じて第1の端子に印加し、偶数番目のグループのビットを第2の出力端を通じて第2の端子に印加する。多重化器は、制御ロジックから提供される該当する選択信号に応答して第1の端子を通じて出力されるビットと第2の端子を通じて出力されるビットを多重化して第1のメトリック計算部に出力する。
好ましくは、メモリーバッファーは、第2のステージの両方向シフトレジスターに対応し、制御ロジックから提供される該当する選択信号に応答して第3の端子を通じて出力されるビットと第4の端子を通じて出力されるビットを多重化して第1のメトリック計算部に出力する多重化器をさらに含む。
好ましくは、各々の選択信号は、入力データビットが各々の両方向シフトレジスターに各々別の時点で印加されるように制御するための信号である。
好ましくは、奇数番目のグループのビットが第1の端子を通じて順次に出力されると同時に、偶数番目のグループのビットが第2の端子を通じて順次に入力及びシフトされる。
好ましくは、第1のステージの両方向シフトレジスターの数は、ウィンドウ数により決定される。
好ましくは、第1の長さ及び第2の長さは、ウィンドウサイズとウィンドウ数により決定される。
好ましくは、第2の長さは、ウィンドウサイズとウィンドウ数の乗算により決定される。
好ましくは、入力データビットは、ターボ復号器のクロック速度で入力される。
本発明は、ターボ復号器と同一な動作周波数の高速メモリーバッファーを使用して受信端のメモリーバッファーからターボ復号器にデータビットを提供する。したがって、受信端のメモリーバッファーの動作周波数を増加させる必要がないので、低電力の消耗が要求される移動通信環境に適切な回路の具現が可能となる利点がある。
以下、本発明の好ましい実施の形態について、添付図面を参照しつつ詳細に説明する。なお、図面中、同一の構成要素及び部分には、可能な限り同一の符号及び番号を共通使用するものとする。下記の説明において、本発明の要旨を不明瞭にすることを避けるために、周知の機能や構成についての詳細な説明は省略する。
図8は、本発明の実施の形態による復号化装置の構成を示す図である。この図は、図2のような復号器がターボ復号器で構成される場合に、そのターボ復号器を構成するSISO復号器とそのSISO復号器の前端に連結されるメモリーバッファーの構造のみを示している。
図8を参照すれば、本発明の実施の形態による復号化装置は、デルタメトリック計算部210と、アルファメトリック計算部220と、ベータメトリック計算部230と、LLR計算部240と、減算部250からなるSISO復号器を含む。本発明の実施の形態による復号化装置は、SISO復号器の前端に、図3に示したように、受信シンボル(データビット)を保存しているメモリーバッファー46−10を具備するだけでなく、メモリーバッファー46−10とSISO復号器との間に接続された高速メモリーバッファー(High Rate Memory Buffer)260をさらに具備することを特徴とする。また、本発明の実施の形態による復号化装置のメモリーバッファー46−10は、従来技術による復号化装置のメモリーバッファー46−1のように{ターボ復号器のクロック×3}の速度で動作するのではなく、ターボ復号器の1クロック速度で動作することを特徴とする(図7及び図11参照)。即ち、本発明の実施の形態による復号化装置は、メモリーバッファー46−10の後端に高速メモリーバッファー260を追加的に具備させて、ターボ復号器の1クロックの間に前記メモリーバッファー46−10の異なる位置に保存されている受信データビットにアクセスして、デルタメトリック計算部210の各計算機211〜213に提供することにより、デルタメトリック計算部210によるデルタメトリック計算動作が前記ターボ復号器の1クロックの間に実行されるようにすることを特徴とする。
かかる本発明の実施の形態による復号化装置は、1xEV−DVのように高速のパケットデータサービスを提供する通信システムに使用する場合にもメモリーバッファーの動作周波数を増加させる必要がないので、低電力消耗の設計が要求される移動通信端末機の具現に適切である。参考までに、従来技術の場合は、図3のように、受信端のメモリーバッファー46−1に連結された逆多重化器205を通じてすぐターボ復号器を連結するので、図6のように、受信端のメモリーバッファー46−1から3回のデータ読み取り過程を実行するようになる。しかし、本発明による復号化装置は、復号器の入力端に逆多重化器の代わりにメモリーバッファー260を追加的に具備させ、一クロックに一回の読み取り過程を通じてSISO復号器の正常な動作が可能に構成したことを特徴とする。即ち、本発明の復号化装置は、3個のデルタメトリックを求めるために一回のメモリー読み取り動作のみを要し、この動作はターボ復号器の動作クロックと同一である。このような動作は、高速メモリーバッファー260が予め受信信号の入力を受けてメモリーに保存しているうちに各デルタメトリック計算機211〜213が希望する入力に合わせるように受信信号を再構成して出力することにより可能である。
以下、従来技術によるSISO復号構成についてはもう上述したので、それについての具体的な説明は省略し、本発明と関連がある高速メモリーバッファー260の構成及びそれによる動作について説明する。
本発明の実施の形態による復号化装置の高速メモリーバッファー260は、後述される図9、図12及び図17に示したように構成できる。図9に示した実施の形態は、高速メモリーバッファー260が一つの単方向シフトレジスター310と、N個のウィンドウ数に各々対応する両方向シフトレジスター321、322、323で構成された例を示す。図12に示した実施の形態は、高速メモリーバッファー260が一つの単方向シフトレジスター410と、2個のウィンドウ数に対応する両方向シフトレジスター421、422で構成された例を示す。図9及び図12は、同一な原理により構成され、ウィンドウ数だけに差がある。図17に示した実施の形態は、高速メモリーバッファー260が一つの両方向シフトレジスター510と、2個のウィンドウ数に対応する両方向シフトレジスター521、522で構成された例を示す。図17は、図9及び図12とは違う原理により構成される。図9及び図12は、メモリーバッファー46−10からのデータビットが、単方向シフトレジスターと両方向シフトレジスターに同時に入力される構造を有する。一方、図17は、メモリーバッファー46−10からのデータビットが両方向シフトレジスター521、522に入力され、第1及び第2の実施の形態の単方向シフトレジスター310、410に対応する両方向シフトレジスター510には両方向シフトレジスター521、522から出力されるデータビットが入力される構造を有する。
以下、第1の実施の形態は図9のような構成を示し、第2の実施の形態は、図12のような構成を示し、第3の実施の形態は、図17のような構成を示す。第3の実施の形態の拡張例についての説明及び構成が図示されていないが、同一な原理による拡張例が第1の実施の形態のように具現可能である。
「第1の実施の形態」
図9は、図8に示した高速メモリーバッファー260の構成の一例を示す図である。
図9を参照すれば、高速メモリーバッファー260は、一つの単方向シフトレジスター310と、N個の両方向シフトレジスター321〜323と、制御ロジック330と、逆多重化器(DEMUX: Demultiplexer)341〜343と、多重化器(MUX: Multiplexer)351〜353から構成される。
単方向シフトレジスター310は、2NWの保存領域(長さ)を有し、データ入力のための入力端子とデータ出力のための出力端子を備える。ここで、Nはウィンドウの数であり、Wはウィンドウのサイズである。ウィンドウのサイズWは、変化が可能である。しかし、ウィンドウのサイズWが変化してもシフトレジスターの比率(例:2W、4W)は変化しない。W=24である場合、αのための単方向シフトレジスター310は、96サイズを有し、β1と、β2のための両方向シフトレジスター321〜323は、48サイズを有する。Wが変更される場合、それによってシフトレジスターの長さが変更され、データ処理のフローも変更される。しかし、Wが変更されてもシフトレジスターの構造は変化しない。前記単方向のシフトレジスター310は予め設定されたクロックであるターボ復号器のクロックによってメモリーバッファー46−10からの入力データビットを前記入力端子を通じて順次に入力して左側(side A)から右側(side B)方向にシフトさせる。第1の長さ(2NW)のデータビット列が形成される場合、前記単方向のシフトレジスター310は、前記形成された第1の長さのデータビット列を出力端子を通じて順次に出力する。この単方向のシフトレジスター310から出力されるデータビットは、アルファメトリック計算部220の前端に接続されたデルタメトリック計算機211に印加される。
両方向のシフトレジスター321〜323は、 各々NWの保存領域を有し、データの入/出力のための第1の端子と第2の端子とを備える。ここで、第1の端子は、シフトレジスター321〜323各々の左側に具備された端子を示し、第2の端子は、シフトレジスター321〜323各々の右側に具備された端子を示し、第1の端子及び第2の端子は、データの入力だけでなく出力も可能である。このようなシフトレジスター321〜323の数はウィンドウの数により決定される。ウィンドウの数がNである場合、両方向のシフトレジスター321〜323の数はNに決定され、ウィンドウの数が2である場合、両方向のシフトレジスター321〜323の数は2に決定される。メモリーバッファー46−10からの入力データビットは、第1の長さの1/2である第2の長さ(NW)のビットからなるグループに分割される。両方向シフトレジスター321〜323は、各々分割されたグループの中で奇数番目のグループのビットを第1の端子を通じて左側(side A)から右側(side B)方向に順次に入力及びシフトさせ、第2の長さのビット列が形成される場合には、入力順序と反対の順序である右側から左側方向に第1の端子を通じて順次に出力する。前記両方向のシフトレジスター321〜323は、各々分割されたグループの中で偶数番目のグループのビットを第2の端子を通じて右側から左側方向に順次に入力及びシフトさせ、第2の長さのビット列が形成される場合には、入力順序と反対の順序である左側から右側方向に第2の端子を通じて順次に出力する。
メモリーバッファー46−10の出力端とシフトレジスター321〜323各々の間には逆多重化器341〜343が具備され、シフトレジスター321〜323とデルタメトリック計算部210との間には多重化器351〜353が具備される。逆多重化器341〜343各々の入力端はメモリーバッファー46−10の出力端に接続され、逆多重化器341〜343各々の第1の出力端子は各シフトレジスター321〜323の第2の端子に接続され、逆多重化器341〜343各々の第2の出力端子は各シフトレジスター321〜323の第1の端子に接続される。多重化器351〜353各々の第1の入力端子は各シフトレジスター321〜323の第2の端子に接続され、多重化器351〜353各々の第2の入力端子は各シフトレジスター321〜323の第1の端子に接続され、多重化器351〜353各々の出力端子はデルタメトリック計算機211〜213に接続される。
制御ロジック(control logic)330は、各シフトレジスター321〜323と、逆多重化器341〜343と、多重化器351〜353の動作を制御するための選択信号select1〜selectNを提供する。この時、選択信号は、各々メモリーバッファー46−10からの入力データビットが、シフトレジスター321〜323各々に、各々別の時点で印加されるように制御するための信号として設定できる。制御ロジック330は、メモリーバッファー46−10からの入力データビットが、分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを判断し、その判断の結果によって、メモリーバッファー46−10からの入力データビットを各シフトレジスター321〜323の第1の端子又は第2の端子に入力させる。
例えば、制御ロジック330は、入力データビットが奇数番目のグループのビットである場合には“0”又は“logic low”レベルの選択信号を出力し、偶数番目のグループのビットである場合には“1”又は“logic high”レベルの選択信号を出力する。“0”レベルの選択信号が出力される場合、各逆多重化器341〜343は、各々メモリーバッファー46−10からの入力データビットを各シフトレジスター321〜323各々の第1の端子に入力させる。これによって、各シフトレジスター321〜323は、第1の端子を通じて入力されるデータビットを順次に左側から右側方向にシフトさせる。それと同時に、各シフトレジスター321〜323は、以前に第2の端子を通じて入力された後に保存されているNW個のデータビットをさらに左側から右側方向に順次にシフトさせて第2の端子を通じて出力させる。
“1”レベルの選択信号が出力される場合、各逆多重化器341〜343は、各々メモリーバッファー46−10からの入力データビットを各シフトレジスター321〜323各々の第2の端子に入力させる。これによって、各シフトレジスター321〜323は、第2の端子を通じて入力されるデータビットを順次に右側から左側方向にシフトさせる。それと同時に、各シフトレジスター321〜323は、以前に第1の端子を通じて入力された後に保存されているNW個のデータビットをさらに右側から左側方向に順次にシフトさせて第1の端子を通じて出力させる。
各シフトレジスター321〜323の第1の端子を通じて出力されるデータビットは、各多重化器351〜353の第2の入力端子に印加され、第2の端子を通じて出力されるデータビットは、各多重化器351〜353の第1の入力端子に印加される。各多重化器351〜353は、第1の入力端子及び第2の入力端子を通じて印加されるデータビットを多重化して該当する各デルタメトリック計算機211〜213に出力する。
上術のように、本発明の実施の形態による復号化装置は、図9のように構成された高速メモリーバッファー260を使用して異なる位置に保存されているデータビットをメモリーバッファー46−10からSISO復号器に入力させる。即ち、高速メモリーバッファー260は、予め順次に入力されたデータビットの順序をシフトレジスター310、321〜323を通じてウィンドウモードのSISO復号器が要求する順に再構成する。
さらに図9を参照すれば、メモリーバッファー46−10からのMビットが2NW又はNWの保存領域を有するシフトレジスター310、321〜323に入力される。ここで、Nはウィンドウの数を示し、Wはウィンドウのサイズを示し、Mはメモリーバッファー46−10からターボ復号器の1クロックの間に入力されるデータビットのビット数を示す。前記メモリーバッファー46−10がQCTCメモリーバッファーである場合、Mはシステム符号(systematic code)とパリティー符号(parity codes)のビット幅(bit width)を全て合わせた値である。即ち、Mビットの信号は、システム符号(systematic code)M/3ビット、第1のパリティー符号(parity1 code)M/3ビット、第2のパリティー符号(parity2 code)M/3ビットを全部合わせて構成される信号である。Mビット信号の入力に対してすべてのシフトレジスター310、321〜323、逆多重化器341〜343、多重化器351〜353は、Mビットの幅を有することで構成される。このMビット信号の出力、即ち、シフトレジスター310、321〜323から出力される値はデルタメトリック計算機211〜213の入力される。各デルタメトリック計算機211〜213は合計がMビットである3個のM/3ビットの信号を入力する。
図10は、図9に示した制御ロジック330による制御動作を示す図である。この図は、具体的には前記制御ロジック330がβメトリックのための両方向シフトレジスター321〜323と、このレジスター321〜323の前端及び後端に接続された逆多重化器341〜343と、多重化器351〜353を制御するフローを示す図である。
図10において、ステップ1011〜ステップ1017の動作は、シフトレジスター321と、逆多重化器341と、多重化器351とを制御する動作の処理フローを示す。ステップ1021〜ステップ1027の動作は、シフトレジスター322と、逆多重化器342と、多重化器352とを制御する動作の処理フローを示す。ステップ1031〜ステップ1037の動作は、シフトレジスター323と、逆多重化器343と、多重化器353とを制御する動作の処理フローを示す。各処理フローは、開始時点と、使用される信号の名称だけが違いその実行される動作においては同一であるので、下記ではステップ1011〜ステップ1017の処理フローについてだけ説明する。このような制御動作のために制御ロジック330の内部には各シフトレジスター321〜323に対応するカウンターが具備される。このカウンターは予め設定されたWだけのオフセット(offset)を有し、各々別の時点で初期化されてカウント動作を実行する。シフトレジスター321に対応するカウンター(counter1)はT=0である時点で初期化され、シフトレジスター322に対応するカウンター(counter2)はT=Wtである時点で初期化され、シフトレジスター323に対応するカウンター(counterN)はT=(N−1)Wtである時点で初期化される。ここで、tは時間、即ち、単位クロックを示す。
図10を参照すれば、ステップ1011で、制御ロジック330はシフトレジスター321を初期化する。この初期化動作する際に、カウンター(counter1)のカウント値はcount1=0に初期化され、選択信号はselect1=0に初期化される。また、シフトレジスター321の左側(side AA)端子が入力端子として設定され、右側(sideB)端子が出力端子として設定される。ステップ1012で、制御ロジック330は、図8のメモリーバッファー46−10にアクセスしてデータビットを読み込む。ステップ1013で、制御ロジック330は、カウント値count1=NWであるか否かを判断することにより、シフトレジスター321がいっぱいになったか否かを判断する。カウント値count1がNWである場合に、制御ロジック330は、ステップ1014で、カウント値count1を0に設定する。カウント値count1がNWではない場合に、制御ロジック330は、ステップ1015階で、カウント値count1を「1」増加させる。ステップ1014を実行した以後に、ステップ1016で、制御ロジック330はselect1信号を反転させる。即ち、select1信号をビット反転して、“1”のselect1信号は“0”のselect1信号に変換し、“0”のselect1信号は“1”のselect1信号に変換する。このステップ1016の動作によりデータビットの入出力方向とシフト方向が変わるようになる。ステップ1016を実行した後、またはステップ1015を実行した後に、ステップ1017段階で、制御ロジック330は前記メモリーバッファー46−10から入力されるデータビットをシフトレジスター321に書き込む。ステップ1017を実行した後、制御ロジック330はステップ1012に戻って動作を反復実行する。
図11は、図9に示した高速メモリーバッファー260によるメモリーバッファーアクセス動作タイミングを示す図である。
図11を参照すれば、メモリーバッファー46−10の異なるアドレスに保存されているデータビットが高速メモリーバッファー260によりアクセスされる。ここでは、高速メモリーバッファー260がメモリーバッファー46−10の3種類のアドレスに保存されているデータビットdata1、data2、data3にアクセスする例を示している。この3種のデータビットdata1、data2、data3が全部ターボ復号器の1クロック内の同一時点で前記高速メモリーバッファー260に入力される場合、デルタメトリック計算部210の各計算機211〜213は同一な時点でデルタメトリックを計算する動作を実行する。データビットdata1(M bit)は、システム符号(systematic code)M/3ビット+第1のパリティー符号(parity1 code)M/3ビット+第2のパリティー符号(parity2 code)M/3ビットを意味し、data2、data3も同一である。
「第2の実施の形態」
図12は、図8に示した高速メモリーバッファー260の他の構成例を示す図である。この図は、ウィンドウの数がN=2である場合、即ち、ベータが2個のウィンドウを有する際の高速メモリーバッファー260の構成を示す図である。
図12を参照すれば、高速メモリーバッファー260は、一つの単方向シフトレジスター410と、N=2個の両方向シフトレジスター421、422と、制御ロジック430と、逆多重化器441、442と、多重化器451、452から構成される。
シフトレジスター410は、2NW=4Wの保存領域(長さ)を有し、データ入力のための入力端子とデータ出力のための出力端子を具備する。シフトレジスター410は、ターボ復号器のクロックによってメモリーバッファー46−10からの入力データビットを入力端子を通じて順次に入力して左側(side A)から右側(side B)方向にシフトさせる。第1の長さ(4W)のデータビット列が形成される場合、シフトレジスター410は、その形成された第1の長さのデータビット列を出力端子を通じて順次に出力する。このシフトレジスター410から出力されるデータビットは、アルファメトリック計算部220の前端に接続されたデルタメトリック計算機211に印加される。
シフトレジスター421、422は、各々NW=2Wの保存領域を有し、データの入/出力のための第1の端子と第2の端子を具備する。ここで、第1の端子は、シフトレジスター421、422各々の左側に具備された端子を示し、第2の端子は、シフトレジスター421、422各々の右側に具備された端子を示し、第1の端子及び第2の端子は、データの入力だけでなく出力も可能である。このようなシフトレジスター421、422の数はウィンドウの数により決定される。ウィンドウの数がN=2である場合、シフトレジスター421、422の数は2に決定された。メモリーバッファー46−10からの入力データビットは、第1の長さの1/2である第2の長さ(2W)のビットからなるグループに分割される。シフトレジスター421、422は、各々分割されたグループの中で奇数番目グループのビットを第1の端子を通じて左側(side A)から右側(side B)方向に順次に入力及びシフトさせ、第2の長さのビット列が形成される場合には、入力順序と反対の順序である右側から左側方向に第1の端子を通じて順次に出力する。シフトレジスター421、422は、各々分割されたグループの中で偶数番目のグループのビットを第2の端子を通じて右側から左側方向に順次に入力してシフトさせ、第2の長さのビット列が形成される場合には、入力順序と反対の順序である左側から右側方向に第2の端子を通じて順次に出力する。
メモリーバッファー46−10の出力端とシフトレジスター421、422各々の間には逆多重化器441、442が具備され、シフトレジスター421、422とデルタメトリック計算部210の間には多重化器451、452が具備される。逆多重化器441、442各々の入力端は前記メモリーバッファー46−10の出力端に接続され、逆多重化器441、442各々の第1の出力端子は各シフトレジスター421、422の第2の端子に接続され、逆多重化器441、442各々の第2の出力端子は各シフトレジスター421、422の第1の端子に接続される。多重化器451、452各々の第1の入力端子は各シフトレジスター421、422の第2の端子に接続され、多重化器451、452各々の第2の入力端子は各シフトレジスター421、422の第1の端子に接続され、多重化器451、452各々の出力端子はデルタメトリック計算機211〜213に接続される。
制御ロジック430は、各シフトレジスター421、422と、逆多重化器441、442と、多重化器451、452の動作を制御するための選択信号selec1、select2を提供する。この時、選択信号は、各々メモリーバッファー46−10からの入力データビットが、シフトレジスター421、422各々に、各々別の時点で印加されるように制御するための信号として設定できる。制御ロジック430は、メモリーバッファー46−10からの入力データビットが分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを判断し、その判断の結果によって、メモリーバッファー46−10からの入力データビットを各シフトレジスター421、422の第1の端子又は第2の端子に入力させる。
例えば、制御ロジック430は、入力データビットが奇数番目のグループのビットである場合には、“0”又は“logic low”レベルの選択信号を出力し、偶数番目のグループのビットである場合には“1”又は“logic high”レベルの選択信号を出力する。“0”レベルの選択信号が出力される場合、各逆多重化器441、442は、メモリーバッファー46−10からの入力データビットを各シフトレジスター421、422各々の第1の端子に入力させる。それによって、各シフトレジスター421、422は、第1の端子を通じて入力されるデータビットを順次に左側から右側方向にシフトさせる。それと同時に、各シフトレジスター421、422は、以前に第2の端子を通じて入力された後に保存されている2W個のデータビットをさらに左側から右側方向に順次にシフトさせて第2の端子を通じて出力させる。
“1”レベルの選択信号が出力される場合、各逆多重化器441、442はメモリーバッファー46−10からの入力データビットを各シフトレジスター421、422各々の第2の端子に入力させる。それによって、各シフトレジスター421、422は、第2の端子を通じて入力されるデータビットを順次に右側から左側方向にシフトさせる。それと同時に、各シフトレジスター421、422は、以前に第1の端子を通じて入力された後に保存されている2W個のデータビットをさらに右側から左側方向に順次にシフトさせて第1の端子を通じて出力させる。
各シフトレジスター421、422の第1の端子を通じて出力されるデータビットは、各多重化器451、452の第2の入力端子に印加され、第2の端子を通じて出力されるデータビットは、各多重化器451、452の第1の入力端子に印加される。各多重化器451、452は、第1の入力端子及び第2の入力端子を通じて印加されるデータビットを多重化して該当する各デルタメトリック計算機211〜213に出力する。
さらに図8を参照すれば、第1のメトリック計算部210の各計算機211〜213は、各シフトレジスター410、421、422からの出力ビットを入力して該当するデルタメトリックを各々計算する。第2のメトリック計算部220は、シフトレジスター410に対応する第1のメトリック計算部210の計算機211からのデルタメトリックを入力してアルファメトリックを計算する。第3のメトリック計算部230は、前記シフトレジスター421、422各々に対応する第1のメトリック計算部210の計算機212、213からのデルタメトリックを入力してベータメトリックを各々計算する。第4のメトリック計算部240の各計算機241〜243はアルファメトリックを入力し、多重化器233によるベータメトリックの多重化結果を入力し、各シフトレジスター410、421、422に対応するLLR値を計算する。減算部250の各減算器251〜253は、各LLR値からシフトレジスター410の出力を減算し、その減算結果をインターリビング/デインターリビングのために出力する。
図13は、図12に示した制御ロジック430による制御動作を示す図である。この図は、具体的には制御ロジック430がβメトリックのための両方向シフトレジスター421、422と、このレジスター421、422の前端及び後端に接続された逆多重化器441、442と、多重化器451、452を制御するフローを示す図である。
図13において、ステップ1111〜ステップ1117の動作は、シフトレジスター421と、逆多重化器441と、多重化器451とを制御する動作の処理フローを示す。ステップ1121〜ステップ1127動作は、シフトレジスター422と、逆多重化器442と、多重化器452とを制御する動作の処理フローを示す。各処理フローは、開始時点と使用される信号の名称だけが違い、その実行される動作においては同一であるので、下記ではステップ1111〜ステップ1117の処理フローについてだけ説明する。このような制御動作のために制御ロジック430の内部には各シフトレジスター421、422に対応するカウンターが具備される。このカウンターは、予め設定されたWだけのオフセット(offset)を有し、各々別の時点で初期化されてカウント動作を実行する。シフトレジスター421に対応するカウンター(counter1)はT=0である時点で初期化され、シフトレジスター422に対応するカウンター(counter2)はT=Wtである時点で初期化される。ここで、tは時間、即ち、単位クロックを示す。
図13を参照すれば、ステップ1111で、制御ロジック430はシフトレジスター421を初期化する。この初期化を動作を実行する際のカウンター(counter1)のカウント値はcount1=0に初期化され、選択信号はselect1=0に初期化される。また、シフトレジスター421の左側(side A)端子が入力端子として設定され、右側(side B)端子が出力端子として設定される。ステップ1112で、制御ロジック430は、図8のメモリーバッファー46−10にアクセスしてデータビットを読み込む。ステップ1113で、制御ロジック430は、カウント値count1=2Wであるか否かを判断することによりシフトレジスター421がいっぱいになったのか否かを判断する。カウント値count1が2Wである場合に、制御ロジック430は、ステップ1114で、カウント値count1を0に設定する。カウント値count1が2Wではない場合に、制御ロジック430は、ステップ1115で、カウント値count1を「1」増加させる。ステップ1114を実行した以後に、ステップ1116で、制御ロジック430はselect1信号を反転させる。即ち、select1信号をビット反転して、“1”のselect1信号は“0”のselect1信号に変換し、“0”のselect1信号は“1”のselect1信号に変換する。このステップ1116の動作によりデータビットの入出力方向とシフト方向が変わるようになる。ステップ1116を実行した後、又はステップ1115を実行した後に、ステップ1117で、制御ロジック430は、メモリーバッファー46−10から入力されるデータビットをシフトレジスター421に書き込む。ステップ1117を実行した以に制御ロジック430は、ステップ1112に戻って上述の動作を反復実行する。
図14は、図12に示したアルファメトリックのためのシフトレジスター410によるデータ処理フローを示す図である。
図14を参照すれば、シフトレジスター410は、図8のメモリーバッファー46−10からのデータビットを左側から右側方向に順次に入力及びシフトさせる。“side A”はデータビットが入力される位置を示し、“side B”はデータビットが出力される位置を示す。シフトレジスター410にデータビットが入力される場合、この入力データビットは4Wだけ遅延された後に出力される。このシフトレジスター410は単純にFIFO(First-In First-Out)構造を有する。
図15は、図12に示したベータメトリックのためのシフトレジスター421についてのデータ処理フローを示す図である。この処理フローはベータメトリックのための他のシフトレジスター422についてのデータ処理フローと同一である。
図15を参照すれば、シフトレジスター421は、メモリーバッファー46−10から順次に読み込んだデータを、ターボ復号器が必要とする時点と合わせるために、予め設定された時間だけ遅延させた後に出力する。シフトレジスター421は、順次に入力されるデータビットを保存する。シフトレジスター421がいっぱいになれば、以前にデータビットが入力された方向と反対方向に保存されているデータビットをシフトさせながら出力して、その出力データビットを該当するデルタメトリック計算機212に提供する。それによって、シフトレジスター421の反対側には、空間が発生するようになる。この空間は、以前にデータビットが入力された方向と反対方向に新しいデータビットが入力されてさらに満たされるようになる。このようにシフトレジスター421の左右に往復しながらデータの入力及び出力の動作が反復され、結果的に、図示したようなデータのフローによってデータビットが出力されて該当するデルタメトリック計算機212に提供される。
図16は、図12に示した高速メモリーバッファー260によるメモリーバッファーアクセス動作タイミングを示す図である。
図16において、“delta block input for alpha”は、図12の単方向シフトレジスター410の入/出力データビットを示し、“side A in”は入力データビットを示し、“side B out”は、出力データビットを示す。“delta block input for beta1”は両方向シフトレジスター421の入/出力データビットを示し、“delta block input for beta2”は両方向シフトレジスター422の入/出力データビットを示す。“delta block input for beta1”及び“delta block input for beta1”において、“side A in”及び“side A out”は第1の端子を通じて入/出力されるデータビットを示し、“side B in”及び“side B out”は第2の端子を通じて入/出力されるデータビットを示す。“select1”及び“select2”は制御ロジック430により生成された後にシフトレジスター421、422各々に提供される制御信号を示す。“αout”、“β1 out”、“β2 out”は、最終出力されるメトリックを示し、このような出力メトリックを用いてLLR値が求められる。
“delta block input for beta1”部分の場合、初期にはside Aを通じてデータビットが入力される。データビットがaから順番にb、c、d、…、hの順序に入力され、初期区間から2Wほど経過した後にside Aからデータビットが出力される。side Aから出力動作が実行されるのと同時に、side Bを通じて入力動作が実行される。これはシフトレジスター421がシフト方向を変えて動作していることを意味する。また2Wほど経過した後にside Aを通じてさらに入力動作が実行されてq番目のデータビットが入力される際に、side Bには p番目のデータビットが出力される。
“delta block input for beta2”部分での動作は、“delta block input for beta1”部分における動作と同一な方式により行われる。ただ、シフトレジスター422が初期化される時点がシフトレジスター421とは違うので、データビットの入/出力が同一な区間で実行されない。
“delta block input for alpha”の場合、side Aではデータビットの入力動作だけが実行され、side Bではデータビットの出力動作だけが実行される。初期区間から4Wが経過した時点で最初に入力されたa番目のデータビットが出力される。
各シフトレジスター410、421、422の出力データビットを、図6に示した出力データビットと比較すれば、同一なフローにより出力されることが分かる。ただ、図16の出力方式は、図6に示した出力方式に比べて2Wだけの初期遅延を発生する。しかし、このような差は高速メモリーバッファー260を初期に動作させる間に発生し、ターボ復号器の復号化が開始される初期にだけ発生するので復号化性能にはあまり影響がない。
「第3の実施の形態」
図17は、図8に示した高速メモリーバッファー260の更に他の構成例を示す図である。
図17を参照すれば、高速メモリーバッファー260は、第1のステージの両方向シフトレジスター521、522と、第2のステージの両方向シフトレジスター510と、制御ロジック530と、逆多重化器541、542と、多重化器551〜553から構成される。
第1のステージの両方向シフトレジスター521、522は、各々NWの保存領域(長さ)を有し、データの入/出力のための第1の端子及び第2の端子を具備する。ここで、Nはウィンドウの数を示し、Wはウィンドウのサイズを示す。シフトレジスターの数はウィンドウの数により決定され、保存領域はウィンドウの数とウィンドウのサイズの乗算により決定される。第1の端子は、各シフトレジスター521、522各々の左側に具備された端子、即ち、side Aの端子を示し、第2の端子は、前記各シフトレジスター521、522各々の右側に具備された端子、即ち、side Bの端子を示す。第1の端子及び第2の端子は、データの入力だけでなく出力も可能である。メモリーバッファー46−10からの入力データビットは、NW長さのビットからなるグループに分割される。シフトレジスター521、522は、各々分割されたグループの中で奇数番目のグループのビットを第1の端子を通じて左側(side A)から右側(side B)方向に順次に入力及びシフトさせ、前記長さのビット列が形成される場合には、この形成されたビット列を入力順序と反対の順序である右側から左側方向にシフトさせて第1の端子を通じて順次に出力する。シフトレジスター521、522は、各々分割されたグループの中で偶数番目のグループのビットを第2の端子を通じて右側(side B)から左側(side A)方向に順次に入力及びシフトさせ、前記長さのビット列が形成される場合は、この形成されたビット列を入力順序と反対の順序である左側から右側方向にシフトさせて第2の端子を通じて順次に出力する。
第2のステージの両方向シフトレジスター510は、NWの保存領域を有し、データの入/出力のための第3の端子及び第4の端子を具備する。シフトレジスター510は、第1の端子を通じて順次に出力されるビットを第3の端子を通じて入力して左側から右側方向に順次にシフトさせる。前記長さのビット列が形成される場合、シフトレジスター510は、入力順序と反対の順序である右側から左側方向に形成されたビット列をシフトさせて第3の端子を通じて順次に出力する。シフトレジスター510は、第2の端子を通じて順次に出力されるビットを第4の端子を通じて入力して右側から左側方向に順次にシフトさせる。長さのビット列が形成される場合、シフトレジスター510は、入力順序と反対の順序である左側から右側方向に形成されたビット列をシフトさせて第4の端子を通じて順次に出力する。
メモリーバッファー46−10の出力端とシフトレジスター521、522各々の間には逆多重化器541、542が具備され、シフトレジスター510、521、522とデルタメトリック計算部210の間には多重化器551〜553が具備される。逆多重化器541、542各々の入力端は前記メモリーバッファー46−10の出力端に接続され、逆多重化器541、542各々の第1の出力端子は各シフトレジスター521、522の第2の端子に接続され、逆多重化器541、542各々の第2の出力端子は各シフトレジスター521、522の第1の端子に接続される。多重化器551〜553各々の第1の入力端子は各シフトレジスター510、521、522の第2の端子に接続され、多重化器551〜553各々の第2の入力端子は各シフトレジスター510、521、522の第1の端子に接続され、多重化器551〜553各々の出力端子はデルタメトリック計算機211〜213に接続される。
制御ロジック530は、各シフトレジスター510、521、522と、逆多重化器541、542と、多重化器551〜553の動作とを制御するための選択信号select1、select2、select3を提供する。この時、選択信号は各々メモリーバッファー46−10からの入力データビットが、シフトレジスター521、522各々に、各々別の時点で印加されるように制御するための信号として設定できる。制御ロジック530は、メモリーバッファー46−10からの入力データビットが分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを判断する。その判断結果によって、制御ロジック530は入力データビットを第1の端子又は第2の端子に印加されるように制御するための選択信号select2、select3をシフトレジスター521、522に各々提供する。
例えば、制御ロジック530は、入力データビットが奇数番目のグループのビットである場合には“0”又は“logic low”レベルの選択信号を出力し、偶数番目のグループのビットである場合には“1”又は“logic high”レベルの選択信号を出力する。“0”レベルの選択信号が出力される場合、各逆多重化器541、542は、各々メモリーバッファー46−10からの入力データビットを各シフトレジスター521、522各々の第1の端子に入力させる。それによって、各シフトレジスター521、522は第1の端子を通じて入力されるデータビットを順次に左側から右側方向にシフトさせる。それと同時に、各シフトレジスター521、522は、以前に第2の端子を通じて入力された後に保存されている2W個のデータビットをさらに左側から右側方向に順次にシフトさせて第2の端子を通じて出力させる。
“1”レベルの選択信号が出力される場合、各逆多重化器541、542各々は、メモリーバッファー46−10からの入力データビットを各シフトレジスター521、522各々の第2の端子に入力させる。それによって、各シフトレジスター521、522は、第2の端子を通じて入力されるデータビットを順次に右側から左側方向にシフトさせる。それと同時に、各シフトレジスター521、522は、以前に第1の端子を通じて入力された後に保存されている2W個のデータビットをさらに右側から左側方向に順次にシフトさせて第1の端子を通じて出力させる。
各シフトレジスター521、522の第1の端子を通じて出力されるデータビットは各多重化器552、553の第2の入力端子に印加され、第2の端子を通じて出力されるデータビットは各多重化器552、553の第1の入力端子に印加される。各多重化器552、553は、第1の入力端子及び第2の入力端子を通じて印加されるデータビットを多重化して該当する各デルタメトリック計算機211〜213に出力する。
また、シフトレジスター521の第1の端子を通じて出力されるデータビットはシフトレジスター510の第1の端子に入力され、第2の端子を通じて出力されるデータビットはシフトレジスター510の第2の端子に入力される。シフトレジスター510の動作は、シフトレジスター521、522の動作と同一である。シフトレジスター510の第1の端子を通じて出力されるデータビットは多重化器551の第2の入力端子に印加され、第2の端子を通じて出力されるデータビットは多重化器551の第1の入力端子に印加される。多重化器551から出力されるデータビットは、アルファメトリック計算部220の前端に接続されたデルタメトリック計算機211に印加される。
上述の実施の形態は、図12に示した高速メモリーバッファー260と構成が異なるだけで動作は同一に実行される。この実施の形態によれば、αメトリックのためのシフトレジスター510が、図9及び図12に示した実施の形態と違い2Wの長さを有する両方向シフトレジスターであり、このシフトレジスター510がメモリーバッファー46−10からのデータビットの提供を受けるのではなく、β1メトリックのためのシフトレジスター521からのデータビットの提供を受けて多重化器551を通じて出力する差異がある。即ち、同一な構造のシフトレジスター510が、さらにβ1メトリックのためのシフトレジスター521の出力を受ける形態を有する。β1メトリックのためのシフトレジスター521が実際入力される信号の逆順に配置される場合、それをさらに逆順に再構成して元々の入力信号の順序に原状復帰させて、αメトリックのためのシフトレジスター510に入力できるようにしたことである。αメトリックのためのシフトレジスター510と、β1メトリックのためのシフトレジスター521がいつも反対方向に動作するように構成する場合、図12に示した方式に比べて2Wほどのシフトレジスターのサイズを減らすことができる。
図18は、図17に示した制御ロジック530による制御動作を示す図である。この図に示された制御動作の処理フローは、図13に示した処理フローと類似している。ただ、αメトリックのためのシフトレジスター510を制御するフローが追加され、各制御フローでは初期化過程を示すステップ1211、ステップ1221及びステップ1231において差異があることが分かる。
図18を参照すれば、αメトリックのためのシフトレジスター510はT=(2W−1)t時点で初期化され、β1メトリックのためのシフトレジスター521はT=0時点で初期化され、β2メトリックのためのシフトレジスター522はT=(W−1)t時点で初期化される。即ち、シフトレジスター510は(2W−1)クロック後に初期化され、シフトレジスター521は0クロックで初期化され、シフトレジスター522は(W−1)クロック後に初期化される。シフトレジスターの全体動作周期が4Wであることを考慮すれば、二つのシフトレジスターは2W周期に反対方向に動作することが分かる。このような初期化過程以外は、図13に示した動作と同一であるので、それについての具体的な説明は省略する。
図19は、図17に示したシフトレジスター510によるデータ処理フローを示す図である。
図19を参照すれば、シフトレジスター510によるデータ処理動作は、図15に示したように、βメトリックのためのシフトレジスターによるデータ処理動作と同一に実行されることが分かる。
図20は、図17に示した高速メモリーバッファー260によるメモリーバッファーアクセス動作タイミングを示す図である。
図20を参照すれば、高速メモリーバッファー260によるメモリーバッファーアクセス動作は、シフトレジスター510の動作においては違うが、結果的に同一なαメトリック及びβ1、β2メトリックを提供することが分かる。
以上、本発明の詳細について具体的な実施の形態に基づき説明してきたが、本発明の範囲を逸脱しない限り、各種の変形が可能なのは明らかである。従って、本発明の範囲は、上記実施の形態に限定されるものではなく、特許請求の範囲の記載及び該記載と均等なものにより定められるべきである。
一般的な移動通信システムの受信機の構成示す図である。 従来技術によるターボ復号化装置の構成を示す図である。 従来技術によるSISO復号器の構成を示す図である。 従来技術によるSISO復号器によるメトリック演算順序を示す図である。 従来技術によるSISO復号器によるメトリック演算順序を示す図である。 従来技術によるSISO復号器によるフレームモード及びウィンドウモードにおける演算順序を示す図である。 従来技術によるSISO復号器によるフレームモード及びウィンドウモードにおける演算順序を示す図である。 図3に示したSISO復号器によるデータビット入力及びメトリック出力の処理フローを示す図である。 図3に示したSISO復号器によるメモリーバッファーアクセス動作タイミングを示す図である。 本発明の実施の形態によるSISO復号器の構成を示す図である。 図8に示した高速メモリーバッファーの構成の一例を示す図である。 図9に示した制御ロジックによる制御動作を示す図である。 図9に示した高速メモリーバッファーによるメモリーバッファーアクセス動作タイミングを示す図である。 図8に示した高速メモリーバッファーの他の構成例を示す図である。 図12に示した制御ロジックによる制御動作を示す図である。 図12に示したαメトリックのためのシフトレジスターによるデータ処理フローを示す図である。 図12に示したβメトリックのためのシフトレジスターについてのデータ処理フローを示す図である。 図12に示した高速メモリーバッファーによるメモリーバッファーアクセス動作タイミングを示す図である。 図8に示した高速メモリーバッファーの更に他の構成例を示す図である。 図17に示した制御ロジックによる制御動作を示す図である。 図17に示したαメトリックのためのシフトレジスターによるデータ処理フローを示す図である。 図17に示した高速メモリーバッファーによるメモリーバッファーアクセス動作タイミングを示す図である。
符号の説明
10 受信信号処理部
20 探索器(searcher)
30,40,50 受信機
42,44,46,48 ブロック
60 HARQ(Hybrid Automatic Request)制御機
70 L1階層(Layer)処理部
46-1 メモリーバッファー
48-1 多重化器(MUX: Multiplexer)
48-2 SISO方式復号器(SISO復号器)
48-3 インターリーバー(interleaver)
48-4 デインターリーバー(deinterleaver)
48-5 出力バッファー(output buffer)
48-6 CRC検査器(Cyclic Redundancy Code checker)
205 逆多重化器(DEMUX: Demultiplexer)
210 デルタメトリック計算部
211〜213 デルタメトリック計算機
220 アルファメトリック計算部
230 ベータメトリック計算部
231,232 ベータメトリック計算機
233 多重化器
240 LLR計算部
241〜243 LLR計算機
250 減算部
251〜253 減算器
46−10 メモリーバッファー
260 高速メモリーバッファー(High Rate Memory Buffer)
310 単方向シフトレジスター
321,322,323 両方向シフトレジスター
330 制御ロジック
341〜343 逆多重化器(DEMUX: Demultiplexer)
351〜353 多重化器(MUX: Multiplexer)
410 単方向シフトレジスター
421,422 両方向シフトレジスター
430 制御ロジック
441,442 逆多重化器
451,452 多重化器
510 両方向シフトレジスター
521,522両方向シフトレジスター
530 制御ロジック
541,542 逆多重化器
551〜553 多重化器



Claims (42)

  1. 順次に入力されるシンボルで構成されたフレームを受信し、Wシンボルのウィンドウサイズを有するNウィンドウモードSISO復号器に前記入力シンボルを提供するためのメモリーバッファーであって、
    入力端子と出力端子及びクロック入力端子を有し、前記入力端子から2NW個の直列シンボルを一方向に順次にシフト保存し、前記出力端子に順に出力する第1のシフトレジスターと、
    N個の第2のシフトレジスターと、を備え、
    N個の各第2のシフトレジスターは、クロック入力端子と、第1及び第2の入力端子と、第1及び第2の出力端子と、選択端子とを含み、前記第2のシフトレジスターは、前記第1のシフトレジスターの入力端子に受信される直列シンボルからWシンボルの間隔で順次に活性化又は初期化され、前記第2のシフトレジスターは、各々活性化後に前記直列シンボルの中で一番目のNW個のシンボルをその第1の入力端子に入力して一方向にシフト保存し、その次に、二番目のNW個のシンボルをその第2の入力端子に入力して前記一方向と逆方向にシフト保存すると同時に前記保存された一番目のNW個のシンボルをその第1の出力端子に直列出力し、その次に、三番目のNW個のシンボルを前記第1の入力端子に入力して前記一方向にシフト保存すると同時に、前記保存された二番目のNW個のシンボルを第1の出力端子に直列出力することを特徴とする前記メモリーバッファー。
  2. 前記Wシンボルは、前記受信されたフレームの一番目のシンボルから順次にW番目までのシンボルを意味することを特徴とする請求項1記載の前記メモリーバッファー。
  3. 前記各シフトレジスターは、前記クロックの遷移により動作することを特徴とする請求項1記載の前記メモリーバッファー。
  4. 前記Nは、2であることを特徴とする請求項1記載の前記メモリーバッファー。
  5. 前記Wウィンドウシンボルは、受信されたフレームを所定個数に区分することにより決定されることを特徴とする請求項1記載の前記メモリーバッファー。
  6. 通信システムのターボ復号化装置であって、
    データ入力のための入力端子と、データ出力のための出力端子と、を備え、入力データビットを前記入力端子を通じて順次に入力及びシフトさせて第1の長さのビット列を形成した後、前記第1の長さのビット列を前記出力端子を通じて順次に出力する単方向シフトレジスターと、
    データの入/出力のための第1の端子及び第2の端子を備え、前記入力データビットが前記第1の長さの1/2である第2の長さのビットからなるグループに分割され、前記分割されたグループの中で奇数番目のグループのビットを前記第1の端子を通じて順次に入力及びシフトさせて前記第2の長さのビット列を形成した後に前記第1の端子を通じて順次に出力し、前記分割されたグループの中で偶数番目のグループのビットを前記第2の端子を通じて順次に入力及びシフトさせて前記第2の長さのビット列を形成した後に前記第2の端子を通じて順次に出力する少なくとも一つ以上の両方向シフトレジスターを含むメモリーバッファーと、
    前記各シフトレジスターからの出力ビットを入力して該当するデルタメトリックを各々計算する第1のメトリック計算部と、
    前記単方向シフトレジスターに対応する前記第1のメトリック計算部からのデルタメトリックを入力してアルファメトリックを計算する第2のメトリック計算部と、
    前記両方向シフトレジスターに各々対応する前記第1のメトリック計算部からのデルタメトリックを入力してベータメトリックを各々計算する第3のメトリック計算部と、
    前記アルファメトリックと、前記ベータメトリックの多重化結果と、を入力して、前記各シフトレジスターに対応するLLR値を計算する第4のメトリック計算部と、
    前記各LLR値から前記単方向シフトレジスターの出力を各々減算し、その減算結果をインターリビング/デインターリビングのために出力する減算部で構成されるSISO復号器と、
    を含むことを特徴とするターボ復号化装置。
  7. 前記メモリーバッファーは、前記入力データビットが前記分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを判断し、その判断結果によって、前記入力データビットが前記第1の端子又は前記第2の端子に印加されるように制御するための選択信号を前記両方向シフトレジスターに各々提供する制御ロジックをさらに含むことを特徴とする請求項6記載のターボ復号化装置。
  8. 前記メモリーバッファーは、前記両方向シフトレジスター各々に対応する逆多重化器と多重化器とをさらに含み、
    前記逆多重化器は、前記入力デービットを入力するための入力端と、前記第1の端子及び前記第2の端子に各々接続される第1の出力端及び第2の出力端を備え、前記制御ロジックから提供される該当する選択信号に応答して前記奇数番目のグループのビットを前記第1の出力端を通じて前記第1の端子に印加し、前記偶数番目のグループのビットを前記第2の出力端を通じて前記第2の端子に印加し、
    前記多重化器は、前記制御ロジックから提供される該当する選択信号に応答して、前記第1の端子を通じて出力されるビット列と前記第2の端子を通じて出力されるビット列とを多重化して前記第1のメトリック計算部に出力することを特徴とする請求項7記載のターボ復号化装置。
  9. 前記各々の選択信号は、前記入力データビットが前記各々の両方向シフトレジスターに各々別の時点で印加されるように制御するための信号であることを特徴とする請求項7記載のターボ復号化装置。
  10. 前記奇数番目のグループのビットが前記第1の端子を通じて順次に出力されると同時に前記偶数番目のグループのビットが前記第2の端子を通じて順次に入力及びシフトされることを特徴とする請求項6記載のターボ復号化装置。
  11. 前記両方向シフトレジスターの数は、ウィンドウ数により決定されることを特徴とする請求項6記載のターボ復号化装置。
  12. 前記第1の長さ及び前記第2の長さは、ウィンドウサイズとウィンドウ数により決定されることを特徴とする請求項6記載のターボ復号化装置。
  13. 前記第2の長さは、前記ウィンドウサイズと前記ウィンドウ数の乗算により決定されることを特徴とする請求項12記載のターボ復号化装置。
  14. 前記入力データビットは、ターボ復号器のクロック速度で入力されることを特徴とする請求項6記載のターボ復号化装置。
  15. 通信システムのターボ復号化装置であって、
    データの入/出力のための第1の端子及び第2の端子を備え、入力データビットが予め設定された長さのビットからなるグループに分割され、前記分割されたグループの中で奇数番目のグループのビットを前記第1の端子を通じて順次に入力及びシフトさせて前記長さのビット列を形成した後に前記第1の端子を通じて順次に出力し、前記分割されたグループの中で偶数番目のグループのビットを前記第2の端子を通じて順次に入力及びシフトさせて前記長さのビット列を形成した後に前記第2の端子を通じて順次に出力する少なくとも一つ以上の第1のステージの両方向シフトレジスターと、
    データの入/出力のための第3の端子及び第4の端子を備え、前記第1の端子を通じて順次に出力されるビットを前記第3の端子を通じて順次に入力及びシフトさせて前記長さのビット列を形成した後に前記第3の端子を通じて順次に出力し、前記第2の端子を通じて順次に出力されるビットを前記第4の端子を通じて順次に入力及びシフトさせて前記長さのビット列を形成した後に前記第4の端子を通じて順次に出力する第2のステージの両方向シフトレジスターを含むメモリーバッファーと、
    前記各シフトレジスターからの出力ビットを入力し、該当するデルタメトリックを各々計算する第1のメトリック計算部と、
    単方向シフトレジスターに対応する前記第1のメトリック計算部からのデルタメトリックを入力してアルファメトリックを計算する第2のメトリック計算部と、
    前記各々の両方向シフトレジスターに対応する前記第1のメトリック計算部からのデルタメトリックを入力してベータメトリックを各々計算する第3のメトリック計算部と、
    前記アルファメトリックと、前記ベータメトリックの多重化結果とを入力し、前記各シフトレジスターに対応するLLR値を計算する第4のメトリック計算部と、
    前記各LLR値から前記単方向シフトレジスターの出力を各々減算し、その減算結果をインターリビング/デインターリビングのために出力する減算部で構成されるSISO復号器と、
    を含むことを特徴とするターボ復号化装置。
  16. 前記メモリーバッファーは、前記入力データビットが前記分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを判断し、その判断結果によって、前記入力データビットが前記第1の端子又は前記第2の端子に印加されるように制御するための選択信号を前記第1のステージの両方向シフトレジスターに各々提供する制御ロジックをさらに含むことを特徴とする請求項15記載のターボ復号化装置。
  17. 前記メモリーバッファーは、前記第1のステージの両方向シフトレジスター各々に対応する逆多重化器と、多重化器とをさらに含み、
    前記逆多重化器は、前記入力データビットを入力するための入力端と、前記第1の端子及び前記第2の端子に各々接続される第1の出力端及び第2の出力端を備え、前記制御ロジックから提供される該当する選択信号に応答して前記奇数番目のグループのビットを前記第1の出力端を通じて前記第1の端子に印加し、前記偶数番目のグループのビットを前記第2の出力端を通じて前記第2の端子に印加し、
    前記多重化器は、前記制御ロジックから提供される該当する選択信号に応答して前記第1の端子を通じて出力されるビットと前記第2の端子を通じて出力されるビットを多重化して前記第1のメトリック計算部に出力することを特徴とする請求項16記載のターボ復号化装置。
  18. 前記メモリーバッファーは、前記第2のステージの両方向シフトレジスターに対応し、前記制御ロジックから提供される該当する選択信号に応答して前記第3の端子を通じて出力されるビットと前記第4の端子を通じて出力されるビットを多重化して前記第1のメトリック計算部に出力する多重化器をさらに含むことを特徴とする請求項16記載のターボ復号化装置。
  19. 前記各々の選択信号は、前記入力データビットが前記各々の両方向シフトレジスターに各々別の時点で印加されるように制御するための信号であることを特徴とする請求項16記載のターボ復号化装置。
  20. 前記奇数番目のグループのビットが前記第1の端子を通じて順次に出力されると同時に、前記偶数番目のグループのビットが前記第2の端子を通じて順次に入力及びシフトされることを特徴とする請求項15記載のターボ復号化装置。
  21. 前記第1のステージの両方向シフトレジスターの数は、ウィンドウ数により決定されることを特徴とする請求項15記載のターボ復号化装置。
  22. 前記入力データビットは、ターボ復号器のクロック速度で入力されることを特徴とする請求項15記載のターボ復号化装置。
  23. 順次に入力されるシンボルで構成されたフレームを受信し、Wシンボルのウィンドウサイズを有するNウィンドウモードSISO復号器に前記入力シンボルを提供するためのメモリーバッファーを提供する方法であって、
    第1のシフトレジスターの入力端子から2NW個の直列シンボルを予め決定された一方向に順次にシフト及び保存する過程と、
    前記シフトされたシンボルを前記第1のシフトレジスターの出力端を通じて順次に出力し、クロック入力端子と、第1及び第2の入力端子と、第1及び第2の出力端子と、選択端子とを含むN個の第2のシフトレジスターを、前記第1のシフトレジスターの入力端で受信された直列シンボルからWシンボルの間隔で順次に活性化又は初期化する過程と、
    前記第2のシフトレジスターの活性化後に前記直列シンボルの中で一番目のNW個のシンボルを受信する過程と、
    前記受信されたシンボルを予め決定された一方向にシフト及び保存し、その次に、各第2のシフトレジスターが二番目のNW個のシンボルをその第2の入力端子に受信する過程と、
    前記受信されたシンボルを予め決定された一方向と逆方向にシフト及び保存すると同時に前記保存された一番目のNW個のシンボルをその第1の出力端子に直列出力し、その次に、各第2のシフトレジスターが三番目のNW個のシンボルを前記第1の入力端子に入力して前記一方向にシフト保存すると同時に前記保存された二番目のNW個のシンボルをその第1の出力端子に直列出力する過程と、
    を含むことを特徴とする前記方法。
  24. 前記Nは、2であることを特徴とする請求項23記載の前記方法。
  25. 前記Wウィンドウシンボルは、受信されたフレームを所定個数に区分したものであることを特徴とする請求項23記載の前記方法。
  26. 通信システムのターボ復号化方法であって、
    データ入力のための入力端子とデータ出力のための出力端子とを有する単方向シフトレジスターが、入力データビットを前記入力端子を通じて順次に入力及びシフトさせて第1の長さのビット列を形成した後に前記第1の長さのビット列を前記出力端子を通じて順次に出力する過程と、
    データの入/出力のための第1の端子及び第2の端子を備え、少なくとも一つ以上の両方向シフトレジスターを含むメモリーバッファーが、前記入力データビットを前記第1の長さの1/2である第2の長さのビットからなるグループに分割し、前記分割されたグループの中で奇数番目のグループのビットを前記第1の端子を通じて順次に入力及びシフトさせて前記第2の長さのビット列を形成した後に前記第1の端子を通じて順次に出力し、前記分割されたグループの中で偶数番目のグループのビットを前記第2の端子を通じて順次に入力及びシフトさせて前記第2の長さのビット列を形成した後に前記第2の端子を通じて順次に出力する過程と、
    第1のメトリック計算部が、前記各シフトレジスターからの出力ビットを受信して該当するデルタメトリックを各々計算する過程と、
    第2のメトリック計算部が、前記単方向シフトレジスターに対応する前記第1のメトリック計算部からのデルタメトリックを受信してアルファメトリックを計算する過程と、
    第3のメトリック計算部が、前記両方向シフトレジスター各々に対応する前記第1のメトリック計算部からのデルタメトリックを入力してベータメトリックを各々計算する過程と、
    第4のメトリック計算部が、前記アルファメトリックと前記ベータメトリックの多重化結果とを入力し、前記各シフトレジスターに対応するLLR値を計算する過程と、
    SISO復号器の減算部が、前記各LLR値から前記単方向シフトレジスターの出力を各々減算し、その減算結果をインターリビング/デインターリビングのために出力する過程と、
    を含むことを特徴とする前記方法。
  27. 前記入力データビットが、前記制御ロジックのためのメモリーバッファーで前記分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを決定する過程と、
    前記決定された結果によって前記入力データビットが前記第1の端子又は前記第2の端子に印加されるように制御するための選択信号を前記第1のステージの両方向シフトレジスター各々に提供する過程とをさらに含むことを特徴とする請求項26記載の前記方法。
  28. 前記メモリーバッファーは、前記各々の両方向シフトレジスターに対応する逆多重化器と、多重化器とをさらに含み、
    前記逆多重化器は、前記入力データビットを入力するための入力端と、前記第1の端子及び前記第2の端子に各々接続される第1の出力端及び第2の出力端とを備え、前記制御ロジックから提供される該当する選択信号に応答して前記奇数番目のグループのビットを前記第1の出力端を通じて前記第1の端子に印加し、前記偶数番目のグループのビットを前記第2の出力端を通じて前記第2の端子に印加する過程と、
    前記多重化器は、前記制御ロジックから提供される該当する選択信号に応答して前記第1の端子を通じて出力されるビット列と前記第2の端子を通じて出力されるビット列とを多重化して前記第1のメトリック計算部に出力する過程とをさらに含むことを特徴とする請求項26記載の前記方法。
  29. 前記各々の選択信号は、前記入力データビットが前記各々の両方向シフトレジスターに各々別の時点で印加されるように制御するための信号であることを特徴とする請求項26記載の前記方法。
  30. 前記奇数番目のグループのビットが前記第1の端子を通じて順次に出力されると同時に前記偶数番目のグループのビットが前記第2の端子を通じて順次に入力及びシフトされることを特徴とする請求項26記載の前記方法。
  31. 前記両方向シフトレジスターの数は、ウィンドウ数により決定されることを特徴とする請求項26記載の前記方法。
  32. 前記第1の長さ及び前記第2の長さは、ウィンドウサイズとウィンドウ数により決定されることを特徴とする請求項26記載の前記方法。
  33. 前記第2の長さは、前記ウィンドウサイズと前記ウィンドウ数の乗算により決定されることを特徴とする請求項32記載の前記方法。
  34. 前記入力データビットは、ターボ復号器のクロック速度で入力されることを特徴とする請求項26記載の前記方法。
  35. 通信システムにおいてターボ復号を提供するための方法であって、
    データの入/出力のための第1の端子及び第2の端子を備え、少なくとも一つ以上の第1のステージの両方向シフトレジスターを通じて入力データビットが予め設定された長さのビットからなるグループに分割され、前記分割されたグループの中で奇数番目のグループのビットを前記第1の端子を通じて順次に入力及びシフトさせて前記長さのビット列を形成した後に前記第1の端子を通じて順次に出力し、前記分割されたグループの中で偶数番目のグループのビットを前記第2の端子を通じて順次に入力及びシフトさせて前記長さのビット列を形成した後に前記第2の端子を通じて順次に出力する過程と、
    データの入/出力のための第3の端子及び第4の端子を備え、第2のステージの両方向シフトレジスターで、前記第1の端子を通じて順次に出力されるビットを前記第3の端子を通じて順次に入力及びシフトさせて前記長さのビット列を形成した後に前記第3の端子を通じて順次に出力し、前記第2の端子を通じて順次に出力されるビットを前記第4の端子を通じて順次に入力及びシフトさせて前記長さのビット列を形成した後に前記第4の端子を通じて順次に出力する過程と、
    第1のメトリック計算部が、前記各シフトレジスターからの出力ビットを入力して該当するデルタメトリックを各々計算する過程と、
    第2のメトリック計算部が、前記単方向シフトレジスターに対応する前記第1のメトリック計算部からのデルタメトリックを入力してアルファメトリックを計算する過程と、
    第3のメトリック計算部が、前記両方向シフトレジスター各々に対応する前記第1のメトリック計算部からのデルタメトリックを入力してベータメトリックを各々計算する過程と、
    第4のメトリック計算部が、前記アルファメトリックと前記ベータメトリックの多重化結果とを入力し、前記各シフトレジスターに対応するLLR値を計算する過程と、
    SISO復号器の減算部が、前記各LLR値から前記単方向シフトレジスターの出力を各々減算し、その減算結果をインターリビング/デインターリビングのために出力する過程と、
    を含むことを特徴とする前記方法。
  36. 前記入力データビットが前記ロジックのために前記分割されたグループの中で奇数番目のグループのビットであるか偶数番目のグループのビットであるかを判断する過程と、
    該の判断の結果によって、前記入力データビットが前記第1の端子又は前記第2の端子に印加されるように制御するための選択信号を前記第1のステージの両方向シフトレジスター各々に提供する過程とをさらに含むことを特徴とする請求項35記載の前記方法。
  37. 前記メモリーバッファーは、前記第1のステージの両方向シフトレジスター各々に対応する逆多重化器と、多重化器とをさらに含み、
    前記逆多重化器は、前記入力データビットを入力するための入力端と、前記第1の端子及び前記第2の端子に各々接続される第1の出力端及び第2の出力端とを備え、前記制御ロジックから提供される該当する選択信号に応答して前記奇数番目のグループのビットを前記第1の出力端を通じて前記第1の端子に印加し、前記偶数番目のグループのビットを前記第2の出力端を通じて前記第2の端子に印加し、
    前記多重化器は、前記制御ロジックから提供される該当する選択信号に応答して、前記第1の端子を通じて出力されるビットと前記第2の端子を通じて出力されるビットを多重化して前記第1のメトリック計算部に出力することを特徴とする請求項36記載の前記方法。
  38. 前記第2のステージの両方向シフトレジスターに対応し、前記制御ロジックから提供される該当する選択信号に応答して前記第3の端子を通じて出力されるビットと前記第4の端子を通じて出力されるビットとを多重化する過程と、
    前記多重化されたビットを前記第1のメトリック計算部に出力する過程とをさらに含むことを特徴とする請求項36記載の前記方法。
  39. 前記各々の選択信号は、前記入力データビットが前記各々の両方向シフトレジスターに各々別の時点で印加されるように制御するための信号であることを特徴とする請求項36記載の前記方法。
  40. 前記奇数番目のグループのビットが前記第1の端子を通じて順次に出力されると同時に、前記偶数番目のグループのビットが前記第2の端子を通じて順次に入力及びシフトされることを特徴とする請求項35記載の前記方法。
  41. 前記第1のステージの両方向シフトレジスターの数は、ウィンドウ数により決定されることを特徴とする請求項35記載の前記方法。
  42. 前記入力データビットは、ターボ復号器のクロック速度で入力されることを特徴とする請求項35記載の前記方法。
JP2004525871A 2002-08-06 2003-08-06 ターボ復号化装置及び方法 Expired - Fee Related JP3954071B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020020046410A KR100703307B1 (ko) 2002-08-06 2002-08-06 터보 복호화 장치 및 방법
PCT/KR2003/001582 WO2004013975A1 (en) 2002-08-06 2003-08-06 Turbo decoding apparatus and method

Publications (2)

Publication Number Publication Date
JP2005535222A JP2005535222A (ja) 2005-11-17
JP3954071B2 true JP3954071B2 (ja) 2007-08-08

Family

ID=30439422

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004525871A Expired - Fee Related JP3954071B2 (ja) 2002-08-06 2003-08-06 ターボ復号化装置及び方法

Country Status (10)

Country Link
US (1) US7584389B2 (ja)
EP (1) EP1388948A3 (ja)
JP (1) JP3954071B2 (ja)
KR (1) KR100703307B1 (ja)
CN (1) CN100361397C (ja)
AU (1) AU2003256099B2 (ja)
BR (1) BR0305713A (ja)
CA (1) CA2460315C (ja)
RU (1) RU2273093C2 (ja)
WO (1) WO2004013975A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8412853B2 (en) 2004-10-25 2013-04-02 Texas Instruments Incorporated Two pin serial bus communication interface
KR100744367B1 (ko) * 2004-05-24 2007-07-30 삼성전자주식회사 가변 윈도우가 적용된 터보 복호화 장치 및 방법
KR100617822B1 (ko) * 2004-07-29 2006-08-28 삼성전자주식회사 터보 복호기를 위한 고속 입력 장치 및 방법
KR100754584B1 (ko) * 2005-07-04 2007-09-05 삼성전자주식회사 모뎀에서 데이터 스케쥴링 장치 및 방법
DE102006026895B3 (de) * 2006-06-09 2007-11-08 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Interleaver-Vorrichtung, Empfänger für ein von der Interleaver-Vorrichtung erzeugtes Signal, Sender zum Erzeugen eines Sendesignals, Verfahren zum Verarbeiten eines Codeworts, Verfahren zum Empfangen eines Signals und Computer-Programm
US8831603B2 (en) * 2006-06-30 2014-09-09 Agere Systems Llc Communications circuit and method with reduced power consumption
KR100902007B1 (ko) * 2007-02-28 2009-06-11 삼성전자주식회사 비디오 스트림 처리 장치
US8332718B2 (en) * 2007-03-29 2012-12-11 Sirius Xm Radio Inc. Efficient implementation to perform iterative decoding with large iteration counts
TWI343190B (en) * 2007-12-21 2011-06-01 Univ Nat Chiao Tung Method and apparatus of multi-stage network for iterative decoding
CN101847447A (zh) * 2009-03-27 2010-09-29 联发科技股份有限公司 存储控制器、存储控制方法及数据存取系统
US20100251069A1 (en) * 2009-03-31 2010-09-30 Qualcomm Incorporated Method and apparatus for efficient memory allocation for turbo decoder input with long turbo codeword
US8543888B2 (en) * 2009-06-09 2013-09-24 Microchip Technology Incorporated Programmable cyclic redundancy check CRC unit
CN102158235B (zh) * 2011-04-26 2016-11-23 中兴通讯股份有限公司 turbo译码的方法及装置
US9128888B2 (en) * 2012-08-30 2015-09-08 Intel Deutschland Gmbh Method and apparatus for turbo decoder memory collision resolution
KR101662025B1 (ko) 2015-04-23 2016-10-05 주식회사 진명 에프 엠 씨 면 정렬장치
US9536563B1 (en) * 2016-02-16 2017-01-03 Seagate Technology Llc Detecting shingled overwrite errors
WO2018045970A1 (en) * 2016-09-06 2018-03-15 Mediatek Inc. Efficient coding switching and modem resource utilization in wireless communication systems
CN109936379B (zh) * 2019-01-24 2021-07-09 南京大学 一种多码率ldpc码的构造方法及其解码装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5933462A (en) * 1996-11-06 1999-08-03 Qualcomm Incorporated Soft decision output decoder for decoding convolutionally encoded codewords
JP4178752B2 (ja) * 1998-05-28 2008-11-12 ソニー株式会社 畳み込み符号の軟出力復号装置及び軟出力復号方法
EP1118159B1 (en) * 1998-09-28 2004-07-07 Comtech Telecommunications Corp. Turbo product code decoder
EP1030457B1 (en) * 1999-02-18 2012-08-08 Imec Methods and system architectures for turbo decoding
JP3246484B2 (ja) * 1999-07-07 2002-01-15 日本電気株式会社 ターボデコーダ
US6980605B2 (en) 2000-01-31 2005-12-27 Alan Gatherer MAP decoding with parallelized sliding window processing
CN1136661C (zh) * 2000-02-10 2004-01-28 摩托罗拉公司 用于卷积码的软输出解码方法及其装置
JP2002084200A (ja) * 2000-09-07 2002-03-22 Matsushita Electric Ind Co Ltd ターボ符号器およびターボ符号器におけるデータ処理方法
JP3849914B2 (ja) * 2000-12-28 2006-11-22 株式会社リコー サブバンド符号化装置、サブバンド復号装置、ウェーブレット変換装置、逆ウェーブレット変換装置、圧縮装置、伸長装置
US6813742B2 (en) * 2001-01-02 2004-11-02 Icomm Technologies, Inc. High speed turbo codes decoder for 3G using pipelined SISO log-map decoders architecture
KR20020066556A (ko) * 2001-02-12 2002-08-19 주식회사 소프트디에스피 터보 코드 복호화 장치 및 방법
US6993704B2 (en) 2001-05-23 2006-01-31 Texas Instruments Incorporated Concurrent memory control for turbo decoders
US6968021B1 (en) * 2001-09-24 2005-11-22 Rockwell Collins Synchronization method and apparatus for modems based on jointly iterative turbo demodulation and decoding
US6718504B1 (en) * 2002-06-05 2004-04-06 Arc International Method and apparatus for implementing a data processor adapted for turbo decoding

Also Published As

Publication number Publication date
CN100361397C (zh) 2008-01-09
US7584389B2 (en) 2009-09-01
EP1388948A2 (en) 2004-02-11
CA2460315A1 (en) 2004-02-12
US20040044945A1 (en) 2004-03-04
AU2003256099A1 (en) 2004-02-23
AU2003256099B2 (en) 2006-10-19
RU2273093C2 (ru) 2006-03-27
BR0305713A (pt) 2004-09-28
KR100703307B1 (ko) 2007-04-03
JP2005535222A (ja) 2005-11-17
WO2004013975A1 (en) 2004-02-12
RU2004110231A (ru) 2005-03-10
CN1568577A (zh) 2005-01-19
EP1388948A3 (en) 2004-03-31
CA2460315C (en) 2008-02-05
KR20040013475A (ko) 2004-02-14

Similar Documents

Publication Publication Date Title
JP3954071B2 (ja) ターボ復号化装置及び方法
US7373582B2 (en) Apparatus and method for turbo decoding using a variable window size
US7549113B2 (en) Turbo decoder, turbo decoding method, and operating program of same
US7530011B2 (en) Turbo decoding method and turbo decoding apparatus
US20050034046A1 (en) Combined interleaver and deinterleaver, and turbo decoder comprising a combined interleaver and deinterleaver
US7246298B2 (en) Unified viterbi/turbo decoder for mobile communication systems
KR20080098391A (ko) 양방향 슬라이딩 윈도우 아키텍처를 갖는 map 디코더
JP2002152057A (ja) トレリス処理装置の適切なパスメトリックアドレスを計算する装置と方法。
US7003041B2 (en) Device and method for decoding turbo codes
CN101217336B (zh) TD-SCDMA/3G硬核turbo译码器
JP2008099145A (ja) ターボ復号装置
KR100762612B1 (ko) 터보 복호화 장치에서 인터리버와 디인터리버간 메모리공유 장치 및 방법
JP2007514347A (ja) Log−map復号用max*演算の線形近似
EP1695444B1 (en) A decoder
KR101066287B1 (ko) 이동통신시스템에서 맵 방식을 이용하여 디코딩을 수행하는 장치 및 방법
KR100617822B1 (ko) 터보 복호기를 위한 고속 입력 장치 및 방법
KR100355452B1 (ko) 엠에이피 방식을 사용한 터보 복호기
AU2006203761B2 (en) Turbo decoding apparatus and method
KR100459414B1 (ko) 터보 복호기의 복호 방법
KR20050065873A (ko) 터보 복호화 장치 및 방법
KR20020066759A (ko) 터보디코더용 맵알고리즘 구현 프로세서 및 맵알고리즘구현방법
KR100988908B1 (ko) 터보 치환기 및 그것을 포함한 터보 복호기
JP2002319869A (ja) 復号装置
JP2007028685A (ja) ターボ復号方法及びターボ復号装置

Legal Events

Date Code Title Description
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: 20070410

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070425

R150 Certificate of patent or registration of utility model

Ref document number: 3954071

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110511

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees