説明

信号処理方法ならびにデータ処理の方法および装置

信号処理方法、データ処理方法および装置が開示される。時間領域から周波数領域への信号処理方法は、時間領域データを前処理する段階と、前処理されたデータを回転因子


を使用して前回転する段階と、前回転データに対してN/4点の離散フーリエ変換(DFT)を実行する段階と、DFTによって変換されたデータを回転因子


を使用して後回転し、周波数領域データを取得する段階とを含む。周波数領域から時間領域への信号処理方法は、周波数領域データにひねりを施す段階と、ひねりを施したデータを回転因子


を使用して前回転する段階と、前回転データに対してN/4点のDFTを実行する段階と、DFTによって変換されたデータを回転因子


を使用して後回転する段階と、後回転データを後処理して、時間領域データを取得する段階とを含む。本発明は信号処理の効率を高める。

【発明の詳細な説明】
【技術分野】
【0001】
本出願は、参照により本明細書に組み込まれている、2009年6月24日に中国特許庁に出願した中国特許出願第200910150720.5号、名称「Signal Processing Method and Data Processing Method and Apparatus」の優先権を主張するものである。
【0002】
本発明は、デジタル信号処理技術に関するものであり、特に、信号処理方法ならびにデータ処理の方法および装置に関するものである。
【背景技術】
【0003】
フーリエ変換、離散コサイン変換(DCT)、および離散サイン変換(DST)などの直交変換は、デジタル信号処理、特に、スペクトル分析、画像符号化、および音声符号化において広く使用されている。
【0004】
DCTは、空間変換であり、DCTベースの符号化システムが適切な圧縮性能を備えるように強いエネルギー集中特性を有する。
【0005】
修正離散コサイン変換(MDCT)は、DCTベースの改良された変換である。MDCTは、連続するブロック間のブロッキング効果を回避するように設計されている。これは、広帯域および超広帯域デジタルオーディオ符号化において重要な役割を果たす。
【0006】
変換公式に従って順MDCT(forward MDCT)および逆MDCT(inverse MDCT)を直接適用すると、計算複雑度が高まる。特に、点の数が多い場合には、計算複雑度が高くなるためMDCTをリアルタイムで実行することはできない。MDCTはリアルタイム通信および特にオーディオ符号化において広く応用されるため、高速MDCT法の実現が急務となっている。高速MDCTの実現のために従来技術においてよく使用される方法は、高速フーリエ変換(FFT)に基づくものである。
【0007】
N点の広く使用されているFFTベースの高速MDCTとして、N/2点FFTに基づく高速MDCTおよびN/4点FFTに基づく高速MDCTが挙げられる。
【0008】
従来技術の研究および実践において、以下の弱点が見つかっている。
【0009】
N/4点FFTに基づく高速MDCTアルゴリズムを適用する場合、前回転処理(pre-rotation processing)および後回転処理(post-rotation processing)は、少なくともN/4点のコサイン値およびN/4点のサイン値、合わせてN/2個の値を記憶する必要がする。前回転ステップと後回転ステップが非対称的である場合、N個の値を記憶する必要がある。Nが大きい場合、追加ストレージの容量が大きくなり、したがって、多くのストレージリソースが消費され、変換効率が影響を受ける。
【0010】
互いに素な因数に基づく高速フーリエ変換アルゴリズムが採用された場合、多数のアドレッシング演算が必要になり、このアルゴリズムは、データ列のシーケンシャルアクセスを考慮しない。変換を通して得られたデータは、最終的な出力データを得るために再配列する必要がある。したがって、計算量がさらに多くなる。
【発明の概要】
【課題を解決するための手段】
【0011】
本発明の実施形態は、信号処理の効率の改善を支援するための信号処理方法ならびにデータ処理の方法および装置を実現する。
【0012】
時間領域から周波数領域への信号処理方法は、
時間領域データを前処理するステップと、
前処理されたデータを、回転因子
【0013】
【数1】

【0014】
を使用することによって前回転するステップと、
前回転データに対してN/4点の離散フーリエ変換(DFT)を実行するステップと、
DFTによって変換されたデータを、回転因子
【0015】
【数2】

【0016】
を使用することによって後回転し、周波数領域データを取得するステップとを含み、
式中、aおよびbは定数であり、Nは時間領域データの長さであり、
【0017】
【数3】

【0018】
【数4】

【0019】
【数5】

【0020】
であり、nおよびkはそれぞれすべてN/4以下の非負整数である。
【0021】
周波数領域から時間領域への信号処理方法は、
周波数領域データにひねりを施す(twiddling)ステップと、
ひねりを施したデータを、回転因子
【0022】
【数6】

【0023】
を使用することによって前回転するステップと、
前回転データに対してN/4点のDFTを実行するステップと、
DFTによって変換されたデータを、回転因子
【0024】
【数7】

【0025】
を使用することによって後回転するステップと、
後回転データを後処理して、時間領域データを取得するステップとを含み、
式中、cおよびdは定数であり、Nは周波数領域データの倍長であり、
【0026】
【数8】

【0027】
【数9】

【0028】
【数10】

【0029】
であり、nおよびkはそれぞれすべてN/4以下の非負整数である。
【0030】
データ処理方法は、
アドレステーブルに基づきQ回にわたってデータに対しP点DFTを実行するステップと、
アドレステーブルに基づきP回にわたってQ回にわたってP点DFTを実行した後に得られたデータに対してQ点DFTを実行するステップとを含む。
【0031】
時間領域から周波数領域への信号処理装置は、
時間領域データを前処理するように適合された前処理ユニットと、
回転因子
【0032】
【数11】

【0033】
を使用することによって、前処理ユニットにより得られたデータを前回転するように適合された第1の前回転ユニットと、
第1の前回転ユニットによって処理されたデータに対してN/4点のDFTを実行するように適合された第1のフーリエ変換ユニットと、
回転因子
【0034】
【数12】

【0035】
を使用することによって第1のフーリエ変換ユニットにより変換されたデータを後回転して周波数領域データを取得するように適合された第1の後回転ユニットとを備え、式中、
【0036】
【数13】

【0037】
【数14】

【0038】
であり、nおよびkはそれぞれすべてN/4以下の非負整数である。
【0039】
周波数領域から時間領域への信号処理装置は、
周波数領域データにひねりを施すように適合されたひねり処理ユニット(twiddling unit)と、
回転因子
【0040】
【数15】

【0041】
を使用することによって、ひねり処理ユニットにより得られたデータを前回転するように適合された第2の前回転ユニットと、
第2の前回転ユニットによって処理されたデータに対してN/4点のDFTを実行するように適合された第2のフーリエ変換ユニットと、
回転因子
【0042】
【数16】

【0043】
を使用することによって、第2のフーリエ変換ユニットにより得られたデータを後回転するように適合された第3の後回転ユニットと、
第3の後回転ユニットによって処理されたデータを後処理して時間領域データを取得するように適合された後処理ユニットとを備え、式中、
【0044】
【数17】

【0045】
【数18】

【0046】
であり、nおよびkはそれぞれすべてN/4以下の非負整数である。
【0047】
データ処理装置は、
アドレステーブルを作成するか、または格納するように適合されたアドレステーブルユニットと、
アドレステーブルユニットによって作成されるか、または格納されているアドレステーブルに基づきQ回にわたってデータに対しP点DFTを実行するように適合された第5の変換ユニットと、
アドレステーブルユニットによって作成されるか、または格納されているアドレステーブルに基づきP回にわたって第5の変換ユニットによって変換されたデータに対しQ点DFTを実行するように適合された第6の変換ユニットとを備える。
【0048】
上記の技術的解決策では、本発明の実施形態において提供される信号処理方法によって採用されている回転因子は、定数と
【0049】
【数19】

【0050】
との積である。因子
【0051】
【数20】

【0052】
は対称であるため、前回転および後回転を完了させるためにN/4点のデータテーブルを記憶するだけでよい。従来技術に比べて、本発明の実施形態において提供される信号処理方法は、記憶容量を低減し、ストレージリソースの消費を減らし、変換効率を高める。さらに、本発明の実施形態の信号処理方法では後回転を実行するときに正規化因子が不要になるため、関係する処理ステップなしで済ませられ、したがって変換効率がさらに改善される。
【0053】
本発明または従来技術の技術的な解決策をわかりやすく説明するために、本発明または従来技術の実施形態の説明において必要な図面について簡単に説明する。後述の図面は、本発明の一部の実施形態のみであることは明らかである。当業者であれば、創造的な作業を行うことなくこれらの図面に基づいて他の図面を得ることができる。
【図面の簡単な説明】
【0054】
【図1】本発明の第1の実施形態における時間領域から周波数領域への信号処理方法の流れ図である。
【図2】本発明の一実施形態におけるFFTの演算に対しアドレステーブルを採用するデータ処理方法の流れ図である。
【図3】本発明の第2の実施形態における周波数領域から時間領域への信号処理方法の流れ図である。
【図4】本発明の第3の実施形態における時間領域から周波数領域への信号処理方法の流れ図である。
【図5】本発明の第4の実施形態における周波数領域から時間領域への信号処理方法の流れ図である。
【図6】本発明の第5の実施形態における時間領域から周波数領域への信号処理方法の流れ図である。
【図7】本発明の第6の実施形態における周波数領域から時間領域への信号処理方法の流れ図である。
【図8】本発明の一実施形態における時間領域から周波数領域への信号処理装置の構造を示す図である。
【図9】本発明の一実施形態における周波数領域から時間領域への信号処理装置の構造を示す図である。
【図10】本発明の一実施形態におけるデータ処理装置の構造を示す図である。
【発明を実施するための形態】
【0055】
本発明の技術的解決策は、以下で付属の図面を参照しつつ詳細に説明される。これらの実施形態は例示的なものにすぎず、本発明は、そのような実施形態に限定されないことは明らかである。本発明の実施形態に基づいて当業者が構成する他の実施形態も、本発明の保護の範囲内に入る。
【0056】
本発明の実施形態は、信号処理の効率の改善を支援するための信号処理方法ならびにデータ処理の方法および装置を実現する。
【0057】
従来技術では、N/4点のFFTに基づく高速MDCTを実現するために、最初にN点のデータに窓関数を掛け、ひねりを施し、前回転して、N点のMDCTをN/4点のFFTに変える。FFT演算で得られたデータを後回転して、最終的なMDCT係数を得る。
【0058】
MDCTの定義は
【0059】
【数21】

【0060】
であり、式中、Aは正規化因子であり、定数である。
【0061】
MDCTの定義によれば、
【0062】
【数22】

【0063】
【数23】

【0064】
が得られるが、式中、
【0065】
【数24】

【0066】
である。
【0067】
これら2つの式を組み合わせて、
【0068】
【数25】

【0069】
を得ることができる。
【0070】
次いで、N/4点FFTに基づく順MDCTは以下のステップを含む。
【0071】
1.窓関数を掛ける:
yn=hnxn n=0,...,N-1
hnは、完全な再構成条件を満たす窓関数であるが、必ずしも対称窓ではない。つまり、解析および合成では、解析窓および合成窓が一緒になって完全な再構成を行える限り、異なる窓を使用することができる。xnは入力データである。通常、x0-N/2-1はキャッシュされている前のフレームのデータであり、xN/2-N-1は現在のフレームのデータである。
【0072】
2.ひねりを施す:
un=(Z2n+jzN/2-1-2n) n=0,...,N/4-1
式中、
【0073】
【数26】

【0074】
または
【0075】
【数27】

【0076】
である。
【0077】
3.回転因子
【0078】
【数28】

【0079】
を使用することによってunを前回転する。
【0080】
4.回転データに対してN/4点FFTを実行する。
【0081】
5.回転因子
【0082】
【数29】

【0083】
および正規化因子Aを使用することによって変換データを後回転する。
【0084】
6.後回転を通じて得られる複素数の実部はX2kであり、これはMDCTスペクトルの奇数周波数を表し、虚部は-Xn/2-1-2kであり、これはMDCTスペクトルの偶数周波数を表す。
【0085】
回転因子
【0086】
【数30】

【0087】
は、
【0088】
【数31】

【0089】
に展開することができる。
【0090】
回転因子
【0091】
【数32】

【0092】
および
【0093】
【数33】

【0094】
は、前回転および後回転の処理に必要であるため、少なくともN/4点のコサイン値およびN/4点のサイン値、合わせてN/2個の値を記憶する必要がある。前回転ステップと後回転ステップが非対称的である場合、N個の値を記憶する必要がある。Nが大きい場合、追加ストレージの容量が大きくなり、したがって、多くのストレージリソースが消費され、変換効率が影響を受ける。
【0095】
本発明の一実施形態において提供される時間領域から周波数領域への信号処理方法は、以下のステップを含む。
【0096】
1.時間領域データを前処理する。
【0097】
2.前処理されたデータを、回転因子
【0098】
【数34】

【0099】
を使用することによって前回転する。
【0100】
3.前回転データに対してN/4点のDFTを実行する。
【0101】
4.DFTの後のデータを、回転因子
【0102】
【数35】

【0103】
を使用することによって後回転し、周波数領域データを取得する。
式中、aおよびbは定数であり、Nは時間領域データの長さであり、n=0,...,N/4-1、k=0,...,N/4-1、および
【0104】
【数36】

【0105】
である。
【0106】
前回転の前のデータに対するすべての処理は、前処理として説明できる。この実施形態では、例えば、前処理は、窓関数を掛けてひねりを施すステップまたはひねりを施すステップのみとしてよい。
【0107】
本発明の一実施形態において提供される周波数領域から時間領域への信号処理方法は、以下のステップを含む。
【0108】
1.周波数領域データにひねりを施す。
【0109】
2.ひねりを施されたデータを、回転因子
【0110】
【数37】

【0111】
を使用することによって前回転する。
【0112】
3.前回転データに対してN/4点のDFTを実行する。
【0113】
4.DFTの後のデータを、回転因子
【0114】
【数38】

【0115】
を使用することによって後回転する。
【0116】
5.後回転データを後処理して、時間領域データを取得する。
式中、cおよびdは定数であり、Nは周波数領域データの長さの2倍であり、n=0,...,N/4-1、k=0,...,N/4-1、および
【0117】
【数39】

【0118】
である。
【0119】
後回転の後のデータに対するすべての処理は、後処理として説明できる。後処理の内容は、対応する時間領域から周波数領域への信号処理方法における前処理の内容に依存する。この実施形態では、例えば、前処理が窓関数を掛けてひねりを施すステップである場合、後処理も窓関数を掛けてひねりを施すステップであり、前処理がひねりを施すステップだけである場合、後処理もひねりを施すステップだけである。
【0120】
時間領域から周波数領域への信号処理は、順変換とも称され、周波数領域から時間領域への信号処理は、逆変換とも称されうる。順変換と逆変換においてa×b×c×d=4/Nである場合、順変換の出力データを逆変換の入力データとして使用すると、逆変換の結果が順変換の前のデータを復元できるため、完全な再構成を行うことができる。実際、完全な再構成は必ずしも必要でない。
【0121】
本発明の一実施形態において提供される信号処理方法によって採用される回転因子における
【0122】
【数40】

【0123】
は、
【0124】
【数41】

【0125】
に展開することができ、
式中、
【0126】
【数42】

【0127】
【数43】

【0128】
である。
【0129】

【0130】
【数44】

【0131】
から、n+(N/4-1-n)=N/4-1であることがわかり、n=0,...,N/4-1およびk=0,...,N/4-1に対して、(n=0のときの)
【0132】
【数45】

【0133】
の第1の値は、(n=N/4-1のときの)
【0134】
【数46】

【0135】
の最後の値に等しい。(n=1のときの)
【0136】
【数47】

【0137】
の第2の値は、(n=N/4-2のときの)
【0138】
【数48】

【0139】
の最後から2番目の値に等しく、以下同様である。
【0140】
したがって、
【0141】
【数49】

【0142】
は、対称的である。前回転および後回転を完了させるために、
【0143】
【数50】

【0144】
または
【0145】
【数51】

【0146】
のN/4点データテーブルを記憶するだけでよい。
【0147】
従来のMDCTにおいて、MDCTのスペクトル係数を得るために、回転因子
【0148】
【数52】

【0149】
および
【0150】
【数53】

【0151】
を使用する必要があり、また
【0152】
【数54】

【0153】
および
【0154】
【数55】

【0155】
は対称的でない。したがって、前回転および後回転において少なくともN/4点のコサイン値およびN/4点のサイン値を記憶する必要がある。本発明の実施形態において提供される信号処理方法によって採用されている回転因子は、定数と
【0156】
【数56】

【0157】
との積である。因子
【0158】
【数57】

【0159】
は対称であるため、前回転および後回転を完了させるためにN/4点のデータテーブルを記憶するだけでよい。従来技術に比べて、本発明の実施形態の信号処理方法は、記憶容量を著しく低減し、ストレージリソースの消費を減らし、変換効率を高める。さらに、本発明の実施形態の信号処理方法では正規化因子が不要になるため、関係する処理ステップなしで済ませられ、したがって変換効率がさらに改善される。
【0160】
本発明の信号処理方法の例示的な実施形態について説明する。図1は、本発明の第1の実施形態における時間領域から周波数領域への信号処理方法の流れ図である。この方法は、以下のステップを含む。
【0161】
101.時間領域データを前処理する。
【0162】
このステップでは、前処理は、窓関数を掛け、ひねりを施すステップを含む。実際には、他の前処理手段も使用される場合がある。
【0163】
時間領域データxnは入力データであると仮定する。通常、x0-N/2-1はキャッシュされている前のフレームデータであり、xN/2-N-1は現在のフレームデータである。Nは時間領域データの長さであり、この実施形態では、1280としてよい。最初にデータに窓関数を掛ける。
yn=hnxn n=0,...,N-1、
hnは、完全な再構成条件を満たす窓関数であり、解析窓関数と称されうる。逆変換で使用される窓関数は、合成窓関数と称されうる。解析窓関数は、解析窓関数と合成窓関数とが完全な再構成を一緒に行える限り合成窓関数と異なっていてもよい。窓関数を掛けたデータはひねりを施され、ひねりを施されたデータun
un=(z2n+jzN/2-1-2n) n=0,...,N/4-1
を満たすが、
式中、
【0164】
【数58】

【0165】
または
【0166】
【数59】

【0167】
である。
【0168】
102.前処理されたデータを、回転因子
【0169】
【数60】

【0170】
を使用することによって前回転する。
【0171】
ひねりを施されたデータunは、回転因子
【0172】
【数61】

【0173】
n=0,...,N/4-1を使用することによって前回転され、式中、
【0174】
【数62】

【0175】
であり、aは定数である。
【0176】
回転の後得られるデータは、
【0177】
【数63】

【0178】
である。
【0179】
この実施形態では、定数は
【0180】
【数64】

【0181】
とすることができる。回転因子中の
【0182】
【数65】

【0183】
は、
【0184】
【数66】

【0185】
の形式で表すことができ、これは
【0186】
【数67】

【0187】
および
【0188】
【数68】

【0189】
満たすので、N/4点のサインもしくはコサインデータテーブルのみが、この方法の態様において必要である。この実施形態では、N/4点のみのデータテーブルが記憶される。データテーブル内の値は、
【0190】
【数69】

【0191】
n=0,...,319で表される。
【0192】
103.前回転データに対してN/4点のDFTを実行する。
【0193】
このステップでは、N/4点のふつうのDFTが使用されるか、または他のN/4点FFTが使用されうる。
【0194】
さらに、ステップ103では、アドレステーブルに基づくFFTは、M=N/4=P×Qのときに使用することができ、PおよびQは正整数であり、PおよびQは互いに素な数であり、アドレステーブルの長さはMである。
【0195】
図2は、本発明の一実施形態におけるFFTに対しアドレステーブルを採用するデータ処理方法の流れ図である。この方法は、以下のステップを含む。
【0196】
1031.アドレステーブルIを作成する。アドレステーブルIは
I=<K1×n1+K2×n2>M n1=0,...,P-1
n2=0,...,Q-1
を満たす。
【0197】
K1およびK2は、<K1K2>M=0を満たす互いに素な正整数であるが、ただし、K1K2=Zおよび<Z>Mは法Mに関するZの剰余を意味し、ZをMで割った余りである。このステップは、より早い段階に実行されうるか、またはステップ101または102との順次的関係を持たない。つまり、アドレステーブルIは、予め計算され格納されうる。データの順序関係を決定するために、アドレステーブルIに格納されているアドレスは0,1,...,M-1と横断して、入力データとの1対1マッピングを形成する必要がある。アドレステーブルIが1対1マッピングの条件を満たす場合、以下の3つの条件が満たされる必要がある。
【0198】
(1)K1はQの正整数倍であり、および/またはK2はPの正整数倍である。
【0199】
(2)K1およびPは、互いに素な数である。
【0200】
(3)K2およびQは、互いに素な数である。
【0201】
P=64、Q=5、K1=65、K2=256、およびM=N/4=320と仮定すると、アドレステーブルIは、
I=<65n1+256n2>320
で表すことができ、
式中、n1=0,...,63およびn2=0,...,4である。
【0202】
アドレステーブルIは、I[n2×n1]の一次元配列またはI[n1][n2]の二次元配列などの配列の形式で1つのテーブルに格納することができる。
【0203】
アドレステーブルIがM=320点のアドレステーブルであり、K1=65、K2=256、Q=5、P=64、およびQ×P=5×64点と仮定すると、アドレステーブルIがI[n2×n1]の一次元配列として格納される場合、
Idx[Q×P]=
{0,65,130,195,260,5,70,135,200,265,10,75,140,205,270,15,80,145,210,275,20,85,150,215,280,25,90,155,220,285,30,95,160,225,290,35,100,165,230,295,40,105,170,235,300,45,110,175,240,305,50,115,180,245,310,55,120,185,250,315,60,125,190,255,
256,1,66,131,196,261,6,71,136,201,266,11,76,141,206,271,16,81,146,211,276,21,86,151,216,281,26,91,156,221,286,31,96,161,226,291,36,101,166,231,296,41,106,171,236,301,46,111,176,241,306,51,116,181,246,311,56,121,186,251,316,61,126,191,
192,257,2,67,132,197,262,7,72,137,202,267,12,77,142,207,272,17,82,147,212,277,22,87,152,217,282,27,92,157,222,287,32,97,162,227,292,37,102,167,232,297,42,107,172,237,302,47,112,177,242,307,52,117,182,247,312,57,122,187,252,317,62,127,
128,193,258,3,68,133,198,263,8,73,138,203,268,13,78,143,208,273,18,83,148,213,278,23,88,153,218,283,28,93,158,223,288,33,98,163,228,293,38,103,168,233,298,43,108,173,238,303,48,113,178,243,308,53,118,183,248,313,58,123,188,253,318,63,
64,129,194,259,4,69,134,199,264,9,74,139,204,269,14,79,144,209,274,19,84,149,214,279,24,89,154,219,284,29,94,159,224,289,34,99,164,229,294,39,104,169,234,299,44,109,174,239,304,49,114,179,244,309,54,119,184,249,314,59,124,189,254,319};
となる。
【0204】
アドレステーブルIがI[n1][n2]の二次元配列として格納される場合、
Idx[Q][P]=
{{0,65,130,195,260,5,70,135,200,265,10,75,140,205,270,15,80,145,210,275,20,85,150,215,280,25,90,155,220,285,30,95,160,225,290,35,100,165,230,295,40,105,170,235,300,45,110,175,240,305,50,115,180,245,310,55,120,185,250,315,60,125,190,255},
{256,1,66,131,196,261,6,71,136,201,266,11,76,141,206,271,16,81,146,211,276,21,86,151,216,281,26,91,156,221,286,31,96,161,226,291,36,101,166,231,296,41,106,171,236,301,46,111,176,241,306,51,116,181,246,311,56,121,186,251,316,61,126,191},
{192,257,2,67,132,197,262,7,72,137,202,267,12,77,142,207,272,17,82,147,212,277,22,87,152,217,282,27,92,157,222,287,32,97,162,227,292,37,102,167,232,297,42,107,172,237,302,47,112,177,242,307,52,117,182,247,312,57,122,187,252,317,62,127},
{128,193,258,3,68,133,198,263,8,73,138,203,268,13,78,143,208,273,18,83,148,213,278,23,88,153,218,283,28,93,158,223,288,33,98,163,228,293,38,103,168,233,298,43,108,173,238,303,48,113,178,243,308,53,118,183,248,313,58,123,188,253,318,63},
{64,129,194,259,4,69,134,199,264,9,74,139,204,269,14,79,144,209,274,19,84,149,214,279,24,89,154,219,284,29,94,159,224,289,34,99,164,229,294,39,104,169,234,299,44,109,174,239,304,49,114,179,244,309, 54,119,184,249,314,59,124,189,254,319}};
となる。
【0205】
1032.アドレステーブルIに基づきQ回にわたってP点DFTを実行する。
【0206】
i番目(i=0,...,Q-1)のP点DFTの入力データは、アドレステーブルI内のn2=iおよびn1=0,...,P-1に対応するP個のアドレスインデックスに関連付けられているデータである。最終出力を得るために、i番目のP点DFTの結果をxのステップの循環シフトで適用する必要がある。
【0207】
ここでは、xは、法Pに関する
【0208】
【数70】

【0209】
の巡回剰余の逆数であり、
【0210】
【数71】

【0211】
を満たす。
【0212】
アドレステーブルIがI[n2×n1]の一次元配列の形式で格納される場合、アドレステーブルIに基づくQ回にわたるP点DFTは、
DFT_P(z(I+iP))x i=0,...,Q-1;
で表すことができる。
【0213】
それぞれのP点DFTの入力データは、I+iPから始まるP個の連続インデックスに対応するデータである。それぞれのP点DFTの結果は、xのステップの循環シフトで適用される。
【0214】
この実施形態では、64点DFTは、5回にわたって実行される。i番目(i=0,...,4)の64点DFTの入力データは、アドレステーブル配列I[64i]から始まる64個の連続するアドレスインデックスに関連付けられているデータである(回転後のデータ)。i番目の64点DFTの結果は、5のステップの循環シフトで適用される。例えば、ベクトルZ=[z0 z1 z2 z3 z4]上の2のステップの循環シフトの結果は、Z=[z0 z2 z4 z1 z3]である。それに加えて、計算の効率をさらに高めるために、DFTの代わりにFFTを使用するとよい。
【0215】
1033.アドレステーブルIに基づきP回にわたってQ点DFTを実行する。
【0216】
i番目(i=0,...,P-1)のQ点DFTの入力データは、アドレステーブルI内のn1=i、n2=0,...,Q-1に対応するQ個のアドレスインデックスに関連付けられているデータである。最終出力を得るために、i番目のQ点DFTの結果をyのステップの循環シフトで適用する必要がある。
【0217】
ここでは、yは、法Qに関する
【0218】
【数72】

【0219】
の巡回剰余の逆数であり、
【0220】
【数73】

【0221】
を満たす。
【0222】
アドレステーブルIがI[n2×n1]の一次元配列の形式で格納される場合、アドレステーブルIに基づくP回にわたるQ点DFTは、
DFT_Q(z(I+i))y i=0,...,P-1;
で表すことができる。
【0223】
Q点DFTの入力データは、Pのステップでそれぞれ分離されているI+iから始まるQ個のインデックスに対応するデータである。それぞれのQ点DFTの結果は、yのステップの循環シフトで適用される。
【0224】
この実施形態では、5点DFTは、64回にわたって実行される。i番目(i=0,...,63)の5点DFTの入力データは、アドレステーブル配列I[i]から始まる5個の連続するアドレスインデックスに関連付けられているデータであり(回転後のデータ)、それぞれ64のステップで分離されている。i番目の5点DFTは、4のステップの循環シフトで適用される。
【0225】
従来技術では、互いに素な因子に基づく大半のDFTでは、データ列の順次アクセスを考慮しない。変換を通して得られたデータは、最終的な出力データを得るために再配列する必要がある。したがって、計算量がさらに多くなる。この実施形態では、DFTにアドレステーブルが使用され、アドレッシングはアドレステーブルに基づき、入力データはこのアドレステーブル内の関連付けられているアドレスに従って読み込まれ、出力データはアドレステーブル内の関連付けられているアドレスに従って格納される。変換の後に得られたデータの列は、特別な再配列なしで使用可能である。したがって、計算の複雑度は低減され、計算効率が高まる。
【0226】
104.DFTの後のデータを、回転因子
【0227】
【数74】

【0228】
を使用することによって後回転し、周波数領域データを取得する。
【0229】
変換されたデータは、回転因子
【0230】
【数75】

【0231】
k=0,...,N/4-1を使用することによって後回転されるが、式中、
【0232】
【数76】

【0233】
であり、bは定数である。この実施形態では、定数は
【0234】
【数77】

【0235】
とすることができる。回転因子中の
【0236】
【数78】

【0237】
は、
【0238】
【数79】

【0239】
の形式で表すことができ、b=aであるため、ステップ102で使用されるN/4点データテーブルは、このステップの態様において再利用することができる。
【0240】
周波数領域データ、さらには最終的なスペクトルは、Xk、k=0,...,N/2-1であり、
【0241】
【数80】

【0242】
【数81】

【0243】
で表すことができる。
【0244】
本発明の第1の実施形態による時間領域から周波数領域への信号処理方法に従って、周波数領域から時間領域への信号処理方法が本発明の第2の実施形態において提供される。順変換が、本発明の第1の実施形態において提供される時間領域から周波数領域への信号処理方法を使用することによって実行される場合、本発明の第2の実施形態において提供される周波数領域から時間領域への信号処理方法を使用することによって実行されうる。
【0245】
図3は、本発明の第2の実施形態における周波数領域から時間領域への信号処理方法の流れ図である。この方法は、以下のステップを含む。
【0246】
301.周波数領域データにひねりを施す。
【0247】
特に、周波数領域データXk、k=0,...,N/2-1にひねりを施す。この実施形態では、N=1280である。
【0248】
ひねりを施した後に得られる中間変数は、(X2k+jXN/2-1-2k)、k=0,...,N/4-1である。
【0249】
302.ひねりを施されたデータを、回転因子
【0250】
【数82】

【0251】
を使用することによって前回転する。
【0252】
ひねりを施されたデータは、回転因子
【0253】
【数83】

【0254】
k=0,...,N/4-1を使用することによって前回転されるが、式中、
【0255】
【数84】

【0256】
であり、cは定数である。
【0257】
この実施形態では、定数は
【0258】
【数85】

【0259】
とすることができ、したがって、ステップ102および104で使用されるN/4点データテーブルも、このステップで再利用することができる。
【0260】
303.前回転データに対してN/4点のDFTを実行する。
【0261】
このステップでは、N/4点のふつうのDFTが使用されるか、または他のN/4点FFTが使用されうる。
【0262】
このステップでは、図2に示されている320点FFTが実行されうる。
【0263】
304.DFTの後のデータを、回転因子
【0264】
【数86】

【0265】
を使用することによって後回転する。
【0266】
変換されたデータは、回転因子
【0267】
【数87】

【0268】
k=0,...,N/4-1を使用することによって後回転されるが、式中、
【0269】
【数88】

【0270】
であり、dは定数である。
【0271】
この実施形態では、定数は
【0272】
【数89】

【0273】
とすることができ、したがって、ステップ102および104で使用されるN/4点データテーブルも、このステップで再利用することができる。
【0274】
上記の処理の後得られるデータynは、
【0275】
【数90】

【0276】
である。
【0277】
305.後回転データを後処理して、時間領域データを取得する。
【0278】
このステップでは、後処理は、窓関数を掛け、ひねりを施すステップを含む。実際には、他の後処理手段も使用される場合がある。
【0279】
窓関数を掛け、ひねりを施した後、時間領域データ
【0280】
【数91】

【0281】
が得られ、
【0282】
【数92】

【0283】
であるが、式中、
【0284】
【数93】

【0285】
、n=0,...,N/8-1であり、gnは合成窓であり、これは完全な再構成条件を解析窓hn、つまり、hngn+hn+N/2gn+N/2=1、n=0,...,N-N/2-1と一緒に満たす。mnは前のフレームのバッファリングされたデータであり、mnの更新は、
【0286】
【数94】

【0287】
を満たす。
【0288】
本発明の第1の実施形態において提供される時間領域から周波数領域への信号処理方法および本発明の第2の実施形態において提供される周波数領域から時間領域への信号処理方法が使用される場合、順変換および逆変換中の定数a、b、c、およびdはa×b×c×d=4/Nを満たせば、逆変換の結果は完全な再構成に対し使用可能である。実際、完全な再構成は必ずしも必要でない。
【0289】
例えば、
【0290】
【数95】

【0291】
を選択することができる。そこで、順変換および逆変換は、前回転および後回転を完了させるために
【0292】
【数96】

【0293】
および
【0294】
【数97】

【0295】
においてN/4点データテーブルを記憶するだけでよい。定数a、b、c、およびdが等しくない場合、前回転および後回転を完了するために、実用的な条件に従って適切なデータテーブルを格納する必要がある。
【0296】
本発明の一実施形態において提供される別の時間領域から周波数領域への信号処理方法は、以下のステップを含む。
【0297】
1.時間領域データを前処理する。
【0298】
2.前処理されたデータを、回転因子
【0299】
【数98】

【0300】
を使用することによって前回転する。
【0301】
3.前回転データに対してN/4点のDFTを実行する。
【0302】
4.DFTの後のデータを、回転因子
【0303】
【数99】

【0304】
および正規化因子Aを使用することによって後回転し、周波数領域データを取得するが、
式中、aおよびbは定数であり、Nは時間領域データの長さであり、n=0,...,N/4-1、k=0,...,N/4-1、および
【0305】
【数100】

【0306】
である。
【0307】
前回転の前のデータに対するすべての処理は、前処理として説明できる。この実施形態では、例えば、前処理は、窓関数を掛けてひねりを施すステップまたはひねりを施すステップのみとしてよい。
【0308】
本発明の一実施形態において提供される別の周波数領域から時間領域への信号処理方法は、以下のステップを含む。
【0309】
1.周波数領域データにひねりを施す。
【0310】
2.ひねりを施されたデータを、回転因子
【0311】
【数101】

【0312】
を使用することによって前回転する。
【0313】
3.前回転データに対してN/4点のDFTを実行する。
【0314】
4.DFTの後のデータを、回転因子
【0315】
【数102】

【0316】
および正規化因子Bを使用することによって後回転する。
【0317】
5.後回転データを後処理して、時間領域データを取得するが、
式中、cおよびdは定数であり、Nは周波数領域データの長さの2倍であり、n=0,...,N/4-1、k=0,...,N/4-1、および
【0318】
【数103】

【0319】
である。
【0320】
後回転の後のデータに対するすべての処理は、後処理として説明できる。後処理の内容は、対応する時間領域から周波数領域への信号処理方法における前処理の内容に依存する。この実施形態では、例えば、前処理が窓関数を掛けてひねりを施すステップである場合、後処理も窓関数を掛けてひねりを施すステップであり、前処理がひねりを施すステップである場合、後処理もひねりを施すステップである。
【0321】
時間領域から周波数領域への信号処理は、順変換とも称され、周波数領域から時間領域への信号処理は、逆変換とも称される。順変換と逆変換においてa×b×c×d=4/Nである場合、順変換の出力データを逆変換の入力データとして使用すると、逆変換の結果が順変換の前のデータを復元できるため、完全な再構成を行うことができる。例えば、a=b=c=d=1、A・B=4/N、または
【0322】
【数104】

【0323】
、A=B=1を選択することができる。実際、完全な再構成は必ずしも必要でない。
【0324】
この実施形態において提供される信号処理方法によって採用される回転因子における
【0325】
【数105】

【0326】
は、
【0327】
【数106】

【0328】
に展開することができ、
式中、
【0329】
【数107】

【0330】
【数108】

【0331】
である。
【0332】
したがって、
【0333】
【数109】

【0334】
は、対称的である。前回転および後回転を完了させるために、
【0335】
【数110】

【0336】
または
【0337】
【数111】

【0338】
のN/4点データテーブルを記憶するだけでよい。
【0339】
従来のMDCTにおいて、MDCTのスペクトル係数を得るために、回転因子
【0340】
【数112】

【0341】
を使用する必要があり、また
【0342】
【数113】

【0343】
は対称的でない。したがって、前回転および後回転において少なくともN/4点のコサイン値およびN/4点のサイン値を記憶する必要がある。本発明の実施形態において提供される信号処理方法によって採用されている回転因子は、定数と
【0344】
【数114】

【0345】
との積である。因子
【0346】
【数115】

【0347】
は対称であるため、前回転および後回転を完了させるためにN/4点のデータテーブルを記憶するだけでよい。従来技術に比べて、この実施形態の信号処理方法は、記憶容量および格納の複雑さを低減し、ストレージリソースの消費を減らし、変換効率を高める。
【0348】
本発明の信号処理方法の例示的な実施形態について説明する。
【0349】
広帯域オーディオコーデックのサンプリング周波数は16kHzであり、処理されるフレームサイズは20msであると仮定する。1つのフレームは、320個のサンプリング点を含む。本発明の一実施形態において提供される時間領域から周波数領域への信号処理方法を使用して、エンコーダで順変換を実行する。順変換の入力データは、xnであり、x0-N/2-1は前のフレームのキャッシュされている320点データであり、xN/2-N-1は現在のフレームの320点データであり、変換セクション長Nは、点640個分である。図4は、本発明の第3の実施形態において提供される信号処理方法の流れ図である。この方法は、以下を含む。
【0350】
401.時間領域入力データを前処理する。
【0351】
このステップでは、前処理は、窓関数を掛け、ひねりを施すステップを含む。
【0352】
xnが640点時間領域入力データであり、hnが完全な再構成条件を満たす640点窓関数である場合、窓関数を掛けたデータynは、
yn=hnxn n=0,...,N-1、
を満たし、
hnは、完全な再構成条件を満たす窓関数であり、これは解析窓関数として説明することができる。
【0353】
窓関数を掛けたデータはひねりを施され、得られたデータun
【0354】
【数116】

【0355】
を満たすが、
式中、
【0356】
【数117】

【0357】
または
【0358】
【数118】

【0359】
である。
【0360】
402.前処理されたデータを、回転因子
【0361】
【数119】

【0362】
を使用することによって前回転する。
【0363】
ひねりを施されたデータunは、回転因子
【0364】
【数120】

【0365】
n=0,...,N/4-1を使用することによって前回転され、式中、
【0366】
【数121】

【0367】
であり、aは定数である。
【0368】
この実施形態では、a=1であり、回転因子は、
【0369】
【数122】

【0370】
によって表すことができる。
【0371】
この式は、
【0372】
【数123】

【0373】
および
【0374】
【数124】

【0375】
を満たす。
【0376】
特定の態様では、
【0377】
【数125】

【0378】
または
【0379】
【数126】

【0380】
のN/4点データテーブルを記憶するだけでよい。この実施形態では、N/4点のサインテーブルが記憶される。サインテーブル内の値は、
【0381】
【数127】

【0382】
、n=0,...,159で表される。
【0383】
403.前回転データに対してN/4個の入力のDFTを実行する。
【0384】
このステップでは、M=N/4=160点のふつうのDFTが使用されるか、またはM=N/4=160点のFFTが使用されうる。
【0385】
404.DFTの後のデータを、回転因子
【0386】
【数128】

【0387】
および正規化因子Aを使用することによって後回転し、周波数領域出力データを取得する。
【0388】
変換されたデータは、回転因子
【0389】
【数129】

【0390】
、k=0,...,N/4-1を使用することによって後回転されるが、式中、
【0391】
【数130】

【0392】
であり、bは定数である。この実施形態では、b=1であり、回転因子は、
【0393】
【数131】

【0394】
によって表すことができる。
【0395】
b=aなので、ステップ402で使用されるN/4点データテーブルは、このステップの態様において使用することができる。
【0396】
最終データXk、k=0,...,N/2-1が得られ、これらは
【0397】
【数132】

【0398】
【数133】

【0399】
であり、式中、Aは正規化因子であり、定数である。
【0400】
この実施形態では、定数Aは
【0401】
【数134】

【0402】
とすることができる。
【0403】
本発明の第3の実施形態において提供される時間領域から周波数領域への信号処理方法に従って、周波数領域から時間領域への信号処理方法が本発明の第4の実施形態において提供される。本発明の第3の実施形態において提供される時間領域から周波数領域への信号処理方法を使用して変換を実行する場合、本発明の第4の実施形態において提供される周波数領域から時間領域への信号処理方法を使用して対応する逆変換を実行することができる。
【0404】
図5は、本発明の第4の実施形態における周波数領域から時間領域への信号処理方法の流れ図である。この方法は、以下を含む。
【0405】
501.周波数領域入力データにひねりを施す。
【0406】
この実施形態では、データXk、k=0,...,N/2-1にひねりを施して、中間変数
【0407】
【数135】

【0408】
、k=0,...,N/4-1を得るが、式中、N=640である。
【0409】
502.ひねりを施されたデータを、回転因子
【0410】
【数136】

【0411】
を使用することによって前回転する。
【0412】
ひねりを施されたデータは、回転因子
【0413】
【数137】

【0414】
、k=0,...,N/4-1を使用することによって前回転され、式中、
【0415】
【数138】

【0416】
であり、cは定数である。この実施形態ではc=1であり、本発明の第3の実施形態において提供される時間領域から周波数領域への信号処理方法のステップ402および404で使用されるN/4点データテーブルも再利用することができる。
【0417】
503.前回転データに対してN/4点のDFTを実行する。
【0418】
回転データに対してM=N/4=160点のDFTを実行する。このステップでは、160点のふつうのDFTが使用されるか、または他の160点FFTが使用されうる。
【0419】
504.DFTの後のデータを、回転因子
【0420】
【数139】

【0421】
および正規化因子Bを使用することによって後回転する。
【0422】
変換されたデータは、回転因子
【0423】
【数140】

【0424】
、k=0,...,N/4-1を使用することによって後回転されるが、式中、
【0425】
【数141】

【0426】
であり、dは定数である。上記の処理の後得られるデータynは、
【0427】
【数142】

【0428】
である。
【0429】
Bは、正規化因子であり、定数である。この実施形態では、定数Bは
【0430】
【数143】

【0431】
とすることができる。この実施形態ではd=1であり、本発明の第3の実施形態において提供される時間領域から周波数領域への信号処理方法のステップ402および404で使用されるN/4点データテーブルも再利用することができる。
【0432】
505.後回転データを後処理して、時間領域出力データを取得する。
【0433】
このステップでは、後処理は、窓関数を掛け、ひねりを施すステップを含む。実際には、他の後処理手段も使用される場合がある。
【0434】
窓関数を掛けて、ひねりを施した後、出力データ
【0435】
【数144】

【0436】
、n=0,...,N/2-1が得られ、これは、
【0437】
【数145】

【0438】
を満たし、式中、
【0439】
【数146】

【0440】
n=0,...,N/8-1であり、gnは、解析窓hnと一緒に完全な再構成条件を満たす、合成窓である、つまり、
hngn+hn+N/2gn+N/2=1 n=0,...,N-N/2-1
であり、mnは前のフレームのバッファリングされたデータであり、mnの更新は、
【0441】
【数147】

【0442】
を満たす。
【0443】
完全な再構成条件を満たすために、順変換、逆変換、または順/逆変換に特定の正規化因子を掛けるとよい。この実施形態では、順変換および逆変換に同じ正規化因子を掛ける。適宜、順変換または逆変換のみに特定の正規化因子を掛けるか、または順変換および逆変換に異なる正規化因子を掛ける。完全な再構成は、a×b×c×d×A×B=4/Nである限り完成させることができる。
【0444】
さらに、正規化因子が使用される場合、FFTを実行するためにアドレステーブルも使用することができる。超広帯域オーディオコーデックにおいて、超広帯域オーディオエンコーダのサンプリング周波数は32kHzであり、処理されるフレームサイズは20msであると仮定する。つまり、1つのフレームは、640個のサンプリング点を含む。データに対して、順変換が実行される。xnが順変換の入力データである場合、x0-N/2-1は前のフレームの640点データであり、xN/2-N-1は現在のフレームの640点データである。
【0445】
図6は、本発明の第5の実施形態における時間領域から周波数領域への信号処理方法の流れ図である。この方法は、以下のステップを含む。
【0446】
601.時間領域データを前処理する。
【0447】
前処理は、窓関数を掛け、ひねりを施すステップを含む。
【0448】
xnが1280点時間領域入力データであり、hnが完全な再構成条件を満たす1280点窓関数である場合、窓関数を掛けたデータynは、
yn=hnxn n=0,...,N-1,
を満たす。
【0449】
窓関数を掛けたデータはひねりを施され、得られたデータun
un=(z2n+ jzN/2-1-2n) n=0,...,N/4-1
を満たすが、
式中、
【0450】
【数148】

【0451】
または
【0452】
【数149】

【0453】
である。
【0454】
窓関数は、このステップの解析窓関数hnおよび逆変換で使用される合成窓関数gnが式
hngn+hn+N/2gn+N/2=1 n=0,...,N-N/2-1
を満たすときに完全な再構成条件を満たす。
【0455】
602.前処理されたデータを、回転因子
【0456】
【数150】

【0457】
を使用することによって前回転する。
【0458】
ひねりを施されたデータunは、回転因子
【0459】
【数151】

【0460】
を使用することによって前回転される。回転の後得られるデータは、
【0461】
【数152】

【0462】
n=0,...,N/4-1であり、式中、
【0463】
【数153】

【0464】
であり、aは定数である。計算の複雑度をさらに低くするために、正規化因子を回転因子と直接組み合わせるとよい。この実施形態では、定数aは、回転因子において
【0465】
【数154】

【0466】
とすることができ、これは
【0467】
【数155】

【0468】
の形式で表すことができ、また
【0469】
【数156】

【0470】
【数157】

【0471】
である。
【0472】
したがって、N/4点のデータテーブルを記憶するだけでよい。この実施形態では、N/4点のデータテーブルが記憶され、データテーブル内の値は、
【0473】
【数158】

【0474】
、n=0,...,319で表される。
【0475】
603.アドレステーブルに基づくFFTを使用して前回転データに対してN/4点のDFTを実行する。
【0476】
この実施形態では、PおよびQを互いに素な正整数とするM=N/4=P×Q点のFFTが実行される。FFTは、以下のステップを含む。
【0477】
i.P=64、Q=5とし、PおよびQは互いに素であり、M=N/4=P×Q=320を満たすものとし、式
I=<K1xn1+K2xn2>M n1=0,...,P-1
n2=0,...,Q-1
を満たす、アドレステーブルIを作成する。
【0478】
K1およびK2は、<K1K2>M=0を満たす互いに素な正整数であるが、ただし、K1K2=Zおよび<Z>Mは法Mに関するZの剰余を意味し、ZをMで割った余りである。
【0479】
データの順序関係を決定するために、アドレステーブルIに格納されているアドレスは0,1,...,M-1と横断して、入力データとの1対1マッピングを形成する必要がある。アドレステーブルIが1対1マッピングの条件を満たす場合、以下の3つの条件が満たされる必要がある。
【0480】
(1)K1はQの正整数倍であり、および/またはK2はPの正整数倍である。
【0481】
(2)K1およびPは、互いに素な数である。
【0482】
(3)K2およびQは、互いに素な数である。
【0483】
この実施形態では、K1=65、K2=256であり、アドレステーブルIは、
I=<65n1 + 256n2>320
によって表すことができ、
式中、n1=0,...,63およびn2=0,...,4である。
【0484】
アドレステーブルIは、予め計算され格納されうる。このステップは、ステップ601および602との順序関係を持たない。実際、アドレステーブルIは、テーブルに格納することができる。この実施形態では、テーブルは、n2×n3の一次元配列として格納される。
【0485】
ii.アドレステーブルIに基づきQ回にわたってP点DFTを実行する。
DFT_P(z(I+iP))x i=0,...,Q-1
【0486】
それぞれのP点DFTの入力データは、I+iPから始まるP個の連続インデックスに対応するデータである。それぞれのP点DFTは、xのステップの循環シフトで適用される。ここで、xは、法Pに関する
【0487】
【数159】

【0488】
の巡回剰余の逆数であり、
【0489】
【数160】

【0490】
を満たす。この実施形態では、64点DFTは、5回にわたって実行される。i番目(i=0,...,4)の64点DFTの入力データは、アドレステーブル配列I[64i]から始まる64個の連続するアドレスインデックスに関連付けられているデータである(回転後のデータ)。i番目の64点DFTは、5のステップの循環シフトで適用される。例えば、ベクトルZ=[z0 z1 z2 z3 z4]上の2のステップの循環シフトの結果は、Z=[z0 z2 z4 z1 z3]である。それに加えて、計算の効率をさらに高めるために、DFTの代わりにFFTを使用するとよい。
【0491】
iii.アドレステーブルIに基づきP回にわたってQ点DFTを実行する。
DFT_Q(z(I+i))y i=0,...,P-1
【0492】
Q点DFTの入力データは、Pのステップでそれぞれ分離されているテーブルI内のI+iから始まるQ個のインデックスに対応するデータである。それぞれのQ点DFTの結果は、yのステップの循環シフトで適用される。ここで、yは、法Qに関する
【0493】
【数161】

【0494】
の巡回剰余の逆数であり、
【0495】
【数162】

【0496】
を満たす。この実施形態では、5点DFTは、64回にわたって実行される。i番目(i=0,...,63)の5点DFTの入力データは、アドレステーブル配列I[i]から始まる64個の点の間隔で5つのアドレスインデックスに関連付けられているデータである(回転後のデータ)。i番目の5点DFTは、4のステップの循環シフトで適用される。
【0497】
604.DFTの後のデータを、回転因子
【0498】
【数163】

【0499】
および正規化因子Aを使用することによって後回転し、周波数領域データを取得する。
【0500】
変換されたデータは、回転因子
【0501】
【数164】

【0502】
、k=0,...,N/4-1を使用することによって後回転されるが、式中、
【0503】
【数165】

【0504】
であり、bは定数である。この実施形態では、定数bは
【0505】
【数166】

【0506】
とすることができる。bが
【0507】
【数167】

【0508】
である場合、回転因子中の
【0509】
【数168】

【0510】
は、
【0511】
【数169】

【0512】
の形式で表すことができ、bの値はステップ602のaに等しいので、ステップ602で格納されるN/4点のデータテーブルも、このステップにおいて再利用することができる。
【0513】
出力データ、さらには最終的なスペクトルは、Xk、k=0,...,N/2-1であり、
【0514】
【数170】

【0515】
【数171】

【0516】
で表すことができ、
式中、Bは正規化因子であり、定数である。
【0517】
本発明の第5の実施形態において提供される時間領域から周波数領域への信号処理方法に従って、周波数領域から時間領域への信号処理方法が本発明の第6の実施形態において提供される。本発明の第5の実施形態において提供される時間領域から周波数領域への信号処理方法を使用して変換を実行する場合、本発明の第6の実施形態において提供される周波数領域から時間領域への信号処理方法を使用して対応する逆変換を実行することができる。
【0518】
図7は、本発明の第6の実施形態における周波数領域から時間領域への信号処理方法の流れ図であり、Xk、k=0,...,N/2-1は、逆変換の入力データである。この方法は、以下のステップを含む。
【0519】
701.周波数領域データにひねりを施す。
【0520】
特に、入力データXk、k=0,...,N/2-1にはひねりが施される。
【0521】
ひねりを施した後に得られる中間変数は、(X2k+jXN/2-1-2k)、k=0,...,N/4-1である。
【0522】
702.ひねりを施されたデータを、回転因子
【0523】
【数172】

【0524】
、k=0,...,N/4-1を使用することによって前回転する。
【0525】

【0526】
【数173】

【0527】
が成り立ち、cは定数である。
【0528】
この実施形態では、
【0529】
【数174】

【0530】
であり、またcはaまたはbに等しい。したがって、本発明の第5の実施形態において提供される時間領域から周波数領域への信号処理方法のステップ602および604で使用されるN/4点データテーブルも、このステップで再利用することができる。
【0531】
703.アドレステーブルに基づくFFTを使用して前回転データに対してN/4点のDFTを実行する。
【0532】
M=N/4=P×Qで、PおよびQが互いに素である場合、本発明の第5の実施形態において提供される時間領域から周波数領域への信号処理方法のステップ603のデータ処理方法を使用してこのステップを実行することができる。
【0533】
704.変換の後のデータを、回転因子
【0534】
【数175】

【0535】
および正規化因子Bを使用することによって後回転する。
【0536】
変換されたデータは、回転因子
【0537】
【数176】

【0538】
、n=0,...,N/4-1を使用することによって後回転されるが、式中、
【0539】
【数177】

【0540】
であり、dは定数である。上記の処理の後得られるデータynは、
【0541】
【数178】

【0542】
である。
【0543】
Bは、正規化因子であり、定数である。
【0544】
この実施形態では、
【0545】
【数179】

【0546】
であり、またdはa、b、またはcに等しい。したがって、本発明の第5の実施形態において提供される時間領域から周波数領域への信号処理方法のステップ602および604で使用されるN/4点データテーブルも、このステップで再利用することができる。
【0547】
705.後回転データに窓関数を掛けてひねりを施し、時間領域データを取得する。
【0548】
窓関数を掛けて、ひねりを施した後、出力データ
【0549】
【数180】

【0550】
が得られ、これは、
【0551】
【数181】

【0552】
であり、
式中、
【0553】
【数182】

【0554】
n=0,...,N/4-1であり、gnは、解析窓hnと一緒に完全な再構成条件を満たす、合成窓である、つまり、hngn+hn+N/2gn+N/2=1 n=0,...,N-N/2-1である。mnは前のフレームのバッファリングされたデータであり、mnの更新は、
【0555】
【数183】

【0556】
を満たす。
【0557】
従来技術では、互いに素な因子に基づく大半のDFTでは、データ列の順次アクセスを考慮しない。変換を通して得られたデータは、最終的な出力データを得るために再配列する必要がある。したがって、計算量が増大する。本発明の実施形態では、FFTにアドレステーブルが使用され、アドレッシングはアドレステーブルに基づき、入力データはこのアドレステーブル内の関連付けられているアドレスに従って読み込まれ、出力データはアドレステーブル内の関連付けられているアドレスに従って格納される。したがって、変換の後に得られたデータの列は、特別な再配列なしで使用可能である。
【0558】
本発明の一実施形態において提供されるデータ処理方法は、以下のステップを含む。
【0559】
1.アドレステーブルを作成する。
【0560】
2.アドレステーブルに基づき入力データに対してQ回にわたってP点DFTを実行する。
【0561】
3.アドレステーブルに基づきQ回にわたってP点DFTを実行した後に得られたデータに対してP回にわたってQ点DFTを実行する。
【0562】
PおよびQは、互いに素な正整数であり、Mは、アドレステーブルの長さであり、M=P×Qであり、アドレステーブルに格納されているアドレスは、0,1,...,M-1と横断して、入力データとの1対1マッピングを形成する。
【0563】
実際、アドレステーブルは、複数のアプローチで得ることができる。この実施形態では、アドレステーブルは、式<K1×n1+K2×n2>Mを使用することによって得られる。
【0564】
アドレステーブルI=<K1xn1+K2xn2>M、n1=0,...,P-1、n2=0,...,Q-1であり、K1およびK2は、<K1K2>M=0を満たす互いに素な正整数である。<Z>Mは法Mに関するZの剰余を意味する。
【0565】
アドレステーブルが1対1マッピングの条件を満たす場合、以下の3つの条件が満たされる必要がある。
【0566】
(1)K1はQの正整数倍であり、および/またはK2はPの正整数倍である。
【0567】
(2)K1およびPは、互いに素な数である。
【0568】
(3)K2およびQは、互いに素な数である。
【0569】
この実施形態のデータ処理方法は、M=P×Qとし、PおよびQを互いに素な正整数としてFFTに適用可能である。P=64、Q=5とし、PおよびQが互いに素である320点FFTを例にとり、この実施形態において提供されるデータ処理方法の流れ図を図2に示した。この方法は、以下のステップを含む。
【0570】
1031.アドレステーブルIを作成する。
【0571】
アドレステーブルIは
I=<K1×n1+K2×n2>M n1=0,...,P-1
n2=0,...,Q-1
を満たす。
【0572】
K1およびK2は、<K1K2>M=0を満たす互いに素な正整数である。<Z>Mは法Mに関するZの剰余を意味する。
【0573】
この実施形態では、K1=5、K1=64であり、アドレステーブルIは、
I=<5n1+64n2>320
で表すことができ、式中、n1=0,...,63およびn2=0,...,4である。
【0574】
アドレステーブルIは、予め計算され格納されうる。実際、アドレステーブルIは、テーブルに格納することができる。この実施形態では、テーブルは、I[n1][n2]の二次元配列として格納される。
【0575】
1032.アドレステーブルIに従って入力データに対してQ回にわたってP点DFTを実行する。
【0576】
i番目(i=0,...,Q-1)のP点DFTの入力データは、アドレステーブルI内のn2=i、n1=0,...,P-1に対応するP個のアドレスインデックスに関連付けられているデータである。最終出力を得るために、i番目のP点DFTの結果をxのステップの循環シフトで適用する。
【0577】
ここでは、xは、法Pに関する
【0578】
【数184】

【0579】
の巡回剰余の逆数であり、
【0580】
【数185】

【0581】
を満たす。
【0582】
例えば、アドレステーブルIがI[n1][n2]の二次元配列の形式で格納される場合、i番目のP点DFTの入力データは、アドレステーブルI[n1][i]、n1=0,...,P-1に格納されているP個のアドレスインデックスに関連付けられているデータである。それぞれのP点DFTの結果は、xのステップの循環シフトで適用される。この実施形態では、K1=5、P=64、およびQ=5、x=13だからである。
【0583】
1033.アドレステーブルIに従って変換データに対してP回にわたってQ点DFTを実行する。
【0584】
i番目(i=0,...,P-1)のQ点DFTの入力データは、アドレステーブルI内のn1=i、n2=0,...,Q-1に対応するQ個のアドレスインデックスに関連付けられているデータである。最終出力を得るために、i番目のQ点DFTの結果をyのステップの循環シフトで適用する。
【0585】
ここでは、yは、法Qに関する
【0586】
【数186】

【0587】
の巡回剰余の逆数であり、
【0588】
【数187】

【0589】
を満たす。
【0590】
例えば、アドレステーブルIがI[n1][n2]の二次元配列の形式で格納される場合、i番目のQ点DFTの入力データは、アドレステーブルI[n1][n2]、n2=0,...,Q-1に格納されているQ個のアドレスインデックスに関連付けられているデータである。それぞれのQ点DFTの結果は、yのステップの循環シフトで適用される。この実施形態では、K2=64、P=64、およびQ=5、x=4だからである。
【0591】
本発明の実施形態において提供されるデータ処理方法では、DFTが実行されるときに、アドレステーブルがアドレッシングに使用されるので、入力データはアドレステーブル内の関連付けられているアドレスに従って読み込まれ、出力データはアドレステーブル内の関連付けられているアドレスに従って格納される。変換データは、使用可能な列になっており、逆変換の際に特別な再配列は不要である。したがって、計算におけるアドレッシングコストは低減され、計算効率が増大する。
【0592】
当業者は、先行する実施形態における一部または全部のステップが、1つのプログラムの命令に従う関係するハードウェアによって実行されうることを理解する。プログラムは、コンピュータ可読記憶媒体に格納することができる。プログラムの実行は、以下のステップを含む。
【0593】
時間領域から周波数領域への信号処理方法は、
時間領域データを前処理するステップと、
前処理されたデータを、回転因子
【0594】
【数188】

【0595】
を使用することによって前回転するステップと、
前回転データに対してN/4点のDFTを実行するステップと、
DFTの後のデータを、回転因子
【0596】
【数189】

【0597】
を使用することによって後回転し、周波数領域データを取得するステップとを含み、
式中、cおよびdは定数であり、Nは周波数領域データの長さの2倍であり、
【0598】
【数190】

【0599】
である。
【0600】
周波数領域から時間領域への信号処理方法は、
周波数領域データにひねりを施すステップと、
ひねりを施したデータを、回転因子
【0601】
【数191】

【0602】
を使用することによって前回転するステップと、
前回転データに対してN/4点のDFTを実行するステップと、
DFTの後のデータを、回転因子
【0603】
【数192】

【0604】
を使用することによって後回転するステップと、
後回転データを後処理して、時間領域データを取得するステップとを含み、
式中、cおよびdは定数であり、Nは周波数領域データの長さの2倍であり、
【0605】
【数193】

【0606】
である。
【0607】
データ処理方法は、
アドレステーブルに従って入力データに対してQ回にわたってP点DFTを実行するステップと、
アドレステーブルに従ってQ回にわたってP点DFTを実行した後に得られたデータに対してP回にわたってQ点DFTを実行するステップとを含む。
【0608】
上述の記憶媒体は、読み出し専用メモリ(ROM)、磁気ディスク、またはコンパクトディスクであってよい。
【0609】
図8は、本発明の一実施形態における時間領域から周波数領域への信号処理装置の構造を示す図である。この装置は、
時間領域データを前処理するように適合された前処理ユニット801と、
回転因子
【0610】
【数194】

【0611】
を使用することによって、前処理ユニット801により得られたデータを前回転するように適合された第1の前回転ユニット802と、
第1の前回転ユニット802によって処理されたデータに対してN/4点のDFTを実行するように適合された第1のフーリエ変換ユニット803と、
第1のフーリエ変換ユニット803によってDFTが実行された後にデータを後回転して周波数領域データを取得するように適合された第1の後回転ユニット804とを備え、
aおよびbは定数であり、Nは時間領域データの長さであり、n=0,...,N/4-1、k=0,...,N/4-1、および
【0612】
【数195】

【0613】
である。
【0614】
第1の後回転ユニット804は、
DFTが実行された後のデータを、回転因子
【0615】
【数196】

【0616】
および正規化因子Aを使用することによって後回転し、周波数領域データを取得するように適合された第2の後回転ユニットを備える。
【0617】
第1のフーリエ変換ユニット803は、
アドレステーブルに従って第1の前回転ユニットによって処理されたデータに対してQ回にわたってP点DFTを実行するように適合された第1の変換ユニットと、
アドレステーブルに従って第1の変換ユニットによって変換されたデータに対してP回にわたってQ点DFTを実行するように適合された第2の変換ユニットとを備える。
【0618】
PおよびQは、互いに素な正整数であり、M=N/4=P×Qである。Mは、アドレステーブルの長さである。アドレステーブルは<K1×n1+K2×n2>Mであり、ただし、n1=0,...,P-1およびn2=1,...,Q-1である。K1およびK2は、互いに素な正整数であり、<K1K2>M=0を満たす。<Z>Mは法Mに関するZの剰余を意味する。
【0619】
本発明の実施形態において提供される時間領域から周波数領域への信号処理装置に従って、周波数領域から時間領域への信号処理装置が本発明の一実施形態において提供される。図9は、周波数領域から時間領域への信号処理装置の構造を示している。この装置は、
周波数領域データにひねりを施すように適合されたひねり処理ユニット901と、
回転因子
【0620】
【数197】

【0621】
を使用することによって、ひねり処理ユニット901により得られたデータを前回転するように適合された第2の前回転ユニット902と、
第2の前回転ユニット902によって処理されたデータに対してN/4点のDFTを実行するように適合された第2のフーリエ変換ユニット903と、
第2のフーリエ変換ユニット903によってDFTが実行された後にデータを後回転するように適合された第3の後回転ユニット904と、
第3の後回転ユニット904によって処理されたデータを後処理して時間領域データを取得するように適合された後処理ユニット905とを備え、
cおよびdは定数であり、Nは周波数領域データの長さの2倍であり、n=0,...,N/4-1、k=0,...,N/4-1、および
【0622】
【数198】

【0623】
である。
【0624】
第3の後回転ユニット904は、
DFTが実行された後のデータを、回転因子
【0625】
【数199】

【0626】
および正規化因子Bを使用することによって後回転するように適合された第4の後回転ユニットを備える。
【0627】
第2のフーリエ変換ユニット903は、
アドレステーブルに従って第2の前回転ユニットによって処理されたデータに対してQ回にわたってP点DFTを実行するように適合された第3の変換ユニットと、
アドレステーブルに従って第3の変換ユニットによって変換されたデータに対してP回にわたってQ点DFTを実行するように適合された第4の変換ユニットとを備える。
【0628】
PおよびQは、互いに素な正整数であり、M=N/4=P×Qである。Mは、アドレステーブルの長さである。アドレステーブルは<K1×n1+K2×n2>Mであり、ただし、n1=0,...,P-1およびn2=1,...,Q-1である。K1およびK2は、互いに素な正整数であり、<K1K2>M=0を満たす。<Z>Mは法Mに関するZの剰余を意味する。
【0629】
本発明の実施形態において提供される時間領域から周波数領域への信号処理装置および周波数領域から時間領域への信号処理装置の特定の応用に関しては、本発明の実施形態において提供される信号処理方法の説明を参照されたい。
【0630】
本発明の実施形態において提供される時間領域から周波数領域への信号処理装置および周波数領域から時間領域への信号処理方法において、回転因子中の
【0631】
【数200】

【0632】

【0633】
【数201】

【0634】
に展開することができ、しかも条件
【0635】
【数202】

【0636】
および
【0637】
【数203】

【0638】
を満たし、回転因子中の
【0639】
【数204】

【0640】
は同じ対称条件を満たすので、本発明の実施形態において提供される時間領域から周波数領域への信号処理装置および周波数領域から時間領域への信号処理装置はN/4点のデータテーブルを格納するだけでよい。従来技術と比較すると、少なくともN/4点のサインテーブルおよびN/4点のコサインテーブルは、合わせてN/2個の点について、格納する必要がある場合、本発明の実施形態は、格納の複雑さおよび記憶容量を著しく低減し、ストレージリソースの消費を減らし、信号処理の効率を高める。
【0641】
本発明の一実施形態において提供されるデータ処理装置では、出力データの使用可能な列を保証し、アドレッシングコストを低減するために、アドレッシングにアドレステーブルを使用する。図10は、この実施形態において提供されるデータ処理装置の構造を示している。装置は、アドレステーブルユニット1001、第5の変換ユニット1002、および第6の変換ユニット1003を備える。
【0642】
アドレステーブルユニット1001は、アドレステーブルを作成するか、または格納するように適合される。
【0643】
アドレステーブルに格納されているアドレスは、0,1,...,M-1と横断して、入力データとの1対1マッピングを形成する。
【0644】
実際、アドレステーブルは、複数のアプローチで得ることができる。この実施形態では、アドレステーブルは、式<K1×n1+K2×n2>Mを使用することによって得られる。
【0645】
アドレステーブルはI=<K1×n1+K2×n2>Mであるが、式中、n1=0,...,P-1、n2=0,...,Q-1であり、PおよびQは、互いに素な正整数であり、M=P×Qであり、K1およびK2は、互いに素な正整数であり、<K1K2>M=0を満たす。<Z>Mは法Mに関するZの剰余を意味する。
【0646】
アドレステーブルが1対1マッピングの条件を満たす場合、以下の3つの条件が満たされる必要がある。
【0647】
(1)K1はQの正整数倍であり、および/またはK2はPの正整数倍である。
【0648】
(2)K1およびPは、互いに素な数である。
【0649】
(3)K2およびQは、互いに素な数である。
【0650】
第5の変換ユニット1002は、アドレステーブルユニット1001によって作成されるか、または格納されているアドレステーブルに従って入力データに対しQ回にわたってP点DFTを実行するように適合されている。
【0651】
i番目(i=0,...,Q-1)のP点DFTの入力データは、アドレステーブルI内のn2=i、n1=0,...,P-1に対応するP個のアドレスインデックスに関連付けられているデータである。最終出力を得るために、i番目のP点DFTの結果をxのステップの循環シフトで適用する。
【0652】
ここでは、xは、法Pに関する
【0653】
【数205】

【0654】
の巡回剰余の逆数であり、
【0655】
【数206】

【0656】
を満たす。
【0657】
例えば、アドレステーブルIがI[n1][n2]の二次元配列の形式で格納される場合、i番目のP点DFTの入力データは、アドレステーブルI[n1][n2]、n1=0,...,P-1に格納されているP個のアドレスインデックスに関連付けられているデータである。それぞれのP点DFTの結果は、xのステップの循環シフトで適用される。
【0658】
第6の変換ユニット1003は、アドレステーブルユニット1001によって作成されるか、または格納されているアドレステーブルに従って第5の変換ユニット1002によって変換されたデータに対しP回にわたってQ点DFTを実行するように適合されている。
【0659】
i番目(i=0,...,P-1)のQ点DFTの入力データは、アドレステーブルI内のn1=i、n2=0,...,Q-1に対応するQ個のアドレスインデックスに関連付けられているデータである。最終出力を得るために、i番目のQ点DFTの結果をyのステップの循環シフトで適用する。
【0660】
ここでは、yは、法Qに関する
【0661】
【数207】

【0662】
の巡回剰余の逆数であり、
【0663】
【数208】

【0664】
を満たす。
【0665】
例えば、アドレステーブルIがI[n1][n2]の二次元配列の形式で格納される場合、i番目のQ点DFTの入力データは、アドレステーブルI[n1][n2]、n2=0,...,Q-1に格納されているQ個のアドレスインデックスに関連付けられているデータである。それぞれのQ点DFTの結果は、yのステップの循環シフトで適用される。
【0666】
本発明の実施形態において提供されるデータ処理装置では、FFTが実行されるときに、アドレステーブルがアドレッシングに使用されるので、入力データはアドレステーブル内の関連付けられているアドレスに従って読み込まれ、出力データはアドレステーブル内の関連付けられているアドレスに従って格納される。変換データは、使用可能な列になっており、逆変換の際に特別な再配列は不要である。したがって、計算におけるアドレッシングコストは低減され、計算効率が増大する。
【0667】
以下では、アドレステーブルIに基づく変換が、出力データの使用可能な列を保証することを証明する。
【0668】
FFTの定義は、
【0669】
【数209】

【0670】
である。
【0671】
M=P×Qであり、PおよびQは、互いに素な正整数であり、もし
n=<K1×n1+K2×n2>M n1=0,...,P-1,
n2=0,...,Q-1
k=<K1×k1+K2×k2>M k1=0,...,P-1
k2=0,...,Q-1
ならば、
X(k)はX'(k1,k2)およびX'(k1,k2)=X(<K1×k1+K2×k2>M)と書くことができ、x(n)はx'(n1,n2)およびx'(n1,n2)=X(<K1×n1+K2×n2>M)と書くことができる。
【0672】
したがって、FFTの公式は、
【0673】
【数210】

【0674】
に展開することができる。
【0675】
<K1K2>M=0の場合
【0676】
【数211】

【0677】
であり、したがって
【0678】
【数212】

【0679】
である。
【0680】
なぜなら、
【0681】
【数213】

【0682】
だからである。
【0683】
i番目(i=0,...,Q-1)のP点DFTの入力データは、アドレステーブルI内のn2=i、n1=0,...,P-1に対応するP個のアドレスインデックスに関連付けられているデータである。最終出力を得るために、i番目のP点DFTの結果をxのステップの循環シフトで適用する。
【0684】
ここでは、xは、法Pに関する
【0685】
【数214】

【0686】
の巡回剰余の逆数であり、
【0687】
【数215】

【0688】
【数216】

【0689】
を満たす。n1=0のときに、
【0690】
【数217】

【0691】
であり、n1=1のときに
【0692】
【数218】

【0693】
であり、同様に、n1=xのときに
【0694】
【数219】

【0695】
である。順次出力のFFTの式
【0696】
【数220】

【0697】
では、n1=1のときの回転因子は
【0698】
【数221】

【0699】
である。P点DFTでは、
【0700】
【数222】

【0701】
となるのは、n1=xのとき、xが
【0702】
【数223】

【0703】
を満たすときに限る。P点DFTの順次出力を使用可能にするために、xのステップの循環シフトを、n1=0,...,P-1に対応する出力に対して実行する必要がある。
【0704】
同様に、i番目(i=0,...,P-1)のQ点DFTの入力データは、アドレステーブルI内のn1=i、n2=0,...,Q-1に対応するQ個のアドレスインデックスに関連付けられているデータである。最終出力を得るために、i番目のQ点DFTの結果をyのステップの循環シフトで適用する。
【0705】
ここでは、yは、法Qに関する
【0706】
【数224】

【0707】
の巡回剰余の逆数であり、
【0708】
【数225】

【0709】
を満たす。
【0710】
本発明は、例示的な実施形態を通じて説明されているけれども、本発明はそのような実施形態に限定されない。当業者であれば本発明の精神および範囲から逸脱することなく、本発明に対しさまざまな修正および変更を加えることができることは、明らかである。請求項およびその等価物により定義された保護の範囲内にある限りそれらの修正および変更も、本発明の対象範囲であることが意図されている。
【符号の説明】
【0711】
801 前処理ユニット
802 第1の前回転ユニット
803 第1のフーリエ変換ユニット
804 第1の後回転ユニット
901 ひねり処理ユニット
902 第2の前回転ユニット
903 第2のフーリエ変換ユニット
904 第3の後回転ユニット
905 後処理ユニット
1001 アドレステーブルユニット
1002 第5の変換ユニット
1003 第6の変換ユニット

【特許請求の範囲】
【請求項1】
時間領域から周波数領域への信号処理方法であって、
時間領域データを前処理するステップと、
前記前処理されたデータを、回転因子
【数1】

を使用することによって前回転するステップと、
前記前回転データに対してN/4点の離散フーリエ変換(DFT)を実行するステップと、
前記DFTによって変換された前記データを、回転因子
【数2】

を使用することによって後回転し、周波数領域データを取得するステップとを含み、式中、
aおよびbは定数であり、Nは時間領域データの長さであり、式
【数3】

が成り立ち、式
【数4】

が成り立ち、式
【数5】

が成り立ち、nおよびkはそれぞれすべてN/4以下の非負整数である時間領域から周波数領域への信号処理方法。
【請求項2】
前記前回転データに対してN/4点の前記DFTを実行する前記ステップは、
アドレステーブルに基づき前記前回転データに対しQ回にわたってP点DFTを実行するステップと、
前記アドレステーブルに基づきQ回にわたって前記P点DFTの後に得られた前記データに対しP回にわたってQ点DFTを実行するステップとを含み、式中、
PおよびQは、互いに素な正整数であり、M=N/4=P×Qであり、Mは、前記アドレステーブルの長さであり、前記アドレステーブルは、<K1×n1+K2×n2>Mであり、ただし、n1=0,...,P-1およびn2=1,...,Q-1であり、K1およびK2は、互いに素な正整数であり、<K1K2>M=0を満たす請求項1に記載の方法。
【請求項3】
前記アドレステーブルは、配列の形式で1つのテーブル内に格納される請求項2に記載の方法。
【請求項4】
前記前処理ステップは、窓関数を掛けてひねりを施すか、またはひねりを施すステップを含む請求項1、2、または3に記載の方法。
【請求項5】
周波数領域から時間領域への信号処理方法であって、
周波数領域データにひねりを施すステップと、
前記ひねりを施したデータを、回転因子
【数6】

を使用することによって前回転するステップと、
前記前回転データに対してN/4点の離散フーリエ変換(DFT)を実行するステップと、
前記DFTによって変換された前記データを、回転因子
【数7】

を使用することによって後回転するステップと、
前記後回転データを後処理して、時間領域データを取得するステップとを含み、式中、
cおよびdは定数であり、Nは周波数領域データの長さの2倍であり、式
【数8】

が成り立ち、式
【数9】

が成り立ち、式
【数10】

が成り立ち、nおよびkはそれぞれすべてN/4以下の非負整数である周波数領域から時間領域への信号処理方法。
【請求項6】
前記前回転データに対してN/4点の前記DFTを実行する前記ステップは、
アドレステーブルに従って前記前回転データに対しQ回にわたってP点DFTを実行するステップと、
前記アドレステーブルに従ってQ回にわたって前記P点DFTの後に得られた前記データに対してP回にわたってQ点DFTを実行するステップとを含み、式中、
PおよびQは、互いに素な正整数であり、M=N/4=P×Qであり、Mは、前記アドレステーブルの長さであり、前記アドレステーブルは、<K1×n1+K2×n2>Mであり、ただし、n1=0,...,P-1およびn2=1,...,Q-1であり、K1およびK2は、互いに素な正整数であり、<K1K2>M=0を満たす請求項5記載の方法。
【請求項7】
前記アドレステーブルは、配列の形式で1つのテーブル内に格納される請求項6に記載の方法。
【請求項8】
前記後処理ステップは、窓関数を掛けてひねりを施すか、またはひねりを施すステップを含む請求項6または7に記載の方法。
【請求項9】
データ処理方法であって、
アドレステーブルに基づきデータに対しQ回にわたってP点離散フーリエ変換(DFT)を実行するステップと、
前記アドレステーブルに基づきQ回にわたって前記P点DFTの後に得られた前記データに対しP回にわたってQ点DFTを実行するステップとを含むデータ処理方法。
【請求項10】
PおよびQは、互いに素な正整数であり、前記アドレステーブルはI=<K1×n1+K2×n2>Mであり、ただし、Mは、前記アドレステーブルの長さであり、M=P×Q、n1=0,...,P-1、n2=0,...,Q-1であり、K1およびK2は、<K1K2>M=0を満たす互いに素な正整数である請求項9に記載の方法。
【請求項11】
前記アドレステーブルは、配列の形式で1つのテーブル内に格納される請求項9または10に記載の方法。
【請求項12】
時間領域から周波数領域への信号処理装置であって、
時間領域データを前処理するように適合された前処理ユニットと、
回転因子
【数11】

を使用することによって、前記前処理ユニットにより得られた前記データを前回転するように適合された第1の前回転ユニットと、
前記第1の前回転ユニットによって処理された前記データに対してN/4点の離散フーリエ変換(DFT)を実行するように適合された第1のフーリエ変換ユニットと、
回転因子
【数12】

を使用することによって前記第1のフーリエ変換ユニットにより変換された前記データを後回転して周波数領域データを取得するように適合された第1の後回転ユニットとを備え、式中、
【数13】


【数14】

であり、nおよびkはそれぞれすべてN/4以下の非負整数である時間領域から周波数領域への信号処理装置。
【請求項13】
前記第1のフーリエ変換ユニットは、
アドレステーブルに基づき前記第1の前回転ユニットによって処理された前記データに対しQ回にわたってP点DFTを実行するように適合された第1の変換ユニットと、
前記アドレステーブルに基づき前記第1の変換ユニットによって変換された前記データに対しP回にわたってQ点DFTを実行するように適合された第2の変換ユニットとを備える請求項12に記載の装置。
【請求項14】
周波数領域から時間領域への信号処理装置であって、
周波数領域データにひねりを施すように適合されたひねり処理ユニットと、
回転因子
【数15】

を使用することによって、前記ひねり処理ユニットにより得られた前記データを前回転するように適合された第2の前回転ユニットと、
前記第2の前回転ユニットによって処理された前記データに対してN/4点の離散フーリエ変換(DFT)を実行するように適合された第2のフーリエ変換ユニットと、
回転因子
【数16】

を使用することによって、前記第2のフーリエ変換ユニットにより得られた前記データを後回転するように適合された第3の後回転ユニットと、
前記第3の後回転ユニットによって処理された前記データを後処理して時間領域データを取得するように適合された後処理ユニットとを備え、式中、
【数17】


【数18】

であり、nおよびkはそれぞれすべてN/4以下の非負整数である周波数領域から時間領域への信号処理装置。
【請求項15】
前記第2のフーリエ変換ユニットは、
アドレステーブルに基づき前記第2の前回転ユニットによって処理された前記データに対しQ回にわたってP点DFTを実行するように適合された第3の変換ユニットと、
前記アドレステーブルに基づき前記第3の変換ユニットによって変換された前記データに対しP回にわたってQ点DFTを実行するように適合された第4の変換ユニットとを備える請求項14に記載の装置。
【請求項16】
データ処理方法であって、
アドレステーブルを作成するか、または格納するように適合されたアドレステーブルユニットと、
前記アドレステーブルユニットによって作成されるか、または格納されている前記アドレステーブルに基づき前記データに対しQ回にわたってP点離散フーリエ変換(DFT)を実行するように適合された第5の変換ユニットと、
前記アドレステーブルユニットによって作成されるか、または格納されている前記アドレステーブルに基づき前記第5の変換ユニットによって変換された前記データに対しP回にわたってQ点DFTを実行するように適合された第6の変換ユニットとを備えるデータ処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公表番号】特表2012−527708(P2012−527708A)
【公表日】平成24年11月8日(2012.11.8)
【国際特許分類】
【出願番号】特願2012−512184(P2012−512184)
【出願日】平成22年4月22日(2010.4.22)
【国際出願番号】PCT/CN2010/072029
【国際公開番号】WO2010/148743
【国際公開日】平成22年12月29日(2010.12.29)
【出願人】(504277388)▲ホア▼▲ウェイ▼技術有限公司 (220)
【Fターム(参考)】