JP2001345678A - Fir filter - Google Patents

Fir filter

Info

Publication number
JP2001345678A
JP2001345678A JP2000165699A JP2000165699A JP2001345678A JP 2001345678 A JP2001345678 A JP 2001345678A JP 2000165699 A JP2000165699 A JP 2000165699A JP 2000165699 A JP2000165699 A JP 2000165699A JP 2001345678 A JP2001345678 A JP 2001345678A
Authority
JP
Japan
Prior art keywords
data
circuit
value
clock
register
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
JP2000165699A
Other languages
Japanese (ja)
Inventor
Yutaka Nakamura
豊 中村
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.)
Rohm Co Ltd
Original Assignee
Rohm Co Ltd
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 Rohm Co Ltd filed Critical Rohm Co Ltd
Priority to JP2000165699A priority Critical patent/JP2001345678A/en
Publication of JP2001345678A publication Critical patent/JP2001345678A/en
Pending legal-status Critical Current

Links

Landscapes

  • Filters That Use Time-Delay Elements (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce the clock frequency for energy saving in a data holding circuit. SOLUTION: An FIR filter includes data holding circuits 10 to 13, in which digital data X is sequentially entered as an input, fed sequentially, and stored in plurality; and operation circuits 20 to 40 for calculating a product-sum operation value Y(n) of the plurality of data X(n) to X(n-3) and given coefficient groups B0 to B3. In the data input and sequential feeding, the data holding circuits operate by dividing the data into a plurality of group lines 10+12 and 11+13. The operation circuit has a coefficient value selecting circuit 40 and thereby a coefficient value is selected from the coefficient groups corresponding to the dividing method during the product-sum operation.

Description

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

【0001】[0001]

【発明の属する技術分野】この発明は、デジタル線形フ
ィルタのうちの有限インパルス応答フィルタ(FIRフ
ィルタ)に関し、詳しくは、その回路の消費電力を少な
くする技術に関する。FIRフィルタは、音声信号処理
等の各種信号処理回路に好んで採用され、しばしば信号
処理用LSIの一部に組み込まれる。特に、携帯電話機
等にはFIRフィルタが複数個含まれていることが多
い。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a finite impulse response filter (FIR filter) among digital linear filters, and more particularly, to a technique for reducing the power consumption of the circuit. The FIR filter is preferably employed in various signal processing circuits such as audio signal processing, and is often incorporated in a part of a signal processing LSI. In particular, mobile phones and the like often include a plurality of FIR filters.

【0002】[0002]

【従来の技術】図7に回路図を示したFIRフィルタ
は、従来のFIRフィルタの典型例であり、デジタルデ
ータを逐次入力するとともに順送りして複数保持するデ
ータ保持回路と、その複数データと所定の係数群との積
和演算値を算出する演算回路とを備えたFIRフィルタ
において、データ保持回路が、データの順送りを単一の
系列で行い、演算回路が、その系列における各段階のデ
ータと上記係数群における各係数値とを固定的に対応付
けた状態で積和演算を行うとともにその総和を採る、よ
うにしたものである。
2. Description of the Related Art An FIR filter whose circuit diagram is shown in FIG. 7 is a typical example of a conventional FIR filter, and a data holding circuit for sequentially inputting digital data and sequentially holding a plurality of digital data and holding a plurality of digital data. In a FIR filter comprising an arithmetic circuit for calculating a product-sum operation value with a group of coefficients, the data holding circuit performs data forwarding in a single sequence, and the arithmetic circuit compares data at each stage in the sequence with The product-sum operation is performed in a state where each coefficient value in the coefficient group is fixedly associated with each other, and the sum thereof is obtained.

【0003】詳しくは、入力されるデジタルデータが1
ワード当たりmビット(図7(b)では4ビット)であ
って、1ワードずつ逐次に例えばn番目あたりではデー
タX(n−3),データX(n−2),データX(n−
1),データX(n),データX(n+1)といった順
でデータが入力される状況下で、これらのデータ列に基
づいて積和演算値Y(n)を算出するk次の例えば3次
のFIRフィルタを具体例に挙げて説明する。そうする
と、そのような場合、データ保持回路10〜13によっ
て、入力したばかりのデータX(n)に加えてk回前ま
でのデータX(n−1),データX(n−2),データ
X(n−3)が一列に並んだ状態で即ち一系列に保持さ
れるとともに、それら複数データX(n)〜X(n−
3)の値が同時に演算回路へ送出され、演算回路では、
それら(k+1)個のデータXとやはり(k+1)個の
係数値B0〜B3とに基づいて積和演算値Y(n)=
{B0×X(n)+B1×X(n−1)+B2×X(n
−2)+B3×X(n−3)}が算出される。
More specifically, when digital data to be input is 1
There are m bits per word (four bits in FIG. 7 (b)), and data X (n-3), data X (n-2), and data X (n-
Under the situation where data is input in the order of 1), data X (n), data X (n + 1), a k-th order, for example, a third order, for calculating a product-sum operation value Y (n) based on these data strings The FIR filter will be described as a specific example. Then, in such a case, the data holding circuits 10 to 13 add the data X (n−1), data X (n−2), and data X up to k times before in addition to the data X (n) just input. (N-3) are held in a line, that is, in a series, and the plurality of data X (n) to X (n-
The value of 3) is sent to the arithmetic circuit at the same time.
Based on the (k + 1) data X and the (k + 1) coefficient values B0 to B3, the product-sum operation value Y (n) =
{B0 × X (n) + B1 × X (n−1) + B2 × X (n
−2) + B3 × X (n−3)} is calculated.

【0004】かかる処理を基本クロックCLKの各パル
ス毎に繰り返して行うために、データ保持回路10〜1
3は、クロックCLKに同期してラッチ動作を行うmビ
ットのレジスタ10,11,12,13を(k+1)個
以上具えていて、その列び順にワード単位で即ちmビッ
トパラレルでデータXを順送りするようになっている。
また、演算回路には、上式の各項に対応して各々B0×
X(n),B1×X(n−1),B2×X(n−2),
B3×X(n−3)を算出する(k+1)個の乗算回路
20,21,22,23に加えて、それらの総和を採る
総和回路30も設けられている。総和回路30は、乗算
回路の出力数(k+1)が3以上の場合、2入力の加算
回路31〜33を多段に組み合わせて具体化されること
が多い。さらに、係数値B0〜B3(計数群)は、アプ
リケーションで必要とされるフィルタリング特性に対応
して決められ、mビットの固定値にされることが多い
が、他のビット数にされたり、可変な設定値にされるこ
ともある。
In order to repeat such processing for each pulse of the basic clock CLK, the data holding circuits 10-1
No. 3 has (k + 1) or more m-bit registers 10, 11, 12, and 13 that perform a latch operation in synchronization with the clock CLK, and sequentially sends data X in the column order in word units, that is, m-bit parallel. It is supposed to.
Further, the arithmetic circuit has B0 ×
X (n), B1 × X (n−1), B2 × X (n−2),
In addition to the (k + 1) multiplication circuits 20, 21, 22, 23 for calculating B3 × X (n−3), a summation circuit 30 for calculating the sum of them is also provided. When the number of outputs (k + 1) of the multiplication circuit is three or more, the summation circuit 30 is often embodied by combining two-input addition circuits 31 to 33 in multiple stages. Further, the coefficient values B0 to B3 (counting group) are determined according to the filtering characteristics required by the application, and are often set to a fixed value of m bits. May be set to a different value.

【0005】[0005]

【発明が解決しようとする課題】ところで、このような
従来のFIRフィルタでは、上述したように複数データ
の保持および順送りを担うデータ保持回路に、複数ビッ
トのレジスタが用いられており、しかも、フィルタの次
数よりも多い複数個・多数個のレジスタが設けられてい
る。そして、それらがクロックに同期して順送りを行う
度に一斉にスイッチングするので、消費電力も大きくな
りがちである。
By the way, in such a conventional FIR filter, as described above, a plurality of bits of registers are used in a data holding circuit which holds and forwards a plurality of data. And a plurality of registers that are larger than the order of. Then, since they are switched at the same time each time they are forwarded in synchronization with the clock, the power consumption tends to increase.

【0006】そこで、携帯電話機のように消費電力の小
さいことがメリットとされる装置等への応用に際して
は、消費電力の削減を図るべく、データ保持回路のクロ
ック周波数を下げるとともにそうしても同等の積和演算
値が得られるようにすることが技術的な課題となる。こ
の発明は、このような課題を解決するためになされたも
のであり、データ保持回路のクロック周波数が低いFI
Rフィルタを実現することを目的とする。
Therefore, when applied to a device such as a portable telephone which is advantageous in low power consumption, the clock frequency of the data holding circuit is lowered in order to reduce the power consumption. It is a technical problem to obtain a product-sum operation value of. SUMMARY OF THE INVENTION The present invention has been made to solve such a problem, and has been developed to reduce the frequency of a clock of a data holding circuit.
It is intended to realize an R filter.

【0007】[0007]

【課題を解決するための手段】このような課題を解決す
るために発明された第1乃至第2の解決手段について、
その構成および作用効果を以下に説明する。
Means for Solving the Problems First and second solving means invented to solve such problems are as follows.
The configuration and operation and effect will be described below.

【0008】[第1の解決手段]第1の解決手段のFI
Rフィルタは、出願当初の請求項1に記載の如く、デジ
タルデータを逐次入力するとともに順送りして複数保持
するデータ保持回路と、その複数データと固定値で又は
可変の設定値等で与えられる所定の係数群との積和演算
値を算出する演算回路とを備えたFIRフィルタにおい
て、前記データ保持回路が、データの入力および順送り
を複数の系列に振り分けて行うようになっており、さら
に、前記演算回路が、係数値選出回路を有していて、積
和演算に際し、前記振り分けに対応した前記係数群から
の係数値選出も行うようになっている、というものであ
る。
[First Solution] FI of the first solution
The R filter is a data holding circuit for sequentially inputting and sequentially holding digital data and holding a plurality of digital data as described in claim 1 at the time of filing of the application, and a predetermined circuit provided with the plurality of data as a fixed value or a variable set value or the like. And an operation circuit for calculating a product-sum operation value with the coefficient group of the FIR filter, wherein the data holding circuit performs data input and forward transfer by distributing the data into a plurality of series, The arithmetic circuit has a coefficient value selecting circuit, and at the time of the product-sum operation, also selects a coefficient value from the coefficient group corresponding to the distribution.

【0009】このような第1の解決手段のFIRフィル
タにあっては、データ保持回路に所定周期で逐次送られ
て来たデジタルデータは、複数の系列の何れかに振り分
けられ、振り分けられた系列部分に入力されるとともに
そこで順送りされる。これにより、データ保持回路の各
系列部分は、振り分け先に該当したときだけ動作すれば
足り、他の各系列部分へデータが振り分けられていると
きには動作しなくても良いので、デジタルデータが逐次
送られてくる周期よりも長い周期で動作しうることとな
る。
In the FIR filter according to the first solution, the digital data sequentially sent to the data holding circuit at a predetermined cycle is assigned to one of a plurality of streams, and the sorted streams are sent. It is input to the part and is forwarded there. As a result, each series part of the data holding circuit only needs to operate when it is assigned to the distribution destination, and does not need to operate when data is distributed to the other series parts. It is possible to operate at a longer cycle than the cycle that is received.

【0010】また、そのために振り分け先以外の系列部
分ではデータの順送りが止まってしまうが、その代わ
り、積和演算の際に、振り分けに対応した係数群からの
係数値選出が行われる。すなわち、どの系列が振り分け
先になっているかに対応して、係数群の中から適切な係
数値が選出される。これにより、積和演算に関してはデ
ータの順送り不足が係数値の選択切替にて補償されるの
で、正しい積和演算値が得られることとなる。したがっ
て、この発明によれば、デジタルデータが逐次送られて
くる周波数よりもデータ保持回路のクロック周波数の方
が低いFIRフィルタを実現することができる。
[0010] For this reason, in the sequence portion other than the distribution destination, the sequential transmission of data is stopped. Instead, at the time of the product-sum operation, a coefficient value is selected from a coefficient group corresponding to the distribution. That is, an appropriate coefficient value is selected from the coefficient group in accordance with which series is the distribution destination. As a result, regarding the product-sum operation, the lack of sequential data advance is compensated by the selection switching of the coefficient value, so that a correct product-sum operation value can be obtained. Therefore, according to the present invention, it is possible to realize an FIR filter in which the clock frequency of the data holding circuit is lower than the frequency at which digital data is sequentially transmitted.

【0011】[第2の解決手段]第2の解決手段のFI
Rフィルタは、出願当初の請求項2に記載の如く、上記
の第1の解決手段のFIRフィルタであって、前記演算
回路に、積和演算に際して前記振り分けに対応した前記
複数データからのデータ選出を行うデータ選出回路が設
けられるとともに、積和演算途中の中間算出値を保持す
る中間算出値保持回路も設けられている、というもので
ある。
[Second solving means] FI of the second solving means
The R filter is an FIR filter according to the first solving means as set forth in claim 2 at the beginning of the application, wherein the arithmetic circuit selects data from the plurality of data corresponding to the distribution at the time of product-sum operation. Is provided, and an intermediate calculated value holding circuit for holding an intermediate calculated value in the middle of the product-sum operation is also provided.

【0012】このような第2の解決手段のFIRフィル
タにあっては、複数系列へのデータ振り分けに基づき、
係数値の選択切替に加えて、データの選択切替も行われ
る。これにより、データ保持回路の各系列で演算回路の
乗算回路を共用することが可能となり、そのようにして
も適切なデータと係数値との積を算出することができる
こととなる。また、そうして算出された中間算出値は、
それを算出した乗算回路が他系列のデータ等に向けられ
ても、必要な間は中間算出値保持回路にて保持される。
これにより、総和も適切に算出される。
[0012] In the FIR filter of the second solution, based on data distribution into a plurality of streams,
In addition to selection switching of coefficient values, selection switching of data is also performed. As a result, the multiplication circuit of the arithmetic circuit can be shared by each series of the data holding circuit, and even in such a case, the product of the appropriate data and the coefficient value can be calculated. Also, the intermediate calculated value calculated in this way is
Even if the multiplication circuit that has calculated it is directed to other series of data or the like, it is held by the intermediate calculation value holding circuit for as long as necessary.
Thereby, the sum is also properly calculated.

【0013】そのため、データ保持回路のクロック周波
数の引き下げに加えて回路規模の削減も達成すべく、乗
算回路の個数を減らしても、従来と同等の積和演算値が
得られることとなる。したがって、この発明によれば、
デジタルデータが逐次送られてくる周波数よりもデータ
保持回路のクロック周波数の方が低いFIRフィルタで
あって乗算回路も少ないものを実現することができる。
Therefore, even if the number of multiplication circuits is reduced in order to achieve a reduction in circuit scale in addition to a reduction in the clock frequency of the data holding circuit, a product-sum operation value equivalent to that of the related art can be obtained. Therefore, according to the present invention,
It is possible to realize an FIR filter in which the clock frequency of the data holding circuit is lower than the frequency at which digital data is sequentially transmitted, and the number of multiplication circuits is small.

【0014】[0014]

【発明の実施の形態】このような解決手段で達成された
本発明のFIRフィルタについて、これを実施するため
の具体的な形態を、以下の第1,第2実施例により説明
する。図1〜図3に示した第1実施例は、上述した第1
の解決手段を具現化したものであり、図4〜図6に示し
た第2実施例は、上述した第2の解決手段も具現化した
ものである。なお、各図中、「FF」は1ビットのデー
タを保持するフリップフロップを示し、「Reg」は1
ワード即ち複数ビットのデータを保持するレジスタを示
している。また、それらの図示に際し従来と同様の構成
要素には同一の符号を付して示した。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Specific embodiments for implementing the FIR filter of the present invention achieved by such a solution will be described with reference to the following first and second embodiments. The first embodiment shown in FIG. 1 to FIG.
The second embodiment shown in FIGS. 4 to 6 also embodies the second solution described above. In each figure, “FF” indicates a flip-flop that holds 1-bit data, and “Reg” indicates 1
A register holding a word, that is, a plurality of bits of data is shown. In the drawings, the same components as those in the related art are denoted by the same reference numerals.

【0015】[0015]

【第1実施例】本発明のFIRフィルタの第1実施例に
ついて、その具体的な構成を、図面を引用して説明す
る。図1(a)は、概要回路図、図1(b)は、派生ク
ロックの生成回路例、図2は、詳細回路図である。
First Embodiment A first embodiment of an FIR filter according to the present invention will be described with reference to the drawings. 1A is a schematic circuit diagram, FIG. 1B is an example of a circuit for generating a derived clock, and FIG. 2 is a detailed circuit diagram.

【0016】従来例と対比し易いよう、この実施例で
も、k次の例えば3次のFIRフィルタを具体例に挙げ
る。すなわち、入力されるデジタルデータが1ワード当
たりmビット(図2では4ビット)であって、1ワード
ずつ逐次に例えばデータX(n−3),データX(n−
2),データX(n−1),データX(n)といった順
にデータが入力される状況下で、これらのデータ列に基
づいて積和演算値Y(n)を算出する、というFIRフ
ィルタについて述べる。
In this embodiment, a k-th order FIR filter, for example, a tertiary order FIR filter will be described as a specific example so as to be easily compared with the conventional example. That is, the input digital data is m bits per word (four bits in FIG. 2), and for example, data X (n-3) and data X (n-
2) Under the situation where data is input in the order of data X (n-1), data X (n), an FIR filter that calculates a product-sum operation value Y (n) based on these data strings State.

【0017】このFIRフィルタでは、前置回路9等に
よるデータXの送出がクロックCLKに同期して行われ
るのに対し、それを逐次入力して順送りするデータ保持
回路10〜13がクロックCLKよりも周波数の低いク
ロックCLKa,CLKbに基づき例えばその立ち上が
りエッジでラッチ動作するようになっている。また、そ
れでも積和演算が適切に行われるよう、データ保持回路
10〜13が2系列に組み直されるとともに、演算回路
20〜30に係数値選出回路40が付加されている。
In this FIR filter, while the data X is transmitted by the pre-circuit 9 and the like in synchronization with the clock CLK, the data holding circuits 10 to 13 for sequentially inputting and sending the data X sequentially output the data X more than the clock CLK. Based on the low-frequency clocks CLKa and CLKb, for example, the latch operation is performed at the rising edge thereof. In addition, the data holding circuits 10 to 13 are reassembled into two series so that the product-sum operation is appropriately performed, and the coefficient value selecting circuit 40 is added to the arithmetic circuits 20 to 30.

【0018】データXを振り分ける先の系列の個数すな
わち系列数が“2”であるのに対応して、クロックCL
Ka,CLKbには、周波数がクロックCLKのそれの
半分であって、互いに位相の異なるパルス発振信号が、
採用される。それらの生成は、例えば(図1(b)参
照)、クロックCLKをT型フリップフロップ等で2分
周して、その正転出力をクロックCLKaとし、反転出
力をクロックCLKbとすることで、容易になされる。
このようにして生成された正相クロックCLKa及び逆
相CLKbは、何れもクロックCLKに同期している
が、互いに位相のずれたものとなっている。
In response to the number of streams to which the data X is distributed, that is, the number of streams, "2", the clock CL
Ka and CLKb include pulse oscillation signals having a frequency half that of the clock CLK and different phases from each other.
Adopted. For example, (see FIG. 1B), the clock CLK is divided into two by a T-type flip-flop, and its non-inverted output is used as the clock CLKa and its inverted output is used as the clock CLKb. Is made.
The positive-phase clock CLKa and the negative-phase CLKb generated in this way are both synchronized with the clock CLK, but are out of phase with each other.

【0019】データ保持回路10〜13には、従来同様
に、(k+1)個のレジスタ10,11,12,13が
設けられ、何れのレジスタもmビットのデータXを保持
するためそれぞれにm個のフリップフロップが含まれて
いるが、従来と異なり、2系列になるよう、フリップフ
ロップ同士を接続する配線や、フリップフロップにラッ
チ動作を行わせるクロックが、変更されている。具体的
には、前置回路9の出力がレジスタ10に入力され、こ
のレジスタ10の出力がレジスタ12に入力されるよう
配線がなされるとともに、これらのレジスタ10,12
には正相クロックCLKaが供給され、これによって第
1系列部分が確立される。また、前置回路9の出力がレ
ジスタ11にも入力され、このレジスタ11の出力がレ
ジスタ13に入力されるよう配線がなされるとともに、
それらのレジスタ11,13に逆相クロックCLKbが
供給されることで、第2系列部分が確立されている。
The data holding circuits 10 to 13 are provided with (k + 1) registers 10, 11, 12, and 13 in the same manner as in the prior art. Each of the registers holds m bits of data X in order to hold m bits of data X. However, unlike the related art, the wiring for connecting the flip-flops and the clock for causing the flip-flop to perform the latch operation are changed so as to form two lines. Specifically, the output of the pre-circuit 9 is input to the register 10, wiring is performed so that the output of the register 10 is input to the register 12, and the registers 10, 12
Is supplied with the positive-phase clock CLKa, whereby the first series portion is established. The output of the pre-circuit 9 is also input to the register 11, and wiring is performed so that the output of the register 11 is input to the register 13.
By supplying the inverted-phase clock CLKb to these registers 11 and 13, the second series portion is established.

【0020】レジスタ10の出力すなわちレジスタ10
に保持されているデータXが演算回路内の乗算回路20
へ送出されてその一方の入力とされるのも従来同様であ
るが、従来と異なり、乗算回路20の他方の入力には、
係数値B0が直接入力されるので無く、係数値選出回路
40のマルチプレクサ41の出力が導かれるようになっ
ている。レジスタ11,12,13の出力もそれぞれ演
算回路内の乗算回路21,22,23の一方の入力とさ
れるが、それら乗算回路21,22,23の他方の入力
には、それぞれ、係数値選出回路40のマルチプレクサ
42,43,44の出力が導かれるようになっている。
The output of register 10, ie, register 10
Is stored in the multiplication circuit 20 in the arithmetic circuit.
Is sent to the other input as one input, but unlike the conventional one, the other input of the multiplication circuit 20 is
Instead of directly inputting the coefficient value B0, the output of the multiplexer 41 of the coefficient value selection circuit 40 is guided. The outputs of the registers 11, 12, and 13 are also input to one of the multiplication circuits 21, 22, and 23 in the arithmetic circuit, respectively. The outputs of the multiplexers 42, 43, 44 of the circuit 40 are guided.

【0021】係数値選出回路40のうちマルチプレクサ
41,42には、最新のデータXが2系列のレジスタ1
0,11に振り分けられるのに対応して、計数群B0〜
B3のうちの係数値B0と係数値B1とを入力する2入
力のものが採用される。また、最新のデータX(n)が
レジスタ10にラッチされるとそのときレジスタ11に
保持されているデータXがクロックCLKで1クロック
旧いデータX(n−1)となり、最新のデータX(n)
がレジスタ11にラッチされるとそのときレジスタ10
に保持されているデータXがクロックCLKで1クロッ
ク前のデータX(n−1)となることに対応して、マル
チプレクサ41,42の制御入力にはそれぞれクロック
CLKa,CLKbが用いられる。そして、レジスタ1
0が最新データX(n)を保持しているときにはマルチ
プレクサ41から乗算回路20へ係数値B0が送出され
るとともにマルチプレクサ42から乗算回路21へ係数
値B1が送出され、レジスタ11が最新データX(n)
を保持しているときにはマルチプレクサ41から乗算回
路20へ係数値B1が送出されるとともにマルチプレク
サ42から乗算回路21へ係数値B0が送出されるよう
になっている。
The multiplexers 41 and 42 of the coefficient value selection circuit 40 store the latest data X in the two-series register 1.
In response to being assigned to 0 and 11, the counting groups B0
Of the B3, a two-input one that inputs the coefficient value B0 and the coefficient value B1 is adopted. When the latest data X (n) is latched in the register 10, the data X held in the register 11 at that time becomes data X (n-1) one clock earlier than the clock CLK, and the latest data X (n). )
Is latched in the register 11, then the register 10
The clocks CLKa and CLKb are used as the control inputs of the multiplexers 41 and 42, respectively, in response to the fact that the data X held in the data becomes the data X (n-1) one clock before the clock CLK. And register 1
When 0 holds the latest data X (n), the coefficient value B0 is sent from the multiplexer 41 to the multiplier circuit 20, and the coefficient value B1 is sent from the multiplexer 42 to the multiplier circuit 21, and the register 11 stores the latest data X (n). n)
Is held, the coefficient value B1 is sent from the multiplexer 41 to the multiplier circuit 20, and the coefficient value B0 is sent from the multiplexer 42 to the multiplier circuit 21.

【0022】係数値選出回路40のうちマルチプレクサ
43,44には、それぞれ、計数群B0〜B3のうちの
係数値B3と係数値B4とを入力する2入力のものが採
用される。これは、2系列のレジスタ10,11に振り
分けられたデータXがクロックCLKで2クロック後に
それぞれの系列内で順送りされることから、レジスタ1
2,13にはデータX(n−2)とデータX(n−3)
とが保持されることとなるためである。これらのマルチ
プレクサ43,44の制御入力にもそれぞれクロックC
LKa,CLKbが用いられて、レジスタ10が最新デ
ータX(n)を保持しレジスタ12がデータX(n−
2)を保持しているときにはマルチプレクサ43から乗
算回路22へ係数値B2が送出されるとともにマルチプ
レクサ44から乗算回路23へ係数値B3が送出され、
レジスタ11が最新データX(n)を保持しレジスタ1
3がデータX(n−2)を保持しているときにはマルチ
プレクサ43から乗算回路22へ係数値B3が送出され
るとともにマルチプレクサ44から乗算回路23へ係数
値B2が送出されるようになっている。
Each of the multiplexers 43 and 44 of the coefficient value selection circuit 40 employs a two-input one that inputs a coefficient value B3 and a coefficient value B4 of the count groups B0 to B3, respectively. This is because the data X distributed to the two series of registers 10 and 11 are sent forward in each series two clocks later by the clock CLK, and therefore the register 1
Data X (n-2) and data X (n-3)
Is to be held. The clock C is also applied to the control inputs of these multiplexers 43 and 44, respectively.
Using LKa and CLKb, the register 10 holds the latest data X (n) and the register 12 stores the data X (n−
When 2) is held, the coefficient value B2 is sent from the multiplexer 43 to the multiplier circuit 22, and the coefficient value B3 is sent from the multiplexer 44 to the multiplier circuit 23.
Register 11 holds the latest data X (n) and registers 1
When 3 holds data X (n-2), the coefficient value B3 is sent from the multiplexer 43 to the multiplication circuit 22 and the coefficient value B2 is sent from the multiplexer 44 to the multiplication circuit 23.

【0023】演算回路のうち総和回路30は、従来同様
で足りる。すなわち、総和回路30は、乗算回路20〜
23の算出値について総和を採るために、例えば、乗算
回路20の出力と乗算回路21の出力とを入力する2入
力の加算回路31と、乗算回路22の出力と乗算回路2
3の出力とを入力する2入力の加算回路32と、加算回
路31,32双方の出力を入力する2入力の加算回路3
3とを具えている。乗算回路20〜23の出力が2×m
ビットであるのに対応して、加算回路31,32の出力
は2×m+1ビットとなり、加算回路33の出力すなわ
ち積和演算値Y(n)は2×m+2ビットとなる。
Of the arithmetic circuits, the sum circuit 30 is the same as the conventional one. That is, the summation circuit 30 includes the multiplication circuits 20 to
In order to take the sum of the calculated values of 23, for example, a two-input addition circuit 31 that inputs the output of the multiplication circuit 20 and the output of the multiplication circuit 21, the output of the multiplication circuit 22 and the multiplication circuit 2
And a two-input adder circuit 3 for inputting the outputs of the two adders 31 and 32.
3 and so on. The output of the multiplication circuits 20 to 23 is 2 × m
Corresponding to the bits, the outputs of the adders 31 and 32 are 2 × m + 1 bits, and the output of the adder 33, that is, the product-sum operation value Y (n) is 2 × m + 2 bits.

【0024】この第1実施例のFIRフィルタについ
て、その使用態様及び動作を、図面を引用して説明す
る。図3は、フィルタ回路の動作状態を示すタイミング
チャートである。
The usage and operation of the FIR filter of the first embodiment will be described with reference to the drawings. FIG. 3 is a timing chart showing an operation state of the filter circuit.

【0025】クロックCLKに同期して前置回路9から
データXが逐次送られてくると(図3(a),(b)参
照)、すなわちクロックCLKの立ち上がりで順にデー
タX(n−3),データX(n−2),データX(n−
1),データX(n)が入力されると、その度にクロッ
クCLKa,CLKbが反転し(図3(c),(d)参
照)、クロックCLKbの2回の立ち上がりでデータX
(n−3)がレジスタ11を経由してレジスタ13にラ
ッチされる(図3(f),(h)参照)。また、クロッ
クCLKbの1回の立ち上がりでデータX(n−1)が
レジスタ11にラッチされる(図3(f)参照)。
When the data X is sequentially sent from the pre-circuit 9 in synchronization with the clock CLK (see FIGS. 3A and 3B), that is, the data X (n-3) is sequentially output at the rise of the clock CLK. , Data X (n−2), data X (n−
1) When the data X (n) is input, the clocks CLKa and CLKb are inverted each time (see FIGS. 3 (c) and 3 (d)), and the data X (n) rises twice when the clock CLKb rises.
(N-3) is latched by the register 13 via the register 11 (see FIGS. 3F and 3H). Further, the data X (n-1) is latched in the register 11 at one rising of the clock CLKb (see FIG. 3F).

【0026】さらに、クロックCLKで1クロックずれ
るが、クロックCLKaの2回の立ち上がりでデータX
(n−2)がレジスタ10を経由してレジスタ12にラ
ッチされる(図3(e),(g)参照)。また、クロッ
クCLKaの1回の立ち上がりでデータX(n)がレジ
スタ10にラッチされる(図3(e)参照)。こうし
て、データXが交互に2系列に振り分けて逐次入力され
るとともにそれぞれの系列内で順送りされる。
Further, although the clock CLK is shifted by one clock, the data X is shifted by two rises of the clock CLKa.
(N-2) is latched by the register 12 via the register 10 (see FIGS. 3E and 3G). Further, the data X (n) is latched in the register 10 at one rising of the clock CLKa (see FIG. 3E). In this manner, the data X is alternately distributed into two streams, sequentially input, and sequentially forwarded in each stream.

【0027】また、それと並行して、クロックCLKの
立ち上がりの度に、マルチプレクサ41によって交互に
係数値B0又は係数値B1が選出され(図3(i)参
照)、マルチプレクサ42によって交互に係数値B1又
は係数値B0が選出され(図3(j)参照)、マルチプ
レクサ43によって交互に係数値B2又は係数値B3が
選出され(図3(k)参照)、マルチプレクサ44によ
って交互に係数値B3又は係数値B2が選出される(図
3(l)参照)。
At the same time, each time the clock CLK rises, the multiplexer 41 alternately selects the coefficient value B0 or the coefficient value B1 (see FIG. 3 (i)), and the multiplexer 42 alternately selects the coefficient value B1. Alternatively, the coefficient value B0 is selected (see FIG. 3 (j)), the coefficient value B2 or the coefficient value B3 is alternately selected by the multiplexer 43 (see FIG. 3 (k)), and the coefficient value B3 or the coefficient value is alternately selected by the multiplexer 44. The numerical value B2 is selected (see FIG. 3 (l)).

【0028】そうすると、データX(n)〜X(n−
3)がそれぞれレジスタ10〜13に保持されたとき
に、乗算回路20によってB0×X(n)が算出され
(図3(m)参照)、乗算回路21によってB1×X
(n−1)が算出され(図3(n)参照)、乗算回路2
2によってB2×X(n−2)が算出され(図3(o)
参照)、乗算回路23によってB3×X(n−3)が算
出される(図3(p)参照)。さらに、総和回路30に
よってそれらの総和が採られる。
Then, data X (n) to X (n-
3) is held in the registers 10 to 13 respectively, the multiplier circuit 20 calculates B0 × X (n) (see FIG. 3 (m)), and the multiplier circuit 21 calculates B1 × X
(N-1) is calculated (see FIG. 3 (n)), and the multiplication circuit 2
2 is used to calculate B2 × X (n−2) (FIG. 3 (o)).
B3 × X (n−3) is calculated by the multiplication circuit 23 (see FIG. 3 (p)). Further, the sum is obtained by the sum circuit 30.

【0029】こうして、総和回路30から、積和演算値
Y(n)={B0×X(n)+B1×X(n−1)+B
2×X(n−2)+B3×X(n−3)}が、出力され
る。この値は、複数データXと計数群B0〜B3との適
切な積和演算値である。また、重複する詳細な説明は割
愛するが、クロックCLKに同期して適切な積和演算が
繰り返し遂行される。しかも、その演算の際、データ保
持回路の各レジスタ10〜13は、何れも、クロックC
LKa,CLKbに同期して動作する。
In this way, the sum-sum circuit 30 calculates the product-sum operation value Y (n) = {B0 × X (n) + B1 × X (n-1) + B
2 × X (n−2) + B3 × X (n−3)} is output. This value is an appropriate product-sum operation value of the multiple data X and the count groups B0 to B3. In addition, although the detailed description is omitted, an appropriate multiply-accumulate operation is repeatedly performed in synchronization with the clock CLK. In addition, during the operation, each of the registers 10 to 13 of the data holding circuit
It operates in synchronization with LKa and CLKb.

【0030】それらのレジスタにはそれぞれm個のフリ
ップフロップが用いられ、それぞれのフリップフロップ
には一般に数個又は十数個のトランジスタが含まれてい
る。そして、それらのトランジスタがスイッチングする
ことで該当レジスタのラッチ動作がサポートされるが、
一般にデジタル回路では特にCMOS回路では、トラン
ジスタによる電力消費がスイッチング時に集中してい
る。そのため、データ保持回路10〜13の消費電力は
ほぼ半減する。その結果、係数値選出回路40の導入に
よる消費電力の増加を考慮しても、FIRフィルタ全体
の消費電力が削減されることとなる。
Each of these registers uses m flip-flops, and each flip-flop generally includes several or more than ten transistors. And the switching operation of those transistors supports the latch operation of the corresponding register,
Generally, in a digital circuit, particularly in a CMOS circuit, power consumption by a transistor is concentrated at the time of switching. Therefore, the power consumption of the data holding circuits 10 to 13 is almost halved. As a result, even if the increase in power consumption due to the introduction of the coefficient value selection circuit 40 is considered, the power consumption of the entire FIR filter is reduced.

【0031】[0031]

【第2実施例】本発明のFIRフィルタの第2実施例に
ついて、その具体的な構成を、図面を引用して説明す
る。図4(a)は、概要回路図、図4(b)〜(d)は
クロックの波形例、図5は、詳細回路図である。
Second Embodiment A second embodiment of the FIR filter according to the present invention will be described with reference to the drawings. 4A is a schematic circuit diagram, FIGS. 4B to 4D are examples of clock waveforms, and FIG. 5 is a detailed circuit diagram.

【0032】このFIRフィルタが上述した第1実施例
のものと相違するのは、係数値選出回路40のうちマル
チプレクサ42,44がデータ選出回路に転用された点
と、演算回路に中間算出値保持回路50が追加された点
である。また、これらの改造に伴って、演算回路から乗
算回路21,23が省かれている。乗算回路20,22
は残存している。
The FIR filter differs from that of the first embodiment in that the multiplexers 42 and 44 of the coefficient value selection circuit 40 are diverted to the data selection circuit, and the arithmetic circuit holds the intermediate calculated value. The point is that the circuit 50 is added. With these modifications, the multiplication circuits 21 and 23 are omitted from the arithmetic circuit. Multiplication circuits 20, 22
Remains.

【0033】マルチプレクサ42は、第1系列における
レジスタ10の保持データと第2系列におけるレジスタ
11の保持データとを入力し、例えばクロックCLKa
に従う選択切替を行うことで、レジスタ10が最新デー
タX(n)を保持していてマルチプレクサ41から乗算
回路20へ係数値B0が送出されるときにはレジスタ1
0の保持データを乗算回路20へ送出し、マルチプレク
サ41から乗算回路20へ係数値B1が送出されるとき
にはレジスタ11の保持データを乗算回路20へ送出す
るようになっている。マルチプレクサ44は、第1系列
におけるレジスタ12の保持データと第2系列における
レジスタ13の保持データとを入力し、やはりクロック
CLKa等に従う選択切替を行うことで、マルチプレク
サ43から乗算回路22へ係数値B2が送出されるとき
にはレジスタ12の保持データを乗算回路22へ送出
し、マルチプレクサ43から乗算回路22へ係数値B3
が送出されるときにはレジスタ13の保持データを乗算
回路22へ送出する。このようなマルチプレクサ42,
44からなるデータ選出回路は、データ保持回路10〜
13での複数系列へのデータ振り分けに対応してそれら
の複数データから積和演算に向けて幾つかのデータを選
出するものとなっている。
The multiplexer 42 receives the data held in the register 10 in the first stream and the data held in the register 11 in the second stream, and receives, for example, the clock CLKa.
When the register 10 holds the latest data X (n) and the coefficient value B0 is sent from the multiplexer 41 to the multiplying circuit 20, the register 1
The held data of 0 is sent to the multiplying circuit 20, and when the coefficient value B1 is sent from the multiplexer 41 to the multiplying circuit 20, the held data of the register 11 is sent to the multiplying circuit 20. The multiplexer 44 receives the data held in the register 12 in the first stream and the data held in the register 13 in the second stream, and also performs selection switching according to the clock CLKa and the like. Is sent to the multiplication circuit 22, the data held in the register 12 is sent to the multiplication circuit 22, and the coefficient value B3
Is sent to the multiplier circuit 22. Such a multiplexer 42,
The data selection circuit 44 includes data holding circuits 10 to
In response to the distribution of data into a plurality of streams in step 13, some data are selected from the plurality of data toward a product-sum operation.

【0034】中間算出値保持回路50は、積和演算途中
の中間算出値を保持するものであり、乗算回路20の算
出値を保持するためのレジスタ51と、乗算回路22の
算出値を保持するためのレジスタ52とが設けられてい
る。何れも、2×mビットのレジスタであり、クロック
CLKの立ち上がりで該当乗算値をラッチすることで、
その値の消滅をクロックCLKで1クロック分だけ遅ら
せるようになっている。また、この中間算出値保持回路
50が保持する中間算出値は、乗算回路20,22によ
る最新の中間算出値と並列に、総和回路30へ送出さ
れ、総和演算に供されるようになっている。
The intermediate calculated value holding circuit 50 holds the intermediate calculated value during the product-sum operation, and holds a register 51 for holding the calculated value of the multiplying circuit 20 and a calculated value of the multiplying circuit 22. And a register 52 are provided. Each of them is a 2 × m bit register. By latching the corresponding multiplication value at the rising edge of the clock CLK,
The disappearance of the value is delayed by one clock with the clock CLK. The intermediate calculation value held by the intermediate calculation value holding circuit 50 is sent to the summation circuit 30 in parallel with the latest intermediate calculation value by the multiplication circuits 20 and 22, and is used for the summation operation. .

【0035】この第2実施例のFIRフィルタについ
て、その使用態様及び動作を、図面を引用して説明す
る。図6は、フィルタ回路の動作状態を示すタイミング
チャートである。
The mode of use and operation of the FIR filter of the second embodiment will be described with reference to the drawings. FIG. 6 is a timing chart showing an operation state of the filter circuit.

【0036】この場合も、各クロックCLK,CLK
a,CLKbや、データ保持回路10〜13によるデー
タXの振り分け及び順送りに関しては、第1実施例の場
合と同様である(図6(a)〜(h)参照)。マルチプ
レクサ41,43による計数群B0〜B3からの係数値
選出も同様であるが(図6(i),(k)参照)、マル
チプレクサ42,44による複数データX(n)〜デー
タX(n−3)からのデータ選出は、異なる(図6
(j),(l)参照)。
Also in this case, each clock CLK, CLK
a, CLKb and the distribution and forward transmission of data X by the data holding circuits 10 to 13 are the same as those in the first embodiment (see FIGS. 6A to 6H). The same applies to the selection of coefficient values from the count groups B0 to B3 by the multiplexers 41 and 43 (see FIGS. 6 (i) and 6 (k)), but the multiple data X (n) to data X (n−) by the multiplexers 42 and 44. The data selection from 3) is different (FIG. 6).
(See (j) and (l)).

【0037】すなわち、レジスタ11にデータX(n−
1)がラッチされると、その直後に来るクロックCLK
で1クロックの期間には、マルチプレクサ41によって
係数値B1が選出されると共に(図6(i)参照)、マ
ルチプレクサ42によってデータX(n−1)が選出さ
れて(図6(j)参照)、それらの乗算値B1×X(n
−1)が乗算回路20から出力される(図6(m)参
照)。また、同じタイミングで並行して、レジスタ13
にデータX(n−3)がラッチされると、その直後の1
クロック期間には、マルチプレクサ43によって係数値
B3が選出されると共に(図6(k)参照)、マルチプ
レクサ44によってデータX(n−3)が選出されて
(図6(l)参照)、それらの乗算値B3×X(n−
3)が乗算回路22から出力される(図6(n)参
照)。
That is, the data X (n-
When 1) is latched, the clock CLK immediately after that is latched.
In one clock period, the coefficient value B1 is selected by the multiplexer 41 (see FIG. 6 (i)), and the data X (n-1) is selected by the multiplexer 42 (see FIG. 6 (j)). , Their multiplied values B1 × X (n
-1) is output from the multiplication circuit 20 (see FIG. 6 (m)). At the same time, the register 13
When the data X (n−3) is latched in
During the clock period, the multiplexer 43 selects the coefficient value B3 (see FIG. 6 (k)), and the multiplexer 44 selects the data X (n-3) (see FIG. 6 (l)). Multiplied value B3 × X (n−
3) is output from the multiplication circuit 22 (see FIG. 6 (n)).

【0038】そして、その1クロック期間が過ぎてクロ
ックCLKで次の1クロック期間に入ると、それらの中
間算出値B1×X(n−1),B3×X(n−3)は、
それぞれレジスタ51,52にラッチされて、次の1ク
ロック期間にも参照可能な状態に維持される(図6
(o),(p)参照)。また、同じタイミングで並行し
て、レジスタ10にデータX(n)がラッチされると同
時にレジスタ12にデータX(nー2)がラッチされる
と、その直後の1クロック期間には、マルチプレクサ4
1によって係数値B0が選出され(図6(i)参照)マ
ルチプレクサ42によってデータX(n)が選出されて
(図6(j)参照)それらの乗算値B0×X(n)が乗
算回路20から出力されるとともに(図6(m)参
照)、マルチプレクサ43によって係数値B2が選出さ
れ(図6(k)参照)マルチプレクサ44によってデー
タX(n−2)が選出されて(図6(l)参照)それら
の乗算値B2×X(n−2)が乗算回路22から出力さ
れる(図6(n)参照)。
When one clock period has passed and the next one clock period starts with the clock CLK, the intermediate calculated values B1 × X (n−1) and B3 × X (n−3) become
The registers are latched by the registers 51 and 52, respectively, and are maintained in a state where they can be referred to in the next one clock period (FIG. 6).
(See (o) and (p)). At the same time, when the data X (n) is latched in the register 10 and the data X (n−2) is latched in the register 12 at the same time, the multiplexer 4
A coefficient value B0 is selected by 1 (see FIG. 6 (i)), data X (n) is selected by the multiplexer 42 (see FIG. 6 (j)), and their multiplication value B0 × X (n) is multiplied by the multiplication circuit 20. (See FIG. 6 (m)), the coefficient value B2 is selected by the multiplexer 43 (see FIG. 6 (k)), and the data X (n-2) is selected by the multiplexer 44 (see FIG. 6 (l)). )) The multiplied value B2 × X (n−2) is output from the multiplying circuit 22 (see FIG. 6 (n)).

【0039】そうすると、乗算回路20からの中間算出
値B0×X(n)と、レジスタ51からの中間算出値B
1×X(n−1)と、乗算回路22からの中間算出値B
2×X(nー2)と、レジスタ52からの中間算出値B
3×X(n−3)とが、同時に総和回路30へ送られ
る。そして、総和回路30から、積和演算値Y(n)=
{B0×X(n)+B1×X(n−1)+B2×X(n
−2)+B3×X(n−3)}が、出力される(図6
(q)参照)。こうして、この例の場合も、複数データ
Xと計数群B0〜B3との適切な積和演算値が得られ
る。
Then, the intermediate calculation value B0 × X (n) from the multiplication circuit 20 and the intermediate calculation value B
1 × X (n−1) and the intermediate calculation value B from the multiplication circuit 22
2 × X (n−2) and the intermediate calculated value B from the register 52
3 × X (n−3) are sent to the summation circuit 30 at the same time. Then, from the summation circuit 30, the product-sum operation value Y (n) =
{B0 × X (n) + B1 × X (n−1) + B2 × X (n
−2) + B3 × X (n−3)} is output (FIG. 6).
(Q)). Thus, also in this example, an appropriate product-sum operation value of the plurality of data X and the count groups B0 to B3 is obtained.

【0040】しかも、この場合、データ保持回路10〜
13での電力消費がほぼ半減するのに加えて、演算回路
に含まれる乗算回路の個数も半減している。そして、そ
の部分について見れば、回路規模がほぼ半分に削減され
るとともに、消費電力もほぼ半分に削減されている。乗
算回路は一般に回路規模が大きいので、その削減効果
は、係数値やデータ選出用のマルチプレクサを追加した
り中間算出値保持用のレジスタを追加したことによる回
路規模の増大を補ってなお余りある。また、消費電力の
削減効果についても、それらを合わせたものは、選出回
路40及び中間算出値保持回路50の導入による消費電
力の増加を凌ぐ。したがって、このFIRフィルタにあ
っては、消費電力ばかりか回路規模も削減されることと
なる。
Moreover, in this case, the data holding circuits 10 to 10
In addition to almost halving the power consumption at 13, the number of multiplication circuits included in the arithmetic circuit is halved. Then, looking at that part, the circuit scale is reduced to almost half and the power consumption is also reduced to almost half. Since the multiplication circuit generally has a large circuit scale, the effect of the reduction is more than compensated for by an increase in the circuit scale due to the addition of a multiplexer for selecting a coefficient value or data or the addition of a register for holding an intermediate calculated value. In addition, the combined effect of the power consumption reduction effects exceeds the increase in power consumption due to the introduction of the selection circuit 40 and the intermediate calculated value holding circuit 50. Therefore, in this FIR filter, not only power consumption but also circuit scale is reduced.

【0041】[0041]

【その他】なお、上記の各実施例では、デジタルデータ
Xを2系列に振り分けるようにしたが、振り分け先の系
列は、2系列に限られる訳でなく、3以上の多系列であ
っても良い。その場合、データ保持回路10〜13につ
いては、レジスタを従属接続した系列の並列数を増やす
とともに、その系列数でクロックCLKを分周する等の
ことで、位相の異なる同数の振分用クロックを派生させ
て、各系列のレジスタに分配すると良い。また、係数値
選出回路40については、系列数に対応して選出対象の
係数値の個数を増やせば良く、例えば3系列であれば、
マルチプレクサ41,42等のそれぞれに3入力1出力
のものが採用され、それぞれの選出対象の係数値には、
計数群を3要素の部分集合に分割した「B0,B1,B
2」や「B4,B5,B6」等が採用される。そして、
系列数が多いほど、データ保持回路の消費電力は少なく
なる。
[Others] In each of the above embodiments, the digital data X is distributed into two sequences. However, the distribution destination sequence is not limited to two sequences and may be three or more multi-lines. . In this case, the data holding circuits 10 to 13 increase the parallel number of the series in which the registers are cascade-connected, and divide the clock CLK by the number of the series, thereby distributing the same number of distribution clocks having different phases. It is good to derive and distribute to the registers of each series. In addition, as for the coefficient value selection circuit 40, the number of coefficient values to be selected may be increased in accordance with the number of series.
Each of the multiplexers 41, 42, etc., has three inputs and one output, and the coefficient values to be selected include:
“B0, B1, B” obtained by dividing the counting group into a subset of three elements
2 "," B4, B5, B6 "and the like. And
As the number of streams increases, the power consumption of the data holding circuit decreases.

【0042】また、上記の各実施例では、各レジスタや
フリップフロップがクロックの立ち上がりでラッチ動作
するようにしたが、これに限られるものでなく、クロッ
クの立ち上がりで動作するのか立ち下がりで動作するの
かは、それぞれのレジスタ毎に決めて良い。
Further, in each of the above embodiments, each register or flip-flop performs the latch operation at the rising edge of the clock. However, the present invention is not limited to this, and it operates at the rising edge of the clock or at the falling edge. May be determined for each register.

【0043】さらに、上記の各実施例では、データXの
ビット数mが“4”で、フィルタの次数kが“3”の場
合を述べたが、mやkはそれに限られるものでなく、何
れも2以上であれば任意である。そして、次数kが大き
いほど、例えば次数kが“1000”を超えるほどにな
ると、FIRフィルタが装置の全回路に占める割合も大
きいので、データ保持回路の消費電力の削減効果も大き
い。
Further, in each of the above embodiments, the case where the number of bits m of the data X is "4" and the order k of the filter is "3" has been described. However, m and k are not limited thereto. Any of them is arbitrary as long as it is 2 or more. When the order k is large, for example, when the order k exceeds “1000”, the ratio of the FIR filter to all the circuits of the device is large, and the effect of reducing the power consumption of the data holding circuit is large.

【0044】また、上記の各実施例では、演算に伴う精
度の劣化が全く無いよう、回路内で後段になるほどビッ
ト数が増えるようになっているが、積和演算値Y(n)
をmビット等に丸めるような場合や、演算中に多少の精
度劣化が許されるような場合には、後段のビット数を削
減しても良い。
Further, in each of the above embodiments, the number of bits increases in the later stages in the circuit so that the accuracy does not deteriorate at all with the operation, but the product-sum operation value Y (n)
In the case where is rounded to m bits or the like, or when some degree of precision deterioration is allowed during the calculation, the number of bits in the subsequent stage may be reduced.

【0045】また、上記の第2実施例では、各計数値B
0〜B3が総て異なっていても良いという条件下で、乗
算回路の個数削減が達成されるようにしたが、FIRフ
ィルタでは各計数値の間にB(i)=B(k−i)とい
った特定の関係が成り立っていることも多いので、その
ような計数群の特性を利用すれば、乗算回路の個数削減
を更に推し進めることが可能である。
In the second embodiment, each count value B
Under the condition that all 0 to B3 may be different, the number of multipliers can be reduced. In the FIR filter, B (i) = B (ki) between each count value. In many cases, such a specific relationship holds, and if the characteristics of such a counting group are used, the number of multiplier circuits can be further reduced.

【0046】[0046]

【発明の効果】以上の説明から明らかなように、本発明
の第1の解決手段のFIRフィルタにあっては、データ
保持回路でのデータ順送りが振り分け先の系列部分でし
か行われないようにするとともに、それによるデータの
順送り不足が積和演算に関しては係数値の選択切替にて
補償されようにしたことにより、デジタルデータが逐次
送られてくる周波数よりもデータ保持回路のクロック周
波数の方が低いFIRフィルタを実現することができた
という有利な効果が有る。
As is apparent from the above description, in the FIR filter according to the first solving means of the present invention, the data holding circuit is designed so that the sequential data transfer is performed only in the sequence part of the distribution destination. In addition, the lack of sequential data transfer is compensated by the selection switching of the coefficient value for the product-sum operation, so that the clock frequency of the data holding circuit is higher than the frequency at which the digital data is sequentially transmitted. There is an advantageous effect that a low FIR filter can be realized.

【0047】また、本発明の第2の解決手段のFIRフ
ィルタにあっては、複数系列へのデータ振り分けに基づ
いて係数値の選択切替ばかりかデータの選択切替も行わ
れるようにしたことにより、デジタルデータが逐次送ら
れてくる周波数よりもデータ保持回路のクロック周波数
の方が低いFIRフィルタであって乗算回路も少ないも
のを実現することができたという有利な効果を奏する。
In the FIR filter according to the second solving means of the present invention, not only the switching of the coefficient value but also the switching of the data are performed based on the distribution of data into a plurality of streams. An advantageous effect is obtained that an FIR filter in which the clock frequency of the data holding circuit is lower than the frequency at which digital data is sequentially transmitted, and in which the number of multiplying circuits is small can be realized.

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

【図1】 本発明のFIRフィルタの第1実施例につい
て、(a)が概要回路図、(b)が派生クロックの生成
回路例である。本発明のFIRフィルタの一実施例につ
いて、である。
FIG. 1A is a schematic circuit diagram of a first embodiment of an FIR filter of the present invention, and FIG. 1B is an example of a circuit for generating a derived clock. Fig. 4 shows an embodiment of the FIR filter of the present invention.

【図2】 その詳細回路図である。FIG. 2 is a detailed circuit diagram thereof.

【図3】 その動作状態を示すタイミングチャート
である。
FIG. 3 is a timing chart showing the operation state.

【図4】 本発明のFIRフィルタの第2実施例につい
て、(a)が概要回路図、(b)〜(d)がクロックの
波形例である。
FIG. 4A is a schematic circuit diagram of a second embodiment of the FIR filter of the present invention, and FIGS. 4B to 4D are examples of clock waveforms.

【図5】 その詳細回路図である。FIG. 5 is a detailed circuit diagram thereof.

【図6】 その動作状態を示すタイミングチャート
である。
FIG. 6 is a timing chart showing the operation state.

【図7】 従来のFIRフィルタについて、(a)が概
要回路図、(b)が詳細回路図である。
7A is a schematic circuit diagram and FIG. 7B is a detailed circuit diagram of a conventional FIR filter.

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

10〜13 データ保持回路 10,12 レジスタ(ラッチ、データ保持回路
中の第1系列部分) 11,13 レジスタ(ラッチ、データ保持回路
中の第2系列部分) 20〜23 乗算回路(積の部、演算回路) 30 総和回路(和の部、演算回路) 31〜33 加算回路33(足算回路、合算回
路、総和回路) 40 係数値選出回路(データ選出回路) 41,43 マルチプレクサ(MUX、セレク
タ、係数値選出) 42,44 マルチプレクサ(MUX、係数値選
出・データ選出) 50 中間算出値保持回路 51,52 レジスタ(ラッチ) B0〜B3 計数群(係数値) CLK 基本クロック(データ伝送用クロック) CLKa 正相クロック(分周クロック、振分用派生
クロック) CLKb 逆相クロック(分周クロック、振分用派生
クロック) X データ(入力データ、デジタルデータ) Y 積和演算値(出力データ)
10 to 13 Data holding circuit 10, 12 Register (latch, first series part in data holding circuit) 11, 13 Register (latch, second series part in data holding circuit) 20 to 23 Multiplication circuit (product part, Arithmetic circuit) 30 Summation circuit (sum section, arithmetic circuit) 31-33 Addition circuit 33 (addition circuit, summation circuit, summation circuit) 40 Coefficient value selection circuit (data selection circuit) 41, 43 Multiplexer (MUX, selector, Coefficient value selection) 42, 44 Multiplexer (MUX, coefficient value selection / data selection) 50 Intermediate calculated value holding circuit 51, 52 Register (latch) B0-B3 Count group (coefficient value) CLK Basic clock (data transmission clock) CLKa Normal-phase clock (divided clock, distribution-derived clock) CLKb Negative-phase clock (divided clock, distribution-derived clock) X data (input data, digital data) Y product-sum operation value (output data)

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】デジタルデータを複数の系列に振り分けな
がら逐次入力するとともに順送りして複数保持するデー
タ保持回路と、その複数データと所定の係数群との積和
演算値を算出するとともにその際に前記振り分けに対応
した前記係数群からの係数値選出を行う演算回路とを備
えているFIRフィルタ。
1. A data holding circuit for sequentially inputting digital data while distributing the data into a plurality of streams, sequentially feeding and holding a plurality of data, and calculating a product-sum operation value of the plurality of data and a predetermined coefficient group. An FIR filter comprising: an arithmetic circuit for selecting a coefficient value from the coefficient group corresponding to the distribution.
【請求項2】前記演算回路が、前記振り分けに対応した
前記複数データからのデータ選出も積和演算に際して行
うとともに、積和演算途中の中間算出値を保持するもの
であることを特徴とする請求項1記載のFIRフィル
タ。
2. The method according to claim 1, wherein said arithmetic circuit also selects data from said plurality of data corresponding to said distribution at the time of a product-sum operation and holds an intermediate calculated value during said product-sum operation. Item 1. An FIR filter according to Item 1.
JP2000165699A 2000-06-02 2000-06-02 Fir filter Pending JP2001345678A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000165699A JP2001345678A (en) 2000-06-02 2000-06-02 Fir filter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000165699A JP2001345678A (en) 2000-06-02 2000-06-02 Fir filter

Publications (1)

Publication Number Publication Date
JP2001345678A true JP2001345678A (en) 2001-12-14

Family

ID=18669137

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000165699A Pending JP2001345678A (en) 2000-06-02 2000-06-02 Fir filter

Country Status (1)

Country Link
JP (1) JP2001345678A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4814943B2 (en) * 2006-08-31 2011-11-16 富士通株式会社 Data transmission circuit and transmission method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4814943B2 (en) * 2006-08-31 2011-11-16 富士通株式会社 Data transmission circuit and transmission method

Similar Documents

Publication Publication Date Title
US8126949B1 (en) Reconfigurable filter node for an adaptive computing machine
JP5356537B2 (en) Digital signal processing block with pre-adder stage
US6532273B1 (en) Efficient polyphase decimation filter
US7480689B2 (en) Systolic de-multiplexed finite impulse response filter array architecture for linear and non-linear implementations
JPH0640301B2 (en) Parallel multiplier circuit
JP2002057555A (en) Transpose fir filter architecture
JP2001522576A (en) Shared resources for digital filters
JP2001345678A (en) Fir filter
JPH0834407B2 (en) Input weighted transversal filter
JP2005020554A (en) Digital filter
US7472150B2 (en) Method and system for time sharing N consecutive half-band decimating-by-2-filters using a single filter
US9098435B1 (en) Finite impulse response filter with parallel input
JPH0834406B2 (en) Input weighted transversal filter
JPH0998069A (en) Fir type digital filter
CN218352485U (en) Finite impulse response filter
JP2004128858A (en) Fir digital filter
CN116781041B (en) Multi-rate conversion filter with high resource utilization rate
CN108140017B (en) Method and apparatus for linear phase finite impulse response decimation filter
JP2001339278A (en) Fir filter
JP2650913B2 (en) Digital filter circuit
JPS63248217A (en) Fir digital filter
KR19990067409A (en) Circuit apparatus and method for multiple use of digital transversal filter
JP3155026B2 (en) Accumulator
JPH0575394A (en) Digital filter and digital signal processing system
Noll High throughput digital filters