(57)【特許請求の範囲】
【請求項１】
入力された音声信号のサンプリングレートを落とすダウンサンプリングの処理および伸長された音声信号のサンプリングレートを上げるアップサンプリングの処理を行うフィルタ回路と、
上記フィルタ回路においてダウンサンプリング処理された音声信号を圧縮する信号圧縮回路と、
上記信号圧縮回路において圧縮された音声信号を伸長し、上記フィルタ回路に出力する信号伸長回路と、
上記信号圧縮回路において音声信号を圧縮する速度と上記信号伸長回路において音声信号を伸長する速度とが異なる速度で上記信号圧縮回路と上記信号伸長回路とが同時に動作する場合において、上記フィルタ回路にダウンサンプリング処理をさせるかアップサンプリング処理をさせるかの切り替えの制御信号を生成し、上記フィルタ回路を動的にスケジューリングして時分割動作させる制御手段と、を備え、
前記フィルタ回路は、前記入力された音声信号及び前記アップサンプリングの処理を行う音声信号をバッファリングする一時記憶装置と、前記ダウンサンプリングおよび前記アップサンプリングの演算を行う乗加算回路と、前記ダウンサンプリングおよび前記アップサンプリングの演算において使用される乗算係数が格納される記憶装置とを有することを特徴とする音声圧縮伸長装置。
【請求項２】
上記制御手段は、上記信号圧縮回路よりダウンサンプリングおよび上記信号伸長回路よりアップサンプリング双方の要求がある場合に、あらかじめ設定された優先順位の高い方の処理を選択的に動作させるようにする要求調停手段を備えることを特徴とする請求項１に記載の音声圧縮伸長装置。
【請求項３】
上記制御手段は、上記信号圧縮回路よりダウンサンプリングおよび上記信号伸長回路よりアップサンプリング双方の要求がある場合に、以前に選択された状態に応じてそれと異なる方もしくはそれと同じ方の処理を選択的に動作させるようにする要求調停手段を備えることを特徴とする請求項１に記載の音声圧縮伸長装置。
【請求項４】
上記制御手段は、上記信号圧縮回路よりダウンサンプリングおよび上記信号伸長回路よりアップサンプリング双方の要求がある場合に、双方の処理比率が略１：１となるような乱数を発生することによりダウンサンプリングの処理又はアップサンプリングの処理をランダムに動作させるようにする要求調停手段を備えることを特徴とする請求項１に記載の音声圧縮伸長装置。
【請求項５】
上記制御手段は、上記信号圧縮回路よりダウンサンプリングおよび上記信号伸長回路よりアップサンプリング双方の要求がある場合に、上記一時記憶装置にバッファリングされている前記アップサンプリングの処理を行う音声信号が少ないときに前記アップサンプリングの処理を選択的に動作させるようにする要求調停手段を備えることを特徴とする請求項１に記載の音声圧縮伸長装置。
【請求項６】
入力された音声信号のサンプリングレートを落とすダウンサンプリングの処理および伸長された音声信号のサンプリングレートを上げるアップサンプリングの処理を行うフィルタ回路と、
上記フィルタ回路においてダウンサンプリング処理された音声信号を圧縮する信号圧縮回路と、
上記信号圧縮回路において圧縮された音声信号を伸長し、上記フィルタ回路に出力する信号伸長回路と、を備え、
前記フィルタ回路は、前記入力された音声信号及び前記アップサンプリングの処理を行う音声信号をバッファリングする一時記憶装置と、前記ダウンサンプリングおよび前記アップサンプリングの演算を行う乗加算回路と、前記ダウンサンプリングおよび前記アップサンプリングの演算において使用される乗算係数が格納される記憶装置とを有する音声圧縮伸長装置を制御するプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
上記信号圧縮回路において音声信号を圧縮する速度と上記信号伸長回路において音声信号を伸長する速度とが異なる速度で上記信号圧縮回路と上記信号伸長回路とが同時に動作する場合において、上記フィルタ回路にダウンサンプリング処理をさせるかアップサンプリング処理をさせるかの切り替えの制御信号を生成し、上記フィルタ回路を動的にスケジューリングして時分割動作させる制御手順をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は音声圧縮伸長装置および記録媒体に関し、特に、音声圧縮回路と音声伸長回路とが１つの装置内に備えられ、これらを同時に使用する音声圧縮伸長装置に用いて好適なものである。
【０００２】
【従来の技術】
従来、音声信号を伝送したり蓄積したりする場合に、伝送データ量の削減や、蓄積メディア（メモリ、テープ、ディスク等）への保存可能時間の長時間化を目的として、図５に示すように音声の圧縮、伸長が行われている。図５において、音声圧縮装置５１にて生成された音声圧縮信号が、図示しない伝送路を介して伝送されたり、図示しない蓄積メディアに蓄積されたりする。
【０００３】
例えばＰＨＳを考えた場合、図５の音声圧縮装置５１は送信側のＰＨＳ端末内にあり、音声伸長装置５２は受信側のＰＨＳ端末内にある。そして、送信側の音声圧縮装置５１で入力音声から生成された音声圧縮信号は、電話回線を通して伝送され、受信側の音声伸長装置５２で伸長され、再生音声として出力される。この例では音声圧縮装置５１と音声伸長装置５２とが別の端末に備えられているが、同一筐体内に備えられる場合もある。
【０００４】
例えば、ＤＲＡＭ等のメモリや磁気テープ、あるいはディスク等の記録媒体に音声信号を圧縮して記憶し、それを必要に応じて伸長して再生する機能を備えた音声再生装置あるいは音声記録再生装置等では、音声圧縮装置５１と音声伸長装置５２とが同じ筐体内に備えられる。
【０００５】
この場合において、図６に示すように、音声圧縮装置５１と音声伸長装置５２との間にバッファメモリ６１およびバッファメモリ制御装置６２を配置し、このバッファメモリ６１を用いることにより、音声信号の入出力レート（入出力速度）を一時的に変えることが可能なシステムを構成することもできる。このように構成した場合、音声圧縮装置５１と音声伸長装置５２は同時に使用される。
【０００６】
上述の音声圧縮・伸長の方式としては、ダウンサンプル／アップサンプルと信号圧縮／信号伸長との２種類の圧縮・伸長アルゴリズムを併用した方式がある。ダウンサンプル／アップサンプルの方式としては、ＱＭＦフィルタ（Quadrature Miller filterbank) の低周波数側のみを使用する方法がその一例として挙げられる。また、信号圧縮／信号伸長の方式としては、ＡＤＰＣＭ（Adaptive-Differential-Pulse Code Modulation ）圧縮方式が一例として挙げられる。
【０００７】
このＡＤＰＣＭによる圧縮方式は、波形をサンプリングするとき隣り合うサンプル値の差分を量子化する手法であるＤＰＣＭ（Differential-PCM）において、量子化のステップサイズ（スケーリング係数）を波形の振幅によって適応的に変える方式である。例えば、振幅の大きいところではステップサイズを大きくし、波形の変化に追従できるようにする。
【０００８】
図７は、ダウンサンプルと信号圧縮とを併用した方式の音声圧縮装置の構成例を示す図であり、図８は、アップサンプルと信号伸長とを併用した方式の音声伸長装置の構成例を示す図である。例えば、図７に示す音声圧縮装置において、サンプリングレートが４４．１ＫＨｚでデータ長が１サンプル当たり１６ビットのＰＣＭ音声信号PCM[j]（ｊは各サンプルポイントの番号を表す値）は、ダウンサンプル回路７１に入力され、サンプリングレートが４４．１ＫＨｚから半分の２２．０５ＫＨｚに落とされる。
【０００９】
上記ダウンサンプル回路７１でサンプリングレートを半分に落とされた音声信号は、信号圧縮装置７２で例えばＡＤＭＣＭ方式に従って圧縮され、１サンプル当たりのデータ長が１６ビットから半分の８ビットにされる。このようにして、サンプリングレートが２２．０５ＫＨｚでデータ長が１サンプル当たり８ビットの音声圧縮信号が生成され出力される。これにより、全体としてはデータ量が１／４に圧縮される。
【００１０】
また、図８に示す音声伸長装置では、図７に示した音声圧縮装置とは逆の処理を行っている。すなわち、入力された音声圧縮信号は、信号伸長装置８１で伸長処理が行われ、１サンプル当たりのデータ長が８ビットから１６ビットに戻される。そして、アップサンプル回路８２によりサンプリングレートが２２．０５ＫＨｚから４４．１ＫＨｚに戻され、元のＰＣＭ音声信号PCM[j]が再生音声として出力される。
【００１１】
以下に示す式（１）は、図７に示したダウンサンプル回路７１の動作を表すものであり、式（２−１）および式（２−２）は、図８に示したアップサンプル回路８２の動作を表すものである。
DSPCM[j]= ΣFilter[k]*PCM[2*j+k]        ……（１）
(k=0〜31)
PCM'[2*l]=ΣFilter[m*2]*DSPCM'[l+m]     ……（２−１）
(m=0〜15)
PCM'[2*l+1]=ΣFilter[m*2+1]*DSPCM'[l+m] ……（２−２）
(m=0〜15)
【００１２】
なお、上記の式（１）において、Filter[]はダウンサンプリングフィルタの係数を示し、PCM[] は入力されたＰＣＭ音声信号を示し、DSPCM[] はダウンサンプリングしたＰＣＭ音声信号を示している。また、式（２−１）および式（２−２）において、DSPCM'[]はダウンサンプリングしたＰＣＭ音声信号（ただし、信号圧縮装置７２、信号伸長装置８１で圧縮・伸長された後の値）を示し、Filter[]はアップサンプリングフィルタの係数を示し、PCM'[]は上記DSPCM'[]をアップサンプリングして生成されたＰＣＭ音声信号（再生音声）を示している。
【００１３】
図９は、上記PCM[] とDSPCM[] との位置関係を示す図である。この図９から明らかなように、PCM[] のインデックスが２つ進むごとにDSPCM[] の信号が１つずつ生成されており、データ量が１／２に圧縮されていることが分かる。また、１つのDSPCM[] を生成するために必要とするPCM[] の領域をオーバーラップさせることにより、元信号を複数の周波数帯域にきれいに分けて圧縮を行うことができるようになされている。
【００１４】
ダウンサンプル／アップサンプルの方式は、上述したＱＭＦフィルタを含む何れの方式を利用する場合でもフィルタとして解釈することが可能であるが、良好な圧縮結果を得るためには、周波数分解性能の良い方式を選択する必要がある。そのためには、そのフィルタの構成として、ある程度次数の高い方式（ここで言う次数とはデジタルフィルタにおけるタップ数で、元の信号いくつに対して結果を得るかということを表す）を採用することが必要である。また、乗算係数も比較的単純な係数ではなく、実数のような複雑な値になるため、加算器のみでの構成は困難であり、乗算係数を格納するためのＲＯＭと乗算器とが必要になる。
【００１５】
図１０は、式（１）のダウンサンプリングを実行するハードウェア構成を示す図である。図１０において、１０１は入力されたＰＣＭ音声信号PCM[j]を一時的にバッファリングするためのＲＡＭであり、１０２はダウンサンプリングフィルタの乗算係数Filter[k] を格納するためのＲＯＭである。乗加算回路１０３は、ＲＯＭ１０２内の乗算係数Filter[k] を用いて、ＲＡＭ１０１にバッファリングされたＰＣＭ音声信号PCM[j]に対して式（１）の演算を実行する。この演算は、制御信号生成回路１０４により生成される制御信号に基づいて行われる。
【００１６】
この場合、ＲＡＭ１０１およびＲＯＭ１０２のサイズは、両者共に式（１）のｋ＝０〜３１に対応して少なくとも３２ワード分である。
ところで、このＲＡＭ１０１の容量は、式（１）を以下の式（３）のように変形することで、１／２に削減できる。
tmp[2*j][0]= Filter[0]*PCM[2*j]+ Filter[1]*PCM[2*j+1] 、
tmp[2*j][n]= tmp[2*j-2][n-1]+ Filter[n*2]*PCM[2*j]+ Filter[n*2+1]*PCM[2*j+1]  (n=1〜15) ……（３）
なお、図１１に、tmp[][] の計算内容を示す。
【００１７】
すなわち、ＰＣＭ音声信号のある入力タイミング（図１１におけるＰＣＭのあるインデックス番号の処理時）において実際に使用する信号は、最大で１６個（オーバーラップする領域の個数が最大で１６個）であるので、実際のＲＡＭ容量はtmp[2*j][n] の[n] の分(n=0〜15) だけで良く、１６ワード分のみである。図１２は、この式（３）に従ってダウンサンプリングの処理を実行するためのハードウェア構成例を示す図である。
【００１８】
なお、この場合、入力ＰＣＭ音声信号が一個単位で送られてくると、ＲＡＭ１２１へのデータアクセス回数が図１０の場合に比べて２倍となるが、２個単位で処理することにより、図１０の場合と同じアクセス回数となり、データアクセス回数の増加による消費電力増加等のデメリットを回避することができる。
【００１９】
次に、上記式（２−１）および式（２―２）に従ってアップサンプルを実行するためのハードウェア構成例を、図１３に示す。図１３において、１３１は入力されたダウンサンプリング済みのＰＣＭ音声信号DSPCM'[j] を一時的にバッファリングするためのＲＡＭであり、１３２はアップサンプリングフィルタの乗算係数Filter[k] を格納するためのＲＯＭである。
【００２０】
乗加算回路１３３は、ＲＯＭ１３２内の乗算係数Filter[k] を用いて、ＲＡＭ１３１にバッファリングされたダウンサンプリング済みのＰＣＭ音声信号DSPCM'[j] に対して式（２−１）および式（２−２）の演算を実行する。この演算は、制御信号生成回路１３４により生成される制御信号に基づいて行われる。この図１３の通りにアップサンプル回路を実現した場合、ＲＡＭ１３１の容量はｍ＝０〜１５に対応して少なくとも１６ワード分、ＲＯＭ１３２の容量はｋ＝０〜３１に対応して少なくとも３２ワード分である。
【００２１】
【発明が解決しようとする課題】
以上の説明から分かるように、従来の音声圧縮伸長装置では、上記の音声圧縮装置と音声伸長装置とを同時に動作させる場合において、ダウンサンプル・アップサンプルの双方にＲＡＭ、ＲＯＭおよび乗算器が必要であった。このため、ハードウェア量が非常に多くなり、装置全体の回路規模が大きくなってしまうという問題があった。
【００２２】
本発明は、このような問題を解決するために成されたものであり、音声圧縮装置と音声伸長装置とを一つのハードウェアで実現し、必要とするハードウェア量を削減することによって装置の回路規模を小さくできるようにすることを目的とする。
【００２３】
【課題を解決するための手段】
本発明の音声圧縮伸長装置は、入力された音声信号のサンプリングレートを落とすダウンサンプリングの処理および伸長された音声信号のサンプリングレートを上げるアップサンプリングの処理を行うフィルタ回路と、上記フィルタ回路においてダウンサンプリング処理された音声信号を圧縮する信号圧縮回路と、上記信号圧縮回路において圧縮された音声信号を伸長し、上記フィルタ回路に出力する信号伸長回路と、上記信号圧縮回路において音声信号を圧縮する速度と上記信号伸長回路において音声信号を伸長する速度とが異なる速度で上記信号圧縮回路と上記信号伸長回路とが同時に動作する場合において、上記フィルタ回路にダウンサンプリング処理をさせるかアップサンプリング処理をさせるかの切り替えの制御信号を生成し、上記フィルタ回路を動的にスケジューリングして時分割動作させる制御手段と、を備え、前記フィルタ回路は、前記入力された音声信号及び前記アップサンプリングの処理を行う音声信号をバッファリングする一時記憶装置と、前記ダウンサンプリングおよび前記アップサンプリングの演算を行う乗加算回路と、前記ダウンサンプリングおよび前記アップサンプリングの演算において使用される乗算係数が格納される記憶装置とを有することを特徴とする。
【００２４】
上記制御手段は、上記信号圧縮回路よりダウンサンプリングおよび上記信号伸長回路よりアップサンプリング双方の要求がある場合に、あらかじめ設定された優先順位の高い方の処理を選択的に動作させるようにする要求調停手段を備えても良い。また、上記制御手段は、上記信号圧縮回路よりダウンサンプリングおよび上記信号伸長回路よりアップサンプリング双方の要求がある場合に、以前に選択された状態に応じてそれと異なる方もしくはそれと同じ方の処理を選択的に動作させるようにする要求調停手段を備えても良い。また、上記制御手段は、上記信号圧縮回路よりダウンサンプリングおよび上記信号伸長回路よりアップサンプリング双方の要求がある場合に、双方の処理比率が略１：１となるような乱数を発生することによりダウンサンプリングの処理又はアップサンプリングの処理をランダムに動作させるようにする要求調停手段を備えても良い。また、上記制御手段は、上記信号圧縮回路よりダウンサンプリングおよび上記信号伸長回路よりアップサンプリング双方の要求がある場合に、上記一時記憶装置にバッファリングされている前記アップサンプリングの処理を行う音声信号が少ないときに前記アップサンプリングの処理を選択的に動作させるようにする要求調停手段を備えても良い。
【００２５】
また、本発明のコンピュータ読み取り可能な記録媒体は、入力された音声信号のサンプリングレートを落とすダウンサンプリングの処理および伸長された音声信号のサンプリングレートを上げるアップサンプリングの処理を行うフィルタ回路と、上記フィルタ回路においてダウンサンプリング処理された音声信号を圧縮する信号圧縮回路と、上記信号圧縮回路において圧縮された音声信号を伸長し、上記フィルタ回路に出力する信号伸長回路と、を備え、前記フィルタ回路は、前記入力された音声信号及び前記アップサンプリングの処理を行う音声信号をバッファリングする一時記憶装置と、前記ダウンサンプリングおよび前記アップサンプリングの演算を行う乗加算回路と、前記ダウンサンプリングおよび前記アップサンプリングの演算において使用される乗算係数が格納される記憶装置とを有する音声圧縮伸長装置を制御するプログラムを記録したコンピュータ読み取り可能な記録媒体であって、上記信号圧縮回路において音声信号を圧縮する速度と上記信号伸長回路において音声信号を伸長する速度とが異なる速度で上記信号圧縮回路と上記信号伸長回路とが同時に動作する場合において、上記フィルタ回路にダウンサンプリング処理をさせるかアップサンプリング処理をさせるかの切り替えの制御信号を生成し、上記フィルタ回路を動的にスケジューリングして時分割動作させる制御手順をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００２７】
【発明の実施の形態】
以下、本発明の一実施形態を図面に基づいて説明する。
図１は、本発明による音声圧縮伸長装置の構成例を示す図である。図１において、１はフィルタ回路であり、上記の式（３）に示したダウンサンプリングの処理および式（２−１）および式（２−２）に示したアップサンプリングの処理を実行するものである。
【００２８】
すなわち、式（３）に従ってダウンサンプリングの処理を行うときは、入力ＰＣＭ音声信号のサンプリングレートを例えば４４．１ＫＨｚから半分の２２．０５ＫＨｚに落とす。一方、式（２−１）および式（２−２）に従ってアップサンプリングの処理を行うときは、伸長された音声信号のサンプリングレートを例えば２２．０５ＫＨｚから元の４４．１ＫＨｚに上げる。
【００２９】
従来例として述べた図１２のダウンサンプル回路と図１３のアップサンプル回路は、必要とするハードウェア資源がＲＡＭ、ＲＯＭ、乗算器と共通する部分が多い。また、ＲＯＭに格納しなくてはならないフィルタ係数値は、図１２と図１３の両者で同一である。そこで本実施形態では、これらで使用する回路をフィルタ回路１において共用もしくは統合することにより、全体のハードウェア規模を削減できるようにしている。
【００３０】
図２は、上記フィルタ回路１のハードウェア構成の一例を示す図である。図２において、６はＲＡＭであり、ダウンサンプリング時において、入力されたＰＣＭ音声信号PCM[] や式（３）に従って計算されたtmp[][] の値を一時的にバッファリングするとともに、アップサンプリング時において、入力されたダウンサンプリング済みのＰＣＭ音声信号DSPCM'[]を一時的にバッファリングする。
【００３１】
７はＲＯＭであり、ダウンサンプリングとアップサンプリングとで共通に使用されるフィルタの乗算係数Filter[k] を格納するためのものである。図４は、このＲＯＭ７に格納されるフィルタの乗算係数Filter[k] の形状の一例を示す図であり、以下に示す表１は、この図４の形状を実現するための乗算係数Filter[k] の値を示すものである。デジタルシステムでは、実際の値を２進数に変換したインデックス値index を用いる。
【００３２】
【表１】
0004128657.tif 000002
【００３３】
８は乗加算回路であり、ＲＯＭ７内の乗算係数Filter[k] を用いて、ＲＡＭ６にバッファリングされた音声信号に対して式（３）もしくは式（２−１）、（２−１）の演算を実行する。
これらのＲＡＭ６、ＲＯＭ７および乗加算回路８をダウンサンプリング用として用いるかアップサンプリング用として用いるかは、後述する制御信号生成回路５より与えられる制御信号に応じて切り替える。
【００３４】
再び図１に戻り、２は信号圧縮回路であり、上記フィルタ回路１によりダウンサンプリングされたＰＣＭ音声信号を、例えばＡＤＰＣＭ圧縮方式に従って圧縮する。例えば、上記フィルタ回路１でサンプリングレートを半分に落とされた音声信号の１サンプル当たりのデータ長を１６ビットから半分の８ビットに圧縮することにより、サンプリングレートが２２．０５ＫＨｚでデータ長が１サンプル当たり８ビットの音声圧縮信号を生成する。なお、圧縮方式はこのＡＤＰＣＭやＤＰＣＭには限定されない。
【００３５】
また、３は信号伸長回路であり、上記信号圧縮回路２と逆の処理を行うことにより、入力された音声圧縮信号を伸長する。すなわち、入力された音声圧縮信号の１サンプル当たりのデータ長を８ビットから１６ビットに変換する。音声伸長時においてフィルタ回路１は、信号伸長回路３より入力された音声信号のサンプリングレートを２２．０５ＫＨｚから４４．１ＫＨｚにアップサンプリングし、元のＰＣＭ音声信号を生成して再生音声として出力する。
【００３６】
このように、音声圧縮を行うときは、フィルタ回路１はダウンサンプル回路として動作し、データの流れは図１に水平の実線矢印で示した通りとなる。一方、音声伸長を行うときは、フィルタ回路１はアップサンプル回路として動作し、データの流れは図１に垂直の実線矢印で示した通りとなる。
【００３７】
４は制御回路であり、本実施形態による音声圧縮伸長装置の全体、つまりフィルタ回路１、信号圧縮回路２および信号伸長回路３の動作を制御する。この制御回路４は制御信号生成回路５を備えており、フィルタ回路１をダウンサンプリング用として用いるかアップサンプリング用として用いるかの切り替えを制御するための制御信号を生成する。
【００３８】
音声圧縮と音声伸長の動作速度が全く同じ場合、つまり音声の入力レートと出力レートとが全く同じ場合には、アップサンプリングとダウンサンプリングの処理比率は一定である。そのため、フィルタ回路１の動的な切り替えに関して完全に一定のスケジュールを組むことができる。本実施形態で示した例で言うと、２ＰＣＭ当たりに１回、式（３）と式（２−１）、式（２−２）の組みとを実行することになる。
【００３９】
しかしながら、図６に例示した装置のように、音声圧縮と音声伸長の相対速度が動的に変化する場合（例えば、入力音声のデータソースがＣＤ等のストレージであり、そのストレージから本実施形態の音声圧縮伸長装置へのデータ入力速度にジッタを含んでいる場合や、話速変換装置等のように音声の出力速度を加減する場合、もしくはこの２つの特徴を併せ持つ場合など）は、アップサンプリングとダウンサンプリングの処理比率は一定ではなくなる。この場合に制御回路４は、例えば、信号圧縮回路２および信号伸長回路３のそれぞれから入力される要求の順番に従って、フィルタ回路１の動作状態を切り替えるようにすることが可能である。
【００４０】
なお、本実施形態の音声圧縮伸長装置を図６のように構成する場合は、図１の信号圧縮回路２と信号伸長回路３との間に図示しないバッファメモリが設けられ、信号圧縮回路２から出力された音声圧縮信号がバッファメモリに一時格納された後、信号伸長回路３に入力されることになる。
【００４１】
以上説明したように、従来は別々に構成していた図１２のハードウェアと図１３のハードウェアとを統合（共用）してフィルタ回路１を構成すると、ＲＡＭの容量については、別々に構成した場合には各々１６ワードのＲＡＭが２つ必要であったのに対して、統合した場合には３２ワードのＲＡＭが１つで済む。合計のＲＡＭ容量は変わらないが、本実施形態によれば、小容量のメモリを２つ設ける必要がなく、中容量のメモリを１つだけ設ければ良いので、デコード回路内のメモリに必要な面積が減るというメリットがある。
【００４２】
また、ＲＯＭの容量については、別々に構成した場合には各々３２ワードのＲＯＭが２つ必要であったのに対して、統合した場合には３２ワードのＲＯＭが１つで済む。これにより、ＲＯＭのハードウェア量を１／２に削減することができる。さらに、乗算器については、別々に構成した場合には各々に必要であったのに対して、統合した場合には１つで済む。これにより、乗算器のハードウェア量も１／２に削減することができる。
【００４３】
ダウンサンプル回路とアップサンプル回路の両者を共用・統合することにより、制御回路４は複雑になり、単位時間当たりに必要とする処理能力も両者の和の分だけ必要となるが、ハードウェア量の削減は生産コストに直結するため、その利点は上述の欠点を補ってあまりあるものである。
【００４４】
なお、以上の実施形態において、制御信号生成回路５は、ダウンサンプリングおよびアップサンプリングの要求順序に従ってフィルタ回路１の動作を動的に切り替えることについて述べた。ところが、ダウンサンプリング要求が続く場合には、アップサンプリングを用いた音声伸長処理が行われず、再生音声が途切れてしまうという不都合が発生する場合がある。そこで、以下に、フィルタ回路１の動的なスケジューリング方法についての他の例を示す。
【００４５】
図３は、制御信号生成回路５の構成例を示す図である。図３において、１１は調停回路であり、信号圧縮回路２および信号伸長回路３より制御回路４を介してダウンサンプリング要求１６およびアップサンプリング要求１７の双方の要求が与えられる場合に、どちらの要求に応えるかを調停するためのものである。この調停方法としては、例えば以下に述べるような処理方法が考えられる。
【００４６】
▲１▼あらかじめ優先順位を設定し、優先順位の高い方を選択する。例えば、現在音声を再生しているシステムの場合は、この方式を使用してアップサンプリングを優先的に選択するようにすることにより、再生音声の中断を防止することができる。
【００４７】
▲２▼以前に選択された状態を保存しておき、それと異なる方もしくはそれと同じ方を選択する。すなわち、調停回路１１において、同じ要求が所定回数続いて来ているかどうかを判断し、続いていれば前回と異なる方の要求を選択し、続いていなければ前回と同じ方の要求を選択するようにする。このようにすることにより、ダウンサンプリングとアップサンプリングとをできるだけ均等に選択することができ、再生音声の中断を極力防止することができる。
【００４８】
▲３▼乱数回路等を使用してランダムに選択するようにする。ここで、ダウンサンプリングを選択する場合とアップサンプリングを選択する場合との比率が同じになるような疑似乱数を発生させることにより、上記▲２▼の方法のように以前の選択状態を保持しなくても、ダウンサンプリングとアップサンプリングとの処理比率としてできるだけ１：１に近いものを実現することができ、再生音声の中断を極力防止することができる。
【００４９】
▲４▼ＲＡＭ６にバッファリングされている音声信号の残り状態を見て選択するようにする。すなわち、ＲＡＭ６にバッファリングされている音声伸長信号DSPCM'の残りが少なくなったときに、アップサンプリングを行わずにダウンサンプリングを行って音声圧縮を行うと、再生音声が途切れてしまう恐れがある。よってこの場合は、アップサンプリングを優先的に行うように選択する。
【００５０】
次いで、１２は制御信号生成回路５の内部状態を格納するためのフリップフロップであり、２ビットの状態レジスタ１３と、４ビットのカウンタ１４とを備える。上記状態レジスタ１３は、フィルタ回路１の動作状態（ダウンサンプリング状態、アップサンプリング状態、未動作状態の何れか）を情報として格納するものである。また、カウンタ１４は、各状態における処理の長さをカウントするものである。
【００５１】
上述したように、本実施形態で示すアップサンプリングおよびダウンサンプリングの式は、処理の１単位が１６ステップであり、ダウンサンプリングの式（３）ではこの“処理の１単位”を２回まとめて実施しており、アップサンプリングの式（２−１）および式（２−２）では、各々“処理の１単位”を１回ずつ実施している。
【００５２】
フィルタ回路１の動作を設計する上で、全体の動作が上記の“処理の１単位”もしくはそれの複数単位で周期的に動作するように設計することは、ハードウェア量の削減、設計の簡易化の双方でメリットがある。フィルタ回路１の動的なスケジューリングを行う場合においても、この“処理の１単位”毎に処理を行うことは有効であり、図３はこの方法について説明している。
【００５３】
すなわち、状態レジスタ１３の値が“00”の場合はアイドル状態（未動作状態）を示し、“01”の場合はアップサンプリング状態を示し、“10”の場合はダウンサンプリングの前半状態を示し、“11”の場合はダウンサンプリングの後半状態を示している。この状態レジスタ１３の値は、カウンタ１４の値が“15”となった次のサイクルにおいて、調停回路１１での調停結果に応じて変更される。
【００５４】
つまり、ダウンサンプリング、アップサンプリング双方の要求がない場合は、状態レジスタ１３の値は“00”に変更される。また、ダウンサンプリング要求、アップサンプリング要求の一方のみが立っている場合は、その要求に合わせて状態レジスタ１３の値は“01”または“10”の何れかとなる。また、ダウンサンプリング、アップサンプリング双方の要求がある場合には、上記した▲１▼〜▲４▼の何れかの処理方法により調停された結果に応じて、状態レジスタ１３の値は“01”または“10”の何れかとなる。また、状態レジスタ１３の値が“10”であった場合は、状態レジスタ１３の値は次のサイクルでは無条件で“11”に変更される。
【００５５】
なお、この“処理の１単位”の長さは、本実施形態に示すフィルタ回路１を使用した場合の例であり、他のフィルタを使用した場合には、長さが変わったり、場合によってはこのような区切りの良い長さが無い場合もある。
【００５６】
次いで、１５はランダムゲートであり、上述したフリップフロップ１２の値（状態レジスタ１３およびカウンタ１４の値）から、フィルタ回路１の動作状態を選択するための実際の制御信号を生成し、出力する。フィルタ回路１がこの制御信号に従って動作することにより、１つのフィルタ回路１をダウンサンプリングとアップサンプリングとで共用することができる。
【００５７】
なお、この図３に示した各ブロックは、本実施形態においてはハード的に構成しているが、ＣＰＵ、ＲＯＭおよびＲＡＭ等からなるマイクロコンピュータシステムによって構成し、その動作をＲＯＭやＲＡＭに格納された作業プログラムに従って実現するようにしても良い。
【００５８】
この場合、上記作業プログラム自体が上述した実施形態の機能を実現することになり、そのプログラム自体、およびそのプログラムをコンピュータに供給するための手段、例えばかかるプログラムを格納した記録媒体は本発明を構成する。かかるプログラムを記憶する記録媒体としては、上記ＲＯＭやＲＡＭの他に、例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｉ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ、ｚｉｐ、磁気テープ、あるいは不揮発性のメモリカード等を用いることができる。
【００５９】
以上の実施形態では、フィルタ回路１内の乗算器をダウンサンプリング用とアップサンプリング用に用いているが、フィルタ形状の特徴を利用して乗算器を他の用途に使用することも可能である。図４および表１に示した通り、フィルタの値はindex= 0,1,5,9,13,17,21,25,29 で０である。フィルタの値が０の場合は、乗算結果は当然０になる。よって、乗加算を行う場合に、乗算結果が０であるので乗加算の結果は加算器に入れられた値のままとなる。
【００６０】
そこで、フィルタの値が０の場合は加算器をバイパスさせる制御信号を出力するための制御回路を設けることにより、この値を乗算するサイクルでは乗算器は未使用状態となり、他の用途で使用することが可能とある。例えば、信号圧縮回路２における信号圧縮の処理に乗算器を使用することができる。特に、index=1,5,9,13,17,21,25,29については、周期的にフィルタの値が０となっているため、制御回路が比較的容易に設計できる。
【００６１】
【発明の効果】
本発明は上述したように、入力された音声信号のサンプリングレートを落とすダウンサンプリングの処理および伸長された音声信号のサンプリングレートを上げるアップサンプリングの処理を行うフィルタ回路を備え、フィルタ回路は、入力された音声信号及びアップサンプリングの処理を行う音声信号をバッファリングする一時記憶装置と、ダウンサンプリングおよびアップサンプリングの演算を行う乗加算回路と、ダウンサンプリングおよびアップサンプリングの演算において使用される乗算係数が格納される記憶装置とを有しているので、音声圧縮と音声伸長とで必要とするハードウェア量を削減することができ、全体の回路規模を小さくすることができる。
【００６２】
また、本発明の他の特徴によれば、信号圧縮回路において音声信号を圧縮する速度と信号伸長回路において音声信号を伸長する速度とが異なる速度で上記信号圧縮回路と上記信号伸長回路とが同時に動作する場合において、フィルタ回路にダウンサンプリング処理をさせるかアップサンプリング処理をさせるかの切り替えの制御信号を生成し、フィルタ回路を動的にスケジューリングして時分割動作させる制御手段を備えているので、フィルタ回路を信号圧縮回路および信号伸長回路の動作速度に合わせて適切に使い回すことができ、伸長されて出力される音声が途切れてしまうという不都合も防止することができる。
【図面の簡単な説明】
【図１】本発明による音声圧縮伸長装置の一実施形態を示す図である。
【図２】図１に示したフィルタ回路の構成例を示す図である。
【図３】図１に示した制御信号生成回路の構成例を示す図である。
【図４】ＲＯＭに格納されるフィルタ係数の形状の例を示す図である。
【図５】従来の音声圧縮伸長装置の構成例を示す図である。
【図６】従来の音声圧縮伸長装置の他の構成例を示す図である。
【図７】従来の音声圧縮装置の構成例を示す図である。
【図８】従来の音声伸長装置の構成例を示す図である。
【図９】ＰＣＭとＤＳＰＣＭとの位置関係を示す図である。
【図１０】従来のダウンサンプル回路の構成例を示す図である。
【図１１】  tmp[][] の計算内容を示す図である。
【図１２】従来のダウンサンプル回路の他の構成例を示す図である。
【図１３】従来のアップサンプル回路の構成例を示す図である。
【符号の説明】
１  フィルタ回路
２  信号圧縮回路
３  信号伸長回路
４  制御回路
５  制御信号生成回路
６  ＲＡＭ
７  ＲＯＭ
８  乗加算回路
１１  調停回路
１２  フリップフロップ
１３  状態レジスタ
１４  カウンタ
１５  ランダムゲート
１６  ダウンサンプリング要求
１７  アップサンプリング要求
【図１】
0004128657.tif 000003
【図２】
0004128657.tif 000004
【図３】
0004128657.tif 000005
【図４】
0004128657.tif 000006
【図５】
0004128657.tif 000007
【図６】
0004128657.tif 000008
【図７】
0004128657.tif 000009
【図８】
0004128657.tif 000010
【図９】
0004128657.tif 000011
【図１０】
0004128657.tif 000012
【図１１】
0004128657.tif 000013
【図１２】
0004128657.tif 000014
【図１３】
0004128657.tif 000015