JPH1155076A - Sampling frequency converting device - Google Patents

Sampling frequency converting device

Info

Publication number
JPH1155076A
JPH1155076A JP9204920A JP20492097A JPH1155076A JP H1155076 A JPH1155076 A JP H1155076A JP 9204920 A JP9204920 A JP 9204920A JP 20492097 A JP20492097 A JP 20492097A JP H1155076 A JPH1155076 A JP H1155076A
Authority
JP
Japan
Prior art keywords
coefficient
interpolation
oversampling
sampling frequency
interpolation ratio
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.)
Pending
Application number
JP9204920A
Other languages
Japanese (ja)
Inventor
Yusuke Yamamoto
裕介 山本
Yasuyuki Muraki
保之 村木
Ichiro Tahashi
一郎 太箸
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 JP9204920A priority Critical patent/JPH1155076A/en
Priority to US09/124,752 priority patent/US6263036B1/en
Publication of JPH1155076A publication Critical patent/JPH1155076A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To accelerate operation without expanding the scale of a hardware. SOLUTION: A FIFO 20 stores inputted data Din according to a write address supplied from a read/write counter 21 and outputs the stored data according to a read address. An O/S (over sampling) coefficient designation/interpolation ratio generation part 23 calculates COE A and COE B (actually only the COE A as the set of coefficients for finding two over sampling points A and B required for finding the value of an interpolating point) for over sampling and linear interpolation, and also calculates an interpolation ratio while considering over sampling. According to the said coefficient set COE A and the interpolation ratio considering the over sampling, an 8-times over sampling/linear interpolating part 24 converts the sampling frequency of input data Din through linear interpolation and convolving operation without two producers, i.e., over sampling and linear interpolation.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、所定のサンプリ
ング周波数で取り込んだ入力データを、異なるサンプリ
ング周波数に変換して出力するサンプリング周波数変換
装置に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a sampling frequency converter for converting input data captured at a predetermined sampling frequency to a different sampling frequency and outputting the converted data.

【0002】[0002]

【従来の技術】従来より、所定サンプリング周波数で取
り込んだ入力データを、異なるサンプリング周波数に変
換して出力するサンプリング周波数変換装置が知られて
いる。代表的なサンプリング周波数変換手法としては、
(1)FIFOに対して所定のサンプリング周波数で入力
データを書き込むとともに書き込み時とは異なる所望の
サンプリング周波数で読み出す手法、(2)変換前のサン
プリングポイントと変換後のサンプリングポイントとの
時間的関係に基づき変換後のサンプリングポイントにお
ける新たなデータを入力データから直線補間演算により
求める手法(実開平6−54323号に記載)、等があ
る。
2. Description of the Related Art Conventionally, there has been known a sampling frequency converter for converting input data fetched at a predetermined sampling frequency into a different sampling frequency and outputting the converted data. Typical sampling frequency conversion methods include:
(1) A method of writing input data to a FIFO at a predetermined sampling frequency and reading the input data at a desired sampling frequency different from that at the time of writing, (2) The temporal relationship between a sampling point before conversion and a sampling point after conversion. A method of obtaining new data at a sampling point after conversion based on input data by linear interpolation calculation (described in Japanese Utility Model Laid-Open No. 6-54323), and the like.

【0003】上記(1)の手法は、変換前のサンプリング
周波数と変換後のサンプリング周波数との違いをFIF
Oにより吸収する手法であるため、同一データを繰り返
して読み出したり、データを飛ばし読みしたりすること
になり、波形が歪むという問題がある。また、上記(2)
の手法は、単純な直線補間演算を行っているだけなの
で、補間精度が粗すぎるという問題がある。
[0003] The method (1) described above uses a FIF to determine the difference between the sampling frequency before conversion and the sampling frequency after conversion.
Since it is a method of absorbing by O, the same data is repeatedly read or data is skipped and read, and there is a problem that a waveform is distorted. In addition, the above (2)
However, the method of (1) merely performs a simple linear interpolation operation, and thus has a problem that the interpolation accuracy is too coarse.

【0004】上記(2)の手法の補間精度を高める発展形
っとして図14に示すようなオーバサンプリングと直線
補間とを組み合わせる手法も考えられる。このオーバサ
ンプリング+直線補間を用いた手法は、図16に示すよ
うに、新サンプリングポイントXのデータを直線補間で
算出するに当たって、丸印で示した旧サンプリングポイ
ントのデータを使うのではなく、新サンプリングポイン
トXを挟んで近接するオーバサンプリングポイントのデ
ータA、Bを使うものである。それにより、高精度の補
間が実現される。
[0004] As a development of improving the interpolation accuracy of the above method (2), a method of combining oversampling and linear interpolation as shown in FIG. 14 can be considered. In the method using this oversampling + linear interpolation, the data of the new sampling point X is calculated by the linear interpolation as shown in FIG. The data A and B of the oversampling points adjacent to each other across the sampling point X are used. Thereby, highly accurate interpolation is realized.

【0005】このオーバサンプリング+直線補間の手法
を模式的に表すと図15のようになる。上段部分は4つ
のサンプリングデータに基づき8倍のオーバサンプリン
グ演算を行う構成を示し、下段部分は上段部分で算出さ
れた2つのオーバサンプリング値に基づいて直線補間演
算を行う構成を示している。上段部分において、D1、
D2、D3、D4はそれぞれ1サンプル遅延部であり、
サンプリングクロック(この例では44.1kHz)に
従い入力データを後段に転送する。係数Cij(i=1
〜4、j=0〜7)の添字iは、遅延部Diのデータに
付与(乗算)される係数であることを表し、添字jは、
j番目のオーバサンプリングポイントの値を算出するた
めの係数であることを表している。すなわち、jの値が
同一の4つの係数によりj番目のオーバサンプリングポ
イントのデータが算出される。また、jが同一の4つの
係数を1組として計8組の係数で8つのオーバサンプリ
ングポイントのデータが算出される。算出された2つの
オーバサンプリングポイントのデータに基づき、下段の
直線補間部分で2つのオーバサンプリングポイント間の
任意の位置のデータが直線補間演算により算出される。
このように、2つのオーバサンプリング値の算出および
直線補間演算を新たなサンプリング周波数(この例では
48kHz)に対応した周期で行うことにより、高精度
なサンプリング周波数変換が可能となる。
FIG. 15 schematically shows the technique of oversampling and linear interpolation. The upper part shows a configuration for performing an eight-times oversampling operation based on four sampling data, and the lower part shows a configuration for performing a linear interpolation operation based on two oversampling values calculated in the upper part. In the upper part, D1,
D2, D3, and D4 are one-sample delay units, respectively.
The input data is transferred to the subsequent stage according to a sampling clock (44.1 kHz in this example). Coefficient Cij (i = 1
44, j = 077) represents a coefficient added (multiplied) to the data of the delay part Di, and the suffix j is
This represents a coefficient for calculating the value of the j-th oversampling point. That is, the data of the j-th oversampling point is calculated by the four coefficients having the same value of j. In addition, data of eight oversampling points is calculated by using a total of eight sets of coefficients with four coefficients having the same j as one set. Based on the calculated data of the two oversampling points, data at an arbitrary position between the two oversampling points is calculated by a linear interpolation operation in the lower linear interpolation part.
As described above, by performing the calculation of the two oversampling values and the linear interpolation operation at a cycle corresponding to a new sampling frequency (48 kHz in this example), highly accurate sampling frequency conversion can be performed.

【0006】[0006]

【発明が解決しようとする課題】ところで、上述した従
来のサンプリング周波数変換装置では、オーバサンプリ
ングに高精度な演算が必要であり、また、2点間の補間
値Xを算出するために、オーバサンプリング値A,Bを
算出するというように、2回の演算が必要となる。さら
に、直線補間にも演算のためのハードウェアが要求され
る。このように、従来のサンプリング周波数変換装置で
は、演算に時間がかかるとともに、ハードウェアが大規
模となり、コストアップにつながるという問題がある。
In the above-mentioned conventional sampling frequency converter, a high-precision operation is required for oversampling, and the oversampling is performed to calculate an interpolation value X between two points. Two calculations are required to calculate the values A and B. Further, linear interpolation requires hardware for calculation. As described above, in the conventional sampling frequency conversion device, there is a problem that it takes a long time to perform the calculation, the hardware becomes large-scale, and the cost increases.

【0007】この発明は上述した事情に鑑みてなされた
もので、ハードウェアを大規模とすることなく、演算を
高速化できるサンプリング周波数変換装置を提供するこ
とを目的としている。
SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and has as its object to provide a sampling frequency conversion device capable of speeding up the operation without increasing the scale of hardware.

【0008】[0008]

【課題を解決するための手段】上述した問題点を解決す
るために、請求項1記載の発明では、第1のクロックで
入力される入力データ間における補間点を求めるための
第1の補間比を生成する第1の補間比生成手段と、前記
第1の補間比に基づいて、オーバサンプリング点を求め
るための1対の係数組を生成する係数生成手段と、前記
第1の補間比に基づいて、オーバサンプリング点間にお
ける補間点の第2の補間比を生成する第2の補間比生成
手段と、前記第2の補間比生成手段によって生成された
第2の補間比に基づいて、前記係数生成手段によって生
成された1対の係数組間を直線補間する補間手段と、第
2のクロックに従って、前記補間手段によって直線補間
された補間点の値と前記入力データとを畳み込み演算
し、出力データとして出力する演算手段とを具備するこ
とを特徴とする。
In order to solve the above-mentioned problems, according to the present invention, a first interpolation ratio for obtaining an interpolation point between input data inputted by a first clock is provided. , A coefficient generation means for generating a pair of coefficient sets for obtaining an oversampling point based on the first interpolation ratio, and a first interpolation ratio based on the first interpolation ratio. A second interpolation ratio generating means for generating a second interpolation ratio of the interpolation points between the over-sampling points, and the coefficient based on the second interpolation ratio generated by the second interpolation ratio generating means. Interpolating means for linearly interpolating between a pair of coefficient sets generated by the generating means; and a convolution operation between the value of the interpolation point linearly interpolated by the interpolating means and the input data in accordance with a second clock, and output data age Characterized by comprising a calculating means for outputting.

【0009】また、請求項2記載の発明では、請求項1
記載のサンプリング周波数変換装置において、前記係数
生成手段は、前記第1の補間比に応じた1対の係数組を
複数記憶する記憶手段を具備することを特徴とする。
Further, according to the invention described in claim 2, according to claim 1,
In the sampling frequency conversion device described above, the coefficient generation means includes a storage means for storing a plurality of pairs of coefficient sets corresponding to the first interpolation ratio.

【0010】また、請求項3記載の発明では、請求項1
記載のサンプリング周波数変換装置において、前記係数
生成手段は、前記1対の係数組のうち、偶数番目のオー
バサンプリング点を算出するための係数を記憶する第1
の記憶手段と、前記1対の係数組のうち、奇数番目のオ
ーバサンプリング点を算出するための係数を記憶する第
2の記憶手段とを備え、前記第1の補間比に基づいて、
前記第1の記憶手段に記憶されている偶数の係数と前記
第2の記憶手段に記憶されている奇数の係数とを対にし
て読み出すことを特徴とする。
[0010] According to the third aspect of the present invention, the first aspect is provided.
In the sampling frequency conversion device described in the first aspect, the coefficient generation unit stores a coefficient for calculating an even-numbered oversampling point in the pair of coefficient sets.
Storage means, and a second storage means for storing a coefficient for calculating an odd-numbered oversampling point in the pair of coefficient sets, based on the first interpolation ratio,
An even coefficient stored in the first storage means and an odd coefficient stored in the second storage means are read out in pairs.

【0011】また、請求項4記載の発明では、請求項1
記載のサンプリング周波数変換装置において、前記係数
生成手段は、前記1対の係数組の半分を記憶する記憶手
段を備えることを特徴とする。
Further, according to the invention described in claim 4, according to claim 1,
In the sampling frequency conversion device described above, the coefficient generation means includes a storage means for storing half of the pair of coefficient sets.

【0012】また、請求項5記載の発明では、請求項1
記載のサンプリング周波数変換装置において、前記係数
生成手段は、前記1対の係数組を2のべき乗で圧縮して
記憶する記憶手段を備えることを特徴とする。
Further, according to the invention described in claim 5, according to claim 1,
In the sampling frequency conversion apparatus described above, the coefficient generation means includes a storage means for compressing the pair of coefficient sets by a power of two and storing the compressed coefficient set.

【0013】この発明によれば、第1の補間比生成手段
によって、第1のクロックで入力される入力データ間に
おける補間点を求めるための第1の補間比を生成し、該
第1の補間比に基づいて、係数生成手段によって、オー
バサンプリング点を求めるための1対の係数組を生成す
るとともに、第2の補間比生成手段によって、オーバサ
ンプリング点間における補間点の第2の補間比を生成す
る。そして、補間手段によって、前記第2の補間比に基
づいて、前記1対の係数組間を直線補間した後、演算手
段によって、第2のクロックに従って、前記補間手段に
よって直線補間された補間点の値と前記入力データとを
畳み込み演算し、出力データとして出力するようにした
ので、ハードウェアを大規模とすることなく、演算を少
なくすることができるため、サンプリング周波数変換に
要する演算を高速化することが可能となる。
According to the present invention, the first interpolation ratio generating means generates the first interpolation ratio for finding the interpolation point between the input data input at the first clock, and Based on the ratio, the coefficient generation means generates a pair of coefficient sets for obtaining the oversampling points, and the second interpolation ratio generation means calculates the second interpolation ratio of the interpolation points between the oversampling points. Generate. Then, the interpolation means linearly interpolates between the pair of coefficient sets on the basis of the second interpolation ratio, and then calculates the interpolation points of the interpolation points linearly interpolated by the interpolation means in accordance with the second clock in accordance with the second clock. Since the value and the input data are convolved and output as output data, the number of calculations can be reduced without increasing the scale of hardware, so that the calculation required for the sampling frequency conversion is speeded up. It becomes possible.

【0014】[0014]

【発明の実施の形態】次に図面を参照してこの発明の実
施形態について説明する。
Embodiments of the present invention will now be described with reference to the drawings.

【0015】A.実施形態の構成 A−1.実施形態の基本構成 図1は、本発明の実施形態によるサンプリング周波数変
換装置の基本構成を示すブロック図である。図におい
て、FIFO20は、デュアルポートRAM(ランダム
アクセスメモリ)から構成されており、後述する読み出
し/書き込みカウンタ21から供給される書き込みアド
レスに従って、入力されるデータDinを記憶し、読み出
しアドレスに従って、記憶しているデータを8倍オーバ
サンプリング/直線補間部24へ出力する。
A. Configuration of Embodiment A-1. Basic Configuration of Embodiment FIG. 1 is a block diagram showing a basic configuration of a sampling frequency conversion device according to an embodiment of the present invention. In the figure, a FIFO 20 is constituted by a dual port RAM (random access memory), stores input data Din in accordance with a write address supplied from a read / write counter 21 described later, and stores in accordance with a read address. Is output to the eight-times oversampling / linear interpolation unit 24.

【0016】読み出し/書き込みカウンタ21は、書き
込みタイミングCKin(44.1kHz)に従って書き
込みタイミングと書き込みアドレスを生成してFIFO
20へ供給するとともに、後述するPLL22から供給
されるクロックCOに従って読み出しタイミングと読み
出しアドレスを生成してFIFO20へ供給する。さら
に、読み出し/書き込みカウンタ21は、CKinによっ
てアップカウントされるとともに、COによってダウン
カウントされるアップダウンを備え、FIFO20内の
データ量を検出し、PLL22に供給する。
The read / write counter 21 generates a write timing and a write address according to the write timing CKin (44.1 kHz), and
The read timing and the read address are generated and supplied to the FIFO 20 in accordance with a clock CO supplied from the PLL 22 described later. Further, the read / write counter 21 has an up-down which is counted up by CKin and down-counted by CO, detects the amount of data in the FIFO 20, and supplies it to the PLL 22.

【0017】PLL22は、全加算器、ラッチ回路等に
より構成されており、外部入力されるクロックCKout
48kHzに従って、上記データ量△Sに従って、読み
出しタイミングCOを生成し、上記読み出し/書き込み
カウンタ21に供給する。また、PLL22は、図2に
示すように、入力データDin(○)間の補間値(×)を
求めるための補間比△tを算出し、O/S係数指定/補
間比生成部23に供給する。なお、上記補間比△tはオ
ーバサンプリングを考慮しない値である。
The PLL 22 is composed of a full adder, a latch circuit and the like, and receives an externally input clock CKout.
A read timing CO is generated according to the data amount ΔS according to 48 kHz and supplied to the read / write counter 21. Further, as shown in FIG. 2, the PLL 22 calculates an interpolation ratio Δt for obtaining an interpolation value (×) between the input data Din (○) and supplies the interpolation ratio Δt to the O / S coefficient designation / interpolation ratio generation unit 23. I do. Note that the interpolation ratio Δt is a value that does not consider oversampling.

【0018】ここで、図3は、PLL22の一構成例を
示すブロック図である。図において、変換部22aは、
読み出し/書き込みカウンタ21のカウンタ値である現
在のデータ量△Sに対して非線形変換を施してデータG
ain(△S)を出力するものであり、変換したデータGa
in(△S)を全加算器22cに供給する。ここで、図4
は、変換部22aの変換特性を示すテーブルである。全
加算器22cは、上記データGain(△S)と後述する
選択回路22bの出力とを加算するものであり、選択回
路22bから供給される値をy(n)とすると、y(n
+1)=y(n)+Gain(△S)の加算を行い、y
(n+1)を出力する。
FIG. 3 is a block diagram showing an example of the configuration of the PLL 22. In the figure, the conversion unit 22a
The non-linear conversion is performed on the current data amount ΔS which is the counter value of the read / write counter 21 to obtain the data G
ain (△ S) is output, and the converted data Ga
in (△ S) is supplied to the full adder 22c. Here, FIG.
Is a table showing conversion characteristics of the conversion unit 22a. The full adder 22c adds the data Gain (GS) and an output of a later-described selection circuit 22b. If the value supplied from the selection circuit 22b is y (n), y (n)
+1) = y (n) + Gain (△ S), and y
(N + 1) is output.

【0019】選択回路22bは、全加算器22cに上記
y(n)を与えるものであり、動作開始時には初期値y
(0)を、以降はラッチ回路22dの出力y(n)を選
択する。ここで、初期値y(0)は、44.1kHzを
48kHzに変換する、この実施形態では、y(0)=
4096×(44.1/48)に設定されている。な
お、この初期値を与えるのは、動作が安定するまでの時
間が短縮するためであり、必須ではない。全加算器22
cは、上述した式に従って、y(n+1)をラッチ回路
22dに与える。ラッチ回路22dは、全加算器22c
の加算結果を外部入力されるクロックCKout(48k
Hz)に同期してラッチし、上記選択回路22bに供給
(フィードバック)するとともに、全加算器22eに供
給する。
The selection circuit 22b gives the above-mentioned y (n) to the full adder 22c.
(0), and thereafter, the output y (n) of the latch circuit 22d is selected. Here, the initial value y (0) converts 44.1 kHz to 48 kHz. In this embodiment, y (0) =
It is set to 4096 × (44.1 / 48). It is to be noted that this initial value is provided for the purpose of shortening the time until the operation becomes stable, and is not essential. Full adder 22
c gives y (n + 1) to the latch circuit 22d according to the above equation. The latch circuit 22d includes a full adder 22c.
The clock CKout (48 k
Hz), and is supplied to the selection circuit 22b (feedback) and supplied to the full adder 22e.

【0020】全加算器22eは、上記ラッチ回路22d
から供給される値と後述するラッチ回路22fから供給
(フィードバック)される値とを加算し、加算結果をラ
ッチ回路22fに供給するとともに、キャリアを読み出
しタイミングCOとして上述した読み出し/書き込みカ
ウンタ21に供給する。ラッチ回路22eは、上記加算
結果を外部入力されるクロックCKout(48kHz)
に同期してラッチし、上記全加算器22eに供給すると
ともに、補間比△tとして後述するO/S(オーバサン
プリング)係数指定/補間比生成部23に供給する。
The full adder 22e is connected to the latch circuit 22d.
Is added to a value supplied (feedback) from a latch circuit 22f described later, and the addition result is supplied to the latch circuit 22f and a carrier is supplied to the above-described read / write counter 21 as a read timing CO. I do. The latch circuit 22e outputs the addition result to a clock CKout (48 kHz) externally input.
And supplies it to the full adder 22e, and supplies it to an O / S (oversampling) coefficient designation / interpolation ratio generation unit 23 to be described later as an interpolation ratio Δt.

【0021】O/S(オーバサンプリング)係数指定/
補間比生成部23は、後述する8倍オーバサンプリング
/直線補間部24で、図5に示す補間点(×)の値を求
める際に必要となるオーバサンプリング点A,Bを求め
るための係数組COEA,COEB(実際にはCOEAの
み)を補間比△tに基づいて算出するとともに、オーバ
サンプリングを考慮した補間比aを算出し、8倍オーバ
サンプリング/直線補間部24に供給する。
O / S (oversampling) coefficient designation /
An interpolation ratio generating unit 23 is a coefficient set for obtaining oversampling points A and B necessary for obtaining values of interpolation points (×) shown in FIG. COEA and COEB (actually, only COEA) are calculated based on the interpolation ratio Δt, and an interpolation ratio a in consideration of oversampling is calculated and supplied to the 8 × oversampling / linear interpolation unit 24.

【0022】係数組COEA,COEBは、次式により決
定される。 COEA=Int(△t/512) COEB=COEA+1 但し、Int(x)は、小数部分を「0」とする演算であ
る。また、係数組COEA,COEBは、0≦COEA,
COEB≦7の整数である。さらに、オーバサンプリン
グ点A,B間の補間比aは、a=Mod512(△t)/5
12で求めることができる。なお、Mod512(x)は、
xを512で除算したときの余りを求める演算である。
The coefficient sets COEA and COEB are determined by the following equations. COEA = Int (△ t / 512) COEB = COEA + 1 where Int (x) is an operation for setting the decimal part to “0”. The coefficient set COEA, COEB is 0 ≦ COEA,
COEB ≦ 7. Further, the interpolation ratio a between the oversampling points A and B is a = Mod 512 (Δt) / 5
12 can be obtained. In addition, Mod512 (x) is
This is an operation for obtaining a remainder when x is divided by 512.

【0023】次に、8倍オーバサンプリング/直線補間
部24は、上記係数組COEAおよびオーバサンプリン
グを考慮した補間比aに従って、オーバサンプリング→
直線補間という2回の手順を踏まずに、入力データDin
のサンプリング周波数を変換し、データDoutとして出
力する。ここで、本願発明によるオーバサンプリング+
直線補間を数式で表すと次のようになる。 X=a(D1*C1i+D2*C2i+D3*C3i+D4*C4
i)+b(D1*C1(i+1)+D2*C2(i+1)+D3*C3(i+
1)+D4*C4(i+1)) よって、 X=D1(aC1i+bC1(i+1))+D2(aC2i+bC2
(i+1))+D3(aC3i+bC3(i+1))+D4(aC4i+
bC4(i+1)) 上記数式において、括弧内は、隣合う係数間を直線補間
していることに相当する。したがって、上記括弧内の値
を算出し、データに直に乗算することにより、上述した
2回の手順を踏むことなく、同精度でサンプリング周波
数を変換することができる。
Next, the eight-times oversampling / linear interpolation unit 24 performs oversampling → in accordance with the coefficient set COEA and the interpolation ratio a in consideration of the oversampling.
Without going through the two steps of linear interpolation, the input data Din
Is converted and output as data Dout. Here, oversampling according to the present invention +
The linear interpolation is represented by the following equation. X = a (D1 * C1i + D2 * C2i + D3 * C3i + D4 * C4
i) + b (D1 * C1 (i + 1) + D2 * C2 (i + 1) + D3 * C3 (i +
1) + D4 * C4 (i + 1)) Therefore, X = D1 (aC1i + bC1 (i + 1)) + D2 (aC2i + bC2)
(i + 1)) + D3 (aC3i + bC3 (i + 1)) + D4 (aC4i +
bC4 (i + 1)) In the above equation, the values in parentheses correspond to linear interpolation between adjacent coefficients. Therefore, by calculating the value in the parentheses and directly multiplying the data, the sampling frequency can be converted with the same accuracy without performing the above-described two procedures.

【0024】A−2.8倍オーバサンプリング/直線補
間部の構成 ここで、図6は、上記8倍オーバサンプリング/直線補
間部24の一構成例を示すブロック図である。図におい
て、8倍オーバサンプリング/直線補間部24は、DS
P(デジタルシグナルプロセッサ)により構成されてお
り、図示の右半分は上記原理に従って係数間を直線補間
する係数補間部、図示の左半分は畳み込み演算部であ
る。
A-2.8 Configuration of 2.8 × Oversampling / Linear Interpolation Unit FIG. 6 is a block diagram showing an example of the configuration of the 8 × oversampling / linear interpolation unit 24. In the figure, the 8 times oversampling / linear interpolation unit 24
The right half of the figure is a coefficient interpolator for linearly interpolating between coefficients according to the above principle, and the left half of the figure is a convolution unit.

【0025】係数補間部は、加算器30、ROM読出制
御部31、係数ROM32、全加算器33、乗算器34
および全加算器35から構成されている。加算器30
は、係数組を指定する係数COEAに「1」を加算する
ことにより、COEBを算出する。ROM読出制御部3
1は、係数組を指定するCOEA,COEBに従って、係
数ROM32から係数組を読み出す。このとき、ROM
読出制御部21は、COEAに対する係数Cijを加算器
33の一方の入力端に供給し、COEBに対する係数Ci
(j+1)を加算器33の他方の入力端(−)と加算器35
の一方の入力端(+)に供給するように制御する。係数
ROM32は、図7に示すように、オーバサンプリング
に必要とされる係数Cij(i=1〜4,j=0〜7)を
記憶しており、上記ROM読出制御部31により指定さ
れた係数組Cij,Ci(j+1)を、上述した各部へ出力す
る。なお、係数COEA,Bは、例えば図5に示すよう
に、COEAが(イ)〜(ニ)の場合、COEBは
(イ)’〜(ニ)’のように、係数の組を指定するよう
になっている。
The coefficient interpolation unit includes an adder 30, a ROM read control unit 31, a coefficient ROM 32, a full adder 33, and a multiplier 34.
And a full adder 35. Adder 30
Calculates COEB by adding "1" to a coefficient COEA specifying a coefficient set. ROM read control unit 3
1 reads a coefficient set from the coefficient ROM 32 according to COEA and COEB designating the coefficient set. At this time, ROM
The read control unit 21 supplies a coefficient Cij for COEA to one input terminal of the adder 33, and a coefficient Ci for COEB.
(j + 1) is added to the other input terminal (-) of the adder 33 and the adder 35.
Is controlled to be supplied to one input terminal (+). The coefficient ROM 32 stores coefficients Cij (i = 1 to 4, j = 0 to 7) required for oversampling, as shown in FIG. The sets Cij and Ci (j + 1) are output to the above-described units. As shown in FIG. 5, for example, as shown in FIG. 5, when COEA is (a) to (d), COEB specifies a set of coefficients as (a) to (d). It has become.

【0026】次に、全加算器33は、Cij−Ci(j+1)
を計算し、乗算器34に供給する。乗算器34は、上記
Cij−Ci(j+1)に補間比aを乗算し、a(Cij−Ci(j
+1))を算出し、全加算器35に供給する。全加算器3
5は、Ci(j+1)+{a(Cij−Ci(j+1))}を算出し、
乗算器36に供給する。上述した演算は、第1のタイミ
ング(i=1)、第2のタイミング(i=2)、第3の
タイミング(i=3)、第4のタイミング(i=4)で
順次行われる。
Next, the full adder 33 calculates Cij-Ci (j + 1).
Is calculated and supplied to the multiplier 34. The multiplier 34 multiplies the Cij-Ci (j + 1) by the interpolation ratio a, and calculates a (Cij-Ci (j
+1)) is calculated and supplied to the full adder 35. Full adder 3
5 calculates Ci (j + 1) + {a (Cij−Ci (j + 1))},
It is supplied to a multiplier 36. The above-described calculation is sequentially performed at a first timing (i = 1), a second timing (i = 2), a third timing (i = 3), and a fourth timing (i = 4).

【0027】次に、畳み込み演算部は、乗算器36、全
加算器37、レジスタ38およびレジスタ39から構成
されている。乗算器36は、上記全加算器35の演算結
果であるCi(j+1)+{a(Cij−Ci(j+1))}に入力デ
ータDi(i=1〜4)を乗算し、全加算器37の一方
の入力端に供給する。全加算器37は、上記(Ci(j+1)
+{a(Cij−Ci(j+1))})・Diと、後述するレジス
タ38から供給される値とを加算し、加算結果をレジス
タ38に供給する。レジスタ38は、上記加算結果を保
持し、上記全加算器37の一方の入力端に供給するとと
もに、レジスタ39に供給する。したがって、乗算器3
6、全加算器37、レジスタ38では、上述した第1か
ら第4の各タイミングで供給される上記(Ci(j+1)+
{a(Cij−Ci(j+1))})・Diが累算(畳み込み演
算)されることになる。レジスタ39は、外部入力され
るクロック(48kHz)に従ってレジスタ38から供
給されるデータを取り込み、最終的に出力する。
Next, the convolution operation section comprises a multiplier 36, a full adder 37, a register 38 and a register 39. The multiplier 36 multiplies Ci (j + 1) + {a (Cij−Ci (j + 1))}, which is the operation result of the full adder 35, by the input data Di (i = 1 to 4), It is supplied to one input terminal of the full adder 37. The full adder 37 calculates the above (Ci (j + 1)
+ {A (Cij−Ci (j + 1))}) · Di and a value supplied from a register 38 described later, and the result of the addition is supplied to the register 38. The register 38 holds the result of the addition, supplies the result to one input terminal of the full adder 37, and supplies the result to the register 39. Therefore, the multiplier 3
6, the full adder 37, and the register 38, the (Ci (j + 1) +) supplied at the above-described first to fourth timings.
{a (Cij−Ci (j + 1))}) · Di is accumulated (convolution operation). The register 39 takes in data supplied from the register 38 in accordance with a clock (48 kHz) externally input, and finally outputs the data.

【0028】B.実施形態の動作 次に、上述した実施形態による動作について説明する。
入力データDinは、読み出し/書き込みカウンタ21か
ら供給される書き込みアドレスに従って、FIFO20
に記憶される。該FIFO20に記憶されたデータDin
は、読み出し/書き込みカウンタ21から供給される読
み出しアドレスに従って読み出され、8倍オーバサンプ
リング/直線補間部24に供給される。このとき、FI
FO20の読み出しタイミングは、読み出し/書き込み
カウンタ21およびPLL22によって、FIFO20
のデータ量が適切な値となるようにデータ量に基づいて
制御されている。
B. Next, an operation according to the above-described embodiment will be described.
The input data Din is supplied to the FIFO 20 according to the write address supplied from the read / write counter 21.
Is stored. Data Din stored in the FIFO 20
Is read out according to the read address supplied from the read / write counter 21 and supplied to the 8 × oversampling / linear interpolation unit 24. At this time, FI
The read timing of the FO 20 is determined by the read / write counter 21 and the PLL 22 by the FIFO 20.
Is controlled based on the data amount so that the data amount becomes an appropriate value.

【0029】また、PLL22では、外部入力されるク
ロックCKout(48kHz)に従って、上記データ量
に従って入力データDin(○)間の補間値(×)を求め
るための補間比△tが算出され、O/S係数指定/補間
比生成部23に供給される。次に、O/S係数指定/補
間比生成部23では、後述する8倍オーバサンプリング
/直線補間部24で図5に示す補間点(×)の値を求め
る際に必要となるオーバサンプリング点A,Bを求める
ための係数組Cij、Ci(j+1)を得るためのCOEAおよ
びオーバサンプリングを考慮した補間比aが補間比△t
に基づいて算出される。
Further, the PLL 22 calculates an interpolation ratio Δt for obtaining an interpolation value (×) between the input data Din (○) according to the data amount according to an externally input clock CKout (48 kHz). It is supplied to the S coefficient designation / interpolation ratio generation unit 23. Next, in the O / S coefficient designation / interpolation ratio generation unit 23, the oversampling point A required when the value of the interpolation point (x) shown in FIG. , B, a coefficient set Cij, a COEA for obtaining Ci (j + 1) and an interpolation ratio a in consideration of oversampling are obtained by an interpolation ratio Δt.
Is calculated based on

【0030】次に、8倍オーバサンプリング/直線補間
部24では、第1のタイミング(i=1)で、a・C1j
+(1−a)・C1(j+1)、第2のタイミング(i=2)
で、a・C2j+(1−a)・C2(j+1)、第3のタイミン
グ(i=3)で、a・C3j+(1−a)・C3(j+1)、第
4のタイミング(i=4)で、a・C4j+(1−a)・
C4(j+1)が算出され、それぞれとデータDi(i=1〜
4)とが畳み込み演算され、{a・C1j+(1−a)・
C1(j+1)}・D1+{a・C2j+(1−a)・C2(j+
1)}・D2+{a・C3j+(1−a)・C3(j+1)}・D3
+{a・C4j+(1−a)・C4(j+1)}・D4が算出さ
れる。この式は、図15に示す従来の構成により補間値
Xを求めるのと等価である。
Next, the 8 × oversampling / linear interpolating unit 24 sets a · C1j at the first timing (i = 1).
+ (1-a) · C1 (j + 1), second timing (i = 2)
Then, a · C2j + (1-a) · C2 (j + 1), at the third timing (i = 3), a · C3j + (1-a) · C3 (j + 1), and at the fourth timing ( i = 4), a · C4j + (1-a) ·
C4 (j + 1) is calculated, and the data Di (i = 1 to 1)
4) is convolved with {a · C1j + (1-a) ·
C1 (j + 1)} · D1 + {a · C2j + (1-a) · C2 (j +
1)} ・ D2 + {a ・ C3j + (1-a) ・ C3 (j + 1)} ・ D3
+ {A.C4j + (1-a) .C4 (j + 1)}. D4 is calculated. This equation is equivalent to obtaining the interpolation value X by the conventional configuration shown in FIG.

【0031】上述した畳み込み演算された結果におい
て、各項の大括弧内の値は、隣合う係数間を直線補間し
ていることに相当する。この値にデータDiを直に乗算
することにより、オーバサンプリング→直線補間という
2回の手順を踏まずに、補間値Xを同精度で得られる。
言い換えると、従来技術では、8倍オーバサンプリン
グ値Aを求める畳み込み演算、8倍オーバサンプリン
グ値Bを求める畳み込み演算、直線補間のための演算
が必要である。これに対して、上述した実施形態では、
係数直線補間のための演算、畳み込み演算でよい。
さらに、補間精度にもよるが、係数補間のための乗算器
34は、畳み込み演算のための乗算器36に比べて小さ
なものでも、十分な精度が得られる。
In the result of the above-described convolution operation, the value in brackets of each term corresponds to linear interpolation between adjacent coefficients. By directly multiplying this value by the data Di, the interpolation value X can be obtained with the same precision without performing the two steps of oversampling and linear interpolation.
In other words, in the related art, a convolution operation for obtaining the eight-times oversampling value A, a convolution operation for obtaining the eight-times oversampling value B, and an operation for linear interpolation are required. In contrast, in the embodiment described above,
An operation for coefficient linear interpolation or a convolution operation may be used.
Further, depending on the interpolation accuracy, sufficient accuracy can be obtained even if the multiplier 34 for coefficient interpolation is smaller than the multiplier 36 for convolution operation.

【0032】C.第1変形例 次に、本発明の第1変形例について説明する。本第1変
形例では、係数ROM32に記憶されていた係数Cijを
奇数番目のオーバサンプリングポイント算出用の係数
(以下、単に奇数係数という)と偶数番目のオーバサン
プリング算出用の係数(以下、単に偶数係数という)と
に分けて記憶することにより、演算の高速化を図ったも
のである。ここで、図8は、図6に示すROM読出制御
部31、係数ROM32の部分に置き換えるブロック図
である。その他の構成については図6と同一であるので
図示および説明を省略する。図において、加算器41
は、係数組を指定するCOEAに「1」を加算すること
により、COEBを算出し、後述する選択回路43,4
6に供給する。偶/奇判別部42は、上記COEAに基
づいて、偶数係数または奇数係数のいずれをどちらに出
力するかを決定する選択信号を、選択回路43,46、
選択回路49,50に供給する。
C. First Modified Example Next, a first modified example of the present invention will be described. In the first modification, the coefficient Cij stored in the coefficient ROM 32 is defined as a coefficient for calculating an odd-numbered oversampling point (hereinafter simply referred to as an odd coefficient) and a coefficient for calculating an even-numbered oversampling point (hereinafter simply referred to as an even numbered coefficient). (Referred to as a coefficient) and storing them separately to speed up the calculation. Here, FIG. 8 is a block diagram replacing the ROM read control unit 31 and the coefficient ROM 32 shown in FIG. Other configurations are the same as those in FIG. 6, and illustration and description are omitted. In the figure, an adder 41
Calculates COEB by adding “1” to COEA specifying the coefficient set, and selects the selector circuits 43 and 4 described later.
6 The even / odd discriminating unit 42 outputs a selection signal for determining which of the even coefficient and the odd coefficient to output to the selection circuits 43 and 46 based on the COEA.
The signals are supplied to the selection circuits 49 and 50.

【0033】選択回路43は、上記選択信号に従って、
偶数「0」の場合には、COEAを読出制御部44に供
給し、奇数「1」の場合には、COEBを読出制御部4
4に供給する。読出制御部44は、係数組を指定するC
OEA,COEBのどちらかに従って、偶数の係数のみを
記憶する係数ROM45から係数を読み出す。係数RO
M45は、図9に示すように、オーバサンプリングに必
要とされる係数Cij(i=1〜4,j=0〜7)のう
ち、偶数番目のオーバサンプリングポイントを算出する
係数(C10、C12、C14、…、C46)を記憶しており、
上記読出制御部44により指定された係数を、選択回路
49,50に供給する。
The selection circuit 43 operates according to the above selection signal.
If the even number is "0", COEA is supplied to the read control unit 44. If the odd number is "1", COEB is supplied to the read control unit 4.
4 The read control unit 44 specifies C
According to one of OEA and COEB, the coefficients are read from the coefficient ROM 45 storing only the even coefficients. Coefficient RO
As shown in FIG. 9, among the coefficients Cij (i = 1 to 4, j = 0 to 7) required for oversampling, M45 calculates coefficients (C10, C12, C14, ..., C46)
The coefficients specified by the read control unit 44 are supplied to the selection circuits 49 and 50.

【0034】次に、選択回路46は、上記選択信号に従
って、偶数「0」の場合には、COEBを読出制御部4
7に供給し、奇数「1」の場合には、COEAを読出制
御部47に供給する。読出制御部47は、係数組を指定
するCOEA,COEBのどちらかに従って、奇数の係数
のみを記憶する係数ROM48から係数を読み出す。係
数ROM48は、図9に示すように、オーバサンプリン
グに必要とされる係数Cij(i=1〜4,j=0〜7)
のうち、奇数番目のオーバサンプリングポイントを算出
する係数(C11、C13、C15、…、C47)を記憶してお
り、上記読出制御部47により指定された係数を、選択
回路49,50に供給する。
Next, according to the selection signal, if the even number is “0”, the selection circuit 46 outputs COEB to the read control unit 4.
7 and, if the odd number is “1”, COEA is supplied to the read control unit 47. The read control unit 47 reads coefficients from a coefficient ROM 48 storing only odd coefficients according to either COEA or COEB specifying a coefficient set. As shown in FIG. 9, the coefficient ROM 48 stores coefficients Cij (i = 1 to 4, j = 0 to 7) required for oversampling.
Among them, the coefficients (C11, C13, C15,..., C47) for calculating the odd-numbered oversampling points are stored, and the coefficients specified by the read control unit 47 are supplied to the selection circuits 49 and 50. .

【0035】選択回路49は、上記選択信号に従って、
偶数「0」の場合には、係数ROM45からの偶数係数
を後段の回路に出力し、奇数「1」の場合には、係数R
OM48からの奇数係数を後段の回路に出力する。ま
た、選択回路50は、上記選択信号に従って、偶数
「0」の場合には、係数ROM48からの奇数係数を後
段の回路に出力し、奇数「1」の場合には、係数ROM
45からの偶数係数を後段の回路に出力する。
The selection circuit 49 operates according to the above selection signal.
In the case of an even number "0", the even number coefficient from the coefficient ROM 45 is output to the subsequent circuit, and in the case of an odd number "1", the coefficient R
The odd coefficient from the OM 48 is output to a subsequent circuit. According to the selection signal, the selection circuit 50 outputs the odd coefficient from the coefficient ROM 48 to the subsequent circuit when the even number is “0”, and outputs the coefficient ROM when the odd number is “1”.
The even-number coefficient from 45 is output to the subsequent circuit.

【0036】上述した構成では、8倍オーバサンプリン
グ/直線補間部24において、第1のタイミング(i=
1)、第2のタイミング(i=2)、第3のタイミン
グ、および第4のタイミング(i=4)で、係数組Ci
j、Ci(j+1)を読み出す際のアクセス速度を高速化でき
るので、演算の高速化を図ることができる。
In the configuration described above, the eight-time oversampling / linear interpolation unit 24 sets the first timing (i =
1) At the second timing (i = 2), the third timing, and the fourth timing (i = 4), the coefficient set Ci
Since the access speed at the time of reading j and Ci (j + 1) can be increased, the operation can be speeded up.

【0037】D.第2変形例 次に、本発明の第2変形例について説明する。本第2変
形例では、係数ROM32に記憶されていた係数Cijを
半分のみ記憶することで、係数ROMの記憶容量を削減
するとともに、演算の高速化を図ったものである。ここ
で、図10(a)は、前述した実施形態による演算部の
概念を示すブロック図であり、図10(b)は、本第2
変形例による演算部の概念を示すブロック図である。前
述した実施形態では、図10(a)に示すように、各遅
延回路の出力(D1,D2,D3,D4)に対し、乗算器M
1,M2,M3,M4で係数を乗算し、加算器ADでそ
れぞれを加算して出力する構成となっている。本第2変
形例では、係数の対称性、すなわち、M1=M4、M2
=Mに着目し、図10(b)に示すように、加算器AD
1でデータD2とデータD3とを加算し、加算器AD2で
データD1とデータD4とを加算し、それぞれに対して、
乗算器M5,M6で、係数を乗算して、加算器AD3で
それぞれを加算して出力構成となっている。したがっ
て、本第2変形例では、乗算器M5,M6でのみ係数を
乗算すればよいので、係数ROMには、半分のみを記憶
しておけばよいことになる。この結果、係数ROMの記
憶容量を削減できるとともに、演算の高速化を図ること
ができる。
D. Second Modification Next, a second modification of the present invention will be described. In the second modification, by storing only half of the coefficient Cij stored in the coefficient ROM 32, the storage capacity of the coefficient ROM is reduced and the calculation is speeded up. Here, FIG. 10A is a block diagram illustrating the concept of the calculation unit according to the above-described embodiment, and FIG.
It is a block diagram which shows the concept of the calculation part by a modification. In the above-described embodiment, as shown in FIG. 10A, the output (D1, D2, D3, D4) of each delay circuit is multiplied by a multiplier M
1, M2, M3, and M4 are multiplied by coefficients, and each is added by an adder AD and output. In the second modification, the symmetry of the coefficients, that is, M1 = M4, M2
= M, and as shown in FIG.
1, the data D2 and the data D3 are added, and the adder AD2 adds the data D1 and the data D4.
The multipliers M5 and M6 multiply the coefficients, and the adders AD3 add each to output. Therefore, in the second modification, since only the multipliers M5 and M6 need to multiply the coefficients, only half of the coefficient ROM needs to be stored. As a result, the storage capacity of the coefficient ROM can be reduced, and the calculation can be speeded up.

【0038】E.第3変形例 次に、本発明による実施形態の第3変形例について説明
する。本第3実施例では、係数ROMに記憶する係数を
「圧縮」し、限られた記憶容量を有効に用いるようにな
っている。具体的には、直線補間で用いる係数値を、図
11に示すように、2のべき乗圧縮を施し、係数ROM
に記憶しておく。該係数は、実際の畳み込み演算におい
て、シフト制御することにより、結果的に解凍されるよ
うになっている。
E. Third Modification Next, a third modification of the embodiment according to the present invention will be described. In the third embodiment, the coefficients stored in the coefficient ROM are "compressed" so that the limited storage capacity is used effectively. Specifically, the coefficient values used in the linear interpolation are subjected to power-of-two compression as shown in FIG.
To memorize it. The coefficients are decompressed as a result by performing shift control in an actual convolution operation.

【0039】ここで、図12は、本変形例3によるサン
プリング周波数変換装置の係数直線補間部の構成を示す
ブロック図である。図において、係数ROM60aは、
シフトに関する情報とともに、オーバサンプリングに必
要とされる係数Cij(i=1〜4,j=0〜7)のう
ち、偶数係数(C10、C12、C14、…、C46)を記憶し
ている。また、係数ROM60bは、シフトに関する情
報とともに、オーバサンプリングに必要とされる係数C
ij(i=1〜4,j=0〜7)のうち、奇数係数(C1
1、C13、C15、…、C47)を記憶している。シフト制
御部61は、上記係数ROM60a,60bから供給さ
れるシフトに関する情報に従って、シフト制御信号C1
(+1/0)をシフトレジスタ63に供給する。入れ替
え部62は、上記係数ROM60a,60bの各々から
供給される係数を入れ替えて、シフトレジスタ63と補
間部64に供給する。シフトレジスタ63では、補間す
る係数間のスケールを合わせるために、上記シフト制御
信号C1に従って係数をシフトし、補間部64に供給す
る。補間部64は、供給される係数に従って、データ間
を直線補間する。
FIG. 12 is a block diagram showing the configuration of the coefficient linear interpolation unit of the sampling frequency conversion device according to the third modification. In the figure, the coefficient ROM 60a
Along with information on the shift, even coefficients (C10, C12, C14,..., C46) among coefficients Cij (i = 1 to 4, j = 0 to 7) required for oversampling are stored. The coefficient ROM 60b stores the coefficient C required for oversampling together with information on the shift.
ij (i = 1 to 4, j = 0 to 7), odd coefficient (C1
1, C13, C15,..., C47) are stored. The shift control unit 61 controls the shift control signal C1 according to the shift information supplied from the coefficient ROMs 60a and 60b.
(+1/0) is supplied to the shift register 63. The replacement unit 62 replaces the coefficients supplied from each of the coefficient ROMs 60a and 60b, and supplies the coefficients to the shift register 63 and the interpolation unit 64. The shift register 63 shifts the coefficients according to the shift control signal C1 and supplies the coefficients to the interpolation unit 64 in order to adjust the scale between the coefficients to be interpolated. The interpolation unit 64 performs linear interpolation between data according to the supplied coefficients.

【0040】次に、図13は、本第3変形例によるサン
プリング周波数変換装置の畳み込み演算部の構成を示す
ブロック図である。なお、図6に対応する部分には同一
の符号を付けて説明を省略する。図において、畳み込み
演算部における最終段のシフトレジスタ65は、前述し
たシフト制御部61からのシフト制御信号C2(−1/
0)に従ってデータをシフトして出力する。畳み込み演
算では、両側(係数値が小側)から演算されるので、両
側ほどシフトダウンされる回数が多くなり、結果とし
て、圧縮の解凍が行われる。
Next, FIG. 13 is a block diagram showing the configuration of the convolution operation unit of the sampling frequency conversion device according to the third modification. Parts corresponding to those in FIG. 6 are denoted by the same reference numerals, and description thereof is omitted. In the figure, the shift register 65 at the last stage in the convolution operation unit is provided with a shift control signal C2 (−1 /
0), and shifts and outputs the data. In the convolution operation, since the calculation is performed from both sides (the coefficient value is small), the number of times of shifting down increases on both sides, and as a result, the compression is decompressed.

【0041】このように、本第3変形例では、直線補間
に用いる係数を圧縮して係数ROMに記憶するようにし
たので、限られた記憶容量を有効に用いることができ
る。
As described above, in the third modification, the coefficients used for linear interpolation are compressed and stored in the coefficient ROM, so that a limited storage capacity can be used effectively.

【0042】なお、第1変形例〜第3変形例は、それぞ
れ単独で図6に示す実施形態に組み合わせることもでき
るが、全てを組み合わせることも可能である。
The first modification to the third modification can be individually combined with the embodiment shown in FIG. 6, but all of them can be combined.

【0043】[0043]

【発明の効果】以上、説明したように、この発明によれ
ば、第1の補間比生成手段によって、第1のクロックで
入力される入力データ間における補間点を求めるための
第1の補間比を生成し、該第1の補間比に基づいて、係
数生成手段によって、オーバサンプリング点を求めるた
めの1対の係数組を生成するとともに、第2の補間比生
成手段によって、オーバサンプリング点間における補間
点の第2の補間比を生成し、補間手段によって、前記第
2の補間比に基づいて、前記1対の係数組間を直線補間
した後、演算手段によって、第2のクロックに従って、
前記補間手段によって直線補間された補間点の値と前記
入力データとを畳み込み演算し、出力データとして出力
するようにしたので、ハードウェアを大規模とすること
なく、演算を高速化できるという利点が得られる。
As described above, according to the present invention, according to the present invention, the first interpolation ratio generating means for obtaining the interpolation point between the input data inputted by the first clock is used. Is generated by the coefficient generation means based on the first interpolation ratio, and a pair of coefficient sets for obtaining the oversampling point is generated. A second interpolation ratio of an interpolation point is generated, and the interpolation means linearly interpolates between the pair of coefficient sets based on the second interpolation ratio.
The value of the interpolation point linearly interpolated by the interpolation means is convoluted with the input data and output as output data.Therefore, there is an advantage that the operation can be speeded up without increasing the scale of hardware. can get.

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

【図1】 本発明の実施形態によるサンプリング周波数
変換装置の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a sampling frequency conversion device according to an embodiment of the present invention.

【図2】 サンプリング周波数変換装置のPLLにおけ
る補間比△tの算出方法を説明するための概念図であ
る。
FIG. 2 is a conceptual diagram for explaining a method of calculating an interpolation ratio Δt in a PLL of a sampling frequency conversion device.

【図3】 PLLの一構成例を示すブロック図である。FIG. 3 is a block diagram illustrating a configuration example of a PLL.

【図4】 FIFOのデータ量△SとゲインGain(△
S)との対応関係を示す概念図である。
FIG. 4 shows a data amount ΔS and a gain Gain (△) of a FIFO.
It is a conceptual diagram which shows the correspondence relationship with S).

【図5】 8倍オーバサンプリング/直線補間部での直
線補間で用いる補間比aの算出方法を説明するための概
念図である。
FIG. 5 is a conceptual diagram for explaining a method of calculating an interpolation ratio a used in linear interpolation in an 8 × oversampling / linear interpolation unit.

【図6】 8倍オーバサンプリング/直線補間部の一構
成例を示すブロック図である。
FIG. 6 is a block diagram illustrating a configuration example of an 8 × oversampling / linear interpolation unit.

【図7】 係数ROMに記憶されている係数を説明する
ための概念図である。
FIG. 7 is a conceptual diagram for explaining coefficients stored in a coefficient ROM.

【図8】 第1変形例による構成を示すブロック図であ
る。
FIG. 8 is a block diagram showing a configuration according to a first modified example.

【図9】 第1変形例による係数ROMに記憶されてい
る係数を説明するための概念図である。
FIG. 9 is a conceptual diagram for explaining coefficients stored in a coefficient ROM according to a first modification.

【図10】 実施形態による演算部、および本第2変形
例による演算部の概念を示すブロック図である。
FIG. 10 is a block diagram illustrating the concept of an arithmetic unit according to the embodiment and an arithmetic unit according to the second modified example.

【図11】 係数圧縮を説明するための概念図である。FIG. 11 is a conceptual diagram for explaining coefficient compression.

【図12】 第3変形例による構成(直線補間部)を示
すブロック図である。
FIG. 12 is a block diagram showing a configuration (linear interpolation unit) according to a third modification.

【図13】 第3変形例による構成(畳み込み演算部)
を示すブロック図である。
FIG. 13 shows a configuration according to a third modification (convolution operation unit).
FIG.

【図14】 従来のサンプリング周波数変換装置の構成
を示すブロック図である。
FIG. 14 is a block diagram illustrating a configuration of a conventional sampling frequency conversion device.

【図15】 従来のサンプリング周波数変換装置による
オーバサンプリング+直線補間を実現するための構成を
示すブロック図である。
FIG. 15 is a block diagram showing a configuration for realizing oversampling + linear interpolation by a conventional sampling frequency conversion device.

【図16】 従来のオーバサンプリング+直線補間を説
明するための概念図である。
FIG. 16 is a conceptual diagram for explaining conventional oversampling + linear interpolation.

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

20 FIFO 21 読み出し/書き込みカウンタ(第1の補間比生成
手段) 22 PLL(第1の補間比生成手段) 23 O/S係数指定/補間比生成部(第2の補間比生
成手段) 24 8倍オーバサンプリング/直線補間部(補間手
段、演算手段) 31 ROM読出制御部(係数生成手段) 32 係数ROM(係数生成手段、記憶手段) 60a,60b 係数ROM(第1の記憶手段、第2の
記憶手段)
Reference Signs List 20 FIFO 21 read / write counter (first interpolation ratio generation unit) 22 PLL (first interpolation ratio generation unit) 23 O / S coefficient designation / interpolation ratio generation unit (second interpolation ratio generation unit) 24 8 times Oversampling / linear interpolation unit (interpolation means, calculation means) 31 ROM read control unit (coefficient generation means) 32 coefficient ROM (coefficient generation means, storage means) 60a, 60b coefficient ROM (first storage means, second storage) means)

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 第1のクロックで入力される入力データ
間における補間点を求めるための第1の補間比を生成す
る第1の補間比生成手段と、 前記第1の補間比に基づいて、オーバサンプリング点を
求めるための1対の係数組を生成する係数生成手段と、 前記第1の補間比に基づいて、オーバサンプリング点間
における補間点の第2の補間比を生成する第2の補間比
生成手段と、 前記第2の補間比生成手段によって生成された第2の補
間比に基づいて、前記係数生成手段によって生成された
1対の係数組間を直線補間する補間手段と、 第2のクロックに従って、前記補間手段によって直線補
間された補間点の値と前記入力データとを畳み込み演算
し、出力データとして出力する演算手段とを具備するこ
とを特徴とするサンプリング周波数変換装置。
1. A first interpolation ratio generating means for generating a first interpolation ratio for obtaining an interpolation point between input data inputted by a first clock, based on the first interpolation ratio, Coefficient generation means for generating a pair of coefficient sets for obtaining an oversampling point; and second interpolation for generating a second interpolation ratio of interpolation points between oversampling points based on the first interpolation ratio. A ratio generating unit; an interpolating unit that linearly interpolates between a pair of coefficient sets generated by the coefficient generating unit based on the second interpolation ratio generated by the second interpolation ratio generating unit; And a calculating means for convolving the value of the interpolation point linearly interpolated by the interpolating means with the input data in accordance with the clock, and outputting the result as output data. Location.
【請求項2】 前記係数生成手段は、前記第1の補間比
に応じた1対の係数組を複数記憶する記憶手段を具備す
ることを特徴とする請求項1記載のサンプリング周波数
変換装置。
2. The sampling frequency conversion device according to claim 1, wherein said coefficient generation means includes storage means for storing a plurality of pairs of coefficient sets corresponding to said first interpolation ratio.
【請求項3】 前記係数生成手段は、 前記1対の係数組のうち、偶数番目のオーバサンプリン
グ点を算出するための係数を記憶する第1の記憶手段
と、 前記1対の係数組のうち、奇数番目のオーバサンプリン
グ点を算出するための係数を記憶する第2の記憶手段と
を備え、 前記第1の補間比に基づいて、前記第1の記憶手段に記
憶されている係数と前記第2の記憶手段に記憶されてい
る係数とを対にして読み出すことを特徴とする請求項1
記載のサンプリング周波数変換装置。
3. The coefficient generation means includes: first storage means for storing a coefficient for calculating an even-numbered oversampling point in the pair of coefficient sets; And second storage means for storing a coefficient for calculating an odd-numbered oversampling point. Based on the first interpolation ratio, the coefficient stored in the first storage means and the second 2. The method according to claim 1, wherein the coefficients are read out in pairs with the coefficients stored in the storage means.
The sampling frequency converter according to the above.
【請求項4】 前記係数生成手段は、前記1対の係数組
の半分を記憶する記憶手段を備えることを特徴とする請
求項1記載のサンプリング周波数変換装置。
4. The sampling frequency conversion device according to claim 1, wherein said coefficient generation means includes a storage means for storing half of said pair of coefficient sets.
【請求項5】 前記係数生成手段は、前記1対の係数組
を2のべき乗で圧縮して記憶する記憶手段を備えること
を特徴とする請求項1記載のサンプリング周波数変換装
置。
5. The sampling frequency conversion apparatus according to claim 1, wherein said coefficient generation means includes storage means for compressing and storing said pair of coefficient sets by a power of two.
JP9204920A 1997-07-30 1997-07-30 Sampling frequency converting device Pending JPH1155076A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9204920A JPH1155076A (en) 1997-07-30 1997-07-30 Sampling frequency converting device
US09/124,752 US6263036B1 (en) 1997-07-30 1998-07-29 Asynchronous signal input apparatus and sampling frequency conversion apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9204920A JPH1155076A (en) 1997-07-30 1997-07-30 Sampling frequency converting device

Publications (1)

Publication Number Publication Date
JPH1155076A true JPH1155076A (en) 1999-02-26

Family

ID=16498568

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9204920A Pending JPH1155076A (en) 1997-07-30 1997-07-30 Sampling frequency converting device

Country Status (1)

Country Link
JP (1) JPH1155076A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000079686A1 (en) * 1999-06-18 2000-12-28 Sakai, Yasue Digital-analog converter and method, and data interpolation device and method
WO2002071619A1 (en) * 2001-03-01 2002-09-12 Sakai, Yasue Digital-analog converter and converting method, data interpolator
WO2002071620A1 (en) * 2001-03-07 2002-09-12 Sakai, Yasue Interpolating function generating apparatus and method, digital-analog converter, data interpolator, program, and record medium
JP2006238044A (en) * 2005-02-24 2006-09-07 Yamaha Corp Transmission control unit and sampling frequency converting device
JP2006261812A (en) * 2005-03-15 2006-09-28 Yamaha Corp Transmission controller and device for converting sampling frequency
WO2014196180A1 (en) * 2013-06-03 2014-12-11 日本電気株式会社 Digital filter device and signal processing method

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000079686A1 (en) * 1999-06-18 2000-12-28 Sakai, Yasue Digital-analog converter and method, and data interpolation device and method
US6515608B1 (en) 1999-06-18 2003-02-04 Yasue Sakai Digital-analog converter and method, and data interpolation device and method
WO2002071619A1 (en) * 2001-03-01 2002-09-12 Sakai, Yasue Digital-analog converter and converting method, data interpolator
WO2002071620A1 (en) * 2001-03-07 2002-09-12 Sakai, Yasue Interpolating function generating apparatus and method, digital-analog converter, data interpolator, program, and record medium
US6700521B2 (en) 2001-03-07 2004-03-02 Neuro Solution Corp. Interpolating function generating apparatus and method, digital-analog converter, data interpolator, program, and record medium
JP2006238044A (en) * 2005-02-24 2006-09-07 Yamaha Corp Transmission control unit and sampling frequency converting device
JP2006261812A (en) * 2005-03-15 2006-09-28 Yamaha Corp Transmission controller and device for converting sampling frequency
JP4661284B2 (en) * 2005-03-15 2011-03-30 ヤマハ株式会社 Transmission control device
WO2014196180A1 (en) * 2013-06-03 2014-12-11 日本電気株式会社 Digital filter device and signal processing method
JPWO2014196180A1 (en) * 2013-06-03 2017-02-23 日本電気株式会社 Digital filter device and signal processing method
US10298209B2 (en) 2013-06-03 2019-05-21 Nec Corporation Digital filter device and signal processing method

Similar Documents

Publication Publication Date Title
US4715257A (en) Waveform generating device for electronic musical instruments
US20070046507A1 (en) Sampling rate converting method and circuit
US5949695A (en) Interpolator using a plurality of polynomial equations and associated methods
JPH0562495A (en) Sampling frequency converter
KR100374440B1 (en) Pitch shifter
US6263036B1 (en) Asynchronous signal input apparatus and sampling frequency conversion apparatus
US5570308A (en) Method of processing digital audio signals of different sampling rates
JP2001188600A5 (en)
JPH1155076A (en) Sampling frequency converting device
US5290965A (en) Asynchronous waveform generating device for use in an electronic musical instrument
US7609181B2 (en) Sampling frequency conversion apparatus
JP3097599B2 (en) Digital filter
US6772022B1 (en) Methods and apparatus for providing sample rate conversion between CD and DAT
JP2733403B2 (en) Digital filter for decimation
JPH0590897A (en) Oversampling filter circuit
JP4630056B2 (en) Convolution arithmetic circuit
US6489910B1 (en) Oversampling circuit and digital/analog converter
JPH0998069A (en) Fir type digital filter
JP3197648B2 (en) Digital filter
JP3172046B2 (en) Sampling rate converter
JP3545619B2 (en) Image arbitrary magnification processing apparatus and method
JP5072558B2 (en) Data processing device
JP3362796B2 (en) Music generator
JP3916856B2 (en) Noise generator
JP2004173183A (en) Transformation device for lagrange interpolation sampling rate