(57)【要約】  本発明の復号装置は、複数のユーザの各々から送信されてきたデータの復号を行う復号装置であって、復号結果に誤りが検出されなくなるまで、データの復号を繰り返す繰り返し復号部と、繰り返し復号部により復号が１回行われる毎に、復号結果に対する誤り検出を行い、誤りが検出されれば、復号結果に誤りが検出された旨を示す信号を繰り返し復号部に出力する誤り検出部と、複数のユーザ毎に、ユーザから送信されてきたデータの復号結果に誤り検出部により誤りが検出されなくなるまでに要する時間である復号完了時間を推定し、推定した復号完了時間が短い順に、ユーザに順位を付与する復号順制御部と、を有し、繰り返し復号部は、復号順制御部により付与された順位が高いユーザから順番に、ユーザから送信されてきたデータの復号を行う。
2011145513.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザの各々から送信されてきたデータの復号を行う復号装置であって、
復号結果に誤りが検出されなくなるまで、前記データの復号を繰り返す繰り返し復号部と、
前記繰り返し復号部により復号が１回行われる毎に、前記復号結果に対する誤り検出を行い、誤りが検出されれば、前記復号結果に誤りが検出された旨を示す信号を前記繰り返し復号部に出力する誤り検出部と、
前記複数のユーザ毎に、該ユーザから送信されてきたデータの前記復号結果に前記誤り検出部により誤りが検出されなくなるまでに要する時間である復号完了時間を推定し、該推定した前記復号完了時間が短い順に、前記ユーザに順位を付与する復号順制御部と、を有し、
前記繰り返し復号部は、前記復号順制御部により付与された順位が高いユーザから順番に、該ユーザから送信されてきたデータの復号を行うことを特徴とする復号装置。
【請求項２】
請求項１記載の復号装置において、
前記複数のユーザ毎に、該ユーザから送信されてきたデータのＳＮＲの推定値と目標値との差分を計算する計算部を更に有し、
前記復号順制御部は、前記複数のユーザ毎に、該ユーザについての前記ＳＮＲの差分の計算結果に基づき、該ユーザの前記復号完了時間を推定することを特徴とする復号装置。
【請求項３】
請求項１記載の復号装置において、
前記複数のユーザ毎に、該ユーザから送信されてきたデータのＳＮＲの推定値と目標値との差分を計算する計算部を更に有し、
前記復号順制御部は、前記複数のユーザ毎に、該ユーザについての前記ＳＮＲの差分の計算結果と、該ユーザから送信されてきたデータのサイズと、に基づき、該ユーザの前記復号完了時間を推定することを特徴とする復号装置。
【請求項４】
請求項３記載の復号装置において、
前記復号順制御部は、前記複数のユーザの各々についての前記ＳＮＲの差分の計算結果に基づき、前記複数のユーザの各々を複数のカテゴリに分類し、
前記カテゴリ間では、前記計算部により計算された前記ＳＮＲの差分が大きいカテゴリに分類されたユーザほど前記復号完了時間が短いと推定し、
前記カテゴリ内では、前記データのサイズが小さいユーザほど前記復号完了時間が短いと推定することを特徴とする復号装置。
【請求項５】
複数のユーザの各々から送信されてきたデータの復号を行う復号装置に適用される復号順序制御方法であって、
復号結果に誤りが検出されなくなるまで、前記データの復号を繰り返し、
前記復号が１回行われる毎に、前記復号結果に対する誤り検出を行い、誤りが検出されれば、前記復号結果に誤りが検出された旨を示す信号を出力し、
前記複数のユーザ毎に、該ユーザから送信されてきたデータの前記復号結果に誤りが検出されなくなるまでに要する時間である復号完了時間を推定し、該推定した前記復号完了時間が短い順に、前記ユーザに順位を付与し、
前記付与された順位が高いユーザから順番に、該ユーザから送信されてきたデータの復号を行うことを特徴とする復号順序制御方法。
【請求項６】
請求項５記載の復号順序制御方法において、
前記複数のユーザ毎に、該ユーザから送信されてきたデータのＳＮＲの推定値と目標値との差分を計算し、
前記複数のユーザ毎に、該ユーザについての前記ＳＮＲの差分の計算結果に基づき、該ユーザの前記復号完了時間を推定することを特徴とする復号順序制御方法。
【請求項７】
請求項５記載の復号順序制御方法において、
前記複数のユーザ毎に、該ユーザから送信されてきたデータのＳＮＲの推定値と目標値との差分を計算し、
前記複数のユーザ毎に、該ユーザについての前記ＳＮＲの差分の計算結果と、該ユーザから送信されてきたデータのサイズと、に基づき、該ユーザの前記復号完了時間を推定することを特徴とする復号順序制御方法。
【請求項８】
請求項７記載の復号順序制御方法において、
前記複数のユーザの各々についての前記ＳＮＲの差分の計算結果に基づき、前記複数のユーザの各々を複数のカテゴリに分類し、
前記カテゴリ間では、前記計算された前記ＳＮＲの差分が大きいカテゴリに分類されたユーザほど前記復号完了時間が短いと推定し、
前記カテゴリ内では、前記データのサイズが小さいユーザほど前記復号完了時間が短いと推定することを特徴とする復号順序制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復号装置および復号順序制御方法に関する。
【背景技術】
【０００２】
近年、Ｗ−ＣＤＭＡ(Wideband-Code Division Multiple Access)、ＬＴＥ(Long Term Evolution)、ＷｉＭＡＸ（Worldwide Interoperability for Microwave Access）等の無線通信システムや、日本の高度衛星デジタル放送システムといった多くのシステムでは、誤り訂正符号として、ターボ符号やＬＤＰＣ符号（Low-Density Parity-Check Code、低密度パリティ検査符号）が用いられている。これらの符号は、シャノン限界に迫る伝送レートを達成するような高い誤り訂正能力が特徴である。【０００３】
ターボ符号やＬＤＰＣ符号で符号化されたデータの復号を行う際には、繰り返し復号が行われるのが一般的である。繰り返し復号は、１回前の復号によって得られる信頼度情報を用いて復号を行い、これを複数回、繰り返すものであり、誤り訂正能力が高い半面、繰り返し復号回数が多くなると、処理時間が膨大になるという欠点もある。【０００４】
上述したＬＴＥ、ＷｉＭＡＸ等の無線通信システムに適用される基地局では、予め定められた遅延要求を満たすように、複数のユーザ端末から送信されてきたデータの復号を一定の時間内に完了させる必要がある。しかし、ユーザ数が多くなり、また、各ユーザの繰り返し復号回数が多くなると、全ユーザのデータの復号を一定の時間内に完了できず、システムのスループットが低下するおそれがある。【０００５】
そのため、繰り返し復号回数を制御する種々の方法が検討されている。【０００６】
繰り返し復号回数を制御する方法として検討されているものには、例えば、全ユーザに共通の繰り返し復号回数の最大値を予め定めておき、その最大値に達するまで復号を繰り返す方法がある。【０００７】
また、特許文献１（特開２００２−１５２０５６号公報）では、ユーザ毎に、そのユーザのユーザ端末がデータの送信に用いたチャネルの状態を求め、ユーザ毎の繰り返し復号回数の最大値を、そのユーザについて求めたチャネルの状態に基づき定め、その最大値に達するまで復号を繰り返す方法が検討されている。【０００８】
更に別の方法として、繰り返し復号回数の最大値を定めると共に、復号を１回行う毎に誤り検出を行い、復号を繰り返すか否かを判定する方法が検討されている。この方法では、送信側であるユーザ端末は、符号化前のデータに誤り検出のためのＣＲＣ(Cyclic Redundancy Check、巡回冗長検査)ビットを付加して符号化したデータを送信する。また、受信側である基地局内の復号装置が、復号と復号結果に対するＣＲＣによる誤り検出とを繰り返し、復号結果に誤りが検出されなければ、繰り返し復号回数が最大値に達していなくても復号を終了する。以下、この復号装置について図１を用いて説明する。【０００９】
図１において、データＩ（０），Ｉ（１），・・・，Ｉ（Ｎ−１）は、ユーザ端末から送信されてきたデータであり、復号前データと称する。また、データＯ（０），Ｏ（１），・・・，Ｏ（Ｎ−１）は、復号装置１０から出力される復号前データの復号を行ったデータであり、復号後データと称する。なお、復号前データおよび復号後データの括弧内の添え字は、ユーザ番号を示し、Ｎは、復号装置１０がデータの復号を行うユーザ数を示す。【００１０】
図１に示す復号装置１０は、繰り返し復号部１１と、誤り検出部１２と、を有する。【００１１】
繰り返し復号部１１は、ユーザの復号前データの復号を行い、復号結果を誤り検出部１２に出力する。【００１２】
誤り検出部１２は、繰り返し復号部１１から出力された復号結果に対するＣＲＣによる誤り検出を行い、誤りが検出されなければ、その復号結果を復号後データとして外部に出力する。一方、誤り検出部１２は、復号結果に誤りが検出されると、信頼度情報を繰り返し復号部１１に出力する。信頼度情報の出力により、復号結果に誤りがあったことが繰り返し復号部１１に示される。【００１３】
繰り返し復号部１１は、復号後データが外部に出力されると、他のユーザの復号前データの復号を行う。一方、繰り返し復号部１１は、誤り検出部１２から信頼度情報が出力されると、その信頼度情報を用いて同じユーザの復号前データの復号を再度行う。【００１４】
図２は、図１に示す復号装置１０の動作を示すフローチャートである。【００１５】
なお、以下では、ユーザ番号を示す変数としてｎを用いる。ここで、ｎは、０以上の整数である。【００１６】
また、以下では、繰り返し復号回数を示す変数としてｋを用いる。ここで、ｋは、０以上の整数である。また、以下では、繰り返し復号回数の最大値を、Ｋｍａｘとする。【００１７】
繰り返し復号部１１は、ｎ＝０から順に処理を開始する（ステップＳ１０１）。【００１８】
まず、繰り返し復号部１１は、ｎがＮ未満であるか否かを判定する（ステップＳ１０２）。ｎがＮ未満である場合（ステップＳ１０２：Ｙｅｓ）、繰り返し復号部１１は、ｋ＝０とし（ステップＳ１０３）、復号前データＩ（ｎ）の復号を行う。また、繰り返し復号部１１は、ｋを１だけインクリメントする（ステップＳ１０４）。【００１９】
誤り検出部１２は、復号前データＩ（ｎ）の復号結果に対するＣＲＣによる誤り検出を行い（ステップＳ１０５）、誤りが検出されたか否かを判定する（ステップＳ１０６）。【００２０】
復号結果に誤りが検出された場合（ステップＳ１０６：Ｙｅｓ）、繰り返し復号部１１は、ｋがＫｍａｘ未満であるか否かを判定する（ステップＳ１０７）。ｋがＫｍａｘ未満である場合（ステップＳ１０７：Ｙｅｓ）、誤り検出部１２は、信頼度情報を繰り返し復号部１１に出力し（ステップＳ１０８）、繰り返し復号部１１は、その信頼度情報を用いて復号前データＩ（ｎ）の復号を行うと共に、ｋを１だけインクリメントする（ステップＳ１０４）。【００２１】
一方、復号結果に誤りが検出されなかった場合（ステップＳ１０６：Ｎｏ）、または、ｋがＫｍａｘ未満でない（繰り返し復号回数の最大値に達した）場合、誤り検出部１２は、繰り返し復号部１１から出力された復号結果を復号後データＯ（ｎ）として出力する（ステップＳ１０９）。【００２２】
繰り返し復号部１１は、復号後データＯ（ｎ）が出力されると、ｎを１だけインクリメントする（ステップＳ１１０）。以下、ｎ＝Ｎ−１までステップＳ１０２からステップＳ１１０の処理が繰り返され、全てのユーザの復号前データの復号が行われる。【００２３】
全てのユーザの復号前データの復号が行われ、ｎがＮ未満でなくなった場合（ステップＳ１０２：Ｎｏ）、繰り返し復号部１１は、処理を終了する。【００２４】
このように、繰り返し復号部１１は、誤り検出部１２により誤りが検出されなければ、繰り返し復号回数ｋが最大値Ｋｍａｘに達していなくても、復号を終了する。【００２５】
そのため、繰り返し復号回数が最大値Ｋｍａｘに達するまで復号を繰り返す方法と比較して、繰り返し復号回数を減らすことができる。
【先行技術文献】
【特許文献】
【００２６】
【特許文献１】特開２００２−１５２０５６号公報
【発明の概要】
【発明が解決しようとする課題】
【００２７】
しかしながら、上述した３つの方法では、繰り返し復号回数を如何に制御するかについては検討されているが、複数のユーザのデータを、どのような順序で復号するかについては検討されていない。【００２８】
そのため、データの復号を行うユーザの順序によっては、一定の時間内に十分な数のユーザのデータの復号を行うことができず、スループットの低下を招く可能性があるという課題がある。【００２９】
本発明の目的は、上述した課題を解決することができる復号装置および復号順序制御方法を提供することにある。
【課題を解決するための手段】
【００３０】
上記目的を達成するために本発明の復号装置は、
複数のユーザの各々から送信されてきたデータの復号を行う復号装置であって、
復号結果に誤りが検出されなくなるまで、前記データの復号を繰り返す繰り返し復号部と、
前記繰り返し復号部により復号が１回行われる毎に、前記復号結果に対する誤り検出を行い、誤りが検出されれば、前記復号結果に誤りが検出された旨を示す信号を前記繰り返し復号部に出力する誤り検出部と、
前記複数のユーザ毎に、該ユーザから送信されてきたデータの前記復号結果に前記誤り検出部により誤りが検出されなくなるまでに要する時間である復号完了時間を推定し、該推定した前記復号完了時間が短い順に、前記ユーザに順位を付与する復号順制御部と、を有し、
前記繰り返し復号部は、前記復号順制御部により付与された順位が高いユーザから順番に、該ユーザから送信されてきたデータの復号を行うことを特徴とする。【００３１】
上記目的を達成するために本発明の復号順序制御方法は、
複数のユーザの各々から送信されてきたデータの復号を行う復号装置に適用される復号順序制御方法であって、
復号結果に誤りが検出されなくなるまで、前記データの復号を繰り返し、
前記復号が１回行われる毎に、前記復号結果に対する誤り検出を行い、誤りが検出されれば、前記復号結果に誤りが検出された旨を示す信号を出力し、
前記複数のユーザ毎に、該ユーザから送信されてきたデータの前記復号結果に誤りが検出されなくなるまでに要する時間である復号完了時間を推定し、該推定した前記復号完了時間が短い順に、前記ユーザに順位を付与し、
前記付与された順位が高いユーザから順番に、該ユーザから送信されてきたデータの復号を行うことを特徴とする。
【発明の効果】
【００３２】
本発明によれば、復号装置は、ユーザ毎に、復号完了時間を推定し、その推定した復号完了時間が短い順に、ユーザのデータの復号を行う。【００３３】
このように、復号完了時間の短いユーザのデータから順に復号を行うことで、一定の時間内に多くのユーザのデータの復号を完了することができ、スループットの低下を抑えることができる。
【図面の簡単な説明】
【００３４】
【図１】関連する復号装置の構成を示すブロック図である。
【図２】図１に示す復号装置の動作を示すフローチャートである。
【図３】本発明の第１の実施形態の復号装置の構成を示すブロック図である。
【図４】図３に示す復号装置の動作を示すフローチャートである。
【図５】復号順序の制御の有無による、一定の時間内に復号が完了するユーザ数の違いを説明するための図である。
【図６】図３に示す復号順制御部により付与されるデータの復号を行う順位を示す図である。
【図７】本発明の第２の実施形態の復号装置の構成を示すブロック図である。
【図８】図７に示す復号順制御部の動作を示すフローチャートである。
【発明を実施するための形態】
【００３５】
以下に、本発明を実施するための形態について図面を参照して説明する。
【００３６】
なお、本発明の復号装置は、例えば、複数のユーザ端末から送信されてきたデータを処理する基地局内に設けられるものである。
【００３７】
（第１の実施形態）
図３は、本発明の第１の実施形態の復号装置１００の構成を示すブロック図である。
【００３８】
なお、図３において、図１と同様の構成については同じ符号を付し、説明を省略する。
【００３９】
図３に示す復号装置１００は、ΔＳＮＲ（Signal to Noise Ratio、信号対雑音電力比）計算部１０１と、復号順制御部１０２と、繰り返し復号部１１と、誤り検出部１２と、を有する。
【００４０】
なお、ΔＳＮＲ計算部１０１は、計算部の一例である。
【００４１】
ΔＳＮＲ計算部１０１には、複数のユーザ端末から送信されてきた復号前データの、ＳＮＲ推定値（ＳＮＲ（０），ＳＮＲ（１），・・・，ＳＮＲ（Ｎ−１））および所要ＳＮＲ（ＳＮＲ＿Ｒｅｑ（０），ＳＮＲ＿Ｒｅｑ（１），・・・，ＳＮＲ＿Ｒｅｑ（Ｎ−１））が入力される。ＳＮＲ推定値および所要ＳＮＲの括弧内の添え字は、ユーザ番号を示す。
【００４２】
なお、ＳＮＲ推定値は、復号装置１００が設けられた基地局内の他の装置により推定され、その他の装置からΔＳＮＲ計算部１０１に入力される。ＳＮＲの推定方法は、当業者にとってよく知られており、本発明とは直接関係しないので、説明を省略する。
【００４３】
また、所要ＳＮＲは、ユーザ端末から送信されてきたデータの誤り率を一定の確率以下にするために必要なＳＮＲの目標値であり、そのデータの変調方式、符号率によって決まる。所要ＳＮＲは、復号装置１００が設けられた基地局内の更に他の装置により管理されており、その他の装置からΔＳＮＲ計算部１０１に入力される。
【００４４】
ΔＳＮＲ計算部１０１は、ユーザ毎に、そのユーザの復号前データのＳＮＲ推定値および所要ＳＮＲに基づき、式（１）
ΔSNR(n)＝SNR(n)-SNR_Req(n)      （１）
を用いて、ΔＳＮＲを計算する。
【００４５】
ここで、あるユーザについて計算されたΔＳＮＲは、そのユーザの復号前データの送信に用いられたチャネルの状態を示している。
【００４６】
復号前データのＳＮＲ推定値は、その復号前データの送信に用いられたチャネルの状態、および、その復号前データの変調方式、符号率により影響を受ける。一方、所要ＳＮＲは、上述したように、復号前データの変調方式、符号率により決まる。
【００４７】
従って、ΔＳＮＲを計算することで、ＳＮＲ推定値へのチャネルの状態による影響、即ち、そのチャネルの状態が分かる。このΔＳＮＲが大きいほど、チャネルの状態が良いことを意味する。
【００４８】
ΔＳＮＲ計算部１０１は、各ユーザについてΔＳＮＲを計算すると、計算したΔＳＮＲを復号順制御部１０２に出力する。
【００４９】
復号順制御部１０２には、ユーザ毎に計算されたΔＳＮＲと、復号前データＩ（０），Ｉ（１），・・・，Ｉ（Ｎ−１）と、が入力される。
【００５０】
復号順制御部１０２は、ΔＳＮＲ計算部１０１から出力されたΔＳＮＲに基づき、復号前データの復号を行う順位をユーザに付与する。
【００５１】
ここで、復号前データの復号を行う順位の付与は、以下のようにして行われる。
【００５２】
まず、復号順制御部１０２は、ユーザ毎に、そのユーザについて計算されたΔＳＮＲに基づき、復号完了時間を推定する。
【００５３】
ここで、一般に、状態が良いチャネルを用いて送信されてきたデータほど、誤りが検出されなくなるまでの繰り返し復号回数は少なくて済み、復号完了時間も短いと推定される。従って、復号順制御部１０２は、計算されたΔＳＮＲが大きいユーザほど復号完了時間は短いと推定する。
【００５４】
そして、復号順制御部１０２は、推定した復号完了時間が短い順に、ユーザに順位を付与し、付与した順位が高いユーザの復号前データから繰り返し復号部１１に出力する。
【００５５】
繰り返し復号部１１および誤り検出部１２では、上述と同様の処理が行われ、復号後データＯ（０），Ｏ（１），・・・，Ｏ（Ｎ−１）が出力される。
【００５６】
次に、復号装置１００の動作について説明する。
【００５７】
図４は、本実施形態の復号装置１００の動作を示すフローチャートである。
【００５８】
なお、図４において、図２と同様の処理については同じ符号を付し、説明を省略する。
【００５９】
ΔＳＮＲ計算部１０１は、ｎ＝０から順に処理を開始する（ステップＳ２０１）。
【００６０】
まず、ΔＳＮＲ計算部１０１は、ｎがＮ未満であるか否かを判定する（ステップＳ２０２）。
【００６１】
ｎがＮ未満である場合（ステップＳ２０２：Ｙｅｓ）、ΔＳＮＲ計算部１０１は、ユーザ番号ｎの復号前データＩ（ｎ）のＳＮＲ推定値（ＳＮＲ（ｎ））および所要ＳＮＲ（ＳＮＲ＿Ｒｅｑ（ｎ））に基づき、式（１）を用いてΔＳＮＲ（ｎ）を計算する（ステップＳ２０３）。更に、ΔＳＮＲ計算部１０１は、ｎを１だけインクリメントする（ステップＳ２０４）。以下、ｎ＝Ｎ−１までステップＳ２０２からステップＳ２０４の処理が繰り返され、全てのユーザについてΔＳＮＲが計算される。
【００６２】
全てのユーザについてΔＳＮＲが計算され、ｎがＮ未満でなくなった場合（ステップＳ２０２：Ｎｏ）、ΔＳＮＲ計算部１０１は、計算したΔＳＮＲ（０），ΔＳＮＲ（１），・・・，ΔＳＮＲ（Ｎ−１）を復号順制御部１０２に出力する。
【００６３】
復号順制御部１０２は、ΔＳＮＲが大きい順に、即ち、推定される復号完了時間が短い順に、ユーザに順位を付与する。更に、復号順制御部１０２は、付与した順位が高いユーザの順に復号前データを並べ替え（ステップＳ２０５）、その並べ替えた順に、復号前データを繰り返し復号部１１に出力する。
【００６４】
以下では、ΔＳＮＲがｍ＋１番目に大きいユーザのユーザ番号をｕｓｅｒ（ｍ）と表す。ただし、ｍは、０以上の整数であり、ｕｓｅｒ（ｍ）∈｛０，１，・・・，Ｎ−１｝である。ここで、各ユーザについて計算されたΔＳＮＲの関係は式（２）に示されるとおりである。
ΔSNR(user(0))≧ΔSNR(user(1))≧ΔSNR(user(2))≧…≧ΔSNR(user(N-1))      （２）
このとき、繰り返し復号部１１には、Ｉ（ｕｓｅｒ（０）），Ｉ（ｕｓｅｒ（１）），・・・，Ｉ（ｕｓｅｒ（Ｎ−１））の順で復号前データが入力される。
【００６５】
繰り返し復号部１１は、ｍ＝０から順に処理を開始する（ステップＳ２０６）。
【００６６】
まず、繰り返し復号部１１は、ｍがＮ未満であるか否かを判定する（ステップＳ２０７）。
【００６７】
ｍがＮ未満であれば（ステップＳ２０７：Ｙｅｓ）、繰り返し復号部１１は、ｋ＝０とし（ステップＳ１０３）、復号前データＩ（ｕｓｅｒ（ｍ））の復号を行う。以下、繰り返し復号部１１による復号と誤り検出部１２による誤り検出とが行われ（ステップＳ１０４〜ステップＳ１０８）、復号後データＯ（ｕｓｅｒ（ｍ））が出力される（ステップＳ１０９）。復号後データＯ（ｕｓｅｒ（ｍ））が出力されると、繰り返し復号部１１は、ｍを１だけインクリメントする（ステップＳ２０８）。以下、ｍ＝Ｎ−１までステップＳ２０７からステップＳ２０８の処理が繰り返され、全てのユーザの復号前データの復号が行われる。
【００６８】
全てのユーザの復号前データの復号が行われ、ｎがＮ未満でなくなった場合（ステップＳ２０７：Ｎｏ）、繰り返し復号部１１は、処理を終了する。
【００６９】
次に、復号順制御部１０２による復号順序の制御の有無により、一定の時間内に復号が完了するユーザ数の違いについて説明する。
【００７０】
なお、以下では、復号装置１００が復号処理を行うユーザ数Ｎ＝１０であり、繰り返し復号回数の最大値Ｋｍａｘ＝８であるとする。また、復号１回あたりの処理時間は２５μｓであり、復号処理に割り当てられた時間は１０００μｓであるとする。
【００７１】
また、復号装置１００は、割り当てられた時間までしか復号処理を行うことができず、割り当てられた時間を経過すると復号処理を打ち切る。この場合、復号が完了しなかったユーザのデータは全て復号ＮＧ（誤り検出部１２で誤りが検出された状態）となる。
【００７２】
以下では、図５に示す２つのケース（Ｃａｓｅ１およびＣａｓｅ２）について、復号処理に割り当てられた時間内に復号が完了するユーザ数を考える。
【００７３】
図５は、各ケースにおける、復号が完了するまでのユーザ毎の繰り返し復号回数と、ユーザ毎の繰り返し復号回数の合計とを示す。
【００７４】
なお、図５において、「ＮＧ」と記載のあるユーザは、繰り返し復号回数の最大値（８回）に達しても、誤りが検出されてしまうユーザを示す。
【００７５】
また、復号順制御部１０２は、図６に示すように、復号前データの復号を行う順位をユーザに付与したとする。
【００７６】
ここで、図６に示すユーザの順位は、図５に示す繰り返し復号回数が少ないユーザの順位と一致する。
【００７７】
これは、復号順制御部１０２は、繰り返し復号回数が少ないユーザほど、即ち、計算されるΔＳＮＲが大きいユーザほど、復号完了時間が短いと推定し、高い順位を付与するためである。
【００７８】
まず、Ｃａｓｅ１の場合の復号処理に割り当てられた時間内に復号が完了するユーザ数ついて考える。
【００７９】
Ｃａｓｅ１では、繰り返し復号回数の合計は４０回である。従って、全てのユーザの復号前データの復号を行うには、４０×２５＝１０００μｓかかる。これは、復号処理に割り当てられた時間（１０００μｓ）に収まっているため、どのようなユーザの順序で復号処理を行っても、割り当てられた時間内に全てのユーザの復号前データの復号を完了させることができる。
【００８０】
次に、Ｃａｓｅ２の場合の復号処理に割り当てられた時間内に復号が完了するユーザ数ついて考える。
【００８１】
Ｃａｓｅ２では、繰り返し復号回数の合計は５０回である。従って、全てのユーザの復号前データの復号を行うには、５０×２５＝１２５０μｓかかる。これは、復号処理に割り当てられた時間（１０００μｓ）を超えるため、この場合は途中で復号処理が打ち切られることになる。
【００８２】
ここで、復号順序の制御を行わず、Ｕｓｅｒ＃１の復号前データから順に復号を行うと、Ｕｓｅｒ＃８の復号前データの復号の途中で割り当てられた時間（１０００μｓ）を超えてしまう。つまり、Ｕｓｅｒ＃８，＃９，＃１０の復号前データの復号は完了せず、これらのユーザの復号前データは全て復号ＮＧとなる。また、Ｕｓｅｒ＃８よりも前に復号が行われたユーザのうち、Ｕｓｅｒ＃１，＃５，＃７は繰り返し復号回数の最大値（８回）に達するまで復号を繰り返しても「ＮＧ」となるため、結局、復号が完了するユーザ数は、１０ユーザ中４ユーザとなる。
一方、図６に示す順に復号が行われと、８番目のＵｓｅｒ＃１までは復号が完了する。９番目のＵｓｅｒ＃７の復号の途中で処理時間が１０００μｓを超えるため、Ｕｓｅｒ＃５，＃７は復号が完了せず、これらのユーザの復号前データは復号ＮＧとなる。また、Ｕｓｅｒ＃７よりも前に復号が行われたユーザのうちＵｓｅｒ＃１以外は全て復号が完了するため、結局、復号が完了するユーザ数は、１０ユーザ中７ユーザとなる。
【００８３】
このように、本実施形態によれば、復号装置１００は、ユーザ毎に復号完了時間を推定し、その推定した復号完了時間が短い順に、ユーザの復号前データの復号を行う。
【００８４】
復号完了時間が短いユーザの復号前データから順に復号を行うことで、一定の時間内に多くのユーザの復号前データの復号を完了させ、スループットの低下を抑えることができる。
【００８５】
（第２の実施形態）
図７は、本発明の第２の実施形態の復号装置２００の構成を示すブロック図である。
【００８６】
なお、図７において、図３と同様の構成については同じ符号を付し、説明を省略する。
【００８７】
図７に示す復号装置２００は、第１の実施形態の復号装置１００と比較して、復号順制御部１０２を復号順制御部２０１に変更した点が異なる。
【００８８】
復号順制御部２０１には、ΔＳＮＲ計算部１０１により各ユーザについて計算されたΔＳＮＲと、複数のユーザの各々の復号前データＩ（０），Ｉ（１），・・・，Ｉ（Ｎ−１）と、その復号前データのデータサイズを示すＴＢＳ（Transport Block Size、転送ブロックサイズ）（ＴＢＳ（０），ＴＢＳ（１），・・・，ＴＢＳ（Ｎ−１））と、が入力される。なお、ＴＢＳの括弧内の添え字は、ユーザ番号を示す。
【００８９】
復号順制御部２０１は、ユーザ毎に、そのユーザについて計算されたΔＳＮＲと、そのユーザの復号前データのＴＢＳと、に基づき、復号完了時間を推定する。そして、復号順制御部２０１は、推定した復号完了時間が短い順に、ユーザに順位を付与し、付与した順位が高いユーザの復号前データから順に繰り返し復号部１１に出力する。なお、ユーザへの順位の付与方法については後述する。
【００９０】
次に、復号順制御部２０１の動作について説明する。
【００９１】
図８は、復号順制御部２０１の動作を示すフローチャートである。
【００９２】
復号順制御部２０１は、ｎ＝０から順に処理を開始する（ステップＳ３０１）。
【００９３】
まず、復号順制御部２０１は、ｎがＮ未満であるか否かを判定する（ステップＳ３０２）。
【００９４】
ｎがＮ未満である場合（ステップＳ３０２：Ｙｅｓ）、復号順制御部２０１は、ユーザ番号ｎのユーザについて計算されたΔＳＮＲ（ｎ）に基づき、そのユーザをカテゴリ１からカテゴリ３のいずれかに分類する（ステップＳ３０３）。ここで、復号順制御部２０１は、ΔＳＮＲ（ｎ）が、３ｄＢより大きければカテゴリ１に、−３ｄＢ以上３ｄＢ以下であればカテゴリ２に、ΔＳＮＲが−３ｄＢ未満であればカテゴリ３に、ユーザ番号ｎのユーザを分類する。
【００９５】
なお、各カテゴリのΔＳＮＲの範囲は上述した例に限られるものではない。また、カテゴリの数は、３つに限られるものではなく、２つ、あるいは、４つ以上であってもよい。
【００９６】
ただし、カテゴリ内のユーザについて計算されたΔＳＮＲは大きく異ならず、推定される復号完了時間がほぼ同等となるような、各カテゴリのΔＳＮＲの範囲およびカテゴリ数にすることが望ましい。
【００９７】
次に、復号順制御部２０１は、ｎを１だけインクリメントする（ステップＳ３０４）。以下、ｎ＝Ｎ−１までステップＳ３０２からステップＳ３０４の処理が繰り返され、全てのユーザがいずれかのカテゴリに分類される。
【００９８】
全てのユーザがいずれかのカテゴリに分類され、ｎがＮ未満でなくなった場合（ステップＳ３０２：Ｙｅｓ）、復号順制御部２０１は、ユーザ毎に、復号完了時間を推定する。
【００９９】
ここで、上述したように、計算されたΔＳＮＲが大きいユーザほど、復号完了時間は短いと推定される。
【０１００】
従って、復号順制御部２０１は、カテゴリ間では、ΔＳＮＲが大きいカテゴリに分類されたユーザほど復号完了時間は短いと推定する。即ち、復号順制御部２０１は、カテゴリ１に分類されたユーザ、カテゴリ２に分類されたユーザ、カテゴリ３に分類されたユーザ、の順に復号完了時間が短いと推定する。
【０１０１】
また、カテゴリ内では、各ユーザについて計算されたΔＳＮＲから推定される復号完了時間はほぼ等しいので、その復号完了時間は、各ユーザの復号前データのＴＢＳに比例する。
【０１０２】
従って、復号順制御部２０１は、カテゴリ内では、復号前データのＴＢＳが小さいユーザほど復号完了時間は短いと推定する。
【０１０３】
その結果、復号順制御部２０１は、カテゴリ１に分類され、復号前データのＴＢＳが小さいユーザの順、カテゴリ２に分類され、復号前データのＴＢＳが小さいユーザの順、カテゴリ３に分類され、復号前データのＴＢＳが小さいユーザの順、に復号完了時間が短いと推定する。
【０１０４】
そして、復号順制御部２０１は、推定した復号完了時間が短い順に、ユーザに順位を付与し、付与した順位が高いユーザの順に復号前データを並べ替える（ステップＳ３０５）。
【０１０５】
このように本実施形態によれば、ユーザ毎に計算されたΔＳＮＲおよび復号前データのＴＢＳに基づき、ユーザ毎の復号完了時間を推定することで、その推定精度が上がり、より確実に、復号完了時間が短いユーザのデータから順に復号を行うことができる。
【０１０６】
以上、実施形態を参照して本願発明を説明したが、本発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解し得る様々な変更をすることができる。
【０１０７】
この出願は、２０１０年５月２１日に出願された日本出願２０１０−１１７２４０を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2011145513.tif 000003
【図２】
2011145513.tif 000004
【図３】
2011145513.tif 000005
【図４】
2011145513.tif 000006
【図５】
2011145513.tif 000007
【図６】
2011145513.tif 000008
【図７】
2011145513.tif 000009
【図８】
2011145513.tif 000010
【国際調査報告】
2011145513.tif 000011
2011145513.tif 000012
2011145513.tif 000013
2011145513.tif 000014