JPH03228421A - Digital filter - Google Patents

Digital filter

Info

Publication number
JPH03228421A
JPH03228421A JP2221290A JP2221290A JPH03228421A JP H03228421 A JPH03228421 A JP H03228421A JP 2221290 A JP2221290 A JP 2221290A JP 2221290 A JP2221290 A JP 2221290A JP H03228421 A JPH03228421 A JP H03228421A
Authority
JP
Japan
Prior art keywords
input data
data
data storage
register
digital filter
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
JP2221290A
Other languages
Japanese (ja)
Inventor
Koichi Hamashita
浜下 浩一
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.)
Asahi Kasei Microsystems Co Ltd
Asahi Kasei Microdevices Corp
Original Assignee
Asahi Kasei Microsystems Co Ltd
Asahi Kasei Microdevices 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 Asahi Kasei Microsystems Co Ltd, Asahi Kasei Microdevices Corp filed Critical Asahi Kasei Microsystems Co Ltd
Priority to JP2221290A priority Critical patent/JPH03228421A/en
Publication of JPH03228421A publication Critical patent/JPH03228421A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To realize this efficient FIR(finte impulse response) type digital filter whose capacity is small and whose occupancy area is small by providing plural input data storage parts, and a storage means for holding so as to compensate a phase difference between respective input data inputted to respective input data storage parts. CONSTITUTION:The digital filter is provided with the plural input data storage parts 40, 41 for executing alternately the setting and the outputting of input data, an arithmetic part 46 for executing the digital filter operation of the input data, and selective means 44, 45 for taking out cyclically the input data from each of plural input data storage parts 40, 41 and supplying it to the arithmetic part 46. Also, the filter is provided with a storage means 43 for holding the input data inputted to at least one of input data storage parts 40, 41 by the time corresponding to a phase difference so as to compensate the phase difference between respective input data inputted to respective input data storage part 40, 41. In such a manner, the efficient FIR type digital filter with a small area can be realized.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、オーディオ、通信、計測等の分野において、
近年盤んになりつつあるディジタル信号処理に使用する
ディジタル・フィルタに関するものである。
[Detailed Description of the Invention] [Industrial Application Field] The present invention is applicable to the fields of audio, communication, measurement, etc.
This paper relates to digital filters used in digital signal processing, which are becoming popular in recent years.

〔従来の技術〕[Conventional technology]

ディジタル・フィルタリング処理におけるフィルタの構
成としては、インパルス応答が有限のFIR型と、無限
に続<IIR型(無限インパルス応答)とがある。両者
のうち、FIR型フィルタは、IIR型に比べてそのフ
ィルタ次数(タップ数)は大きいが、群遅延歪が無く、
リミット・サイクル発振が発生しないという長所を有す
るため、近年のLSIの微細化と共に特にオーディオ分
野の用途に向けて発展してきている。このFIR型フィ
ルタにもサンプリング周波数をy:1に低くする為のデ
シメーション・フィルタと、逆に1:yに高くする為の
インターポレーション・フィルタとがあリ、前者は高速
のA/Dコンバータ(アナログ信号をディジタル信号に
変換する装置)と共に、後者は高速D/Aコンバータ(
ディジタル信号をアナログ信号に変換する装置)と共に
用いられている。
Filter configurations used in digital filtering processing include an FIR type with a finite impulse response and an infinite IIR type (infinite impulse response). Of the two, the FIR type filter has a larger filter order (number of taps) than the IIR type, but has no group delay distortion.
Since it has the advantage of not causing limit cycle oscillation, it has been developed especially for use in the audio field as LSIs have become smaller in recent years. This FIR type filter also has a decimation filter to lower the sampling frequency to y:1, and an interpolation filter to raise the sampling frequency to 1:y.The former is a high-speed A/D converter. (a device that converts analog signals into digital signals), the latter is a high-speed D/A converter (
(a device that converts digital signals into analog signals).

A/D変換の方式として、近年注目されてきたオーバー
・サンプリング・ノイズ・シェービング方式の一つであ
るΔΣ(デルタ・シグマ)変調方式は、アナログ信号を
高速の(例えば3072KHz =64X 48KH2
)の1ビットPDM (パルス・デンシティ・モジュレ
ーション)信号に変換し、量子化ノイズをパス・バンド
より高い周波数帯域にシフトさせるものである。そして
、このようにして高域シフトされた量子化ノイズは、後
段のディジタル・デシメーション・フィルタにより排除
して、例えば16ビツトの48KHz PCM(パルス
・コード・モジュレーション)信号に変換することが可
能であるが、このようなディジタル・デシメーション・
フィルタをいかに効率よく経済的に実現するがが、重要
な課題である。
The ΔΣ (delta-sigma) modulation method, which is one of the over-sampling noise shaving methods that has attracted attention in recent years as an A/D conversion method, converts analog signals into high-speed (for example, 3072KHz = 64X 48KH2)
) into a 1-bit PDM (pulse density modulation) signal, and shifts the quantization noise to a frequency band higher than the pass band. The quantization noise that has been shifted to a high frequency in this way can be removed by a digital decimation filter in the subsequent stage and converted into, for example, a 16-bit 48KHz PCM (pulse code modulation) signal. However, such digital decimation
An important issue is how to realize filters efficiently and economically.

上記のFIR型ディジタル・デシメーションフィルタが
行う処理は、入力ディジタル信号a、に対して、所望の
フィルタ特性を持ったフィルタ係数w。
The process performed by the above-mentioned FIR type digital decimation filter is to calculate a filter coefficient w having desired filter characteristics for an input digital signal a.

を乗累算することにより、出力としてのディジタル信号
J=ΣW、・a−、(rlはフィルタのタップ数)を得
ることであり、デシメーション比y:lの場合には、入
力データ・レートflの信号alが、出力データ・レー
トf、=(1/y)・f、の信号bJにデシメーション
される。このとき、デシメーション作用により、折り返
しノイズが信号帯域内に入り込まないように、フィルタ
係数W、が選ばれている。
By multiplying and accumulating , a digital signal J = ΣW, ·a-, (rl is the number of taps of the filter) is obtained as an output, and in the case of a decimation ratio y:l, the input data rate fl The signal al is decimated to a signal bJ with an output data rate f,=(1/y)·f. At this time, the filter coefficient W is selected so that aliasing noise does not enter the signal band due to the decimation effect.

第5図に実際のディジタルフィルタの構成概要を示す。FIG. 5 shows an outline of the configuration of an actual digital filter.

第5図において入力されたディジタル信号alは、1の
入力データ記憶部に必要タップ数分だけ貯えられ、2の
係数データ記憶部からの係数データw、と共に順次3の
乗累算器に送られ、タップ数回の乗算と累算を経て、出
力データb、が求められ、7の出力レジスタにより、f
、のデータ・レートにて出力される。4は上記各構成要
素l、2゜3.7のコントロール手段である。
In FIG. 5, the input digital signal al is stored in the input data storage section 1 for the required number of taps, and is sequentially sent to the multiplication accumulator 3 together with the coefficient data w from the coefficient data storage section 2. , through several taps of multiplication and accumulation, output data b is obtained, and output data f is determined by the output register 7.
is output at a data rate of . 4 is a control means for each of the above-mentioned components l, 2°3.7.

上記のうち、人力データ記憶部lの主たる機能としては
、デシメーション比をy:1.フィルタのタップ数をn
とすると、過去のn個のデータa(但し、1=−1〜−
n)を保持し、これらを、順次、適切なタイミングにて
、即ち、対応するフィルタ係数W、と共に、演算装置に
送り出すことと、次回の演算用のy個の新データa、 
(i=0〜(y−1))を取込み、a −6* y −
1〜a−0のy個の最古データを捨て、該次回演算用の
データとして、a、−1〜a O+ a −1〜a −
0* yを新たに準備することである。
Among the above, the main function of the manual data storage section l is to change the decimation ratio to y:1. The number of filter taps is n
Then, past n pieces of data a (however, 1=-1 to -
n) and sequentially send them at appropriate timings to the arithmetic device together with the corresponding filter coefficients W, and y new data a, for the next arithmetic operation.
Take in (i=0~(y-1)), a −6* y −
Discard the y oldest data from 1 to a-0 and use a, -1 to a O+ a -1 to a - as data for the next calculation.
0*y is newly prepared.

上記機能を実現する上では、シフト・レジスタや、RA
M(Random Access Memory)等の
使用が考えられ、特にディジタル・フィルタでは、リア
ルタイム性の要求と、演算処理手順が固定していること
とから、シフト・レジスタを使用する場合が多い。即ち
、シフト・レジスタの特徴である、データをシフト出力
しながら、データのシフト入力が可能な点を利用したも
ので、第6図の例では・自己ループと、新データ入力と
を選択する選択手段lOを用いて、nワード・シフト・
レジスタ9においてa−+〜a−0のデータを最終ワー
ドから出力しながら、選択手段10を通して第1ワード
目にフィード・バックし、次に選択手段lOを新データ
入力側に切り変えて、入力データレジスタ8からのyワ
ードのデータを新規入力しながら、シフト動作により、
最古のa−5*y−+〜a−nのy個のデータを捨てる
ことによって、a−+〜a −n + yをyワード分
シフトさせることが可能である。11は乗累算器、12
は係数データ記憶手段である(動作は第5図のそれらと
同様)。
To realize the above functions, shift registers, RA
M (Random Access Memory) or the like may be used. Particularly in digital filters, shift registers are often used due to real-time requirements and fixed arithmetic processing procedures. In other words, it takes advantage of the feature of shift registers, which allows data to be shifted in while shifting data out. n-word shift using means lO
While outputting the data of a-+ to a-0 from the last word in the register 9, it is fed back to the first word through the selection means 10, and then the selection means 10 is switched to the new data input side, and the data is inputted. While inputting new y-word data from data register 8, by shift operation,
By discarding the oldest y data of a-5*y-+ to a-n, it is possible to shift a-+ to a-n + y by y words. 11 is a multiplication accumulator, 12
is a coefficient data storage means (operation is similar to those shown in FIG. 5).

一方、FIR型フィルタの特徴としては、フィルタ係数
W、の左右対称性(W r =W ng W z ” 
W yl −r 4・・・)かあり、この性質を用いて
、乗累算回数を半減させる手法がある。即ち、第7図に
示す如く、14.15は各々n/2ワード・シフトレジ
スタであって、一方のレジスタ14の第1ワードには選
択手段16を通して入力データレジスタ13かものデー
タまたは同レジスタ14の最終ワードから出力されたデ
ータを入力する。他方のレジスタ15は両方向シフト可
能であって、演算時には前記一方のレジスタ14と同じ
シフト方向に最終ワードから第1ワードにデータをフィ
ードバックし、データ更新時には前記とは反対のシフト
方向にシフトさせ前記一方のレジスタ14の最終ワード
からのデータを入力して不必要な最古のデータを捨てる
。17は前段加算器であって、一方のレジスタ14の最
終ワードからの出力データおよび他方のレジスタ15の
同一のシフト方向の部分の最終ワードからの出力データ
を加算し、乗累算器19の一方の入力端に入力する。1
8は係数データ記憶手段、19は乗累算器である。
On the other hand, the FIR type filter is characterized by the left-right symmetry of the filter coefficient W (W r = W ng W z ”
W yl -r 4...), and there is a method that uses this property to halve the number of multiplications and accumulations. That is, as shown in FIG. 7, 14 and 15 are n/2 word shift registers, and the first word of one register 14 receives data from the input data register 13 or the same register 14 through the selection means 16. Input the data output from the last word of . The other register 15 is shiftable in both directions, and during operation, data is fed back from the last word to the first word in the same shift direction as the one register 14, and when data is updated, it is shifted in the opposite shift direction. Data from the last word of one register 14 is input and unnecessary oldest data is discarded. 17 is a pre-stage adder which adds the output data from the final word of one register 14 and the output data from the final word of the part in the same shift direction of the other register 15; input to the input end of 1
8 is a coefficient data storage means, and 19 is a multiplication accumulator.

このような構成によればa−+〜a−fiのデータを、
17の前段加算器において、各対称成分毎に先に加算(
a−++a−n、a−a”a−n*++ ・・・)する
ことができ、この結果と係数データ記憶手段18からの
W〜W1/2との乗累算を乗累算器19において行う手
法であって、これをいわゆる前段加算型という。該前段
加算型は、乗累算回数を半減させることができるが、時
系列的に対称なデータを先に加算することが必要である
為、後半部分(第n/2 +1〜第nワード目)に対応
するシフト・レジスタ15として、両方向シフトが可能
な、いわゆる可逆シフト・レジスタを用いる必要が生じ
、この場合、可逆シフト性を持たせたレジスタ・セルは
、トランジスタの追加等により、面積や回路規模が従来
の一方向性のものの約2倍近く必要になり、タップ数の
大きなフィルタを実現する為には、非経済的であった。
According to such a configuration, the data of a-+ to a-fi are
In the 17 pre-stage adders, each symmetrical component is first added (
a−++a−n, a−a”a−n*++ . . This method is called the front-stage addition type.The front-stage addition type can reduce the number of multiplications and accumulations by half, but it is necessary to add chronologically symmetric data first. Therefore, it becomes necessary to use a so-called reversible shift register that can shift in both directions as the shift register 15 corresponding to the latter half (n/2+1 to n-th word). Due to the addition of transistors, etc., the area and circuit size of a resistor cell with a multi-channel resistor is approximately twice that of a conventional unidirectional resistor cell, making it uneconomical to realize a filter with a large number of taps. Ta.

〔発明が解決しようとする課題J データ記憶手段としてシフト・レジスタを用いた前述の
2つのディジタル・フィルタは、いずれも一長一短であ
る。即ち、前者の前段加算を用いないものは、シフト・
レジスタ部の制御が簡易で小面積ですむが、乗累算回数
が多く、タップ数nが大きいフィルターにおいては、後
者の2倍の乗累算スピードが必要である。また、後者の
ものは、前者の半分の乗累算スピードで良いが、シフト
・レジスタ部の面積が約1.5倍となってしまう。
[Problem to be Solved by the Invention J The above-mentioned two digital filters that use shift registers as data storage means both have advantages and disadvantages. In other words, the former method that does not use pre-addition uses shift and
Although the control of the register section is simple and requires a small area, in a filter in which the number of multiplications and accumulations is large and the number of taps n is large, a multiplication and accumulation speed twice as high as that of the latter is required. Furthermore, although the latter may require half the multiplication and accumulation speed of the former, the area of the shift register section becomes approximately 1.5 times as large.

さらに、前述のディジタル・フィルタでは、演算部に演
算期間の他に休止期間があり、必ずしも効率的な動作で
はなかった。
Furthermore, in the above-mentioned digital filter, the arithmetic section has a rest period in addition to the calculation period, and the operation is not necessarily efficient.

そこで本発明の目的は、以上のような問題を解決し、小
面積で効率的なディジタル・フィルタを提供することに
ある。
SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problems and provide an efficient digital filter with a small area.

〔課題を解決するための手段〕[Means to solve the problem]

上記目的を達成するため本発明は、入力データのセット
および出力を交互に行なう複数の入力データ記憶部と、
入力データをディジタル・フィルタ演算する演算部と、
前記複数の入力データ記憶部の各々から巡回的に入力デ
ータをとり出して前記演算部に供給する選択手段と、前
記各入力データ記憶部に入力される各入力データ間の位
相差を補償するように少なくとも1つの前記入力データ
H己憶部に入力する入力データを当該位相差に相当する
時間分保持する記憶手段とを具えたことを特徴とする。
In order to achieve the above object, the present invention includes a plurality of input data storage units that alternately set and output input data;
an arithmetic unit that performs a digital filter operation on input data;
selection means for cyclically extracting input data from each of the plurality of input data storage units and supplying the input data to the calculation unit; and compensation for a phase difference between each input data input to each of the input data storage units. and storage means for holding input data input to at least one of the input data storage units for a time corresponding to the phase difference.

〔作 用1 本発明によれば、上記構成によって、小容量で占有面積
の少ない、効率的なFIR型ディジタル・フィルタを提
供できる。
[Function 1] According to the present invention, with the above configuration, it is possible to provide an efficient FIR type digital filter with a small capacity and a small occupied area.

〔実施例〕〔Example〕

第1の実施例として、本発明を、タップ数nがn=12
8.デシメーション比が4 (y:n=4:l)、  
1ワードが16ビツトのPCMデータにて構成される、
FIR型ディジタル・デシメーション・フィルタに適用
した場合を第1図の構成図及び第2図の各クロックタイ
ミング図を用いて説明する。
As a first embodiment of the present invention, the number of taps n is n=12.
8. Decimation ratio is 4 (y:n=4:l),
One word consists of 16-bit PCM data.
A case where the present invention is applied to an FIR type digital decimation filter will be explained using the configuration diagram in FIG. 1 and the clock timing diagram in FIG. 2.

第1図において、データ・レートf、にて、当該ディジ
タル・デシメーション・フィルタに入力されるデータa
、は、36のコントロール部にて作られたCKIなるコ
ントロール・クロックにより、常時f、のデータ・レー
トにて、20の4ワードのシフトレジスタに取り込まれ
る。即ち、T、 = 1/f、なる1演算周期間に、C
KIの4回のクロックにより、データaO〜a3が順次
シフトレジスタ20にシフト入力され、第4〜第1ワー
ド目に各々貯えられる。
In FIG. 1, data a is input to the digital decimation filter at a data rate f.
, are always taken into the 20 4-word shift registers at a data rate of f by a control clock called CKI generated by the 36 control section. That is, during one calculation period, T, = 1/f, C
Data aO to a3 are sequentially shifted into the shift register 20 by four clocks of KI and stored in the fourth to first words, respectively.

この期間の初期時点においては、前回までの繰り返し動
作の結果として、過去に取込まれたa−+〜a−128
の128ワードの過去データが、21のAシフトレジス
タと、23のBシフトレジスタとに各々64ワードずつ
貯えられており、Aシフトレジスタ21内では、シフト
方向にそった第1から第64ワードの各位置にa−+か
らa−64の過去データが順に貯えられており、Bシフ
トレジスタ23においては、シフト方向にそった第1か
ら第64ワードの各位置にa−1111からa−6,の
過去データが順に貯えられている。この時点にて、Bシ
フトレジスタ23内の記憶データの時系列順序が、シフ
ト方向と逆になっているのは、22のCシフトレジスタ
と、27の並列転送手段とを用いて、既に前回までの過
去動作により得られたものであり、以下に示す今回サイ
クルの動作と同様であって、この動作説明から容易にで
きる理解できるものである。Cシフトレジスタ22は、
当該フィルタのデシメーション比に応じたyワード、即
ち4ワードの容量を有する一方向シフト機能のみを持つ
もので、CR2あるいは、GK3′のいずれか一方のク
ロックによりシフト及びデータ取り込みを行う。
At the beginning of this period, a-+ to a-128 that have been captured in the past as a result of the repeated operation up to the previous time.
128 words of past data are stored in 21 A shift registers and 23 B shift registers with 64 words each, and in A shift register 21, the 1st to 64th words along the shift direction are stored. The past data from a-+ to a-64 is stored in order in each position, and in the B shift register 23, the past data from a-1111 to a-6, past data is stored in order. At this point, the chronological order of the stored data in the B shift register 23 is opposite to the shift direction because it has already been used in the previous time using the C shift register 22 and the parallel transfer means 27. This was obtained from the past operation of , and is similar to the operation of the current cycle shown below, and can be easily understood from this explanation of the operation. The C shift register 22 is
It has only a one-way shift function and has a capacity of y words, that is, 4 words, according to the decimation ratio of the filter, and shifts and data is taken in by the clock of either CR2 or GK3'.

第2図には、今回の1演算周期における各クロックCK
I〜CK6及びCK3′のタイミングを示してあり、各
シフトレジスタの動作は、各クロックの立上り(Ris
ing)にてマスター側への入力(即ち、データ取込み
)を、立下り(Falling)にてスレーブ側への転
送(即ち、データ出力)を各々表わしている。第1期間
においては、CR2とCR4の各64パルスにより、A
およびBシフトレジスタ21および23は64回のシフ
ト動作を行い、各々28と29のデータラインより、3
2の前段加算器にデータを送り出すと共に、24と25
の自己ループ用データラインを通して出力データを順次
フィードバックしていく。この際、32の前段加算器は
、(a−S4+a−asL(a−ss+a−as)+”
’+  (a−r+a−Iza) という64回の加算
を行い、33の乗算器へ次々とデータを送り出す。33
の乗算器と34の累算器は、上記の64個の前段加算さ
れたデータと、係数データ記憶部31からのフィルター
係数Vls4〜W1との64回の乗累算を行い、b、=
Σ:(a−++a+−+ze−t+)・wlなる結果b
、を求め、35の出力レジスタへと送出する。
Figure 2 shows each clock CK in this one calculation cycle.
The timings of I to CK6 and CK3' are shown, and the operation of each shift register is determined by the rising edge (Ris) of each clock.
ing) indicates input to the master side (that is, data capture), and falling indicates transfer to the slave side (that is, data output). In the first period, A
and B shift registers 21 and 23 perform 64 shift operations, and from data lines 28 and 29, respectively, 3
In addition to sending data to the pre-stage adder of 2, 24 and 25
The output data is sequentially fed back through the self-loop data line. At this time, the 32 pre-stage adders are (a-S4+a-asL(a-ss+a-as)+"
'+(a-r+a-Iza)' is added 64 times, and data is sent one after another to 33 multipliers. 33
The multiplier and 34 accumulators multiply and accumulate the 64 pre-added data and the filter coefficients Vls4 to W1 from the coefficient data storage unit 31 64 times, and b,=
Σ: (a-++a+-+ze-t+)・wl result b
, and sends it to the output register 35.

Cレジスタ22用クロツクとしてCR3を使用した場合
には、Cレジスタ22は、該第1期間の最初の4個のク
ロックパルスにより、30のデータ・ライン経由にて、
Aレジスタ21からの最初の4個の所カデータa−a4
+a−ss+a−s□+a−81を順に取り込み、最終
的には、第4〜第1ワードの各位置にa−64〜ト、1
を各々記憶した状態にて停止する。
If CR3 is used as the clock for C register 22, C register 22 will be clocked via 30 data lines by the first four clock pulses of the first period.
First four location data a-a4 from A register 21
+a-ss+a-s□+a-81 are taken in order, and finally, a-64~g, 1
It stops in the state where each is memorized.

次の第2期間においては、Aレジスタ21はCR2によ
りデータを4ワ一ド分シフトし、Bレジスタ23は、C
R4により64−4=60ワ一ド分シフトする。
In the next second period, the A register 21 shifts the data by 4 words by CR2, and the B register 23 shifts the data by 4 words by CR2.
Shift by 64-4=60 words by R4.

これらのシフト動作により、Aレジスタ21内では、a
−+〜a−s。のデータが第5〜第64ワードの位置へ
シフト移動し、Bレジスタ23内では、25の自己ルー
プ用データラインを経由してa−+ z4〜a−asの
データが第1〜第60ワード位置へシフト移動し、a−
Iza 〜a−+z5のデータが第61〜第64ワード
の位置へシフト移動する。Cレジスタ用クロックとして
CK3′を用いた場合には、この第2期間の最初の4ク
ロツクにより、a−64〜a−6,の4個のデータを、
CR2を使用した前述の場合と同様にCレジスタ22に
とり込むことが可能である。
Due to these shift operations, in the A register 21, a
-+~a-s. data is shifted to the 5th to 64th word positions, and in the B register 23, the data from a-+z4 to a-as is shifted to the 1st to 60th word positions via 25 self-loop data lines. Shift to position, a-
The data from Iza to a-+z5 is shifted to the 61st to 64th word positions. When CK3' is used as the clock for the C register, the first four clocks of this second period send the four data a-64 to a-6,
It is possible to import it into the C register 22 in the same way as in the case described above using CR2.

以上の動作終了後、次回の演算スタートまでの間に、C
レジスタ22内の4個のデータa −84〜a −s 
rは、CR6により、27の並列転送手段を経由して、
Bレジスタ23の第61〜第64ワードへ送り込まれ、
a−+□8〜a−+*4のデータを書き換える。即ち、
Cレジスタ22の第4.第3.第2.第1の各ワードか
ら、各々、Bレジスタ23の第61.第62.第63゜
第64の各ワード位置へと、以後のデータシフト方向が
逆転するように書換え転送を行う。次に、この第2期間
の終了直前の、CKIがLowになった期間、即ち、2
0のシフトレジスタに新たなる4ケのデータa3〜a0
が、その第1〜第4ワードのスレーブ側に貯えられてい
る時に、26の並列転送手段がCR5のクロックにより
、a3〜a0のデータをAレジスタ21の第1〜第4の
ワード位置に転送し、データ書換えを行う。
After the above operations are completed, until the next calculation starts, C
4 data a-84 to a-s in register 22
r is transferred by CR6 via 27 parallel transfer means,
It is sent to the 61st to 64th words of the B register 23,
Rewrite the data of a-+□8 to a-+*4. That is,
The fourth .C register 22. Third. Second. From each first word, respectively, the 61st . No. 62. Rewrite transfer is performed to each of the 63rd and 64th word positions so that the subsequent data shift direction is reversed. Next, immediately before the end of this second period, the period in which CKI becomes Low, that is, 2
4 new data a3 to a0 in shift register 0
is stored in the slave side of the first to fourth words, the 26 parallel transfer means transfer the data of a3 to a0 to the first to fourth word positions of the A register 21 by the clock of CR5. and rewrite the data.

以上の一連の1演算周期動作により、a、〜a−+□8
のデータを用いた演算を行い、次回演算の為の新たなデ
ータ・セットとして、Aレジスタ21の第1〜第64の
ワード位置にas〜ao、 a−+ ”a−s。
By the above series of one calculation cycle operation, a, ~a-+□8
As a new data set for the next operation, as~ao, a-+ ``a-s'' are placed in the 1st to 64th word positions of the A register 21.

のデータをBレジスタ23の第1〜第64のワード位置
に、a−+ z4〜a−6,のデータを記憶し直すこと
ができ、次回サイクルの演算用データ準備が完了する。
The data of a-+z4 to a-6 can be re-stored in the first to sixty-fourth word positions of the B register 23, and data preparation for the next cycle is completed.

以上の動作を次々に繰り返すことにより、前段加算方式
を用いた、乗累算回数の少ないディジタルフィルタが実
現される。
By repeating the above operations one after another, a digital filter using the front-stage addition method and having a small number of multiplications and accumulations can be realized.

尚、上記の実施例においては、1ワードのデータ単位を
一例として16ビツトとしたが、これは何ビットの場合
でも同じで、基本的には1ビット単位以上のすべての場
合に適用し得る。
In the above embodiment, the data unit of one word is 16 bits as an example, but this is the same no matter how many bits there are, and basically it can be applied to all cases where the data unit is 1 bit or more.

第3図は第2の実施例としてのオーディオ分野等におい
て用いる2チヤンネル用デイジタルフイルターの例を示
す。
FIG. 3 shows an example of a two-channel digital filter used in the audio field as a second embodiment.

40と41は、上記第1図および第2図に示した実施例
における各構成要素20〜27と同じ構成のデータ記憶
部であり、各々をLeft、 Rightの各チャンネ
ル用とする。42のコントロール部がらは、Leftチ
ャンネル用のデータ記憶部40へCKIL−CK6L(
CKI〜CK6と同じ)を、同Rightチャンネル用
データ記憶部41へはCKIR−CK6R(CKI−C
K6と同じ)を供給するが、Rightチャンネルの演
算周期はLeftチャンネルの演算周期に対して180
度位相を遅らせており、そのコントロール状態を、第4
図に示す(詳細説明は後述)。
Reference numerals 40 and 41 designate data storage units having the same configuration as each of the constituent elements 20 to 27 in the embodiment shown in FIGS. 1 and 2, and each is used for each of the Left and Right channels. 42 control section CKIL-CK6L (
CKI to CK6), and CKIR-CK6R (CKI-C
K6), but the calculation period of the Right channel is 180 times the calculation period of the Left channel.
The control state is controlled by the fourth phase.
As shown in the figure (detailed explanation will be given later).

第3図において、データ記憶部4oおよび41がらのデ
ータライン51.52および53.54は上記実施例の
データライン28.29と同様である。44と45は、
選択手段であり、コントロール部42からのクロックC
K7がHighO時にはLeft側データ出カライン5
1、52を55と56の演算部(46)用データ入力ラ
インに接続し、LowのときにはRight側のデータ
ライン53.54をデータ入力ライン55.56に接続
する。
In FIG. 3, the data lines 51.52 and 53.54 of the data stores 4o and 41 are similar to the data lines 28.29 of the embodiment described above. 44 and 45 are
Clock C from the control section 42 is a selection means.
When K7 is High, the left side data output line 5
1 and 52 are connected to the data input lines for the arithmetic unit (46) of 55 and 56, and when the line is low, the data lines 53 and 54 on the right side are connected to the data input line 55 and 56.

46の演算部は、上記実施例(第1図)の前段加算器3
2と乗算器33と累算器34を含み、データ入力ライン
55と56から来るデータに対して、下記1)j、L、
”Σ (a−i、 L”al−129411,L  )
  ・W、bJ、ll”  Σ  (a−i、ll”a
l−1294+1.II  )   ”  wiの演算
を行い、b、、 L+ bj、 !1を交互に出力する
The arithmetic unit 46 is the pre-stage adder 3 of the above embodiment (FIG. 1).
2, multiplier 33, and accumulator 34, and for the data coming from data input lines 55 and 56, the following 1) j, L,
"Σ (a-i, L"al-129411,L)
・W, bJ, ll” Σ (a-i, ll”a
l-1294+1. II) ” Perform the calculation wi and output b,, L+ bj, !1 alternately.

前述の1チヤンネルのみの実施例においては、演算部は
第1期間にて64回の加算と乗累算を行い、第2期間で
は休止していたが、第3図に示す演算部46は、b、、
 L演算周期の第1期間においてはLeftチャンネル
の演算を行い、同す、、L演算周期の第2期間において
は、(即ち、b、、Rの第1期間でもある) 、Rig
htチャンネルの演算を行う。従って、46の演算部は
、両チャンネルの演算を、休止期間をとりことな(、交
互に効率的にタイム・シェアして行うことができる。第
3図中、Rightチャンネル側の入力データライン4
9.50中に入れた43のシフトレジスタは、y/2=
2(y:4)ワードより成るもので、両チャンネル間の
位相差を補正する為のものである。即ち、第4図から見
れば、Right側の、演算時期が、Left側に比べ
てhT、(180度)遅れていることにより、演算に使
用されるデータa+、 *は、シフトレジスタ43を用
いない場合には、al、 Lに比べてy/2:2ワ一ド
分の時間ずれを持ってしまう。この時間ずれは、丁度、
CK7の180度の位相ずれのように見え、特にオーデ
ィオ用途では好ましくない。従って、シフトレジスタ4
3により、Right側のデータ記憶部41へのデータ
入力をy/2=2ワード分だけ遅らせ、演算部46が実
際に演算を行う為のデータのai、Lとal、 IIと
を、同時サンプリングデータとして処理することにより
、出力されるbJ、Lとす4.3が同時サンプリングデ
ータとなるように調整したものである。
In the above-described embodiment with only one channel, the arithmetic unit performed 64 additions, multiplications, and accumulations in the first period, and paused in the second period, but the arithmetic unit 46 shown in FIG. b...
In the first period of the L calculation period, the calculation of the Left channel is performed, and in the second period of the L calculation period (that is, it is also the first period of b,,R), Rig
Perform calculations on the ht channel. Therefore, the calculation unit 46 can perform calculations on both channels without taking a pause period (and by sharing time efficiently alternately. In FIG. 3, the input data line 4 on the Right channel side
9. The 43 shift registers put in 50 are y/2=
It consists of 2 (y:4) words and is used to correct the phase difference between both channels. That is, as seen from FIG. 4, the calculation timing on the Right side is delayed by hT (180 degrees) compared to the Left side, so that the data a+, * used in the calculation is transferred using the shift register 43. If not, there will be a time difference of y/2:2 words compared to al and L. This time difference is exactly
It looks like a 180 degree phase shift for CK7, which is particularly undesirable for audio applications. Therefore, shift register 4
3, the data input to the data storage unit 41 on the Right side is delayed by y/2=2 words, and data ai, L, al, and II for the actual calculation by the calculation unit 46 are simultaneously sampled. By processing it as data, it is adjusted so that the output bJ, L, and 4.3 become simultaneous sampling data.

なお、3チャンネル以上の場合にも同様の効果が得られ
る。例えば3チヤンネルの場合にはy/3ワード、 2
y/3ワードのシフトレジスタを用いればよい。
Note that similar effects can be obtained in the case of three or more channels. For example, in the case of 3 channels, y/3 words, 2
A y/3 word shift register may be used.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、小面積で効率的であり、特に複数チャ
ンネルのデータを同一位相で処理することができるFI
R型ディジタル・フィルタを実現できる。
According to the present invention, the FI is small in area and efficient, and in particular can process data of multiple channels in the same phase.
An R-type digital filter can be realized.

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

第1図は、本発明を、単一の乗累算器を用いたディジタ
ルフィルタの実現に適用した実施例を示すブロック図、 第2図は、第1図に示す一実施例に適用した各コントロ
ール・クロック信号のタイミングの一例を示す図、 第3図は、本発明を用いて、単一の乗累算をタイムシェ
ア使用して2チヤンネル用のディジタルフィルタを実現
した場合の実施例を示すブロック図。 第4図は同実施例におけるタイミング図、第5図は実際
のディジタル・デシメーション・フィルタの構成を示す
為のブロック図、第6図と第7図は従来技術によりディ
ジタル・フィルタの構成を示すものであって、 第6図は前段加算を用いず、n−fJ回の乗累算を行う
場合のブロック図、 第7図はn/2ワードの可逆シフトレジスタを用いて前
段加算を行い、n/2・f4回の乗累算ですむ場合のブ
ロック図である。 1.40.41・・・入力データ記憶部、2 、12.
18.31.47・・・係数データ記憶部、4.36.
42・・・コントロール部、3.11.19・・・乗累
算器、 5.33・・・乗算器、 6.34・・・累算器、 17.32・・・前段加算器、 7.35・・・出力レジスタ、 8.13.20・・・yワードまたはyピッデータレジ
スタ、 9・・・nワードのシフトレジスタ、 10.16.44.45・・・選択手段、14・・・n
/2ワードの一方向シフトレジスタ、トの入力 15・・・n/2ワードの可逆シフトレジスタ、21・
・・Aシフトレジスタ、 23・・・Bシフトレジスタ、 22・・・yワードの方向転換用シフトレジスタ、 26・・・並列書換転送手段 27・・・方向転換用並列書換転送手段、24、25.
28.29.30.37.3g、 39.48〜59・
・・データライン、 GKI〜CK7.CKIL〜CK6L、 CKIR〜C
K6R・・・コントロール信号、 43・・・チャンネル間位相調整用シフトレジスタ。 第 図 第 2 図 第 図 K7 第 図 デイソクル入カイ84 第 図
FIG. 1 is a block diagram showing an embodiment in which the present invention is applied to realize a digital filter using a single multiplier-accumulator, and FIG. 2 is a block diagram showing each embodiment applied to the embodiment shown in FIG. A diagram showing an example of the timing of a control clock signal. FIG. 3 shows an embodiment in which the present invention is used to realize a two-channel digital filter using a single multiplication and accumulation method using time sharing. Block Diagram. FIG. 4 is a timing diagram of the same embodiment, FIG. 5 is a block diagram showing the configuration of an actual digital decimation filter, and FIGS. 6 and 7 are diagrams showing the configuration of a digital filter according to the prior art. Fig. 6 is a block diagram when performing n-fJ multiplications and accumulations without using pre-stage addition, and Fig. 7 is a block diagram in which pre-stage addition is performed using an n/2 word reversible shift register, and It is a block diagram in the case where /2·f4 times of multiplication and accumulation are sufficient. 1.40.41... input data storage section, 2, 12.
18.31.47... Coefficient data storage unit, 4.36.
42... Control unit, 3.11.19... Multiplier and accumulator, 5.33... Multiplier, 6.34... Accumulator, 17.32... Pre-stage adder, 7 .35...Output register, 8.13.20...Y word or y pit data register, 9...N word shift register, 10.16.44.45...Selection means, 14...・n
/2-word unidirectional shift register, input 15... n/2-word reversible shift register, 21.
...A shift register, 23...B shift register, 22...Y word direction change shift register, 26...Parallel rewrite transfer means 27...Direction change parallel rewrite transfer means, 24, 25 ..
28.29.30.37.3g, 39.48~59・
...Data line, GKI~CK7. CKIL~CK6L, CKIR~C
K6R...Control signal, 43...Shift register for inter-channel phase adjustment. Figure 2 Figure K7 Figure 84

Claims (1)

【特許請求の範囲】 1)入力データのセットおよび出力を交互に行なう複数
の入力データ記憶部と、 入力データをディジタル・フィルタ演算する演算部と、 前記複数の入力データ記憶部の各々から巡回的に入力デ
ータをとり出して前記演算部に供給する選択手段と、前
記各入力データ記憶部に入力される各入力データ間の位
相差を補償するように少なくとも1つの前記入力データ
記憶部に入力する入力データを当該位相差に相当する時
間分保持する記憶手段とを具えたことを特徴とするディ
ジタル・フィルタ。
[Scope of Claims] 1) A plurality of input data storage units that alternately set and output input data, an arithmetic unit that performs a digital filter operation on the input data, and a cyclic output from each of the plurality of input data storage units. selecting means for extracting input data and supplying it to the arithmetic unit; and input data to at least one of the input data storage units so as to compensate for a phase difference between each input data input to each of the input data storage units. A digital filter comprising: storage means for holding input data for a period of time corresponding to the phase difference.
JP2221290A 1990-02-02 1990-02-02 Digital filter Pending JPH03228421A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2221290A JPH03228421A (en) 1990-02-02 1990-02-02 Digital filter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2221290A JPH03228421A (en) 1990-02-02 1990-02-02 Digital filter

Publications (1)

Publication Number Publication Date
JPH03228421A true JPH03228421A (en) 1991-10-09

Family

ID=12076497

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2221290A Pending JPH03228421A (en) 1990-02-02 1990-02-02 Digital filter

Country Status (1)

Country Link
JP (1) JPH03228421A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5513223A (en) * 1993-11-16 1996-04-30 Nec Corporation FIR digital filter and method for signal processing thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5513223A (en) * 1993-11-16 1996-04-30 Nec Corporation FIR digital filter and method for signal processing thereof

Similar Documents

Publication Publication Date Title
US4777612A (en) Digital signal processing apparatus having a digital filter
US5696708A (en) Digital filter with decimated frequency response
US7492848B2 (en) Method and apparatus for efficient multi-stage FIR filters
JPH0828649B2 (en) Digital filter
JPH036689B2 (en)
KR20080042729A (en) Decimation filter
WO2000062421A1 (en) Digital filter and method for performing a multiplication based on a look-up table
JPH07202633A (en) Digital filter and oversampling type analog/digital converter using the same
US5805479A (en) Apparatus and method for filtering digital signals
EP0882326A2 (en) Decimation method and decimation filter
JPH03228421A (en) Digital filter
JPH03228420A (en) Digital filter
JP3095394B2 (en) Data storage device
US7013319B1 (en) Digital filter methods and structures for increased processing rates
JP2911515B2 (en) A / D converter
JP3095395B2 (en) Digital filter
KR100401131B1 (en) Decimation Filter for an Over Sampling Converter
JP3258938B2 (en) Decimation filter
KR100789892B1 (en) Analog filter
CN115085693B (en) Multi-channel multi-phase interpolation processing architecture
JP2628506B2 (en) Digital filter
TWI482427B (en) Time division decimation filter bank and time division decimation filtering method
JP2864597B2 (en) Digital arithmetic circuit
JP2880580B2 (en) Acyclic digital filter circuit
JPH0716145B2 (en) Digital transversal filter