(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023040159
(43)【公開日】2023-03-22
(54)【発明の名称】位相シフト検出装置及び位相シフト検出方法
(51)【国際特許分類】
G01R 23/10 20060101AFI20230314BHJP
G01R 23/12 20060101ALI20230314BHJP
H04L 27/00 20060101ALI20230314BHJP
【FI】
G01R23/10 A
G01R23/12
G01R23/10 F
H04L27/00 C
【審査請求】有
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023000960
(22)【出願日】2023-01-06
(62)【分割の表示】P 2019006344の分割
【原出願日】2019-01-17
(71)【出願人】
【識別番号】000000295
【氏名又は名称】沖電気工業株式会社
(74)【代理人】
【識別番号】100180275
【弁理士】
【氏名又は名称】吉田 倫太郎
(74)【代理人】
【識別番号】100161861
【弁理士】
【氏名又は名称】若林 裕介
(72)【発明者】
【氏名】木原 弘一
(72)【発明者】
【氏名】石黒 高詩
(72)【発明者】
【氏名】秋江 一良
(72)【発明者】
【氏名】平野 正樹
(72)【発明者】
【氏名】有山 義博
(57)【要約】
【課題】 入力信号の周波数の公称値が未知であっても1つの検出回路で、適応制御により周波数と位相シフト量を検出できるようにする。
【解決手段】本発明の位相シフト検出装置は、入力離散信号に少なくとも連続する過去の2つの離散信号に基づいて単位標本余弦値と単位標本正弦値とを算出し、遅延回路の出力信号と推定信号との差分である推定誤差信号を用いて第1のフィルタ係数と第2のフィルタ係数を逐次更新させ、第1のフィルタ係数と第2のフィルタ係数と単位標本余弦値と単位標本正弦値とに基づいて、入力離散信号と遅延回路手段の出力信号との位相差を算出し、ある時間区間の位相差と直前の時間区間の位相差との位相差差分値と適応フィルタの収束率との振る舞いに基づいて位相シフト量を算出する位相シフト算出手段とを備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
入力信号を所定の標本化周期で標本化して得た離散信号に基づいて、入力信号に発生する位相シフト量を検出する位相シフト検出装置において、
入力された入力離散信号に対して、少なくとも連続する過去の2つの離散信号に基づいて、単位標本余弦値と単位標本正弦値とを算出する単位標本余弦/正弦値算出手段と、
上記入力離散信号を遅延時間で遅延させる遅延回路手段と、
上記遅延回路手段の出力信号を参照信号とし、上記出力信号の推定信号を生成し、上記出力信号と上記推定信号との差分である推定誤差信号を用いて、第1のフィルタ係数と第2のフィルタ係数を逐次更新させる適応フィルタと、
上記第1のフィルタ係数と、上記第2のフィルタ係数と、上記単位標本余弦値と、上記単位標本正弦値とに基づいて、上記入力離散信号と上記遅延回路手段の上記出力信号との位相差を算出すると共に、ある時間区間の上記位相差と直前の時間区間の上記位相差との位相差差分値と、上記適応フィルタの収束率との振る舞いに基づいて、上記入力信号の位相シフト量を算出する位相シフト算出手段と
を備えることを特徴とする位相シフト検出装置。
【請求項2】
上記遅延回路手段が、上記入力離散信号に対して所定の標本数だけ遅延させるものであり、上記所定の標本数に応じた遅延時間が位相シフト算出に係る時間より大きくなるように、上記所定の標本数が設定されていることを特徴とする請求項1に記載の位相シフト検出装置。
【請求項3】
上記適応フィルタが、上記第1のフィルタ係数及び上記第2のフィルタ係数を所定の標本区間での平均値とすることを特徴とする請求項1に記載の位相シフト検出装置。
【請求項4】
上記単位標本余弦/正弦値算出手段が、上記単位標本余弦値及び上記単位標本正弦値を、それぞれ、所定の標本区間で平均化した平均値を算出することを特徴とする請求項1に記載の位相シフト検出装置。
【請求項5】
上記位相シフト算出手段が、
上記適応フィルタの上記収束率と、第1の閾値と、上記第1の閾値より大きい第2の閾値との比較により、上記位相シフトの発生を判断し、
上記適応フィルタの学習時間より長い時間指標区間で、上記位相差差分値を判断する
ことを特徴とする請求項1に記載の位相シフト検出装置。
【請求項6】
入力信号を所定の標本化周期で標本化して得た離散信号に基づいて、入力信号に発生する位相シフト量を検出する位相シフト検出方法において、
単位標本余弦/正弦値算出手段が、入力された入力離散信号に対して、少なくとも連続する過去の2つの離散信号に基づいて、単位標本余弦値と単位標本正弦値とを算出し、
遅延回路手段が、上記入力離散信号を遅延時間で遅延させ、
適応フィルタが、上記遅延回路手段の出力信号を参照信号とし、上記出力信号の推定信号を生成し、上記出力信号と上記推定信号との差分である推定誤差信号を用いて、第1のフィルタ係数と第2のフィルタ係数を逐次更新させ、
位相シフト算出手段が、上記第1のフィルタ係数と、上記第2のフィルタ係数と、上記単位標本余弦値と、上記単位標本正弦値とに基づいて、上記入力離散信号と上記遅延回路手段の上記出力信号との位相差を算出すると共に、ある時間区間の上記位相差と直前の時間区間の上記位相差との位相差差分値と、上記適応フィルタの収束率との振る舞いに基づいて、上記入力信号の位相シフト量を算出する
ことを特徴とする位相シフト検出方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、位相シフト検出装置及び位相シフト検出方法に関し、例えば、リアルタイム系の通信並びに計測において、入力信号が単一周波数信号であるか否かを検出する位相シフトを検出する位相シフト検出装置に適用し得るものである。
【背景技術】
【0002】
例えば、通信回線に接続している通信装置は、通信回線を通じて、単一周波数信号である入力信号を検出すると、その信号に応じて制御処理を行なっている。特に、リアルタイム性が要求される通信装置は、処理遅延時間を抑えて、単一周波数信号の検出をすることが要求されている。
【0003】
従来、入力信号が単一周波数信号であるか否かの検出方法には、様々な方法がある。
【0004】
例えば、入力信号の周波数が既知である場合、時間領域で、入力信号の周波数を検出するため、所望の選択帯域信号を0dB伝送する帯域通過フィルタ(BPF:Band Pass Filter)を設ける。判定部は、選択帯域信号Sの平均電力値POW_Sと、選択帯域外信号Nの平均電力値POW_Nとを算出し、更に信号対雑音比SNRを算出する。そして、選択帯域信号Sの平均電力値POW_Sが事前に定義した閾値TH_POW_S以上、かつ、信号対雑音比SNRが事前に定義した閾値TH_SNR以上であるとき、入力信号はBPFを通過可能な単一周波数信号であると判定する方法がある。
【0005】
また例えば、入力信号の周波数が既知である場合、周波数領域で、入力信号の周波数を検出するため、離散フーリエ変換器(DFT:Discrete Fourier Transform)を設けて、時間領域の入力信号を事前に設定した複素周波数成分の実数部と虚数部に変換し、DFTは、事前に設定した周波数の平均電力値POW_Sを出力する。判定部は、事前に設定した周波数以外の平均電力値POW_Nを算出し、更に信号対雑音比SNRを算出する。
そして、事前に設定した周波数の平均電力値POW_Sが事前に定義した閾値TH_POW_S以上、かつ、信号対雑音比SNRが事前に定義した閾値TH_SNR以上であるとき、入力信号は単一周波数信号であると判定する方法がある。
【0006】
さらに例えば、特許文献1には、入力信号が離散的正弦波信号であるときに、単一周波数信号である離散的正弦波信号を、三角関数の公式から証明して、離散的正弦波信号の周波数を検出する方法が開示されている。
【0007】
また従来、単一周波数信号である入力信号の位相シフトを検出する方法として、例えば、特許文献2~特許文献4に開示される方法がある。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開平8-184618号公報
【特許文献2】特表2000-504172号公報
【特許文献3】特開2006-308809号公報
【特許文献4】特開2007-104721号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、従来の単一周波数信号を検出する方法は、事前に指定した周波数の信号の有無しか判定することができないので、入力信号の周波数が未知の場合には適用することができないという課題がある。
【0010】
従来の周波数検出方法を用いて、周波数が未知である入力信号の周波数を検出しようとすると、それぞれ通過帯域が異なる複数のBPFやDFT等を、並列配備することが必要となってしまい、装置の大型化、コスト増加、消費電力増大を招いてしまうという課題がある。
【0011】
また従来の位相シフト検出方法も、入力信号である単一周波数信号の周波数の公称値が既知であることを前提としており、単一周波数信号の周波数の公称値が未知である場合には適用することができないという課題がある。
【0012】
この場合も同様に、従来の位相シフト検出方法で対応しようとすると、検出する周波数の候補が複数種類あるとすると、複数の受信回路を並列に用意せざるを得なくなり、装置の大型化、コスト増加、消費電力増大を招いてしまうという課題がある。
【0013】
そこで、本発明は、上述した課題を解決するためになされたものであり、1つの検出回路を用意するだけで、任意の単一周波数信号の有無を判断でき、更に入力信号が単一周波数信号であれば、その周波数を検出することができる装置及び方法を提供しようとするものである。
【0014】
また、本発明は、入力信号の周波数の公称値が未知であっても、1つの検出回路で、適応制御により周波数と、位相シフト量を検出することができる位相シフト検出装置及び方法を提供しようとするものである。
【課題を解決するための手段】
【0015】
かかる課題を解決するために、第1の本発明に係る位相シフト検出装置は、入力信号を所定の標本化周期で標本化して得た離散信号に基づいて、入力信号に発生する位相シフト量を検出する位相シフト検出装置において、(1)入力された入力離散信号に対して、少なくとも連続する過去の2つの離散信号に基づいて、単位標本余弦値と単位標本正弦値とを算出する単位標本余弦/正弦値算出手段と、(2)上記入力離散信号を遅延時間で遅延させる遅延回路手段と、(3)上記遅延回路手段の出力信号を参照信号とし、上記出力信号の推定信号を生成し、上記出力信号と上記推定信号との差分である推定誤差信号を用いて、第1のフィルタ係数と第2のフィルタ係数を逐次更新させる適応フィルタと、(4)上記第1のフィルタ係数と、上記第2のフィルタ係数と、上記単位標本余弦値と、上記単位標本正弦値とに基づいて、上記入力離散信号と上記遅延回路手段の上記出力信号との位相差を算出すると共に、ある時間区間の上記位相差と直前の時間区間の上記位相差との位相差差分値と、上記適応フィルタの収束率との振る舞いに基づいて、上記入力信号の位相シフト量を算出する位相シフト算出手段とを備えることを特徴とする。
【0016】
第2の本発明に係る位相シフト検出方法は、入力信号を所定の標本化周期で標本化して得た離散信号に基づいて、入力信号に発生する位相シフト量を検出する位相シフト検出方法において、(1)単位標本余弦/正弦値算出手段が、入力された入力離散信号に対して、少なくとも連続する過去の2つの離散信号に基づいて、単位標本余弦値と単位標本正弦値とを算出し、(2)遅延回路手段が、上記入力離散信号を遅延時間で遅延させ、(3)適応フィルタが、上記遅延回路手段の出力信号を参照信号とし、上記出力信号の推定信号を生成し、上記出力信号と上記推定信号との差分である推定誤差信号を用いて、第1のフィルタ係数と第2のフィルタ係数を逐次更新させ、(4)位相シフト算出手段が、上記第1のフィルタ係数と、上記第2のフィルタ係数と、上記単位標本余弦値と、上記単位標本正弦値とに基づいて、上記入力離散信号と上記遅延回路手段の上記出力信号との位相差を算出すると共に、ある時間区間の上記位相差と直前の時間区間の上記位相差との位相差差分値と、上記適応フィルタの収束率との振る舞いに基づいて、上記入力信号の位相シフト量を算出することを特徴とする。
【発明の効果】
【0017】
本発明によれば、1つの検出回路を用意するだけで、任意の単一周波数信号の有無を判断でき、更に入力信号が単一周波数信号であれば、その周波数を検出することができる。
また、本発明によれば、入力信号の周波数の公称値が未知であっても、1つの検出回路で、適応制御により周波数と、位相シフト量を検出することができる。
【図面の簡単な説明】
【0018】
【
図1】第1の実施形態に係る単一周波数検出装置の構成を示す構成図である。
【
図2】従来の周波数検出装置の構成を示す構成図である(その1)。
【
図3】従来の周波数検出装置の構成を示す構成図である(その2)。
【
図4】従来の周波数検出装置で周波数が未知である入力信号の周波数を検出しようとしたときの構成を示す構成図である(その1)。
【
図5】従来の周波数検出装置で周波数が未知である入力信号の周波数を検出しようとしたときの構成を示す構成図である(その2)。
【
図6】第1の実施形態に係る保護論理を採用したときの状態遷移図である。
【
図7】第1の実施形態において、10種類の信号を連続して流したときの、単一周波数検出装置の検出周波数と収束率を示す図である。
【
図8】第2の実施形態において、1次FIRフィルタの構成例を示す構成図である。
【
図9】第2の実施形態において、係数h
0とh
1の算出方法を実現するアーキテクチャを示す構成図である。
【
図10】第2の実施形態に係る適応ディジタルフィルタの入力信号x(n)と純遅延器の出力信号y(n)のタイミングを示す関係図である。
【
図11】第2の実施形態に係る位相シフト検出器の構成を示す構成図である。
【
図12】第2の実施形態に係る位相シフト算出回路における位相シフト量γ1を算出する過程を説明する説明図である。
【
図13】第2の実施形態に係る位相シフト検出器の動作条件の一例を示す図である。
【
図14】
図13の動作条件のときの位相シフト検出器の収束率CR(k)と位相差β(k)の動作例を示している。
【発明を実施するための形態】
【0019】
(A)第1の実施形態
以下では、本発明に係る単一周波数検出装置及び単一周波数検出方法の実施形態を、図面を参照しながら詳細に説明する。
【0020】
[序論]
まず、3つの従来の単一周波数信号の検出方法を例示する。
【0021】
第1の方法は、時間領域で、単一周波数信号を検出する方法である。
【0022】
図2に示すように、帯域通過フィルタ(BPF:Band Pass Filter)110には、所望する選択帯域信号が0dB伝送できるように前もって設定しておく。BPF110を0dB伝送できる選択帯域信号を「S」とし、選択帯域外信号を「N」とすると、入力信号は「S+N」、BPF出力信号は「S」と表すことができる。
【0023】
判定器120は、選択帯域信号Sの平均電力POW_Sの値と帯域外信号Nの平均電力POW_Nの値とを算出し、さらに信号対雑音比SNRを算出する。
【0024】
選択帯域信号Sの平均電力POW_Sの値が事前に定義した閾値TH_POW_S以上、かつ、信号対雑音比SNRが事前に定義した閾値TH_SNR以上であるとき、入力信号はBPFを通過可能な単一周波数信号であると判定することができる。
【0025】
【0026】
ここで、式(A-1-2)において、演算子<>は時間平均を表し、単一周波数信号Sとこれ以外の信号Nとの積SNの平均値<SN>はゼロである。
【0027】
第2の方法は、周波数領域での単一周波数信号の検出方式である。
【0028】
図3に示すように、離散フーリエ変換器(DFT:Discrete Fourier Transform)210は、時間領域の入力信号を事前に設定した複素周波数成分の実数部と虚数部に変換するものである。なお、この実数部と虚数部の2乗和は、パーセヴァルの定理より、時間領域の平均電力に等価であることが周知されている。よって、DFT210からは、事前に設定した周波数の平均電力POW_Sの値を出力することができる。つまり、DFT210は、
図2のBPF110に相当する。
【0029】
これ以降の処理は、第1の方法と同様の処理により、判定器220は、信号Sの平均電力POW_Sの値と信号対雑音比SNRから入力信号が所望する単一周波数信号であるか否かを判定することができる。
【0030】
第3の方法は、特許文献1に開示される方法である。単一周波数信号である離散的正弦波信号sin(ωnT)は、式(A-2)の漸化式で表すことができる。これは三角関数の公式から証明できる。
【数2】
【0031】
ここで、ωは被検出信号の角周波数、Tは標本化周期、nは離散時間の指標を表す整数である。
【0032】
表現の簡易化のため、x(n)=sin(ωnT)とおき、式(A-2)に代入する。
【数3】
【0033】
式(A-3)の右辺第1項のcos(ωT)について表現し直すと、式(A-4)のようになる。
【数4】
【0034】
さらに、逆余弦関数を用いて角周波数ωについて式(A-4)を表現し直すと式(A-5)のようになる。
【数5】
【0035】
ここで、角周波数ωと周波数fには、ω=2πfなる関係があるので、周波数fについて上式を表現し直すと、式(A-6)と表すことができる。
【数6】
【0036】
なお、式(A-6)の逆余弦関数の{}内の分母x(n-1)がゼロのとき、除算結果は不定となる。これを回避するには、x(n)が離散的正弦波であるとき、x(n-1)=0なら分子のx(n)+x(n-2)=0であること、かつ、x(n-1)≠0なら任意のnに対してx(n-1)とx(n)+x(n-2)の比率は一定であることに着目すると、式(A-6)を、式(A-7)のように変形することが可能である。
【数7】
【0037】
特許文献1では、x(n)が離散的正弦波であると仮定したとき、式(A-6)によって、その周波数fが算出可能で,さらに,式(A-6)の逆余弦関数の{}内の分母x(n-1)がゼロでも、式(A-7)を採用すると、ゼロ割が回避できる確率が高くなることを特徴としている。なお、特許文献1では、式(A-7)だけではゼロ割を完全に回避できないので、さらなる処理を加えて、ゼロ割に遭遇する確率を低減させている。
【0038】
しかしながら、上述したような従来の単一周波数信号を検出する第1および第2の方法は、事前に指定した周波数の信号の有無しか判定することができないので、入力信号の周波数が未知の場合には適用することができない。
【0039】
例えば、第1の方法を用いて、入力信号の周波数が未知である場合に対応させようとすると、
図4に例示するように、それぞれ通過帯域が異なる複数のBPF110を事前に並列に配備することが必要となる。
【0040】
図4の例では、例えばm個のBPF110を並列配備しているが、検出周波数に要求される周波数分解能が詳細化されるにつれ、mの値は大きくせざるを得ない。そのため、m個のBPFを並列配備することにより、装置の大型化、コスト増加、消費電力増大を招くと同時に、要求される周波数分解能に応じてmの値を変更しなければならないという課題がある。
【0041】
また、第2の方法を用いた場合も同様に、入力信号の周波数が事前に指定されている場合には適用できるが、入力信号の周波数が未知である場合には、そのまま適用することができない。
【0042】
入力信号の周波数が未知である場合に、第2の方法を用いて対処するには、
図5に例示するように、それぞれ通過帯域が異なる複数のDFT210を並列配備することになる。
図5の場合も、m個のDFT210を並列配備している場合を例示している。この場合も、検出周波数に要求される周波数分解能が詳細化するにつれ、mの値は大きくせざるを得ない。
【0043】
そのため、m個のDFT210を並列配備することにより、装置の大型化、コスト増加、消費電力増大を招くと同時に、要求される周波数分解能に応じてmの値を変更しなければならないという課題がある。
【0044】
なお、DFT210の代わりに、高速フーリエ変換FFT(Fast Fourier Transform)を使用すれば、m倍とならず、log2m倍に抑えることは可能である。しかしながら、FFTを採用したとしても、周波数分解能を詳細化するほど、周波数変換に必要となる入力信号の標本数が増大するので、処理遅延時間が増大する。これに関しては、DFT、FFTも差異はなく、理論的に回避不可能な課題である。この処理遅延の増大は、リアルタイム系通信およびリアルタイム系計測の分野においては致命的な欠点になることが多いので、このような分野では時間領域のBPF方式を採用するのが一般的である。
【0045】
第3の方法は、第1の実施形態の基本原理と同様に、式(A-2)に基づいているが、その実現法には決定的な差異がある。その差異の詳細な説明については後述する。
【0046】
第3の方法は、入力信号が単一周波数信号であるか否かを判定する方法が提示されておらず、これを判定するには算出された周波数の分散を算出する処理を追加せざるを得ない。これに対して、第1の実施形態は、適応フィルタを採用し、入力信号が単一周波数信号のときに限り、当該フィルタが収束し、かつ、その収束率を定量的に算出しているので、単一周波数の判定が明瞭となる。
【0047】
(A-1)基本原理
単一周波数信号である離散正弦波信号sin(ωnT)は、以下の漸化式で表すことができる。
【数8】
【0048】
ここで、ωは被検出信号の角周波数、Tは標本化周期、nは離散時間の指標を示す整数である。
【0049】
上式(B-1)は、離散正弦波信号は過去2つの標本値から現在の標本値が決定されることを表している。換言すると,上式(B-1)は予測器を表している。
【0050】
表現の簡易化を図るため、上式(B-1)の離散正弦波信号を一般の離散信号x(n)で表現し直す。
【数9】
【0051】
上式(B-2-1)及び(B-2-2)は、静的制御と動的制御(適応制御)の観点から解釈することができる。
【0052】
[静的制御の観点]
静的制御の観点は、特許文献1の開示に相当するものである。式(B-2-1)において、入力信号x(n)は未知の正弦波信号とする。このとき、h
1は未知数として扱うことになるので、式(B-2-1)をh
1について表現し直すと、式(B-3)となる。
【数10】
【0053】
式(B-3)の意味するところは、入力信号x(n)を用いて上式(B-3)に従って計算していき、h
1が或る値に収束するのであれば、入力信号x(n)は単一周波数信号(正弦波信号)であり、かつ、その周波数fは、式(B-2-2)より、下式(B-4)から得られる。
【数11】
【0054】
[動的制御の観点]
動的制御の観点は、第1の実施形態に係る観点である。
【0055】
式(B-2-1)の右辺は、有限インパルス応答(FIR:Finite Impulse Response)フィルタの差分方程式を表しており、左辺のx(n)は参照信号、右辺は参照信号x(n)の予測信号x^(n)と見做すことができる。なお、明細書の表現上の制限より、ここでは「^」と表現している。
【0056】
つまり,式(B-2-1)を以下のように書き直すことで、その意図することが鮮明になろう。
【数12】
【0057】
上式(B-5)において、右辺の3つの係数h0、h1、h2のうち、未知数(変数)はh1のみであり、h0とh2は定数(h0=0、h2=-1)であることに留意すべきである。
【0058】
h1の算出に際しては、エコーキャンセラー等の適応フィルタで広く一般的に採用されている学習同定法を利用することができる。学習同定法は、別名、正規化最小二乗法(NLMS:Normalized Least Mean Square)とも呼ばれている。
【0059】
(A-2)第1の実施形態の構成及び動作
図1は、第1の実施形態に係る単一周波数検出装置の構成を示す構成図である。
図1は、式(B-5)の実現法を表す構成図である。
【0060】
図1において、単一周波数検出装置10は、判定部11、シフトレジスタ(SFR)12、乗算器13及び14、加算器15及び16を有する。
【0061】
シフトレジスタ(SFR)12は、入力信号x(n)が入力される毎に右隣にシフトし、連続する3つの標本値x(n)、x(n-1)、x(n-2)を格納する。すなわち、シフトレジスタ12は、入力信号x(n)(これを入力離散信号とも呼ぶ。)に対して、連続する過去の2つの離散信号を格納する。シフトレジスタ(SFR)12は、直前の第1の離散信号x(n-1)が格納されている箇所から信号x(n-1)を乗算器13に出力し、第1の離散信号x(n-1)の直前の第2の離散信号x(n-2)が格納されている箇所から信号x(n-2)を乗算器14に出力する。
【0062】
乗算器13は、信号x(n-1)に係数h1を乗算して加算器15に出力するものである。乗算器14は、信号x(n-2)に「-1」を乗算して加算器15に出力する。なお、実装に際してはx(n-2)に「-1」を乗算する必要はなく、単に加算器15で減算処理をしてもよい。
【0063】
加算器15は、乗算器13からの出力信号と、乗算器14からの出力信号とを加算したものを予測信号x^(n)として、加算器16に出力する。
【0064】
加算器16は、加算器15からの予測信号x^(n)と入力信号x(n)との差分を取り、その差分値を予測誤差信号e(n)として出力するものである。
【0065】
図1における破線は、予測誤差信号e(n)がフィードバックされて、適用フィルタ係数h
1を更新処理することを表している。
【0066】
判定部11は、加算器16から出力される予測誤差信号e(n)に基づいて、適応フィルタ係数h1が或る値に収束するか否かを監視しており、適応フィルタ係数h1が或る値に収束するならば、入力信号は単一周波数信号であると判定する。また、入力信号が単一周波数信号である場合に、判定部11は、単一周波数信号である入力信号の周波数を算出する。この入力信号の周波数の算出方法の詳細な説明は後述する。
【0067】
[適応フィルタの動作]
図1において、入力信号x(n)の予測信号x^(n)を下式(B-6)に従って算出する。
【数13】
【0068】
予測誤差信号e(n)は下式(B-7)で得られる。
【数14】
【0069】
この予測誤差信号e(n)を用いて、下式(B-8)に従ってフィルタ係数h
1を更新する。
【数15】
【0070】
ここで,αはステップゲインと呼ばれる上式の収束速度を決定する定数であり、0<α<1の範囲内から選択する。また、上式において、本来定数であるはずのh1のサフィックスに離散時間の指標nを加えて「h1,n」と表記した理由は、上式が示すように、実質的に、h1はnに関する変数扱いとなるからである。
【0071】
なお、式(B-8)による係数の更新処理は、入力信号x(n)の標本毎に実施されるとは限らない。なぜなら、入力信号x(n)が印加されていないとき、または、非常にそのレベルが小さいとき、式(B-8)の右辺第2項はゼロ割により不定となる可能性があるからである。この場合、h1,nは、更新せずに、h1,n=h1,n-1として直前の値を引き継ぐようにすることができる。
【0072】
着目すべきは、一般に、学習同定法では正弦波信号が入力されると、局所解が無数に存在するため、時間と共にこれらの局所解を渡り歩き、その結果、学習同定法は非線形性が増大し、最悪な場合、発振して適応制御が破壊されることが周知されている。
【0073】
しかし、第1の実施形態によれば、逆に、入力信号が正弦波信号であるときに限り、1つの解が存在することを保証できる式(B-2)に基づいて、
図1に示す構成で実装しているため、収束させることができる。これが第1の実施形態の特徴である。
【0074】
[入力信号レベルのチェック]
次に、入力信号x(n)が正弦波信号であることを確認する前に、入力信号x(n)の電力レベルの値が或る閾値以上であることを確認する必要がある。これは、単純に入力信号x(n)の二乗平均値POW_Xを下式に従って算出し、POW_Xの値を閾値と比較すればよい。
【数16】
【0075】
ここで、Nは二乗平均電力の測定区間に含まれる標本数であり、前もって、定めておくものとする。通常、平均電力値は上式の右辺をNで割ることで正規化するのであるが、これは、電力値の閾値をN倍することと等価につき、無用な計算を回避するために上式では意図的に正規化を施していない。
【0076】
電力閾値をTH_POW_Xとおくと、POW_X≧TH_POW_Xのとき、入力信号が正弦波信号であるか否かは判明しないけれども、何らかの信号が存在していることが判明する。
【0077】
逆に、POW_X<TH_POW_Xが成立する区間(N個の標本区間)では、入力信号は存在しないと見做せるので、式(B-8)に示す係数更新処理はN標本の間、停止させる。
【0078】
[収束率]
入力信号x(n)が正弦波信号であるか否かを判定するには、下式(B-10)で表す予測誤差信号e(n)の二乗平均値POW_Eが十分に小さいことが要求される。
【数17】
【0079】
しかしながら、予測誤差信号e(n)の二乗平均値POW_Eは、入力信号x(n)の二乗平均値POW_Xに比例するので、POW_EをPOW_Xで除算し正規化する必要がある。以上から、単一周波数信号検出装置10の収束率CRを下式(B-11)で定義する。
【数18】
【0080】
単一周波数信号検出装置10の判定部11は、収束率CRの閾値をTH_CRとする場合、POW_X≧TH_POW_X、かつ、CR≦TH_CRのとき、入力信号x(n)は単一周波数信号であると判定することができる。
【0081】
[検出周波数の平均化]
次に、単一周波数信号の存在が確認されたとき、判定部11は、入力信号の周波数fを以下の手順で算出する。
【数19】
【0082】
ここで、h1,nのN標本の平均値MEAN_h1を算出した理由は、入力信号x(n)に雑音が混入されていることを想定している。この場合、式(B-8)で算出されるh1,nにも雑音成分が現れる。そこで、判定部11は、入力信号x(n)の周波数に平均化を施すことで、雑音成分の影響を緩和する。
【0083】
なお、上式に現れる逆余弦関数は、実装に際してはテーブル引きに置き換えてもよいが、これは本発明の関与することではない。
【0084】
[保護論理]
式(B-9)で表す平均入力信号電力値POW_X、式(B-11)で表す収束率CR、式(B-12)で表す周波数fは、それぞれが、N標本の平均値である。このNの値を適当に選定することで短時間平均から長時間平均まで設定可能である。
【0085】
しかしながら、実用上は、Nは短時間平均とし、それぞれの判定結果の連一致を取るほうが、柔軟性がある。
【0086】
そこで、判定部11は、以下に例示するように、平均入力信号電力値POW_Xと閾値TH_POW_Xとの比較結果に基づく第1の条件値(後述する条件フラグc0)と、収束率CRと閾値TH_CRとの比較結果に基づく第2の条件値(後述する条件フラグc1)との論理評価値を示す第3の条件値(後述する条件フラグdet)を算出し、第3の条件値の連続一致に基づいて、単一周波数信号の未検出状態もしくは検出状態を判定する。
以下、具体例を用いて説明する。
【0087】
条件フラグをc0,c1、detの3ビット用意し、以下のように定義する。
フラグc0:POW_X≧TH_POW_Xならばc0=1,POW_X<TH_POW_Xならばc0=0フラグc1:CR≦TH_CRならばc1=1,CR>TH_CRならばc1=0フラグdet:det=c0&c1(論理積)
【0088】
ここで、POW_XとCRはN標本毎に算出されるので、フラグc0、c1、detもN標本毎に更新される。
【0089】
図6は、第1の実施形態に係る保護論理を採用したときの状態遷移図である。
【0090】
図6では、単位周波数信号の検出に際し、後方保護4段、前段保護2段の保護論理を採用した場合を例示している。後方保護、前方保護の段数はこれに限定されるものではない。
【0091】
後方保護は、リセットおよび単一周波数信号の検出開始指示後(S1)、単一周波数信号未検出の状態(S2)から単一周波数信号検出の状態(S3)への保護論理である。例えば、ある標本でフラグdet1=1となると、すぐに単一周波数信号の検出と判断するのではなく、これに連続する1段後の標本のフラグdetがdet=1であるか判断する。そして、当該1段後の標本のフラグdet=1であれば、さらに連続する2段後の標本のフラグdetがdet=1であるか否かを判断していき、当該2段後の標本のフラグdet=1であれば、さらに連続する3段後の標本のフラグdetがdet=1であるか否かを判断していく。このように、或る標本でdet=1であるときに、当該標本から3段後の標本まで連続してdet=1であれば、すなわち連続する4段の標本でdet=1であれば、単一周波数信号検出の状態(S3)と判断する。一方、或る標本から連続する3段後の標本までのいずれかの標本でdet=0であれば、単一周波数信号検出の状態と判断せず、単一周波数信号未検出の状態とする。
【0092】
前方保護は、単一周波数信号検出の状態(S3)から単一周波数信号未検出の状態(S2)への保護論理である。例えば、ある標本でフラグdet1=0となると、すぐに単一周波数信号未検出と判断するのではなく、これに連続する1段前の標本のフラグdetがdet=0であるか判断する。そして、当該1段前の標本のフラグdet=0であれば、単一周波数信号未検出と判断する。このように、或る標本でdet=0であるときに、当該標本から1段前の標本で連続してdet=0であれば、すなわち連続する2段の標本でdet=0であれば、単一周波数信号未検出の状態(S2)と判断する。一方、1段前の標本でdet=1であれば、単一周波数信号未検出の状態と判断しない。
【0093】
[動作例]
以下では、固定電話回線上を流れる各種信号を本発明の単一周波数信号検出器で受信したときの動作例を提示する。
【0094】
なお、ここでは、検出器の動作を明確化するため、後方保護と前方保護は意図的に施していない。
【0095】
入力信号は、200ミリ秒間隔で単一周波数信号Sが5種類と、非単一周波数信号NSが5種類の合計10種類が次の順序で交互に構成されている。
S(1),NS(1),S(2),NS(2),S(3),NS(3),S(4),NS(4),S(5)NS(5)
【0096】
ここで、それぞれの信号の種類を以下に示す。
S(1):2100Hz単一周波数信号,ITU-T V.25が定める着側モデムの応答信号NS(1):白色雑音S(2):980Hz単一周波数信号,IUT-T V.21モデムのch1 Mark
bit信号NS(2):音声S(3):1650Hz単一周波数信号,ITU-T V.21モデムのch2 Mark bit信号NS(3):保留音S(4):2225Hz単一周波数信号,Bell 103AモデムのMark bit信号NS(4):PB信号,'1',697Hz+1209HzS(5):1300Hz単一周波数信号,IUT-T V.23モデムのMark bit信号NS(5):複数の線スペクトル信号,ITU-T V.22モデムのMark bit信号
【0097】
図7は、上記10種類の信号を連続して流したときの、単一周波数検出装置1の検出周波数と収束率を示す図である。
【0098】
ここでは、単一周波数検出装置1の内部動作が観察できるようにするため、後方保護/前方保護は外している。
【0099】
図7において、単一周波数信号のときは収束率がゼロ近傍の値となり、そのときの検出周波数は単一周波数信号のそれを反映している。
【0100】
これに対して、非単一周波数信号のときは収束率が大きくなるので単一周波数信号でないことが明白である。
【0101】
なお,音声信号のときは収束率が小さくなることがある。このため、前方保護と後方保護が有用となるのである。
【0102】
(A-3)第1の実施形態の効果
以上のように、第1の実施形態によれば、1つの検出器を用意するだけで、任意の単一周波数信号の有無を検出することができ、単一周波数信号である場合には、その周波数を検出することができる。
【0103】
(B)第2の実施形態
次に、本発明の位相シフト検出装置及び位相シフト検出方法の実施形態を、図面を参照しながら詳細に説明する。
【0104】
[序論]
まず、第2の実施形態に係る位相シフト検出装置及び位相シフト検出方法を説明する前に、特許文献2~4を参照して、従来の位相シフト検出方法を説明する。
【0105】
特許文献2及び3では、単一周波数信号の周波数の公称値は、前もって判明している。
公称周波数を中心周波数とするローカル発振器が設けられており、当該発振器は、入力信号の周波数と位相に微小な許容偏差内で同期可能であり、入力信号に同期した正弦波信号と余弦波信号を生成することができる。そして、入力信号と正弦波信号の積、入力信号と余弦波信号の積を取り、それぞれ低域濾波器を通して加算し、入力信号に施される位相シフト量を検出している。
【0106】
特許文献4でも、単一周波数信号の周波数の公称値は前もって判明している。位相反転検出装置は、入力信号に離散的フーリエ変換を施し、公称周波数のレベルと位相情報を出力する。そして、現在の位相情報と過去の位相情報の差分から位相シフト量を算出している。
【0107】
上述したように、従来の場合、入力信号である単一周波数信号の周波数の公称値が既知であることを前提としている。そのため、単一周波数信号の周波数が未知の場合、従来の位相シフト検出装置は適用することができないという課題がある。
【0108】
従来の位相シフト検出装置を用いて、周波数が未知である単一周波数信号の位相シフト量を導出しようとすると、検出しようとする複数種類の周波数候補があるときには、その種類の数に応じた数の複数の受信回路を並列配備する必要があるので、装置規模が大きくなり、コスト増加、消費電力の増大が問題となる。
【0109】
この実施形態では、上述したような課題を解決するためになされたものであり、1つの受信回路で、入力信号の周波数の公称値が未知のままでも、適応制御により周波数と位相シフト量を検出することができる。
【0110】
(B-1)基本原理
図8は、第2の実施形態において、1次FIR(Finite Impulse Response)フィルタの構成例を示す構成図である。
【0111】
図8では、離散正弦波信号sin(ωnT)を1次FIRフィルタ20に印加したときの出力信号y(n)を考察する。
図8に示すように、1次FIRフィルタ20は、シフトレジスタ21と、2つの乗算器22及び23と、1つの加算器24を有する。
【0112】
図8において、シフトレジスタ(SFR)21は、入力信号である離散正弦波信号sin(ωnT)が印加されるたびに、データ信号を右隣にシフトさせる。シフトレジスタ21は、現在の標本値である信号x(n)と、その1つ前の標本値の信号x(n-1)とを格納し、信号x(n)を乗算器22に出力し、信号x(n-1)を乗算器23に出力するようにしている。
【0113】
乗算器22は、シフトレジスタ21から出力された信号x(n)にh0を乗算して加算器24に出力し、乗算器23は、シフトレジスタ21から出力された信号x(n-1)にh1を乗算して加算器24に出力する。
【0114】
加算器24は、乗算器22の出力信号と乗算器23の出力信号とを加算して得た信号を出力信号y(n)として出力する。
【0115】
したがって、出力信号y(n)は、式(C-1)で表すことができる。
【数20】
【0116】
ここで、下式(C-2-1)、(C-2-2)のように、p=h
0+h
1・cos(ωT),q=-h
1・sin(ωT)とおき、式(C-1)に代入して表現し直すと、式(C-3)となる。
【数21】
【0117】
式(C-3)は、正弦波信号sin(ωnT)を1次FIRフィルタ20に印加すると、フィルタ係数h0とh1によって、任意の位相βを有する正弦波信号sin(ωnT+β)を作り出せることを示している。
【0118】
[位相差βの算出]
次に、sin(ωnT)とsin(ωnT+β)が与えられたとき、この位相差を自動的に算出する方法を説明する。
【0119】
位相差βの算出に際して、式(C-4)に現れるpとqを算出する必要がある。さらに、pとqの算出に際しては、式(C-2-1),式(C-2-2)に示すh0とh1、および、cos(ωT)とsin(ωT)を算出する必要がある。したがって、以下では、h0とh1、および、cos(ωT)とsin(ωT)の算出方法を説明する。
【0120】
[cosωTとsinωTの算出方法]
離散正弦波信号sin(ωnT)は、下式(C-5)の差分方程式で表すことができる。
【数22】
【0121】
これより、cos(ωT)とsin(ωT)は、式(C-6-1)と式(C-6-2)で得られる。
【数23】
【0122】
なお、上式(C-6-2)に従うと、sin(ωT)は0以上の値となるが、これは、次の事実から保証される。離散正弦波信号sin(ωnT)の周波数をFC、標本化周波数をFS(=1/T)とすると、標本化定理より、FCはFS/2未満が保証されている。そうすると、ωT=2πFCT=2π(FC/FS)<πが成立するので、sin(ωT)≧0が保証されるのである。
【0123】
式(C-6-1)及び式(C-6-2)は、入力信号x(n)が正弦波信号の場合、x(n),x(n-1)≠0,x(n-2)の3つの連続する標本値からcos(ωT)とsin(ωT)が算出されることを示している。
【0124】
式(C-6-1)の右辺の分母に現れるx(n-1)によるゼロ割回避は、x(n-1)の絶対値に下限閾値を設定することで実現できる。
【0125】
さらに、入力信号x(n)が正弦波信号であることも保証しなければならないが、これは、次に説明するh0とh1の算出で使用する適応フィルタの収束率から正弦波信号であるか否かを判定できる。
【0126】
また別解として、第1の実施形態で説明した単一周波数検出装置1は、入力信号が単一周波数信号であるか否かを判定し、かつ、単一周波数信号であるならば、その周波数も検出することができるので、第1の実施形態の単一周波数検出装置1を利用するようにしてもよい。
【0127】
[h0とh1の算出方法]
例えば、学習同定法(正規化最小二乗法)を採用した適応ディジタルフィルタ(ADF:Adaptive Digital Filter)への入力信号をsin(ωnT)、参照信号をsin(ωnT+β)として印加すると、適応ディジタルフィルタの収束後に、その係数h0とh1が得られる。
【0128】
図9は、このh
0とh
1の算出方法を実現するアーキテクチャを例示している。
図9に示すアーキテクチャ30は、学習同定法(正規化最小二乗法)を採用した適応ディジタルフィルタ31、純遅延器32、加算器33を有する。
【0129】
純遅延器32は、入力信号としてsin(ωnT)を入力し、sin(ωnT)に対して時間Tdだけ遅延させて出力するものである。純遅延器32が入力信号に与える固定時間(遅延時間)Tdは、位相差β=-δに相当する、純遅延器32から出力される信号を出力信号y(n)とする。
【0130】
適応ディジタルフィルタ31は、
図8に例示した1次FIRフィルタ20をベースとし、学習同定法に基づいた係数更新機能を有している。つまり、適応ディジタルフィルタ31は、学習同定法に基づいて係数を更新させて、純遅延器32から出力される出力信号y(n)を推定する。
【0131】
加算器33は、純遅延器32から出力される信号y(n)と適応ディジタルフィルタ31から出力される信号y^(n)との差分を取る。
【0132】
ここで、x(n)は入力信号であり、離散的正弦波信号sin(ωnT)とする。
y(n)は、x(n)に対して固定時間Tdで遅延させた信号とする。
y^(n)は、y(n)の推定信号とする。
e(n)は、y(n)とy^(n)との推定誤差信号とする。
【0133】
そうすると、係数h
0とh
1は、学習同定法により、以下のように算出できる。
【数24】
【0134】
ここで、αはステップゲインと呼ばれ、適応ディジタルフィルタ31の収束速度と収束精度を決定するパラメータであり、0<α<1の範囲の値である。ステップゲインαの値は事前に選択しておくことができる。
【0135】
適応ディジタルフィルタ31の収束判定は、入力信号x(n)と推定誤差信号e(n)の電力比の値に基づいて判定することができる。したがって適応ディジタルフィルタ31の収束率CRを下式(C-10)で定義する。
【数25】
【0136】
ここで、収束率CRの判定に用いる標本数Nは、実装に応じて適当に選定すればよいであろう。入力信号x(n)が正弦波信号のとき、かつ、x(n)に位相シフトが発生していないとき、CRの値は非常に小さい値となるので、前述したcos(ωT)の算出において、x(n)が正弦波信号であるか否かの判定は、このCRの値を監視すれば判断することができる。CRがゼロ値近傍のとき、係数h0とh1は収束していると見做せる。
【0137】
[正弦波信号に位相シフトγが施されたときのγの検出方法]
さて、離散的正弦波信号x(n)=sin(ωnT)にある時点で位相シフトγ1が施され、x(n)=sin(ωnT+γ1)になるとする。次の時点で、さらに位相シフトγ2が施され、x(n)=sin(ωnT+γ1+γ2)になるとする。以下、同様に位相シフトが施されるとする。ただし、この位相シフトのタイミングは一定周期とは限らず、かつ、位相シフト量も一定とは限らないとする。
【0138】
このとき、
図9に示すアーキテクチャ30は、これら位相シフト量γ1,γ2,γ3,…を検出することが可能である。これについて説明する。
【0139】
図10は、第2の実施形態に係る適応ディジタルフィルタの入力信号x(n)と純遅延器の出力信号y(n)のタイミングを示す関係図である。
【0140】
図10において、区間1,2,3,4で検出される位相差βは、それぞれ、-δ,-δ-γ1,-δ,-δ-γ2である。ここで、-δは位相シフト検出器に用意する純遅延で決定される量であり、オフセットとして見えているので、隣接区間の変化量だけに着目すると、区間2は-γ1を検出でき、区間4では-γ2を検出することができる。つまり、入力信号x(n)に施された位相シフト量を検出することができるのである。
図9において、純遅延器32の固定時間(遅延時間)Tdを設けた理由は、ここにある。なお、Tdは、適応ディジタルフィルタ31の収束に要する時間よりも大きい値に選定しなくてはならない。
【0141】
以上が、第2の実施形態に係る位相シフト検出装置及び位相シフト検出方法の基本原理である。
【0142】
(B-2)実施形態の構成及び動作
以下では、上述した第2の実施形態の基本原理を実現するための位相シフト検出器の構成例を示すと共に、その位相シフト検出器の動作を説明する。
【0143】
図11は、第2の実施形態に係る位相シフト検出器の構成を示す構成図である。
【0144】
図11において、第2の実施形態に係る位相シフト検出器40は、遅延回路41、適応フィルタ42、位相シフト算出回路43、単位標本余弦/正弦値算出回路44を有する。
【0145】
[入力信号]
入力信号x(n)が下式(D-1)で表す離散的正弦波信号であると想定して説明する。
【数26】
【0146】
ここで,ωは角周波数、nは離散時間の指標(整数値)、Tは離散信号x(n)の標本化周期とする。
【0147】
さらに、入力信号x(n)には、時刻n1,n2,n3…において、それぞれ、位相シフト(単位はラジアン)γ1,γ2,γ3,…が施されているものとする。これを式(D-2)に表す。
【数27】
【0148】
このような信号の例には、位相シフトキーイング(PSK)モデム信号やITU-T V.25で規定されている450ms周期で位相反転する2100Hz正弦波信号がある。
【0149】
位相シフト検出器40は、入力信号x(n)が正弦波信号であるときに限り、上式(D-2)の位相シフトγ1,γ2,γ3,…を検出可能とする。これ以降、その動作を説明する。
【0150】
[遅延回路]
遅延回路41は、入力信号x(n)をM標本だけ遅延させる機能を有する。遅延回路41の実現に際しては、シフトレジスタ、FIFO、メモリ等を利用することができる。遅延回路41の入力信号x(n)を離散的正弦波信号としたときのy(n)との関係を下式に示す。
【数28】
【0151】
式(D-3)の意味するところは、y(n)はx(n)をM標本遅延させた信号なので、或る時刻n=n1に、x(n)に位相シフトが発生したとき、それがy(n)に反映されるのはM標本後のn=n1+Mである。つまり、このM標本区間では、x(n)にのみ位相シフトが発生しており、y(n)には位相シフトが反映されていないので、何らかの方法でx(n)にのみ発生した位相シフトを算出する機会を提供することになる。これが遅延回路41の目的である。
【0152】
この位相シフト算出に要する時間をTlearnとすると、MT>Tlearn (D-4)を満足するように、前もってMの値を選定しておく必要がある。
【0153】
[適応フィルタ]
適応フィルタ42は、入力信号x(n)に対して、式(D-5)で表すFIRフィルタ演算を施し、y(n)の推定値y^(n)を生成する。
【数29】
【0154】
ここで、適応フィルタ係数h0とh1は離散時間nに関する信号ではないものの時変パラメータであるため、サフィックスnを追記することで、時間関係を陽に表現している。
【0155】
式(D-5)で表す推定値y^(n)が真値y(n)に追従できるように、以下の係数更新処理を実施する。
【0156】
真値y(n)とその推定値y^(n)の推定誤差信号e(n)は下式(D-6)で得られる。
【数30】
【0157】
この推定誤差信号e(n)はフィードバックされ、適応フィルタ係数h
0、とh
1を下式(D-7-1)~(D-7-3)に従って更新する。
【数31】
【0158】
ここで、αはステップゲインと呼ばれ、当該適応フィルタの収束速度と収束精度を決定するパラメータであり、0<α<1の範囲の値であり、前もって選定しておく。収束速度を重視するならばステップゲインαの値を1寄りの値とし、収束精度を重視するならばステップゲインαの値を0よりの値を選定すればよい。
【0159】
入力信号が正弦波信号のとき、適応フィルタ42が作り出す推定値y^(n)は極めて高速に真値y(n)に収束する。この適応フィルタ42の収束率CRを、入力信号x(n)の平均電力値POW_xと、推定誤差信号e(n)の平均電力値POW_eの比率で定義する。
【数32】
【0160】
実装に際して、収束率CRの閾値TH_CRを定めておき、判断すればよい。
【0161】
ところで、式(D-7-2)、(D-7-3)で算出される適応フィルタ係数h
0とh
1は位相シフト算出回路43に提供されることになるが、入力信号x(n)には、外来雑音および符号化の量子化雑音が重畳されているので、これに応じて、h
0とh
1の値は揺らぐことになる。よって、h
0とh
1の平均値MEAN_h0とMEAN_h1を算出すれば雑音の影響は緩和できるので、これら平均値MEAN_h0とMEAN_h1を位相シフト算出回路43に提供する。ここで、平均値MEAN_h0とMEAN_h1の算出例を示す。
【数33】
【0162】
[単位標本余弦/正弦値算出回路]
ここで、cos(ωT)を単位標本余弦値、sin(ωT)を単位標本正弦値と呼ぶことにする。
【0163】
入力信号x(n)が、式(D-1)で表す離散的正弦波信号sin(ωnT)のとき、単位標本余弦値cos(ωT)を、三角関数の公式より、式(D-10)で得ることができる。
【数34】
【0164】
ところで、一般に、入力信号x(n)には外来雑音または符号化の量子化雑音が重畳されているので、連続した3つの標本値x(n),x(n-1),x(n-2)だけから式(D-10)を使用して算出されるcos(ωT)を真値とするには危険であり、cos(ωT)の平均値MEAN_cwtを取ることで雑音の影響を抑制することができる。そこで、単位標本余弦/正弦値算出回路44は、例えば、下式(D-11)でMEAN_cwtを算出することができる。
【数35】
【0165】
上式は、0≦j≦N-1の範囲で積分してNで除算する場合を例示しているが、或るjについて、分母のx(n-1-j)がゼロ値のとき、ゼロ割が発生し、計算値が不定となる可能性がある。よって、除算する前に、x(n-1-j)の値をチェックし、x(n-1-j)の値がゼロ近傍のときは上式の平均処理には加えない対策を取ればよい。
【0166】
単位標本正弦値sin(ωT)の平均値MEAN_swtは、下式で得られる。
【数36】
【0167】
[位相シフト算出回路]
位相シフト算出回路43は、前述した適応フィルタ42から入力信号の平均電力値POW_x、係数h0とh1の平均値MEAN_h0とMEAN_h1,収束率CR,単位標本余弦/正弦値算出回路44から平均単位標本余弦値MEAN_cwtと平均単位標本正弦値MEAN_swtを、それぞれ、N標本周期に1回取得し、これらの情報に基づいて、入力信号x(n)に発生する位相シフトを検出するものである。
【0168】
適応フィルタ42の収束率CRの閾値には、ヒステリシス性を持たせるべく2種類TH_CRHとTH_CRLとを用意し、TH_CRH>TH_CRLなる関係を有するものとする。
【0169】
適応フィルタ42の学習が終了したとき、すなわち、y(n)≒y^(n)のときCR<TH_CRLとなり、x(n)又はy(n)に位相シフトが発生した際には、y(n)≠y^(n)となるので、推定誤差信号e(n)の振幅は増大、つまり、収束率CRが劣化し値が上昇する。適応フィルタ42はy(n)≒y^(n)に戻すべく、係数h0とh1の値を適宜変更していき、最終的には再びy(n)≒y^(n)となり、CR<TH_CRLに戻る。
【0170】
入力信号x(n)と遅延回路41の出力信号y(n)の位相差βを以下の手順で算出する。
【数37】
【0171】
ここで、位相差βはN標本毎に算出されるので、N標本を1単位時間とする新しい時間指標kを導入し、β(k)と表記している。
【0172】
β(k)は、x(n)に位相シフトが発生していない状態では、x(n)=sin(ωnT)、y(n)=sin(ωnT-ωMT)より、β(k)=-ωMTである。
【0173】
x(n)に位相シフトγ1が発生し、x(n)=sin(ωnT+γ1)となったとき、β(k)=-ωMT-γ1となる。ここで、β(k)には遅延回路41の遅延時間に相当する-ωMTラジアンがオフセットとして重畳されているので、これをキャンセルすべく、β(k)自身の差分を取る。この新しい変数φ(k)を下式で定義する。
【数38】
【0174】
ここで、Lは指標kと同じくN標本を1単位としており、少なくとも適応フィルタ42の学習時間よりも長い値を前もって設定しておく。これにより、x(n)に位相シフトが発生していないときは、φ(k)=0となり、x(n)に位相シフトγ1が発生したときには、φ(k)=γ1を表すことができる。
【0175】
以上、説明の準備が整ったところで、ある時点で、入力信号x(n)に位相シフトγ1が発生したとき、この位相シフト量γ1を算出する過程を
図12に基づいて説明する。
【0176】
図12において、時間指標kのとき、入力信号x(n)に位相シフトγ1が発生すると、適応フィルタ42の学習により、収束率CRは上昇し上限閾値TH_CRHを超過する。学習に要する時間は、ここでは、N標本以下とすると、次の時間指標k+1では、下限閾値TH_CRLをまだ下回っておらず、時間指標k+2で、CR<TH_CRLを満足する。このときの位相差微分φ(k+2)の値はγ1となる。
【0177】
時間指標kでx(n)に位相シフトγ1が発生してから、M標本後、例えば
図12では時間指標k+3に、y(n)に位相シフトが現れ、適応フィルタ42がこの位相シフト-γ1を検出するのは時間指標k+5である。
【0178】
これは、無視すべきである.
図12では時間指標k+7まで無視すべきことを表している。つまり、時間指標k+2でγ1を検出してから、N×L+M標本区間は無視するべきである。具体的な値は実装依存とする。
【0179】
ところで,入力信号x(n)が単一周波数信号であるとき、その周波数を知る必要があるときは、収束率CR<TH_CRLのとき、MEAN_cwtより、下式に従って周波数fを算出すればよい。
【数39】
【0180】
[動作例]
次に、第2の実施形態に係る位相シフト検出器40の動作例を説明する。
【0181】
図13は、第2の実施形態に係る位相シフト検出器40の動作条件の一例を示す図である。
【0182】
図14は、
図13の動作条件のときの位相シフト検出器40の収束率CR(k)と位相差β(k)の動作例を示している。
【0183】
図13に示すように、動作条件は、入力信号x(n)を2079Hzの正弦波信号とし、200ms経過時点で位相シフト=205[deg]を施した。標本化周波数は8[kHz]、遅延時間はM=128[標本](=16ms),収束率CRと位相差βの算出周期N=40[標本](=5ms)とした。
【0184】
図14に示すように、位相差β(k)は、便宜上、値域を0[deg]≦β(k)<360[deg]の範囲に制限している。
【0185】
位相シフト発生前の位相差は、理論値-ωMTに代入すると、-ωMT=-2π・2079・(128/8000)
=-209[rad]
=-95[deg]
=265[deg]を得る。
図14において、位相シフト前の位相差β(k)は、265[deg]近傍の値を示している。
【0186】
次にx(n)に位相シフト205[deg]が発生すると、それまでの位相差よりも205[deg]だけ近づくので、265-205=60[deg]が理論値となる。
図14において、位相差β(k)は60[deg]近傍の値を示している。
【0187】
さらに、
図14に示すように、x(n)とy(n)に位相シフトが発生するときは、収束率CRの値が顕著に上昇し、位相シフトの発生タイミングを知ることができる。
【0188】
(B-3)第2の実施形態の効果
以上のように、第2の実施形態によれば、入力信号の周波数の公称値が未知である場合でも、1つの受信回路で、適応制御により周波数と位相シフト量を検出することができる。
【0189】
(C)第3の実施形態
次に、本発明に係る位相シフト検出装置及び位相シフト検出方法の、別の実施形態を説明する。
【0190】
上述した第2の実施形態では、入力信号の単位標本余弦値の平均値MEAN_cwtは、入力信号x(n)から生成する場合を例示した。
【0191】
これに対して、第3の実施形態では、適応フィルタ係数の平均値MEAN_h0とMEAN_h1とから、単位標本余弦値の平均値MEAN_cwtを算出する方法を示す。
【0192】
第2の実施形態の「(B-1)基本原理」で示した式(C-3)で表される正弦波信号y(n)の振幅(p
2+q
2)
1/2を、例えば「1」とおくことができる。これは、
図9における純遅延器32の利得が「1」の場合に相当する。
【0193】
そうすると、下式(E-1)と、式(C-2-1)及び式(C-2-2)とにより、下式(E-2-1)となり表現を変えると式(E-2-2)となる。
【数40】
【0194】
式(E-2-2)のh
0とh
1のそれぞれに、h
0とh
1の平均値MEAN_h0とMEAN_h1を代入すると、下式(E-3)のように、単位標本余弦値の平均値MEAN_cwtを得ることができる。
【数41】
【0195】
ただし、上式(E-3)において、MEAN_h0又はMEAN_h1がゼロ値のとき、上式は不定となり、MEAN_cwtを算出できないという制約がある。したがって、この制約を具体的に示しておく。
【0196】
【0197】
ここで、fは入力信号x(n)の周波数、Mは
図11の遅延回路41の遅延タップ数、kは0以上(M-1)/2未満の整数、fs(=1/T)は標本化周波数である。
【0198】
【0199】
ここで、fは入力信号x(n)の周波数、Mは
図11の遅延回路の遅延タップ数、kは0以上M/2未満の整数、fs(=1/T)は標本化周波数である。
【0200】
入力信号x(n)の周波数fが、式(E-4-3)と式(E-5-3)に該当するとき、第3の実施形態は適用することができない。しかしながら、入力信号の周波数の公称値が既知の場合、式(E-4-3)と式(E-5-3)に該当しないようにMの値を選定することで適用することができる。
【0201】
なお、第3の実施形態は、第2の実施形態の単位標本余弦値の算出方法を、上述したように変形したものであり、それ以外は第2の実施形態と同じであるため、動作説明は省略する。
【0202】
上述したように、第3の実施形態によれば、係数h0とh1の値(平均値MEAN_h0とMEAN_h1の値)を用いて、単位標本余弦値(平均値MEAN_cwtの値)を算出することができる。この場合でも、第2の実施形態と同様の効果を奏する。
【0203】
(D)他の実施形態
例えば、ITU-T G.168で規定されるトーンディセーブラには、着信側モデムが通信開始時に送出する応答信号2100Hzの位相反転を検出する機能が求められている。搬送周波数の公称値2100[Hz]に対して許容偏差として1900[Hz]~2350[Hz]が規定されており、位相反転角度の公称値180[deg]に対して許容偏差として110[deg]~250[deg]が規定されている。この許容偏差は通信規格としては異例と言えるほど広範囲であるが、第2及び第3の実施形態によれば、この許容偏差でも何ら問題なく検出することが可能である。
【符号の説明】
【0204】
10…単一周波数検出装置、11…判定部、12…シフトレジスタ(SFR)、13及び14…乗算器、15及び16…加算器、
40…位相シフト検出器、41…遅延回路、42…適応フィルタ、43…位相シフト算出回路、44…単位標本余弦/正弦値算出回路。