(57)【要約】【課題】  サンプリング周波数変換のレイテンシ、変換後のデータの周波数ゆらぎを低減する。【解決手段】  １／Ｌダウンサンプラ３は、前段からのデータを記憶し、ライト要求信号に応じて最新の所定個数の記憶データからライト要求信号発生時のデータを補間演算し、ＦＩＦＯ４に送る。ＦＩＦＯ４は、ライト要求信号に応じて１／Ｌダウンサンプラ３からのデータを記憶し、リード要求信号に応じて記憶データを古いものから順に読み出す。ライト速度調整回路６は、周波数制御情報に応じた時間密度でライト要求信号を発生し、１／Ｌダウンサンプラ３に補間演算を実行させ、結果をＦＩＦＯ４に記憶させる。速度補正用ポインタ８は、ライト要求信号により増加され、リード要求信号により減少される。ライト速度調整回路６は、速度補正用ポインタ８に基づいて周波数制御情報を補正する。【選択図】図１
2012049954.tif 000002
【特許請求の範囲】
【請求項１】
ライト要求信号に応じて、新たに入力されるデータを記憶し、リード要求信号に応じて、記憶したデータを古いものから順に読み出して出力するバッファと、
順次与えられるデータを記憶し、ライト要求信号が発生することにより、その時点までに記憶した最新の所定個数のデータからライト要求信号発生タイミングに対応したデータを算出する補間演算を行い、補間演算結果であるデータを前記バッファに供給する補間手段と、
周波数制御情報に応じた時間密度でライト要求信号を発生し、前記補間手段に補間演算を実行させ、前記補間手段から出力されるデータを前記バッファに記憶させるライト速度調整手段と、
前記ライト要求信号の発生によりポインタ値を増加させ、前記リード要求信号の発生によりポインタ値を減少させる速度補正用ポインタと、
前記速度補正用ポインタのポインタ値に基づいて前記周波数制御情報を補正する周波数制御手段と
を具備することを特徴とするサンプリング周波数変換装置。
【請求項２】
ライト要求信号に応じて、新たに入力されるデータを記憶し、リード要求信号に応じて、記憶したデータを古いものから順に読み出して出力するバッファと、
順次与えられるデータを記憶し、リード要求信号が発生することにより、前記バッファから出力されたデータを取り込んで記憶し、その時点までに記憶した最新の所定個数のデータからリード要求信号発生タイミングに対応したデータを算出する補間演算を行い、補間演算結果であるデータを出力する補間手段と、
周波数制御情報に応じた時間密度でリード要求信号を発生し、前記バッファから前記補間手段にデータを出力させ、前記補間手段に補間演算を実行させるリード速度調整手段と、
前記ライト要求信号の発生によりポインタ値を増加させ、前記リード要求信号の発生によりポインタ値を減少させる速度補正用ポインタと、
前記速度補正用ポインタのポインタ値に基づいて前記周波数制御情報を補正する周波数制御手段と
を具備することを特徴とするサンプリング周波数変換装置。
【請求項３】
前記周波数制御手段は、前記速度補正用ポインタのポインタ値を前記周波数制御情報を増減するための補正量に変換する変換手段であって、前記ポインタ値の変化に対する前記補正量の変化の勾配が基準値近傍において小さく、基準値から離れるに従って大きくなる非線形変換を行う変換手段を具備することを特徴とする請求項１または２に記載のサンプリング周波数変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、デジタルオーディオ機器などに好適なサンプリング周波数変換装置に関する。
【背景技術】
【０００２】
この種のサンプリング周波数変換装置として、サンプリング周波数変換後のデータをＦＩＦＯ（First
In First Out；先入れ先出し方式のバッファ）を介して後段の装置に引き渡す構成のもの、あるいはサンプリング周波数変換前のデータをＦＩＦＯを介して前段の装置から取り込むものがある。図７は前者のサンプリング周波数変換装置の構成例を示すブロック図、図８は後者のサンプリング周波数変換装置の構成例を示すブロック図である。
【０００３】
図７に示すサンプリング周波数変換装置において、補間器１０１は、前段の装置から順次与えられるデータを記憶し、ライト要求信号が発生することにより、その時点までに記憶した最新の所定個数のデータからライト要求信号発生タイミングに対応したデータを算出する補間演算を行い、補間演算結果であるデータをＦＩＦＯ１０２に供給する回路である。ＦＩＦＯ１０２は、ライト要求信号に応じて、補間器１０１から新たに入力されるデータを記憶し、後段の装置からのリード要求信号に応じて、記憶したデータを古いものから順に読み出して出力するバッファである。制御部１０３は、周波数制御情報に応じた時間密度でライト要求信号を発生し、補間器１０１に補間演算を実行させ、補間器１０１から出力されるデータをＦＩＦＯ１０２に記憶させる回路である。
【０００４】
そして、制御部１０３は、ＦＩＦＯ１０２において、補間器１０１から受け取って記憶し、未だ後段の装置に出力していない読み出し未了のデータの個数である有効データ数を監視し、この有効データ数に基づいて周波数制御情報の補正を行う。さらに詳述すると、ＦＩＦＯ１０２へのデータのライト速度がＦＩＦＯ１０２からのデータのリード速度よりも大きくなって有効データ数が所定の基準値よりも増加すると、図９に示すように、周波数制御情報を減少させる負の補正量を発生し、ＦＩＦＯ１０２へのライト速度を低下させる。逆にＦＩＦＯ１０２へのデータのライト速度がＦＩＦＯ１０２からのデータのリード速度よりも小さくなって有効データ数が所定の基準値よりも減少すると、図９に示すように、周波数制御情報を増加させる正の補正量を発生し、ＦＩＦＯ１０２へのライト速度を上昇させる。図７に示すサンプリング周波数変換装置では、このような制御によりライト速度をリード速度に追従させた状態でサンプリング周波数の変換が行われる。なお、このようなサンプリング周波数変換装置は例えば特許文献１に開示されている。
【０００５】
図８に示すサンプリング周波数変換装置において、ＦＩＦＯ１０４は、ライト要求信号に応じて、前段の装置から新たに入力されるデータを記憶し、リード要求信号に応じて、記憶したデータを古いものから順に読み出して補間器１０５に出力する。補間器１０５は、リード要求信号が発生することにより、ＦＩＦＯ１０４から出力されたデータを取り込んで記憶し、その時点までに記憶した最新の所定個数のデータからリード要求信号発生タイミングに対応したデータを算出する補間演算を行い、補間演算結果であるデータを後段の装置に出力する。制御部１０６は、周波数制御情報に応じた時間密度でリード要求信号を発生し、ＦＩＦＯ１０４から補間器１０５にデータを出力させ、補間器１０５に補間演算を実行させる。
【０００６】
そして、制御部１０６は、ＦＩＦＯ１０４において、前段の装置から受け取って記憶し、未だ補間器１０５に出力していない読み出し未了のデータの個数である有効データ数を監視し、この有効データ数に基づいて周波数制御情報の補正を行う。さらに詳述すると、ＦＩＦＯ１０４からのリード速度がＦＩＦＯ１０４へのライト速度よりも小さくなって有効データ数が所定の基準値よりも増加すると、周波数制御情報を増加させる正の補正量を発生し、ＦＩＦＯ１０４からのリード速度を上昇させる。逆にＦＩＦＯ１０４からのリード速度がＦＩＦＯ１０２へのライト速度よりも大きくなって有効データ数が所定の基準値よりも減少すると、周波数制御情報を減少させる負の補正量を発生し、ＦＩＦＯ１０２からのリード速度を低下させる。図８に示すサンプリング周波数変換装置では、このような制御によりリード速度をライト速度に追従させた状態でサンプリング周波数の変換が行われる。なお、このようなサンプリング周波数変換装置は例えば特許文献２に開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−２７９１０６号公報
【特許文献２】特開２００６−２３８０４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、例えば図７に示すサンプリング周波数変換装置において、ＦＩＦＯ１０２におけるライト速度がリード速度から大きく離れ、有効データ数が基準値から大きく離れている場合には、図９に示すように、絶対値の大きな補正量を発生し、ライト速度をリード速度に迅速に近づける制御を行う必要がある。一方、ＦＩＦＯ１０２におけるライト速度がリード速度に接近しており、有効データ数が基準値に近い領域では、有効データ数の基準値からの変化に対する補正量の変化の勾配を大きくすることは好ましくない。何故ならば、この勾配が大きいと、有効データ数の基準値からのずれに対する周波数制御情報の変化が大きくなり、ライト要求信号の周波数が不安定になり、サンプリング周波数変換後のデータに周波数ゆらぎが生じるからである。従って、有効データ数が基準値に近い領域では、図９に示すように、有効データ数の変化に対する補正量の変化の勾配を小さくする必要がある。以上のような次第であるから、ライト速度をリード速度に追従させ、かつ、サンプリング周波数変換後のデータの周波数ゆらぎを少なくするためには、有効データ数の増減範囲、すなわち、ＦＩＦＯ１０２の段数を大きくする必要がある。この点は図８に示すサンプリング周波数変換装置に関しても同様である。しかしながら、図７に示すサンプリング周波数変換装置では、補間器１０１によりサンプリング周波数変換されたデータはＦＩＦＯ１０２を通過して後段の装置に送られ、図８に示すサンプリング周波数変換装置では、サンプリング周波数変換前のデータは前段の装置からＦＩＦＯ１０４を通過して補間器１０５に送られる。このため、周波数ゆらぎを減らすためにＦＩＦＯ１０２または１０４の段数を大きくすると、サンプリング周波数変換前のデータを前段の装置が出力してからサンプリング周波数変換後のデータが後段の装置に供給されるまでのレイテンシが大きくなるという問題があった。
【０００９】
本発明は以上説明した事情に鑑みてなされたものであり、サンプリング周波数変換後のデータの周波数ゆらぎを低く抑え、かつ、サンプリング周波数変換のレイテンシを低減することができるサンプリング周波数変換装置を提供することを目的としている。
【課題を解決するための手段】
【００１０】
好ましい態様において、この発明によるサンプリング周波数変換装置は、ライト要求信号に応じて、新たに入力されるデータを記憶し、リード要求信号に応じて、記憶したデータを古いものから順に読み出して出力するバッファと、順次与えられるデータを記憶し、ライト要求信号が発生することにより、その時点までに記憶した最新の所定個数のデータからライト要求信号発生タイミングに対応したデータを算出する補間演算を行い、補間演算結果であるデータを前記バッファに供給する補間手段と、周波数制御情報に応じた時間密度でライト要求信号を発生し、前記補間手段に補間演算を実行させ、前記補間手段から出力されるデータを前記バッファに記憶させるライト速度調整手段と、前記ライト要求信号の発生によりポインタ値を増加させ、前記リード要求信号の発生によりポインタ値を減少させる速度補正用ポインタと、前記速度補正用ポインタのポインタ値に基づいて前記周波数制御情報を補正する周波数制御手段とを具備することを特徴とする。
【００１１】
この態様によれば、速度補正用ポインタのポインタ値の増減に応じて周波数制御情報が補正され、ライト速度をリード速度に追従させる制御が行われる。従って、バッファの段数を増やさなくても、速度補正用ポインタのポインタ値の増減に応じて、広範囲のライト速度の調整およびリード速度近傍でのライト速度の微調整を行うことができる。従って、サンプリング周波数変換のレイテンシを大きくすることなく、サンプリング周波数変換後のデータの周波数ゆらぎを低減することができる。
【００１２】
他の好ましい態様において、この発明によるサンプリング周波数変換装置は、ライト要求信号に応じて、新たに入力されるデータを記憶し、リード要求信号に応じて、記憶したデータを古いものから順に読み出して出力するバッファと、順次与えられるデータを記憶し、リード要求信号が発生することにより、前記バッファから出力されたデータを取り込んで記憶し、その時点までに記憶した最新の所定個数のデータからリード要求信号発生タイミングに対応したデータを算出する補間演算を行い、補間演算結果であるデータを出力する補間手段と、周波数制御情報に応じた時間密度でリード要求信号を発生し、前記バッファから前記補間手段にデータを出力させ、前記補間手段に補間演算を実行させるリード速度調整手段と、前記ライト要求信号の発生によりポインタ値を増加させ、前記リード要求信号の発生によりポインタ値を減少させる速度補正用ポインタと、前記速度補正用ポインタのポインタ値に基づいて前記周波数制御情報を補正する周波数制御手段とを具備することを特徴とする。
【００１３】
この態様によれば、速度補正用ポインタのポインタ値の増減に応じて周波数制御情報が補正され、リード速度をライト速度に追従させる制御が行われる。従って、バッファの段数を増やさなくても、速度補正用ポインタのポインタ値の増減に応じて、広範囲のリード速度の調整およびライト速度近傍でのリード速度の微調整を行うことができる。従って、サンプリング周波数変換のレイテンシを大きくすることなく、サンプリング周波数変換後のデータの周波数ゆらぎを低減することができる。
【図面の簡単な説明】
【００１４】
【図１】この発明の第１実施形態であるサンプリング周波数変換装置の構成を示すブロック図である。
【図２】同実施形態における１／Ｌ倍ダウンサンプラの詳細な構成を示すブロック図である。
【図３】同実施形態におけるライト速度調整回路の詳細な構成を示すブロック図である。
【図４】同実施形態におけるΔＴテーブルの内容を示す図である。
【図５】同実施形態におけるライト要求信号発生部の動作を示すタイムチャートである。
【図６】この発明の第２実施形態であるサンプリング周波数変換装置の構成を示すブロック図である。
【図７】従来のサンプリング周波数変換装置の構成例を示すブロック図である。
【図８】従来のサンプリング周波数変換装置の他の構成例を示すブロック図である。
【図９】従来のサンプリング周波数変換装置における有効データ数と補正量との関係を例示する図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照し、この発明の一実施形態について説明する。
＜第１実施形態＞
図１は、この発明の第１実施形態であるサンプリング周波数変換装置の構成を示すブロック図である。図１において、エイリアシング除去用ＬＰＦ１は、サンプリング周波数変換の過程において折り返し雑音が発生するのを防止するためのＬＰＦ処理を入力音声データに対して施す回路である。本実施形態に係るサンプリング周波数変換装置は、４８ｋＨｚの第１のサンプリング周波数の入力音声データを受け取り、これを８ｋＨｚ〜４８ｋＨｚまでの間の９種類のサンプリング周波数の中から選択された第２のサンプリング周波数の音声データに変換して出力する。エイリアシング除去用ＬＰＦ１は、この選択された第２のサンプリング周波数の１／２をカットオフ周波数とし、入力音声データからカットオフ周波数以上の成分を除去する。
【００１６】
８倍アップサンプラ２は、エイリアシング除去用ＬＰＦ１から出力される第１のサンプリング周波数の音声データの８倍アップサンプリングを行い、３８４ｋＨｚのサンプリング周波数の音声データとして出力する回路である。１／Ｌ倍ダウンサンプラ３は、８倍アップサンプラ２から出力される３８４ｋＨｚのサンプリング周波数の音声データに対し、直線補間を利用して１／Ｌ倍のダウンサンプリングを施し、第２のサンプリング周波数の音声データを出力する回路である。何倍のダウンサンプルを行うかは、選択された第２のサンプリング周波数に応じて決定される。
【００１７】
ＦＩＦＯ４は、１／Ｌ倍ダウンサンプラ３から出力される第２のサンプリング周波数の音声データを蓄積し、ＦＩＦＯリード要求信号に応じて、蓄積した音声データを古いものから順に出力する先入れ先出し方式のバッファである。シリアルインタフェース５は、後段の装置に第２のサンプリング周波数の音声データを供給するための制御を行う回路である。シリアルインタフェース５には、後段の装置から第２のサンプリング周波数と同一の周波数のデータ要求信号ＬＲＣＫとビットクロックＢＣＬＫが与えられる。シリアルインタフェース５は、データ要求信号ＬＲＣＫが与えられたときにＦＩＦＯリード要求信号をＦＩＦＯ４およびライト速度調整回路６に与え、これに応じてＦＩＦＯ４から出力される音声データをシリアルデータＳＤＯに変換し、シリアルデータＳＤＯの各ビットをビットクロックＢＣＬＫに同期させて後段の装置に供給する。
【００１８】
速度補正用ポインタ８は、ＦＩＦＯライト要求信号の発生によりインクリメントされ、ＦＩＦＯリード要求信号の発生によりデクリメントされるポインタである。ライト速度調整回路６は、ＦＩＦＯリード要求信号が発生する平均的な時間密度と同一の時間密度を有し、かつ、３８４ｋＨｚのメインクロックφに同期したＦＩＦＯライト要求信号を発生し、ＦＩＦＯ４および直線補間係数生成回路７に出力する回路である。さらに詳述すると、ライト速度調整回路６は、メインクロックφに同期して、第２のサンプリング周波数に応じた周波数制御情報を累算することにより位相情報を発生し、この位相情報がオーバフローする度にＦＩＦＯライト要求信号を発生する。そして、直線補間係数生成回路７は、ＦＩＦＯライト要求信号の発生タイミングにおける位相情報から直線補間係数を求め、１／Ｌ倍ダウンサンプラ３に供給する回路である。
【００１９】
本実施形態におけるライト速度調整回路６は、速度補正用ポインタ８のポインタ値に応じて周波数制御情報を補正して、ＦＩＦＯライト要求信号の発生する時間密度を調整する機能を有する。さらに詳述すると、ＦＩＦＯ４に対するライト速度がリード速度に比べて大きくなり、速度補正用ポインタ８のポインタ値が基準値よりも大きくなると、ライト速度調整回路６は、周波数制御情報を減少させる負の補正量を発生し、ライト要求信号の発生する時間密度を減少させ、ライト速度を低下させる。逆にＦＩＦＯ４に対するライト速度がリード速度に比べて小さくなり、速度補正用ポインタ８のポインタ値が基準値よりも小さくなると、ライト速度調整回路６は、周波数制御情報を増加させる正の補正量を発生し、ライト要求信号の発生する時間密度を増加させ、ライト速度を上昇させる。このような制御によりライト速度はリード速度に追従することとなる。
【００２０】
また、本実施形態におけるライト速度調整回路６は、速度補正用ポインタ８のポインタ値を周波数制御情報を増減させる補正量に変換する変換テーブルを有している。この変換テーブルにおいて、基準値近傍では速度補正用ポインタ８のポインタ値の変化に対する補正量の変化の勾配は小さく、ポインタ値が基準値から離れるに従って、ポインタ値の変化に対する補正量の変化が大きくなっている。このような変換テーブルによる非線形変換を速度補正用ポインタ８のポインタ値に施して補正量を生成することにより、ＦＩＦＯ４のライト速度がリード速度から離れている領域では、絶対値の大きな補正量を発生してライト速度を迅速にリード速度に近づけ、ライト速度がリード速度に接近している領域では、ライト速度のリード速度からの僅かなずれに対して絶対値の小さな補正量を発生し、ライト速度を安定させてリード速度に一致させることができる。
【００２１】
以上のように、本実施形態によれば、ＦＩＦＯ４のライト速度は、ＦＩＦＯ４の有効データ数ではなく、ライト要求信号の発生によってインクリメントされ、リード要求信号の発生によってデクリメントされる速度補正用ポインタ８のポインタ値に基づいて調整される。従って、ＦＩＦＯ４の段数をジッタ吸収に必要な最低限の段数にすることができ、サンプリング周波数変換のレイテンシを低減することができる。また、本実施形態によれば、上述した非線形変換により速度補正用ポインタ８のポインタ値から補正量を生成することにより、広い範囲に亙るＦＩＦＯ４のライト速度の調整に加えて、リード速度近傍でのライト速度の微調整を行うことができる。従って、サンプリング周波数変換のレイテンシを増加させることなく、サンプリング周波数変換後のデータの周波数ゆらぎを低減することができる。また、本実施形態によれば、ＦＩＦＯライト要求信号は、ＦＩＦＯリード要求信号と同一の時間密度で発生するように制御されるものの、メインクロックφに同期したタイミングで発生される。従って、データ要求信号ＬＲＣＫおよびＦＩＦＯリード要求信号の発生タイミングにジッタがあったとしても、このジッタの影響を受けることなく、第２のサンプリング周波数の音声データが１／Ｌ倍ダウンサンプラ３により生成され、ＦＩＦＯ４およびシリアルインタフェース５を介して後段の装置に供給される。
以上が本実施形態の概略である。
【００２２】
図２は、以上概略を説明したサンプリング周波数変換装置における１／Ｌ倍ダウンサンプラ３の詳細な構成を示すブロック図、図３はライト速度調整回路６の詳細な構成を示すブロック図である。以下、これらの図を参照し、本実施形態に係るサンプリング周波数変換装置の詳細について説明する。
【００２３】
まず、１／Ｌ倍ダウンサンプラ３について説明する。図２において、テンポラリ用２段ＦＩＦＯ３１は、Ｌチャネル用の２段ＦＩＦＯおよびＲチャネル用２段ＦＩＦＯからなり、３８４ｋＨｚのメインクロックφが与えられる度に、８倍アップサンプラ２から出力されるＬチャネルおよびＲチャネルの音声データを取り込み、チャネル毎に最新の２個の音声データを保持する。演算データ記憶部３２は、直線補間の際に補間点を挟む両端の音声データを記憶するためのレジスタ３２ａおよび３２ｂからなる。ＦＩＦＯライト要求信号が発生したとき、テンポラリ用２段ＦＩＦＯ３１における第２段に格納されているＬチャネルおよびＲチャネルの音声データはレジスタ３２ａに格納され、第１段に格納されているＬチャネルおよびＲチャネルの音声データはレジスタ３２ｂに格納される。これらのレジスタ３２ａおよび３２ｂに格納された音声データＡおよびＢが第２のサンプリング周波数の音声データを求める補間演算に使用される。
【００２４】
減算器３３、乗算器３４、加算器３５およびレジスタ３６は、音声データＡおよびＢから第２のサンプリング周波数の音声データを求める補間演算を行い、その結果を出力する手段を構成している。これらの各回路は、ＦＩＦＯライト要求信号が発生されてから次のＦＩＦＯライト要求信号が発生されるまでの期間、時分割制御により、ＬチャネルおよびＲチャネルの各チャネルについて第２のサンプリング周波数の音声データを求める補間演算を実行し、その結果をレジスタ３６を介してＦＩＦＯ４に供給する。
【００２５】
さらに詳述すると、減算器３３は、演算データ記憶部３２のレジスタ３２ｂに記憶されたＬチャネルの音声データＢからレジスタ３２ａに記憶された音声データＡを差し引き、その結果であるデータＢ−Ａを出力する。乗算器３４は、そのとき直線補間係数生成回路７から出力されている直線補間係数αをデータＢ−Ａに乗じ、データ（Ｂ−Ａ）×αを出力する。ここで、αは、時間軸上、音声データＡと音声データＢとの間の何処に補間演算により求めるべき第２のサンプリング周波数の音声データがあるかを示す数値である。なお、直線補間係数αの算出方法については後述する。加算器３５は、乗算器３４から得られるデータ（Ｂ−Ａ）×αと演算データ記憶部３２のレジスタ３２ａに記憶されたＬチャネルの音声データＡとを加算する。レジスタ３６は、その加算結果であるＡ＋（Ｂ−Ａ）×αを第２のサンプリング周波数のＬチャネルの音声データとして保持する。以上、Ｌチャネルを例に減算器３３、乗算器３４、加算器３５およびレジスタ３６の処理内容を説明したが、これと同様の処理が、Ｒチャネルの音声データについても実行され、その結果がレジスタ３６に保持されるのである。
【００２６】
次に図３を参照し、ライト速度調整回路６について説明する。ＦＩＦＯ４は、以上のようにして生成された第２のサンプリング周波数の音声データを蓄積する１６段のＦＩＦＯである。このＦＩＦＯ４には、ライトポインタ４０１およびリードポインタ４０２が接続されている。ここで、ライトポインタ４０１は、ＦＩＦＯライト要求信号が発生する度に書き込みアドレスを「１」だけ増加させてＦＩＦＯ４に供給し、その時点においてレジスタ３６から供給されるＬチャネルおよびＲチャネルの音声データをＦＩＦＯ４における書き込みアドレスにより指定されるエリアに書き込む回路である。また、リードポインタ４０２は、ＦＩＦＯリード要求信号が発生する度に読み出しアドレスを「１」だけ増加させてＦＩＦＯ４に供給し、その時点においてＦＩＦＯ４の読み出しアドレスにより指定されるエリアからＬチャネルおよびＲチャネルの音声データを読み出し、シリアルインタフェース５に供給する回路である。
【００２７】
ベクトル検出回路６０４は、速度補正用ポインタ８のポインタ値を監視し、ポインタ値の時間的変化の態様が次のいずれに該当するかを示すベクトルｕｐ／ｄｏｗｎを出力する回路である。
ａ．ポインタ値は増加中である。
ｂ．ポインタ値は減少中である。
ｃ．ポインタ値は増加傾向から減少傾向に転じた。
ｄ．ポインタ値は減少傾向から増加傾向に転じた。
【００２８】
周波数制御部６１０は、ＦＩＦＯライト要求信号の周波数を決定付ける周波数制御情報Δｙを発生する手段である。ライト要求信号発生部６２０は、メインクロックφが発生する度に周波数制御情報Δｙを累算し、その累算値である位相情報ｙがオーバフローする度にＦＩＦＯライト要求信号を発生する回路である。以下、これらの回路の構成を順に説明する。
【００２９】
まず、周波数制御部６１０は、ΔＴテーブル６１１、加算器６１２、ラッチ６１３および加算値テーブル６１４により構成されている。加算値テーブル６１４には、各種の第２のサンプリング周波数に対応付けて周波数制御情報Δｙの初期値が格納されている。これらの周波数制御情報Δｙは、ライト要求信号発生部６２０による周波数制御情報の累算が３８４ｋＨｚのメインクロックφに同期して繰り返された場合に、その累算値である位相情報ｙが第２のサンプリング周波数に相当する時間密度でオーバフローするような値となっている。さらに詳述すると、位相情報ｙが０〜Ｍ−１の範囲の値をとり得るものとし、第２のサンプリング周波数をｆ２とすると、周波数制御情報Δｙの初期値は次のような値とされる。
Δｙ＝Ｍ／（３８４ｋＨｚ／ｆ２）      ……（１）
＝Ｍ／Ｌ
【００３０】
ラッチ６１３は、初期設定が可能な構成となっている。このサンプリング周波数変換装置が動作を開始するとき、後段の装置が要求する第２のサンプリング周波数ｆ２に対応付けられた周波数制御情報Δｙが加算値テーブル６１４から読み出され、このラッチ６１３に初期設定される。以後、３８４ｋＨｚのメインクロックφが発生される度に、ラッチ６１３内の周波数制御情報Δｙは加算器６１２の出力データによって更新される。
【００３１】
ΔＴテーブル６１１および加算器６１２は、ラッチ６１３から出力される周波数制御情報Δｙが適正でないために速度補正用ポインタ８のポインタ値が基準値から外れようとする場合に、周波数制御情報Δｙを適正な値に修正する手段を構成している。まず、ΔＴテーブル６１１は、速度補正用ポインタ８のポインタ値とベクトルｕｐ／ｄｏｗｎとの組み合わせを補正量ΔＴに変換するテーブルである。図４はΔＴテーブル６１１により行われる変換処理の内容を示している。
【００３２】
図４に示すように、速度補正用ポインタ８のポインタ値が減少中であることをベクトルｕｐ／ｄｏｗｎが示しており、かつ、ポインタ値が基準値「８」より少ない場合、ΔＴテーブル６１１は、速度補正用ポインタ８のポインタ値と基準値「８」との差分に応じた絶対値を有する正の補正量ΔＴを出力する。この正の補正量ΔＴが加算器６１２により現在の周波数制御情報Δｙに加算される結果、周波数制御情報Δｙが増加し、これによりＦＩＦＯライト要求信号の時間密度が増加し、速度補正用ポインタ８のポインタ値の減少にブレーキが掛かる。また、速度補正用ポインタ８のポインタ値が増加中であることをベクトルｕｐ／ｄｏｗｎが示しており、かつ、速度補正用ポインタ８のポインタ値が基準値「８」より多い場合、ΔＴテーブル６１１は、速度補正用ポインタ８のポインタ値と基準値「８」との差分に応じた絶対値を有する負の補正量ΔＴを出力する。この負の補正量ΔＴが加算器６１２により現在の周波数制御情報Δｙに加算される結果、周波数制御情報Δｙが減少し、これによりＦＩＦＯライト要求信号の時間密度が減少し、速度補正用ポインタ８のポインタ値の増加にブレーキが掛かる。
【００３３】
ライト要求信号発生部６２０は、加算器６２１とラッチ６２２により構成されている。加算器６２１は、周波数制御部６１０から供給される周波数制御情報Δｙとラッチ６２２から出力される現在の位相情報ｙとを加算する。ラッチ６２２は、メインクロックφが与えられる度に、加算器６２１の出力データを新たな位相情報ｙとして取り込んで保持する。図５はこのライト要求信号発生部６２０の動作を示している。この図に示すように、位相情報ｙは、メインクロックφが発生する度に、Δｙずつ増加してゆく。そして、周波数制御情報Δｙの累算の結果、位相情報ｙの上限値Ｍ−１を越える場合には、その超過分βが新たな位相情報ｙとしてラッチ６２２に格納される。また、このように位相情報ｙがオーバフローするときには、ラッチ６２２内の位相情報ｙのＭＳＢが“１”から“０”に立ち下がる。そして、このＭＳＢの立下りエッジがＦＩＦＯライト要求信号としてＦＩＦＯ４、ライトポインタ４０１および直線補間係数生成回路７に供給される。
【００３４】
図２における直線補間係数生成回路７は、ＦＩＦＯライト要求信号の発生時点においてラッチ６２２から出力されている位相情報ｙ、すなわち、図５に示す値βを保持し、このβから次式により直線補間係数αを算出する。
α＝β／（Ｍ／Ｌ）
この際、Ｍ／Ｌは、加算値テーブル６１４に記憶された周波数制御情報Δｙの初期値Ｍ／Ｌのうち後段の装置が要求している第２のサンプリング周波数に対応したものが用いられる。
【００３５】
１／Ｌ倍ダウンサンプラ３では、このようにして得られた直線補間係数αを用いて、データＡおよびＢ間にある第２のサンプリング周波数の音声データの直線補間演算が行われ、この直線補間演算により得られる音声データがＦＩＦＯ４に書き込まれるのである。
【００３６】
以上説明したサンプリング周波数変換装置によれば、ＦＩＦＯ４のライト速度は、ＦＩＦＯ４の有効データ数ではなく、ＦＩＦＯライト要求信号の発生によってインクリメントされ、ＦＩＦＯリード要求信号の発生によってデクリメントされる速度補正用ポインタ８のポインタ値に基づいて調整される。従って、速度補正用ポインタ８のポインタ値の増減に応じて広範囲に亙るライト速度の制御およびリード速度近傍でのライト速度の微調整を行うことができる。従って、ＦＩＦＯ４の段数をジッタ吸収に必要な最低限の段数にすることができ、サンプリング周波数変換後のデータの周波数ゆらぎを低減しつつ、サンプリング周波数変換のレイテンシを低減することができる。また、本実施形態によれば、ＦＩＦＯリード要求信号の平均的な時間密度を同じ時間密度のＦＩＦＯライト要求信号がメインクロックφに同期して発生される。そして、直線補間演算に用いる直線補間係数αは、このメインクロックφに同期したＦＩＦＯライト要求信号の発生タイミングにおける位相情報ｙを用いて算出される。従って、本実施形態によれば、データ要求信号ＬＲＣＫおよびＦＩＦＯリード要求信号の発生タイミングにジッタがある場合でも、そのジッタの影響を受けることなく、第２のサンプリング周波数の音声データを生成し、後段の装置に供給することができる。
【００３７】
＜第２実施形態＞
図６は、この発明の第２実施形態であるサンプリング周波数変換装置の構成を示すブロック図である。本実施形態において、エイリアシング除去用ＬＰＦ１および８倍アップサンプラ２の構成および役割は上記第１実施形態（図１）と同様である。本実施形態では、ＦＩＦＯ４と１／Ｌ倍ダウンサンプラ３との関係が第１実施形態と入れ替わっている。
【００３８】
さらに詳述すると、ＦＩＦＯ４は、ライト要求信号に応じて、８倍アップサンプラ２から出力される第１のサンプリング周波数の音声データを蓄積し、ＦＩＦＯリード要求信号に応じて、蓄積した音声データを古いものから順に出力する。速度補正用ポインタ８は、ＦＩＦＯライト要求信号の発生によりインクリメントされ、ＦＩＦＯリード要求信号の発生によりデクリメントされるポインタである。
【００３９】
リード速度調整回路９は、ＦＩＦＯライト要求信号が発生する平均的な時間密度と同一の時間密度を有し、かつ、３８４ｋＨｚのメインクロックφに同期したＦＩＦＯリード要求信号を発生し、ＦＩＦＯ４および直線補間係数生成回路７に出力する回路である。さらに詳述すると、リード速度調整回路９は、メインクロックφに同期して、第２のサンプリング周波数に応じた周波数制御情報を累算することにより位相情報を発生し、この位相情報がオーバフローする度にＦＩＦＯリード要求信号を発生する。そして、直線補間係数生成回路７は、ＦＩＦＯリード要求信号の発生タイミングにおける位相情報から直線補間係数を求め、１／Ｌ倍ダウンサンプラ３に供給する。
【００４０】
本実施形態におけるリード速度調整回路９は、速度補正用ポインタ８のポインタ値に応じて周波数制御情報を増減して、ＦＩＦＯリード要求信号の発生する時間密度を調整する機能を有する。さらに詳述すると、ＦＩＦＯ４のリード速度がライト速度に比べて大きくなり、速度補正用ポインタ８のポインタ値が基準値よりも小さくなると、リード速度調整回路９は、周波数制御情報を減少させる負の補正量を発生し、リード要求信号の発生する時間密度を減少させ、リード速度を低下させる。逆にＦＩＦＯ４のリード速度がライト速度に比べて小さくなり、速度補正用ポインタ８のポインタ値が基準値よりも大きくなると、リード速度調整回路９は、周波数制御情報を増加させる正の補正量を発生し、リード要求信号の発生する時間密度を増加させ、リード速度を上昇させる。このような制御によりリード速度はライト速度に追従することとなる。
【００４１】
また、本実施形態におけるリード速度調整回路９は、速度補正用ポインタ８のポインタ値を周波数制御情報を増減させる補正量に変換する変換テーブルを有している。上記第１実施形態と同様、この変換テーブルにおいて、基準値近傍では速度補正用ポインタ８のポインタ値の変化に対する補正量の変化の勾配は小さく、ポインタ値が基準値から離れるに従って、速度補正用ポインタ８のポインタ値の変化に対する補正量の変化の勾配は大きくなる。従って、本実施形態によれば、ＦＩＦＯ４のリード速度がライト速度から離れている領域では、絶対値の大きな補正量を発生してリード速度を迅速にライト速度に近づけ、リード速度がライト速度に接近している領域では、リード速度のライト速度からの僅かなずれに対して絶対値の小さな補正量を発生し、リード速度を安定させてライト速度に一致させることができる。
従って、本実施形態によれば、上記第１実施形態と同様な効果が得られる。
【００４２】
以上、この発明の第１および第２実施形態について説明したが、これ以外にも、この発明には他の実施形態が考えられる。例えば上記各実施形態では、第１のサンプリング周波数の入力音声データに８倍アップサンプリングを施し、３８４ｋＨｚの音声データとした後、１／Ｌダウンサンプリングにより第２のサンプリング周波数の音声データを生成したが、８倍アップサンプリングを行う代わりに、１／Ｌダウンサンプリングとして高次の補間演算を行うようにしてもよい。
【符号の説明】
【００４３】
１…エイリアシング除去用ＬＰＦ、２…８倍アップサンプラ、３…１／Ｌ倍ダウンサンプラ、４…ＦＩＦＯ、５…シリアルインタフェース、６…ライト速度調整回路、７…直線補間係数生成回路、８…速度補正用ポインタ、９…リード速度調整回路。
【図１】
2012049954.tif 000003
【図２】
2012049954.tif 000004
【図３】
2012049954.tif 000005
【図４】
2012049954.tif 000006
【図５】
2012049954.tif 000007
【図６】
2012049954.tif 000008
【図７】
2012049954.tif 000009
【図８】
2012049954.tif 000010
【図９】
2012049954.tif 000011