(57)【特許請求の範囲】
【請求項１】
固定コードブックの探索方法であって、
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む基本コードワードを取得し、
ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であるとき、ｎ個のパルスを探索パルスとして選択し、前記ｎ個の探索パルスの位置情報をそれぞれ前記トラック上の他の位置情報で置き換えることで探索されたコードワードを取得し、
前記選択及び置き換えを一探索プロセスとしてＫ回を一探索ラウンドとして実行し、前記一探索ラウンド内の各探索プロセスで選択される前記ｎ個のパルスが同じＮ個のパルスの位置情報を含む一つの同じ前記基本コードワードから選択され、Ｋが２以上の正の整数であり、少なくとも２個以上の探索パルスが前記Ｋ回の探索プロセスのうちの１つで選択され、前記選択される探索パルスは前記Ｋ回の探索プロセスのそれぞれにおいて異なり、
予め設定された基準に従って、前記基本コードワードと前記探索されたコードワードとから最適なコードワードを取得し、
前記基本コードワードを前記最適なコードワードで置き換えて次の基本コードワードとし、前記次の基本コードワードが次の探索ラウンドにおいて次の最適なコードワードを取得するための各探索プロセスにおける基礎となること、
を含む、方法。
【請求項２】
前記ｎ個のパルスを探索パルスとして選択することは、
Ｎｓ個のパルスがＮ個のパルスのすべてまたは一部分であり、ＮｓがＮ以下の正の整数であり、ｎがＮｓよりも小さな正の整数であるとき、Ｎｓ個のパルスからｎ個のパルスを前記探索パルスとして選択し、
前記ｎ個の探索パルス以外の、前記基本コードワード内のパルスの位置を固定すること
を含む、請求項１に記載の方法。
【請求項３】
前記Ｎｓ個のパルスからｎ個のパルスを前記探索パルスとして選択することは、
ｎの値とパルスの組み合わせとを前記探索パルスとして無作為に選択すること、または、
２以上であるｎの値を決定し、前記ｎの値に従ってパルスの組み合わせを前記探索パルスとして無作為に選択することを含み、
前記探索プロセスをＫ回実行することは、
Ｋの上限に到達するまで探索すること、または、
Ｋの前記上限を超過していない場合に、前記選択される探索パルスが前記Ｎｓ個のパルスを網羅するまで探索することを含む、
請求項２に記載の方法。
【請求項４】
前記Ｎｓ個のパルスからｎ個のパルスを前記探索パルスとして選択することは、各探索プロセスにおいて２以上であるｎの前記値を決定し、ＣnNs個の可能なすべての組み合わせのうちの１つを、繰り返しなしに順に、または無作為に選択し、Ｋ≦ＣnNsであることを含む、請求項３に記載の方法。
【請求項５】
前記ｎ個の探索パルスの位置をそれぞれ前記トラック上の他の位置で置き換えることは、前記ｎ個のパルスの前記位置をそれぞれ前記トラック上の予め設定された範囲内の位置の１つずつで置き換えることを含む、請求項２に記載の方法。
【請求項６】
Ｎｓ＝Ｎである場合に、
前記基本コードワードを前記最適なコードワードで置き換えるプロセスを、探索ラウンドの回数Ｇが、Ｇの所定の上限に到達するまで繰り返すこと
をさらに含む、請求項２〜５のいずれか一項に記載の方法。
【請求項７】
前記基本コードワードを前記最適なコードワードで置き換えて次の基本コードワードとすることが、
前記最適なコードワードを新しい基本コードワードとして元の基本コードワードを置き換えるために使用し、先のＮｓパルス内のパルスであって、前記最適なコードワードが取得された前記探索プロセス内で固定位置を有するパルスを新しいＮｓパルスとして使用し、新しい探索ラウンドで最適なコードワードの探索を継続することを含み、
前記方法が、
前記元の基本コードワードを前記最適なコードワードで置き換えるプロセスを、探索ラウンドの回数Ｇが、Ｇの所定の上限に到達するまで繰り返すこと
をさらに含む、請求項２〜５のいずれか一項に記載の方法。
【請求項８】
前記基本コードワードを取得することは、
Ｍ個のトラック上のＮ個のパルスの量的分布を取得し、
各トラック上のパルスの位置を無作為に設定すること、または、各トラック上のパルスの位置を前記トラック上の既知の基準信号のいくつかの極値に従って決定すること、
を含む、請求項１〜５のいずれか一項に記載の方法。
【請求項９】
前記基本コードワードを取得することは、
Ｍ個のトラック上のＮ個のパルスの量的分布を取得し、
各トラック上の中央探索範囲を決定し、前記中央探索範囲は、各トラック上の既知の基準信号のいくつかの極値に従って、前記トラック上の少なくとも１個の位置を含み、
前記Ｍ個の中央探索範囲内での前記Ｎ個のパルスの前記量的分布に従って全探索を実行し、予め設定された基準に従って、すべての可能な位置の組み合わせから基本コードワードを選択すること
を含む、請求項１〜５のいずれか一項に記載の方法。
【請求項１０】
前記予め設定された基準に従って、前記基本コードワードと前記探索されたコードワードとから最適なコードワードを取得することは、探索されたコードワードを取得する探索プロセスと同時に実行されてよく、
前記最適なコードワードを取得することは、
各探索プロセスにおいて、前記探索されたコードワードと前記基本コードワードを前記予め設定された基準に従って比較し、最良のものを新しい基本コードワードとして選択し、
Ｋ回目のプロセスでの前記基本コードワードを前記探索ラウンドでの最適なコードワードとして選択すること
を含む、請求項１に記載の方法。
【請求項１１】
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む基本コードワードを提供するように構成された基本コードワードユニットと、
一探索ラウンド内で探索パルスを選択し、前記探索パルスに対してＫ回のサイクリックな探索の実行を決定するように構成された、探索循環ユニットであって、ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であり、Ｋが２以上の正の整数であるとき、ｎ個のパルスを探索パルスとして選択し、前記一ラウンド内の各探索で選択される前記ｎ個のパルスが同じＮ個のパルスの位置情報を含む一つの同じ前記基本コードワードから選択され、前記Ｋ回の探索のうちの少なくとも１回では２個以上の探索パルスを選択し、前記選択される探索パルスは各探索で異なる、探索循環ユニットと、
前記探索循環ユニットの各選択に従って、前記ｎ個の探索パルスの位置をそれぞれ前記トラック上の他の位置で置き換えることで探索されたコードワードを取得するように構成された探索ユニットと、
予め設定された基準に従って、前記基本コードワードと、Ｋ回のサイクリックな探索の後で前記探索ユニットによって取得される前記探索されたコードワードとから、現在の探索ラウンドの最適なコードワードを選択するように構成された、計算ユニットと
前記基本コードワードユニットによって提供された前記基本コードワードを、前記計算ユニットによって取得された前記現在の探索ラウンドの前記最適なコードワードで置き換え、次の探索ラウンドを実行するよう前記探索循環ユニットをトリガするよう構成された、ラウンド循環ユニットと、
を備える、固定コードブックの探索装置。
【請求項１２】
前記探索循環ユニットは、Ｎｓ個のパルスがＮ個のパルスのすべてまたは一部分であり、ＮｓがＮ以下の正の整数であり、ｎがＮｓよりも小さな正の整数であるとき、Ｎｓ個のパルスからｎ個のパルスを前記探索パルスとして選択し、前記ｎ個の探索パルス以外の、前記基本コードワード内のパルスの位置を固定する、
請求項１１に記載の固定コードブックの探索装置。
【請求項１３】
前記探索循環ユニットは、
ｎが２以上であるとき、Ｎｓ個のパルスからｎ個のパルスを探索パルスとして選択するために、ＣnNs個の可能なすべての組み合わせを提供するように構成された組み合わせ提供ユニットと、
Ｋ≦ＣnNsであるとき、前記ＣnNs個の可能なすべての組み合わせのうちの１つをＫ回にわたって、繰り返しなしに順に、または無作為に選択するように構成されたサイクリック実行ユニットと
を備える、請求項１２に記載の固定コードブックの探索装置。
【請求項１４】
前記基本コードワードユニットは、
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの量的分布を取得し、各トラック上にパルス位置を無作為に設定することにより基本コードワードを提供するように構成された、コードブック提供ユニットと、
前記コードブック提供ユニット内の前記基本コードワードを計算および初期化するように構成された初期計算ユニットと、
を備える、請求項１１に記載の固定コードブックの探索装置。
【請求項１５】
コンピュータプログラムコードを含むコンピュータ可読記憶媒体であって、前記コンピュータプログラムコードがコンピュータ装置によって実行されることで前記コンピュータ装置が、
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む基本コードワードを取得し、
ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であるとき、ｎ個のパルスを探索パルスとして選択し、前記ｎ個の探索パルスの位置情報をそれぞれ前記トラック上の他の位置情報で置き換えることで探索されたコードワードを取得し、
前記選択及び置き換えを一探索プロセスとしてＫ回を一探索ラウンドとして実行し、前記一探索ラウンド内の各探索プロセスで選択される前記ｎ個のパルスが同じＮ個のパルスの位置情報を含む一つの同じ前記基本コードワードから選択され、Ｋが２以上の正の整数であり、少なくとも２個以上の探索パルスが前記Ｋ回の探索プロセスのうちの１つで選択され、前記選択される探索パルスは前記Ｋ回の探索プロセスのそれぞれにおいて異なり、
予め設定された基準に従って、前記基本コードワードと前記探索されたコードワードとから最適なコードワードを取得し、
前記基本コードワードを前記最適なコードワードで置き換えて次の基本コードワードとし、前記次の基本コードワードを次の探索ラウンドにおいて次の最適なコードワードを取得するための各探索プロセスにおける基礎とする、
プロセスを実行することが可能である、コンピュータ可読記憶媒体。
【請求項１６】
固定コードブックの探索方法であって、
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上に位置するＮ個のパルスを含む基本コードワードを好ましいコードワードとして取得し、
ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であるとき、ｎ個のパルスを探索パルスとして選択し、前記ｎ個の探索パルスの位置をそれぞれ前記ｎ個の探索パルスが属するトラック上の他の位置で置き換えることで探索されたコードワードを取得し、
予め設定された基準に従って、探索されたコードワードと好ましいコードワードとからより良好なものを新しい好ましいコードワードとして選択し、
前記探索されたコードワード及び好ましいコードワードの取得プロセスをＫ回行って、最適なコードワードとしての好ましいコードワードを取得し、各探索されたコードワードは、置き換えのためのｎ個の探索パルスを、同じＮ個のパルスを含む一つの同じ前記基本コードワードから選択することで取得され、Ｋが２以上の正の整数であり、２個以上の探索パルスが前記Ｋ回の探索プロセスのうちの少なくとも１つで選択される、
方法。
【請求項１７】
前記ｎ個のパルスを探索パルスとして選択することは、
Ｎｓ個のパルスがＮ個のパルスのすべてまたは一部分であり、ＮｓがＮ以下の正の整数であり、ｎがＮｓよりも小さな正の整数であるとき、Ｎｓ個のパルスからｎ個のパルスを前記探索パルスとして選択し、
前記ｎ個の探索パルス以外の、前記基本コードワード内のパルスの位置を固定すること
を含む、請求項１６に記載の方法。
【請求項１８】
前記Ｎｓ個のパルスからｎ個のパルスを前記探索パルスとして選択することは、
ｎの値とパルスの組み合わせとを前記探索パルスとして無作為に選択すること、または、
２以上であるｎの値を決定し、前記ｎの値に従ってパルスの組み合わせを前記探索パルスとして無作為に選択することを含み、
前記探索プロセスをＫ回実行することは、
Ｋの上限に到達するまで探索すること、または、
Ｋの前記上限を超過していない場合に、前記選択される探索パルスが前記Ｎｓ個のパルスを網羅するまで探索することを含む、
請求項１７に記載の方法。
【請求項１９】
前記Ｎｓ個のパルスからｎ個のパルスを前記探索パルスとして選択することは、各探索プロセスにおいて２以上であるｎの前記値を決定し、ＣnNs個の可能なすべての組み合わせのうちの１つを、繰り返しなしに順に、または無作為に選択し、Ｋ≦ＣnNsであることを含む、請求項１８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２００７年７月１１日に中国専利局に出願された、「固定コードブックを探索するための方法および装置」と題された、中国特許出願第２００７１０１３０５１７．２号の優先権を主張するものであり、当該出願は参照によりその全体が本明細書に援用される。
【０００２】
本発明は、ベクトル符号化に関し、特に、固定コードブック（符号帳）を探索するための方法および装置に関する。
【背景技術】
【０００３】
一般的なベクトル符号化技術では、固定コードブック（ｆｉｘｅｄ  ｃｏｄｅｂｏｏｋ）の１つのタイプである代数コードブック（ａｌｇｅｂｒａｉｃ  ｃｏｄｅｂｏｏｋ）に従って、適応フィルタリング（ａｄａｐｔｉｖｅ  ｆｉｌｔｅｒｉｎｇ）の後の残差信号（ｒｅｓｉｄｕａｌ  ｓｉｇｎａｌ）を量子化および符号化する。代数コードブックはターゲット信号のパルス位置に関係し、デフォルトでパルス振幅を１と見なす。したがって、量子化する必要があるのはパルスシンボルとパルス位置のみである。もちろん、さまざまな振幅を表すために、１つの位置において複数のパルスが重畳されることは可能である。代数コードブックに従って量子化および符号化が実行される場合、ターゲット信号に対応する、最適な代数コードブックのすべてのパルス位置を決定することは、重要な動作である。一般に、最適なパルス位置についての全探索（すべての可能な位置の組み合わせにわたる）は、複雑な計算となる傾向がある。したがって、準最適な探索アルゴリズムを見つけることが必要である。探索アルゴリズムの研究開発の主要な目標は、探索結果の質を保証しながら、探索の回数を最小にし、計算の複雑さを減少させることである。
【０００４】
準最適な探索方法を説明するために、従来技術による、代数コードブックに基づくパルス位置探索において採用される、縦型ツリー探索手順（Ｄｅｐｔｈ−Ｆｉｒｓｔ  Ｔｒｅｅ  Ｓｅａｒｃｈ  Ｐｒｏｃｅｄｕｒｅ）について以下で説明する。
【０００５】
音声サブフレームの長さは６４であると仮定する。符号化のビットレートに応じて、探索するパルス（以下、探索パルスと呼ぶ）の数は異なる。その数はＮであると仮定する。その他の制限がなければ、６４個の位置におけるＮ個のパルスの探索には、過度に複雑な計算が必要とされる。したがって、この方法では、６４個の位置をＭ個のトラックに分割することによって、代数コードブックのパルス位置を制限する。一般的なトラック計画モデルを、表１に示す。
【表１】
0005345725.tif 000002
【０００６】
表１において、Ｔ０〜Ｔ３は４個のトラックであり、位置は、各トラックに含まれる位置番号を指定する。６４個の位置は４個のトラックに分割され、各トラックは１６個の位置を含む。すべてのパルス位置の組み合わせを最大限に保証するため、４個のトラックのパルス位置は相互にインターレースされている。
【０００７】
Ｎ個の探索パルスは、特定の分布モードに従って、Ｍ＝４個のトラックに拘束される。以下の説明では、Ｎ＝４、かつ、各トラックに１個のパルスが配置されると仮定する。その他の場合における探索手順は、推定することができる。
【０００８】
Ｔ０〜Ｔ３上の探索パルスはそれぞれＰ０〜Ｐ３であり、かつ、各探索プロセスでは、２個の隣接したトラック（例えば、Ｔ０〜Ｔ１、Ｔ１〜Ｔ２、Ｔ２〜Ｔ３、およびＴ３〜Ｔ０）における２個のパルスを探索すると仮定する。最終的な最適なコードワードは、４レベルの探索によって取得される。図１に示すように、この手順は以下のステップを含む。
【０００９】
１．レベル１の探索が、Ｔ０〜Ｔ１およびＴ２〜Ｔ３で実行される。最初に、Ｔ０〜Ｔ１で、Ｐ０およびＰ１の位置が探索され、ここで、Ｐ０はＴ０の１６個の位置のうちの４個の中で探索される。４個の位置は、トラック上の既知の基準信号の極値によって決定される。Ｐ１はＴ１の１６個の位置の中で探索される。Ｐ０およびＰ１の最適な位置は、予め設定された基準に従って探し出された４つの位置の組み合わせの間で決定される。次に、Ｔ２〜Ｔ３でＰ２およびＰ３の位置が探索され、ここで、Ｐ２はＴ２の１６個の位置のうちの８個の中で探索される。８個の位置は、トラック上の既知の基準信号の極値によって決定される。Ｐ３はＴ３の１６個の位置の中で探索される。最後に、Ｐ２およびＰ３の最適な位置が決定される。レベル１の探索は完了する。
【００１０】
２．レベル２の探索が、Ｔ１〜Ｔ２およびＴ３〜Ｔ０で実行される。探索プロセスは、レベル１の探索と同様である。
【００１１】
３．同様に、レベル３の探索がＴ２〜Ｔ３およびＴ０〜Ｔ１で実行され、レベル４の探索が、Ｔ３〜Ｔ０およびＴ１〜Ｔ２上で実行される。
【００１２】
４．最後に、４つの探索結果の間で最適な結果が最適な代数コードブックとして選択される。
【００１３】
探索の合計回数は、４×（４×１６＋８×１６）＝７６８である。
【発明の概要】
【発明が解決しようとする課題】
【００１４】
しかし、本発明の発明者は、前述の探索アルゴリズムでは、さまざまなビットレートの下で良好な音声品質が得られるが、探索の回数が多く、計算は複雑であるということを見出した。
【課題を解決するための手段】
【００１５】
したがって、低い計算複雑度で良好な音声品質を得るための、固定コードブックを探索するための方法および装置が提供される。
【００１６】
本発明の一実施形態による、固定コードブックの探索方法は、
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む、基本コードワードを取得し、
ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であるとき、ｎ個のパルスを探索パルスとして選択し、
探索されたコードワードを取得するために、ｎ個の探索パルスの位置情報をそれぞれトラック上の他の位置情報で置き換え、
Ｋが２以上の正の整数であるとき、探索プロセスをＫ回実行し、少なくとも２個以上の探索パルスがＫ回の探索プロセスのうちの１つで選択され、選択される探索パルスはＫ回の探索プロセスのそれぞれにおいて異なり、
予め設定された基準に従って、基本コードワードと探索されたコードワードから、最適なコードワードを取得することを含む。
【００１７】
本発明の一実施形態による、固定コードブックの探索装置は、
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む基本コードワードを提供するように構成された基本コードワードユニットと、
探索パルスを選択し、探索パルスに対してＫ回の循環的（サイクリック）な探索の実行を決定するように構成された、探索循環ユニットであって、ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であり、Ｋが２以上の正の整数であるとき、一ラウンド（循環の一巡）において、ｎ個のパルスを探索パルスとして選択し、Ｋ回の探索のうちの少なくとも１回で２個以上の探索パルスを選択し、選択される探索パルスが各探索で異なる、探索循環ユニットと、
探索されたコードワードを取得するために、探索循環ユニットの各選択に従って、ｎ個の探索パルスの位置をそれぞれトラック上の他の位置に置き換えるように構成された、探索ユニットと、
予め設定された基準に従って、基本コードワードと、Ｋ回の循環的な探索の後で探索ユニットによって取得される探索されたコードワードとから、現在の一ラウンド（一巡）の最適なコードワードを選択するように構成された、計算ユニットとを含む。
本発明の一実施形態による、固定コードブックの探索方法は、
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスを含む基本コードワードを好ましいコードワードとして取得し、
ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であるとき、ｎ個の探索パルスを選択し、探索されたコードワードを取得するために、前記ｎ個の探索パルスの位置をそれぞれのトラック上の他の位置で置き換え、
前記探索されたコードワードと現在の好ましいコードワードのうち良好なものを新しい好ましいコードワードとして選択し、
Ｋが２以上の正の整数であるとき、前記探索されたコードワードと好ましいコードワードを取得するプロセスをＫ回実行して、最適なコードワードとして好ましいコードワードを取得し、２個以上の探索パルスが前記Ｋ回のプロセスのうちの１つで選択される
ことを含む。
【発明の効果】
【００１８】
本発明の実施形態では、最適なコードワードは、パルスの組み合わせを置き換えることによって取得され、少なくとも１回の探索は複数のパルスをカバーする。最適なコードワードは、複数の組み合わせを置き換えることによって取得されるため、グローバルな探索が保証されながら、探索の回数は減少させることができる。各探索プロセスについて、探索パルスのさまざまな組み合わせを選択することによって、探索パルスの選択モードは改良され、その結果、探索プロセスはより効率的となり、探索結果の質は向上する。
【図面の簡単な説明】
【００１９】
【図１】従来技術における縦型ツリー探索手順を示す。
【図２】本発明の一実施形態による、固定コードブックを探索するための方法の手順を示す。
【図３】本発明の一実施形態による、固定コードブックを探索するための方法の手順を示す。
【図４】本発明の一実施形態による、固定コードブックを探索するための方法の手順を示す。
【図５】本発明の一実施形態による、固定コードブックを探索するための方法の手順を示す。
【図６】本発明の一実施形態による、固定コードブックを探索するための方法の手順を示す。
【図７】本発明の一実施形態による、固定コードブックを探索するための装置の論理的構造を示す。
【図８】本発明の一実施形態による、固定コードブックを探索するための装置の論理的構造を示す。
【図９】本発明の一実施形態による、固定コードブックを探索するための装置の論理的構造を示す。
【図１０】本発明の一実施形態による、固定コードブックを探索するための装置の論理的構造を示す。
【発明を実施するための形態】
【００２０】
本開示をよりよく理解するために、以下の記載では、イーサネット（登録商標）リングを例に取って、添付の図面を参照して詳細に説明する。
【００２１】
本発明の一実施形態は、基本コードワードに基づいてパルスの組み合わせを置き換えることによって最適なコードワードを選択する、固定コードブックを探索する方法であって、少なくとも１回の探索は複数のパルスをカバーする、固定コードブックを探索する方法を提供する。本発明の実施形態はさらに、固定コードブックを探索するための装置を提供する。本発明の実施形態によって提供される方法および装置について、以下で詳細に説明する。
【００２２】
本発明の実施形態１によれば、図２に示される固定コードブックを探索するための方法は、以下のステップを含む。
【００２３】
Ａ１．Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む、基本コードワードを取得する。
【００２４】
本明細書で言及される基本コードワードは、探索の一ラウンド（一巡）の中で探索の基礎として働く初期コードブックである。通常、代数コードブックのパルス位置の探索の前に、トラック上の探索される探索パルスの量的分布が、ビットレートおよびその他の情報に従って決定される。量子化に基づく音声符号化におけるパルス探索を例に取る。表１で定義されるように、６４個の位置がＭ個のトラック（Ｍは４に等しい）、即ちＴ０、Ｔ１、Ｔ２、およびＴ３に分割される。異なるビットレートに応じて、可能性のあるパルスの量的分布は、Ｎ＝４かつ各トラック上で１パルスが探索されるか、Ｎ＝８かつ各トラック上で２パルスが探索されるか、または、Ｎ＝５かつＴ０、Ｔ１、Ｔ２上でそれぞれ１パルス、Ｔ３上で２パルスが探索されるか、である。
【００２５】
Ｍ個のトラック上のＮ個のパルスの量的分布が決定された後で、基本コードワードを取得することは、各トラック上の各パルスの初期位置を取得することである。パルスの初期位置は、本実施形態によって限定されることなく、例えば、以下の手法のうちのいずれかによって決定されてもよい。
【００２６】
１．パルスが配置されるトラック上の任意の位置を、パルスの初期位置として無作為に選択すること。
２．各トラック上の既知の基準信号のいくつかの極値に従って、対応するトラック上のパルスの位置を決定すること。
３．計算モードでパルスの初期位置（基本コードワード）を取得すること。
【００２７】
１つの任意選択的な基準信号は、パルス位置最尤関数（パルス振幅選択信号としても知られている）である。この関数は、次のように表される。
【数１】
0005345725.tif 000003
【００２８】
上式で、ｄ（ｉ）は、量子化するターゲット信号に従って決定された、ベクトル信号ｄの次元成分を表し、これは、一般に、ターゲット信号と、重み付き合成フィルタの予めフィルタされた（pre-filtered）パルス応答との畳み込みによって表されてもよい。ｒLTP
（ｉ）は、長期予測法（ＬＴＰ）の残差信号の次元成分を表す。Ｅdは、信号ｄのエネル
ギーである。Ｅrは、信号ｒのエネルギーである。ａは、基準信号ｄ（ｉ）の依存性を制
御する比例因子であり、ビットレートに応じて異なってもよい。６４個の位置におけるｂ（ｉ）の値が計算され、Ｔ０〜Ｔ３のそれぞれのトラック上で、最も大きなｂ（ｉ）が得られる位置がパルスの初期位置と見なされる。
【００２９】
Ａ２．ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であるとき、ｎ個のパルスを探索パルスとして選択する。ｎ個のパルスを探索パルスとして選択することは、Ｎｓ個のパルスがＮ個のパルスのすべてまたは一部分であり、ＮｓがＮ以下の正の整数であり、ｎがＮｓよりも小さな正の整数であるとき、Ｎｓ個のパルスからｎ個のパルスを探索パルスとして選択し、ｎ個の探索パルス以外の基本コードワード内のパルスの位置を固定し、探索されたコードワードを取得するために、ｎ個の探索パルスの位置をそれぞれそのトラック上の他の位置に置き換えることである。
【００３０】
探索パルスとして選択されることができるパルスは、Ｎｓ個のパルスのすべてまたは一部分であってもよい。探索パルスとして選択されることが可能なパルスの組を、以下、Ｎｓセットと呼ぶ。Ｎ個のパルスのうちの任意のパルスが、Ｎｓセット以外である場合、それらのＮ個のパルスのうちの任意のパルスの位置は好ましい位置であり、探索は停止されてよい。
【００３１】
Ｎｓ個のパルスからｎ個のパルスを探索パルスとして選択するために、本実施形態によって制限されることなく、さまざまな方法が採用されてもよい。例えばその方法は以下であってもよい。
【００３２】
１．ｎの値と探索パルスの組み合わせとを、無作為に選択する。
【００３３】
Ｎｓセットが３個のパルス、Ｐ０、Ｐ１、およびＰ２を含むと仮定する。その場合、可能な選択肢は、ｎ＝１かつ探索パルスはＰ１、ｎ＝２かつ探索パルスはＰ０およびＰ２、ｎ＝２かつ探索パルスはＰ１およびＰ２、である。
【００３４】
２．２以上のｎの値を決定し、探索パルスの無作為な組み合わせを選択する。
【００３５】
Ｎｓセットが４個のパルス、Ｐ０、Ｐ１、Ｐ２、およびＰ３を含み、かつ、ｎ＝３に決定されると仮定する。その場合、可能な選択肢は、探索パルスはＰ０、Ｐ１、およびＰ２であるか、探索パルスはＰ０、Ｐ２、およびＰ３であるか、探索パルスはＰ０、Ｐ１、およびＰ３であるか、探索パルスはＰ１、Ｐ２、およびＰ３であるかとなる。
【００３６】
探索パルスの組み合わせが決定された後で、探索されたコードワードを取得するために、基本コードワード内の対応する位置を、それらの探索パルスのトラック上の他の位置で置き換える。
【００３７】
基本コードワードは、Ｍ＝４個のトラック、Ｔ０、Ｔ１、Ｔ２、およびＴ３上にそれぞれ配置された、Ｎ＝４個のパルス、Ｐ０、Ｐ１、Ｐ２、およびＰ３を含み、各トラック上に１個のパルスが配置されている、と仮定する。
【００３８】
１つの探索プロセスによって選択される探索パルスが、Ｐ２およびＰ３である場合、基本コードワード内のＰ０およびＰ１の位置は固定される。Ｐ２の位置をＴ２上の他の位置（ｔ２個のそのような位置があると仮定する）のそれぞれで置き換え、Ｐ３の位置をＴ３上の他の位置（ｔ３個のそのような位置があると仮定する）で置き換える。その場合、全部で、（ｔ２＋１）×（ｔ３＋１）−１＝ｔ２×ｔ３＋ｔ２＋ｔ３個の、対応する探索されたコードワードが存在する。
【００３９】
探索されるトラック上の置き換えのための位置は、トラック上のすべての位置であってもよく、または、所定の範囲内の位置のみを含んでもよいことを理解されたい。例えば、既知の基準信号の値に応じて、探索されるトラックから位置の一部分が選択されてもよい。
【００４０】
Ａ３．ステップＡ２内の探索プロセスをＫ回、一ラウンド（一巡）として実行する。各探索プロセスによって選択される探索パルスは、すべて同じではない。Ｋは、２以上の正の整数である。少なくとも１回の探索プロセスで、２個以上の探索パルスを選択する。
【００４１】
ステップＡ２の循環的な実行回数Ｋは、特定の上限であってもよい。Ｋ回の探索プロセスが完了したら、探索の一ラウンドは完了したと見なされる。
【００４２】
さらに、本発明の実施形態では、Ｋの値を制限しなくてもよい。これは、Ｋの値は不確定であるということを意味する。探索終了条件が、探索の一ラウンドが完了したかどうかを判定するために使用される。例えば、選択される探索パルスが、Ｎｓセットを網羅（横断）してしまった場合に、探索ラウンドは完了したと判定される。あるいは、前述の２つの方法は組み合わされてもよく、探索終了条件は、探索の回数が所定のＫ以下である間に、探索一ラウンドが完了したかどうかを判定するために使用されてもよい。探索の回数が上限Ｋに到達した場合は、たとえ探索終了条件が満たされていなくても、探索ラウンドは完了したと見なされる。具体的な規則は、実際の必要性によって決まり、本発明の実施形態によって限定されない。
【００４３】
探索結果がパルス間の相互関係を反映できるようにするために、本発明の実施形態では、Ｋ回の探索のうちの少なくとも１回は、２個以上のパルスを対象として含むことが条件とされ、ここで、選択される探索パルスは、１個の、またはさまざまなトラック上に分布していてもよい。
【００４４】
Ａ４．現在の探索ラウンド内での最適なコードワードを取得し、最適なコードワードは、予め設定された基準に従って、基本コードワードと探索されたコードワードとから選択される。
【００４５】
探索されたコードワードと基本コードワードとを評価するプロセスは、ステップＡ２における探索プロセスと同時に実行されてもよい。例えば、好ましいコードワードが初期値とともに基本コードワードとして設定されてもよく、次に、探索されたコードワードが取得された後で、探索されたコードワードは現在の好ましいコードワードと比較され、探索されたコードワードが現在の好ましいコードワードよりも良好である場合、探索されたコードワードは現在の好ましいコードワードに取って代わり、Ｋ回のすべての探索の完了時の、最終的に取得された好ましいコードワードが、探索ラウンドの最適なコードワードとなる。各探索の基礎は依然として基本コードワードであるが、比較の対象は好ましいコードワードであるということに留意すべきである。
【００４６】
あるいは、Ｋ回の探索の結果は一度に比較されてもよい。例えば、各探索によって取得された好ましいコードワードが記憶され、最適なコードワードを選択するために、Ｋ個の好ましいコードワードが一度に比較されてもよい。
【００４７】
探索されたコードワードと基本コードワードとを比較および評価するための基準は、本発明の実施形態によって限定されることなく、実際の必要性によって決まってもよい。例えば、代数コードブックの質を測定するために一般的に使用される費用関数（Ｑｋ）が、比較基準として採用されてもよい。通常、Ｑｋの値が大きければ大きいほど、コードブックは良好である。したがって、より大きなＱｋを有するコードブックが、好ましいコードワードとして選択されることができる。
【００４８】
本発明のこの実施形態では、最適なコードワードは、パルスの組み合わせを置き換えることによって取得され、少なくとも１回の探索は複数のパルスをカバーする（対象として含む）。最適なコードワードはさまざまな組み合わせの置き換えから選択されるため、この方法はグローバルな探索を保証しながら、探索の回数を可能な最大限度まで減少させることが可能である。さらに、少なくとも１回の探索が複数のパルスをカバーするため、パルス間の相互関係の探索結果への影響を考慮に入れることができ、探索結果の質はさらに確実なものとなる。
【００４９】
本発明の実施形態２では、実施形態１に基づいて探索パルスを選択する特定の手順を使用する、固定コードブックを探索するための方法が提供される。図３に示すように、この手順は以下のステップを含む。
【００５０】
Ｂ１．Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む、基本コードワードを取得する。
【００５１】
このステップは、前述の実施形態のステップＡ１を参照して実行されてもよい。
【００５２】
Ｂ２．Ｎｓが実施形態１と同じものを意味し、ｎ０は２以上であって現在の探索ラウンド内で不変であるとき、Ｎｓ個のパルスから、ｎ＝ｎ０個の探索パルスを選択し、選択されるｎ０個の探索パルスは、ＣnNs個の可能なすべての組み合わせのうちの１つであり、
繰り返して選択されることはない。
【００５３】
Ｎｓセットは、Ｍ＝４個のトラック、Ｔ０、Ｔ１、Ｔ２、Ｔ３上にそれぞれ配置された、Ｎ＝４個のパルス、Ｐ０、Ｐ１、Ｐ２、Ｐ３を含み、各トラック上に１個のパルスが配置されている、と仮定する。ｎ＝ｎ０＝２に設定すると、Ｎｓセットから２個の探索パルスを選択するために、全部でＣnNs＝６個の可能な組み合わせ（Ｐ０とＰ１、Ｐ０とＰ２
、Ｐ０とＰ３、Ｐ１とＰ２、Ｐ１とＰ３、Ｐ２とＰ３、を含む）が存在する。選択は６個の組み合わせから無作為に、または順次に行われてもよく、選択が繰り返されないようにするために、組み合わせは変化規則に従って選択されてもよく、あるいは、すべての組み合わせが記憶されるかまたは番号付けされて、すでに選択された組み合わせ（または番号）が削除されてもよい。
【００５４】
Ｂ３．ステップＡ２内の探索プロセスをＫ回、一ラウンドとして実行する。各探索プロセスによって選択される探索パルスは、すべて同じではない。Ｋは、条件２≦Ｋ≦ＣnNs
を満足する。少なくとも１回の探索プロセスは、２個以上の探索パルスを選択する。
【００５５】
ｎは固定値を取り、かつ、探索パルスのそれぞれの選択される組み合わせは繰り返されないため、最大ＣnNs回の探索の後は、Ｎｓセット内のすべての可能な組み合わせが網羅
される。あるいは、Ｋの上限はＣnNsより小さく設定されてもよく、その場合、すべての
可能な組み合わせは網羅されないが、それでもなお、選択される探索パルスはＮｓセットを網羅しうる。
【００５６】
Ｂ４．現在の探索ラウンド内での最適なコードワードを取得し、最適なコードワードは予め設定された基準に従って、基本コードワードと探索されたコードワードとから選択される。
【００５７】
このステップは、前述の実施形態のステップＡ４を参照して実行されてもよい。
【００５８】
この実施形態では、探索ラウンド内でｎは固定値を取り、探索パルスのさまざまな組み合わせが順に選択される。これは探索パルスを選択するための方法を改善し、したがって探索プロセスはより効率的になる。さらに、探索パルスのすべての可能な組み合わせが網羅される場合、探索結果のグローバル性がさらに強化されることができ、探索結果の質は向上する。
【００５９】
本発明の実施形態３では、実施形態１および実施形態２に基づいて、循環的（サイクリック）なマルチ（複数）ラウンド実行を使用する、固定コードブックを探索するための方法が提供される。図４に示すように、この手順は以下のステップを含む。
【００６０】
Ｃ１．Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む、基本コードワードを取得する。
【００６１】
このステップは、前述の実施形態のステップＡ１を参照して実行されてもよい。
【００６２】
Ｃ２．Ｎｓ＝Ｎと仮定し、Ｋ回の探索の一ラウンドを実行して、現在のラウンドの最適なコードワードを取得する。
【００６３】
このステップは、実施形態１のステップＡ２〜Ａ４、または実施形態２のステップＢ２〜Ｂ４を参照して実行されてもよい。Ｎｓ＝Ｎなので、探索パルスは基本コードワード内のすべてのパルスから選択されうる。実施形態２の方法に関しては、異なるラウンドにおいて、ｎの値は同じであってもよく、または異なっていてもよい。
【００６４】
Ｃ３．探索ラウンドの回数Ｇが、その上限に到達したかどうかを判定し、Ｇが上限に到達した場合、プロセスはステップＣ５に進み、それ以外の場合、プロセスはステップＣ４に進む。
【００６５】
Ｃ４．最適なコードワードが新しい基本コードワードとして先の基本コードワードに取って代わり、手順は、新しいラウンドの最適なコードワードを探索するためにステップＣ２に戻る。
【００６６】
Ｃ５．現在のラウンドの最適なコードワードを、最終的な最適なコードワードとして取得する。
【００６７】
本発明のこの実施形態では、最終的な最適なコードワードを取得するためにマルチラウンドアプローチが採用され、これは探索結果の質をさらに向上させる。あるいは、本発明の実施形態１または実施形態２で提供される探索方法が１つの探索ラウンドにおいてのみ使用され、このラウンドより先または後の他のラウンドでは、その他の探索方法が採用されてもよい。
【００６８】
本発明の実施形態４では、実施形態１および実施形態２に基づいて、別の形態のサイクリックなマルチラウンド実行を使用する、固定コードブック探索方法が提供される。図５に示すように、この手順は以下のステップを含む。
【００６９】
Ｄ１．Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む、基本コードワードを取得する。このステップは、実施形態１のステップＡ１を参照して実行されてもよい。
【００７０】
Ｄ２．Ｋ回の探索の一ラウンドを実行して、現在のラウンドの最適なコードワードを取得する。
【００７１】
このステップは、実施形態１のステップＡ２〜Ａ４、または実施形態２のステップＢ２〜Ｂ４を参照して実行されてもよい。探索の最初のラウンドにおいて、ＮｓはＮに等しく設定されてもよい。
【００７２】
Ｄ３．探索ラウンドの回数Ｇが、その上限に到達したかどうかを判定するか、または、次のラウンドのためのＮｓセットがヌル（空）であるかどうかを判定し、Ｇがその上限に達した場合、またはＮｓセットがヌルである場合、プロセスはステップＤ５に進み、それ以外の場合、プロセスはステップＤ４に進む。
【００７３】
この実施形態では、各ラウンドのＮｓセットは、ステップＤ４におけるように、先のラウンドの探索結果に従って決定されてもよい。Ｎｓセットがヌルである場合、探索は完了したと見なされる。または、Ｎｓセットがヌルでない場合、Ｇの上限に従って探索は完了したと見なされる。
【００７４】
Ｄ４．最適なコードワードが、新しい基本コードワードとして先の基本コードワードに取って代わる。先のＮｓセット内のパルスであって、最適なコードワードが取得された探索プロセス内で固定位置を有するパルスが、新しいＮｓパルスとして使用され、手順は、新しいラウンドの最適なコードワードを探索するためにステップＤ２に戻る。
【００７５】
第１のラウンドにおけるＮｓセットは、Ｍ＝４個のトラック、Ｔ０、Ｔ１、Ｔ２、Ｔ３上にそれぞれ配置された、Ｎ＝４個のパルス、Ｐ０、Ｐ１、Ｐ２、Ｐ３を含み、各トラック上に１個のパルスが配置されている、と仮定する。第１のラウンドにおいてｎ＝ｎ０＝２に設定し、実施形態２と同様に、探索パルスのすべての組み合わせを網羅するために、Ｋ＝６回の探索を実行する。組み合わせは、Ｐ０とＰ１、Ｐ０とＰ２、Ｐ０とＰ３、Ｐ１とＰ２、Ｐ１とＰ３、Ｐ２とＰ３である。最適なコードワードは、Ｐ０とＰ３との組み合わせが選択された場合に取得されると仮定する。その場合、第１のラウンドにおいて固定されたパルスであって、第１のラウンドのＮｓセットに属するパルスは、Ｐ１とＰ２とであるということがわかる。したがって、第２のラウンドのＮｓセットは、Ｐ１とＰ２とを含む。第２のラウンドにおいてｎ＝ｎ０＝２の場合、Ｋ＝１回の探索が実行される。明らかに、第２のラウンドにおける最適なコードワードは、Ｐ１とＰ２との組み合わせが選択された場合に取得される。このラウンドでは固定されるパルスはＰ０とＰ３とであるが、明らかにこれらの２個のパルスは、第２のラウンドのＮｓセット内に含まれていない。したがって、第３のラウンドにおけるＮｓセットはヌルであると判定され、探索は完了したと見なされる。
【００７６】
Ｄ５．現在のラウンドの最適なコードワードを、最終的な最適なコードワードとして取得する。
【００７７】
この実施形態では、探索結果の質をさらに向上させることが可能なマルチラウンド探索アプローチを介して、最終的な最適なコードワードが取得される。さらに、次の探索ラウンドのためのＮｓセットの範囲は、先のラウンドの探索結果に従って減少されるため、計算量は効果的に減少される。
【００７８】
本発明の実施形態５では、前述の実施形態に基づいて特定の初期基本コードワード取得方法を使用する、固定コードブック探索方法が提供される。図６に示すように、この手順は以下のステップを含む。
【００７９】
Ｅ１．Ｍ個のトラック上のＮ個のパルスの量的分布を取得する。
【００８０】
具体的には、このステップでは、探索する探索パルスの総数（Ｎ）と、各トラック上に分布するパルスの数とを決定する。
【００８１】
Ｅ２．各トラック上の既知の基準信号のいくつかの極値に従って、各トラック上の中央探索範囲を決定し、中央探索範囲はトラック上の少なくとも１個の位置を含む。
【００８２】
基準信号は、パルス位置の最尤関数ｂ（ｉ）であってもよい。すべてのパルス位置におけるｂ（ｉ）の値が計算され、トラック上の最大のｂ（ｉ）値を有する位置がトラックの中央探索範囲として選択される。各トラックの中央探索範囲内に含まれる位置の数は同一であってもよく、または異なっていてもよい。
【００８３】
Ｍ＝４個のトラック、Ｔ０、Ｔ１、Ｔ２、Ｔ３が存在し、各トラックの位置分布は表１に示されているものであると仮定する。各トラック上のパルス位置はｂ（ｉ）の絶対値の降順に並べ替えられる。並べ替えられたトラック位置のマップは次のとおりであると仮定する。
｛Ｔ０，Ｔ１，Ｔ２，Ｔ３｝＝
｛
｛０，３６，３２，４，４０，２８，１６，８，２０，５２，４４，４８，１２，５６，２４，６０｝，
｛１，３３，３７，５，２９，４１，１７，９，４９，２１，５３，２５，１３，４５，５７，６１｝，
｛３４，２，３８，３０，６，１８，４２，５０，２６，１４，１０，２２，５４，４６，５８，６２｝，
｛３５，３，３１，３９，７，１９，２７，５１，１５，４３，５５，４７，２３，１１，５９，６３｝
｝
【００８４】
次に、各トラック上の、ｂ（ｉ）の最大の絶対値を有する４個の位置が、トラックの中央探索範囲として選択される場合、基本コードワードの中央探索範囲は、次のとおりである。
｛
｛０，３６，３２，４｝，
｛１，３３，３７，５｝，
｛３４，２，３８，３０｝，
｛３５，３，３１，３９｝
｝
【００８５】
Ｅ３．Ｍ個の中央探索範囲内でＮ個のパルスの量的分布に従って全探索を実行し、予め設定された基準に従ってすべての可能な位置の組み合わせから基本コードワードを選択する。
【００８６】
中央探索範囲は通常は小さいため、範囲内で全探索を実行して好ましい基本コードワードを取得することができる。
【００８７】
例えば、基本コードワードは、Ｍ＝４個のトラック、Ｔ０、Ｔ１、Ｔ２、Ｔ３上にそれぞれ配置された全部でＮ＝４個のパルス、Ｐ０、Ｐ１、Ｐ２、Ｐ３を含み、各トラック上に１個のパルスが配置される、と仮定する。この場合、ステップＥ２で与えられる探索範囲は、基本コードワードを取得するために４×４×４×４＝２５６回の探索を実行する必要があるのみである。
【００８８】
Ｅ４．基本コードワードに基づいて、Ｋ回の探索の第１のラウンドを実行して、現在のラウンドの最適なコードワードを取得する。
【００８９】
このステップは、実施形態１のステップＡ２〜Ａ４、または実施形態２のステップＢ２〜Ｂ４を参照して実行されてもよい。
【００９０】
この実施形態では、取得される基本コードワードの質を確実なものにし、探索結果の質をさらに向上させるために、中央探索アプローチにより初期基本コードワードが取得される。
【００９１】
本発明による固定基本コードワード探索方法を実施するためのソフトウェアが、コンピュータ可読媒体内に記憶されてもよいということが理解される。ソフトウェア実行は、以下のステップを含む。即ち、
Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む、基本コードワードを取得し、
ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であるとき、ｎ個のパルスを探索パルスとして選択し、
探索されたコードワードを取得するために、ｎ個のパルスの位置をトラック上の他の位置でそれぞれ置き換え、
Ｋが２以上の正の整数であるとき、探索プロセスをＫ回、一ラウンドとして実行し、少なくとも１回の探索プロセスでは２個以上の探索パルスを選択し、選択される探索パルスは各探索で異なし、
現在の探索ラウンドについての最適なコードワードを取得し、最適なコードワードは予め設定された基準に従って、基本コードワードと探索されたコードワードとから選択されること。可読媒体は、読み取り専用メモリ／ランダムアクセスメモリ（ＲＯＭ／ＲＡＭ）、磁気ディスク、またはコンパクトディスクであってもよい。
【００９２】
前述の実施形態をよりよく理解するために、計算の例を以下に示す。
【００９３】
Ｍ＝４個のトラック、Ｔ０、Ｔ１、Ｔ２、Ｔ３上にそれぞれ配置される、全部でＮ＝４個のパルス、Ｐ０、Ｐ１、Ｐ２、Ｐ３があり、各トラック上に１個のパルスが配置される、と仮定する。トラック上のパルスの分布は表１に示されるものである。その場合、探索プロセスは以下を含む。
【００９４】
１．実施形態５で提供された初期基本コードワード取得方法に従って、４個の位置を含む、各トラックの中央探索範囲からの全探索によって、初期基本コードワードを取得する。取得された初期基本コードワードは｛３２，３３，２，３５｝であると仮定する。必要とされる探索の回数は４×４×４×４＝２５６である。
【００９５】
２．探索の第１のラウンドを開始して、実施形態２と同様にｎ＝ｎ０＝２に設定し、探索パルスのすべての組み合わせを網羅するためにＫ＝６回の探索を実行する。各探索は、１個のトラック上の４個の位置と、別の１個のトラック上の１２個の位置とをカバーする（計数される位置は、基本コードワード内のパルス位置をすでに含んでいる。探索のための位置を選択するための方法は、基本コードワードの中央探索範囲を決定するための方法に類似していてもよい）。第１のラウンドで取得される最適なコードワードは、固定されるパルスがＰ０およびＰ１である場合、｛３２，３３，６，３５｝であると仮定する。
【００９６】
必要とされる探索の回数は、６×（４×１２）＝２８８である。
【００９７】
３．探索の第２のラウンドを開始する。ｎ＝ｎ０＝２に設定し、Ｐ２およびＰ３の位置、｛６，３５｝を固定し、Ｐ０およびＰ１の組み合わせについて、Ｋ＝１回の探索を実行する。この探索は、Ｔ０およびＴ１のそれぞれにおける４個の位置をカバーする。探索の第２のラウンドで取得される最適なコードワードは、｛３２，３３，６，３５｝であると仮定する。必要とされる探索の回数は、４×４＝１６である。
【００９８】
４．探索パルスのＮｓセットがヌルであるか（これは、基本コードワード内のすべてのパルスが探索されたことを意味する）を判定する。最終的な最適なコードワードは、したがって｛３２，３３，６，３５｝である。探索の合計回数は、２５６＋２８８＋１６＝５６０である。
【００９９】
前述の例における方法を、２４個の男性の音声シーケンスと、２４個の女性の音声シーケンスとから構成されたテストシーケンスに適用し、音声を符号化／復号化し、符号化／復号化の結果の、対象シーケンスの音声品質を、従来技術の縦型ツリー探索手順の符号化／復号化結果と比較する。２つの方法を介して取得された音声品質は同等である。前述の方法では探索の回数は５６０であり、縦型ツリー探索手順における探索の回数７６８よりもはるかに少ない。
【０１００】
本発明による、固定コードブックを探索するための装置について、以下で詳細に説明する。
【０１０１】
本発明の第６の実施形態によれば、図７に示す固定コードブックを探索するための装置１０は、基本コードワードユニット１１と、探索循環ユニット１２と、探索ユニット１３と、計算ユニット１４とを含む。
【０１０２】
基本コードワードユニット１１は、Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む基本コードワードを提供するように構成される。
【０１０３】
探索循環ユニット１２は、以下のように、サイクリックなラウンド内で探索パルスを選択し、探索パルスに対してＫ回の探索の実行を決定するよう構成される。ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であり、かつ、Ｋが２以上の正の整数であるとき、ｎ個のパルスを探索パルスとして選択し、Ｋ回の探索のうちの少なくとも１回では２個以上の探索パルスを選択し、選択される探索パルスは各探索で異なる。
【０１０４】
探索循環ユニット１２は、好ましくは以下の手順でｎ個のパルスを探索パルスとして選択する。
【０１０５】
探索循環ユニット１２は、Ｎｓ個のパルスからｎ個のパルスを探索パルスとして選択し（ここで、Ｎｓ個のパルスはＮ個のパルスのすべてまたは一部分であり、ＮｓはＮ以下の正の整数であり、ｎはＮｓよりも小さな正の整数である）、ｎ個の探索パルス以外の基本コードワード内のパルスの位置を固定する。
【０１０６】
探索ユニット１３は、探索されたコードワードを取得するために、探索循環ユニット１２の各選択に従って、ｎ個の探索パルス以外の、基本コードワードユニット１１によって提供された基本コードワード内のパルスの位置を固定し、ｎ個の探索パルスの位置をそれぞれトラック上の他の位置で置き換えるよう構成される。
【０１０７】
計算ユニット１４は、現在のラウンドの最適なコードワードを取得するよう構成され、最適なコードワードは、基本コードワードと、Ｋ回のサイクリックな探索の後で探索ユニット１３によって提供される探索されたコードワードとから、予め設定された基準に従って選択される。
【０１０８】
この実施形態で提供される固定コードブックを探索するための装置は、実施形態１で提供される、固定コードブックを探索するための方法を実行するよう構成されてもよい。
【０１０９】
本発明の第７の実施形態によれば、図８に示す、固定コードブックを探索するための装置２０は、基本コードワードユニット２１と、探索循環ユニット２２と、探索ユニット２３と、計算ユニット２４とを含む。
【０１１０】
基本コードワードユニット２１は、Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む基本コードワードを提供するよう構成される。
【０１１１】
探索循環ユニット２２は、
Ｎｓ個のパルスからｎ個のパルスを探索パルスとして選択するために、ＣnNs個の可能
なすべての組み合わせを提供するように構成された（ここで、ｎは２以上であり、Ｎｓ個のパルスはＮ個のパルスのすべてまたは一部分であり、ＮｓはＮ以下の正の整数である）、組み合わせ提供ユニット２２１と、
２≦Ｋ≦ＣnNsであるとき、組み合わせ提供ユニット２２１によって提供されたＣnNs個の可能なすべての組み合わせのうちの１つを、Ｋ回のサイクリックな探索のために、繰り返しなしに、順に、または無作為に選択するよう構成された、循環実行ユニット２２２とを含む。
【０１１２】
探索ユニット２３は、ｎ個の探索パルス以外の、基本コードワードユニット２１によって提供された基本コードワード内のパルスの位置を固定し、探索循環ユニット２２の各選択に従って、ｎ個の探索パルスの位置をそれぞれトラック上の他の位置で置き換えて、探索されたコードワードを取得するよう構成される。
【０１１３】
計算ユニット２４は、基本コードワードと、Ｋ回のサイクリックな探索の後で探索ユニット２３によって提供される探索されたコードワードとから、予め設定された基準に従って現在のラウンドの最適なコードワードを選択するよう構成される。
【０１１４】
この実施形態で提供される固定コードブックを探索するための装置は、実施形態２で提供される固定コードブック探索方法を実行するよう構成されてもよい。
【０１１５】
本発明の第８の実施形態によれば、図９に示す固定コードブック探索エンジン３０は、基本コードワードユニット３１と、探索循環ユニット３２と、探索ユニット３３と、計算ユニット３４と、ラウンド循環ユニット３５とを含む。
【０１１６】
基本コードワードユニット３１は、Ｎ及びＭが正の整数であるとき、Ｍ個のトラック上のＮ個のパルスの位置情報を含む基本コードワードを提供するように構成される。
【０１１７】
探索循環ユニット３２は、以下のように、探索ラウンド内で、探索パルスを選択し、探索パルスに対してＫ回の探索実行を決定するよう構成される。即ち、ｎ個のパルスがＮ個のパルスの一部分であり、ｎがＮよりも小さな正の整数であり、Ｋが２以上の正の整数であるとき、ｎ個のパルスを探索パルスとして選択し、Ｋ回の探索のうちの少なくとも１回では２個以上の探索パルスを選択し、選択される探索パルスは各探索で異なる。
【０１１８】
好ましくは、探索循環ユニット３２は以下のようにｎ個のパルスを探索パルスとして選択する。探索循環ユニット３２は、Ｎｓ個のパルスからｎ個のパルスを探索パルスとして選択し（ここで、Ｎｓ個のパルスはＮ個のパルスのすべてまたは一部分であり、ＮｓはＮ以下の正の整数であり、ｎはＮｓよりも小さな正の整数である）、ｎ個の探索パルス以外の、基本コードワード内のパルスの位置を固定する。
【０１１９】
探索ユニット３３は、ｎ個の探索パルス以外の、基本コードワードユニット３１によって提供された基本コードワード内のパルスの位置を固定し、探索循環ユニット３２の各選択に従って、ｎ個の探索パルスの位置をそれぞれトラック上の他の位置で置き換えて、探索されたコードワードを取得するよう構成される。
【０１２０】
計算ユニット３４は、現在のラウンドの最適なコードワードを取得するよう構成され、最適なコードワードは、基本コードワードと、Ｋ回のサイクリックな探索の後で探索ユニット３３によって提供される探索されたコードワードとから、予め設定された基準に従って選択される。
【０１２１】
ラウンド循環ユニット３５は、基本コードワードユニット３１によって提供された元の基本コードワードを、計算ユニット３４によって取得された現在のラウンドの最適なコードワードで置き換え、次の探索ラウンドを実行するために、探索循環ユニット３２をトリガするよう構成される。
【０１２２】
特定の設定では、ラウンド循環ユニット３５は次の探索ラウンドを実行するために探索循環ユニット３２をトリガするとき、探索循環ユニット３２内のＮｓセットは、先の探索ラウンドの後で位置が固定されたパルスを削除することによって再設定されてもよい。ラウンド循環ユニット３５は、次の探索ラウンドを開始するために探索循環ユニット３２を継続してトリガするかどうかを、Ｎｓの値に従って、またはラウンドの上限に従って決定してもよい。
【０１２３】
この実施形態で提供される固定コードブックを探索するための装置は、実施形態３または実施形態４で提供される固定コードブック探索方法を実行するよう構成されてもよい。
【０１２４】
本発明の第９の実施形態によれば、図１０に示す固定コードブック探索エンジン４０は、基本コードワードユニット４１と、探索循環ユニット４２と、探索ユニット４３と、計算ユニット４４とを含む。
【０１２５】
基本コードワードユニット４１は、
基本コードワードを提供するよう構成されたコードワード提供ユニット４１１であって、Ｍ個のトラック上のＮ個のパルスの量的分布を取得し、各トラック上にパルス位置を無作為に設定することを含む、コードワード提供ユニット４１１と、
コードワード提供ユニット４１１内の基本コードワードを計算および初期化するよう構成された、初期計算ユニット４１２とを含む。
【０１２６】
探索循環ユニット４２は、ラウンド内で、以下の動作をサイクリックにＫ回実行するように構成される。即ち、Ｎｓ個のパルスがＮ個のパルスのすべてまたは一部分であり、ＮｓがＮ以下の正の整数であり、ｎがＮｓよりも小さな正の整数であり、Ｋが２以上の正の整数であるとき、Ｎｓ個のパルスからｎ個のパルスを探索パルスとして選択し、Ｋ回の探索のうちの少なくとも１回では２個以上の探索パルスを選択し、選択される探索パルスは各探索で異なる。
【０１２７】
探索ユニット４３は、基本コードワードユニット４１によって提供された基本コードワード内の、ｎ個の探索パルス以外のパルス位置を固定し、探索循環ユニット４２の各選択に従って、ｎ個の探索パルスの位置をそれぞれトラック上の他の位置で置き換えて、探索されたコードワードを取得するよう構成される。
【０１２８】
計算ユニット４４は、基本コードワードと、Ｋ回のサイクリックな探索の後で探索ユニット４３によって提供される探索されたコードワードとから、予め設定された基準に従って、現在のラウンドの最適なコードワードを選択するように構成される。
【０１２９】
この実施形態で提供される、固定コードブックを探索するための装置は、実施形態５で提供される、固定コードブック探索方法を実行するように構成されてもよい。
【０１３０】
本発明のこの実施形態では、最適なコードワードはパルスの組み合わせを置き換えることによって取得され、少なくとも１回の探索は複数のパルスをカバーする。最適なコードワードはさまざまな組み合わせの置き換えから選択されるため、この方法はグローバルな探索を保証しながら、探索の回数を可能な最大限度まで減少させることが可能である。さらに、少なくとも１回の探索は複数のパルスをカバーするため、パルス間の相互関係の、探索結果への影響を考慮に入れることができ、探索結果の質はさらに確実なものとなる。探索ラウンド内でｎが固定値を取り、探索パルスのさまざまな組み合わせが順に選択される場合、探索パルスを選択するための方法は最適化され、その結果、探索プロセスはより効率的になる。さらに、探索パルスのすべての可能な組み合わせが網羅される場合、探索結果のグローバル性がさらに強化されることができ、探索結果の質は向上する。さらに、最終的な最適なコードワードを取得するためにマルチラウンドアプローチが採用される場合、探索結果の質はさらに向上する。あるいは、本発明の実施形態１または実施形態２で提供される探索方法が１つの探索ラウンドにおいてのみ使用され、このラウンドより先または後の他のラウンドでは、その他の探索方法が採用されてもよい。さらに、最終的な最適なコードワードを取得するためにマルチラウンド探索アプローチが採用され、かつ、次の探索ラウンドのＮｓセットの範囲が先のラウンドの探索結果に従って減少させられる場合、計算量を効果的に減少させることができる。さらに、初期基本コードワードを取得するために中央探索アプローチが採用される場合、取得される基本コードワードの質は確実なものとなり、探索結果の質はさらに向上する。
【０１３１】
例示的実施形態により本発明を説明してきたが、本発明はこのような実施形態に限定されない。本発明の精神および範囲を逸脱することなく、当業者が本発明に対するさまざまな修正および変形が可能であることは明らかである。本発明は、特許請求の範囲またはその均等物によって定義される保護範囲内にこれらの修正および変形が入ることで、それらの修正および変形を包含することが意図されている。
【図１】
0005345725.tif 000004
【図２】
0005345725.tif 000005
【図３】
0005345725.tif 000006
【図４】
0005345725.tif 000007
【図５】
0005345725.tif 000008
【図６】
0005345725.tif 000009
【図７】
0005345725.tif 000010
【図８】
0005345725.tif 000011
【図９】
0005345725.tif 000012
【図１０】
0005345725.tif 000013