(57)【要約】【課題】パケットによる音声通信のピッチ検出において、フレーム消失区間の最初のフレーム間で音声のピッチ検出をしていたために発生するＣＰＵにかかる負荷を軽減すること。【解決手段】ピッチ・バッファＰＢ１〜５、相関計算部５、相関バッファ６により、常時相関計算を行い、ピッチ検出（７）をし、補間データを作成して、次フレームが消失した時に備えている。フレーム消失が発生すると、入力データ１に対して補間処理（８）により、消失した音声データを直ちに補間することができる。常時行う相関計算の負荷は小さいから、消失時に発生する緊急を要する演算量は極めて小さく、速度の遅い安価なＣＰＵで相関計算部５などの回路構成が可能である。【選択図】        図１
2004239930.tif 000002
【特許請求の範囲】
【請求項１】
音声データを含むフレームが消失する消失フレームの発生に備えて、常時、一連の正常なフレーム列から正規化相互相関計算をして音声のピッチを検出することにより、検出された音声のピッチを得て、前記一連の正常なフレーム列の直後に入力される次フレームが前記消失フレームであった場合に、前記消失フレームに、前記検出された音声のピッチに基づいて得た補間データを補間するようにした、
パケット損失補償におけるピッチ検出方法。
【請求項２】
前記正規化相互相関計算をして音声のピッチを検出する場合に、前記フレームの１個である１フレームが８０サンプルの音声データを含んでおり、前記消失フレームの直前の２フレームの音声データと、それより以前のフレーム列の音声データとの間で正規化相互相関計算をするようにした、
請求項１のパケット損失補償におけるピッチ検出方法。
【請求項３】
音声データを含むフレームが消失する消失フレームの発生に備えて、常時、一連の正常なフレーム列から正規化相互相関計算をするための正規化相互相関計算手段（５，６，９，１１，１２，３０，ＰＢ１〜５）と、
前記正規化相互相関計算の結果から音声のピッチを検出することにより、検出された音声のピッチを得るためのピッチ検出手段（７）と、
前記一連の正常なフレーム列の直後に入力される次フレームが前記消失フレームであった場合に、前記消失フレームに、前記検出された音声のピッチに基づいて得た補間データを補間し出力するための補間処理手段（８，ＤＬ，ＳＷ）とを含む、
パケット損失補償におけるピッチ検出装置。
【請求項４】
前記正規化相互相関計算手段（５，６，９，１１，１２，３０，ＰＢ１〜５）が、
前記フレームの１個である１フレームが８０サンプルの音声データを含んでいる場合に、それぞれ１フレームづつずらしながらそれぞれが３９０サンプル分の音声データを格納するための５個のピッチ・バッファ手段（ＰＢ１〜５）と、
前記正規化相互相関計算をして音声のピッチを検出する場合に、前記消失フレームの直前の２フレームの音声データと、それより以前のフレーム列の音声データとの間で自己相関および相互相関計算をするための相関計算手段（５）と、
前記自己相関および相互相関計算をする計算経過において発生する計算データを格納するための５個の経過バッファ（ＰＡＢ１〜５）と、前記計算経過において発生する前記自己相関計算の結果を格納するための２個の自己相関バッファ（ＳＣＢ１，２）と、前記計算経過において発生する前記相互相関計算の結果を格納する２個の相互相関バッファ（ＭＣＢ１，２）とを含む、相関バッファ手段（６）と、を含む、
請求項３のパケット損失補償におけるピッチ検出装置。
【請求項５】
前記正規化相互相関計算手段（５，６，９，１１，１２，３０，ＰＢ１〜５）が、
前記５個のピッチ・バッファ手段（ＰＢ１〜５）にそれぞれ格納されたデータのサンプル数をカウントする５個のピッチ・バッファ・カウンタ（ＰＢＣ１〜５）と、前記ピッチ・バッファ・カウンタ（ＰＢＣ１〜５）のカウント値が所定の値になったときにそのピッチ・バッファ手段を特定するために割当てられたピッチ・バッファ番号を、現フレームあるいは次フレームに割当てるピッチ・バッファ番号（ＰＦＰＢＮｏ，ＮＦＰＢＮｏ）として記録するレジスタで構成され、前記現フレームの消失時には前記現フレームに割当て、前記ピッチ・バッファ手段のうちの更新されるべき１個の代わりに、次フレームに割当てられた他の１個のピッチ・バッファの番号を更新するように制御するためのピッチ・バッファ制御手段（１１，３０）と、
前記５個のピッチ・バッファ・カウンタ（ＰＢＣ１〜５）のカウント値に応じて、前記相互相関計算の結果から判断して、前記自己相関計算の途中であれば前記５個のピッチ・バッファ手段（ＰＢ１〜５）にそれぞれ対応した前記５個の経過バッファ（ＰＡＢ１〜５）を選択し、前記自己相関差分計算の途中であれば、割当てられたフレームに対応した前記２個の自己相関バッファ（ＳＣＢ１，２）のうちの１個を選択し、前記相互相関計算の途中であれば割当てられたフレームに対応した前記２個の相互相関バッファ（ＭＣＢ１，２）のうちの１個を選択するように制御する相関バッファ制御手段（１２）とを含んだ、
請求項４のパケット損失補償におけるピッチ検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パケットによる音声通信におけるピッチ検出方法と装置に関する。さらに具体的には、フレームが消失した場合のパケット損失を補償する音声ピッチ検出方法と装置に関わる。国際電気通信連合の電気通信標準化部門（ＩＴＵ−Ｔ）の勧告Ｇ．７１１  ＡＰＰＥＮＤＩＸ  Ｉ（以下単に、ＩＴＵ−Ｔ勧告という）に示している推薦案「パケット損失補償方法」において、演算処理を平均化することでＣＰＵにかかる負荷を軽減する改良された方法と装置を提供するものである。
【従来の技術】
【０００２】
ＩＴＵ−Ｔ勧告の「パケット損失補償方法」では、音声通信において、フレームが消失した場合のフレーム消失区間の最初のフレーム間で音声のピッチ検出が行われる。このピッチ検出において、消失したフレームの直前の２０ｍｓ（１６０サンプル）の音声とそれより過去の音声との正規化相互相関計算が実行される。これが、ＣＰＵにおける演算量の大部分を占めている。
【０００３】
ＩＴＵ−Ｔ勧告では、フレーム消失区間の最初に、消失したフレームの直前の音声データを４８．７５ｍｓ（３９０サンプル）長のピッチ・バッファにコピー（記憶）する。この記憶（格納）された音声データは、現時点の音声のピッチ（基本波の周期）を計算するため、および、消失したフレームの期間に存在したであろうと推定される音声の波形を抽出し再現するために、使用される。
【０００４】
音声データのピッチは、５ｍｓ（４０サンプル）から１５ｍｓ（１２０サンプル）までの範囲であり、ピッチ・バッファに記憶した最近（最新）の２０ｍｓ（１６０サンプル）の音声とそれより過去の音声との、正規化相互相関のピークを見つけることで、推定される。
【０００５】
正規化相互相関  ｐｉｔｃｈ（ｉ）  は、相互相関Ｍ（ｉ）を自己相関Ｓ（ｉ）の平方根で除算して求めることができる。消失したフレームの期間である消失区間の直前に入力された音声データをｘ（ｎ）、サンプル番号をｉ，ｋおよびｎとする。
Ｍ（ｉ）＝Σｘ（ｎ−ｋ）・ｘ（ｎ−ｉ−ｋ）          （１）
Ｓ（ｉ）＝Σｘ（ｎ−ｉ−ｋ）２                        （２）
ここで、Σはｋ＝０からｋまでの累和を表している。ｘ（ｎ−ｋ）はｘ（ｎ）のｋサンプル前の音声データを表し、ｘ（ｎ−ｉ−ｋ）はｘ（ｎ−ｋ）のｉサンプル前の音声データを表している。
【０００６】
式（１），（２）を用いて、正規化相互相関  ｐｉｔｃｈ（ｉ）を求めると、
ｐｉｔｃｈ（ｉ）＝Ｍ（ｉ）／｛Ｓ（ｉ）｝１／２                    （３）
となる。ピッチ検出は、ｋ＝０〜１５９の１６０サンプルにつきｉ＝４０〜１２０の範囲において、  ｐｉｔｃｈ（ｉ）が最大値を示すｉの値を検出する。
【０００７】
式（３）では、１つの正規化相互相関  ｐｉｔｃｈ（ｉ）を求めるために、式（１）の積和演算を１６０回（ｋ＝０〜１５９）、式（２）の積和演算を１６０回（ｋ＝０〜１５９）と平方根（｛  ｝１／２）を１回行い、さらに、式（３）の除算を１回実行する必要がある。式（１）と（２）の積和演算にそれぞれ１サイクル、式（２）の平方根に１０サイクルおよび式（３）の除算に１０サイクルの演算量がかかると仮定すると、１回の正規化相互相関  ｐｉｔｃｈ（ｉ）を求める計算で、１６０×２＋１０＋１０＝３４０サイクルを必要とし、これを、ｉ＝４０〜１２０について８１回計算するので、２７，５４０サイクルの演算量を必要とする。
【０００８】
すなわち、式（３）の正規化相互相関  ｐｉｔｃｈ（ｉ）を求めるためには、２７，５４０サイクルの演算量を必要とするのである。これだけの演算量を実行して、はじめて、式（３）の正規化相互相関  ｐｉｔｃｈ（ｉ）が最大値を示すｉの値を検出することが可能となる。
【０００９】
このように大きな演算量の実行を回避するために、ＩＴＵ−Ｔ勧告では、以下の方法による低演算量化を提案している。
【００１０】
ピッチの推定は、２段階に分けて計算する。その第１段階では、２対１に間引いた音声データ信号で粗い探索を実行してピーク値を検出する。第２段階では、粗い探索で検出したピーク値の付近で、詳細な探索を実行する。
【００１１】
第１段階の粗い探索では、式（２）の自己相関計算で、ｉ＝１２０において、
Ｓ（ｉ）＝Σｘ（ｎ−ｉ−２ｋ）２                        （４）
すなわち、
Ｓ（１２０）＝Σｘ（ｎ−１２０−２ｋ）２
ここで、第１段階で２対１に間引いた結果、式（４）において、Σはｋ＝０から７９までの累和を表し、２対１に間引いたので式（２）のｋに代えて２ｋを用いている。
【００１２】
差分計算は、
Ｓ（ｉ＋１）−Ｓ（ｉ）＝ｘ（ｎ−１２０−ｉ）２  −ｘ（ｎ−ｉ）２  （５）
で表されることから、
Ｓ（ｉ）＝Ｓ（ｉ＋１）−ｘ（ｎ−１２０−ｉ）２  ＋ｘ（ｎ−ｉ）２  （６）
となる。式（６）において、ｉ＝１１９〜４０のうち、２対１に間引いたのでｉが偶数のときのみ、すなわち、４０回計算する。
【００１３】
自己相関計算の場合と同様に、式（１）の相互相関計算で、ｉ＝１２０とおいて、
Ｍ（ｉ）＝Σｘ（ｎ−２ｋ）・ｘ（ｎ−ｉ−２ｋ）          （７）
となる。ここで、第１段階で２対１に間引いた結果、式（７）において、Σはｋ＝０から７９までの累和を表し、式（１）のｋに代えて２ｋを用いている。式（７）において、ｉ＝１１９〜４０のうち、ｉが偶数のときのみ、すなわち、４１回計算する。
【００１４】
式（７）で得た相互相関Ｍ（ｉ）と、式（６）で得た自己相関Ｓ（ｉ）とから、粗い（ｉ＝１１９〜４０のうちのｉが偶数時）正規化相互相関  ｐｉｔｃｈ（ｉ）を求める。
ｐｉｔｃｈ（ｉ）＝Ｍ（ｉ）／｛Ｓ（ｉ）｝１／２                    （８）
【００１５】
したがって、式（８）の粗い正規化相互相関  ｐｉｔｃｈ（ｉ）を探索するのに必要な演算量は、自己相関計算に８０サイクル、差分計算に２×４０＝８０サイクル、相互相関計算に８０×４１サイクル、平方根計算に１０×４１サイクル、除算計算に１０×４１サイクルの第１段階の計４，２６０サイクルが必要となる。
【００１６】
第２段階では、第１段階で４，２６０サイクルの計算により求めた式（８）の粗い正規化相互相関  ｐｉｔｃｈ（ｉ）の探索で検出したピーク値ｉとその前後の３値（ｉ−１，ｉ，ｉ＋１）で、サンプルを間引かずに詳細な正規化相互相関  ｐｉｔｃｈ（ｉ）の探索を実行する。
【００１７】
すなわち、式（３）において、ｋ＝０〜１５９として、
ｐｉｔｃｈ（ｉ＋１）＝Ｍ（ｉ＋１）／｛Ｓ（ｉ＋１）｝１／２      （９）
ｐｉｔｃｈ（ｉ）＝Ｍ（ｉ）／｛Ｓ（ｉ）｝１／２                  （１０）
ｐｉｔｃｈ（ｉ−１）＝Ｍ（ｉ−１）／｛Ｓ（ｉ−１）｝１／２      （１１）
となる。
【００１８】
第２段階の演算量は、自己相関計算に１６０サイクル、差分計算に２×２＝４サイクル、相互相関計算に１６０×３サイクル、平方根計算に１０×３サイクル、除算計算に１０×３サイクルの第２段階の計７０４サイクルとなる。第１段階と第２段階の合計は、４，９６４サイクルとなる。
【００１９】
第１段階と第２段階の合計では、４，９６４サイクルとなるから、ＩＴＵ−Ｔ勧告をそのまま実行したときに必要とされる２７，５４０サイクルの演算量に対して、約２０％に削減される。しかしながら、ＩＴＵ−Ｔ勧告の低演算量化提案を実行したときに発生する演算量は、４，９６４サイクルである。これを１２５μｓ（８ｋＨｚ）の期間内で処理しようとすると、ＣＰＵにおける処理量（ＩＰＳ：１秒あたりの命令数）は、４９６４／０．０００１２５＝３９．７１２ＭＩＰＳ（Ｍ：メガ）となり、依然として、ＣＰＵにとって大きな負荷となっている。
【００２０】
図１０には、従来例の装置における補間処理の動作を示すタイムチャートが示されている。同図（ａ）に示した音声の入力データ１においては、データ番号０〜７９＝８０個のサンプル（ｓａ）のデータが１フレーム（ｔ８〜ｔ１０）に含まれている。ここで、１ｓａは、１２５μｓである。時点ｔ１０〜ｔ１２のフレームが消失した場合を想定する。同図（ｃ）には、（ａ）の入力データ１を３０ｓａ分遅れさせた遅延データ３が示されている。ここで、（ｂ）は、説明の便宜上、欠番となっている。
【００２１】
（ｄ）のフレーム消失信号１５は、時点ｔ１０までは“Ｌ”のままであるが、時点ｔ１０においてフレームの消失を検出すると“Ｈ”となり、時点ｔ１２においてフレームが検出されると、再び“Ｌ”となる。ＩＴＵ−Ｔ勧告では、補間データと消失直前の入力データ１を滑らかに接続するために、消失直前の３０サンプル（ｓａ）分の遅延データ３（ｃ）と補間データを前方（ｔ３２〜ｔ３４の方向）に延長したデータの重畳加算を時点ｔ３２〜ｔ３４の間行っている。また、補間データと消失直後の入力データを滑らかに接続するために、消失フレームの直後の３０ｓａ分の遅延データ３（ｃ）と補間データを後方に延長したデータとの重畳加算を時点ｔ３５〜ｔ３６の間行っている。
【００２２】
重畳加算は、時点ｔ１０〜ｔ３３の遅延データ３（ｃ）において、ｔ１０のデータ番号５０を補間データに加算する場合には、遅延データの割合を大きく補間データの割合を小さくし、その後ｔ３３に近づくにつれて遅延データの割合を小さく補間データの割合を大きくしている。１ｓａ遅れた出力データ２（ｅ）の時点ｔ３２〜ｔ３４の間は、遅延データの割合を徐々に小さく補間データの割合を徐々に大きくして、ｔ３４以後はｔ３５迄補間データのみとなる。
【００２３】
さらに、時点ｔ３７〜ｔ３８の遅延データ３（ｃ）において、ｔ３７のデータ番号０を補間データに加算する場合には、遅延データの割合を小さく補間データの割合を大きくし、その後ｔ３８に近づくにつれて補間データの割合を小さく遅延データの割合を大きくしている。１ｓａ遅れた出力データ２（ｅ）の時点ｔ３５〜ｔ３６の間は、補間データの割合を徐々に大きくして、ｔ３６以後は遅延データのみとなる。
【００２４】
（ｅ）の出力データ２は、（ｃ）の遅延データ３よりも１ｓａだけ遅れて出力される。時点ｔ１０においてフレームの消失が検出されると、そこから１ｓａ分の１２５μｓの期間内で、前記第１段階と第２段階の演算処理がなされて、補間データが出力される。出力データ２は、時点ｔ１０から１２５μｓ遅れた時点ｔ３２からｔ３４の間（３０サンプル分：３．７５ｍｓ）は重畳加算された補間データであり、ｔ３４〜ｔ３５の間は重畳加算されていない補間データであり、ｔ３５からｔ３６の間は重畳加算された補間データとなっている。
【００２５】
フレーム消失信号（ｄ）の発生した時点ｔ１０からｔ３２の１２５μｓの間に前記第１段階と第２段階の演算処理が完了しなければ、消失フレームの発生によって、音声データが途切れることになる。このような事態は絶対に避けねばならないから、この１２５μｓの間に演算処理を完了しなければならないＣＰＵにとって大きな負荷となる。
【００２６】
【発明が解決しようとする課題】
ＩＴＵ−Ｔ勧告をそのまま実行したときに必要とされる２７，５４０サイクルの大きな演算量の実行を回避するために、ＩＴＵ−Ｔ勧告の低演算量化提案を採用したとしても、ＣＰＵに対する負荷は依然として重い。さりとて、ＣＰＵにおける演算処理時間を延ばすことは、消失フレームの補間処理が遅延して音声信号に不都合を生じてしまうこととなるから許されず、解決されなければならない課題であった。
【００２７】
ＣＰＵおよび、その周辺の回路素子の演算速度を上げることにより、補間処理の遅延を避けることは技術的には可能であるが、著しいコストアップを伴うから、実施することができないという重大な問題点があった。
【００２８】
【課題を解決するための手段】
本発明は、パケットによる音声通信において、フレームが消失した場合のパケット損失を補償する場合に発生する、ＣＰＵにかかる大きな負荷を軽減するべく、演算処理を平均化するようにしている。
【００２９】
音声データを含むフレームが消失するのに備えて、フレーム消失の有無にかかわらず、常時、一連の正常なフレーム列から正規化相互相関計算をして音声のピッチを検出して、一連の正常なフレーム列の直後に入力される次フレームが消失フレームであった場合に、その消失フレームに、検出された音声のピッチに基づいて得た補間データを補間するようにした。この補間作業においては、フレームの消失寸前の３０サンプル分のデータを、重畳加算できるようにしている。
【００３０】
ピッチ・バッファはフレーム周期が１０ｍｓ（８０サンプル）の場合は、フレーム消失直前の３９０サンプルを格納（記憶）するとして、３９０／８０＝４．９  となるから、５個のピッチ・バッファを用意している。
【００３１】
自己相関および相互相関を求めて、音声データのピッチ検出をし、補間データを作成しておく演算作業を、フレーム消失が発生するか否かにかかわらず、常時実行している。演算は、常時分散して実行されているために、その計算速度は遅いものでも、十分に対応できる。
【００３２】
フレーム消失が発生すると、ピッチ・バッファにおける音声データの更新は止められ、すでに検出された最新の音声データのピッチから得た補間データにより、消失したフレームを補間する。フレーム消失という異常な事態が発生した時点では、消失したフレームを補間するのに必要なピッチおよび補間データがすでに作成済みであるから、フレーム消失の発生時における処理量は、極めて小さく、消失フレームの補間処理が遅延して音声信号に不都合を生じてしまうこともない。
【００３３】
【発明の実施の形態】
図１および図２は、本発明の実施の形態を示す回路構成図、および回路構成の動作を従来例（図１０）と対比して説明するためのタイムチャートである。ここにおいて、従来例を示す図１０の要素と同じものについては、同じ記号を用いた。図２において、図１０と異なる点は、（ｂ）のスイッチ３０と（ｆ）のスイッチＳＷの機能が追加されている点である。
【００３４】
すなわち、（ｂ）のスイッチ３０は、時点ｔ３１からｔ１０の間（３０ｓａ分：３．７５ｍｓ）はオンとなり、それ以外においてオフとなっている。（ｆ）のスイッチＳＷは、時点ｔ３２からｔ３６の間は端子ａ側に接続され、それ以外において端子ｂ側に接続される。時点ｔ１０までに相関計算は終了している。
【００３５】
音声データが入力データ１（ａ）として印加されている。入力データ１は、遅延器ＤＬによって３０ｓａ分（ｔ３１からｔ１０の間）遅延し、切替スイッチＳＷの端子ｂ側に接続されて、出力バッファ１０において１ｓａ（サンプル：１サンプルは１２５μｓ）遅れて、従来例と同じく出力データ２として出力される。入力データ１はフレーム構成で、１フレーム中に音声信号からサンプルして得た８０サンプル分のデータを含んでいる。
【００３６】
何等かの理由でフレームが消失すると、消失したフレームの音声を再現できなくなるから、消失したフレームのデータを、消失前の音声データから相関計算し、音声のピッチを検出して推定し、その推定したデータで、消失したフレームのデータを補間している。入力データ１にフレームの消失が発生すると、フレーム消失検出部９がこれを検出し、フレーム消失信号１５を出力し（ｔ１０）、１ｓａ分遅れて（ｔ３２）切替スイッチＳＷを端子ａ側に切替て、消失したフレームを補間する補間データ２６を、出力バッファ１０を介して出力データ２として出力する。このフレーム消失検出部９、遅延器ＤＬおよび出力バッファ１０の構成は従来例と同じであり、公知である。
【００３７】
補間処理が終り、正常なフレームの入力をフレーム消失検出部９が時点ｔ１２で確認すると、フレーム消失信号１５が終了した後、６０ｓａ分（ｔ１２〜ｔ３８）経過することにより、次のサンプルで切替スイッチＳＷを端子ｂ側に切替える（ｔ３６）。正常なフレームの入力をフレーム消失検出部９が確認している間は、切替スイッチＳＷは端子ｂ側にあって、出力データ２は出力され、ピッチ・バッファＰＢ１〜５にも同時に印加され、そこに一時格納（記憶）される。遅延データ３（ｃ）における消失フレーム開始時点ｔ３３は、遅延器ＤＬによって３０ｓａ分遅れている。
【００３８】
スイッチ３０（ｂ）は、入力データ１（ａ）の１フレームの最後の３０ｓａ分（ｔ３１〜ｔ１０：３．７５ｍｓ：データ番号５０〜７９）の間オンすることにより、消失するかもしれない次のフレーム開始の直前の３０ｓａ分をピッチ・バッファＰＢ１に格納する。この３０ｓａ分は、遅延データ３（ｃ）における時点ｔ１０〜ｔ３３（データ番号５０〜７９）に対応しており、ピッチ検出と出力データ２（ｅ）における時点ｔ３２〜ｔ３４（データ番号５０〜７９）の重畳加算において、使用される。
【００３９】
ピッチ・バッファ出力２１は、補間処理部８と相関計算部５に送られる。相関バッファ６には、５個の経過バッファＰＡＢ１〜５、２個の自己相関バッファＳＣＢ１，２と、２個の相互相関バッファＭＣＢ１，２が含まれている。相関計算部５と相関バッファ６の間においては、相関入出力２２により、相関計算中のデータのやりとりが行われる。
【００４０】
自己相関バッファＳＣＢ１，２の自己相関バッファ出力２３と、相互相関バッファＭＣＢ１，２の相互相関バッファ出力２４とは、ピッチ検出部７に送られる。ここで音声のピッチが検出されて、ピッチ・データ２５が補間処理部８に送られ、作成された補間データ２６が切替スイッチＳＷの端子ａ側に印加される。フレーム検出部９がフレームの消失を検出すると、フレーム消失信号１５により、切替スイッチＳＷは端子ａ側に切替られて、補間データ２６で補間されたフレームが出力バッファ１０を介して出力データ２として出力される。
【００４１】
図３には、図１に示した回路構成の動作原理を説明するためのタイムチャートが示されている。５個のピッチ・バッファＰＢ１〜５のうちの１つのピッチ・バッファＰＢ１を代表例として、説明している。
【００４２】
図３（ａ）のフレーム（Ｆ）は、時点ｔ０に始まり、時点ｔ２迄に０〜７９の８０サンプル（ｓａ）分のデータを含んでいる。以下同様に、ｔ４，ｔ６，・・・ｔ１０と続いている。同図（ｂ）のピッチ・バッファＰＢ１は、記憶開始時点ｔｓからデータの一時記憶を開始する。ピッチ・バッファＰＢ１の記憶容量は３９０ｓａ分（０〜３８９）である。時点ｔ１０において、ピッチ・バッファＰＢ１は満杯となる。
【００４３】
音声のピッチ計算には２８０ｓａ分のデータを必要とする。そこで時点ｔ３において、同図（ｃ）の相関計算部５の動作が開始されたとする。自己相関計算は時点ｔ３〜ｔ７（１６０ｓａ分）の間に行われる。自己相関差分計算は時点ｔ７〜ｔ９（８０ｓａ分）の間に行われる。相関計算部５の動作は、時点ｔ６〜ｔ１０（１６０ｓａ分）の間に行われる。
【００４４】
同図において、もし、時点ｔ１０以後のフレームが消失したときには、ピッチ検出部７および補間処理部８の動作により、時点ｔ１０から１ｓａ分（１２５μｓ）の間にピッチを検出し、補間データ２６を得ている。ピッチ・バッファＰＢ１〜５、ＣＰＵ構成の相関計算部５および相関バッファ６は、ピッチ・バッファ制御部１１と相関バッファ制御部１２の制御下におかれる。時点ｔ１０〜ｔ１２において存在すべきフレームが消失したと仮定すると、この消失したフレームを補間するべく、時点ｔ１０から１ｓａ分（１２５μｓ）の間に得た補間データ２６を出力することになる。
【００４５】
図３において実行される相関計算およびピッチ検出について、詳細に説明する。同図（ｂ）のピッチ・バッファＰＢ１には、音声のピッチを推定し、消失したフレーム区間（ｔ１０〜ｔ１２）の音声波形を抽出し推定するべく、消失した時点ｔ１０より前のｔｓ〜ｔ１０の３９０ｓａ（０〜３８９のサンプル）が格納されている。演算処理を分散するために、自己相関計算（ｔ３〜ｔ７）、および相互相関計算（ｔ６〜ｔ１０）は、データが入力されて、計算が可能となった時点で順次行う。
【００４６】
ピッチ・バッファＰＢ１が１１０ｓａを格納（記憶）した時点ｔ３から１６０ｓａ格納した時点ｔ７までの自己相関Ｓ（０）を求める。サンプル番号ｎの入力データをｘ（ｎ）とすると、ｎ＝１１０〜２６９のとき（図３（ｂ）ではサンプル番号０，１１０，２３０，２７０，３４９，３８９を表示している）、
Ｓ（０）＝Ｓ（０）＋ｘ（ｎ）２                            （１２）
を計算する。
【００４７】
サンプル番号ｎ＝２６９になると、自己相関Ｓ（０）が求まる。
つぎに、ｎ＝１１１を先頭とする１６０ｓａの自己相関Ｓ（１）を求める。これは、Ｓ（０）を用いて、ｎ＝２７０になったとき、
Ｓ（１）＝Ｓ（０）−ｘ（ｎ−１６０）２＋ｘ（ｎ）２          （１３）
で求められる。
【００４８】
以降、ｎ＝１９０を先頭とする時点ｔ９のｎ＝３４９までの１６０ｓａを用いて、ｔ７〜ｔ９の間に８０個（＝３４９−２６９）の自己相関Ｓ（ｉ）を求めることができる。自己相関Ｓ（ｉ）は、ｎ＝２７０〜３４９において、
ｉ＝ｎ−２６９として、
Ｓ（ｉ）＝Ｓ（ｉ−１）−ｘ（ｎ−１６０）２＋ｘ（ｎ）２      （１４）
【００４９】
相互相関Ｍ（ｉ）は、フレームが消失する直前の１６０ｓａ（ｔ６〜ｔ１０）すなわち、ｎ＝２３０を先頭にした１６０ｓａに対し、それぞれｉサンプル（ｓａ）前のデータを掛け合わせたものを、順次加算して求める。すなわち、ｔ６〜ｔ１０のｎ＝２３０〜３８９のデータに対し、たとえば、ｉ＝１２０のときは、同図（ｆ）のｎ−ｉ−ｋに１点鎖線の枠で示すｎ＝１１０〜２６９（ｔ３〜ｔ７）のデータを掛け合わせて加算する。
【００５０】
同図（ｄ）のｎ−ｋに１点鎖線の枠で示すｎ＝２３０〜３８９（ｔ６〜ｔ１０）のデータに対し、たとえば、ｉ＝４０のときは、同図（ｅ）のｎ−ｉ−ｋに１点鎖線の枠で示すｎ＝１９０〜３４９（ｔ５〜ｔ９）のデータを掛け合わせて加算する。
【００５１】
ｎ＝３８９のとき、ｉ＝４０〜１２０について、相互相関Ｍ（ｉ）は、
Ｍ（ｉ）＝Σｘ（ｎ−ｋ）・ｘ（ｎ−ｉ−ｋ）          （１５）
と表すことができる。ここに、Σは、ｋ＝０〜１５９としたときの累和を表している。
【００５２】
相互相関Ｍ（ｉ）は、ｎ＝２３０〜３８９のとき、ｉ＝４０〜１２０について、それぞれ、
Ｍ（ｉ）＝Ｍ（ｉ−１）＋ｘ（ｎ）・ｘ（ｎ−ｉ）        （１６）
を計算すれば、ｎ＝３８９のとき（ｔ１０）、８１個全ての相互相関Ｍ（ｉ）が求められる。
【００５３】
式（１２），（１４），（１６）によるデータ入力時の積和演算の回数は、以下のようになる。式（１２）の自己相関計算でＳ（０）にｘ（ｎ）２  を加算する計算を１回（＝１サイクル）行う。式（１４）の自己相関差分計算でＳ（ｉ−１）からｘ（ｎ−１６０）２  を減算する計算とｘ（ｎ）２  を加算する計算の２回（＝２サイクル）実行する。式（１６）の相互相関計算で８１個のｉ（＝４０〜１２０）についてＭ（ｉ−１）にｘ（ｎ）・ｘ（ｎ−ｉ）を加算するから８１回（＝８１サイクル）計算する。
【００５４】
図３の相互相関計算中の時点ｔ６〜ｔ１０の間には、自己相関計算の一部（ｔ６〜ｔ７）と自己相関差分計算（ｔ７〜ｔ９）が同時に並行して実行されるために、最大で８３回（＝８３サイクル）の積和計算を行う。さらに、式（８）の  ｛Ｓ（ｉ）｝１／２  を得るために式（１４）の結果の平方根を得る計算に１０サイクルを要するから、演算量は、８３＋１０＝９３サイクルとなる。
【００５５】
フレーム消失が時点ｔ１０において発生すると、すでに求めた相互相関Ｍ（ｉ）と自己相関の平方根｛Ｓ（ｉ）｝１／２  で除算する計算をして、式（８）の正規化相互相関  ｐｉｔｃｈ（ｉ）を求めて消失したフレームを補間する。フレーム消失が発生した時点ｔ１０において、必要とされる計算は、演算量削減のために２対１に間引いた信号で粗い探索を行う。
【００５６】
その後に、粗い探索で求めたピーク付近で詳細な探索をするならば、４１＋２＝４３回の除算で済むので、各除算に１０サイクルを要するから、その除算をするのに４３回×１０サイクル＝４３０サイクルとなる。これは、ＩＴＵ−Ｔ勧告の低演算量化提案をそのまま実行したときの４，９６４サイクルの１０％以下であるから、相関計算部５などを含むＣＰＵの負荷は極めて小さい。
【００５７】
以上の説明においては、ピッチ・バッファＰＢ１を代表例として述べたが、相互相関計算が終る時点ｔ１０において、丁度都合よく消失フレームが発生するとは限らない。そのために、ピッチ・バッファＰＢを５個用意して、いつ消失フレームが発生しても、いずれかのピッチ・バッファＰＢが図３に示した状態となっているようにしたので、ただちに対処できる。
【００５８】
図４には、図１に示した回路構成の構成要素であるピッチ・バッファのフレームに対する動作内容を説明するためのタイムチャートが示されている。同図（ａ）には、時点ｔ０〜ｔ１８までのフレームが示されている。同図（ｂ）〜（ｆ）には、それぞれピッチ・バッファＰＢ１〜５の動作が示されている。ここで、Ｓは自己相関計算、ＳＤは自己相関差分計算、Ｍは相互相関計算を表している。
【００５９】
フレーム消失の有無にかかわらず、入力される音声データ８０ｓａ（サンプル）を１フレームとするフレーム毎に対して、常時、自己相関計算と相互相関計算を実行するように対処しなければならない。ピッチ検出および補間のためには３９０ｓａ（サンプル）のデータを格納するピッチ・バッファＰＢがフレーム毎に必要である。
【００６０】
フレーム毎に時間的にずらして、５個のピッチ・バッファＰＢ１〜５で対応できるようにする。１つのピッチ・バッファＰＢは、１フレームの消失に対してだけ対応することができるのみである。そこでたとえば、フレーム周期が１０ｍｓ（８０サンプル）の場合は、フレーム消失直前の３９０サンプルを記憶するとして、３９０／８０＝４．９  となるから、５個のピッチ・バッファＰＢ１〜５を用意する。
【００６１】
ピッチ・バッファＰＢ１〜５には、順次入力されるフレーム毎の音声データをピッチ・バッファＰＢ１から順次に記憶する。すなわち、５個のピッチ・バッファＰＢ１〜５により、１フレームずつずらし、それぞれ５フレーム分の音声データが記憶されている。５フレーム期間が経過すると、最も古い音声データを記憶している、たとえば、ピッチ・バッファＰＢ１の記憶内容は、時点ｔ１０から１０ｓａ（サンプル）の時点で更新されて、最新の音声データを記憶することになる。１個のピッチ・バッファＰＢについて見ると、５フレーム期間の経過ごとに記憶されている音声データが更新されることになる。
【００６２】
ピッチ・バッファＰＢ１〜５に記憶しているサンプル（音声データ）から自己相関計算Ｓ，自己相関差分計算ＳＤおよび相互相関計算Ｍをして、音声データのピッチ検出をし、補間データを作成しておく作業を常時実行している。たとえば、時点ｔ１０でフレームの消失が発生すると、ピッチ・バッファＰＢ１のデータから演算して求めた補間データが使用される。同じく、時点ｔ１２，１４，１６，１８でフレームの消失が発生すると、それぞれ、ピッチ・バッファＰＢ２，３，４，５のデータによる補間データが使用される。
【００６３】
自己相関および相互相関を求めるために、相関バッファ６と相関計算部５が設けられ、相関バッファ制御部１２による制御がなされている。ＣＰＵ構成の相関計算部５における演算は、常時分散して実行されているために、その計算速度は遅いものでも、十分に対応できる。
【００６４】
フレーム消失が発生すると、ピッチ・バッファにおける音声データの更新は止められ、すでに検出された最新の音声データのピッチにより、消失したフレームを補間する。フレーム消失という異常な事態が発生した時点では、消失したフレームを補間するのに必要な補間データがすでに作成済みであるから、フレーム消失の発生時における演算量は、極めて小さく、消失フレームの補間処理が遅延して音声信号に不都合を生じてしまうこともない。
【００６５】
図５には、ピッチ・バッファＰＢ１〜５のデータがフレームに割当てられる様子を説明するためのタイムチャートが示されている。同図（ａ）には、時点ｔ０〜ｔ２４までのフレームの番号が示されている。同図（ｂ）〜（ｆ）には、それぞれピッチ・バッファＰＢ１〜５のフレーム対応動作が示されている。たとえば、（ｂ）のピッチ・バッファＰＢ１のｔ０〜ｔ１０のデータは、フレーム６（ｔ１０〜）でフレーム消失が発生したときに使用される。同じくピッチ・バッファＰＢ２のｔ２〜ｔ１２のデータは、フレーム７（ｔ１２〜）でフレーム消失が発生したときに使用される。以下、ピッチ・バッファＰＢ３〜５も同様である。
【００６６】
図６には、図５の時点ｔ１０〜ｔ１２のフレーム６でフレーム消失が発生したときのその後のピッチ・バッファＰＢ１〜５のデータがフレームに割当てられる様子を説明するためのタイムチャートが示されている。（ｂ）のピッチ・バッファＰＢ１のｔ０〜ｔ１０のデータは、フレーム６（ｔ１０〜）でフレーム消失が発生したときには、そのデータは、（ｂ）のピッチ・バッファＰＢ１においては、ｔ１０で更新されずに、消失フレームを補間する補間動作がｔ１２で終了してから更新される。
【００６７】
そのかわりに、時点ｔ１０から蓄積が開始されなければならないフレーム１１の消失に備えるデータは、（ｃ）のピッチ・バッファＰＢ２にｔ１０以後において蓄積される。そのために、ピッチ・バッファＰＢ１のｔ１２〜ｔ２２のデータは、フレーム１２（ｔ２２〜）が消失した場合のために、使用される。
【００６８】
フレーム６の消失に続いてフレーム７も消失した場合は、（ｂ）のピッチ・バッファＰＢ１においてフレーム６の消失に備えたデータ（ｔ０〜ｔ１２）で補間する。そこで、フレーム７の消失に備えてｔ１０まで蓄積した（ｃ）のピッチ・バッファＰＢ２のデータは不要になるので、ＰＢ２にはｔ１０〜ｔ２０においてフレーム１１が消失した場合に備えて、データ蓄積がなされる。
【００６９】
図７には、ピッチ・バッファ制御部１１に含まれた５個のレジスタからなるピッチ・バッファ・カウンタＰＢＣ１〜５の動作のタイムチャートが示されている。５個のピッチ・バッファ・カウンタＰＢＣ１〜５は、５個のピッチ・バッファＰＢ１〜５へのフレームの割り当てを制御するためのものである。各ピッチ・バッファ・カウンタＰＢＣは、３９０進（０〜３８９）のカウンタである。
【００７０】
同図（ｂ），（ｃ），（ｄ），（ｅ），（ｆ）のピッチ・バッファ・カウンタＰＢＣ１〜５のそれぞれは、ピッチ・バッファＰＢ１〜５へのフレームの割当てを制御している。（ｇ）の現フレーム用ピッチ・バッファ番号ＰＦＰＢＮｏは、たとえば、時点ｔ０現在のフレームに割当てたピッチ・バッファＰＢの番号が１（ＰＢ１）であることを示している。（ｈ）の次フレーム用ピッチ・バッファ番号ＮＦＰＢＮｏは、たとえば、時点ｔ０現在のフレームの次に割当てるピッチ・バッファＰＢの番号が２（ＰＢ２）であることを示している。以下も同様である。
【００７１】
図７のフレーム割当ての手順を具体的に説明する。たとえば、ピッチ・バッファ・カウンタＰＢＣ１が、時点ｔ８で３０９（＝３８９−８０）を示したとき、そのピッチ・バッファＰＢ１の番号１を（ｈ）の次フレーム用ピッチ・バッファ番号ＮＦＰＢＮｏの１として記録する。ピッチ・バッファ・カウンタＰＢＣ１が、時点ｔ１０で３８９を示したとき、そのピッチ・バッファＰＢ１の番号１を（ｇ）の現フレーム用ピッチ・バッファ番号ＮＦＰＢＮｏの１として記録する。
【００７２】
現フレームが正常フレームであれば、現フレーム用のピッチ・バッファＰＢのデータは不要となるので、これを５フレーム後の新フレームに割当てる。現フレームが消失フレームであれば、現フレーム用のピッチ・バッファＰＢのデータとしてすでに用意してある補間データにより、消失データを補間し、消失フレームが連続している間は、これを使用する。そのときには、次フレーム用ピッチ・バッファは不要となるので、これを新たなフレームに割当てる。
【００７３】
相関計算部５では、ピッチ・バッファＰＢ毎にピッチ・バッファ・カウンタＰＢＣのカウント値に応じて、相関計算を行っている。たとえば、ピッチ・バッファ・カウンタＰＢＣ１のカウント値が１１０〜２６９のときは（図３を参照）、）自己相関計算を行い、カウント値が２６９のときに自己相関結果の平方根を求める。
【００７４】
さらに、カウント値が２７０〜３４９のときには、自己相関差分計算を行い、それぞれ差分計算結果の平方根を求める。カウント値が２３０〜３８９のときには、相互相関計算を行う。その計算結果は、相関バッファ制御部１２が示す、相関バッファ６に含まれた相互相関バッファＭＣＢ１，２に格納する。
【００７５】
相関バッファ６は、ピッチ・バッファＰＢ毎に自己相関計算の途中経過を格納する５個の経過バッファＰＡＢ１〜５と、１フレームにつき８１個の自己相関計算結果を２フレーム分格納する自己相関バッファＳＣＢ１，２と、１フレームにつき８１個の相互相関計算結果を２フレーム分格納する相互相関バッファＭＣＢ１，２とで構成されている。
【００７６】
相関バッファ制御部１２は、相関計算結果を格納する相関バッファ６を制御している。経過バッファＰＡＢ１〜５は、それぞれピッチ・バッファＰＢ１〜５に対応して割当てられる。自己相関バッファＳＣＢ１，２は、それぞれ１フレーム分づつを格納できるから、１フレーム毎に交互に割当てられる。同様に、相互相関バッファＭＣＢ１，２も、それぞれ１フレーム分づつを格納できるから、１フレーム毎に交互に割当てられる。
【００７７】
図８には、相関バッファ６に含まれた経過バッファＰＡＢ１〜５の動作を説明するためのタイムチャートが示されている。同図（ａ）には、時点ｔ０〜ｔ２４のフレームの番号が示されている。同図（ｂ），（ｃ），（ｄ），（ｅ），（ｆ）の経過バッファＰＡＢ１〜５のそれぞれは、ピッチ・バッファＰＢ１〜５のいずれかと対応している。
【００７８】
たとえば、同図（ｃ）の経過バッファＰＡＢ２はｔ３〜ｔ９において、自己相関計算Ｓと自己相関差分計算ＳＤの間（図４のｔ３〜ｔ９）、１つのピッチ・バッファＰＢ１に割当てられ、６番目のフレーム（ｔ１０〜）の消失に備えていることを表している。同様に、同図（ｄ）の経過バッファＰＡＢ３はｔ５〜ｔ１１において、自己相関計算Ｓと自己相関差分計算ＳＤの間（図４のｔ５〜ｔ１１）、１つのピッチ・バッファＰＢ２に割当てられ、７番目のフレーム（ｔ１２〜）の消失に備えていることを表している。以下、同様である。
【００７９】
図９には、相関バッファ６に含まれた自己相関バッファＳＣＢ１，２と相互相関バッファＭＣＢ１，２の動作を図８と対応して説明するためのタイムチャートが示されている。同図（ａ）には、時点ｔ０〜ｔ２４のフレームの番号が示されている。同図（ｂ），（ｃ），（ｄ），（ｅ）の自己相関バッファＳＣＢ１，２と相互相関バッファＭＣＢ１，２の動作について、説明する。
【００８０】
同図（ｂ）の自己相関バッファＳＣＢ１は、時点ｔ１〜ｔ５（Ｓ）の間に求めた式（１２）のＳ（０）と、時点ｔ５〜ｔ７（ＳＤ）の間に求めた式（１４）のｉ＝１〜８０としたＳ（ｉ）とを相互相関計算Ｍの終了する時点ｔ８まで格納できればよい。同じく、（ｂ）の自己相関バッファＳＣＢ１は、時点ｔ５〜ｔ９（Ｓ）の間に求めた式（１２）のＳ（０）と、時点ｔ９〜ｔ１１（ＳＤ）の間に求めた式（１４）のｉ＝１〜８０としたＳ（ｉ）とを相互相関計算Ｍの終了する時点ｔ１２まで格納できればよい。
【００８１】
（ｃ）の相互相関バッファＭＣＢ１は、時点ｔ４〜ｔ８（Ｍ）の相互相関計算Ｍの式（１６）のｉ＝４０〜１２０としたＭ（ｉ）を格納して、時点ｔ８〜のフレーム番号５の消失に備える。同じく、（ｃ）の相互相関バッファＭＣＢ１は、時点ｔ８〜ｔ１２（Ｍ）の相互相関計算Ｍの式（１６）のｉ＝４０〜１２０としたＭ（ｉ）を格納して、時点ｔ１２〜のフレーム番号７の消失に備える。
【００８２】
同図（ｄ）の自己相関バッファＳＣＢ２は、時点ｔ３〜ｔ７（Ｓ）の間に求めた式（１２）のＳ（０）と、時点ｔ７〜ｔ９（ＳＤ）の間に求めた式（１４）のｉ＝１〜８０としたＳ（ｉ）とを相互相関計算Ｍの終了する時点ｔ１０まで格納できればよい。同じく、（ｄ）の自己相関バッファＳＣＢ２は、時点ｔ７〜ｔ１１（Ｓ）の間に求めた式（１２）のＳ（０）と、時点ｔ１１〜ｔ１３（ＳＤ）の間に求めた式（１４）のｉ＝１〜８０としたＳ（ｉ）とを相互相関計算Ｍの終了する時点ｔ１４まで格納できればよい。
【００８３】
（ｅ）の相互相関バッファＭＣＢ２は、時点ｔ６〜ｔ１０（Ｍ）の相互相関計算Ｍの式（１６）のｉ＝４０〜１２０としたＭ（ｉ）を格納して、時点ｔ１０〜のフレーム番号６の消失に備える。同じく、（ｅ）の相互相関バッファＭＣＢ２は、時点ｔ１０〜ｔ１４（Ｍ）の相互相関計算Ｍの式（１６）のｉ＝４０〜１２０としたＭ（ｉ）を格納して、時点ｔ１４のフレーム番号８の消失に備える。
【００８４】
かくして、Ｓ（ｉ）、Ｍ（ｉ）のそれぞれ８１個分の格納容量をもつ自己相関バッファＳＣＢ１と相互相関バッファＭＣＢ１のペア、および、Ｓ（ｉ）、Ｍ（ｉ）のそれぞれ８１個分の格納容量をもつ自己相関バッファＳＣＢ２と相互相関バッファＭＣＢ２のペアとで重複せずに、常時、計算結果を格納して、フレーム消失の事態に備えている。
【００８５】
図９（ａ）において、時点ｔ１０のフレーム６が消失したと仮定する。すると、フレーム消失検出部９はフレーム消失を検出して、フレーム消失信号１５を出力する。これを受けたピッチ検出部７は、直前のデータ、すなわち、同図（ｄ），（ｅ）の自己相関バッファＳＣＢ２と相互相関バッファＭＣＢ２のペアから、ｔ１０における格納データである相関計算結果（Ｓ（ｉ），Ｍ（ｉ））を読み出して、式（８）の正規化相互相関  ｐｉｔｃｈ（ｉ）を計算し、そのピーク値を示すｉを検出して、音声のピッチ周期を抽出する。
【００８６】
補間処理部８では、消失したフレーム番号６の消失に備えていたピッチ・バッファＰＢ１（図６（ｂ））のデータをピッチ・バッファ出力２１により読み出し、ピッチ検出部７で求めた音声のピッチ（周期）を用いて、補間データ２６を作成し、出力する。ピッチ検出および消失したフレームの補間方法は、ＩＴＵ−Ｔ勧告に従って実行される。
【００８７】
図９を用いて、演算量（サイクル数）を説明する。たとえば、時点ｔ７において入力された１ｓａ（サンプル）のデータｘ（ｎ）に対して式（１２）によるＳ（０）の計算を２回（＝２×１＝２サイクル）、式（１４）によるＳ（ｉ）の計算を１回（＝２サイクル）、式（１６）によるｉ＝４０〜１２０とした８１個のｘ（ｎ−ｉ）によるＭ（ｉ）の計算を２回（＝２×８１＝１６２サイクル）、平方根計算を１回（＝１０サイクル）の合計２＋２＋１６２＋１０＝１７６サイクルとなる。
【００８８】
以上の説明では、フレーム周期が１０ｍｓ（８０ｓａ）として例示したが、フレーム周期が１０ｍｓの整数倍である場合には、消失フレームに対して、１０ｍｓ周期のフレームが連続して発生したとみなすことにより、同様に処理できる。フレーム周期が１０ｍｓ以下の場合には、複数のフレームをまとめて１０ｍｓフレームとみなすことにより、同様に処理できる。このとき、まとめられた複数のフレームのうちの１つが消失した場合には、その１まとめのフレーム全体を消失フレームとみなして同様に処理する。
【００８９】
以上において説明した本発明では、常時、正規化相互相関計算を行うので、１つの入力されたデータに対して、１７６サイクルの演算量である。また、消失フレームの発生時の最初に行う正規化相互相関計算は４２回の除算（１回の除算は１０サイクル）の４２０サイクルである。すなわち、消失フレーム発生時には、最大でも１７６＋４２０＝５９６サイクルの演算量でよい。このように演算処理は平均化されて、ＣＰＵ負荷が軽減されている。
【００９０】
【発明の効果】
ＩＴＵ−Ｔ勧告に従って消失フレームを処理する場合には、消失区間の最初の１サンプル（１２５μｓ）の間にピッチ検出をしなければならないので、正規化相互相関計算のために、４，９６４サイクルの演算量が必要となる。相関計算部などを構成するＣＰＵの負荷は、その１サンプル（１２５μｓ）の間に集中してしまうために、極めて重いものとなっていた。
【００９１】
以上の説明から明らかなように、本発明では、フレーム消失発生の有無に関わらず、常時、正規化相互相関計算を分散して実行してフレーム消失発生に備えているために、相関計算部などを構成するＣＰＵの負荷は、極めて軽い。従来例においては、フレーム消失発生時直後において、１サンプル（１２５μｓ）の間に集中する演算量は、４，９６４サイクルであったのが、本発明によれば５９６サイクルとなり、性能の低い安価なＣＰＵを用いても十分処理できるから、本発明の効果は極めて大きい。
【図面の簡単な説明】
【図１】本発明の実施の形態を示す回路構成図である。
【図２】図１に示した回路構成の動作を従来例と対比して説明するためのタイムチャートである。
【図３】図１に示した回路構成の動作原理を説明するためのタイムチャートである。
【図４】図１に示した回路構成の構成要素であるピッチ・バッファの動作を説明するためのタイムチャートである。
【図５】図１に示した回路構成の構成要素であるピッチ・バッファのさらに詳細な動作を説明するためのタイムチャートである。
【図６】図４に示したタイムチャートにおいて、フレーム消失が発生した場合の動作を説明するためのタイムチャートである。
【図７】図１に示した回路構成の構成要素であるピッチ・バッファ制御部の動作を説明するためのタイムチャートである。
【図８】図１に示した回路構成の構成要素である相関バッファに含まれた経過バッファの動作を説明するためのタイムチャートである。
【図９】図１に示した回路構成の構成要素である相関バッファに含まれた自己相関バッファおよび相互相関バッファの動作を説明するためのタイムチャートである。
【図１０】従来例における補間処理動作を説明するためのタイムチャートである。
【符号の説明】
１  入力データ
２  出力データ
３  遅延データ
５  相関計算部
６  相関バッファ
７  ピッチ検出部
８  補間処理部
９  フレーム消失検出部
１０  出力バッファ
１１  ピッチ・バッファ制御部
１２  相関バッファ制御部
１５  フレーム消失信号
２１  ピッチ・バッファ出力
２２  相関入出力
２３  自己相関バッファ出力
２４  相互相関バッファ出力
２５  ピッチデータ
２６  補間データ
３０  スイッチ
３１  スイッチ信号
３２  ピッチ入力データ
ａ，ｂ  端子
ＤＬ  遅延器
Ｆ  フレーム
ｉ，ｋ  サンプル番号
Ｍ  相互相関計算
ＭＣＢ１，２  相互相関バッファ
ｎ  サンプル番号
ＮＦＰＢＮｏ  次フレーム用ピッチ・バッファ番号
ＰＡＢ１〜５  経過バッファ
ＰＢ１〜５  ピッチ・バッファ
ＰＢＣ１〜５  ピッチ・バッファ・カウンタ
ＰＦＰＢＮｏ  現フレーム用ピッチ・バッファ番号
Ｓ  自己相関計算
ｓａ  サンプル
ＳＣＢ１，２  自己相関バッファ
ＳＤ  自己相関差分計算
ＳＷ  切替スイッチ
ｔ１〜２４，３１〜３５  時点
ｔｓ  記憶開始時点
【図１】
2004239930.tif 000003
【図２】
2004239930.tif 000004
【図３】
2004239930.tif 000005
【図４】
2004239930.tif 000006
【図５】
2004239930.tif 000007
【図６】
2004239930.tif 000008
【図７】
2004239930.tif 000009
【図８】
2004239930.tif 000010
【図９】
2004239930.tif 000011
【図１０】
2004239930.tif 000012