JP3553546B2 - 多段階チャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置 - Google Patents
多段階チャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置 Download PDFInfo
- Publication number
- JP3553546B2 JP3553546B2 JP2001509159A JP2001509159A JP3553546B2 JP 3553546 B2 JP3553546 B2 JP 3553546B2 JP 2001509159 A JP2001509159 A JP 2001509159A JP 2001509159 A JP2001509159 A JP 2001509159A JP 3553546 B2 JP3553546 B2 JP 3553546B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- row
- value
- counter
- output
- 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
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
- H03M13/276—Interleaving address generation
- H03M13/2764—Circuits therefore
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
- H03M13/2703—Coding, 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 using interleaving techniques the interleaver involving at least two directions
- H03M13/271—Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Description
【発明の属する技術分野】
本発明は無線通信システムの多段階チャネルインターリーバ/デインターリーバに関するもので、特に多段階チャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置に関する。
【0002】
【従来の技術】
一般的にチャネルフェーディング(Channel Fading)効果が存在する無線通信システムでは有線、または無線で伝送されるデジタルソースデータの安定的送受信のため、前記フェーディング効果(Fading Effect)を緩和するためのチャネルインターリービング及びデインターリービング処理を行っている。例えば、IMT(International Mobile Telecommunication)2000無線通信システム、即ちUMTS(Universal Mobile Telecommunication System)方式やCDMA(Code Division Multiple Access)2000方式の無線通信システムでは、チャネルのフェーディング効果を緩和するためにチャネルインターリーバ(Interleaver)及びデインターリーバ(deinterleaver)を備えている。
【0003】
現在3GPP(3rd Generation Partnership Project)の基本無線フレーム構造(radio frame structure)は10ms長さのラジオフレームに構成されており、これはさらに16個のタイムスロット(time slot)で構成されている。従って、システムそれぞれの部分に対する標準化傾向も上述したフレーム構造に基づいている。現在2次チャネルインターリーバ(channel interleaver)の研究仮説(working assumption)に決定された固定大きさ多段階インターリーバ(FS−MIL:Fixed Size Multi−state Interleaver:以下、“MILインターリーバ”)は、2次元(2−Dimensional)チャネルインターリーバ(channel interleaver)として、この時、列(column)の数は32に固定されている。前記MILインターリーバは16タイムスロット(time slot)で構成されたフレーム構造を支援する形態に設計されたもので、タイムスロットごとに2個の列に該当するデータが伝送されるようにする。このような1次インターリーバと2次インターリーバはすべて列の数が2の累乗の形態を支援するハードウェア(hardware)構造を有するので、一つのハードウェアモジュール(hardware module)を使用して1次チャネルインターリーバと、2次チャネルインターリーバを同時に支援するように具現することができる。従って、ハードウェアの複雑性(hardware complexity)は非常に低減される。
【0004】
一方、IMT2000システムの北米方式であるCDMA2000とヨーロッパ方式であるUMTSの調和化(harmonization)が進行中である。しかし、前記CDMA2000システムはフレーム当たり16タイムスロットのフレーム構造(radio frame structure)を使用し、前記UMTSはフレーム当たり15タイムスロットのフレーム構造を使用するとの根本的な差がある。そのため、フレーム当たり16タイムスロットを基準に設計された既存のCDMA2000システム用チャネルインターリーバをUMTS用チャネルインターリーバにそのまま使用することは難しく、前記UMTS用チャネルインターリーバを具現するためには、フレーム当たり15タイムスロットを基準に設計されるべきであることを考慮すべきである。
【0005】
図1は一般的な2次元チャネルインターリーバで遂行される基本的なMILチャネルインターリービング技法を示している。10msの入力シーケンスは図1のような方式にインターリービングされる。図1で入力シーケンスの長さがL≦F×Bである時、入力シーケンスはF×Bの大きさの2次元メモリ(2−Dimension Memory)に貯蔵される。ここでFはインターリーバの列の数であり、Bはインターリーバの行の数である。また前記BはFが固定されている時、L≦F×Bを満足する最小整数である。この時、データは任意の時間にインターリーバの一つの行に順次的に貯蔵される。言い換えれば、データは2番目の行に貯蔵される前に一番目の行に貯蔵され、前記一番目の行を満たす形態に貯蔵される。順次、貯蔵された入力シーケンスは一例に下記<表1>のような列間置換パターン(Inter−column permutation pattern)の手順により該当列の各行に該当するデータとして順次、出力される。下記<表1>は列の数Fが32である時の置換パターン(Permutation pattern)である。
【表1】
図2は従来技術によるMILチャネルインターリーバのためのアドレス生成装置の構成を示す図である。このようなアドレス生成装置は列の数が2の累乗である32の場合に該当する装置である。下記では前記アドレス生成装置がチャネルインターリーバのために使用されるものとして説明されるが、当該分野の通常の知識を有する者であれば、チャネルデインターリーバのためにも同様に使用できるのは公知の事実である。
【0006】
前記図2を参照すると、アドレス生成装置は2次元チャネルインターリーバに使用するためのアドレスを発生させるための構成要素である行カウンター210、列カウンター230、マッピング器240、5ビットシフター220、加算器250に構成される。前記行カウンター210と前記列カウンター230はそれぞれインターリービングのためのメモリ(図示せず)の行と列をカウントするためのものである。このようなメモリには上述したように入力データが行と列の順に順次、貯蔵される。前記マッピング器240は前記列カウンター230によりカウントされた列を置換された列としてマッピングするためのものである。例えば、前記マッピング器240は前記<表1>に示されたような列間置換パターンによって前記列カウンター230によりカウントされた列を置換された列として出力する。ビットシフター220は前記行カウンター210によりカウントされた値をビットシフトさせて出力する。加算器250は新たなアドレスを構成する。前記加算器250は前記ビットシフター220の出力を前記新たなアドレスの最上位ビット(MSB:Most Significant Bits)として使用し、前記マッピング器240の出力を前記新たなアドレスの最下位ビット(LSB:Least Significant Bits)として使用することにより、前記新たなアドレスを構成する。このようなアドレスは行と列の順に順次、前記メモリに貯蔵されたデータを2次元インターリービングされたデータとして出力するためのアドレスである。
【0007】
一方、従来技術によるMILチャネルインターリーバのためのアドレス生成装置は、ビットシフター220を含む。このようなビットシフター220は列の数が2の累乗である32の場合、5ビットシフターに具現されるものである。
【0008】
上述したように、列の数が2の累乗形態である32の場合、行カウンター210からのアドレスを得るために、5ビットのビットシフター220によりビットシフト動作(bit shift operation)が遂行された。この時、前記ビットシフター220のハードウェア複雑度(H/W complexity)は非常に低い。
【0009】
しかし、上述したようにフレーム当たりのタイムスロット(time slot)の数が16から15に変わるようになると、列の数も変わるようになり、新たな列の数は2の累乗ではない確率が高くなる。例えば、タイムスロット当たりの列の数が2であり、総列の数が30であると仮定する時、各列の数に該当する30個の乗算器が必要であり、乗算器のハードウェアの大きさは2次MILインターリーバのインターリービングのためのハードウェアの大きさを2倍以上増加させるようになる。このようにMILインターリーバの列の数が2の累乗ではない場合、列の数が1、2、4、8である1次MILインターリーバのようにビットシフト動作を使用できないので、列の数に該当するだけの乗算器が必要になり、このような場合、インターリーバ全体のハードウェア複雑度が約2倍に増加するようになる。
【0010】
【発明が解決しようとする課題】
従って、本発明の目的は、ハードウェアの複雑度を低減するMILインターリーバを具現するアドレス生成装置を提供することにある。
【0011】
本発明の他の目的は、MILインターリーバの列の数が2の累乗ではない場合にも、インターリーバのハードウェア的な複雑度の増加なしにインターリービング動作を遂行するためのアドレス生成装置を提供することにある。
【0012】
本発明のさらに他の目的は、単一モジュールを使用して1次及び2次MILチャネルインターリーバのためのアドレスを生成する装置を提供することにある。
【0013】
【課題を解決するための手段】
このような目的を達成するための本発明は、B個の行とF個の列を有するインターリーバメモリからデータを読み出すアドレス生成装置を提案する。ここで前記メモリからのデータは下記のような予め設定された列置換規則に応じて任意の時間に一つの列がインターリービングされる。前記インターリーバメモリで行の数Fは2の累乗ではない。即ち、前記行の数Fは正の整数kに対して2kではない数(F≠2k)である。行カウンターはB個のクロックパルスに応答し、連続的な各クロックパルスに対して0から(B−1)×FまでF単位に増加するオフセット値を出力し、前記B個のクロックパルスの完了時、キャリー信号を発生する。列カウンターは前記キャリー信号に応答して1ずつ増加するカウント値を出力する。マッピング器は前記列カウンターから出力される信号列を置換して出力する。加算器は前記マッピング器から出力される前記置換された信号列と、前記行カウンターから出力される信号を加算し、アドレスを発生する。
【0014】
【発明の実施の形態】
以下、本発明の望ましい実施形態を添付図を参照しつつ詳細に説明する。下記の発明において、本発明の要旨のみを明瞭にする目的で、関連した公知の機能又は構成に関する具体的な説明は省略する。
【0015】
図3は本発明による2次MILチャネルインターリーバのためのアドレス生成装置の構成を示している。この図3は任意の列の数(F)に該当すると仮定した場合である。
【0016】
前記図3を参照すると、本発明の実施形態によるアドレス生成装置は、加算器320と行カウンター330で構成される行アドレス生成器310と、列カウンター350とマッピング器(mapping)360で構成される列アドレス生成器340、及び前記アドレス生成器310、340からそれぞれ生成される行アドレスと列アドレスを加算して実際のインターリービングアドレスを発生させる加算器370で構成される。前記加算器370は前記行カウンター330の出力を前記インターリービングアドレスの最上位ビット(MSB:Most Significant Bits)として使用し、前記マッピング器360の出力を前記インターリービングアドレスの最下位ビット(LSB:Least Significant Bits)として使用することにより、前記インターリービングアドレスを構成する。
【0017】
前記図3に示されたように、前記アドレス生成装置は2次MILインターリーバの行アドレスを生成する過程で、乗算をせずに、加算器320を使用してオフセット(Offset)を有する行アドレスを発生させることにより、低いハードウェア複雑度(complexity)を有しながら、同一のインターリービング機能が具現されるようにしたものである。
【0018】
先ず、図3を参照して2次MILチャネルインターリーバの動作を説明すると、次のようになる。
【0019】
前記図3に示されたように、行アドレス生成器310は行カウンター330と加算器320で構成される。前記行カウンター330は基本的に0からB−1までをカウントする。ここでBは行の数である。前記行カウンター330での初期のカウント値が0である時、前記行カウンター330は0のカウント値を出力する。前記行カウンター330が出力するとすぐに、行カウンター330のカウントはクロックパルスに応答して一つ増加する。この時、前記行カウンター330からの出力は加算器370及び加算器320に印加される。前記加算器320は前記行カウンター330の出力とオフセット値“C”を加算し、加算された値を前記行カウンター330に印加する。本発明の望ましい実施形態では前記オフセット値C=30である。前記行カウンター330は前記加算器320の出力を受信し、受信した値を自分の出力として出力する。即ち、前記加算器320の出力は行カウンター330を通過するようになる。行カウンター330が新たな値を出力するとすぐに、前記行カウンター330のカウント値は1増加する。上述したような過程は、行カウンター330でのカウント値がB−1になるまで反復される。そのため、行カウンター330の出力はクロックサイクルごとに“C”増加する。行カウンター330のカウント値がB−1に到達した場合、前記行カウンター330はC×(B−1)値と同一の値を出力する。これは、加算器320はC×(B−2)とCを加算し、C×(B−1)の値を前記行カウンター330に印加するためである。前記行カウンター330がC×(B−1)の値を出力するとすぐ、行カウンター330のカウント値は1増加せずに、0にリセットされる。この時、前記行カウンター330は列カウンター350にキャリー信号を出力する。前記行カウンター330でのカウント値が0にリセットされた後に、前記行カウンター330は0の値を出力し、上述したような動作を反復する。
【0020】
列カウンター350は前記リセット(またはキャリー)信号が発生するごとに、0から29まで1ずつカウント値を増加させる。例えば、前記列カウンター350は最初は0を出力し、前記行カウンター330からキャリー信号が最初に発生する場合には1を発生し、次のキャリー信号が発生する場合には2を発生する。
【0021】
マッピング器360は列置換(column permutation)のために、(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29)に該当する列カウンター350の出力を(0,15,1,16,2,17,3,18,4,19,5,20,6,21,7,22,8,23,9,24,10,25,11,26,12,27,13,28,14,29)の値にマッピング(Mapping)して出力する。インターリーバの列の数が32である場合、列置換は下記<表2>に基づいて遂行される。しかし、インターリーバの列の数が30である場合、列置換方式はインターリーバの列が2kである場合と異なることができる。そのため、マッピング(Mapping)器360のマッピング(mapping)手順は置換方式により変更できる。前記インターリービングアドレスは前記行カウンター330の出力を前記インターリービングアドレスのMSBとして使用し、前記マッピング器360の出力を前記インターリービングアドレスのLSBとして使用することにより発生される。
【表2】
前記アドレス生成装置の動作を説明すると、下記のようになる。ここでは説明を簡単にするため、列カウンター350によるカウント出力値がマッピング器360に列置換処理なしで出力されるものと仮定する。
【0022】
一例として、行の数B=5であり、列の数F=30と仮定すると、行アドレス生成器310は各クロックパルスに応答して0から4(B−1=5−1)まで30のオフセットを有する値である0、30、60、90、120を順次、出力する。この時、列アドレス生成器340の列カウンター350はカウント値として“0”を出力するので、加算器370はインターリービングのためのアドレスとして0、30、60、90、120を順次、出力する。120まで出力された場合、前記行アドレス生成器310の行カウンター330はキャリー信号を発生する。そして、行アドレス生成器310は行カウンター330がBの値をカウントする時、行カウンター330を0にリセットさせるためのリセット信号を生成する。前記キャリー信号に応答して、列アドレス生成器350はカウント値を1増加させ1を出力し、行アドレス生成器310はさらに各クロックパルスに応答して0から4(B−1)まで30のオフセットを有する値である0、30、60、90、120を順次、出力する。これによって加算器370は前記行アドレス生成器310の出力値と列アドレス生成器340の出力値を加算してインターリービングのためのアドレスとして16(0+16)、46(30+16)、76(60+16)、106(90+16)、136(120+16)を順次、出力する。その後もこのような動作が反復され、加算器370はインターリービングのためのアドレスとして8(0+8)、38(30+8)、68(60+8)、98(90+8)、128(120+8)を順次、出力する。このような動作は、最終的に加算器370がインターリービングのためのアドレスとして31(0+31)、61(30+31)、91(60+31)、121(90+31)、151(120+31)を順次、出力するまで遂行される。
【0023】
図4は本発明の他の実施形態によるMILチャネルインターリーバのためのアドレス生成装置の構成を示している。この図4は2次インターリーバの構造を1次インターリーバとの単一モジュールとすることを具現するためのものである。
【0024】
図4を参照すると、前記MILチャネルインターリーバが1次インターリーバに動作する場合、マルチプレクサ(選択器)410、430は0を選択し、2次インターリーバに動作する場合、マルチプレクサ(選択器)410、430は1を選択することにより、図3に示されたように動作するようにする。行カウンター330、列カウンター350、マッピング器360を1次インターリーバと2次インターリーバが共有することにより、ハードウェア的な複雑度を最小化したものである。
【0025】
本発明の他の実施形態によるアドレス生成装置は、第1選択器410を含む。前記第1選択器410は第1オフセット値1と第2オフセット値30を第1入力端子0及び第2入力端子1にそれぞれ受信し、第1、または第2インターリーバ選択信号(図4の1st、2nd)によって選択的に出力する。加算器320は前記第1選択器410を通じて選択的に提供されるオフセット値と行カウンター330の出力値を加算して出力する。行カウンター330は第1選択器410の出力と行カウンター330の出力を加算する加算器320により加算されたアドレスを出力する。
【0026】
前記カウンティング動作がB個のクロックパルスに応答して0から(B−1)回遂行された場合、前記行カウンター330はキャリー信号を発生して列カウンター350に印加し、前記行カウンター330は0にリセットされる。前記行カウンター330の出力はシフター420を通じて第2選択器430の一つの入力端子0と、前記第2選択器430の他の入力端子1に印加される。また前記行カウンター330の出力は加算器320にも印加される。前記シフター420は列の数がそれぞれ1、2、4、8のように2の累乗である場合、それぞれ0ビット、1ビット、2ビット、3ビットのシフターとして構成される。前記第2選択器430は第1入力端子0及び第2入力端子1にそれぞれ入力される値を第1、または第2インターリーバ選択信号(1st、2nd)によって選択し、行アドレスとして出力する。
【0027】
列カウンター350は前記キャリー(リセット)信号が発生するごとに、0から29まで1ずつカウント値を増加させる。マッピング器360は前記列カウンター350から出力されるカウント結果値を列置換パターン(column permutation/randomizing pattern)によってマッピングして出力する。加算器370は第2選択器430とマッピング器360によりそれぞれ生成される行アドレスと列アドレスを加算して、インターリービングのためのアドレスとして発生させる。このように発生されたアドレスはインターリーバメモリ内に行と列の順に貯蔵されたデータをインターリービングされたデータとして出力するために使用される。
【0028】
前記図4を参照して、1次/2次MIL兼用チャネルインターリーバのためのアドレス生成装置の動作を説明すると、次のようである。ここで、第1選択信号は1次インターリービング動作を選択するためMUX410及びMUX430に使用される信号であり、第2選択信号は2次インターリービング動作を選択するためMUX410及びMUX430に使用される信号である。
【0029】
図4のMILチャネルインターリーバの1次インターリービング時、機能ブロックは、マルチプレクサ(Multiplexer)410、430の0の経路(Path)を選択し、この時、インターリービング動作は図2に示された既存のインターリービング動作と同一である。この時、列置換(column permutation)は上述した<表1>のように遂行される。シフター(shifter)420のシフティングビットの大きさ(shifting bit size)もインターリーバの列の数(F)に従う。例えば、列の数がそれぞれ1、2、4、8のように2の累乗である場合、シフター420はそれぞれ0ビット、1ビット、2ビット、3ビットのシフターを含む。
【0030】
前記MILチャネルインターリーバの2次インターリービング時、機能ブロックの該当動作は次のようになる。2次インターリービング動作時、マルチプレクサ410、430は1の経路が選択され、行カウンター330は2次MILチャネルインターリーバの列の数が30である時、行の数であるB個のクロックパルスそれぞれに応答して30のオフセット(offset)を有し、0からB−1までのカウント動作及びその結果によって前記行カウンター330のフィードバック値とオフセット値が加算された値を示す信号を行アドレスとして発生させる動作を遂行する。(B−1)番目クロックに対するカウント動作が遂行された時、前記行カウンター330は前記キャリー及びリセット信号を発生する。
【0031】
列カウンター350は前記キャリー(リセット)信号が発生するごとに、0から29まで1ずつカウント値を増加させる。列置換のために、マッピング器360は、(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30)に該当する列カウンター350の出力を(0,15,1,16,2,7,3,18,4,19,5,20,6,21,7,22,8,23,9,24,10,25,11,26,12,27,13,28,14,29)の値にマッピングして出力する。ここでインターリーバの列の数が32である場合、列置換は前記<表2>に基づいて遂行される。しかし、インターリーバの列の数が30である場合、列置換方式はインターリーバの列が数2kである場合と異なることができる。そのため、マッピング器360のマッピング手順は置換方式により変形できる。行カウンター330と列カウンター350によりそれぞれ生成される行アドレスと列アドレスは、加算器370により加算されることにより、実際のインターリービングアドレスとして発生される。
【0032】
図5は本発明のさらに他の実施形態によるMILインターリービング動作のためのアドレス生成装置の構成を示す図である。ここで、第1選択信号は1次インターリービング動作を選択するためMUX410及びMUX430に使用される信号であり、第2選択信号は2次インターリービング動作を選択するためMUX410及びMUX430に使用される信号である。モード0は行アドレス計算後、該当列のオフセットを加算してMUX460にインターリービングが遂行されるようにする選択信号である。モード1は該当列のアドレスに行アドレスを初期化してインターリービングが遂行されるようにする選択信号である。前記モード0、1の信号はマルチプレクサ(選択器)440、450及び460に提供される。
【0033】
本発明のさらに他の実施形態によるアドレス生成装置は、図4に示されたアドレス生成装置の構成に追加して、選択器440、450、460を含む。前記選択器440、450は行カウンター330と加算器320の間に接続され、選択器460はマッピング器360と加算器370の間に接続される。前記選択器440、460はモード制御信号(モード0、1)により制御され、前記選択器450は行カウンター330から発生されるキャリー信号により制御される。
【0034】
先ず、モード制御信号モード0が受信される場合のアドレス生成装置の動作を説明する。
【0035】
前記モード0信号に応答して、選択器440は行カウンター330の出力が加算器320に印加されるように接続し、選択器460はマッピング器360の出力が加算器370に印加されるように接続する。行カウンター330がオフセット値1と行カウンター300の以前の出力値の加算値を順次、出力する動作を遂行する場合に、選択器450は入力端子0が選択器440の入力端子1に接続されるようにし、前記行カウンター330がキャリー信号を発生する場合には、入力端子1が選択器440の入力端子1に接続されるようにする。しかし、前記選択器450の選択的な信号出力動作にもかかわらず、選択器440は常に入力端子0が出力端子に連結されている状態である。そのため、このような接続による構成は図4に示された構成と同様に、行アドレスを生成した後、前記発生された行アドレスと該当列のアドレスを加算して、インターリービングのためのアドレスを生成する動作を遂行する。
【0036】
次に、モード制御信号モード1が受信される場合のアドレス生成装置の動作を説明する。ここで、説明を簡単にするため行の数B=5であり、列の数F=30であり、マッピング器360は省略されたと仮定する。
【0037】
前記モード1信号に応答して、選択器440は選択器450の出力が加算器320に印加されるように接続し、選択器460は0が加算器370に印加されるように接続する。行カウンター330が行カウンター330の以前の出力値とオフセット値30の加算値を順次、出力する動作を遂行する場合に、選択器450は入力端子0が選択器440の入力端子1に接続されるようにし、キャリー信号を発生する場合には、入力端子1が選択器440の入力端子1に接続されるようにする。そのため、このような接続の構成下で行カウンター330は各クロックパルスに応答して0から4(B−1=5−1)まで30のオフセットを有する値である0、30、60、90、120の値を順次、出力する。このような状態で行カウンター330はキャリー信号を発生し、前記キャリー信号に応答して選択器450は入力端子1が選択器440の入力端子1に接続されるようにする。これによって列カウンター350は次のカウント値である1を出力し、この出力値1は選択器450及び選択器440を通じて加算器320に印加される。すると、加算器320の一つの入力端子には1が印加され、行カウンター330は前記印加された1の値に応答して1、31、61、91、121の値を順次、出力する。その後、前記行カウンター330は上述したような動作の反復遂行により2、32、62、92、122の値を順次、出力する。そのため、このような接続の構成は該当列のアドレスに行アドレスを初期化して、インターリービングのためのアドレスを生成する。即ち、列のアドレスと行のアドレスを先ず加算してインターリービングのためのアドレスを生成し、前記生成されたインターリービングのためのアドレスを選択器430及び加算器370を通じて出力する。
【表3】
前記<表3>を参照すると、2次MILチャネルインターリーバの列の数が2の累乗ではない場合、従来技術によるアドレス生成装置は列の数が1、2、4、8である1次MILインターリーバのようにビットシフト動作を使用できないので、列の数に該当する乗算器が必要であり、これによってハードウェア全体の複雑度(Total:511)が本発明によるアドレス生成装置に比べて2倍ほど複雑になることが分かる。換言すれば、本発明によるアドレス生成装置はハードウェア全体の複雑度(Total:330)が従来技術の場合に比べて1/2になることが分かる。
【0038】
【発明の効果】
上述したように本発明は、2次MILチャネルインターリーバの行アドレスを求める過程で乗算器を使用せずに、加算器を使用してオフセットを有する行アドレスを発生させることにより、低いハードウェア複雑度を有し、同一のインターリービング機能を具現することができるという利点がある。また本発明は乗算器代わりに加算器を使用することにより、1次インターリーバと、2次インターリーバの具現のためハードウェアを共有することができ、システム全体の複雑度を最小化するチャネルインターリーバを具現するという利点がある。
【0039】
以上、本発明の実施形態を添付図面を参照して説明したが、本発明はこの特定の実施形態に限られるものではなく、各種の変形及び修正が本発明の範囲を逸脱しない限り、該当分野における通常の知識を持つ者により可能なのは明らかである。
【図面の簡単な説明】
【図1】基本的なインターリービング技法を示す図である。
【図2】従来技術による多段階(MIL)チャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置の構成を示す図である。
【図3】本発明の一実施形態によるMILチャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置の構成を示す図である。
【図4】本発明の他の実施形態によるMILチャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置の構成を示す図である。
【図5】本発明のさらに他の実施形態によるMILチャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置の構成を示す図である。
【符号の説明】
210、330 行カウンター
220 5ビットシフター
230、350 列カウンター
240 マッピング器
250、320、370 加算器
310 行アドレス生成器
340 列アドレス生成器
360 マッピング(mapping)器
410、430、440、450、460 マルチプレクサ(選択器)
420 シフター
Claims (8)
- インターリーバメモリ内におけるB個の行と2k(kは正の整数)ではないF個の列に貯蔵されたデータを読み出すためのアドレスを生成するアドレス生成装置において、
B個のクロックパルスに応答し、行カウンターがB−1回カウントする時、キャリー信号を出力し、一番目の行アドレスが出力される時、0の値を出力し、オフセット値Fと行カウンターの以前の出力値を加算した値を出力し、前記B個のクロックパルスの完了時、キャリー信号を発生する行カウンターと、
前記キャリー信号に応答して1ずつ増加するカウント値を増加させるための列カウンターと、
予め設定された列置換規則に応じて前記列カウンターからの出力を置換するためのマッピング器と、
前記行カウンターの出力を読み出しアドレスの最上位ビット(MSB)として使用し、前記マッピング器の出力を読み出しアドレスの最下位ビット(LSB)として使用することにより、読み出しアドレスを発生する加算器と、を含むことを特徴とするアドレス生成装置。 - インターリーバメモリ内におけるB個の行と2k(kは正の整数)ではないF個の列に貯蔵されたデータをインターリービングするためのアドレスを生成するアドレス生成装置において、
B個のクロックパルスそれぞれに応答してB個の行アドレスを生成し、前記B個の行アドレスは0の値と、前記列の数Fを1から(B−1)回順次的に出力することにより決定される値を含み、前記B個の行アドレスが生成される時、キャリー信号を発生する行アドレス生成器と、
前記キャリー信号に応答して1ずつ増加するカウント値を出力し、前記カウント値を予め設定された置換規則に応じて置換して列アドレスを生成する列アドレス生成器と、
前記行アドレスと前記列アドレスをそれぞれ加算し、前記アドレスを発生する加算器と、を含み、
前記列アドレス生成器は、
前記キャリー信号に応答して1ずつ増加するカウント値を出力する列カウンターと、
前記列カウンターから出力されるカウント値を前記置換規則に応じて置換し、前記列アドレスを出力するマッピング器と、を含むことを特徴とするアドレス生成装置。 - 前記行アドレス生成器は、
前記B個のクロックパルス中の一番目のパルスに応答して前記0の値を出力し、残りの(B−1)個のクロックパルスそれぞれに応答して入力値を受信し、前記加算値を前記行アドレスとして出力する行カウンターと、
前記行カウンターの出力と前記列の数Fをオフセット値として受信し、前記行カウンターの出力と前記オフセット値を加算して、前記加算値を残りの(B−1)個のクロックパルスそれぞれの行カウンターに印加する加算器と、を含むことを特徴とする請求項2に記載のアドレス生成装置。 - データを行と列に貯蔵しているインターリーバメモリを含む1次インターリーバ、または2次インターリーバに使用するためのアドレスを生成するためのアドレス生成装置において、
前記1次インターリーバに対応する第1オフセット値と前記2次インターリーバに対応する第2オフセット値をインターリーバ選択信号に応じて選択的に出力する第1選択器と、
B個のクロックパルスそれぞれに応答してB個の行アドレスを生成し、前記B個の行アドレスは0の値と、前記選択された第1オフセット値、または第2オフセット値と前記行アドレスの以前の出力を1から(B−1)回順次、加算することにより決定される値を含み、前記B個の行アドレスが生成される時、キャリー信号を発生する行アドレス生成器と、
前記キャリー信号に応答して1ずつ増加するカウント値を出力し、前記カウント値を予め設定された置換パターンに応じて置換して列アドレスとして生成する列アドレス生成器と、
前記行アドレスを列の数Fに対応して決定されるビット数だけシフトさせ出力するシフターと、
前記シフターの出力と前記行アドレスを前記インターリーバ選択信号に応じて選択的に出力する第2選択器と、
前記第2選択器の出力アドレスと前記列アドレスをそれぞれ加算し、前記アドレスを発生する加算器と、を含むことを特徴とするアドレス生成装置。 - 前記行アドレス生成器は、
前記B個のクロックパルス中の一番目のパルスに応答して前記0の値を出力し、残りの(B−1)個のクロックパルスそれぞれに応答して前記オフセット値中の一つと前記行カウンターの以前の出力値を加算することにより決定される値を受信して、行アドレスとして出力する行カウンターと、
前記行カウンターの以前の出力値と、前記第1オフセット値及び前記第2オフセット値中のいずれか一つの選択されたオフセット値を受信し、前記行カウンターの出力と前記選択されたオフセット値を加算し、前記加算値を残りの(B−1)クロックパルスそれぞれの行カウンターに印加する加算器と、を含むことを特徴とする請求項4に記載のアドレス生成装置。 - 前記列アドレス生成器は、
前記キャリー信号に応答して1ずつ増加するカウント値を出力する列カウンターと、
前記列カウンターから出力されるカウント値を前記置換規則に応じて置換し、前記列アドレスを出力するマッピング器と、を含むことを特徴とする請求項4に記載のアドレス生成装置。 - 前記第1オフセット値は1であることを特徴とする請求項4に記載のアドレス生成装置。
- 前記第2オフセット値は列の数であることを特徴とする請求項4に記載のアドレス生成装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR19990029198 | 1999-07-13 | ||
KR1999/29198 | 1999-07-13 | ||
PCT/KR2000/000759 WO2001005040A1 (en) | 1999-07-13 | 2000-07-13 | Address generating device for use in multi-stage channel interleaver/deinterleaver |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003504933A JP2003504933A (ja) | 2003-02-04 |
JP3553546B2 true JP3553546B2 (ja) | 2004-08-11 |
Family
ID=19602810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001509159A Expired - Fee Related JP3553546B2 (ja) | 1999-07-13 | 2000-07-13 | 多段階チャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6363026B1 (ja) |
EP (1) | EP1203452B1 (ja) |
JP (1) | JP3553546B2 (ja) |
CN (1) | CN1165112C (ja) |
DE (1) | DE60040295D1 (ja) |
WO (1) | WO2001005040A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100301680B1 (ko) * | 1999-06-28 | 2001-09-22 | 주식회사 동진쎄미켐 | 네가티브 화학증폭 레지스트용 스트리퍼 조성물 |
US20020114197A1 (en) * | 2000-05-22 | 2002-08-22 | Masataka Fukui | Address converter, interleaver and de-interleaver |
KR100430567B1 (ko) * | 2000-10-11 | 2004-05-10 | 한국전자통신연구원 | 주소발생기를 포함한 인터리빙/디인터리빙 수행 장치 및그 방법과 그를 이용한 채널 부호화 시스템 |
FR2848686B1 (fr) * | 2002-12-17 | 2005-04-15 | St Microelectronics Sa | Generateur d'adresses programmable |
KR100518295B1 (ko) * | 2003-03-14 | 2005-10-04 | 삼성전자주식회사 | 디지털 통신 시스템의 디인터리빙장치 및 그의디인터리빙방법 |
US20050180332A1 (en) * | 2004-02-13 | 2005-08-18 | Broadcom Corporation | Low latency interleaving and deinterleaving |
KR20070080921A (ko) * | 2006-02-09 | 2007-08-14 | 삼성전자주식회사 | 통신시스템에서 인터리빙 장치 및 방법 |
US20070277064A1 (en) * | 2006-05-02 | 2007-11-29 | Mediatek Inc. | Reconfigurable convolutional interleaver/deinterleaver using minimum amount of memory and an address generator |
EP2067258A2 (en) * | 2006-09-12 | 2009-06-10 | Nxp B.V. | Deinterleaver for a multi-stage interleaving scheme with processing of bit pairs |
US7865796B2 (en) * | 2006-09-25 | 2011-01-04 | Broadcom Corporation | Method and system for memory partitioning |
CN100498863C (zh) * | 2006-11-24 | 2009-06-10 | 苏州市华芯微电子有限公司 | 一种可变长度编码的方法及其电路 |
CN100435947C (zh) * | 2006-12-20 | 2008-11-26 | 中国日用化学工业研究院 | 脂肪腈加氢制脂肪伯胺的催化剂及制法和应用 |
JP4976543B2 (ja) * | 2007-04-27 | 2012-07-18 | エルジー エレクトロニクス インコーポレイティド | 移動通信システムにおいて下り制御チャネルを伝送する方法並びにブロックインターリーバを用いて制御チャネルを物理リソースにマッピングする方法 |
US8174067B2 (en) * | 2008-12-08 | 2012-05-08 | Fairchild Semiconductor Corporation | Trench-based power semiconductor devices with increased breakdown voltage characteristics |
EP2579469B1 (en) * | 2011-10-05 | 2014-08-13 | ST-Ericsson SA | Accumulating data values |
US9118316B2 (en) | 2012-03-26 | 2015-08-25 | Semtech Corporation | Low voltage multi-stage interleaver systems, apparatus and methods |
KR20140082173A (ko) * | 2012-12-24 | 2014-07-02 | 에스케이하이닉스 주식회사 | 어드레스 카운팅 회로 및 이를 이용한 반도체 장치 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2827978B2 (ja) * | 1995-08-21 | 1998-11-25 | 日本電気株式会社 | インターリーブ装置 |
KR19980025564U (ko) * | 1996-11-05 | 1998-08-05 | 김영귀 | 자동차용 타이밍벨트의 신장경고장치 |
US6178114B1 (en) * | 1999-01-12 | 2001-01-23 | Macronix International Co., Ltd. | Sensing apparatus and method for fetching multi-level cell data |
-
2000
- 2000-07-13 CN CNB008099170A patent/CN1165112C/zh not_active Expired - Fee Related
- 2000-07-13 JP JP2001509159A patent/JP3553546B2/ja not_active Expired - Fee Related
- 2000-07-13 DE DE60040295T patent/DE60040295D1/de not_active Expired - Lifetime
- 2000-07-13 WO PCT/KR2000/000759 patent/WO2001005040A1/en active Application Filing
- 2000-07-13 US US09/615,415 patent/US6363026B1/en not_active Expired - Fee Related
- 2000-07-13 EP EP00942514A patent/EP1203452B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CN1359560A (zh) | 2002-07-17 |
WO2001005040A1 (en) | 2001-01-18 |
JP2003504933A (ja) | 2003-02-04 |
US6363026B1 (en) | 2002-03-26 |
EP1203452A1 (en) | 2002-05-08 |
EP1203452A4 (en) | 2005-05-11 |
DE60040295D1 (de) | 2008-10-30 |
CN1165112C (zh) | 2004-09-01 |
EP1203452B1 (en) | 2008-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3553546B2 (ja) | 多段階チャネルインターリーバ/デインターリーバに使用するためのアドレス生成装置 | |
US5745497A (en) | Convolutional interleaving/DE-interleaving method and apparatus for data transmission | |
US7127004B1 (en) | Interleaver and method for interleaving an input data bit sequence using a coded storing of symbol and additional information | |
RU2604992C2 (ru) | Устройство, содержащее кольцевой буфер и способ для присвоения вариантов избыточности кольцевому буферу | |
KR100898467B1 (ko) | 데이터를 병렬로 인코딩하기 위한 방법 및 장치 | |
EP0681373B1 (en) | Convolutional interleaver with reduced memory requirements and address generator therefor | |
JP3415693B2 (ja) | インターリーブプロセス | |
JP4355031B2 (ja) | 一般的なターボコードトレリスの終端方法およびシステム | |
US6625234B1 (en) | Efficient implementations of proposed turbo code interleavers for third generation code division multiple access | |
US6954885B2 (en) | Method and apparatus for coding bits of data in parallel | |
US6064664A (en) | Base-band interleaver for code division multiple access mobile telecommunication system | |
AU758085B2 (en) | Interleaving apparatus and method for use in serial concatenated convolutional code encoder in a mobile communication system | |
US7954016B2 (en) | Efficient multi-symbol deinterleaver | |
JP2010093832A (ja) | ターボ符号化のためのブロック・インターリーブ | |
CN1319300C (zh) | 码分多址通信***中的数据发送设备和方法 | |
EP1089440A1 (en) | Interleaver and method for interleaving a data bit sequence | |
KR100338635B1 (ko) | 다단계 채널 인터리버/디인터리버에 사용하기 위한어드레스 생성 장치 및 방법 | |
US7760114B2 (en) | System and a method for generating an interleaved output during a decoding of a data block | |
JP3242750B2 (ja) | 信号変換装置および通信システム | |
US7586993B2 (en) | Interleaver memory selectably receiving PN or counter chain read address | |
KR100350683B1 (ko) | 데이터 디인터리버 및 어드레스 발생방법 | |
KR100601624B1 (ko) | 인터리버빙과 디인터리빙 장치 및 방법 | |
GB2294616A (en) | Data interleaving process for radio transmission | |
JPH1188199A (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: 20040406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040428 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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: 20090514 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100514 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110514 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120514 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 9 |
|
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 |