説明

信号シフト装置及び方法

【課題】本発明は、離散信号をサンプリング周期の実数倍シフトすることを実現する信号シフト装置及び方法に関する。
【解決手段】本発明に係る一次元信号シフト装置は、実数であるシフト量mの整数部分の整数a及び小数部分の実数bを算出する整数小数分離部と、整数a+1を出力する整数加算部と、実数1−bを出力する小数減算部と、シフト済み離散信号sa+1[i]を出力する第1のシフト部と、シフト済み離散信号sa[i]を出力する第2のシフト部と、重み付け離散信号Cf(b)sa+1[i]を出力する第1の係数乗算部と、重み付け離散信号Cf(1−b)sa[i]を出力する第2の係数乗算部と、合成信号Cf(1−b)sa[i]+Cf(b)sa+1[i]を出力する合成部とを備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、連続的な信号をサンプリングすることによって得られた離散信号をシフト(移動)する装置及び方法に関する。
【背景技術】
【0002】
図7は、典型的な電力測定装置の構成を示す。図7には、電圧A/D変換部701と、電流A/D変換部702と、信号シフト装置703と、積和演算部704と、電力量表示部705とを備えた電力測定装置700が示されている。
【0003】
電圧A/D変換部701は、アナログ電圧信号Vaを入力し、入力したアナログ電圧信号Vaをサンプリングおよび量子化して、ディジタル電圧信号Vdを出力する。電流A/D変換部702は、アナログ電流信号Iaを入力し、入力したアナログ電流信号Iaをサンプリングおよび量子化して、ディジタル電流信号Idを出力する。信号シフト装置703は、ディジタル電圧信号Vdとディジタル電流信号Idとの位相のずれを調整するために、ディジタル電流信号Idとシフト量mとを入力し、ディジタル電流信号Idをシフト量mだけ時間的にシフトして、シフト済みディジタル電流信号Id’を出力する。積和演算部704は、ディジタル電圧信号Vdとシフト済みディジタル電流信号Id’を入力し、ディジタル電圧信号Vdとシフト済みディジタル電流信号Id’とを積和演算して電力値Pを算出し、算出した電力値Pを出力する。電力量表示部705は、積和演算部704から出力された電力値Pを入力し、入力した電力値Pを表示する。積和演算部704は、下記の(式1)に従ってディジタル電圧信号Vdとシフト済みディジタル電流信号Id’とを積和演算して電力値Pを算出する。
【0004】
【数1】

【0005】
ただし、Vd[i]及びId’[i]は、それぞれ、i番目のディジタル電圧信号Vd及びi番目のシフト済みディジタル電流信号Id’を示す。このように、典型的な電力測定装置において、正確に電力量を測定するためには、サンプリング毎のディジタル電圧信号Vdとディジタル電流信号Idとの間の位相のずれを小さくする必要がある。
【0006】
従来の信号シフト装置としては、シフトレジスタ等を用いて離散信号をサンプリング周期の整数倍でシフトするものがあった。例えば、特許文献1によると、サンプリングされた電流値をサンプリング周期の整数倍(特許文献1の図2では1倍)だけシフトする構成が記載されている。また、特許文献2によると、シフト量は離散値であり、A/D変調器でサンプリングした周期の整数倍だけシフトする構成が記載されている(特許文献2においては、分解能は角度で示されているが、この分解能はA/D変換器のサンプリング周期を角度に換算したものであり、結局、シフト量はサンプリング周期の整数倍となる)。また、非特許文献1には、離散フーリエ変換を用いて、サンプリング周期の整数倍だけ離散信号をシフトする構成が記載されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特許第2813508号公報
【特許文献2】特開2000−206161号公報
【非特許文献】
【0008】
【非特許文献1】E. Oran Bringham著、宮川洋、今井秀樹訳、「高速フーリエ変換」、科学技術出版社、p. 138、1979.
【発明の概要】
【発明が解決しようとする課題】
【0009】
従来の信号シフト装置は、離散信号をサンプリング周期の整数倍だけシフトするものであり、サンプリング周期の実数倍のシフトを実行することができなかった。従って、ディジタル電圧信号Vdとディジタル電流信号Idとの間の実際の位相差がサンプリング周期の整数倍ではない場合に、当該位相差を正確に補正することができなかった。本発明は、このような従来の構成が有していた問題を解決するものであり、離散信号をサンプリング周期の実数倍シフトすることを実現することを目的とするものである。
【課題を解決するための手段】
【0010】
上述のような問題を解決するために、本発明の請求項1に係る一次元信号シフト装置は、外部から出力された実数であるシフト量mを入力して、前記シフト量mの整数部分の整数a及び前記シフト量mの小数部分の実数bを算出する整数小数分離部と、前記整数小数分離部から出力された整数aを入力し、該入力した整数aに1を加算することにより整数a+1を出力する整数加算部と、前記整数小数分離部から出力された実数bを入力し、該入力した実数bを1から減算することにより実数1−bを出力する小数減算部と、外部から出力されたi番目の離散信号を示す離散信号s[i]と前記整数加算部から出力された整数a+1とを入力し、該入力した整数a+1に基づいて該入力した離散信号s[i]をa+1サンプル分だけシフトすることにより、シフト済み離散信号sa+1[i]を出力する第1のシフト部と、外部から出力された前記離散信号s[i]と前記整数小数分離部から出力された整数aとを入力し、該入力した整数aに基づいて該入力した離散信号s[i]をaサンプル分だけシフトすることにより、シフト済み離散信号sa[i]を出力する第2のシフト部と、前記第1のシフト部から出力された前記シフト済み離散信号sa+1[i]と前記整数小数分離部101から出力された実数bとを入力し、前記シフト済み離散信号sa+1[i]のサンプル位置iの信号強度sa+1[i]に、該入力した実数bに基づいて生成された単調増加関数からなる係数Cf(b)を乗算することにより、重み付け離散信号Cf(b)sa+1[i]を出力する第1の係数乗算部と、前記第2のシフト部から出力されたシフト済み離散信号sa[i]と前記小数減算部から出力された実数1−bを入力し、前記シフト済み離散信号sa[i]のサンプル位置iの信号強度sa[i]に、該入力した実数1−bに基づいて生成された単調増加関数からなる係数Cf(1−b)を乗算することにより、重み付け離散信号Cf(1−b)sa[i]を出力する第2の係数乗算部と、前記第1の係数乗算部から出力された重み付け離散信号Cf(b)sa+1[i]と前記第2の係数乗算部から出力された重み付け離散信号Cf(1−b)sa[i]とを入力して、該入力した重み付け離散信号Cf(b)sa+1[i]と該入力した重み付け離散信号Cf(1−b)sa[i]とを同一サンプル位置i毎に加算することにより、合成信号Cf(1−b)sa[i]+Cf(b)sa+1[i]を出力する合成部とを備えることを特徴とする。
【0011】
本発明の請求項2に係る一次元信号シフト装置は、請求項1に記載の一次元信号シフト装置において、前記第1のシフト部は、離散信号s[i]の値を格納するためのa+1個以上のバッファを備える第1のシフトレジスタを備え、前記第2のシフト部は、離散信号s[i]の値を格納するためのa個以上のバッファを備える第2のシフトレジスタを備え、前記第1のシフトレジスタは、前記入力した離散信号の値を左端のバッファbaから格納し、離散信号が前記左端のバッファbaへと入力されるタイミングで順次右側のバッファba-1、ba-2、…、b0へと降順に前記入力した離散信号の値を格納し、前記入力した整数a+1個分だけ離散信号を格納した時点から、前記左端のバッファbaに格納した離散信号の値を出力して、離散信号が前記左端のバッファbaへと入力されるタイミングで順次右側のバッファba-1、ba-2、…、b0に格納された離散値を出力し、前記第2のシフトレジスタは、前記入力した離散信号の値を左端のバッファba-1から格納し、前記入力した離散信号の値が前記左端のバッファba-1へと入力されるタイミングで順次右側のバッファba-2、ba-3、…、b0へと降順に前記入力した離散信号の値を格納し、前記入力した整数a個分だけ離散信号を格納した時点から、前記左端のバッファba-1に格納した離散信号の値を出力して、離散信号が前記左端のバッファba-1へと入力されるタイミングで順次右側のバッファba-2、ba-3、…、b0に格納された離散値を出力することを特徴とする。
【0012】
本発明の請求項3に係る一次元信号シフト装置は、請求項1に記載の一次元信号シフト装置において、前記第1のシフト部及び前記第2のシフト部は、離散信号s[i]のデータの数であるN個のバッファb0、b1、…、bN-2、bN-1を含むメモリを備え、前記バッファの各々は、それぞれ、アドレス0からアドレスN−1が付され、該アドレス0からアドレスN−1が付されたバッファb0、…、bN-1の各々は、それぞれ、離散信号s[0]、…、s[N−1]の値を格納し、前記第1のシフト部の前記メモリは、前記入力した整数a+1を用いて、アドレスaからアドレスN−1までのバッファba、…、bN-1に格納された離散信号の値s[a]、…、s[N−1]を読み出して順次出力し、前記第2のシフト部の前記メモリは、前記入力した整数aを用いて、アドレスaからアドレスN−1までのバッファba-1、…、bN-1に格納された離散信号の値s[a−1]、…、s[N−1]を読み出して順次出力するか、又は前記第1のシフト部の前記メモリは、前記入力した整数a+1を用いて、離散信号s[a]、s[a+1]、…、s[N−1]、s[0]、s[1]、…、s[a−1]となる順番で離散信号を読み出して出力し、前記第2のシフト部の前記メモリは、前記入力した整数aを用いて、離散信号s[a−1]、s[a]、…、s[N−1]、s[0]、s[1]、…、s[a−2]となる順番で離散信号を読み出して出力することを特徴とする。
【0013】
本発明の請求項4に係る一次元信号シフト装置は、請求項1に記載の一次元信号シフト装置において、前記第1のシフト部は、第1の離散フーリエ変換部と、第1のシフト量換算部と、第1の周波数毎乗算部と、第1の離散フーリエ逆変換部とを備え、前記第2のシフト部は、第2の離散フーリエ変換部と、第2のシフト量換算部と、第2の周波数毎乗算部と、第2の離散フーリエ逆変換部とを備え、前記第1の離散フーリエ変換部及び前記第2の離散フーリエ変換部は、離散信号s[i]を入力し、入力した離散信号s[i]を周波数情報f毎に離散フーリエ変換して、離散フーリエ変換信号S[f]を出力し、前記第1のシフト量換算部は、前記入力した整数a+1に基づいて、周波数情報f毎にシフト換算量exp(−j・2πf(a+1)/N)を出力し、前記第2のシフト量換算部は、前記入力した整数aに基づいて、周波数情報f毎にシフト換算量exp(−j・2πfa/N)を出力し、前記第1の周波数毎乗算部は、前記第1の離散フーリエ変換部から出力された離散フーリエ変換信号S[f]と前記第1のシフト量換算部から出力されたシフト換算量exp(−j・2πf(a+1)/N)を入力して、該入力した離散フーリエ変換信号S[f]と該入力したシフト換算量exp(−j・2πf(a+1)/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を出力し、前記第2の周波数毎乗算部は、前記第2の離散フーリエ変換部から出力された離散フーリエ変換信号S[f]と前記第2のシフト量換算部から出力されたシフト換算量exp(−j・2πfa/N)を入力して、該入力した離散フーリエ変換信号S[f]と該入力したシフト換算量exp(−j・2πfa/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を出力し、前記第1の離散フーリエ逆変換部は、前記第1の周波数毎乗算部から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を離散フーリエ逆変換することにより、シフト済み離散信号sa+1[i]を出力し、前記第2の離散フーリエ逆変換部は、前記第2の周波数毎乗算部から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を離散フーリエ逆変換することにより、シフト済み離散信号sa[i]を出力することを特徴とする。
【0014】
本発明の請求項5に係る一次元信号シフト装置は、請求項1から4のいずれかに記載の一次元信号シフト装置において、前記係数Cf(b)=bであり、前記係数Cf(1−b)=1−bであることを特徴とする。
【0015】
本発明の請求項6に係る方法は、整数小数分離部が、外部から出力された実数であるシフト量mを入力して、前記シフト量mの整数部分の整数a及び前記シフト量mの小数部分の実数bを算出するステップと、整数加算部が、前記整数小数分離部から出力された整数aを入力し、該入力した整数aに1を加算することにより整数a+1を出力するステップと、小数減算部が、前記整数小数分離部から出力された実数bを入力し、該入力した実数bを1から減算することにより実数1−bを出力するステップと、第1のシフト部が、外部から出力されたi番目の離散信号を示す離散信号s[i]と前記整数加算部から出力された整数a+1とを入力し、該入力した整数a+1に基づいて該入力した離散信号s[i]をa+1サンプル分だけシフトすることにより、シフト済み離散信号sa+1[i]を出力するステップと、第2のシフト部が、外部から出力された前記離散信号s[i]と前記整数小数分離部から出力された整数aとを入力し、該入力した整数aに基づいて該入力した離散信号s[i]をaサンプル分だけシフトすることにより、シフト済み離散信号sa[i]を出力するステップと、第1の係数乗算部が、前記第1のシフト部から出力された前記シフト済み離散信号sa+1[i]と前記整数小数分離部101から出力された実数bとを入力し、前記シフト済み離散信号sa+1[i]のサンプル位置iの信号強度sa+1[i]に、該入力した実数bに基づいて生成された単調増加関数からなる係数Cf(b)を乗算することにより、重み付け離散信号Cf(b)sa+1[i]を出力するステップと、第2の係数乗算部が、前記第2のシフト部から出力されたシフト済み離散信号sa[i]と前記小数減算部から出力された実数1−bを入力し、前記シフト済み離散信号sa[i]のサンプル位置iの信号強度sa[i]に、該入力した実数1−bに基づいて生成された単調増加関数からなる係数Cf(1−b)を乗算することにより、重み付け離散信号Cf(1−b)sa[i]を出力するステップと、合成部が、前記第1の係数乗算部から出力された重み付け離散信号Cf(b)sa+1[i]と前記第2の係数乗算部から出力された重み付け離散信号Cf(1−b)sa[i]とを入力して、該入力した重み付け離散信号Cf(b)sa+1[i]と該入力した重み付け離散信号Cf(1−b)sa[i]とを同一サンプル位置i毎に加算することにより、合成信号Cf(1−b)sa[i]+Cf(b)sa+1[i]を出力するステップとを備えることを特徴とする。
【0016】
本発明の請求項7に係る方法は、請求項6に記載の方法において、前記第1のシフト部は、離散信号s[i]の値を格納するためのa+1個以上のバッファを備える第1のシフトレジスタを備え、前記第2のシフト部は、離散信号s[i]の値を格納するためのa個以上のバッファを備える第2のシフトレジスタを備え、前記シフト済み離散信号sa+1[i]を出力するステップは、前記第1のシフトレジスタが、前記入力した離散信号の値を左端のバッファbaから格納し、離散信号が前記左端のバッファbaへと入力されるタイミングで順次右側のバッファba-1、ba-2、…、b0へと降順に前記入力した離散信号の値を格納し、前記入力した整数a+1個分だけ離散信号を格納した時点から、前記左端のバッファbaに格納した離散信号の値を出力して、離散信号が前記左端のバッファbaへと入力されるタイミングで順次右側のバッファba-1、ba-2、…、b0に格納された離散値を出力するステップを含み、前記シフト済み離散信号sa[i]を出力するステップは、前記第2のシフトレジスタが、前記入力した離散信号の値を左端のバッファba-1から格納し、前記入力した離散信号の値が前記左端のバッファba-1へと入力されるタイミングで順次右側のバッファba-2、ba-3、…、b0へと降順に前記入力した離散信号の値を格納し、前記入力した整数a個分だけ離散信号を格納した時点から、前記左端のバッファba-1に格納した離散信号の値を出力して、離散信号が前記左端のバッファba-1へと入力されるタイミングで順次右側のバッファba-2、ba-3、…、b0に格納された離散値を出力するステップを含むことを特徴とする。
【0017】
本発明の請求項8に係る方法は、請求項6に記載の方法において、前記第1のシフト部は、前記第1のシフト部及び前記第2のシフト部は、離散信号s[i]のデータの数であるN個のバッファb0、b1、…、bN-2、bN-1を含むメモリを備え、前記バッファの各々は、それぞれ、アドレス0からアドレスN−1が付され、該アドレス0からアドレスN−1が付されたバッファb0、…、bN-1の各々は、それぞれ、離散信号s[0]、…、s[N−1]の値を格納し、前記シフト済み離散信号sa+1[i]を出力するステップは、前記第1のシフト部の前記メモリが、前記入力した整数a+1を用いて、アドレスaからアドレスN−1までのバッファba、…、bN-1に格納された離散信号の値s[a]、…、s[N−1]を読み出して順次出力するステップを含み、前記シフト済み離散信号sa[i]を出力するステップは、前記第2のシフト部の前記メモリが、前記入力した整数aを用いて、アドレスaからアドレスN−1までのバッファba-1、…、bN-1に格納された離散信号の値s[a−1]、…、s[N−1]を読み出して順次出力するステップを含むか、又は前記シフト済み離散信号sa+1[i]を出力するステップは、前記第1のシフト部の前記メモリが、前記入力した整数a+1を用いて、離散信号s[a]、s[a+1]、…、s[N−1]、s[0]、s[1]、…、s[a−1]となる順番で離散信号を読み出して出力するステップを含み、前記シフト済み離散信号sa[i]を出力するステップは、前記第2のシフト部の前記メモリが、前記入力した整数aを用いて、離散信号s[a−1]、s[a]、…、s[N−1]、s[0]、s[1]、…、s[a−2]となる順番で離散信号を読み出して出力するステップを含むことを特徴とする。
【0018】
本発明の請求項9に係る方法は、請求項6に記載の方法において、前記第1のシフト部は、第1の離散フーリエ変換部と、第1のシフト量換算部と、第1の周波数毎乗算部と、第1の離散フーリエ逆変換部とを備え、前記第2のシフト部は、第2の離散フーリエ変換部と、第2のシフト量換算部と、第2の周波数毎乗算部と、第2の離散フーリエ逆変換部とを備え、前記シフト済み離散信号sa+1[i]を出力するステップは、前記第1の離散フーリエ変換部が、離散信号s[i]を入力し、入力した離散信号s[i]を周波数情報f毎に離散フーリエ変換して、離散フーリエ変換信号S[f]を出力ステップと、前記第1のシフト量換算部が、前記入力した整数a+1に基づいて、周波数情報f毎にシフト換算量exp(−j・2πf(a+1)/N)を出力ステップと、前記第1の周波数毎乗算部が、前記第1の離散フーリエ変換部から出力された離散フーリエ変換信号S[f]と前記第1のシフト量換算部から出力されたシフト換算量exp(−j・2πf(a+1)/N)を入力して、該入力した離散フーリエ変換信号S[f]と該入力したシフト換算量exp(−j・2πf(a+1)/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を出力するステップと、前記第1の離散フーリエ逆変換部が、前記第1の周波数毎乗算部から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を離散フーリエ逆変換することにより、シフト済み離散信号sa+1[i]を出力するステップとを含み、前記シフト済み離散信号sa[i]を出力するステップは、前記第2の離散フーリエ変換部が、離散信号s[i]を入力し、入力した離散信号s[i]を周波数情報f毎に離散フーリエ変換して、離散フーリエ変換信号S[f]を出力するステップと、前記第2のシフト量換算部が、前記入力した整数aに基づいて、周波数情報f毎にシフト換算量exp(−j・2πfa/N)を出力するステップと、前記第2の周波数毎乗算部が、前記第2の離散フーリエ変換部から出力された離散フーリエ変換信号S[f]と前記第2のシフト量換算部から出力されたシフト換算量exp(−j・2πfa/N)を入力して、該入力した離散フーリエ変換信号S[f]と該入力したシフト換算量exp(−j・2πfa/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を出力するステップと、前記第2の離散フーリエ逆変換部が、前記第2の周波数毎乗算部から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を離散フーリエ逆変換することにより、シフト済み離散信号sa[i]を出力するステップとを含むことを特徴とする。
【0019】
本発明の請求項10に係る方法は、請求項6から9のいずれかに記載の方法において、前記第1のシフト部は、前記係数Cf(b)=bであり、前記係数Cf(1−b)=1−bであることを特徴とする。
【発明の効果】
【0020】
本発明に係る一次元信号シフト装置を用いることにより、シフト量がサンプリング周期の整数倍でなくても、離散信号を当該シフト量だけシフトした信号を高精度に生成することができる。また、本発明に係る一次元信号シフト装置においては、サンプリング周波数が高くなるほど、シフト量分だけシフトさせた信号の予測値の精度が高くなる。
【0021】
図7に示される電力測定装置の信号シフト装置として本発明に係る一次元信号シフト装置を使用して、サンプリング周期の実数倍でシフトすることにより、特許文献1で示されるようなサンプリング周期の時間精度でシフトする従来の構成よりも、高い精度の電力測定値を得ることができる。
【図面の簡単な説明】
【0022】
【図1】本発明の実施例1に係る一次元信号シフト装置の構成を示す図である。
【図2】本発明の実施例1に係る一次元信号シフト装置の動作フロー図である。
【図3】本発明の実施例2に係る一次元信号シフト装置のシフト部301の構成を示す図である。
【図4】本発明の実施例3に係る一次元信号シフト装置のシフト部の構成401を示す図である。
【図5】本発明の実施例4に係る一次元信号シフト装置のシフト部の構成501を示す図である。
【図6】横軸をシフト量とし、縦軸を離散信号の信号強度としたグラフである。
【図7】典型的な電力測定装置の構成を示す図である。
【発明を実施するための形態】
【0023】
(実施例1)
図1は、本発明の実施例1に係る一次元信号シフト装置の構成を示す。図1には、整数小数分離部101と、整数加算部102と、小数減算部103と、第1のシフト部104と、第1のシフト部105と、第1の係数乗算部106と、第2の係数乗算部107と、合成部108とを備えた一次元信号シフト装置100が示されている。図2は、本発明の実施例1に係る一次元信号シフト装置100の動作フロー図であり、以下、図1及び図2を用いて本発明の実施例1に係る一次元信号シフト装置100の動作を説明する。
【0024】
図2のs101で示されるように、整数小数分離部101は、外部から出力された実数であるシフト量mを入力し、入力したシフト量mを用いて、下記の(式2)及び(式3)に従って、シフト量mの整数部分の整数a及びシフト量mの小数部分の実数bを算出して出力する。
a=floor(m) (式2)
b=m−a (式3)
【0025】
ここで、(式2)において、y=floor(x)とすると、floor(x)は0≦x−y<1を満たす整数yを返す関数である。したがって、(式2)のa=floor(m)においては、0≦m−a<1となる整数aが算出される。また、(式2)及び(式3)より、0≦b<1となる。以下、シフト量mを実数とし、aをシフト量mの整数部分の値とし、bをシフト量mの小数部分の値とする。
【0026】
図2のs102で示されるように、整数加算部102は、整数小数分離部101から出力された整数aを入力し、入力した整数aに1を加算することにより整数a+1を出力する。図2のs103で示されるように、小数減算部103は、整数小数分離部101から出力された実数bを入力し、入力した実数bを1から減算することにより実数1−bを出力する。
【0027】
iを整数とし、s[i]はi番目の離散信号を示すと共にその信号強度も示すものとすると、図2のs104で示されるように、第1のシフト部104は、外部から出力された離散信号s[i]と整数加算部102から出力された整数a+1とを入力し、入力した離散信号s[i]を、入力した整数a+1に基づいて整数a+1サンプル分だけシフトすることにより、シフト済み離散信号sa+1[i]=s[i+(a+1)]を生成して出力する。図2のs105で示されるように、第2のシフト部105は、外部から出力された離散信号s[i]と整数小数分離部101から出力された整数aとを入力し、入力した離散信号s[i]を、入力した整数aに基づいて整数aサンプル分だけシフトすることにより、シフト済み離散信号sa[i]=s[i+a]を生成して出力する。
【0028】
図2のs106で示されるように、第1の係数乗算部106は、第1のシフト部104から出力されたシフト済み離散信号sa+1[i]と整数小数分離部101から出力された実数bとを入力し、入力したシフト済み離散信号sa+1[i]のサンプル位置iの信号強度sa+1[i]に、入力した実数bに基づいて生成された係数Cf(b)を乗算することにより、重み付け離散信号Cf(b)sa+1[i]を生成して出力する。ここで、Cf(p)はpの積数であり、単調増加関数である。Cf(p)は、例えば、Cf(p)=p(すなわち、Cf(p)は、変数pをそのまま出力する関数)とすることができる。図2のs107で示されるように、第2の係数乗算部107は、第2のシフト部105から出力されたシフト済み離散信号sa[i]と小数減算部103から出力された実数1−bを入力し、シフト済み離散信号sa[i]のサンプル位置iの信号強度sa[i]に、入力した実数1−bに基づいて生成された係数Cf(1−b)を乗算することにより、重み付け離散信号Cf(1−b)sa[i]を生成して出力する。
【0029】
図2のs108で示されるように、合成部108は、第1の係数乗算部106から出力された重み付け離散信号Cf(b)sa+1[i]と第2の係数乗算部107から出力された重み付け離散信号Cf(1−b)sa[i]とを入力して、入力した重み付け離散信号Cf(b)sa+1[i]と重み付け離散信号Cf(1−b)sa[i]とを同一サンプル位置i毎に加算することにより、合成信号s’[i]=Cf(1−b)sa[i]+Cf(b)sa+1[i]を生成して出力する。
【0030】
このようにして生成された合成信号s’[i]=Cf(1−b)sa[i]+Cf(b)sa+1[i]は、実数bの値に応じてsa[i]及びsa+1[i]に加わる重みが変化する。例えば、実数bが0.5よりも小さい場合(b<0.5)、真のシフト信号は、sa[i]よりもsa+1[i]に近いと考えられるので、sa[i]の重みを大きくした方が、合成信号が真のシフト信号に近くなると考えられる。Cf(p)は単調増加関数であるため、sa[i]と積算する重みCf(1−b)は、sa+1[i]と積算する重みCf(b)よりも大きいので、妥当な重み付けが行われていると考えられる。
【0031】
このような合成信号s’[i]を真のシフト信号の予測値として用いることにより、シフト量mがサンプリング周期の整数倍でなくサンプリング周期の実数倍であっても、実数であるシフト量mの整数部分の整数aだけでなく、シフト量mの小数部分の実数bも真のシフト信号の予測値に反映させることが可能となる。これにより、真のシフト信号をより精細に予測することが可能となり、予測値の真のシフト信号からの誤差をより小さくすることができ、離散信号を当該シフト量だけシフトした信号を高精度に生成することができる。さらに、計算が簡単であるため、計算を早くすることができる、プログラム規模を小さくすることができる、低コストの一次元信号シフト装置を実現することができる、等の効果を奏することができる。特に、Cf(p)=pであれば、Cf(p)を算出するために複雑な計算を要しないため、さらに格別な上記効果を奏することができる。
【0032】
また、サンプリング周波数に対してサンプリング前の信号の最高周波数が小さい(例えば1/1000以下)場合は、サンプル間の信号が直線に近くなるため、合成信号Cf(1−b)sa[i]+Cf(b)sa+1[i]の真のシフト信号からの誤差は小さくなる。図6を参照して、この理由を説明する。図6は、横軸をシフト量とし、縦軸を離散信号の信号強度としたグラフである。Tをサンプリング周期とすると、図6において、離散信号の元の信号g(iT+t)が示され、y軸上には、i+a番目及びi+(a+1)番目の離散信号の信号強度sa[i]及びsa+1[i]と、シフト量をmとした場合の元の信号g(iT+t)の真値g(iT+m)と、シフト量mの予測値である合成信号s’[i]とが示されている。
【0033】
図6に示されるように、離散信号s[i]をa+1サンプル分だけシフトした離散信号sa+1[i]及び離散信号s[i]をaサンプル分だけシフトした離散信号sa[i]は、シフト前の離散信号の隣同士の信号の値である。例えば、i=10、m=3.2とすると、前述の(式2)及び(式3)からa=3、b=0.2となり、このときa及びa+1だけシフトした離散信号は、それぞれシフト前の離散信号の13(=10+3)番目と14(=10+3+1)番目というように、隣同士の信号となる。
【0034】
図6において、合成信号s’[i]=Cf(1−b)sa[i]+Cfbsa+1[i]は、x軸のシフト量aTに対応する信号強度sa[i]とx軸のシフト量(a+1)Tに対応する信号強度sa+1[i]とを破線で結んだ「離散信号から予測した信号」の直線で示される。例えば、上記の通り、i=10、m=3.2とし、Cf(p)=pとすると、a=3、b=0.2となるため、予測値は、0.8s13[10]+0.2s14[10]となる。この「離散信号から予測した信号」で示される直線は、サンプリング前の信号g(iT+m)と異なるため、シフト量mの予測値と元の信号をmサンプル分シフトさせた真値との間で予測誤差が生じていることがわかる。
【0035】
しかしながら、サンプリング周波数に対してサンプリング前の信号の最高周波数が小さい(例えば1/1000以下)場合は、sa[i]とsa+1[i]との間でサンプリング前の信号が直線に近くなり、sa[i]とsa+1[i]との間のサンプリング前の信号が「離散信号から予測した信号」の直線に近づく可能性が高くなるため、シフト量mの予測誤差が小さくなる可能性が高くなる。つまり、本発明の方法では、サンプリング周波数が高くなるほど、シフト量mの予測値の誤差が小さくなる可能性が高い。
【0036】
(実施例2)
図3を用いて、本発明の実施例2に係る一次元信号シフト装置の構成を説明する。本実施例2は、図1に示される第1のシフト部104及び第2のシフト部105の構成を、図3に示されるシフト部301の構成としたものである。従って、実施例2に係る一次元信号シフト装置のシフト部301以外の動作は、実施例1に係る一次元信号シフト装置100の動作と同様である。
【0037】
図3には、シフトレジスタ302を有するシフト部301が示されている。シフトレジスタ302は、離散信号s[i]の値を格納するシフト量d以上の数のバッファを備え、シフト量d以上のバッファ量を確保可能に構成されている。ここで、第1のシフト部104のシフトレジスタの場合、シフト量dは整数a+1であり、第2のシフト部105のシフトレジスタの場合、シフト量dは整数aである。
【0038】
シフト部301のシフトレジスタ302は、離散信号s[i]とシフト量dとを入力し、入力した離散信号s[i]の値をシフトレジスタ302の左端のバッファbd-1から格納し、次の離散信号を入力するごとに、離散信号が左端のバッファbd-1へと入力されるタイミングで順次右側のバッファ、すなわちバッファbd-2、bd-3、…、b0へと降順にシフトしていくように離散信号の値を格納していく。バッファb0に離散信号の値が格納された時点、すなわち離散信号の値がd個格納された時点から、左端のバッファbd-1に格納した離散信号の値を出力し、離散信号が左端のバッファbd-1へと入力されるタイミングでバッファbd-2、bd-3、…、b0に格納された離散信号の値を順次出力することにより、dサンプルだけシフトしたシフト済み離散信号sd[i]を出力することができる。
【0039】
(実施例3)
図4を用いて、本発明の実施例3に係る一次元信号シフト装置の構成を説明する。本実施例3は、図1に示される第1のシフト部104及び第2のシフト部105の構成を、図4に示されるシフト部401の構成としたものである。従って、実施例3に係る一次元信号シフト装置のシフト部401以外の動作は、実施例1に係る一次元信号シフト装置100の動作と同様である。
【0040】
実施例3は、離散信号s[d−1]、s[d]、…、s[N−1]となる順番で離散信号s[i]を読み出す方法か、又は離散信号s[d−1]、s[d]、…、s[N−1]、s[0]、s[1]、…、s[d−2]となる順番で離散信号s[i]を読み出す方法で実現される。
【0041】
図4には、メモリ402を有するシフト部401が示されている。メモリ402はN個(Nは離散信号s[i]のデータの数)のバッファb0、b1、…、bd-1、…、bN-2、bN-1を含み、各バッファb0、…、bN-1には、それぞれ、アドレス0からアドレスN−1が付されている。シフト部401は、離散信号s[i]とシフト量d(第1のシフト部104の場合、シフト量dは整数a+1であり、第2のシフト部105の場合、シフト量dは整数aである)とを入力し、アドレス0からアドレスN−1のバッファb0、…、bN-1には、それぞれ、離散信号s[0]、…、s[N−1]の値が格納される。
【0042】
図4(a)は、離散信号s[d−1]、s[d]、…、s[N−1]となる順番で離散信号s[i]を読み出す構成を説明するための図である。図4(a)に示されるように、シフト部401は、入力したシフト量dを用いて、アドレスd−1からアドレスN−1までのバッファbd-1、…、bN-1に格納された離散信号の値s[d−1]、…、s[N−1]を読み出して順次出力する。これにより、離散信号s[d−1]、s[d]、…、s[N−1]となる順番で離散信号s[i]を読み出すことが可能となり、dサンプル分だけシフトしたシフト済み離散信号sd[i]を出力することができる。
【0043】
図4(b)は、離散信号s[d−1]、s[d]、…、s[N−1]、s[0]、s[1]、…、s[d−2]となる順番で離散信号s[i]を読み出す構成を説明するための図である。図4(b)に示されるように、シフト部401は、入力したシフト量dを用いて、アドレスd−1からアドレスN−1までのバッファbd-1、…、bN-1に格納された離散信号の値を読み出し、その後、アドレス0からアドレスd−2までのバッファb0、…、bd-2に格納された離散信号の値を読み出すことにより、バッファbd-1、…、bN-1、b0、…、bd-2の順番で、これらのバッファに格納された離散信号の値を出力する。これにより、離散信号s[d−1]、s[d]、…、s[N−1]、s[0]、s[1]、…、s[d−2]となる順番で離散信号s[i]を読み出すことが可能となり、dサンプル分だけシフトしたシフト済み離散信号sd[i]を出力することができる。
【0044】
(実施例4)
図5を用いて、本発明の実施例4に係る一次元信号シフト装置の構成を説明する。本実施例4は、図1に示される第1のシフト部104及び第2のシフト部105の構成を、図5に示されるシフト部501の構成としたものである。従って、実施例4に係る一次元信号シフト装置のシフト部501以外の動作は、実施例1に係る一次元信号シフト装置100の動作と同様である。
【0045】
図5には、離散フーリエ変換部502と、シフト量換算部503と、周波数毎乗算部504と、離散フーリエ逆変換部505とを備えたシフト部501が示されている。
【0046】
離散フーリエ変換部502は、離散信号s[i]を入力し、入力した離散信号s[i]を以下の(式4)に従って周波数情報f毎に離散フーリエ変換して、離散フーリエ変換信号S[f]を出力する。
【0047】
【数2】

【0048】
ただし、fは離散信号の周波数情報、exp(x)はネーピア数eのx乗を表す関数、jは虚数単位、Nは離散信号の値の数である。
【0049】
シフト量換算部503は、シフト量d(第1のシフト部104の場合、シフト量dは整数a+1であり、第2のシフト部105の場合、シフト量dは整数aである)を入力し、周波数情報f毎にシフト換算量exp(−j・2πfd/N)を算出して出力する。
【0050】
周波数毎乗算部504は、離散フーリエ変換部502から出力された離散フーリエ変換信号S[f]とシフト量換算部503から出力されたシフト換算量exp(−j・2πfd/N)を入力して、入力した離散フーリエ変換信号S[f]とシフト換算量exp(−j・2πfd/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πfd/N)を算出して出力する。
【0051】
離散フーリエ逆変換部505は、周波数毎乗算部504から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πfd/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πfd/N)を以下の(式5)に従って離散フーリエ逆変換することにより、シフト済み離散信号sd[i]を出力する。
【0052】
【数3】

【0053】
このようにして、dサンプル分だけシフトしたシフト済み離散信号sd[i]を出力することができる。
【符号の説明】
【0054】
100 一次元信号シフト装置
101 整数小数分離部
102 整数加算部
103 小数減算部
104 第1のシフト部
105 第2のシフト部
106 第1の係数乗算部
107 第2の係数乗算部
108 合成部
301、401、501 シフト部
302 シフトレジスタ
402 メモリ
502 離散フーリエ変換部
503 シフト量換算部
504 離散フーリエ逆変換部
700 電力測定装置
701 電圧A/D変換部
702 電流A/D変換部
703 シフト装置
704 積和演算部
705 電力量表示部

【特許請求の範囲】
【請求項1】
外部から出力された実数であるシフト量mを入力して、前記シフト量mの整数部分の整数a及び前記シフト量mの小数部分の実数bを算出する整数小数分離部と、
前記整数小数分離部から出力された整数aを入力し、該入力した整数aに1を加算することにより整数a+1を出力する整数加算部と、
前記整数小数分離部から出力された実数bを入力し、該入力した実数bを1から減算することにより実数1−bを出力する小数減算部と、
外部から出力されたi番目の離散信号を示す離散信号s[i]と前記整数加算部から出力された整数a+1とを入力し、該入力した整数a+1に基づいて該入力した離散信号s[i]をa+1サンプル分だけシフトすることにより、シフト済み離散信号sa+1[i]を出力する第1のシフト部と、
外部から出力された前記離散信号s[i]と前記整数小数分離部から出力された整数aとを入力し、該入力した整数aに基づいて該入力した離散信号s[i]をaサンプル分だけシフトすることにより、シフト済み離散信号sa[i]を出力する第2のシフト部と、
前記第1のシフト部から出力された前記シフト済み離散信号sa+1[i]と前記整数小数分離部101から出力された実数bとを入力し、前記シフト済み離散信号sa+1[i]のサンプル位置iの信号強度sa+1[i]に、該入力した実数bに基づいて生成された単調増加関数からなる係数Cf(b)を乗算することにより、重み付け離散信号Cf(b)sa+1[i]を出力する第1の係数乗算部と、
前記第2のシフト部から出力されたシフト済み離散信号sa[i]と前記小数減算部から出力された実数1−bを入力し、前記シフト済み離散信号sa[i]のサンプル位置iの信号強度sa[i]に、該入力した実数1−bに基づいて生成された単調増加関数からなる係数Cf(1−b)を乗算することにより、重み付け離散信号Cf(1−b)sa[i]を出力する第2の係数乗算部と、
前記第1の係数乗算部から出力された重み付け離散信号Cf(b)sa+1[i]と前記第2の係数乗算部から出力された重み付け離散信号Cf(1−b)sa[i]とを入力して、該入力した重み付け離散信号Cf(b)sa+1[i]と該入力した重み付け離散信号Cf(1−b)sa[i]とを同一サンプル位置i毎に加算することにより、合成信号Cf(1−b)sa[i]+Cf(b)sa+1[i]を出力する合成部と
を備えることを特徴とする一次元信号シフト装置。
【請求項2】
前記第1のシフト部は、離散信号s[i]の値を格納するためのa+1個以上のバッファを備える第1のシフトレジスタを備え、前記第2のシフト部は、離散信号s[i]の値を格納するためのa個以上のバッファを備える第2のシフトレジスタを備え、
前記第1のシフトレジスタは、前記入力した離散信号の値を左端のバッファbaから格納し、離散信号が前記左端のバッファbaへと入力されるタイミングで順次右側のバッファba-1、ba-2、…、b0へと降順に前記入力した離散信号の値を格納し、前記入力した整数a+1個分だけ離散信号を格納した時点から、前記左端のバッファbaに格納した離散信号の値を出力して、離散信号が前記左端のバッファbaへと入力されるタイミングで順次右側のバッファba-1、ba-2、…、b0に格納された離散値を出力し、
前記第2のシフトレジスタは、前記入力した離散信号の値を左端のバッファba-1から格納し、前記入力した離散信号の値が前記左端のバッファba-1へと入力されるタイミングで順次右側のバッファba-2、ba-3、…、b0へと降順に前記入力した離散信号の値を格納し、前記入力した整数a個分だけ離散信号を格納した時点から、前記左端のバッファba-1に格納した離散信号の値を出力して、離散信号が前記左端のバッファba-1へと入力されるタイミングで順次右側のバッファba-2、ba-3、…、b0に格納された離散値を出力することを特徴とする請求項1に記載の一次元信号シフト装置。
【請求項3】
前記第1のシフト部及び前記第2のシフト部は、離散信号s[i]のデータの数であるN個のバッファb0、b1、…、bN-2、bN-1を含むメモリを備え、前記バッファの各々は、それぞれ、アドレス0からアドレスN−1が付され、該アドレス0からアドレスN−1が付されたバッファb0、…、bN-1の各々は、それぞれ、離散信号s[0]、…、s[N−1]の値を格納し、
前記第1のシフト部の前記メモリは、前記入力した整数a+1を用いて、アドレスaからアドレスN−1までのバッファba、…、bN-1に格納された離散信号の値s[a]、…、s[N−1]を読み出して順次出力し、前記第2のシフト部の前記メモリは、前記入力した整数aを用いて、アドレスaからアドレスN−1までのバッファba-1、…、bN-1に格納された離散信号の値s[a−1]、…、s[N−1]を読み出して順次出力するか、又は
前記第1のシフト部の前記メモリは、前記入力した整数a+1を用いて、離散信号s[a]、s[a+1]、…、s[N−1]、s[0]、s[1]、…、s[a−1]となる順番で離散信号を読み出して出力し、前記第2のシフト部の前記メモリは、前記入力した整数aを用いて、離散信号s[a−1]、s[a]、…、s[N−1]、s[0]、s[1]、…、s[a−2]となる順番で離散信号を読み出して出力することを特徴とする請求項1に記載の一次元信号シフト装置。
【請求項4】
前記第1のシフト部は、第1の離散フーリエ変換部と、第1のシフト量換算部と、第1の周波数毎乗算部と、第1の離散フーリエ逆変換部とを備え、前記第2のシフト部は、第2の離散フーリエ変換部と、第2のシフト量換算部と、第2の周波数毎乗算部と、第2の離散フーリエ逆変換部とを備え、
前記第1の離散フーリエ変換部及び前記第2の離散フーリエ変換部は、離散信号s[i]を入力し、入力した離散信号s[i]を周波数情報f毎に離散フーリエ変換して、離散フーリエ変換信号S[f]を出力し、
前記第1のシフト量換算部は、前記入力した整数a+1に基づいて、周波数情報f毎にシフト換算量exp(−j・2πf(a+1)/N)を出力し、
前記第2のシフト量換算部は、前記入力した整数aに基づいて、周波数情報f毎にシフト換算量exp(−j・2πfa/N)を出力し、
前記第1の周波数毎乗算部は、前記第1の離散フーリエ変換部から出力された離散フーリエ変換信号S[f]と前記第1のシフト量換算部から出力されたシフト換算量exp(−j・2πf(a+1)/N)を入力して、該入力した離散フーリエ変換信号S[f]と該入力したシフト換算量exp(−j・2πf(a+1)/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を出力し、
前記第2の周波数毎乗算部は、前記第2の離散フーリエ変換部から出力された離散フーリエ変換信号S[f]と前記第2のシフト量換算部から出力されたシフト換算量exp(−j・2πfa/N)を入力して、該入力した離散フーリエ変換信号S[f]と該入力したシフト換算量exp(−j・2πfa/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を出力し、
前記第1の離散フーリエ逆変換部は、前記第1の周波数毎乗算部から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を離散フーリエ逆変換することにより、シフト済み離散信号sa+1[i]を出力し、
前記第2の離散フーリエ逆変換部は、前記第2の周波数毎乗算部から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を離散フーリエ逆変換することにより、シフト済み離散信号sa[i]を出力することを特徴とする請求項1に記載の一次元信号シフト装置。
【請求項5】
前記係数Cf(b)=bであり、前記係数Cf(1−b)=1−bであることを特徴とする請求項1から4のいずれかに記載の一次元信号シフト装置。
【請求項6】
整数小数分離部が、外部から出力された実数であるシフト量mを入力して、前記シフト量mの整数部分の整数a及び前記シフト量mの小数部分の実数bを算出するステップと、
整数加算部が、前記整数小数分離部から出力された整数aを入力し、該入力した整数aに1を加算することにより整数a+1を出力するステップと、
小数減算部が、前記整数小数分離部から出力された実数bを入力し、該入力した実数bを1から減算することにより実数1−bを出力するステップと、
第1のシフト部が、外部から出力されたi番目の離散信号を示す離散信号s[i]と前記整数加算部から出力された整数a+1とを入力し、該入力した整数a+1に基づいて該入力した離散信号s[i]をa+1サンプル分だけシフトすることにより、シフト済み離散信号sa+1[i]を出力するステップと、
第2のシフト部が、外部から出力された前記離散信号s[i]と前記整数小数分離部から出力された整数aとを入力し、該入力した整数aに基づいて該入力した離散信号s[i]をaサンプル分だけシフトすることにより、シフト済み離散信号sa[i]を出力するステップと、
第1の係数乗算部が、前記第1のシフト部から出力された前記シフト済み離散信号sa+1[i]と前記整数小数分離部101から出力された実数bとを入力し、前記シフト済み離散信号sa+1[i]のサンプル位置iの信号強度sa+1[i]に、該入力した実数bに基づいて生成された単調増加関数からなる係数Cf(b)を乗算することにより、重み付け離散信号Cf(b)sa+1[i]を出力するステップと、
第2の係数乗算部が、前記第2のシフト部から出力されたシフト済み離散信号sa[i]と前記小数減算部から出力された実数1−bを入力し、前記シフト済み離散信号sa[i]のサンプル位置iの信号強度sa[i]に、該入力した実数1−bに基づいて生成された単調増加関数からなる係数Cf(1−b)を乗算することにより、重み付け離散信号Cf(1−b)sa[i]を出力するステップと、
合成部が、前記第1の係数乗算部から出力された重み付け離散信号Cf(b)sa+1[i]と前記第2の係数乗算部から出力された重み付け離散信号Cf(1−b)sa[i]とを入力して、該入力した重み付け離散信号Cf(b)sa+1[i]と該入力した重み付け離散信号Cf(1−b)sa[i]とを同一サンプル位置i毎に加算することにより、合成信号Cf(1−b)sa[i]+Cf(b)sa+1[i]を出力するステップと
を備えることを特徴とする方法。
【請求項7】
前記第1のシフト部は、離散信号s[i]の値を格納するためのa+1個以上のバッファを備える第1のシフトレジスタを備え、前記第2のシフト部は、離散信号s[i]の値を格納するためのa個以上のバッファを備える第2のシフトレジスタを備え、
前記シフト済み離散信号sa+1[i]を出力するステップは、
前記第1のシフトレジスタが、前記入力した離散信号の値を左端のバッファbaから格納し、離散信号が前記左端のバッファbaへと入力されるタイミングで順次右側のバッファba-1、ba-2、…、b0へと降順に前記入力した離散信号の値を格納し、前記入力した整数a+1個分だけ離散信号を格納した時点から、前記左端のバッファbaに格納した離散信号の値を出力して、離散信号が前記左端のバッファbaへと入力されるタイミングで順次右側のバッファba-1、ba-2、…、b0に格納された離散値を出力するステップを含み、
前記シフト済み離散信号sa[i]を出力するステップは、
前記第2のシフトレジスタが、前記入力した離散信号の値を左端のバッファba-1から格納し、前記入力した離散信号の値が前記左端のバッファba-1へと入力されるタイミングで順次右側のバッファba-2、ba-3、…、b0へと降順に前記入力した離散信号の値を格納し、前記入力した整数a個分だけ離散信号を格納した時点から、前記左端のバッファba-1に格納した離散信号の値を出力して、離散信号が前記左端のバッファba-1へと入力されるタイミングで順次右側のバッファba-2、ba-3、…、b0に格納された離散値を出力するステップを含むことを特徴とする請求項6に記載の方法。
【請求項8】
前記第1のシフト部及び前記第2のシフト部は、離散信号s[i]のデータの数であるN個のバッファb0、b1、…、bN-2、bN-1を含むメモリを備え、前記バッファの各々は、それぞれ、アドレス0からアドレスN−1が付され、該アドレス0からアドレスN−1が付されたバッファb0、…、bN-1の各々は、それぞれ、離散信号s[0]、…、s[N−1]の値を格納し、
前記シフト済み離散信号sa+1[i]を出力するステップは、前記第1のシフト部の前記メモリが、前記入力した整数a+1を用いて、アドレスaからアドレスN−1までのバッファba、…、bN-1に格納された離散信号の値s[a]、…、s[N−1]を読み出して順次出力するステップを含み、前記シフト済み離散信号sa[i]を出力するステップは、前記第2のシフト部の前記メモリが、前記入力した整数aを用いて、アドレスaからアドレスN−1までのバッファba-1、…、bN-1に格納された離散信号の値s[a−1]、…、s[N−1]を読み出して順次出力するステップを含むか、又は
前記シフト済み離散信号sa+1[i]を出力するステップは、前記第1のシフト部の前記メモリが、前記入力した整数a+1を用いて、離散信号s[a]、s[a+1]、…、s[N−1]、s[0]、s[1]、…、s[a−1]となる順番で離散信号を読み出して出力するステップを含み、前記シフト済み離散信号sa[i]を出力するステップは、前記第2のシフト部の前記メモリが、前記入力した整数aを用いて、離散信号s[a−1]、s[a]、…、s[N−1]、s[0]、s[1]、…、s[a−2]となる順番で離散信号を読み出して出力するステップを含むことを特徴とする請求項6に記載の方法。
【請求項9】
前記第1のシフト部は、第1の離散フーリエ変換部と、第1のシフト量換算部と、第1の周波数毎乗算部と、第1の離散フーリエ逆変換部とを備え、前記第2のシフト部は、第2の離散フーリエ変換部と、第2のシフト量換算部と、第2の周波数毎乗算部と、第2の離散フーリエ逆変換部とを備え、
前記シフト済み離散信号sa+1[i]を出力するステップは、
前記第1の離散フーリエ変換部が、離散信号s[i]を入力し、入力した離散信号s[i]を周波数情報f毎に離散フーリエ変換して、離散フーリエ変換信号S[f]を出力ステップと、
前記第1のシフト量換算部が、前記入力した整数a+1に基づいて、周波数情報f毎にシフト換算量exp(−j・2πf(a+1)/N)を出力ステップと、
前記第1の周波数毎乗算部が、前記第1の離散フーリエ変換部から出力された離散フーリエ変換信号S[f]と前記第1のシフト量換算部から出力されたシフト換算量exp(−j・2πf(a+1)/N)を入力して、該入力した離散フーリエ変換信号S[f]と該入力したシフト換算量exp(−j・2πf(a+1)/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を出力するステップと、
前記第1の離散フーリエ逆変換部が、前記第1の周波数毎乗算部から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πf(a+1)/N)を離散フーリエ逆変換することにより、シフト済み離散信号sa+1[i]を出力するステップとを含み、
前記シフト済み離散信号sa[i]を出力するステップは、
前記第2の離散フーリエ変換部が、離散信号s[i]を入力し、入力した離散信号s[i]を周波数情報f毎に離散フーリエ変換して、離散フーリエ変換信号S[f]を出力するステップと、
前記第2のシフト量換算部が、前記入力した整数aに基づいて、周波数情報f毎にシフト換算量exp(−j・2πfa/N)を出力するステップと、
前記第2の周波数毎乗算部が、前記第2の離散フーリエ変換部から出力された離散フーリエ変換信号S[f]と前記第2のシフト量換算部から出力されたシフト換算量exp(−j・2πfa/N)を入力して、該入力した離散フーリエ変換信号S[f]と該入力したシフト換算量exp(−j・2πfa/N)とを周波数情報f毎に乗算することにより、シフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を出力するステップと、
前記第2の離散フーリエ逆変換部が、前記第2の周波数毎乗算部から出力されたシフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を周波数情報f毎に入力し、周波数情報f毎に入力した全てのシフト済み離散フーリエ変換信号S[f]exp(−j・2πfa/N)を離散フーリエ逆変換することにより、シフト済み離散信号sa[i]を出力するステップと
を含むことを特徴とする請求項6に記載の方法。
【請求項10】
前記係数Cf(b)=bであり、前記係数Cf(1−b)=1−bであることを特徴とする請求項6から9のいずれかに記載の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−247275(P2012−247275A)
【公開日】平成24年12月13日(2012.12.13)
【国際特許分類】
【出願番号】特願2011−118510(P2011−118510)
【出願日】平成23年5月26日(2011.5.26)
【出願人】(000004226)日本電信電話株式会社 (13,992)