(57)【特許請求の範囲】
【請求項１】
ファンクションユニット（Ｆｕｎｃｔｉｏｎ  Ｕｎｉｔ、ＦＵ）と、実行モードとを含む処理部であって、前記実行モードは、第１ＦＵグループに基づくＶＬＩＷ（Ｖｅｒｙ  Ｌｏｎｇ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｗｏｒｄ）モードと、第２ＦＵグループの複数のＦＵに基づく第１ＣＧＡモードと、第２ＦＵグループの前記複数のＦＵのうちのＦＵに基づく第２ＣＧＡモードとを含む処理部と、
前記ＶＬＩＷモードと前記第１ＣＧＡモードと前記第２ＣＧＡモードの構成情報をそれぞれ記憶するように構成された構成メモリと、
モード切替信号を受け取り、前記モード切替信号に対応した前記構成メモリのモード切替を行うように構成されたデコーダと、
前記モード切替信号に対応したモードでは動作しない一以上のＦＵに対応する前記構成メモリの一以上の部分をパワーオフするように構成された制御部と
を含む再構成可能プロセッサ。
【請求項２】
前記デコーダは、モード切替信号によって、前記構成メモリに保存された構成情報を選択／切替し、選択／切替された構成情報を前記処理部に伝達するように構成される、請求項１に記載の再構成可能プロセッサ。
【請求項３】
前記構成メモリは、
前記第１ＣＧＡモードの第１ＣＧＡ構成情報と前記第２ＣＧＡモードの第２ＣＧＡ構成情報とを互いに異なるメモリ領域に保存することを特徴とする請求項２に記載の再構成可能プロセッサ。
【請求項４】
前記第２ＣＧＡ構成情報は、前記第１ＣＧＡ構成情報よりも小さいサイズを有することを特徴とする請求項３に記載の再構成可能プロセッサ。
【請求項５】
前記デコーダは、
前記第１ＣＧＡモードにおいて、前記第１ＣＧＡ構成情報を前記処理部にそのまま伝達し、
前記第２ＣＧＡモードにおいて、前記第２ＣＧＡ構成情報を前記処理部に変換して伝達することを特徴とする請求項３又は４に記載の再構成可能プロセッサ。
【請求項６】
前記デコーダは、
前記第２ＣＧＡ構成情報のうち、前記第２ＦＵグループの前記複数のＦＵのうちのＦＵにマッピングされていない構成情報を、既定の値に変更することを特徴とする請求項５に記載の再構成可能プロセッサ。
【請求項７】
前記第１ＣＧＡモードと前記第２ＣＧＡモードとの切替えは、前記ＶＬＩＷモードを経てなされることを特徴とする請求項１乃至６いずれか一項に記載の再構成可能プロセッサ。
【請求項８】
前記処理部は、
前記第２ＦＵグループの前記複数のＦＵのうちのＦＵと異なるＦＵに基づいた第３ＣＧＡモードをさらに含むことを特徴とする請求項１乃至７いずれか一項に記載の再構成可能プロセッサ。
【請求項９】
複数のファンクションユニット（ＦＵ）と、第１ＦＵグループに基づくＶＬＩＷモード、第２ＦＵグループの複数のＦＵに基づく第１ＣＧＡモード、及び第２ＦＵグループの前記複数のＦＵのうちのＦＵに基づく第２ＣＧＡモードを含む実行モードとを含む処理部を有する再構成可能プロセッサのためのコード変換装置であって、
前記第１ＦＵグループに関するハードウェア情報と定義されるＶＬＩＷハードウェア情報、前記第２ＦＵグループの前記複数のＦＵに関するハードウェア情報と定義される第１ＣＧＡハードウェア情報、及び前記第２ＦＵグループの前記複数のＦＵのうちのＦＵに関するハードウェア情報と定義される第２ＣＧＡハードウェア情報のうち何れか１つのハードウェア情報を選択的に提供するハードウェア情報提供部と、
前記ハードウェア情報提供部によって選択的に提供された前記ハードウェア情報に基づいてコードをコンパイルするコンパイラと、を含み、
前記コンパイラは、前記第２ＣＧＡハードウェア情報が選択されるのに応じて、選択的に提供されたハードウェア情報に基づいて、前記第２ＦＵグループの前記複数のＦＵのうちのＦＵ以外の、残りのＦＵに関する命令またはデータをマッピングしない、
コード変換装置。
【請求項１０】
前記ハードウェア情報提供部は、コードの性質またはユーザの命令に基づいて、前記ハードウェア情報を選択的に提供することを特徴とする請求項９に記載のコード変換装置。
【請求項１１】
複数のファンクションユニット（ＦＵ）と、第１ＦＵグループに基づくＶＬＩＷモード、第２ＦＵグループの複数のＦＵに基づく第１ＣＧＡモード、及び第２ＦＵグループの前記複数のＦＵのうちのＦＵに基づく第２ＣＧＡモードを含む実行モードと
を有する処理部を有する再構成可能プロセッサのためのコード変換方法であって、
コードの性質またはユーザの命令に基づいて、前記第１ＦＵグループに関するハードウェア情報と定義されるＶＬＩＷハードウェア情報、前記第２ＦＵグループの前記複数のＦＵに関するハードウェア情報と定義される第１ＣＧＡハードウェア情報、及び前記第２ＦＵグループの前記複数のＦＵのうちのＦＵに関するハードウェア情報と定義される第２ＣＧＡハードウェア情報のうち何れか１つのハードウェア情報を選択的に提供する段階と、
選択的に提供された前記ハードウェア情報に基づいてコードをコンパイルする段階と、を含み、
前記第２ＣＧＡハードウェア情報が選択されるのに応じて、マッピングされるコードは、選択的に提供されるハードウェア情報に基づいて、第２ＦＵグループの複数のＦＵのうちのＦＵを除く残りのＦＵに関するマッピングされる命令又はデータを含まない、
コード変換方法。
【請求項１２】
前記ハードウェア情報を選択的に提供する段階は、
コードの性質またはユーザの命令に基づいて、前記ハードウェア情報を選択的に提供することを特徴とする請求項１１に記載のコード変換方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再構成可能プロセッサ及びそのコード変換装置及び方法に関する。
【背景技術】
【０００２】
ハードウェアは、ほとんど固定された機能を有する。したがって、タスクの処理時に発生した変更や変化をハードウェアのみを用いて効果的に処理するのは困難である。
【０００３】
一方、ソフトウェアは、タスクを処理する間に、ソフトウェアのみでも容易に変更や変化に対処できるが、ハードウェアのみを利用するよりもタスクの処理速度が遅い。再構成可能アーキテクチャーは、コンピューティング装置でハードウェアの構成を変更して、特定のタスクにハードウェアを最適化することができる。再構成可能アーキテクチャーは、ハードウェア及びソフトウェアの長所をいずれも満足させるように設計される。したがって、同じ作業が反復的に行われるデジタル信号処理分野では、このような再構成可能アーキテクチャーが多くの注目を浴びている。
【０００４】
再構成可能アーキテクチャーの種類は、さまざまであるが、そのうち、粗粒度アレイ（Ｃｏａｒｓｅ−Ｇｒａｉｎｅｄ  Ａｒｒａｙ；以下、ＣＧＡと称する）が代表的である。ＣＧＡは、複数個の処理ユニットからなる。そして、処理ユニット間の連結状態が調節されることによって、所定の作業に最適化されうる。
【０００５】
一方、最近、ＣＧＡの特定の処理ユニットをＶＬＩＷ（Ｖｅｒｙ  ＬｏｎｇＩｎｓｔｒｕｃｔｉｏｎ  Ｗｏｒｄ）マシンとして活用する再構成可能アーキテクチャーが登場した。このような再構成可能アーキテクチャーは、２つの実行モードを有する。通常、ＣＧＡモード及びＶＬＩＷモードを有する再構成可能アーキテクチャーは、ＣＧＡモードでは、同じ演算が反復されるループを処理し、ＶＬＩＷモードでは、ループ演算以外に一般的な演算を処理する。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、再構成可能プロセッサ及びそのコード変換装置及び方法を提供することである。
【課題を解決するための手段】
【０００７】
本発明の一態様による再構成可能プロセッサは、ファンクションユニット（Ｆｕｎｃｔｉｏｎ  Ｕｎｉｔ、ＦＵ）と、第１ＦＵグループに基づくＶＬＩＷモード、第２ＦＵグループのＦＵに基づく第１ＣＧＡモード、及び第２ＦＵグループの所定のＦＵに基づく第２ＣＧＡモードを含む実行モードとを含む処理部を含む。
【０００８】
この際、前記それぞれのモードのための構成情報が保存される構成メモリと、所定のモード切替信号によって、前記構成メモリに保存された構成情報を前記それぞれのモードに合わせて前記処理部に伝達するデコーダと、をさらに含みうる。
【０００９】
また、前記構成メモリは、前記第１ＣＧＡモードの第１ＣＧＡ構成情報と前記第２ＣＧＡモードの第２ＣＧＡ構成情報とを互いに異なるメモリ領域に保存することができる。また、前記第２ＣＧＡ構成情報は、前記第１ＣＧＡ構成情報よりも小さいサイズを有しうる。
【００１０】
また、前記デコーダは、前記第１ＣＧＡモードから前記第１ＣＧＡ構成情報を前記処理部にそのまま伝達し、前記第２ＣＧＡモードから前記第２ＣＧＡ構成情報を前記処理部に変換して伝達することができる。
【００１１】
さらに、前記デコーダは、前記第２ＣＧＡ構成情報のうちから前記第２ＦＵグループの所定のＦＵにマッピングされていない構成情報を既定の値に変更することができる。また、前記第１ＣＧＡモードと前記第２ＣＧＡモードとの切替えは、前記ＶＬＩＷモードを経てなされうる。
【００１２】
また、前記処理部は、前記第２ＦＵグループの所定のＦＵと異なる他のＦＵに基づいた第３ＣＧＡモードをさらに含みうる。本発明の他の態様によるコード変換装置は、一側面による複数のファンクションユニット（ＦＵ）と、第１ＦＵグループに基づくＶＬＩＷモード、第２ＦＵグループのＦＵに基づく第１ＣＧＡモード、及び第２ＦＵグループの所定のＦＵに基づく第２ＣＧＡモードを含む実行モードとを含む処理部を有する再構成可能プロセッサのためのものであって、前記第１ＦＵグループに関するハードウェア情報と定義されるＶＬＩＷハードウェア情報、前記第２ＦＵグループのＦＵに関するハードウェア情報と定義される第１ＣＧＡハードウェア情報、及び前記第２ＦＵグループの所定のＦＵに関するハードウェア情報と定義される第２ＣＧＡハードウェア情報のうち何れか１つのハードウェア情報を選択的に提供するハードウェア情報提供部と、前記ハードウェア情報提供部によって選択的に提供された前記ハードウェア情報に基づいてコードをコンパイルするコンパイル部と、を含む。
【００１３】
この際、前記ハードウェア情報提供部には、コードの性質またはユーザの命令に基づいて、前記ハードウェア情報が選択的に提供されうる。
【００１４】
また、前記コンパイル部は、選択的に提供された前記ハードウェア情報に基づいて、前記第２ＦＵグループの所定のＦＵを除いた残りのＦＵには、前記コードと関連した命令またはデータをマッピングしないこともある。
【００１５】
本発明のさらに他の態様によるコード変換方法は、一側面による複数のファンクションユニット（ＦＵ）を含むプロセッサと、第１ＦＵグループに基づくＶＬＩＷモード、第２ＦＵグループのＦＵに基づく第１ＣＧＡモード、及び第２ＦＵグループの所定のＦＵに基づく第２ＣＧＡモードを含む実行モードとを含む処理部を有する再構成可能プロセッサのためのものであって、コードの性質またはユーザの命令に基づいて、前記第１ＦＵグループに関するハードウェア情報と定義されるＶＬＩＷハードウェア情報、前記第２ＦＵグループのＦＵに関するハードウェア情報と定義される第１ＣＧＡハードウェア情報、及び前記第２ＦＵグループの所定のＦＵに関するハードウェア情報と定義される第２ＣＧＡハードウェア情報のうち何れか１つのハードウェア情報を選択的に提供する段階と、選択的に提供された前記ハードウェア情報に基づいてコードをコンパイルする段階と、を含む。
【００１６】
この際、前記ハードウェア情報を選択的に提供する段階で、コードの性質またはユーザの命令に基づいて、前記ハードウェア情報を選択的に提供することができる。
【００１７】
また、前記コンパイルする段階は、選択的に提供された前記ハードウェア情報に基づいて、前記第２ＦＵグループの所定のＦＵを除いた残りのＦＵには、前記コードと関連した命令またはデータをマッピングしないこともある。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態による再構成可能プロセッサの構成を示すブロック図である。
【図２】本発明の一実施形態による構成メモリを示す図である。
【図３】本発明の一実施形態によるデコーダの構成を示す図である。
【図４】本発明の一実施形態による再構成可能プロセッサのモード切替方法を示すフローチャートである。
【図５】本発明の他の実施形態による再構成可能プロセッサのモード切替方法を示すフローチャートである。
【図６】本発明の一実施形態による第１ＣＧＡモードと第２ＣＧＡモードとの切替方法を示す図である。
【図７】本発明の一実施形態による再構成可能プロセッサのためのコード変換装置を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下、添付図面を参照して、本発明の実施のための具体例を詳しく説明する。
【００２０】
図１は、本発明の一実施形態による再構成可能プロセッサの構成を示す例示図である。図１を参照すると、再構成可能プロセッサ１００は、処理部１０１、構成メモリ１０２、及びデコーダ１０３を含む。一実施形態で、再構成可能プロセッサ１００は、制御部１０４、及びグローバルレジスタファイル（Ｇｌｏｂａｌ  Ｒｅｇｉｓｔｅｒ  Ｆｉｌｅ、ＧＲＦ）１０５をさらに含みうる。
【００２１】
処理部１０１は、複数のファンクションユニット（Ｆｕｎｃｔｉｏｎ  Ｕｎｉｔ；以下、ＦＵと称する）を含む。それぞれのＦＵは、各種の算術または論理演算を行う要素プロセッサ（Ｐｒｏｃｅｓｓｉｎｇ  Ｅｌｅｍｅｎｔ、ＰＥ）、演算結果を保存するためのローカルレジスタファイル（Ｌｏｃａｌ  Ｒｅｇｉｓｔｅｒ  Ｆｉｌｅ、ＬＲＦ）などを含みうる。処理部１０１に含まれるＦＵの個数は、制限されず、応用目的によって個数が決定される。
【００２２】
処理部１０１は、大きく２つの実行モードを有する。１つは、ＶＬＩＷモードであり、他の１つは、ＣＧＡモードがそれである。
【００２３】
ＶＬＩＷモードでは、処理部１０１は、第１ＦＵグループ１１０に基づいて演算を実行する。例えば、ＶＬＩＷモードでは、構成メモリ１０２または別途のＶＬＩＷメモリ（図示せず）に保存されたＶＬＩＷ命令が、第１ＦＵグループ１１０に属したＦＵ０〜ＦＵ３に伝達される。この際、それぞれのＦＵ０〜ＦＵ３が、ＶＬＩＷ命令を実行することが可能である。
【００２４】
ＣＧＡモードでは、処理部１０１は、第２ＦＵグループ１２０に基づいて演算を実行する。例えば、ＣＧＡモードでは、構成メモリ１０２に保存されたＣＧＡ命令が、第２ＦＵグループ１２０に属したＦＵ０〜ＦＵ１５に伝達される。この際、それぞれのＦＵ０〜ＦＵ１５が、ＣＧＡ命令を実行することが可能である。
【００２５】
ここで、ＦＵ０〜ＦＵ３は、ＶＬＩＷモードとＣＧＡモードとで共通して使われたが、これに限定されず、ＶＬＩＷモードのための別途のＦＵが使われてもよい。また、ＶＬＩＷ命令のためのＶＬＩＷメモリが別途に形成されてもよいということはいうまでもない。一実施形態で、グローバルレジスタファイル１０５は、モード切替時のＬｉｖｅ−ｉｎ／Ｌｉｖｅ−ｏｕｔデータを一時的に保存することができる。
【００２６】
一実施形態で、処理部１０１は、ループのような反復的な演算をＣＧＡモードで処理し、それ以外の演算をＶＬＩＷモードで処理することができる。例えば、ＶＬＩＷモードで、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が実行されながら制御部１０４のモード切替信号によって、コンテキスト情報をグローバルレジスタファイル１０５に保存した後、ＣＧＡモードでループ演算が実行されうる。引き続きループ演算が終了すれば、再びＶＬＩＷモードに復帰され、グローバルレジスタファイル１０５に保存されていたコンテキスト情報がリターンされうる。
【００２７】
一実施形態で、処理部１０１のＣＧＡモードは、複数個のサブモードに分けられうる。例えば、ＣＧＡモードは、第２ＦＵグループ１２０のすべてのＦＵを利用する第１ＣＧＡモードと、第２ＦＵグループ１２０の所定のＦＵ（例えば、１２１）を利用する第２ＣＧＡモードとを含みうる。また、第２ＦＵグループ１２０の所定のＦＵ１２１と異なるＦＵを利用する第３ＣＧＡモードをさらに含むこともできる。ここで、所定のＦＵ１２１と異なるＦＵとは、第３ＣＧＡモードのＦＵが、所定のＦＵ１２１と完全に異なるか、所定のＦＵ１２１の一部を含み、全体的には異なることを意味する。第１ＣＧＡモードは、Ｍ×Ｎモードと、第２ＣＧＡモードをＫ×Ｌモードと表現されることもできる（Ｍ×Ｎ＞Ｋ×Ｌ）。
【００２８】
一実施形態で、構成メモリ１０２は、処理部１０１の各実行モードのための構成情報を保存することができる。他の実施形態では、構成情報は、それぞれのＦＵが処理する命令情報とそれぞれのＦＵの連結状態情報とを含みうる。言い換えれば、構成情報に基づいて、処理部１０１のハードウェア的構成が決まる。
【００２９】
一実施形態で、構成メモリ１０２は、第１ＣＧＡモードのための第１ＣＧＡ構成情報と、第２ＣＧＡモードのための第２ＣＧＡ構成情報とを保存することができる。他の実施形態では、構成メモリ１０２は、第１ＣＧＡ構成情報と第２ＣＧＡ構成情報とを互いに異なるメモリ領域に保存することができる。さらに他の実施形態では、第２ＣＧＡ構成情報は、第２ＦＵグループ１２０の所定のＦＵのための構成情報なので、第１ＣＧＡ構成情報よりもそのサイズが小さい。
【００３０】
一実施形態で、デコーダ１０３は、制御部１０４のモード切替信号によって、構成メモリ１０２に保存された構成情報をそれぞれのモードに合わせて処理部１０１に伝達することができる。例えば、デコーダ１０３は、第１ＣＧＡモードから第１ＣＧＡ構成情報を処理部１０１にそのまま伝達し、第２ＣＧＡモードから第２ＣＧＡ構成情報を処理部１０１に変換して伝達することができる。
【００３１】
他の実施形態で、この変換と関連して、デコーダ１０３は、第２ＣＧＡ構成情報のうちから第２ＦＵグループ１２０の所定のＦＵにマッピングされていない構成情報を設定された値に変更することができる。例えば、第２ＣＧＡモードで、参照番号１２１と表示された４つのＦＵ（すなわち、ＦＵ８、ＦＵ９、ＦＵ１２、ＦＵ１３）のみ動作する場合、残りのＦＵに伝達される構成情報をデフォルト値（ｄｅｆａｕｌｔ  ｖａｌｕｅ）に変更することが可能である。
【００３２】
一実施形態で、制御部１０４は、それぞれのモードによって動作しないＦＵに供給される電源を遮断する電源部（図示せず）を含みうる。他の実施形態で、電源部は、構成メモリ１０２で第２ＣＧＡ構成情報が保存されたメモリ領域の一部の領域の電源を遮断することも可能である。さらに他の実施形態で、再構成可能プロセッサ１００は、第１ＣＧＡモードと第２ＣＧＡモードとの切替え時、ＶＬＩＷモードを通じて切替えを制御することが可能である。
【００３３】
図２は、本発明の一実施形態による構成メモリを示す例示図である。図２に例示された実施形態を参照すると、構成メモリの領域２００は、第１領域２０１と第２領域２０２とを含みうる。一実施形態で、第１領域２０１には、第１ＣＧＡ構成情報が保存され、第２領域２０２には、第２ＣＧＡ構成情報が保存される。前述したように、第２ＣＧＡ構成情報は、第１ＣＧＡ構成情報に比べて、そのサイズが小さいことが分かる。言い換えれば、第２ＣＧＡ構成情報は、有効な部分２１０と有効でない部分２２０とに区分されうる。本実施形態で、有効な部分２１０にマッピングされるＦＵは、第２ＣＧＡモードで動作するＦＵになりうる。
【００３４】
他の実施形態で、制御部１０４（図１）は、第２ＣＧＡモードから有効でない部分２２０への電力供給を遮断することができる。
【００３５】
図３は、本発明の一実施形態によるデコーダの構成を示す例示図である。図３の実施形態を参照すると、デコーダ３００は、複数の変換部３０１を含む。変換部３０１のそれぞれに対する入力は、構成メモリ１０２（図１）のそれぞれの出力と連結され、変換部３０１のそれぞれの出力は、処理部１０１（図１）のそれぞれのＦＵの入力と連結されうる。
【００３６】
一態様によって、デコーダ３００は、それぞれのモードに合わせて構成メモリ１０２の構成情報を適切に変換することができる。例えば、それぞれの変換部３０１は、第１ＣＧＡ構成情報はそのまま各ＦＵに伝達し、第２ＣＧＡ構成情報で使われない部分をデフォルト値（例えば、‘０’）に変換して、各ＦＵに伝達することができる。
【００３７】
図４は、本発明の一実施形態による再構成可能プロセッサのモード切替方法を示す例示図である。一実施形態で、これは、ＶＬＩＷモードからＣＧＡモードへの切替えに関する一例である。
【００３８】
図１及び図４に示した実施形態を参照すると、ＣＧＡモード切替信号によって、複数のサブＣＧＡモードのうちから何れか１つが選択される（４０１）。例えば、前述した第１ＣＧＡモード（Ｍ×Ｎモード）または第２ＣＧＡモード（Ｋ×Ｌモード）のうち何れか１つが選択されうる。そして、選択されたサブＣＧＡモードによって、記憶維持（memory  retention）が調節される（４０２）。例えば、ＣＧＡモード切替信号によって、構成メモリ１０２がアクティブ状態にされ、第２ＣＧＡモードが選択された場合、一部のメモリ領域（例えば、図２の２２０）への電源供給が遮断されうる。引き続き選択されたサブＣＧＡモードに対応するＦＵ（例えば、１２０または１２１）の電源が調節される（４０３）。例えば、構成メモリ１０２及び処理部１０１の各ＦＵを連結するＩｓｏｌａｔｉｏｎ  Ｃｅｌｌの電源をＯＦＦすることが可能である。そして、選択されたサブＣＧＡモードが実行される（４０４）。
【００３９】
図５は、本発明の他の実施形態による再構成可能プロセッサのモード切替方法を示す例示図である。本実施形態は、ＣＧＡモードからＶＬＩＷモードへの切替えに関する一例になりうる。
【００４０】
図１及び図５を参照すると、ＶＬＩＷモード切替信号によって、グローバルレジスタファイル１０５にコンテキストが保存される（５０１）。一実施形態で、コンテキストは、ＣＧＡモードの実行結果を含みうる。そして、ＶＬＩＷモードに対応するＦＵ（例えば、１１０）の電源供給が調節される（５０２）。一実施形態で、第１ＦＵグループ１１０を除いた残りのＦＵへの電源供給が遮断されうる。引き続きＶＬＩＷモードに対応する構成メモリ１０２の領域が非アクティブ状態にされる（５０３）。一実施形態で、別途のＶＬＩＷメモリ（図示せず）が存在する場合、構成メモリ１０２を維持し、ＶＬＩＷメモリからＶＬＩＷ命令をフェッチ（ｆｅｔｃｈ）することが可能である。そして、ＶＬＩＷモードが実行される（５０４）。
【００４１】
図６は、本発明の一実施形態による第１ＣＧＡモードと第２ＣＧＡモードとの切替方法を示す例示図である。
【００４２】
図６を参照すると、ＯＳは、ＶＬＩＷモード６００ａ、６００ｂ、６００ｃに、オーディオデータ処理は、２×２ＣＧＡモード６０１に、ビデオデータ処理は、３×３ＣＧＡモード６０２に、それぞれマッピングされうる。２×２ＣＧＡモード６０１で２×２個のＦＵ６１０が、第２ＣＧＡ構成情報６３０によってオーディオデータを処理することができる。この際、残りのＦＵ６２０は、非アクティブ状態である。オーディオデータの処理が終われば、ＶＬＩＷモード６００ｂに切替えされ、３×３ＣＧＡモード６０２が呼び出される。３×３ＣＧＡモード６０２では、３×３個のＦＵ６５０が第１ＣＧＡ構成情報６４０によってビデオデータを処理することができる。この際、第２ＣＧＡ構成情報６３０は、非アクティブ状態にされうる。
【００４３】
図７は、本発明の一実施形態による再構成可能プロセッサのためのコード変換装置を示す例示図である。
【００４４】
本実施形態は、前述した再構成可能プロセッサのコンパイラに関する一例になりうる。
図１及び図７に示した実施形態を参照すると、コード変換装置７００は、ハードウェア情報提供部７０１とコンパイル部７０２とを含みうる。
【００４５】
ハードウェア情報提供部７０１は、第１ＦＵグループ１１０に関するハードウェア情報と定義されるＶＬＩＷハードウェア情報、第２ＦＵグループ１２０のＦＵに関するハードウェア情報と定義される第１ＣＧＡハードウェア情報、及び第２ＦＵグループ１２０の所定のＦＵ（例えば、１２１）に関するハードウェア情報と定義される第２ＣＧＡハードウェア情報のうち何れか１つを選択的に提供する。例えば、ハードウェア情報提供部７０１は、コードの性質またはユーザの命令に基づいて、ＶＬＩＷハードウェア情報、第１ＣＧＡハードウェア情報、及び第２ＣＧＡハードウェア情報のうち何れか１つを選択することができる。
【００４６】
コンパイル部７０２は、ハードウェア情報提供部７０１によって提供されたハードウェア情報に基づいてコードをコンパイルする。例えば、第２ＣＧＡハードウェア情報が選択された場合、コンパイル部７０２は、第２ＦＵグループ１２０の所定のＦＵ１２１を除いた残りのＦＵ（すなわち、ＦＵ０〜７、ＦＵ１０、ＦＵ１１、ＦＵ１４、ＦＵ１５）はないと見做し、コンパイルを行うことができる。すなわち、コンパイル部７０２は、第２ＣＧＡハードウェア情報に基づいて、第２ＦＵグループ１２０の所定のＦＵ１２１を除いた残りのＦＵには、コードと関連した命令またはデータをマッピングしないことがある。
【００４７】
一方、図１及び図７を参照して、本発明の一実施形態による再構成可能プロセッサのためのコード変換方法を説明すれば、次の通りである。
【００４８】
まず、ハードウェア情報提供部７０１がコードの性質またはユーザの命令に基づいて、第１ＦＵグループ１１０に関するハードウェア情報と定義されるＶＬＩＷハードウェア情報、第２ＦＵグループ１２０のＦＵに関するハードウェア情報と定義される第１ＣＧＡハードウェア情報、及び第２ＦＵグループ１２０の所定のＦＵ（例えば、１２１）に関するハードウェア情報と定義される第２ＣＧＡハードウェア情報のうち何れか１つを選択する。引き続き、コンパイル部７０２が選択されたハードウェア情報に基づいてコードをコンパイルする。
【００４９】
前述したように、開示された実施形態によれば、互いに異なる個数のファンクションユニットを有するファンクションユニットグループに基づいて、複数個のＣＧＡモードが提供されるために、アプリケーションが要求する性能に最適化されて再構成可能プロセッサが動作可能であり、これにより、電力節減及び性能向上を期待することができる。
【００５０】
一方、本発明の実施形態は、コンピュータで読み取り可能な記録媒体にコンピュータで読み取り可能なコードとして実施しうる。コンピュータで読み取り可能な記録媒体は、コンピュータシステムによって読み取れるデータが保存されるあらゆる種類の記録装置を含む。
【００５１】
コンピュータで読み取り可能な記録媒体の例としては、ＲＯＭ、ＲＡＭ、ＣＤ−ＲＯＭ、磁気テープ、フロッピー（登録商標）ディスク、光データ保存装置などがあり、またキャリアウェーブ（例えば、インターネットを介した伝送）の形態で実施するものを含む。また、コンピュータで読み取り可能な記録媒体は、ネットワークで連結されたコンピュータシステムに分散されて、分散方式でコンピュータで読み取り可能なコードとして保存されて実行可能である。そして、本発明を実施するための機能的な（ｆｕｎｃｔｉｏｎａｌ）プログラム、コード及びコードセグメントは、本発明が属する技術分野のプログラマーによって容易に推論されうる。
【００５２】
さらに、前述した実施形態は、本発明を例示的に説明するためのものであって、本発明の権利範囲が、特定の実施形態に限定されるものではない。
【産業上の利用可能性】
【００５３】
本発明は、再構成可能プロセッサ及びそのコード変換装置及び方法関連の技術分野に適用可能である。
【符号の説明】
【００５４】
１００  再構成可能プロセッサ
１０１  処理部
１０２  構成メモリ
１０３  デコーダ
１０４  制御部
１０５  グローバルレジスタファイル
２００  構成メモリの領域
２０１  第１領域
２０２  第２領域
２１０  有効な部分
２２０  有効でない部分
３００  デコーダ
３０１  変換部
７００  コード変換装置
７０１  ハードウェア情報提供部
７０２  コンパイル
【図１】
0006317065.tif 000002
【図２】
0006317065.tif 000003
【図３】
0006317065.tif 000004
【図４】
0006317065.tif 000005
【図５】
0006317065.tif 000006
【図６】
0006317065.tif 000007
【図７】
0006317065.tif 000008