JPH036691B2 - - Google Patents
Info
- Publication number
- JPH036691B2 JPH036691B2 JP11150084A JP11150084A JPH036691B2 JP H036691 B2 JPH036691 B2 JP H036691B2 JP 11150084 A JP11150084 A JP 11150084A JP 11150084 A JP11150084 A JP 11150084A JP H036691 B2 JPH036691 B2 JP H036691B2
- Authority
- JP
- Japan
- Prior art keywords
- coefficient data
- data
- storage circuit
- binary
- impulse response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 230000002441 reversible effect Effects 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 11
- 230000003111 delayed effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/06—Non-recursive filters
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Filters That Use Time-Delay Elements (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】
〔技術分野〕
本発明は直線位相の有限インパルス応答
(FIR)デイジタルフイルタに関するものである。TECHNICAL FIELD The present invention relates to linear phase finite impulse response (FIR) digital filters.
直線位相のデイジタルフイルタは、周波数に対
して直線位相である設計が可能であり、その設計
も比較的容易なため広く用いられるようになつて
きた。
Linear phase digital filters can be designed to have a linear phase with respect to frequency, and are relatively easy to design, so they have become widely used.
直線位相のFIRデイジタルフイルタの特徴とし
て、そのフイルタ次数をNとし、N個のインパル
ス応答列を
h(0)、h(1)、h(2)…h(N−2)、h(N−1
)
とした場合に、Nが奇数ならば、
h(0)=h(N−1)、h(1)=h(N−
2)…h(N−3/2)=h(N+1/2)
となり、Nが偶数ならば、
h(0)=h(N−1)、h(1)=h(N−2)…h(
N/2−2)=h(N/2+2)、h(N/2−1)=
h
(N/2+1)
となり、一般的に自然数n(0<n<N)を用い
て
h(n)=h(N−1−n)
が成り立つことが知られている。 A characteristic of a linear phase FIR digital filter is that its filter order is N, and the N impulse response sequences are h(0), h(1), h(2)...h(N-2), h(N- 1
), and if N is an odd number, h(0)=h(N-1), h(1)=h(N-
2)...h(N-3/2)=h(N+1/2), and if N is an even number, h(0)=h(N-1), h(1)=h(N-2)... h(
N/2-2)=h(N/2+2), h(N/2-1)=
h
(N/2+1), and it is generally known that h(n)=h(N-1-n) holds using a natural number n (0<n<N).
つまりインパルス応答列は、中央部を中心とし
て対称性を有しているのである。 In other words, the impulse response train has symmetry about the center.
FIRデイジタルフイルタのシステム関数は、Z
変換の複素変数Zを用いて、
H(z)=N-1
〓n=0
h(n)z-n
で表わされ、特定のフイルタ特性をもつh(n)
の係数列が決定される。こうして決定された係数
列に基づいて、各係数データがROM等の記憶回
路に記憶されるが、総ての係数データを記憶させ
たのでは大容量の記憶回路が必要となつてしま
う。 The system function of the FIR digital filter is Z
Using the complex variable Z of the transformation, H(z)= N-1 〓 n=0 h(n) expressed as z -n , and h(n) with specific filter characteristics.
The coefficient sequence of is determined. Based on the coefficient sequence determined in this way, each coefficient data is stored in a storage circuit such as a ROM, but storing all coefficient data would require a large capacity storage circuit.
本発明は直線位相の有限インパルス応答デイジ
タルフイルタのインパルス応答列の対称性を利用
し半分のインパルス応答列に対応するフイルタ係
数のみを記憶回路に記憶させ、これを可逆計数器
を用いて読み出すことにより、記憶回路の記憶容
量を半減することを目的としている。
The present invention makes use of the symmetry of the impulse response train of a linear phase finite impulse response digital filter, stores only the filter coefficients corresponding to half the impulse response train in a storage circuit, and reads them out using a reversible counter. The aim is to halve the storage capacity of the memory circuit.
第1図において、1は第1の記憶回路で、入力
から供給される符号化された2進入力データをN
回の標本値として保持するもので、最新の入力デ
ータがX(N−1)に記憶されると、その入力デ
ータ供給前にX(0)に記憶されていたデータが
捨てられ、常時N個の入力データが記憶されてい
る。2はROM等からなる第2の記憶回路で、2
進係数データH(0)、H(1)…H(M−1)、H(M
)
を記憶させてある。本例ではフイルタ次数をNと
してあり、Nが奇数の場合はM=N/2−1であ
り、偶数の場合はM=N/2である。すなわち全
係数データのうち半分だけを記憶回路2に記憶さ
せてある。3は上記係数データを読み出すための
可逆計数器、4は制御回路で、可逆計数器3のア
ツプダウンの切換え等を行なうものである。5は
乗算器で、入力データと係数データとの乗算を行
なうものである。6は加算器、7は累算器であ
る。
In FIG. 1, 1 is a first storage circuit which stores N encoded binary input data supplied from its input.
When the latest input data is stored in X(N-1), the data stored in X(0) before that input data is discarded, and N input data is stored. 2 is a second storage circuit consisting of ROM etc.;
Radical coefficient data H(0), H(1)...H(M-1), H(M
)
has been memorized. In this example, the filter order is set to N, and when N is an odd number, M=N/2-1, and when N is an even number, M=N/2. That is, only half of all coefficient data is stored in the storage circuit 2. 3 is a reversible counter for reading out the coefficient data, and 4 is a control circuit that performs up-down switching of the reversible counter 3, etc. A multiplier 5 multiplies input data and coefficient data. 6 is an adder, and 7 is an accumulator.
つぎに動作について説明する。記憶回路1には
N個の入力データX(0)…X(N−1)が記憶さ
れており、つぎに新しい入力データが供給される
までの間に各入力データX(0)…X(N−1)と
記憶回路2内の係数データH(0)…H(M)との
積和演算が行なわれる。この積和演算中は、入力
は閉じられ、循環路1aによりX(0)からX(N
−1)までのデータが1乗算ごとに1データ分だ
け転送され、各データが失なわれないようにして
乗算器5に逐次供給される。この順序は、X
(0)、X(1)…X(N−2)、X(N−1)の順であ
る。このデータの供給に伴つて記憶回路2から各
係数データが以下のように読み出されて積和演算
が行なわれるものである。 Next, the operation will be explained. The memory circuit 1 stores N pieces of input data X(0)...X(N-1), and each input data X(0)...X( N-1) and the coefficient data H(0) . . . H(M) in the storage circuit 2. During this product-sum calculation, the input is closed, and the circulation path 1a moves from X(0) to X(N
-1) is transferred by one data for each multiplication, and is sequentially supplied to the multiplier 5 so that each data is not lost. This order is
(0), X(1)...X(N-2), X(N-1). As this data is supplied, each coefficient data is read out from the storage circuit 2 as follows, and a product-sum calculation is performed.
フイルタ次数Nが奇数の場合と偶数の場合とで
読出し方法がやや異なり、まず奇数の場合につい
て説明する。まず、可逆計数器3を係数データH
(0)のアドレスAにセツトし、記憶回路1のデ
ータの循環に同期して1つずつアツプカウントし
ていく。これによつて、係数データH(0)…H
(M)がこの順に逐次読み出される。可逆計数器
3が係数データH(M)のアドレス(A+M)を
カウントすると、制御回路4からダウンモードの
指定出力が発生し、可逆計数器3がダウンカウン
トに切り換わる。そのため上記とは逆に、係数デ
ータH(M−1)…H(0)がこの順に読み出され
る。 The reading method is slightly different depending on whether the filter order N is an odd number or an even number, and the case where the filter order N is an odd number will be explained first. First, the coefficient data H of the reversible counter 3 is
It is set to address A (0) and counted up one by one in synchronization with the circulation of data in the memory circuit 1. As a result, coefficient data H(0)...H
(M) are sequentially read out in this order. When the reversible counter 3 counts the address (A+M) of the coefficient data H(M), a down mode designation output is generated from the control circuit 4, and the reversible counter 3 switches to down counting. Therefore, contrary to the above, the coefficient data H(M-1)...H(0) are read out in this order.
こうして係数データは、H(0)、H(1)…H(M
−1)、H(M)、H(M−1)…H(0)の順に乗
算器5に供給され、それぞれに対応する入力デー
タX(0)、X(1)…X(N−2)、X(N−1)とそ
れぞれ乗算される。ここまでの動作を示したのが
第2図である。上記乗算結果は加算器6に供給さ
れ、総ての積和演算結果が累算器7から出力され
る。この出力Yは、
Y=N-1
〓n=0
H(n)・X(2M−n)+H(M)・X(M)+N-1
〓n=0
H(M−1−n)・X(M−1−n)
で表わされる。 In this way, the coefficient data are H(0), H(1)...H(M
-1), H(M), H(M-1)...H(0) are supplied to the multiplier 5 in this order, and the corresponding input data X(0), X(1)...X(N-2 ) and X(N-1), respectively. FIG. 2 shows the operation up to this point. The above multiplication results are supplied to an adder 6, and all product-sum calculation results are output from an accumulator 7. This output Y is: Y= N-1 〓 n=0 H(n)・X(2M-n)+H(M)・X(M)+ N-1 〓 n=0 H(M-1-n)・Represented by X(M-1-n).
つぎにフイルタ次数Nが偶数の場合について説
明する。まず、可逆計数器3を係数データH(0)
のアドレスAにセツトし、上記と同様に1つずつ
アツプカウントしていく。可逆計数器3が係数デ
ータH(M−1)のアドレス(A+M−1)をカ
ウントすると、制御回路4からのクロツクパルス
が1パルスだけ停止し、可逆計数器3の内容が1
回だけそのまま保持される。つぎからは可逆計数
器3がダウンモードに切り換わつて、1つずつダ
ウンカウントされていく。これによつて、係数デ
ータは、H(0)、H(1)…H(M−2)、H(M−
1)、H(M−1)、H(M−2)…H(1)、H(0)
とこの順に逐次読み出され、それぞれに対応する
入力データX(0)、X(1)…X(N−2)、X(N−
1)とそれぞれ乗算される。ここまでの動作を示
したのが第3図である。この乗算結果は上記と同
様に逐次加算されて累算器7から出力される。こ
の出力Yは、
Y=N-1
〓n=0
H(n)・X(2M−1−n)+N-1
〓n=0
H(M−1−n)・X(M−1−n)
で表わされる。 Next, a case where the filter order N is an even number will be explained. First, the reversible counter 3 is set to coefficient data H(0)
address A, and count up one by one in the same way as above. When the reversible counter 3 counts the address (A+M-1) of the coefficient data H(M-1), the clock pulse from the control circuit 4 stops by one pulse, and the contents of the reversible counter 3 become 1.
It will only be kept as is. From then on, the reversible counter 3 switches to the down mode and counts down one by one. As a result, the coefficient data are H(0), H(1)...H(M-2), H(M-
1), H(M-1), H(M-2)...H(1), H(0)
are sequentially read out in this order, and the corresponding input data X(0), X(1)...X(N-2), X(N-
1) respectively. FIG. 3 shows the operation up to this point. The multiplication results are sequentially added and output from the accumulator 7 in the same manner as above. This output Y is as follows: Y= N-1 〓 n=0 H(n)・X(2M-1-n)+ N-1 〓 n=0 H(M-1-n)・X(M-1- n).
以上のようにして累算器7から積和演算結果が
得られるのである。 As described above, the accumulator 7 obtains the product-sum operation result.
本発明によれば、インパルス応答列の対称性に
基づいて、フイルタ次数Nが奇数の場合はh
(0)、h(1)…h(N−1/2)まで、偶数の場合は
h
(0)、h(1)…h(N/2−1)までに対応する2
進係数データを記憶させておき、可逆計数器を用
いて各データを逐次読み出した後この逆の順に再
び読み出して入力データと逐次乗算するようにし
たので、2進係数データの記憶容量を半減でき、
しかも読出し制御のための回路構成も簡素化する
ことができる。
According to the present invention, based on the symmetry of the impulse response train, when the filter order N is an odd number, h
(0), h(1)...up to h(N-1/2), and in the case of an even number, h (0), h(1)...up to h(N/2-1) 2
Since the binary coefficient data is stored in memory, each data is sequentially read out using a reversible counter, and then read out again in the reverse order and successively multiplied with the input data, the storage capacity of the binary coefficient data can be halved. ,
Moreover, the circuit configuration for read control can also be simplified.
第1図は本発明の一実施例を示したブロツク
図、第2図および第3図は動作説明のための説明
図である。
1……第1の記憶回路、2……第2の記憶回
路、3……可逆計数器、4……制御回路、5……
乗算器、6……加算器、7……累算器。
FIG. 1 is a block diagram showing one embodiment of the present invention, and FIGS. 2 and 3 are explanatory diagrams for explaining the operation. DESCRIPTION OF SYMBOLS 1...First memory circuit, 2...Second memory circuit, 3...Reversible counter, 4...Control circuit, 5...
Multiplier, 6...adder, 7...accumulator.
Claims (1)
記憶回路と、複数の2進係数データを記憶する第
2の記憶回路と、上記2進入力データと上記2進
係数データとを逐次乗算した後累算して積和演算
を行なう演算回路とを具備し、かつフイルタ次数
をNとした場合、そのシステム関数H(z)がイ
ンパルス応答係数h(n)を用いて、 H(z)=N-1 〓n=0 h(n)z-n で表され、しかもインパルス応答が h(n)=h(N−1−n) を満足する直線位相の有限インパルス応答デイジ
タルフイルタにおいて、 上記インパルス応答の対称性に基づいて、フイ
ルタ次数Nが奇数の場合は、h(0)、t(1)…h
(N−1/2)まで、偶数の場合は、h(0)、h(1)
… h(N/2−1)までに対応する2進係数データ
をこの順番で第2の記憶回路に記憶させ、 第2の記憶回路の各2進係数データを、Nが奇
数の場合には、h(0)、h(1)…h(N−1/2)ま で、Nが偶数の場合には、h(0)、h(1)…h
(N/2−1)までを、h(n)のnの大きさに従
つて順次読み出した後、上記各2進係数データ
を、Nが奇数の場合には、h(N−3/2)からh (0)まで、Nが偶数の場合には、h(N/2−
1)からh(0)までを上記とは逆の順番で再び
読み出す可逆計数器を設け、 第2の記憶回路からの各2進係数データと第1
の記憶回路からの2進入力データとの積和演算を
行なうことを特徴とするデイジタルフイルタ。[Scope of Claims] 1. A first storage circuit that stores a plurality of binary input data in a delayed manner, a second storage circuit that stores a plurality of binary coefficient data, and the binary input data and the binary coefficient data. If the system is equipped with an arithmetic circuit that performs a product-sum operation by sequentially multiplying and accumulating data, and the filter order is N, then the system function H(z) is calculated using the impulse response coefficient h(n). , H(z)= N-1 〓 n=0 h(n)z -n , and the impulse response is a linear phase finite impulse response that satisfies h(n)=h(N-1-n). In the digital filter, based on the symmetry of the above impulse response, if the filter order N is an odd number, h(0), t(1)...h
Up to (N-1/2), h(0), h(1) for even numbers
... The binary coefficient data corresponding to up to h(N/2-1) are stored in the second storage circuit in this order, and each binary coefficient data in the second storage circuit is , h(0), h(1)...h(N-1/2), if N is an even number, h(0), h(1)...h
(N/2-1) in order according to the size of n of h(n), and then read each binary coefficient data as h(N-3/2) if N is an odd number. ) to h (0), and if N is even, h(N/2−
A reversible counter is provided to read out the values from 1) to h(0) again in the reverse order to the above, and each binary coefficient data from the second storage circuit and the first
A digital filter that performs a product-sum operation with binary input data from a storage circuit.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11150084A JPS60254909A (en) | 1984-05-31 | 1984-05-31 | Digital filter |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11150084A JPS60254909A (en) | 1984-05-31 | 1984-05-31 | Digital filter |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS60254909A JPS60254909A (en) | 1985-12-16 |
| JPH036691B2 true JPH036691B2 (en) | 1991-01-30 |
Family
ID=14562868
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP11150084A Granted JPS60254909A (en) | 1984-05-31 | 1984-05-31 | Digital filter |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS60254909A (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2713402B2 (en) * | 1987-03-23 | 1998-02-16 | 松下電器産業株式会社 | Sound field correction device |
| JP2968350B2 (en) * | 1991-01-11 | 1999-10-25 | 三菱電機株式会社 | Quadrature modulation circuit |
| JP3899966B2 (en) | 2002-03-14 | 2007-03-28 | 松下電器産業株式会社 | Digital signal receiver |
-
1984
- 1984-05-31 JP JP11150084A patent/JPS60254909A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS60254909A (en) | 1985-12-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0022302B1 (en) | Decimation, linear phase, digital fir filter | |
| US4450533A (en) | Distributed arithmetic digital processing circuit | |
| US3997773A (en) | Interpolating digital filter with input buffer | |
| US4020332A (en) | Interpolation-decimation circuit for increasing or decreasing digital sampling frequency | |
| CA1039364A (en) | Interpolating digital filter | |
| US4817025A (en) | Digital filter | |
| US3706076A (en) | Programmable digital filter apparatus | |
| US4727505A (en) | Convolution arithmetic circuit for digital signal processing | |
| JP2541128B2 (en) | Multi-carrier roll-off filter | |
| US5191547A (en) | Decimating digital finite impulse response filter | |
| JPS6364100B2 (en) | ||
| EP0034241B1 (en) | Non-recursive digital filter | |
| US5710729A (en) | Filtering method and digital over sampler filter with a finite impulse response having a simplified control unit | |
| US4701875A (en) | High speed convolution arithmetic circuit with multiple counters | |
| JPH036691B2 (en) | ||
| US4204177A (en) | Non-recursive digital filter with reduced output sampling frequency | |
| EP0559154A1 (en) | Digital filter | |
| US4118784A (en) | Differential DFT digital filtering device | |
| EP0156648B1 (en) | Convolution arithmetic circuit for digital signal processing | |
| JPH0555875A (en) | Digital filter | |
| JP3243831B2 (en) | FIR type filter | |
| JPH0136727B2 (en) | ||
| SU1350825A1 (en) | Digital filter | |
| JPS6118212A (en) | Digital filter | |
| JPS62118630A (en) | Digital filter |