JP3943329B2 - レートマッチング/デマッチング処理装置 - Google Patents
レートマッチング/デマッチング処理装置 Download PDFInfo
- Publication number
- JP3943329B2 JP3943329B2 JP2000399076A JP2000399076A JP3943329B2 JP 3943329 B2 JP3943329 B2 JP 3943329B2 JP 2000399076 A JP2000399076 A JP 2000399076A JP 2000399076 A JP2000399076 A JP 2000399076A JP 3943329 B2 JP3943329 B2 JP 3943329B2
- Authority
- JP
- Japan
- Prior art keywords
- err
- data
- bit
- rate matching
- divided
- 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)
- Communication Control (AREA)
Description
【発明の属する技術分野】
本発明は、W−CDMA基地局や端末などの無線通信装置内におけるデータ送受信時の符号化処理の一部であり、データ長を伸長することによりデータ転送レートを調節するレートマッチング/デマッチング処理に関する。
【0002】
【従来の技術】
図9は、レートマッチング処理アルゴリズムを示す図である。
レートマッチング処理は、データの指定されたビットを削除してデータ長を短くするパンクチャ(Puncture)処理、及び指定されたビットの直後にそのビットをコピー・挿入する事によりデータ長を長くするレピテション(Repetition)処理の2つの処理がある。どのビットを削除、コピーするかは図9のアルゴリズムにより決定される。
【0003】
ここで、Lはレートマッチング処理を行うデータの入力長、errinitはレートマッチング処理を行う先頭ビットまでのオフセット、errplus、errminusはレートマッチング入出力データ長より決定されるerr更新値である。errplus、errminusは入出力データ長より求めることができ、その算出方法は、W−CDMA標準仕様に基づく。
【0004】
以下にパンクチャ処理の具体例を示す。
30ビットのデータがあるとする。このデータをerrinit=1、errplus=60、errminus=12の条件でパンクチャして24ビットにする場合を考える。レートマッチングアルゴリズムより、1、6、11、16、21、26ビット目の計6ビットがパンクチャされる。
【0005】
図10は、パンクチャした結果を示す図である。
err算出値は入力データに対して、各ビットのerrminusを引く直前のerrの値である。
【0006】
次に、レピテションの具体例を示す。
26ビットのデータをerrinit=1、errplus=52、errminus=8の条件でレピテションして、30ビットにする。レートマッチングアルゴリズムより、1、7、14、20ビット目の計4ビットがレピテションされる。
【0007】
図11は、レピテションの結果を示す図である。
err算出値は入力データに対して、各ビットのerrminusを引く直前のerrの値である。
【0008】
このような処理機能を実現する最も単純な手法は、以下に述べるようなものである。
図12は、従来のレートマッチング処理の機能ブロック図を示す図である。
【0009】
レートマッチングを行うデータの入出力長より、パラメータ演算ユニットで、errplus、errminus、errinit等を求める。レートマッチング処理実行ビット番号m=1、err初期値をerrinitとする。
【0010】
レートマッチング処理マクロは、データが1ビット入力されるごとに、レピテション/パンクチャビット検出ユニットでレートマッチングアルゴリズムを実行し、errの値を更新する(err=err−errminus)。errの値が負になったときに、パンクチャ(データ破棄)またはレピテション(データ複数回送信)を実行するようにレピテション/パンクチャ実行ユニットへ通知する。
【0011】
errの値が0より大きい場合は、レピテション/パンクチャ実行ユニットはデータをそのまま素通りさせる。パンクチャまたはレピテションが行われた際には、ビット検出ユニットではerrを更に更新する(err=err+errplus)。
【0012】
以上のような処理を入力ビットlength inだけ行うことにより、レートマッチング処理を実行する。
なお、図12のレートマッチング処理の機能ブロックに入力されるデータ入出力長は以下のようにして得られる。
【0013】
すなわち、送信処理においては、レートマッチング入力長は符号器に入力されたデータ長より算出する。出力長は、指定された複数のデータ長の中から最適なものが選択される。すなわち、データは、最初トランスポートブロックとして構成され、次に、誤り訂正符号(CRC)が付加され、そして、トランスポートブロックが結合され、符号器に入力される。この時の長さがデータ入力長である。そして、データには、典型的には、ターボ符号化、あるいは、畳み込み符号化などの符号化が行われる。得られた符号化データは、第1回目のインタリーブ処理を受け、レートマッチングされ、次に、2回目のインタリーブ処理を受けて、変調器に送られる。
【0014】
【発明が解決しようとする課題】
W−CDMAシステムでは、高速なデータ転送が特徴となっており、現在は伝送レート384kbpsの実装を主眼に開発しているが、将来的には最大データ伝送レート2Mbpsを実現する予定である。処理するデータ量は5倍以上になり、データ量に比例して処理量は増加する。しかし、レートマッチング処理のための規定時間は一定であるため、伝送レート2Mbpsを実現するにはデータ処理性能を現在の5倍以上にしなければならない。
【0015】
本発明の課題は、簡単な構成で高速にレートマッチング及びレートデマッチングを行うことが出来るレートマッチング/デマッチング処理装置を提供することである。
【0016】
【課題を解決するための手段】
本発明のレートマッチング/デマッチング装置は、送受信するデータの符号化の際のデータ長の伸長を行うレートマッチング/デマッチング装置であって、レートマッチングのための基本パラメータと、レートマッチング/デマッチングするデータの分割位置に関するパラメータ及び分割データの各ビットのパラメータ値を算出するパラメータ算出手段と、前記パラメータ算出手段が算出したパラメータに基づいて、各分割データにおいて削除・挿入されるべきビット位置を算出するビット位置算出手段と、ビットの削除・挿入を行うビット削除・挿入手段とを備えることを特徴とする。
【0017】
従来シリアルにデータをレートマッチング/デマッチングしていたところ、本発明によれば、データを分割し、分割されたそれぞれのデータブロックに対して、挿入・削除すべきビットを決定可能としたので、レートマッチング/デマッチング処理を分割データ毎に並列に処理することを可能とし、簡易で、高速なレートマッチング/デマッチング処理を実現することが出来る。
【0018】
【発明の実施の形態】
図1は、W−CDMA CH−CODEC部の概要図である。
まず、送信側では、上位アプリケーションから転送されたデータは、チャネルコーデック送信部10に入力される。このデータに、CRC付加部において、CRCビットを付加した後に、データの種類により、畳み込み符号器、またはターボ符号器に入力されて符号化する。
【0019】
符号化されたデータには、1stインタリーブ部において、第1回目のインタリーブ処理が行われ、その後レートマッチング部にてデータの伸縮操作が行われる。その後、レートマッチング後のデータに2ndインタリーブ部において、第2回目のインタリーブ処理が施されてMOD部12へ転送される。
【0020】
MOD部12では、QPSK拡散及びQPSK変調が行われ、送信部13でRF信号に変換され、アンテナ15から送信される。
また、受信側では、アンテナ16で受信された信号は、受信部14において、RF信号からベースバンド信号に変換され、DEM部11に入力される。DEM部11では、逆拡散、RAKE合成などを行い、処理後のデータをチャネルコーデック受信部9に入力する。
【0021】
チャネルコーデック受信部9では、2ndデインタリーブ部において、送信側で行った第2回目のインタリーブを元に戻すデインタリーブを行う。次に、1stデインタリーブ部において、送信側の第1回目のインタリーブを元に戻すデインタリーブを行う。そして、レートデマッチング部において、デインタリーブされたデータのレートデマッチングを行い、送信側での符号化種別により、ターボ復号器、あるいは、ビタビ復号器にデータを入力して、復号する。復号されたデータは、CRCチェック部に入力され、誤り検出が行われた後、上位アプリケーションに渡される。
【0022】
本発明の実施形態は、送信側のレートマッチング部及び受信側のレートデマッチングとその周辺の機能に適用される。
図2は、図1の送信レートマッチング部に本発明の実施形態を用いた場合のハードウェア構成例である。
【0023】
図2において、CPUあるいは、DSPに設けられるレートマッチング基本パラメータ算出部20は、本発明の実施形態のレートマッチング処理を行うデータの入出力長より、処理に必要なパラメータerrinit、errplus、errminusを算出するユニットである。
【0024】
データ分割位置・分割パラメータ算出部21では、レートマッチングデータの分割数、入出力分割データ長、及び、入力分割データ先頭ビットのerr値を基本パラメータ算出部20で算出したerrinit、errplus、errminus、および、入出力データ長より算出する。すなわち、本発明の実施形態においては、レートマッチングすべきデータを分割して、分割されたそれぞれのデータを並列にレートマッチングすることにより処理速度を速くするものである。
【0025】
パラメータ算出後、1stインタリーブ回路22にレートマッチング入力分割データ長、データ分割数を通知する。これをもとに、1stインタリーブ回路22でデータの出力先をどのバッファにするかを調節し、データの分割を行う。
【0026】
また、2ndインタリーブ回路23には、レートマッチング出力データ長、データ分割数を通知する。これをもとに2ndインタリーブ回路23でデータの結合を行う。
【0027】
レートマッチング回路24へは、更に入力分割データ先頭ビットのerr値を通知する。これを基にビット挿入・削除の位置検出及び挿入・削除処理を行う。
以上の処理は1stインタリーブ回路22がデータ出力を始めるまでに決定しておく。また、これらの処理はCPUやDSPなどのソフトウェア処理で行う。
【0028】
1stインタリーブ回路22が全ての分割データをバッファに格納したら、レートマッチング回路24でデータの挿入・削除を行う。
図3は、本発明の第1の実施形態の機能ブロック図を示す図である。
【0029】
本実施形態では、処理データを複数に分割して、各分割データを並列処理することにより、処理速度の向上を実現する。
はじめに、処理するデータを(できるだけ長さが均等になるように)複数個に分割する。しかし、レートマッチング処理を行うには、分割したデータの先頭ビットについてパラメータerrの値を決定しなければならない。この値を決定しないとレートマッチングアルゴリズムを実行することが出来ない。
【0030】
kビット目のerrの値はerrinitからk−1回だけerrminusを引いて、負になった回数だけerrplusを加えている。そこで、kビット目までにひかれた値errminus×(k−1)に何回errplusを加えれば正の値になるかを調べれば良い。したがって、以下の計算式を用いることにより、パラメータerrのkビット目の値を計算することができる。
errk=errinit−[{errminus×(k−1)}%errplus]
ただし、もし、(errk≦0)ならば、errk=errk+errplus(k≧2)・・・・・(式1)
なお、ここで「%」は、割ったあまりを演算することを意味する。
【0031】
上記の(式1)より、従来の方法では、処理の直前まで分からなかったkビット目のerrの値errkを算出することができ、この値を分割データのerrinitとして適用する。
【0032】
kの値はパラメータ算出ユニット30で決定する。また、各分割データの検出ビット番号m(パンクチャあるいはレピテションを行うビットの番号)の初期値は、分割データの先頭のビット番号kとしておく。
【0033】
各分割データの先頭ビットについてerrinit=errkとして、errinit値が算出できたら、レピテション/パンクチャ実行ユニット#1〜#nにおいて、各分割データを同時に処理する。errの値更新演算は各分割データ毎に行わなければならない。
【0034】
図10の30ビット→24ビットのパンクチャ処理を行う場合を例にとって本実施形態を説明する。
また、本実施形態の機能をハードウェアで実現する場合、1ビットのデータを処理するのに1クロック必要であるとする。
【0035】
従来の手法では、先頭ビットから順次処理していくので、30ビットのデータを処理するのに30クロックの供給が必要である。
このデータを10ビット毎のデータに3分割する。各分割データの先頭ビットのerr値を算出すると、(式1)より以下のようになる。
errinit1=err1=1
errinit2=err11=errinit−[{errminus×(k−1)}%errplus]=1−[(12×(11−1)%60]=1−[120%60]=1−0=1
errinit3=err21=errinit−[{errminus×(k−1)%errpl us]=1−[{(12×(21−1)%60]=1−[240%60]=1−0=1
この結果は、図10下段のerr算出値よりも確認できる。各分割データのerr値をそれぞれerr1、err2、err3と表す。
【0036】
各分割データに、それぞれパンクチャ処理を行う。それぞれの分割処理ユニットに共通のクロックを供給すると、各レピテション/パンクチャ実行ユニット#1〜#3(ここでは、n=3)が処理するデータは10ビットなので、10クロックの供給を行えば処理を完了できる。
【0037】
1クロック目で処理されるデータは、(1、11、21)ビット目のデータである。このとき、err1、err2、err3の値はいずれも負の値になるので、1、11、21ビット目はパンクチャされる。
【0038】
2クロック目で処理されるデータは、(2、12、22)ビット目であり、このときのerr値、err1、err2、err3の値はいずれも正の値なので、パンクチャされずに出力される。
【0039】
このように処理を行うと、6クロック目で1クロック目と同様に、err1、err2、err3の値が負になり、6、16、26ビット目がパンクチャされ、10クロック目で10、20、30ビット目を処理して全ての処理を終了する。
【0040】
従って、3分割した場合、従来の1/3の時間でパンクチャ処理を行える。
図11のレピテション処理も、本実施形態では同様に、8、9、9ビットの3つに分割する。従来の手法では、先頭ビットから順次処理していくので26ビットのデータを処理するのに26クロックの供給が必要である。
【0041】
各分割データの先頭ビットのerr値を算出すると以下のようになる。
errinit1=err1=1
errinit9=err9=errinit−[{errminus×(k−1)}%errplus]=1−[{8×(9−1)%52]=1−[64%52]=1ー12=−11
err9=−11+52=41
errinit3=err18=errinit−[{errminus×(k−1)}%errplus]=1−[(8×(18−1)%52]=1−[136%52]=1−32=−31
err18=−31+52=21
この結果は、図11下段のerr算出値よりも確認できる。
【0042】
そして、各分割データにレピテション処理を行う。各分割データのerr値をそれぞれerr1、err2、err3と表す。それぞれの分割処理ユニットに共通のクロックを供給すると、各ユニットが処理するデータは多くて9ビットなので、9クロックの供給を行えば処理を完了出来る。
【0043】
1クロック目で処理されるデータは(1、9、18)ビット目であり、err1の値が負になる。そのため、1ビット目がレピテションされる。
2クロック目で処理されるデータは(2、10、19)ビット目である。このときのerr1、err2、err3の値はいずれも正なので、レピテションは行われない。
【0044】
3クロック目では、(3、11、20)ビット目が処理される。このとき、err3の値が負になるため20ビット目がレピテションされる。
同様に、6クロック目で(6、14、23)ビット目を処理し、err1、err2の値が負になるため、6ビット目及び14ビット目がレピテションされる。
【0045】
8クロック目で(8、16、25)ビット目を処理し、errの値は正なのでレピテションはされない。この段階で、先頭分割データ(1〜8ビット)は処理を終了する。
【0046】
9クロック目で(なし、17、26)ビット目を処理し、errの値が正なので、レピテションをしないで全体の処理を終了する。
従って、本実施形態に従えば、従来に比べほぼ1/3の時間で処理できる。
【0047】
図4は、図2のDSP及び図3のパラメータ演算ユニット30の行う処理を説明するフローチャートである。
まず、ステップS1において、上位アプリケーションより送信データのデータ長を取得する。そして、ステップS2において、レートマッチング基本パラメータを算出する。すなわち、errinit、errplus、errminusを算出する。ここで、これらレートマッチング基本パラメータの算出方法は、既存のものであるので、説明を省略する。
【0048】
そして、ステップS3において、レートマッチング分割入力データ長を算出する。ここで、分割数は、レートマッチング処理を行うデータ単位で固定(m)とし、分割入力データ長(Din k:k=1〜m)を算出する。そして、ステップS4において、レートマッチング分割出力データ長を算出する。ステップS5においては、分割データの先頭ビットerr値を算出する。この演算は、前記(式1)によって行う。そして、各分割データの先頭ビットのerr値をerrinitとする。そして、ステップS6において、各レピテション/パンクチャ実行ユニットへ分割パラメータを通知する。すなわち、レートマッチング回路に入出力分割データ長、errinit等の各種パラメータを通知すると共に、1stインタリーブ回路へ分割出力データ長及び分割数を、2ndインタリーブ回路へ分割入力データ長及び分割数を通知する。そして、レートマッチング回路においては、各レピテション/パンクチャ実行ユニットが各分割データに対し、並列にレートマッチング処理を施す。
【0049】
図5は、第1の実施形態のレートマッチング回路の具体的構成例を示した図である。
今の場合、データはn分割されるものとしている。n分割された分割データは、それぞれ、クロックCLKに従って駆動するデータロードユニットに与えられる。データロードユニットは、データを受け取ると、これをデータ転送ユニットに渡す。各データ転送ユニットには、挿入・削除ビット検出回路#1〜#nが設けられており、データ転送ユニットに入力されたビットが削除あるいは挿入すべきビットであるか否かを判断する。すなわち、パンクチャのとき、データ転送ユニットに入力されたビットが削除対象であると判断された場合には、データ転送ユニットに、そのビットを破棄して、次のビットを読み込むように指示する。また、レピテションの時は、データ転送ユニットに入力されたビットが挿入対象であると判断された場合には、データ転送ユニットに、そのビットを2クロック続けて送出するように指示する。
【0050】
図6は、本発明の第2の実施形態を説明する概要ブロック図である。
本実施形態においては、処理データを複数に分割して、各分割データを同期させて並列処理する事により、処理速度の向上を実現する。
【0051】
はじめに、処理するデータを複数個に分割する。ただし、分割データの先頭ビットkについてerrkが1ビット目のerrinitと等しくなるビットを選択する。
【0052】
レートマッチングアルゴリズムは、「errからビット毎にerrminusを引いていきerrの値を更新し、errが0以下の値になったらerrplusを加える」という周期的な操作を繰り返しているため、errの値がerrinitと等しくなるビットが存在する。(式1)より以下の条件が成り立つkが、errの値がerrinitと等しくなるビット番号となる。
errinit=errinit−[{errminus×(k−1)%errplus](k≧2)・・・(式2)
すなわち、errplusとerrminusの公倍数となる値Gが求まる時である。
G=errminus×k=errplus×p(k≧2)(式3)
上記(式3)のパラメータk、pは、1〜kビットまでにp回のパンクチャまたはレピテションが行われるという周期性を表す。Gが最小公倍数の時に、最短の周期性が検出できる。
【0053】
kの値は、パラメータ演算ユニット35で算出する。
errminusとerrplusの最小公倍数を求め、(式3)よりkの値が検出できたら、1〜kビットが1つの周期になっていることになる。従って、k+1〜2kビット、2k+1〜3kビット・・・は、1〜kビットと同じパターンでレートマッチング処理を行うことができる。
【0054】
レピテション/パンクチャビット検出ユニットにおいて、分割位置が決定したら、レピテション/パンクチャ実行ユニット#1〜#nにおいて、各分割データを同期させて並列に処理する。全ての分割データにおいてerrinitが同じなので、分割データに対してerrの値は共通である。
【0055】
図10の30ビット→24ビットのパンクチャ処理を行うとする。
ハードウェアで処理する場合、1ビットのデータを処理するのに1クロック必要であるとする。
【0056】
従来の手法では、先頭ビットから順次処理していくので、30ビットのデータを処理するのに30クロックの供給が必要である。
まず、errの値がerrinitと等しくなるビットを検出する。これは、errplusとerrminusの最小公倍数Gを求めると、G=60となる。
【0057】
つまり、(式3)が成り立つ最小のk、pの値はk=5、p=1となる。
G=errminus×k=errplus×p→12×k=60×p=60
これは、「5ビット毎に1ビットのパンクチャ処理がされる」ことを示す。
【0058】
以上より、ビット1+k×i(i=0、1、2・・・)、すなわち、1、6、11、21、26の6ビットはerrの値がerrinitと等しくなる。これは、図10下段のerr算出値からも確認できる。
【0059】
これより、30ビットのデータを6分割することができ、各分割ユニットは、5ビット処理すれば良いので、共通のクロックを供給すると5クロックでパンクチャ処理を実行できる。実際にパンクチャ処理を行うと、以下のようになる。
【0060】
1クロック目では、(1、6、11、16、21、26)ビットが処理される。このときのerr値は全て1−12=−11となり、負の値になるので、(1、6、11、16、21、26)ビットはパンクチャされる。
【0061】
2クロック目〜5クロック目では、それぞれ(2、7、12、17、22、27)ビット、・・・(5、10、15、20、25、30)ビット目が処理される。この間errの値は常に正なので、パンクチャ処理は行われない。
【0062】
以上より、計5クロックで30ビットのパンクチャ処理を終了でき、従来の1/6の時間でレートマッチング処理が出来る。
同様に、図11のレピテション処理を行うと、errplusとerrminusの最小公倍数Gを求めると、G=104となり、k、pの値は、k=13、p=2となる。これは、「13ビット毎に2ビットのレピテション処理がされる」ことを示す。
【0063】
以上より、ビット1+k×i(i=0、1、2・・・)、すなわち、1、14ビットは、errの値がerrinitと等しくなる。これは、図11下段のerr算出値からも確認できる。
【0064】
これより、26ビットのデータを2分割することができ、各分割ユニットは13ビット処理すれば良いので、共通のクロックを供給すると13クロックでレピテション処理を実行できる。実際にレピテション処理を行うと、以下のようになる。
【0065】
1クロック目では、(1、14)ビットが処理される。このときerrの値は負の値になり、レピテションが行われる。
2クロック目では、(2、15)ビットが処理される。このときのerrの値は正なので、レピテションは行われない。
【0066】
(3〜6、16〜19)ビットの処理で4クロック供給されるが、2クロック目と同様な処理が行われ、レピテションは行われない。
次にレピテションが行われるのは7クロック目の(7、20)ビットを処理した時で、errの値が負になり、レピテションされる。
【0067】
残りの(8〜13、21〜26)ビットの処理で6クロック供給されるが、2クロック目と同様な処理が行われ、レピテションは行われない。
以上より、計13クロックで26ビットのレピテション処理が終了でき、従来の1/2の時間で処理できる。
【0068】
なお、図6の実施形態では、データの分割数が場合によって変化するので、レピテション/パンクチャ実行ユニットとそれに付随する構成は、設計上考えられる最大数設けておき、必要に応じて、セレクタなどで、使用するレピテション/パンクチャ実行ユニットを選択して、処理を実行させる。
【0069】
図7は、本実施形態におけるDSP及びパラメータ演算ユニットが行う処理を説明するフローチャートである。
まず、ステップS10において、送信入力データ長取得を行う。そして、ステップS11において、レートマッチング基本パラメータの算出を行う。すなわち、レートマッチング入出力データ長、errinit、errplus、errminusを算出する。次に、(式3)に基づいて、レートマッチングパターン周期を検出する。すなわち、一周期のビット数を検出する。ここで、パターンの周期が何周期で構成されているかを示すnをn=1としておく。そして、ステップS13において、分割データ長・データ数を算出し(n周期でデータを区切る時の分割データ長及び分割数を算出する)、ステップS14において、算出分割数が最大の分割数(設けられているレピテション/パンクチャ実行ユニットの数)よりも大きいか否かを判断する。算出分割数が最大分割数よりも大きい場合には、ステップS15においてnを1つ増加し、ステップS13に戻って処理を繰り返す。例えば、最初n=1である場合には、レートマッチングパターンの1周期でデータを分割していたことになるが、nを1つ増加することにより、2周期毎にデータを分割することになる。これにより、データの分割数が減ることになる。
【0070】
ステップS14において、算出分割数が最大分割数より小さくなった場合には、ステップS16に進み、レートマッチング分割出力データ長を算出し、ステップS17において、各回路に分割パラメータを通知する。すなわち、レートマッチング回路に入出力分割データ長、errinit等の各種パラメータを通知し、1stインタリーブ回路へ分割出力データ長及び分割数を、2ndインタリーブ回路へ分割入力データ長及び分割数を通知する。
【0071】
図8は、本実施形態のレートマッチング回路の具体例を示した図である。
分割されたデータは、各データロードユニットにロードされ、データ転送ユニットに送られる。挿入・削除ビット検出回路からは、今データ転送ユニットにロードされているビットが削除対象か、挿入対象を示す信号が出力される。データ転送ユニットは、この信号に基づいて、受け取ったビットを破棄したり、繰り返し送出する。この場合、先の実施形態と異なり、各分割データにおいて、削除されるべきビット番号あるいは、挿入されるべきビット番号が全ての分割データにおいて共通となるので、挿入・削除ビット検出回路は、複数のテーブル転送ユニット及びデータロードユニットの組について1つだけ設けられる。
【0072】
なお、図5及び図8において、データロードユニットは、クロックが供給されるたびにバッファからデータをロードし、保持しておく。
挿入・削除ビット検出回路は、レートマッチングアルゴリズムによりerr値の更新を行い(err=err−errminus)、ロードしたデータが挿入・削除処理の対象になるかを判断する。err値が0以下になった時はデータ転送ユニットへ保持データが挿入・削除処理対象であることを通知し、err値の再更新を行う(err=err+errplus)。
【0073】
データ転送ユニットは、データロードユニットの保持するデータを2ndインタリーブ回路へと転送する。ただし、挿入・削除ビット検出回路よりビット削除を通知された場合は、転送しない。また、ビット挿入を通知された場合は、保持データを複数回転送する。
【0074】
なお、ビットの挿入・削除の判断は、データ入出力長よりあらかじめ判断しておく。
また、本発明の上記実施形態をCPUやDSP等のソフトウェア処理で実現すると以下のようになる。
【0075】
図10の30ビット→24ビットのパンクチャ処理を行うとする。
CPUやDSPで本発明の上記実施形態を実現する場合には、CPUあるいはDSPがシリアルに、レートマッチングすべきデータを受け取り、これをメモリに格納して、削除すべきビットあるいは挿入すべきビットを、上記実施形態に従って決定し、削除・挿入を行う。この場合、実際のデータは分割されていないが、仮想的に分割されたものとして、挿入・削除ビットのビット番号を算出する。
【0076】
まず、errinit(=1)、errplus(=60)、errminus(=12)を算出したらerrplus、errminusの最大公倍数G=60を算出する。(式3)よりk=5、p=1となり5ビット周期で1ビットのパンクチャが行われることが分かる。m=1(仮想的分割データの最初のビット)からパンクチャ処理を行う。
【0077】
m=1のとき、errの値をerrminusで更新するとerr<0となり、パンクチャ処理を行うことになる。このとき、ビット番号がm+k×i(kは周期、iは、仮想的分割データのブロック番号でi=0、1、2・・・である)を満たす他のビット、すなわち、1、6、11、16、21、26ビット目も同時にパンクチャされる。パンクチャ処理が終わりerrをerrplusで更新するとerr=49となり、m=m+1=2として、次のビットの処理に移る。
【0078】
m=2の場合、errの値は0以下にはならないため、パンクチャ処理はされず、データはそのまま転送される。このときも、ビット番号がm+k×i(i=0、1、2・・・)を満たす他のビット、すなわち、2、7、12、17、22、27ビットも同時に転送される。m=m+1=3として同様の処理を繰り返す。
【0079】
m=3〜5の場合は、errの値が0以下にならないためm=2と同様の処理を行う。
m=5のパンクチャ処理が終了し、最後にm=6に更新されると、mの値が(入力データ長)/分割数=30/6=5(すなわち、周期)より大きくなるため、全てのパンクチャ処理を終了する。
【0080】
このように、errの更新やerr値による条件判断を周期性により処理の共通化をすることにより、全体の演算量を低減している。この場合は、6周期に分割できたので、データのロード・ストア操作を除く、err算出処理を従来の1/6に低減できる。
【0081】
同様に、図11のレピテション処理を行う。
errinit(=1)、errplus(=52)、errminus(=8)を算出したらerrplus、errminusの最大公倍数G=104を算出する。(式3)よりk=13、p=2となり、13ビット周期で2ビットのレピテション処理が行われることが分かる。m=1からレピテション処理を行う。
【0082】
m=1のとき、errの値をerrminusで更新するとerr<0となり、レピテション処理を行うことになる。このとき、ビット番号がm+k×i(i=0、1、2・・・)を満たす他のビット、すなわち、1、14ビット目も同時にレピテションされる。レピテション処理が終わり、errをerrplusで更新するとerr=45となり、m=m+1=2として、つぎのビットの処理に移る。
【0083】
m=2のとき、errの値は0以下にはならないため、レピテション処理はされず、データはそのまま転送される。このときも、ビット番号がm+k×i(i=0、1、2・・・)を満たす他のビット、すなわち、2、15ビットも同時に転送される。m=m+1=3として同様の処理を繰り返す。
【0084】
m=3〜5、7〜13の場合は、errの値が0以下にならないためm=2と同様の処理を行う。
m=6の場合は、err<0となるため、m=1と同様の処理を行う。
【0085】
m=13のレピテション処理が終了し、最後にm=14に更新されると、mの値が(入力データ長)/分割数=26/2=13より大きくなるため、全てのレピテション処理を終了する。
【0086】
このように、errの更新やerr値による条件判断処理を周期性により処理の共通化をすることにより、全体の演算量を低減している。この場合は、2周期に分割出来たので、データのロード・ストア操作を除く、err算出処理を従来の1/2に処理量を低減できる。
【0087】
なお、以上のようなプログラムは、ハードディスクなどの記録装置やCD−ROM、DVD、フロッピーディスクなどの可搬記録媒体などに記録して頒布が可能である。
【0088】
また、レートデマッチングにおいては、送信側から、パンクチャを行ったか、レピテションを行ったかを示す情報と、レートマッチング入出力データ長を情報として受け取る。これに基づいて、errinit等のパラメータを算出し、上記レートマッチングの演算方法と同じ方法で、どのビットが削除あるいは挿入されたかを検出する。ビットが削除された場合には、削除されたビット位置に0などのビットを挿入する。また、ビット挿入が行われたときには、挿入されたビットを削除する。
【0089】
上記のような手続きにより、レートデマッチングが行われるため、上記実施形態の演算方法は、そのままレートデマッチングに使用できるので、詳細な説明は省略する。
【0090】
上記本発明の実施形態を適用することにより、レートマッチング処理を行うデータのkビット目のerr値を予め算出することができ、ハードウェアの制限内であれば、入力データを任意の数に分割することができる。
【0091】
したがって、データ長Lビットの入力データを均等にN個に分割した場合、各ユニットが処理するデータは、L/Nビットとなり、N個の分割したデータを同時に処理すれば、従来手法の1/Nの時間でレートマッチング処理を実行することができ、伝送レート2Mbpsのデータでも規定時間以内で処理することができるようになる。
【0092】
更に、本発明の別の実施形態を適用することにより、レートマッチング処理の周期性を利用して、err値を予め算出することができ、入力データをレートマッチング処理周期単位で分割する事が出来る。
【0093】
したがって、入力データLビットに対して、レートマッチング周期がTビット単位の場合、少なくともN’=<L/N>分割することができるため、分割したデータを同時に処理することにより、従来の方式の1/N’の以下の処理時間でレートマッチング処理を実行することができ、伝送レート2Mbpsのデータでも規定時間内で処理することができるようになる。(ただし、<X>はXの小数部切り捨て値)
(付記1)送受信するデータの符号化の際のデータ長の伸長を行うレートマッチング/デマッチング装置であって、
レートマッチングのための基本パラメータと、レートマッチング/デマッチングするデータの分割位置に関するパラメータ及び分割データの各ビットのパラメータ値を算出するパラメータ算出手段と、
前記パラメータ算出手段が算出したパラメータに基づいて、各分割データにおいて削除・挿入されるべきビット位置を算出するビット位置算出手段と、
ビットの削除・挿入を行うビット削除・挿入手段と、
を備えることを特徴とする装置。
【0094】
(付記2)前記パラメータ算出手段は、ビットの挿入・削除処理のパターンが同一となるような分割位置を検出し、該分割位置でデータを分割する事を特徴とする付記1に記載の装置。
【0095】
(付記3)前記分割の結果、分割データ数が所定数よりも大きくなった場合には、前記パターンの周期を複数周期に設定し直すことにより、分割データ数を減らすことを特徴とする付記2に記載の装置。
【0096】
(付記4)前記ビット削除・挿入手段は、各分割データに対応して複数設けられ、ビットの削除・挿入を並列に行うことを特徴とする付記1に記載の装置。
(付記5)前記ビット削除・挿入手段は複数設けられ、前記分割数に応じて、選択的に使用され、並列にビットの削除・挿入を行うことを特徴とする付記3に記載の装置。
【0097】
(付記6)送受信するデータの符号化の際のデータ長の伸長を行うレートマッチング/デマッチング方法であって、
レートマッチングのための基本パラメータと、レートマッチング/デマッチングするデータの分割位置に関するパラメータ及び分割データの各ビットのパラメータ値を算出するパラメータ算出ステップと、
前記パラメータ算出手段が算出したパラメータに基づいて、各分割データにおいて削除・挿入されるべきビット位置を算出するビット位置算出ステップと、
ビットの削除・挿入を行うビット削除・挿入ステップと、
を備えることを特徴とする方法。
【0098】
(付記7)送受信するデータの符号化の際のデータ長の伸長を行うレートマッチング/デマッチング方法であって、
レートマッチングのための基本パラメータと、レートマッチング/デマッチングするデータの分割位置に関するパラメータ及び分割データの各ビットのパラメータ値を算出するパラメータ算出ステップと、
前記パラメータ算出手段が算出したパラメータに基づいて、各分割データにおいて削除・挿入されるべきビット位置を算出するビット位置算出ステップと、
ビットの削除・挿入を行うビット削除・挿入ステップと、
を備えることを特徴とする方法を情報装置に実現させるプログラムを記録した、情報装置読み取り可能な記録媒体。
【0099】
【発明の効果】
本発明によれば、簡易かつ高速なレートマッチング、レートデマッチング処理を実現することが出来る。
【図面の簡単な説明】
【図1】W−CDMA CH−CODEC部の概要図である。
【図2】図1の送信レートマッチング部に本発明の実施形態を用いた場合のハードウェア構成例である。
【図3】本発明の第1の実施形態の機能ブロック図を示す図である。
【図4】図2のDSP及び図3のパラメータ演算ユニット30の行う処理を説明するフローチャートである。
【図5】第1の実施形態のレートマッチング回路の具体的構成例を示した図である。
【図6】本発明の第2の実施形態を説明する概要ブロック図である。
【図7】本実施形態におけるDSP及びパラメータ演算ユニットが行う処理を説明するフローチャートである。
【図8】本実施形態のレートマッチング回路の具体例を示した図である。
【図9】レートマッチング処理アルゴリズムを示す図である。
【図10】パンクチャした結果を示す図である。
【図11】レピテションの結果を示す図である。
【図12】従来のレートマッチング処理の機能ブロック図を示す図である。
【符号の説明】
9 チャネルコーデック受信部
10 チャネルコーデック送信部
11 DEM部
12 MOD部
13 送信部
14 受信部
15、16 アンテナ
20 レートマッチング基本パラメータ算出部
21 データ分割位置・分割パラメータ算出部
22 1stインタリーブ回路
23 2ndインタリーブ回路
24 レートマッチング回路
30、35 パラメータ演算ユニット
Claims (2)
- 送受信するデータの符号化の際のデータ長の伸長を行うレートマッチング/デマッチング装置であって、
レートマッチングのための基本パラメータと、レートマッチング/デマッチングするデータの分割位置に関するパラメータ及び分割データの各ビットのパラメータ値を算出し、ビットの挿入・削除処理のパターンが同一となるような分割位置を検出し、該分割位置でデータを分割し、該分割の結果、分割データ数が所定数よりも大きくなった場合には、前記パターンの周期を複数周期に設定し直すことにより、分割データ数を減らす処理を行うパラメータ算出手段と、
前記パラメータ算出手段が算出したパラメータに基づいて、各分割データにおいて削除・挿入されるべきビット位置を算出するビット位置算出手段と、
ビットの削除・挿入を行うビット削除・挿入手段と、
を備えることを特徴とする装置。 - 前記ビット削除・挿入手段は複数設けられ、前記分割数に応じて、選択的に使用され、並列にビットの削除・挿入を行うことを特徴とする請求項1に記載の装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000399076A JP3943329B2 (ja) | 2000-12-27 | 2000-12-27 | レートマッチング/デマッチング処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000399076A JP3943329B2 (ja) | 2000-12-27 | 2000-12-27 | レートマッチング/デマッチング処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002199048A JP2002199048A (ja) | 2002-07-12 |
JP3943329B2 true JP3943329B2 (ja) | 2007-07-11 |
Family
ID=18863920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000399076A Expired - Fee Related JP3943329B2 (ja) | 2000-12-27 | 2000-12-27 | レートマッチング/デマッチング処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3943329B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100946823B1 (ko) | 2002-12-28 | 2010-03-09 | 엘지전자 주식회사 | 병렬 리피티션 패턴 결정장치 및 방법 |
JP4224688B2 (ja) * | 2003-06-18 | 2009-02-18 | 日本電気株式会社 | レートデマッチング処理装置 |
JP4217887B2 (ja) | 2003-07-22 | 2009-02-04 | 日本電気株式会社 | 受信装置 |
JP2008311869A (ja) | 2007-06-13 | 2008-12-25 | Telefon Ab L M Ericsson | レートマッチング装置及びその方法、デレートマッチング装置及びその方法、通信装置、プログラム、記録媒体 |
JP5365455B2 (ja) | 2009-09-30 | 2013-12-11 | 富士通株式会社 | レート調整装置、レート調整方法及びレート調整プログラム |
JP5521965B2 (ja) | 2010-10-07 | 2014-06-18 | 富士通株式会社 | レート調整装置およびレート調整方法 |
US10425111B2 (en) * | 2017-02-06 | 2019-09-24 | Mediatek Inc. | Polar code interleaving and bit selection |
-
2000
- 2000-12-27 JP JP2000399076A patent/JP3943329B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002199048A (ja) | 2002-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107425941B (zh) | 速率匹配和解速率匹配的方法及装置 | |
US6934321B2 (en) | W-CDMA transmission rate estimation method and device | |
US7793189B2 (en) | Error control apparatus | |
CN101237241B (zh) | 一种实现混合自动请求重传处理和信道译码的方法和系统 | |
JP2002543640A (ja) | 通信ネットワークにおいて速度整合アルゴリズムを使用するシステムおよび方法 | |
JPH11275052A (ja) | 拡散符号化装置およびその方法 | |
JP3943329B2 (ja) | レートマッチング/デマッチング処理装置 | |
JP3914877B2 (ja) | 誤り訂正復号化方法 | |
JP3655872B2 (ja) | 巡回符号を用いた誤り制御装置および方法 | |
US7415263B2 (en) | Receiver for a wireless communication device | |
US7698620B2 (en) | Interleave parameter processing method | |
CN109391347B (zh) | 编译码方法及装置 | |
JP4350371B2 (ja) | 伝送フォーマット検出方法 | |
US8396078B2 (en) | Rate matching device and method thereof, de-rate matching device and method thereof | |
CA2414363A1 (en) | Method and apparatus for flexible data rate matching by symbol insertion for a data communication system | |
CN112703687B (zh) | 信道编码方法及装置 | |
JP5365455B2 (ja) | レート調整装置、レート調整方法及びレート調整プログラム | |
CN111130566B (zh) | Polar码译码器中寻找L个最大路径度量值的电路实现方法 | |
RU2791016C1 (ru) | Способ и устройство для кодирования кода с низкой плотностью проверок на чётность (ldpc), базовая станция и машиночитаемый носитель данных | |
JP2004282787A (ja) | 信号送信装置および符号化装置 | |
JP2551027B2 (ja) | 逐次復号方法及び装置 | |
JP2010154250A (ja) | 無線通信端末、復号方法及び復号器 | |
JP2005039672A (ja) | 無線通信装置の符号化処理装置および復号化処理装置 | |
WO2015010732A1 (en) | Improved rate matching based on reverse interleaving and reverse rate matching | |
KR100949959B1 (ko) | 부호비트 펑처링/디펑처링 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050324 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060711 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060830 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070130 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070312 |
|
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: 20070403 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070405 |
|
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: 20110413 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110413 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120413 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130413 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140413 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |