JPH05235698A - Sampling frequency converter - Google Patents

Sampling frequency converter

Info

Publication number
JPH05235698A
JPH05235698A JP6119392A JP6119392A JPH05235698A JP H05235698 A JPH05235698 A JP H05235698A JP 6119392 A JP6119392 A JP 6119392A JP 6119392 A JP6119392 A JP 6119392A JP H05235698 A JPH05235698 A JP H05235698A
Authority
JP
Japan
Prior art keywords
sampling frequency
data
interpolation
output
address
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.)
Granted
Application number
JP6119392A
Other languages
Japanese (ja)
Other versions
JP3221034B2 (en
Inventor
Yuuji Kakubo
友詞 鹿窪
Shigeki Kimura
繁樹 木村
Hiromi Saotome
弘海 五月女
Koji Niimi
幸二 新美
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 JP06119392A priority Critical patent/JP3221034B2/en
Publication of JPH05235698A publication Critical patent/JPH05235698A/en
Priority to US08/121,212 priority patent/US5365468A/en
Application granted granted Critical
Publication of JP3221034B2 publication Critical patent/JP3221034B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To coexist easy constitution with superior conversion accuracy in a sampling frequency converter to convert an input sample string to an output sample string asynchronous to it. CONSTITUTION:The input sample of sampling frequency fs1 supplied from digital equipment 10 is written on an asynchronous RAM buffer 22 after being eight times over sampled by an octuple over-sampling filter 20. The address in accordance with an input/output sampling frequency Fs measured by a sampling frequency ratio measuring means 30 of the input sample written on the asynchronous RAM buffet 22 is read out, and polynomial 7th-order interpolation by a polynomial 7th-order interpolation means 36 is applied to it, and furthermore, linear interpolation by a linear interpolation means 38 is applied to it, and it is converted to a sampling frequency fs2, then, it is inputted to digital equipment 14.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、入力サンプル列をこ
れと非同期の出力サンプル列に変換するためのサンプリ
ング周波数変換器に関し、構成の簡易さと変換精度の良
さの両立を図ったものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a sampling frequency converter for converting an input sample sequence into an output sample sequence asynchronous with the input sample sequence, and has a simple structure and good conversion accuracy.

【0002】[0002]

【従来の技術】ディジタル・オーディオ装置等のディジ
タル機器には、32kHz 、44.1kHz 、48kHz 等の
様々なサンプリング周波数が使用されており、サンプリ
ング周波数が異なる機器どうしをつなぐ場合、送出側機
器から送出されるサンプル列を受取側機器のサンプリン
グ周波数に変換する必要がある。例えば、48kHz のサ
ンプリング周波数でスタジオでレコーディングしたマス
タ録音をCD(コンパクト・ディスク)用にダビングす
る場合、サンプリング周波数を44.1kHz に変換する
必要がある。
2. Description of the Related Art Various sampling frequencies such as 32 kHz, 44.1 kHz, and 48 kHz are used in digital equipment such as digital audio equipment, and when equipment with different sampling frequencies are connected, the equipment on the sending side sends them. It is necessary to convert the sample sequence to the sampling frequency of the receiving device. For example, when dubbing a master recording recorded in the studio at a sampling frequency of 48 kHz for a CD (compact disc), it is necessary to convert the sampling frequency to 44.1 kHz.

【0003】また、サンプリング周波数は同じであるが
別々のマスタクロックで駆動されているディジタル機器
どうしをつなぐ場合も同様に、送出側機器から送出され
るサンプル列を受取側機器のサンプリング周波数に同期
させる必要があり、これも広い意味でのサンプリング周
波数変換に相当する。例えば、サンプリング周波数が4
4.1kHz のCDを再生して同じくサンプリング周波数
44.1kHz のディジタル録音機器でダビングする場
合、CDプレーヤとディジタル録音機器がそれぞれ別々
のマスタクロックで駆動されている場合、CDから再生
されるディジタル信号をディジタル録音機器のサンプリ
ング周波数に同期させるサンプリング周波数変換が必要
となる。
Similarly, when digital devices which have the same sampling frequency but are driven by different master clocks are connected to each other, the sample sequence sent from the sending device is synchronized with the sampling frequency of the receiving device. It is necessary, and this also corresponds to the sampling frequency conversion in a broad sense. For example, the sampling frequency is 4
When reproducing a 4.1 kHz CD and dubbing it with a digital recording device with a sampling frequency of 44.1 kHz, if the CD player and the digital recording device are driven by different master clocks, the digital signal reproduced from the CD. Sampling frequency conversion is required to synchronize the sampling frequency with the sampling frequency of digital recording equipment.

【0004】従来のサンプリング周波数変換の方法とし
ては、入力サンプル列を一旦D/A変換してアナログ信
号に戻し、これを出力サンプル列のサンプリング周波数
で再度A/D変換する方法があった。
As a conventional sampling frequency conversion method, there has been a method of once D / A converting an input sample string to return it to an analog signal, and again A / D converting it at the sampling frequency of the output sample string.

【0005】また、別のサンプリング周波数変換方法と
して、入力サンプル列と出力サンプル列の最小公倍数の
サンプリング周波数に入力サンプル列をオーバサンプリ
ングし、その中から出力サンプル列を構成するサンプル
を抽出する方法があった。
As another sampling frequency conversion method, there is a method of oversampling the input sample sequence at a sampling frequency of the least common multiple of the input sample sequence and the output sample sequence, and extracting the samples forming the output sample sequence from the oversampling. there were.

【0006】[0006]

【発明が解決しようとする課題】前記一旦D/A変換し
て再度A/D変換する方法では、再度量子化するため量
子化誤差が大きくなって、音響信号の場合ひずみが大き
くなる欠点があった。
The above-mentioned method of once D / A converting and then A / D converting again has a drawback that a quantization error becomes large because of requantization and distortion becomes large in the case of an acoustic signal. It was

【0007】また、前記入力サンプル列をオーバサンプ
リングする方法では、入力サンプル列と出力サンプル列
のサンプリング周波数の比が簡単な整数比にならないと
装置規模が大きくなる欠点があった。
Further, the method of oversampling the input sample sequence has a drawback that the device scale becomes large unless the ratio of the sampling frequencies of the input sample sequence and the output sample sequence is a simple integer ratio.

【0008】そこで、このオーバサンプリングによる手
法を改善して、入力サンプル列を装置規模があまり大き
くならない程度の倍数でオーバサンプリングし、このオ
ーバサンプリングで作られたサンプル間を直線補間で補
間して出力サンプル列を作る方法も考えられていた。し
かしながら、この方法では直線補間を用いたため変換精
度が悪く、音響信号の場合ひずみが大きくなる欠点があ
った。
Therefore, the method based on this oversampling is improved so that the input sample sequence is oversampled by a multiple that does not increase the device size so much that the samples created by this oversampling are interpolated and output. A method of making a sample row was also considered. However, since this method uses linear interpolation, the conversion accuracy is poor and there is a drawback that distortion becomes large in the case of an acoustic signal.

【0009】この発明は、前記従来の技術における欠点
を解決して、構成の簡易さと変換精度の良さの両立を図
ったサンプリング周波数変換器を提供しようとするもの
である。
The present invention intends to solve the above-mentioned drawbacks of the prior art and to provide a sampling frequency converter having both a simple structure and good conversion accuracy.

【0010】[0010]

【課題を解決するための手段】請求項1記載の発明は、
入力サンプル列をオーバサンプリングするオーバサンプ
リング手段と、RAMと、前記オーバサンプリング手段
から出力されるオーバサンプリングデータをこのオーバ
サンプリングデータに同期したクロックで前記RAMに
書込む書込制御手段と、前記入力サンプル列のサンプリ
ング周波数と出力サンプル列のサンプリング周波数の周
波数比を計測するサンプリング周波数比計測手段と、こ
の計測されたサンプリング周波数比を実現する出力サン
プルの前後の2点の補間データを多項式補間で求めるた
めのオーバサンプリングデータを前記RAMから読み出
す読出制御手段と、この読出制御手段により前記RAM
から読み出されたオーバサンプリングデータに基づき前
記2点の補間データを多項式補間で求める多項式補間手
段と、この多項式補間で求められた2点の多項式補間デ
ータを直線補間して、前記サンプリング周波数比を実現
する出力サンプル値を求める直線補間手段とを具備して
なるものである。
The invention according to claim 1 is
Oversampling means for oversampling an input sample sequence, RAM, write control means for writing oversampling data output from the oversampling means to the RAM at a clock synchronized with the oversampling data, and the input sample Sampling frequency ratio measuring means for measuring the frequency ratio between the sampling frequency of the sequence and the sampling frequency of the output sample sequence, and for obtaining the interpolated data at two points before and after the output sample that realizes the measured sampling frequency ratio by polynomial interpolation. Read-out control means for reading out the oversampling data of the RAM from the RAM, and the read-out control means for the RAM
Polynomial interpolation means for obtaining the above-mentioned two-point interpolation data by polynomial interpolation based on the oversampling data read from, and the two-point polynomial interpolation data obtained by this polynomial interpolation are linearly interpolated to obtain the sampling frequency ratio. And a linear interpolation means for obtaining an output sample value to be realized.

【0011】また、請求項2記載の発明は、請求項1記
載の発明において、前記サンプリング周波数比計測手段
が、前記入力サンプル列に同期したクロックをカウント
するカウンタで構成され、前記出力サンプル列の多数ワ
ード周期内での当該カウンタのカウント値を前記サンプ
リング周波数比として出力するものであり、前記読出制
御手段は、前記カウンタのカウント値を出力サンプル周
期ごとに積算した積算値のビットを3区間に区切ったう
ちの上位のデータを前記RAMの読出アドレスデータと
して用い、前記多項式補間手段は、前記積算値のビット
を3区間に区切ったうちの中位のデータを前記多項式補
間のための補間係数を記憶しているROMのアドレスデ
ータとして用い、前記直線補間手段は、前記積算値のビ
ットを3区間に区切ったうちの下位のデータを前記直線
補間のための係数データとして用いることを特徴とする
ものである。
According to a second aspect of the present invention, in the first aspect of the invention, the sampling frequency ratio measuring means is composed of a counter for counting a clock synchronized with the input sample sequence, The count value of the counter within a multi-word cycle is output as the sampling frequency ratio, and the read control means accumulates the count value of the counter for each output sample cycle into three sections. The upper data of the divided data is used as the read address data of the RAM, and the polynomial interpolation means sets the intermediate data of the divided bits of the integrated value into three sections by using the interpolation coefficient for the polynomial interpolation. The linear interpolation means divides the bits of the integrated value into three sections by using the stored address data of the ROM. And it is characterized in the use of lower data of that Tsu as coefficient data for the linear interpolation.

【0012】[0012]

【作用】請求項1記載の発明によれば、入力サンプル列
を適宜の倍数でオーバサンプリングし、このオーバサン
プリングで作られたサンプル間を多項式補間で補間し、
この多項式補間で作られたサンプル間を直線補間で補間
して出力サンプル列を作るようにしている。
According to the first aspect of the invention, the input sample sequence is oversampled by an appropriate multiple, and the samples created by this oversampling are interpolated by polynomial interpolation.
An output sample sequence is created by interpolating the samples created by this polynomial interpolation by linear interpolation.

【0013】そして、これによればオーバサンプリング
のみで出力サンプル列を作る場合に比べて回路規模を小
さくすることができる。また、オーバサンプリングで作
られたサンプル間を直接直線補間せずに、多項式補間で
補間してから直線補間するようにしたので、変換精度が
良好になる。しかも、オーバサンプリングで同じ倍数を
かせぐ場合に比べて多項式補間および直線補間を用いれ
ば回路規模を小さくすることができる。そして、これに
より構成の簡易さと変換精度の良さが両立される。
According to this, the circuit scale can be reduced as compared with the case where the output sample string is created only by oversampling. Further, since the samples created by oversampling are not directly linearly interpolated but are interpolated by polynomial interpolation and then linearly interpolated, the conversion accuracy is improved. Moreover, the circuit scale can be reduced by using polynomial interpolation and linear interpolation as compared with the case where the same multiple is obtained by oversampling. In addition, this simplifies the configuration and achieves good conversion accuracy.

【0014】また、請求項2記載によれば、入力サンプ
ル列に同期したクロックを出力サンプル列の多数リード
周期内でカウントしたカウント値のビットを3区間に区
切って、上位からそれぞれ多項式補間のためのRAMの
読出アドレスデータ、多項式補間係数を記憶しているR
OMの読出アドレスデータ、直線補間のための係数デー
タとして用いるようにしたので、補間値の生成を容易に
行なうことができる。
According to a second aspect of the present invention, the bits of the count value obtained by counting the clock synchronized with the input sample sequence within the multiple read period of the output sample sequence are divided into three sections, and the polynomial interpolation is performed from the top. R that stores the read address data of the RAM and the polynomial interpolation coefficient
Since it is used as the read address data of the OM and the coefficient data for the linear interpolation, the interpolation value can be easily generated.

【0015】[0015]

【実施例】以下、この発明の一実施例を説明する。はじ
めに、その概要構成を図1に示す。ここでは、サンプリ
ング周波数fs1で動作しているディジタル機器10(例
えば、ディジタル・オーディオ再生機器等)から出力し
たデータをサンプリング周波数変換器12でサンプリン
グ周波数をfs2に変換して、このサンプリング周波数fs
2で動作しているディジタル機器14(例えば、ディジ
タル・オーディオ録音機器、ディジタル・オーディオ・
ミキサ等)に入力する場合について示している。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below. First, the schematic configuration is shown in FIG. Here, the sampling frequency converter 12 converts the sampling frequency fs2 from the data output from the digital device 10 (for example, a digital audio reproducing device) operating at the sampling frequency fs1.
Digital device 14 (eg, digital audio recording device, digital audio
It shows the case of inputting to a mixer, etc.).

【0016】ディジタル機器10から出力されるデータ
(入力サンプル列)は、データ入力端子16を介してサ
ンプリング周波数変換器12に入力され、ディジタル・
オーディオ・インタフェース・レシーバ18でこのサン
プリング周波数変換器12の内部クロックに同期が合わ
せられるとともに、入力ワードクロック(周波数がfs1
のクロック)と、入力ビットクロック(入力データの最
小単位のクロック(再生クロック等))で、この実施例
では入力ワードクロックの256倍のクロックが用いら
れている。)が再生される。
The data (input sample sequence) output from the digital device 10 is input to the sampling frequency converter 12 via the data input terminal 16 and digitally input.
The audio interface receiver 18 synchronizes the internal clock of the sampling frequency converter 12 with the input word clock (frequency is fs1).
Clock) and an input bit clock (clock of the minimum unit of input data (reproduction clock, etc.)), and a clock that is 256 times the input word clock is used in this embodiment. ) Is played.

【0017】内部クロックに同期が合わせられた入力サ
ンプル列は、8倍オーバサンプリング・フィルタ20
(オーバサンプリング手段)で8倍オーバサンプリング
され、非同期RAMバッファ22(RAM)に順次書込
まれていく。書込制御手段24はこの書込みを制御する
もので、入力ワードクロックに従って非同期RAMバッ
ファ22に書込アドレスを指示する。
The input sample sequence synchronized with the internal clock is the 8 × oversampling filter 20.
8 times oversampling is performed by the (oversampling means) and sequentially written in the asynchronous RAM buffer 22 (RAM). The write control means 24 controls this writing, and instructs a write address to the asynchronous RAM buffer 22 according to the input word clock.

【0018】ディジタル機器14からは、出力ワードク
ロック(ディジタル機器14で使われるサンプリング周
波数fs2のクロック)と、出力ビットクロック(ディジ
タル機器14で使われる最小単位のクロック)が出力さ
れ、クロック入力端子26,28から入力される。サン
プリング周波数比計測手段30は、入力側のサンプリン
グ周波数fs1と出力側のサンプリング周波数fs2とを比
較し、サンプリング周波数比Fsを示すデータを出力す
る。
The digital device 14 outputs an output word clock (sampling frequency fs2 clock used in the digital device 14) and an output bit clock (minimum unit clock used in the digital device 14), and the clock input terminal 26 , 28. The sampling frequency ratio measuring means 30 compares the sampling frequency fs1 on the input side with the sampling frequency fs2 on the output side, and outputs data indicating the sampling frequency ratio Fs.

【0019】読出制御手段32は、計測されたサンプリ
ング周波数比Fsを実現する出力サンプル列を補間で作
るのに必要な8倍オーバサンプリングデータを非同期R
AMバッファ22から読出す制御を行なう。また、多項
式間用係数ROMの読出アドレスおよび直線補間用係数
の出力も行なう。
The read control means 32 performs asynchronous R conversion on the 8-fold oversampling data necessary for producing an output sample sequence realizing the measured sampling frequency ratio Fs by interpolation.
Control to read from the AM buffer 22 is performed. It also outputs the read address of the inter-polynomial coefficient ROM and the coefficient for linear interpolation.

【0020】補間演算部34は非同期RAMバッファ2
2から読出された8倍オーバサンプリングデータを用い
て、多項式補間手段36で目的とする出力サンプルの前
後の2点の補間データを多項式補間で求める。ここでは
多項式補間としては、ラグランジェ7次補間を用いてい
る。さらに、直線補間手段38でこの2点の多項式(ラ
グランジェ)補間データ間を直線補間して目的とする出
力サンプル値を求める。
The interpolation calculator 34 is the asynchronous RAM buffer 2
Using the 8 times oversampling data read from No. 2, the polynomial interpolating means 36 finds two points of interpolated data before and after the target output sample by polynomial interpolation. Here, Lagrange 7th-order interpolation is used as the polynomial interpolation. Further, the linear interpolation means 38 linearly interpolates between these two points of polynomial (Lagrange) interpolation data to obtain a desired output sample value.

【0021】このようにして、補間演算部34からディ
ジタル機器14に同期したサンプリング周波数fs2で
順次出力される出力サンプル列は、データ出力端子40
から出力されて、そのままディジタル機器14に入力さ
れて必要な処理がなされる。
In this way, the output sample sequence sequentially output from the interpolation calculation section 34 at the sampling frequency fs2 synchronized with the digital device 14 is the data output terminal 40.
Output to the digital device 14 as it is, and the necessary processing is performed.

【0022】以上のサンプリング周波数変換の過程を図
2に示す。は入力サンプル列A1,A2,……を示し
たもので、これをサンプリング周波数が異なる出力サン
プル列a1,a2,……に変換するものとし、このうち
出力サンプルa3を作る過程を〜で示している。
The process of the above sampling frequency conversion is shown in FIG. Shows the input sample sequence A1, A2, ..., which is to be converted into the output sample sequence a1, a2, .. There is.

【0023】は、入力サンプルA4,A5の区間に8
倍オーバサンプリングによって新たなサンプルA4−
1,A4−2,……,A4−7が均等の間隔で挿入され
て、このA4,A5の区間を8分割している。なお、こ
のオーバサンプリングはサンプリング周波数比に無関係
にすべてのオーバサンプリングデータが順次作成されて
前記非同期RAMバッファ22に書込まれる。
Is 8 in the section of the input samples A4 and A5.
New sample A4-by double oversampling
, A4-2, ..., A4-7 are inserted at equal intervals to divide the section A4, A5 into eight. In this oversampling, all oversampling data are sequentially created and written in the asynchronous RAM buffer 22 regardless of the sampling frequency ratio.

【0024】は、オーバサンプリングデータを用い
て、目的とする出力サンプルa3が含まれるA4,A5
の区間をラグランジェ7次補間したデータを示すもので
ある。ここではオーバサンプリングデータの1区間をラ
グランジェ7次補間で128等分する場合について示し
ている。なお、実際の演算は、補間データA4−4−
1、A4−4−2,……,A4−4−127をすべて算
出するのではなく、直線補間に必要なデータすなわち目
的とする出力サンプルa3を挾んでその前後の2点の補
間データ(ここではA4−4−45,A4−4−46)
のみ作成する。なお、どの位置の補間データを作成する
かは、後述するようにサンプリング周波数比Fsによっ
て決まる。
Is the A4, A5 containing the target output sample a3 by using the oversampling data.
7 shows data obtained by performing Lagrange 7th-order interpolation on the section. Here, a case where one section of the oversampling data is divided into 128 equal parts by Lagrange 7th-order interpolation is shown. The actual calculation is the interpolation data A4-4-
1, A4-4-2, ..., A4-4-127 are not all calculated, but the data required for linear interpolation, that is, the output sample a3 of interest, is interpolated and interpolation data of two points before and after that (here Then A4-4-45, A4-4-46)
Only create. Note that which position the interpolation data is created is determined by the sampling frequency ratio Fs as described later.

【0025】は、ラグランジェ補間データA4−4−
45,A4−4−46の区間を直線補間したデータを示
すものである。ここでは、ラグランジェ補間データの隣
接する2点間を直線補間で211等分する場合について示
している。なお、実際の演算は補間データA4−4−4
5−1,A4−4−45−2,……,A4−4−45−
(211−1)をすべて算出するのではなく、目的とする
出力サンプルa3の補間データのみ作成する。なお、ど
の位置の補間データを作成するかは後述するようにサン
プリング周波数比Fsによって決まる。
Is Lagrange interpolation data A4-4-
45 shows data obtained by linearly interpolating the section 45, A4-4-46. Here, the case where two adjacent points of the Lagrange interpolation data are equally divided into 2 11 by linear interpolation is shown. The actual calculation is the interpolation data A4-4-4.
5-1, A4-4-45-2, ..., A4-4-45-
Instead of calculating all (2 11 -1), only the interpolation data of the target output sample a3 is created. The position of the interpolation data to be created depends on the sampling frequency ratio Fs as described later.

【0026】以上の工程により出力サンプルa3のサン
プル値が高精度に求まる。なお、次の出力サンプルa4
は、出力サンプルa3から1/fs2離れた時点の出力
サンプルを上記同様にして求めることによって得られ
る。
Through the above steps, the sample value of the output sample a3 can be obtained with high accuracy. The next output sample a4
Is obtained by obtaining the output sample at a time point 1 / fs2 away from the output sample a3 in the same manner as above.

【0027】次に、図1のサンプリング周波数変換器1
2の具体例を図3に示す。図3の各部について説明す
る。 (1) コントロール回路31 コントロール回路31は図3の回路の各部にコントロー
ル信号CONTを送出して、各部が所定の動作をするの
に必要な制御を行なう。また各部からの信号CONT′
を入力する。
Next, the sampling frequency converter 1 of FIG.
A specific example of No. 2 is shown in FIG. Each part of FIG. 3 will be described. (1) Control circuit 31 The control circuit 31 sends a control signal CONT to each part of the circuit of FIG. 3 to perform the control necessary for each part to perform a predetermined operation. In addition, the signal CONT 'from each part
Enter.

【0028】(2) サンプリング周波数比計測手段30 サンプリング周波数比計測手段30は22ビット語長の
フリーランカウンタ42を具え、これでサンプリング周
波数比Fsの計測を行なっている。なお、フリーランカ
ウンタとは、リセットをかけずにフリーランさせる循環
式のカウンタという意味である。この22ビットカウン
タ42は入力サンプリング周波数fs1の256倍の周
波数を有する入力ビットクロックをカウントしており、
出力サンプリング周波数fs2に同期した周期内でのこ
の22ビットカウンタ42のカウント数を計測する。こ
のカウント数は入力サンプリング周波数fs1が高くな
れば(あるいは出力サンプリング周波数fs2が低くな
れば)多くなり、入力サンプリング周波数fs1が低く
なれば(あるいは出力サンプリング周波数fs2が高く
なれば)少なくなるから、このカウント数が両サンプリ
ング周波数fs1,fs2の周波数比Fsに対応したも
のとなる。
(2) Sampling frequency ratio measuring means 30 The sampling frequency ratio measuring means 30 comprises a free-run counter 42 of 22-bit word length, which measures the sampling frequency ratio Fs. The free-run counter means a circulation-type counter that performs free-run without resetting. The 22-bit counter 42 counts the input bit clock having a frequency of 256 times the input sampling frequency fs1,
The count number of the 22-bit counter 42 in the period synchronized with the output sampling frequency fs2 is measured. This count number increases as the input sampling frequency fs1 increases (or the output sampling frequency fs2 decreases), and decreases as the input sampling frequency fs1 decreases (or the output sampling frequency fs2 increases). The count number corresponds to the frequency ratio Fs of the sampling frequencies fs1 and fs2.

【0029】ここでは、サンプリング周波数比Fsの計
測精度(分解能)を向上させるため、図4に示すよう
に、8192出力ワードクロックもの長い期間を1回の
計測周期として、この間に22ビットカウンタ42でカ
ウントされるカウント数を8192出力ワードクロック
の期間でのサンプリング周波数比Fsの平均値として出
力する。
Here, in order to improve the measurement accuracy (resolution) of the sampling frequency ratio Fs, as shown in FIG. 4, a period as long as 8192 output word clocks is set as one measurement cycle, and the 22-bit counter 42 is provided during this period. The counted number is output as the average value of the sampling frequency ratio Fs during the period of the 8192 output word clock.

【0030】この計測は、具体的には次のようにして行
なわれる。図3において、22ビットカウンタ42のカ
ウント値は、8192出力ワードクロックごとにレジス
タ44,46に順次転送されていく。減算器48は両レ
ジスタ44,46に保持されたカウント値を引算して直
前の8192出力ワードクロックの期間での22ビット
カウンタ42のカウント数をサンプリング周波数比Fs
のデータとして出力する。したがって、サンプリング周
波数比Fsのデータは8192出力データワードごとに
更新される。
Specifically, this measurement is performed as follows. In FIG. 3, the count value of the 22-bit counter 42 is sequentially transferred to the registers 44 and 46 at every 8192 output word clock. The subtractor 48 subtracts the count values held in the registers 44 and 46 to determine the count number of the 22-bit counter 42 in the immediately preceding 8192 output word clock period as the sampling frequency ratio Fs.
Output as data. Therefore, the data of the sampling frequency ratio Fs is updated every 8192 output data words.

【0031】サンプリング周波数比Fsのデータはセレ
クタ60を介して読出制御手段32に供給されて、非同
期RAMバッファ22の読出アドレス、ラグランジェ7
次補間用係数ROM86の読出アドレス、直線補間係数
oef の決定に用いられる。
The data of the sampling frequency ratio Fs is supplied to the read control means 32 via the selector 60, and the read address of the asynchronous RAM buffer 22, Lagrange 7 is supplied.
It is used to determine the read address of the next interpolation coefficient ROM 86 and the linear interpolation coefficient Coef .

【0032】ところで、サンプリング周波数比Fsは何
らかの理由で時間軸上で急激に大きく変動した場合に
は、8192出力ワードクロックごとにサンプリング周
波数比Fsを計測していたのでは、サンプリング周波数
比Fsの変動に対して計測値が追従できず、その時点で
の正確なサンプリング周波数比Fsを示さなくなる。こ
のため、非同期RAMバッファ22において読出アドレ
スが書込アドレスを追い越したり追い越されたりして大
きなノイズを発生するなどの問題を起こすおそれがあ
る。
By the way, when the sampling frequency ratio Fs changes drastically on the time axis for some reason, the sampling frequency ratio Fs is measured every 8192 output word clocks. However, the measured value cannot follow, and the accurate sampling frequency ratio Fs at that time cannot be shown. Therefore, in the asynchronous RAM buffer 22, there is a possibility that a read address may overtake or overtake a write address to cause a large noise.

【0033】このような問題の解決策として、毎出力ワ
ードクロックごとの22ビットカウンタ42のカウント
値を過去8192回分にわたって順次RAMに記憶して
いき、現在のカウント値と8192出力ワードクロック
前のカウント値との差を毎出力ワードクロックごとに逐
次求め、これを各時点のサンプリング周波数比Fsとし
て出力する方法が考えられる。このようにすれば、毎出
力ワードクロックごとに新たなサンプリング周波数比が
求められるので、サンプリング周波数比Fsの変動に対
する追従性は良くなるが、その反面容量が非常に大きな
RAMが必要となる欠点がある。
As a solution to such a problem, the count value of the 22-bit counter 42 for each output word clock is sequentially stored in the RAM for the past 8192 times, and the present count value and the count before the 8192 output word clock are counted. A method is conceivable in which the difference from the value is sequentially obtained for each output word clock and is output as the sampling frequency ratio Fs at each time point. By doing so, a new sampling frequency ratio is obtained for each output word clock, so that the followability to changes in the sampling frequency ratio Fs is improved, but on the other hand, there is a drawback that a RAM having a very large capacity is required. is there.

【0034】そこで、ここでは容量が大きなRAMを必
要とせずにサンプリング周波数比Fsの変動に対する追
従性を良くする方法を提案する。これは、図5に示すよ
うに、サンプリング周波数比Fsを計測する周期を16
出力ワードクロックとし、毎出力ワードクロックごとの
22ビットカウンタ42のカウント値を過去16回分に
わたって順次RAMに記憶していき、現在のカウント値
と16ワードクロック前のカウント値との差を毎出力ワ
ードクロックごとに逐次求め、これを各時点のサンプリ
ング周波数比Fsのデータとして出力するようにしたも
のである。
Therefore, here, a method for improving the followability to the variation of the sampling frequency ratio Fs without using a RAM having a large capacity is proposed. As shown in FIG. 5, this means that the cycle of measuring the sampling frequency ratio Fs is 16
As the output word clock, the count value of the 22-bit counter 42 for each output word clock is sequentially stored in the RAM for the past 16 times, and the difference between the current count value and the count value 16 word clocks before is output for each output word. The clock frequency is sequentially obtained for each clock and is output as data of the sampling frequency ratio Fs at each time point.

【0035】このようにすれば、毎出力ワードクロック
ごとに新たなサンプリング周波数比Fsが求められるの
で、サンプリング周波数比Fsの変動に対する計測値の
追従性は良好となる。また、このようにすると、サンプ
リング周波数比Fsを平均化する時間が短くなる(81
92出力ワードクロックから16出力ワードクロックに
なる)ので一見分解能は低下するように思われるが、周
波数比が変動している場合は平均化する期間が短いほう
が変動の影響が強く現われて実際のサンプリング周波数
比Fsに近い計測値が得られることになる。ただし、平
均化する時間があまり短いとジッタの影響も出てくるの
で、ジッタの影響があまり出ない値としてここでは16
出力ワードクロックという期間を設定している。
In this way, a new sampling frequency ratio Fs is obtained for each output word clock, so that the measured value follows the fluctuations of the sampling frequency ratio Fs. Further, in this way, the time for averaging the sampling frequency ratio Fs becomes shorter (81
It seems that the resolution decreases at a glance because it changes from 92 output word clocks to 16 output word clocks. However, when the frequency ratio fluctuates, the shorter the averaging period, the stronger the fluctuation influence appears and the actual sampling. A measured value close to the frequency ratio Fs will be obtained. However, if the averaging time is too short, the effect of jitter will also occur.
A period called the output word clock is set.

【0036】なお、16(=24 )出力ワードクロック
でのカウント値は、8192(=213)出力ワードクロ
ックでのカウント値に比べて 24 ÷213=2-9 の大きさになるから、8192出力ワードクロックでの
サンプリング周波数Fsの計測値と位を合わせるため、
16出力ワードクロックでの計測時には、22ビットカ
ウンタ42の上位9ビットを除いた下位13ビットの出
力を9ビットシフトアップした値をサンプリング周波数
比Fsとする。
The count value for the 16 (= 2 4 ) output word clock is 2 4 ÷ 2 13 = 2 -9 compared to the count value for the 8192 (= 2 13 ) output word clock. Therefore, to match the measurement value of the sampling frequency Fs with the 8192 output word clock,
At the time of measurement with the 16-output word clock, the value obtained by shifting up the output of the lower 13 bits of the 22-bit counter 42 excluding the upper 9 bits by 9 bits is set as the sampling frequency ratio Fs.

【0037】図3のサンプリング周波数比計測手段30
では16出力ワードクロックでの計測を次のように行な
っている。レジスタ52は1出力ワードクロックごとに
22ビットカウンタ42の下位13ビットの出力を取り
込む。RAM54は、レジスタ52に取込まれたカウン
ト値が順次書込まれていき、常に現時点から見て過去1
6個分のカウント値を保持する。減算器56はRAM5
4に記憶された最古のカウント値と最新のカウント値と
の差(つまり16出力ワードクロックの期間内でのカウ
ント数)を求めて、これをこの期間でのサンプリング周
波数比Fsの平均値として、毎出力ワードクロックごと
に更新して出力する。これにより、サンプリング周波数
比Fsが変動した場合には、即座にこれに追従した計測
値が減算器56から得られる。
Sampling frequency ratio measuring means 30 of FIG.
Then, the measurement with 16-output word clock is performed as follows. The register 52 fetches the output of the lower 13 bits of the 22-bit counter 42 every one output word clock. In the RAM 54, the count value taken in the register 52 is sequentially written, and the past 1 is always seen from the present time.
The count value for 6 pieces is held. The subtractor 56 is RAM5
The difference between the oldest count value stored in 4 and the latest count value (that is, the number of counts within the period of 16 output word clocks) is obtained, and this is taken as the average value of the sampling frequency ratio Fs during this period. , Output for each output word clock. As a result, when the sampling frequency ratio Fs fluctuates, the measured value immediately following the fluctuation is obtained from the subtractor 56.

【0038】サンプリング周波数比Fsの変動検出は、
次のようにして行なっている。比較部51は22ビット
精度のサンプリング周波数比Fsの計測値と毎出力ワー
ドクロックごとに更新される13ビット精度のサンプリ
ング周波数比計測値とを図6に示すように位を合わせて
引算して13ビットの差データとして出力する。この差
データは、サンプリング周波数比Fsの変動が小さい時
は小さな値になり、変動が大きい時は大きな値となる。
そこで、比較部51は、図6に示すように、上下の閾値
1,2を設定して、通常は22ビット精度でサンプリン
グ周波数比Fsの計測を行ない(つまり、セレクタ60
から22ビット精度サンプリング周波数比計測データを
出力する。)、この状態で差データが閾値1(11ビッ
ト)以上になったら変動が大きいと判断して22ビット
精度から13ビット精度に計測を切り換える(セレクタ
60から13ビット精度サンプリング周波数比計測デー
タを出力する。)。そして、13ビット精度での計測時
に差データが閾値2(13ビット)以下になったら変動
が小さくなったと判断して13ビット精度から22ビッ
ト精度に戻す。このようにして、ヒステリヒスを持たせ
てサンプリング周波数比Fsの計測を行なう。これによ
り、ディジタルレコーダでバリアブルピッチなどを用い
てサンプリング周波数比Fsが連続的に変動したような
場合でも、即座に追従のよい13ビット精度サンプリン
グ周波数比のほうに切り換わり、歪は多少悪化するもの
の、聴感上に悪影響を与えるようなノイズの発生はおさ
えられる。
The variation of the sampling frequency ratio Fs is detected by
This is done as follows. The comparison unit 51 subtracts the measured value of the sampling frequency ratio Fs of 22-bit precision and the measured value of sampling frequency ratio of 13-bit precision updated for each output word clock, as shown in FIG. It is output as 13-bit difference data. The difference data has a small value when the fluctuation of the sampling frequency ratio Fs is small, and has a large value when the fluctuation is large.
Therefore, as shown in FIG. 6, the comparison unit 51 sets upper and lower thresholds 1 and 2, and normally measures the sampling frequency ratio Fs with 22-bit accuracy (that is, the selector 60).
To output 22-bit precision sampling frequency ratio measurement data. ), If the difference data exceeds the threshold value 1 (11 bits) in this state, it is determined that the fluctuation is large, and the measurement is switched from the 22-bit precision to the 13-bit precision (the selector 60 outputs the 13-bit precision sampling frequency ratio measurement data). Yes.). Then, when the difference data becomes equal to or less than the threshold value 2 (13 bits) during the measurement with 13-bit accuracy, it is determined that the fluctuation is small, and the 13-bit accuracy is returned to the 22-bit accuracy. In this way, the sampling frequency ratio Fs is measured with hysteresis. As a result, even if the sampling frequency ratio Fs continuously changes by using a variable pitch in the digital recorder, it is immediately switched to the 13-bit precision sampling frequency ratio with good tracking, and the distortion is slightly deteriorated. However, the generation of noise that adversely affects the hearing is suppressed.

【0039】なお、遅延回路58は22ビット精度のサ
ンプリング周波数比計測値を3サンプル(=8192出
力ワードクロック×3)遅延する。これは、サンプリン
グ周波数比Fsが変動して22ビット精度から13ビッ
ト精度に切り換わった後は確実に安定な状態に戻ってか
ら22ビット精度に戻すためのものである。すなわち、
22ビット精度で計測している状態でサンプリング周波
数比Fsが変動すると、その影響は13ビット精度の計
測値に即座に現われるので、差データが大きくなりすぐ
に13ビット精度での計測に切り換えられる。これに対
し、13ビット精度で計測している状態からサンプリン
グ周波数比Fsが安定な状態に戻ると、13ビット精度
の計測値はすぐに安定な状態に戻るが、22ビット精度
の計測値は遅延回路58で3サンプル遅延されているた
めすぐには安定な状態に戻らず、その間差データが大き
くなったままであり、13ビットの計測が続けられる。
そして3サンプル後に22ビット精度の計測値も安定な
状態に戻り、差データが小さくなって22ビット精度で
の計測に戻される。このようにして、切換タイミングに
ヒステリジスを持たせている。なお、遅延時間は3サン
プルに限らず適宜設定できる。
The delay circuit 58 delays the sampling frequency ratio measurement value of 22-bit precision by 3 samples (= 8192 output word clock × 3). This is for reliably returning to a stable state and then returning to 22-bit precision after the sampling frequency ratio Fs has changed and switched from 22-bit precision to 13-bit precision. That is,
If the sampling frequency ratio Fs fluctuates while measuring with 22-bit precision, the effect immediately appears in the measurement value with 13-bit precision, so that the difference data becomes large and the measurement is immediately switched to 13-bit precision. On the other hand, when the sampling frequency ratio Fs returns to a stable state from the state of 13-bit precision measurement, the 13-bit precision measurement value immediately returns to a stable state, but the 22-bit precision measurement value is delayed. Since the circuit 58 is delayed by 3 samples, it does not return to the stable state immediately, and the difference data remains large during that time, and the 13-bit measurement is continued.
After three samples, the measurement value with 22-bit precision also returns to a stable state, the difference data becomes smaller, and the measurement with 22-bit precision is restored. In this way, the switching timing has a hysteresis. The delay time is not limited to 3 samples and can be set appropriately.

【0040】(3) 書込制御手段24 ライト・アドレス・カウンタ24は書込制御手段を構成
するもので、8倍オーバサンプリングデータに同期した
周波数がfs1の8倍のクロックをカウントし、そのカ
ウント値を書込アドレスデータとして出力する。この書
込アドレスデータは、セレクタ62を介して順次非同期
RAMバッファ22に供給されて、8倍オーバサンプリ
ングされた入力データを非同期RAMバッファ22に順
次書込む 。 (4) 読出制御手段32 計測されたサンプリング周波数比Fsは、入力サンプル
列に対して出力サンプル列を出力すべき間隔を示すの
で、これを用いて非同期RAMバッファ22の読出しお
よび補間係数の付与を行なうことにより出力サンプル列
を生成することができる。
(3) Write control means 24 The write address counter 24 constitutes a write control means, and counts clocks whose frequency synchronized with 8 times oversampling data is 8 times fs1 and counts the same. The value is output as write address data. The write address data is sequentially supplied to the asynchronous RAM buffer 22 via the selector 62, and the input data that has been 8 times oversampled is sequentially written to the asynchronous RAM buffer 22. (4) Read Control Means 32 The measured sampling frequency ratio Fs indicates the interval at which the output sample sequence should be output with respect to the input sample sequence, so that it is used to read the asynchronous RAM buffer 22 and add interpolation coefficients. By doing so, an output sample sequence can be generated.

【0041】そこで、図3の読出制御手段32は、サン
プリング周波数比計測手段30から出力されるサンプリ
ング周波数比Fsの計測データを出力サンプリング周波
数fs2の各周期ごとに積算していって、その積算値を
非同期RAMバッファ22の読出アドレスデータ、ラグ
ランジェ7次補間用の係数ROMの読出アドレスデー
タ、直線補間係数データを組合わせたベースアドレスデ
ータとして毎出力サンプリング周期ごとに出力する。こ
の場合、22ビット精度でサンプリング周波数比Fsを
計測している時は、8192出力ワードクロックごとに
計測値が更新されるので、更新されるまでの間は同じ計
測値を8192回累算して用いることになる。また、1
3ビット精度で計測している時は、毎出力ワードクロッ
クごとに計測値が更新されていくので、この更新されて
いく計測値を順次積算していく。
Therefore, the read control means 32 of FIG. 3 integrates the measurement data of the sampling frequency ratio Fs output from the sampling frequency ratio measuring means 30 for each cycle of the output sampling frequency fs2, and the integrated value. Is output as a base address data which is a combination of the read address data of the asynchronous RAM buffer 22, the read address data of the coefficient ROM for Lagrange 7th-order interpolation, and the linear interpolation coefficient data at every output sampling cycle. In this case, when the sampling frequency ratio Fs is measured with 22-bit accuracy, the measurement value is updated every 8192 output word clocks, and therefore the same measurement value is accumulated 8192 times until it is updated. Will be used. Also, 1
When measuring with 3-bit accuracy, the measured value is updated every output word clock, and thus the updated measured value is sequentially integrated.

【0042】ベースアドレスの構成を図7に示す。ベー
スアドレスは、前述のように22ビットのサンプリング
周波数比Fsの計測値(13ビット精度での計測値は下
位に9ビット“0”を付加して22ビットとされる)を
出力ワードクロックごとに積算して生成されるもので、
全体が25ビットで構成されている。サンプリング周波
数比Fsの計測値は、もともと8倍オーバサンプリング
データの32(=25)倍の入力ビットクロックを81
92(=213)出力ワードクロックにわたってカウント
した値であるので、ベースアドレスを1/218した値が
入力サンプル列を8倍オーバサンプリングして非同期R
AMバッファ22に記憶されている1サンプルと対応づ
けられる。したがって、ベースアドレスのうち上位7ビ
ットを非同期RAMバッファ22の読出アドレス(全2
7 =128アドレス)として用い、下位18ビットを8
倍オーバサンプリングされたサンプル間を218分割する
補間用のデータとして用いる。ここでは、この18ビッ
トの補間用データのうち上位7ビットを8倍オーバサン
プリングされたサンプル間を27 =128分割するラグ
ランジェ7次補間用の係数ROM86の読出アドレスと
して用い、下位11ビットをラグランジェ7次補間され
た2つのサンプル間を211=2048分割する直線補間
用係数Coef として用いる(図2参照)。
The structure of the base address is shown in FIG. For the base address, as described above, the measured value of the sampling frequency ratio Fs of 22 bits (the measured value with 13-bit precision is set to 22 bits by adding 9 bits "0" to the lower) is output for each word clock. It is generated by integrating,
The whole consists of 25 bits. The measurement value of the sampling frequency ratio Fs is originally 81 times the input bit clock which is 32 (= 2 5 ) times the 8 times oversampling data.
92 (= 2 13 ) Since the value is counted over the output word clock, the value obtained by halving the base address is 18 times oversampling the input sample sequence and asynchronous R
It is associated with one sample stored in the AM buffer 22. Therefore, the upper 7 bits of the base address are read out from the asynchronous RAM buffer 22 (total 2 bits).
7 = 128 addresses) and the lower 18 bits are 8
It is used as data for interpolation that divides the 18 × oversampled sample into 2 18 divisions. Here, of the 18-bit interpolation data, the upper 7 bits are used as the read address of the Lagrange 7th-order interpolation coefficient ROM 86 that divides the 7 × oversampled samples by 2 7 = 128, and the lower 11 bits are used. It is used as a linear interpolation coefficient C oef for dividing 2 11 = 2048 between two Lagrange 7th-order interpolated samples (see FIG. 2).

【0043】読出制御手段32によるベースアドレスの
生成は次のようにして行なわれる。サンプリング周波数
比計測手段30から出力されるサンプリング周波数比F
sの計測値は、セレクタ62を介してフルアダー64の
一方入力端に入力される。フルアダー64は、レジスタ
66に保持されている前回までの積算値をセレクタ68
を介して他方入力端に入力して両入力を加算し、これを
新たな積算値としてレジスタ66に保持する。この積算
動作を毎出力ワードクロックごと行なう。レジスタ66
に保持された積算値はベースアドレスとして毎出力ワー
ドクロックごとにラッチ回路70に転送されて、そのう
ち上位7ビットがRAM読出アドレスとしてセレクタ6
2を介して非同期RAMバッファ22に供給され、中位
7ビットがラグランジェ補間用係数ROM86の読出ア
ドレスとしてまた下位11ビットが直線補間用係数C
oef として補間演算部34に供給される。
The generation of the base address by the read control means 32 is performed as follows. Sampling frequency ratio measuring unit 30 outputs sampling frequency ratio F
The measured value of s is input to one input end of the full adder 64 via the selector 62. The full adder 64 selects the integrated value up to the previous time stored in the register 66 from the selector 68.
Is input to the other input terminal via and the two inputs are added, and this is held in the register 66 as a new integrated value. This integration operation is performed for each output word clock. Register 66
The integrated value held in is transferred to the latch circuit 70 as a base address for each output word clock, and the upper 7 bits of the integrated value are used as a RAM read address in the selector 6
Is supplied to the asynchronous RAM buffer 22 via 2, and the middle 7 bits are the read address of the Lagrange interpolation coefficient ROM 86 and the lower 11 bits are the linear interpolation coefficient C.
It is supplied to the interpolation calculation unit 34 as oef .

【0044】(5) 非同期RAMバッファ22 非同期バッファ22は図8に示すように、全128アド
レスのリングバッファ状に構成され、8倍オーバサンプ
リングデータが順次書込まれていくとともに、ラグラン
ジェ7次補間に必要なデータが順次読出されていく。こ
の場合、ラグランジェ7次補間の演算には、目的とする
出力サンプルの前後4サンプルずつの合計8サンプルの
オーバサンプリングを用いるが、ベースアドレスの上位
7ビットで示される読出アドレスは、そのうちの例えば
目的とする出力サンプルの直前のオーバサンプリングデ
ータのアドレスを示すものとし、このアドレスおよびそ
の手前の3アドレスおよびその後の4アドレスの合計8
サンプルのデータが1つの出力サンプルを生成するため
に順次読出される。
(5) Asynchronous RAM buffer 22 As shown in FIG. 8, the asynchronous buffer 22 is formed into a ring buffer having a total of 128 addresses, and 8 times oversampling data is sequentially written. The data required for interpolation are read out sequentially. In this case, the Lagrange 7th-order interpolation operation uses oversampling of a total of 8 samples of 4 samples before and after the target output sample, and the read address indicated by the upper 7 bits of the base address is, for example, The address of the oversampling data immediately before the target output sample shall be shown, and this address, 3 addresses before this and 4 addresses after that, total 8
The data of the samples are read sequentially to produce one output sample.

【0045】入出力サンプリング周波数比Fsに変動が
なければ書込アドレスと読出アドレスは一定の距離を保
っているが、入出力サンプリング周波数比Fsが変動し
ている時は書込アドレスが進んで読出アドレスを追い越
したり逆に書込アドレスが遅れて読出アドレスに追い越
されたりすることがあり、いずれの場合にもデータに不
連続が生じて大きなノイズになってしまう。
If there is no change in the input / output sampling frequency ratio Fs, the write address and the read address are kept at a constant distance, but when the input / output sampling frequency ratio Fs changes, the write address advances and the read is performed. In some cases, the address may overtake the address, or conversely, the write address may be delayed and overtaken by the read address. In either case, the data becomes discontinuous and becomes a large noise.

【0046】そこで、ここでは書込アドレスの両側にあ
る距離離れてガードを設けて、読出アドレスで読出され
る8個の8倍オーバサンプリングデータのいずれかのア
ドレスまたは目的とする出力サンプルの直前の8倍オー
バサンプリングデータのアドレスがこのガード内に入っ
たら強制的にガードの外に戻すように読出アドレスを補
正することにより、追い越したり追い越されたりするの
を阻止して大きなノイズが発生するのを防止している。
Therefore, here, guards are provided on both sides of the write address so as to be spaced apart from each other so that the address immediately before any of the addresses of the eight 8 times oversampling data read at the read address or the target output sample is obtained. By correcting the read address so that if the address of the 8-fold oversampling data enters the guard, it is forced to return to the outside of the guard, thereby preventing overtaking or overtaking and generating a large noise. To prevent.

【0047】この読出アドレスの補正は次のようにして
行なわれる。ライト・アドレス・カウンタ24から出力
される入力側に同期した書込アドレス情報は非同期アド
レスラッチ回路72で出力側の同期に変換される。非同
期アドレスラッチ回路72は、3段に縦列接続したラッ
チ回路74〜76で構成され、書込アドレスデータをス
トローブ信号1〜3で順次転送することにより出力側の
クロックに同期させる。
The correction of the read address is performed as follows. The write address information output from the write address counter 24 and synchronized with the input side is converted into output side synchronization by the asynchronous address latch circuit 72. The asynchronous address latch circuit 72 is composed of latch circuits 74 to 76 connected in cascade in three stages, and sequentially transfers write address data by strobe signals 1 to 3 to synchronize with the clock on the output side.

【0048】非同期アドレスラッチ回路72の動作を図
9に示す。ラッチ回路74へのラッチを行なうストロー
ブ信号1は入力ワードクロックに同期したタイミングで
出力される。すなわち、入力ワードクロックの立上りタ
イミングで所定期間のマスクaが開始され、その中央部
でストローブ信号1が出力されて書込アドレス情報がラ
ッチ回路74にラッチされる。また、ラッチ回路74か
らラッチ回路75への転送を行なうストローブ信号2は
出力ワードクロックに同期したタイミングで出力され
る。すなわち、出力ワードクロックの立上りタイミング
で所定期間のマスクbが開始され、その中央部でストロ
ーブ信号2が出力されて、ラッチ回路74にラッチされ
ている書込アドレスがラッチ回路75に転送される。ま
た、ストローブ信号3は出力ワードクロックの立上りタ
イミングで出力されて、ラッチ回路75からラッチ回路
76への転送を行なう。これで、書込アドレスの情報が
出力側に同期したデータに変換される。
The operation of the asynchronous address latch circuit 72 is shown in FIG. The strobe signal 1 for latching the latch circuit 74 is output at a timing synchronized with the input word clock. That is, the mask a for a predetermined period is started at the rising timing of the input word clock, the strobe signal 1 is output at the central portion thereof, and the write address information is latched in the latch circuit 74. The strobe signal 2 for transferring from the latch circuit 74 to the latch circuit 75 is output at the timing synchronized with the output word clock. That is, the mask b for a predetermined period is started at the rising timing of the output word clock, the strobe signal 2 is output at the central portion thereof, and the write address latched by the latch circuit 74 is transferred to the latch circuit 75. The strobe signal 3 is output at the rising timing of the output word clock and is transferred from the latch circuit 75 to the latch circuit 76. With this, the information of the write address is converted into the data synchronized with the output side.

【0049】なお、マスクa,bは、ラッチ回路74,
75のラッチタイミングが重なるのを防止するものであ
る。すなわち、マスクaの期間中にマスクbが開始され
る時は、マスクbを開始せずに、それよりも所定期間t
1遅れたタイミングで代替マスクb′を開始し、その中
央部でストローブ信号2を出す。マスクaは常に入力ワ
ードクロック立上りで開始される固定のマスクである。
一旦代替マスクb′が出されると次もマスクaとマスク
b′のタイミングが比較され、マスクaの期間中にマス
クb′が開始される時は、マスクbを開始せずに、次の
マスクbを開始させる。このようにして、ラッチタイミ
ングが重ならないようにしてラッチ回路74からラッチ
回路75に転送するとともに、ラッチ回路76から出力
ワードクロックに正しく同期した書込アドレスの情報が
得られる。
The masks a and b are the latch circuits 74,
This is to prevent the latch timings of 75 from overlapping. That is, when the mask b is started during the period of the mask a, the mask b is not started, and the predetermined period t is longer than that.
The alternative mask b'is started at a timing delayed by one, and the strobe signal 2 is output at the center thereof. The mask a is a fixed mask which always starts at the rising edge of the input word clock.
Once the alternative mask b'is issued, the timings of the mask a and the mask b'are compared again, and when the mask b'is started during the period of the mask a, the mask b is not started and the next mask is started. Start b. In this way, the latch timing is transferred from the latch circuit 74 to the latch circuit 75 so that the latch timings do not overlap with each other, and the write address information correctly synchronized with the output word clock is obtained from the latch circuit 76.

【0050】このようにして、非同期アドレスラッチ回
路72で出力側に同期した書込アドレスの情報が得られ
たら、これをリファレンスアドレス(仮想的な書込アド
レス)としてガードが作成される。すなわち、図8に示
すように、リファレンスアドレス(実際の書込アドレス
よりも少し遅れている)から8アドレス後方のアドレス
をガードAとし、さらにそこから48アドレス後方(リ
ファレンスアドレスからは56アドレス後方)のアドレ
スをガードBとして設定する。そして、読出アドレスが
進んで書込アドレスに近づいてガードAを越えたら、読
出アドレスを強制的に4アドレス遅らせてガードAから
退出させる。また、読出アドレスが遅れて逆方向から書
込アドレスに近づいてガードBを越えたら、読出アドレ
スを強制的に例えば4アドレス進ませてガードBから退
出させる。この大きな補正値−4,+4により読出アド
レスがガードA,Bから退出したら、引き続き数出力ワ
ードクロックに例えば−1,+1アドレスの割合で小さ
な補正をしていき、ガードA,Bの中間のアドレス“1
27”に戻す。この補正動作は読出アドレスがガードA
またはBを越えるごとに行なわれる。このような補正動
作により読出アドレスがガードA,Bの間に収められ
て、書込アドレスを追い越したり追い越されたりするの
が防止され、大きなノイズの発生が防止される。
In this way, when the asynchronous address latch circuit 72 obtains the information of the write address synchronized with the output side, the guard is created by using this as the reference address (virtual write address). That is, as shown in FIG. 8, an address 8 addresses backward from the reference address (slightly behind the actual write address) is set as the guard A, and further 48 addresses backward (56 addresses backward from the reference address). Is set as the guard B. Then, when the read address advances and approaches the write address and crosses the guard A, the read address is forcibly delayed by 4 addresses and exited from the guard A. When the read address is delayed and approaches the write address from the opposite direction and crosses the guard B, the read address is forcibly advanced by, for example, 4 addresses and is exited from the guard B. When the read address leaves the guards A and B due to the large correction values -4 and +4, a small correction is continuously performed at a rate of, for example, -1, +1 address for several output word clocks, and an intermediate address between the guards A and B is obtained. "1
27 ". In this correction operation, the read address is the guard A.
Or it is performed every time B is exceeded. By such a correction operation, the read address is stored between the guards A and B, and it is prevented that the write address is overtaken or overtaken, and large noise is prevented.

【0051】なお、補正をすることによって出力信号は
多少歪むが、読出アドレスが書込アドレスを追い越した
り追い越されたりした場合(128サンプル分飛ぶ)の
に比べれば、最大で4サンプル飛ぶだけですむので歪は
ごくわずかですむ。また、4アドレスの補正を1回行な
ってとりあえず読出アドレスが書込アドレスを追い越し
たり追い越されたりするのを回避した後はわずかずつ
(数出力サンプルに1アドレス)の割合で中央のアドレ
ス“127”に向けて補正するので、出力波形の歪はほ
とんど生じないですむ。このようにして、波形の連続性
をあまり損なうことなく読出アドレスの補正を行なって
いる。
Although the output signal is distorted to some extent by the correction, it takes only 4 samples at maximum as compared with the case where the read address overtakes or is overtaken by the write address (jumps by 128 samples). Therefore, the distortion is negligible. Also, after correcting the four addresses once to avoid the read address from overtaking or overtaking the write address for the time being, the central address "127" is gradually increased (one address for several output samples). Since it is corrected toward, the distortion of the output waveform hardly occurs. In this way, the read address is corrected without significantly impairing the continuity of the waveform.

【0052】以上の読出アドレスの補正は読出制御手段
32において行なわれる。この読出アドレスの補正を行
なうため、読出制御手段32は、ガードA,B作成用レ
ジスタ78、ガードA,Bの値8,56を記憶するメモ
リ80、大きな補正値+4,−4アドレスと小さい補正
値+1,−1アドレスを記憶するメモリ82を具えいて
る。読出制御手段32による読出アドレスの補正は、コ
ントロール回路31からの指令により次の手順で行なわ
れる。なお、この補正処理はレジスタ66に新たなベー
スアドレスが保持されるごとに(すなわち出力サンプル
を生成するごとに)このベースアドレスをラッチ回路7
0に転送するまでの期間内に行なわれる。
The above read address correction is performed in the read control means 32. In order to correct this read address, the read control means 32 uses the guard A, B creation register 78, the memory 80 for storing the values 8, 56 of the guards A, B, the large correction value +4, and the small correction of -4 addresses. It comprises a memory 82 for storing the values +1, -1 addresses. The correction of the read address by the read control means 32 is performed by the following procedure in response to a command from the control circuit 31. In this correction process, every time a new base address is held in the register 66 (that is, every time an output sample is generated), this base address is latched by the latch circuit 7.
It is performed within the period until it is transferred to 0.

【0053】i) ガードAの演算 ガードAの作成用数値として“8”をメモリ80から読
出し、セレクタ68を介してフルアダー64の一方入力
端に入力する。また、書込アドレスを出力側の同期に変
換したリファレンスアドレスをセレクタ62を介してフ
ルアダー64の他方入力端に入力する。フルアダー64
はリファレンスアドレスから“8”を減算してガードA
のアドレスとしてその値をレジスタ78に保持する。
I) Calculation of Guard A "8" is read from the memory 80 as a numerical value for creating the guard A, and is input to one input end of the full adder 64 via the selector 68. Further, the reference address obtained by converting the write address into the synchronization on the output side is input to the other input end of the full adder 64 via the selector 62. Full adder 64
Subtracts "8" from the reference address and guard A
The value is stored in the register 78 as the address of the.

【0054】ii) ガードAとRAM読出アドレスとの
比較 レジスタ78に保持されているガードAのアドレスはセ
レクタ68を介してフルアダー64の一方入力端に入力
される。また、レジスタ66に保持されているベースア
ドレス(上位7ビットのRAM読出アドレス部分だけで
なく25ビット全て)はセレクタ62を介してフルアダ
ー64の他方入力端に入力される。そして、フルアダー
64は(ガードAのアドレス)−(ベースアドレス)の
演算を対応するビットについて行なう。ビット比較器8
4はこの演算結果の正負を判別し、負の時はベースアド
レスがガードAを越えて書込アドレスに近づいたものと
判断して、ベースアドレスの補正処理を行なう。すなわ
ち、メモリ82から補正値−4を読み出し、セレクタ6
8を介してフルアダー64の一方入力端に入力する。ま
た、レジスタ66のデータ(ベースアドレス値)がセレ
クタ62を介してフルアダー64の他方入力端に入力さ
れる。そして、フルアダー64はレジスタ66のデータ
に補正値−4を加算して補正し、その補正結果をレジス
タ66に保持する。このようにしてRAM読出アドレス
(実際にはベースアドレス全体として)の補正が行なわ
れ、補正結果がレジスタ66からラッチ回路70に転送
される。演算結果が正の時は補正を行なわずにそのまま
ラッチ回路70に転送する。
Ii) Comparison of guard A and RAM read address The address of guard A held in register 78 is input to one input terminal of full adder 64 via selector 68. Further, the base address (all not only the upper 7 bits of the RAM read address portion but also the 25 bits) held in the register 66 is input to the other input end of the full adder 64 via the selector 62. Then, the full adder 64 performs an operation of (address of guard A)-(base address) on the corresponding bit. Bit comparator 8
Reference numeral 4 determines whether the result of this operation is positive or negative. When the result is negative, it is determined that the base address has crossed the guard A and is close to the write address, and the base address is corrected. That is, the correction value -4 is read from the memory 82, and the selector 6
It is input to one input terminal of the full adder 64 via 8. Further, the data (base address value) of the register 66 is input to the other input end of the full adder 64 via the selector 62. Then, the full adder 64 adds the correction value -4 to the data in the register 66 for correction, and holds the correction result in the register 66. In this way, the RAM read address (actually, the entire base address) is corrected, and the correction result is transferred from the register 66 to the latch circuit 70. When the calculation result is positive, it is transferred to the latch circuit 70 as it is without correction.

【0055】−4の大きな補正を行なった後は、出力サ
ンプルを数サンプル生成するごとにメモリ82から小さ
な補正値−1を読み出して同様にベースアドレスの補正
を行ない、ガードA,Bの中間のアドレス“127”ま
で徐々に近づけてアドレス“127”に到達するかまた
は行き過ぎたら補正処理を終了する。なお、この小さな
補正を行なっている途中でベースアドレスが再びガード
を越えたら再び大きな補正値による補正から補正を再開
する。
After a large correction of -4, a small correction value -1 is read from the memory 82 every time several output samples are generated, and the base address is corrected in the same manner. When the address “127” is gradually approached and the address “127” is reached or when the address “127” is exceeded, the correction process is ended. If the base address exceeds the guard again during the small correction, the correction is restarted from the correction with the large correction value.

【0056】iii) ガードBの演算 ガードBの作成用数値として“56”をメモリ80から
読出し、セレクタ68を介してフルアダー64の一方入
力端に入力する。また、書込アドレスを出力側の同期に
変換したリファレンスアドレスをセレクタ62を介して
フルアダー64の他方入力端に入力する。フルアダー6
4はリファレンスアドレスから“56”を減算してガー
ドBのアドレスとしてその値をレジスタ78に保持す
る。
Iii) Operation of Guard B "56" is read from the memory 80 as a numerical value for creating the guard B, and is input to one input end of the full adder 64 via the selector 68. Further, the reference address obtained by converting the write address into the synchronization on the output side is input to the other input end of the full adder 64 via the selector 62. Full adder 6
4 subtracts "56" from the reference address and holds the value in the register 78 as the address of the guard B.

【0057】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に転送する。
Iv) Comparison of Guard B and RAM Read Address The address of the guard B held in the register 78 is input to one input end of the full adder 64 via the selector 68. Further, the base address (all not only the upper 7 bits of the RAM read address portion but also the 25 bits) held in the register 66 is input to the other input end of the full adder 64 via the selector 62. Then, the full adder 64 performs an operation of (base address)-(address of guard B) on the corresponding bit. Bit comparator 8
Reference numeral 4 determines whether the result of this operation is positive or negative. When the result is negative, it is determined that the base address has crossed the guard B and has approached the write address, and the base address is corrected. That is, the correction value +4 is read from the memory 82, and the selector 6
It is input to one input terminal of the full adder 64 via 8. Further, the data (base address value) of the register 66 is input to the other input end of the full adder 64 via the selector 62. Then, the full adder 64 adds the correction value +4 to the data in the register 66 for correction, and holds the correction result in the register 66. In this way, the RAM read address (actually, the entire base address) is corrected, and the correction result is transferred from the register 66 to the latch circuit 70. When the calculation result is positive, it is transferred to the latch circuit 70 as it is without correction.

【0058】+4の大きな補正を行なった後は、出力サ
ンプルを数サンプル生成するごとにメモリ82から小さ
な補正値+1を読み出して同様にベースアドレスの補正
を行ない、ガードA,Bの中間のアドレス“127”ま
で徐々に近づけてアドレス“127”に到達するかまた
は行き過ぎたら補正処理を終了する。なお、この小さな
補正を行なっている途中でベースアドレスが再びガード
を越えたら再び大きな補正値による補正から補正を再開
する。
After making a large correction of +4, a small correction value +1 is read from the memory 82 every time several output samples are generated, and the base address is corrected in the same manner. When the address “127” is gradually approached to reach the address “127”, or when the address “127” is exceeded, the correction process is ended. If the base address exceeds the guard again during the small correction, the correction is restarted from the correction with the large correction value.

【0059】(6) 補間演算部34 補間演算部34ではラグランジェ7次多項式補間および
直線補間を行なう。ラグランジェ7次補間は、例えば図
10(a)に示すような補間係数を用いて、非同期RA
Mバッファ22から読み出される同(b)に示すような
8倍オーバサンプリングデータA4,A4−1,A4−
2,……,A4−7と畳み込み演算して、各データ間を
それぞれ128分割する補間データを生成するものであ
る。ただし、ここでは次に行なう直線補間のために必要
な出力サンプルa3を挾んでその前後の2点(この例で
は点A4−4−45とA4−4−46)の補間データを
求める演算のみ行なう。
(6) Interpolation Calculation Unit 34 The interpolation calculation unit 34 performs Lagrange 7th order polynomial interpolation and linear interpolation. The Lagrange 7th-order interpolation uses asynchronous RA by using an interpolation coefficient as shown in FIG.
8 times oversampling data A4, A4-1, A4- which are read from the M buffer 22 as shown in FIG.
2, ..., A4-7 are convolved with each other to generate interpolation data that divides each data into 128. However, here, only the calculation is performed to interpolate the output sample a3 required for the next linear interpolation and to obtain the interpolated data of two points before and after that (in this example, points A4-4-45 and A4-4-46). ..

【0060】図10(a)のラグランジェ7次補間係数
は、その中央位置から左右対象に8倍オーバサンプリン
グデータの間隔ごとにゼロクロスする係数で、ここでは
これら各間隔(全8区間)ごとに128個ずつの係数
(合計で128×8区間=1024個の係数)で構成さ
れている。
The Lagrange 7th-order interpolation coefficient in FIG. 10A is a coefficient that zero-crosses from the center position to the left and right symmetrically at intervals of 8 times oversampling data, and here, at each of these intervals (total 8 sections). It is composed of 128 coefficients each (total of 128 × 8 sections = 1024 coefficients).

【0061】ラグランジェ補間値の演算は、まず点A4
−4−45について行ない、これに引き続き点A4−4
−46について行なう。すなわち、まず点A4−4−4
5を図10(a)の係数の中央位置に一致させて、各係
数と各サンプルとの畳み込みを行なう。この場合、8倍
オーバサンプリングデータA4,A4−1,A4−2,
……,A4−7の間を埋める各127個のサンプル値は
全て0として扱えばよいので、これらは計算しなくてよ
く、結局8倍オーバサンプリングされた8個のサンプル
A4,A4−1,A4−2,……,A4−7とそれぞれ
対応する係数とを合計8回乗算して加算すれば点A4−
4−45のラグランジェ7次補間値が求まる。
The calculation of the Lagrange interpolation value is first performed at point A4.
-4-45, followed by point A4-4
Do about -46. That is, first, point A4-4-4
5 is made to coincide with the center position of the coefficient in FIG. 10A, and each coefficient is convolved with each sample. In this case, 8 times oversampling data A4, A4-1, A4-2,
.., all 127 sample values that fill the space between A4 and 7 need to be treated as 0, so these do not have to be calculated, and in the end, eight samples A4, A4-1, which are 8 times oversampled A4-2, ..., A4-7 and the respective corresponding coefficients are multiplied by a total of eight times and added to obtain a point A4-.
The Lagrange 7th-order interpolation value of 4-45 is obtained.

【0062】点A4−4−45の補間値が求まったら、
サンプルを1つずらして点A4−4−46をラグランジ
ェ7次補間係数の中央位置と一致させて、8個のサンプ
ルA4,A4−1,A4−2,……,A4−7とそれぞ
れ対応する係数とを合計8回乗算して加算することによ
り、A4−4−46のラグランジェ7次補間値が求ま
る。
When the interpolated value of the point A4-4-45 is obtained,
The sample A is shifted by 1 so that the point A4-4-46 coincides with the central position of the Lagrange 7th-order interpolation coefficient and corresponds to eight samples A4, A4-1, A4-2, ..., A4-7, respectively. The Lagrange 7th-order interpolated value of A4-4-46 is obtained by multiplying by 8 times and the coefficient.

【0063】目的とする出力サンプルを挾む2点A4−
4−45,A4−4−46のラグランジェ7次補間値が
求まったら、この間を図11に示すように、直線で結
び、目的とする出力サンプルa3のサンプル値Xを直線
補間により求める。すなわち、点A4−4−45のサン
プル値をx1、点A4−4−46のサンプル値をx2と
すると、出力サンプルa3のサンプル値Xは、 X=(x2−x1)Coef +x1 但し、Coef :直線補間係数 で求まる。ここで、直線補間係数とは出力サンプル点a
3の位置が上記2点間を211分割したうちの何番目であ
るかを示す値である。
Two points A4 sandwiching the target output sample
When the Lagrange 7th-order interpolated values of 4-45 and A4-4-46 are obtained, these are connected by a straight line as shown in FIG. 11, and the sample value X of the target output sample a3 is obtained by the linear interpolation. That is, assuming that the sample value of the point A4-4-45 is x1 and the sample value of the point A4-4-46 is x2, the sample value X of the output sample a3 is X = (x2-x1) C oef + x1 where C oef : Calculated by linear interpolation coefficient. Here, the linear interpolation coefficient is the output sample point a
The position of 3 is a value indicating the position of the 2 11 division between the two points.

【0064】図3の補間演算部34によるラグランジェ
7次補間および直線補間動作について説明する。ラッチ
回路88には畳み込み演算される8個のサンプルA4,
A4−1,A4−2,……,A4−7が非同期RAMバ
ッファ22から読み出されて、ラッチされる。係数RO
M86には、図10(a)に示すようなラグランジェ7
次補間係数が記憶されている。補間は次の手順で行なわ
れる。
The Lagrange 7th-order interpolation and the linear interpolation operation by the interpolation calculation unit 34 of FIG. 3 will be described. The latch circuit 88 has eight samples A4 to be convolved.
A4-1, A4-2, ..., A4-7 are read from the asynchronous RAM buffer 22 and latched. Coefficient RO
The M86 has a Lagrange 7 as shown in FIG.
The next interpolation coefficient is stored. Interpolation is performed by the following procedure.

【0065】i) 目的とする出力サンプルの直前のラグ
ランジェ7次補間値の演算 ラッチ回路88には、畳み込み演算される8個のサンプ
ルA4,A4−1,A4−2,……,A4−7が非同期
RAMバッファ22から順次読み出されてラッチされ
る。また、ラッチ回路90には、まず点A4−4−45
のラグランジェ7次補間値を求めるために必要な8個の
係数値がベースアドレスの中位7ビットで表わされる係
数ROM読出アドレスにより係数ROM86から順次読
み出されてラッチされる。なお、係数ROM読出アドレ
スは、入力サンプルA4,A4−1,A4−2,……,
A4−7と乗算される係数がラグランジェ7次補間係数
の複数のゼロクロス点間をそれぞれ128分割したうち
の何番目の係数であるかを示すものであり(各ゼロクロ
ス点間とも同じ位置となる(図10(a)参照))、1
つの係数ROM読出アドレスにより対応する8個の係数
値が時系列的(1回の乗加算毎に)に読み出されて、ラ
ッチ回路90にラッチされる。
I) Calculation of Lagrange 7th-order interpolated value immediately before the target output sample The latch circuit 88 has eight samples A4, A4-1, A4-2, ..., A4-convoluted. 7 is sequentially read from the asynchronous RAM buffer 22 and latched. In addition, the latch circuit 90 first has a point A4-4-45.
The eight coefficient values required to obtain the Lagrange 7th-order interpolated value are sequentially read from the coefficient ROM 86 and latched by the coefficient ROM read address represented by the middle 7 bits of the base address. The coefficient ROM read address is the input sample A4, A4-1, A4-2, ...
The coefficient multiplied by A4-7 indicates what number of coefficients the Lagrangian 7th-order interpolation coefficient is divided into 128 between the zero-cross points (the same position is set between the zero-cross points). (See FIG. 10A)), 1
Eight coefficient values corresponding to one coefficient ROM read address are read out in time series (every time of multiplication and addition) and latched by the latch circuit 90.

【0066】すなわち、まず、ラッチ回路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−4−45
(図10(b))のラグランジェ7次補間値が求められ
てレジスタ106に保持される。
That is, first, the sample A4 is read by the latch circuit 88, one coefficient by which the sample A4 is multiplied is read, and the selectors 92, 9 are respectively read.
They are mutually multiplied by the multiplier 96 via 4. The multiplication value is held in the register 104 via one input end of the register 98, the selector 100 and the adder 102. Subsequently, the latch circuit 88 reads the next sample A4-1, the latch circuit 90 reads one coefficient to be multiplied, and the multiplier 96 similarly multiplies the coefficient. This multiplication value is input to one input end of the adder 102 via the selector 100, and the previous multiplication value held in the register 104 is input to the other input end of the adder 102 via the selector 108 to perform addition. Both are added in the container 102,
The added value is held in the register 104. This multiplication and addition operation is performed for each sample A4, A4-1, A4-2.
The point A4-4-45 immediately before the target output sample a3 by repeating A4-7 eight times in total.
The Lagrange 7th-order interpolation value of FIG. 10B is obtained and stored in the register 106.

【0067】ii) 目的とする出力サンプルの直後のラ
グランジェ7次補間値の演算 ラッチ回路88には、同様に畳み込み演算される8個の
サンプルA4,A4−1,A4−2,……,A4−7が
非同期RAMバッファ22から順次読み出されラッチさ
れる。また、ラッチ回路90には、点A4−4−46の
ラグランジェ7次補間値を求めるために必要な8個の係
数値がベースアドレスの中位7ビットで表わされる係数
ROM読出アドレスの次のアドレスにより係数ROM8
6から順次読み出されてラッチされる。
Ii) Operation of Lagrange 7th-order interpolated value immediately after the target output sample The latch circuit 88 has eight samples A4, A4-1, A4-2, ... A4-7 is sequentially read from the asynchronous RAM buffer 22 and latched. Further, in the latch circuit 90, the eight coefficient values necessary for obtaining the Lagrange's seventh-order interpolated value at the point A4-4-46 are next to the coefficient ROM read address represented by the middle 7 bits of the base address. Coefficient ROM 8 by address
The data is sequentially read from 6 and latched.

【0068】まず、ラッチ回路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−4−46(図10
(b))のラグランジェ7次補間値が求められてレジス
タ104に保持される。
First, one sample A is provided in the latch circuit 88.
4 is read and is multiplied by the latch circuit 90 by 1
Two coefficients are read out and multiplied by each other in the multiplier 96 via the selectors 92 and 94, respectively. The multiplication value is held in the register 104 via one input end of the register 98, the selector 100 and the adder 102. Subsequently, the latch circuit 88 reads the next sample A4-1, the latch circuit 90 reads one coefficient to be multiplied, and the multiplier 96 similarly multiplies the coefficient. This multiplication value is input to one input end of the adder 102 via the selector 100, and the previous multiplication value held in the register 104 is input to the other input end of the adder 102 via the selector 108 to perform addition. Both are added in the container 102, and the added value is held in the register 104. This multiplication and addition operation is performed for each sample A4, A4-1, A4-2 ,.
The point A4-4-46 immediately after the target output sample a3 by repeating A4-7 eight times in total (see FIG. 10).
The Lagrangian 7th-order interpolation value of (b)) is obtained and held in the register 104.

【0069】なお、係数ROM86から出力サンプルの
直前および直後のラグランジェ7次補間値を求めるため
に必要な各8個ずつの係数値を読み出す方法としては例
えば次の方法が考えられる。すなわち、係数ROM86
には、全1024個の係数をそのままの順番でアドレス
に記憶するのではなく、8つの区間を128分割した順
番で記憶する。つまり、1024個の係数をまず分割位
置が同じものどうし128グループに分けて分割位置の
順に並べ、さらに各グループ内で各グループを構成する
8個の係数を区間順に並べた配列で係数ROM86の各
アドレスに記憶する。
The following method is conceivable as a method of reading from the coefficient ROM 86 each eight coefficient values required to obtain the Lagrange's seventh-order interpolated values immediately before and after the output sample. That is, the coefficient ROM 86
Does not store all the 1024 coefficients at the address in the same order, but stores them in the order of dividing the eight sections into 128. That is, 1024 coefficients are first divided into 128 groups having the same division position and arranged in the order of division positions, and further, eight coefficients constituting each group in each group are arranged in the order of sections in the coefficient ROM 86. Store at address.

【0070】そして、所定の高速クロックで動作してい
る4ビットカウンタ(係数読み出しカウンタという)を
用いて、そのカウント値をベースアドレスの中位7ビッ
トデータの最下位ビットに加算することにより、この加
算値を係数ROM86の読出アドレスとして用いる。
Then, by using a 4-bit counter (referred to as a coefficient read counter) operating at a predetermined high-speed clock, the count value is added to the least significant bit of the middle 7-bit data of the base address, The added value is used as the read address of the coefficient ROM 86.

【0071】例えば、ベースアドスレの中位7ビットデ
ータが0000001であるとすると、 を目的とする出力サンプルの直前のラグランジェ7次補
間値を求めるための8個の係数の読み出しアドレスとし
て用いる。さらに、 を目的とする出力サンプルの直前のラグランジェ7次補
間値を求めるための8個の係数の読み出しアドレスとし
て用いる。
For example, if the medium 7-bit data of the base address is 00000001, Is used as a read address of eight coefficients for obtaining the Lagrange 7th-order interpolation value immediately before the target output sample. further, Is used as a read address of eight coefficients for obtaining the Lagrange 7th-order interpolation value immediately before the target output sample.

【0072】なお、図10(a)の補間係数はその中央
位置を基準として左右対象なので、左右半分のみを係数
ROM86に記憶するようにして、係数ROM86を小
型化することができる。
Since the interpolation coefficient in FIG. 10A is symmetrical with respect to the central position, the coefficient ROM 86 can be miniaturized by storing only the left and right halves in the coefficient ROM 86.

【0073】iii) 直線補間 レジスタ106,104にそれぞ目的とする出力サンプ
ルa3の直前および直後の2点A4−4−45,A4−
4−46のラグランジェ7次補間データx1,x2が保
持されたら、これに基づいて直線補間を行なって目的と
する出力サンプルa3のサンプル値が求められる。この
演算は次のようにして行なわれる。
Iii) Two points A4-4-45 and A4- immediately before and after the target output sample a3 in the linear interpolation registers 106 and 104, respectively.
When the Lagrange 7th-order interpolation data x1 and x2 of 4-46 are held, linear interpolation is performed based on the data to obtain the sample value of the target output sample a3. This calculation is performed as follows.

【0074】まず、レジスタ106に保持されている補
間データがセレクタ100を介して加算器102の一方
入力端に入力される。また、レジスタ104に保持され
ている補間データがセレクタ108を介して加算器10
2の他方入力端に入力される。加算器102は両入力を
減算してx2−x1を求め、その演算結果をレジスタ1
04に保持する。
First, the interpolation data stored in the register 106 is input to one input terminal of the adder 102 via the selector 100. Further, the interpolation data held in the register 104 is added via the selector 108 to the adder 10
It is input to the other input terminal of 2. The adder 102 subtracts both inputs to obtain x2-x1 and outputs the calculation result to the register 1
Hold at 04.

【0075】続いて、レジスタ104に保持された減算
値x2−x1がセレクタ108,92を介して乗算器9
6に入力され、ベースアドレスの下位11ビットで表わ
される直線補間係数Coef がセレクタ94を介して乗算
器96に入力されて、両者の乗算が行なわれる。その乗
算結果(x2−x1)Coef はレジスタ98、セレクタ
100、加算器102を介してレジスタ104に保持さ
れる。
Subsequently, the subtracted value x2-x1 held in the register 104 is passed through the selectors 108 and 92 to the multiplier 9
6, the linear interpolation coefficient C oef represented by the lower 11 bits of the base address is input to the multiplier 96 via the selector 94, and the multiplication of both is performed. The multiplication result (x2-x1) C oef is held in the register 104 via the register 98, the selector 100, and the adder 102.

【0076】レジスタ104に保持された演算値(x2
−x1)Coef はセレクタ108を介して加算器102
の一方入力端に入力される。またレジスタ106に保持
されている値x1はセレクタ100を介して加算器10
2の他方入力端に入力される。加算器102は両入力を
加算して目的とする出力サンプル値Xを、 X=(x2−x1)Coef +x1 として求める。求められた出力サンプル値Xは、まるめ
回路110でまるめ処理がなされ、ノイズシェーパ11
2で量子化ノイズが高域に追いやられてデータ出力端子
40から出力される。以上の補間演算は出力サンプルの
周期内で各出力サンプル周期ごとに繰り返し行なわれ
る。
The calculated value (x2 held in the register 104
-X1 ) Coef is an adder 102 via the selector 108
It is input to one input terminal of. Further, the value x1 held in the register 106 is added via the selector 100 to the adder 10
It is input to the other input terminal of 2. The adder 102 adds both inputs and obtains a target output sample value X as X = (x2-x1) C oef + x1. The obtained output sample value X is rounded by the rounding circuit 110, and the noise shaper 11
At 2, the quantization noise is driven to the high frequency range and output from the data output terminal 40. The above interpolation calculation is repeated for each output sample period within the output sample period.

【0077】以上のようにして、図3のサンプリング周
波数変換器12ではサンプリング周波数fs1の入力デ
ータをこれと非同期なサンプリング周波数fs2の出力
データに変換する。そして、このような構成によれば、
例えば入力サンプルデータの語長を22ビット、ラグラ
ンジェ7次補間の係数語長を25ビット、サンプリング
周波数比Fsのデータ長を22ビットとすれば、シミュ
レーション上では、20ビット程度の変換誤差を実現で
き、歪率等も従来のものに比べて向上がみられた。
As described above, the sampling frequency converter 12 of FIG. 3 converts the input data of the sampling frequency fs1 into the output data of the sampling frequency fs2 which is asynchronous with the input data. And according to such a configuration,
For example, if the word length of the input sample data is 22 bits, the coefficient word length of the Lagrange 7th-order interpolation is 25 bits, and the data length of the sampling frequency ratio Fs is 22 bits, a conversion error of about 20 bits is realized on the simulation. It was possible, and the distortion rate was improved compared to the conventional one.

【0078】[0078]

【発明の効果】以上説明したように、請求項1記載の発
明によれば、入力サンプル列を適宜の倍数でオーバサン
プリングし、このオーバサンプリングで作られたサンプ
ル間を多項式補間で補間し、この多項式補間で作られた
サンプル間を直線補間で補間して出力サンプル列を作る
ようにしたので、オーバサンプリングのみで出力サンプ
ル列を作る場合に比べて回路規模を小さくすることがで
きる。また、オーバサンプリングで作られたサンプル間
を直接直線補間せずに、多項式補間で補間してから直線
補間するようにしたので、変換精度が良好になる。しか
も、オーバサンプリングで同じ倍数をかせぐ場合に比べ
て多項式補間および直線補間を用いれば回路規模を小さ
くすることができる。そして、これにより構成の簡易さ
と変換精度の良さが両立される。
As described above, according to the invention described in claim 1, the input sample sequence is oversampled by an appropriate multiple, and the samples created by this oversampling are interpolated by polynomial interpolation. Since the output sample string is created by interpolating the samples created by the polynomial interpolation by the linear interpolation, the circuit scale can be reduced as compared with the case where the output sample string is created only by oversampling. Further, since the samples created by oversampling are not directly linearly interpolated but are interpolated by polynomial interpolation and then linearly interpolated, the conversion accuracy is improved. Moreover, the circuit scale can be reduced by using polynomial interpolation and linear interpolation as compared with the case where the same multiple is obtained by oversampling. In addition, this simplifies the configuration and achieves good conversion accuracy.

【0079】また、請求項2記載によれば、入力サンプ
ル列に同期したクロックを出力サンプル列の多数リード
周期内でカウントしたカウント値のビットを3区間に区
切って、上位からそれぞれ多項式補間のためのRAMの
読出アドレスデータ、多項式補間係数を記憶しているR
OMの読出アドレスデータ、直線補間のための係数デー
タとして用いるようにしたので、補間値の生成を容易に
行なうことができる。
According to the second aspect of the present invention, the bit of the count value obtained by counting the clock synchronized with the input sample sequence within the multiple read cycle of the output sample sequence is divided into three sections, and the polynomial interpolation is performed from the top. R that stores the read address data of the RAM and the polynomial interpolation coefficient
Since it is used as the read address data of the OM and the coefficient data for the linear interpolation, the interpolation value can be easily generated.

【図面の簡単な説明】[Brief description of drawings]

【図1】 この発明の一実施例を示すブロック図であ
る。
FIG. 1 is a block diagram showing an embodiment of the present invention.

【図2】 図1のサンプリング周波数変換器12による
サンプリング周波数変換工程を示す図である。
FIG. 2 is a diagram showing a sampling frequency conversion process by a sampling frequency converter 12 of FIG.

【図3】図1のサンプリング周波数変換器12の具体構
成例を示すブロック図である。
3 is a block diagram showing a specific configuration example of a sampling frequency converter 12 of FIG.

【図4】 図3のサンプリング周波数比計測手段30に
よる22ビット精度での計測状態を示すタイムチャート
である。
FIG. 4 is a time chart showing a measurement state with 22-bit accuracy by the sampling frequency ratio measuring means 30 of FIG.

【図5】 図3のサンプリング周波数比計測手段30に
よる13ビット精度での計測状態を示す概念図である。
5 is a conceptual diagram showing a measurement state with 13-bit accuracy by the sampling frequency ratio measuring means 30 of FIG.

【図6】 図3の比較部52によるサンプリング周波数
比計測の精度切換動作を示す図である。
FIG. 6 is a diagram showing a precision switching operation of sampling frequency ratio measurement by a comparison unit 52 in FIG.

【図7】 図3の読出制御手段32で生成されるベース
アドレスの構成を示す図である。
7 is a diagram showing a configuration of a base address generated by the read control means 32 of FIG.

【図8】 図3の非同期RAMバッファ22の構成およ
び書込アドレスと読出アドレスの関係を説明する図であ
る。
8 is a diagram illustrating a configuration of the asynchronous RAM buffer 22 of FIG. 3 and a relationship between a write address and a read address.

【図9】 図3の非同期アドレスラッチ回路72の動作
説明図である。
9 is an operation explanatory diagram of the asynchronous address latch circuit 72 of FIG.

【図10】 図3の係数ROM86に記憶されているラ
グランジェ7次補間用係数の一例と、これを用いた畳み
込み演算の説明図である。
10 is an explanatory diagram of an example of a Lagrange 7th-order interpolation coefficient stored in the coefficient ROM 86 of FIG. 3 and a convolution operation using the coefficient.

【図11】 図3の補間係数部34における直線補間の
動作説明図である。
11 is an explanatory diagram of an operation of linear interpolation in the interpolation coefficient unit 34 of FIG.

【符号の説明】[Explanation of symbols]

12 サンプリング周波数変換器 18 8倍オーバサンプリング・フィルタ(オーバサン
プリング手段) 22 非同期RAMバッファ(RAM) 24 書込制御手段 30 サンプリング周波数比計測手段 32 読出制御手段 36 多項式補間手段 38 直線補間手段 42 22ビットカウンタ(カウンタ)
12 sampling frequency converter 18 8 times oversampling filter (oversampling means) 22 asynchronous RAM buffer (RAM) 24 writing control means 30 sampling frequency ratio measuring means 32 reading control means 36 polynomial interpolation means 38 linear interpolation means 42 22 bits Counter (counter)

───────────────────────────────────────────────────── フロントページの続き (72)発明者 新美 幸二 静岡県浜松市中沢町10番1号 ヤマハ株式 会社内 ─────────────────────────────────────────────────── ─── Continued Front Page (72) Inventor Koji Niimi 10-1 Nakazawa-machi, Hamamatsu-shi, Shizuoka Prefecture Yamaha Stock Company

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】入力サンプル列をオーバサンプリングする
オーバサンプリング手段と、 RAMと、 前記オーバサンプリング手段から出力されるオーバサン
プリングデータをこのオーバサンプリングデータに同期
したクロックで前記RAMに書込む書込制御手段と、 前記入力サンプル列のサンプリング周波数と出力サンプ
ル列のサンプリング周波数の周波数比を計測するサンプ
リング周波数比計測手段と、 この計測されたサンプリング周波数比を実現する出力サ
ンプルの前後の2点の補間データを多項式補間で求める
ためのオーバサンプリングデータを前記RAMから読み
出す読出制御手段と、 この読出制御手段により前記RAMから読み出されたオ
ーバサンプリングデータに基づき前記2点の補間データ
を多項式補間で求める多項式補間手段と、 この多項式補間で求められた2点の多項式補間データを
直線補間して、前記サンプリング周波数を実現する出力
サンプル値を求める直線補間手段とを具備してなるサン
プリング周波数変換器。
1. Oversampling means for oversampling an input sample sequence, RAM, and write control means for writing oversampling data output from the oversampling means to the RAM at a clock synchronized with the oversampling data. And sampling frequency ratio measuring means for measuring the frequency ratio of the sampling frequency of the input sample string and the sampling frequency of the output sample string, and two points of interpolated data before and after the output sample for realizing the measured sampling frequency ratio. Reading control means for reading out oversampling data for obtaining by polynomial interpolation from the RAM, and a polynomial interpolation procedure for obtaining the interpolation data of the two points by polynomial interpolation based on the oversampling data read from the RAM by the reading control means. When the polynomial interpolation data of two points obtained in this polynomial interpolation and linear interpolation, sampling frequency converter according to and a linear interpolation means for obtaining an output sample values for realizing the sampling frequency.
【請求項2】前記サンプリング周波数比計測手段が、前
記入力サンプル列に同期したクロックをカウントするカ
ウンタで構成され、前記出力サンプル列の多数ワード周
期内での当該カウンタのカウント値を前記サンプリング
周波数比として出力するものであり、 前記読出制御手段は、前記カウンタのカウント値を出力
サンプル周期ごとに積算した積算値のビットを3区間に
区切ったうちの上位のデータを前記RAMの読出アドレ
スデータとして用い、 前記多項式補間手段は、前記積算値のビットを3区間に
区切ったうちの中位のデータを前記多項式補間のための
補間係数を記憶しているROMのアドレスデータとして
用い、 前記直線補間手段は、前記積算値のビットを3区間に区
切ったうちの下位のデータを前記直線補間のための係数
データとして用いることを特徴とする請求項1記載のサ
ンプリング周波数変換器。
2. The sampling frequency ratio measuring means is composed of a counter that counts clocks synchronized with the input sample sequence, and the count value of the counter within the multiple word period of the output sample sequence is the sampling frequency ratio. The read control means uses, as read address data of the RAM, the upper data of the bits of the integrated value obtained by integrating the count value of the counter for each output sample period divided into three sections. The polynomial interpolating means uses middle-order data among the bits of the integrated value divided into three sections as address data of a ROM storing interpolation coefficients for the polynomial interpolation, and the linear interpolating means is , The lower-order data of the bit of the integrated value divided into three sections is the coefficient data for the linear interpolation. Sampling frequency converter according to claim 1, characterized by using as.
JP06119392A 1992-02-17 1992-02-17 Sampling frequency converter Expired - Fee Related JP3221034B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP06119392A JP3221034B2 (en) 1992-02-17 1992-02-17 Sampling frequency converter
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
JP06119392A JP3221034B2 (en) 1992-02-17 1992-02-17 Sampling frequency converter

Publications (2)

Publication Number Publication Date
JPH05235698A true JPH05235698A (en) 1993-09-10
JP3221034B2 JP3221034B2 (en) 2001-10-22

Family

ID=13164093

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06119392A Expired - Fee Related JP3221034B2 (en) 1992-02-17 1992-02-17 Sampling frequency converter

Country Status (1)

Country Link
JP (1) JP3221034B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0884687A1 (en) * 1997-06-10 1998-12-16 Matsushita Electric Industrial Co., Ltd. Interpolating device
US7190646B1 (en) 1999-11-18 2007-03-13 Pioneer Corporation Apparatus for and method of recording and reproducing information
JP2008301094A (en) * 2007-05-30 2008-12-11 Sony Corp Digital signal transmission device, method, and system
JP2011504340A (en) * 2007-11-16 2011-02-03 テラダイン・インコーポレーテッド Method and apparatus for calculating an interpolation factor in a sample rate conversion system
JP2012191418A (en) * 2011-03-10 2012-10-04 Ricoh Co Ltd Data reception circuit, data transmission/reception system and data reception method
JP2013182243A (en) * 2012-03-05 2013-09-12 Casio Comput Co Ltd Musical sound generation device and program
US9406187B2 (en) 2010-06-04 2016-08-02 Pepsico, Inc. Networked vendor for workplace or controlled environment

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0884687A1 (en) * 1997-06-10 1998-12-16 Matsushita Electric Industrial Co., Ltd. Interpolating device
US7190646B1 (en) 1999-11-18 2007-03-13 Pioneer Corporation Apparatus for and method of recording and reproducing information
US7616540B2 (en) 1999-11-18 2009-11-10 Pioneer Corporation Apparatus for and method of recording and reproducing information
JP2008301094A (en) * 2007-05-30 2008-12-11 Sony Corp Digital signal transmission device, method, and system
JP2011504340A (en) * 2007-11-16 2011-02-03 テラダイン・インコーポレーテッド Method and apparatus for calculating an interpolation factor in a sample rate conversion system
US9406187B2 (en) 2010-06-04 2016-08-02 Pepsico, Inc. Networked vendor for workplace or controlled environment
US10163293B2 (en) 2010-06-04 2018-12-25 Pepsico, Inc. Networked vendor for workplace or controlled environment
JP2012191418A (en) * 2011-03-10 2012-10-04 Ricoh Co Ltd Data reception circuit, data transmission/reception system and data reception method
JP2013182243A (en) * 2012-03-05 2013-09-12 Casio Comput Co Ltd Musical sound generation device and program

Also Published As

Publication number Publication date
JP3221034B2 (en) 2001-10-22

Similar Documents

Publication Publication Date Title
US5365468A (en) Sampling frequency converter
US4715257A (en) Waveform generating device for electronic musical instruments
US5227787A (en) Digital data converting system
US5925093A (en) Sampling frequency converting apparatus
JP2548210B2 (en) Time axis correction device
US4862170A (en) Digital-analog converter
JP3221034B2 (en) Sampling frequency converter
JP2625622B2 (en) Signal processor and method for converting analog signals
JPH0789669B2 (en) Sampling signal phase correction device
JP3221041B2 (en) Sampling frequency converter
US6781938B2 (en) Expected value generation unit and a data reproduction apparatus
US6996168B2 (en) Signal-processing circuit, and recording and playback apparatus employing the same
US6973468B2 (en) Data interpolating device and method, sampling function generating device, data interpolating program, and recorded medium
JPH10126645A (en) Frequency conversion device
JP3289462B2 (en) Sampling frequency converter
JP3252581B2 (en) Sampling frequency converter
JPH0732343B2 (en) Asynchronous sampling frequency conversion method
US6483451B1 (en) Sampling function waveform data generating device
JP2558356B2 (en) Digital to analog converter
JPH0549132B2 (en)
US5761218A (en) Method of and apparatus for interpolating digital signal, and apparatus for and methos of recording and/or playing back recording medium
JPS5846036B2 (en) electronic musical instruments
JPS6329346B2 (en)
JPS5898793A (en) Voice synthesizer
Medan et al. Asynchronous rate conversion

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 (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070817

Year of fee payment: 6

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

Year of fee payment: 7

Free format text: PAYMENT UNTIL: 20080817

FPAY Renewal fee payment (prs 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