JP2009065515A - Digital filter - Google Patents

Digital filter Download PDF

Info

Publication number
JP2009065515A
JP2009065515A JP2007232716A JP2007232716A JP2009065515A JP 2009065515 A JP2009065515 A JP 2009065515A JP 2007232716 A JP2007232716 A JP 2007232716A JP 2007232716 A JP2007232716 A JP 2007232716A JP 2009065515 A JP2009065515 A JP 2009065515A
Authority
JP
Japan
Prior art keywords
output
data
register
gate
outputs
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
JP2007232716A
Other languages
Japanese (ja)
Inventor
Mitsuhiro Koyama
山 光 弘 小
Masami Ashino
野 雅 美 芦
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2007232716A priority Critical patent/JP2009065515A/en
Publication of JP2009065515A publication Critical patent/JP2009065515A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a digital filter which reduces a power consumption for computation at a low accuracy. <P>SOLUTION: The digital filter includes: a gate part 109 for inputting a lower bit of input data and a control signal; a gate part 110 for inputting a lower bit of a coefficient and the control signal; a register 106 for holding and outputting an upper bit of the input data and an output of the gate part 109; a register 107 for holding and outputting an upper bit of the coefficient and an output of the gate part 110; a multiplier 103 for multiplying an output of the register 106 by an output of the register 107; an adder 104 for adding the multiplication result to the calculation result; a gate part 111 for inputting a lower bit of the addition result and the control signal; a register 108 for holding an upper bit of the addition result and an output of the gate part 111 to output them as the calculation result; and a control part 105 for outputting the control signal so as to zeroize at least one output of the gate parts 109, 110, 111. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、デジタルフィルタに関するものである。   The present invention relates to a digital filter.

デジタルフィルタは、演算処理によって標本周波数を整数倍に変換していくものであり、オーバーサンプリング・フィルタとも呼ばれる。CD等のオーディオ信号の処理には直線位相特性が得られるFIR(Finite Impulse Response:有限インパルス応答)フィルタが用いられる。   The digital filter converts the sampling frequency to an integral multiple by arithmetic processing and is also called an oversampling filter. An FIR (Finite Impulse Response) filter capable of obtaining a linear phase characteristic is used for processing an audio signal such as a CD.

FIRフィルタは以下のような非再帰型の差分方程式で表すことができる。

Figure 2009065515
ここでyは出力信号、x、xk−1、…、xk−nは入力信号、h、…、hはフィルタ係数、nはフィルタの次数である。フィルタの特性はフィルタの次数(加算の段数)、フィルタ係数の細かさ(桁数)、演算の丸め誤差に依存する。 The FIR filter can be expressed by the following non-recursive difference equation.
Figure 2009065515
Here, y k is an output signal, x k , x k−1 ,..., X k−n is an input signal, h 0 ,..., H n are filter coefficients, and n is a filter order. The characteristics of the filter depend on the order of the filter (the number of stages of addition), the fineness of the filter coefficient (number of digits), and the rounding error of the operation.

FIRフィルタの構成としては、係数データを保持する係数メモリと、入力データを保持するデータRAMと、係数と入力データの乗算を行う乗算器と、乗算結果と1つ前の演算結果とを加算する加算器と、係数メモリ、データRAM及び加算器の出力をそれぞれ保持するレジスタとを備えるものが知られている。   As the configuration of the FIR filter, a coefficient memory that holds coefficient data, a data RAM that holds input data, a multiplier that multiplies the coefficient and the input data, a multiplication result, and the previous calculation result are added. A device including an adder, a coefficient memory, a data RAM, and a register for holding the output of the adder is known.

このような構成のフィルタを1つだけ用いた、A/D変換(アナログデジタル変換、以下ADC)とADCより高い精度が求められるD/A変換(デジタルアナログ変換、以下DAC)の両方を行うシステムでは、ADCを行う場合、必要以上の計算精度を出す演算回路(乗算器、加算器)を使用することになり、無駄な消費電力が生じる。   A system that performs both A / D conversion (analog / digital conversion, hereinafter referred to as ADC) and D / A conversion (digital / analog conversion, hereinafter referred to as DAC), which requires higher accuracy than ADC, using only one filter having such a configuration. Then, when ADC is performed, an arithmetic circuit (multiplier, adder) that gives a calculation accuracy higher than necessary is used, and wasteful power consumption occurs.

入力データの下位ビット部分を0にマスクして演算できるようにすることで演算精度を可変にすると共に有効桁数を少なくし、消費電力を小さくした演算装置が提案されている(例えば特許文献1参照)。   There has been proposed an arithmetic device that reduces the power consumption by reducing the number of significant digits by making the arithmetic precision variable by masking the lower bit portion of the input data to 0 (for example, Patent Document 1). reference).

このような機能はデジタルフィルタの実装において、入力データに対して適用することができるが、演算結果によらない定数値である係数に対して適用することができない。そのため、必要以上の計算精度で演算が行われる場合があり、デジタルフィルタの消費電力を十分に低減することができない。   Such a function can be applied to input data in the implementation of a digital filter, but cannot be applied to a coefficient that is a constant value that does not depend on a calculation result. For this reason, computation may be performed with an unnecessarily high calculation accuracy, and the power consumption of the digital filter cannot be sufficiently reduced.

フィルタ処理は多段の回路となるため回路規模が大きく、またオーディオシステム等においては長時間にわたる連続処理が多くなるため、例えば電池で動作するモバイル機器等では消費電力の低減が要求される。
特開平7−146777号公報
Since the filter processing is a multi-stage circuit, the circuit scale is large, and in an audio system or the like, continuous processing for a long time is increased. Therefore, for example, mobile devices that operate on batteries are required to reduce power consumption.
Japanese Patent Laid-Open No. 7-146777

本発明は消費電力を低減したデジタルフィルタを提供することを目的とする。   An object of the present invention is to provide a digital filter with reduced power consumption.

本発明の一態様によるデジタルフィルタは、与えられたデータを記憶するデータ記憶部と、係数を記憶する係数記憶部と、前記データ記憶部から出力される前記データの所定の下位ビット及び制御信号が入力される第1のゲート部と、前記係数記憶部から出力される前記係数の所定の下位ビット及び前記制御信号が入力される第2のゲート部と、前記データ記憶部から出力される前記データの前記所定の下位ビット以外及び前記第1のゲート部の出力を与えられて保持し、出力する第1のレジスタと、前記係数記憶部から出力される前記係数の前記所定の下位ビット以外及び前記第2のゲート部の出力を与えられて保持し、出力する第2のレジスタと、前記第1のレジスタの出力と前記第2のレジスタの出力とを乗算し、乗算結果を出力する乗算器と、前記乗算結果及び演算結果を加算して加算結果を出力する加算器と、前記加算器から出力される前記加算結果の所定の下位ビット及び前記制御信号が入力される第3のゲート部と、前記加算器から出力される前記加算結果の前記所定の下位ビット以外及び前記第3のゲート部の出力を与えられて保持し、前記演算結果として出力する第3のレジスタと、前記第1、第2及び第3のゲート部の少なくともいずれか1つの出力を0にするように前記制御信号を出力する制御部と、を備えるものである。   A digital filter according to an aspect of the present invention includes a data storage unit that stores given data, a coefficient storage unit that stores coefficients, a predetermined lower bit of the data output from the data storage unit, and a control signal. A first gate section that is input; a second gate section that receives a predetermined lower bit of the coefficient output from the coefficient storage section; and the control signal; and the data that is output from the data storage section. Other than the predetermined lower bits of the first and second outputs of the first gate unit given and held, and other than the predetermined lower bits of the coefficient output from the coefficient storage unit The output of the second gate unit is given and held, and the second register to be output is multiplied by the output of the first register and the output of the second register, and the multiplication result is output. An adder that adds the multiplication result and the operation result and outputs the addition result; and a third gate to which a predetermined lower bit of the addition result output from the adder and the control signal are input And a third register for receiving and holding the output of the third gate unit other than the predetermined lower bits of the addition result output from the adder and outputting the calculation result, And a control unit that outputs the control signal so that the output of at least one of the first, second, and third gate units is set to zero.

また、本発明の一態様によるデジタルフィルタは、与えられたデータを記憶するデータ記憶部と、係数を記憶する係数記憶部と、前記データ記憶部から出力される前記データの所定の下位ビット及び制御信号が入力される第1のゲート部と、前記係数記憶部から出力される前記係数の所定の下位ビット及び前記制御信号が入力される第2のゲート部と、それぞれクロック信号及び前記制御信号が入力される第3、第4及び第5のゲート部と、前記クロック信号に同期して前記データ記憶部から出力される前記データの前記所定の下位ビット以外を与えられて保持し、出力する第1のレジスタと、前記第3のゲート部の出力に同期して前記第1のゲート部の出力を与えられて保持し、出力する第2のレジスタと、前記クロック信号に同期して前記係数記憶部から出力される前記係数の前記所定の下位ビット以外を与えられて保持し、出力する第3のレジスタと、前記第4のゲート部の出力に同期して前記第2のゲート部の出力を与えられて保持し、出力する第4のレジスタと、前記第1及び第2のレジスタの出力と前記第3及び第4のレジスタの出力とを乗算し、乗算結果を出力する乗算器と、前記乗算結果及び演算結果を加算して加算結果を出力する加算器と、前記加算器から出力される前記加算結果の所定の下位ビット及び前記制御信号が入力される第6のゲート部と、前記クロック信号に同期して前記加算器から出力される前記加算結果の前記所定の下位ビット以外を与えられて保持し、出力する第5のレジスタと、前記第5のゲート部の出力に同期して前記第6のゲート部の出力を与えられて保持し、出力する第6のレジスタと、前記第5及び第6のレジスタの出力が与えられ、前記演算結果として出力する連結部と、前記第1乃至第6のゲート部の少なくともいずれか1つの出力を0にするように前記制御信号を出力する制御部と、を備えるものである。   The digital filter according to one aspect of the present invention includes a data storage unit that stores given data, a coefficient storage unit that stores coefficients, a predetermined lower bit of the data output from the data storage unit, and a control A first gate unit to which a signal is input, a second lower gate unit to which a predetermined lower bit of the coefficient output from the coefficient storage unit and the control signal are input, and a clock signal and the control signal, respectively. The third, fourth, and fifth gate units that are input and the other than the predetermined lower bits of the data that are output from the data storage unit in synchronization with the clock signal are given, held, and output. 1 register, a second register that outputs and holds the output of the first gate unit in synchronization with the output of the third gate unit, and a second register that outputs and holds the output in synchronization with the clock signal. Other than the predetermined lower-order bits of the coefficient output from the coefficient storage unit, the third register to be output and held, and the second gate unit in synchronization with the output of the fourth gate unit A fourth register that receives and holds the output, and a multiplier that multiplies the outputs of the first and second registers and the outputs of the third and fourth registers and outputs a multiplication result; An adder that adds the multiplication result and the operation result and outputs an addition result; a sixth gate unit to which a predetermined lower bit of the addition result output from the adder and the control signal are input; In synchronization with the clock signal, except for the predetermined lower bits of the addition result output from the adder, the fifth register that outputs and holds and synchronizes with the output of the fifth gate unit. Of the sixth gate portion A sixth register that receives and holds and outputs power, a connection unit that receives the outputs of the fifth and sixth registers, and outputs the calculation result, and the first to sixth gate units. And a control unit that outputs the control signal so that at least one of the outputs is set to zero.

また、本発明の一態様によるデジタルフィルタは、イネーブル信号及び制御信号が入力される第1及び第2のゲート部と、与えられたデータのうち上位ビット側のデータを記憶し前記イネーブル信号が与えられる上位側データ領域及び下位ビット側のデータを記憶し前記第1のゲート部の出力が与えられる下位側データ領域を有するデータ記憶部と、係数のうち上位ビット側を記憶し前記イネーブル信号が与えられる上位側係数領域及び下位ビット側を記憶し前記第2のゲート部の出力が与えられる下位側係数領域を有する係数記憶部と、前記データ記憶部の出力を与えられて保持し、出力する第1のレジスタと、前記係数記憶部の出力を与えられて保持し、出力する第2のレジスタと、前記第1のレジスタの出力と前記第2のレジスタの出力とを乗算し、乗算結果を出力する乗算器と、前記乗算結果及び演算結果を加算して加算結果を出力する加算器と、前記加算結果を与えられて保持し、前記演算結果として出力する第3のレジスタと、前記下位側データ領域及び前記下位側係数領域の少なくともいずれか一方が無効となるように前記制御信号を出力する制御部と、を備えるものである。   In addition, a digital filter according to an aspect of the present invention stores first and second gate portions to which an enable signal and a control signal are input, and stores higher-order bit data among the supplied data. A data storage unit having a lower side data region for storing the upper side data region and lower bit side data to which the output of the first gate unit is applied, and storing the upper bit side of the coefficients and providing the enable signal A coefficient storage unit having a lower coefficient region for storing the higher-order coefficient region and the lower-bit side, to which the output of the second gate unit is given, and receiving and holding and outputting the output of the data storage unit 1 register, the second register that receives and holds the output of the coefficient storage unit, and outputs the first register, the output of the first register, and the output of the second register And a multiplier for outputting the multiplication result, an adder for adding the multiplication result and the operation result, and outputting the addition result, and receiving and holding the addition result, and outputting the result as the operation result. 3 and a control unit that outputs the control signal so that at least one of the lower-order data area and the lower-order coefficient area becomes invalid.

本発明によれば、消費電力を低減できる。   According to the present invention, power consumption can be reduced.

以下、本発明の実施の形態によるデジタルフィルタを図面に基づいて説明する。   Hereinafter, digital filters according to embodiments of the present invention will be described with reference to the drawings.

(第1の実施形態)図1に本発明の第1の実施形態に係るデジタルフィルタの概略構成を示す。デジタルフィルタはデータRAM(Random Access Memory)101、係数メモリ102、乗算器103、加算器104、制御部105、レジスタ106〜108、ゲート回路109〜111を備える。   (First Embodiment) FIG. 1 shows a schematic configuration of a digital filter according to a first embodiment of the present invention. The digital filter includes a data RAM (Random Access Memory) 101, a coefficient memory 102, a multiplier 103, an adder 104, a control unit 105, registers 106 to 108, and gate circuits 109 to 111.

データRAM101は演算の入力となる入力データを保持する。係数メモリ102は演算のフィルタ係数となる係数データを保持する。データRAM101の出力信号のデータ幅はa+1ビット、係数メモリ102の出力信号のデータ幅はb+1ビット、乗算器103及び加算器104の出力信号のデータ幅はc+1ビットとする(a,b,cは共に正の整数)。   The data RAM 101 holds input data to be input for calculation. The coefficient memory 102 holds coefficient data that is a filter coefficient for calculation. The data width of the output signal of the data RAM 101 is a + 1 bits, the data width of the output signal of the coefficient memory 102 is b + 1 bits, and the data width of the output signals of the multiplier 103 and the adder 104 is c + 1 bits (a, b, c are Both are positive integers).

データRAM101から出力される入力データのうち、上位側データ([a:i]ビット)はレジスタ106に入力され、下位側データ([i−1:0]ビット)はゲート回路109を介してレジスタ106に入力される。iはaより小さい正の整数である。   Of the input data output from the data RAM 101, the upper data ([a: i] bits) is input to the register 106, and the lower data ([i−1: 0] bits) is registered via the gate circuit 109. 106 is input. i is a positive integer smaller than a.

ゲート回路109には制御部105から出力される制御信号が与えられる。制御信号により、レジスタ106に入力される下位側データを0に固定することができる。   A control signal output from the control unit 105 is supplied to the gate circuit 109. The low-order data input to the register 106 can be fixed to 0 by the control signal.

係数メモリ102から出力される係数データのうち、上位側データ([b:j]ビット)はレジスタ107に入力され、下位側データ([j−1:0]ビット)はゲート回路110を介してレジスタ107に入力される。jはbより小さい正の整数である。   Of the coefficient data output from the coefficient memory 102, the upper data ([b: j] bits) is input to the register 107, and the lower data ([j-1: 0] bits) is input via the gate circuit 110. Input to the register 107. j is a positive integer smaller than b.

ゲート回路110には制御部105から出力される制御信号が与えられる。制御信号により、レジスタ107に入力される下位側データを0に固定することができる。   A control signal output from the control unit 105 is given to the gate circuit 110. The low-order data input to the register 107 can be fixed to 0 by the control signal.

乗算器103はレジスタ106の出力とレジスタ107の出力の乗算を行い、乗算結果を加算器104へ出力する。   Multiplier 103 multiplies the output of register 106 and the output of register 107, and outputs the multiplication result to adder 104.

加算器104はこの乗算結果と、レジスタ108の出力(1回前の加算器104による演算結果)が与えられ、これらの加算を行う。   The adder 104 is given the multiplication result and the output of the register 108 (the calculation result of the previous adder 104), and adds these.

加算器104から出力される演算データのうち、上位側データ([c:k]ビット)はレジスタ108に入力され、下位側データ([k−1:0]ビット)はゲート回路111を介してレジスタ108に入力される。kはcより小さい正の整数である。   Of the operation data output from the adder 104, the higher-order data ([c: k] bits) is input to the register 108, and the lower-order data ([k−1: 0] bits) is passed through the gate circuit 111. Input to the register 108. k is a positive integer smaller than c.

ゲート回路111には制御部105から出力される制御信号が与えられる。制御信号により、レジスタ108に入力される下位側データを0に固定することができる。制御部105は、デジタルフィルタの動作中は一定の制御信号を出力し続ける。   A control signal output from the control unit 105 is given to the gate circuit 111. The low-order data input to the register 108 can be fixed to 0 by the control signal. The control unit 105 continues to output a constant control signal during the operation of the digital filter.

要求される精度が低い演算を行う時は、制御信号によりゲート回路109、110、111の出力を0に固定することで、レジスタ106、107、108の対応領域及び乗算器103、加算器104の下位ビット演算回路が活性化されなくなる。これにより部分的に回路が動作していないことになり、消費電力を抑制することができる。   When performing a calculation with low accuracy required, the outputs of the gate circuits 109, 110, and 111 are fixed to 0 by the control signal, so that the corresponding areas of the registers 106, 107, and 108, the multiplier 103, and the adder 104 The lower bit arithmetic circuit is not activated. As a result, the circuit is not partially operated, and power consumption can be suppressed.

このように本実施形態によるデジタルフィルタにより、消費電力を低減することができ、また動作周波数を向上させることができる。   As described above, the digital filter according to the present embodiment can reduce power consumption and improve the operating frequency.

ここで、制御信号により0固定されるビット幅(入力データの下位iビット、係数データの下位jビット、演算データの下位kビット)は、要求される演算精度が低い時に出力精度に影響を与えない桁数にする。   Here, the bit width fixed at 0 by the control signal (the lower i bits of the input data, the lower j bits of the coefficient data, and the lower k bits of the operation data) affects the output accuracy when the required operation accuracy is low. No digits.

制御部105は制御レジスタによりCPUから設定を書き込む回路としても良い。また、外部端子入力をそのまま制御信号として用いれば、外部端子を固定することでチップセット毎にフィルタ精度を変えることができる。   The control unit 105 may be a circuit that writes settings from the CPU using a control register. If the external terminal input is used as it is as a control signal, the filter accuracy can be changed for each chipset by fixing the external terminal.

上記実施形態ではゲート回路及びレジスタをデータRAM101、係数メモリ102、加算器104の後段に設けていたが、さらに乗算器103の後段に設けるようにしても良い。   In the above embodiment, the gate circuit and the register are provided in the subsequent stage of the data RAM 101, the coefficient memory 102, and the adder 104, but may be provided in the subsequent stage of the multiplier 103.

また、制御部105から出力される制御信号がゲート回路109〜111に共通に与えられていたが、それぞれのゲート回路を別々に制御するようにしても良い。このような構成にすることで、より柔軟な演算精度の制御を行うことができる。   Further, although the control signal output from the control unit 105 is commonly given to the gate circuits 109 to 111, each gate circuit may be controlled separately. With such a configuration, more flexible calculation accuracy can be controlled.

また、図2に示すように、下位側データが与えられるゲート回路を複数設け、制御部105から各ゲート回路に制御信号を出力するような構成にしてもよい。データRAM101、係数メモリ102、又は加算器104から出力される信号のうち0に固定するビット幅を可変にすることができ、さらに細かい演算精度の制御を行うことができる。図2に示す例では、ゲート回路121a〜cを用いて、レジスタ120に入力されるm+1ビットのデータのうち0に固定するビット幅を下位q+1ビット、下位q+1ビット、下位q+1ビットのいずれかに設定することができる。ここでm、q、q、qはm>q>q>qを満たす正の整数である。 Further, as shown in FIG. 2, a plurality of gate circuits to which lower-order data is given may be provided, and a control signal may be output from the control unit 105 to each gate circuit. Of the signals output from the data RAM 101, the coefficient memory 102, or the adder 104, the bit width fixed to 0 can be made variable, and finer calculation accuracy can be controlled. In the example illustrated in FIG. 2, the bit widths fixed to 0 among the m + 1-bit data input to the register 120 using the gate circuits 121a to 121c are the lower q 3 +1 bit, the lower q 2 +1 bit, and the lower q 1. Either +1 bit can be set. Here, m, q 1 , q 2 and q 3 are positive integers satisfying m> q 1 > q 2 > q 3 .

(第2の実施形態)図3に本発明の第2の実施形態に係るデジタルフィルタの概略構成を示す。デジタルフィルタはデータRAM(Random Access Memory)201、係数メモリ202、乗算器203、加算器204、制御部205、レジスタ206〜211、ゲート回路212〜217、連結部218を備える。   (Second Embodiment) FIG. 3 shows a schematic configuration of a digital filter according to a second embodiment of the present invention. The digital filter includes a data RAM (Random Access Memory) 201, a coefficient memory 202, a multiplier 203, an adder 204, a control unit 205, registers 206 to 211, gate circuits 212 to 217, and a connection unit 218.

データRAM201は演算の入力となる入力データを保持する。係数メモリ202は演算のフィルタ係数となる係数データを保持する。データRAM201の出力信号のデータ幅はa+1ビット、係数メモリ202の出力信号のデータ幅はb+1ビット、乗算器203及び加算器204の出力信号のデータ幅はc+1ビットとする(a,b,cは共に正の整数)。   The data RAM 201 holds input data to be input for calculation. The coefficient memory 202 holds coefficient data that is a filter coefficient for calculation. The data width of the output signal of the data RAM 201 is a + 1 bits, the data width of the output signal of the coefficient memory 202 is b + 1 bits, and the data width of the output signals of the multiplier 203 and the adder 204 is c + 1 bits (a, b, c are Both are positive integers).

データRAM201から出力される入力データのうち、上位側データ([a:i]ビット)はレジスタ206に入力され、下位側データ([i−1:0]ビット)はゲート回路212を介してレジスタ207に入力される。iはaより小さい正の整数である。   Of the input data output from the data RAM 201, the upper data ([a: i] bits) is input to the register 206, and the lower data ([i−1: 0] bits) is registered via the gate circuit 212. 207 is input. i is a positive integer smaller than a.

ゲート回路212には制御部205から出力される制御信号が与えられる。制御信号により、レジスタ207に入力されるデータを0に固定することができる。   A control signal output from the control unit 205 is given to the gate circuit 212. Data input to the register 207 can be fixed to 0 by the control signal.

レジスタ206はクロック信号CLKに同期して動作する。また、レジスタ207はクロック信号CLK及び制御信号が入力されるゲート回路213の出力に同期して動作する。   The register 206 operates in synchronization with the clock signal CLK. The register 207 operates in synchronization with the output of the gate circuit 213 to which the clock signal CLK and the control signal are input.

係数メモリ202から出力される係数データのうち、上位側データ([b:j]ビット)はレジスタ208に入力され、下位側データ([j−1:0]ビット)はゲート回路214を介してレジスタ209に入力される。jはbより小さい正の整数である。   Of the coefficient data output from the coefficient memory 202, the upper data ([b: j] bits) is input to the register 208, and the lower data ([j-1: 0] bits) is input via the gate circuit 214. Input to the register 209. j is a positive integer smaller than b.

ゲート回路214には制御部205から出力される制御信号が与えられる。制御信号により、レジスタ209に入力されるデータを0に固定することができる。   A control signal output from the control unit 205 is given to the gate circuit 214. The data input to the register 209 can be fixed to 0 by the control signal.

レジスタ208はクロック信号CLKに同期して動作する。また、レジスタ209はクロック信号CLK及び制御信号が入力されるゲート回路215の出力に同期して動作する。   The register 208 operates in synchronization with the clock signal CLK. The register 209 operates in synchronization with the output of the gate circuit 215 to which the clock signal CLK and the control signal are input.

乗算器203はレジスタ206、207の出力とレジスタ208、209の出力との乗算を行い、乗算結果を加算器204へ出力する。   Multiplier 203 multiplies the outputs of registers 206 and 207 and the outputs of registers 208 and 209 and outputs the multiplication result to adder 204.

加算器204はこの乗算結果と、連結部218の出力(1回前の加算器204による演算結果)が与えられ、これらの加算を行う。   The adder 204 is given the multiplication result and the output of the concatenation unit 218 (the calculation result of the previous adder 204), and adds these.

加算器204から出力される演算データのうち、上位側データ([c:k]ビット)はレジスタ210に入力され、下位側データ([k−1:0]ビット)はゲート回路216を介してレジスタ211に入力される。kはcより小さい正の整数である。   Of the operation data output from the adder 204, the upper data ([c: k] bits) is input to the register 210, and the lower data ([k−1: 0] bits) is input via the gate circuit 216. Input to the register 211. k is a positive integer smaller than c.

ゲート回路216には制御部205から出力される制御信号が与えられる。制御信号により、レジスタ211に入力される下位側データを0に固定することができる。   A control signal output from the control unit 205 is given to the gate circuit 216. The low-order data input to the register 211 can be fixed to 0 by the control signal.

レジスタ210はクロック信号CLKに同期して動作する。また、レジスタ211はクロック信号CLK及び制御信号が入力されるゲート回路217の出力に同期して動作する。   The register 210 operates in synchronization with the clock signal CLK. The register 211 operates in synchronization with the output of the gate circuit 217 to which the clock signal CLK and the control signal are input.

制御部205はデジタルフィルタの動作中は一定の制御信号を出力し続ける。要求される演算精度が低い時にゲート回路212、214、216の出力を0に固定する。   The control unit 205 continues to output a constant control signal during the operation of the digital filter. When the required calculation accuracy is low, the outputs of the gate circuits 212, 214, and 216 are fixed to zero.

ここで、制御信号により0固定されるビット幅(入力データの下位iビット、係数データの下位jビット、演算データの下位kビット)は、要求される精度が低い演算を行う時に出力精度に影響を与えない桁数にする。   Here, the bit width fixed at 0 by the control signal (the lower i bits of the input data, the lower j bits of the coefficient data, and the lower k bits of the operation data) affects the output accuracy when performing a calculation with low required accuracy. The number of digits is not given.

連結部218はレジスタ210、211の出力を連結して出力する。   The connection unit 218 connects the outputs of the registers 210 and 211 and outputs the result.

要求される精度が低い演算を行う時は、制御信号によりゲート回路213、215、217の出力を固定することで、レジスタ207、209、211に与えられるクロック信号が固定され、レジスタ207、209、211における消費電力を低減することができる。   When performing a calculation with low required accuracy, the clock signals supplied to the registers 207, 209, and 211 are fixed by fixing the outputs of the gate circuits 213, 215, and 217 by the control signal. Power consumption in 211 can be reduced.

また、ゲート回路212、214、216の出力を0に固定することで、乗算器203、加算器204の下位ビット演算回路が活性化されなくなる。これにより部分的に回路が動作していないことになり、消費電力を抑制することができる。   Further, by fixing the outputs of the gate circuits 212, 214, and 216 to 0, the lower bit arithmetic circuits of the multiplier 203 and the adder 204 are not activated. As a result, the circuit is not partially operated, and power consumption can be suppressed.

このように、本実施形態によるデジタルフィルタにより、消費電力を低減することができる。   Thus, power consumption can be reduced by the digital filter according to the present embodiment.

上記実施形態ではゲート回路及びレジスタをデータRAM201、係数メモリ202、加算器204の後段に設けていたが、さらに乗算器203の後段に設けるようにしても良い。   In the above embodiment, the gate circuit and the register are provided in the subsequent stage of the data RAM 201, the coefficient memory 202, and the adder 204, but may be provided in the subsequent stage of the multiplier 203.

また、制御部205から出力される制御信号がゲート回路212〜217に共通に与えられていたが、それぞれのゲート回路を別々に制御するようにしても良い。このような構成にすることで、より柔軟な制御を行うことができる。   In addition, although the control signal output from the control unit 205 is commonly supplied to the gate circuits 212 to 217, each gate circuit may be controlled separately. With such a configuration, more flexible control can be performed.

また、図2に示すような構成を適用することでさらに細かい演算精度の制御を行うことができる。   Further, by applying the configuration as shown in FIG. 2, it is possible to control the calculation accuracy further finely.

(第3の実施形態)図4に本発明の第3の実施形態に係るデジタルフィルタの概略構成を示す。デジタルフィルタはデータRAM(Random Access Memory)301、係数メモリ302、乗算器303、加算器304、制御部305、ゲート回路306、307、レジスタ308〜310を備える。   (Third Embodiment) FIG. 4 shows a schematic configuration of a digital filter according to a third embodiment of the present invention. The digital filter includes a data RAM (Random Access Memory) 301, a coefficient memory 302, a multiplier 303, an adder 304, a control unit 305, gate circuits 306 and 307, and registers 308 to 310.

データRAM301は演算の入力となる入力データを保持する。係数メモリ302は演算のフィルタ係数となる係数データを保持する。データRAM301の出力信号のデータ幅はa+1ビット、係数メモリ302の出力信号のデータ幅はb+1ビット、乗算器303及び加算器304の出力信号のデータ幅はc+1ビットとする(a,b,cは共に正の整数)。   The data RAM 301 holds input data that is an input for calculation. The coefficient memory 302 holds coefficient data that is a filter coefficient for calculation. The data width of the output signal of the data RAM 301 is a + 1 bits, the data width of the output signal of the coefficient memory 302 is b + 1 bits, and the data width of the output signals of the multiplier 303 and the adder 304 is c + 1 bits (a, b, c are Both are positive integers).

データRAM301は、入力データのうち上位側データ([a:i]ビット)を保持する上位側データ領域301aと、下位側データ([i−1:0]ビット)を保持する下位側データ領域301bを有する。データRAM301の出力はレジスタ308に入力される。iはaより小さい正の整数である。   The data RAM 301 has an upper data area 301a that holds upper data ([a: i] bits) of input data and a lower data area 301b that holds lower data ([i-1: 0] bits). Have The output of the data RAM 301 is input to the register 308. i is a positive integer smaller than a.

上位側データ領域301aにはイネーブル信号が与えられ、下位側データ領域301bにはイネーブル信号がゲート回路306を介して与えられる。ゲート回路306には制御部305から出力される制御信号が与えられる。制御信号により、下位側データ領域301bのイネーブル制御を行うことができる。   An enable signal is applied to the upper data area 301a, and an enable signal is applied to the lower data area 301b via the gate circuit 306. A control signal output from the control unit 305 is supplied to the gate circuit 306. Enable control of the lower data area 301b can be performed by the control signal.

係数メモリ302は、係数データのうち上位側データ([b:j]ビット)を保持する上位側係数領域302aと、下位側データ([j−1:0]ビット)を保持する下位側係数領域302bを有する。係数メモリ302の出力はレジスタ309に入力される。jはbより小さい正の整数である。   The coefficient memory 302 includes an upper coefficient area 302a that holds upper data ([b: j] bits) of coefficient data and a lower coefficient area that holds lower data ([j-1: 0] bits). 302b. The output of the coefficient memory 302 is input to the register 309. j is a positive integer smaller than b.

上位側係数領域302aにはイネーブル信号が与えられ、下位側係数領域302bにはイネーブル信号がゲート回路307を介して与えられる。ゲート回路307には制御部305から出力される制御信号が与えられる。制御信号により、下位側係数領域302bのイネーブル制御を行うことができる。   An enable signal is given to the higher coefficient region 302a, and an enable signal is given to the lower coefficient region 302b via the gate circuit 307. A control signal output from the control unit 305 is given to the gate circuit 307. The enable control of the lower coefficient region 302b can be performed by the control signal.

要求される精度が低い演算を行う時は、制御信号により下位側データ領域301b、下位側係数領域302bをディセーブル(無効)に固定し、乗算器203、加算器204の下位ビット演算回路を活性化させない。これにより部分的に回路が動作していないことになり、消費電力を抑制することができる。   When performing a calculation with low accuracy required, the lower-order data area 301b and the lower-order coefficient area 302b are fixed to disabled by the control signal, and the lower-order bit arithmetic circuits of the multiplier 203 and the adder 204 are activated. Do not let As a result, the circuit is not partially operated, and power consumption can be suppressed.

また、下位側データ領域301b、下位側係数領域302bではメモリアクセスが行われないため、その分の消費電力を抑制することができる。   Further, since no memory access is performed in the lower data area 301b and the lower coefficient area 302b, power consumption can be reduced.

ここで、制御信号により0固定されるメモリ領域のビット幅(入力データの下位iビット、係数データの下位jビット)は、演算の要求精度が低い時に出力精度に影響を与えない桁数にする。   Here, the bit width (lower i bits of the input data, lower j bits of the coefficient data) of the memory area fixed to 0 by the control signal is set to the number of digits that does not affect the output accuracy when the required calculation accuracy is low. .

このように、本実施形態によるデジタルフィルタにより、低精度の演算を行う際に消費電力を低減することができる。   Thus, the digital filter according to the present embodiment can reduce power consumption when performing low-accuracy calculations.

制御部305から出力される制御信号がゲート回路306、307に共通に与えられていたが、それぞれのゲート回路を別々に制御するようにしても良い。このような構成にすることで、より柔軟な演算精度の制御を行うことができる。   Although the control signal output from the control unit 305 is commonly supplied to the gate circuits 306 and 307, each gate circuit may be controlled separately. With such a configuration, more flexible calculation accuracy can be controlled.

本実施形態では、制御信号により下位側データ領域、下位側係数領域に与えられるイネーブル信号をディセーブルに固定することでイネーブル制御を行っていたが、イネーブル信号をクロック信号にし、制御信号によりクロック信号の供給制御を行ってイネーブル制御を行うようにしても良い。   In this embodiment, the enable signal is controlled by disabling the enable signal given to the lower data area and the lower coefficient area by the control signal. However, the enable signal is used as the clock signal, and the clock signal is output from the control signal. The supply control may be performed to enable control.

上述した実施の形態はいずれも一例であって限定的なものではないと考えられるべきである。本発明の技術的範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   Each of the above-described embodiments is an example and should be considered as not limiting. The technical scope of the present invention is defined by the terms of the claims, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

本発明の第1の実施形態によるデジタルフィルタの概略構成図である。It is a schematic block diagram of the digital filter by the 1st Embodiment of this invention. 変形例によるデジタルフィルタの概略構成図である。It is a schematic block diagram of the digital filter by a modification. 本発明の第2の実施形態によるデジタルフィルタの概略構成図である。It is a schematic block diagram of the digital filter by the 2nd Embodiment of this invention. 本発明の第3の実施形態によるデジタルフィルタの概略構成図である。It is a schematic block diagram of the digital filter by the 3rd Embodiment of this invention.

符号の説明Explanation of symbols

101 データRAM
102 係数メモリ
103 乗算器
104 加算器
105 制御部
106、107、108 レジスタ
109、110、111 ゲート回路
101 Data RAM
102 Coefficient memory 103 Multiplier 104 Adder 105 Control unit 106, 107, 108 Register 109, 110, 111 Gate circuit

Claims (5)

与えられたデータを記憶するデータ記憶部と、
係数を記憶する係数記憶部と、
前記データ記憶部から出力される前記データの所定の下位ビット及び制御信号が入力される第1のゲート部と、
前記係数記憶部から出力される前記係数の所定の下位ビット及び前記制御信号が入力される第2のゲート部と、
前記データ記憶部から出力される前記データの前記所定の下位ビット以外及び前記第1のゲート部の出力を与えられて保持し、出力する第1のレジスタと、
前記係数記憶部から出力される前記係数の前記所定の下位ビット以外及び前記第2のゲート部の出力を与えられて保持し、出力する第2のレジスタと、
前記第1のレジスタの出力と前記第2のレジスタの出力とを乗算し、乗算結果を出力する乗算器と、
前記乗算結果及び演算結果を加算して加算結果を出力する加算器と、
前記加算器から出力される前記加算結果の所定の下位ビット及び前記制御信号が入力される第3のゲート部と、
前記加算器から出力される前記加算結果の前記所定の下位ビット以外及び前記第3のゲート部の出力を与えられて保持し、前記演算結果として出力する第3のレジスタと、
前記第1、第2及び第3のゲート部の少なくともいずれか1つの出力を0にするように前記制御信号を出力する制御部と、
を備えるデジタルフィルタ。
A data storage unit for storing given data;
A coefficient storage unit for storing coefficients;
A first gate unit to which a predetermined lower bit of the data output from the data storage unit and a control signal are input;
A second gate unit to which a predetermined lower bit of the coefficient output from the coefficient storage unit and the control signal are input;
A first register that receives and holds the output of the data other than the predetermined lower-order bit of the data and the output of the first gate unit, and outputs the data.
A second register that receives and holds and outputs the other than the predetermined lower bits of the coefficient output from the coefficient storage unit and the output of the second gate unit;
A multiplier that multiplies the output of the first register and the output of the second register and outputs a multiplication result;
An adder for adding the multiplication result and the operation result and outputting the addition result;
A third gate unit to which a predetermined lower bit of the addition result output from the adder and the control signal are input;
A third register that outputs and outputs the calculation result other than the predetermined lower-order bits of the addition result output from the adder and the output of the third gate unit;
A control unit that outputs the control signal so that an output of at least one of the first, second, and third gate units is set to 0;
A digital filter comprising:
前記第1、第2及び第3のゲート部の少なくともいずれか1つは複数のゲート回路を有し、前記複数のゲート回路にはそれぞれ前記所定の下位ビットのうちの複数ビット及び前記制御信号が入力されることを特徴とする請求項1に記載のデジタルフィルタ。   At least one of the first, second, and third gate units includes a plurality of gate circuits, and the plurality of gate circuits each include a plurality of bits of the predetermined lower bits and the control signal. The digital filter according to claim 1, wherein the digital filter is input. 与えられたデータを記憶するデータ記憶部と、
係数を記憶する係数記憶部と、
前記データ記憶部から出力される前記データの所定の下位ビット及び制御信号が入力される第1のゲート部と、
前記係数記憶部から出力される前記係数の所定の下位ビット及び前記制御信号が入力される第2のゲート部と、
それぞれクロック信号及び前記制御信号が入力される第3、第4及び第5のゲート部と、
前記クロック信号に同期して前記データ記憶部から出力される前記データの前記所定の下位ビット以外を与えられて保持し、出力する第1のレジスタと、
前記第3のゲート部の出力に同期して前記第1のゲート部の出力を与えられて保持し、出力する第2のレジスタと、
前記クロック信号に同期して前記係数記憶部から出力される前記係数の前記所定の下位ビット以外を与えられて保持し、出力する第3のレジスタと、
前記第4のゲート部の出力に同期して前記第2のゲート部の出力を与えられて保持し、出力する第4のレジスタと、
前記第1及び第2のレジスタの出力と前記第3及び第4のレジスタの出力とを乗算し、乗算結果を出力する乗算器と、
前記乗算結果及び演算結果を加算して加算結果を出力する加算器と、
前記加算器から出力される前記加算結果の所定の下位ビット及び前記制御信号が入力される第6のゲート部と、
前記クロック信号に同期して前記加算器から出力される前記加算結果の前記所定の下位ビット以外を与えられて保持し、出力する第5のレジスタと、
前記第5のゲート部の出力に同期して前記第6のゲート部の出力を与えられて保持し、出力する第6のレジスタと、
前記第5及び第6のレジスタの出力が与えられ、前記演算結果として出力する連結部と、
前記第1乃至第6のゲート部の少なくともいずれか1つの出力を0にするように前記制御信号を出力する制御部と、
を備えるデジタルフィルタ。
A data storage unit for storing given data;
A coefficient storage unit for storing coefficients;
A first gate unit to which a predetermined lower bit of the data output from the data storage unit and a control signal are input;
A second gate unit to which a predetermined lower bit of the coefficient output from the coefficient storage unit and the control signal are input;
Third, fourth and fifth gate portions to which a clock signal and the control signal are input,
A first register that receives and holds data other than the predetermined lower bits of the data output from the data storage unit in synchronization with the clock signal, and outputs the first register;
A second register for receiving and holding and outputting the output of the first gate portion in synchronization with the output of the third gate portion;
A third register that receives and holds and outputs other than the predetermined lower bits of the coefficient output from the coefficient storage unit in synchronization with the clock signal;
A fourth register for receiving and holding and outputting the output of the second gate portion in synchronization with the output of the fourth gate portion;
A multiplier that multiplies the outputs of the first and second registers and the outputs of the third and fourth registers and outputs a multiplication result;
An adder for adding the multiplication result and the operation result and outputting the addition result;
A sixth gate unit to which a predetermined lower bit of the addition result output from the adder and the control signal are input;
A fifth register for receiving and holding and outputting other than the predetermined lower bits of the addition result output from the adder in synchronization with the clock signal;
A sixth register for receiving and holding and outputting the output of the sixth gate portion in synchronization with the output of the fifth gate portion;
A concatenation unit that is provided with outputs of the fifth and sixth registers and outputs the calculation results;
A control unit that outputs the control signal so that the output of at least one of the first to sixth gate units is set to 0;
A digital filter comprising:
イネーブル信号及び制御信号が入力される第1及び第2のゲート部と、
与えられたデータのうち上位ビット側のデータを記憶し前記イネーブル信号が与えられる上位側データ領域及び下位ビット側のデータを記憶し前記第1のゲート部の出力が与えられる下位側データ領域を有するデータ記憶部と、
係数のうち上位ビット側を記憶し前記イネーブル信号が与えられる上位側係数領域及び下位ビット側を記憶し前記第2のゲート部の出力が与えられる下位側係数領域を有する係数記憶部と、
前記データ記憶部の出力を与えられて保持し、出力する第1のレジスタと、
前記係数記憶部の出力を与えられて保持し、出力する第2のレジスタと、
前記第1のレジスタの出力と前記第2のレジスタの出力とを乗算し、乗算結果を出力する乗算器と、
前記乗算結果及び演算結果を加算して加算結果を出力する加算器と、
前記加算結果を与えられて保持し、前記演算結果として出力する第3のレジスタと、
前記下位側データ領域及び前記下位側係数領域の少なくともいずれか一方が無効となるように前記制御信号を出力する制御部と、
を備えるデジタルフィルタ。
First and second gate portions to which an enable signal and a control signal are input;
Of the applied data, the upper bit data is stored and the upper data area to which the enable signal is applied is stored, and the lower bit data is stored to store the lower bit data and the output of the first gate unit is provided. A data storage unit;
A coefficient storage unit that stores the upper bit side of the coefficient and stores the upper side coefficient region to which the enable signal is given and the lower bit side that stores the lower bit side and is supplied with the output of the second gate unit;
A first register for receiving and holding and outputting the output of the data storage unit;
A second register for receiving and outputting the output of the coefficient storage unit; and
A multiplier that multiplies the output of the first register and the output of the second register and outputs a multiplication result;
An adder for adding the multiplication result and the operation result and outputting the addition result;
A third register for giving and holding the addition result and outputting as the operation result;
A control unit that outputs the control signal so that at least one of the lower-side data region and the lower-side coefficient region becomes invalid;
Digital filter with
前記制御部から出力される前記制御信号は動作中一定値であることを特徴とする請求項1乃至4のいずれかに記載のデジタルフィルタ。   The digital filter according to claim 1, wherein the control signal output from the control unit is a constant value during operation.
JP2007232716A 2007-09-07 2007-09-07 Digital filter Pending JP2009065515A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007232716A JP2009065515A (en) 2007-09-07 2007-09-07 Digital filter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007232716A JP2009065515A (en) 2007-09-07 2007-09-07 Digital filter

Publications (1)

Publication Number Publication Date
JP2009065515A true JP2009065515A (en) 2009-03-26

Family

ID=40559678

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007232716A Pending JP2009065515A (en) 2007-09-07 2007-09-07 Digital filter

Country Status (1)

Country Link
JP (1) JP2009065515A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017166026A1 (en) * 2016-03-28 2017-10-05 武汉芯泰科技有限公司 Multiplier-accumulator, multiplier-accumulator array and digital filter
US10853721B2 (en) 2017-01-25 2020-12-01 Kabushiki Kaisha Toshiba Multiplier accumulator, network unit, and network apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017166026A1 (en) * 2016-03-28 2017-10-05 武汉芯泰科技有限公司 Multiplier-accumulator, multiplier-accumulator array and digital filter
US10853721B2 (en) 2017-01-25 2020-12-01 Kabushiki Kaisha Toshiba Multiplier accumulator, network unit, and network apparatus

Similar Documents

Publication Publication Date Title
US7602320B2 (en) Systems and methods for companding ADC-DSP-DAC combinations
US6392576B1 (en) Multiplierless interpolator for a delta-sigma digital to analog converter
Radhakrishnan et al. FPGA implementation of XOR-MUX full adder based DWT for signal processing applications
CN109791772B (en) Sound signal processing device, sound signal processing method, and recording medium
JP2009065515A (en) Digital filter
JP3003467B2 (en) Arithmetic unit
JPH09325955A (en) Square root arithmetic circuit for sum of squares
JP3131429U (en) Sigma Delta circuit
Al-Sulaifanie et al. Very large scale integration architecture for integer wavelet transform
JP2012506588A (en) Arithmetic logic unit of digital signal processor
US11329634B1 (en) Digital filter structure
JP4738408B2 (en) Matrix operation unit
Ou et al. An energy-efficient, high-precision SFP LPFIR filter engine for digital hearing aids
Klein et al. Externally linear time invariant digital signal processors
JP4640321B2 (en) Waveform generation circuit
US11804849B2 (en) Infinite impulse response filters with dithering and methods of operation thereof
JP3895887B2 (en) Decibel level adjustment device
JP2005149009A (en) Sum-of-product operation circuit
JP2007129618A (en) alpha MULTIPLICATION CIRCUIT AND ARITHMETIC CIRCUIT OF GALOIS FIELD
JP2004289417A (en) Digital filter
JPH0224410B2 (en)
JP4276258B2 (en) System and method for implementing sample rate converters using hardware and software to maximize speed and flexibility
JP4196434B2 (en) Data rounding method and data rounding device
JP2007060447A (en) Fir filter
Deepika et al. Low power FIR filter design using truncated multiplier