JP3221041B2 - サンプリング周波数変換器 - Google Patents

サンプリング周波数変換器

Info

Publication number
JP3221041B2
JP3221041B2 JP08811392A JP8811392A JP3221041B2 JP 3221041 B2 JP3221041 B2 JP 3221041B2 JP 08811392 A JP08811392 A JP 08811392A JP 8811392 A JP8811392 A JP 8811392A JP 3221041 B2 JP3221041 B2 JP 3221041B2
Authority
JP
Japan
Prior art keywords
sampling frequency
output
address
frequency ratio
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP08811392A
Other languages
English (en)
Other versions
JPH05259812A (ja
Inventor
友詞 鹿窪
繁樹 木村
弘海 五月女
幸二 新美
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP08811392A priority Critical patent/JP3221041B2/ja
Priority to US08/121,212 priority patent/US5365468A/en
Publication of JPH05259812A publication Critical patent/JPH05259812A/ja
Application granted granted Critical
Publication of JP3221041B2 publication Critical patent/JP3221041B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Analogue/Digital Conversion (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、入力サンプル列をこ
れと非同期の出力サンプル列に変換するためのサンプリ
ング周波数変換器に関し、変換精度の向上を図ったもの
である。
【0002】
【従来の技術】ディジタル・オーディオ装置等のディジ
タル機器には、32kHz 、44.1kHz 、48kHz 等の
様々なサンプリング周波数が使用されており、サンプリ
ング周波数が異なる機器どうしをつなぐ場合、送出側機
器から送出されるサンプル列を受取側機器のサンプリン
グ周波数に変換する必要がある。例えば、48kHz のサ
ンプリング周波数でスタジオでレコーディングしたマス
タ録音をCD(コンパクト・ディスク)用にダビングす
る場合、サンプリング周波数を44.1kHz に変換する
必要がある。
【0003】また、サンプリング周波数は同じであるが
別々のマスタクロックで駆動されているディジタル機器
どうしをつなぐ場合も同様に、送出側機器から送出され
るサンプル列を受取側機器のサンプリング周波数に同期
させる必要があり、これも広い意味でのサンプリング周
波数変換に相当する。例えば、サンプリング周波数が4
4.1kHz のCDを再生して同じくサンプリング周波数
44.1kHz のディジタル録音機器でダビングする場
合、CDプレーヤとディジタル録音機器がそれぞれ別々
のマスタクロックで駆動されている場合、CDから再生
されるディジタル信号をディジタル録音機器のサンプリ
ング周波数に同期させるサンプリング周波数変換が必要
となる。
【0004】従来のサンプリング周波数変換の方法とし
て、入力サンプル列と出力サンプル列のサンプリング周
波数比を計測し、このサンプリング周波数比から入力サ
ンプル列に対する出力サンプル列の出力タイミングを順
次求め、各出力タイミングにおけるサンプル値を入力サ
ンプル列の補間により求めてこれを出力サンプル列とし
て出力するようにしたものがあった。
【0005】
【発明が解決しようとする課題】前記サンプリング周波
数変換方法によれば、サンプリング周波数比の検出精度
が変換精度に直接影響するため、サンプリング周波数比
を高精度で検出することが望まれる。
【0006】この発明は、上述の点に鑑みてなされたも
ので、サンプリング周波数比の検出精度を高めてサンプ
リング周波数変換精度を向上させたサンプリング周波数
変換器を提供しようとするものである。
【0007】
【課題を解決するための手段】請求項1記載の発明は、
RAMと、入力サンプル列のサンプリング周波数と出力
サンプル列のサンプリング周波数の周波数比を計測する
サンプリング周波数比計測手段と、この計測されたサン
プリング周波数比を実現する出力サンプルを補間で求め
るのに必要な入力サンプルを当該サンプリング周波数比
に基づいて前記RAMから読み出す読出制御手段と、こ
の読出制御手段により前記RAMから読出された入力サ
ンプルデータに基づき前記出力サンプルを補間で求める
補間手段とを具備してなるサンプリング周波数変換器に
おいて、前記サンプリング周波数比計測手段が、前記入
力サンプルに同期したクロックをカウントするカウンタ
と、前記出力サンプルの複数ワード周期での前記カウン
タのカウント値を計測し、このカウント値を前記サンプ
リング周波数比の計測値として出力するカウント値出力
手段とを具備してなり、前記サンプリング周波数比計測
手段が、前記計測されたサンプリング周波数比の変動を
検出するサンプリング周波数比変動検出手段と、この検
出されるサンプリング周波数比の変動が小さい時は前記
サンプリング周波数比の計測を行なう前記出力サンプル
の複数ワード周期の長さを長くし、サンプリング周波数
比の変動が大きい時は当該複数ワード周期の長さを短く
するサンプリング周波数比計測期間制御手段とを具備し
てなるものである。
【0008】
【0009】また、請求項記載の発明は、RAMと、
入力サンプル列のサンプリング周波数と出力サンプル列
のサンプリング周波数の周波数比を計測するサンプリン
グ周波数比計測手段と、この計測されたサンプリング周
波数比を実現する出力サンプルを補間で求めるのに必要
な入力サンプルを当該サンプリング周波数比に基づいて
前記RAMから読み出す読出制御手段と、この読出制御
手段により前記RAMから読出された入力サンプルデー
タに基づき前記出力サンプルを補間で求める補間手段と
を具備してなるサンプリング周波数変換器において、前
記サンプリング周波数比計測手段が、前記入力サンプル
に同期したクロックをカウントするカウンタと、前記出
力サンプルの複数ワード周期での前記カウンタのカウン
ト値を計測し、このカウント値を前記サンプリング周波
数比の計測値として出力するカウント値出力手段とを具
備してなり、前記読出制御手段が、前記RAMの書込ア
ドレスと読出アドレスとの差を検出するアドレス差検出
手段と、この検出されるアドレス差により前記読出アド
レスが前記書込アドレスに対して所定範囲内にあること
が検出された時に前記読出アドレスを当該所定範囲から
出るように補正する読出アドレス補正手段とを具備して
なるものである。
【0010】
【作用】請求項1、2記載の発明によれば、入力サンプ
ルに同期したクロックをカウンタでカウントし、出力サ
ンプルの複数ワード周期でのカウント値をサンプリ
周波数比計測値として用いるようにしたので、単一ワー
ド周期でのカウント値を計測する場合に比べて丸め誤差
の影響を低減でき計測値の桁数が増大し、その分サンプ
リング周波数比計測値の分解能が向上する。したがっ
て、サンプリング周波数比の検出精度が向上し、サンプ
リング周波数変換の変換精度を向上させることができ
る。
【0011】また、このように出力サンプルの複数ワー
ド周期でのカウント値をサンプリング周波数比として計
測すると、サンプリング周波数比が変動している場合計
測値の追従性が悪くなり、かえって検出精度が悪くなる
ことが考えられる。そこで、請求項記載の発明ではサ
ンプリング周波数比の変動を検出して、変動が大きい時
はサンプリング周波数比の計測を行なう出力サンプルの
複数ワード周期の長さを短くすることにより追従性を向
上させている。
【0012】また、入力サンプル列をRAMに順次書込
み、サンプリング周波数比に応じてRAMから入力サン
プル列を読み出して補間処理して出力サンプル列を作成
する場合サンプリング周波数比が変動しているとRAM
の読出アドレスが書込アドレスを追い越したり、逆にR
AMの読出アドレスが書込アドレスに追い越されたりす
ることがあり、いずれの場合も出力データに不連続が生
じて大きなノイズになってしまう。そこで、請求項
載の発明では、RAMの書込アドレスと読出アドレスと
の差を検出してこのアドレス差が所定範囲内にあること
が検出された時に読出アドレスを当該所定範囲から出る
ように補正することにより、読出アドレスが書込アドレ
スに対して追い越したり追い越されたりするのを防止し
て、大きなノイズの発生を防止している。
【0013】
【実施例】以下、この発明の一実施例を説明する。はじ
めに、その概要構成を図2に示す。ここでは、サンプリ
ング周波数fs1で動作しているディジタル機器10(例
えば、ディジタル・オーディオ再生機器等)から出力し
たデータをサンプリング周波数変換器12でサンプリン
グ周波数をfs2に変換して、このサンプリング周波数fs
2で動作しているディジタル機器14(例えば、ディジ
タル・オーディオ録音機器、ディジタル・オーディオ・
ミキサ等)に入力する場合について示している。
【0014】ディジタル機器10から出力されるデータ
(入力サンプル列)は、データ入力端子16を介してサ
ンプリング周波数変換器12に入力される。まずディジ
タル・オーディオ・インタフェース・レシーバ18(バ
イフェーズから内部データフォーマットにしたがったデ
ータ形式に変換するための回路)により、このサンプリ
ング周波数変換器12の各部とのデータ形式や動作クロ
ックのインターフェースがとられて、入力ワードクロッ
ク(周波数がfs1のクロック)と、入力ビットクロック
(入力データの最小単位のクロック(再生クロック等)
で、この実施例では入力ワードクロックのM倍、例えば
256倍などのクロックが用いられている。Mが大きく
なれば周波数fs1,fs2の計測精度が向上する。)
が再生される。
【0015】クロック同期された入力サンプル列は、
倍オーバサンプリングフィルタ、例えば8倍オーバサン
プリング・フィルタ20(オーバサンプリング手段)で
8倍オーバサンプリングされ、非同期RAMバッファ2
2(RAM)に順次書込まれていく。Nがより大きくな
れば変換精度が向上する。書込制御手段24はこの書込
みを制御するもので、入力ワードクロックに従って非同
期RAMバッファ22に書込アドレスを指示する。
【0016】ディジタル機器14からは、出力ワードク
ロック(ディジタル機器14で使われるサンプリング周
波数fs2のクロック)と、出力ビットクロック(ディジ
タル機器14で使われる最小単位のクロック)が出力さ
れ、クロック入力端子26,28から入力される。サン
プリング周波数比計測手段30は、入力側のサンプリン
グ周波数fs1と出力側のサンプリング周波数fs2とを比
較し、サンプリング周波数比Fsを示すデータを出力す
る。
【0017】読出制御手段32は、計測されたサンプリ
ング周波数比Fsを実現する出力サンプル列を補間で作
るのに必要な8倍オーバサンプリングデータを非同期R
AMバッファ22から読出す制御を行なう。また、多項
式補間用係数ROMの読出アドレスおよび直線補間用係
数の出力も行なう。
【0018】補間演算部34は非同期RAMバッファ2
2から読出された8倍オーバサンプリングデータを用い
て、多項式補間手段36で目的とする出力サンプルの前
後の2点の補間データを多項式補間で求める。ここでは
多項式補間としては、ラグランジェk次補間、例えば
グランジェ7次補間を用いている。kが大きくなれば分
解能(精度)が向上する。さらに、直線補間手段38で
この2点の多項式(ラグランジェ)補間データ間を直線
補間して目的とする出力サンプル値を求める。
【0019】このようにして、補間演算部34からディ
ジタル機器14に同期したサンプリング周波数fs2で
順次出力される出力サンプル列は、データ出力端子40
から出力されて、そのままディジタル機器14に入力さ
れて必要な処理がなされる。
【0020】以上のサンプリング周波数変換の過程を図
3に示す。は入力サンプル列A1,A2,……を示し
たもので、これをサンプリング周波数が異なる出力サン
プル列a1,a2,……に変換するものとし、このうち
出力サンプルa3を作る過程を〜で示している。
【0021】は、入力サンプルA4,A5の区間に8
倍オーバサンプリングによって新たなサンプルA4−
1,A4−2,……,A4−7が均等の間隔で挿入され
て、このA4,A5の区間を8分割している。なお、こ
のオーバサンプリングはサンプリング周波数比に無関係
にすべてのオーバサンプリングデータが順次作成されて
前記非同期RAMバッファ22に書込まれる。
【0022】は、オーバサンプリングデータを用い
て、目的とする出力サンプルa3が含まれるA4−3,
A4−4の区間をラグランジェ7次補間したデータを示
すものである。ここではオーバサンプリングデータの1
区間をラグランジェ7次補間で128等分する場合につ
いて示している。なお、実際の演算は、補間データA4
−3−1、A4−3−2,……,A4−3−127をす
べて算出するのではなく、直線補間に必要なデータすな
わち目的とする出力サンプルa3を挾んでその前後の2
点の補間データ(ここではA4−3−45,A4−3−
46)のみ作成する。なお、どの位置の補間データを作
成するかは、後述するようにサンプリング周波数比Fs
によって決まる。
【0023】は、ラグランジェ補間データA4−3−
45,A4−3−46の区間を直線補間したデータを示
すものである。ここでは、ラグランジェ補間データの隣
接する2点間を直線補間で211等分する場合について示
している。なお、実際の演算は補間データA4−3−4
5−1,A4−3−45−2,……,A4−3−45−
(211−1)をすべて算出するのではなく、目的とする
出力サンプルa3の補間データのみ作成する。なお、ど
の位置の補間データを作成するかは後述するようにサン
プリング周波数比Fsによって決まる。
【0024】以上の工程により出力サンプルa3のサン
プル値が高精度に求まる。なお、次の出力サンプルa4
は、出力サンプルa3から1/fs2離れた時点の出力
サンプルを上記同様にして求めることによって得られ
る。
【0025】次に、図2のサンプリング周波数変換器1
2の具体例を図1に示す。図1の各部について説明す
る。 (1) コントロール回路31 コントロール回路31は図1の回路の各部にコントロー
ル信号CONTを送出して、各部が所定の動作をするの
に必要な制御を行なう。また各部からの信号CONT′
を入力する。
【0026】 (2) サンプリング周波数比計測手段30 サンプリング周波数比計測手段30はlビット語長、例
えば22ビット語長のフリーランカウンタ42を具え、
これでサンプリング周波数比Fsの計測を行なってい
る。なお、フリーランカウンタとは、リセットをかけず
にフリーランさせる循環式のカウンタという意味であ
る。この22ビットカウンタ42は入力サンプリング周
波数fs1の256倍の周波数を有する入力ビットクロ
ックをカウントしており、出力サンプリング周波数fs
2に同期した周期内でのこの22ビットカウンタ42の
カウント数を計測する。このカウント数は入力サンプリ
ング周波数fs1が高くなれば(あるいは出力サンプリ
ング周波数fs2が低くなれば)多くなり、入力サンプ
リング周波数fs1が低くなれば(あるいは出力サンプ
リング周波数fs2が高くなれば)少なくなるから、こ
のカウント数が両サンプリング周波数fs1,fs2の
周波数比Fsに対応したものとなる。
【0027】ここでは、サンプリング周波数比Fsの計
測精度(分解能)を向上させるため、図4に示すよう
に、L出力ワードクロック、例えば8192出力ワード
クロックもの長い期間を1回の計測周期として、この間
に22ビットカウンタ42でカウントされるカウント数
を8192出力ワードクロックの期間でのサンプリング
周波数比Fsの平均値として出力する。
【0028】この計測は、具体的には次のようにして行
なわれる。図1において、22ビットカウンタ42のカ
ウント値は、8192出力ワードクロックごとにレジス
タ44,46に順次転送されていく。減算器48(カウ
ント値出力手段)は両レジスタ44,46に保持された
カウント値を引算して直前の8192出力ワードクロッ
クの期間での22ビットカウンタ42のカウント数をサ
ンプリング周波数比Fsのデータとして出力する。した
がって、サンプリング周波数比Fsのデータは8192
出力データワードごとに更新される。1出力データワー
ドごとの更新の場合、下位ビットの丸め誤差が生じる
が、このように複数ワードで行なうとその影響をほとん
どなくすことができる。
【0029】サンプリング周波数比Fsのデータはセレ
クタ60を介して読出制御手段32に供給されて、非同
期RAMバッファ22の読出アドレス、ラグランジェ7
次補間用係数ROM86の読出アドレス、直線補間係数
oef の決定に用いられる。
【0030】ところで、サンプリング周波数比Fsは何
らかの理由で時間軸上で急激に大きく変動した場合に
は、8192出力ワードクロックごとにサンプリング周
波数比Fsを計測していたのでは、サンプリング周波数
比Fsの変動に対して計測値が追従できず、その時点で
の正確なサンプリング周波数比Fsを示さなくなる。こ
のため、非同期RAMバッファ22において読出アドレ
スが書込アドレスを追い越したり追い越されたりして大
きなノイズを発生するなどの問題を起こすおそれがあ
る。
【0031】このような問題の解決策として、毎出力ワ
ードクロックごとの22ビットカウンタ42のカウント
値を過去8192回分にわたって順次RAMに記憶して
いき、現在のカウント値と8192出力ワードクロック
前のカウント値との差を毎出力ワードクロックごとに逐
次求め、これを各時点のサンプリング周波数比Fsとし
て出力する方法が考えられる。このようにすれば、毎出
力ワードクロックごとに新たなサンプリング周波数比が
求められるので、サンプリング周波数比Fsの変動に対
する追従性は良くなるが、その反面容量が非常に大きな
RAMが必要となる欠点がある。
【0032】そこで、ここでは容量が大きなRAMを必
要とせずにサンプリング周波数比Fsの変動に対する追
従性を良くする方法を提案する。これは、図5に示すよ
うに、サンプリング周波数比Fsを計測する周期をS出
力ワードクロック、例えば16出力ワードクロックと
し、毎出力ワードクロックごとの22ビットカウンタ4
2のカウント値を過去16回分にわたって順次RAMに
記憶していき、現在のカウント値と16ワードクロック
前のカウント値との差を毎出力ワードクロックごとに逐
次求め、これを各時点のサンプリング周波数比Fsのデ
ータとして出力するようにしたものである。
【0033】このようにすれば、毎出力ワードクロック
ごとに新たなサンプリング周波数比Fsが求められるの
で、サンプリング周波数比Fsの変動に対する計測値の
追従性は良好となる。また、このようにすると、サンプ
リング周波数比Fsを平均化する時間が短くなる(81
92出力ワードクロックから16出力ワードクロックに
なる)ので一見分解能は低下するように思われるが、周
波数比が変動している場合は平均化する期間が短いほう
が変動の影響が強く現われて実際のサンプリング周波数
比Fsに近い計測値が得られることになる。ただし、平
均化する時間があまり短いとジッタの影響も出てくるの
で、ジッタの影響があまり出ない値としてここでは16
出力ワードクロックという期間を設定している。
【0034】なお、16(=24 )出力ワードクロック
でのカウント値は、8192(=213)出力ワードクロ
ックでのカウント値に比べて 24 ÷213=2-9 の大きさになるから、8192出力ワードクロックでの
サンプリング周波数Fsの計測値と位を合わせるため、
16出力ワードクロックでの計測時には、22ビットカ
ウンタ42の上位9ビットを除いた下位13ビットの出
力を9ビットシフトアップした値をサンプリング周波数
比Fsとする。
【0035】図1のサンプリング周波数比計測手段30
では16出力ワードクロックでの計測を次のように行な
っている。レジスタ52は1出力ワードクロックごとに
22ビットカウンタ42の下位13ビットの出力を取り
込む。RAM54は、レジスタ52に取込まれたカウン
ト値が順次書込まれていき、常に現時点から見て過去1
6個分のカウント値を保持する。減算器56はRAM5
4に記憶された最古のカウント値と最新のカウント値と
の差(つまり16出力ワードクロックの期間内でのカウ
ント数)を求めて、これをこの期間でのサンプリング周
波数比Fsの平均値として、毎出力ワードクロックごと
に更新して出力する。これにより、サンプリング周波数
比Fsが変動した場合には、即座にこれに追従した計測
値が減算器56から得られる。
【0036】サンプリング周波数比Fsの変動検出は、
次のようにして行なっている。比較部51(サンプリン
グ周波数比変動検出手段およびサンプリング周波数比計
測期間制御手段)は22ビット精度のサンプリング周波
数比Fsの計測値と毎出力ワードクロックごとに更新さ
れる13ビット精度のサンプリング周波数比計測値とを
図6に示すように位を合わせて引算してsビットの差デ
ータ、例えば13ビットの差データとして出力する。こ
の差データは、サンプリング周波数比Fsの変動が小さ
い時は小さな値になり、変動が大きい時は大きな値とな
る。そこで、比較部51は、図6に示すように、上下の
閾値1,2を設定して、通常は22ビット精度でサンプ
リング周波数比Fsの計測を行ない(つまり、セレクタ
60から22ビット精度サンプリング周波数比計測デー
タを出力する。)、この状態で差データが閾値1(11
ビット)以上になったら変動が大きいと判断して22ビ
ット精度から13ビット精度に計測を切り換える(セレ
クタ60から13ビット精度サンプリング周波数比計測
データを出力する。)。そして、13ビット精度での計
測時に差データが閾値2(13ビット)以下になったら
変動が小さくなったと判断して13ビット精度から22
ビット精度に戻す。このようにして、ヒステリスを持
たせてサンプリング周波数比Fsの計測を行なう。これ
により、ディジタルレコーダでバリアブルピッチなどを
用いてサンプリング周波数比Fsが連続的に変動したよ
うな場合でも、即座に追従のよい13ビット精度サンプ
リング周波数比のほうに切り換わり、歪は多少悪化する
ものの、聴感上に悪影響を与えるようなノイズの発生は
おさえられる。
【0037】なお、遅延回路58は22ビット精度のサ
ンプリング周波数比計測値をDサンプル、例えば3サン
プル(=8192出力ワードクロック×3)遅延する。
これは、サンプリング周波数比Fsが変動して22ビッ
ト精度から13ビット精度に切り換わった後は確実に安
定な状態に戻ってから22ビット精度に戻すためのもの
である。すなわち、22ビット精度で計測している状態
でサンプリング周波数比Fsが変動すると、その影響は
13ビット精度の計測値に即座に現われるので、差デー
タが大きくなりすぐに13ビット精度での計測に切り換
えられる。これに対し、13ビット精度で計測している
状態からサンプリング周波数比Fsが安定な状態に戻る
と、13ビット精度の計測値はすぐに安定な状態に戻る
が、22ビット精度の計測値は遅延回路58で3サンプ
ル遅延されているためすぐには安定な状態に戻らず、そ
の間差データが大きくなったままであり、13ビットの
計測が続けられる。そして3サンプル後に22ビット精
度の計測値も安定な状態に戻り、差データが小さくなっ
て22ビット精度での計測に戻される。このようにし
て、切換タイミングにヒステリシスを持たせている。な
お、遅延時間は3サンプルに限らず適宜設定できる。
【0038】(3) 書込制御手段24 ライト・アドレス・カウンタ24は書込制御手段を構成
するもので、8倍オーバサンプリングデータに同期した
周波数がfs1の8倍のクロックをカウントし、そのカ
ウント値を書込アドレスデータとして出力する。この書
込アドレスデータは、セレクタ62を介して順次非同期
RAMバッファ22に供給されて、8倍オーバサンプリ
ングされた入力データを非同期RAMバッファ22に順
次書込む。
【0039】(4) 読出制御手段32 計測されたサンプリング周波数比Fsは、入力サンプル
列に対して出力サンプル列を出力すべき間隔を示すの
で、これを用いて非同期RAMバッファ22の読出しお
よび補間係数の付与を行なうことにより出力サンプル列
を生成することができる。
【0040】そこで、図1の読出制御手段32は、サン
プリング周波数比計測手段30から出力されるサンプリ
ング周波数比Fsの計測データを出力サンプリング周波
数fs2の各周期ごとに積算していって、その積算値を
非同期RAMバッファ22の読出アドレスデータ、ラグ
ランジェ7次補間用の係数ROMの読出アドレスデー
タ、直線補間係数データを組合わせたベースアドレスデ
ータとして毎出力サンプリング周期ごとに出力する。こ
の場合、22ビット精度でサンプリング周波数比Fsを
計測している時は、8192出力ワードクロックごとに
計測値が更新されるので、更新されるまでの間は同じ計
測値を8192回累算して用いることになる。また、1
3ビット精度で計測している時は、毎出力ワードクロッ
クごとに計測値が更新されていくので、この更新されて
いく計測値を順次積算していく。
【0041】ベースアドレスの構成を図7に示す。ベー
スアドレスは、前述のように22ビットのサンプリング
周波数比Fsの計測値(13ビット精度での計測値は下
位に9ビット“0”を付加して22ビットとされる)を
出力ワードクロックごとに積算して生成されるもので、
全体がAビット、例えば25ビットで構成されている。
サンプリング周波数比Fsの計測値は、もともと8倍オ
ーバサンプリングデータ(すなわち、入力サンプリング
周波数fs1の2 倍の周波数のデータ)の32(=2
5)倍(fs1に対しては2 ×2 =2 倍)の周波
の入力ビットクロックを8192(=213)出力ワー
ドクロックにわたってカウントした値であるので、ベー
スアドレスを1/218 した値が入力サンプル列を8
倍オーバサンプリングして非同期RAMバッファ22に
記憶されている1サンプルのアドレスと対応づけられ
る。すなわち、Fs値×(1/2 13 )が1出力ワード
クロックあたりの入力ビットクロック数であり、また、
8倍オーバサンプリングデータの1出力ワードクロック
あたりの入力ビットクロック数は2 であるから、Fs
値×(1/2 13 )×(1/2 )すなわちFs値×
(1/2 18 )が1出力ワードクロックあたりの8倍オ
ーバサンプリングデータ数に相当する。したがって、非
同期RAMバッファ22のFs値×(1/2 18 )アド
レスごとのデータを個々の出力サンプルに対応づけるこ
とができる。よって、ベースアドレスはFs値を出力ワ
ードクロックごとに積算していった値であるから、出力
ワードクロックごとに、ベースアドレス×(1/
18 )で示される非同期RAMバッファ22のアドレ
スのデータを個々の出力サンプルに対応づけることがで
きる。したがって、ベースアドレスのうち上位7ビット
(=全25ビット−下位18ビット)を非同期RAMバ
ッファ22の読出アドレス(全27 =128アドレス)
として用い、下位18ビットを8倍オーバサンプリング
されたサンプル間を218分割する補間用のデータとして
用いる。ここでは、この18ビットの補間用データのう
ち上位7ビットを8倍オーバサンプリングされたサンプ
ル間を27 =128分割するラグランジェ7次補間用の
係数ROM86の読出アドレスとして用い、下位11ビ
ットをラグランジェ7次補間された2つのサンプル間を
11=2048分割する直線補間用係数Coef として用
いる(図2参照)。
【0042】読出制御手段32によるベースアドレスの
生成は次のようにして行なわれる。サンプリング周波数
比計測手段30から出力されるサンプリング周波数比F
sの計測値は、セレクタ62を介してフルアダー64の
一方入力端に入力される。フルアダー64は、レジスタ
66に保持されている前回までの積算値をセレクタ68
を介して他方入力端に入力して両入力を加算し、これを
新たな積算値としてレジスタ66に保持する。この積算
動作を毎出力ワードクロックごと行なう。レジスタ66
に保持された積算値はベースアドレスとして毎出力ワー
ドクロックごとにラッチ回路70に転送されて、そのう
ち上位7ビットがRAM読出アドレスとしてセレクタ6
2を介して非同期RAMバッファ22に供給され、中位
7ビットがラグランジェ補間用係数ROM86の読出ア
ドレスとしてまた下位11ビットが直線補間用係数C
oef として補間演算部34に供給される。
【0043】(5) 非同期RAMバッファ22 非同期バッファ22は図8に示すように、例えば全12
8アドレスのリングバッファ状に構成され、8倍オーバ
サンプリングデータが順次書込まれていくとともに、ラ
グランジェ7次補間に必要なデータが順次読出されてい
く。この場合、ラグランジェ7次補間の演算には、目的
とする出力サンプルの前後4サンプルずつの例えば合計
8サンプルのオーバサンプリングを用いるが、ベースア
ドレスの上位7ビットで示される読出アドレスは、その
うちの例えば目的とする出力サンプルの直前のオーバサ
ンプリングデータのアドレスを示すものとし、このアド
レスおよびその手前の3アドレスおよびその後の4アド
レスの例えば合計8サンプルのデータが1つの出力サン
プルを生成するために順次読出される。
【0044】入出力サンプリング周波数比Fsに変動が
なければ書込アドレスと読出アドレスは一定の距離を保
っているが、入出力サンプリング周波数比Fsが変動し
ている時は書込アドレスが進んで読出アドレスを追い越
したり逆に書込アドレスが遅れて読出アドレスに追い越
されたりすることがあり、いずれの場合にもデータに不
連続が生じて大きなノイズになってしまう。
【0045】そこで、ここでは書込アドレスの両側にあ
る距離離れてガードを設けて、読出アドレスで読出され
る8個の8倍オーバサンプリングデータのいずれかのア
ドレスまたは目的とする出力サンプルの直前の8倍オー
バサンプリングデータのアドレスがこのガード内に入っ
たら強制的にガードの外に戻すように読出アドレスを補
正することにより、追い越したり追い越されたりするの
を阻止して大きなノイズが発生するのを防止している。
【0046】この読出アドレスの補正は次のようにして
行なわれる。ライト・アドレス・カウンタ24から出力
される入力側に同期した書込アドレス情報は非同期アド
レスラッチ回路72で出力側の同期に変換される。非同
期アドレスラッチ回路72は、3段に縦列接続したラッ
チ回路74〜76で構成され、書込アドレスデータをス
トローブ信号1〜3で順次転送することにより出力側の
クロックに同期させる。
【0047】非同期アドレスラッチ回路72の動作を図
9に示す。ラッチ回路74へのラッチを行なうストロー
ブ信号1は入力ワードクロックに同期したタイミングで
出力される。すなわち、入力ワードクロックの立上りタ
イミングで所定期間のマスクaが開始され、その中央部
でストローブ信号1が出力されて書込アドレス情報がラ
ッチ回路74にラッチされる。また、ラッチ回路74か
らラッチ回路75への転送を行なうストローブ信号2は
出力ワードクロックに同期したタイミングで出力され
る。すなわち、出力ワードクロックの立上りタイミング
で所定期間のマスクbが開始され、その中央部でストロ
ーブ信号2が出力されて、ラッチ回路74にラッチされ
ている書込アドレスがラッチ回路75に転送される。ま
た、ストローブ信号3は出力ワードクロックの立上りタ
イミングで出力されて、ラッチ回路75からラッチ回路
76への転送を行なう。これで、書込アドレスの情報が
出力側に同期したデータに変換される。
【0048】なお、マスクa,bは、ラッチ回路74,
75のラッチタイミングが重なるのを防止するものであ
る。すなわち、マスクaの期間中にマスクbが開始され
る時は、マスクbを開始せずに、それよりも所定期間t
1遅れたタイミングで代替マスクb′を開始し、その中
央部でストローブ信号2を出す。マスクaは常に入力ワ
ードクロック立上りで開始される固定のマスクである。
一旦代替マスクb′が出されると次もマスクaとマスク
b′のタイミングが比較され、マスクaの期間中にマス
クb′が開始される時は、マスクb′を開始せずに、次
のマスクbを開始させる。このようにして、ラッチタイ
ミングが重ならないようにしてラッチ回路74からラッ
チ回路75に転送するとともに、ラッチ回路76から出
力ワードクロックに正しく同期した書込アドレスの情報
が得られる。
【0049】このようにして、非同期アドレスラッチ回
路72で出力側に同期した書込アドレスの情報が得られ
たら、これをリファレンスアドレス(仮想的な書込アド
レス)としてガードが作成される。すなわち、図8に示
すように、リファレンスアドレス(実際の書込アドレス
よりも少し遅れている)から例えば8アドレス後方のア
ドレスをガードAとし、さらにそこから例えば48アド
レス後方(リファレンスアドレスからは例えば56アド
レス後方)のアドレスをガードBとして設定する。そし
て、読出アドレスが進んで書込アドレスに近づいてガー
ドAを越えたら、読出アドレスを強制的に例えば4アド
レス遅らせてガードAから退出させる。また、読出アド
レスが遅れて逆方向から書込アドレスに近づいてガード
Bを越えたら、読出アドレスを強制的に例えば4アドレ
ス進ませてガードBから退出させる。この大きな補正値
例えば−4,+4により読出アドレスがガードA,Bか
ら退出したら、引き続き数出力ワードクロックに例えば
−1,+1アドレスの割合で小さな補正をしていき、ガ
ードA,Bの中間のアドレス“127”に戻す。この補
正動作は読出アドレスがガードAまたはBを越えるごと
に行なわれる。このような補正動作により読出アドレス
がガードA,Bの間に収められて、書込アドレスを追い
越したり追い越されたりするのが防止され、大きなノイ
ズの発生が防止される。
【0050】なお、補正をすることによって出力信号は
多少歪むが、読出アドレスが書込アドレスを追い越した
り追い越されたりした場合(128サンプル分飛ぶ)に
比べれば、最大で4サンプル飛ぶだけですむので歪はご
くわずかですむ。また、4アドレスの補正を1回行なっ
てとりあえず読出アドレスが書込アドレスを追い越した
り追い越されたりするのを回避した後はわずかずつ(数
出力サンプルに1アドレス)の割合で中央のアドレス
“127”に向けて補正するので、出力波形の歪はほと
んど生じないですむ。このようにして、波形の連続性を
あまり損なうことなく読出アドレスの補正を行なってい
る。
【0051】以上の読出アドレスの補正は読出制御手段
32において行なわれる。この読出アドレスの補正を行
なうため、読出制御手段32は、ガードA,B作成用レ
ジスタ78、ガードA,Bの値8,56を記憶するメモ
リ80、大きな補正値+4,−4アドレスと小さい補正
値+1,−1アドレスを記憶するメモリ82を具えいて
る。読出制御手段32による読出アドレスの補正は、コ
ントロール回路31からの指令により次の手順で行なわ
れる。なお、この補正処理はレジスタ66に新たなベー
スアドレスが保持されるごとに(すなわち出力サンプル
を生成するごとに)このベースアドレスをラッチ回路7
0に転送するまでの期間内に行なわれる。
【0052】i) ガードAの演算 ガードAの作成用数値として“8”をメモリ80から読
出し、セレクタ68を介してフルアダー64の一方入力
端に入力する。また、書込アドレスを出力側の同期に変
換したリファレンスアドレスをセレクタ62を介してフ
ルアダー64の他方入力端に入力する。フルアダー64
はリファレンスアドレスから“8”を減算してガードA
のアドレスとしてその値をレジスタ78に保持する。
【0053】ii) ガードAとRAM読出アドレスとの
比較 レジスタ78に保持されているガードAのアドレスはセ
レクタ68を介してフルアダー64の一方入力端に入力
される。また、レジスタ66に保持されているベースア
ドレス(上位7ビットのRAM読出アドレス部分だけで
なく25ビット全て)はセレクタ62を介してフルアダ
ー64の他方入力端に入力される。そして、フルアダー
64は(ガードAのアドレス)−(ベースアドレス)の
演算を対応するビットについて行なう。ビット比較器8
4(アドレス差検出手段)はこの演算結果の正負を判別
し、負の時はベースアドレスがガードAを越えて書込ア
ドレスに近づいたものと判断して、ベースアドレスの補
正処理を行なう。すなわち、メモリ82から補正値−4
を読み出し、セレクタ68を介してフルアダー64の一
方入力端に入力する。また、レジスタ66のデータ(ベ
ースアドレス値)がセレクタ62を介してフルアダー6
4の他方入力端に入力される。そして、フルアダー64
はレジスタ66のデータに補正値−4を加算して補正
し、その補正結果をレジスタ66に保持する。このよう
にしてRAM読出アドレス(実際にはベースアドレス全
体として)の補正が行なわれ、補正結果がレジスタ66
からラッチ回路70に転送される。演算結果が正の時は
補正を行なわずにそのままラッチ回路70に転送する。
【0054】−4の大きな補正を行なった後は、出力サ
ンプルを数サンプル生成するごとにメモリ82から小さ
な補正値−1を読み出して同様にベースアドレスの補正
を行ない、ガードA,Bの中間のアドレス“127”ま
で徐々に近づけてアドレス“127”に到達するかまた
は行き過ぎたら補正処理を終了する。なお、この小さな
補正を行なっている途中でベースアドレスが再びガード
を越えたら再び大きな補正値による補正から補正を再開
する。
【0055】iii) ガードBの演算 ガードBの作成用数値として“56”をメモリ80から
読出し、セレクタ68を介してフルアダー64の一方入
力端に入力する。また、書込アドレスを出力側の同期に
変換したリファレンスアドレスをセレクタ62を介して
フルアダー64の他方入力端に入力する。フルアダー6
4はリファレンスアドレスから“56”を減算してガー
ドBのアドレスとしてその値をレジスタ78に保持す
る。
【0056】iv) ガードBとRAM読出アドレスとの
比較 レジスタ78に保持されているガードBのアドレスはセ
レクタ68を介してフルアダー64の一方入力端に入力
される。また、レジスタ66に保持されているベースア
ドレス(上位7ビットのRAM読出アドレス部分だけで
なく25ビット全て)はセレクタ62を介してフルアダ
ー64の他方入力端に入力される。そして、フルアダー
64は(ベースアドレス)−(ガードBのアドレス)の
演算を対応するビットについて行なう。ビット比較器8
4はこの演算結果の正負を判別し、負の時はベースアド
レスがガードBを越えて書込アドレスに近づいたものと
判断して、ベースアドレスの補正処理を行なう。すなわ
ち、メモリ82から補正値+4を読み出し、セレクタ6
8を介してフルアダー64の一方入力端に入力する。ま
た、レジスタ66のデータ(ベースアドレス値)がセレ
クタ62を介してフルアダー64の他方入力端に入力さ
れる。そして、フルアダー64はレジスタ66のデータ
に補正値+4を加算して補正し、その補正結果をレジス
タ66に保持する。このようにしてRAM読出アドレス
(実際にはベースアドレス全体として)の補正が行なわ
れ、補正結果がレジスタ66からラッチ回路70に転送
される。演算結果が正の時は補正を行なわずにそのまま
ラッチ回路70に転送する。
【0057】+4の大きな補正を行なった後は、出力サ
ンプルを数サンプル生成するごとにメモリ82から小さ
な補正値+1を読み出して同様にベースアドレスの補正
を行ない、ガードA,Bの中間のアドレス“127”ま
で徐々に近づけてアドレス“127”に到達するかまた
は行き過ぎたら補正処理を終了する。なお、この小さな
補正を行なっている途中でベースアドレスが再びガード
を越えたら再び大きな補正値による補正から補正を再開
する。
【0058】(6) 補間演算部34 補間演算部34ではラグランジェ7次多項式補間および
直線補間を行なう。ラグランジェ7次補間は、例えば図
10(a)に示すような補間係数を用いて、非同期RA
Mバッファ22から読み出される同(b)に示すような
8倍オーバサンプリングデータA4,A4−1,A4−
2,……,A4−7と畳み込み演算して、各データ間を
それぞれ128分割する補間データを生成するものであ
る。ただし、ここでは次に行なう直線補間のために必要
な出力サンプルa3を挾んでその前後の2点(この例で
は点A4−3−45とA4−3−46)の補間データを
求める演算のみ行なう。
【0059】図10(a)のラグランジェ7次補間係数
は、その中央位置から左右対象に8倍オーバサンプリン
グデータの間隔ごとにゼロクロスする係数で、ここでは
これら各間隔(全8区間)ごとに128個ずつの係数
(合計で128×8区間=1024個の係数)で構成さ
れている。
【0060】ラグランジェ補間値の演算は、まず点A4
−3−45について行ない、これに引き続き点A4−3
−46について行なう。すなわち、まず点A4−3−4
5を図10(a)の係数の中央位置に一致させて、各係
数と各サンプルとの畳み込みを行なう。この場合、8倍
オーバサンプリングデータA4,A4−1,A4−2,
……,A4−7の間を埋める例えば各127個のサンプ
ル値は全て0として扱えばよいので、これらは計算しな
くてよく、結局8倍オーバサンプリングされた例えば
個のサンプルA4,A4−1,A4−2,……,A4−
7とそれぞれ対応する係数とを例えば合計8回乗算して
加算すれば点A4−3−45のラグランジェ7次補間値
が求まる。
【0061】点A4−3−45の補間値が求まったら、
サンプルを1つずらして点A4−3−46をラグランジ
ェ7次補間係数の中央位置と一致させて、8個のサンプ
ルA4,A4−1,A4−2,……,A4−7とそれぞ
れ対応する係数とを合計8回乗算して加算することによ
り、A4−3−46のラグランジェ7次補間値が求ま
る。
【0062】目的とする出力サンプルを挾む2点A4−
3−45,A4−3−46のラグランジェ7次補間値が
求まったら、この間を図11に示すように、直線で結
び、目的とする出力サンプルa3のサンプル値Xを直線
補間により求める。すなわち、点A4−3−45のサン
プル値をx1、点A4−3−46のサンプル値をx2と
すると、出力サンプルa3のサンプル値Xは、 X=(x2−x1)Coef +x1 但し、Coef :直線補間係数 で求まる。ここで、直線補間係数とは出力サンプル点a
3の位置が上記2点間を211分割したうちの何番目であ
るかを示す値である。
【0063】図1の補間演算部34によるラグランジェ
7次補間および直線補間動作について説明する。ラッチ
回路88には畳み込み演算される8個のサンプルA4,
A4−1,A4−2,……,A4−7が非同期RAMバ
ッファ22から読み出されて、ラッチされる。係数RO
M86には、図10(a)に示すようなラグランジェ7
次補間係数が記憶されている。補間は次の手順で行なわ
れる。
【0064】i) 目的とする出力サンプルの直前のラグ
ランジェ7次補間値の演算 ラッチ回路88には、畳み込み演算される8個のサンプ
ルA4,A4−1,A4−2,……,A4−7が非同期
RAMバッファ22から順次読み出されてラッチされ
る。また、ラッチ回路90には、まず点A4−3−45
のラグランジェ7次補間値を求めるために必要な8個の
係数値がベースアドレスの中位7ビットで表わされる係
数ROM読出アドレスにより係数ROM86から順次読
み出されてラッチされる。なお、係数ROM読出アドレ
スは、入力サンプルA4,A4−1,A4−2,……,
A4−7と乗算される係数がラグランジェ7次補間係数
の複数のゼロクロス点間をそれぞれ128分割したうち
の何番目の係数であるかを示すものであり(各ゼロクロ
ス点間とも同じ位置となる(図10(a)参照))、1
つの係数ROM読出アドレスにより対応する8個の係数
値が時系列的(1回の乗加算毎に)に読み出されて、ラ
ッチ回路90にラッチされる。
【0065】すなわち、まず、ラッチ回路88にサンプ
ルA4が読み出され、ラッチ回路90にこれと乗算され
る1つの係数が読み出され、それぞれセレクタ92,9
4を介して乗算器96で相互に乗算される。その乗算値
はレジスタ98、セレクタ100および加算器102の
一方入力端を介してレジスタ104に保持される。続い
てラッチ回路88に次のサンプルA4−1が読み出さ
れ、ラッチ回路90にこれと乗算される1つの係数が読
み出されて、同様に乗算器96で乗算される。この乗算
値はセレクタ100を介して加算器102の一方入力端
に入力され、またレジスタ104に保持されている前回
の乗算値がセレクタ108を介して加算器102の他方
入力端に入力され、加算器102で両者が加算されて、
その加算値がレジスタ104に保持される。この乗算お
よび加算動作を各サンプルA4,A4−1,A4−2,
……,A4−7について合計8回繰り返すことにより目
的とする出力サンプルa3の直前の点A4−3−45
(図10(b))のラグランジェ7次補間値が求められ
てレジスタ106に保持される。
【0066】ii) 目的とする出力サンプルの直後のラ
グランジェ7次補間値の演算 ラッチ回路88には、同様に畳み込み演算される8個の
サンプルA4,A4−1,A4−2,……,A4−7が
非同期RAMバッファ22から順次読み出されラッチさ
れる。また、ラッチ回路90には、点A4−3−46の
ラグランジェ7次補間値を求めるために必要な8個の係
数値がベースアドレスの中位7ビットで表わされる係数
ROM読出アドレスの次のアドレスにより係数ROM8
6から順次読み出されてラッチされる。
【0067】まず、ラッチ回路88に1つのサンプルA
4が読み出され、ラッチ回路90にこれと乗算される1
つの係数が読み出され、それぞれセレクタ92,94を
介して乗算器96で相互に乗算される。その乗算値はレ
ジスタ98、セレクタ100および加算器102の一方
入力端を介してレジスタ104に保持される。続いてラ
ッチ回路88に次のサンプルA4−1が読み出され、ラ
ッチ回路90にこれと乗算される1つの係数が読み出さ
れて、同様に乗算器96で乗算される。この乗算値はセ
レクタ100を介して加算器102の一方入力端に入力
され、またレジスタ104に保持されている前回の乗算
値がセレクタ108を介して加算器102の他方入力端
に入力され、加算器102で両者が加算されて、その加
算値がレジスタ104に保持される。この乗算および加
算動作を各サンプルA4,A4−1,A4−2,……,
A4−7について合計8回繰り返すことにより目的とす
る出力サンプルa3の直後の点A4−3−46(図10
(b))のラグランジェ7次補間値が求められてレジス
タ104に保持される。
【0068】なお、係数ROM86から出力サンプルの
直前および直後のラグランジェ7次補間値を求めるため
に必要な各8個ずつの係数値を読み出す方法としては例
えば次の方法が考えられる。すなわち、係数ROM86
には、全1024個の係数をそのままの順番でアドレス
に記憶するのではなく、8つの区間を128分割した順
番で記憶する。つまり、1024個の係数をまず分割位
置が同じものどうし128グループに分けて分割位置の
順に並べ、さらに各グループ内で各グループを構成する
8個の係数を区間順に並べた配列で係数ROM86の各
アドレスに記憶する。
【0069】そして、所定の高速クロックで動作してい
る4ビットカウンタ(係数読み出しカウンタという)を
用いて、そのカウント値をベースアドレスの中位7ビッ
トデータの最下位ビットに加算することにより、この加
算値を係数ROM86の読出アドレスとして用いる。
【0070】例えば、ベースアドレスの中位7ビットデ
ータが0000001であるとすると、
【数1】 を目的とする出力サンプルの直前のラグランジェ7次補
間値を求めるための8個の係数の読み出しアドレスとし
て用いる。さらに、
【数2】 を目的とする出力サンプルの直のラグランジェ7次補
間値を求めるための8個の係数の読み出しアドレスとし
て用いる。
【0071】なお、図10(a)の補間係数はその中央
位置を基準として左右対象なので、左右半分のみを係数
ROM86に記憶するようにして、係数ROM86を小
型化することができる。
【0072】iii) 直線補間 レジスタ106,104にそれぞれ目的とする出力サン
プルa3の直前および直後の2点A4−3−45,A4
−3−46のラグランジェ7次補間データx1,x2が
保持されたら、これに基づいて直線補間を行なって目的
とする出力サンプルa3のサンプル値が求められる。こ
の演算は次のようにして行なわれる。
【0073】まず、レジスタ106に保持されている補
間データがセレクタ100を介して加算器102の一方
入力端に入力される。また、レジスタ104に保持され
ている補間データがセレクタ108を介して加算器10
2の他方入力端に入力される。加算器102は両入力を
減算してx2−x1を求め、その演算結果をレジスタ1
04に保持する。
【0074】続いて、レジスタ104に保持された減算
値x2−x1がセレクタ108,92を介して乗算器9
6に入力され、ベースアドレスの下位11ビットで表わ
される直線補間係数Coef がセレクタ94を介して乗算
器96に入力されて、両者の乗算が行なわれる。その乗
算結果(x2−x1)Coef はレジスタ98、セレクタ
100、加算器102を介してレジスタ104に保持さ
れる。
【0075】レジスタ104に保持された演算値(x2
−x1)Coef はセレクタ108を介して加算器102
の一方入力端に入力される。またレジスタ106に保持
されている値x1はセレクタ100を介して加算器10
2の他方入力端に入力される。加算器102は両入力を
加算して目的とする出力サンプル値Xを、 X=(x2−x1)Coef +x1 として求める。求められた出力サンプル値Xは、まるめ
回路110でまるめ処理がなされ、ノイズシェーパ11
2で量子化ノイズが高域に追いやられてデータ出力端子
40から出力される。以上の補間演算は出力サンプルの
周期内で各出力サンプル周期ごとに繰り返し行なわれ
る。
【0076】以上のようにして、図1のサンプリング周
波数変換器12ではサンプリング周波数fs1の入力デ
ータをこれと非同期なサンプリング周波数fs2の出力
データに変換する。そして、このような構成によれば、
例えば入力サンプルデータの語長を22ビット、ラグラ
ンジェ7次補間の係数語長を25ビット、サンプリング
周波数比Fsのデータ長を22ビットとすれば、シミュ
レーション上では、20ビット程度の変換誤差を実現で
き、歪率等も従来のものに比べて向上がみられた。
【0077】
【発明の効果】以上説明したように、請求項1、2記載
の発明によれば、入力サンプルに同期したクロックをカ
ウンタでカウントし、出力サンプルの複数ワード周期で
のカウント値をサンプリグ周波数比計測値として用い
るようにしたので、単一ワード周期でのカウント値を計
測する場合に比べて丸め誤差の影響を低減でき計測値の
桁数が増大し、その分サンプリング周波数比計測値の分
解能が向上する。したがって、サンプリング周波数比の
検出精度が向上し、サンプリング周波数変換の変換精度
を向上させることができる。
【0078】また、請求項記載の発明によればサンプ
リング周波数比の変動を検出して、変動が大きい時はサ
ンプリング周波数比の計測を行なう出力サンプルの複数
ワード周期の長さを短くするようにしたので追従性を向
上させることができる。
【0079】また、請求項記載の発明によれば、RA
Mの書込アドレスと読出アドレスとの差を検出してこの
アドレス差が所定範囲内にあることが検出された時に
出アドレスを当該所定範囲から出るように補正するよう
にしたので、読出アドレスが書込アドレスに対して追い
越したり追い越されたりするのが防止され、大きなノイ
ズの発生を防止することができる。
【図面の簡単な説明】
【図1】 この発明の一実施例を示すブロック図で、図
2のサンプリング周波数変換器の具体例を示すものであ
る。
【図2】 この発明が適用されたサンプリング周波数変
換器12の概要を示すブロック図である。
【図3】 図2のサンプリング周波数変換器12による
サンプリング周波数変換工程を示す図である。
【図4】 図1のサンプリング周波数比計測手段30に
よる22ビット精度での計測状態を示すタイムチャート
である。
【図5】 図1のサンプリング周波数比計測手段30に
よる13ビット精度での計測状態を示す概念図である。
【図6】 図1の比較部52によるサンプリング周波数
比計測の精度切換動作を示す図である。
【図7】 図1の読出制御手段32で生成されるベース
アドレスの構成を示す図である。
【図8】 図1の非同期RAMバッファ22の構成およ
び書込アドレスと読出アドレスの関係を説明する図であ
る。
【図9】 図1の非同期アドレスラッチ回路72の動作
説明図である。
【図10】 図1の係数ROM86に記憶されているラ
グランジェ7次補間用係数の一例と、これを用いた畳み
込み演算の説明図である。
【図11】 図1の補間係数部34における直線補間の
動作説明図である。
【符号の説明】
12 サンプリング周波数変換器 22 非同期RAMバッファ(RAM) 24 書込制御手段 30 サンプリング周波数比計測手段 32 読出制御手段 36 多項式補間手段(補間手段) 38 直線補間手段(補間手段) 42 22ビットカウンタ(カウンタ) 48 減算器(カウント値出力手段) 51 比較器(サンプリング周波数比変動検出手段、サ
ンプリング周波数比計測期間制御手段) 64,66,68,82 フルアダー、レジスタ、セレ
クタ、メモリ(読出アドレス補正手段)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 新美 幸二 静岡県浜松市中沢町10番1号 ヤマハ株 式会社内 (56)参考文献 特開 平1−175311(JP,A) 特開 平1−175310(JP,A) 特開 昭61−204700(JP,A) 特開 昭57−115015(JP,A) 特開 平2−21714(JP,A) 特開 平2−21712(JP,A) 特開 昭58−92160(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03H 17/00 621

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】RAMと、入力サンプル列のサンプリング
    周波数と出力サンプル列のサンプリング周波数の周波数
    比を計測するサンプリング周波数比計測手段と、この計
    測されたサンプリング周波数比を実現する出力サンプル
    を補間で求めるのに必要な入力サンプルを当該サンプリ
    ング周波数比に基づいて前記RAMから読み出す読出制
    御手段と、この読出制御手段により前記RAMから読出
    された入力サンプルデータに基づき前記出力サンプルを
    補間で求める補間手段とを具備してなるサンプリング周
    波数変換器において、 前記サンプリング周波数比計測手段が、前記入力サンプ
    ルに同期したクロックをカウントするカウンタと、前記
    出力サンプルの複数ワード周期での前記カウンタのカウ
    ント値を計測し、このカウント値を前記サンプリング周
    波数比の計測値として出力するカウント値出力手段とを
    具備してなり、 前記サンプリング周波数比計測手段が、前記計測された
    サンプリング周波数比の変動を検出するサンプリング周
    波数比変動検出手段と、この検出されるサンプリング周
    波数比の変動が小さい時は前記サンプリング周波数比の
    計測を行なう前記出力サンプルの複数ワード周期の長さ
    を長くし、サンプリング周波数比の変動が大きい時は当
    該複数ワード周期の長さを短くするサンプリング周波数
    比計測期間制御手段とを具備してな るサンプリング周波
    数変換器。
  2. 【請求項2】RAMと、入力サンプル列のサンプリング
    周波数と出力サンプル列のサンプリング周波数の周波数
    比を計測するサンプリング周波数比計測手段と、この計
    測されたサンプリング周波数比を実現する出力サンプル
    を補間で求めるのに必要な入力サンプルを当該サンプリ
    ング周波数比に基づいて前記RAMから読み出す読出制
    御手段と、この読出制御手段により前記RAMから読出
    された入力サンプルデータに基づき前記出力サンプルを
    補間で求める補間手段とを具備してなるサンプリング周
    波数変換器において、 前記サンプリング周波数比計測手段が、前記入力サンプ
    ルに同期したクロックをカウントするカウンタと、前記
    出力サンプルの複数ワード周期での前記カウンタのカウ
    ント値を計測し、このカウント値を前記サンプリング周
    波数比の計測値として出力するカウント値出力手段とを
    具備してなり、 前記読出制御手段が、前記RAMの書込アドレスと読出
    アドレスとの差を検出するアドレス差検出手段と、この
    検出されるアドレス差により前記読出アドレスが前記書
    込アドレスに対して所定範囲内にあることが検出された
    時に前記読出アドレスを当該所定範囲から出るように補
    正する読出アドレス補正手段とを具備してな るサンプリ
    ング周波数変換器。
JP08811392A 1992-02-17 1992-03-12 サンプリング周波数変換器 Expired - Fee Related JP3221041B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP08811392A JP3221041B2 (ja) 1992-03-12 1992-03-12 サンプリング周波数変換器
US08/121,212 US5365468A (en) 1992-02-17 1993-09-14 Sampling frequency converter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08811392A JP3221041B2 (ja) 1992-03-12 1992-03-12 サンプリング周波数変換器

Publications (2)

Publication Number Publication Date
JPH05259812A JPH05259812A (ja) 1993-10-08
JP3221041B2 true JP3221041B2 (ja) 2001-10-22

Family

ID=13933835

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08811392A Expired - Fee Related JP3221041B2 (ja) 1992-02-17 1992-03-12 サンプリング周波数変換器

Country Status (1)

Country Link
JP (1) JP3221041B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5617088A (en) * 1994-01-26 1997-04-01 Sony Corporation Sampling frequency converting device and memory address control device
KR101214920B1 (ko) * 2008-03-04 2012-12-24 가부시키가이샤 엔티티 도코모 신호 다중 방법, 신호 분리 방법, 디지털 신호 기준 주파수 보정 방법, 다중 장치, 분리 장치, 무선 통신 시스템, 및 디지털 신호 기준 주파수 보정 장치
JP2010223780A (ja) * 2009-03-24 2010-10-07 Nec Corp 測定装置、周波数比測定回路、測定方法およびプログラム

Also Published As

Publication number Publication date
JPH05259812A (ja) 1993-10-08

Similar Documents

Publication Publication Date Title
US5365468A (en) Sampling frequency converter
US4715257A (en) Waveform generating device for electronic musical instruments
US7262716B2 (en) Asynchronous sample rate converter and method
US5227787A (en) Digital data converting system
EP0837561B1 (en) Sampling frequency converting apparatus
JP2548210B2 (ja) 時間軸補正装置
KR100229756B1 (ko) 데이타수신기
US4701873A (en) Method and a circuit arrangement for digital signal processing utilizing adaptive transversal filter techniques
US6791482B2 (en) Method and apparatus for compression, method and apparatus for decompression, compression/decompression system, record medium
JP3221034B2 (ja) サンプリング周波数変換器
JP3221041B2 (ja) サンプリング周波数変換器
US4701875A (en) High speed convolution arithmetic circuit with multiple counters
JPH0789669B2 (ja) サンプリング信号位相補正装置
US7327288B2 (en) Variable interpolator for non-uniformly sampled signals and method
US6781938B2 (en) Expected value generation unit and a data reproduction apparatus
JP2001136073A (ja) 圧縮方法及び装置、圧縮伸長システム、記録媒体
US6973468B2 (en) Data interpolating device and method, sampling function generating device, data interpolating program, and recorded medium
US6996168B2 (en) Signal-processing circuit, and recording and playback apparatus employing the same
JPH10126645A (ja) 周波数変換装置
JP3289462B2 (ja) 標本化周波数変換装置
EP0191468B1 (en) An apparatus for generating a velocity error signal
US6483451B1 (en) Sampling function waveform data generating device
JPS6329346B2 (ja)
KR0152029B1 (ko) 보간기법을 이용한 동기가산 평균화장치 및 그 방법
JP2506948B2 (ja) 時間軸補正装置

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070817

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080817

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090817

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees