(57)【要約】【目的】背景ノイズエネルギーレベルを見積もる方法と装置を提供すること。【構成】現在のスピーチフレームのエネルギーを測定する。現在のスピーチフレームの測定値と以前の背景ノイズの見積もり値との比較に基づいて背景ノイズの新たな見積もり値を決定する。【選択図】      図１０
2006221186.tif 000002
【特許請求の範囲】
【請求項１】
スピーチ信号を表す信号フレームの背景ノイズを推定する方法において、
前の信号フレームの背景ノイズ推定値を表すデータを記憶し、
現在の信号フレームの信号エネルギー（Ｅｆ）を測定し、
現在の信号フレームの測定されたエネルギーと前の信号フレームの背景ノイズ推定値（Ｂ）を表すデータとに基づいて現在の信号フレームの背景ノイズ推定値（Ｂ’）を計算することを含み、
現在の信号フレームの背景ノイズ推定値を計算することが、
現在の信号フレームの測定された信号エネルギー（Ｅｆ）と前の信号フレームの背景ノイズ推定値（Ｂ）とを比較して結果を生成し、
現在の信号フレームの測定された信号エネルギー（Ｅｆ）と、前の信号フレームの背景ノイズ推定値（Ｂ）と、比較の結果とに基づいて現在の信号フレームの背景ノイズ推定値を算定することを含む方法。
【請求項２】
現在の信号フレームの背景ノイズ推定値を計算することが、現在の信号フレームの測定された信号エネルギー（Ｅｆ）と前の信号フレームの背景ノイズ推定値（Ｂ）から決定された第２の値との最小値を選択することを含む請求項１に記載の方法。
【請求項３】
第２の値が前の信号フレームの背景ノイズ推定値（Ｂ）から予定された増加として決定される請求項２に記載の方法。
【請求項４】
第２の値を決定することが前の信号フレームの背景ノイズ推定値（Ｂ）に所定の値を加算することを含む請求項３に記載の方法。
【請求項５】
第２の値を決定することが前の信号フレームの背景ノイズ推定値（Ｂ）に１より大きい所定の係数を乗算することを含む請求項３に記載の方法。
【請求項６】
所定の係数が１．００５４７である請求項５に記載の方法。
【請求項７】
第２の値を決定することが、前の信号フレームの背景ノイズ推定値（Ｂ）に所定の値を加算して決定される第３の値と、前の信号フレームの背景ノイズ推定値（Ｂ）に１より大きい所定の係数を乗算して決定される第４の値のうち、小さい方を選択することを含む請求項３に記載の方法。
【請求項８】
前記所定の値が１に等しい請求項４または７に記載の方法。
【請求項９】
第２の値が予定された最大値より大きくないように制限される請求項２乃至８の何れか１つに記載の方法。
【請求項１０】
推定することが各信号フレームについて行われる請求項１乃至９の何れか１つに記載の方法。
【請求項１１】
現在の信号フレームのデータ速度を決定することに使用するため、現在の信号フレームの背景ノイズ推定値（Ｂ’）を出力することをさらに含む請求項１乃至１０の何れか１つに記載の方法。
【請求項１２】
スピーチ信号を表す信号フレームの背景ノイズを推定する装置において、
前の信号フレームの背景ノイズ推定値を表しているデータを記憶する記憶手段と、
現在の信号フレームの信号エネルギー（Ｅｆ）を測定する測定手段と、
現在の信号フレームの測定されたエネルギー（Ｅｆ）と前の信号フレームの背景ノイズ推定値（Ｂ）を表すデータとに基づいて現在の信号フレームの背景ノイズ推定値（Ｂ’）を計算する計算手段とを含み、
計算手段が、
現在の信号フレームの測定された信号エネルギー（Ｅｆ）と前の信号フレームの背景ノイズ推定値（Ｂ）とを比較して結果を生成する比較手段と、
現在の信号フレームの測定された信号エネルギー（Ｅｆ）と、前の信号フレームの背景ノイズ推定値（Ｂ）と、比較の結果とに基づいて現在の信号フレームの背景ノイズ推定値を算定する算定手段とを含む装置。
【請求項１３】
計算手段が、現在の信号フレームの測定された信号エネルギー（Ｅｆ）と前の信号フレームの背景ノイズ推定値（Ｂ）から決定された第２の値（Ｖ２）との最小値を選択する選択手段を含む請求項１２に記載の装置。
【請求項１４】
前の信号フレームの背景ノイズ推定値（Ｂ）から予定された増加として第２の値を決定する決定手段をさらに含む請求項１３に記載の装置。
【請求項１５】
決定手段が、前の信号フレームの背景ノイズ推定値（Ｂ）に所定の値を加算することにより第２の値（Ｖ２）を決定するように配置された請求項１４に記載の装置。
【請求項１６】
決定手段が、前の信号フレームの背景ノイズ推定値（Ｂ）に１より大きい所定の係数（Ｋ）を乗算することにより第２の値（Ｖ２）を決定するように配置された請求項１４に記載の装置。
【請求項１７】
所定の係数が１．００５４７である請求項１６に記載の装置。
【請求項１８】
決定手段が、前の信号フレームの背景ノイズ推定値（Ｂ）に所定の値を加算して決定される第３の値（Ｂ＋１）と、前の信号フレームの背景ノイズ推定値（Ｂ）に１より大きい所定の係数（Ｋ）を乗算して決定される第４の値のうち、小さい方を選択することにより第２の値（Ｖ２）を決定するように配置される請求項１４に記載の装置。
【請求項１９】
前記所定の値が１に等しい請求項１５または１８に記載の装置。
【請求項２０】
第２の値（Ｖ２）が予定された最大値より大きくないように制限される請求項１３乃至１８の何れか１つに記載の装置。
【請求項２１】
計算手段が各信号フレームについて計算を行うように配置された請求項１２乃至２０の何れか１つに記載の装置。
【請求項２２】
現在の信号フレームのデータ速度を決定することに使用するため、現在の信号フレームの背景ノイズ推定値（Ｂ’）を出力する手段をさらに含む請求項１２乃至２１の何れか１つに記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スピーチ処理に関する。特に、本発明は圧縮の量がダイナミックに変化し、一方において再構成されたスピーチの品質に最小の影響を与えるスピーチを圧縮する新しい改良された方法およびシステムに関する。さらに、圧縮されたスピーチデータはエラーを導入する可能性があるチャンネル上を伝送されるように意図されているため、本発明の方法およびシステムはまた音声品質に対するチャンネルエラーの影響を最小にする。
【背景技術】
【０００２】
デジタル技術による音声の伝送は、特に長距離のデジタル無線電話の適用で広く普及してきている。したがって、予測される再構成スピーチの品質を維持するチャンネル上を伝送されることができる情報の最少量を決定することが重要である。スピーチがサンプルし、デジタル化するだけで伝送される場合、通常のアナログ電話のスピーチ品質を達成するために64キロビット／秒（ｋｂｐｓ）程度のデータ速度が要求される。しかしながら、適切なコード化、伝送および受信機における再合成によって後続されるスピーチ解析の使用により、データ速度の著しい減少が実現可能である。
【０００３】
人間のスピーチ発生のモデルに関連したパラメータを抽出することによって発声されたスピーチを圧縮する技術を使用した装置は、典型的にボコーダと呼ばれている。このような装置は、適切なパラメータを抽出するために入来したスピーチを解析するエンコーダおよびをそれが伝送チャンネル上で受信したパラメータを使用してスピーチを再合成するデコーダから構成されている。正確であるためには、モデルが一定に変化していなければならない。したがって、スピーチはパラメータが計算される時間のブロック、すなわち解析フレームに分割される。その後、パラメータは新しい各フレームに対して更新される。
【０００４】
種々のクラスのスピーチコーダのうち、コード励起直線予測コード化（ＣＥＬＰ）、ストカスティック（Ｓtochastic ）コード化またはベクトル励起スピーチコード化が１つのクラスである。この特定のクラスのコード化アルゴリズムの一例はトーマスＥ．トレメイン氏他による文献（“A 4.8kbps Code Excited linear Predictive Coder”，Proceedings of the Mobile Satellite Conference，1988年）に記載されている。
【０００５】
ボコーダの機能は、スピーチに固有の本来の冗長性を全て除去することによって低いビット速度の信号にデジタル化されたスピーチ信号を圧縮することである。スピーチは典型的に主に音声域のフィルタ処理動作による短い期間の冗長性および音声コードによる音声域の励起のための長い期間の冗長性を有している。ＣＥＬＰコーダにおいて、これらの動作は短期間フォーマットのフィルタおよび長期間ピッチのフィルタの２つのフィルタによってモデル化される。これらの冗長性が除去されると、結果的な残留信号は、エンコードされなければならない白色ガウス雑音としてモデル化されることができる。この技術のベースは、人間の音声域のモデルを使用してスピーチ波形の短期間の予測を実行するＬＰＣフィルタと呼ばれるフィルタのパラメータを計算することである。さらに、スピーチのピッチに関連した長期間の効果は、人間の音声和音を本質的にモデル化するピッチフィルタのパラメータを計算することによってモデル化される。最後に、これらのフィルタは励起されなければならず、これは波形が上記の２つのフィルタを励起したときに、結果として元のスピーチに最も近いコードブック中の多数のランダム励起波形の１つを決定することによって実行される。このように伝送パラメータは（１）ＬＰＣフィルタ、（２）ピッチフィルタおよび（３）コードブック励起の３つの項目に関連している。
【０００６】
ボコーダ技術の使用はさらにチャンネル上を伝送される情報量を減少し、一方において再構成されたスピーチの品質を維持しようとすることを目的とするが、さらに減少するために別の技術が使用される必要がある。伝送される情報量を減少するために前に使用された１つの技術は音声活動のゲート化である。この技術において、スピーチの休止(pause) 中に伝送される情報はない。この技術はデータ減少の所望の結果を達成するが、いくつかの欠点がある。
【０００７】
多くの場合において、スピーチの品質はワードの最初の部分のクリッピングにより低下される。非活動中のチャンネルをオフにゲート制御することに関する別の問題は、システム利用者が通常スピーチに付随する背景雑音の欠如を知覚し、通常の電話機の呼びより低くチャンネルの品質を評価することである。活動ゲート制御に関する別の問題は、スピーチが生じないときに背景中の時々の突発的な雑音が送信機をトリガーし、結果的に受信機における雑音のバーストを除去することである。
【０００８】
音声活動ゲートシステム中で合成されたスピーチの品質を改良しようとする試みにおいて、合成された快適な雑音はデコード化プロセス中に付加される。品質のある改良は快適な雑音を付加することによって達成されるが、それは快適な雑音がエンコーダの実際の背景雑音をモデル化しないため全体的な品質を実質的に改良しない。
【０００９】
伝送される必要がある情報を結果的に減少するようにデータ圧縮を実現するさらに好ましい技術は、可変速度ボコード処理を行うことである。スピーチは沈黙期間すなわち休止の期間を本質的に含んでいるため、これらの期間を表すために要求されるデータ量は減少されることかできる。可変速度ボコーダは、これらの沈黙期間に対するデータ速度を減少することによってこの事実を非常に効果的に利用する。沈黙期間に対するデータ伝送中の完全な停止と対照的に、データ速度の減少は音声活動ゲート制御に関連した問題を克服し、一方において伝送された情報の減少を促進する。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
したがって、本発明の目的は可変速度ボコード化技術を使用してスピーチを圧縮する新しい改良された方法およびシステムを提供することである。
【課題を解決するための手段】
【００１１】
本発明は、前に述べられたスピーチコーダのクラス、コード励起直線予測コード化（ＣＥＬＰ）、ストカスティックコード化またはベクトル励起スピーチコード化のボコーダアルゴリズムを実行する。ＣＥＬＰ技術自身は、再合成時に高品質のスピーチを結果的に生じさせるようにスピーチを表すために必要なデータの量を著しく減少する。上記のように、ボコーダパラメータは各フレームに対して更新される。本発明のボコーダは、モデルパラメータの周波数および正確さを変化することによって可変出力データ速度を提供する。
【００１２】
本発明は、スピーチ活動に基づいて可変出力データ速度を生成することによって基本的なＣＥＬＰ技術と最も顕著に異なっている。構造は、パラメータがスピーチの休止中に少数回または低い正確さで更新されるように定められる。この技術は、伝送される情報の量をかなり大幅に減少することを可能にする。データ速度を減少するために使用される現象は、所定の話し手が会話中に実際に話している時間の平均パーセンテージである音声活動係数である。典型的な２方向電話会話に対して、平均データ速度は２以上の係数だけ減少される。スピーチの休止中、背景雑音だけがボコーダによってコード化される。これらの期間において、人間の音声域モデルに関連したパラメータのいくつかは伝送される必要がない。
【００１３】
上記のように、沈黙中に伝送される情報の量を制限する従来の方法は音声活動ゲートと呼ばれ、沈黙の瞬間に伝送される情報がない技術である。受信側において、期間は合成された“快適な雑音”で満たされる。対照的に、可変速度ボコーダは好ましい実施例においてほぼ 8ｋｂｐｓ乃至 1ｋｂｐｓの範囲の速度でデータを連続的に伝送する。データの連続伝送を行うボコーダは、合成された“快適な雑音”を不要にし、背景雑音のコード化は再合成されたスピーチにさらに自然な性質を与える。したがって、本発明はスピーチと背景との間の滑らかな転移を可能にすることによって音声活動ゲートのものに対して再合成スピーチ品質を著しく改良する。
【００１４】
本発明はさらにエラーの発生をマスクする新しい技術を含む。データは例えば雑音の多い無線リンクであるチャンネル上を伝送されるため、それはデータ中のエラーを適合しなければならない。生じるエラー数を減少するためにチャンネルコード化を使用する従来の技術は、成功的にエラーを減少することができる。しかしながら、チャンネルコード化だけでは再構成されたスピーチの高品質を確保するのに必要なエラー保護のレベルに完全に達しない。ボコード処理が連続的に発生する可変速度ボコーダにおいて、エラーはワードまたは音節の開始等の重要なスピーチ事象に関連したデータを破壊する。ボコーダに基づいた直線予測コード化（ＬＰＣ）に関する典型的な問題は、音声域モデルに関連したパラメータ中のエラーが曖昧に人間の声のようであり、聞き手を困惑させるのに十分に元のワードの音を変化させる音を生じさせることである。本発明において、聞き手に対する知覚可能性を減少するようにエラーがマスクされる。したがって、本発明において実行されるエラーマスキングはスピーチの明瞭さに対するエラーの影響を著しく減少させる。
【００１５】
任意のパラメータが変化する可能な最大量は低速で小さい範囲に制限されているため、これらの速度で伝送されるパラメータ中のエラーはスピーチ品質にほとんど影響を与えない。異なる速度のエラーはスピーチ品質に対して異なる知覚的影響を与えるため、伝送システムは高速データをさらに保護するように最適化されることができる。したがって、本発明は付加的な特徴としてチャンネルエラーに対する強さを提供する。
【００１６】
ＣＥＬＰアルゴリズムの可変速度出力変形を行う時の本発明は、結果的に音声活動に応じて 8：1 から64：1 にダイナミックに変化するスピーチ圧縮を実行させる。述べられた圧縮係数はμ法則入力を参照して引用され、圧縮係数は直線入力に対して２の係数だけ高い。速度決定は、音声活動係数を完全に利用するようにフレーム単位ベースで行われる。スピーチ中の休止に対して生成されるデータが少なくても、再合成された背景雑音の知覚される劣化は最小にされる。本発明の技術を使用すると、近い呼びの品質のスピーチが通常の会話において 8ｋｂｐｓの最大データ速度および 3.5ｋｂｐｓ程度の平均データ速度で達成されることができる。
【００１７】
本発明はスピーチ中の短い休止が検出されることを可能にするため、実効音声活動係数の減少が実現される。速度決定はハングオーバーなしにフレーム単位ベースで実行されることが可能であり、好ましい実施例においてデータ速度は典型的に20ｍ秒のフレーム期間と同じ短さのスピーチ中の休止に対して低下される。したがって、音節間にあるような休止が捕捉される。この技術は、語句の間の長期間の休止だけでなく、短い休止もまた低速でエンコードされることができるため従来考えられるもの以上に音声活動係数を減少する。
【００１８】
速度決定はフレームベースで行われるため、音声活動ゲートシステムのようにワードの開始部分のクリッピングは存在しない。この特性のクリッピングは、スピーチの検出とデータの伝送の再スタートとの間の遅延のために音声活動ゲート化システムにおいて発生する。各フレームに基づいた速度決定の使用は、結果的に全ての転移が自然の音を有するスピーチを生じさせる。
【００１９】
常に伝送しているボコーダにより、話し手の周囲の背景雑音は連続的に受信端で聞取られ、それによってスピーチ休止中さらに自然な音を生成する。したがって、本発明は背景雑音に滑らかな転移を与える。聞き手がスピーチ中の背景雑音において聞取るものは、音声活動ゲートシステムのように休止中に合成された快適な雑音に突然変化しない。
【００２０】
背景雑音は伝送のために連続的にボコード化されるため、背景の重要な事象は完全に明瞭に送られることができる。ある場合には、重要な背景雑音は最高の速度でコード化されてもよい。最大速度のコード化は、例えば大声で話している者が背景にいる場合、または街路にいる利用者の側を救急車が通過した場合に発生する。しかしながら、一定な、または遅く変化する背景雑音は低速でエンコードされる。
【００２１】
可変速度ボコード化の使用は、デジタルセル電話機システムに基づいたコード分割多重アクセス（ＣＤＭＡ）の能力を２以上の係数だけ高めることを約束する。ＣＤＭＡによりチャンネル間の干渉は任意のチャンネル上のデータ伝送の速度が減少すると自動的に低下するため、ＣＤＭＡおよび可変速度ボコードが特に整合される。対照的に、ＴＤＭＡまたはＦＤＭＡのような伝送スロットが割当てられるシステムを考慮すると、このようなシステムがデータ伝送速度の低下を利用するために、別の利用者に未使用のスロットの再割当てを調整するために外部的な介入が要求される。このような方式に固有の遅延はチャンネルが長いスピーチ休止中だけ再度割当てられることを示唆している。したがって、十分な利点が音声活動係数から得られることができない。しかしながら、外部調整により、可変速度ボコードは示された別の理由からＣＤＭＡ以外のシステムで有効である。
【００２２】
ＣＤＭＡシステムにおいて、スピーチ品質は余分のシステム容量が所望された時に少し劣化される可能性がある。概略的に述べると、ボコーダは異なる結果的なスピーチ品質で異なる速度で全て動作する多数のボコーダと考えられる。したがって、スピーチ品質はデータ伝送の平均速度をさらに減少するために混合されることがてきる。最初の実験は、全速度および半分の速度のボコード処理されたスピーチを混合することによって例えば最大の許容可能なデータ速度が 8ｋｂｐｓと 4ｋｂｐｓとの間でフレーム単位ベースで変化され、結果的にスピーチは最大 4ｋｂｐｓの半分の速度の変数より良好であるが、最大 8ｋｂｐｓの全速度変数ほど良くない品質を有することを示している。
【００２３】
大部分の電話機会話において、１人の人間だけが一時に話すことが良く知られている。完全な二重電話リンク用の付加的な機能として、速度インターロックが設けられてもよい。リンクの１方向が最高の伝送速度で送信している場合、リンクの他の方向の送信は強制的に最低速度にされる。リンクの２つ方向間のインターロックは、リンクの各方向の50％以下の平均使用を保証することができる。しかしながら、活動ゲート化時の速度インターロックの場合のように、チャンネルがゲート制御でオフされる場合、聞き手が話し手を遮って会話における話し手の役割を引継ぐ方法はない。本発明は、ボコード速度を設定する制御信号によって速度インターロックの能力を容易に提供する。
【００２４】
最後に、可変速度ボコード方式を使用することによって、信号情報はスピーチ品質に対する非常に小さい影響を与えるだけでスピーチデータとチャンネルを共有することができることに留意しなければならない。例えば、高速フレームは低速音声データを送る半分および信号伝送データ用の別の半分との２つの部分に分割される。好ましい実施例のボコーダにおいて、全速度および半分の速度のボコードされたスピーチ間のスピーチ品質における小さい劣化だけが実現される。したがって、別のデータと共有された伝送用の低速でのスピーチのボコードは結果的に利用者に対してほとんど知覚不可能な差を生じるだけである。
【発明を実施するための最良の形態】
【００２５】
本発明によると、スピーチおよび、または背景雑音のような音は、良く知られた技術を使用してサンプルされ、デジタル化される。例えば、アナログ信号はμ法則／均一コード変換によって後続される標準方式の 8ビット／μ法則フォーマットによってデジタルフォーマットに変換される。その代わりとして、アナログ信号は均一なパルスコード変調（ＰＣＭ）フォーマットでデジタル形態に直接変換されてもよい。したがって、好ましい実施例における各サンプルはデータの１つの16ビットワードによって表される。サンプルは、各フレームが予め定められた数のサンプルから成る入力データのフレームに構成される。ここに示された実施例において、 8ｋＨｚのサンプリング速度が考慮される。各フレームは、 8ｋＨｚのサンプル速度で 160個のサンプルまたは20ｍ秒のスピーチから成る。別のサンプリング速度およびフレーム寸法が使用されてもよいことが理解されなければならない。
【００２６】
ボコードの分野はスピーチコード化用の多数の異なる技術を含み、そのうちの１つはＣＥＬＰコード化技術である。ＣＥＬＰコード化技術の要約は、上記の文献（“A 4.8kbps Code Excited Linear Oredictive Coder”）に記載されている。本発明は、一定数のサンプルでＬＰＣ解析が実行され、ピッチおよびコードブック探索が伝送速度に応じて変化している数のサンプルで実行されるコード化されたスピーチデータにおける可変速度を提供するようにＣＥＬＰコード化技術の形態を実行する。概念において、本発明に適用されるＣＥＬＰコード化は図１０および図１２を参照して論じられる。
【００２７】
本発明の好ましい実施例において、スピーチ解析フレームは長さが20ｍ秒であり、抽出されたパラメータは１秒当たり50回のバーストで伝送されることを意味する。さらに、データ伝送速度はほぼ 8ｋｂｐｓから 4ｋｂｐｓ、 2ｋｂｐｓおよび 1ｋｂｐｓに変化される。全速度（速度１と示す）で、データ伝送は8.55ｋｂｐｓの速度であり、パラメータは11ビットの内部ＣＲＣ（サイクル冗長検査）を含む 171ビットを使用する各フレームに対してエンコードされる。ＣＲＣビットがない場合、速度は 8ｋｂｐｓである。半分の速度（速度１／２と示す）において、データ伝送は 4ｋｂｐｓの速度であり、パラメータは80ビットを使用する各フレームに対してエンコードされる。１／４速度（速度１／４と示す）において、データ伝送は 2ｋｂｐｓであり、パラメータは40ビットを使用する各フレームに対してエンコードされる。１／８速度（速度１／８と示す）において、データ伝送は 1ｋｂｐｓであり、パラメータは16ビットを使用する各フレームに対してエンコードされる。
【００２８】
図１は、スピーチデータ10の一例の解析フレームおよびＬＰＣ解析で使用されるハミングウインドウ12の関係をグラフで示す。異なる速度に対するＬＰＣ解析フレームおよびピッチおよびコードブックサブフレームは図６乃至図９においてグラフで示されている。全ての速度に対するＬＰＣ解析フレームは、同じ大きさであることを理解しなければならない。
【００２９】
図面を参照すると、特に図１において、ＬＰＣ解析はハミングウインドウ12を使用してウインドウ化されるフレーム10の 160個のスピーチデータサンプルを使用して行われる。図１に示されているように、サンプルｓ（ｎ）は各フレーム内において 0乃至159 の番号を付けられる。ハミングウインドウ12は、それが60個のサンプルによってフレーム10内においてオフセットされるように位置される。したがって、ハミングウインドウ12は現在のデータフレム10の60番目のサンプル、ｓ（59）でスタートして連続し、後続するデータフレーム14の59番目のサンプル、ｓ（58）を含む。したがって、現在のフレームであるフレーム10に対して生成された加重されたデータはまた次のフレームであるフレーム14からのデータに基づいたデータを含む。
【００３０】
データ伝送速度に応じて、図２乃至図５に示されているようなデータフレーム10の異なるサブフレーム上で多数回ピッチフィルタおよびコードブック励起パラメータを計算するために探索が実行される。好ましい実施例において、以下説明されるようにピッチおよびコードブック探索が選択された速度に対応した種々の寸法のサブフレームにおいて実行されるように、１つの速度だけがフレーム10に対して選択されることが理解されなければならない。しかしながら、説明のために、フレーム10の好ましい実施例の種々の許容された速度に対するピッチおよびコードブックのサブフレーム構造探索は、図２乃至図５に示されている。
【００３１】
全ての速度において、図１に示されているように１フレーム10当り１つのＬＰＣ計算が存在する。図２に示されているように、全速度において各ピッチサブフレーム16に対して２つのコードブックサブフレーム18が存在している。全速度において４つの各ピッチサブフレーム16に対して１つづつであり、それぞれ40個のサンプル長（ 5ｍ秒）の４つのピッチ更新が存在する。さらに、全速度において８つの各ピッチサブフレーム16に対して１つづつであり、それぞれ20個のサンプル長（ 2.5ｍ秒）の８つのコードブック更新が存在している。
【００３２】
１／２速度において、図３に示されているように各ピッチサブフレーム20に対して２つのコードブックサブフレーム22が存在する。ピッチは２つの各ピッチフレーム20のそれぞれに対して１度づつ２度更新され、一方コードブックは４つの各コードブックサブフレーム22に対して１度づつ４度更新される。１／４の速度において、図４に示されているように、単一のピッチサブフレーム24に対して２つのコードブックサブフレーム26が存在する。ピッチはピッチサブフレーム24に対して１度更新され、一方コードブックは２つの各コードブックサブフレーム26に対して１度づつ２度更新される。図５に示されているように、１／８の速度においてピッチは決定されず、コードブックはフレーム10に対応したフレーム28において一度だけ更新される。
【００３３】
さらに、ＬＰＣ係数は１フレーム当り１度だけ計算されるが、それらは各サブフレーム上に中心を持つハミングウインドウによりＬＰＣ解析の結果を近似するように前のフレームからの結果的なＬＳＰ周波数を使用して４度までラインスペクトル対（ＬＳＰ）表示を使用して直線的に補間される。例外は、全速度においてＬＰＣ係数がコードブックサブフレームに対して補間されないことである。さらに、ＬＳＰ周波数計算に関する詳細を以下説明する。
【００３４】
ピッチおよびコードブック探索を少ない頻度で実行することに加えて、少ないビットはまたＬＰＣ係数の伝送に割当てられる。種々の速度で割当てられたビットの数は図６乃至図９に示されている。図６乃至図９はそれぞれスピーチの各 160のサンプルフレームに割当てられるボコーダエンコードされたデータビットを表す。図６乃至図９において、各ＬＰＣブロック30ａ乃至30ｄの数は、短期間ＬＰＣ係数をエンコードするために対応した速度で使用されるビットの数である。好ましい実施例において、全速度、１／２速度、１／４速度および１／８速度においてＬＰＣ係数をエンコードするために使用されたビットの数はそれぞれ40、20、10および10である。
【００３５】
可変速度コード化を実行するために、ＬＰＣは最初にラインスペクトル対（ＬＳＰ）に変換され、結果的なＬＳＰ周波数はＤＰＣＭコーダを使用して個々にエンコードされる。ＬＰＣのオーダは10であるため、10個のＬＳＰ周波数および10個の独立したＤＰＣＭコーダが存在する。ＤＰＣＭコーダに対するビット割当ては表Ｉに示されている。
【００３６】
【表１】
2006221186.tif 000003
エンコーダおよびデコーダの両方において、ＬＳＰ周波数はピッチおよびコードブック探索における使用の前にＬＰＣフィルタ係数に変換される。
ピッチ探索に関して、図６に示されているような全速度において、ピッチ更新は各１／４のスピーチフレームに対して１度づつ４度計算される。全速度での各ピッチ更新に対して、10ビットは新しいピッチパラメータをエンコードするために使用される。ピッチ更新は図７乃至図９に示されているように別の速度に対して変化する回数で実行される。速度が減少すると、ピッチ更新の数もまた減少する。図７は、スピーチフレームの各半分に対して１度づつ２度計算される１／２速度に対するピッチ更新を示す。同様に、図８は全ての各スピーチフレームで一度計算される１／４速度に対するピッチ更新を示す。全速度に対するように、10ビットは１／２および１／４速度の各ピッチ更新に対して新しいピッチパラメータをエンコードするために使用される。しかしながら、図９に示されているように１／８速度に対して、この速度は少数のスピーチしかないか、或はスピーチが存在せず、ピッチ冗長性が存在しないときにフレームをエンコードするために使用されるため、ピッチ更新は計算されない。
【００３７】
各10ビットのピッチ更新に対して、７ビットはピッチ遅延を表し、３ビットはピッチ利得を表す。ピッチ遅延は17と 143との間であるように限定される。ピッチ利得は、３ビット値による表示のために０と２の間に直線的に量子化される。
コードブック探索に関して、図６に示されたように全速度において、コードブック更新はスピーチフレームの各１／８に対して１度づつ８度計算される。全速度における各コードブック更新に対して、10ビットは新しいコードブックパラメータをエンコードするために使用される。コードブック更新は、図７乃至図９に示されているように他の速度において変化する回数行われる。しかしながら、速度が減少すると、コードブック更新の数も減少する。図７は、スピーチフレームの各１／４に対して１度づつ４度計算される１／２速度に対するコードブック更新を示す。図８は、スピーチフレームの各１／２に対して１度づつ２度計算される１／４に対するコードブック更新を示す。全速度に対するように、10ビットは１／２および１／４速度の各ピッチ更新に対して新しいコードブックパラメータをエンコードするために使用される。最後に、図９は全ての各スピーチフレームに対して１度計算される１／８速度に対するコードブック更新を示す。１／８速度で２ビットがコードブック利得を表し、他の４ビットがランダムビットである６ビットが伝送されることに留意しなければならない。以下、コードブック更新用のビット割当てに関してさらに詳細に説明する。
【００３８】
データビットを表すコードブック更新のために割当てられるビットは、ピッチ予測残留物をベクトル量子化することを必要とした。全速度、１／２および１／４速度に対して、各コードフック更新は、10ビット全体に対してコードブックインデクスの７ビットプラスコードブック利得の３ビットからなる。コードブック利得は、対数ドメインで動作する微分パルスコード変調（ＤＰＣＭ）コーダを使用してエンコードされる。類似したビット構造が１／８速度に対して使用されることができるが、別の方式が好ましい。１／８速度に対して、コードブック利得は２ビットによって表され、一方ランダムに発生された４ビットはコードブックと置換する疑似ランダム数発生器に対するシードとして受信されたデータと共に使用される。
【００３９】
図１０に示されたエンコーダのブロック図を参照すると、開ループモードでＬＰＣ解析が行われる。入力スピーチサンプルｓ（ｎ）の各フレームから、係数（α1 乃至α10）は、以下説明されるようにフォルマント合成フィルタ60における使用のためにＬＰＣ解析／量子化装置50によって計算される。
【００４０】
しかしながら、ピッチ探索の計算は解析合成方法と呼ばれる閉ループモードで行われる。しかしながら、構成において新しいハイブリッド閉ループ／開ループ技術がピッチ探索を行うために使用される。ピッチ探索において、エンコード処理は入力スピーチと合成スピーチとの間の２乗平均エラーを最小にするパラメータを選択することによって実行される。簡明化のために、この説明部分において速度の問題は考慮しない。しかしながら、ピッチおよびコードブック探索における選択された速度の影響に関する説明を以下さらに詳細に述べる。
【００４１】
図１０に示された概念的な実施例において、知覚加重フィルタ52は以下の式を特徴とする：
【００４２】
【数１】
2006221186.tif 000004
はフォルマント予測フィルタであり、μは知覚加重パラメータであり、実施例においてμ＝0.8 である。ピッチ合成フィルタ58は以下の式によって特徴付けられる：
【００４３】
【数２】
2006221186.tif 000005
以下に説明される加重フィルタであるフォルマント合成フィルタ60は、以下の式を特徴とする：
【００４４】
【数３】
2006221186.tif 000006
入力スピーチサンプルｓ（ｎ）は、加重されたスピーチサンプルｘ（ｎ）が加算器62の和入力に供給されるように知覚加重フィルタ52によって加重される。知覚加重は、小さい信号パワーしかない周波数でエラーに加重するために使用される。これらの低い信号パワー周波数において、雑音はさらに知覚的に顕著である。合成スピーチサンプルｘ´（ｎ）は、サンプルｘ（ｎ）から減算される加算器62の差入力にフォルマント合成フィルタ60から出力される。加算器62から出力されたサンプルの差は、それらが２乗され、その後加算される２乗平均エラー（ＭＳＥ）素子64に入力される。ＭＳＥ素子64の計算結果は、ピッチ遅延Ｌ、ピッチ利得ｂ、コードブックインデクスＩおよびコードブック利得に対する値を生成する最小化素子66に供給される。
【００４５】
最小化素子66において、Ｐ（ｚ）中のピッチ遅延パラメータＬに対する全ての可能な値は、乗算器56から値ｃ（ｎ）と共にピッチ合成フィルタ58に入力される。ピッチ探索中、コードブックからの影響はない。すなわちｃ（ｎ）＝０である。入力スピーチと合成スピーチとの間の加重されたエラーを最小化するＬおよびｂの値は最小化素子66によって選択される。ピッチ合成フィルタ58は値ｐ（ｎ）を生成し、フォルマント合成フィルタ60に出力する。ピッチフィルタに対するピッチ遅延Ｌおよびピッチ利得ｂが見出だされると、コードブック探索は同じ方法で行われる。
【００４６】
図１０は、本発明において行われた解析合成方法を概念的に表したものであることを理解すべきである。本発明の実施例において、フィルタは典型的な閉ループフィードバック構造において使用されない。本発明において、フィードバック接続は探索中に破断され、開ループフォルマント残留物と置換され、以下においてこの詳細を述べる。
【００４７】
最小化素子66は、コードブックインデクスＩおよびコードブック利得Ｇに対する値を生成する。コードブックインデクスＩにしたがって複数のランダムガウスベクトル値から選択されたコードブック54からの出力値は、ピッチ合成フィルタ58において使用された値ｃ（ｎ）のシーケンスを生成するためにコードブック利得Ｇによって乗算器56において乗算される。２乗平均エラーを最小化するコードブックインデクスＩおよびコードブック利得Ｇは伝送のために選択される。
【００４８】
知覚的加重Ｗ（ｚ）は知覚加重フィルタ52によって入力スピーチに、またフォルマント合成フィルタ60内に含まれる加重関数によって合成スピーチに供給されることに留意すべきである。したがって、フォルマント合成フィルタ60は実際に典型的なフォルマント予測フィルタ特性１／［Ａ（ｚ）］と式１の加重関数を結合し、結果的に式３の加重されたフォルマント合成関数を生じさせる加重されたフォルマント合成フィルタである。
【００４９】
その代りに、知覚加重フィルタ52は加算器62とＭＳＥ素子64との間に位置されることが理解されるべきである。この場合、フォルマント合成フィルタ60は通常のフィルタ特性１／［Ａ（ｚ）］を有する。
図１１は、図１０のエンコーダによるスピーチのエンコード化に含まれるステップのフローチャートを示す。説明のために、速度決定を含むステップが図１１のフローチャートに含まれる。デジタル化されたスピーチサンプルはブロック80でサンプリング回路から得られ、その後ＬＰＣ係数がブロック82でサンプリング回路から計算される。ＬＰＣ係数計算の一部分としてハミングウインドウおよび自己相関技術が使用される。開始速度決定は、好ましい実施例においてブロック84でフレームエネルギに基づいた重要なフレームに対して行われる。
【００５０】
小さい数のビットでＬＰＣ係数を効率的にコード化するために、ＬＰＣ係数はブロック86でラインスペクトル対（ＬＳＰ）周波数に変換され、その後ブロック88に伝送するために量子化される。選択として、付加的な速度決定はブロック90で行われ、ブロック92において最初の速度に対するＬＳＰの量子化が不十分であると考えられた場合に速度の増加が行われる。
【００５１】
解析下のスピーチフレームの第１のピッチサブフレームに対して、ＬＳＰ周波数はブロック94でピッチ探索の実行に使用するために挿入され、ＬＰＣ係数に変換される。ピッチ探索において、コードブック励起はゼロに設定される。ピッチ探索において、可能な各ピッチ遅延Ｌに対する前述のような合成方法による解析であるブロック96および98において、合成スピーチは元のスピーチと比較される。整数値であるＬの各値に対して、最適なピッチ利得ｂが決定される。Ｌおよびｂの組のうち最適なＬおよびｂ値の組は、合成スピーチと元のスピーチとの間に最小の知覚加重された２乗平均エラーを提供する。そのピッチサブフレームに対して決定されたＬおよびｂの最適値に対して、値ｂは対応したＬ値と共に伝送するためにブロック100 で量子化される。ピッチ探索の別の実施例において、値ｂはピッチ探索の一部分として量子化された値であり、これらの量子化された値はピッチ探索を行う時に使用される。したがって、この構成において、ブロック100 におけるピッチ探索後に選択されたｂ値の量子化は不要である。
【００５２】
解析下のスピーチフレームの第１のコードブックサブフレームに対して、ブロック102 においてコードブック探索の実行時に使用するために、ＬＳＰ周波数が補間され、ＬＰＣ係数に変換される。しかしながら、実施例において全速度でＬＳＰ周波数はピッチサブフレームレベルだけに補間される。この補間および変換ステップは、ピッチデータが計算されないため結果が実質的に意味のない速度１／８を除いて、各速度に対するピッチおよびコードブックサブフレーム寸法の差のためにピッチ探索のものに加えてコードブック探索のために実行される。コードブック探索において、ブロック104 および106 で最適ピッチ遅延Ｌおよびピッチ利得ｂの値は、可能な各コードブックインデクスＩに対して合成スピーチが元のスピーチと比較されるようにピッチ合成フィルタにおいて使用される。整数値であるＩの各値に対して、最適なコードブック利得Ｇが決定される。ＩおよびＧの値の組のうち最適なＩおよびＧ値の組が合成スピーチと元のスピーチとの間に最小エラーを提供する。そのコードブックサブフレームに対して決定されたＩおよびＧの最適な値に対して、値Ｇは対応したＩ値と共に伝送するためにブロック108 で量子化される。コードブック探索の別の実施例において、Ｇの値はコードブック探索の一部分として量子化され、これらの量子化された値はコードブック探索の実行時に使用される。この別の実施例において、ブロック108 におけるコードブック探索後に選択されたＧ値の量子化は不要である。
【００５３】
コードブック探索後、エンコーダ内のデコーダはＩ、Ｇ、Ｌおよびｂの最適値でランされる。エンコーダのデコーダのランは、将来のサブフレームにおける使用のためにエンコーダフィルタメモリを再構成する。
ブロック110 において、解析が終了されたコードブックサブフレームがピッチ探索が行われたピッチサブフレームに対応したコードブックサブフレームの組の最後のコードブックサブフレームであるか否かを決定するために検査が行われる。換言すると、ピッチサブフレームに対応したコードブックサブフレームがさらに存在しているか否かに関する決定が行われる。実施例において、１ピッチサブフレーム当り２つのコードブックサブフレームだけが存在している。ピッチサブフレームに対応した別のコードブックサブフレームがあることが決定された場合、ステップ102 乃至ステップ108 はそのコードブックサブフレームに対して反復される。
【００５４】
ピッチサブフレームに対応したコードブックサブフレームがなければ、ブロック112 においてその他のピッチサブフレームが解析下のスピーチフレーム内に存在しているか否かを決定するために検査が行われ、各ピッチサブフレームおよび対応したコードブックサブフレームに対してステップ94乃至110 が反復される。解析下の現在のスピーチフレームに対する全ての計算が終了されたとき、スピーチフレームに対するＬＰＣ係数を表す値、各ピッチサブフレームに対するピッチ遅延Ｌおよび利得ｂ、および各コードブックサブフレームに対するコードブックインデクスＩおよび利得Ｇはブロック114 において伝送のためにパックされる。
【００５５】
図１２を参照すると、ＬＰＣ係数（αｉ）に対して受信された値、ピッチ遅延および利得（Ｌ＆ｂ）およびコードブックインデクスおよび利得（Ｉ＆Ｇ）がスピーチを合成するために使用されるデコーダブロック図が示されている。図１２において、図１０のように速度情報は説明を簡単にするために考慮しない。データ速度情報はサイド情報として送信されることが可能であり、場合によってはチャンネル復調段で導出されることができる。
【００５６】
デコーダは、受信されたコードブックインデクスを備えた、すなわち１／８速度のランダムシードを提供するコードブック130 から構成されている。コードブック130 からの出力は乗算器132 の１つの入力に供給され、一方乗算器132 の別の入力はコードブック利得Ｇを受信する。乗算器132 の出力は、ピッチ遅延Ｌおよび利得ｂと共にピッチ合成フィルタ134 に供給される。ピッチ合成フィルタ134 からの出力は、ＬＰＣ係数αｉと共にフォルマント合成フィルタ136 に供給される。フォルマント合成フィルタ136 からの出力は、再構成されたスピーチがフィルタ処理されて出力される適応ポストフィルタ138 に供給される。以下説明するように、デコーダの変形はエンコーダ内において行われる。エンコーダのデコーダは適応ポストフィルタ138 を含まないが、知覚加重フィルタを含んでいる。
【００５７】
図１３は、図１２のデコーダの動作に対応したフローチャートである。ブロック150 で、デコーダにおいてスピーチは受信されたパラメータから再構成される。特に、ブロック152 においてコードブックインデクスの受信された値は、コードベクトルまたはコードブック出力値を生成するコードブックに入力される。乗算器は受信されたコードブック利得Ｇと共にコードベクトルを受信し、ブロック154 でこれらの値を乗算し、結果的な信号がピッチ合成フィルタに供給される。コードブック利得Ｇは、受信されたＤＰＣＭパラメータをデコード化し、逆量子化することによって再構成されることに留意しなければならない。ピッチ合成フィルタは、ブロック156 で乗算器出力をフィルタ処理するように乗算器の出力信号と共に受信されたピッチ遅延Ｌおよび利得ｂ値を供給される。
【００５８】
ピッチ合成フィルタによってコードブックベクトルをフィルタ処理することから結果的に生じた値は、フォルマント合成フィルタに入力される。ブロック158において、ピッチ合成フィルタ出力信号のフィルタ処理に使用するためにＬＰＣ係数αｉもまたフォルマント合成フィルタに供給される。ＬＰＣ係数は、量子化されたＬＳＰ周波数に受信されたＤＰＣＭパラメータをデコード化し、ＬＳＰ周波数を逆量子化し、ＬＰＣ係数αｉにＬＳＰ周波数を変換することによって補間のためにデコーダで再構成される。ブロック160 において、フォルマント合成フィルタからの出力は量子化雑音がマスクされる適応ポストフィルタに供給され、再構成されたスピーチが利得制御される。ブロック162 において、再構成されたスピーチはアナログ形態への変換のために出力される。
【００５９】
図１４および図１５のブロック図を参照すると、本発明のスピーチエンコード技術がさらに詳細に示されている。図１４において、デジタル化されたスピーチサンプルの各フレームは、自己相関サブシステム202 における自己相関係数の計算前に入力スピーチがウインドウ処理されるハミングウインドウサブシステム200 に供給される。
【００６０】
図１６においてハミングウインドウサブシステム200 および自己相関サブシステム202 の１実施例が示されている。ハミングウインドウサブシステム200 は検索表250 、典型的には80×16ビットの読取り専用メモリ（ＲＯＭ）および乗算器252 から構成されている。各速度に対してスピーチのウインドウは、160 サンプル長である各解析フレームの139 番目と140 番目のサンプル間に中心を有する。したがって、自己相関係数を計算するウインドウは、60サンプルだけ解析フレームからずらされる。
【００６１】
ウインドウ処理は、ハミングウインドウが中心に関して対称的であるため、160 個のＷH （ｎ）値の80個を含むＲＯＭ表を使用して実行される。ハミングウインドウのオフセットは、解析フレームの第１のサンプルに関して60個の位置だけＲＯＭのアドレスポインタを歪めることによって行われる。これらの値は、乗算器252 によって対応した入力スピーチサンプルと１度正確に乗算される。ｓ（ｎ）を解析ウインドウ中の入力スピーチ信号とする。ウインドウ処理されたスピーチ信号ｓw （ｎ）は次のように定められる：
【００６２】
【数４】
2006221186.tif 000007
検索表250 の内容の例示的な16進法の値は表ＩＩに示されている。これらの値は、14の分数ビットを有する２の補数として表され、表は左から右、上から下の順序で読取られる。
【００６３】
【表２】
2006221186.tif 000008
自己相関サブシステム202 はレジスタ254 、マルチプレクサ256 、シフトレジスタ258 、乗算器260 、加算器262 、循環シフトジスタ264 およびバッファ266から構成されている。ウインドウ化されたスピーチサンプルｓw （ｎ）は20ｍ秒ごとに計算され、レジスタ254 にラッチされる。サンプルｓw （０）において、ＬＰＣ解析フレームの第１のサンプル、シフトレジスタ258 および264 は０にリセットされる。各新しいサンプルｓw （ｎ）において、マルチプレクサ256 はサンプルがレジスタ254 から入力することを可能にする新しいサンプル選択信号を受信する。新しいサンプルｓw （ｎ）はまたシフトレジスタ258 の最後の位置ＳＲ10にあるサンプルＳw （ｎ−10）によって乗算される乗算器260 に供給される。結果的な値は循環シフトレジスタ264 の最後の位置ＣＳＲ11にある値と加算器262 において加算される。
【００６４】
シフトレジスタ258 および260 が一度クロックされると、シフトレジスタ258の第１の位置ＳＲ1 においてＳw （ｎ）によりＳw （ｎ−１）を置換し、位置ＣＳＲ10における前の値を置換する。シフトレジスタ258 のクロック時に、新しいサンプル選択信号は、シフトレジスタ260 の現在の位置ＳＲ10におけるサンプルＳw （ｎ−９）がマルチプレクサ256 に入力することが許容されるようにマルチプレクサ256 への入力から除去される。循環シフトレジスタ264 において、位置ＣＳＲ11における前の値は第１の位置ＣＳＲ1 にシフトされる。マルチプレクサから除去された新しいサンプル選択信号により、シフトレジスタ258 は循環シフトレジスタ264 と同様にシフトレジスタにおいてデータの循環シフトを行うように設定する。
【００６５】
シフトレジスタ258 および264 の両者は、11回の乗算／累算動作が実行されるように全ての各サンプルにおいて11回クロックされる。160 個のサンプルがクロックされた後、循環シフトレジスタ264 に含まれる自己相関結果は値Ｒ（０）−Ｒ（10）としてバッファ266 中にクロックされる。全てのシフトレジスタはゼロにリセットされ、プロセスはウインドウ化されたスピーチサンプルの次のフレームに対して反復する。
【００６６】
図１４を参照すると、自己相関係数がスピーチフレームに対して一度計算されると、速度決定サブシステム204 およびＬＰＣ解析サブシステム206 はフレームデータ速度およびＬＰＣ係数をそれぞれ計算するためにこのデータを使用する。これらの動作は互いに独立しているため、それらは任意の順序で、または同時に計算される。ここにおいて説明のために、速度決定を最初に説明する。
【００６７】
速度決定サブシステム204 は（１）現在のフレームの速度を決定し、（２）背景雑音レベルの新しい評価を計算する２つの機能を有する。現在の解析フレームに対する速度は最初に現在のフレームエネルギ、背景雑音レベルの前の評価、前の速度および制御マイクロプロセッサからの速度命令に基づいて決定される。新しい背景雑音レベルは、背景雑音レベルの前の評価および現在のフレームエネルギを使用して評価される。
【００６８】
本発明は、速度決定のために適用しきい値技術を使用する。背景雑音が変化すると、速度を選択する時に使用されるしきい値はそのように変化する。実施例において、３つのしきい値は速度選択ＲＴp を予備的に決定するために計算される。しきい値は前の背景雑音評価の直角位相関数であり、以下のように示される：
【００６９】
【数５】
2006221186.tif 000009
ここで、Ｂは前の背景雑音評価である。
フレームエネルギは、３つのしきい値Ｔ1(B)、Ｔ2(B)およびＴ3(B)に対して比較される。フレームエネルギが３つの全てのしきい値より下である場合、伝送の最低速度（１ｋｂｐｓ）、ＲＴp ＝４である速度１／８が選択される。フレームエネルギが２つのしきい値より下である場合、伝送の第２の速度（２ｋｂｐｓ）、ＲＴp ＝３である速度１／４が選択される。フレームエネルギがただ１つのしきい値より下である場合、伝送の第３の速度（４ｋｂｐｓ）、ＲＴp ＝２である速度１／２が選択される。フレームエネルギが全てのしきい値より上である場合、伝送の最高速度（８ｋｂｐｓ）、ＲＴp ＝１である速度１が選択される。
【００７０】
予備速度ＲＴp は前のフレームの最終速度ＲＴr に基づいて修正されてもよい。予備速度ＲＴp が前のフレームの最終速度マイナス１（ＲＴr −１）より小さい場合、中間速度ＲＴm が設定され、ここでＲＴm ＝（ＲＴr −１）である。この修正プロセスは、高エネルギ信号から低エネルギ信号への転移が発生した場合に速度をゆっくりとして傾斜で低下させる。しかしながら、開始速度選択が前の速度マイナス１ （ＲＴr −１）に等しいか、またはそれより大きい場合、中間速度ＲＴm は予備速度ＲＴp と同じに、すなわちＲＴm ＝ＲＴp に設定される。この状況において、低エネルギ信号から高エネルギ信号への転移が発生したとき、速度は直に増加する。
【００７１】
最後に、中間速度ＲＴm はさらにマイクロプロセッサからの速度制限命令によって修正される。速度ＲＴm がマイクロプロセッサによって許容された最高速度より大きい場合、開始速度ＲＴi は最高許容速度に設定される。同様に、中間速度ＲＴm がマイクロプロセッサによって許容された最低速度より小さい場合、開始速度ＲＴi は最低許容値に設定される。
【００７２】
ある場合、マイクロプロセッサによって決定された速度で全てのスピーチをコード化することが所望される。速度制限命令は、所望される速度に最大および最小許容速度を設定することによって所望される速度でフレーム速度を設定するために使用されることができる。速度制限命令は、速度インターロック並びにかすみおよびバースト伝送のような特別な速度制御状況に対して使用され、これら両者については以下説明される。別の実施形態においては、線形予測符号化（LPC）係数はレート決定よりも先に計算されうる。計算されたLPC係数は入力されたスピーチ・フレームのスペクトル特性を反映することから、該係数はスピーチ活動の指標として用いることができる。従って、前記レート決定は該計算されたLPC係数に基づいて行うことができる。
【００７３】
図１７は速度決定アルゴリズムの１実施例を提供する。計算をスタートするために、レジスタ270 は加算器272 に供給される値１により予め負荷される。循環シフトレジスタ274 ，276 および278 はそれぞれ直角位相しきい値の式（７）乃至（９）の第１、第２および第３の係数により負荷される。例えば、循環シフトレジスタ274 の最後、中間および最初の位置はそれぞれＴ1 ，Ｔ2 およびＴ3 が計算される式の第１の係数により負荷される。同様に、循環シフトレジスタ276の最後、中間および最初の位置はそれぞれＴ1 ，Ｔ2 およびＴ3 が計算される式の第２の係数により負荷される。最後に、循環シフトレジスタ278 の最後、中間および最初の位置はそれぞれＴ1 ，Ｔ2 およびＴ3 が計算される式の定数の項により負荷される。各循環シフトレジスタ274 ，276 および278 において、値は最後の位置から出力される。
【００７４】
第１のしきい値Ｔ1 を計算する時、前のフレームの背景雑音評価Ｂは乗算器280 においてそれ自身の値を乗算することによって平方される。結果的な値Ｂ2 の値は、循環シフトレジスタ274 の最後の位置から出力された第１の係数 -5.544613（10-6）により乗算される。この結果的な値は、乗算器284 からの背景雑音Ｂと循環シフトレジスタ276 の最後の位置から出力された第２の係数4.047152の積と加算器286 において加算される。その後、加算器286 からの出力値は、循環シフトレジスタ278 の最後の位置から出力された定数項363.1293と加算器288 において加算される。加算器288 からの出力はＴ1 の計算された値である。
【００７５】
加算器288 から出力されたＴ1 の計算された値は、実施例では自己相関サブシステムから供給された直線ドメイン中の値Ｒ（０）であるフレームエネルギＥfから加算器290 において減算される。
別の実施例において、フレームエネルギＥf はそれが実効的なウインドウ長により正規化された第１の自己相関係数Ｒ（０）の対数によって近似されるｄＢの対数ドメインで表される：
【００７６】
【数６】
2006221186.tif 000010
ここでＬA は自己相関ウインドウ長である。音声活動はまたピッチ予測利得またはフォルマント予測利得Ｇa を含む種々の別のパラメータから測定されてもよいことが理解されなければならない：
【００７７】
【数７】
2006221186.tif 000011
ここでＥ(10)は、10番目の反復後の予測残留エネルギであり、Ｅ(0) はＲ（０）と同じであるＬＰＣ解析に関して以下説明するように最初のＬＰＣ予測残留エネルギである。
加算器290 の出力から、結果的な２の補数差の符号ビットの補数は比較器またはリミタ292 によって抽出され、レジスタ270 の出力と加算される加算器272 に供給される。したがって、Ｒ（０）とＴ1 との間の差が正ならば、レジスタ270は１だけインクレメントされる。差が負ならば、レジスタ270 は同じ状態である。
【００７８】
循環レジスタ274 、276 および278 はその後循環され、Ｔ2 に対する式である式（８）の係数がその出力に現れる。しきい値Ｔ2 を計算し、フレームエネルギとそれを比較するプロセスはしきい値Ｔ1 に対するプロセスに関して述べられたように反復される。循環レジスタ274 、276 および278 は、Ｔ3 に対する式である式（９）の係数がその出力に現れるように循環。しきい値Ｔ3 に対する計算およびフレームエネルギに対する比較は上記のように行われる。３つのしきい値計算および比較の終了後、レジスタ270 は開始速度評価ＲＴi を含む。予備速度評価ＲＴp は速度ランプダウン論理回路294 に供給される。前のフレーム最終速度ＲＴr はまたレジスタ298 に蓄積されるＬＳＰ周波数量子化サブシステムから論理回路294 に供給される。論理回路296 は値（ＲＴr −１）を計算し、予備速度評価ＲＴp および値（ＲＴr −１）の大きいほうを出力として供給する。値ＲＴm は速度リミタ論理回路296 に供給される。
【００７９】
上記のように、マイクロプロセッサはボコーダ、特に論理回路296 に速度制限命令を供給する。デジタル信号プロセッサ構造において、この命令はエンコード化プロセスのＬＰＣ解析部分が終了される前に論理回路296 において受信される。論理回路296 は速度が速度制限を越えず、それが制限を越えた場合には値ＲＴm を修正することを保証する。値ＲＴm が許容速度の範囲内にある場合、それは開始速度値ＲＴi として論理回路296 から出力される。開始速度値ＲＴi は、図１４のＬＳＰ量子化サブシステム210 に論理回路296 から出力される。
【００８０】
上記のような背景雑音評価は、適用速度しきい値を計算する時に使用される。現在のフレームに対して、前のフレーム背景雑音評価Ｂは現在のフレームに対する速度しきい値を設定する時に使用される。しかしながら、各フレームに対して背景雑音評価は、次のフレームに対する速度しきい値の決定に使用するために更新される。新しい背景雑音評価Ｂ´は、前のフレーム背景雑音評価Ｂおよび現在のフレームエネルギＥf に基づいて現在のフレームにおいて決定される。
【００８１】
次のフレーム中に使用するための新しい背景雑音評価Ｂ´の決定（前のフレームの背景雑音評価Ｂのように）において、２つの値が計算される。第１の値Ｖ1は現在のフレームエネルギＥf だけである。第２の値Ｖ2 はＢ＋１およびＫＢの大きいほうであり、ここでＫ＝1.00547 である。第２の値が大きくなり過ぎることを阻止するために、それは強制的に大きい定数Ｍ＝160,000 より下にされる。２つの値Ｖ1 またはＶ2 の小さいほうが新しい背景雑音評価Ｂ´として選択される。数学的には、
【００８２】
【数８】
2006221186.tif 000012
ここで最小（ｘ，ｙ）はｘおよびｙの最小値であり、最大 （ｘ，ｙ）はｘおよびｙの最大値である。
図１７はさらに背景雑音評価アルゴリズムの実施例を示す。第１の値Ｖ1 は、マルチプレクサ300 の１つの入力に直接供給される現在のフレームエネルギＥfだけである。
【００８３】
第２の値Ｖ2 は、最初に計算された値ＫＢおよびＢ＋１から計算される。値ＫＢおよびＢ＋１を計算する時に、レジスタ302 に蓄積された前のフレーム背景雑音評価Ｂは、加算器304 および乗算器306 に出力される。現在のフレームにおける使用のためにレジスタ302 に蓄積された前のフレーム背景雑音評価Ｂは、前のフレームにおいて計算された新しい背景雑音評価Ｂ´と同じであることを留意しなければならない。加算器304 はまた項Ｂ＋１を生成するように値Ｂとの加算のために１の入力値を供給される。乗算器306 はまた項ＫＢを生成するように値Ｂとの乗算のためにＫの入力値を供給される。項Ｂ＋１およびＫＢはそれぞれ乗算器308 および加算器310 の別々の両入力に加算器304 および乗算器306 から出力される。
【００８４】
加算器310 および比較器またはリミタ312 は、項Ｂ＋１およびＫＢの大きいほうの選択時に使用される。加算器310 はＫＢから項Ｂ＋１を減算し、比較器またはリミタ312 に結果的な値を供給する。リミタ312 は、項Ｂ＋１およびＫＢの大きいほうとして出力を選択するようにマルチプレクサ308 に制御信号を供給する。選択された項Ｂ＋１またはＫＢは、定数値Ｍより下の場合に選択された項を、或いは値Ｍより上の場合には値Ｍを供給する飽和タイプのリミタであるリミタ314 にマルチプレクサ308 から出力される。リミタ314 からの出力は第２の入力としてマルチプレクサ300 に、また１入力として加算器316 に供給される。
【００８５】
加算器316 はまた別の入力においてフレームエネルギＥf を受信する。加算器316 および比較器またはリミタ318 は、値Ｅf およびリミタ314 から出力された項の小さい方を選択する時に使用される。加算器316 は、リミタ314 から出力された値からフレームエネルギ値を減算し、比較器またはリミタ318 に結果的な値を供給する。リミタ318 は、Ｅf 値およびリミタ314 からの出力の小さいほうを選択するためにマルチプレクサ300 に制御信号を供給する。マルチプレクサ300から出力された選択された値は、前のフレーム背景雑音評価Ｂとして次のフレーム中に使用するために蓄積されるレジスタ302 に新しい背景雑音評価Ｂ´として供給される。
【００８６】
再び図１４，１５を参照すると、各自己相関係数Ｒ（０）乃至Ｒ （10）は自己相関サブシステム202 からＬＰＣ解析サブシステム206 に出力される。ＬＰＣ係数は、知覚加重フィルタ52およびフォルマント合成フィルタ60の両者においてＬＰＣ解析サブシステム206 中で計算される。
【００８７】
ＬＰＣ係数は、文献（ RabinerおよびSchafer 氏による “ Digital Processing of Speech Signals ”，Prentice-Hall,Inc., 1978年）において論じられるようにダービンの循環を使用する自己相関方法によって得られる。この技術は、ＬＰＣ係数を得るための効率的な計算方法である。アルゴリズムは以下の式で表されることができる：
【００８８】
【数９】
2006221186.tif 000013
10個のＬＰＣ係数は、 1≦ｊ≦10に対してαj (10)のラベルを付けられる。
ＬＰＣ係数をエンコードする前に、フィルタの安定性が保証されなければならない。フィルタの安定性は、ピーク周波数応答の大きさを減少し、一方ピークの帯域幅を拡大する少量だけ内側にフィルタ極を放射方向にスケールすることによって達成される。この技術は一般に帯域幅拡大として知られており、さらに文献（ Tohkura氏他による“ＳpectralＳmoothing in ＰＡＲＣＯＲ Ｓpeech Ａnalysis−Ｓynthesis”，ASSP Transactions ，1978年12月）に示されている。この場合、帯域幅拡大は各ＬＰＣ係数にスケールすることによって効率的に実行されることができる。したがって、表III に示されているように、結果的なＬＰＣ係数はそれぞれＬＰＣ解析サブシステム206 の最終的な出力ＬＰＣ係数α1 乃至α10を生成するように対応した６つの値によって乗算される。表III に与えられた値は２の補数表記で15の小数ビットを持つヘキサデシマールで与えられる。この形態において、値 0×8000は値-1.0を表し、値 0×7333（または29491 ）は0.899994＝29491/32768 を表す。
【００８９】
【表３】
2006221186.tif 000014
動作は、二重正確度すなわち32ビット除算、乗算および加算で実行されることが好ましい。二重正確度の正確さは自己相関関数およびフィルタ係数のダイナミック範囲を維持するために好ましい。
図１８において、上記の式（15）乃至（20）を実行するＬＰＣサブシステム206 の実施例のブロック図が示されている。ＬＰＣサブシステム206 は、主計算回路330 および主計算回路330 のレジスタを更新するために使用される２つのバッファ更新回路332 および334 の３つの回路部分から構成されている。計算はバッファ340 に値Ｒ（１）乃至Ｒ（10）を最初に負荷することによって開始される。計算を開始するために、レジスタ348 はマルチプレクサ344 を介して値Ｒ（１）により予め負荷される。レジスタはマルチプレクサ350 を介してＲ（０）により初期化され、バッファ352 （10個のαj (i-1) 値を保持する）はマルチプレクサ354 を介して全てゼロに初期化され、バッファ356 （10個のαj (i) 値を保持する）はマルチプレクサ358 を介して全てゼロに初期化され、ｉは計算サイクルのために１に設定される。簡明化のために、ｉおよびｊに対するカウンタおよびその他の計算サイクル制御装置は示されていないが、このタイプの論理回路の設計および集積はデジタル論理回路設計で当業者の能力内において容易に実行される。
【００９０】
αj (i-1) 値は、式（14）に示されているような項ｋi Ｅ(i-1) を計算するためにバッファ356 から出力される。各値Ｒ(i-j) は、乗算器360 におけるαj (i-1) 値との乗算のためにバッファ340 から出力される。各結果的な値は、レジスタ346 中の値から加算器362 において減算される。各減算の結果は、次の項が減算されるレジスタ346 に蓄積される。式（14）の合計項に示されているように、ｉ番目のサイクルには（ｉ−１）の乗算および累算が存在する。このサイクルの終りにおいて、レジスタ346 中の値は値ｋi を生成するようにレジスタ348 からの値Ｅ(i-1) により除算器364 で除算される。
【００９１】
その後、値ｋi は、上記の式（19）のように値Ｅ(i) を計算するためにバッファ更新回路332 において使用され、これはｋi の次の計算サイクル中に値Ｅ(i-1) として使用される。現在のサイクル値ｋi は、値ｋi 2 を得るためにそれ自身乗算器366 において乗算される。その後、値ｋi 2 は加算器368 において１の値から減算される。この加算の結果値は、乗算器370 においてレジスタ348 からの値Ｅ(i) と乗算される。結果的な値Ｅ(i) は、次のサイクルのために値Ｅ(i-1)として蓄積するためにマルチプレクサ350 を介してレジスタ348 に入力される。
【００９２】
値ｋi は、式（15）のように値αi (i) を計算するために使用される。この場合、値ｋi はマルチプレクサ358 を介してバッファ356 に入力される。値ｋi はまた式（18）のように値αj (i-1) から値αj (i) を計算するためにバッファ更新回路334 において使用される。バッファ352 に現在蓄積されている値は値αj(i) の計算時に使用される。式（18）に示されているように、ｉ番目のサイクルには（ｉ−１）の計算がある。ｉ＝１の反復において、このような計算は不要である。ｉ番目のサイクルに対するｊの各値に対して、αj (i) の値が計算される。αj (i) の各値の計算時にαi-j (i-1) の各値は加算器374 への出力のために乗算器374 において値ｋi と乗算される。加算器374 において、値ｋi αi-j (i-1) は加算器374 に入力される値αj (i-1) から減算される。各乗算および加算の結果は、αj (i) の値としてマルチプレクサ358 を介してバッファ356 に供給される。
【００９３】
現在のサイクルに対して値αi (i) およびαj (i) が計算されると、計算されバッファ356 に蓄積された値は、マルチプレクサ354 を介してバッファ352 に出力される。バッファ356 に蓄積された値は、バッファ352 中の対応した位置に蓄積される。このようにしてバッファ352 は、ｉ＋１番目のサイクルに対して値ｋi を計算するために更新される。
【００９４】
前のサイクルの終了時に生成されるデータαj (i-1) は、次のサイクル用の更新αj (i) を生成するために現在のサイクル中に使用されることに注意することが重要である。この前のサイクルデータは、次のサイクルのために更新されたデータを完全に生成するために保存されなければならない。したがって、２つのバッファ356 および352 は、更新されたデータが完全に生成されるまでこの前のサイクルデータを保存するために使用される。
【００９５】
上記の説明は、更新された値の計算の終了時におけるバッファ356 からバッファ352 へのデータの並列伝送に関して示されている。この構造は、単一バッファ構造において発生するような完全な使用前に古いデータを損うことなく古いデータが新しいデータを計算するプロセス全体中に保存されることを保証する。示された構造は、同じ結果を得るために容易に利用できるいくつかの構造の１つである。例えばバッファ352 および356 は、第１のバッファに蓄積された値から現在のサイクルに対する値ｋi を計算する時に、更新が使用前に次の計算サイクル中第２のバッファに蓄積されるように多重化されてもよい。この次の計算サイクルにおいて、値ｋi は第２のバッファに蓄積された値から計算される。第２のバッファ中の値および値ｋi は、次の計算サイクルに対する更新を生成するために使用され、これらの更新は第１のバッファに蓄積される。このバッファの交互動作は、更新が生成され、一方において更新を生成するために必要とされる進行している値を重ね書きせずに、更新された値を蓄積する計算サイクルの進行の反復を可能にする。この技術の使用が次のサイクルに対する値ｋi の計算に関連した遅延を最小にする。したがって、ｋi の計算における乗算／累算の更新はαj (i-1) の次の値が計算されるのと同時に実行されてもよい。
【００９６】
最後の計算サイクル（ｉ＝10）の終了時にバッファ356 に蓄積された10個のＬＰＣ係数αj (10)は、対応した最終のＬＰＣ係数αj に到達するようにスケールされる。スケール化は、表III におけるヘックス値である検索表342 に蓄積されたスケール値がマルチプレクサ344 を通過する出力に対して選択されるようにマルチプレクサ344 ，376 および378 にスケール選択信号を供給することによって行われる。検索表342 に蓄積された値は連続的にクロックされ、乗算器360 に入力される。乗算器360 はまたレジスタ356 から連続的に出力されたαj (10)の値をマルチプレクサ376 を介して受信する。スケール化された値は、マルチプレクサ378 を介して乗算器360 からＬＰＣ・ＬＳＰ変換サブシステム208 に出力として出力される（図１４，１５）。
【００９７】
10個の各スケールされたＬＰＣ係数を小さい数のビットで効率的にエンコードするために、係数は文献（ＳoongおよびＪuang氏による“Ｌine Ｓpectrum Ｐair （ＬＳＰ）and Ｓpeech Ｄata Ｃompression”，ＩＣＡＳＳＰ´８４）に示されているようにラインスペクトル対周波数に変換される。ＬＳＰパラメータの計算は表ＩＶと共に式（21）および（22）で以下に示されている。
【００９８】
ＬＳＰ周波数は、以下の式の０乃至πの間に存在する10個の根である：
【００９９】
【数１０】
2006221186.tif 000015
ここでｐn およびｑn 値はｎ＝１，２，３，４に対するものであり、表ＩＶにおいてそれぞれ定められている。
【０１００】
【表４】
2006221186.tif 000016
表ＩＶにおいて、α1 ，…，α10の値はＬＰＣ解析の結果生じたスケールされた係数である。式（21）および（22）の10個の根は、簡明化のために 0乃至0.5の間でスケールされる。ＬＳＰ周波数の特性は、ＬＰＣフィルタが安定しているならば２つの関数の根は交互することである。すなわち最低の根ω1 はＰ（ω）の最低の根であり、次に低い根ω2 はＱ（ω）の最低の根である。10個の周波数のうち、奇数周波数はＰ（ω）の根であり、偶数周波数はＱ（ω）の根である。
【０１０１】
根の探索は以下のようにして行われる。最初に、上記のようにＬＰＣ係数を加算することによって二重正確度でｐおよびｑ係数が計算される。その後、Ｐ（ω）はπ／256 ラジアンごとに評価され、これらの値は符号変化に対して評価され、それはサブ領域中の根を識別する。根が見出された場合、この領域の２つの境界の間の直線的な補間が根の位置を近似するために実行される。１つのＱの根は、周波数の整列特性のためにＰの根の各対の間に存在する（第５のＱの根は第５のＰの根とπとの間に存在する）ことが保証されている。２進法探索は、Ｑの根の位置を決定するためにＰの根の各対の間で実行される。構造を容易にするために、各Ｐの根は最も近いπ／256 値によって近似され、２進法探索がこれらの近似値間において実行される。根が見出されない場合、根が見出だされた最後のフレームからのＬＳＰ周波数の前の量子化されていない値が使用される。
【０１０２】
図１９を参照すると、ＬＳＰ周波数を生成するために使用される回路の実施例が示されている。上記の動作は、モード256 でカウンタ402 によってアドレスされるコサイン検索表400 に二重正確度で蓄積される 0乃至πの間の全体で257 個の可能なコサイン値を必要とする。検索表400 に入力されるｊの各値に対して、cos ω， cos 2ω， cos 3ω， cos 4ω， cos 5ωの出力が供給され、ここにおいて：
ω＝ｊπ／256 （23）
ここでｊはカウント値である。
【０１０３】
検索表400 から出力された値cos ω， cos 2ω， cos 3ω， cos 4ωは、各乗算器404 ，406 ，408 および410 に入力され、一方値 cos 5ωは合計器412 に直接入力される。これらの値は、マルチプレクサ414 ，416 ，418 および420 を介してそれに入力された値ｐ4 ，ｐ3 ，ｐ2 およびｐ1 のそれぞれと各乗算器404，406 ，408 および410 において乗算される。この乗算の結果的な値は、また合計器412 に入力される。さらに値ｐ5 として、一定の値0.5 、すなわち1/2 が乗算器424 にマルチプレクサ422 を通って供給され、この一定の値もまた乗算器424 に供給される。乗算器424 から出力された結果的な値は別の入力として合計器412 に供給される。マルチプレクサ414 乃至422 は、Ｐ（ω）およびＱ（ω）の両値の計算に対して同じ回路を使用するようにｐ／ｑ係数選択信号に応答して値ｐ1 乃至ｐ5 またはｑ1 乃至ｑ5 の間で選択する。ｐ1 乃至ｐ5 またはｑ1 乃至ｑ5 の値を生成する回路は示されていないが、ｐ1 乃至ｐ5 またはｑ1 乃至ｑ5の値を蓄積するレジスタと共にＬＰＣ係数およびｐ1 乃至ｐ5 またはｑ1 乃至ｑ5 の値を加算および減算する一連の加算器を使用して容易に構成される。
【０１０４】
合計器412 は、場合に応じて出力Ｐ（ω）またはＱ（ω）を提供するために入力値を合計する。以下の説明を容易にするために、Ｐ（ω）の値の場合を考える。Ｑ（ω）の値は、ｑ1 乃至ｑ5 の値を使用して同様にして計算される。Ｐ（ω）の現在の値は合計器412 から出力され、レジスタ426 に蓄積される。レジスタ426 に前に蓄積されたＰ（ω）の先行した値は、レジスタ428 にシフトされる。Ｐ（ω）の現在および前の値の符号ビットは、直線補間装置434 に送られるエネーブル信号の形態でゼロ交差または符号変化を示すために排他的オアゲート430において排他的オアされる。Ｐ（ω）の現在および前の値はまたゼロ交差が発生するＰ（ω）の２つの値の間の点を補間するためにエネーブル信号に応答する直線補間装置434 にレジスタ426 および428 から出力される。値（ｊ−１）からの距離であるこの直線補間部分的値の結果は、カウンタ256 からの値ｊと共にバッファ436 に供給される。ゲート430 はまた値ｊおよび対応した部分的な値ＦＶjの蓄積を可能にするバッファ436 にエネーブル信号を供給する。
【０１０５】
部分的な値は加算器438 においてバッファ436 からの出力として値ｊから減算されるか、或はその代りとしてバッファ436 への入力としてそれから減算される。別の実施例において、値ｊ−１がバッファ436 に入力され、部分的な値も入力されるように、バッファ436 へのｊライン入力におけるレジスタが使用されてもよい。部分的な値は、レジスタ436 における蓄積の前またはその出力時に値（ｊ−１）に加算される。いずれの場合でも、ｊ＋ＦＶj または（ｊ−１）＋ＦＶjの結合された値は入力定数値512 によって除算される除算器440 に出力される。除算動作は、表記的な２進ワード中の２進法の少数点位置を単に変化するだけで簡単に実行される。この除算動作は、 0乃至0.5 の間のＬＳＰ周波数に到達するために必要なスケール処理を実行する。
【０１０６】
Ｐ（ω）またはＱ（ω）の各関数評価には、５つのコサイン検索表、４つの二重正確度乗算および４つの加算が必要とされる。計算された根は典型的に約13ビットまで正確であり、単一正確度で蓄積される。ＬＳＰ周波数は量子化のためにＬＳＰ量子化サブシステム210 （図１４，１５）に供給される。
【０１０７】
ＬＳＰ周波数が計算されると、それらは伝送のために量子化されなければならない。10個の各ＬＳＰ周波数はバイアス値を中心にほぼ囲んでいる。ＬＳＰ周波数は、入力スピーチが平坦なスペクトル特性を有し、短期間予測が実行されることができないときにバイアス値を近似することに留意しなければならない。バイアスはエンコーダにおいて減算され、簡単なＤＰＣＭ量子化器が使用される。デコーダにおいて、バイアスは再び加算される。ＬＰＣからＬＳＰへの変換サブシステムに供給されたような各ＬＳＰ周波数ω1 乃至ω10に対する16進法の負のバイアス値は、表Ｖに示されている。表Ｖに示された値は、部分的な15ビットを持つ２補数である。ヘックス値 0×8000（または-32768）は-1.0を表す。したがって、表Ｖの第１の値である値 0×fa2f（または-1489 ）は -0.045441＝ -1489／32768 を表す。
【０１０８】
【表５】
2006221186.tif 000017
サブシステムにおいて使用された予測装置は、サブシステム中のバッファに蓄積された前のフレームからの量子化されたＬＳＰ周波数の0.9 倍である。この0.9 の減少定数は、チャンネルエラーが最終的になくなるように挿入される。
【０１０９】
使用される量子化器は直線的であるが、速度と共にダイナミック範囲およびステップ寸法を変化させる。高速フレームにおいてもまたより多くのビットが各ＬＳＰ周波数に対して伝送される。表ＶＩにおいて、量子化器のビット割当ておよびダイナミック範囲が各速度で各周波数に対して示されている。例えば、速度１であるω1 は４ビット（すなわち16レベルに）を使用して均一に量子化され、最も高い量子化レベルは0.025 であり、最も低いものは-0.025である。
【０１１０】
【表６】
2006221186.tif 000018
速度決定アルゴリズムによって選択された速度に対する量子化範囲が十分に大きくなく、或は傾斜オーバーフローが発生した場合、速度は次に高い速度に高められる。速度はダイナミック範囲が適合されるか、或は全速度に達するまで連続的に高められる。図２０において、任意選択速度増加技術の１実施例のブロック図が与えられている。
【０１１１】
図２０は、速度増加回路を含むＬＳＰ量子化サブシステム210 の一実施例をブロック図で示す。図２０において、現在のフレームのＬＳＰ周波数は除算器440（図１９）からレジスタ442 に出力され、これにおいて次のフレームにおける速度増加決定中の出力のために蓄積される。前のフレームのＬＳＰ周波数および現在のフレームのＬＳＰ周波数は、現在のフレーム速度増加決定のためにそれぞれレジスタ442 および除算器440 から速度増加論理回路444 に出力される。速度増加論理回路444 はまた速度決定サブシステム204 から速度制限命令と共に開始速度決定を受取る。速度増加が必要であるか否かを決定する時、論理回路444 は、現在および前のフレームのＬＳＰ周波数間の差の２乗の和に基づいて現在のフレームのＬＳＰ周波数と前のフレームのＬＳＰ周波数を比較する。その後、結果的な値はしきい値と比較され、しきい値が越された場合に、高品質のＳＳのエンコード化を保証するために速度の増加が指示される。しきい値を越えた時、論理回路444 はエンコーダにおいて使用される最終速度の出力を供給するように１速度レベルだけ開始速度をインクレメントする。
【０１１２】
図２０において、各ＬＳＰ周波数の値ω1 乃至ω10は対応したバイアス値と共に一度に１つづつ加算器450 に入力される。バイアス値は入力ＬＳＰ値から減算され、その結果的な値が加算器452 に出力される。加算器452 はまた減少定数と乗算された前のフレームの対応したＬＳＰ値である予測値を入力として受信する。予測値は、加算器452 によって加算器450 の出力値から減算される。加算器452 の出力は量子化器454 に入力として供給される。
【０１１３】
量子化器454 は、リミタ456 、最小ダイナミック範囲検索表458 、反転ステップ寸法検索表460 、加算器462 、乗算器464 およびビットマスク466 から構成されている。量子化は、入力値が量子化器454 のダイナミック範囲内にあるか否かを最初に決定することによって量子化器454 において実行される。入力値は、入力が検索表458 にって与えられた境界を越えた場合に、ダイナミック範囲の上限および下限に入力値を制限するリミタ456 に供給される。検索表458 は速度入力およびそれに入力されたＬＳＰ周波数インデクスｉに応答してリミタ456 に対して表ＶＩにしたがって蓄積された境界を与える。リミタ456 から出力された値は加算器462 に入力され、検索表458 によって与えられた最小ダイナミック範囲の最小がそれから減算される。検索表458 から出力された値は、最小のダイナミック範囲の値にしたがって速度およびＬＳＰ周波数インデクスｉによって決定され、表ＶＩに示されたように値の符号を無視する。例えば（全速度，ω1 ）に対する検索表458 中の値は0.025 である。
【０１１４】
加算器462 からの出力は、検索表460 から選択された値により乗算器464 において乗算される。検索表460 は、表ＶＩに示された値にしたがって各速度における各ＬＳＰ値に対するステップ寸法の逆数に対応した値を含む。検索表460 から出力された値は、速度およびＬＳＰ周波数インデクスｉによって選択される。各速度およびＬＳＰ周波数インデクスｉに対して、検索表460 に蓄積された値は量［（２n −１）／ダイナミック範囲］であり、ここにおいてｎは量子化された値を表すビットの数である。例えば、（速度１，ω1 ）に対する検索表460 中の値は（15／0.05）または300 である。
【０１１５】
乗算器464 からの出力は、ビットマスク466 に供給された０乃至２n −１の間の値である。速度およびＬＳＰ周波数インデクスｉに応答するビットマスク466は、表ＶＩにしたがって適切な数のビットを入力値から抽出する。抽出されたビットは、ビット制限出力Δωi を提供するように入力値のｎ整数値ビットである。値Δωi は、ＬＳＰ係数を表すチャンネル上を伝送される量子化された非バイアス微分エンコード化ＬＳＰ周波数である。
【０１１６】
値Δωi はまた反転量子化器468 ，加算器470 ，バッファ472 および乗算器474 から構成された予測装置を通してフィードバックされる。反転量子化器468 は、ステップ寸法検索表476 ，最小ダイナミック範囲検索表478 ，乗算器480 および加算器482 から構成されている。
【０１１７】
値Δωi は、検索表476 から選択された値と共に乗算器480 に入力される。検索表476 は、表ＶＩに示された値にしたがって各速度における各ＬＳＰ値に対するステップ寸法に対応した値を含む。検索表476 から出力された値は、速度およびＬＳＰ周波数インデクスｉによって選択される。各速度およびＬＳＰ周波数インデクスｉに対して、検索表460 に蓄積された値は量［ダイナミック範囲／（２n −１）］であり、ここにおいてｎは量子化された値を表すビットの数である。乗算器480 は入力値を乗算し、加算器482 に出力を供給する。
【０１１８】
加算器482 は、検索表478 から別の入力として値を受信する。検索表478 から出力された値は、最小ダイナミック範囲値にしたがって速度およびＬＳＰ周波数インデクスｉによって決定され、表ＶＩに示されたように値の符号を無視する。加算器482 は、検索表478 によって与えられた最小ダイナミック範囲値に乗算器480 から出力された値を加算し、結果な値が加算器470 に出力される。
【０１１９】
加算器470 は、乗算器474 から出力された予測値を別の入力として受信する。これらの値は加算器470 において加算され、10ワード蓄積バッファ472 に蓄積される。現在のフレーム中にバッファ472 から出力された前のフレームの各値は、乗算器474 において定数0.9 により乗算される。乗算器474 から出力されたような予測値は上記のように両加算器452 および470 に供給される。
【０１２０】
現在のフレームにおいて、バッファ472 に蓄積された値は前のフレームの再構成されたＬＰＳ値マイナスバイアス値である。現在のフレームにおいて同様に、加算器470 から出力された値はまたバイアス値のない現在のフレームの再構成されたＬＰＳ値である。現在のフレームにおいて、バッファ472 および加算器470からの出力は、バイアスが値に加算される加算器484 および486 にそれぞれ供給される。加算器484 および486 から出力された値はそれぞれ前のフレームの再構成されたＬＳＰ周波数値および現在のフレームの再構成されたＬＳＰ周波数値である。ＬＳＰ平滑化は式（24）にしたがって低速度で行われる：
平滑化されたＬＳＰ＝ａ（現在のＬＳＰ）＋（１−ａ）（前のＬＳＰ） （24）
ここにおいて、ａ＝全速度に対して０
ａ＝１／２速度に対して0.1
ａ＝１／４速度に対して0.5
ａ＝１／８速度に対して0.85
前のフレーム（ｆ−１）の再構成されたＬＳＰ周波数ω´i,f-1 の値および現在のフレーム（ｆ）の再構成されたＬＳＰ周波数ω´i,f の値は量子化サブシステム210 からピッチサブフレームＬＳＰ補間サブシステム216 およびコードブックサブフレームＬＳＰ補間サブシステム226 に出力される。量子化されたＬＳＰ周波数値Δωi は、伝送のためにＬＳＰ量子化サブシステム210 からデータアセンブラサブシステム236 に出力される。
【０１２１】
以下説明するように加重フィルタおよびフォルマント合成フィルタにおいて使用されたＬＰＣ係数は、エンコードされるピッチサブフレームに適している。ピッチサブフレームに対して、ＬＰＣ係数の補間は各ピッチサブフレームに対して１度実行され、表ＶIIに示されている通りである：
【０１２２】
【表７】
2006221186.tif 000019
ピッチサブフレームカウンタ224 は、ピッチパラメータが計算されるピッチサブフレームの追跡を維持するために使用され、カウンタ出力はピッチサブフレームＬＳＰ補間時に使用するためにピッチサブフレームＬＳＰ補間サブシステム216 に供給される。ピッチサブフレームカウンタ224 はまた選択された速度に対するピッチサブフレームの終了を示す出力をデータパッキングサブシステム236 に供給する。
【０１２３】
図２１は、適切なピッチサブフレームに対してＬＳＰ周波数を補間するピッチサブフレームＬＳＰ補間サブシステム216 の１実施例を示す。図２１において、前および現在のＬＳＰ周波数ω´i,f-1 およびω´i,f は、それぞれＬＳＰ量子化サブシステムから乗算器500 および502 に出力され、乗算器500 および502 においてメモリ504 から与えられた定数によりそれぞれ乗算される。メモリ504 は１組の定数値を蓄積し、以下説明するようにピッチサブフレームカウンタからのピッチサブフレーム数の入力にしたがって、前および現在のフレームＬＳＰ値との乗算のために表ＶIIに示されたように定数の出力を供給する。乗算器500 および502 の出力は、表ＶIIの式にしたがってピッチサブフレームにＬＳＰ周波数値を供給するために加算器506 において加算される。各ピッチサブフレームに対して、ＬＳＰ周波数の補間が行われると、逆ＬＳＰ・ＬＰＣ変換がＡ（ｚ）および知覚加重フィルタの現在の係数を得るために実行される。したがって、補間されたＬＳＰ周波数値は図１４，１５のＬＳＰ・ＬＰＣ変換サブシステム218 に供給される。
【０１２４】
ＬＳＰ・ＬＰＣ変換サブシステム218 は、スピーチを再合成する時に使用するためにＬＰＣ係数に補間されたＬＳＰ周波数を再度変換する。上記の参照文献（ＳoongおよびＪuang氏による“ Line Spectrum Pair （LSP ）and Speech DataCompression ”）において、変換プロセスにおいて本発明中で実行されたアルゴリズムが完全に説明され、また導き出される。計算は、Ｐ（ｚ）およびＱ（ｚ）は式（25）によってＬＳＰ周波数に関して表されることができる：
【０１２５】
【数１１】
2006221186.tif 000020
計算は最初に奇数周波数ｉの全てに対して値２cos （ωi ）を計算することによって実行される。この計算は、ゼロ（０）に関して第５のオーダーの単一正確度のコサインのテイラー級数拡張を使用して行われる。コサイン表における最も近い点に関するテイラー拡張はより正確であることが潜在的に可能であるが、０に関する拡張は十分な正確さを達成し、過剰な量の計算を含まない。
【０１２６】
次に、Ｐの多項式の係数が計算される。多項式の積の係数は、個々の多項式の係数のシーケンスの畳み込みである。その後、上記の式（25）におけるｚの公称的な係数の６つのシーケンス：
［１，-2cos （ω1 ），１］、［１，-2cos （ω3 ），１］、…、［１，-2cos（ω9 ），１］および［１，１］の畳み込みが計算される。
【０１２７】
Ｐの多項式が計算されると、Ｑの多項式に対して同じ過程が反復され、上記の式（26）におけるｚの公称的な係数の６つのシーケンス：
［１，-2cos （ω2 ），１］、［１，-2cos （ω4 ），１］、…、［１，-2cos（ω10），１］および［１，-1］および適切な係数が合計され、２により除算される。すなわちＬＰＣ係数を生成するために１ビットだけシフトされる。
【０１２８】
図２１はさらにＬＳＰ・ＬＰＣ変換サブシステムの一実施例を詳細に示す。回路部分508 は、ωi の入力値から -2cos（ωi ）の値を計算する。回路部分508は、バッファ509 ；加算器510 および515 ；乗算器511 ，512 ，514 ，516 および518 並びにレジスタ513 および516 から構成されている。 -2cos（ωi ）に対して値を計算する時、レジスタ513 および516 はゼロに初期化される。この回路は sin（ωi ）を計算するため、ωi は加算器515 において最初に入力定数値π／２から減算される。この値は乗算器511 で２乗され、その後値（π/2−ωi ）2 ，（π/2−ωi ）4 ，（π/2−ωi ）6 および（π/2−ωi ）8 は、乗算器512 およびレジスタ513 を使用して連続的に計算される。
【０１２９】
テイラー級数拡張係数ｃ［１］乃至ｃ［４］は、乗算器512 から出力された値と共に乗算器514 に連続的に供給される。乗算器514 から出力された値は加算器515 に入力され、その加算器515 において出力：
ｃ[1] （π/2−ωi ）2 ＋ｃ[2] （π/2−ωi ）4＋ｃ[3] （π/2−ωi ）6 ＋ｃ[4] （π/2−ωi ）8
を乗算器517 に供給するように合計される。レジスタ516 から乗算器517 への入力は加算器510 からの出力（π/2−ωi ）と乗算器517 において乗算される。乗算器517 からの出力すなわち値 cos（ωi ）は出力 -2cos（ωi ）を供給するように乗算器518 において定数-2と乗算される。値 -2cos（ωi ）は回路部分520に供給される。
【０１３０】
回路部分520 はｐの多項式の係数の計算に使用される。回路部分520 は、メモリ521 、乗算器522 および加算器523 から構成されている。メモリ位置Ｐ（１）…Ｐ（11）のアレイは１に設定されるＰ（１）を除いて０に初期化される。古いインデクスの -2cos（ωi ）の値は、１≦ｉ≦５，１≦ｊ≦２ｉ＋１，ｊ＜１に対してＰ（ｊ）＝０である［１， -2cos（ωi ），１］の畳み込みを実行するために乗算器524 に供給される。回路部分520 はＱの多項式の係数を計算する時に複製される（示されていない）。結果的なＰ （１）…Ｐ（11）およびＱ（１）…Ｑ（11）の最終の新しい値は回路部分524 に供給される。
【０１３１】
回路部分524 は、ｉ＝1 乃至ｉ＝10に対するピッチサブフレームの10個のＬＰＣ係数αi の計算を完了するために設けられている。回路部分524 は、バッファ525 および526 、加算器528 ，528 および529 、除算器またはビットシフタ530から構成されている。最終のＰ（ｉ）およびＱ（ｉ）値は、バッファ525 および526 に蓄積される。Ｐ（ｉ）およびＰ （ｉ＋１）の値は加算器527 において加算され、一方対応するＱ（ｉ）およびＱ（ｉ＋１）の値は 1≦ｉ≦10に対して加算器528 において減算される。加算器527 および528 の各出力Ｐ（ｚ）およびＱ（ｚ）は加算器529 に入力されてそこで合計される。加算器の出力は１位置だけビットをシフトすることによって２で除算される。値［Ｐ（ｚ）＋Ｑ（ｚ）］/2として出力されるる。値［Ｐ（ｚ）＋Ｑ（ｚ）］／2 の各ビットシフトされた値は出力ＬＰＣ係数αi である。ピッチサブフレームＬＰＣ係数は、図１４，１５のピッチ探索サブシステム220 に供給される。
【０１３２】
ＬＳＰ周波数はまた全速度を除いて選択された速度によって決定されるように各コードブックサブフレームに対して補間される。補間は、ピッチサブフレームＬＳＰ補間と同様に計算される。コードブックサブフレームＬＳＰ補間は、コードブックサブフレームＬＳＰ補間サブシステム226 において計算され、ＬＳＰ・ＬＰＣ変換サブシステム228 に供給され、そこにおける変換はＬＳＰ・ＬＰＣ変換サブシステム218 の場合と同様に行われる。
【０１３３】
図１０を参照して示されているように、ピッチ探索はパラメータを使用して入力スピーチと合成スピーチとの間のエラーを最小にするこれらのパラメータを選択することによってエンコード処理が行われる合成技術による解析である。ピッチ探索において、スピーチは、応答が式（２）で表されるピッチ合成フィルタを使用して合成される。各20ｍ秒のスピーチフレームは、上記に示されたようにフレームに対して選択されたデータ速度に依存する多数のピッチサブフレームにさらに分割される。１ピッチサブフレーム当り一度ピッチパラメータｂとＧ、すなわちピッチ利得および遅延がそれぞれ計算される。実施例において、ピッチ遅延Ｌは伝送のために17乃至143 を範囲とし、Ｌ16はｂ＝０の場合に反転される。
【０１３４】
スピーチコーダは、式（１）で示された形態の知覚雑音加重フィルタを使用する。上記のように、知覚加重フィルタの目的はエラー関連雑音の影響を減少するように小さいパワーの周波数のエラーを加重することである。知覚加重フィルタは、前に見出だされた短期間予測フィルタから得られる。加重フィルタおよび以下説明されるフォルマント合成フィルタにおいて使用されるＬＰＣ係数は、エンコード処理されているサブフレームに適した補間値である。
【０１３５】
解析合成動作の実行時、スピーチデコーダ／シンセサイザの複写がエンコーダにおいて使用される。スピーチエンコーダにおいて使用される合成フィルタの形態は式（３）および（４）によって与えられる。式（３）および（４）は、知覚加重フィルタによって後続されるデコーダスピーチ合成フィルタに対応し、したがって加重された合成フィルタと呼ぶ。
【０１３６】
ピッチ探索は、現在のフレームにおけるコードブックからのゼロ供給すなわちＧ＝０を仮定して実行される。各可能なピッチ遅延Ｌに対して、スピーチは合成され、元のスピーチと比較される。入力スピーチと合成されたスピーチとの間のエラーは、その２乗平均エラー（ＭＳＥ）が計算される前に知覚加重フィルタによって加重される。その目的は知覚加重スピーチと知覚加重合成スピーチとの間のエラーを最小にする、Ｌおよびｂの全ての可能な値からＬおよびｂの値を得ることである。エラーの最小化は次の式によって表される：
【０１３７】
【数１２】
2006221186.tif 000021
ここにおいてＬp は、実施例では全速度ピッチサブフレームに対して40であるピッチサブフレーム中のサンプルの数である。ＭＳＥを最小にするピッチ利得ｂが計算される。これらの計算はＬの全ての許容値に対して繰返され、最小ＭＳＥを生成するＬおよびｂはピッチフィルタに対して選択される。
【０１３８】
最適ピッチ遅延の計算は、ｎ＝−Ｌmax 乃至ｎ＝（Ｌp −Ｌmin ）−１の間の全ての時間中フォルマント残留サンプル［図１０中のｐ（ｎ）］を含み、ここにおいてＬmax は最大ピッチ遅延値であり、Ｌmin は最小ピッチ遅延値であり、Ｌp は選択された速度に対するピッチサブフレーム長であり、ここでｎ＝０がピッチサブフレームのスタートである。実施例において、Ｌmax ＝143 およびＬmin＝17である。図２２に示された符号付け方式を使用すると、速度１／４に対してｎ＝-143乃至ｎ＝142 であり、速度１／２に対してｎ＝-143乃至ｎ＝62であり、速度１に対してｎ＝-143乃至ｎ＝22である。ｎ＜０に対して、フォルマント残留サンプルはピッチフィルタメモリに保持された前のピッチサブフレームからのピッチフィルタの出力だけであり、閉ループフォルマント残留サンプルと呼ばれる。ｎ≧０に対して、フォルマント残留サンプルは入力が現在の解析フレームスピーチサンプルであるＡ（ｚ）のフィルタ特性を有するフォルマント解析フィルタの出力である。ｎ≧０に対して、フォルマント残留サンプルは開ループフォルマント残留サンプルと呼ばれ、ピッチフィルタおよびコードブックがこのサブフレームで完全な予測を行った場合、正確にｐ（ｎ）である。関連したフォルマント残留サンプル値からの最適ピッチ遅延の計算の説明は、さらに図２２乃至図２５を参照して行われる。
【０１３９】
ピッチ探索は143 個の再構成された閉ループフォルマント残留サンプルに対して行われ、すなわちｎ＜０に対しｐ（ｎ）およびｎ≧０に対してｐo （ｎ）であるＬp −Ｌmin 非量子化開ループフォルマント残留サンプルに対してピッチ探索が実行される。探索はＬが小さく、したがって使用される残留サンプルの大部分がｎ＞０であるほぼ開ループ探索から、Ｌが大きく、したがって使用される全ての残留サンプルがｎ＜０であるほぼ閉ループ探索に漸次的に実効的に変化する。例えば、全速度で図２２に与えられた符号付け方式を使用すると、ピッチサブフレームは40個のスピーチサンプルから構成され、ピッチ探索はｎ＝-17 乃至ｎ＝22と番号付けされたフォルマント残留サンプルの組を使用して始まる。ｎ-17 乃至ｎ＝-1のこの方式において、サンプルは閉ループフォルマント残留サンプルであり、一方ｎ＝０乃至ｎ＝22においてサンプルは開ループフォルマント残留サンプルである。最適ピッチ遅延を決定する時に使用される次の組のフォルマント残留サンプルは、ｎ＝-18 乃至ｎ＝21と番号付けされたサンプルである。ｎ＝-18乃至ｎ＝-1において、サンプルは閉ループフォルマント残留サンプルであり、一方ｎ＝０乃至ｎ＝21においてサンプルは開ループフォルマント残留サンプルである。このプロセスは、ピッチ遅延がフォルマント残留サンプルの最後の組ｎ＝-143乃至ｎ＝-104に対して計算されるまでサンプル組を通して連続される。
【０１４０】
式（28）に関して上記に示されたように、その目的は、知覚加重スピーチマイナス加重フォルマントフィルタのゼロ入力応答（ＺＩＰ）であるｘ（ｎ）と、Ｌおよびｂの全ての可能な値に対するフィルタ中のメモリを与えられない、コードブックからのゼロ供給（Ｇ＝０）を行われた知覚加重合成スピーチであるｘ´（ｎ）との間のエラーを最小にすることである。式（28）はｂに関して次のように書き直すことができる：
【０１４１】
【数１３】
2006221186.tif 000022
ここにおいて、０≦ｎ≦Ｌp −１に対して、ｙ(n)=h(n)＊p(n-L)       (30)
ここでｙ（ｎ）はｂ＝１のときピッチ遅延Ｌを持つ加重合成スピーチであり、およびｈ（ｎ）は式（３）によるフィルタ特性を有する加重フォルマント合成フィルタのインパルス応答である。
【０１４２】
この最小化プロセスは、値ＥL を最大化することに等しく、ここにおいて：
【０１４３】
【数１４】
2006221186.tif 000023
であることが認められる。
この探索は、Ｌの全ての許容可能な値に対して繰返される。最適ｂは正に限定され、したがって結果的に任意の負であるＥxyにより生じるＬは探索において無視される。最後に、ＥL を最大化する遅延Ｌおよびピッチ遅延ｂが伝送のために選択される。
【０１４４】
上記のように、以下の式（35）乃至（38）において示された循環的な畳み込みに対して、フィルタＡ（ｚ）がフィルタメモリにおいて常に０でスタートすると仮定するため、ｘ（ｎ）は実際に入力スピーチと加重フォルマントフィルタのＺＩＲとの間の知覚加重された差である。しかしながら、フィルタメモリにおいて０でスタートするフィルタは実際にはない。合成において、フィルタは前のサブフレームから残っている状態を有する。実行時に、最初の状態の効果はスタート時に知覚加重スピーチから減算される。このようにして、ｐ（ｎ）に対して最初に全てのメモリ＝０の定常状態のフィルタＡ（ｚ）の応答だけが各Ｌに対して計算される必要があり、循環的な畳み込みが使用されることができる。ｘ（ｎ）のこの値はｙ（ｎ）以外一度だけ計算される必要があり、ピッチフィルタの出力に対するフォルマントフィルタのゼロ状態応答は、各遅延Ｌに対して計算される必要がある。各ｙ（ｎ）の計算は、各遅延を計算される必要がない多数の冗長な乗算を含む。以下説明する循環的な畳み込みの方法は、要求される計算を最小にするために使用される。
【０１４５】
循環的な畳み込みに関して値ｙL （ｎ）は値ｙ（ｎ）によって定められる：
【０１４６】
【数１５】
2006221186.tif 000024
が認められることができる。
このようにして、ｙ17（ｎ）に対する最初の循環的な畳み込みが実行されると、要求される計算数が大幅に減少される。上記の速度１に対して与えられた例に対して、値ｙ17（ｎ）は番号付けされたフォルマント残留サンプルの組ｎ＝-17乃至ｎ＝22を使用して式（36）によって計算される。
【０１４７】
図２３を参照すると、エンコーダは図１２のデコーダの複製である図１４，１５のデコーダサブシステム235 を含み、適応ポストフィルタは存在しない。図２３において、ピッチ合成フィルタ550 への入力はコードブック値ｃI （ｎ）とコードブック利得Ｇの積である。出力フォルマント残留サンプルｐ（ｎ）は、再構成されたスピーチサンプルｓ´（ｎ）としてフィルタ処理され、出力されるフォルマント合成フィルタ552 に入力される。再構成されたスピーチサンプルｓ´（ｎ）は、加算器554 において対応した入力スピーチサンプルｓ（ｎ）から減算される。サンプルｓ´（ｎ）とｓ（ｎ）との間の差は、知覚加重フィルタ556 に入力される。ピッチ合成フィルタ550 に関して、フォルマント合成フィルタ552 および知覚加重フィルタ556 の各フィルタは、Ｍp がピッチ合成フィルタ550 中のメモリであり、Ｍa がフォルマント合成フィルタ552 中のメモリであり、Ｍw が知覚加重フィルタ556 中のメモリであるフィルタ状態のメモリを含む。
【０１４８】
デコーダサブシステムのフォルマント合成フィルタ552 からのフィルタ状態Ｍa は、図１４，１５のピッチ探索サブシステム220 に供給される。図２４において、フィルタ状態Ｍa は、フォルマント合成フィルタ552 のＺＩＲを計算するフィルタ560 のゼロ入力応答（ＺＩＲ）を計算するために設けられる。計算されたＺＩＲ値は、加算器562 において入力スピーチサンプルｓ（ｎ）から減算され、結果が知覚加重フィルタ564 によって加重される。知覚加重フィルタ564 からの出力ｘp （ｎ）は式（28）乃至（34）において加重された入力スピーチとして使用され、ここでｘ（ｎ）＝ｘp （ｎ）である。
【０１４９】
図２２および図２３を参照すると、図２２に示されているようなピッチ合成フィルタ550 は、本質的に上記のように計算された開および閉ループフォルマント残留サンプルを蓄積するメモリである適応コードブック568 に供給する。閉ループフォルマント残留サンプルはメモリ部分570 に蓄積され、一方開ループフォルマント残留サンプルはメモリ部分572 に蓄積される。サンプルは、上記の例示的な番号付け方式にしたがって蓄積される。閉ループフォルマント残留サンプルは各ピッチ遅延Ｌ探索に対する使用に関して上記のように構成される。開ループフォルマント残留サンプルは、ｐo （ｎ）値の計算時にデコーダサブシステムフォルマント合成フィルタ552 のメモリＭa を使用するフォルマント解析フィルタ574 を使用して各ピッチサブフレームに対して入力スピーチサンプルｓ（ｎ）から計算される。現在のピッチサブフレームに対するｐo （ｎ）の値は、適応コードブック568 のメモリ部分572 を提供するために一連の遅延素子576 を通してシフトされる。開ループフォルマント残留サンプルは、生成されて０として番号付けされ、最後の符号が142 である第１の残留サンプルと共に蓄積される。
【０１５０】
図２４を参照すると、フォルマントフィルタのインパルス応答ｈ（ｎ）はフィルタ566 において計算され、シフトレジスタ580 に出力される。フォルマントフィルタのインパルス応答ｈ（ｎ）に関して式（29）および（30）並びに（35）乃至（38）で上記に示されたように、これらの値はフィルタにおいて各ピッチサブフレームに対して計算される。ピッチフィルタサブシステムの計算要求をさらに減少するために、フォルマントフィルタのインパルス応答ｈ（ｎ）は頭部を切られて20個のサンプルにされる。
【０１５１】
乗算器582 、加算器584 およびシフトレジスタ586 と共にシフトレジスタ580は、上記のようにシウトレジスタ580 からの値ｈ（ｎ）と適応コードブック568からの値ｃ（ｍ）との間において循環的な畳み込みを行なうように構成されている。畳み込み動作は、ピッチ利得が１に設定されると仮定して、ピッチフィルタメモリからの入力に対するフォルマントフィルタのゼロ状態応答（ＺＳＲ）を見出すために実行される。畳み込み回路の動作において、各ｍに対してｎ個のサイクルはＬp から１までであり、一方ｍ個のサイクルは（Ｌp −17）−１から−143 までである。レジスタ586 において、データはｎ＝１のとき進められず、ｎ＝Ｌp のときにはデータはラッチされない。テータは、ｍ≦−17のときに畳み込み回路から出力として供給される。
【０１５２】
畳み込み回路に続いて、相関および比較回路が最適ピッチ遅延Ｌおよびピッチ利得ｂを見出すために探索を行う。２乗平均エラー（ＭＳＥ）回路とも呼ばれる相関回路は、フォルマントフィルタのＺＩＲと入力スピーチとの間の知覚加重差すなわちｘ（ｎ）によりＺＳＲの自己および交差相関を計算する。これらの値を使用して、相関回路はピッチ遅延の各値に対して最適ピッチ利得ｂの値を計算する。相関回路はシフトレジスタ588 、乗算器590 および592 、加算器594 および596 、レジスタ598 および600 並びに除算器602 から構成されている。相関回路において、計算はｎ個のサイクルがＬp から１までであり、一方ｍ個のサイクルは（Ｌp −17）−１から−143 までであるように行われる。
【０１５３】
相関回路は、比較を実行し、ピッチ遅延Ｌおよびピッチ利得ｂの最適値を決定するためにデータを蓄積する比較回路によって後続される。比較回路は乗算器604 、比較器606 、レジスタ608 ，610 および612 並びに量子化器614 から構成されている。比較回路は、合成スピーチと入力スピーチとの間のエラーを最小にするＬおよびｂに対する値を各ピッチサブフレームに対して出力する。ｂの値は、量子化器614 によって８レベルに量子化され、３ビット値によって表され、付加的なレベルであるｂ＝０レベルはＬ＝16のときに示される。Ｌおよびｂのこれらの値は、コードブック探索サブシステム230 およびデータバッファ222 に供給される。これらの値は、ピッチ探索に使用するためにデータパッキングサブシステム238 またはデータバッファ222 を介してデコーダ234 に供給される。
【０１５４】
ピッチ探索と同様に、コードブック探索は、パラメータを使用して入力スピーチと合成されたスピーチとの間のエラーを最小にするパラメータを選択することによってエンコード処理が実行される合成コード処理システムによる解析である。速度１／８に対して、ピッチ利得はゼロに設定される。
【０１５５】
上記のように、各20ｍ秒は上述べられたようにフレームに対して選択されたデータ速度に依存する多数のコードブックサブフレームにサブ分割される。パラメータＧおよびＩ、コードブック利得およびインデクスは１コードブックサブフレーム当り１度それぞれ計算される。これらのパラメータの計算時、ＬＳＰ周波数はピッチサブフレームＬＳＰ補間サブシステム216 を参照して示されたものと同様にしてコードブックサブフレームＬＳＰ補間サブシステム226 において全速度を除いてサブフレームに対して補間される。コードブックサブフレームの補間されたＬＳＰ周波数はまた各コードブックサブフレームに対してＬＳＰ・ＬＰＣ変換サブシステム228 によってＬＰＣ係数に変換される。コードブックサブフレームカウンタは232 は、コードブックパラメータが計算されるコードブックサブフレームの追跡を維持するために使用され、カウンタの出力はコードブックサブフレームＬＳＰ補間において使用するためにコードブックサブフレームＬＳＰ補間サブシステム226 に供給される。コードブックサブフレームカウンタは232 はまた選択された速度に対するコードブックサブフレームの終了を表す出力をピッチサブフレームカウンタ224 に供給する。
【０１５６】
励起コードブックは、変数でないホワイトガウスランダムシーケンスから構成された２M のコードベクトルから成る。これらは、Ｍ＝７に対してコードブック中の128 個のエントリィがある。コードブックは、各コードベクトルが１サンプルだけ隣接したコードベクトルと異なるように循環的に構成される。すなわちコードベクトル中のサンプルは、新しいサンプルが一方の端部でシフトされ、他方の端部においてサンプルが落とされるように１位置だけシフトされる。したがって、循環的なコードブックは、２M ＋（ＬC −１）長である直線アレイとして蓄積されることが可能であり、ここでＬC はコードブックサブフレーム長である。しかしながら、構成を簡単にし、メモリ間隔を保存するために、循環的なコードブックの２M サンプル長（128 個のサンプル）が使用される。
【０１５７】
計算を減少するために、コードブック中のガウス値は中心クリップされる。値は始めに変数１のホワイトガウスプロセスから選択される。その後、大きさが1.2 より小さい任意の値がゼロに設定される。これは効果的に約75％の値をゼロに設定し、インパルスのコードブックを生成する。このコードブックの中心クリップは、ゼロによる乗算が不要であるため４の係数だけコードブック探索における循環的な畳み込みを実行するために必要される乗算数を減少する。以下、現在の動作において使用されるコードブックを表ＶIII に示す。
【０１５８】
【表８】
2006221186.tif 000025
スピーチコーダは、式（３）で示された形態の加重合成フィルタを含む式（１）で示された形態の知覚雑音加重フィルタを使用する。各コードブックインデクスＩに対して、スピーチは合成され、元のスピーチと比較される。エラーは、そのＭＳＥが計算される前に知覚加重フィルタによって加重される。
【０１５９】
上記のように、目的はＩおよびＧの全ての可能な値に対するｘ（ｎ）とｘ´（ｎ）との間のエラーを最小にすることである。エラーの最小化は以下の式によって表されてもよい：
【０１６０】
【数１６】
2006221186.tif 000026
ここにおいてＬC はコードブックサブフレーム中のサンプルの数である。式（38）はＧに関して書き直される：
【０１６１】
【数１７】
2006221186.tif 000027
ここにおいてｙは、Ｇ＝１と仮定してＩ番目のコードベクトルを持つフォルマる。したがって、ＭＳＥの最小化は：
【０１６２】
【数１８】
2006221186.tif 000028
この探索はＩの全ての許容可能な値に対して繰返される。ピッチ探索と対照的に、最適利得Ｇは正または負のいずれであることも可能である。最後に、ＥI を最大化するインデクスＩおよびコードブック利得Ｇが伝送のために選択される。
【０１６３】
入力スピーチと加重ピッチおよびフォルマントフィルタのＺＩＲとの間の知覚的に加重された差であるｘ（ｎ）は、一度だけ計算される必要があることに留意しなければならない。しかしながら、各コードベクトルに対するピッチおよびフォルマントフィルタのゼロ状態応答であるｙ（ｎ）は各インデクスＩに対して計算される必要がある。循環的なコードブックが使用されるため、ピッチ探索に対して説明された循環的な回旋が要求される計算を最小にするために使用されることができる。
【０１６４】
再び図２３を参照すると、エンコーダは、フィルタ状態が計算される図１２のデコーダの複製の図１４，１５のデコーダサブシステム235 を含み、ここにおいてＭp はピッチ合成フィルタ550 中のメモリであり、Ｍa はフォルマント合成フィルタ552 中のメモリであり、Ｍw は知覚加重フィルタ556 中のメモリであるデコーダサブシステムのピッチおよびフォルマント合成フィルタ550 および552 （図２３）からの各フィルタ状態Ｍp およびＭa は、図１４，１５のコードブック探索サブシステム230 に供給される。図２５において、フィルタ状態Ｍp およびＭa は、ピッチおよびフォルマント合成フィルタ550 および552 のＺＩＲを計算するゼロインパルス応答（ＺＩＲ）フィルタ620 に供給される。ピッチおよびフォルマント合成フィルタの計算されたＺＩＲは加算器622 において入力スピーチサンプルｓ（ｎ）から減算され、結果が知覚加重フィルタ624 によって加重される。知覚加重フィルタ564 からの出力ｘc （ｎ）は上記のＭＳＥ式（39）乃至（44）において加重入力スピーチとして使用され、ここでｘ（ｎ）＝ｘc （ｎ）である。
【０１６５】
図２５において、フォルマントフィルタのインパルス応答ｈ（ｎ）はフィルタ626 において計算され、シフトレジスタ628 に出力される。フォルマントフィルタ応答のインパルス応答ｈ（ｎ）は、各コードブックサブフレームに対して計算される。計算要求をさらに減少するために、フォルマントフィルタのインパルス応答ｈ（ｎ）は頭部を切られて20個のサンプルにされる。
【０１６６】
乗算器630 、加算器632 およびシフトレジスタ634 と共にシフトレジスタ628は、シフトレジスタ628 からの値ｈ（ｎ）と上記のようにコードブックベクトルを含むコードブック636 からの値ｃ（ｍ）との間において循環的な回旋を実行するように構成されている。この回旋動作は、コードブック利得が１に設定されると仮定して、各コードベクトルのフォルマントフィルタのゼロ状態応答（ＺＳＲ）を見出すために実行される。回旋回路の動作において、各ｍに対してｎ個のサイクルはＬC から１までであり、一方ｍ個のサイクルは 1から256 までである。レジスタ586 において、データはｎ＝１のとき進められず、ｎ＝ＬC のときデータはラッチされない。テータは、ｍ≦１のときに回旋回路から出力として供給される。したがって、回旋回路に後続する相関および比較回路をスタートする前に、回旋回路はｍ個のサブフレーム寸法時間を循環することによって循環的な回旋動作を導くために初期化されなければならないことに留意すべきである。
【０１６７】
相関および比較回路は、コードブックインデクスＩおよびコードブック利得Ｇの値を生成するように実際のコードブック探索を導く。２乗平均エラー（ＭＳＥ）回路とも呼ばれる相関回路は、ピッチおよびフォルマントフィルタのＺＩＲと入力スピーチｘ´（ｎ）との間の知覚加重された差によりＺＳＲの自己および交差相関を計算する。換言すると、相関回路はコードブックインデクスＩの各値に対してコードブック利得Ｇの値を計算する。相関回路はシフトレジスタ638 、乗算回路640 および642 、加算器644 および646 、レジスタ648 および650 並びに除算器652 から構成されている。相関回路において、計算はｎ個のサイクルはＬC から１までであり、一方ｍ個のサイクルは１乃至256 までであるように行われる。
【０１６８】
相関回路は、コードブックインデクスＩおよび利得Ｇの最適値を決定するために比較およびデータの蓄積を実行する比較回路によって後続される。比較回路は、乗算器654 、比較器656 、レジスタ658 ，660 および662 並びに量子化器664から構成されている。比較回路は、合成スピーチと入力スピーチとの間のエラーを最小にするＩおよびＧに対する値を各コードブックサブフレームに供給する。コードブック利得Ｇは、図２０を参照して示されたようにバイアスの除去されたＬＳＰ周波数量子化およびコード処理と同様にしてＤＰＣＭが量子化中に値をコード化する量子化器614 において量子化される。その後、ＩおよびＧに対するこれらの値はデータバッファ222 に供給される。
【０１６９】
コードブック利得Ｇの量子化およびＤＰＣＭエンコード処理は、以下の式にしたがって計算される：
【０１７０】
【数１９】
2006221186.tif 000029
ここにおいて、20ｌｏｇＧi-1 および20ｌｏｇＧi-2 は直前のフレーム（ｉ−１）および直前のフレームに先行するフレーム（ｉ−２）に対して計算された各値である。
速度と共にＬＳＰ、Ｉ、Ｇ、Ｌおよびｂの値は、データが伝送のために配列されるデータパッキングサブシステム236 に供給される。１つの構成において、速度と共にＬＳＰ、Ｉ、Ｇ、Ｌおよびｂの値は、データパッキングサブシステム236 を介してデコーダ234 に供給される。別の構成において、これらの値はピッチ探索において使用するためにデータバッファ222 を介してデコーダ234 に供給される。しかしながら、好ましい実施例において、コードブック符号ビットの保護はコードブックインデクスに影響を与えるデータパッキングサブシステム236 内において使用される。したがって、この保護は、ＩおよびＧデータがデータバッファ222 から直接供給された場合を考慮しなければならない。
【０１７１】
データパッキングサブシステム236 において、データは伝送のために種々のフォルマントにしたがってパックされる。図２６は、データパッキングサブシステム236 の機能素子の一実施例を示す。データパッキングサブシステム236 は、疑似ランダム発生器（ＰＮ）670 、サイクル冗長検査（ＣＲＣ）計算素子672 、データ保護論理回路674 およびデータ結合器676 から構成されている。ＰＮ発生器670 は速度情報を受信し、１／８速度に対してデータ結合器676 に供給される４ビットランダム数を発生する。ＣＲＣ素子672 は、速度と共にコードブック利得およびＬＳＰ値を受信し、全速度に対してデータ結合器676 に供給される11ビットの内部ＣＲＣコードを発生する。
【０１７２】
データ結合器676 は速度と共にランダム数、ＣＲＣコードを受信し、データバッファ222 からのＬＳＰ，Ｉ，Ｇ，Ｌおよびｂの値（図１５）は伝送チャンネルデータプロセッササブシステム234 に出力を供給する。データが最小でデータバッファ222 からデコーダ234 に直接供給される構造において、ＰＮ発生器の４ビット数はＰＮ発生器670 からデータ結合器676 を介してデコーダ234 に供給される。全速度において、ＣＲＣビットはデータ結合器674 からの出力としてフレームデータと共に含まれ、一方１／８速度においてコードブックインデクスの値は落とされ、ランダム４ビット数によって置換される。
【０１７３】
実施例において、コードブック利得符号ビットに対して保護が与えられることが好ましい。このビットの保護は、このビット中の単一のビットエラーに対するベクトルデコーダの感度を低くすることである。符号ビットが検出されないエラーのために変化された場合、コードブックインデクスは最適に関連していないベクトルを示す。保護なしのエラー状況において、最適ベクトルの負のものが選択され、このベクトルは本質的に使用される最悪の可能なベクトルである。ここにおいて使用される保護方式は、利得符号ビット中の単一のビットエラーが最適ベクトルの負のものをエラー状況において選択させないことを保証する。データ保護論理回路674 はコードブックインデクスおよび利得を受信し、利得値の符号ビットを試験する。利得値符号ビットが負であると決定された場合、値89は関連したコードブックインデクスにモード128 で加算される。修正された、または修正されないコードブックインデクスは、データ保護論理回路674 からデータ結合器676 に出力される。
【０１７４】
実施例において、全速度で圧縮された音声パケットデータの最も知覚的に感度の高いビットは、内部ＣＲＣ（サイクル冗長検査）等によって保護されることが好ましい。11個の余分なビットは、保護されたブロック中の任意の単一のエラーを補正することができるこのエラー検出および補正機能を実行するために使用される。保護されたブロックは、10個のＬＳＰ周波数の最大桁ビットおよび８個のコードブック利得値の最大桁ビットから構成されている。補正不可能なエラーがこのブロックにおいて発生した場合、パケットは廃棄され、以下説明されるような削除が通知される。そうでなければ、ピッチ利得はゼロに設定されるが、しかし残りのパラメータは受信されたときに使用される。実施例において、サイクルコードは（31，21）サイクルコードを生じる発生器多項式を有するように選択される：
【０１７５】
【数２０】
2006221186.tif 000030
しかしながら、別の発生器多項式が使用されてもよいことを理解しなければならない。全体的なパリティビットは、それを（32，21）コードにするように添付される。18情報ビットだけが存在しているため、コードワード中の最初の３デジットはゼロに設定され、伝送されない。この技術は、シンドロームがこれらの位置においてエラーを示した場合、それが補正不可能なエラーがあることを意味するように付加的な保護を提供する。システム形態のサイクルコードのエンコード処理は、×10ｕ（ｘ）モジュロｇ（ｘ）としてパリティビットの計算を含み、ここでｕ（ｘ）はメッセージ多項式である。
【０１７６】
デコード処理終了時に、シンドロームは受信されたベクトルのｇ（ｘ）による除算から余りとして計算される。シンドロームがエラーを示さない場合、パケットは全体的なパリティビットの状態にかかわらず受容される。シンドロームが単一のエラーを示した場合、エラーは全体的なパリティビットの状態が検査しない場合に補正される。シンドロームが１以上のエラーを示した場合、パケットは廃棄される。このようなエラー保護方式に関する詳細は、シンドローム計算の詳細に対するＬinおよびＣostello 氏による文献（“Error Con-trol coding:Fundamentals and Applications ”）において認められることができる。
【０１７７】
ＣＤＭＡセル電話機システムにおいて、データは20ｍ秒のデータ伝送フレームでの伝送用のデータパッキングのためにデータ結合器674 から伝送チャンネルデータプロセッササブシステム238 に供給される。ボコーダが全速度に対して設定される伝送フレームにおいて、192 ビットは 9.6ｋｂｐｓの実効ビット速度に対して伝送される。この場合の伝送フレームは、混合フレームタイプ（０＝音声のみ，１＝音声およびデータ／信号送信）を示すために使用される１つの混合モードビット、11内部ＣＲＣビットと共に160 のボコーダデータビット、12外部またはフレームＣＲＣビットおよび８テールまたはフラッシュビットから構成されている。１／２速度において、80のボコーダデータビットは、 4.8ｋｂｐｓの実効ビット速度に対して８フレームＣＲＣビットおよび８テールビットと共に伝送される。１／４速度において、40のボコーダデータビットは、 2.4ｋｂｐｓの実効ビット速度に対して８テールビットと共に伝送される。最後に、１／８速度に対して16のボコーダデータビットは、 1.2ｋｂｐｓの実効ビット速度に対して８テールビットと共に伝送される。
【０１７８】
本発明のボコーダが使用されるＣＤＭＡシステムにおいて使用された変調に関する詳細は、本出願人の別出願の米国特許出願07/543,496号明細書（1990年 6月25日出願，“SYSTEM AND METHOD FOR GENERATING SIGNAL WAVEFORMS IN A CDMACELLULAR TELEPHONE SYSTEM ”）に記載されている。このシステムにおいて、全速度以外の速度でデータビットが20ｍ秒のデータ伝送フレーム内に疑似ランダム的に位置されたビットグループを持つグループに組織化される方式が使用される。別のフレーム速度およびビット表記は、ここにおいて説明のためにボコーダおよびＣＤＭＡシステム構造に関して示されたもの以外に容易に使用されてもよいため、別の構造がボコーダおよびその他のシステム適用に利用できることが理解されるべきである。
【０１７９】
ＣＤＭＡシステムおよび別のシステムにも適用可能なフレーム単位ベースのプロセッササブシステム238 は、信号送信データまたはその他の非スピーチ情報データ等の別のデータを伝送するためにボコーダデータの伝送を中断する可能性がある。この特定のタイプの伝送状況は“ブランクおよびバースト”と呼ばれる。プロセッササブシステム238 は、本質的にフレームに対して所望の伝送データとボコーダデータを置換する。
【０１８０】
同じデータ伝送フレーム中にボコーダデータおよび別の伝送データの両方を伝送することが所望される別の状況が生じる。この特定のタイプの伝送状況は、“ディムおよびバースト”と呼ばれる。“ディムおよびバースト”伝送において、ボコーダは１／２速度のような所望の速度でボコーダ最終速度を設定する速度制限命令を与えられる。１／２速度のエンコーダボコーダデータは、データ伝送フレーム用のボコーダデータと共に付加的なデータを挿入するプロセッササブシステム238 に供給される。
【０１８１】
全二重電話機リンクに与えられる付加的な機能は速度インターロックである。１つの方向のリンクが最高伝送速度で伝送している場合、別の方向のリンクは強制的に最低速度で伝送させられる。最低速度でも、話し手が中断されていると実感して話しを止めるのに十分な理解度が活動的な話し手に対して有効であり、それによって別の方向のリンクに活動的な話し手の役割を行なわせる。さらに、活動的な話し手が試みられた中断にかかわらず話を続ける場合、話し手自身のスピーチが品質を知覚する能力を“妨害する”ため、彼は恐らく品質の劣化を知覚しない。速度制限命令を使用することによって、ボコーダは通常の速度より低い速度でスピーチをボコード処理するように設定されることができる。
【０１８２】
速度制限命令は、ＣＤＭＡシステム中の付加的な容量が必要とされたとき、全速度より低いボコーダ最大速度を設定するために使用されることができることを理解すべきである。共通の周波数スペクトルが伝送に使用されるＣＤＭＡシステムにおいて、１つの利用者信号はシステム中に別の利用者信号に対する干渉として現れる。したがって、システム利用者容量はシステム利用者によって生じた全体的な干渉によって制限される。通常システム内における利用者の増加のために干渉のレベルが増加すると、品質の劣化は干渉の増加のために利用者によって経験される。
【０１８３】
各利用者のＣＤＭＡシステム中の干渉に対する影響は、利用者伝送データ速度の関数である。通常の速度より低い速度でスピーチをエンコード処理するようにボコーダを設定することによって、エンコード処理されたデータは対応した減少した伝送データ速度で伝送され、その利用者によって発生させられた干渉のレベルを低下させる。したがって、システム容量は低速度でスピーチをボコード処理することによって実質的に増加される。システム要求が増加すると、利用者ボコーダはシステム制御装置またはセルベースステーションによってエンコード処理速度を低下するように命令される。本発明のボコーダは、全速度および１／２速度でエンコード処理されたスピーチ間の知覚可能な差があっても、非常に小さい品質のものである。したがって、スピーチが１／２速度のような低速度でボコード処理されるシステム利用者間の通信の品質における影響は、システムにおける利用者数の増加により生じた干渉のレベルの増加によって生じたものより重要ではない。
【０１８４】
したがって、通常のボコード処理速度より低い速度に対して個々のボコーダ速度制限を設定する種々の方式が使用されてもよい。例えば、セル中の全ての利用者は１／２速度でスピーチをエンコード処理するように命令されてもよい。このような動作は利用者間の通信の品質に対してほとんど影響を与えずに実質的にシステム干渉を減少し、一方付加的な利用者に対して容量を実質的に増加する。システムにおける全体的な干渉は付加的な利用者によって劣化のレベルに増加されるまで、利用者間の通信の品質における影響はない。
する時に解析・合成技術を行なうためにデコーダの複製を含む。図１４，１５に示されているように、デコーダ234 はいるスピーチとの比較のために合成されたスピーチを再構成するためにデータパッキングサブシステム238 またはデータバッファ222 のいずれを介して値Ｌ，ｂ，ｌおよびＩを受信する。デコーダからの出力は上記のように値Ｍp ，Ｍa およびＭw である。エンコーダにおいて、および伝送チャンネルの別の端部で合成されたスピーチを再構成する時に使用されるようなデコーダ234 に関する詳細は、図２７乃至図３７を参照して説明される。
【０１８５】
図２７は、本発明のデコーダの一実施例のフロー図である。エンコーダ内および受信機において構成されているようなデコーダの共通の構造のために、これらの構造は一緒に説明する。図２７に関する説明は、そこで受信されたデータがデコーダにおいて予め処理されなければならず、またエンコーダのデコーダにおいて適切なデータ（速度，Ｉ，Ｇ，Ｌおよびｂ）がデータパッキングサブシステム238 またはデータバッファ222 から直接受信されるため、主に伝送チャンネルの端部におけるデコーダに関連している。しかしながら、デコーダの基本的な機能はエンコーダおよびデコーダ動作に対して同じである。
【０１８６】
図１２を参照して説明されたように、各コードブックサブフレームに対してコードブックインデクスＩによって定められたコードブックベクトルは、蓄積されたコードブックから検索される。ベクトルはコードブック利得Ｇによって乗算され、その後フォルマント残留を生成するように各ピッチサブフレーム用のピッチフィルタによってフィルタ処理される。このフォルマント残留はフォルマントフィルタによってフィルタ処理され、その後出力スピーチ信号を生成するために自動利得制御装置（ＡＧＣ）と共に適用フォルマントポストフィルタおよび輝度ポストフィルタを通過させられる。
【０１８７】
コードブックおよびピッチサブフレームの長さは変化するが、デコード処理は実行を容易にするためにの40個のサンプルブロックで実行される。受信された圧縮データは、最初にコードブック利得、コードブックインデクス、ピッチ利得、ピッチ遅延およびＬＳＰ周波数にパック解除される。ＬＳＰ周波数は、図３５を参照して説明されるようにそれらの各反転量子化器およびＤＰＣＭデコーダを通して処理されなければならない。同様に、コードブック利得値はバイアスアスペクトがないことを除いてＬＳＰ周波数と同じ方法で処理されなければならない。また、ピッチ利得値は反転量子化される。その後、これらのパラメータは各デコード処理サブフレームに与えられる。各デコード処理サブフレームにおいて、２組のコードブックパラメータ（Ｇ＆Ｉ）、１組のピッチパラメータ（ｂ＆Ｌ）および１組のＬＰＣ係数が40個の出力サンプルを生成するために必要とされる。図２８，２９，３０，３１および３２，３３，３４は種々の速度および別のフレーム条件に対する例示的なサブフレームデコード処理パラメータを示す。
【０１８８】
全速度フレームに対して、８組の受信されたコードブックパラメータおよび４組の受信されたピッチパラメータが存在する。ＬＳＰ周波数は、４組のＬＳＰ周波数を生成するために４度補間される。受信されたパラメータおよび対応したサブフレーム情報は図２８に示されている。
【０１８９】
１／２速度フレームに対して、各組の４つの受信コードブックパラメータは一度反復され、各組の２つの受信ピッチパラメータは一度反復される。ＬＳＰ周波数は、４組のＬＳＰ周波数を生成するために３度補間される。受信されたパラメータおよび対応したサブフレーム情報は図２９に示されている。
【０１９０】
１／４速度フレームに対して、各組の２つの受信コードブックパラメータは４度反復され、ピッチパラメータの組はまた４度反復される。ＬＳＰ周波数は２組のＬＳＰ周波数を生成するために一度補間される。受信されたパラメータおよび対応したサブフレーム情報は図３０に示されている。
【０１９１】
１／８速度フレームに対して、受信コードブックパラメータの組はフレーム全体に対して使用される。ピッチパラメータは１／８速度フレームに対して存在せず、ピッチ利得は単にゼロに設定される。ＬＳＰ周波数は１組のＬＳＰ周波数を生成するために一度補間される。受信されたパラメータおよび対応したサブフレーム情報は図３１に示されている。
【０１９２】
音声パケットは、ＣＤＭＡセルまたは自動車ステーションが信号情報を伝送するためにためにしばしば無効にされる。ボコーダが無効フレームを受信したとき、それは前のフレームのパラメータを少し修正して連続する。コードブック利得はゼロに設定される。前のフレームのピッチ遅延および利得は、利得が１以下に限定されることを除いて現在のフレームピッチ遅延および利得として使用される。前のフレームのＬＳＰ周波数は、補間のないものとして使用される。エンコード端およびデコード端は依然として同期され、ボコーダは無効フレームから非常に速く回復できることに留意されたい。受信されたパラメータおよび対応したサブフレーム情報は図３２に示されている。
【０１９３】
フレームがチャンネルエラーのために失われた場合、ボコーダは前のフレームのエネルギの一部分を維持し、背景雑音に滑らかに転移することによってこのエラーをマスクすることを試みる。この場合、ピッチ利得はゼロに設定される。ランダムコードブックは前のサブフレームのコードブックインデクスプラス89を使用することによって選択される。コードブック利得は前のサブフレームのコードブック利得の0.7 倍である。数89に関して特別なことは何もなく、これは疑似ランダムコードブックベクトルを選択する単なる便利な方法である。前のフレームのＬＳＰ周波数は、それらのバイアス値：
ωi ＝ 0.9（前のωi −ωi のバイアス値＋ωi のバイアス値）      （47）
に向かって強制的に減衰させられる。ＬＳＰ周波数バイアス値は表５に示されている。受信されたパラメータおよび対応したサブフレーム情報は図３３に示されている。
【０１９４】
速度は受信機において決定されることができない場合、パケットは廃棄され、削除が通知される。しかしながら、受信機が決定する場合、エラーに関して以下のことが実行されるが、フレームは全速度で伝送された可能性が強い。上記に説明されたように全速度において、圧縮された音声パケットデータの最も知覚的に感度の高いビットは、内部ＣＲＣによって保護される。デコード端において、シンドロームは受信されたベクトルをｇ（ｘ）で除算した余りとして式（46）から計算される。シンドロームが無エラーを示した場合、パケットは全体的なパリティビットの状態に関係なく受容される。シンドロームが単一エラーを示した場合、エラーは全体的なパリティビットの状態が検査しない場合に補正される。シンドロームが１以上のエラーを示した場合、パケットは廃棄される。補正不可能なエラーがこのブロック中で発生した場合、パケットは廃棄され、削除が通知される。そうでなければ、図３４に示されているように、ピッチ利得はゼロに設定されるが、しかし残りのパラメータは補正されて受信されたときに使用される。
【０１９５】
この構造において使用されたポストフィルタは最初にＪ．Ｈ．Ｃhen 氏他による文献（“Real-Time Vector APC Speech Coding At 4800 BPS with Adaptive postfiltering”，Proc.ICASSP ，1987年）において説明された。スピーチフォルマントはスペクトルの谷より知覚的に重要であるため、ポストフィルタはコード化されたスピーチの知覚的品質を改良するためにフォルマントを少し支援する。これは、フォルマント合成フィルタの極を原点に向って半径方向にスケール処理することによって実行される。しかしながら、全極ポストフィルタは一般に結果的にフィルタ処理されたスピーチの消音を生じさせるスペクトル傾斜を導入する。この全極ポストフィルタのスペクトル傾斜は、極と同じ位相角度を有するが、半径が小さいゼロを付加し、結果的に形態：
Ｈ（ｚ）＝Ａ（ｚ／ρ）／Ａ（ｚ／σ）
０<ρ<σ<1                        （48）
のポストフィルタを生じさせることによって減少される。ここにおいて、Ａ（ｚ）はフォルマント予測フィルタであり、値ρおよびσはポストフィルタスケール処理係数であり、ここにおいてρは0.5 に設定され、σは0.8 に設定される。
【０１９６】
適応輝度フィルタは、フォルマントポストフィルタによって導入されたスペクトル傾斜をさらに補償するために付加される。輝度フィルタは形態：
Ｂ（ｚ）＝（１−κｚ-1）／（１＋κｚ-1）     （49）
であり、ここにおいてκ（この１タップフィルタの係数）の値はＡ（ｚ）のスペクトル傾斜の変化を近似するＬＳＰ周波数の平均値によって決定される。
【０１９７】
ポストフィルタ処理の結果生じる任意の大きい利得変動を避けるために、ＡＧＣループはそれが非ポストフィルタ処理されたスピーチとほぼ同じエネルギを有するようにスピーチ出力をスケール処理するように構成されている。利得制御は、反転フィルタ利得を得るために40個のフィルタ出力サンプルの２乗の和で40個のフィルタ入力サンプルの２乗の和を除算することによって実行される。その後、この利得係数の平方根は滑らかにされる：
滑らかなβ＝0.2 現在のβ＋0.98前のβ         （50）
また、フィルタ出力は出力スピーチを生成するようにこの滑らかな反転利得と乗算される。
【０１９８】
図２７において、データと共に伝送された、或いは別の手段によって導出された速度と共にチャンネルからのデータは、データパック解除サブシステム700 に供給される。ＣＤＭＡシステムに対する一実施例において、速度決定は、それが各異なる速度でデコード処理されたときに受信されたデータであるエラー速度から導出されることができる。データアンパックサブシステム700 において、全速度でＣＲＣの検査がエラーに対して行われ、この検査の結果がサブフレームデータアンパックサブシステム702 に供給される。サブシステム700 は、有効なデータを持つ無効フレーム、削除フレームまたはエラーフレーム等の異常フレーム状態の指示をサブシステム702 に与える。サブシステム700 はフレームに対するパラメータＩ，Ｇ，Ｌおよびｂと共に速度をサブシステム702 に与える。コードブックインデクスＩおよび利得Ｇの供給時に、利得値の符号ビットはサブシステム702 において検査される。符号ビットが負である場合、値89はモード128 で関連したコードブックインデクスから減算される。さらに、サブシステムにおいてコードブック利得は反転量子化され、ＤＰＣＭデコード処理され、一方ピッチ利得が反転量子化される。
【０１９９】
サブシステム700 はまたＬＳＰ反転量子化／補間サブシステム704 に速度およびＬＳＰ周波数を供給する。サブシステム700 は、さらに有効なデータを持つブランクフレーム、削除フレームまたはエラーフレームの指示をサブシステム704に与える。デコードサブフレームカウンタ706 はサブフレームカウント値ｉおよびｊの指示を両サブシステム702 および704 に与える。
【０２００】
サブシステム704 において、ＬＳＰ周波数は反転量子化され、補間される。図３５は、サブシステム704 の反転量子化部分の構造を示し、一方補間部分は実質的に図２０を参照して説明されたものと同じである。図３５において、サブシステム704 の反転量子化部分は、図２０の反転量子化器468 と同一に構成され、同様に動作する反転量子化器750 から構成されている。反転量子化器750 の出力は乗算器754 の出力として供給される。加算器752 の出力は、蓄積されて乗算器754 における定数0.9 との乗算のために出力されるレジスタ756 に供給される。加算器752 の出力はまたバイアス値がＬＳＰ周波数に加算される加算器758 に供給される。ＬＳＰ周波数の順序は、ＬＳＰ周波数を強制的に最小に分離させる論理回路760 によって保証される。一般に、エラーが伝送時に発生しなければ、分離を強制する必要性が生じない。ＬＳＰ周波数は、図２１、図２８乃至３１および図３２乃至３４を参照して説明されたように補間される。
【０２０１】
図２７を参照すると、メモリ708 は前のフレームＬＳＰ，ωi,f-1 を蓄積するためサブシステム704 に結合され、またバイアス値ｂωi を蓄積するために使用されてもよい。これらの前のフレーム値は、全ての速度に対する補間時に使用される。有効なデータを持つブランク、削除またはエラーフレームの状態に対して、前のフレームＬＳＰωi,f-1 は図３２乃至３４のチャートにしたがって使用される。サブシステム700 からのブランクフレーム指示に応答して、サブシステム704は現在のフレームにおいて使用するためにメモリ708 に蓄積された前のフレームのＬＳＰ周波数を検索する。削除フレーム指示に応答して、サブシステム704 は上記のように現在のフレームのＬＳＰ周波数を計算するようにバイアス値と共にメモリ708 からの前のフレームのＬＳＰ周波数を検索する。この計算の実行時に、蓄積されたバイアス値は加算器において前のフレームのＬＳＰ周波数から減算され、結果が乗算器において0.9 の定数により乗算され、この結果が加算器において蓄積されたバイアス値に加算される。有用なデータ指示を持つエラーフレームに応答して、ＬＳＰ周波数はＣＲＣが成功した場合に全速度に対して行われたように補間される。
【０２０２】
ＬＳＰは、ＬＳＰ周波数がＬＰＣ値に変換されるＬＳＰ・ＬＰＣ変換サブシステム710 に供給される。サブシステム710 は、図２１を参照して説明された図１４，１５のＬＳＰ・ＬＰＣ変換サブシステム218 および228 と実質的に同じである。その後、ＬＰＣ係数αi はフォルマントフィルタ714 およびフォルマントポストフィルタ716 の両方に供給される。ＬＳＰ周波数はまたＬＳＰ平均サブシステム712 中のサブフレームに対して平均され、適応輝度フィルタ718 に値κとして供給される。
【０２０３】
サブシステム702 は、速度および異常フレーム状態指示と共にサブシステム700 からフレームに対するパラメータＩ，Ｇ，Ｌおよびｂを受信する。サブシステム702 はまたサブフレームカウンタ706 から各デコードサブフレーム１乃至４中の各ｉカウントに対するｊカウントを受信する。サブシステム702 はまた異常フレーム状態で使用するためにＧ，Ｉ，Ｌおよびｂに対して前のフレーム値を蓄積するメモリ720 に結合される。１／８速度以外の通常フレーム状態下のサブシステム702 は、図２８乃至３１にしたがってコードブック722 にコードブックインデクス値Ｉj を供給し、乗算器724 にコードブック利得値Ｇj を供給し、またピッチフィルタ726 にピッチ遅延Ｌおよび利得ｂ値を供給する。１／８速度に対して、送信されるコードブックインデクスに対する値がないため、１／８速度に対して16ビットパラメータ値（図３１）であるパケットシードは、速度指示と共にコードブック722 に供給される。異常フレーム状態に対して、値は図３２乃至３４にしたがってサブシステム702 から供給される。さらに１／８速度に対して、図３６を参照して説明されるようにコードブック722 に指示が与えられる。
【０２０４】
サブシステム700 からのブランクフレーム指示に応答して、サブシステム702は、利得が１以下に制限され、現在のフレームデコードサブフレームにおいて使用するために蓄積されることを除いて、前のフレームピッチ遅延Ｌおよび利得ｂを検索する。さらに、コードブックインデクスＩは供給されず、コードブック利得Ｇはゼロに設定される。削除フレーム指示に応答して、サブシステム702 はメモリ720 からの前のフレームのサブフレームコードブックインデクスを検索し、加算器において89の値を加算する。前のフレームのサブフレームコードブック利得は、Ｇの各サブフレーム値を生成するように乗算器において0.7 の定数により乗算される。ピッチ遅延値は供給されず、一方ピッチ利得はゼロに設定される。有用データ指示を持つエラーフレームに応答して、コードブックインデクスおよび利得は、ＣＲＣが成功した場合に全速度フレームにおける場合のように使用され、一方ピッチ遅延値は供給され、ピッチ利得はゼロに設定される。
【０２０５】
解析・合成技術におけるエンコーダ・デコーダを参照して説明されたように、コードブックインデクスＩは乗算器724 への出力のためにコードブック値に対する開始アドレスとして使用される。コードブック利得値はコードブック722 からの出力値と乗算器724 において乗算され、その結果はピッチフィルタ726 に供給される。ピッチフィルタ726 は、フォルマントフィルタ714 に出力されるフォルマント残留を生成するために入力ピッチ遅延Ｌおよび利得ｂ値を使用する。フォルマントフィルタ714 において、ＬＰＣ係数はスピーチを再構成するようにフォルマント残留をフィルタ処理する時に使用される。受信機デコーダにおいて、再構成スピーチはさらにフォルマントポストフィルタ716 および適応輝度フィルタ718 によってフィルタ処理される。ＡＧＣループ728 はフォルマントフィルタ714 およびフォルマントポストフィルタ716 の出力において使用され、その出力は適応輝度フィルタ718 の出力と乗算器730 において乗算される。乗算器730 の出力は、既知の技術を使用してアナログ形態に変換され、聞き手に提供される再構成されたスピーチである。エンコーダのデコーダにおいて、そのメモリを更新するために出力に知覚加重フィルタが配置されている。
【０２０６】
図３６を参照すると、デコーダ自身の構造の詳細が示されている。図３６において、コードブック722 は、図２５を参照して説明されたものと同じメモリ750から構成されている。しかしながら、説明のためにメモリ750 に対して少し異なる方法が示され、図３６にはそのアドレス処理が示されている。コードブック722 はさらにスイッチ752 ，マルチプレクサ753 および疑似ランダム数（ＰＮ）発生器754 から構成されている。スイッチ752 は、図２５を参照して説明されたようにメモリ750 のインデクスアドレス位置を示すコードブックインデクスに応答する。メモリ750 は、出力のためにメモリを通してシフトされた値で開始メモリ位置を示すスイッチ752 を備えた回路メモリである。コードブック値は、マルチプレクサ753 への１入力としてメモリ750 からスイッチ752 を通って出力される。マルチプレクサ753 は、コードブック利得増幅器、乗算器724 にスイッチ752を通って供給された値の出力を供給するために全、１／２および１／４の速度に応答する。マルチプレクサ753 はまたコードブック722 の乗算器724 への出力に対してＰＮ発生器754 の出力を選択するために１／８速度指示に応答する。
【０２０７】
ＣＥＬＰコード処理の高い音声品質を維持するために、エンコーダおよびデコーダはそれらの内部フィルタメモリに蓄積された同じ値を有していなければならない。これは、デコーダおよびエンコーダのフィルタが同じシーケンスの値によって励起されるようにコードブックインデクスを伝送することによって行われる。しかしながら、高いスピーチ品質に対して、これらのシーケンスはそれらの中に分布されたいくつかのスパイクを持つほぼゼロから構成される。このタイプの励起は、背景雑音をコード処理するのに最適ではない。
【０２０８】
最低のデータ速度で実行される背景雑音のコード処理時に、疑似ランダムシーケンスはフィルタを励起するように構成されてもよい。フィルタメモリがエンコーダおよびデコーダにおいて同じであることを保証するために、２つの疑似ランダムシーケンスは同じでなければならない。シードは受信機デコーダに何とか伝送されなければならない。シードを送信するために使用されることができる付加的なビットは存在しないため、伝送されたパケットビットは、数を形成するかのようにシードとして使用されることができる。この技術は、低速度でコードブック利得およびインデクスを決定するために全く同じＣＥＬＰ解析・合成構造が使用されるため実行されることができる。相違は、コードブックインデクスが廃棄され、その代わりにエンコーダフィルタメモリが疑似ランダムシーケンスを使用して更新されることである。したがって、励起用のシードは解析が行われた後、決定されることができる。パケット自身が１組のビットパターンの間で周期的にサイクル化しないことを保証するために、４ランダムビットはコードブックインデクス値の代わりに１／８速度のパケットに挿入される。したがって、パケットシードは図１７に示されたように16ビット値である。
【０２０９】
ＰＮ発生器754 は、良く知られた技術を使用して構成され、種々のアルゴリズムによって実行されてもよい。実施例において、使用されたアルゴリズムは、Ｐaul Ｍennen 氏による文献（“DPS chip can produce random numbers using proven algorithm”，EDN ，1991年 1月21日）において説明された性質のものである。伝送されたビットパケットは、シーケンスを生成するためにシード（図２７のサブシステム700 から）として使用される。１構造において、シードは値521により乗算され、それに値259 を加算される。この結果的な値から、最小桁ビットが符号を付けられた16ビット数として使用される。その後、この値は次のコードブック値を生成する時にシードとして使用される。ＰＮ発生器によって生成されたシーケンスは、１の変数を有するように定常化される。
【０２１０】
コードブック722 から出力された各値は、デコードサブフレーム中に供給されるとコードブック利得Ｇにより乗算器724 において乗算される。この値はピッチフィルタ726 の加算器756 への１入力として供給される。ピッチフィルタ726 はさらに乗算器758 およびメモリ760 から構成されている。ピッチ遅延Ｌは、乗算器758 に出力されるメモリ760 の分岐の位置を決定する。メモリ760 の出力はピッチ利得値ｂと乗算器758 において乗算され、その結果が加算器756 に出力される。加算器756 の出力は、シフトレジスタのような一連の遅延素子であるメモリ760 の入力に供給される。値はメモリ760 を通してシフトされ（矢印によって示されているような方向に）、選択された分岐出力においてＬの値によって決定されたように供給される。値はメモリ760 を通してシフトされるため、143 シフトより古い値は廃棄される。加算器756 の出力はまたフォルマントフィルタ714 に入力として供給される。
【０２１１】
加算器756 の出力はフォルマントフィルタ714 の加算器762 の１入力に供給される。フォルマントフィルタ714 はさらに乗算器764a乃至764jおよびメモリ766のバンクから構成されている。加算器762 の出力は、シフトレジスタのような一連の分岐された遅延素子として構成されたメモリ766 への入力として供給される。値はメモリ766 を通してシフトされ（矢印によって示されているような方向に）、端部において廃棄される。各素子は、乗算器764a乃至764jの対応したものへの出力としてそこに蓄積された値を供給する分岐を有する。乗算器764a乃至764jはまたそれぞれメモリ766 からの出力との乗算のために各ＬＰＣ係数α1 乃至α10を受取る。加算器762 からの出力は、フォルマントフィルタ714 の出力として供給される。
【０２１２】
フォルマントフィルタ714 の出力は、フォルマントポストフィルタ716 およびＡＧＣサブシステム728 への入力として供給される。フォルマントポストフィルタ716 は、メモリ772 並びに乗算器774a乃至774j；776a乃至776jおよび782a乃至782jと共に加算器768 および770 から構成されている。値がメモリ772 を通してシフトされると、それらは加算器768 および770 における和に対してスケール処理されたＬＰＣ係数値との乗算のために対応した分岐において出力される。フォルマントポストフィルタ716 からの出力は、適応輝度フィルタ718 への入力として供給される。
【０２１３】
適応輝度フィルタ718 は、加算器784 および786 、レジスタ788 および790 並びに乗算器792 および794 から構成されている。図３７は、適応輝度フィルタの特性を示したチャートである。フォルマントポストフィルタ716 の出力は加算器784 に１入力として供給され、一方別の入力は乗算器792 の出力から供給される。加算器784 の出力はレジスタ788 に供給され、１サイクルの間蓄積され、次のサイクル中に図２７のＬＳＰ平均サブシステム712 から供給された値−κと共に乗算器792 および794 に出力される。乗算器792 および794 からの両出力は、加算器784 および786 に供給される。加算器786 からの出力はＡＧＣサブシステム728 およびシフトレジスタ790 に供給される。シフトレジスタ790 は、フォルマントフィルタ714 からＡＧＣサブシステム728 へおよびフォルマントポストフィルタ716 を介して適応輝度フィルタ718 に供給されたデータ出力の調整を保証するために遅延ラインとして使用される。
【０２１４】
ＡＧＣサブシステム728 は、フォルマントポストフィルタ716 および適応輝度フィルタ718 へのスピーチ入力エネルギに関してスピーチ出力エネルギをスケール処理するようにフォルマントポストフィルタ716 および適応輝度フィルタ718からデータを受信する。ＡＧＣサブシステム728 は乗算器798 ，800 ，802 および804 ；加算器806 ，808 および810 ；レジスタ812 ，814 および816 ；除算器818 並びに平方根素子820 から構成されている。フォルマントポストフィルタ716 から出力された40サンプルは、値“ｘ”を生成するように乗算器798 において２乗され、加算器806 およびレジスタ812 から構成された累算器において合計される。同様に、レジスタ790 の前に行われる、適応輝度フィルタ718 から出力された40サンプルは値“ｙ”を生成するように乗算器800 において２乗され、加算器808 およびレジスタ814 から構成された累算器において合計される。値“ｙ”は、除算器816 において値“ｘ”によって除算され、結果的にフィルタの反転利得を生じさせる。反転利得係数の平方根は素子818 において取られ、その結果が平滑にされる。平滑動作は、乗算器802 において定数値0.02により現在の値利得を乗算することによって行なわれ、この結果はレジスタ820 および乗算器804 を使用して計算されたときに前の利得の0.98倍の結果に加算器810 で加算される。その後、フィルタ718 の出力は出力再構成スピーチを提供するように乗算器730において平滑にされた反転利得と乗算される。出力スピーチは、利用者に出力するために種々の良く知られた変換技術を使用してアナログ形態に変換される。
【０２１５】
ここに示された本発明の実施例は単なる一例に過ぎず、機能的に等価である実施例の変更が行なわれてもよいことを理解すべきである。本発明は、スピーチサンプルをエンコードし、エンコードされたスピーチをデコードするためにここに示されているような機能動作を提供するように適切なプログラム制御下においてデジタル信号プロセッサで実行されてもよい。別の態様において、本発明は良く知られた非常に大きいスケールインテグレーション（ＶＬＳＩ）技術を使用する適用限定集積回路（ＡＳＩＣ）に内蔵されてもよい。
【０２１６】
上記の好ましい実施例の説明は、当業者が本発明を形成または使用できるように与えられている。当業者はこれらの実施例に対する種々の修正を容易に認識し、ここに限定された一般的な原理は発明能力を必要とせずに別の実施例に対して適用されてもよい。以上、本発明はここに示された実施例に限定されるものではなく、ここに記載された原理および新しい特徴と適合した非常に広い技術的範囲が提供される。
【図面の簡単な説明】
【０２１７】
【図１】種々の速度に対するボコーダ解析フレームおよびサブフレームをグラフで示す。
【図２】種々の速度に対するボコーダ解析フレームおよびサブフレームをグラフで示す。
【図３】種々の速度に対するボコーダ解析フレームおよびサブフレームをグラフで示す。
【図４】種々の速度に対するボコーダ解析フレームおよびサブフレームをグラフで示す。
【図５】種々の速度に対するボコーダ解析フレームおよびサブフレームをグラフで示す。
【図６】種々の速度に対するボコーダ出力ビット分布を示した一連のチャートである。
【図７】種々の速度に対するボコーダ出力ビット分布を示した一連のチャートである。
【図８】種々の速度に対するボコーダ出力ビット分布を示した一連のチャートである。
【図９】種々の速度に対するボコーダ出力ビット分布を示した一連のチャートである。
【図１０】一例のエンコーダの一般化されたブロック図である。
【図１１】エンコーダフローチャートである。
【図１２】一例のデコーダの一般化されたブロック図である。
【図１３】デコーダのフローチャートである。
【図１４】エンコーダのさらに詳細な機能的なブロック図である。
【図１５】エンコーダのさらに詳細な機能的なブロック図である。
【図１６】ハミングウインドウおよび自己相関サブシステムの一例のブロック図である。
【図１７】速度決定サブシステムの一例のブロック図である。
【図１８】ＬＰＣ解析サブシステムの一例のブロック図である。
【図１９】ＬＰＣからＬＳＰ伝送サブシステムの一例のブロック図である。
【図２０】ＬＰＣ量子化サブシステムの一例のブロック図である。
【図２１】ＬＳＰ挿入およびＬＳＰからＬＰＣ伝送サブシステムの一例のブロック図である。
【図２２】ピッチ探索用の適用コードブックのブロック図である。
【図２３】エンコーダデコーダのブロック図である。
【図２４】ピッチ探索サブシステムのブロック図である。
【図２５】コードブック探索サブシステムのブロック図である。
【図２６】データパッキングサブシステムのブロック図である。
【図２７】デコーダのさらに詳細な機能的ブロック図である。
【図２８】種々の速度に対してデコーダの受信されたパラメータおよびサブフレームデコードデータを示したチャートである。
【図２９】種々の速度に対してデコーダの受信されたパラメータおよびサブフレームデコードデータを示したチャートである。
【図３０】種々の速度に対してデコーダの受信されたパラメータおよびサブフレームデコードデータを示したチャートである。
【図３１】種々の速度に対してデコーダの受信されたパラメータおよびサブフレームデコードデータを示したチャートである。
【図３２】特別な状態に対してデコーダの受信パラメータおよびサブフレームデコード化データをさらに示したチャートである。
【図３３】特別な状態に対してデコーダの受信パラメータおよびサブフレームデコード化データをさらに示したチャートである。
【図３４】特別な状態に対してデコーダの受信パラメータおよびサブフレームデコード化データをさらに示したチャートである。
【図３５】ＬＳＰ反転量子化サブシステムのブロック図である。
【図３６】ポストフィルタ処理および自動利得制御を備えたデコーダのさらに詳細なブロック図である。
【図３７】適応輝度フィルタ特性を示すチャートである。
【図１】
2006221186.tif 000031
【図２】
2006221186.tif 000032
【図３】
2006221186.tif 000033
【図４】
2006221186.tif 000034
【図５】
2006221186.tif 000035
【図６】
2006221186.tif 000036
【図７】
2006221186.tif 000037
【図８】
2006221186.tif 000038
【図９】
2006221186.tif 000039
【図１０】
2006221186.tif 000040
【図１１】
2006221186.tif 000041
【図１２】
2006221186.tif 000042
【図１３】
2006221186.tif 000043
【図１４】
2006221186.tif 000044
【図１５】
2006221186.tif 000045
【図１６】
2006221186.tif 000046
【図１７】
2006221186.tif 000047
【図１８】
2006221186.tif 000048
【図１９】
2006221186.tif 000049
【図２０】
2006221186.tif 000050
【図２１】
2006221186.tif 000051
【図２２】
2006221186.tif 000052
【図２３】
2006221186.tif 000053
【図２４】
2006221186.tif 000054
【図２５】
2006221186.tif 000055
【図２６】
2006221186.tif 000056
【図２７】
2006221186.tif 000057
【図２８】
2006221186.tif 000058
【図２９】
2006221186.tif 000059
【図３０】
2006221186.tif 000060
【図３１】
2006221186.tif 000061
【図３２】
2006221186.tif 000062
【図３３】
2006221186.tif 000063
【図３４】
2006221186.tif 000064
【図３５】
2006221186.tif 000065
【図３６】
2006221186.tif 000066
【図３７】
2006221186.tif 000067