(57)【要約】【課題】ビット幅ｎの軟判定データからビット幅ｍ（ｍ＜ｎ）の軟判定データへの対応付けを小さい回路規模で効率的に行う。【解決手段】データ変換装置１０は、バッファメモリ１１、演算部１２および変換部１３を有する。バッファメモリ１１は、ビット幅ｎの軟判定データからなる入力データ列を一時的に格納する。演算部１２は、各軟判定データについて数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定する。変換部１３は、演算部１２が決定したビット範囲に基づいて、バッファメモリ１１に格納されたビット幅ｎの軟判定データをビット幅ｍの軟判定データに変換する。【選択図】図１
2010154144.tif 000002
【特許請求の範囲】
【請求項１】
ビット幅ｎの軟判定データからなる入力データ列をビット幅ｍ（ｍ＜ｎ）の軟判定データからなる出力データ列に変換するデータ変換装置において、
前記入力データ列の各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定する演算部、
を有することを特徴とするデータ変換装置。
【請求項２】
前記演算部は、前記累積個数分布において累積個数が所定の閾値に達するときの桁数を特定し、特定した桁数に基づいて前記ビット範囲を決定することを特徴とする請求項１記載のデータ変換装置。
【請求項３】
前記演算部は、前記桁数が所定の閾値以上である軟判定データについては、最上位桁よりも下位のビットに基づいて更に分類して前記累積個数分布を求めることを特徴とする請求項１記載のデータ変換装置。
【請求項４】
前記演算部は、前記計数した個数の最大値が所定の閾値以上であるか否かに応じて、前記ビット範囲の広さを制御することを特徴とする請求項１記載のデータ変換装置。
【請求項５】
前記演算部は、各軟判定データのビット列を先頭ビットから下位ビットに向かって走査し、先頭ビットと異なるビットが最初に検出された位置に基づいて前記桁数を特定することを特徴とする請求項１記載のデータ変換装置。
【請求項６】
ビット幅ｎの軟判定データからなる入力データ列をビット幅ｍ（ｍ＜ｎ）の軟判定データからなる出力データ列に変換するデータ変換方法において、
前記入力データ列の各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、
特定した桁数が同じ軟判定データの個数を計数し、
計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定する、
ことを特徴とするデータ変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ変換装置およびデータ変換方法に関する。
【背景技術】
【０００２】
現在、有線または無線によるデジタル通信が広く行われている。デジタル通信システムでは、送信装置はデジタルデータに誤り検出符号化処理や誤り訂正符号化処理を施し、これをデジタル変調して伝送路に出力する。伝送路では、雑音などの影響を受けて信号に歪みが生じる。受信装置は、伝送路から信号を受信し、受信信号を復調して信号レベルに応じた尤度データ（受信信号が「０」を示していることの確からしさまたは「１」を示していることの確からしさを表す値）を生成し、これを復号して元のデジタルデータを得る。このとき、復号時に入力として与える尤度データとしては、０または１の２値に表した硬判定データではなく、多段階に表した軟判定データを用いることがある。軟判定データを用いることで、復号時の誤り訂正能力を向上させることができる。
【０００３】
ところで、受信信号の信号レベルは、フェージングなどの影響により短時間に大きく変動することがある。これに伴い、尤度データが表す数値の大きさも変動する。このため、復調後に得られる尤度データは、大きい数値と小さい数値の両方を十分に表現できるように、ビット幅が比較的大きいものとなっている。
【０００４】
しかし、このようなビット幅の大きい尤度データをそのまま復号処理の入力として与えるのは非効率的である。例えば、大多数の尤度データが大きい数値を表している場合、復号結果に大きな影響を与えるのは上位ビットであり下位ビットは重要性が低い。逆に、大多数の尤度データが小さい数値を表している場合、上位ビットは形式的に０または１（例えば、正数の場合０、負数の場合１）が挿入されているだけであり重要でない。大きいビット幅の尤度データを復号することは、復号処理の計算量の増大を招き好ましくない。そこで、復号後に得られるビット幅ｎの尤度データをビット幅ｍ（ｍ＜ｎ）の尤度データに変換してから復号処理を行うことが考えられる。
【０００５】
ビット幅を変換する方法としては、例えば、ｎビット以下で表現可能な数値（変換前の尤度データで表現可能な数値）のうち、ｍビット以下で表現可能な数値（変換後の尤度データで表現可能な数値）の最大値と対応付ける数値（上限値）を決め、上限値の最上位桁から下位ビットに向かって必要なビット数を切り取るという方法が考えられる。例えば、ビット幅８の符号付きの尤度データをビット幅５の符号付きの尤度データに変換する場合に、変換後の最大値０１１１１（＋１５）と対応付ける数値を００１１１１１１（＋６３）と決めると、変換前のビット列の３桁目から６桁目までが変換後の符号ビットを除く１桁目から４桁目に対応付けられることになる。この場合、変換前の００１００１１０（＋３８）は変換後の０１００１（＋９）に対応付けられる。なお、上限値を超えるものについては、変換後の尤度データの最大値への対応付け（クリップ処理）を行うことが考えられる。例えば、上記の例において、変換前の０１００００００（＋６４）は上限値を超えるため変換後の０１１１１（＋１５）に対応付ける。
【０００６】
このようなビット幅の削減処理においては、尤度データが表す数値の大きさは変動するため、変換前のｎビットから変換後のｍビットへの対応付けは、尤度データを受けて適応的に決めることが好ましい。この点、所定区間（例えば、復号処理を行う単位区間）の変換前の尤度データが表す数値の平均と分散とを求め、これらの統計値に基づいて上限値を決めるという方法がある（例えば、特許文献１参照）。また、所定区間内の変換前の尤度データが表す数値の平均を求め、平均値を定数倍した数値を上限値とするという方法もある（例えば、特許文献２参照）。
【特許文献１】国際公開第０１／０２２５９８号パンフレット
【特許文献２】特開２００６−０１９７８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上記特許文献１，２に記載の方法では、尤度データから平均や分散などの統計値を求めるため、ｎビットからｍビットへの対応付けを決定するための計算量が大きいという問題がある。
【０００８】
例えば、上記特許文献２に記載の方法では、伝送路環境に応じて変換後ビット数ｍを最小にする適切な定数を選択するため、環境推定処理の負荷が大きい。一方、環境推定を行なわず定数を固定値に規定しておくことが考えられる。しかし、この場合には変換後ビット幅ｍをあらゆる環境に対応可能なように余裕をもって大きくとっておくことになり、周辺回路の回路規模の増大を招くという問題がある。
【０００９】
本発明はこのような点に鑑みてなされたものであり、ビット幅ｎの軟判定データからビット幅ｍ（ｍ＜ｎ）の軟判定データへの対応付けを効率的に行うことが可能なデータ変換装置およびデータ変換方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、ビット幅ｎの軟判定データからなる入力データ列をビット幅ｍ（ｍ＜ｎ）の軟判定データからなる出力データ列に変換するデータ変換装置が提供される。このデータ変換装置は、入力データ列の各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、計数した個数を桁数の小さい方から累積した累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定する演算部を有する。
【００１１】
また、上記課題を解決するために、ビット幅ｎの軟判定データからなる入力データ列をビット幅ｍ（ｍ＜ｎ）の軟判定データからなる出力データ列に変換するデータ変換方法が提供される。このデータ変換方法では、入力データ列の各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定する。
【発明の効果】
【００１２】
上記データ変換装置およびデータ変換方法によれば、ビット幅ｎの軟判定データからビット幅ｍ（ｍ＜ｎ）の軟判定データへの対応付けを効率的に行うことが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本実施の形態を図面を参照して説明する。
図１は、本実施の形態に係るデータ変換装置を示す図である。図１に示すデータ変換装置１０は、ビット幅ｎの軟判定データからなる入力データ列をビット幅ｍ（ｍ＜ｎ）の軟判定データからなる出力データ列に変換する。このデータ変換装置１０は、バッファメモリ１１、演算部１２および変換部１３を有する。
【００１４】
バッファメモリ１１は、入力されたビット幅ｎの軟判定データからなる入力データ列を順序を保持して一時的に格納する。これは、演算部１２の計算が終了するまで変換部１３の処理を遅延させることを意味する。この軟判定データとしては、例えば、有線または無線の伝送路を介して受信した受信信号の信号レベルを尤度に変換したもの、記録媒体から光学的手段により読み取った入力信号の信号レベルを尤度に変換したものなどが考えられる。なお、尤度を表す指標には、対数尤度比（ＬＬＲ：Log Likelihood Ratio）も含まれる。
【００１５】
演算部１２は、入力データ列の各軟判定データについて、その軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、桁数が同じ軟判定データの個数をカウントする。例えば、入力された軟判定データがビット幅８で符号付きのとき、０００００１００（＋４）は３桁、１１１０１１１０（−１８）は５桁である。なお、このような桁数は、ビット列を先頭ビットから下位ビットに向かって走査し、先頭ビットと異なるビットが最初に検出されたビット位置に基づいて特定することが可能である。この処理は、バッファメモリ１１への軟判定データの格納と並行して行うことができる。そして、演算部１２は、カウント結果を桁数の小さい方から累積した累積個数分布を求め、この累積個数分布に基づいて、ｎビットのうちｍビットに対応付けるビット範囲を決定する。その後、演算部１２は、決定したビット範囲を変換部１３に通知する。
【００１６】
変換部１３は、バッファメモリ１１に格納されたビット幅ｎの軟判定データを順次取り出し、演算部１２からの通知に基づいて、ビット幅ｎの軟判定データをビット幅ｍの軟判定データに変換する。例えば、変換部１３は、変換前のｎビットのビット列から、通知されたビット範囲の部分を切り出して変換後のビット列とする。その場合、ビット範囲の最上位ビットよりも大きい桁を有する軟判定データについては、クリップ処理を行う。すなわち、この軟判定データはｍビット以下で表現可能な数値の最大値に変換される。
【００１７】
このようなデータ変換装置１０によれば、演算部１２により入力データ列の各軟判定データについて数値の大きさが２進数で何桁であるかが特定され、桁数が同じ軟判定データの個数がカウントされる。そして、カウント結果を桁数の小さい方から累積した累積個数分布に基づいて、ｎビットのうちｍビットに対応付けるビット範囲が決定される。これにより、ビット幅ｎの軟判定データからビット幅ｍの軟判定データへの対応付けを決定する際の計算量が削減され、処理を高速に実行できる。また、あらゆる伝送路環境に対応するためにビット幅ｍを大きくとっておくことを回避でき、回路規模の増大を抑制できる。
【００１８】
すなわち、ビット幅ｎの軟判定データからビット幅ｍの軟判定データへの対応付けを小さい回路規模で効率的に行うことが可能となる。
なお、アナログ信号から復号に用いる入力データを得る処理過程には、アナログ信号を離散データに変換する処理と、離散データのビット幅をｎからｍ（ｍ＜ｎ）に圧縮する処理とを含む。本実施の形態では、「量子化」として、主に後者の処理（復号用の量子化）に着目する。このとき、ｎビットで表現可能な数値のうちｍビットへの変換の際にクリップ処理を行わない数値範囲は「量子化範囲」と呼ぶことができる。
【００１９】
［第１の実施の形態］
以下、第１の実施の形態を図面を参照して詳細に説明する。
図２は、本実施の形態のシステム構成を示す図である。送信装置１００は、無線伝搬路５０を介して受信装置２００に電波によるデータ送信を行う。データ送信は、所定のデータ長のフレームを単位として行われる。受信装置２００は、送信装置１００から受信した信号に応じ、その受信結果（正常にデータを受信できたか否か）を無線伝搬路５０を介して受信装置２００に電波により送信する。ここで、無線伝搬路５０では、送信装置１００と受信装置２００との間に電波の反射などによって複数の経路（マルチパス）がある場合に、これら複数の電波の干渉のために短期間に受信電波の強度が大きく変化するフェージングが発生する。また、受信装置２００では、内部回路の処理過程において熱雑音が発生する。これらフェージングや熱雑音の影響は、通信品質が低下する要因となっており、送信装置１００および受信装置２００は、このような品質の低下が起こってもデータを正しく送受信可能なようにする機能を備えている。
【００２０】
図３は、第１の実施の形態の送信装置の機能を示すブロック図である。図３に示される送信装置１００は、無線伝搬路５０を介して受信装置２００に信号を送信する。また、送信装置１００は、受信装置２００からの再送要求などの信号を受信する。
【００２１】
送信装置１００は、コーデック部１１０およびモデム部１２０を有する。
コーデック部１１０は、誤り検出符号化部１１１、誤り訂正符号化部１１２、パターン指定部１１３、フィードバック情報抽出部１１４および再送制御部１１５を有する。
【００２２】
誤り検出符号化部１１１は、元の情報を表すデータを誤り検出符号化する。
誤り訂正符号化部１１２は、誤り検出符号化されたデータを、更に誤り訂正符号化する。
【００２３】
パターン指定部１１３は、誤り訂正符号化されたデータを所定の送信パターンに従ってフレーム単位に分割する。また、パターン指定部１１３は、誤り訂正符号化データを一時的に記憶しており、再送制御部１１５の再送指示に基づいて、誤り訂正符号化データの再送を行う。
【００２４】
フィードバック情報抽出部１１４は、モデム部１２０を介して受け付けた受信装置２００からのフィードバック情報について、ＡＣＫ（ACKnowledgement）またはＮＡＣＫ（Negative ACKnowledgement）の何れであるかを判定する。フィードバック情報抽出部１１４は、判定したＡＣＫ／ＮＡＣＫを再送制御部１１５に通知する。
【００２５】
再送制御部１１５は、フィードバック情報抽出部１１４からＮＡＣＫの通知を受け付けた場合、パターン指定部１１３にデータの再送を指示する。また、再送制御部１１５は、ＡＣＫを受け付けた場合、パターン指定部１１３に次のデータの送信を指示する。
【００２６】
モデム部１２０は、変調部１２１および復調部１２２を有する。変調部１２１は、パターン指定部１１３から取得した送信データを所定の変調方式に従ってベースバンド信号に変調する。ベースバンド信号は、送信装置１００の送信部（図示せず）によって、ＲＦ（Radio Frequency）帯の周波数に周波数変換されて無線伝搬路５０に送信される。無線伝搬路５０を介して受信した受信装置２００からの受信信号は、送信装置１００の受信部（図示せず）によってベースバンド信号に周波数変換され、復調部１２２に出力される。復調部１２２は、この信号を復調して、フィードバック情報抽出部１１４に出力する。
【００２７】
図４は、第１の実施の形態の受信装置の機能を示すブロック図である。受信装置２００は、送信装置１００から送信された信号を無線伝搬路５０を介して受信する。そして、受信装置２００は、受信したデータを復号して復号データを取得する。
【００２８】
受信装置２００は、モデム部２１０およびコーデック部２２０を有する。
モデム部２１０は、復調部２１１および変調部２１２を有する。送信装置１００からの信号は、受信装置２００の受信部（図示せず）によって、ベースバンド信号に周波数変換されて、復調部２１１に出力される。復調部２１１は、受信信号を復調し、受信信号の各振幅レベルに対応する尤度データを生成してコーデック部２２０に出力する。この尤度データはビット幅ｎ（ｎ＞２）の軟判定データである。尤度データは、例えば、受信信号レベルを統計情報（受信信号レベルの分散など）を用いて補正することで得られる。変調部２１２は、コーデック部２２０から受け付けたＮＡＣＫ／ＡＣＫの通知情報を変調して、送信部（図示せず）に出力する。この通知情報は、送信部によってＲＦ帯の信号に変換され、無線伝搬路５０を介して送信装置１００に送信される。
【００２９】
コーデック部２２０は、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６および制御情報符号化部２２７を有する。
【００３０】
バッファメモリ２２１は、復調部２１１から入力されたビット幅ｎの尤度データからなる入力データ列を順序を保持して一時的に格納する。これは、演算部２２２の計算が終了するまで量子化部２２３の処理を遅延させることを意味する。
【００３１】
演算部２２２は、入力データ列の各尤度データについて、その尤度データが表す数値の大きさが２進数で何桁であるかを特定し、桁数が同じ尤度データの個数をカウントする。例えば、入力された尤度データがビット幅８で符号付きのとき、０００００１００（＋４）は３桁、１１１０１１１０（−１８）は５桁である。なお、このような桁数は、ビット列を先頭ビットから下位ビットに向かって走査し、先頭ビットと異なるビットが最初に検出されたビット位置に基づいて特定することができる。この処理は、バッファメモリ２２１への尤度データの格納と平行して行うことができる。そして、演算部２２２は、１フレームのデータ長分だけ尤度データを取得すると、カウント結果を桁数の小さい方から累積した累積個数分布を求め、この累積個数分布に基づいて、ｎビットのうちｍビット（ｍ＜ｎ）に対応付けるビット範囲を決定する。その後、演算部２２２は、決定したビット範囲を量子化部２２３に通知する。
【００３２】
量子化部２２３は、バッファメモリ２２１に格納されたビット幅ｎの尤度データを順次取り出し、演算部２２２からの通知に基づいて、ビット幅ｎの尤度データをビット幅ｍの尤度データに変換する。例えば、量子化部２２３は、量子化前のｎビットのビット列から、通知されたビット範囲の部分を切り出して量子化後のビット列とする。その場合、ビット範囲の最上位ビットよりも大きい桁を有する尤度データについては、クリップ処理を行う。すなわち、この尤度データはｍビット以下で表現可能な数値の最大値に量子化する。
【００３３】
誤り訂正復号部２２４は、量子化部２２３から取得する量子化後データに対して、誤り訂正復号処理を行う。ここで、量子化後データは、誤り訂正符号化されたデータであり、誤り訂正復号部２２４は、所定の復号方法を用いてデータの復号処理を実行する。なお、符号化方式は予め送信装置１００と受信装置２００との間で合意がなされており、送信装置１００はこの符号化方式に従って符号化を行っている。
【００３４】
誤り検出部２２５は、誤り訂正処理後のデータに対して、データの誤りの有無を検査し、検査結果をＮＡＣＫ／ＡＣＫ判定部２２６に出力する。誤り検出部２２５は、上記誤り検出の結果、データに誤りが検出されなかった場合には、復号データを出力する。データに誤りを検出した場合には、このデータを破棄する。
【００３５】
ＮＡＣＫ／ＡＣＫ判定部２２６は、誤り検出結果に基づいてＮＡＣＫ／ＡＣＫの何れを通知情報として送信装置１００に送信するかを制御情報符号化部２２７に指示する。
制御情報符号化部２２７は、ＮＡＣＫ／ＡＣＫ判定部２２６からの指示に従って通知情報を符号化し、変調部２１２に出力する。
【００３６】
図５は、尤度データと指数位置との関係を示す模式図である。ここで、尤度データは２の補数によって負数を表現するものとする。
図５（Ａ）には、例として８ビットの尤度データ“０００１１００１”（＋２５）が示されている。この尤度データの最上位のビット（ＭＳＢ：Most Significant Bit）は、正負を表す符号ビットであり、この例では正を表している。また、２５は２4（１６）と２5（３２）の間であるため、尤度データの値の大きさを表すビットである実質ビットは、下位の５ビットである。最下位のビット（ＬＳＢ：Least Significant Bit）から数えて６桁目および７桁目は、符号ビットと同じ０で埋められている。ここで、２進数で表される尤度データの桁数を表すためにインデックスを定義する。インデックスは、符号ビットを除いた７ビットについて、ＬＳＢからＭＳＢに向かって、“０”〜“６”と定義する。そして、尤度データの値の大きさを表す実質ビットの最大の桁に対応するインデックスを指数位置と定義する。例えば、実質ビット数“５”のデータの指数位置は、“４”となる。
【００３７】
図５（Ｂ）には、もう１つの例として８ビットの尤度データ“０１００１００１”（＋７３）が示されている。この場合、図５（Ａ）と同様の考え方により、実質ビット数は“７”、指数位置は、“６”となる。
【００３８】
受信装置２００の演算部２２２は、尤度データのＭＳＢからＬＳＢに向かって走査して、符号ビットと異なる最初の桁のインデックスをこの尤度データの指数位置とする。ただし、符号ビットを含めた全てのビットが“０”あるいは“１”である尤度データの指数位置は“−１”とする。
【００３９】
ここで、演算部２２２は、入力データ列の各尤度データについて、その尤度データが表す数値の大きさが２進数で何桁であるかを特定し、桁数が同じ尤度データの個数をカウントする。すなわち、演算部２２２は、実質ビット数が等しいか否かを、この指数位置の値が等しいか否かで特定し、指数位置がｉ（−１≦ｉ≦ｎ−２）であるフレーム内の尤度データの個数Ｃiを算出する。更に演算部２２２は、このＣiを指数位置が小さい方から累積した累積数Ｆiを算出する。
【００４０】
図６は、第１の実施の形態の受信処理の手順を示すフローチャートである。以下、図６に示す処理をステップ番号に沿って説明する。
［ステップＳ１１］復調部２１１は、受信した信号を復調する。そして、復調部２１１は、各受信信号のレベルに基づいてビット幅ｎの尤度データを生成する。
【００４１】
［ステップＳ１２］演算部２２２は、フレームを構成するＮc個の尤度データ（Ｎcは例えば１０００や１００００程度）に関して指数位置が同じ尤度データを計数する。そして、演算部２２２は、計数した結果を指数位置が小さい方から累積する。演算部２２２は、この累積結果から量子化範囲を決定する。
【００４２】
［ステップＳ１３］量子化部２２３は、バッファメモリ２２１からＮc個の尤度データを順次取得して、演算部２２２によって決定された量子化範囲に基づいて、尤度データの量子化を行う。なお、量子化部２２３は、この量子化範囲に属さない尤度データのうち量子化範囲より大きい尤度データに関しては、量子化後データの最大値に対応付ける。また、量子化範囲より小さい尤度データに関しては、量子化後データの最小値に対応付ける。
【００４３】
［ステップＳ１４］誤り訂正復号部２２４は、量子化部２２３から受け付けたデータに関して誤り訂正復号処理を行う。
［ステップＳ１５］誤り検出部２２５は、復号されたデータに対して誤り検出符号に基づいて、誤り検出を行う。誤りを検出しない場合、誤り検出部２２５は、復号データを受信データとして出力し、処理が完了する。更に、この場合、受信装置２００から送信装置１００にＡＣＫが送信される。また、誤りを検出した場合、誤り検出部２２５は、ＮＡＣＫ／ＡＣＫ判定部２２６に誤りを検出した旨を通知して、処理がステップＳ１６に移される。
【００４４】
［ステップＳ１６］ＮＡＣＫ／ＡＣＫ判定部２２６は、誤り検出部２２５から復号されたデータに関して誤りを検出した旨の通知を受け付けると、制御情報符号化部２２７に対して、送信装置１００に送信するためのＮＡＣＫ情報を出力する。制御情報符号化部２２７は、ＮＡＣＫ／ＡＣＫ判定部２２６から受け付けたＮＡＣＫ情報を符号化し、変調部２１２を介して送信装置１００に送信する。
【００４５】
ここで、上記ステップＳ１２に関して更に詳細に説明する。
図７は、第１の実施の形態の量子化制御処理の手順を示すフローチャートである。以下、図７に示す処理をステップ番号に沿って説明する。
【００４６】
［ステップＳ１１１］演算部２２２は、取得した各尤度データのビット列をＭＳＢからＬＳＢに向かって走査し、指数位置を特定する。そして、演算部２２２は、指数位置がｉ（−１≦ｉ≦ｎ−２）である尤度データの個数Ｃiを、受信信号の１フレームに含まれる全尤度データ（１０００〜１００００個程度）に関して計数する。
【００４７】
［ステップＳ１１２］演算部２２２は、ステップＳ１１１で求めたＣiから累積数Ｆiを、Ｆi＝Ｆi-1＋Ｃi（ただし、Ｆ-2＝０）として算出し、指数位置に対する尤度データの個数の累積分布を求める。
【００４８】
［ステップＳ１１３］演算部２２２は、ｉ＝−１とする。
［ステップＳ１１４］演算部２２２は、Ｆiが所定のデータ数Ｎp（閾値）より大きいかを判定する。大きくない場合、処理がステップＳ１１５に進められる。大きい場合、処理がステップＳ１１６に進められる。ここで、例えば、Ｎpは、量子化範囲でカバーされるべき尤度データの割合Ｐ（０＜Ｐ≦１）が設定されており、１フレームを構成する尤度データ数Ｎcに対して、Ｎp＝Ｎc×Ｐと求められる。なお、割合Ｐは、情報ビット数、符号化率および変調方式などによって決まる伝送フォーマットを考慮して設定するものとし、例えば、Ｐ＝０．９と設定される。
【００４９】
［ステップＳ１１５］演算部２２２は、ｉを１増加させる。そして、処理がステップＳ１１４に進められる。
［ステップＳ１１６］演算部２２２は、累積数が閾値を最初に超えるときの指数位置ｉに基づいて、量子化範囲の最大値および最小値を求める。具体的には、演算部２２２は、Ａmax＝２iと置くと、量子化範囲の最大値（正数側の限界値）をＡmax−１、最小値（負数側の限界値）を−Ａmaxと決定する。
【００５０】
なお、上記の割合Ｐの設定方法としては、伝送フォーマットに応じた設定とするほか、変調信号の信号対雑音比（ＳＮＲ：Signal to Noise Ration）やこれに順ずる信頼度の測定量に従って適応的に変更することも考えられる。また、再送制御を行う場合には、再送回数に応じて変更することも考えられる。
【００５１】
図８は、第１の実施の形態の量子化処理を示す模式図である。
復調部２１１から出力された尤度データの値の分布は、熱雑音などの影響により、一般に図８に示されるように“０”を中心として左右対称な分布となることが期待される。このとき、演算部２２２は、各尤度データの指数位置ｉに対してＣiを算出する。図の例では、ビット幅８の尤度データとビット幅５の量子化後の軟判定データとが、２進数で示されている。ただし、尤度データに関して、“０００００００１”（＋１）、“００００００１０”（＋２）および量子化範囲の最小値以外の負の値は、省略してある。
【００５２】
図の例では、“００００００００”（０）および“１１１１１１１１”（−１）である尤度データの数がＣ-1、“０００００００１”（＋１）および“１１１１１１１０”（−２）である尤度データの数がＣ0、“００００００１０”（＋２）、“００００００１１”（＋３）、“１１１１１１００”（−４）および“１１１１１１０１”（−３）である尤度データの数がＣ1、“０００００１００”（＋４）以上“０００００１１１（＋７）”以下、“１１１１０００”（−８）以上“１１１１１０１１”（−５）以下である尤度データの数がＣ2である。なお、Ｃ3、Ｃ4、Ｃ5に関しても同様である。
【００５３】
更に、演算部２２２はＣiの累積としてＦiを算出する。図の例では、Ｆ-1＝Ｆ-2＋Ｃ-1＝Ｃ-1、Ｆ0＝Ｆ-1＋Ｃ0、Ｆ1＝Ｆ0＋Ｃ1、Ｆ2＝Ｆ1＋Ｃ2であり、Ｆ3、Ｆ4、Ｆ5に関しても同様である。そして、演算部２２２は所定の閾値Ｎpよりも大きくなるｉが最も小さいＦiとして、Ｆ5を特定する。すなわち、量子化範囲の境界値を与える指数位置が５となり、Ａmaxが、Ａmax＝２5＝００１０００００（＋３２）となる。そして、演算部２２２は量子化範囲を、−Ａmax＝１１１０００００（−３２）以上、Ａmax−１＝０００１１１１１（＋３１）以下と決定する。
【００５４】
そして、図に示されるように、量子化部２２３は、この量子化範囲に含まれる尤度データを５ビットに量子化する。具体的には、量子化部２２３は、量子化範囲の最大値０００１１１１１（＋３１）の最上位桁である５桁目を、量子化後の符号ビットを除く最上位桁である４桁目に対応付け、以下、量子化前の４桁目を量子化後の３桁目に、量子化前の３桁目を量子化後の２桁目に、量子化前の２桁目を量子化後の１桁目に対応付ける。すなわち、量子化前の５桁目から２桁目のビットを切り出して、量子化後の符号ビットを除く４桁目から１桁目のビットとする。このとき、量子化部２２３は、量子化範囲を外れた尤度データについてはクリップ処理を行う。すなわち、Ａmax＝２5＝０１０００００（＋３２）以上となる尤度データを量子化後の最大値“０１１１１”（＋７）に割り当て、−Ａmax＝１１１０００００（−３２）より小さい尤度データを量子化後の最小値“１００００”（−８）に割り当てる。
【００５５】
なお、図８に示すような尤度データの値の分布に期待される“０”を中心とした対称性から、演算部２２２は各尤度データの絶対値を求めてから、上記の指数位置を特定して、ＣiおよびＦiの分布を求めるようにしてもよい。また、演算部２２２は、各尤度データの値が正あるいは負のどちらか一方の尤度データのみを対象として、上記の指数位置を特定して、ＣiおよびＦiの分布を求めるようにしてもよい。
【００５６】
更に、図８に示した例では、尤度分布に対して各量子化データに対応付ける尤度データの幅を均等にした場合を示しているが、この幅は互いに異なっていてもよい。
このように、尤度データの量子化範囲を決定する際に、尤度データの値の大きさを表す指数位置が同じであるデータ数を求める。そして、指数位置が小さい方からこのデータ数を累積し、所定の閾値を超えた最小の指数位置に基づいて量子化範囲の最大値および最小値を決定する。このようにすると、ビット幅ｎの尤度データに対し、ステップ数ｎの指数位置の分布を求めるだけで量子化範囲を決定するため、ステップ数２nの厳密な分布を求める場合と比べて、この量子化範囲の決定における計算量を削減し、回路規模を縮小することができる。
【００５７】
図９は、量子化前データと量子化後データとの関係を示す模式図である。図９の説明では、演算部２２２がＡmaxを２5＝００１０００００（＋３２）と決定しているものとする。すなわち、量子化範囲は、−Ａmax＝１１１０００００（−３２）以上、Ａmax−１＝０００１１１１１（＋３１）以下である。以下では、量子化部２２３において、各データを５ビットに量子化する場合を示す。
【００５８】
図９（Ａ）は、量子化部２２３への入力尤度データ（量子化前データ）が“０００１００１０”（＋１８）である、すなわち、尤度データ値が量子化範囲内にある場合である。量子化部２２３は、量子化範囲の最大値の指数位置（ＬＳＢから数えて５桁目）から、この指数位置を含めて下位へ４ビット取得する。そして、この４ビットに符号ビット１ビットを付与した５ビットのデータ“０１００１”（＋９）として、量子化後データを生成する。
【００５９】
図９（Ｂ）は、量子化部２２３への入力尤度データ（量子化前データ）が“００１１００１０”（＋５０）のように、量子化範囲の最大値以上である場合である。この場合、量子化部２２３は、量子化後データの実質ビットである４ビットを全て“１”とし、この４ビットに符号ビット１ビットを付与した５ビットのデータ“０１１１１”（＋１５）として、量子化後データを生成する。
【００６０】
図９（Ｃ）は、量子化部２２３への入力尤度データ（量子化前データ）が“１１００１１１０”（−５０）のように、量子化範囲の最小値以下となる場合である。この場合、量子化部２２３は、量子化後データの実質ビットである４ビットを全て“０”とし、この４ビットに符号ビット１ビットを付与した５ビットのデータ“１００００”（−１６）として、量子化後データを生成する。
【００６１】
このようにして得られた量子化データは、復調後に得られる尤度データ間の相対関係を十分に反映したものとなっており、その後の復号処理の精度を維持することができる。また、復調後に得られる尤度データよりもビット幅が削減されるため、復号処理の高速化および回路規模の縮小に寄与する。
【００６２】
［第２の実施の形態］
以下、第２の実施の形態を、図面を参照して詳細に説明する。前述の第１の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【００６３】
第２の実施の形態の受信装置の構成は、図４に示した第１の実施の形態の受信装置２００の構成と同様である。また、受信装置に対して信号を送信する送信装置の機能および構成は、図３に示した第１の実施の形態の送信装置１００の機能および構成と同様である。以下、第２の実施の形態に係る受信装置について、第１の実施の形態に係る受信装置２００と同じ符号を用いて説明する。
【００６４】
受信装置における受信処理の手順の概要は、図６に示した第１の実施の形態の手順と同様である。ただし、第２の実施の形態では、図６のステップＳ１２で示される処理を以下のように実行して、演算部２２２によって決定される量子化範囲に含まれる尤度データ数が閾値Ｎpにより近くなるように量子化範囲を決定する。
【００６５】
図１０は、第２の実施の形態の量子化制御処理の手順を示すフローチャートである。以下、図１０に示す処理をステップ番号に沿って説明する。
［ステップＳ１２１］演算部２２２は、取得した各尤度データのビット列をＭＳＢからＬＳＢに向かって走査し、指数位置を特定する。そして、演算部２２２は、指数位置がｉ（−１≦ｉ≦ｎ−２）である尤度データの個数Ｃiを、受信信号の１フレームに含まれる全尤度データに関して計数する。
【００６６】
［ステップＳ１２２］演算部２２２は、ステップＳ１２１で求めたＣiから累積数Ｆiを、Ｆi＝Ｆi-1＋Ｃi（ただし、Ｆ-2＝０）として算出し、指数位置に対する尤度データの個数の累積分布を求める。
【００６７】
［ステップＳ１２３］演算部２２２は、ｉ＝−１とする。
［ステップＳ１２４］演算部２２２は、Ｆiが所定のデータ数Ｎp（閾値）より大きいかを判定する。大きくない場合、処理がステップＳ１２５に進められる。大きい場合、処理がステップＳ１２６に進められる。
【００６８】
［ステップＳ１２５］演算部２２２は、ｉを１増加させる。そして、処理がステップＳ１２４に進められる。
［ステップＳ１２６］演算部２２２は、Ｎ1＝Ｎp−Ｆi-1、Ｎ2＝Ｆi−Ｎpを計算する。Ｎ1は閾値Ｎpと指数位置ｉ−１までの累積数との差であり、Ｎ2は閾値Ｎpと指数位置ｉまでの累積数との差である。
【００６９】
［ステップＳ１２７］演算部２２２は、Ｎ1とＮ2とを比較し、Ｎ1がＮ2以上かを判定する。Ｎ1がＮ2以上である場合、すなわち、閾値Ｎpが指数位置ｉまでの累積数に近い場合、処理がステップＳ１２８に進められる。Ｎ1がＮ2より小さい場合、すなわち、閾値Ｎpが指数位置ｉ−１までの累積数に近い場合、処理がステップＳ１２９に進められる。
【００７０】
［ステップＳ１２８］演算部２２２は、ｉを１増加させる。
［ステップＳ１２９］演算部２２２は、現在の指数位置ｉに基づいて、量子化範囲の最大値および最小値を求める。具体的には、演算部２２２は、Ａmax＝２iと置くと、量子化範囲の最大値をＡmax−１、最小値を−Ａmaxと決定する。
【００７１】
このように、尤度データの累積数がＮpとなる境界に近い指数位置ｉを量子化範囲を決定する指数位置とする。
図１１は、第２の実施の形態の量子化処理を示す模式図である。以下では、簡単のため正の値となる尤度データのみを示して説明する。
【００７２】
図１１の例では、尤度データとして、“００１０００００”（＋３２）および“０１００００００”（＋６４）が示されている。まず、演算部２２２は、Ｆi＞Ｎpとなるｉが最小のＦiとして、Ｆ5を特定する。そして、演算部２２２は、Ｎ1＝Ｎp−Ｆ4、Ｎ2＝Ｆ5−Ｎpを計算する。ここで、演算部２２２は、Ｎ1＜Ｎ2である場合、量子化範囲を決定する指数位置を“５”とする。また、演算部２２２は、Ｎ1≧Ｎ2である場合、量子化範囲を決定する指数位置を“６”とする。図８の例では、Ｎ1≧Ｎ2の場合であるので、演算部２２２は、量子化範囲を決定する指数位置を“６”とする。そして、演算部２２２は、Ａmax＝２6＝０１００００００（＋６４）と決定し、量子化範囲を−Ａmax＝１１０００００（−６４）以上、Ａmax−１＝００１１１１１１（＋６３）以下と決定する。
【００７３】
このようにすると、第１の実施の形態と同様の効果が実現される。更に、量子化範囲でカバーされる尤度データ数が閾値Ｎpにより近くなるように量子化範囲が調整される。これにより、量子化範囲でカバーされる尤度データの個数が著しく少なくなってしまうことによって有意な尤度データの情報が失われるのを防止することができる。
【００７４】
［第３の実施の形態］
以下、第３の実施の形態を、図面を参照して詳細に説明する。前述の第１の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【００７５】
第３の実施の形態の受信装置の構成は、図４に示した第１の実施の形態の受信装置２００の構成と同様である。また、受信装置に対して信号を送信する送信装置の構成は、図３に示した第１の実施の形態の送信装置１００の構成と同様である。以下、第３の実施の形態に係る受信装置について、第１の実施の形態に係る受信装置２００と同じ符号を用いて説明する。
【００７６】
受信装置における受信データの復号の手順の概要は、図６に示した第１の実施の形態の手順と同様である。ただし、第３の実施の形態では、図６におけるステップＳ１２で示される処理を以下のように実行して、演算部２２２によって決定される量子化範囲に含まれる尤度データ数が閾値Ｎpにより近くなるように量子化範囲を決定する。
【００７７】
図１２は、第３の実施の形態の量子化制御処理の手順を示すフローチャートである。第３の実施の形態では、指数位置より１つ下位のビットが“０”または“１”の何れであるかに応じて、より細かく尤度データを分類して分布を求める。ただし、全ての指数位置に対して１つ下位のビットまで考慮するわけではなく、所定の指数位置以上となる尤度データの場合に考慮するようにする。例えば、指数位置が“４”以上の尤度データについて、指数位置より１つ下位のビットに応じて更に分類するようにする。以下、図１２に示す処理をステップ番号に沿って説明する。
【００７８】
［ステップＳ１３１］演算部２２２は、取得した各尤度データのビット列をＭＳＢからＬＳＢに向かって走査し、指数位置を特定する。そして、演算部２２２は、指数位置がｉ（−１≦ｉ≦ｎ−２）である尤度データの個数Ｃiを、受信信号の１フレームに含まれる全尤度データに関して計数する。ただし、指数位置が所定数ｒ（例えばｒ＝４）以上の場合には、指数位置より１つ下位のビットにも細分化して、尤度データの個数Ｃi,jを計数する。
【００７９】
［ステップＳ１３２］演算部２２２は、ステップＳ１３１で求めたＣiから累積数Ｆiを、Ｆi＝Ｆi-1＋Ｃi（ただし、Ｆ-2＝０）として算出し、指数位置に対する尤度データの個数の累積分布を求める。ただし、演算部２２２は、指数位置がｒ以上である場合には、累積数Ｆi,jをＦi,0＝Ｆi-1,1＋Ｃi,0、Ｆi,1＝Ｆi,0＋Ｃi,1（ただし、Ｆr-1,1＝Ｆr-1）として算出する。
【００８０】
［ステップＳ１３３］演算部２２２は、ｉ＝−１とする。
［ステップＳ１３４］演算部２２２は、累積数が、Ｆi,jとして細分化して求められているか、すなわち、ｉ≧ｒであるかを判定する。細分化されていない場合、処理がステップＳ１３５に移される。細分化されている場合、処理がステップＳ１３７に移される。
【００８１】
［ステップＳ１３５］演算部２２２は、累積数Ｆiが所定のデータ数Ｎp（閾値）より大きいかを判定する。累積数ＦiがＮp以下の場合、処理がステップＳ１３６に進められる。累積数ＦiがＮpより大きい場合、処理がステップＳ１４１に進められる。
【００８２】
［ステップＳ１３６］演算部２２２は、ｉを１増加させる。そして、処理がステップＳ１３４に進められる。
［ステップＳ１３７］演算部２２２は、ｊ＝０とする。
【００８３】
［ステップＳ１３８］演算部２２２は、累積数Ｆi,jが所定のデータ数Ｎpより大きいかを判定する。累積数Ｆi,jがＮp以下の場合、処理がステップＳ１３９に進められる。累積数Ｆi,jがＮpより大きい場合、処理がステップＳ１４１に進められる。
【００８４】
［ステップＳ１３９］演算部２２２は、ｊが最大か（ここではｊ＝１か）を判定する。ｊが最大である場合、処理がステップＳ１３６に進められる。ｊが最大でない場合（ここではｊ＝０の場合）、処理がステップＳ１４０に進められる。
【００８５】
［ステップＳ１４０］演算部２２２は、ｊを１増加させる。そして、処理がステップＳ１３８に進められる。
［ステップＳ１４１］演算部２２２は、指数位置ｉ＋ｊ（ただし、Ｆiが細分化して求められていない場合には、ｊ＝０）に基づいて、量子化範囲の最大値および最小値を求める。具体的には、演算部２２２は、Ａmax＝２i+jと置くと、量子化範囲の最大値をＡmax−１、最小値を−Ａmaxと決定する。
【００８６】
図１３は、第３の実施の形態の量子化処理を示す模式図である。以下では、簡単のため正の値となる尤度データのみを示して説明する。
図１３の例では、指数位置の１つ下位のビットを更に考慮する尤度データは、指数位置が４以上のものとする。すなわち、演算部２２２は、指数位置≧４にて、指数位置よりも１つ下位のビットで更に細分化して尤度データの数の累積分布を算出する。例えば、演算部２２２は、“０００１００００”（＋１６）以上“０００１０１１１”（＋２３）以下の尤度データの数としてＣ4,0を計数し、“０００１１０００”（＋２４）以上“０００１１１１１”（＋３１）以下の尤度データの数としてＣ4,1を計数する。更に、演算部２２２は、Ｆ4,0＝Ｆ4＋Ｃ4,0、Ｆ4,1＝Ｆ4,0＋Ｃ4,1と算出する。演算部２２２は、この結果から量子化範囲に含まれるデータ数Ｎpよりも大きくなる累積数Ｆi,jとしてＦ4,1を特定する。そして、演算部２２２は、Ａmax＝２5を算出し、量子化範囲を−Ａmax＝１１０００００（−３２）以上、Ａmax−１＝００１１１１１（３１）以下と決定する。
【００８７】
このようにすると、第１の実施の形態と同様の効果が実現される。更に、指数位置が所定数ｒ以上である尤度データに関しては、累積対象範囲を、更に細分化して累積数Ｆi,jを求め、累積数Ｆi,0で最初に閾値Ｎpを超える場合には量子化範囲の最大値の最上位桁をｉ桁目とし、累積数Ｆi,1で最初に閾値Ｎpを超える場合には量子化範囲の最大値の最上位桁をｉ＋１桁目とする。これにより、量子化範囲でカバーされる尤度データ数が閾値Ｎpにより近くなるように量子化範囲が調整され、量子化範囲でカバーされる尤度データの個数が著しく少なくなってしまうことによって有意な尤度データの情報が失われるのを防止することができる。
【００８８】
なお、上記の例では、指数位置から１つ下位のビットに応じて区別して累積分布を算出することとしたが、更に下位のビットも用いて区別して累積分布を算出するようにしてもよい。更に、指数位置が大きいほど多くの下位ビットにより細分化して累積分布を算出するようにしてもよい。
【００８９】
［第４の実施の形態］
以下、第４の実施の形態を、図面を参照して詳細に説明する。前述の第１の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【００９０】
第４の実施の形態の受信装置の構成は、図４に示した第１の実施の形態の受信装置２００の構成と同様である。また、受信装置に対して信号を送信する送信装置の構成は、図３に示した第１の実施の形態の送信装置１００の構成と同様である。以下、第４の実施の形態に係る受信装置について、第１の実施の形態に係る受信装置２００と同じ符号を用いて説明する。
【００９１】
受信装置における受信データの復号の手順の概要は、図６に示した第１の実施の形態の手順と同様である。ただし、第４の実施の形態では、図６のステップＳ１２で示される処理を以下のように実行して、量子化範囲を通信環境によって調整する。
【００９２】
図１４は、第４の実施の形態の量子化制御処理の手順を示すフローチャートである。以下、図１４に示す処理をステップ番号に沿って説明する。
［ステップＳ１５１］演算部２２２は、取得した各尤度データのビット列をＭＳＢからＬＳＢに向かって走査し、指数位置を特定する。そして、演算部２２２は、指数位置がｉ（−１≦ｉ≦ｎ−２）である尤度データの個数Ｃiを、受信信号の１フレームに含まれる全尤度データに関して計数する。
【００９３】
［ステップＳ１５２］演算部２２２は、ステップＳ１５１で求めたＣiから累積数Ｆiを、Ｆi＝Ｆi-1＋Ｃi（ただし、Ｆ-2＝０）として算出し、指数位置に対する尤度データの個数の累積分布を求める。
【００９４】
［ステップＳ１５３］演算部２２２は、求めたＣiの中で最大のＣiであるＣpeakを特定する。
［ステップＳ１５４］演算部２２２は、ｉ＝−１とする。
【００９５】
［ステップＳ１５５］演算部２２２は、Ｆiが所定のデータ数Ｎpより大きいかを判定する。大きくない場合、処理がステップＳ１５６に進められる。大きい場合、処理がステップＳ１５７に進められる。
【００９６】
［ステップＳ１５６］演算部２２２は、ｉを１増加させる。そして、処理がステップＳ１５５に進められる。
［ステップＳ１５７］演算部２２２は、Ｃpeakが所定のピーク閾値ＮTh以上かを判定する。ＣpeakがＮTh以上である場合、処理がステップＳ１５８に移される。ＣpeakがＮTh以上でない場合、処理がステップＳ１５９に移される。ＮThは、例えば、通信環境によって定められる所定の割合ＰTh（０＜ＰTh≦１）と、１フレームに含まれる尤度データの個数Ｎcとによって、ＮTh＝Ｎc×ＰThと定められる。
【００９７】
［ステップＳ１５８］演算部２２２は、ｉを１増加させる。
［ステップＳ１５９］演算部２２２は、現在の指数位置ｉに基づいて、量子化範囲の最大値および最小値を求める。具体的には、演算部２２２は、Ａmax＝２iと置くと、量子化範囲の最大値をＡmax−１、最小値を−Ａmaxと決定する。
【００９８】
図１５は、第４の実施の形態における量子化処理を示す模式図である。
図１５の例では、Ｆi＞Ｎpとなる最小の指数位置は４である。ここで、環境Ａの場合、Ｃpeakが閾値ＮTh以上であるので、Ａmax＝２4+1として量子化範囲を決定する。一方、環境Ｂの場合、Ｃpeakが閾値ＮThよりも小さいので、Ａmax＝２4として量子化範囲を決定する。
【００９９】
環境Ａは、信号が受ける雑音として、加法的白色ガウス雑音（ＡＷＧＮ：Additive White Gaussian Noise）を想定した場合である。ＡＷＧＮは、例えば、熱雑音に起因する。環境Ｂは、無線通信の経路で信号がフェージングの影響を大きく受けて、受信レベルの分散が非常に大きいような場合である。ここで、環境Ａの場合、量子化範囲を広く取ることで、量子化後の軟判定データが最大値の近傍に密集した分布になるのを防ぐことが復号処理の精度を向上する上では好ましい。このため、指数位置に更に１を加えて量子化範囲の境界値Ａmaxを決定する。
【０１００】
このように、量子化範囲の決定手順で、信号に混入した雑音状況を考慮して量子化範囲を調整することで、復号処理を正しく実行するための精度を向上することができる。
［第５の実施の形態］
以下、第５の実施の形態を、図面を参照して詳細に説明する。前述の第１の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【０１０１】
第５の実施の形態の受信装置の構成は、図４に示した第１の実施の形態の受信装置２００の構成と同様である。また、受信装置に対して信号を送信する送信装置の構成は、図３に示した第１の実施の形態の送信装置１００の構成と同様である。以下、第５の実施の形態に係る受信装置について、第１の実施の形態に係る受信装置２００と同じ符号を用いて説明する。
【０１０２】
受信装置における受信データの復号の手順の概要は、図６に示した第１の実施の形態の手順と同様である。ただし、第５の実施の形態では、図６のステップＳ１２で示される処理を以下のように実行して、量子化範囲を決定する。
【０１０３】
図１６は、第５の実施の形態の量子化制御処理の手順を示すフローチャートである。以下、図１６に示す処理をステップ番号に沿って説明する。
［ステップＳ１６１］演算部２２２は、取得した各尤度データのビット列をＭＳＢからＬＳＢに向かって走査し、指数位置を特定する。そして、演算部２２２は、指数位置がｉ（−１≦ｉ≦ｎ−２）である尤度データの個数Ｃiを、受信信号の１フレームに含まれる全尤度データ（１０００〜１００００個程度）に関して計数する。
【０１０４】
［ステップＳ１６２］演算部２２２は、ステップＳ１６１で求めたＣiから累積数Ｆiを、Ｆi＝Ｆi-1＋Ｃi（ただし、Ｆ-2＝０）として算出する。
［ステップＳ１６３］演算部２２２は、ｉ＝−１とする。
【０１０５】
［ステップＳ１６４］演算部２２２は、Ｆiが所定のデータ数ＮL（閾値）より大きいかを判定する。大きくない場合、処理がステップＳ１６５に進められる。大きい場合、処理がステップＳ１６６に進められる。ここで、ＮLは量子化後データの０（ビット幅５の場合“０００００”）に対応付けられるべき尤度データの個数であり、所定の割合ＰL（０＜ＰL≦１）と１フレームに含まれる尤度データの個数Ｎcとから、ＮL＝Ｎc×ＰLと求められる。なお、ＰLは、情報ビット数、符号化率および変調方式などによって決まる伝送フォーマットを考慮して設定するものとし、例えば、ＰL＝０．１が予め設定される。
【０１０６】
［ステップＳ１６５］演算部２２２は、ｉを１増加させる。そして、処理がステップＳ１６４に進められる。
［ステップＳ１６６］演算部２２２は、量子化後の軟判定データのビット幅ｍと現在のｉの値からｋ＝ｉ＋ｍ−１を計算する。このｋは、量子化範囲の最大値の最上位桁を表している。
【０１０７】
［ステップＳ１６７］演算部２２２は、ステップＳ１６６で計算したｋの値に基づいて、量子化範囲の最大値および最小値を求める。すなわち、演算部２２２は、Ａmax＝２kと置き、量子化範囲の最大値をＡmax−１、最小値を−Ａmaxと決定する。
【０１０８】
なお、上記の割合ＰLの設定方法としては、上述した割合Ｐと同様に、変調信号のＳＮＲやこれに順ずる信頼度の測定量に従って適応的に変更することも考えられる。また、再送制御を行う場合には、再送回数に応じて変更することも考えられる。
【０１０９】
図１７は、第５の実施の形態の量子化処理を示す模式図である。以下では、簡単のため正の値となる尤度データのみを示して説明する。
図１７の例では、累積数が最初に閾値ＮLを超えるときの指数位置が“１”であり、量子化後データのビット幅が“５”であるので、ｋ＝１＋５−１となり、Ａmax＝２5＝００１０００００（＋３２）と算出される。この結果、演算部２２２は量子化範囲を、−Ａmax＝１１１０００００（−３２）以上、Ａmax−１＝０００１１１１１（＋３１）以下と決定する。
【０１１０】
なお、累積数が最初に閾値ＮLを超えるときの指数位置から求まるＡmin＝２1＝００００００１０（＋２）は、量子化ステップを意味する。すなわち、量子化前のＡmin＝００００００１０（＋２）が量子化後の００００１（＋１）に対応付けられ、量子前の２×Ａmin＝０００００１００（＋４）が量子化後の０００１０（＋２）に対応付けられ、量子化前の３×Ａmin＝０００００１１０（＋６）が量子化後の０００１１（＋３）に対応付けられるというように、Ａminが対応付けの最小単位となり、Ａmin未満の値は切り捨てられることを意味している。
【０１１１】
このようにすると、第１の実施の形態と同様の効果が実現される。特に、量子化によって下位何ビットが切り捨てられるべきかを計算し、これから逆算して量子化範囲を決定するため、過度に多くの下位ビットが切り捨てられることを確実に防止できる。
【０１１２】
なお、Ａminの決定方法としては、第２，３の実施の形態で示したＡmaxを決定する手順と同様に、ＮLにより近いＡminを与えるようにしてもよい。すなわち、指数位置ｉで累積数が最初に閾値ＮLを超えるとき、ＮL、Ｆi、Ｆi+1を比較してＡminを決定することが考えられる。
【０１１３】
以上、第１〜第５の実施の形態では、受信装置２００にてデータの復号ができなかった場合には、このデータを破棄し、送信装置１００に対して同じデータの再送を依頼する。一方、以降の実施の形態では、更に受信データの復号に際しての信頼性を向上させるため、送信されるデータに対してレペティション（ビット反復）によるレートマッチング処理を施す、または、ＨＡＲＱ（Hybrid Automatic Repeat reQuest）合成を行う場合を例示する。
【０１１４】
［第６の実施の形態］
以下、第６の実施の形態を、図面を参照して詳細に説明する。前述の第１の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【０１１５】
第６の実施の形態は、受信装置側でのデータの復号精度を向上させるために、送信装置側で送信データにレートマッチング処理としてレペティションを施す場合である。
ここで、レペティションでは、送信装置にて所定の送信単位のデータ長（フレーム長）に対して送信しようとしているデータが短い場合、データに含まれる一部または全部のビットを反復させてデータの送信を行う。このようにすると、受信装置側で反復された同一のデータを足し合わせることでＳＮＲを向上させることができる。
【０１１６】
この場合、受信装置は、量子化後の軟判定データに対してデレペティション（反復ビットの加算）を行い、その後再度量子化を行うようにする。これは、ビット幅ｍの軟判定データに対してデレペティション処理を行うと、得られる軟判定データのビット数がｍを超えてしまう可能性があるためである。
【０１１７】
図１８は、第６の実施の形態の送信装置の機能（一部）を示すブロック図である。送信装置１００ａは、コーデック部１１０ａおよびモデム部１２０（図１８では図示せず）を有する。モデム部１２０の機能および構成は、図３に示した第１の実施の形態の送信装置１００と同様である。
【０１１８】
コーデック部１１０ａは、誤り検出符号化部１１１、誤り訂正符号化部１１２、パターン指定部１１３、フィードバック情報抽出部１１４、再送制御部１１５およびレートマッチング部１１６を有する。ここで、誤り検出符号化部１１１、誤り訂正符号化部１１２、パターン指定部１１３、フィードバック情報抽出部１１４および再送制御部１１５の機能は、第１の実施の形態に係る送信装置１００と同様である。ただし、パターン指定部１１３の誤り訂正符号化データの出力先は、レートマッチング部１１６となる。
【０１１９】
レートマッチング部１１６は、誤り訂正符号化データに対して、レペティションを行い、この処理の結果（フレームデータ）をモデム部１２０へ出力する。このとき、レートマッチング部１１６は、例えば、レペティションの対象となるビット範囲と反復数とを表す情報をフレームデータに付加する。受信装置２００は、付加された情報に基づいて同一内容のデータ同士を足し合わせることで反復ビットの合成を行うことができる。
【０１２０】
図１９は、第６の実施の形態の受信装置の機能（一部）を示すブロック図である。
受信装置２００ａは、モデム部２１０（図１９では図示せず）およびコーデック部２２０ａを有する。ここで、モデム部２１０の機能および構成は、図４に示した第１の実施の形態における受信装置２００と同様である。
【０１２１】
コーデック部２２０ａは、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６、制御情報符号化部２２７、デレートマッチング部２２８、再量子化演算部２２８ａおよび再量子化部２２８ｂを有する。
【０１２２】
ここで、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６および制御情報符号化部２２７の機能は、第１の実施の形態に係る受信装置２００と同様である。ただし、量子化部２２３は、デレートマッチング部２２８に対して量子化後データを出力する。
【０１２３】
デレートマッチング部２２８は、量子化部２２３から量子化後データを受け付ける。デレートマッチング部２２８は、受け付けたデータが送信装置１００ａにおいてレートマッチング処理されている場合には、このレートマッチングと逆の処理を行う。例えば、送信装置１００ａにおいてレペティション処理が行われている場合、同一内容のデータに対応する軟判定データ同士を足し合わせる（レペティション合成）。
【０１２４】
再量子化演算部２２８ａは、デレートマッチング部２２８から出力された合成後データ（量子化部２２３の出力時点のビット幅ｍよりもビット幅の大きい軟判定データ）に対して、演算部２２２と同様の処理を行う。すなわち、再量子化演算部２２８ａは、指数位置が同じである合成後データ数を計数する。そして、再量子化演算部２２８ａは、指数位置が小さい方からこの計数結果を累積する。再量子化演算部２２８ａは、この累積結果に基づいて、Ａmaxを計算して合成後データの量子化範囲を決定する。
【０１２５】
なお、再量子化演算部２２８ａは合成後データの絶対値に関して、指数位置の特定を行ってもよい。また、再量子化演算部２２８ａは、合成後データの値が正あるいは負のどちらか一方のデータのみを参照して、指数位置の特定を行ってもよい。
【０１２６】
再量子化部２２８ｂは、デレートマッチング部２２８による合成後データを、例えば、受信信号のフレーム単位で取得する。そして、再量子化部２２８ｂは、再量子化演算部２２８ａで決定された量子化範囲に基づいて、取得した合成後データを量子化部２２３と同様にｍビットに量子化し、誤り訂正復号部２２４に出力する。ここで、再量子化部２２８ｂは、この量子化範囲に属さない合成後データについてクリップ処理を行う。すなわち、量子化範囲より大きい合成後データに関しては、再量子化後データの最大値に対応付ける。また、量子化範囲より小さい合成後データに関しては、再量子化後データの最小値に対応付ける。
【０１２７】
図２０は、第６の実施の形態の受信処理の手順を示すフローチャートである。以下、図２０に示す処理をステップ番号に沿って説明する。なお、送信装置１００ａのレートマッチング部１１６にて、レペティションが行われているものとする。
【０１２８】
［ステップＳ２１］復調部２１１は、受信した信号を復調する。そして、復調部２１１は、各受信信号のレベルに基づいてビット幅ｎの尤度データを生成する。
［ステップＳ２２］演算部２２２は、フレームを構成するＮc個の尤度データに関して指数位置が同じ尤度データを計数する。そして、演算部２２２は、計数した結果を指数位置が小さい方から累積する。演算部２２２は、この累積結果から量子化範囲を決定する。量子化範囲の具体的な決定方法としては、第１〜第５の実施の形態で示したような方法を採用することができる。
【０１２９】
［ステップＳ２３］量子化部２２３は、バッファメモリ２２１からＮc個の尤度データを順次取得して、演算部２２２によって決定された量子化範囲に基づいて、ビット幅ｎからビット幅ｍ（ｍ＜ｎ）への尤度データの量子化を行う。なお、量子化部２２３は、この量子化範囲に属さない尤度データのうち量子化範囲より大きい尤度データに関しては、量子化後データの最大値に対応付ける。また、量子化範囲より小さい尤度データに関しては、量子化後データの最小値に対応付ける。
【０１３０】
［ステップＳ２４］デレートマッチング部２２８は、量子化部２２３によるビット幅ｍの量子化後データに関して、レートマッチング処理が施された反復データを足し合わせることによって、レペティション合成を行う。
【０１３１】
［ステップＳ２５］再量子化演算部２２８ａは、レペティション合成後データに関して指数位置が同じデータを計数する。そして、再量子化演算部２２８ａは、計数した結果を指数位置が小さい方から累積する。再量子化演算部２２８ａは、上記累積の結果に基づいて、合成後データの再量子化範囲を決定する。再量子化における量子化範囲の具体的な決定方法としては、第１〜第５の実施の形態で示したような方法を採用することができる。
【０１３２】
［ステップＳ２６］再量子化部２２８ｂは、デレートマッチング部２２８からビット幅がｍより大きいレペティション合成後データを、例えば、フレーム単位で取得する。そして、取得したレペティション合成後データを再量子化演算部２２８ａによって決定された量子化範囲に基づき、ビット幅ｍに量子化する。
【０１３３】
［ステップＳ２７］誤り訂正復号部２２４は、再量子化部２２８ｂから受け付けたデータに関して誤り訂正復号処理を行う。
［ステップＳ２８］誤り検出部２２５は、復号されたデータに対して誤り検出符号に基づいて、誤り検出を行う。誤りを検出しない場合、誤り検出部２２５は、復号データを受信データとして出力し、処理が完了する。更に、この場合、受信装置２００から送信装置１００にＡＣＫが送信される。また、誤りを検出した場合、誤り検出部２２５は、ＮＡＣＫ／ＡＣＫ判定部２２６に誤りを検出した旨を通知して、処理がステップＳ２９に移される。
【０１３４】
［ステップＳ２９］ＮＡＣＫ／ＡＣＫ判定部２２６は、誤り検出部２２５から復号されたデータに関して誤りを検出した旨の通知を受け付けると、制御情報符号化部２２７に対して、送信装置１００ａに送信するためのＮＡＣＫ情報を出力する。制御情報符号化部２２７は、ＮＡＣＫ／ＡＣＫ判定部２２６から受け付けたＮＡＣＫ情報を符号化し、変調部２１２を介して送信装置１００ａに送信する。
【０１３５】
このように、量子化後にビット幅が増加したレペティション合成後のデータに関して再度指数位置の累積分布を求めて、再量子化の量子化範囲を決定する。再量子化部２２８ｂは、レペティション合成後データを再度量子化することで、レペティション合成を行うことで生じる合成後データの増加分ビットを削減する。これにより、誤り訂正復号や誤り検出といった処理における計算量を削減することができる。
【０１３６】
また、ビット幅がｍからｒだけ増加した合成後データに対し、ｍ＋ｒステップの指数位置の分布を求めるだけで量子化範囲を決定するため、ステップ数２m+rの厳密な分布を求める場合と比べて、この量子化範囲の決定における計算量を削減することができる。
【０１３７】
［第７の実施の形態］
以下、第７の実施の形態を、図面を参照して詳細に説明する。前述の第１、第６の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【０１３８】
図２１は、第７の実施の形態の受信装置の機能（一部）を示すブロック図である。受信装置２００ｂに対して信号を送信する送信装置の機能および構成は、図１８に示した第６の実施の形態の送信装置１００ａと同様である。
【０１３９】
受信装置２００ｂは、モデム部２１０（図２１では図示せず）およびコーデック部２２０ｂを有する。ここで、モデム部２１０の機能および構成は、図４に示した第１の実施の形態における受信装置２００と同様である。
【０１４０】
コーデック部２２０ｂは、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６、制御情報符号化部２２７、デレートマッチング部２２８、再量子化演算部２２８ｃおよび再量子化部２２８ｄを有する。
【０１４１】
ここで、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６、制御情報符号化部２２７およびデレートマッチング部２２８の機能は、図１９に示した第６の実施の形態に係る受信装置２００ａと同様である。ただし、演算部２２２は、計数した尤度データの総数（例えば、フレーム単位に含まれる尤度データの数）を、再量子化演算部２２８ｃに通知する。また、デレートマッチング部２２８は、レペティション合成後の軟判定データの総数を再量子化演算部２２８ｃに通知する。
【０１４２】
再量子化演算部２２８ｃは、レペティション合成後データのビット幅を削減するためのシフト量（何ビット右シフトすればよいか、すなわち、下位何ビットを削ればよいか）を算出する。具体的には、再量子化演算部２２８ｃは、シフト量の算出で使用する変数として、演算部２２２から１フレームに含まれるレペティション合成前の尤度データの総数を取得する。また、再量子化演算部２２８ｃは、デレートマッチング部２２８から１フレームに対応するレペティション合成後の軟判定データの総数を取得する。そして、この２つの値から、実質ビットが平均で何ビット増加しているかを推定してシフト量とする。
【０１４３】
再量子化部２２８ｄは、デレートマッチング部２２８による合成後データを、例えば、受信信号のフレーム単位で取得する。そして、再量子化部２２８ｄは、再量子化演算部２２８ｃにより算出されたシフト量に基づいて、レペティション合成後の各軟判定データをシフト演算によってビット幅ｍに再量子化する。
【０１４４】
図２２は、第７の実施の形態の受信処理の手順を示すフローチャートである。以下、図２２に示す処理をステップ番号に沿って説明する。なお、送信装置１００ａにて、レペティションが行われているものとする。更に、ステップＳ２１〜ステップＳ２４およびステップＳ２７〜ステップＳ２９に関しては、図２０に示した第６の実施の形態の受信処理の手順と同一である。
【０１４５】
［ステップＳ２５ａ］再量子化演算部２２８ｃは、レペティション合成後データをビット幅ｍに再量子化するための右シフト量ｒｓｈを、以下の（１）式により算出する。
【０１４６】
【数１】
2010154144.tif 000003
【０１４７】
ここで、Ｎrepはレペティション合成前のデータ数であり、Ｎcompはレペティション合成後のデータ数である。また、ｒｏｕｎｄｏｆｆは、小数点以下を四捨五入することを表す。これらＮrepとＮcompとの対数比（底は２とする）によって、実質ビットが平均で何ビット増加したかを推定してシフト量を算出する。
【０１４８】
［ステップＳ２６ａ］再量子化部２２８ｄは、各合成後データをｒｓｈビット右シフトする。そして、再量子化部２２８ｄは、シフト後データの下位からｍ−１ビットを取得し、これに符号ビットを付加したｍビットのビット列を再量子化後データとする。ただし、再量子化後の軟判定データが取りうる値の範囲は、Ａq＝２m-1として、−Ａq以上Ａq−１以下であるから、右シフト演算後の値がこの範囲を超える場合にはクリップ処理を行う。すなわち、再量子化部２２８ｄは、ある右シフト演算後のデータＸoがＸo＞Ａq−１である場合、Ａq−１を再量子化後データとする。また、Ｘo＜−Ａqである場合、−Ａqを再量子化後データとする。
【０１４９】
ここで、上記のステップＳ２５ａに関して、例えば、レペティション前のデータ数がＮrep＝１００００であり、レペティション合成後のデータ数がＮcomp＝２５００である場合、ＮrepとＮcompとの比は４である。よって、レペティションによる繰り返し数が平均して４回であり、合成後データの実質ビットは最大でｌｏｇ2４＝２ビット増加すると推定される。これにより、再量子化部２２８ｄは、合成後データをｒｓｈ＝２だけ右シフトすれば、ビット幅ｍで再量子化される。
【０１５０】
なお、（１）式では、ｒｓｈをｒｏｕｎｄｏｆｆ（小数点以下を四捨五入）によって求めているが、ｒｏｕｎｄｕｐ（小数点以下を切り上げ）やｒｏｕｎｄｄｏｗｎ（小数点以下を切り捨て）によって求めてもよい。
【０１５１】
図２３は、第７の実施の形態の量子化処理を示す模式図である。図２３では、量子化部２２３の出力であるビット幅５の量子化後の値＃１が“００１１０”（＋６）、量子化後の値＃２が“０１１００”（＋１２）としている。ここで、デレートマッチング部２２８によってこの２つの値が加算（レペティション合成）されると、合成後データ“０１００１０”（＋１８）が得られる。この合成後データは、再量子化部２２８ｄによって、右シフト演算のみで再度量子化されて、ビット幅５の再量子化後データ“０１００１”（＋９）に変換される。
【０１５２】
具体的には、再量子化演算部２２８ｃは、まずレペティション合成前後の軟判定データの総数によって合成後データの右シフト量ｒｓｈを計算する。例えば、レペティション前のデータ数をＮrep＝１００００、レペティション後のデータ数をＮcomp＝５０００とすると、（１）式により右シフト量をｒｓｈ＝ｌｏｇ2（１００００／５０００）＝ｌｏｇ2２＝１ビットと計算する。これにより、上記レペティション合成後データは、再量子化部２２８ｄによって１ビット右シフトされ、シフト後データ“００１００１”（＋９）が得られる。そして、再量子化部２２８ｄは、シフト後データの下位から４ビットを取得し、この４ビットに符号ビットを１ビット加えて５ビットの再量子化後データ“０１００１”（＋９）を得る。
【０１５３】
このように、レペティション合成後の軟判定データに対するシフト量を合成前後のデータ数から計算して、シフト演算のみで合成後の軟判定データをビット幅ｍに再量子化する。これによって、再度累積分布を求めて量子化範囲を決定する場合に比べて更に計算量を削減することができる。
【０１５４】
［第８の実施の形態］
以下、第８の実施の形態を、図面を参照して詳細に説明する。前述の第１の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【０１５５】
本実施の形態は、受信装置において、受信データの復号精度を向上するために、ＨＡＲＱによる再送制御を行う場合である。この場合、受信装置でＨＡＲＱ合成処理の後に再度量子化が行われるようにする。
【０１５６】
ここで、ＨＡＲＱによる再送制御では、受信装置は、受信したデータを正しく復号できなかった場合に、この復号失敗データを破棄せずに保持しておき、再送されるデータと合成することで誤り訂正能力を向上する。ＨＡＲＱ合成法には、例えば、ＩＲ（Incremental Redundancy）合成がある。
【０１５７】
ＩＲ合成では、送信装置がパンクチャリング（情報の間引き）により、初回送信時には誤り訂正用のパリティビットの一部を除いて送信し、再送時には未送信の誤り訂正用のパリティビットを送信する。そして、送信装置で、以前に受信した復号失敗データとパリティビットとを合成して復号することで誤り訂正能力を向上する。
【０１５８】
この他にも、ＨＡＲＱ合成法には、例えば、Ｃｈａｓｅ合成がある。Ｃｈａｓｅ合成は、復号失敗データと同一のデータを復号失敗に応じて繰り返し再送し、受信装置で両データを合成することでダイバーシティの効果により誤り訂正能力を向上する合成法である。
【０１５９】
以下では、このようなＨＡＲＱ合成後の量子化を行う受信装置の構成を示す。
図２４は、第８の実施の形態の受信装置の機能（一部）を示すブロック図である。受信装置２００ｃに対して信号を送受信する送信装置の機能および構成は、図３に示した第１の実施の形態の送信装置１００と同様である。
【０１６０】
受信装置２００ｃは、モデム部２１０（図２４では図示せず）およびコーデック部２２０ｃを有する。ここで、モデム部２１０の機能および構成は、図４に示した第１の実施の形態と同様である。
【０１６１】
コーデック部２２０ｃは、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６、制御情報符号化部２２７、ＨＡＲＱ合成部２２９、メモリ２２９ａ、再量子化演算部２２９ｂおよび再量子化部２２９ｃを有する。ここで、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６および制御情報符号化部２２７の機能は、図４に示した第１の実施の形態と同様である。
【０１６２】
ただし、演算部２２２は、尤度データの累積分布において累積数が所定の閾値を超えるときの指数位置を、ＨＡＲＱ合成部２２９に通知する。また、量子化部２２３は、ビット幅ｎからビット幅ｍ（ｍ＜ｎ）へとビット幅を削減した量子化後データをＨＡＲＱ合成部２２９に出力する。
【０１６３】
ＨＡＲＱ合成部２２９は、メモリ２２９ａから前回の受信データ（量子化後データ）を取得すると共に、量子化部２２３から再送データ（量子化後データ）を取得し、各データ受信時のレベル（尤度データのレベル）の比による重み付けをして合成（最大比合成）する。ＨＡＲＱ合成部２２９は、各データ受信時のレベルを演算部２２２から取得した指数位置によって特定することができる。なお、ＨＡＲＱ合成部２２９は、初回のデータ受信時には、メモリ２２９ａに合成するためのデータが格納されていないため、入力データがそのまま合成後データとなる。
【０１６４】
メモリ２２９ａは、復号に失敗した再量子化後データを記憶する。また、そのデータに対応付けて、その量子化後データを得る際の演算部２２２の処理で得られた指数位置を記憶する。なお、メモリ２２９ａに記憶された再量子化後データは、誤り検出部２２５において正常に復号されたと判定された場合に破棄される。
【０１６５】
再量子化演算部２２９ｂは、ＨＡＲＱ合成部２２９から出力されたＨＡＲＱ合成後データ（量子化部２２３の出力時点のビット幅ｍよりもビット幅の大きい軟判定データ）に対して、演算部２２２と同様の処理を行う。すなわち、再量子化演算部２２９ｂは、指数位置が同じであるＨＡＲＱ合成後データ数を計数する。そして、再量子化演算部２２９ｂは、指数位置が小さい方からこの計数結果を累積する。再量子化演算部２２９ｂは、この累積結果に基づいて、Ａmaxを計算してＨＡＲＱ合成後データの量子化範囲を決定する。
【０１６６】
なお、再量子化演算部２２９ｂは、ＨＡＲＱ合成後データの絶対値に関して指数位置の特定を行ってもよい。また、再量子化演算部２２９ｂは、ＨＡＲＱ合成後データの値が正あるいは負のどちらか一方のデータのみを参照して、指数位置の特定を行ってもよい。
【０１６７】
再量子化部２２９ｃは、ＨＡＲＱ合成部２２９よるＨＡＲＱ合成後のデータを、例えば、受信信号のフレーム単位で取得する。そして、再量子化部２２９ｃは、再量子化演算部２２９ｂで決定された量子化範囲に基づいて、取得したＨＡＲＱ合成後データを量子化部２２３と同様にｍビットに量子化し、誤り訂正復号部２２４に出力する。ここで、再量子化部２２９ｃは、この量子化範囲に属さないＨＡＲＱ合成後データについてクリップ処理を行う。すなわち、量子化範囲より大きいＨＡＲＱ合成後データに関しては、再量子化後データの最大値に対応付ける。また、量子化範囲より小さいＨＡＲＱ合成後データに関しては、再量子化後データの最小値に対応付ける。更に、再量子化部２２９ｃは、再量子化後データをメモリ２２９ａに格納する。
【０１６８】
ここで、以下にＨＡＲＱ合成部２２９による保存データと再送データとの合成（加算）処理に関して説明する。
まず、ＨＡＲＱ合成部２２９は、再送データに関して、演算部２２２が算出したＡmaxを与える指数位置Ｉ0を演算部２２２から受け付ける。メモリ２２９ａは、前回の受信データ（保存データ）と共に、その保存データの量子化時のＡmaxを与える指数位置Ｉ1を記憶している。
【０１６９】
そして、ＨＡＲＱ合成部２２９は、再量子化前ビット数の差ｌｓｈを以下の式により算出する。
【０１７０】
【数２】
2010154144.tif 000004
【０１７１】
その後、ＨＡＲＱ合成部２２９は、Ｉ0がＩ1よりも大きい場合は、再送データをｌｓｈビット左シフトした後に合成を実行する。また、ＨＡＲＱ合成部２２９は、Ｉ1がＩ0よりも大きい場合は、保存データをｌｓｈビット左シフトした後に合成を実行する。これにより、復調後に得られる尤度データのレベル比が復元されて、前回分の量子化データと再送分の量子化データとが合成される。
【０１７２】
図２５は、第８の実施の形態の受信処理の手順を示すフローチャートである。以下、図２５に示す処理をステップ番号に沿って説明する。
［ステップＳ３１］復調部２１１は、受信した信号を復調する。そして、復調部２１１は、各受信信号のレベルに基づいてビット幅ｎの尤度データを生成する。
【０１７３】
［ステップＳ３２］演算部２２２は、フレームを構成するＮc個の尤度データに関して指数位置が同じ尤度データを計数する。そして、演算部２２２は、計数した結果を指数位置が小さい方から累積する。演算部２２２は、この累積結果から量子化範囲を決定する。量子化範囲の具体的な決定方法としては、第１〜第５の実施の形態で示したような方法を採用することができる。なお、第１〜第５の実施の形態で示した割合Ｐ，ＰLの値は、再送回数に応じて変更することも考えられる。
【０１７４】
［ステップＳ３３］量子化部２２３は、バッファメモリ２２１からＮc個の尤度データを順次取得して、演算部２２２によって決定された量子化範囲に基づいて、ビット幅ｎからビット幅ｍ（ｍ＜ｎ）への尤度データの量子化を行う。なお、量子化部２２３は、この量子化範囲に属さない尤度データのうち量子化範囲より大きい尤度データに関しては、量子化後データの最大値に対応付ける。また、量子化範囲より小さい尤度データに関しては、量子化後データの最小値に対応付ける。
【０１７５】
［ステップＳ３４］ＨＡＲＱ合成部２２９は、前回受信分の復号に失敗した量子化後データと再送分の量子化後データとを量子化前のレベル（尤度データのレベル）に応じて重み付けしてＨＡＲＱ合成する。
【０１７６】
［ステップＳ３５］再量子化演算部２２９ｂは、ＨＡＲＱ合成後データに関して指数位置が同じデータを計数する。そして、再量子化演算部２２９ｂは、計数した結果を指数位置が小さい方から累積する。再量子化演算部２２９ｂは、上記累積の結果に基づいて、合成後データの再量子化範囲を決定する。再量子化における量子化範囲の具体的な決定方法としては、第１〜第５の実施の形態で示したような方法を採用することができる。
【０１７７】
［ステップＳ３６］再量子化部２２９ｃは、ＨＡＲＱ合成部２２９からビット幅がｍより大きいＨＡＲＱ合成後データを、例えば、フレーム単位で取得して、再量子化演算部２２９ｂによって決定された再量子化範囲に基づいて、ビット幅ｍへの再量子化を行う。再量子化部２２９ｃは、再量子化後データをメモリ２２９ａに格納する。
【０１７８】
［ステップＳ３７］誤り訂正復号部２２４は、再量子化部２２９ｃから受け付けたデータに関して誤り訂正復号処理を行う。
［ステップＳ３８］誤り検出部２２５は、復号されたデータに対して誤り検出符号に基づいて、誤り検出を行う。誤りを検出しない場合、誤り検出部２２５は、復号データを受信データとして出力し、処理が完了する。更に、この場合、受信装置２００ｃから送信装置１００にＡＣＫが送信され、また、メモリ２２９ａに格納された再量子化後データは破棄される。また、誤りを検出した場合、誤り検出部２２５は、ＮＡＣＫ／ＡＣＫ判定部２２６に誤りを検出した旨を通知して、処理がステップＳ３９に移される。
【０１７９】
［ステップＳ３９］ＮＡＣＫ／ＡＣＫ判定部２２６は、誤り検出部２２５から復号されたデータに関して誤りを検出した旨の通知を受け付けると、制御情報符号化部２２７に対して、送信装置１００に送信するためのＮＡＣＫ情報を出力する。制御情報符号化部２２７は、ＮＡＣＫ／ＡＣＫ判定部２２６から受け付けたＮＡＣＫ情報を符号化し、変調部２１２を介して送信装置１００に送信する。
【０１８０】
このように、量子化後にビット幅が増加したＨＡＲＱ合成後の尤度データに関して再度指数位置の累積分布を求めて、再量子化の量子化範囲を決定する。
ＨＡＲＱ合成後データを再量子化部２２９ｃにより再度量子化処理を行うことで、ＨＡＲＱ合成を行うことで生じる合成後データの増加分ビットを削減する。これにより、誤り訂正復号や誤り検出といった処理における計算量を削減し、回路規模を縮小することができる。
【０１８１】
また、ビット幅がｍからｒだけ増加したＨＡＲＱ合成後データに対し、ｍ＋ｒステップの指数位置の分布を求めるだけで量子化範囲を決定するため、ステップ数２m+rの厳密な分布を求める場合と比べて、この再量子化範囲の決定における計算量を削減することができる。
【０１８２】
［第９の実施の形態］
以下、第９の実施の形態を、図面を参照して詳細に説明する。前述の第１、第８の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【０１８３】
図２６は、第９の実施の形態の受信装置の機能（一部）を示すブロック図である。受信装置２００ｄに対して信号を送信する送信装置の機能および構成は、図３に示した第１の実施の形態の送信装置１００と同様である。
【０１８４】
受信装置２００ｄは、モデム部２１０（図２６では図示せず）およびコーデック部２２０ｄを有する。ここで、モデム部２１０の機能および構成は、図４に示した第１の実施の形態と同様である。
【０１８５】
コーデック部２２０ｄは、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６、制御情報符号化部２２７、ＨＡＲＱ合成部２２９、メモリ２２９ａ、再量子化演算部２２９ｄおよび再量子化部２２９ｅを有する。ここで、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６および制御情報符号化部２２７、ＨＡＲＱ合成部２２９およびメモリ２２９ａの機能は、図２４に示した第８の実施の形態に係る受信装置２００ｃと同様である。ただし、演算部２２２は、これに対応して算出したＡmaxを与える指数位置Ｉ0を、再量子化演算部２２９ｄに通知する。また、メモリ２２９ａは、再量子化演算部２２９ｄが取得した軟判定データに対応するＡmaxを与える指数位置Ｉ1を記憶する。
【０１８６】
再量子化演算部２２９ｄは、再送データを受信した場合、ＨＡＲＱ合成後データに対してＡmaxを与える指数位置Ｉを決定する。具体的には、再量子化演算部２２９ｄは、指数位置Ｉ0およびＩ1のうち、大きい方をＩとする。
【０１８７】
再量子化部２２９ｅは、ＨＡＲＱ合成部２２９による合成後データを、例えば、受信信号のフレーム単位で取得する。そして、再量子化部２２９ｅは、再量子化演算部２２９ｄにより決定された指数位置Ｉに基づいて、再量子化範囲を決定してＨＡＲＱ合成後データをビット幅ｍに再量子化する。
【０１８８】
図２７は、第９の実施の形態の受信処理の手順を示すフローチャートである。以下、図２７に示す処理をステップ番号に沿って説明する。なお、受信装置２００ｄは、送信装置１００からＨＡＲＱ再送制御による再送データを受信しているものとする。また、ステップＳ３１〜Ｓ３４およびステップＳ３６〜Ｓ３９は、第８の実施の形態における図２５の手順と同一である。
【０１８９】
［ステップＳ３５ａ］再量子化演算部２２９ｄは、ＨＡＲＱ合成後データについてのＡmaxを与える指数位置Ｉを、以下のように決定する。すなわち、Ｉ1≧Ｉ0のとき、Ｉ＝Ｉ1とする。また、Ｉ1＜Ｉ0のとき、Ｉ＝Ｉ0とする。そして、再量子化演算部２２２は、指数位置Ｉに基づいて、量子化範囲の最大値および最小値を求める。具体的には、演算部２２２は、Ａmax＝２Iと置くと、再量子化範囲の最大値をＡmax−１、最小値を−Ａmaxと決定する。
【０１９０】
図２８は、第９の実施の形態の量子化処理を示す模式図である。図２８では、ＨＡＲＱ合成部２２９への入力である再送分の量子化後の値が“０１１０１”（＋１３）であり、メモリ２２９ａに記憶されていた前回分の量子化後の値が“００１０１”（＋５）としている。再送データと保存データの最上位のビットは符号ビットであり、量子化ビット数は共に５ビットである。
【０１９１】
ＨＡＲＱ合成部２２９は、まず再送データと保存データとをＨＡＲＱ合成する。そのために、ＨＡＲＱ合成部２２９は、各量子化データに対応する量子化前ビット数の差によって重み付けする。ここでは、指数位置Ｉ1＞指数位置Ｉ0であるとし、両者の差ｌｓｈ＝Ｉ1−Ｉ0＝３であったとする。これは、保存データの受信時は、再送データの受信時よりもフレーム全体として受信レベルが約８倍大きかったことを示している。そこで、ＨＡＲＱ合成部２２９は、保存データを再送データよりも３ビット左シフトして、受信レベルの相対関係を再現し、再送データ“０１１０１”（＋１３）とシフト後の保存データ“００１０１０００”（＋４０）とを加算して、ＨＡＲＱ合成後データ“００１１０１０１”（＋５３）を得る。
【０１９２】
そして、このＨＡＲＱ合成後データに対して、指数位置Ｉ1に基づいて再度量子化する。具体低には、ＨＡＲＱ合成後データ“００１１０１０１”（＋５３）の先頭から符号ビットを除く４ビットを抽出し、これに符号ビットを１ビット加えて５ビットの再量子化データ“００１１０”（＋６）を生成する。
【０１９３】
このように、ＨＡＲＱ合成後の軟判定データに対する再量子化範囲を前回受信データの指数位置Ｉ1および再送データの指数位置Ｉ0のうちの大きい方と決定する。そして、決定した指数位置に基づいて、ＨＡＲＱ合成後の軟判定データをビット数ｍに再量子化する。これによって、再度累積分布を求めて量子化範囲を決定する場合に比べて更に計算量を削減することができる。
【０１９４】
［第１０の実施の形態］
以下、第１０の実施の形態を、図面を参照して詳細に説明する。前述の第８の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。
【０１９５】
第１０の実施の形態では、初回の受信データに関しては累積分布により得た指数位置に基づいて量子化を行い、再送の受信データに関しては初回で得た指数位置に所定のビット数だけ加算した指数位置に基づいて量子化を行なう。すなわち、再送の受信データの量子化の際には新たに累積を取らず、これにより処理負荷の軽減を図る。
【０１９６】
以下では、このような機能を実現する受信装置に関して説明する。
図２９は、第１０の実施の形態の受信装置の機能（一部）を示すブロック図である。受信装置２００ｅに対して信号を送信する送信装置の機能および構成は、図３に示した第１の実施の形態の送信装置１００と同様である。
【０１９７】
受信装置２００ｅは、モデム部２１０（図２９では図示せず）およびコーデック部２２０ｅを有する。ここで、モデム部２１０の機能および構成は、図４に示した第１の実施の形態と同様である。
【０１９８】
コーデック部２２０ｅは、バッファメモリ２２１、シーケンス制御部２２１ａ、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６、制御情報符号化部２２７、ＨＡＲＱ合成部２２９、メモリ２２９ａ、再量子化部２２９ｆを有する。ここで、バッファメモリ２２１、演算部２２２、量子化部２２３、誤り訂正復号部２２４、誤り検出部２２５、ＮＡＣＫ／ＡＣＫ判定部２２６および制御情報符号化部２２７、ＨＡＲＱ合成部２２９およびメモリ２２９ａの機能は、図２４に示した第８の実施の形態に係る受信装置２００ｃと同様である。ただし、バッファメモリ２２１は、モデム部２１０からの尤度データをシーケンス制御部２２１ａを介して取得する。また、演算部２２２は、これに対応して算出したＡmaxを与える指数位置Ｉを、量子化部２２３ａおよび再量子化演算部２２９ｆに通知する。更に、メモリ２２９ａは、初回受信の尤度データに関しては、量子化部２２３ａから取得するデータを記憶し、再送された尤度データに関しては、再送量子化部２２９ｆから取得するデータを記憶する。
【０１９９】
シーケンス制御部２２１ａは、受信データの内容に応じてモデム２１０から取得する尤度データの出力先を変更する。すなわち、受信データが該当のデータの初回の受信時である場合、尤度データをバッファメモリ２２１に出力する。また、再送されたデータの受信時には、尤度データを量子化部２２３ａに出力する。これは、初回に受信したデータに関しては演算部２２２による量子化範囲を特定するための演算が実行され、再送されたデータに関しては演算部２２２による演算が省略されることを意味する。
【０２００】
量子化部２２３ａは、受信データが初回受信のデータである場合、バッファメモリ２２１に格納されたビット幅ｎの尤度データを順次取り出す。そして、量子化部２２３ａは、演算部２２２から通知された指数位置Ｉにより決定される量子化範囲に基づいて、ビット幅ｎの尤度データをビット幅ｍの尤度データに変換する。例えば、量子化部２２３ａは、量子化前のｎビットのビット列から通知されたビット範囲の部分を切り出して量子化後のビット列とする。その場合、ビット範囲の最上位ビットよりも大きい桁を有する尤度データについては、クリップ処理を行う。すなわち、この尤度データをｍビット以下で表現可能な数値の最大値に量子化する。
【０２０１】
更に、量子化部２２３ａは、受信データが初回受信のデータである場合、バッファメモリ２２１から取得した尤度データに対して、次回再送データとのＨＡＲＱ合成用のデータを生成するための量子化を行なう。このとき、量子化部２２３ａは、演算部２２２から通知された指数位置Ｉに所定の値αだけ加算した値を指数位置Ｊ（＝Ｉ＋α）により決定される量子化範囲に基づいて量子化を行う。量子化部２２３ａは、これにより生成したＨＡＲＱ合成用のデータをメモリ２２９ａに格納する。
【０２０２】
また、量子化部２２３ａは、受信データが再送されたデータである場合、シーケンス制御部２２１ａから順次取得するビット幅ｎの尤度データをビット幅ｍの尤度データに変換する。このとき、量子化部２２３ａは、初回のデータ受信時に演算部２２２から通知された指数位置Ｉに所定の値αだけ加算した値を指数位置Ｊ（＝Ｉ＋α）とする。そして、量子化部２２３ａは、この指数位置Ｊにより決定される量子化範囲に基づいて、この量子化を行う。指数位置Ｊにより決定される量子化範囲とは、具体的には、Ａ＝２Jとして、最大値がＡ−１、最小値が−Ａである範囲である。
【０２０３】
ここで、αの値は、再送データの受信レベルの増加分を指定する値であり、例えば、送信装置と受信装置との間で予め合意がなされる。αの値は、情報ビット数、符号化率および変調方式などによって決まる伝送フォーマットを考慮して適切な値が決定される。また、ＳＮＲやそれに順ずる信頼度の測定結果に基づいて設定することも考えられる。
【０２０４】
再量子化部２２９ｆは、ＨＡＲＱ合成部２２９によるＨＡＲＱ合成後のデータを、例えば、受信信号のフレーム単位で取得する。また、再量子化部２２９ｆは、演算部２２２から通知された指数位置Ｉに所定の値αだけ加算した指数位置Ｊにより決定される量子化範囲に基づいて、取得したＨＡＲＱ合成後データを量子化部２２３ａと同様にｍビットに量子化し、誤り訂正復号部２２４に出力する。ここで、再量子化部２２９ｆは、この量子化範囲に属さないＨＡＲＱ合成後データについてクリップ処理を行う。すなわち、量子化範囲より大きいＨＡＲＱ合成後データに関しては、再量子化後データの最大値に対応付ける。また、量子化範囲より小さいＨＡＲＱ合成後データに関しては、再量子化後データの最小値に対応付ける。更に、再量子化部２２９ｆは、受信データが再送により取得したデータである場合、再量子化後データをメモリ２２９ａに格納する。
【０２０５】
次に、以上のような構成により実現される受信装置２００ｅの受信処理に関して説明する。まず、該当データの初回の受信処理について説明する。
図３０は、第１０の実施の形態の初回の受信処理の手順を示すフローチャートである。以下、図３０に示す処理をステップ番号に沿って説明する。
【０２０６】
［ステップＳ４１］復調部２１１は、受信した信号を復調する。そして、復調部２１１は、各受信信号のレベルに基づいてビット幅ｎの尤度データを生成する。更に、シーケンス制御部２２１ａは、復調部２１１から取得するビット幅ｎの尤度データをバッファメモリ２２１に出力する。
【０２０７】
［ステップＳ４２］演算部２２２は、フレームを構成するＮc個の尤度データに関して指数位置が同じ尤度データを計数する。そして、演算部２２２は、計数した結果を指数位置が小さい方から累積する。演算部２２２は、この累積結果から量子化範囲を与える指数位置Ｉを決定する。演算部２２２は、決定した指数位置Ｉを量子化部２２３ａおよび再量子化部２２９ｆに通知する。なお、指数位置の具体的な決定方法としては、第１〜第５の実施の形態で示したような方法を採用することができる。
【０２０８】
［ステップＳ４３］量子化部２２３ａは、バッファメモリ２２１からＮc個の尤度データを順次取得して、演算部２２２によって決定された指数位置Ｉで決まる量子化範囲に基づいて、ビット幅ｎからビット幅ｍ（ｍ＜ｎ）への尤度データの量子化を行う。なお、量子化部２２３ａは、この量子化範囲に属さない尤度データのうち量子化範囲より大きい尤度データに関しては、量子化後データの最大値に対応付ける。また、量子化範囲より小さい尤度データに関しては、量子化後データの最小値に対応付ける。生成された量子化後データは、ＨＡＲＱ合成部２２９および再量子化部２２９ｆを介して誤り訂正復号部２２４に出力される。なお、ＨＡＲＱ合成部２２９および再量子化部２２９ｆの出力は、合成用のデータが存在しないため、量子化部２２３ａの出力と同じデータとなる。
【０２０９】
［ステップＳ４４］量子化部２２３ａは、バッファメモリ２２１からＮc個の尤度データを順次取得する。そして、演算部２２２によって決定された指数位置Ｉに所定の値αだけ加算した指数位置Ｊで決まる量子化範囲に基づいて、ビット幅ｎからビット幅ｍ（ｍ＜ｎ）への尤度データの量子化を行ないＨＡＲＱ合成用のデータを生成する。なお、量子化部２２３ａは、この量子化範囲に属さない尤度データのうち量子化範囲より大きい尤度データに関しては、量子化後データの最大値に対応付ける。また、量子化範囲より小さい尤度データに関しては、量子化後データの最小値に対応付ける。そして、量子化部２２３ａは、生成したＨＡＲＱ合成用のデータをメモリ２２９ａに格納する。
【０２１０】
［ステップＳ４５］誤り訂正復号部２２４は、再量子化部２２９ｆから受け付けたデータ（上記ステップＳ４３で量子化されたデータ）に関して誤り訂正復号処理を行う。
［ステップＳ４６］誤り検出部２２５は、復号されたデータに対し誤り検出符号に基づいて、誤り検出を行う。誤りを検出しない場合、誤り検出部２２５は、復号データを受信データとして出力し、処理が完了する。更に、この場合、受信装置２００ｅから送信装置１００にＡＣＫが送信され、また、メモリ２２９ａに格納されたＨＡＲＱ合成用データは破棄される。また、誤りを検出した場合、誤り検出部２２５は、ＮＡＣＫ／ＡＣＫ判定部２２６に誤りを検出した旨を通知して、処理がステップＳ４７に移される。
【０２１１】
［ステップＳ４７］ＮＡＣＫ／ＡＣＫ判定部２２６は、誤り検出部２２５から復号されたデータに関して誤りを検出した旨の通知を受け付けると、制御情報符号化部２２７に対して、送信装置１００に送信するためのＮＡＣＫ情報を出力する。制御情報符号化部２２７は、ＮＡＣＫ／ＡＣＫ判定部２２６から受け付けたＮＡＣＫ情報を符号化し、変調部２１２を介して送信装置１００に送信する。
【０２１２】
［ステップＳ４８］復調部２１１は、送信装置１００から再送データを受信し、前回受信のデータとＨＡＲＱ合成して誤り訂正復号処理を行う。そして、データが正しく復号されると処理が完了する。
【０２１３】
このように、初回のデータ受信時、量子化部２２３ａは再送データの受信レベルの増加分を考慮してＨＡＲＱ合成用のデータを生成し、メモリ２２９ａに格納する。また、初回のデータ受信時に誤り訂正復号部２２４に入力されるデータは、累積分布により求めた指数位置Ｉにより決まる量子化範囲に基づいて量子化されたデータとなる。
【０２１４】
図３１は、第１０の実施の形態の再送時受信処理の手順を示すフローチャートである。以下、図３１に示す処理をステップ番号に沿って説明する。
［ステップＳ５１］復調部２１１は、受信した信号を復調する。そして、復調部２１１は、各受信信号のレベルに基づいてビット幅ｎの尤度データを生成する。更に、シーケンス制御部２２１ａは、復調部２１１から取得するビット幅ｎの尤度データを量子化部２２３ａに出力する。
【０２１５】
［ステップＳ５２］量子化部２２３ａは、シーケンス制御部２２１ａからＮc個の尤度データを順次取得して、指数位置Ｊ（＝Ｉ＋α）で決まる量子化範囲に基づいて、ビット幅ｎからビット幅ｍへの尤度データの量子化を行う。なお、量子化部２２３ａは、この量子化範囲に属さない尤度データのうち量子化範囲より大きい尤度データに関しては、量子化後データの最大値に対応付ける。また、量子化範囲より小さい尤度データに関しては、量子化後データの最小値に対応付ける。
【０２１６】
［ステップＳ５３］ＨＡＲＱ合成部２２９は、メモリ２２９ａに記憶される前回受信分の復号に失敗した量子化後データと再送分の量子化後データとをＨＡＲＱ合成する。
［ステップＳ５４］再量子化部２２９ｆは、ＨＡＲＱ合成部２２９からビット幅がｍより大きいＨＡＲＱ合成後データを、例えば、フレーム単位で取得して、クリップ処理によりビット幅ｍに変換する。再量子化部２２９ｆは、再量子化後データをメモリ２２９ａに格納する。
【０２１７】
［ステップＳ５５］誤り訂正復号部２２４は、再量子化部２２９ｆから受け付けたデータに関して誤り訂正復号処理を行う。
［ステップＳ５６］誤り検出部２２５は、復号されたデータに対して誤り検出符号に基づいて、誤り検出を行う。誤りを検出しない場合、誤り検出部２２５は、復号データを受信データとして出力し、処理が完了する。更に、この場合、受信装置２００から送信装置１００にＡＣＫが送信され、また、メモリ２２９ａに格納された再量子化後データは破棄される。また、誤りを検出した場合、誤り検出部２２５は、ＮＡＣＫ／ＡＣＫ判定部２２６に誤りを検出した旨を通知して、処理がステップＳ５７に移される。
【０２１８】
［ステップＳ５７］ＮＡＣＫ／ＡＣＫ判定部２２６は、誤り検出部２２５から復号されたデータに関して誤りを検出した旨の通知を受け付けると、制御情報符号化部２２７に対して、送信装置１００に送信するためのＮＡＣＫ情報を出力する。制御情報符号化部２２７は、ＮＡＣＫ／ＡＣＫ判定部２２６から受け付けたＮＡＣＫ情報を符号化し、変調部２１２を介して送信装置１００に送信する。
【０２１９】
このように、初回のデータ受信時に求めた基準の指数位置Ｉと受信レベルの増加分として予め規定される値αとに基づいて、再送データを量子化するための量子化範囲を決定する。すなわち、再送データに対して改めて累積分布の取得を行なわないようにする。
【０２２０】
図３２は、第１０の実施の形態の初回データ受信時の量子化処理を示す模式図である。
図３２では、初回の受信データに対応する尤度データが“０００００１０００１０”（＋３４）である場合を示している。最上位のビットは符号ビットである。また、演算部２２２がＡmaxを２I＝２5＝０００００１０００００（＋３２）と決定しているものとする。なお、量子化ビット数は５ビットとする。更に、α＝３と規定されているものとする。
【０２２１】
量子化部２２３ａは、初回の受信データに対して以下の２通りの変換処理を実行する。
（１）量子化部２２３ａは、指数位置Ｉ＝５により決定する量子化範囲に基づいて尤度データを量子化する。この量子化範囲は、−Ａmax＝１１１１１１０００００（−３２）以上、Ａmax−１＝００００００１１１１１（＋３１）以下である。尤度データ“０００００１０００１０”（＋３４）は、この量子化範囲の最大値を超えているため、量子化後データの実質ビットである４ビットを全て“１”とし、この４ビットに符号ビット１ビットを付与した５ビットのデータ“０１１１１”（＋１５）として、量子化後データを生成する。そして、生成された量子化後データ“０１１１１”（＋１５）は、ＨＡＲＱ合成部２２９および再量子化部２２９ｆを介して誤り訂正復号部２２４に出力される。
【０２２２】
（２）量子化部２２３ａは、指数位置Ｊ＝Ｉ＋α＝５＋３＝８により決定する量子化範囲に基づいて尤度データを量子化する。この場合、上記のＡmaxに相当するＡは、Ａ＝２J＝００１００００００００（＋２５６）となる。このＡに対応する量子化範囲は、−Ａ＝１１１００００００００（−２５６）以上、Ａ−１＝０００１１１１１１１１（＋２５５）以下である。“０００００１０００１０”（＋３４）は、この量子化範囲内にあるので、量子化範囲の最大値の指数位置（ＬＳＢから数えて８桁目）からこの指数位置を含めて下位へ４ビット取得する。そして、この４ビットに符号ビット１ビットを付与した５ビットのデータ“０００１０”（＋４）として、ＨＡＲＱ合成用データを生成する。量子化部２２３ａは、生成したＨＡＲＱ合成用データをメモリ２２９ａに格納する。
【０２２３】
このように、量子化部２２３ａは、再送データに対する尤度データのビット増加分を考慮してＨＡＲＱ合成用のデータを生成しておくことで、再送データとのＨＡＲＱ合成に寄与する有意なビットの情報が失われることを防止することができる。
【０２２４】
図３３は、第１０の実施の形態の再送データ受信時の量子化処理を示す模式図である。図３３では、図３２に示した尤度データに対して再送された受信データに対応する尤度データが“０００１０１１０１１０”（＋１８２）である場合を示している。最上位のビットは符号ビットである。なお、図３２と同様に量子化ビット数は５ビット、α＝３である。
【０２２５】
量子化部２２３ａは、指数位置Ｊ＝８により決定する量子化範囲に基づいてシーケンス制御部２２１ａから取得する尤度データを量子化する。図３２（２）と同様に、この量子化範囲は、−Ａ＝１１１００００００００（−２５６）以上、Ａ−１＝０００１１１１１１１１（＋２５５）以下である。尤度データ“０００１０１１０１１０”（＋１８２）は、この量子化範囲内にあるので、量子化範囲の最大値の指数位置（ＬＳＢから数えて８桁目）からこの指数位置を含めて下位へ４ビット取得する。そして、この４ビットに符号ビット１ビットを付与した５ビットのデータ“０１０１１”（＋１１）を量子化後データとして出力する。
【０２２６】
ＨＡＲＱ合成部２２９は、メモリ２２９ａに格納された“０００１０”（＋４）と、再送データに基づく量子化後データ“０１０１１”（＋１１）とを合成することになる。
更に、再量子化部２２９ｆは、ＨＡＲＱ合成後データのうち、ｍビットよりも大きくなるものをクリップ処理することで、ＨＡＲＱ合成後データを再量子化する。
【０２２７】
このように、量子化部２２３ａは、初回のデータ受信時に求めた基準の指数位置Ｉと受信レベルの増加分として予め規定される値αとに基づいて、再送データを量子化するための量子化範囲を決定するので、再送データに関して累積分布を取得する必要がなくなる。
【０２２８】
このため、第８および第９の実施の形態のように再送データに関しても累積分布を取得して量子化範囲を決定する方法に比べて更に計算量の軽減を図ることができる。
上記の受信装置によれば、入力データ列の各軟判定データについて数値の大きさが２進数で何桁であるかが特定され、桁数が同じ軟判定データの個数がカウントされる。そして、カウント結果を桁数の小さい方から累積した累積個数分布に基づいて、ｎビットのうちｍビットに対応付けるビット範囲が決定される。これにより、ビット幅ｎの軟判定データからビット幅ｍの軟判定データへの対応付けを決定する際の計算量が削減され、処理を高速に実行できる。また、あらゆる伝送路環境に対応するためにビット幅ｍを大きくとっておくことを回避でき、回路規模の増大を抑制できる。
【０２２９】
すなわち、ビット幅ｎの軟判定データからビット幅ｍの軟判定データへの対応付けを小さい回路規模で効率的に行うことが可能となる。
更に、レペティションやＨＡＲＱ合成を行なう場合にも、上記の量子化法を適用することが可能である。この場合、累積個数分布を再度取得することで同様に計算量を削減することができる。
【０２３０】
また、これら合成によるビット増加分を推定して、累積個数分布を再度取得することなく量子化を行なうことも可能である。このようにすると、累積個数分布を再度取得する場合に比べて、更に計算量を削減することができる。
【０２３１】
以上、データ変換装置およびデータ変換方法を図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に他の任意の構成物や工程が付加されていてもよい。また、本発明は、前述した実施の形態のうちの、任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【０２３２】
以上、説明した実施の形態の主な技術的特徴は、以下の付記の通りである。
（付記１）  ビット幅ｎの軟判定データからなる入力データ列をビット幅ｍ（ｍ＜ｎ）の軟判定データからなる出力データ列に変換するデータ変換装置において、
前記入力データ列の各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定する演算部、
を有することを特徴とするデータ変換装置。
【０２３３】
（付記２）  前記演算部は、前記累積個数分布において累積個数が所定の閾値に達するときの桁数を特定し、特定した桁数に基づいて前記ビット範囲を決定することを特徴とする付記１記載のデータ変換装置。
【０２３４】
（付記３）  前記演算部は、前記累積個数分布において累積個数が所定の閾値を超えることとなる最小の桁数ｋを特定し、前記ビット範囲の最上位桁をｋ−１桁目とすることを特徴とする付記１記載のデータ変換装置。
【０２３５】
（付記４）  前記演算部は、前記累積個数分布において累積個数が所定の閾値を超えることとなる最小の桁数ｋを特定し、桁数ｋの累積個数と桁数ｋ−１の累積個数とを比較し、前記桁数ｋの累積個数の方が前記所定の閾値に近い場合は前記ビット範囲の最上位桁をｋ桁目とし、前記桁数ｋ−１の累積個数の方が前記所定の閾値に近い場合は前記ビット範囲の最上位桁をｋ−１桁目とすることを特徴とする付記１記載のデータ変換装置。
【０２３６】
（付記５）  前記演算部は、前記桁数が所定の閾値以上である軟判定データについては、最上位桁よりも下位のビットに基づいて更に分類して前記累積個数分布を求めることを特徴とする付記１記載のデータ変換装置。
【０２３７】
（付記６）  前記演算部は、前記桁数が所定の閾値以上である軟判定データについては、最上位桁の１つ下位のビットが０または１の何れであるかに応じて更に分類して前記累積個数分布を求めることを特徴とする付記１記載のデータ変換装置。
【０２３８】
（付記７）  前記演算部は、前記計数した個数の最大値が所定の閾値以上であるか否かに応じて、前記ビット範囲の広さを制御することを特徴とする付記１記載のデータ変換装置。
【０２３９】
（付記８）  前記演算部は、前記計数した閾値の最大値が所定の閾値以上である場合、前記計数した個数の最大値が前記所定の閾値以上でない場合よりも、前記ビット範囲の最上位桁を１桁だけ大きい位置に設定することを特徴とする付記１記載のデータ変換装置。
【０２４０】
（付記９）  前記演算部は、前記累積個数分布において累積個数が所定の閾値を超えることとなる最小の桁数ｋを特定し、前記ビット範囲の最上位桁をｋ−１＋ｍ桁目とすることを特徴とする付記１記載のデータ変換装置。
【０２４１】
（付記１０）  前記演算部は、各軟判定データのビット列を先頭ビットから下位ビットに向かって走査し、先頭ビットと異なるビットが最初に検出された位置に基づいて前記桁数を特定することを特徴とする付記１記載のデータ変換装置。
【０２４２】
（付記１１）  ビット幅ｎの軟判定データからなる入力データ列をビット幅ｍ（ｍ＜ｎ）の軟判定データからなる出力データ列に変換するデータ変換方法において、
前記入力データ列の各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、
特定した桁数が同じ軟判定データの個数を計数し、
計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定する、
ことを特徴とするデータ変換方法。
【０２４３】
（付記１２）  信号列を受信し各受信信号に対応するビット幅ｍの軟判定データを復号することでデジタルデータを得る受信装置において、
前記信号列を受けて各受信信号の信号レベルに応じたビット幅ｎ（ｎ＞ｍ）の軟判定データを生成する受信部と、
前記受信部が生成した各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定する演算部と、
前記演算部が決定したビット範囲に基づいて、前記受信部が生成したビット幅ｎの軟判定データをビット幅ｍの軟判定データに変換する変換部と、
を有することを特徴とする受信装置。
【０２４４】
（付記１３）  受信する前記信号列は、少なくとも一部のデジタルデータを反復して送信するレペティション処理が施されており、
前記変換部で得られたビット幅ｍの軟判定データを取得し、反復がなされた範囲の受信信号に対応する軟判定データを加え合わせる合成部と、
前記合成部による合成後の各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいて、前記合成部による合成後の軟判定データのビット列のうちｍビットに対応付けるビット範囲を決定する再演算部と、
前記再演算部が決定したビット範囲に基づいて、前記合成部による合成後の軟判定データをビット幅ｍの軟判定データに変換する再変換部と、
を更に有することを特徴とする付記１２記載の受信装置。
【０２４５】
（付記１４）  受信する前記信号列は、少なくとも一部のデジタルデータを反復して送信するレペティション処理が施されており、
前記変換部で得られたビット幅ｍの軟判定データを取得し、反復がなされた範囲の受信信号に対応する軟判定データを加え合わせる合成部と、
前記合成部による合成前の軟判定データの個数と合成後の軟判定データの個数との比に基づいて、合成によって増加する軟判定データのビット数を推定する再演算部と、
前記合成部による合成後の軟判定データのビット列を前記再演算部が推定したビット数だけシフトさせて、ビット幅ｍの軟判定データに変換する再変換部と、
を更に有することを特徴とする付記１２記載の受信装置。
【０２４６】
（付記１５）  復号処理中にエラーが検出され前記信号列の送信元に再送要求が行われた場合に、エラーが検出されたビット幅ｍの軟判定データを保持し、前記再送要求に応じて受信した新たな信号列に対応するビット幅ｍの軟判定データを前記変換部から取得し、保持した軟判定データについて前記演算部が決定したビット範囲および新たに取得した軟判定データについて前記演算部が決定したビット範囲に応じて重み付けして、前記保持した軟判定データと前記新たに取得した軟判定データとを合成する合成部と、
前記合成部による合成後の各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいて、前記合成部による合成後の軟判定データのビット列のうちｍビットに対応付けるビット範囲を決定する再演算部と、
前記再演算部が決定したビット範囲に基づいて、前記合成部による合成後の軟判定データをビット幅ｍの軟判定データに変換する再変換部と、
を更に有することを特徴とする付記１２記載の受信装置。
【０２４７】
（付記１６）  復号処理中にエラーが検出され前記信号列の送信元に再送要求が行われた場合に、エラーが検出されたビット幅ｍの軟判定データを保持し、前記再送要求に応じて受信した新たな信号列に対応するビット幅ｍの軟判定データを前記変換部から取得し、保持した軟判定データについて前記演算部が決定したビット範囲および新たに取得した軟判定データについて前記演算部が決定したビット範囲に応じて重み付けして、前記保持した軟判定データと前記新たに取得した軟判定データとを合成する合成部と、
前記保持した軟判定データについての前記演算部が決定したビット範囲および軟判定データの個数と、前記新たに取得した軟判定データについての前記演算部が決定したビット範囲および軟判定データの個数とに応じて、合成によって増加する軟判定データのビット数を推定する再演算部と、
前記合成部による合成後の軟判定データのビット列を前記再演算部が推定したビット数だけシフトさせて、ビット幅ｍの軟判定データに変換する再変換部と、
を更に有することを特徴とする付記１２記載の受信装置。
【０２４８】
（付記１７）  復号処理中にエラーが検出され前記信号列の送信元に再送要求が行われた場合に、エラーが検出されたビット幅ｍの軟判定データを保持し、前記再送要求に応じて受信した新たな信号列に対応するビット幅ｍの軟判定データを前記変換部から取得し、保持した軟判定データについて前記演算部が決定したビット範囲および新たに取得した軟判定データについて前記演算部が決定したビット範囲に応じて重み付けして、前記保持した軟判定データと前記新たに取得した軟判定データとを合成する合成部と、
前記合成部による合成後の軟判定データをビット幅ｍの軟判定データに変換する再変換部と、
を更に有し、
前記変換部は、前記演算部が決定したビット範囲よりも所定のビット数だけ広いビット範囲に基づいて、前記受信部が前記新たな信号列を受けて生成したビット幅ｎの軟判定データをビット幅ｍの軟判定データに変換する、
ことを特徴とする付記１２記載の受信装置。
【０２４９】
（付記１８）  前記変換部は、前記デジタルデータの初回送信時に前記受信部が生成したビット幅ｎの軟判定データを前記演算部が決定したビット範囲に基づいてビット幅ｍの第１の軟判定データに変換して前記合成部に出力すると共に、当該ビット幅ｎの軟判定データを前記演算部が決定したビット範囲よりも所定のビット数だけ広いビット範囲に基づいてビット幅ｍの第２の軟判定データに変換して前記合成部に出力し、
前記合成部は、前記ビット幅ｍの第１の軟判定データに基づく復号処理中にエラーが検出されて前記再送要求が行われた場合に、エラーが検出された前記ビット幅ｍの第２の軟判定データを保持する、
ことを特徴とする付記１７記載の受信装置。
【０２５０】
（付記１９）  信号列を受信し各受信信号に対応するビット幅ｍの軟判定データを復号することでデジタルデータを得る受信方法において、
前記信号列を受けて各受信信号の信号レベルに応じたビット幅ｎ（ｎ＞ｍ）の軟判定データを生成し、
生成されたビット幅ｎの各軟判定データについて当該軟判定データが表す数値の大きさが２進数で何桁であるかを特定し、特定した桁数が同じ軟判定データの個数を計数し、計数した個数を前記桁数の小さい方から累積した累積個数分布に基づいてｎビットのうちｍビットに対応付けるビット範囲を決定し、
決定したビット範囲に基づいて、生成されたビット幅ｎの軟判定データをビット幅ｍの軟判定データに変換する、
ことを特徴とする受信方法。
【図面の簡単な説明】
【０２５１】
【図１】本実施の形態に係るデータ変換装置を示す図である。
【図２】本実施の形態のシステム構成を示す図である。
【図３】第１の実施の形態の送信装置の機能を示すブロック図である。
【図４】第１の実施の形態の受信装置の機能を示すブロック図である。
【図５】尤度データと指数位置との関係を示す模式図である。
【図６】第１の実施の形態の受信処理の手順を示すフローチャートである。
【図７】第１の実施の形態の量子化制御処理の手順を示すフローチャートである。
【図８】第１の実施の形態の量子化処理を示す模式図である。
【図９】量子化前データと量子化後データとの関係を示す模式図である。
【図１０】第２の実施の形態の量子化制御処理の手順を示すフローチャートである。
【図１１】第２の実施の形態の量子化処理を示す模式図である。
【図１２】第３の実施の形態の量子化制御処理の手順を示すフローチャートである。
【図１３】第３の実施の形態の量子化処理を示す模式図である。
【図１４】第４の実施の形態の量子化制御処理の手順を示すフローチャートである。
【図１５】第４の実施の形態の量子化処理を示す模式図である。
【図１６】第５の実施の形態の量子化制御処理の手順を示すフローチャートである。
【図１７】第５の実施の形態の量子化処理を示す模式図である。
【図１８】第６の実施の形態の送信装置の機能（一部）を示すブロック図である。
【図１９】第６の実施の形態の受信装置の機能（一部）を示すブロック図である。
【図２０】第６の実施の形態の受信処理の手順を示すフローチャートである。
【図２１】第７の実施の形態の受信装置の機能（一部）を示すブロック図である。
【図２２】第７の実施の形態の受信処理の手順を示すフローチャートである。
【図２３】第７の実施の形態の量子化処理を示す模式図である。
【図２４】第８の実施の形態の受信装置の機能（一部）を示すブロック図である。
【図２５】第８の実施の形態の受信処理の手順を示すフローチャートである。
【図２６】第９の実施の形態の受信装置の機能（一部）を示すブロック図である。
【図２７】第９の実施の形態の受信処理の手順を示すフローチャートである。
【図２８】第９の実施の形態の量子化処理を示す模式図である。
【図２９】第１０の実施の形態の受信装置の機能（一部）を示すブロック図である。
【図３０】第１０の実施の形態の初回の受信処理の手順を示すフローチャートである。
【図３１】第１０の実施の形態の再送時受信処理の手順を示すフローチャートである。
【図３２】第１０の実施の形態の初回データ受信時の量子化処理を示す模式図である。
【図３３】第１０の実施の形態の再送データ受信時の量子化処理を示す模式図である。
【符号の説明】
【０２５２】
１０  データ変換装置
１１  バッファメモリ
１２  演算部
１３  変換部
【図１】
2010154144.tif 000005
【図２】
2010154144.tif 000006
【図３】
2010154144.tif 000007
【図４】
2010154144.tif 000008
【図５】
2010154144.tif 000009
【図６】
2010154144.tif 000010
【図７】
2010154144.tif 000011
【図８】
2010154144.tif 000012
【図９】
2010154144.tif 000013
【図１０】
2010154144.tif 000014
【図１１】
2010154144.tif 000015
【図１２】
2010154144.tif 000016
【図１３】
2010154144.tif 000017
【図１４】
2010154144.tif 000018
【図１５】
2010154144.tif 000019
【図１６】
2010154144.tif 000020
【図１７】
2010154144.tif 000021
【図１８】
2010154144.tif 000022
【図１９】
2010154144.tif 000023
【図２０】
2010154144.tif 000024
【図２１】
2010154144.tif 000025
【図２２】
2010154144.tif 000026
【図２３】
2010154144.tif 000027
【図２４】
2010154144.tif 000028
【図２５】
2010154144.tif 000029
【図２６】
2010154144.tif 000030
【図２７】
2010154144.tif 000031
【図２８】
2010154144.tif 000032
【図２９】
2010154144.tif 000033
【図３０】
2010154144.tif 000034
【図３１】
2010154144.tif 000035
【図３２】
2010154144.tif 000036
【図３３】
2010154144.tif 000037