JPH02264509A - Digital filter - Google Patents

Digital filter

Info

Publication number
JPH02264509A
JPH02264509A JP8497589A JP8497589A JPH02264509A JP H02264509 A JPH02264509 A JP H02264509A JP 8497589 A JP8497589 A JP 8497589A JP 8497589 A JP8497589 A JP 8497589A JP H02264509 A JPH02264509 A JP H02264509A
Authority
JP
Japan
Prior art keywords
data
rams
address
read
stored
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
JP8497589A
Other languages
Japanese (ja)
Inventor
Hisatsugu Takami
久嗣 高味
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.)
Pioneer Video Corp
Pioneer Corp
Original Assignee
Pioneer Video Corp
Pioneer Electronic 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 Pioneer Video Corp, Pioneer Electronic Corp filed Critical Pioneer Video Corp
Priority to JP8497589A priority Critical patent/JPH02264509A/en
Publication of JPH02264509A publication Critical patent/JPH02264509A/en
Pending legal-status Critical Current

Links

Landscapes

  • Filters That Use Time-Delay Elements (AREA)

Abstract

PURPOSE:To obtain a digital filter with a low cost by supplying alternately a new data to two storage areas performing the function of the delay element group of the digital filter and updating the oldest data in each storage area. CONSTITUTION:A latch circuit 51 keeps supplying an input data for a write period to RAMs 51b, 52b. A controller 47a is provided with the address designation patterns of a number in response to the address capacity of RAMs A, B and its generating means. A new data held in the latch 51a is alternately fetched in the RAMs A, B in the data write routine and the new data is stored in the address of the oldest data stored in the RAMs A, B. The addition term between odd numbered data and even numbered data is used as the unit of addition in the integration value calculation, they are separated in advance into the odd and even number data and stored separately in the two RAMs. When corresponding data pair is read, the data transfer between the RAMs is not required.

Description

【発明の詳細な説明】 技術分野 本発明は、デジタルフィルタに関する。[Detailed description of the invention] Technical field The present invention relates to a digital filter.

背景技術 デジタルフィルタの従来例を第3図を参照しつつ説明す
る。
Background Art A conventional example of a digital filter will be explained with reference to FIG.

第3図は、デジタルフィルタの伝達関数が有限なインパ
ルス応答の数列として表わされるFIR(Finite
 Impulse Re5ponse )フィルタの一
例を示しており、一連のサンプリングデータである入力
データは縦列に接続された遅延素子1〜1oの一端に供
給される。各遅延素子は例えばシフトレジスタにより構
成され、データサンプリング周期のクロックに同期に動
作し、入力データを順次遅延せしめる。
Figure 3 shows the FIR (Finite
An example of an Impulse Re5ponse) filter is shown in which input data, which is a series of sampling data, is supplied to one end of delay elements 1 to 1o connected in series. Each delay element is constituted by, for example, a shift register, operates in synchronization with a clock of a data sampling period, and sequentially delays input data.

各遅延素子の出力データは夫々係数乗算器11〜20に
供給され、係数値aO−agが乗ぜられる。係数乗算器
11〜20の各乗算出力は加算器40により加算されて
FIRフィルタの出力データとなる。
The output data of each delay element is supplied to coefficient multipliers 11 to 20, respectively, and multiplied by a coefficient value aO-ag. The multiplication outputs of the coefficient multipliers 11 to 20 are added by an adder 40 to become output data of the FIR filter.

かかるFIRフィルタのインパルス応答特性が第9図の
如く左右対称となるとき、第3図に示される乗算器の計
数値が、aQ ”a9 +  al −aQ +a2″
″a71  a3 ”aQ 1  a4−85となる関
係がある。これを活用して回路規模を縮小させるべく、
第4図の如く係数乗算器16〜20を削除し、代りに加
算器31〜35を用いて乗算回数を5回に減らし、同じ
演算結果を得ている。なお、第3図及び第4図に示され
たFIRフィルタにおいて対応する部分には同一符号が
付されている。
When the impulse response characteristics of such an FIR filter are symmetrical as shown in FIG. 9, the count value of the multiplier shown in FIG. 3 is aQ "a9 + al - aQ + a2"
There is a relationship as follows: ``a71 a3'' aQ 1 a4-85. In order to utilize this to reduce the circuit scale,
As shown in FIG. 4, coefficient multipliers 16 to 20 are removed and adders 31 to 35 are used instead to reduce the number of multiplications to five, and the same calculation result is obtained. Note that corresponding parts in the FIR filters shown in FIGS. 3 and 4 are given the same reference numerals.

第4図に示されたFIRフィルタは、その演算処理を時
分割的になすことにより、更に第5図の如く簡略化され
る。すなわち、第4図の加算器31〜35は遅延素子1
〜5の出力を択一的に選択するセレクタ41、遅延素子
6〜10の出力を択一的に選択するセレクタ42及び両
セレクタの出力を加算する加算器43に置換される。ま
た、係数乗算器11〜15は、係数セレクタ44及び乗
算器45に置換される。セレクタ41.42及び44各
々はn個(第5図の例ではn−5)のデータの1を選択
する選択子を有し、図示しないコントローラによって互
いに同期しつつ入力データ供給周期の1 / n以下の
周期により選択子の切換動作をなす。乗算器45は加算
器43の出力と係数セレクタ44の出力する係数とを乗
じて乗算値を得、該乗算値を積算器40に供給する。積
算器40は、係数aQ−a4が順次乗ぜられた乗算値群
毎の積算をなす。
The FIR filter shown in FIG. 4 can be further simplified as shown in FIG. 5 by performing its arithmetic processing in a time-sharing manner. That is, the adders 31 to 35 in FIG.
It is replaced with a selector 41 that alternatively selects the outputs of delay elements 6 to 5, a selector 42 that alternatively selects the outputs of delay elements 6 to 10, and an adder 43 that adds the outputs of both selectors. Further, the coefficient multipliers 11 to 15 are replaced with a coefficient selector 44 and a multiplier 45. Each of the selectors 41, 42, and 44 has a selector for selecting 1 of n pieces of data (n-5 in the example of FIG. 5), and is synchronized with each other by a controller (not shown) at 1/n of the input data supply period. The selector switching operation is performed according to the following cycle. Multiplier 45 multiplies the output of adder 43 by the coefficient output from coefficient selector 44 to obtain a multiplied value, and supplies the multiplied value to integrator 40 . The multiplier 40 performs multiplication for each group of multiplication values sequentially multiplied by the coefficient aQ-a4.

従って、遅延素子1〜10に夫々データDO〜D9が保
持されているとき積算器40の出力データΣ0は、 ΣO” (D9 +Do ) X ao +(D8+D
l )Xal + (D7 +D2 )Xaz + (
DB+D3 )Xaz + (D5 +Da )Xa4
次に、新規入力データDIGが供給されて保持データが
シフトされると、出力データΣ1は、Σ+ −(DIG
 +DI ) xaQ + (D9 +D2 )Xal
 + (D8+D3 )Xaz + (D7+Da )
Xa3 + (DB +D5 )Xa4と表される。
Therefore, when data DO to D9 are held in delay elements 1 to 10, respectively, the output data Σ0 of the integrator 40 is ΣO" (D9 + Do) X ao + (D8 + D
l)Xal + (D7 +D2)Xaz + (
DB+D3)Xaz+(D5+Da)Xa4
Next, when new input data DIG is supplied and the held data is shifted, output data Σ1 becomes Σ+ −(DIG
+DI)xaQ+(D9+D2)Xal
+ (D8+D3)Xaz + (D7+Da)
It is expressed as Xa3 + (DB +D5)Xa4.

同様にして、Σ2.Σ3・・・・・・が得られる。Similarly, Σ2. Σ3... is obtained.

かかる演算処理においてセレクタ41及び42により選
択されるデータ、セレクタ44により選択される係数の
組合せ及び積算値Σnを第7図に示す。
FIG. 7 shows the data selected by the selectors 41 and 42, the combination of coefficients selected by the selector 44, and the integrated value Σn in such arithmetic processing.

ところで、第5図に示されたFIRフィルタの遅延素子
1〜10、セレクタ41及び42は、回路コスト等の理
由により通常メモリ51及び52によって構成される。
Incidentally, the delay elements 1 to 10 and the selectors 41 and 42 of the FIR filter shown in FIG. 5 are usually constituted by memories 51 and 52 for reasons such as circuit cost.

このような構成例を第6図に示す。An example of such a configuration is shown in FIG.

第6図に示されたFIRフィルタにおいて、第5図に示
された部分と対応する部分には同一符号を付しており、
入力データは、データを一時保持するラッチ回路51a
及びRAM511)からなるメモリ51に供給される。
In the FIR filter shown in FIG. 6, parts corresponding to those shown in FIG. 5 are given the same reference numerals.
The input data is sent to a latch circuit 51a that temporarily holds the data.
and RAM 511).

RAM51 +)はコントローラ47から供給される書
込指令に応じて指定された書込アドレスに入力データを
記憶する。また、読出指令に応じて指定された読出アド
レスに記憶されたデータを読出し、加算回路43の一方
入力端及びラッチ回路52a及びRAM52bからなる
メモリ52に供給する。RAM52bは、コントローラ
47から供給される書込指令に応じて指定された書込ア
ドレスにラッチ回路52aの保持するデータを記憶する
。また、読出指令に応じて指定された読出アドレスに記
憶されたデータを読出し、加算器43の他方入力端に供
給する。
The RAM 51 +) stores input data at a write address designated in response to a write command supplied from the controller 47. Further, the data stored in the read address specified in response to the read command is read and supplied to one input terminal of the adder circuit 43, and the memory 52 consisting of the latch circuit 52a and the RAM 52b. The RAM 52b stores data held by the latch circuit 52a at a write address specified in response to a write command supplied from the controller 47. Further, the data stored in the read address specified in response to the read command is read and supplied to the other input terminal of the adder 43.

加算器43は再入力データの加算結果を乗算器45の一
方入力端に供給する。乗算器45の他方入力端にはRO
M46から係数データが供給される。
The adder 43 supplies the addition result of the re-input data to one input terminal of the multiplier 45 . The other input terminal of the multiplier 45 has RO
Coefficient data is supplied from M46.

ROM46はコントローラ47から読出アドレスが供給
されると、当該アドレスに記憶された係数を読出して乗
算器45に供給する。乗算器45の出力は積算器40に
より、一連の係数aO−84の乗算値毎に積算され、出
力データとして出力される。なお、各回路の動作タイミ
ングはコントロ−ラ47によって制御されている。
When the ROM 46 is supplied with a read address from the controller 47, it reads out the coefficient stored at the address and supplies it to the multiplier 45. The output of the multiplier 45 is integrated by the integrator 40 for each multiplication value of a series of coefficients aO-84, and is output as output data. Note that the operation timing of each circuit is controlled by a controller 47.

次に、コントローラ47の動作について第8図を参照し
つつ説明する。コントローラ47は、MPU等によって
構成されており、2つの記憶領域を形成するRAMA 
(RAM51b)及びRAMB (RAM52b)へデ
ータを書込むデータ書込ルーチンとRAMA及びBから
データを読出すデータ読出ルーチンと乗算器45に乗算
係数を設定する係数設定ルーチンとを実行する。
Next, the operation of the controller 47 will be explained with reference to FIG. The controller 47 is composed of an MPU, etc., and includes a RAM and a RAM that form two storage areas.
A data write routine to write data to RAMB (RAM51b) and RAMB (RAM52b), a data read routine to read data from RAMA and RAMB, and a coefficient setting routine to set a multiplication coefficient to the multiplier 45 are executed.

データ書込みルーチンは、RAMBにおいて時間的に最
も旧いデータを記憶しているアドレスにRAMAにおい
て最も旧いデータを移動し、RAMAの最も旧いデータ
を記憶していたアドレスに新規データを書込むようにデ
ータの移動を制御する。
The data write routine moves the oldest data in RAM to the address in RAMB that stores the oldest data in terms of time, and writes new data to the address in RAM that stores the oldest data. Control movement.

データ読出ルーチンは、第7図に示される新旧のデータ
対を逐次読出すべくRAMA及びBの読出順序パターン
たる一連の読出アドレスを指定する。
The data read routine specifies a series of read addresses as a read order pattern for RAMA and B in order to sequentially read the new and old data pairs shown in FIG.

例えば、第8図(A)の如<RAMAのアドレス0〜4
に夫々データD9〜D5が記憶され、RAMBのアドレ
ス0〜4に夫々データD、−DJが記憶されている状態
において、コントローラ47は積算値Σ0を得るべくア
ドレス指定パターン0を実行する。このとき、データ読
出ルーチンは、RAMAにアドレスO〜4を順次指定す
る。また、これに同期してRAMBにアドレス0〜4を
順次指定し、アドレスの指定に同期してROM46に係
数aQ−a4を順次出力させる。そうすると、読出され
た対のデータは加算器43に供給され、加算器43は、
加算値(Dg +Do ) 、  (DB 十D+ )
、(D7 +D2 )、(D6+D3 )及び(D5 
+D4 )を次々に出力する。かかる加算値に乗算器4
5によって係数設定ルーチンにより指定された係数aO
−adが夫々乗ぜられて、乗算値ao  (D9 +D
O) 、 at  (Da +D+ ) 。
For example, as shown in FIG. 8(A) < RAMA address 0 to 4
In a state where data D9 to D5 are stored in RAMB addresses 0 to 4, and data D and -DJ are stored in RAMB addresses 0 to 4, respectively, controller 47 executes addressing pattern 0 to obtain integrated value Σ0. At this time, the data read routine sequentially specifies addresses O to 4 to RAMA. Further, in synchronization with this, addresses 0 to 4 are sequentially specified in the RAMB, and coefficients aQ-a4 are sequentially outputted to the ROM 46 in synchronization with the address specification. Then, the read pair of data is supplied to the adder 43, and the adder 43
Addition value (Dg + Do), (DB +D+)
, (D7 +D2), (D6+D3) and (D5
+D4) are output one after another. A multiplier 4 is added to this added value.
The coefficient aO specified by the coefficient setting routine by 5
-ad are respectively multiplied, and the multiplication value ao (D9 +D
O), at (Da +D+).

a2 (D7 +D2 )、aa (DB +D3 )
、aa(Ds +Da )が順次得られる。積算器40
は、各乗算値を逐次積算して、既述した積算値Σ0を出
力する。
a2 (D7 +D2), aa (DB +D3)
, aa(Ds +Da) are sequentially obtained. Totalizer 40
integrates each multiplication value one after another and outputs the above-mentioned integrated value Σ0.

RAMA及びBからのデータ読出が終わるとデータ書込
みルーチンが実行される。データ書込みルーチンは、R
AMAのアドレス4に記憶されたRAMAにおいて最も
旧いデータD5をRAMBにおいて最旧のデータDoが
記憶されているアドレスOに転送し記憶させる。そして
、RAMAのアドレス4には最新のデータD+oを記憶
させる。
After data reading from RAMA and B is completed, a data writing routine is executed. The data write routine is R
The oldest data D5 in RAMA stored at address 4 of AMA is transferred to and stored in address O where the oldest data Do is stored in RAMB. Then, the latest data D+o is stored at address 4 of RAMA.

すると、RAMA及びBのデータ配列は第8図(B)の
如くなり、第5図において遅延素子1〜10の保持デー
タが1ずつシフトしたのと等価である。
Then, the data arrays of RAMA and B become as shown in FIG. 8(B), which is equivalent to shifting the data held by delay elements 1 to 10 by one in FIG. 5.

コントローラ47は、第8図(B)に示されるデータを
得てΣ】を得るべく、アドレス指定パターン1を実行す
る。すなわち、データ読出ルーチンによりRAMAに読
出アドレス4,0,1,2゜3を順次供給し、このRA
MAへのアドレス供給に対応してRAMBにアドレス1
. 2. 3.4゜0を順次供給する。また、加算器4
3の出力タイミングに合せてROM46に係数ao+a
l+a2.a3及びa4を順次出力させる。その結果、
積算器40の出力には積算値Σ1が得られる。
The controller 47 executes addressing pattern 1 to obtain the data shown in FIG. 8(B) and obtain Σ]. That is, the data read routine sequentially supplies read addresses 4, 0, 1, 2°3 to RAMA, and
Address 1 is added to RAMB in response to address supply to MA.
.. 2. 3.4°0 is supplied sequentially. Also, adder 4
The coefficient ao+a is stored in the ROM 46 in accordance with the output timing of 3.
l+a2. Output a3 and a4 sequentially. the result,
An integrated value Σ1 is obtained at the output of the integrator 40.

RA M A及びBからデータの読み出しを終えると、
データ書込ルーチンを実行してRAMAのアドレス31
こ3己憶されたデータD6をRAMBのアドレス1に移
動し、RAMAのアドレス3に新規データDI+を記憶
する。従ってRAMA及びBのデータ配列は第8図(C
)の如くなる。
After reading data from RAM A and B,
Execute the data write routine and read RAM address 31.
3. Move the stored data D6 to address 1 of RAMB, and store new data DI+ to address 3 of RAMA. Therefore, the data arrangement of RAMA and B is shown in Figure 8 (C
).

コントローラ47は、以下同様にして第8図(C)〜第
8図(E)に示されるアドレス指定パターンを実行し、
積算値Σ2〜Σ4が得られる。
The controller 47 similarly executes the addressing patterns shown in FIGS. 8(C) to 8(E),
Integrated values Σ2 to Σ4 are obtained.

積算値Σ5を得る場合の第8図(F)の如きアドレス指
定パターン5は、RAMA及びBにおけるデータ配列が
一巡して積算値Σ0を得る場合のRAMA及びBのデー
タ配列と等価となる。従って、コントローラ47がアド
レス指定パターン0〜4の実行を繰り返すことにより、
積算値Σ0・・・・・・Σn・・・・・・が得られる。
The addressing pattern 5 as shown in FIG. 8(F) when obtaining the integrated value Σ5 is equivalent to the data arrangement of RAMA and B when the data arrangement in RAMA and B completes one cycle to obtain the integrated value Σ0. Therefore, by the controller 47 repeating the execution of addressing patterns 0 to 4,
Integrated values Σ0...Σn... are obtained.

一般に、メモリのアドレス容量に応じた数のアドレス指
定パターンが用意される。
Generally, a number of addressing patterns are prepared depending on the address capacity of the memory.

ところで、上述した従来のデジタルフィルタは−群の遅
延素子を2つのメモリに置換して、回路を簡略化したの
であるが、デジタルフィルタは回路の部品として使用さ
れるものであり、更に低コストが要求されている。
By the way, in the conventional digital filter mentioned above, the circuit was simplified by replacing the - group delay elements with two memories, but the digital filter is used as a component of the circuit, and is even lower in cost. requested.

発明の概要 よって、本発明の目的は低コストのデジタルフィルタを
提供することである。
SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a low cost digital filter.

上記目的を達成するため、サンプル値記憶手段と、上記
サンプル値記憶手段に一連の人力サンプル値を所定書込
周期にて順次書込む書込手段と、上記サンプル値記憶手
段から上記書込周期の1/n以下の読出し周期の読出に
よってn個のアドレスからサンプル値を読み出す読出手
段と、読み出されたn個のサンプル値に対応した所定係
数を乗じて乗算値を得る乗算手段と、得られた乗算値各
々を積算する積算手段とを含むデジタルフィルタにおい
て、上記サンプル値記憶手段は、n個のアドレス群から
なる第1及び第2領域を有し、上記書込手段は、上記入
力サンプル値の各サンプル値をその入力順に交互に上記
第1及び第2領域内の最旧のサンプル値と置換する如く
書込み、上記読出手段は、第1及び第2領域からの読出
順序パターンの0組の1を順に実行することを繰り返し
てサンプル値を読み出し、上記乗算手段は、読み出され
たn個のサンプル値に上記読出順序パターン各々に対応
した配列の係数群を乗することを特徴とする。
In order to achieve the above object, sample value storage means; writing means for sequentially writing a series of manually sampled values into the sample value storage means at a predetermined writing cycle; reading means for reading sample values from n addresses by reading at a readout cycle of 1/n or less; multiplication means for multiplying the read n sample values by a predetermined coefficient corresponding to the multiplied value; In the digital filter, the sample value storage means has first and second areas consisting of n address groups, and the writing means is configured to store the input sample value. The sample values of 1 is repeated in order to read sample values, and the multiplication means multiplies the read n sample values by a group of coefficients in an array corresponding to each of the readout order patterns.

実施例 本発明においては2つの記憶領域間におけるデータ転送
を不要としてデータラッチ回路、再記憶領域を結合する
データバス、転送コントロール回路等を削減している。
Embodiment The present invention eliminates the need for data transfer between two storage areas, thereby eliminating the need for a data latch circuit, a data bus for coupling re-storage areas, a transfer control circuit, etc.

第1図は、本発明の実施例を示しており、第6図に示さ
れたFIRフィルタと対応する部分には同一符号を付し
、かかる部分の説明は省略する。
FIG. 1 shows an embodiment of the present invention, and parts corresponding to those of the FIR filter shown in FIG. 6 are given the same reference numerals, and explanations of these parts will be omitted.

第1図において、ラッチ回路51. aには入力データ
が所定サンプリング周期で供給される。ラッチ回路51
aは、この入力データを保持して書込み周期の間RAM
51b及び52bに供給し続ける。
In FIG. 1, latch circuit 51. Input data is supplied to a at a predetermined sampling period. Latch circuit 51
a is a RAM that holds this input data during the write cycle.
51b and 52b.

コントローラ47aはRAM51b及び52bのデータ
書込及びデータ読出を制御する。また、コントローラ4
7aは各回路の動作タイミングを図示しないタイミング
クロック等によって制御し動作を同期させている。RA
M51b及び52bから読出された2つのデータは加算
器43の両入力端に供給される。他の構成は従来例と同
様である。
The controller 47a controls data writing and data reading of the RAMs 51b and 52b. Also, controller 4
Reference numeral 7a controls the operation timing of each circuit using a timing clock (not shown) or the like to synchronize the operations. R.A.
The two data read from M51b and M52b are supplied to both input ends of adder 43. Other configurations are similar to the conventional example.

次に、コントローラ47aの動作について第2図を参照
しつつ説明する。
Next, the operation of the controller 47a will be explained with reference to FIG.

まず、コントローラ47aは、RAMA (RAM5 
l b)及びRAMB (RAM52b)にデータを書
込むデータ書込みルーチンと、RAMA及びRAMBか
らデータを読出すデータ読出ルーチン及び乗算器45に
乗算係数を設定する係数設定ルーチンを実行する。また
、コントローラ47aは、RAMA及びBのアドレス容
量に応じた数のアドレス指定パターンを内蔵するROM
に記憶し、あるいは制御プログラム上に形成されたアッ
プカウンタ及びダウンカウンタ等からなるアドレス指定
パターン発生手段を有する。例えば、第2図の如(RA
MA及びB各々のアドレス容量が5である場合、アドレ
ス指定パターンO〜9が用意される。
First, the controller 47a controls the RAM (RAM5
lb) and RAMB (RAM52b); a data read routine that reads data from RAMA and RAMB; and a coefficient setting routine that sets a multiplication coefficient in the multiplier 45. Further, the controller 47a has a ROM containing a number of addressing patterns corresponding to the address capacity of RAM and B.
It has an addressing pattern generating means consisting of an up counter, a down counter, etc. stored in the control program or formed on the control program. For example, as shown in Figure 2 (RA
When the address capacity of each of MA and B is 5, addressing patterns O to 9 are prepared.

データ書込ルーチンは、ラッチ51aに保持された新規
データをRAMA及びBに交互に取り込ませ、かつ各R
AMの最旧のデータを記憶したアドレスに記憶させる。
The data write routine causes RAM and B to take in new data held in the latch 51a alternately, and each R
The oldest data of AM is stored at the stored address.

こうすると、第7図に示されるように積算値演算が奇数
番目のデータと偶数番目のデータとの加算器を加算単位
とすることから、予め奇数データと偶数データとに別け
て2つのRAMに別々に記憶し、対応するデータ対を読
出すようにしてRAM間のデータ転送を不要とし、デー
タの読出しを簡単にすることが出来る。
In this way, as shown in FIG. 7, since the integrated value calculation uses the adder for odd-numbered data and even-numbered data as the addition unit, the odd-numbered data and even-numbered data are separated in advance and stored in two RAMs. By storing data separately and reading out corresponding data pairs, data transfer between RAMs becomes unnecessary, and data reading can be simplified.

データ読出ルーチンは、積和Σ0・・・・・・Σn・・
・・・・を演算するために、第7図に示されるデータ対
を得るべく一連のアドレス指定パターンから該当する読
出順序パターンを順次読出してRAMA及びBの読出ア
ドレスの指定をなす。
The data read routine is the sum of products Σ0...Σn...
In order to calculate the data pairs shown in FIG. 7, the corresponding readout order patterns are sequentially read out from a series of address designation patterns to designate the readout addresses of RAMA and B.

例えば、第2図(A)如<RAMAのアドレス0〜4に
夫々偶数番目のデータDo、D2.D4゜D9.DBが
記憶され、RAMBのアドレスO〜4に夫々奇数番目の
データD、、D3.D5゜Dy、D9が記憶された状態
において、コントローラ47aは積算値Σ0を算出すべ
くアドレス指定パターンOを実行する。
For example, as shown in FIG. 2A, even-numbered data Do, D2 . D4゜D9. DB is stored, and odd-numbered data D, , D3 . With D5°Dy and D9 stored, the controller 47a executes the addressing pattern O to calculate the integrated value Σ0.

アドレス指定パターンOを実行すると、データ読出ルー
チンは、RAMAにアドレス0〜4を順次供給する。ま
た、RAMAへのアドレス供給に同期してRAMBにア
ドレス4〜0を順次供給し、このデータの読出順序パタ
ーンに対応した配列の係数列aO+  al +  a
d +  a31  alをROM46に順次出力させ
る。
When addressing pattern O is executed, the data read routine sequentially supplies addresses 0-4 to RAMA. In addition, addresses 4 to 0 are sequentially supplied to RAMB in synchronization with the supply of addresses to RAMA, and a coefficient sequence aO+ al + a of an arrangement corresponding to the reading order pattern of this data is generated.
d + a31 al is sequentially output to the ROM 46.

そうすると、RAMA及びBが加算器43に供給するデ
ータ対はDoとD9.D2とDy、D4とD5.DBと
D3.DBとDlとなり、加算器43の出力には、(D
o +Ds ) 、  (D2 +Dy ) 、  (
Da +Ds ) 、  (DB +03 ) 、  
(Da+D1)が得られる。これら加算出力の乗算器4
5への供給に同期して乗算係数ao+  a2+  a
4+a3+  alが乗算器45に供給されるので、乗
算器45は、(Do +D9 ) ao 、  (D2
 +D7 )al、(D4+Ds)aa、  (DB 
+Dt)a3゜(Da +D+ )alを順次出力する
。従って、積算器40の積算値Σ0は、 Σo = (Do +D9 ) ao + (Da −
+−Dl )al + (D2 +D7 )a2+ (
Do +D3 ) a3 + (DJ +D5 ) a
4となり、第7図(A)に示されるΣ0と等価である。
Then, the data pairs that RAMA and B supply to the adder 43 are Do and D9. D2 and Dy, D4 and D5. DB and D3. DB and Dl, and the output of the adder 43 is (D
o +Ds), (D2 +Dy), (
Da + Ds), (DB +03),
(Da+D1) is obtained. Multiplier 4 of these addition outputs
Multiplying coefficient ao + a2 + a in synchronization with the supply to 5
4+a3+al is supplied to the multiplier 45, so the multiplier 45 calculates (Do +D9) ao, (D2
+D7)al, (D4+Ds)aa, (DB
+Dt)a3°(Da +D+)al are sequentially output. Therefore, the integrated value Σ0 of the integrator 40 is Σo = (Do +D9) ao + (Da −
+-Dl )al + (D2 +D7)a2+ (
Do +D3) a3 + (DJ +D5) a
4, which is equivalent to Σ0 shown in FIG. 7(A).

コントローラ47aは、データ読出ルーチンを終えると
、データ書込ルーチンを実行する。このデータ書込ルー
チンでは、RAMAにおいて最旧であるデータDOを記
憶したアドレス0にラッチ51aに保持された最新デー
タDlllを書込む。従って、RAMA及びBのデータ
配列は第2(B)の如くなる。
After completing the data read routine, the controller 47a executes the data write routine. In this data write routine, the latest data Dll held in the latch 51a is written to address 0 where the oldest data DO is stored in RAMA. Therefore, the data arrays of RAMA and B are as shown in the second (B).

コントローラ47aは、第2(B)に示されるデータに
基づいて積算値Σ1を得るべくアドレス指定パターン1
を実行する。すなわち、データ読出ルーチンを実行して
RAMAに読出アドレス1゜2、 3.4. 0を順次
供給し、これ同期してRAMBに読出アドレス4,3,
2.1.0を供給する。また、加算器43の出力タイミ
ングに合せてROM46に係数al、a3.a2.ao
を順次出力させる。その結果、積算器40の出力には積
算°値Σ1が得られる。
The controller 47a uses the addressing pattern 1 to obtain the integrated value Σ1 based on the data shown in the second (B).
Execute. That is, the data read routine is executed and the read addresses 1, 2, 3, 4, . 0 is sequentially supplied, and in synchronization with this, the read addresses 4, 3,
2.1.0. Also, coefficients al, a3 . a2. ao
are output sequentially. As a result, the integrated degree value Σ1 is obtained at the output of the integrator 40.

データ読出ルーチンの実行を終えると、データ書込ルー
チンを実行し、RAMBにおいて最旧であるデータD1
を記憶したアドレス0にラッチ51aに保持されている
最新データDI+を書込む。
When the execution of the data read routine is finished, the data write routine is executed and the oldest data D1 in RAMB is written.
The latest data DI+ held in the latch 51a is written to the address 0 where is stored.

従ってRAMA及びBのデータ配列は第2図(C)の如
くなる。
Therefore, the data arrangement of RAMA and B is as shown in FIG. 2(C).

コントローラ47aは、上記同様にして第2図(C)〜
第2図(F)に示されるアドレス指定パターン2〜5を
実行して、積算値Σ2〜Σ5を得る。なお、第2図には
途中までしか示されていないが、RAMA及びBの記憶
容量10に対応してアドレス指定パターンも10パター
ン(0〜9)用意される。新規データが第2図(A)の
データ配列状態からRAMA及びBに5個ずつ供給され
ると、RAMA及びBのデータ配列は一巡して第2図(
A)に示されるデータ配列と再び等価になるので、アド
レス指定パターン0〜9の実行を繰返すことにより積算
値Σ0・・・・・・Σn・・・・・・が得られる。
The controller 47a is operated in the same manner as above in FIGS.
Addressing patterns 2 to 5 shown in FIG. 2(F) are executed to obtain integrated values Σ2 to Σ5. Although only part of the pattern is shown in FIG. 2, 10 addressing patterns (0 to 9) are prepared corresponding to the RAM and B storage capacities of 10. When five pieces of new data are supplied to each RAMA and B from the data array state shown in FIG. 2(A), the data arrays of RAMA and B go around and change to
Since it becomes equivalent again to the data array shown in A), by repeating the execution of addressing patterns 0 to 9, integrated values Σ0...Σn... are obtained.

一般に、RAMA及びB各々のアドレスがnの場合には
2n種類のアドレス指定パターンを必要とするが、第2
図(A)〜(F)に示されるようにRAMA及びBの読
出アドレスは、新規データの供給の度に加算カウンタ及
び減算カウンタを交互に歩進させることにより簡単に得
ることが出来る。また、RAMA及びBの書込アドレス
も新規データの供給の度に2つのカウンタを交互に歩進
させることによって簡単に得ることができる。
Generally, if the address of each RAMA and B is n, 2n types of addressing patterns are required.
As shown in Figures (A) to (F), the read addresses of RAMA and B can be easily obtained by alternately incrementing an addition counter and a subtraction counter each time new data is supplied. Furthermore, the write addresses of RAMA and B can be easily obtained by alternately incrementing two counters each time new data is supplied.

こうして、RAMA及びRAM8間のデータ転送を不要
として、データ転送の為のラッチ回路、データバス、R
AM相互間のデータ転送のためのコントロール回路等を
削減している。
In this way, data transfer between RAMA and RAM8 is unnecessary, and the latch circuit, data bus, and R
Control circuits and the like for data transfer between AMs are reduced.

なお、実施例では偶数次フィルタにより説明したが、第
10図の如きインパルス応答特性あるいは第11図の如
き周波数応答特性を呈する奇数次フィルタにも適用可能
である。なお、第11図においてfsはサンプリング周
波数、fcはfs/4、fdは通過帯域幅を表している
。このような場合には、RAMA及びRAMB相互間の
読出アドレス数が1だけ異なるが、既述したようにRA
MA及びRAMBに新規データを交互に書込んで最旧の
データを更新しRAMAとRAMBのデータ配列に対応
したデータの読出順序パターンに従ってデータ読出しを
なせば良いのである。
Although the embodiment has been described using an even-order filter, it is also applicable to an odd-order filter exhibiting an impulse response characteristic as shown in FIG. 10 or a frequency response characteristic as shown in FIG. 11. Note that in FIG. 11, fs represents the sampling frequency, fc represents fs/4, and fd represents the passband width. In such a case, the number of read addresses between RAMA and RAMB differs by 1, but as mentioned above, RA
All that is required is to alternately write new data to MA and RAMB, update the oldest data, and read data according to the data read order pattern corresponding to the data arrangement of RAMA and RAMB.

発明の詳細 な説明したように本発明のデジタルフィルタにおいては
、デジタルフィルタの遅延素子群の機能を担う2つの記
憶領域に新規データを交互に供給して各記憶領域におけ
る最旧のデータを更新する構成としたので2つの記憶領
域相互間のデータ転送が不要になり、装置の構成がより
簡単になってコストの低減が図られて好ましい。
As described in the detailed description of the invention, in the digital filter of the present invention, new data is alternately supplied to the two storage areas that function as the delay element group of the digital filter, and the oldest data in each storage area is updated. This configuration eliminates the need for data transfer between two storage areas, which is preferable because the configuration of the device becomes simpler and costs can be reduced.

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

第1図は、本発明の実施例を示すブロック図、第2図(
A)〜(F)は、コントローラ47aのアドレス制御動
作を説明するための図、第3図は、FIRフィルタの構
成例を示すブロック図、第4図は、第3図に示されたF
IRフィルタを簡略化した例を示すブロック図、第5図
は第4図に示されたFIRフィルタを時分割的に構成し
た例を示すブロック図、第6図は、第5図に示されたF
IRフィルタをRAMによって構成した例を示すブロッ
ク図、第7図(A)〜(F)は、第5図に示されたFI
Rフィルタの動作を説明するための図、第8図(A)〜
(F)は、第6図に示されたコントローラ47のアドレ
ス制御動作を説明するための図、第9図及び第10図は
、フィルタのインパルス応答特性例を示す特性図、第1
1図は、フィルタの周波数応答特性例を示す特性図であ
る。 主要部分の符号の説明 40・・・・・・積算器   43・・・・・・加算器
45・・・・・・乗算器
FIG. 1 is a block diagram showing an embodiment of the present invention, and FIG. 2 (
A) to (F) are diagrams for explaining the address control operation of the controller 47a, FIG. 3 is a block diagram showing a configuration example of an FIR filter, and FIG. 4 is a diagram for explaining the address control operation of the controller 47a.
FIG. 5 is a block diagram showing an example of a simplified IR filter; FIG. 5 is a block diagram showing an example of time-sharing configuration of the FIR filter shown in FIG. 4; FIG. F
FIGS. 7(A) to 7(F) are block diagrams showing an example of an IR filter configured using RAM, and the FI filter shown in FIG.
Diagrams for explaining the operation of the R filter, FIG. 8(A) ~
(F) is a diagram for explaining the address control operation of the controller 47 shown in FIG. 6; FIGS. 9 and 10 are characteristic diagrams showing examples of impulse response characteristics of the filter;
FIG. 1 is a characteristic diagram showing an example of frequency response characteristics of a filter. Explanation of symbols of main parts 40...Integrator 43...Adder 45...Multiplier

Claims (1)

【特許請求の範囲】 サンプル値記憶手段と、前記サンプル値記憶手段に一連
の入力サンプル値を所定書込周期にて順次書込む書込手
段と、前記サンプル値記憶手段から前記書込周期の1/
n以下の読出し周期の読出によってn個のアドレスから
サンプル値を読み出す読出手段と、読み出されたn個の
サンプル値に対応した所定係数を乗じて乗算値を得る乗
算手段と、得られた乗算値各々を積算する積算手段とを
含むデジタルフィルタであって、 前記サンプル値記憶手段は、n個のアドレス群からなる
第1及び第2領域を有し、前記書込手段は、前記入力サ
ンプル値の各サンプル値をその入力順に交互に前記第1
及び第2領域内の最旧のサンプル値と置換する如く書込
み、前記読出手段は、第1及び第2領域からの読出順序
パターンのn組の1を順に実行することを繰り返してサ
ンプル値を読み出し、前記乗算手段は、読み出されたn
個のサンプル値に前記読出順序パターン各々に対応した
配列の係数群を乗することを特徴とするデジタルフィル
タ。
[Scope of Claims] Sample value storage means; writing means for sequentially writing a series of input sample values into the sample value storage means at a predetermined writing cycle; /
a reading means for reading sample values from n addresses by reading with a reading period of n or less; a multiplication means for multiplying the read n sample values by a predetermined coefficient corresponding to the multiplied value; a digital filter that includes an integrating means for integrating each value, the sample value storage means having first and second areas consisting of n address groups, and the writing means for integrating the input sample values. The sample values of the first
and writing so as to replace the oldest sample value in the second area, and the reading means reads the sample value by repeatedly executing one of n sets of read order patterns from the first and second areas. , the multiplication means reads n
A digital filter, wherein the sample values are multiplied by a group of coefficients in an array corresponding to each of the readout order patterns.
JP8497589A 1989-04-04 1989-04-04 Digital filter Pending JPH02264509A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8497589A JPH02264509A (en) 1989-04-04 1989-04-04 Digital filter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8497589A JPH02264509A (en) 1989-04-04 1989-04-04 Digital filter

Publications (1)

Publication Number Publication Date
JPH02264509A true JPH02264509A (en) 1990-10-29

Family

ID=13845622

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8497589A Pending JPH02264509A (en) 1989-04-04 1989-04-04 Digital filter

Country Status (1)

Country Link
JP (1) JPH02264509A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04311106A (en) * 1991-04-10 1992-11-02 Matsushita Electric Ind Co Ltd Digital filter for decimation
JPH05175785A (en) * 1991-12-25 1993-07-13 Matsushita Electric Ind Co Ltd Digital filter for decimation
JP2006319941A (en) * 2005-04-15 2006-11-24 Sanyo Electric Co Ltd Fir filter computing unit
WO2007088819A1 (en) * 2006-02-03 2007-08-09 Matsushita Electric Industrial Co., Ltd. Processor

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04311106A (en) * 1991-04-10 1992-11-02 Matsushita Electric Ind Co Ltd Digital filter for decimation
JPH05175785A (en) * 1991-12-25 1993-07-13 Matsushita Electric Ind Co Ltd Digital filter for decimation
JP2006319941A (en) * 2005-04-15 2006-11-24 Sanyo Electric Co Ltd Fir filter computing unit
WO2007088819A1 (en) * 2006-02-03 2007-08-09 Matsushita Electric Industrial Co., Ltd. Processor

Similar Documents

Publication Publication Date Title
EP0373468B1 (en) A pipelined processor for implementing the least-mean-squares algorithm
KR970008186B1 (en) Address processor for a signal processor
JPH02264509A (en) Digital filter
US4204177A (en) Non-recursive digital filter with reduced output sampling frequency
JPH0126204B2 (en)
JP4295234B2 (en) FIR type digital filter
JP3738134B2 (en) Digital signal processor
JPH0120805B2 (en)
KR100235537B1 (en) Variable tap of digital filter and multiplier circuit thereof
JP3197648B2 (en) Digital filter
JP3125672B2 (en) Digital filter
JP3140853B2 (en) Data driven filter device
SU877787A1 (en) Programme-controlled digital filter
JP3177358B2 (en) Digital filter
JPH0998069A (en) Fir type digital filter
JPS58147223A (en) Digital filter
JPS58151644A (en) Digital operating device
JPH06216715A (en) Digital filter
JP2001160736A (en) Digital filter circuit
JPH09298451A (en) Digital filter circuit and its control method
JPH03211910A (en) Digital filter
JPS58147224A (en) Digital filter
JPS62293811A (en) Finite inpulse response digital filter
JP2527019B2 (en) Non-cyclic interpolation filter
JPH10322164A (en) Digital filter