JP6070572B2 - ディジタルフィルタ回路およびディジタルフィルタ処理方法 - Google Patents
ディジタルフィルタ回路およびディジタルフィルタ処理方法 Download PDFInfo
- Publication number
- JP6070572B2 JP6070572B2 JP2013550170A JP2013550170A JP6070572B2 JP 6070572 B2 JP6070572 B2 JP 6070572B2 JP 2013550170 A JP2013550170 A JP 2013550170A JP 2013550170 A JP2013550170 A JP 2013550170A JP 6070572 B2 JP6070572 B2 JP 6070572B2
- Authority
- JP
- Japan
- Prior art keywords
- output
- signal
- filter
- multiplying
- frequency domain
- 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.)
- Active
Links
Images
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/0211—Frequency selective networks using specific transformation algorithms, e.g. WALSH functions, Fermat transforms, Mersenne transforms, polynomial transforms, Hilbert transforms
- H03H17/0213—Frequency domain filters using Fourier transforms
-
- 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/0202—Two or more dimensional filters; Filters for complex signals
-
- 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/0248—Filters characterised by a particular frequency response or filtering method
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H2218/00—Indexing scheme relating to details of digital filters
- H03H2218/04—In-phase and quadrature [I/Q] signals
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Complex Calculations (AREA)
Description
本発明は、ディジタル信号処理における演算処理回路に関し、特にディジタルフィルタ回路に関するものである。
近年、広く利用されているディジタルフィルタとしてFIRフィルタ(Finite Impulse Response Filter)やIIRフィルタ(Infinite Impulse Response Filter)がある。図9はFIRフィルタを用いたディジタルフィルタ回路100の構成例を示すブロック図である。なお、図9では、実数信号を実線で表記し、複素数信号を太線で表記して区別している。以下、他の構成図においても同様に表記する。
ディジタルフィルタ回路100は、複素数信号x(n)=r(n)+js(n)(jは虚数単位、nは整数)に対して、時間領域でフィルタ処理を行うディジタルフィルタ回路である。ディジタルフィルタ回路100は、3つのFIRフィルタ101,102,103から構成される。
ディジタルフィルタ回路100は、複素数信号x(n)=r(n)+js(n)(jは虚数単位、nは整数)に対して、時間領域でフィルタ処理を行うディジタルフィルタ回路である。ディジタルフィルタ回路100は、3つのFIRフィルタ101,102,103から構成される。
FIRフィルタ101は、入力された複素数信号x(n)の実数部である実数信号r(n)に対して実数演算によりフィルタ処理を行う、タップ数5の実数係数のFIRフィルタである。FIRフィルタ101の5つのフィルタ係数a0〜a4は実数である。FIRフィルタ101は、フィルタ処理の結果を実数信号r’(n)として出力する。
同様に、FIRフィルタ102は、入力された複素数信号の虚数部である実数信号s(n)に対して実数演算によりフィルタ処理を行う、タップ数5の実数係数のFIRフィルタである。FIRフィルタ102の5つのフィルタ係数b0〜b4は実数である。FIRフィルタ102は、フィルタ処理の結果を実数信号s’(n)として出力する。
一方、FIRフィルタ103は、FIRフィルタ101,102によりフィルタ処理された実数信号r’(n),s’(n)から構成される複素数信号x’(n)=r’(n)+js’(n)に対して複素数演算によりフィルタ処理を行う、タップ数5の複素数係数のFIRフィルタである。FIRフィルタ101の5つのフィルタ係数c0〜c4は複素数である。FIRフィルタ103は、フィルタ処理の結果を複素数信号x”(n)として出力する。
FIRフィルタによるフィルタ処理には、ディジタルフィルタ回路100のように、実数のフィルタ係数による実数演算によりフィルタ処理したい場合と、複素数のフィルタ係数による複素数演算によりフィルタ処理したい場合がある。
一般に、FIRフィルタのタップ数の最小値は、実現したいフィルタ関数のインパルス応答長で決定される。そのため、複雑なフィルタ関数を実現する場合、数百タップ以上のタップ数が必要な場合もある。このような、タップ数の大きいFIRフィルタをLSIに実装する場合、LSIの回路規模や消費電力が莫大になるという問題がある。
一般に、FIRフィルタのタップ数の最小値は、実現したいフィルタ関数のインパルス応答長で決定される。そのため、複雑なフィルタ関数を実現する場合、数百タップ以上のタップ数が必要な場合もある。このような、タップ数の大きいFIRフィルタをLSIに実装する場合、LSIの回路規模や消費電力が莫大になるという問題がある。
この問題に対して、周波数領域でフィルタ処理を行う技術が特開2011−4264号公報に開示されている。周波数領域でのフィルタ処理は、高速フーリエ変換(FFT)により時間領域上の信号データを一旦周波数領域上の信号データに変換した後、周波数領域で信号データとフィルタ係数とのフィルタ演算を実施し、このフィルタ処理した信号データを高速逆フーリエ変換(IFFT)により時間領域上の信号データに再変換する、という処理である。
FIRフィルタのタップ数が大きい場合、周波数領域でフィルタ処理を行うことで、フィルタ処理の実現に必要な回路規模や消費電力を低減することができる。その理由は、FIRフィルタによる時間領域での畳み込み演算は、周波数領域では単純な乗算に変換できるからである。
FIRフィルタのタップ数が大きい場合、周波数領域でフィルタ処理を行うことで、フィルタ処理の実現に必要な回路規模や消費電力を低減することができる。その理由は、FIRフィルタによる時間領域での畳み込み演算は、周波数領域では単純な乗算に変換できるからである。
ところで、時間領域の複素数信号データを複素FFTにより周波数領域の複素数信号データに変換する場合、時間領域における複素数信号データの実数部分および虚数部分は、周波数領域での複素数信号データにおいては合成されて変換されることになる。このため、複素数信号の実数部分および虚数部分のそれぞれを独立にフィルタ処理したい場合、特開2011−4264号公報に開示された技術によれば、複素数信号の実数部分および虚数部分のそれぞれを独立に実数FFTにより周波数領域の実数信号データに変換する必要がある。
図10に、特開2011−4264号公報に開示された技術による、周波数領域においてフィルタ処理を行うディジタルフィルタ回路110の構成図を示す。図10は、図9に示した時間領域でフィルタ処理を行うディジタルフィルタ回路100の構成に対応する例を示している。ディジタルフィルタ回路110は、複素数信号x(n)=r(n)+js(n)に対して、周波数領域でフィルタ処理を行うディジタルフィルタ回路である。ディジタルフィルタ回路110は、3つの周波数領域フィルタ111,112,113から構成される。
周波数領域フィルタ111は、入力された時間領域上の複素数信号x(n)の実数部である実数信号r(n)をFFTにより周波数領域上の複素数信号データに変換した後、この複素数信号データに対して周波数領域上で複素数演算によるフィルタ演算を実施し、フィルタ処理した複素数信号データをIFFTにより時間領域上の実数信号データr’(n)に再変換する。実数信号r(n)をフーリエ変換した場合でも、変換後の信号データは複素数になる。また、フィルタ係数も通常複素数である。そのため、フィルタ演算には複素数演算が必要である。
同様に、周波数領域フィルタ112は、入力された時間領域上の複素数信号x(n)の虚数部である実数信号s(n)をFFTにより周波数領域上の複素数信号データに変換した後、この複素数信号データに対して周波数領域上で複素数演算によるフィルタ演算を実施し、フィルタ処理した複素数信号データをIFFTにより時間領域上の実数信号データs’(n)に再変換する。
一方、周波数領域フィルタ113は、周波数領域フィルタ111,112によりフィルタ処理された実数信号r’(n),s’(n)から構成される複素数信号x’(n)=r’(n)+js’(n)を、FFTにより周波数領域上の複素数信号データに変換した後、この複素数信号データに対して周波数領域上で複素数演算によるフィルタ演算を実施し、フィルタ処理した複素数信号データをIFFTにより時間領域上の複素数信号データx”(n)に再変換する。
なお、周波数領域でフィルタ処理を行う技術は、特開2005−065231号公報、特開2008−017511号公報、特開2009−272683号公報にも開示されている。
なお、周波数領域でフィルタ処理を行う技術は、特開2005−065231号公報、特開2008−017511号公報、特開2009−272683号公報にも開示されている。
ディジタルフィルタ回路110の構成から明らかなように、複素数信号に対する複素数演算によるフィルタ処理と、複素数信号の実数部および虚数部のそれぞれに対する実数演算による独立したフィルタ処理の両方を行いたい場合、特開2011−4264号公報に開示された技術による周波数領域フィルタでは、それぞれのフィルタ処理について、FFTおよびIFFTが必要となる。したがって、ディジタルフィルタ回路110をLSIに実装する場合、LSIの回路規模や消費電力が莫大になるという問題点があった。
また、特開2005−065231号公報、特開2008−017511号公報、特開2009−272683号公報に開示された技術では、実数のフィルタ係数による実数演算によりフィルタ処理したい場合に対応することができるが、このフィルタ処理の後で複素数のフィルタ係数による複素数演算によりフィルタ処理したい場合に対応することができないという問題点があった。
本発明は、このような課題を解決するためのものであり、周波数領域におけるディジタルフィルタ処理において、LSIに実装する場合の回路規模や消費電力の低減を図ることができるディジタルフィルタ回路およびディジタルフィルタ処理方法を提供することを目的としている。
本発明のディジタルフィルタ回路は、時間領域の複素数信号をフーリエ変換により周波数領域の信号に変換するフーリエ変換手段と、前記フーリエ変換手段によって変換された周波数領域の信号を、前記時間領域の複素数信号の実数部に対応する第1の周波数領域の信号と前記時間領域の複素数信号の虚数部に対応する第2の周波数領域の信号とに分離するIQ分離手段と、前記第1の周波数領域の信号に対してフィルタ処理を行う第1のフィルタ手段と、前記第2の周波数領域の信号に対してフィルタ処理を行う第2のフィルタ手段と、前記第1のフィルタ手段によりフィルタ処理された信号と前記第2のフィルタ手段によりフィルタ処理された信号とを合成して第3の周波数領域の信号を生成するIQ合成手段と、前記第3の周波数領域の信号に対してフィルタ処理を行う第3のフィルタ手段と、前記第3のフィルタ手段によりフィルタ処理された信号を、逆フーリエ変換により時間領域の信号に変換する逆フーリエ変換手段とを備えることを特徴とするものである。
また、本発明のディジタルフィルタ処理方法は、時間領域の複素数信号をフーリエ変換により周波数領域の信号に変換するフーリエ変換ステップと、前記フーリエ変換ステップによって変換した周波数領域の信号を、前記時間領域の複素数信号の実数部に対応する第1の周波数領域の信号と前記時間領域の複素数信号の虚数部に対応する第2の周波数領域の信号とに分離するIQ分離ステップと、前記第1の周波数領域の信号に対してフィルタ処理を行う第1のフィルタステップと、前記第2の周波数領域の信号に対してフィルタ処理を行う第2のフィルタステップと、前記第1のフィルタステップによりフィルタ処理した信号と前記第2のフィルタステップによりフィルタ処理した信号とを合成して第3の周波数領域の信号を生成するIQ合成ステップと、前記第3の周波数領域の信号に対してフィルタ処理を行う第3のフィルタステップと、前記第3のフィルタステップによりフィルタ処理した信号を、逆フーリエ変換により時間領域の信号に変換する逆フーリエ変換ステップとを備えることを特徴とするものである。
本発明によれば、周波数領域におけるディジタルフィルタ処理において、LSIに実装する場合の回路規模や消費電力の低減を図ることができるディジタルフィルタ回路およびディジタルフィルタ処理方法を提供することができる。また、本発明では、実数のフィルタ係数による実数演算によりフィルタ処理した後で、複素数のフィルタ係数による複素数演算によりフィルタ処理したい場合に対応することができる。
次に、本発明の実施例について図面を参照して説明する。
[第1実施例]
図1は本発明の第1実施例に係るディジタルフィルタ回路10の構成を示すブロック図、図2はディジタルフィルタ回路10の動作を説明するフローチャートである。
本実施例のディジタルフィルタ回路10は、FFT回路13(フーリエ変換手段)と、IFFT回路14(逆フーリエ変換手段)と、IQ分離回路15(IQ分離手段)と、IQ合成回路16(IQ合成手段)と、第1のフィルタ回路21(第1のフィルタ手段)と、第2のフィルタ回路22(第2のフィルタ手段)と、第3のフィルタ回路23(第3のフィルタ手段)とを含んで構成される。
[第1実施例]
図1は本発明の第1実施例に係るディジタルフィルタ回路10の構成を示すブロック図、図2はディジタルフィルタ回路10の動作を説明するフローチャートである。
本実施例のディジタルフィルタ回路10は、FFT回路13(フーリエ変換手段)と、IFFT回路14(逆フーリエ変換手段)と、IQ分離回路15(IQ分離手段)と、IQ合成回路16(IQ合成手段)と、第1のフィルタ回路21(第1のフィルタ手段)と、第2のフィルタ回路22(第2のフィルタ手段)と、第3のフィルタ回路23(第3のフィルタ手段)とを含んで構成される。
ディジタルフィルタ回路10は、時間領域における複素数信号x(n)=r(n)+js(n)を入力とする。
FFT回路13は、入力された複素数信号x(n)=r(n)+js(n)を、FFTにより周波数領域の複素数信号X(k)=A(k)+jB(k)に変換して出力する(図2ステップS1)。ここで、nは時間領域上の信号サンプル番号を示す0≦n≦N−1の整数、kは周波数領域上の周波数番号を示す0≦k≦N−1の整数、NはFFTの変換サンプル数を示す0<Nの整数である。
FFT回路13は、入力された複素数信号x(n)=r(n)+js(n)を、FFTにより周波数領域の複素数信号X(k)=A(k)+jB(k)に変換して出力する(図2ステップS1)。ここで、nは時間領域上の信号サンプル番号を示す0≦n≦N−1の整数、kは周波数領域上の周波数番号を示す0≦k≦N−1の整数、NはFFTの変換サンプル数を示す0<Nの整数である。
複素数信号x(n)=r(n)+js(n)を構成する、時間領域における実数信号r(n)を実数FFTにより変換した周波数領域の複素数信号をR(k)とし、時間領域における実数信号s(n)を実数FFTにより変換した周波数領域の複素数信号をS(k)としたとき、複素共役の対称性から次式の関係が成立する。
X(k)=R(k)+jS(k) ・・・(1)
X*(N−k)=R(k)−jS(k) ・・・(2)
X(k)=R(k)+jS(k) ・・・(1)
X*(N−k)=R(k)−jS(k) ・・・(2)
ここで、X*(N−k)は、X(N−k)の複素共役を示す。したがって、複素数信号R(k)およびS(k)は、次式に示すように、X(k)およびX*(N−k)から求めることができる。
R(k)=1/2×{X(k)+X*(N−k)} ・・・(3)
jS(k)=1/2×{X(k)−X*(N−k)} ・・・(4)
R(k)=1/2×{X(k)+X*(N−k)} ・・・(3)
jS(k)=1/2×{X(k)−X*(N−k)} ・・・(4)
さらに、X*(N−k)はX(N−k)の複素共役であるので、X*(N−k)はX(N−k)から容易に求めることができる。したがって、複素数信号R(k)およびS(k)は、X(k)およびX(N−k)から求めることができる。
IQ分離回路15は、以上の関係をもとに、FFT回路13の出力X(k)とX(N−k)から、複素数信号R(k)およびjS(k)を分離する(図2ステップS2)。具体的には、IQ分離回路15は、0≦k≦N/2の周波数番号kについて、FFT回路13の出力X(k)の実数部A(k)と虚数部B(k)とを入力とすると共に、同じく0≦k≦N/2の周波数番号kについて、FFT回路13の出力X(N−k)の実数部A(N−k)と虚数部B(N−k)とを入力とし、次式のように複素数信号R(k)とjS(k)を計算する。
R(k)=1/2×{X(k)+X*(N−k)}
=1/2×{(A(k)+A(N−k))+j(B(k)−B(N−k))} ・・・(5)
jS(k)=1/2×{X(k)−X*(N−k)}
=1/2×{(A(k)−A(N−k))+j(B(k)+B(N−k))} ・・・(6)
R(k)=1/2×{X(k)+X*(N−k)}
=1/2×{(A(k)+A(N−k))+j(B(k)−B(N−k))} ・・・(5)
jS(k)=1/2×{X(k)−X*(N−k)}
=1/2×{(A(k)−A(N−k))+j(B(k)+B(N−k))} ・・・(6)
ただし、ここでX(N)=X(0)とする。したがって、式(7)、式(8)が成立する。
R(0)=1/2×{X(0)+X*(N)}
=1/2×{X(0)+X*(0)}=A(0) ・・・(7)
jS(0)=1/2×{X(0)−X*(N)}
=1/2×{X(0)−X*(0)}=jB(0) ・・・(8)
R(0)=1/2×{X(0)+X*(N)}
=1/2×{X(0)+X*(0)}=A(0) ・・・(7)
jS(0)=1/2×{X(0)−X*(N)}
=1/2×{X(0)−X*(0)}=jB(0) ・・・(8)
IQ分離回路15は、0≦k≦N/2の周波数番号kについて計算した複素数信号R(k)とjS(k)とを出力する。ここで、0≦k≦N/2の周波数番号kについてのみ、複素数信号R(k),jS(k)の計算および出力を行うのは、実数信号に対する実数FFTにおける複素共役の対象性から、R*(N−k)をR(N−k)の複素共役とし、S*(N−k)をS(N−k)の複素共役としたとき、以下の式(9)、式(10)の関係が成立し、R(N−k)をR(k)から容易に求めることができ、jS(N−k)をjS(k)から容易に求めることができるためである。
R*(N−k)=R(k) ・・・(9)
S*(N−k)=S(k) ・・・(10)
R*(N−k)=R(k) ・・・(9)
S*(N−k)=S(k) ・・・(10)
第1のフィルタ回路21は、IQ分離回路15が出力する複素数信号R(k)と所定の複素数係数V(k)について、複素数乗算によるフィルタ処理を行う複素数フィルタ回路である。具体的には、第1のフィルタ回路21は、0≦k≦N/2の周波数番号kについて、複素数信号R’(k)=R(k)×V(k)を計算して出力する(図2ステップS3)。
同様に、第2のフィルタ回路22は、IQ分離回路15が出力する複素数信号jS(k)と所定の複素数係数W(k)について、複素数乗算によるフィルタ処理を行う複素数フィルタ回路である。具体的には、第2のフィルタ回路22は、0≦k≦N/2の周波数番号kについて、複素数信号jS’(k)=jS(k)×W(k)を計算して出力する(図2ステップS4)。
IQ合成回路16は、第1のフィルタ回路21が出力する複素数信号R’(k)と第2のフィルタ回路22が出力する複素数信号jS’(k)とを合成した複素数信号X’(k)を生成する(図2ステップS5)。
ここで、R’(k)=RI’(k)+jRQ’(k)とすると、複素共役の対象性からR’*(N−k)=R’(k)の関係があるので、R’(N−k)=RI’(k)−jRQ’(k)が成立する。IQ合成回路16は、この関係を利用して、0≦k≦N/2の周波数番号kについて、複素数信号R’(k)からR’(N−k)を生成する。すなわち、IQ合成回路16は、0≦k≦N/2の周波数番号kについて入力されるR’(k)から、0≦k≦N−1の周波数番号kにおけるR’(k)を生成する。
ここで、R’(k)=RI’(k)+jRQ’(k)とすると、複素共役の対象性からR’*(N−k)=R’(k)の関係があるので、R’(N−k)=RI’(k)−jRQ’(k)が成立する。IQ合成回路16は、この関係を利用して、0≦k≦N/2の周波数番号kについて、複素数信号R’(k)からR’(N−k)を生成する。すなわち、IQ合成回路16は、0≦k≦N/2の周波数番号kについて入力されるR’(k)から、0≦k≦N−1の周波数番号kにおけるR’(k)を生成する。
同様に、jS’(k)=SI’(k)+jSQ’(k)=j{−jSI’(k)+SQ’(k)}としたとき、複素共役の対象性からS’*(N−k)=S’(k)の関係があるので、jS’(N−k)=j{jSI’(k)+SQ’(k)}=−SI’(k)+jSQ’(k)が成立する。IQ合成回路16は、この関係を利用して、0≦k≦N/2の周波数番号kについて、複素数信号jS’(k)からjS’(N−k)を生成する。すなわち、IQ合成回路16は、0≦k≦N/2の周波数番号kについて入力されるjS’(k)から、0≦k≦N−1の周波数番号kにおけるjS’(k)を生成する。
次に、IQ合成回路16は、生成したR’(k)およびjS’(k)から、0≦k≦N−1の周波数番号kについて複素数信号X’(k)=R’(k)+jS’(k)を生成して出力する。具体的には、IQ合成回路16は、式(11)、式(12)のような計算を行う。
X’(k)=R’(k)+jS’(k)
={RI’(k)+SI’(k)}+j{RQ’(k)+SQ’(k)} ・・・(11)
X’(N−k)=R’(N−k)+jS’(N−k)
={RI’(k)−SI’(k)}−j{RQ’(k)−SQ’(k)} ・・・(12)
X’(k)=R’(k)+jS’(k)
={RI’(k)+SI’(k)}+j{RQ’(k)+SQ’(k)} ・・・(11)
X’(N−k)=R’(N−k)+jS’(N−k)
={RI’(k)−SI’(k)}−j{RQ’(k)−SQ’(k)} ・・・(12)
第3のフィルタ回路23は、IQ合成回路16が出力する複素数信号X’(k)と所定の複素数係数H(k)について、複素数乗算によるフィルタ処理を行う複素数フィルタ回路である。具体的には、第3のフィルタ回路23は、0≦k≦N−1の周波数番号kについて、複素数信号X”(k)=X’(k)×H(k)を計算して出力する(図2ステップS6)。
IFFT回路14は、0≦k≦N−1の周波数番号kについて、第3のフィルタ回路23が出力する複素数信号X”(k)を、IFFTにより時間領域の複素数信号x”(n)に変換して出力する(図2ステップS7)。
次に、ディジタルフィルタ回路10の各構成要素の詳細について説明する。図3は、IQ分離回路15の構成の詳細を示すブロック図である。IQ分離回路15は、加算回路150,151と、減算回路152,153と、乗算回路154〜157とから構成される。
加算回路150(第1の加算手段)は、FFT回路13の出力X(k)=A(k)+jB(k)の実数部A(k)とFFT回路13の出力X(N−k)=A(N−k)+jB(N−k)の実数部A(N−k)とを加算する。加算回路151(第2の加算手段)は、FFT回路13の出力X(k)の虚数部jB(k)とFFT回路13の出力X(N−k)の虚数部jB(N−k)とを加算する。減算回路152(第1の減算手段)は、FFT回路13の出力X(k)の虚数部jB(k)からFFT回路13の出力X(N−k)の虚数部jB(N−k)を減算する。減算回路153(第2の減算手段)は、FFT回路13の出力X(k)の実数部A(k)からFFT回路13の出力X(N−k)の実数部A(N−k)を減算する。
乗算回路154(第1の乗算手段)は、加算回路150の出力A(k)+A(N−k)に所定の係数1/2を乗算した実数部RI(k)を計算する。乗算回路155(第2の乗算手段)は、減算回路152の出力j(B(k)−B(N−k))に所定の係数1/2を乗算した虚数部jRQ(k)を計算する。乗算回路156(第3の乗算手段)は、減算回路153の出力A(k)−A(N−k)に所定の係数1/2を乗算した実数部SI(k)を計算する。乗算回路157(第4の乗算手段)は、加算回路151の出力j(B(k)+B(N−k))に所定の係数1/2を乗算した虚数部jSQ(k)を計算する。
以上の構成により、IQ分離回路15は、式(13)、式(14)のような計算を行う。
R(k)=RI(k)+jRQ(k)
=1/2×{(A(k)+A(N−k))+j(B(k)−B(N−k))} ・・・(13)
jS(k)=SI(k)+jSQ(k)
=1/2×{(A(k)−A(N−k))+j(B(k)+B(N−k))} ・・・(14)
R(k)=RI(k)+jRQ(k)
=1/2×{(A(k)+A(N−k))+j(B(k)−B(N−k))} ・・・(13)
jS(k)=SI(k)+jSQ(k)
=1/2×{(A(k)−A(N−k))+j(B(k)+B(N−k))} ・・・(14)
図4は、第1のフィルタ回路21の構成の詳細を示すブロック図である。第1のフィルタ回路21は、乗算回路210〜213と、加算回路214,215とから構成される。
乗算回路210(第5の乗算手段)は、IQ分離回路15の出力R(k)=RI(k)+jRQ(k)の実数部RI(k)と所定の複素数係数V(k)=VI(k)+jVQ(k)の実数部VI(k)とを乗算する。乗算回路211(第6の乗算手段)は、IQ分離回路15の出力R(k)の虚数部jRQ(k)と複素数係数V(k)の虚数部jVQ(k)とを乗算する。乗算回路212(第7の乗算手段)は、IQ分離回路15の出力R(k)の実数部RI(k)と複素数係数V(k)の虚数部jVQ(k)とを乗算する。乗算回路213(第8の乗算手段)は、IQ分離回路15の出力R(k)の虚数部jRQ(k)と複素数係数V(k)の実数部VI(k)とを乗算する。
乗算回路210(第5の乗算手段)は、IQ分離回路15の出力R(k)=RI(k)+jRQ(k)の実数部RI(k)と所定の複素数係数V(k)=VI(k)+jVQ(k)の実数部VI(k)とを乗算する。乗算回路211(第6の乗算手段)は、IQ分離回路15の出力R(k)の虚数部jRQ(k)と複素数係数V(k)の虚数部jVQ(k)とを乗算する。乗算回路212(第7の乗算手段)は、IQ分離回路15の出力R(k)の実数部RI(k)と複素数係数V(k)の虚数部jVQ(k)とを乗算する。乗算回路213(第8の乗算手段)は、IQ分離回路15の出力R(k)の虚数部jRQ(k)と複素数係数V(k)の実数部VI(k)とを乗算する。
加算回路214(第3の加算手段)は、乗算回路210の出力RI(k)×VI(k)と乗算回路211の出力(−RQ(k)×VQ(k))とを加算する。加算回路215(第4の加算手段)は、乗算回路212の出力RI(k)×jVQ(k)と乗算回路213の出力jRQ(k)×VI(k)とを加算する。
以上の構成により、第1のフィルタ回路21は、IQ分離回路15が出力する複素信号線R(k)=RI(k)+jRQ(k)と所定の複素数係数V(k)=VI(k)+jVQ(k)とを入力として、複素数信号R’(k)=RI’(k)+jRQ’(k)=R(k)×V(k)を計算して出力する。
以上の構成により、第1のフィルタ回路21は、IQ分離回路15が出力する複素信号線R(k)=RI(k)+jRQ(k)と所定の複素数係数V(k)=VI(k)+jVQ(k)とを入力として、複素数信号R’(k)=RI’(k)+jRQ’(k)=R(k)×V(k)を計算して出力する。
ここで、RI’(k)およびRQ’(k)は次式で与えられる。
RI’(k)=RI(k)×VI(k)−RQ(k)×VQ(k) ・・・(15)
RQ’(k)=RI(k)×VQ(k)+RQ(k)×VI(k) ・・・(16)
RI’(k)=RI(k)×VI(k)−RQ(k)×VQ(k) ・・・(15)
RQ’(k)=RI(k)×VQ(k)+RQ(k)×VI(k) ・・・(16)
図5は、第2のフィルタ回路22の構成の詳細を示すブロック図である。第2のフィルタ回路22は、乗算回路220〜223と、加算回路224,225とから構成される。
乗算回路220(第9の乗算手段)は、IQ分離回路15の出力jS(k)=SI(k)+jSQ(k)の実数部SI(k)と所定の複素数係数W(k)=WI(k)+jWQ(k)の実数部WI(k)とを乗算する。乗算回路221(第10の乗算手段)は、IQ分離回路15の出力jS(k)の虚数部jSQ(k)と複素数係数W(k)の虚数部jWQ(k)とを乗算する。乗算回路222(第11の乗算手段)は、IQ分離回路15の出力jS(k)の実数部SI(k)と複素数係数W(k)の虚数部jWQ(k)とを乗算する。乗算回路223(第12の乗算手段)は、IQ分離回路15の出力jS(k)の虚数部jSQ(k)と複素数係数W(k)の実数部WI(k)とを乗算する。
乗算回路220(第9の乗算手段)は、IQ分離回路15の出力jS(k)=SI(k)+jSQ(k)の実数部SI(k)と所定の複素数係数W(k)=WI(k)+jWQ(k)の実数部WI(k)とを乗算する。乗算回路221(第10の乗算手段)は、IQ分離回路15の出力jS(k)の虚数部jSQ(k)と複素数係数W(k)の虚数部jWQ(k)とを乗算する。乗算回路222(第11の乗算手段)は、IQ分離回路15の出力jS(k)の実数部SI(k)と複素数係数W(k)の虚数部jWQ(k)とを乗算する。乗算回路223(第12の乗算手段)は、IQ分離回路15の出力jS(k)の虚数部jSQ(k)と複素数係数W(k)の実数部WI(k)とを乗算する。
加算回路224(第5の加算手段)は、乗算回路220の出力SI(k)×WI(k)と乗算回路221の出力(−SQ(k)×WQ(k))とを加算する。加算回路225(第6の加算手段)は、乗算回路222の出力SI(k)×jWQ(k)と乗算回路223の出力jSQ(k)×WI(k)とを加算する。
以上の構成により、第2のフィルタ回路22は、IQ分離回路15が出力する複素数信号jS(k)=SI(k)+jSQ(k)と所定の複素数係数W(k)=WI(k)+jWQ(k)とを入力として、複素数信号jS’(k)=SI’(k)+jSQ’(k)=jS(k)×W(k)を計算して出力する。
以上の構成により、第2のフィルタ回路22は、IQ分離回路15が出力する複素数信号jS(k)=SI(k)+jSQ(k)と所定の複素数係数W(k)=WI(k)+jWQ(k)とを入力として、複素数信号jS’(k)=SI’(k)+jSQ’(k)=jS(k)×W(k)を計算して出力する。
ここで、SI’(k)およびSQ’(k)は次式で与えられる。
SI’(k)=SI(k)×WI(k)−SQ(k)×WQ(k) ・・・(17)
SQ’(k)=SI(k)×WQ(k)+SQ(k)×WI(k) ・・・(18)
SI’(k)=SI(k)×WI(k)−SQ(k)×WQ(k) ・・・(17)
SQ’(k)=SI(k)×WQ(k)+SQ(k)×WI(k) ・・・(18)
図6は、IQ合成回路16の構成の詳細を示すブロック図である。IQ合成回路16は、複素共役生成回路160と、加算回路161〜164とから構成される。複素共役生成回路160は、2つの(−1)乗算回路165,166からなる。
(−1)乗算回路165(第13の乗算手段)は、第1のフィルタ回路21の出力R’(k)=RI’(k)+jRQ’(k)の虚数部jRQ’(k)と係数(−1)とを乗算する。(−1)乗算回路166(第14の乗算手段)は、第2のフィルタ回路22の出力jS’(k)=SI’(k)+jSQ’(k)の実数部SI’(k)と係数(−1)とを乗算する。
(−1)乗算回路165(第13の乗算手段)は、第1のフィルタ回路21の出力R’(k)=RI’(k)+jRQ’(k)の虚数部jRQ’(k)と係数(−1)とを乗算する。(−1)乗算回路166(第14の乗算手段)は、第2のフィルタ回路22の出力jS’(k)=SI’(k)+jSQ’(k)の実数部SI’(k)と係数(−1)とを乗算する。
加算回路161(第7の加算手段)は、第1のフィルタ回路21の出力R’(k)の実数部RI’(k)と第2のフィルタ回路22の出力jS’(k)の実数部SI’(k)とを加算する。加算回路162(第8の加算手段)は、第1のフィルタ回路21の出力R’(k)の虚数部jRQ’(k)と第2のフィルタ回路22の出力jS’(k)の虚数部jSQ’(k)とを加算する。加算回路163(第9の加算手段)は、第1のフィルタ回路21の出力R’(k)の実数部RI’(k)と(−1)乗算回路166の出力(−SI’(k))とを加算する。加算回路164(第10の加算手段)は、(−1)乗算回路165の出力(−jRQ’(k))と第2のフィルタ回路22の出力jS’(k)の虚数部jSQ’(k)とを加算する。
以上のように、IQ合成回路16は、第1のフィルタ回路21が0≦k≦N/2の周波数番号kについて出力する複素数信号R’(k)=RI’(k)+jRQ’(k)と、第2のフィルタ回路22が0≦k≦N/2の周波数番号kについて出力する複素数信号jS’(k)=SI’(k)+jSQ’(k)とを入力とする。
そして、IQ合成回路16は、0≦k≦N/2の周波数番号kについて、複素数信号R’(k)とjS’(k)とから、複素数信号X’(k)=XI’(k)+jXQ’(k)=R’(k)+jS’(k)を計算して出力する。ここで、XI’(k)およびXQ’(k)は次式で与えられる。
XI’(k)=RI’(k)+SI’(k) ・・・(19)
XQ’(k)=RQ’(k)+SQ’(k) ・・・(20)
XI’(k)=RI’(k)+SI’(k) ・・・(19)
XQ’(k)=RQ’(k)+SQ’(k) ・・・(20)
また、IQ合成回路16は、複素共役生成回路160により、0<k<N/2の周波数番号kについて、複素数信号R’(k)とjS’(k)とから、複素数信号R’(N−k)とjS’(N−k)とを次式のように生成する。
R’(N−k)=RI’(k)−jRQ’(k) ・・・(21)
jS’(N−k)=−SI’(k)+jSQ’(k) ・・・(22)
R’(N−k)=RI’(k)−jRQ’(k) ・・・(21)
jS’(N−k)=−SI’(k)+jSQ’(k) ・・・(22)
そして、IQ合成回路16は、生成したR’(N−k)とjS’(N−k)から、0<k<N/2の周波数番号kについて、複素数信号X’(N−k)=XI’(N−k)+jXQ’(N−k)=R’(N−k)+jS’(N−k)を計算して出力する。ここで、XI’(N−k)およびXQ’(N−k)は次式で与えられる。
XI’(N−k)=RI’(N−k)−SI’(N−k) ・・(23)
XQ’(N−k)=−RQ’(N−k)+SQ’(N−k) ・(24)
XI’(N−k)=RI’(N−k)−SI’(N−k) ・・(23)
XQ’(N−k)=−RQ’(N−k)+SQ’(N−k) ・(24)
図7は、第3のフィルタ回路23の構成の詳細を示すブロック図である。第3のフィルタ回路23は、乗算回路230〜233と、加算回路234,235とから構成される。
乗算回路230(第15の乗算手段)は、IQ合成回路16の出力X’(k)=XI’(k)+jXQ’(k)の実数部XI’(k)と所定の複素数係数H(k)=HI(k)+jHQ(k)の実数部HI(k)とを乗算する。乗算回路231(第16の乗算手段)は、IQ合成回路16の出力X’(k)の虚数部jXQ’(k)と複素数係数H(k)の虚数部jHQ(k)とを乗算する。乗算回路232(第17の乗算手段)は、IQ合成回路16の出力X’(k)の実数部XI’(k)と複素数係数H(k)の虚数部jHQ(k)とを乗算する。乗算回路233(第18の乗算手段)は、IQ合成回路16の出力X’(k)の虚数部jXQ’(k)と複素数係数H(k)の実数部HI(k)とを乗算する。
乗算回路230(第15の乗算手段)は、IQ合成回路16の出力X’(k)=XI’(k)+jXQ’(k)の実数部XI’(k)と所定の複素数係数H(k)=HI(k)+jHQ(k)の実数部HI(k)とを乗算する。乗算回路231(第16の乗算手段)は、IQ合成回路16の出力X’(k)の虚数部jXQ’(k)と複素数係数H(k)の虚数部jHQ(k)とを乗算する。乗算回路232(第17の乗算手段)は、IQ合成回路16の出力X’(k)の実数部XI’(k)と複素数係数H(k)の虚数部jHQ(k)とを乗算する。乗算回路233(第18の乗算手段)は、IQ合成回路16の出力X’(k)の虚数部jXQ’(k)と複素数係数H(k)の実数部HI(k)とを乗算する。
加算回路234(第11の加算手段)は、乗算回路230の出力XI’(k)×HI(k)と乗算回路231の出力(−XQ’(k)×HQ(k))とを加算する。加算回路235(第12の加算手段)は、乗算回路232の出力XI’(k)×jHQ(k)と乗算回路233の出力jXQ’(k)×HI(k)とを加算する。
以上の構成により、第3のフィルタ回路23は、IQ合成回路16が出力する複素数信号X’(k)=XI’(k)+jXQ’(k)と所定の複素数係数H(k)=HI(k)+jHQ(k)とを入力として、複素数信号X”(k)=XI”(k)+jXQ”(k)=X’(k)×H(k)を計算して出力する。
以上の構成により、第3のフィルタ回路23は、IQ合成回路16が出力する複素数信号X’(k)=XI’(k)+jXQ’(k)と所定の複素数係数H(k)=HI(k)+jHQ(k)とを入力として、複素数信号X”(k)=XI”(k)+jXQ”(k)=X’(k)×H(k)を計算して出力する。
ここで、XI”(k)およびXQ”(k)は次式で与えられる。
XI”(k)=XI’(k)×HI(k)−XQ’(k)×HQ(k) ・・・(25)
XQ”(k)=XI’(k)×HQ(k)+XQ’(k)×HI(k) ・・・(26)
XI”(k)=XI’(k)×HI(k)−XQ’(k)×HQ(k) ・・・(25)
XQ”(k)=XI’(k)×HQ(k)+XQ’(k)×HI(k) ・・・(26)
[第1実施例の効果]
本実施例では、複素数信号x(n)=r(n)+js(n)を複素高速フーリエ変換した複素数信号X(k)を、IQ分離回路15により、x(n)の実数部r(n)に対するFFTの結果であるR(k)と、x(n)の虚数部js(n)に対するFFTの結果であるjS(k)とに分離するので、R(k)とjS(k)のそれぞれに対して独立にフィルタ処理を行うことができる。さらに、複素数信号R(k)とjS(k)のそれぞれを独立にフィルタ処理した結果である複素数信号R’(k)とjS’(k)とを、IQ合成回路16により複素数信号X’(k)に合成するので、合成した複素数信号X’(k)に対してフィルタ処理を行うことができる。
本実施例では、複素数信号x(n)=r(n)+js(n)を複素高速フーリエ変換した複素数信号X(k)を、IQ分離回路15により、x(n)の実数部r(n)に対するFFTの結果であるR(k)と、x(n)の虚数部js(n)に対するFFTの結果であるjS(k)とに分離するので、R(k)とjS(k)のそれぞれに対して独立にフィルタ処理を行うことができる。さらに、複素数信号R(k)とjS(k)のそれぞれを独立にフィルタ処理した結果である複素数信号R’(k)とjS’(k)とを、IQ合成回路16により複素数信号X’(k)に合成するので、合成した複素数信号X’(k)に対してフィルタ処理を行うことができる。
したがって、本実施例によれば、時間領域における複素数信号の実数部および虚数部のそれぞれに対する実数演算による独立したフィルタ処理と、これら2つのフィルタ処理の結果得られる複素数信号に対する複素数演算によるフィルタ処理との、計3つのフィルタ処理に対応する周波数領域におけるフィルタ処理を、1つのFFT回路13およびIFFT回路14で実現することができ、3つのフィルタ処理の各々にFFT回路およびIFFT回路を設ける必要がなくなる。その結果、本実施例では、特開2011−4264号公報に開示された技術によるディジタルフィルタ回路と比較して、LSIに実装する場合の回路規模や消費電力の低減を図ることができる。
さらに、本実施例では、FFTの変換サンプル数をN(NはN>0の整数)としたとき、IQ分離回路15は、0≦k≦N/2の周波数番号kについてのみ、複素数信号X(k)をx(n)の実数部r(n)に対するFFTの結果であるR(k)と、x(n)の虚数部s(n)に対するFFTの結果であるS(k)とに分離する。さらに、IQ合成回路16は、0≦k≦N/2の周波数番号kについて第1のフィルタ回路21が出力する複素数信号R’(k)から、0≦k≦N−1の周波数番号kにおけるR’(k)を生成する。同様に、IQ合成回路16は、0≦k≦N/2の周波数番号kについて第2のフィルタ回路22が出力する複素数信号S’(k)から、0≦k≦N−1の周波数番号kにおけるS’(k)を生成する。
したがって、第1のフィルタ回路21および第2のフィルタ回路22は、0≦k≦N/2の周波数番号kについてのみ、フィルタ処理を行えばよい。その結果、本実施例では、LSIに実装する場合の回路規模や消費電力の低減を図ることができる。
[第2実施例]
第1実施例では、ディジタルフィルタ回路10をハードウェアで実現する場合について説明したが、ディジタルフィルタ回路10は、CPU、メモリおよび外部とのインタフェースを備えたコンピュータと、これらのハードウェア資源を制御するプログラムによって実現することもできる。
図8はこのようなコンピュータの構成例を示すブロック図である。図8において、200はCPU、201はRAM、202はROM、203はインターフェイス装置である。
第1実施例では、ディジタルフィルタ回路10をハードウェアで実現する場合について説明したが、ディジタルフィルタ回路10は、CPU、メモリおよび外部とのインタフェースを備えたコンピュータと、これらのハードウェア資源を制御するプログラムによって実現することもできる。
図8はこのようなコンピュータの構成例を示すブロック図である。図8において、200はCPU、201はRAM、202はROM、203はインターフェイス装置である。
このようなコンピュータにおいて、本発明のディジタルフィルタ処理方法を実現させるためのディジタルフィルタプログラムは、フレキシブルディスク、CD−ROM、DVD−ROM、メモリカードなどの、コンピュータ読み取り可能な非一時的記録媒体204に記録された状態で提供され、RAM201あるいは外部のハードディスク装置等のメモリに格納される。CPU200は、格納されたプログラムに従って第1実施例で説明した処理を実行する。
上記の実施例の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)時間領域の複素数信号をフーリエ変換により周波数領域の信号に変換するフーリエ変換手段と、前記フーリエ変換手段によって変換された周波数領域の信号を、前記時間領域の複素数信号の実数部に対応する第1の周波数領域の信号と前記時間領域の複素数信号の虚数部に対応する第2の周波数領域の信号とに分離するIQ分離手段と、前記第1の周波数領域の信号に対してフィルタ処理を行う第1のフィルタ手段と、前記第2の周波数領域の信号に対してフィルタ処理を行う第2のフィルタ手段と、前記第1のフィルタ手段によりフィルタ処理された信号と前記第2のフィルタ手段によりフィルタ処理された信号とを合成して第3の周波数領域の信号を生成するIQ合成手段と、前記第3の周波数領域の信号に対してフィルタ処理を行う第3のフィルタ手段と、前記第3のフィルタ手段によりフィルタ処理された信号を、逆フーリエ変換により時間領域の信号に変換する逆フーリエ変換手段とを備えることを特徴とするディジタルフィルタ回路。
(付記2)付記1に記載のディジタルフィルタ回路において、前記フーリエ変換の変換サンプル数をNとしたとき、前記IQ分離手段は、0≦k≦N/2の範囲の周波数番号kについて前記第1の周波数領域の信号および前記第2の周波数領域の信号を生成する手段を含み、前記第1のフィルタ手段は、0≦k≦N/2の範囲の周波数番号kについて前記第1の周波数領域の信号のフィルタ処理を行う手段を含み、前記第2のフィルタ手段は、0≦k≦N/2の範囲の周波数番号kについて前記第2の周波数領域の信号のフィルタ処理を行う手段を含み、前記IQ合成手段は、0≦k≦N/2の範囲の周波数番号kについて前記第1のフィルタ手段がフィルタ処理した信号と前記第2のフィルタ手段がフィルタ処理した信号とから、0≦k≦N−1の範囲の周波数番号kについて前記第3の周波数領域の信号を生成する手段を含むことを特徴とするディジタルフィルタ回路。
(付記3)付記2に記載のディジタルフィルタ回路において、前記IQ分離手段は、前記フーリエ変換手段の出力X(k)の実数部と前記フーリエ変換手段の出力X(N−k)の実数部とを加算する第1の加算手段と、前記フーリエ変換手段の出力X(k)の虚数部と前記フーリエ変換手段の出力X(N−k)の虚数部とを加算する第2の加算手段と、前記フーリエ変換手段の出力X(k)の虚数部から前記フーリエ変換手段の出力X(N−k)の虚数部を減算する第1の減算手段と、前記フーリエ変換手段の出力X(k)の実数部から前記フーリエ変換手段の出力X(N−k)の実数部を減算する第2の減算手段と、前記第1の加算手段の出力に所定の係数1/2を乗算する第1の乗算手段と、前記第1の減算手段の出力に所定の係数1/2を乗算する第2の乗算手段と、前記第2の減算手段の出力に所定の係数1/2を乗算する第3の乗算手段と、前記第2の加算手段の出力に所定の係数1/2を乗算する第4の乗算手段とを備えることを特徴とするディジタルフィルタ回路。
(付記4)付記2に記載のディジタルフィルタ回路において、前記第1のフィルタ手段は、前記IQ分離手段の出力R(k)の実数部と所定の複素数係数V(k)の実数部とを乗算する第5の乗算手段と、前記IQ分離手段の出力R(k)の虚数部と前記複素数係数V(k)の虚数部とを乗算する第6の乗算手段と、前記IQ分離手段の出力R(k)の実数部と前記複素数係数V(k)の虚数部とを乗算する第7の乗算手段と、前記IQ分離手段の出力R(k)の虚数部と前記複素数係数V(k)の実数部とを乗算する第8の乗算手段と、前記第5の乗算手段の出力と前記第6の乗算手段の出力とを加算する第3の加算手段と、前記第7の乗算手段の出力と前記第8の乗算手段の出力とを加算する第4の加算手段とを備えることを特徴とするディジタルフィルタ回路。
(付記5)付記2に記載のディジタルフィルタ回路において、前記第2のフィルタ手段は、前記IQ分離手段の出力jS(k)の実数部と所定の複素数係数W(k)の実数部とを乗算する第9の乗算手段と、前記IQ分離手段の出力jS(k)の虚数部と前記複素数係数W(k)の虚数部とを乗算する第10の乗算手段と、前記IQ分離手段の出力jS(k)の実数部と前記複素数係数W(k)の虚数部とを乗算する第11の乗算手段と、前記IQ分離手段の出力jS(k)の虚数部と前記複素数係数W(k)の実数部とを乗算する第12の乗算手段と、前記第9の乗算手段の出力と前記第10の乗算手段の出力とを加算する第5の加算手段と、前記第11の乗算手段の出力と前記第12の乗算手段の出力とを加算する第6の加算手段とを備えることを特徴とするディジタルフィルタ回路。
(付記6)付記2に記載のディジタルフィルタ回路において、前記IQ合成手段は、前記第1のフィルタ手段の出力R’(k)の虚数部と所定の係数である−1とを乗算する第13の乗算手段と、前記第2のフィルタ手段の出力jS’(k)の実数部と所定の係数である−1とを乗算する第14の乗算手段と、前記第1のフィルタ手段の出力R’(k)の実数部と前記第2のフィルタ手段の出力jS’(k)の実数部とを加算する第7の加算手段と、前記第1のフィルタ手段の出力R’(k)の虚数部と前記第2のフィルタ手段の出力jS’(k)の虚数部とを加算する第8の加算手段と、前記第1のフィルタ手段の出力R’(k)の実数部と前記第14の乗算手段の出力とを加算する第9の加算手段と、前記第13の乗算手段の出力と前記第2のフィルタ手段の出力jS’(k)の虚数部とを加算する第10の加算手段とを備えることを特徴とするディジタルフィルタ回路。
(付記7)付記2に記載のディジタルフィルタ回路において、前記第3のフィルタ手段は、前記IQ合成手段の出力X’(k)の実数部と所定の複素数係数H(k)の実数部とを乗算する第15の乗算手段と、前記IQ合成手段の出力X’(k)の虚数部と前記複素数係数H(k)の虚数部とを乗算する第16の乗算手段と、前記IQ合成手段の出力X’(k)の実数部と前記複素数係数H(k)の虚数部とを乗算する第17の乗算手段と、前記IQ合成手段の出力X’(k)の虚数部と前記複素数係数H(k)の実数部とを乗算する第18の乗算手段と、前記第15の乗算手段の出力と前記第16の乗算手段の出力とを加算する第11の加算手段と、前記第17の乗算手段の出力と前記第18の乗算手段の出力とを加算する第12の加算手段とを備えることを特徴とするディジタルフィルタ回路。
(付記8)時間領域の複素数信号をフーリエ変換により周波数領域の信号に変換するフーリエ変換ステップと、前記フーリエ変換ステップによって変換した周波数領域の信号を、前記時間領域の複素数信号の実数部に対応する第1の周波数領域の信号と前記時間領域の複素数信号の虚数部に対応する第2の周波数領域の信号とに分離するIQ分離ステップと、前記第1の周波数領域の信号に対してフィルタ処理を行う第1のフィルタステップと、前記第2の周波数領域の信号に対してフィルタ処理を行う第2のフィルタステップと、前記第1のフィルタステップによりフィルタ処理した信号と前記第2のフィルタステップによりフィルタ処理した信号とを合成して第3の周波数領域の信号を生成するIQ合成ステップと、前記第3の周波数領域の信号に対してフィルタ処理を行う第3のフィルタステップと、前記第3のフィルタステップによりフィルタ処理した信号を、逆フーリエ変換により時間領域の信号に変換する逆フーリエ変換ステップとを備えることを特徴とするディジタルフィルタ処理方法。
(付記9)付記8に記載のディジタルフィルタ処理方法において、前記フーリエ変換の変換サンプル数をNとしたとき、前記IQ分離ステップは、0≦k≦N/2の範囲の周波数番号kについて前記第1の周波数領域の信号および前記第2の周波数領域の信号を生成するステップを含み、前記第1のフィルタステップは、0≦k≦N/2の範囲の周波数番号kについて前記第1の周波数領域の信号のフィルタ処理を行うステップを含み、前記第2のフィルタステップは、0≦k≦N/2の範囲の周波数番号kについて前記第2の周波数領域の信号のフィルタ処理を行うステップを含み、前記IQ合成ステップは、0≦k≦N/2の範囲の周波数番号kについて前記第1のフィルタステップがフィルタ処理した信号と前記第2のフィルタステップがフィルタ処理した信号とから、0≦k≦N−1の範囲の周波数番号kについて前記第3の周波数領域の信号を生成するステップを含むことを特徴とするディジタルフィルタ処理方法。
以上、上記実施例を参照して本発明を説明したが、本発明は、上記実施例だけに限定されるものではない。本発明の構成や詳細は、上記実施例を適宜組み合わせて用いてもよく、さらに本発明の請求の範囲内において、適宜変更することもできる。
この出願は、2011年12月20日に出願された日本出願特願2011−278254号を基礎とする優先権を主張し、その開示の内容を全てここに取り込む。
この出願は、2011年12月20日に出願された日本出願特願2011−278254号を基礎とする優先権を主張し、その開示の内容を全てここに取り込む。
本発明は、ディジタルフィルタに適用することができる。
10…ディジタルフィルタ回路、13…FFT回路、14…IFFT回路、15…IQ分離回路、16…IQ合成回路、21,22,23…フィルタ回路、150,151,161〜164,214,215,224,225,234,235…加算回路、152,153…減算回路、154〜157,165,166,210〜213,220〜223,230〜233…乗算回路、160…複素共役生成回路、200…CPU、201…RAM、202…ROM、203…インターフェイス装置。
Claims (9)
- 時間領域の複素数信号をフーリエ変換により周波数領域の信号に変換するフーリエ変換手段と、
前記フーリエ変換手段によって変換された周波数領域の信号を、前記時間領域の複素数信号の実数部に対応する第1の周波数領域の信号と前記時間領域の複素数信号の虚数部に対応する第2の周波数領域の信号とに分離するIQ分離手段と、
前記第1の周波数領域の信号に対してフィルタ処理を行う第1のフィルタ手段と、
前記第2の周波数領域の信号に対してフィルタ処理を行う第2のフィルタ手段と、
前記第1のフィルタ手段によりフィルタ処理された信号と前記第2のフィルタ手段によりフィルタ処理された信号とを合成して第3の周波数領域の信号を生成するIQ合成手段と、
前記第3の周波数領域の信号に対してフィルタ処理を行う第3のフィルタ手段と、
前記第3のフィルタ手段によりフィルタ処理された信号を、逆フーリエ変換により時間領域の信号に変換する逆フーリエ変換手段とを備えることを特徴とするディジタルフィルタ回路。 - 請求項1に記載のディジタルフィルタ回路において、
前記フーリエ変換の変換サンプル数をNとしたとき、
前記IQ分離手段は、0≦k≦N/2の範囲の周波数番号kについて前記第1の周波数領域の信号および前記第2の周波数領域の信号を生成する手段を含み、
前記第1のフィルタ手段は、0≦k≦N/2の範囲の周波数番号kについて前記第1の周波数領域の信号のフィルタ処理を行う手段を含み、
前記第2のフィルタ手段は、0≦k≦N/2の範囲の周波数番号kについて前記第2の周波数領域の信号のフィルタ処理を行う手段を含み、
前記IQ合成手段は、0≦k≦N/2の範囲の周波数番号kについて前記第1のフィルタ手段がフィルタ処理した信号と前記第2のフィルタ手段がフィルタ処理した信号とから、0≦k≦N−1の範囲の周波数番号kについて前記第3の周波数領域の信号を生成する手段を含むことを特徴とするディジタルフィルタ回路。 - 請求項2に記載のディジタルフィルタ回路において、
前記IQ分離手段は、
前記フーリエ変換手段の出力X(k)の実数部と前記フーリエ変換手段の出力X(N−k)の実数部とを加算する第1の加算手段と、
前記フーリエ変換手段の出力X(k)の虚数部と前記フーリエ変換手段の出力X(N−k)の虚数部とを加算する第2の加算手段と、
前記フーリエ変換手段の出力X(k)の虚数部から前記フーリエ変換手段の出力X(N−k)の虚数部を減算する第1の減算手段と、
前記フーリエ変換手段の出力X(k)の実数部から前記フーリエ変換手段の出力X(N−k)の実数部を減算する第2の減算手段と、
前記第1の加算手段の出力に所定の係数1/2を乗算する第1の乗算手段と、
前記第1の減算手段の出力に所定の係数1/2を乗算する第2の乗算手段と、
前記第2の減算手段の出力に所定の係数1/2を乗算する第3の乗算手段と、
前記第2の加算手段の出力に所定の係数1/2を乗算する第4の乗算手段とを備えることを特徴とするディジタルフィルタ回路。 - 請求項2に記載のディジタルフィルタ回路において、
前記第1のフィルタ手段は、
前記IQ分離手段の出力R(k)の実数部と所定の複素数係数V(k)の実数部とを乗算する第5の乗算手段と、
前記IQ分離手段の出力R(k)の虚数部と前記複素数係数V(k)の虚数部とを乗算する第6の乗算手段と、
前記IQ分離手段の出力R(k)の実数部と前記複素数係数V(k)の虚数部とを乗算する第7の乗算手段と、
前記IQ分離手段の出力R(k)の虚数部と前記複素数係数V(k)の実数部とを乗算する第8の乗算手段と、
前記第5の乗算手段の出力と前記第6の乗算手段の出力とを加算する第3の加算手段と、
前記第7の乗算手段の出力と前記第8の乗算手段の出力とを加算する第4の加算手段とを備えることを特徴とするディジタルフィルタ回路。 - 請求項2に記載のディジタルフィルタ回路において、
前記第2のフィルタ手段は、
前記IQ分離手段の出力jS(k)の実数部と所定の複素数係数W(k)の実数部とを乗算する第9の乗算手段と、
前記IQ分離手段の出力jS(k)の虚数部と前記複素数係数W(k)の虚数部とを乗算する第10の乗算手段と、
前記IQ分離手段の出力jS(k)の実数部と前記複素数係数W(k)の虚数部とを乗算する第11の乗算手段と、
前記IQ分離手段の出力jS(k)の虚数部と前記複素数係数W(k)の実数部とを乗算する第12の乗算手段と、
前記第9の乗算手段の出力と前記第10の乗算手段の出力とを加算する第5の加算手段と、
前記第11の乗算手段の出力と前記第12の乗算手段の出力とを加算する第6の加算手段とを備えることを特徴とするディジタルフィルタ回路。 - 請求項2に記載のディジタルフィルタ回路において、
前記IQ合成手段は、
前記第1のフィルタ手段の出力R’(k)の虚数部と所定の係数である−1とを乗算する第13の乗算手段と、
前記第2のフィルタ手段の出力jS’(k)の実数部と所定の係数である−1とを乗算する第14の乗算手段と、
前記第1のフィルタ手段の出力R’(k)の実数部と前記第2のフィルタ手段の出力jS’(k)の実数部とを加算する第7の加算手段と、
前記第1のフィルタ手段の出力R’(k)の虚数部と前記第2のフィルタ手段の出力jS’(k)の虚数部とを加算する第8の加算手段と、
前記第1のフィルタ手段の出力R’(k)の実数部と前記第14の乗算手段の出力とを加算する第9の加算手段と、
前記第13の乗算手段の出力と前記第2のフィルタ手段の出力jS’(k)の虚数部とを加算する第10の加算手段とを備えることを特徴とするディジタルフィルタ回路。 - 請求項2に記載のディジタルフィルタ回路において、
前記第3のフィルタ手段は、
前記IQ合成手段の出力X’(k)の実数部と所定の複素数係数H(k)の実数部とを乗算する第15の乗算手段と、
前記IQ合成手段の出力X’(k)の虚数部と前記複素数係数H(k)の虚数部とを乗算する第16の乗算手段と、
前記IQ合成手段の出力X’(k)の実数部と前記複素数係数H(k)の虚数部とを乗算する第17の乗算手段と、
前記IQ合成手段の出力X’(k)の虚数部と前記複素数係数H(k)の実数部とを乗算する第18の乗算手段と、
前記第15の乗算手段の出力と前記第16の乗算手段の出力とを加算する第11の加算手段と、
前記第17の乗算手段の出力と前記第18の乗算手段の出力とを加算する第12の加算手段とを備えることを特徴とするディジタルフィルタ回路。 - 時間領域の複素数信号をフーリエ変換により周波数領域の信号に変換するフーリエ変換ステップと、
前記フーリエ変換ステップによって変換した周波数領域の信号を、前記時間領域の複素数信号の実数部に対応する第1の周波数領域の信号と前記時間領域の複素数信号の虚数部に対応する第2の周波数領域の信号とに分離するIQ分離ステップと、
前記第1の周波数領域の信号に対してフィルタ処理を行う第1のフィルタステップと、
前記第2の周波数領域の信号に対してフィルタ処理を行う第2のフィルタステップと、
前記第1のフィルタステップによりフィルタ処理した信号と前記第2のフィルタステップによりフィルタ処理した信号とを合成して第3の周波数領域の信号を生成するIQ合成ステップと、
前記第3の周波数領域の信号に対してフィルタ処理を行う第3のフィルタステップと、
前記第3のフィルタステップによりフィルタ処理した信号を、逆フーリエ変換により時間領域の信号に変換する逆フーリエ変換ステップとを備えることを特徴とするディジタルフィルタ処理方法。 - 請求項8に記載のディジタルフィルタ処理方法において、
前記フーリエ変換の変換サンプル数をNとしたとき、
前記IQ分離ステップは、0≦k≦N/2の範囲の周波数番号kについて前記第1の周波数領域の信号および前記第2の周波数領域の信号を生成するステップを含み、
前記第1のフィルタステップは、0≦k≦N/2の範囲の周波数番号kについて前記第1の周波数領域の信号のフィルタ処理を行うステップを含み、
前記第2のフィルタステップは、0≦k≦N/2の範囲の周波数番号kについて前記第2の周波数領域の信号のフィルタ処理を行うステップを含み、
前記IQ合成ステップは、0≦k≦N/2の範囲の周波数番号kについて前記第1のフィルタステップがフィルタ処理した信号と前記第2のフィルタステップがフィルタ処理した信号とから、0≦k≦N−1の範囲の周波数番号kについて前記第3の周波数領域の信号を生成するステップを含むことを特徴とするディジタルフィルタ処理方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011278254 | 2011-12-20 | ||
JP2011278254 | 2011-12-20 | ||
PCT/JP2012/077716 WO2013094308A1 (ja) | 2011-12-20 | 2012-10-26 | ディジタルフィルタ回路およびディジタルフィルタ処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2013094308A1 JPWO2013094308A1 (ja) | 2015-04-27 |
JP6070572B2 true JP6070572B2 (ja) | 2017-02-01 |
Family
ID=48668209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013550170A Active JP6070572B2 (ja) | 2011-12-20 | 2012-10-26 | ディジタルフィルタ回路およびディジタルフィルタ処理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9509282B2 (ja) |
JP (1) | JP6070572B2 (ja) |
WO (1) | WO2013094308A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6717204B2 (ja) * | 2015-01-21 | 2020-07-01 | 日本電気株式会社 | ディジタルフィルタ回路、信号処理装置およびディジタルフィルタ処理方法 |
JP6777095B2 (ja) * | 2015-12-02 | 2020-10-28 | 日本電気株式会社 | ディジタルフィルタ、フィルタ処理方法及び記録媒体 |
CN105656451B (zh) * | 2016-01-26 | 2018-07-03 | 北京空间飞行器总体设计部 | 一种基于频域处理的扩频信号匹配滤波系统及方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3679882A (en) * | 1970-06-11 | 1972-07-25 | Ibm | Fourier digital filter or equalizer and method of operation therefor |
US5270953A (en) * | 1991-05-23 | 1993-12-14 | Rockwell International Corporation | Fast convolution multiplier |
EP1304797A3 (en) | 1992-07-07 | 2007-11-28 | Dolby Laboratories Licensing Corporation | Digital filter having high accuracy and efficiency |
FR2702612B1 (fr) * | 1993-03-10 | 1995-06-09 | France Telecom | Procede et dispositif de filtrage d'un signal temporel numerique, et application a la correction d'echos dans un canal de transmission . |
US7290021B2 (en) * | 2001-04-24 | 2007-10-30 | California Institute Of Technology | Method and apparatus for parallel signal processing |
JP4638695B2 (ja) * | 2003-07-31 | 2011-02-23 | パナソニック株式会社 | 信号処理装置及びその方法 |
JP2009272683A (ja) | 2008-04-30 | 2009-11-19 | Toshiba Corp | 無線通信装置 |
JP2010219582A (ja) | 2009-03-13 | 2010-09-30 | Sony Corp | フィルタリング装置、フィルタリング方法、プログラムおよびサラウンドプロセッサ |
JP5343727B2 (ja) * | 2009-06-19 | 2013-11-13 | カシオ計算機株式会社 | デジタルカメラ装置 |
JP2011004264A (ja) | 2009-06-19 | 2011-01-06 | Fujitsu Ltd | ディジタル信号処理装置およびディジタル信号処理方法 |
-
2012
- 2012-10-26 JP JP2013550170A patent/JP6070572B2/ja active Active
- 2012-10-26 US US14/364,774 patent/US9509282B2/en active Active
- 2012-10-26 WO PCT/JP2012/077716 patent/WO2013094308A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20140379771A1 (en) | 2014-12-25 |
JPWO2013094308A1 (ja) | 2015-04-27 |
WO2013094308A1 (ja) | 2013-06-27 |
US9509282B2 (en) | 2016-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4396233B2 (ja) | 複素指数変調フィルタバンクの信号分析方法、信号合成方法、そのプログラム及びその記録媒体 | |
WO2007029536A1 (ja) | 雑音抑圧の方法及び装置並びにコンピュータプログラム | |
JP5065784B2 (ja) | 同相成分抽出方法及び装置 | |
JP6070572B2 (ja) | ディジタルフィルタ回路およびディジタルフィルタ処理方法 | |
KR20090005353A (ko) | 특성 취득 장치, 방법 및 프로그램 | |
JPWO2007010889A1 (ja) | 適応ディジタルフィルタ、fm受信機、信号処理方法、およびプログラム | |
WO2012086262A1 (ja) | デジタルフィルタ回路およびデジタルフィルタ制御方法 | |
JP6248923B2 (ja) | ディジタルフィルタ回路、ディジタルフィルタ処理方法及びディジタルフィルタ処理プログラム | |
Pereira et al. | Exploring approximate adders for power-efficient harmonics elimination hardware architectures | |
WO2006077795A1 (ja) | サンプリング周波数変換装置 | |
JP6717204B2 (ja) | ディジタルフィルタ回路、信号処理装置およびディジタルフィルタ処理方法 | |
JP6015431B2 (ja) | サンプリングレート変換装置及びプログラム | |
JP2004525463A (ja) | ピラミッド・フィルタ | |
US10855255B2 (en) | Digital filter, filter processing method, and recording medium | |
WO2005104365A1 (ja) | デジタルフィルタの設計方法および設計装置、デジタルフィルタ設計用プログラム、デジタルフィルタ、所望周波数特性の数値列の生成方法および生成装置、所望周波数特性の数値列生成用プログラム | |
CA3122750C (en) | Fourier transform device and fourier transform method | |
JP2004527025A (ja) | 乗算器のないピラミッド・フィルタ | |
JP2007228349A (ja) | サンプリング周波数変換方法、そのプログラム及びその記録媒体 | |
JP2001086585A (ja) | スピーカの二次歪み除去装置 | |
US8817901B2 (en) | Channel estimate interpolation circuit and method | |
Kalvikkarasi et al. | An economical modified VLSI architecture for computing power spectral density supported welch method | |
JP5018680B2 (ja) | Ad変換装置 | |
WO2016190051A1 (ja) | 演算装置 | |
JP2007201521A (ja) | 周波数成分分離フィルタ、方法およびプログラム | |
JP2012160907A (ja) | デジタルフィルタ、無線装置、フィルタリング方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150908 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20161206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161219 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6070572 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |