(57)【要約】  本発明は、高速フーリエ変換（ＦＦＴ）／離散フーリエ変換（ＤＦＴ）の逆順ソーティングシステムを開示する。逆順ソーティングシステムは、各ポイントの順番逆転すべきデータに対応する制御信号を取得し、順番逆転装置に制御信号を送信して、順番逆転装置が受信された制御信号に応じて各ポイントのデータを順番逆転することに用いられる信号制御装置と、受信された制御信号に応じて、順番逆転すべきデータを順番逆転することに用いられる順番逆転装置とを備える。また、本発明は、高速フーリエ変換（ＦＦＴ）／離散フーリエ変換（ＤＦＴ）の逆順ソーティングシステム方法と高速フーリエ変換（ＦＦＴ）／離散フーリエ変換（ＤＦＴ）の逆順ソーティング演算システムを開示する。本発明に開示されたシステム及び方法により、ベクトルプロセッサでＦＦＴ／ＤＦＴを計算する場合、ＦＦＴ／ＤＦＴの逆順ソーティング時間が長すぎ、ベクトルプロセッサの利用効率が低い問題を解決し、且つＦＦＴ／ＤＦＴのベクトル計算効率を向上させることができる。
2015503785.tif 000002
【特許請求の範囲】
【請求項１】
各ポイントの順番逆転すべきデータに対応する制御信号を取得し、前記順番逆転装置に前記制御信号を送信することに用いられ、
前記制御信号が特定の順番逆転ルールに基づいて設定され、前記特定の順番逆転ルールが、順番逆転すべきデータのポイント数Ｎ＝ｐｍ...ｐｉ...ｐ２ｐ１に応じて、当該ポイント数がラディクスｐｍ、...ラディクスｐｉ、... ラディクスｐ２、ラディクスｐ１の順番に応じてｍ段のＦＦＴ／ＤＦＴの逆順ソーティングを行われることを確定し、第ｍ-ｉ段のデータを順番逆転する場合、隣接しているｐｍ*ｐｍ-1*...*ｐｉ＋１を一つのデータグループにして、データに対応するアドレスディジットをｃｍ...ｃ２ｃ１に表し、ｃｍ...ｃ２ｃ１の第ｉディジットのｃｉがその値に応じて上から下にpi個の部分に分けられ、前記データグループを単位にして交互にソーティングされるものである信号制御装置と、
受信された前記制御信号に応じて、前記順番逆転すべきデータを順番逆転することに用いられる順番逆転装置とを備えることを特徴とする高速フーリエ変換（ＦＦＴ）／離散フーリエ変換（ＤＦＴ）の逆順ソーティングシステム。
【請求項２】
前記信号制御装置に制御信号検索テーブルが記憶されており、
それに応じて、前記信号制御装置は、前記制御信号検索テーブルで前記順番逆転すべきデータに対応する制御信号を検索して送信することに用いられることを特徴とする
請求項１に記載のシステム。
【請求項３】
制御信号検索テーブル記憶装置をさらに備え、
それに応じて、前記信号制御装置は、前記制御信号検索テーブル記憶装置から記憶された制御信号検索テーブルを取得し、前記制御信号検索テーブルで前記順番逆転すべきデータに対応する制御信号を検索して送信することに用いられることを特徴とする
請求項１記載のシステム。
【請求項４】
前記信号制御装置から送信された制御信号を受信して交換ユニットに送信することに用いられる制御信号処理ユニットと、
各ポイントの順番逆転すべきデータを記憶することに用いられる記憶ユニットと、
前記交換ユニットは、前記制御信号に応じて記憶ユニットに記憶された順番逆転すべきデータを交換することに用いられる交換ユニットとをさらに備えることを特徴とする
請求項１に記載のシステム。
【請求項５】
前記交換ユニットは、ｍ段の網状構造を構成し、各段の交換ユニットの数量が同じであり、
各段の前記交換ユニットの数量がベクトルプロセッサにおける演算ユニット数によって決定されることを特徴とする
請求項４に記載のシステム。
【請求項６】
各段の交換ユニットの数量がベクトルプロセッサにおける演算ユニット数の半分であることであることを特徴とする
請求項５に記載のシステム。
【請求項７】
前記交換ユニットは、２つのマルチプレクサを含み、
各マルチプレクサの制御信号入力側は、２つのポイントの順番逆転すべきデータに対応する制御信号を入力することに用いられ、
各マルチプレクサの２つのデータ入力側は、それぞれ２つのポイントの順番逆転すべきデータに対応する記憶ユニットに接続され、入力された前記制御信号に応じて、入力された２つのポイントのデータを交換し、または直接通過させることを特徴とする
請求項６に記載のシステム。
【請求項８】
ベクトル演算装置と、ベクトルレジスタと、メモリとを備え、前記ベクトル演算装置が各段のＦＦＴ／ＤＦＴの演算後のデータを前記ベクトルレジスタに送信してキャッシュし、前記ベクトルレジスタによりキャッシュされたデータが順番逆転されて前記メモリに送信されるＦＦＴ／ＤＦＴの演算システムであって、
請求項１〜７に記載の逆順ソーティングシステムをさらに備え、
前記逆順システムは、前記ベクトル演算装置により各段ＦＦＴ／ＤＦＴの演算を行われて前記ベクトルレジスタにキャッシュされたデータを順番逆転して、前記メモリに送信することに用いられ、
前記メモリは、前記逆順システムにより順番逆転された各段のデータを記憶し、次の段の演算すべきデータを前記ベクトルレジスタに送信してキャッシュし、次の段のＦＦＴ／ＤＦＴの演算を待っていることに用いられることを特徴とするシステム。
【請求項９】
ＦＦＴ／ＤＦＴの逆順ソーティング方法であって、
各ポイントの順番逆転すべきデータに対応する制御信号を取得し、前記制御信号に応じて、前記順番逆転すべきデータを順番逆転するステップとを含み、
前記制御信号は、特定の順番逆転ルールに基づいて設定され、前記特定の逆順ルールが、順番逆転すべきデータのポイント数Ｎ＝ｐｍ...ｐｉ...ｐ２ｐ１に応じて、当該ポイント数がラディクスｐｍ、...ラディクスｐｉ、... ラディクスｐ２、ラディクスｐ１の順番に応じてｍ段のＦＦＴ／ＤＦＴの逆順ソーティングを行われることを確定し、第ｍ-ｉ段のデータを順番逆転する場合、隣接しているｐｍ*ｐｍ-1*...*ｐｉ＋１を一つのデータグループにして、データに対応するアドレスディジットをｃｍ...ｃ２ｃ１に表し、ｃｍ...ｃ２ｃ１の第ｉディジットのｃｉが、上から下にpi個の部分に分けられ、前記データグループを単位にして交互にソーティングされることを特徴とする方法。
【請求項１０】
各段のデータを逆順ソーティングする場合、記憶された制御信号検索テーブルを検索することにより、前記順番逆転すべきデータに対応する制御信号を検索し、前記制御信号に応じてこの段のデータを逆順ソーティングするステップをさらに含むことを特徴とする
請求項９に記載の逆順ソーティング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信技術分野に関し、特に、高速フーリエ変換（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ、ＦＦＴ）／離散フーリエ変換（ＤＦＴ）の逆順ソーティングシステム、方法およびその演算システムに関する。
【背景技術】
【０００２】
ＦＦＴ及びＤＦＴは、信号処理、通信システム、特に、直交周波数分割多重技術（ＯＦＤＭ：Ｏｒｔｈｏｇｏｎａｌ  Ｆｒｅｑｕｅｎｃｙ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅｘｉｎｇ）に関する長期発展型（Ｌｏｎｇ  ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ、ＬＴＥ）、デジタルオーディオ放送（Ｄｉｇｉｔａｌ  Ａｕｄｉｏ  Ｂｒｏａｄｃａｓｔ、ＤＡＢ）などの通信システムに広くに応用されている。従来のＦＦＴ／ＤＦＴアルゴリズムは、時間間引き（ＤＩＴ）アルゴリズムや周波数間引き（ＤＩＦ）アルゴリズムに関わらず、入力データまたは出力データに対して専門的な順番逆転操作を一回行わなければならず、且つＤＩＴアルゴリズムやＤＩＦアルゴリズムに関わらず、ベクトルプロセッサで実現される場合に、ベクトル処理ユニットに一定の交差接続線を導入しなければならなく、そうでなければ、ベクトルプロセッサの効率を十分に発揮することができず、消費電力の増加をもたらす。
【０００３】
図１に示すように、１６ポイントの正順番で入力されたＦＦＴの時間間引きアルゴリズムのフローチャートであり、直接に４つのＤＩＦバタフライベクトルプロセッサで実現される場合、最高の効率は、各段のＦＦＴが２回のベクトルバタフライ演算により完了されるものである。図２から分かるように、最後の２段のＦＦＴが交差接続線を導入しなければ、すべての４つのバタフライを十分に利用することができず、そうでなければ、ベクトルプロセッサの効率を十分に発揮することができない。特に最後の１段に毎回一つだけのバタフライを演算できるので、効率が大幅に低下し、消費電力が増加する。
【０００４】
一方、交差接続線の導入により演算の効率を向上させることができるが、計算ユニットが多い場合、接続線の数量が膨大になり、例えば、ベクトル計算ユニットが１６個のＤＩＴユニットを備える場合、ＦＦＴ演算は、最後の４段で交差接続線を導入しなければならず、交差接続線の総数が４０００と多く、ここで、データのディジット（ｄｉｇｉｔ）幅が１６とすると、大量の交差接続線により充放電の電流増加と消費電力の増加をもたらす。
【０００５】
また、上記の交差接続線の問題のほかに、標準的なＦＦＴ／ＤＦＴアルゴリズムは、バタフライ演算に加えて、一回の専門的なデータ順番逆転操作を必要とする。データの順番逆転は、シリアルまたはパラレルで行われることができ、シリアル方式において、ソフトウェアまたはハードウェアで各データの順番逆転後のアドレスを計算することができ、この方式の順番逆転は、大量の時間がかかり、ベクトルバタフライユニットが多い場合、順番逆転時間がバタフライ演算のための時間の数倍かもしれないので、ベクトルプロセッサの効率が低下する。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の実施例は、ＦＦＴ／ＤＦＴ演算における逆順ソーティングを高速で並列に完了することができるＦＦＴ／ＤＦＴの逆順ソーティングシステム、方法およびその演算システムを提供する。
【課題を解決するための手段】
【０００７】
本発明の実施例に係るＦＦＴ／ＤＦＴの逆順ソーティングシステムは
各ポイントの順番逆転すべきデータに対応する制御信号を取得し、前記順番逆転装置に前記制御信号を送信することに用いられ、前記制御信号が特定の順番逆転ルールに基づいて設定され、前記特定の順番逆転ルールが、順番逆転すべきデータのポイント数Ｎ＝ｐｍ...ｐｉ...ｐ２ｐ１に応じて、当該ポイント数がラディクスｐｍ、...ラディクスｐｉ、... ラディクスｐ２、ラディクスｐ１の順番でｍ段のＦＦＴ／ＤＦＴの逆順ソーティングを行われるこを判断し、第ｍ-ｉ段のデータを順番逆転する場合、隣接しているｐｍ*ｐｍ-1*...*ｐｉ＋１を一つのデータグループにし、データに対応するアドレスディジット（ｄｉｇｉｔ）をｃｍ...ｃ２ｃ１に表し、その第ｉディジットのｃｉがその値に応じて上から下にpi個の部分に分けられ、前記データグループを単位にして交互にソーティングされるものである信号制御装置と、
受信された前記制御信号に応じて前記順番逆転すべきデータを順番逆転することに用いられる順番逆転装置とを備える。
【０００８】
好ましくは、前記信号制御装置に制御信号検索テーブルが記憶されており、それに応じて、信号制御装置は、前記制御信号検索テーブルで前記順番逆転すべきデータに対応する制御信号を検索して送信することに用いられる。
【０００９】
また、前記システムは、制御信号検索テーブル記憶装置をさらに備える。
【００１０】
それに応じて、前記信号制御装置は、前記制御信号検索テーブル記憶装置から記憶された制御信号検索テーブルを取得し、前記制御信号検索テーブルで前記順番逆転すべきデータに対応する制御信号を検索して送信することに用いられる。
【００１１】
また、前記順番逆転装置は、
前記信号制御装置から送信された制御信号を受信して対応する交換ユニットに送信することに用いられる制御信号処理ユニットと、
各ポイントの順番逆転すべきデータを記憶することに用いられる記憶ユニットと、
前記制御信号に応じて記憶ユニットに記憶された順番逆転すべきデータを交換することに用いられる交換ユニットとをさらに含む。
【００１２】
好ましくは、前記交換ユニットは、多段の網状構造を構成し、段数がベクトルプロセッサによりアクセスされたデータの幅によって決定され、
各段の交換ユニットの数量が同じであり、
各段の前記交換ユニットの数量がベクトルプロセッサにおける演算ユニットの数量によって決定される。
【００１３】
好ましくは、各段の前記交換ユニットの数量がベクトルプロセッサにおける演算ユニットの数量によって決定されることは、
各段の交換ユニットの数量がベクトルプロセッサにおける演算ユニットの数量の半分であることである。
【００１４】
好ましくは、前記交換ユニットは、具体的に２つのマルチプレクサを含み、
各マルチプレクサの制御信号入力側は、２つのポイントの順番逆転すべきデータに対応する制御信号を入力することに用いられ、
各マルチプレクサの２つのデータ入力側は、それぞれ２つのポイントの順番逆転すべきデータに対応する記憶ユニットに接続され、入力された前記制御信号に応じて、入力された２つのポイントのデータを交換し、または直接通過させる。
【００１５】
本発明に係るＦＦＴ／ＤＦＴ演算システムは、ベクトル演算装置と、ベクトルレジスタと、メモリとを備え、前記ベクトル演算装置が各段のＦＦＴ／ＤＦＴ演算後のデータを前記ベクトルレジスタに送信してキャッシュし、前記ベクトルレジスタによりキャッシュされたデータが順番逆転されて前記メモリに送信される。前記システムは、上述した順番逆転システムをさらに備える。
【００１６】
前記順番逆転システムは、前記ベクトル演算装置により各段のＦＦＴ／ＤＦＴ演算を行われた後、前記ベクトルレジスタにキャッシュされたデータを順番逆転して、前記メモリに送信することに用いられる。
【００１７】
前記メモリは、前記順番逆転システムにより順番逆転された各段のデータを記憶し、次の段の演算すべきデータを前記ベクトルレジスタに送信してキャッシュし、次の段のＦＦＴ／ＤＦＴ演算を待っていることに用いられる。
【００１８】
本発明に係るＦＦＴ／ＤＦＴの逆順ソーティング方法は、
各ポイントの順番逆転すべきデータに対応する制御信号を取得し、前記制御信号に応じて、前記逆順すべきデータを順番逆転するようにソーティングするステップを含む。
【００１９】
ここで、前記制御信号は、特定の順番逆転ルールに基づいて設定され、前記特定の順番逆転ルールが、順番逆転すべきデータのポイント数Ｎ＝ｐｍ...ｐｉ...ｐ２ｐ１に応じて、当該ポイント数がラディクスｐｍ、...ラディクスｐｉ、... ラディクスｐ２、ラディクスｐ１の順番でｍ段のＦＦＴ／ＤＦＴの逆順ソーティングを行われることを確定し、順番逆転ルールが、第ｍ-ｉ段のデータを順番逆転する場合、隣接しているｐｍ*ｐｍ-1*...*ｐｉ＋１を一つのデータグループにして、データに対応するアドレスディジット（ｄｉｇｉｔ）をｃｍ...ｃ２ｃ１に表し、その第ｉディジットのｃｉがその値に応じて上から下にpi個の部分に分けられ、前記データグループを単位にして交互にソーティングされるものである。
【００２０】
また、初めて順番逆転すべきデータを取得する場合、演算段を０に初期化し、
次の段の逆順データを受信するたびに、演算段に１を加える。
【００２１】
また、各段のデータを逆順ソーティングする場合、記憶された制御信号検索テーブルを検索することで、前記順番逆転すべきデータに対応する制御信号を検索し、前記制御信号に応じてこの段のデータを逆順ソーティングする。ｍ回のバタフライ演算とｍ-１回のソーティングを経た後、ＦＦＴ／ＤＦＴ演算を完了させる。
【発明の効果】
【００２２】
本発明は、従来技術に比べて以下のようなメリットを持っている。
【００２３】
本発明の実施例に係るＦＦＴ／ＤＦＴの逆順ソーティングシステム、方法およびその演算システムによれば、ＦＦＴ／ＤＦＴの逆順ソーティングは、ベクトルパイプラインデータチャネル中のハードウェアソーティングネットワークにおける交換ユニットにより行われ、各段のバタフライ演算後にパイプラインにおける順番逆転装置がデータをソーティングするように制御することにより、ベクトルプロセッサでＦＦＴ／ＤＦＴを計算する場合、ＦＦＴ／ＤＦＴの逆順配列時間が長すぎ、ベクトルプロセッサの利用効率が低い問題を解決して、ＦＦＴ／ＤＦＴのベクトル演算の効率を向上させることができる。
【図面の簡単な説明】
【００２４】
【図１】従来技術における１６ポイントの正順番で入力されたＦＦＴの時間間引きのフローチャートである。
【図２】図１の４つのＤＩＦバタフライベクトルプロセッサの必要な交差線のレイアウト図である。
【図３】本発明の実施例に係る逆順ソーティングシステムの構造を示す図である。
【図４】本発明の実施例に係る演算システムの構造を示す図である。
【図５】本発明の実施例に係る方法のフローチャートである。
【図６】本発明の実施例１に係る順番逆転装置の構造を示す図である。
【図７】本発明の実施例１における交換ユニットの構造を示す図である。
【図８】本発明の実施例２に係る１６ポイントのＦＦＴの反復順番逆転ルールを示す図である。
【図９】本発明の実施例３に係る２４ポイントのＤＦＴの反復順番逆転ルールを示す図である。
【図１０】本発明の実施例４に係る１６ポイントのデータを段間にソーティングするフローチャートである。
【図１１】本発明の実施例５に係る２４ポイントのデータを段間にソーティングするフローチャートである。
【図１２】本発明の実施例６における１６個のＤＩＦバタフライユニットによりソーティングするフローチャートである。
【図１３】本発明の実施例６における第１段のデータチャネルの構造を示す図である。
【図１４】本発明の実施例６における第２段のデータチャネルの構造を示す図である。
【図１５】本発明の実施例６における第３段のデータチャネルの構造を示す図である。
【図１６】本発明の実施例６における第４段のデータチャネルの構造を示す図である。
【発明を実施するための形態】
【００２５】
以下、各図面を参照して本発明の実施例に係る技術的スキームの主な実現原理、具体的な実施形態およびそれに対応する有益な効果を詳細に説明する。
【００２６】
図３は本発明の実施例に係る逆順ソーティングシステムの構造を示す図である。当該逆順ソーティングシステムは、信号制御装置３１と、順番逆転装置３２とを備える。
【００２７】
信号制御装置３１は、各ポイントの順番逆転すべきデータに対応する制御信号を取得し、順番逆転装置３２に前記制御信号を送信して、前記順番逆転装置３２が受信された前記制御信号に応じて各ポイントのデータを、特定の順番逆転ルールに基づいて順番逆転することに用いられ、前記制御信号が前記特定の順番逆転ルールに基づいて設定され、前記特定の逆順ルールが、順番逆転すべきデータのポイント数Ｎ＝ｐｍ...ｐｉ...ｐ２ｐ１に応じて、当該ポイント数がラディクスｐｍ、...ラディクスｐｉ、... ラディクスｐ２、ラディクスｐ１の順番でｍ段のＦＦＴ／ＤＦＴの逆順ソーティングを行われることを判断し、第ｍ-ｉ段のデータを順番逆転する場合、隣接しているｐｍ*ｐｍ-1*...*ｐｉ＋１を一つのデータグループにして、データに対応するアドレスディジット（ｄｉｇｉｔ）をｃｍ...ｃ２ｃ１に表し、その第ｉディジットのｃｉがその値に応じて上から下にpi個の部分に分けられ、前記データグループを単位にして交互にソーティングされる。
【００２８】
逆順装置３２は、受信された前記制御信号に応じて前記順番逆転すべきデータを順番逆転することに用いられる。
【００２９】
前記信号制御装置に制御信号検索テーブルが記憶されている。
【００３０】
それに応じて、信号制御装置は、前記制御信号検索テーブルで前記順番が逆転すべきデータに対応する制御信号を検査して送信することに用いられる。
【００３１】
前記逆順システムは、制御信号検索テーブル記憶装置をさらに備える。
【００３２】
それに応じて、前記信号制御装置は、前記制御信号検索テーブル記憶装置から記憶された制御信号検索テーブルを取得し、前記制御信号検索テーブルで前記順番逆転すべきデータに対応する制御信号を検出して送信することに用いられる。
【００３３】
ここで、前記順番逆転装置は、制御信号処理ユニットと、記憶ユニットと、交換ユニットとをさらに備える。
【００３４】
前記制御信号処理ユニットは、前記信号制御装置から送信された制御信号を受信して交換ユニットに送信することに用いられる。
【００３５】
前記記憶ユニットは、各ポイントの順番逆転すべきデータを記憶することに用いられる。
【００３６】
前記交換ユニットは、前記制御信号に応じて記憶ユニットに記憶された順番逆転すべきデータを交換することに用いられる。
【００３７】
ここで、前記交換ユニットは、ｍ段の網状構造を構成し、各段の交換ユニットの数量が同じである。
【００３８】
各段の交換ユニットの数量は、ベクトルプロセッサにおける演算ユニット数によって決定される。
【００３９】
すなわち、各段の交換ユニットの数量がベクトルプロセッサにおける演算ユニットの数量の半分である。
【００４０】
ここで、前記交換ユニットは、２つのマルチプレクサを含む。
【００４１】
各マルチプレクサの制御信号入力側は、２つのポイントの順番逆転すべきデータに対応する制御信号を入力することに用いられる。
【００４２】
各マルチプレクサの２つのデータ入力側は、それぞれ２つのポイントの順番逆転すべきデータに対応する記憶ユニットに接続され、入力された前記制御信号に応じて、入力された２つのポイントのデータを交換し、または直接通過させる。
【００４３】
図４は本発明の実施例に係る演算システムの構造を示す図である。前記演算システムは、ベクトル演算装置４１と、ベクトルレジスタ４２と、メモリ４３とを備え、ベクトル演算装置４１が各段のＦＦＴ／ＤＦＴ演算後のデータをベクトルレジスタ４２に送信してキャッシュし、ベクトルレジスタ４２によりキャッシュされたデータが順番逆転されて前記メモリ４３に送信され、前記演算システムは、順番逆転システム４４をさらに備える。
【００４４】
順番逆転システム４４は、前記ベクトル演算装置４１により各段のＦＦＴ／ＤＦＴの演算を行われて前記ベクトルレジスタ４２にキャッシュされたデータを順番逆転して、前記メモリ４３に送信することに用いられる。
【００４５】
メモリ４３は、各段の前記順番逆転システム４４により順番逆転されたデータを記憶し、次の段の演算すべきデータを前記ベクトルレジスタ４２に送信してキャッシュし、次の段ＦＦＴ／ＤＦＴの演算を待っていることに用いられる。
【００４６】
図５は本発明の実施例に係る方法のフローチャートである。前記方法は、以下のステップを含む。
【００４７】
ステップ１：各ポイントの順番逆転すべきデータに対応する制御信号を取得する。
【００４８】
ステップ２：前記制御信号に応じて、前記順番逆転すべきデータを順番逆転する。
【００４９】
ここで、前記制御信号は、特定の順番逆転ルールに基づいて設定され、前記特定の逆順ルールが、順番逆転すべきデータのポイント数Ｎ＝ｐｍ...ｐｉ...ｐ２ｐ１に応じて、当該ポイント数がラディクスｐｍ、...ラディクスｐｉ、... ラディクスｐ２、ラディクスｐ１の順番でｍ段のＦＦＴ／ＤＦＴの逆順ソーティングを行行われることを確定し、第ｍ-ｉ段のデータを順番逆転する場合、隣接しているｐｍ*ｐｍ-1*...*ｐｉ＋１を一つのデータグループにして、データに対応するアドレスディジット（ｄｉｇｉｔ）をｃｍ...ｃ２ｃ１に表し、その第ｉディジットのｃｉがその値に応じて上から下にpi個の部分に分けられ、前記データグループを単位にして交互にソーティングされるものである。
【００５０】
図６は本発明の実施例１による逆順装置の構造を示す図である。図６に示すように、各黒点は、１つの交換ユニットを表し、５段の交換ユニットを含み、各段の交換ユニットの数量が１６個であり、３２個のサブスクリプト装置、すなわち、記憶ユニットで順番逆転すべきデータを記憶することにより、各ポイントデータは、直接的又は交差して出力されることができる。具体的なチャネルは、交換ユニットにより受信された制御信号によって制御される。図７は交換ユニットの構造を示す図である。前記交換ユニットは、図７の矩形ブロック内に示される二つのマルチプレクサを含み、各マルチプレクサの制御信号入力側Ｃｔ１が二つのポイントの順番逆転すべきデータに対応する制御信号を入力することに用いられ、各マルチプレクサの二つのデータ入力側Ｉｎ０、Ｉｎ１がそれぞれ二つのポイントの順番逆転すべきデータに対応する記憶ユニットに接続され、入力された前記制御信号によって、入力された二つのポイントのデータを交換し、その出力側Ｏｕｔ０、Ｏｕｔ１を介して交換された二つのポイントのデータを出力する。
【００５１】
図８は本発明の実施例２に係る１６ポイントのＦＦＴの反復順番逆転ルールを示す図である。そのプロセスは、以下のとおりである。１６個のデータが４個のアドレスディジット（ｄｉｇｉｔ）Ｃ４Ｃ３Ｃ２Ｃ１で表され、左から右に、データを一回ソーティングするたびに、４つのアドレスディジット（ｄｉｇｉｔ）が毎回１つのディジットを増やして最終の順番逆転結果に一致するようにする。第１回のソーティングにより、Ｃ４が順番逆転後のアドレス配列に一致し、そのプロセスがデータをＣ４＝０の上半分とＣ４＝１の下半分に分割し、その後上半分と下半分を交互にソーティングすることにより実現される。第２回のソーティングにより、Ｃ３が順番逆転後のアドレス配列に一致し、既に配列されたＣ４が影響を受けないようにするために、隣接しているＣ４をそれぞれ０と１であるデータに分割して二つずつ１つのデータグループと見なし、データグループを単位にしてデータをソーティングし、そのプロセスがＣ４のソーティングプロセスと類似し、同様に、データをＣ３＝０の上半分とＣ３＝１の下半分に分割し、その後上半分と下半分のデータを、データグループを単位にして交互にソーティングすることにより実現される。第３回のソーティングにより、Ｃ２が順番逆転後のアドレス配列に一致し、既に配列されたＣ４Ｃ３が影響を受けないことを保証するために、隣接しているＣ４Ｃ３がそれぞれ００、０１、１０、１１であるデータを１つのデータグループと見なし、データグループを単位にしてデータをソーティングし、同様に、データをＣ２＝０の上半分とＣ２＝１の下半分に分割し、その後上半分と下半分のデータを、データグループを単位にして交互にソーティングすることにより実現される。この場合、Ｃ１の配列順番と順番逆転後のＣ１の配列順番は、自動的に一致し、順番逆転を完了する。
【００５２】
図９は本発明の実施例３に係る２４ポイントのＤＦＴの反復順番逆転ルールを示す図である。図９に示すように、ラディクス２、２、３、２の順番で計算された２４ポイントのＤＦＴの反復順番逆転プロセスは、以下のとおりである。そのアドレス混合ラディクスがＣ４Ｃ３Ｃ２Ｃ１（Ｃ４、Ｃ３およびＣ１が２進数（ｂｉｎａｒｙ）であり、Ｃ２が３進数（ｔｅｒｎａｒｙ）である）に表されると仮定した場合、第１回のソーティングにより、Ｃ４の順番が順番逆転後のアドレス配列に一致し、そのソーティングプロセスが上記の１６ポイントのＦＦＴと類似する。第２回のソーティングにより、Ｃ３の順番が順番逆転後のアドレス配列に一致し、そのソーティングプロセスは、上記の１６ポイントのＦＦＴと類似する。第３回のソーティングにより、Ｃ２の順番が順番逆転後のアドレス配列に一致し、そのソーティングプロセスが、ソーティングされたＣ４Ｃ３への影響を避けるように、隣接しているＣ４Ｃ３がそれぞれ００、０１、１０、１１であるデータを１つのデータグループと見なし、データグループを単位にしてデータをソーティングし、その後、データをＣ２の値に応じてＣ２＝０、１、２の３つの部分に分割して、３つの部分のデータを、データグループを単位にして交互にソーティングすることである。この場合、Ｃ１の順番と順番逆転後のＣ１の配列順番は、自動的に一致して、順番逆転を完了する。
【００５３】
図１０は本発明の実施例４に係る１６ポイントのデータを段間にソーティングするフローチャートである。図１１は本発明の実施例５に係る２４ポイント（ラディクス２、２、３、２）のデータを段間にソーティングするフローチャートである。図１０と図１１に示すように、各ポイントのデータが正順番で入力され、演算結果は、ＦＦＴ／ＤＦＴの順番逆転すべき結果である。同時に、図１０と図１１から分かるように、各段の入力が要求に応じてソーティングされると、バタフライ演算のラディクスが同じであれば、異なる演算段の入力データが完全に同じ順番でベクトルユニットに送信されて演算されることができる。１６ポイントのＦＦＴを例にすると、各段で、最初の８個のデータと最後の８個のデータが対応してバタフライを構成して演算し、かつバタフライの入力データ間に等しい最大距離があり、バタフライのベクトル計算に非常に有利であり、且つベクトル計算ユニットにＦＦＴ／ＤＦＴのために余分なデータ接続線を導入する必要がないため、消費電力の低減にも有利である。順番逆転のために占用される時間を完全になくすために、上記のソーティングプロセスを、図４に示すようにデータをレジスタからメモリに記憶するパイプライン段に挿入することができる。ベクトル演算ユニットに１６個のＤＩＴバタフライユニットがあり、かつＦＦＴ／ＤＦＴポイント数に少なくとも４つの因子２が含まれる場合、ソーティングネットワークにおいて図１２に示すような４段のデータソーティングモードを実現する必要がある。ここで、ラディクス２演算を一番前に配列しなければならなく、対応するソーティングが図６に示すような５段のソーティングネットワークで実現されることができる。ここで、図６における各黒点は、一つの交換ユニットを表し、データは、直接通過または交差してもよい。交換ユニットは、図７に示すような回路の構造を採用してもよく、すなわち、２つのマルチプレクサから構成されることができる。当該ソーティングネットワークは、図１２で要求された４段のソーティングを実現することができ、当該ソーティングネットワークにより最初の４段のソーティングを実現する場合のデータチャネルは、図１３〜図１６に示される。
【００５４】
また、より大きなポイント数のＦＦＴのバタフライ演算、例えばＬＴＥの必要な２０４８ポイントのＦＦＴに対して、最初の４段の演算において毎回１０２４ポイントを隔てる連続した１６個のデータをベクトル計算ユニットに入力してバタフライ演算を行い、次に結果をメモリに記憶する場合に淳番逆転システムは、それぞれ４つのソーティング方式でデータをソーティングし、４段後のＦＦＴ演算において、交互にソーティングされたデータグループの長さが１６の倍数であるため、データを記憶する時にメモリへのデータの記憶アドレスを制御するだけで必要なソーティングを実現することができる。ＦＦＴ／ＤＦＴにおける因子２の個数が４個未満の場合、例えば、ＬＴＥアップリンクＤＦＴにおける因子２の個数が少なくとも２つであり、かつ因子２、３、５しかない場合、ラディクス２演算を先ず配列して計算する必要があり、ソーティングネットワークのソーティング機能を利用して演算結果をソーティングし、その後、１または２段の演算は、データがメモリに記憶される場合に長さ４、１２または８のマスクとシフト制御を追加しなければならず、４、１２または８つのバタフライ演算結果を記憶するたびに演算効率が少し低下するが、依然としてデータの記憶アドレスで制御してデータをソーティングするために占有された排他時間を避けることができる。
【００５５】
本発明に係るＦＦＴ／ＤＦＴのベクトル計算アーキテクチャとそれに対応するハードウェアソーティングネットワークでは、ＦＦＴ／ＤＦＴの逆順を実行するため、ベクトル演算結果がメモリのパイプラインに記憶され、データの順番逆転のために占有された排他時間を削除し、且つベクトル計算ユニットに大量の交差接続線が導入されることを避けることができ、ハードウェアのオーバーヘッドを削減し、ＦＦＴ／ＤＦＴ演算の消費電力を削減することができる。このソーティングネットワークは、ベクトル演算に必要なその他のソーティング操作をサポートするため、一連のソーティング操作を実行する。
【００５６】
本分野の当業者は、本発明の実施例が方法、システム、またはコンピュータプログラム製品として提供されることができると理解すべきである。したがって、本発明は、完全なハードウェアの実施例、完全なソフトウェアの実施例、またはソフトウェアとハードウェアを組み合わせた実施例の携帯を適用することができる。また、本発明は、コンピュータ使用可能プログラムコードが含まれている１つ以上のコンピュータ使用可能な記憶媒体で実施されることができるコンピュータプログラム製品の形態を適用することができ、前記コンピュータ使用可能な記憶媒体は、ディスク記憶装置、ＣＤ-ＲＯＭ、光記憶装置を含むがこれらに限定されない。
【００５７】
本発明は、本発明の実施例に係る方法、装置／システム、およびコンピュータプログラム製品のフローチャートおよび／またはブロック図を参照して説明する。コンピュータプログラムコマンドによって、フローチャートおよび／またはブロック図中の各プロセスおよび／またはブロック、およびフローチャートおよび／またはブロック図中のプロセスおよび／またはブロックの組み合わせを実現することができると理解すべきである。これらのコンピュータプログラムコマンドを、汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または他のプログラミング可能なデータ処理装置のプロセッサに提供して1つのマシンを生成することができ、それによってコンピュータまたは他のプログラム可能なデータ処理装置のプロセッサによって実行されるコマンドによってフローチャートにおける１つ以上のプロセスおよび／またはブロック図における１つ以上のブロック中に指定された機能を実現するためのデバイスを生成する。
【００５８】
これらのコンピュータプログラムコマンドは、コンピュータまたは他のプログラミング可能なデータ処理装置が特定の方式で動作するように案内することができるコンピュータ読み取り可能な記憶装置に記憶されることができ、それによってこのコンピュータ読み取り可能な記憶装置に記憶されたコマンドは、コマンドデバイスが含まれている製品を生成し、このコマンドデバイスがフローチャートにおける１つ以上のプロセスおよび／またはブロック図における１つ以上のブロック中に指定された機能を実現する。
【００５９】
これらのコンピュータプログラムコマンドは、コンピュータまたは他のプログラミング可能なデータ処理装置にロードされることができ、それによってコンピュータまたは他のプログラミング可能な装置で一連の操作手順を実行して、コンピュータで実現される処理を生成することにより、コンピュータまたは他のプログラミング可能な装置で実行されるコマンドによって、フローチャートにおける１つ以上のプロセスおよび／またはブロック図における１つ以上のブロック中に指定された機能を実現するための手順を提供される。
【００６０】
本発明の好ましい実施例を説明したが、本分野の当業者にとって一旦基本的な創造性の概念を知った場合、これらの実施例を別に変更および修正することができる。従って、添付された請求項は、好ましい実施例及び本発明の範囲内に含まれるすべての変更と修正が含まれていると解釈されることを意図している。。
【００６１】
明らかに、本分野の当業者にとって、本発明の精神と範囲を逸脱することなく、本発明に対して様々な変更及び変形を行うことができる。このようにして、本発明のこれらの変更及び変形が本発明の請求項およびその同等技術の範囲内に属すると、本発明は、これらの変更及び変形を含むことを意図している。
【図１】
2015503785.tif 000003
【図２】
2015503785.tif 000004
【図３】
2015503785.tif 000005
【図４】
2015503785.tif 000006
【図５】
2015503785.tif 000007
【図６】
2015503785.tif 000008
【図７】
2015503785.tif 000009
【図８】
2015503785.tif 000010
【図９】
2015503785.tif 000011
【図１０】
2015503785.tif 000012
【図１１】
2015503785.tif 000013
【図１２】
2015503785.tif 000014
【図１３】
2015503785.tif 000015
【図１４】
2015503785.tif 000016
【図１５】
2015503785.tif 000017
【図１６】
2015503785.tif 000018
【国際調査報告】
2015503785.tif 000019
2015503785.tif 000020
2015503785.tif 000021
2015503785.tif 000022