JP7204064B2 - 周波数検出器 - Google Patents

周波数検出器 Download PDF

Info

Publication number
JP7204064B2
JP7204064B2 JP2022558740A JP2022558740A JP7204064B2 JP 7204064 B2 JP7204064 B2 JP 7204064B2 JP 2022558740 A JP2022558740 A JP 2022558740A JP 2022558740 A JP2022558740 A JP 2022558740A JP 7204064 B2 JP7204064 B2 JP 7204064B2
Authority
JP
Japan
Prior art keywords
frequency detector
data
adder
input
subtractor
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
Application number
JP2022558740A
Other languages
English (en)
Other versions
JPWO2022091331A1 (ja
Inventor
勝己 高橋
將 白石
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2022091331A1 publication Critical patent/JPWO2022091331A1/ja
Application granted granted Critical
Publication of JP7204064B2 publication Critical patent/JP7204064B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R23/00Arrangements for measuring frequencies; Arrangements for analysing frequency spectra
    • G01R23/16Spectrum analysis; Fourier analysis

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar Systems Or Details Thereof (AREA)

Description

本開示技術は、高速フーリエ変換(以下「FFT」という)を用いてリアルタイムに周波数を検出する機器に関する。
FFTを用いた周波数検出は、広い分野で用いられている。例えば、特許文献1には、ドップラーレーダー、ドップラーソナー等の用途が示され、反射エコー信号をFFTすることによりドップラー周波数を求める技術が開示されている。
また、特許文献1は、必要とされる周波数分解能を満たすために高速フーリエ変換において必要なサンプル数を基準サンプル数として、基準サンプル数に達するように、デジタルデータ列にゼロデータを付加する技術を開示している。
特開2012-247304号公報
特許文献1により開示された技術は、倍の分解能を得る際、処理速度が半減し、回路規模が倍増するという課題があった。本開示技術は、処理速度を維持し、回路規模の増大を抑えた上で、分解能を上げる周波数検出器を提供することを目的とする。
本開示技術にかかる周波数検出器は、N個のサンプリングデータからN個のフーリエ変換結果を算出するFFT器と、前記フーリエ変換結果のうち、振幅が極大となる周波数の順番である指標を検出する検出器と、を備える周波数検出器であって、入力線を2つに分岐した2つの入力系統と、前記2つの入力系統の1つに接続され、遅延をさせるためのFIFO型メモリと、前記FIFO型メモリが介在する入力系統からのN個のサンプリングデータと他の入力系統からの別のN個のサンプリングデータとを加減算する加減算器と、位相を生成し、生成した前記位相を複素数に変換する位相生成器と、前記加減算器により加減算されたデータに、前記位相生成器で前記位相から変換された前記複素数を乗算する乗算器と、からなる補正演算器をさらに備え、前記乗算器から出力されたデータに対して前記フーリエ変換結果の算出を2回以上実施し、それぞれの前記フーリエ変換結果から検出した複数の指標について対応する振幅を比較して、振幅が大きい方の指標を選択する。
本開示技術にかかる周波数検出器は、上記構成を備えるため、周波数分解能を2倍にするためにサンプリング点数を増やさなくとも、ピーク周波数近傍で、倍の分解能のフーリエ変換の結果を得ることができる。このため、処理速度を維持し、回路規模の増大を抑えた上で、分解能を上げる周波数検出器を実現することができる。
図1は、実施の形態1にかかる周波数検出器の構成を示すブロック図である。 図2は、実施の形態2にかかる周波数検出器における補正演算器の構成を示すブロック図である。 図3は、実施の形態3にかかる周波数検出器における補正演算器の構成を示すブロック図である。 図4は、実施の形態4にかかる周波数検出器における補正演算器の構成を示すブロック図である。 図5は、実施の形態5にかかる周波数検出器における補正演算器の構成を示すブロック図である。 図6は、実施の形態6にかかる周波数検出器の構成を示すブロック図である。 図7は、実施の形態7にかかる周波数検出器の構成を示すブロック図である。 図8は、実施の形態4にかかる周波数検出器の処理タイミングを示すタイミングチャートである。 図9は、実施の形態9にかかる周波数検出装置の構成を示すブロック図である。
本開示技術を実施するための形態は、図面に沿った以下の説明により、明らかにされる。
実施の形態1.
図1は、実施の形態1にかかる周波数検出器1の構成を示すブロック図である。周波数検出器1は、入力データを受け取る入力線2と、検出結果を送り出す出力線3と、入力データに補正を施す補正演算器4と、FFTを実施するFFT器5と、最大ピークを検出する検出器6と、出力値を選択する選択器7とを備える。ここでFFT器5は、離散フーリエ変換を実施するものであってもよい。
周波数検出器1の動作は、以下の具体例により明らかにされる。具体的にはサンプルデータの数がN個であり、分解能を倍加する場合を例示する。N個のサンプルデータは、入力線2を介し、補正演算器4へ送信される。補正演算器4は、送信されたN個のサンプルデータを補正し、FFT器5へ出力する。補正演算器4の内部動作は、後述する。FFT器5は、送られたN個のサンプルデータをフーリエ変換し、同じくN個のフーリエ変換結果を検出器6へ出力する。N個のサンプリングデータを{x,x,…,xN-1}とすると、FFT器5はN個のフーリエ変換計算結果{F(f)、F(f)、…F(fN-1)}を算出する。ここで、f、f、…fN-1は低い順に並べられた周波数であり、フーリエ変換計算結果F(・)は複素数である。
検出器6は、まずフーリエ変換計算結果である複素数の絶対値を算出する。複素数の絶対値とは、複素数を複素平面にプロットしたときの原点からの距離のことである。例えば、フーリエ変換計算結果F(f)の絶対値は|F(f)|というように、絶対値の記号|・|を用いて表す。また、|F(f)|は周波数fにおける「振幅」と呼ぶ。検出器6は、振幅が極大となる周波数(以下「ピーク周波数」という)のうち、振幅が最大となるピーク周波数及び振幅最大の周波数の指標を検出する。指標とは、FFT結果の周波数が低い順に並べた順番をいう。より具体的にいえば、指標とは、周波数を表す記号f、f、…fN-1の下添え字の0、1、…N-1のことである。検出器6は、検出した指標と振幅を選択器7へ出力する。
選択器7は、まず送信された指標を2倍にする。つぎに、選択器7は、初回受取りを0番目と数えて、奇数番目に受け取った指標にはさらに1を加える。さらに、直近2回分の受け取った指標について、それぞれの対応する振幅を比較して、振幅が大きい方の指標を選択する。最後に選択器7は、選択した指標、又は、その指標に対応する周波数を、出力線3に出力する。以上の動作により、周波数検出器1は、振幅が最大となるピーク周波数を出力できる。
補正演算器4は、入力線2の入力を有し、FIFO型メモリ8、加減算器9、乗算器10、及び位相生成器11から構成されている。また、補正演算器4は、周波数検出器1を構成し、FFT器5の前段に配置されている。
補正演算器4のFIFO型メモリ8は、入力線2から送信されたN個のサンプリングデータを蓄える。FIFO型メモリ8は、あらたにN個のサンプリングデータを蓄えたと同時に出力を開始し、常時N個分のデータを保持し続ける。
補正演算器4の加減算器9は、入力線2から送信されたN個のサンプリングデータとFIFO型メモリ8から出力されたN個のデータとを加減算する。具体的にいえば加減算器9は、N個同士の加減算を1つの単位として加算と減算とを切り替える。ここでの減算は、FIFO型メモリ8の出力値から、入力線2の値を引く。
補正演算器4の乗算器10は、加減算器9から出力された値に、位相生成器11から出力された複素数を乗算する。
補正演算器4の位相生成器11は、位相φを生成し、exp(jφ)=cos(φ)+j・sin(φ)を満たす複素数を出力する。生成する位相φは、最初のN個は0、次のN個は初期値を0とし、位相増分α=π/Nとしたものである。すなわち、生成するφは、以下の式で求まる値である。
最初のN個 n=0からN-1まで,φ=0 ・・・(1A)
次のN個 n=0からN-1まで,φ=nπ/N ・・・(1B)
位相生成器11の上記処理は、2N回を1つの単位として繰り返される。
位相生成器11が生成する位相φが0のとき、FFT器5は、通常のフーリエ変換器のように入力線2から送信されたN個のサンプリングデータをそのままフーリエ変換する。位相生成器11が生成する位相φを式(1B)で与える意図は、説明を要するため、ここで詳細を述べる。FFT器5が行う離散フーリエ変換は、以下の式(2)で与えられる。
Figure 0007204064000001
ただし、ここでkは指標を表す。
一方、位相生成器11が式(1B)で与えられる位相φを生成し、θ=exp(-jnφ)を入力信号x={x,x,…,xN-1}のそれぞれに乗算すると、FFT器5で行うフーリエ変換は、以下の式(3)となる。

Figure 0007204064000002
補正なしのフーリエ変換と比較すると、フーリエ変換の基本調波の位相増分は2π/Nであり、k倍波の位相増分は2kπ/N、k+1倍波の位相増分は2(k+1)π/Nである。すなわち、式(1B)が表す位相生成器11の位相増分α=π/Nは、補正なしのフーリエ変換おけるk倍波とk+1倍波の位相増分の半分であることがわかる。位相増分は、nを1つ増やしたときの、指数関数の肩の増分だが、言い換えればフーリエ変換で使う信号の周波数と対応している。
選択器7の動作原理は、以下の具体例により明らかにされる。前述のとおり、選択器7は、送信された直近2回分の指標からいずれか1つの指標を選択する。具体例は、検出器6から最初に送信された指標をm、次に送信された指標をpとする。また、指標がmのときの振幅をA、指標がpのときの振幅をAとする。選択器7は、送信された指標{m、p}を、指標{2m、2p+1}に変換する。つぎに、選択器7は、振幅のAとAとを比較し、振幅が大きい方に対応する指標を選択する。例えば、Aの方が大きければ、指標として2p+1を選択し、以下の数式を用いて対応する周波数を求める。
周波数=入力データのサンプリング周波数×指標÷2N ・・・(4)
よって、指標が2p+1であるピークの周波数は、サンプリング周波数×(2p+1)÷2Nで求まる。
以上の構成を備えることにより、実施の形態1にかかる周波数検出器は、従来の周波数検出器に比べ、処理速度を低下させることなく、かつ、回路規模も倍増させることなく、周波数分解能を2倍にすることができる。
発明の効果における処理速度及び回路規模は、少し説明を要するのでここで述べる。ここでの処理速度とは、スループットのことを指す。また、一般に、リアルタイム処理可能なFFT器は、点数の倍増に伴い回路規模も倍増する。そのため、サンプル点数が少ない特殊な場合を除き、補正演算器4の回路規模は、FFT器5に比べて十分小さい。具体的な回路規模の差は、FPGA等のデバイス、ベンダ提供の回路の構成、回路を合成するツールなどの内容により異なる。すなわち、本開示技術における周波数検出器は、処理速度を落とさずに点数を倍にするFFT器の構成と比べて回路規模は小さくてすむ。
また、周波数検出器の分解能は、これについても少し説明を要するため、ここで述べる。分解能は、「入力のサンプリング周波数÷FFT点数」で求められる値である。よって、
サンプリング周波数をそのままに、サンプリング時間を倍に増やし、サンプリング点数を2倍にすれば、分解能は2倍になる。実施の形態1にかかる周波数検出器は、サンプリング時間を2倍にすることで、一定の条件下でFFT点数を2倍して得られる結果と等価の結果を出力する。一定の条件とは、受信した信号は、2つの異なった積分区間でみて信号が変動していない、という条件である。
実施の形態2.
実施の形態1にかかる周波数検出器は、補正演算器4が1つのFIFO型メモリ8を備える構成のものについて述べた。ただし、本開示技術において、1つのFIFO型メモリ8は最低限必要な台数を示したに過ぎず、これに限定したものではない。実施の形態2にかかる周波数検出器は、複数のFIFO型メモリ8(8a、8b)と、その後段に複数の位相回転器13(13a、13b、13c)と、を備える。
実施の形態2にかかる周波数検出器の全体構成は、実施の形態1の全体構成と同じである(図1参照)。実施の形態2の説明は、実施の形態1と共通する構成要素には同じ符号を用いる。また、実施の形態1と重複する説明は、適宜、省略する。
図2は、実施の形態2にかかる周波数検出器における補正演算器4の構成を示すブロック図である。実施の形態2の補正演算器4は、入力データを受け取る入力線2と、データを一時的に保持する複数のFIFO型メモリ8(8a、8b)と、乗算演算を行う乗算器10と、位相を生成する位相生成器11と、出力線12と、位相を回転させる複数の位相回転器13(13a、13b、13c)と、加算演算をする加算器14とを備える。
実施の形態2の補正演算器4の動作は、以下の具体例により明らかにされる。実施の形態2にかかる技術が意図することは、分解能を3倍化することである。実施の形態2にかかる周波数検出器の動作は、選択器7の動作を除いて実施の形態1と共通している。
実施の形態2にかかる周波数検出器1の動作は、以下の具体例により明らかにされる。具体的にはサンプルデータの数がN個であり、分解能を3倍加する場合を例示する。N個のサンプルデータは、入力線2を介し、周波数検出器1の補正演算器4へ送信される。補正演算器4は、送信されたN個のサンプルデータを補正し、FFT器5へ出力する。補正演算器4の内部動作は、後述する。FFT器5は、送られたN個のサンプルデータをフーリエ変換し、同じくN個のフーリエ変換結果を検出器6へ出力する。検出器6は、N個のフーリエ演算結果から、振幅が最大のものの指標を選出し、選出した指標と対応する振幅の値を選択器7へ出力する。
選択器7は、まず送信された指標を3倍にする。つぎに、選択器7は、初回受取りを0番目と数えて、受け取った順番の数字を3で割った余りを受け取った指標に加算する。さらに、直近3回分の受け取った指標について、それぞれの対応する振幅を比較して、振幅が最大の指標を選択する。最後に選択器7は、選択した指標、又は、その指標に対応する周波数を、出力線3に出力する。以上の動作により、周波数検出器1は、振幅が最大となるピーク周波数を出力できる。
補正演算器4の複数のFIFO型メモリ8(8a、8b)は、入力線2から送信されたN個のサンプリングデータをそれぞれ蓄える。複数のFIFO型メモリ8(8a、8b)のそれぞれは、あらたにN個のサンプリングデータを蓄えたと同時に出力を開始し、常時N個分のデータを保持し続ける。
補正演算器4は、複数のFIFO型メモリ8(8a、8b)の後段にそれぞれ配置された複数の位相回転器13(13a、13b)を備える。また、補正演算器4は、上記とは別に、入力線2に直接接続された位相回転器13(13c)を備える。位相回転器13(13a、13b、13c)は、入力された値に対し、位相を回転させる作用を施す。回転量などの具体的なことは、後述する。
補正演算器4の加減算器9は、位相回転器13(13a、13b、13c)のそれぞれが出力する3つの値を加算する。すなわち、実施の形態2にかかる加減算器9は、加減算器入力をさらに備え、さらにN個のサンプリングデータを加減算する。
補正演算器4の乗算器10は、加減算器9から出力された値に、位相生成器11から出力された複素数を乗算する。この乗算結果が補正演算器4の補正結果となる。
補正演算器4の位相生成器11は、位相φを生成し、exp(jφ)=cos(φ)+j・sin(φ)を満たす複素数を出力する。生成する位相φは、以下の数式により与えられる。
位相φ=((n div N)mod 3)×(x mod N)×2π÷(3N)
・・・(5)
ただし、nはサンプリング番号を、divとmodはそれぞれ整数の割算における商と余剰を表す。
以上の動作により、補正演算器4は、入力値に補正を施す。
補正演算器4が備える複数の位相回転器13(13a、13b、13c)は、以下のとおり動作する。
FIFO型メモリ8aの後段に配置された位相回転器13aは、位相回転器とは名ばかりで、実際には位相を回転しない。位相回転器13aが回転する位相は、0[rad]だと言い換えてもよい。位相回転器13aは、遅延回路に置き換えることができる。また、位相回転器13aは、FIFO型メモリ8aの保持数を変更することによって、なくす構成としてもよい。
FIFO型メモリ8bの後段に配置された位相回転器13bは、以下の式で与えられる位相を回転させる。
最初のN個 n=0からN-1まで,φ=0 ・・・(6A)
次のN個 n=0からN-1まで,φ=2π/3 ・・・(6B)
最後のN個 n=0からN-1まで、φ=4π/3 ・・・(6C)
入力線2に直接つながれた位相回転器13cは、以下の式で与えられる位相を回転させる。
最初のN個 n=0からN-1まで,φ=0 ・・・(7A)
次のN個 n=0からN-1まで,φ=4π/3 ・・・(7B)
最後のN個 n=0からN-1まで、φ=8π/3 ・・・(7C)
選択器7の動作原理は、以下の具体例により明らかにされる。前述のとおり、選択器7は、送信された直近3回分の指標からいずれか1つの指標を選択する。具体例は、検出器6から最初に送信された指標をm、次に送信された指標をp、最後に送信された指標をqとする。また、指標がmのときの振幅をA、指標がpのときの振幅をA、指標がqのときの振幅をAとする。選択器7は、送信された指標{m、p、q}を、指標{3m、3p+1、3q+2}に変換する。つぎに、選択器7は、振幅のA、A、及びAを比較し、振幅が最大に対応する指標を選択する。例えば、Aが最大であれば、指標として3q+2を選択し、以下の数式を用いて対応する周波数を求める。
周波数=入力データのサンプリング周波数×指標÷3N ・・・(8)
よって、指標が3q+2であるピークの周波数は、サンプリング周波数×(3q+2)÷3Nで求まる。
以上の構成を備えることにより、実施の形態2にかかる周波数検出器は、サンプリング点数をN個としたまま、従来の周波数検出器に比べ、処理速度を低下させることなく、かつ、回路規模も3倍増させることなく、周波数分解能を3倍にすることができる。
実施の形態2にかかる周波数検出器は、周波数分解能を3倍にする例を示したが、これに限定するものではなく、周波数分解能をL倍にする一般化が行える。周波数分解能をL倍にする場合、L台の位相回転器13(13a、13b、13c、…)の位相に関する式は、以下のように一般化できる。
最初のN個 n=0からN-1まで,φ=0 ・・・(9A)
次のN個 n=0からN-1まで,φ=i×2π/L ・・・(9B)
その次のN個 n=0からN-1まで、φ=i×4π/L ・・・(9C)

最後のN個 n=0からN-1まで、φ=i×2(L-1)π/L・・・(9D)
ただし、iは位相演算器の通し番号(0からL-1まで)である。
実施の形態3.
実施の形態3にかかる周波数検出器は、既出の実施の形態にかかる周波数検出器とは異なる、別の補正演算器4を備える。図3は、実施の形態3にかかる周波数検出器の補正演算器4の構成を示すブロック図である。
実施の形態3にかかる周波数検出器の全体構成は、実施の形態1の全体構成と同じである(図1参照)。実施の形態3の説明は、既出の実施の形態と共通する構成要素には同じ符号を用いる。また、既出の実施の形態と重複する説明は、適宜、省略する。
図3が示すように、実施の形態3の補正演算器4は、入力データを受け取る入力線2と、データを一時的に保持する複数のFIFO型メモリ(8、22)と、乗算演算を行う乗算器10と、位相を生成する位相生成器11と、出力線12と、加算及び減算の両方を実施する加減算器21と、入力を切り替えるセレクタ23とを備える。
実施の形態3の補正演算器4の動作は、以下の具体例により明らかにされる。実施の形態3にかかる技術が意図することは、前述したものとは別の実施態様で、分解能を2倍化することである。実施の形態3にかかる周波数検出器の動作は、補正演算器4の動作を除いて既出の実施の形態と共通している。
補正演算器4のFIFO型メモリ8は、入力線2から送信されたN個のサンプリングデータを蓄える。FIFO型メモリ8は、あらたにN個のサンプリングデータを蓄えたと同時に出力を開始し、常時N個分のデータを保持し続ける。
補正演算器4の加減算器21は、FIFO型メモリ8からの出力開始と共に、加算と減算を開始する。図3が示すように、加減算器21は、加算結果用出力線と減算結果用出力線との2つの出力線を有する。加減算器21は、開始後にN回加算減算を繰り返したら、N回休止する。以降、加減算器21は、加算減算と休止をN回ごとに切り替える。
補正演算器4の第二FIFO型メモリ22は、加減算器21の減算結果用出力線に接続され、減算結果を蓄える。第二FIFO型メモリ22は、N-d個蓄えたと同時に出力を開始し、空になるまで出力を続ける。ただしここでdは、乗算器10で生じる遅延時間をデータ入力間隔sで割った整数値である。
補正演算器4の乗算器10は、第二FIFO型メモリ22から出力された値に、位相生成器11から出力された複素数を乗算する。乗算した結果は、補正演算器4のセレクタ23へ送信される。
補正演算器4の位相生成器11は、位相φを生成し、exp(jφ)=cos(φ)+j・sin(φ)を満たす複素数を乗算器10へ出力する。生成する位相φは、初回0として、位相を1回送る毎にπ/Nずつ加算し、N回送るごとに0に戻す。
補正演算器4のセレクタ23は、2つの入力線を有し、1つは加減算器21の加算結果用出力線であり、もう1つは乗算器10の出力線である。セレクタ23は、加減算器21の加算結果をN回選択した後、乗算器10の乗算結果をN回選択する。以降、セレクタ23は、N回毎に選択先を切り替える。以上の動作により、補正演算器4は、入力値に補正を施す。
以上の構成を備えることにより、実施の形態3にかかる周波数検出器は、サンプリング点数をN個としたまま、従来の周波数検出器に比べ、処理速度を低下させることなく、かつ、回路規模も倍増させることなく、周波数分解能を2倍にすることができる。加えて、2回に1回は、サンプリングの点を2倍にして得られる結果と同一の結果を得ることができる。なお、この同一の結果が得られるのは、0を起点として奇数番目の出力である。
実施の形態4.
実施の形態4にかかる周波数検出器は、既出の実施の形態にかかる周波数検出器とは異なる、別の補正演算器4を備える。図4は、実施の形態4にかかる周波数検出器の補正演算器4の構成を示すブロック図である。
実施の形態4にかかる周波数検出器の全体構成は、実施の形態1の全体構成と同じである(図1参照)。実施の形態4の説明は、既出の実施の形態と共通する構成要素には同じ符号を用いる。また、既出の実施の形態と重複する説明は、適宜、省略する。
図4が示すように、実施の形態4の補正演算器4は、入力データを受け取る入力線2と、データを一時的に保持する複数のFIFO型メモリ8と、乗算演算を行う乗算器10と、位相を生成する位相生成器11と、出力線12と、加算及び減算の両方を実施する加減算器21と、入力を切り替えるセレクタ23、25と、入力を短時間遅延させる遅延器24、26とを備える。
実施の形態4の補正演算器4の動作は、以下の具体例により明らかにされる。実施の形態4にかかる技術が意図することは、既出の実施の形態のものとは別の実施態様で、分解能を2倍化することである。実施の形態4にかかる周波数検出器の動作は、実施の形態3に示した動作と共通している。実施の形態3に示した動作との違いは、2つある。1つ目の相違は、実施の形態3におけるFIFO型メモリ8と第二FIFO型メモリ22とを、実施の形態4ではFIFO型メモリ8に統合したことである。2つ目の相違は、FIFO型メモリ8の統合に伴い、遅延器24、26のそれぞれで遅延量を調整し、セレクタ25でFIFO型メモリ8へ出力するデータを選択するように構成したことである。
補正演算器4の遅延器24は、入力線2からのデータを遅延させる。遅延量は、加減算器21で生じる遅延量と等しくなるように設定する。
補正演算器4のセレクタ25は、最初のN回において遅延器24からの出力を選択し、次のN回において加減算器21の減算結果を選択する。セレクタ25は、以降、N回ごとに選択先を切り替える。
補正演算器4のFIFO型メモリ8は、セレクタ25から送信されるデータを蓄える。FIFO型メモリ8は、N-e個のデータを蓄えたと同時に出力を開始し、N-e個分のデータを保持し続ける。ただしここでeは、加減算器21の遅延量を入力線2におけるデータ入力間隔sで割った整数値である。
補正演算器4の加減算器21は、FIFO型メモリ8からの出力開始と同時に加算と減算の処理を開始する。加減算器21は、処理を開始後、N回の加算減算を実施したら、N回の間休止する。加減算器21は、以降、加算減算と休止とをN回ごとに切り替える。
補正演算器4の遅延器26は、加減算器21の加算結果の出力を遅延させる。遅延量は、乗算器10と加減算器21で生じる遅延の差をデータ入力間隔sで割った値である。
補正演算器4の乗算器10は、FIFO型メモリ8からの出力に対し、N個は1を乗算し、次のN個は位相生成器11が出力する複素数を乗算し、乗算した結果をセレクタ23に出力する。乗算器10は、以降、データN個毎に乗算する値を1と複素数とで切り替える。
補正演算器4の位相生成器11は、N個のデータに対応するN個の位相φを生成し、exp(jφ)=cos(φ)+j・sin(φ)で求まるN個の複素数を乗算器10へ出力する。生成する位相φは、初期値を0として、位相を1つ出力する毎にπ/Nずつ加算し、N回送るごとに0に戻す。乗算器10への複素数の出力は、乗算器10が乗算するタイミングに合わせることに留意する。
補正演算器4のセレクタ23は、加減算器21の加算結果をN回選択した後、乗算器10の乗算結果をN回選択する。セレクタ23は、以降、N回毎に選択先を切り替える。以上の動作により、補正演算器4は、入力されたデータを補正する。
以上の構成を備えることにより、実施の形態4にかかる周波数検出器は、サンプリング点数をN個としたまま、従来の周波数検出器に比べ、処理速度を低下させることなく、かつ、回路規模も倍増させることなく、周波数分解能を2倍にすることができる。加えて、2回に1回は、サンプリングの点を2倍にして得られる結果と同一の結果を得ることができる。つまり、実施の形態4にかかる周波数検出器は、実施の形態3にかかる周波数検出器と同じ結果を、FIFO型メモリの台数を少なくした構成で実現したものである。
実施の形態4にかかる周波数検出器の動作は、タイミングチャートを用いることにより明らかになる。図8は、実施の形態4にかかる周波数検出器の処理タイミングを示すタイミングチャートである。図8のタイミングチャートの各行の帯は、データをN個毎に区切ったものである。図8のタイミングチャート中の最上部の方形波は、クロック信号である。また、図8の中の「INPUT/2」は入力線2での各データを、「Delay/24」は遅延器24の出力を、「SEL/25」はセレクタ25の出力を、「FIFO/8」はFIFO型メモリ8の出力を、「Add/21」は加減算器21の加算結果を、「Sub/21」は加減算器21の減算結果を、「Delay/26」は遅延器26の出力を、「Multiply/10」は乗算器10の出力を、「OUTPUT/12」は出力線12での各データを、それぞれ示している。図8のタイミングチャートは、実施の形態4にかかる周波数検出器が、FIFO型メモリ8においても、出力線12においても、データの重複や空きを生じさせることなく、処理を継続できることを示している。
実施の形態5.
実施の形態5にかかる周波数検出器は、既出の実施の形態にかかる周波数検出器とは異なる、別の補正演算器4を備える。図5は、実施の形態5にかかる周波数検出器の補正演算器4の構成を示すブロック図である。
実施の形態5にかかる周波数検出器の全体構成は、実施の形態1の全体構成と同じである(図1参照)。実施の形態5の説明は、既出の実施の形態と共通する構成要素には同じ符号を用いる。また、既出の実施の形態と重複する説明は、適宜、省略する。
実施の形態5の補正演算器4は、図5に示すように、外部メモリ16を制御するメモリ制御器15を備える。外部メモリ16とメモリ制御器15とは、実施の形態1の補正演算器4におけるFIFO型メモリ8と同じように動作し機能する。
以上の構成を備えることにより、実施の形態5にかかる周波数検出器は、外部のメモリが利用できる場合において、実施の形態1にかかる周波数検出器よりも回路規模を削減し、実施の形態1にかかる周波数検出器と同じ効果を得ることができる。
実施の形態6.
既出の実施の形態にかかる周波数検出器は、入力線の数を必要最小限の1とした1系統の構成を示したが、これに限定するものではない。実施の形態6にかかる周波数検出器は、入力を2系統として構成されている。図6は、実施の形態6にかかる周波数検出器の構成を示すブロック図である。
すなわち、実施の形態6にかかる周波数検出器は、FIFO型メモリが接続されている加減算器入力に代えて、あらたに入力系統を増やし、加減算器へ直接入力するように構成し、それぞれの入力系統でサンプリングタイミングの異なったN個のサンプリングデータを入力するように構成した。
実施の形態6にかかる周波数検出器は、図6に示すとおり、2系統の入力データを受け取る入力線2(2a、2b)を備える。実施の形態1の構成と比較すると、実施の形態1の周波数検出器におけるFIFO型メモリ8がなくなり、その分が2系統のうちの1系統だとわかる。入力線2(2a、2b)は、それぞれNサンプルぶんタイミングをずらしてそれぞれN個のサンプリングデータずつ、入力データを扱うことを意図している。
実施の形態6にかかる周波数検出器の動作原理は、実施の形態1の周波数検出器の動作原理と共通する。相違点は、入力系統が2系統あるということである。入力線2bは、入力線2aがN個のサンプルデータを扱った後に、次のN個のサンプルデータを扱うという点である。
以上の構成を備えることにより、実施の形態6にかかる周波数検出器は、サンプリングレートを2倍に上げたことにより、下がった分解能を上げる(分解能を元に戻す)ことができる。なお、この実施の形態6にかかる周波数検出装置は、サンプリングレートが変わらない場合にも適用することができる。これは、図1のFIFO型メモリ8が、本装置前段(装置外の入力線2a側)に移動した構成にほかならない。この場合、入力線2(2a、2b)に2N周期で、0からN-1番目の入力データ列とNから2N-1番目の入力データ列とを同一にすれば、実施の形態3にかかる周波数検出装置と同じ出力が得られる。
実施の形態7.
実施の形態6にかかる周波数検出器は、入力系統を2系統にしたものであるが、入力系統の数はさらに増やしてもよい。実施の形態7にかかる周波数検出器は、入力系統を3系統に増やしたことが特徴である。図7は、実施の形態7にかかる周波数検出器の構成を示すブロック図である。
実施の形態7にかかる周波数検出器は、図7に示すとおり、3系統の入力データを受け取る入力線2(2a、2b、2c)を備える。実施の形態2の構成と比較すると、実施の形態2の周波数検出器におけるFIFO型メモリ8がなくなり、その分が3系統のうちの1系統だとわかる。入力線2(2a、2b、2c)は、それぞれNサンプルぶんタイミングをずらしてそれぞれN個のサンプリングデータずつ、入力データを扱うことを意図している。
実施の形態7にかかる周波数検出器の動作原理は、実施の形態2の周波数検出器の動作原理と共通する。相違点は、入力系統が3系統あるということである。入力線2bは、入力線2aがN個のサンプルデータを扱った後に、次のN個のサンプルデータを扱う。また、入力線2cは、入力線2bがN個のサンプルデータを扱った後に、その次のN個のサンプルデータを扱う。
以上の構成を備えることにより、実施の形態7にかかる周波数検出器は、サンプリングレートを3倍に上げたことにより、下がった分解能を上げる(分解能を元に戻す)ことができる。また、実施の形態7における周波数検出装置は、入力系統を3系統にしたものをしめしたが、これに限定するものではない。本開示技術は、入力系統を3以上のL個の入力系統を有するものへと一般化することができる。
実施の形態8.
既出の実施の形態にかかる周波数検出装置は、最大振幅のピーク周波数を検出する動作について説明がなされてきた。従来の周波数検出装置と同様、検出するピーク周波数は同時に複数あってもよい。実施の形態8にかかる周波数検出装置の構成は、実施の形態1にかかるものの構成と同じである(図1参照)。複数のピーク周波数を検出するときの動作は、具体例による検出器6と選択器7と動作によって明らかになる。
実施の形態8の具体例は、3つの周波数を同時に検出する。検出器6は、1以上のピーク周波数を検出し、検出した指標を選択器7へ出力する。検出器6は、出力された指標に以下の操作を行う。検出器6は、受け取った指標をまず2倍にする。つぎに、検出器6は、初回受取りを0番目と数えて奇数番目に受け取った指標にはさらに1を加える。選択器7は、直近2回分の出力された指標のうち、検出器6が出力した段階で指標の差が1となる2つの指標があれば、この2つの指標を統合する。統合処理の後、振幅が大きい順に3つの指標を周波数に変換し、変換した周波数の値を出力線3へ出力する。
以上の構成を備えることにより、実施の形態8にかかる周波数検出器は、サンプリング点数をN個としたまま、従来の周波数検出器に比べ、処理速度を低下させることなく、かつ、回路規模も倍増させることなく、周波数分解能を2倍化し、同時に複数のピーク周波数を検出することができる。
実施の形態8の具体例は、検出するピーク周波数の個数を3と固定していたものであったが、これに限定するものではない。検出するピーク周波数は、振幅の閾値で決めてもよいし、振幅の閾値と個数の条件とを組み合わせて決めてもよい。
実施の形態9.
既出の実施の形態にかかる周波数検出器は、専用の処理回路を用いることを前提に説明を行ったが、これに限定するものではない。実施の形態9にかかる周波数検出器は、既出の実施の形態にかかる周波数検出器の機能を、一般的なプロセッサを用いて実現する構成を採用する。図9は、実施の形態9にかかる周波数検出装置の構成を示すブロック図である。
図9が示すように、実施の形態9にかかる周波数検出器31は、データを受け取る入力線32、検出結果を出力する出力線33、外部との入出力を行う入出力器34、データ等を蓄えるメモリ35、フーリエ変換等の演算処理を行うプロセッサ36を備える。
入出力器34は、入力線32を介して受信するN個のサンプリングデータを、メモリ35に出力する。最初を0として数えた偶数回目のN個のサンプリングデータは、データEVENと名付ける。奇数回目のN個のサンプリングデータは、データODDと名付ける。
プロセッサ36は、メモリ35に蓄えたデータに対し、補正演算を施す(ステップST1)。補正演算は、データEVENとデータODDの加算である。
プロセッサ36は、N個のサンプリングデータに対してフーリエ変換を実施する(ステップST2)。N個のフーリエ変換結果は、周波数の低い順に指標が付される。
プロセッサ36は、フーリエ変換結果のN個の複素数について、絶対値を算出する(ステップST3)。この絶対値は、既にのべた振幅のことである。
プロセッサ36は、振幅が最大である指標を選出し、指標を2倍にする(ステップST4)。
プロセッサ36は、選出を2回以上実施した場合、直近の2回のうち、振幅が大きい指標をメモリ35に出力する(ステップST5)。出力する値は、指標の代わりに指標に対応する周波数でもよい。
入出力器34は、プロセッサ36が上記の値をメモリに出力した時、その値を出力線33に出力する。
周波数検出器は、入力線32からあらたなN個のサンプリングデータが送られる。あらたなN個のサンプリングデータは、入出力器34を介してメモリ35に蓄える。ここでの例では、メモリ35への保存が偶数番目の事象だと仮定し、N個のサンプリングデータをデータEVENとする(データを置き換える)。
プロセッサ36は、メモリ35に蓄えたデータに対し、補正演算を施す(ステップST6)。補正演算は、データEVENからデータODDの減算と減算結果への位相乗算である。この位相乗算での位相は、初期値を0として、π/Nずつ増やす。
プロセッサ36は、この後、ステップST2からステップST5の処理を実施する。そして、N個のサンプリングデータをデータODDとして置き換えた後、プロセッサ36はステップST6を実施する。以上がプロセッサ36が行う1巡のフローであり、プロセッサ36はこれを繰り返す。
以上のとおり、既出の実施の形態にかかる周波数検出装置は、一般的なプロセッサを用いても実現することができる。なお、このプロセッサは、各種アクセラレータで代用してもよい。
周波数検出器 1、31; 入力線 2、2a、2b、2c、32; 出力線 3、12、33; 補正演算器 4; FFT器 5; 検出器 6; 選択器 7; FIFO型メモリ 8、8a、8b; 加減算器 9、21; 乗算器 10; 位相生成器 11; 位相回転器 13、13a、13b、13c; 加算器 14; メモリ制御器
15; 外部メモリ 16; 第二FIFO型メモリ 22; セレクタ 23、25; 遅延器 24、26; 入出力器 34; メモリ 35; プロセッサ36。

Claims (7)

  1. N個のサンプリングデータからN個のフーリエ変換結果を算出するFFT器と、
    前記フーリエ変換結果のうち、振幅が極大となる周波数の順番である指標を検出する検出器と、
    を備える周波数検出器であって、
    入力線を2つに分岐した2つの入力系統と、
    前記2つの入力系統の1つに接続され、遅延をさせるためのFIFO型メモリと、
    前記FIFO型メモリが介在する入力系統からのN個のサンプリングデータと他の入力系統からの別のN個のサンプリングデータとを加減算する加減算器と、
    位相を生成し、生成した前記位相を複素数に変換する位相生成器と、
    前記加減算器により加減算されたデータに、前記位相生成器で前記位相から変換された前記複素数を乗算する乗算器と、からなる補正演算器をさらに備え、
    前記乗算器から出力されたデータに対して前記フーリエ変換結果の算出を2回以上実施し、それぞれの前記フーリエ変換結果から検出した複数の指標について対応する振幅を比較して、振幅が大きい方の指標を選択することを特徴とする周波数検出器。
  2. 前記補正演算器の前記加減算器は、加減算器入力をさらに備え、さらにN個のサンプリングデータを加減算し、
    前記加減算器の複数の前記加減算器入力のそれぞれに、位相を回転させる位相回転器をさらに備える請求項1に記載の周波数検出器。
  3. 前記補正演算器の前記加減算器は、加算結果用出力線と減算結果用出力線との2つの出力線を有し、
    前記減算結果用出力線は、遅延させるための第二FIFO型メモリに接続され、さらにその後段に前記乗算器に接続され、
    前記加算結果用出力線と前記乗算器の出力線とは、それぞれセレクタに接続され、
    前記セレクタは、N回毎に選択先を切り替えることを特徴とする請求項1に記載の周波数検出器。
  4. 前記補正演算器は、遅延回路をさらに備え、
    前記減算結果用出力線に接続されている前記第二FIFO型メモリは、前記FIFO型メモリと統合したことを特徴とする請求項3に記載の周波数検出器。
  5. 前記補正演算器は、前記FIFO型メモリに代えて、外部メモリを制御するためのメモリ制御器を備えることを特徴とする請求項1から請求項4のいずれかに記載の周波数検出器。
  6. 前記FIFO型メモリが接続されている前記加減算器入力に代えて、あらたに入力系統を増やし、前記加減算器へ直接入力するように構成し、
    それぞれの入力系統でサンプリングタイミングの異なったN個のサンプリングデータを入力するように構成したことを特徴とする請求項2に記載の周波数検出器。
  7. N個のサンプリングデータからN個のフーリエ変換結果を算出する処理を実行し、
    前記フーリエ変換結果のうち、振幅が極大となる周波数の順番である指標を検出する処理を実行するプロセッサを備える周波数検出器であって、
    前記プロセッサは
    メモリに蓄えたデータに対し、補正演算を施すステップと、
    前記補正演算を施したN個のサンプリングデータに対してフーリエ変換を実施するステップと、
    前記フーリエ変換結果のN個の複素数について、絶対値を算出するステップと、
    前記絶対値が最大である指標を選出し、指標を2倍にするステップと、
    選出を2回以上実施した場合、直近の2回のうち、振幅が大きい指標を出力するステップと、
    からなる処理を実行することを特徴とする周波数検出器。
JP2022558740A 2020-10-30 2020-10-30 周波数検出器 Active JP7204064B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/040784 WO2022091331A1 (ja) 2020-10-30 2020-10-30 周波数検出器

Publications (2)

Publication Number Publication Date
JPWO2022091331A1 JPWO2022091331A1 (ja) 2022-05-05
JP7204064B2 true JP7204064B2 (ja) 2023-01-13

Family

ID=81382087

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022558740A Active JP7204064B2 (ja) 2020-10-30 2020-10-30 周波数検出器

Country Status (2)

Country Link
JP (1) JP7204064B2 (ja)
WO (1) WO2022091331A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006234811A (ja) 2005-02-25 2006-09-07 Nemerix Sa 入力信号と基準周波数との周波数差を得る方法並びにこの方法を実行する弁別装置、gps受信機及びコンピュータプログラム
JP2012247304A (ja) 2011-05-27 2012-12-13 Sonic Corp 短時間信号のピークパワースペクトルを検出する方法及び装置
US20160097671A1 (en) 2013-05-16 2016-04-07 Endress+Hauser Gmbh+Co. Kg Fill level measurement with improved distance determination

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3505441B2 (ja) * 1999-07-30 2004-03-08 富士通テン株式会社 Fft信号処理でのピーク周波数算出方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006234811A (ja) 2005-02-25 2006-09-07 Nemerix Sa 入力信号と基準周波数との周波数差を得る方法並びにこの方法を実行する弁別装置、gps受信機及びコンピュータプログラム
JP2012247304A (ja) 2011-05-27 2012-12-13 Sonic Corp 短時間信号のピークパワースペクトルを検出する方法及び装置
US20160097671A1 (en) 2013-05-16 2016-04-07 Endress+Hauser Gmbh+Co. Kg Fill level measurement with improved distance determination

Also Published As

Publication number Publication date
JPWO2022091331A1 (ja) 2022-05-05
WO2022091331A1 (ja) 2022-05-05

Similar Documents

Publication Publication Date Title
US8917125B1 (en) Interleaving analog-to-digital converter (ADC) with background calibration
JP4498184B2 (ja) 直線性補償回路
US7719446B2 (en) Method and apparatus for computing interpolation factors in sample rate conversion systems
US9030340B1 (en) N-path interleaving analog-to-digital converter (ADC) with background calibration
US11571184B2 (en) Ultrasound device with elevational beamforming
CN110471018B (zh) 一种频谱校正方法
JP5070571B2 (ja) アナログデジタル変換装置、アナログデジタル変換方法、制御装置及びプログラム
WO2004080055A2 (en) Method and apparatus for the recovery of signals acquired by an interleaved system of digitizers with mismatching frequency response characteristics
JP4682968B2 (ja) エンコーダの位置情報補間回路
JP4451486B2 (ja) アナログ/デジタル変換装置およびデジタル/アナログ変換装置
JP7204064B2 (ja) 周波数検出器
JP2011180077A (ja) 演算装置、及び演算装置を備えた流量計
WO2022091329A1 (ja) 周波数検出器
JP3728756B2 (ja) 離散フーリエ変換値の遅延時間補正装置
JP2016208340A (ja) ロックインアンプ
JP5823785B2 (ja) 回転角度検出装置
JP4344356B2 (ja) 検波装置、方法、プログラム、記録媒体
JPH0690277B2 (ja) ディジタル・パルス圧縮装置
Bertocco et al. Numerical algorithms for power measurements
KR101818656B1 (ko) 2 이상의 샘플링 채널을 사용하여 신호의 복소 샘플링을 수행하고 이들 채널들 간에 시간지연을 계산하기 위한 방법 및 시스템
JP3166664B2 (ja) タイムインターバル計測方式及び距離測定装置
WO2011107801A1 (en) Sampling
JP3566613B2 (ja) トーンジェネレータ及びデジタルトーン生成方法
WO2021053779A1 (ja) フーリエ変換装置及びフーリエ変換方法
KR100295099B1 (ko) 삼각함수계산을이용한직접디지털주파수합성장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221011

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20221011

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: 20221129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221227

R150 Certificate of patent or registration of utility model

Ref document number: 7204064

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150