(57)【特許請求の範囲】
【請求項１】
入力デジタル信号を記憶する記憶部と、
出力デジタル信号のサンプリング周波数に対する入力デジタル信号のサンプリング周波数の比率に基づいて、前記記憶部に記憶されている入力デジタル信号のうちの、出力デジタル信号の第ｉ番目（ｉは自然数）のサンプリングタイミングの直前及び直後のサンプリングタイミングでサンプリングされた第１と第２のデータを特定するデータ特定部と、
前記データ特定部で特定した第１と第２のデータと、前記比率とに基づいて、出力デジタル信号の第ｉ番目のデータの値を算出する出力データ値算出部と、
前記第１のデータに対する前記第２のデータの変化量の絶対値を求める変化量算出部と、
前記変化量算出部が求めた前記第１のデータに対する前記第２のデータの変化量の絶対値に基づいて、前記出力データ値算出部が算出した出力デジタル信号の第ｉ番目のデータの値を補正する補正部と、
を備えることを特徴とする非同期サンプリング周波数変換装置。
【請求項２】
前記データ特定部は、前記出力データ値算出部が算出対象とするデータのサンプリングタイミングの順番を示すｉと前記比率とを乗算して求めた乗算値を自然数に切り下げた切下値と切り上げた切上値と、サンプリングタイミングの順番が一致する前記第１と第２のデータを特定し、
前記出力データ値算出部は、前記データ特定部が特定した第１と第２のデータと、前記乗算値と、前記切下値と、前記切上値を用い、直線補間により、出力デジタル信号の第ｉ番目のデータの値を算出する、
ことを特徴とする請求項１に記載の非同期サンプリング周波数変換装置。
【請求項３】
前記入力デジタル信号を、サンプリングタイミングの順番と前記順番にサンプリングされたデータの値とを対応付けて前記記憶部に記憶する記憶処理部をさらに備え、
前記データ特定部は、前記記憶部に記憶されているデータと対応付けられているサンプリングタイミングの順番を検索し、前記切下値と、前記切上値とそれぞれ一致するサンプリングタイミングの順番に対応するデータを第１のデータと第２のデータとして特定する、
ことを特徴とする請求項２に記載の非同期サンプリング周波数変換装置。
【請求項４】
前記乗算値が自然数か否かを判定する判定部を、
さらに備え、
前記判定部により、前記乗算値が自然数であると判定された場合には、前記データ特定部は、前記記憶部に記憶されている入力デジタル信号のうちの、出力デジタル信号の第ｉ番目のサンプリングタイミングと同じタイミングでサンプリングされたデータを前記第１と第２のデータとして特定し、前記出力データ値算出部は、前記データ特定部が特定した前記出力デジタル信号の第ｉ番目のサンプリングタイミングと同じタイミングでサンプリングされたデータの値を、出力デジタル信号の第ｉ番目のデータの値として算出する、
ことを特徴とする請求項２又は３に記載の非同期サンプリング周波数変換装置。
【請求項５】
非同期サンプリング周波数変換装置が実行する非同期サンプリング周波数変換方法であって、
記憶部が入力デジタル信号を記憶し、
データ特定部が出力デジタル信号のサンプリング周波数に対する入力デジタル信号のサンプリング周波数の比率に基づいて、前記記憶部に記憶されている入力デジタル信号のうちの、出力デジタル信号の第ｉ番目（ｉは自然数）のサンプリングタイミングの直前及び直後のサンプリングタイミングでサンプリングされた第１と第２のデータを特定し、
出力データ値算出部が前記特定した第１と第２のデータと、前記比率とに基づいて、出力デジタル信号の第ｉ番目のデータの値を算出し、
変化量算出部が前記第１のデータに対する前記第２のデータの変化量の絶対値を求め、
補正部が前記第１のデータに対する前記第２のデータの変化量の絶対値に基づいて、前記出力デジタル信号の第ｉ番目のデータの値を補正する、
ことを特徴とする非同期サンプリング周波数変換方法。
【請求項６】
非同期サンプリング周波数変換機能を備えるコンピュータに、
入力デジタル信号を記憶する処理と、
出力デジタル信号のサンプリング周波数に対する入力デジタル信号のサンプリング周波数の比率に基づいて、前記記憶した入力デジタル信号のうちの、出力デジタル信号の第ｉ番目（ｉは自然数）のサンプリングタイミングの直前及び直後のサンプリングタイミングでサンプリングされた第１と第２のデータを特定する処理と、
前記特定した第１と第２のデータと、前記比率とに基づいて、出力デジタル信号の第ｉ番目のデータの値を算出する処理と、
前記第１のデータに対する前記第２のデータの変化量の絶対値を求める処理と、
前記第１のデータに対する前記第２のデータの変化量の絶対値に基づいて、前記出力デジタル信号の第ｉ番目のデータの値を補正する処理と、
を実行させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、非同期サンプリング周波数変換装置、変換方法、及び、プログラムに関する。
【背景技術】
【０００２】
アナログ信号をデジタル信号に変換する場合、一定時間間隔でアナログ信号の波形レベルを読み取り、読み取ったレベル値を記録していく標本化（サンプリング）という方法を用いる。デジタルオーディオ機器等では、サンプリング周波数として、一般的に３２ｋＨｚ、４４．１ｋＨｚ、４８ｋＨｚ、９６ｋＨｚが使用される。例えば、ＣＤ(Compact Disc)、ＤＶＤ(Digital Versatile Disc)の場合、それぞれ４４．１ｋＨｚ、４８ｋＨｚでサンプリングする。
【０００３】
また、サンプリング周波数が異なる機器間で、デジタル信号を受け渡す場合など、デジタル信号のサンプリング周波数を変換する必要が生ずることがある。デジタル信号のサンプリング周波数を変更するために、非同期サンプリングレートコンバータが用いられる。
【０００４】
従来の非同期サンプリングレートコンバータは、入力信号を、変換前と変換後のサンプリング周波数の最小公倍数までアップサンプリング（０補完）し、その後、所望のサンプリング周波数にダウンサンプリング（間引き）することにより、サンプリング周波数を変更する。従って、従来の非同期サンプリングレートコンバータは、例えば、４８ｋＨｚから４４．１ｋＨｚにサンプリング周波数を変換する場合、４８ｋＨｚと４４．１ｋＨｚとの最小公倍数である７０５６ｋＨｚまでのアップサンプリング、即ち、入力信号に対して１４７倍ものアップサンプリングを行わなければならない。
【０００５】
従来の非同期サンプリングレートコンバータは、ナイキスト周波数（入力信号のサンプリング周波数の１／２）以上の高周波成分をカットするＬＰＦ(Low Pass Filter)を、アップサンプリング部とダウンサンプリング部の間に備えている。このＬＰＦに入力される信号は、アップサンプリング後の信号であり、上述したように、そのサンプリング周波数は非常に高い。このため、ＬＰＦは、高速応答性と大きな処理能力が要求される。
非同期サンプリングコンバータでの処理量を抑える技術として、特許文献１には、直線補間を用いる方法が提案されている。
【０００６】
特許文献１に記載されている直線補間を用いる方法は、変換後のサンプリングデータＹｉ（ｉは自然数）を、Ｙｉのサンプリングタイミングの直前、直後のタイミングでサンプリングされた変換前の２つのサンプリングデータＸｎ、Ｘｎ＋１（ｎは自然数）から算出する。具体的には、ｋｉをＹｉに対応する補間係数として、算出式Ｙｉ＝（１−ｋｉ）・Ｘｎ＋ｋｉ・Ｘｎ＋１によりＹｉを算出する。
【０００７】
補間係数ｋｉは、入力のサンプリング周期、出力のサンプリング周期をそれぞれθ１、θ２とすると、まず、各ｉに対してｎ・θ１≦ｉ・θ２＜（ｎ＋１）・θ１を満たすｎを特定し、ｋｉ＝（ｉ・θ２−ｎ・θ１）／θ１により算出される。このように、特許文献１に開示されてる直線補間を用いた方法は、変換後のサンプリングデータＹｉを各々算出するためには、まず”ｎ”を特定し、特定した”ｎ”を用いて補間係数ｋｉをそれぞれ算出する必要がある。そのため、演算量が多く、演算時間がかかってしまう。
【０００８】
また、標本化定理によれば、入力クロック周波数ｆｉｎ（＝１／θ１）の２分の１までの周波数帯域の入力信号を再現することが可能である。しかしながら、直線補間の周波数特性により、入力信号の周波数帯域が大きくなる程、直線補間により算出した出力サンプリングデータＹｉから再現した波形の振幅は減少し、波形歪みが増大してしまう。例えば、入力クロック周波数ｆｉｎの２分の１の周波数帯域の入力信号では、出力サンプリングデータＹｉから構成される波形の振幅は、入力信号の振幅の約０．６４倍に減少してしまう。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平１−７７３２６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
本発明は、上記実情に鑑みてなされたものであり、演算量が少ない非同期サンプリング周波数変換装置、変換方法、及び、プログラムを提供することを目的とする。
【００１１】
また、本発明は、高速処理が可能な非同期サンプリング周波数変換装置、変換方法、及び、プログラムを提供することを目的とする。
【００１２】
また、本発明は、信号波形の再現性に優れた非同期サンプリング周波数変換装置、変換方法、及び、プログラムを提供することを他の目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するために、本発明の第１の観点に係る非同期サンプリング周波数変換装置は、
入力デジタル信号を記憶する記憶部と、
出力デジタル信号のサンプリング周波数に対する入力デジタル信号のサンプリング周波数の比率に基づいて、前記記憶部に記憶されている入力デジタル信号のうちの、出力デジタル信号の第ｉ番目（ｉは自然数）のサンプリングタイミングの直前及び直後のサンプリングタイミングでサンプリングされた第１と第２のデータを特定するデータ特定部と、
前記データ特定部で特定した第１と第２のデータと、前記比率とに基づいて、出力デジタル信号の第ｉ番目のデータの値を算出する出力データ値算出部と、
前記第１のデータに対する前記第２のデータの変化量の絶対値を求める変化量算出部と、
前記変化量算出部が求めた前記第１のデータに対する前記第２のデータの変化量の絶対値に基づいて、前記出力データ値算出部が算出した出力デジタル信号の第ｉ番目のデータの値を補正する補正部と、
を備えることを特徴とする。
【００１４】
この場合、前記データ特定部は、前記出力データ値算出部が算出対象とするデータのサンプリングタイミングの順番を示すｉと前記比率とを乗算して求めた乗算値を自然数に切り下げた切下値と切り上げた切上値と、サンプリングタイミングの順番が一致する前記第１と第２のデータを特定し、前記出力データ値算出部は、前記データ特定部が特定した第１と第２のデータと、前記乗算値と、前記切下値と、前記切上値を用い、直線補間により、出力デジタル信号の第ｉ番目のデータの値を算出する、
こととしてもよい。
【００１５】
また、前記入力デジタル信号を、サンプリングタイミングの順番と前記順番にサンプリングされたデータの値とを対応付けて前記記憶部に記憶する記憶処理部をさらに備え、
前記データ特定部は、前記記憶部に記憶されているデータと対応付けられているサンプリングタイミングの順番を検索し、前記切下値と、前記切上値とそれぞれ一致するサンプリングタイミングの順番に対応するデータを第１のデータと第２のデータとして特定する、
こととしてもよい。
【００１６】
また、前記乗算値が自然数か否かを判定する判定部を、さらに備え、前記判定部により、前記乗算値が自然数であると判定された場合には、前記データ特定部は、前記記憶部に記憶されている入力デジタル信号のうちの、出力デジタル信号の第ｉ番目のサンプリングタイミングと同じタイミングでサンプリングされたデータを前記第１と第２のデータとして特定し、前記出力データ値算出部は、前記データ特定部が特定した前記出力デジタル信号の第ｉ番目のサンプリングタイミングと同じタイミングでサンプリングされたデータの値を、出力デジタル信号の第ｉ番目のデータの値として算出する、
こととしてもよい。
【００１８】
上記目的を達成するために、本発明の第２の観点に係る非同期サンプリング周波数変換方法は、
記憶部が入力デジタル信号を記憶し、
データ特定部が出力デジタル信号のサンプリング周波数に対する入力デジタル信号のサンプリング周波数の比率に基づいて、前記記憶部に記憶されている入力デジタル信号のうちの、出力デジタル信号の第ｉ番目（ｉは自然数）のサンプリングタイミングの直前及び直後のサンプリングタイミングでサンプリングされた第１と第２のデータを特定し、
出力データ値算出部が前記特定した第１と第２のデータと、前記比率とに基づいて、出力デジタル信号の第ｉ番目のデータの値を算出し、
変化量算出部が前記第１のデータに対する前記第２のデータの変化量の絶対値を求め、
補正部が前記第１のデータに対する前記第２のデータの変化量の絶対値に基づいて、前記出力デジタル信号の第ｉ番目のデータの値を補正する、
ことを特徴とする。
【００１９】
上記目的を達成するために、本発明の第３の観点に係るプログラムは、
非同期サンプリング周波数変換機能を備えるコンピュータに、
入力デジタル信号を記憶する処理と、
出力デジタル信号のサンプリング周波数に対する入力デジタル信号のサンプリング周波数の比率に基づいて、前記記憶した入力デジタル信号のうちの、出力デジタル信号の第ｉ番目（ｉは自然数）のサンプリングタイミングの直前及び直後のサンプリングタイミングでサンプリングされた第１と第２のデータを特定する処理と、
前記特定した第１と第２のデータと、前記比率とに基づいて、出力デジタル信号の第ｉ番目のデータの値を算出する処理と、
前記第１のデータに対する前記第２のデータの変化量の絶対値を求める処理と、
前記第１のデータに対する前記第２のデータの変化量の絶対値に基づいて、前記出力デジタル信号の第ｉ番目のデータの値を補正する処理と、
を実行させる、
ことを特徴とする。
【発明の効果】
【００２０】
演算量を軽減できると共に、変換処理を高速化することが可能となる。
【図面の簡単な説明】
【００２１】
【図１】実施形態１における、非同期サンプリング周波数変換装置の一例を示すブロック図である。
【図２】実施形態１における、Ｌチャネルの入力サンプリングデータ情報の一例を示す図である。
【図３】実施形態１における、Ｌチャネルの入力サンプリングデータ情報生成処理のフローチャートを示す図である。
【図４】実施形態１における、Ｌチャネルの変換処理のフローチャートを示す図である。
【図５】実施形態１における、８ｋＨｚの正弦波を変換処理した場合の、出力のサンプリングの順番ｉと、順番ｉと比率ｆｉｎ／ｆＯＵＴとの積（ｉ・ｆｉｎ／ｆＯＵＴ）と、rounddown（ｉ・ｆｉｎ／ｆＯＵＴ）と、roundup（ｉ・ｆｉｎ／ｆＯＵＴ）と、入力サンプリングデータＸｎと、Ｘｎ＋１と、の対応関係を示す図である。
【図６】実施形態１における、Ｌチャネルの出力サンプリングデータの一覧を示す図である。
【図７】図６に示す出力サンプリングデータから再現した波形と、Ｌチャネルの入力サンプリングデータから再現した波形と、を示す図である。
【図８】実施形態２における、非同期サンプリング周波数変換装置の一例を示すブロック図である。
【図９】実施形態２における、Ｌチャネルの出力サンプリングデータの一覧を示す図である。
【図１０】図９に示す出力サンプリングデータから再現した波形と、Ｌチャネルの入力サンプリングデータから再現した波形と、を示す図である。
【図１１】Ｌチャネルの出力サンプリング情報の一例を示す図である。
【発明を実施するための形態】
【００２２】
本発明の好適な実施形態に係る非同期サンプリング周波数変換装置について説明する。
【００２３】
（実施形態１）
実施形態１に係る非同期サンプリング周波数変換装置１は、入力デジタル信号のサンプリング周波数を変換して出力する装置であり、図１に示すように、入力信号受信部１０１と、ＬＰＦ部１０２と、記憶処理部１０３と、記憶部１０４と、サンプリング周波数変換処理部１０５と、出力信号送信部１０６と、クロック生成回路１０７と１０８とを備える。
【００２４】
入力信号受信部１０１は、例えば、デジタル音声信号の通信規格であるＩ２Ｓ(The IC Sound Bus)や前詰め２４ｂｉｔなどで送られてくるＬチャンネルとＲチャンネルの２チャンネル分の入力デジタル信号Ｓinを、クロック生成回路１０７から供給されるＲＬクロックＲＬinに応答して受信（ラッチ）し、ＬＰＦ部１０２に出力する。ＲＬクロックＲＬinは、例えば、信号供給元から送信されてくるＲＬクロックから生成され、入力デジタル信号Ｓinのサンプリング周波数（以下、入力サンプリング周波数という）ｆｉｎに等しい周波数を有する。入力サンプリング周波数ｆｉｎが、例えば、４８ｋＨｚの場合、入力信号受信部１０１は、約２０．８μｓｅｃ（＝１／４８ｋＨｚ）毎に、ＬチャネルとＲチャネルの２つの入力サンプリングデータを受信する。
【００２５】
ＬＰＦ（Low Pass Filter)部１０２は、クロック生成回路１０７から供給されるＲＬクロックＲＬinに応答して動作し、入力デジタル信号Ｓinを帯域制限する。より具体的には、ＬＰＦ部１０２は、入力デジタル信号Ｓinのナイキスト周波数（入力サンプリング周波数ｆｉｎの２分の１＝ｆｉｎ／２）以上の高周波成分をカットし、折り返し現象による波形歪みを除去する。
【００２６】
記憶処理部１０３は、ＣＰＵとこのＣＰＵの動作プログラムを記憶したメモリから構成され、初期設定値が”０”の内部カウンタ１０３Ｃを備える。記憶処理部１０３を構成するＣＰＵは、動作プログラムを実行して、ＲＬクロック信号ＲＬinに応答して内部カウンタ１０３Ｃをカウントアップすることにより、ＬＰＦ部１０２から出力されるデータ（入力サンプリングデータ）Ｘの番号（順番）ｎをカウントし、さらに、サンプリング開始から第ｎ番目のサンプリングタイミングまでの時間Ｔｎ、すなわちｎ／ｆｉｎを求める。記憶処理部１０３は、順番ｎと経過時間Ｔｎ（＝ｎ／ｆｉｎ）と第ｎ番目の入力サンプリングデータＸｎとを対応付けて入力データを形成し、記憶部１０４に所定数まで格納する。なお、所定数の入力データが記憶部１０４に記憶されている場合、記憶処理部１０３は、一番古い（順番ｎが一番小さい）入力データを消去して、新たな入力データを記憶する。なお、記憶部１０４に格納されるデータを、以下、入力サンプリングデータ情報、と呼ぶ。
例えば、入力デジタル信号Ｓinを、８ｋＨｚのアナログ正弦波ｓｉｎ（２π・８０００・ｔ）を４８ｋＨｚのサンプリング周波数ｆｉｎでサンプリングして得られたデータとすると、記憶処理部１０３は、順番ｎと経過時間Ｔｎ（＝ｎ／ｆｉｎ）と入力サンプリングデータＸｎとを、図２に示すように、記憶部１０４に順次格納する。
【００２７】
記憶部１０４は、ＲＡＭ(Random Access Memory)等から構成され、記憶処理部１０３が生成した順番ｎと経過時間Ｔｎ（＝ｎ／ｆｉｎ）と第ｎ番目の入力サンプリングデータＸｎとを対応つけた入力データを所定数まで格納する。記憶部１０４は、サンプリング周波数変換処理部１０５によるサンプリング周波数変換処理に必要な所定数の入力データを記憶することが可能な容量を有する。入力サンプリング周波数が４８ｋＨｚの場合、ＬチャネルとＲチャネルの入力データをそれぞれ、例えば、４８０個ずつ保持する。記憶部１０４が保持する入力データの個数は、一例であり、例えば、倍の９６０個を保持するようにしてもよい。
【００２８】
サンプリング周波数変換処理部１０５は、ＣＰＵ、内部メモリ等から構成される。内部メモリは、ＣＰＵ(Central Processing Unit)のワークエリアとして機能すると共にＣＰＵが実行する変換処理のプログラム、変換処理に必要な固定データを格納する。ＣＰＵは、変換処理プログラムを実行することにより、データ特定部１０５Ａ、判定部１０５Ｂ、出力データ値算出部１０５Ｃ、及びカウンタ１０５Ｄとして機能し、後述する変換処理を実行し、記憶部１０４に記憶されている入力サンプリングデータ情報を用いて、出力サンプリング周波数ｆｏｕｔの出力サンプリングデータを算出する。
【００２９】
データ特定部１０５Ａは、出力サンプリングデータＹｉ（ｉは出力の順番：自然数）のサンプリングタイミングの直前、直後のタイミングでサンプリングされた入力サンプリングデータを特定する。なお、「出力サンプリングタイミングの直前、直後のタイミング」とは、物理的なタイミングの意味ではなく、信号処理による遅延を考慮して、出力サンプリングタイミングに対応する入力デジタル信号Ｓinのタイミングを特定し、特定したタイミングを基準とする直前、直後の入力デジタル信号Ｓinのサンプリングタイミングを意味する。
具体的には、データ特定部１０５Ａは、出力サンプリング周波数ｆｏｕｔに対する入力サンプリング周波数ｆｉｎの比率ｆｉｎ／ｆｏｕｔを取得する。そして、データ特定部１０５Ａは、例えば、出力デジタル信号における第ｉ番目の出力サンプリングデータＹｉを算出する場合には、取得した比率ｆｉｎ／ｆｏｕｔをｉ倍し、ｉ倍した値（ｉ・ｆｉｎ／ｆｏｕｔ）を自然数に切り上げた値roundup（ｉ・ｆｉｎ／ｆｏｕｔ）と切り下げた値rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）とを算出する。例えば、ｉ・ｆｉｎ／ｆｏｕｔ＝１．１２の場合は、roundup（ｉ・ｆｉｎ／ｆｏｕｔ）＝２、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）＝１となる。
【００３０】
そして、データ特定部１０５Ａは、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）＝ｎ（自然数）である場合は、出力サンプリングデータＹｉのサンプリングタイミングの直前、直後のタイミングでサンプリングされた入力データとして、第ｎ番目の入力サンプリングデータＸｎと第（ｎ＋１）番目の入力サンプリングデータＸｎ＋１とを特定する。
但し、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）＝roundup（ｉ・ｆｉｎ／ｆｏｕｔ）＝ｎ、すなわち、比率ｆｉｎ／ｆｏｕｔをｉ倍した値（ｉ・ｆｉｎ／ｆｏｕｔ）が自然数の場合には、データ特定部１０５Ａは、出力サンプリングデータＹｉのサンプリングタイミングの直前、直後のタイミングでサンプリングされたデータとして、出力サンプリングデータＹｉのサンプリングタイミングと同じタイミングでサンプリングされた入力サンプリングデータＸｎのみを特定する。
【００３１】
判定部１０５Ｂは、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）＝roundup（ｉ・ｆｉｎ／ｆｏｕｔ）＝ｎであるか否かを判定する。すなわち、判定部１０５Ｂは、比率ｆｉｎ／ｆｏｕｔをｉ倍した値（ｉ・ｆｉｎ／ｆｏｕｔ）が自然数であるか否かを判定する。また、判定部１０５Ｂは、データ特定部１０５Ａが算出したrounddown（ｉ・ｆｉｎ／ｆｏｕｔ）とroundup（ｉ・ｆｉｎ／ｆｏｕｔ）に対応する入力サンプリングデータが存在するか否かを判定する。具体的には、記憶部１０４に記憶されている入力サンプリングデータ情報のサンプリングの順番の欄を検索して、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）とroundup（ｉ・ｆｉｎ／ｆｏｕｔ）の値に相当するサンプリングの順番が存在するか否かを判定する。
【００３２】
出力データ値算出部１０５Ｃは、データ特定部１０５Ａが特定した入力サンプリングデータＸｎとＸｎ＋１とを用いて、出力サンプリングデータＹｉを算出する。具体的には、roundup（ｉ・ｆｉｎ／ｆｏｕｔ）から（ｉ・ｆｉｎ／ｆｏｕｔ）を減算した値と（ｉ・ｆｉｎ／ｆｏｕｔ）からrounddown（ｉ・ｆｉｎ／ｆｏｕｔ）を減算した値とに対し、入力サンプリングデータＸｎ、Ｘｎ＋１の値をそれぞれ重み付けし、これらの和を出力デジタル信号における第ｉ番目の出力サンプリングデータＹｉとして算出する。すなわち、出力データ値算出部１０５Ｃは、出力サンプリングデータＹｉを次式により算出する。
（数１）
Ｙｉ＝Ｘｎ・｛roundup（ｉ・ｆｉｎ／ｆｏｕｔ）−（ｉ・ｆｉｎ／ｆｏｕｔ）｝＋Ｘｎ＋１・｛（ｉ・ｆｉｎ／ｆｏｕｔ）−rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）｝
ここで、｛（ｉ・ｆｉｎ／ｆｏｕｔ）−rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）｝は、直線補間における補間係数ｋｉに相当し、｛roundup（ｉ・ｆｉｎ／ｆｏｕｔ）−（ｉ・ｆｉｎ／ｆｏｕｔ）｝は、（１−ｋｉ）に相当する。
【００３３】
但し、判定部１０５Ｂが、積（ｉ・ｆｉｎ／ｆｏｕｔ）が自然数であると判定した場合には、つまり、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）＝roundup（ｉ・ｆｉｎ／ｆｏｕｔ）＝ｎの場合には、出力データ値算出部１０５Ｃは、データ特定部１０５Ａが特定した入力サンプリングデータＸｎを出力サンプリングデータＹｉとして算出する。そして、サンプリング周波数変換処理部１０５は、出力データ値算出部１０５Ｃが算出した出力サンプリングデータＹｉを、出力信号送信部１０６へ出力する。
【００３４】
カウンタ１０５Ｄは、出力データ値算出部１０５Ｃが、出力サンプリングデータＹｉを算出する毎にインクリメントされる。カウンタ１０５Ｄの初期設定値は、”１”である。カウンタ１０５Ｄのカウンタ値は、出力サンプリング周波数でのサンプリングの順番ｉを示し、データ特定部１０５Ａは、カウンタ１０５Ｄのカウンタ値ｉと比率ｆｉｎ／ｆｏｕｔとの積（ｉ・ｆｉｎ／ｆｏｕｔ）に基づいて、入力サンプリングデータＸｎとＸｎ＋１を特定する。
【００３５】
出力信号送信部１０６は、ＦＩＦＯメモリを備え、サンプリング周波数変換処理部１０５から供給される出力サンプリングデータＹｉを蓄積し、クロック生成回路１０８から供給される出力デジタル信号ＳoutのＲＬクロックＲＬｏｕｔに同期して順次出力する。
【００３６】
クロック生成回路１０７は、入力デジタル信号Ｓinの供給元から供給されるＲＬクロックＲＬinに同期したＲＬクロックＲＬinを、入力信号受信部１０１とＬＰＦ部１０２と記憶処理部１０３とに供給する。
クロック生成回路１０８は、出力デジタル信号ＳoutのＲＬクロックＲＬｏｕｔを生成して出力する。ＲＬクロックＲＬoutは、出力デジタル信号Ｓoutのサンプリング周波数ｆｏｕｔと同一の周波数を有する。
【００３７】
次に、上記構成を有する非同期サンプリング周波数変換装置１のサンプリング周波数変換動作を説明する。
なお、サンプリング周波数変換動作は、ＬチャネルのデータとＲチャネルのデータそれぞれについて動作を並列に実行するが、それらは同様の処理であることから、ここでは、Ｌチャネルの処理について説明する。
このサンプリング周波数変換動作は、入力デジタル信号Ｓinを受信して記憶部１０４に入力サンプリングデータ情報を蓄積する処理と、記憶部１０４に蓄積されている入力サンプリングデータ情報を用いて、出力デジタル信号Ｓoutを生成する処理とから構成される。
まず、図３を参照して入力デジタル信号Ｓinを受信してから、記憶処理部１０３に入力サンプリングデータ情報を格納するまでの処理を説明する。
入力信号受信部１０１には、入力デジタル信号Ｓinを構成する入力サンプリングデータ（信号素片）が順次供給される。入力信号受信部１０１は、ＲＬクロックＲＬinに応答して、供給された入力サンプリングデータ（信号素片）を順次受信（ラッチ）し、ＬＰＦ部１０２に順次供給する。
ＬＰＦ部１０２は、ＲＬクロックＲＬinに応答して動作し、入力信号受信部１０１から供給される入力サンプリングデータをフィルタリングし、高周波成分を除去して記憶処理部１０３に供給する。
【００３８】
記憶処理部１０３は、クロック生成回路１０７から供給されるＲＬクロックＲＬinに応答して、図３に示す入力サンプリングデータ情報生成処理を開始する。
まず、記憶処理部１０３（正確には、記憶処理部１０３を構成するＣＰＵ）は、内部カウンタ１０３Ｃのカウンタ値（順番）ｎをインクリメントし（ステップＳ０１）、入力サンプリングデータの順番ｎを求める。
次に、記憶処理部１０３は、カウンタ値（順番）ｎと入力デジタル信号Ｓinのデータの供給周期１／ｆｉｎとの積を求めることで、サンプリング開始から第ｎ番目のサンプリングタイミングまでの経過時間Ｔｎ（＝ｎ／ｆｉｎ）を求める（ステップＳ０２）。
次に、記憶処理部１０３は、ＬＰＦ部１０２から第ｎ番目に出力された入力サンプリングデータＸｎを取得し（ステップＳ０３）、取得した入力サンプリングデータＸｎの数が所定数を越えたか否かを判定する（ステップＳ０４）。
【００３９】
取得した入力サンプリングデータＸｎの数が所定数を越えたと判定した場合には（ステップＳ０４；ＹＥＳ）、記憶部１０４に記憶されている入力サンプリングデータ情報のうちで、最も古く記憶された入力データを入力サンプリングデータ情報から廃棄し（ステップＳ０５）、ステップＳ０１の処理でインクリメントした後の内部カウンタ１０３Ｃのカウンタ値（順番）ｎとステップＳ０２の処理で求めた経過時間ＴｎとステップＳ０３の処理で取得した入力サンプリングデータＸｎとからなる入力データを入力サンプリングデータ情報に追加する（ステップＳ０６）。
【００４０】
一方、取得した入力サンプリングデータＸｎの数が所定数を越えていないと判定した場合には（ステップＳ０４；ＮＯ）、ステップＳ０５の処理をスキップして、ステップＳ０１の処理でインクリメントした後の内部カウンタ１０３Ｃのカウンタ値（順番）ｎとステップＳ０２の処理で求めた経過時間ＴｎとステップＳ０３の処理で取得した入力サンプリングデータＸｎとからなる入力データを入力サンプリングデータ情報に追加する（ステップＳ０６）。
【００４１】
以上に説明した入力サンプリングデータ情報生成処理を繰り返すことにより、図２に示すように、入力サンプリングデータ情報として、直近の所定個数の入力サンプリングデータＸが記憶部１０４に記憶される。
【００４２】
次に、図４を参照して、サンプリング周波数変換処理部１０５における変換処理を説明する。サンプリング周波数変換処理部１０５は、ＬチャネルとＲチャネルそれぞれについて変換処理を並列に実行するが、それらは同様の処理であることから、ここでは、Ｌチャネルにおける変換処理について説明する。この変換処理は、ＲＬｏｕｔをトリガとして開始される。
【００４３】
前提として、出力サンプリング周波数ｆｏｕｔに対する入力サンプリング周波数ｆｉｎの比率ｆｉｎ／ｆｏｕｔが、予め計算され、サンプリング周波数変換処理部１０５の内部メモリを構成する不揮発性メモリ等に格納されている。
データ特定部１０５Ａは、サンプリング周波数変換処理部１０５の内部メモリに記憶されている出力サンプリング周波数ｆｏｕｔに対する入力サンプリング周波数ｆｉｎの比率ｆｉｎ／ｆｏｕｔを取得する（ステップ００１）。そして、データ特定部１０５Ａは、カウンタ１０５Ｄからカウンタ値ｉを取得して（ステップ００２）、ステップ００１で取得した比率ｆｉｎ／ｆｏｕｔとカウンタ値ｉとの積（ｉ・ｆｉｎ／ｆｏｕｔ）を算出する（ステップ００３）。そして、データ特定部１０５Ａは、ステップ００３で算出した（ｉ・ｆｉｎ／ｆｏｕｔ）を切り下げたrounddown（ｉ・ｆｉｎ／ｆｏｕｔ）と、切り上げたroundup（ｉ・ｆｉｎ／ｆｏｕｔ）を算出する（ステップ００４）。
【００４４】
そして、判定部１０５Ｂは、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）と、roundup（ｉ・ｆｉｎ／ｆｏｕｔ）を比較し、roundup（ｉ・ｆｉｎ／ｆｏｕｔ）がrounddown（ｉ・ｆｉｎ／ｆｏｕｔ）と同じ値ｎであるか否かを判定する。すなわち、判定部１０５Ｂは、ステップ００３で算出した積（ｉ・ｆｉｎ／ｆｏｕｔ）が自然数であるか否かを判定する（ステップ００５）。積（ｉ・ｆｉｎ／ｆｏｕｔ）が自然数であると判定した場合には（ステップ００５；ＹＥＳ）、判定部１０５Ｂは、記憶部１０４に記憶されている入力サンプリングデータ情報のサンプリングの順番の欄を検索して、ステップ００４で算出したrounddown（ｉ・ｆｉｎ／ｆｏｕｔ）の値ｎに対応する第ｎ番目の入力サンプリングデータＸｎが存在するか否かを判定する（ステップ０２１）。
【００４５】
ステップ００４で算出したrounddown（ｉ・ｆｉｎ／ｆｏｕｔ）の値ｎに対応する第ｎ番目の入力サンプリングデータＸｎが存在すると判定された場合には（ステップ０２１；ＹＥＳ）、データ特定部１０５Ａは、当該入力サンプリングデータＸｎを出力サンプリングデータＹｉのサンプリングタイミングの直前、直後のタイミングでサンプリングされたデータとして特定する（ステップ０２２）。そして、出力データ値算出部１０５Ｃは、データ特定部１０５Ａが特定した入力サンプリングデータＸｎを出力サンプリングデータＹｉとして算出し、サンプリング周波数変換処理部１０５は、出力データ値算出部１０５Ｃが算出した出力サンプリングデータＹｉ（入力サンプリングデータＸｎ）を出力信号送信部１０６へ出力する（ステップ０２３）。そして、ステップ００９の処理へ進む。
【００４６】
一方、入力サンプリングデータＸｎが存在しないと判定された場合には（ステップ０２１；ＮＯ）、サンプリング周波数変換処理部１０５は、カウンタ１０５Ｄのカウンタ値を初期化して（ステップ０４１）、変換処理を終了する。
【００４７】
一方、積（ｉ・ｆｉｎ／ｆｏｕｔ）が自然数でないと判定した場合には（ステップ００５；ＮＯ）、判定部１０５Ｂは、記憶部１０４に記憶されている入力サンプリングデータ情報のサンプリングの順番の欄を検索して、ステップ００４で算出したrounddown（ｉ・ｆｉｎ／ｆｏｕｔ）の値ｎに対応する第ｎ番目の入力サンプリングデータＸｎと、第（ｎ＋１）番目の入力サンプリングデータＸｎ＋１とがいずれも存在するか否かを判定する（ステップ００６）。少なくとも入力サンプリングデータＸｎ＋１が存在しないと判定された場合には（ステップ００６；ＮＯ）、ステップ０４１の処理へ進み、サンプリング周波数変換処理部１０５は、カウンタ１０５Ｄのカウンタ値を初期化すると共に、記憶部１０４に記憶されている入力サンプリングデータ情報を削除し（ステップ０４１）、変換処理を終了する。
【００４８】
一方、入力サンプリングデータＸｎとＸｎ＋１とがいずれも存在すると判定された場合には（ステップ００６；ＹＥＳ）、データ特定部１０５Ａは、入力サンプリングデータＸｎとＸｎ＋１を特定する（ステップ００７）。そして、出力データ値算出部１０５Ｃは、データ特定部１０５Ａが特定した入力サンプリングデータＸｎとＸｎ＋１とを用い、上述した出力サンプリングデータＹｉの算出式（数１）からＹｉを算出し、サンプリング周波数変換処理部１０５は、出力データ値算出部１０５Ｃが算出した出力サンプリングデータＹｉを出力信号送信部１０６へ出力する（ステップ００８）。そして、サンプリング周波数変換処理部１０５は、カウンタ１０５Ｄのカウンタ値をインクリメントし（ステップ００９）、ステップ００１の処理に戻り前述の処理を繰り返す。
【００４９】
ここで、入力サンプリング周波数ｆｉｎと出力サンプリング周波数ｆｏｕｔをそれぞれ４８ｋＨｚ、４４．１ｋＨｚとして、図２、図４、図５を参照し、具体的な数値を例に、各部の動作を説明する。図５は、図２と同様に、８ｋＨｚの正弦波ｓｉｎ（２π・８０００・ｔ）を本実施形態における変換処理した場合の、出力サンプリング周波数でのサンプリングの順番ｉと、順番ｉと比率ｆｉｎ／ｆｏｕｔとの積（ｉ・ｆｉｎ／ｆｏｕｔ）と、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）と、roundup（ｉ・ｆｉｎ／ｆｏｕｔ）と、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）＝ｎの時の入力サンプリングデータＸｎと、入力サンプリングデータＸｎ＋１と、の対応関係を示している。
【００５０】
データ特定部１０５Ａは、サンプリング周波数変換処理部１０５の内部メモリに記憶されている比率ｆｉｎ／ｆｏｕｔとカウンタ１０５Ｄのカウンタ値ｉを取得する（ステップ００１、００２）。そして、データ特定部１０５Ａは、比率ｆｉｎ／ｆｏｕｔとカウンタ値ｉとの積を求める（ステップ００３）。
例えば、カウンタ値ｉが”１”の時、ｉ・ｆｉｎ／ｆｏｕｔ＝１x（４８÷４４．１）＝１．０８８４３５３７４の場合、データ特定部１０５Ａは、ｉ・ｆｉｎ／ｆｏｕｔの値として１．０８８４３５３７４を算出する。
次に、データ特定部１０５Ａは、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）とroundup（ｉ・ｆｉｎ／ｆｏｕｔ）を算出する（ステップ００４）。ｉ・ｆｉｎ／ｆｏｕｔ＝１．０８８４３５３７４であるとすると、データ特定部１０５Ａは、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）＝１、roundup（ｉ・ｆｉｎ／ｆｏｕｔ）＝２をそれぞれ算出する。
【００５１】
次に、判定部１０５Ｂは、積（ｉ・ｆｉｎ／ｆｏｕｔ）が自然数か否かを判定する（ステップ００５）。ｉ・ｆｉｎ／ｆｏｕｔ＝１．０８８４３５３７４とすると、ステップ００５でＮＯと判別され、判定部１０５Ｂは、第１（rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）＝１）番目と第２（roundup（ｉ・ｆｉｎ／ｆｏｕｔ）＝２）番目の入力サンプリングデータＸ１とＸ２とがいずれも記憶部１０４に記憶されている入力サンプリングデータ情報に存在するか否かを判定する（ステップ００６）。記憶部１０４に格納されている入力サンプリングデータ情報が図２に示すものであると仮定すると、入力サンプリングデータＸ１とＸ２はいずれも存在し（ステップ００６；ＹＥＳ）、データ特定部１０５Ａは、Ｘ１＝０．５、Ｘ２＝０．８６６０２５４０４を特定する（ステップ００７）。
【００５２】
次に、出力データ値算出部１０５Ｃは、データ特定部１０５Ａが特定した入力サンプリングデータＸ１とＸ２のデータ値と、積（ｉ・ｆｉｎ／ｆｏｕｔ）の値と、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）とroundup（ｉ・ｆｉｎ／ｆｏｕｔ）の値を、上述した算出式（数１）に当てはめて、出力デジタル信号における第ｉ番目の出力サンプリングデータＹｉの値を算出し、算出した値を出力信号送信部１０６に出力する（ステップ００８）。本例では、ｉ＝１なので、出力データ値算出部１０５Ｃが算出する第１番目の出力サンプリングデータＹ１は、｛０．５x（２−１．０８８４３５３７４）＋０．８６６０２５４０４x（１．０８８４３５３７４−１）｝＝０．５３２３７となる。次に、サンプリング周波数変換処理部１０５は、カウンタ１０５Ｄのカウンタ値をインクリメントし（ステップ００９）、ステップ００１の処理に戻り、一連の処理を繰り返すことで、順次出力サンプリングデータＹｉを算出する。
【００５３】
このように、サンプリング周波数変換処理部１０５は、ＬチャネルとＲチャネルそれぞれについて、上述した出力サンプリングデータＹｉの算出式（数１）を用いて、出力サンプリング周波数における出力サンプリングデータＹｉを順次算出し、出力信号送信部１０６に順次供給する。
なお、サンプリング周波数変換処理部１０５は、出力サンプリングデータＹiを、ＲＬクロックＲＬoutの１周期に１データを演算する処理速度かそれより若干速い速度で生成することが望ましい。
出力信号送信部１０６は、サンプリング周波数変換処理部１０５から供給された出力サンプリングデータＹｉをＦＩＦＯメモリに蓄積し、クロック生成回路１０８から供給される出力信号のＲＬクロックＲＬoutに同期して、順次出力する。
【００５４】
以上説明したように、本実施形態における非同期サンプリング周波数変換装置１を構成することで、カウンタ１０５Ｄのカウンタ値ｉとサンプリング周波数変換処理部１０５の内部メモリに記憶されている比率ｆｉｎ／ｆｏｕｔとの積（ｉ・ｆｉｎ／ｆｏｕｔ）に基づいて、出力サンプリングデータＹｉのサンプリングタイミングの直前及び直後にサンプリングされた入力サンプリングデータＸｎとＸｎ＋１を容易に特定することが可能となる。また、本実施形態における出力サンプリングデータＹｉの算出式（数１）からも分かるように、カウンタ１０５Ｄのカウンタ値ｉと比率ｆｉｎ／ｆｏｕｔとの積（ｉ・ｆｉｎ／ｆｏｕｔ）と積（ｉ・ｆｉｎ／ｆｏｕｔ）を求め、求めた積の少数部分を切り捨て・切り上げして自然数ｎとｎ＋１を求め、求めた自然数ｎとｎ＋１を用いて入力サンプリングデータＸｎとＸｎ＋１を特定し、それらのデータ値を用いて、出力サンプリングデータＹｉを算出することができる。このため、出力サンプリングデータＹｉのサンプリングタイミングの直前にサンプリングされた入力サンプリングデータＸｎのサンプリングされた順番を示す”ｎ”を特定し、その”ｎ”を用いて補間係数ｋｉをそれぞれ算出している従来の直線補間を用いた方法と比較して、出力サンプリングデータＹｉを算出するための演算量を軽減することができる。また、これにより、非同期サンプリング周波数変換装置１での変換処理を高速化することが可能となる。
また、ＬＰＦ部１０２は、入力デジタル信号Ｓinの入力サンプリング周波数ｆinで動作すればよく、比較的低周波数での動作が可能である。
また、記憶部１０４に、入力サンプリングデータＸｎを一度保存するため、入力されるデータにジッタを含むデータがあったとしても、そのジッタを吸収することができる。
【００５５】
（実施形態２）
実施形態１では、サンプリング周波数変換処理部１０５の出力データ値算出部１０５Ｃが、上述した算出式（数１）より出力サンプリングデータＹｉを算出した。図６は、実施形態１における出力データ値算出部１０５Ｃが算出した出力サンプリング周波数４４．１ｋＨｚでのＬチャネルの出力サンプリングデータＹｉを示している。図７は、図６に示した出力サンプリングデータＹｉ、すなわち、実施形態１における出力データ値算出部１０５Ｃが算出した出力サンプリング周波数４４．１ｋＨｚでのＬチャネルの出力サンプリングデータＹｉから再現した波形Ｗｏｕｔと、入力サンプリング周波数４８ｋＨｚでのＬチャネルの入力サンプリングデータＸｎから再現した波形Ｗｉｎを示している。
【００５６】
図７を参照して、波形Ｗｏｕｔと波形Ｗｉｎとを比較すると、波形Ｗｏｕｔの振幅が波形Ｗｉｎの振幅と比べて減少している。これは、背景技術において上述したように、直線補間の周波数特性によるものである。そこで、本実施形態では、実施形態１において算出した出力サンプリングデータＹｉを基準値とし、入力サンプリングデータＸｎとＸｎ＋１との間の変化量｜Ｘｎ−Ｘｎ＋１｜を用いて基準値Ｙｉを補正することで、波形Ｗｉｎにより近い波形を出力サンプリングデータから再現できるようする。こうすることで、直線補間の周波数特性に由来する振幅の減少に伴う波形歪みを除去することが可能となる。
【００５７】
本実施形態における非同期サンプリング周波数変換装置１’は、図８に示すように、入力信号受信部１０１と、ＬＰＦ部１０２と、記憶処理部１０３と、記憶部１０４と、サンプリング周波数変換処理部１０５と、出力信号送信部１０６と、を備え、基本的な構成は実施形態１の場合と同じである。但し、サンプリング周波数変換処理部１０５は、さらに、変化量算出部１０５Ｅと、補正部１０５Ｆとを備える。また、サンプリング周波数変換処理部１０５の内部メモリは、さらに、後述の本実施形態における出力サンプリングデータＺｉの算出式に含まれる補正係数αを記憶する。この補正係数αは、予め実験的に求めた値であり、例えば、入力信号の周波数帯域における直線補間の周波数特性による振幅の減少率を求めることで補正係数αを決定する。なお、補正係数αは波形クリップが生じない様に決定するのが好ましい。
【００５８】
変化量算出部１０５Ｅは、データ特定部１０５Ａが特定した入力サンプリングデータＸｎとＸｎ＋１との間の変化量｜Ｘｎ−Ｘｎ＋１｜を算出する。
【００５９】
補正部１０５Ｆは、出力データ値算出部１０５Ｃが算出した出力サンプリングデータＹｉを基準値として、この基準値Ｙｉを変化量算出部１０５Ｅが算出した変化量｜Ｘｎ−Ｘｎ＋１｜に基づいて補正する。より具体的には、基準値Ｙｉを次に示す算出式で補正し、補正後の値を出力サンプリングデータＺｉとして算出する。
（数２）
Ｚｉ＝Ｙｉ・（１＋α・｜Ｘｎ−Ｘｎ＋１｜）
【００６０】
サンプリング周波数変換処理部１０５は、補正部１０５Ｆによる補正後の値Ｚｉを第ｉ番目の出力サンプリングデータとして、出力信号送信部１０６へ出力する。
【００６１】
図９は、補正係数αを０．２とした場合の、入力サンプリング周波数と出力サンプリング周波数をそれぞれ４８ｋＨｚ、４４．１ｋｈＨｚとして、８ｋＨｚの正弦波ｓｉｎ（２π・８０００・ｔ）を変換処理して算出した出力サンプリングデータＺｉの一覧を示している。図１０は、図９に示した出力サンプリングデータＺｉ、すなわち、補正部１０５Ｆが算出した出力サンプリング周波数４４．１ｋＨｚでのＬチャネルの出力サンプリングデータＺｉから再現した波形ＷＺｏｕｔと、入力サンプリング周波数４８ｋＨｚでのＬチャネルの入力サンプリングデータＸｎから再現した波形Ｗｉｎを示している。
【００６２】
図１０を参照して、波形ＷＺｏｕｔと波形Ｗｉｎとを比較すると、実施形態１で算出した出力サンプリングＹｉから再現した波形Ｗｏｕｔと波形Ｗｉｎとを示している図７と比べて、波形ＷＺｏｕｔは波形Ｗｉｎにより近いことが分かる。このことは、図６と図９にそれぞれ示した出力サンプリングデータＹｉとＺｉの値からも分かる。例えば、図６のＹ３と図９のＺ３を比較すると、Ｙ３＝０．９６４４５６でＺ３＝０．９９０２９８であることから、Ｚ３の方が、より正弦波ｓｉｎ（２π・８０００・ｔ）の振幅”１”に近く、直線補間の周波数特性に由来する振幅の減少が改善されている。
【００６３】
本実施形態において説明した、入力サンプリングデータＸｎとＸｎ＋１間の変化量｜Ｘｎ−Ｘｎ＋１｜を用いた出力サンプリングデータＺｉの算出方法は、入力信号の周波数が高い程、直線補間の周波数特性に由来する振幅の減少率が大きくなり、それに伴う波形歪みが顕著となることから、高い効果を発揮する。
【００６４】
上記実施形態１及び２において、入力サンプリング周波数ｆｉｎと出力サンプリング周波数ｆｏｕｔをそれぞれ４８ｋＨｚと４４．１ｋＨｚとして説明したが、それに限定されるものではなく、入力サンプリング周波数ｆinと出力サンプリング周波数ｆoutはその大小関係を含めて任意であり、例えば、入力サンプリング周波数ｆｉｎが４８ｋＨｚで出力サンプリング周波数ｆｏｕｔが３２ｋＨｚであってもよいし、入力サンプリング周波数ｆｉｎが４４．１ｋＨｚ又は３２ｋＨｚで出力サンプリング周波数ｆｏｕｔが４８ｋＨｚであってもよい。
なお、サンプリング周波数変換処理部１０５での変換処理において、サンプリング周波数をさげる場合には、入力デジタル信号Ｓinをナイキスト周波数以下にするためにＬＰＦ部１０２が必要となるが、サンプリング周波数をあげる場合には、ＬＰＦ部１０２は不要となる。
【００６５】
また、入力サンプリング周波数ｆｉｎが可変する非同期サンプリング周波数変換装置においても、上記実施形態１及び２で説明した本発明を適用できる。この場合、サンプリング周波数変換処理部１０５が、出力サンプリング周波数ｆｏｕｔに対する入力サンプリング周波数ｆｉｎの比率ｆｉｎ／ｆｏｕｔを算出するように構成すればよい。また、デジタル機器で一般的に使用されるサンプリング周波数は限定されていることから、予め、出力サンプリング周波数ｆｏｕｔに対するそれらのサンプリング周波数の比率をサンプリング周波数変換処理部１０５の内部メモリが保持するようにしてもよい。
また、上記実施形態１及び２において、サンプリング周波数変換処理部１０５の内部メモリが、予め、出力サンプリング周波数ｆｏｕｔに対する入力サンプリング周波数ｆｉｎの比率ｆｉｎ／ｆｏｕｔを記憶しているものとして説明したが、これに限定されるものではなく、サンプリング周波数変換処理部１０５が、比率ｆｉｎ／ｆｏｕｔを算出するようにしてもよい。
また、記憶処理部１０３が経過時間Ｔｎを計算し、記憶部１０４に記録する例を示したが、サンプリング周波数変換処理部１０５が、これを計算するようにしてもよい。
【００６６】
上記実施形態１において、記憶部１０４が、出力サンプリングデータＹｉのサンプリングの順番を示す”ｉ”と、出力サンプリング周波数ｆｏｕｔに対する入力サンプリング周波数ｆｉｎの比率ｆｉｎ／ｆｏｕｔと出力サンプリングデータＹｉのサンプリングの順番を示す”ｉ”との積（ｉ・ｆｉｎ／ｆｏｕｔ）と、rounddown（ｉ・ｆｉｎ／ｆｏｕｔ）の値ｎとの組からなる、図１１に例示する、出力サンプリング情報を予め保持するように構成してもよい。こうすることで、データ特定部１０５Ａは、出力サンプリングデータＹｉのサンプリングの順番を示すカウンタ１０５Ｄのカウンタ値ｉからrounddown（ｉ・ｆｉｎ／ｆｏｕｔ）の値ｎを特定することができることから、出力サンプリンデータの演算時間をさらに短縮することができ、サンプリング周波数変換処理部１０５での変換処理をさらに高速化することが可能となる。
【００６７】
上記実施形態２において、出力サンプリングデータＺｉの算出式（数２）を、Ｚｉ＝Ｙｉ・（１＋α・｜Ｘｎ−Ｘｎ＋１｜）として説明したが、これに限定されるものではなく、Ｆ（ｘ）を関数、βを補正係数として、Ｚｉ＝Ｙｉ・｛１＋β・Ｆ（｜Ｘｎ−Ｘｎ＋１｜）｝で示される算出式により出力サンプリングデータＺｉを算出してもよい。
【００６８】
なお、上記実施形態において、実行されるプログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read-Only Memory)、ＤＶＤ、ＭＯ（Magneto-Optical Disc)等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをインストールすることにより、上述の処理を実行することとしてもよい。
また、プログラムをインターネット等の通信ネットワーク上の所定のサーバ装置が有するディスク装置等に格納しておき、例えば、搬送波に重畳させて、取得等するようにしてもよい。
【００６９】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。
【符号の説明】
【００７０】
１，１’          非同期サンプリング周波数変換装置
１０１            入力信号受信部
１０２            ＬＰＦ部
１０３            記憶処理部
１０３Ｃ          内部カウンタ
１０４            記憶部
１０５            サンプリング周波数変換処理部
１０５Ａ          データ特定部
１０５Ｂ          判定部
１０５Ｃ          出力データ値算出部
１０５Ｄ          カウンタ
１０５Ｅ          変化量算出部
１０５Ｆ          補正部
１０６            出力信号送信部
１０７，１０８    クロック生成回路
Ｓin              入力デジタル信号
Ｓout             出力デジタル信号
Ｗｉｎ              入力波形
Ｗｏｕｔ，ＷＺｏｕｔ  出力波形
【図１】
0005845934.tif 000002
【図２】
0005845934.tif 000003
【図３】
0005845934.tif 000004
【図４】
0005845934.tif 000005
【図５】
0005845934.tif 000006
【図６】
0005845934.tif 000007
【図７】
0005845934.tif 000008
【図８】
0005845934.tif 000009
【図９】
0005845934.tif 000010
【図１０】
0005845934.tif 000011
【図１１】
0005845934.tif 000012