(57)【要約】【課題】  コンフィギュレーション切替に伴う時間損失とデータ入出力のレイテンシを低減した時分割多重処理可能なリコンフィギュラブル回路を提供する。【解決手段】  本発明の時分割多重処理可能なリコンフィギュラブル回路は、所定数の整数倍の段数のパイプライン構造を有し、かつ供給される第１のコンフィギュレーション・データに応じて構成が可変な処理部を有する複数のプロセッサ要素と、複数のプロセッサ要素の入力および出力が総て接続され、入出力の間においてデータ転送を１クロックで行うネットワークと、処理部の各々に対し、前記所定数のタスク用に準備されたコンフィギュレーション・データを周期的に１クロックで切り換えて供給する切替手段から構成される。【選択図】図１
2006018539.tif 000002
【特許請求の範囲】
【請求項１】
所定数のタスクを並列処理可能な回路であり、
パイプライン構造を有し、かつ供給される第１のコンフィギュレーション・データに応じて構成が可変な処理手段を有する複数のプロセッサ要素と、
前記複数のプロセッサ要素の入力および出力が接続され、供給される第２のコンフィギュレーション・データに応じた前記入力および出力の間においてデータ転送を１クロックで行うネットワークと、
前記処理手段の各々に対し、前記所定数のタスク用に準備された前記第１および第２のコンフィギュレーション・データを周期的に１クロックで切り換えて供給する切替手段とを備えた
ことを特徴とする時分割多重処理可能なリコンフィギュラブル回路。
【請求項２】
前記第１の切替手段が、
タスクごとの第１のコンフィギュレーション・データを記憶する記憶手段と、
前記記憶手段と対を成し当該記憶手段に出力すべきデータの格納位置を指定する情報を与える手段と、
前記記憶手段の出力を処理すべきタスクに応じて切り換える手段とを含む
ことを特徴とする請求項１記載の時分割多重処理可能なリコンフィギュラブル回路。
【請求項３】
前記第１の切替手段が、
総てのタスクの第１のコンフィギュレーション・データを記憶する記憶手段と、
タスク毎に設けられ、前記記憶手段に出力すべきデータの格納位置を指定する情報を出力するシーケンス手段と、
前記シーケンス手段の出力を処理すべきタスクに応じて切り換えて前記記憶手段に供給する手段とを含む
ことを特徴とする請求項１記載の時分割多重処理可能なリコンフィギュラブル回路。
【請求項４】
前記所定数の入力を前記ネットワークに前記クロックに同期して送り込むパラレル／シリアル変換手段と、
前記ネットワークから供給される時分割多重データを前記所定数の出力端子に出力するシリアル／パラレル変換手段とをさらに備えた
ことを特徴とする請求項１記載の時分割多重処理可能なリコンフィギュラブル回路。
【請求項５】
異なるコンフィギュレーション相の間でデータ転送を行う相関転送手段をさらに備えた
ことを特徴とする請求項１記載の時分割多重処理可能なリコンフィギュラブル回路。
【請求項６】
前記相関転送手段は、転送元の前記処理手段の出力を入力とし、所望の転送先に出力が接続されたセレクタを含む
ことを特徴とする請求項５記載の時分割多重処理可能なリコンフィギュラブル回路。
【請求項７】
前記シリアル／パラレル変換手段の出力を前記パラレル／シリアル変換手段の入力に接続することを可能とするために、前記シリアル／パラレル変換手段の出力のタイミング調整を行う手段をさらに備えた
ことを特徴とする請求項４記載の時分割多重処理可能なリコンフィギュラブル回路。
【請求項８】
各プロセッサ要素における前記処理手段にコンフィギュレーションを１つずつずらして設定するために遅延手段を備えた
ことを特徴とする請求項１記載の時分割多重処理可能なリコンフィギュラブル回路。
【請求項９】
請求項１乃至８の何れか一項に記載の第１のリコンフィギュラブル回路と、
前記第１のリコンフィギュラブル回路との間にコンフィギュレーション切替周期のズレがある請求項１乃至８の何れか一項に記載の第２のリコンフィギュラブル回路と、
前記第１のリコンフィギュラブル回路の前記ネットワークと、前記第２のリコンフィギュラブル回路の前記ネットワークとの間に挿入され、前記コンフィギュレーション切替周期のズレを調整する遅延手段とを備えた
ことを特徴とする時分割多重処理可能なリコンフィギュラブル回路。
【請求項１０】
前記所定数の入力を前記ネットワークに前記クロックに同期して送り込むパラレル／シリアル変換手段をさらに備え、
前記転送先がパラレル／シリアル変換手段の入力端子の１つである
ことを特徴とする請求項６記載の時分割多重処理可能なリコンフィギュラブル回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時分割多重処理が可能でかつ動的再構成可能な回路に関する。
【背景技術】
【０００２】
データを処理するプロセッサ要素とプロセッサ要素とを接続するネットワークで構成されたリコンフィギュラブル（再構成可能）回路に関する。再構成可能回路は、回路の動作を定義するコンフィギュレーション・データをソフト的に書き換えることにより、各種機能をＡＳＩＣ並みの速度で実行できる回路である。そのため、同じ再構成可能回路で、いろいろなアプリケーション（タスク）を実行することが可能である。一方、回路技術の進歩により、再構成可能回路の大規模化にあわせて、搭載可能なタスクの回路規模も増してきた。以上のような状況により、将来において、複数のタスクを一つの再構成可能回路上で同時に実行できることが要求されると考えられる。
【０００３】
従来の再構成可能回路にて、複数のタスクを実行させる方法は、二つのタイプに分けられる。一つは、回路を空間的に分割して、それぞれの部分にタスクを割り当てる方法（space parallelism）であり（例えば、特許文献１）、もう一つはコンフィギュレーションを時分割に切り替えて異なるタスクを実行する方法(time parallelism)である。
【０００４】
後者の時間的にコンフィギュレーションを切り換える方法としては、タスクに対応したコンフィギュレーションでタスクを処理した後、内部データを一旦別の場所に吐き出したり、退避させたりしてから、別のタスクに対応したコンフィギュレーションに切り換える。より効率的に実施するために、上記の切替を部分的に実行することにより、タスク切替を実現する。
【特許文献１】特開２０００−３１１１５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
コンフィギュレーションを空間的に分割して複数処理を実行する方法では、性能を保って実行するためには処理タスク数に応じたハードウェア資源が必要となり回路が大規模となる。
【０００６】
一方、コンフィギュレーションを切り替えて時分割で複数処理を実行する方法では、コンフィギュレーション切替時におけるパイプライン処理の中断による時間的オーバーヘッドが発生する。また退避処理に対する入出力データのバッファ処理が必要となり、データが入力してから出力されるまでの処理時間（レイテンシ）が増加する。さらに、時分割で処理するために、同じ処理量のタスクを処理するために必要な時間が、単一タスクを処理する場合と複数のタスクを処理する場合とでは、タスク数に応じて長くなる。
【０００７】
本発明は、上述のコンフィギュレーション切替に伴う時間損失とデータ入出力のレイテンシを低減した時分割多重処理可能なリコンフィギュラブル回路を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、一面において、時分割多重処理可能なリコンフィギュラブル回路を提供する。本発明のリコンフィギュラブル回路は、パイプライン構造を有し、かつ供給される第１のコンフィギュレーション・データに応じて構成が可変な処理手段を有する複数のプロセッサ要素と、前記複数のプロセッサ要素の入力および出力が接続され、供給される第２のコンフィギュレーション・データに応じた前記入力および出力の間においてデータ転送を１クロックで行うネットワークと、前記処理手段の各々に対し、前記所定数のタスク用に準備された前記第１および第２のコンフィギュレーション・データを周期的に１クロックで切り換えて供給する切替手段とを備えたことを特徴とする。
【０００９】
一実施例によれば、第１の切替手段は、タスクごとの第１のコンフィギュレーション・データを記憶する記憶手段と、記憶手段と対を成し当該記憶手段に出力すべきデータの格納位置を指定する情報を与える手段と、記憶手段の出力を処理すべきタスクに応じて切り換える手段とを含む。
【００１０】
他の実施例によれば、第１の切替手段は、総てのタスクの第１のコンフィギュレーション・データを記憶する記憶手段と、タスク毎に設けられ、記憶手段に出力すべきデータの格納位置を指定する情報を出力するシーケンス手段と、シーケンス手段の出力を処理すべきタスクに応じて切り換えて記憶手段に供給する手段とを含む。
【００１１】
本発明の時分割多重処理可能なリコンフィギュラブル回路は、前記所定数の入力をクロックに同期してネットワークに送り込むパラレル／シリアル変換手段と、ネットワークから供給される時分割多重データを前記所定数の出力端子に出力するシリアル／パラレル変換手段とをさらに備えてもよい。
【００１２】
異なるコンフィギュレーション相の間でデータ転送を行う相関転送手段をさらに備えてもよい。
一実施形態では、相関転送手段は、転送元の前記処理手段の出力を入力とし、所望の転送先に出力が接続されたセレクタを含む。
【００１３】
前記シリアル／パラレル変換手段の出力を前記パラレル／シリアル変換手段の入力に接続することを可能とするために、前記シリアル／パラレル変換手段の出力のタイミング調整を行う手段をさらに備えてもよい。
【００１４】
各プロセッサ要素における前記処理手段にコンフィギュレーションを１つずつずらして設定するために遅延手段を備えてもよい。
本発明は、他の面において、上述の第１のリコンフィギュラブル回路、第１のリコンフィギュラブル回路との間にコンフィギュレーション切替周期のズレがある第２のリコンフィギュラブル回路、および第１のリコンフィギュラブル回路のネットワークと第２のリコンフィギュラブル回路のネットワークととの間に挿入され、コンフィギュレーション切替周期のズレを調整する遅延手段を備えて再構成および並列処理を可能とするリコンフィギュラブル回路を提供する。
【発明の効果】
【００１５】
本発明によれば、コンフィギュレーション切替に伴う時間損失とデータ入出力のレイテンシを低減した時分割多重処理可能なリコンフィギュラブル回路を得ることができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施形態と添付図面とにより本発明を詳細に説明する。なお、複数の図面に同じ要素を示す場合には同一の参照符号を付ける。
〔第１の実施形態〕
図１は、本発明の第１の実施形態による時分割多重処理可能なリコンフィギュラブル回路の概念的構成を示すブロック図である。図１において、リコンフィギュラブル回路１（以降、単に「プロセッサ１」と称する）は、複数のプロセッサ要素｛ＰＥi|ｉ＝１，２，．．．，Ｍ｝（Ｍは、プロセッサ要素の個数）、各プロセッサ要素ＰＥｉの入出力が接続されるネットワーク１０、複数の入力データを時分割多重式にネットワーク１０に取り入れるパラレル／シリアル変換器２０、任意のプロセッサ要素ＰＥｉ、ＰＥｊ、ＰＥｋ（１≦ｉ，ｊ，ｋ≦Ｍ）からの出力データがネットワーク１０から時分割多重式に渡されるのをプロセッサ要素ＰＥｉ、ＰＥｊ、ＰＥｋに対応する出力端子にそれぞれ出力するシリアル／パラレル変換器３０、および以上のプロセッサ要素ＰＥ１〜ＰＥＭとネットワーク１０とパラレル／シリアル変換器２０とシリアル／パラレル変換器３０とに対して構成（configuration）を定義するコンフィギュレーション・データを供給する周期的コンフィギュレーション切替部４０から構成される。ネットワーク１０には、各プロセッサ要素ＰＥｉの入出力が総て接続されることが理想であるが、現実には困難な場合が多いので、ネットワーク１０と各プロセッサ要素ＰＥｉとの接続性は用途の必要性に応じて調整することが好ましい。
【００１７】
各プロセッサ要素ＰＥｉは、複数の処理部{Ｐi,j|ｊ＝１，２，．．．，Ｎ｝（Ｎは、処理部の個数）がラッチ群（図１では「ＦＦ群」）を介して直列に接続されたパイプライン構造を有する。ラッチ群はプロセッサ要素ＰＥの入出力端にも設けられるので、Ｎ個の処理部Ｐi,1〜Ｐi,NとＮ＋１個のラッチ群ＦＦ１〜ＦＦN+1が交互に直列接続される。なお、図１では、簡単のために２つの処理部Ｐi,1、Ｐi,2と３つのラッチ群ＦＦ１、ＦＦ２およびＦＦ３のみを示すが、各プロセッサ要素ＰＥｉは、処理が滞りなく流れる限り多数の処理部を備えることができる。各処理部Ｐi,jは、周期的コンフィギュレーション切替部４０から供給されるコンフィギュレーション・データに基づいて構成を変えることができる論理演算ユニットである。プロセッサ１を構成するプロセッサ要素ＰＥ1〜ＰＥMに含まれるラッチ群ＦＦは総て同一のクロックにより動作するので、隣接するラッチ群間は、ネットワーク１０が介在する場合でも、１クロックでデータが転送される。
【００１８】
なお、パイプライン段数（プロセッサ要素ＰＥｉのラッチ群ＦＦの数）は周期的に切り替えるタスクの数の整数倍であることが好ましい。パイプライン段数がタスク数の整数倍でない場合、図９のようなプロセッサ要素のグループ化が必要となる。このグループ化については、後述する。
【００１９】
図３は、パラレル／シリアル変換器２０の構成例と動作を説明する図である。図３において、パラレル／シリアル変換器２０は、プロセッサ１が処理するタスク（タスク数をＴとする）に対応する入力端子ごとに設けられ、外部クロック（周波数をｆとする）に応じて入力信号を保持するＴ個のラッチ２２、ラッチ２２の出力が入力端子に接続されたセレクタ２６、プロセッサ１の内部クロック（周波数＝Ｔｘｆ）を数えるＴ進カウンタ２４、およびセレクタ２６の出力を内部クロックに応じて保持するラッチ２８を備える。これによりタスク毎に供給される入力データを時分割多重式にまとめてネットワーク１０を介してプロセッサ要素に取り入れることができる。同様に、シリアル／パラレル変換器３０は、各タスクにより交互に統合されて出力されるデータをそれぞれのタスクに関係付けられた出力端子に出力する。したがって、各タスクごとに別々の入出力ポートが存在することになり、外部からプロセッサ１を見た場合には、複数のタスクに相当する機能が集積された回路となり、ＬＳＩ開発時に時間多重などの機能を全く意識する必要がない。
【００２０】
注目すべきことは、上述のようにプロセッサ要素をパイプライン化することにより、プロセッサ１の動作周波数を上げられるという点である。その動作周波数向上は、ほぼパイプライン段数に比例する。つまり、ＦＦ間のゲート段数がパイプライン化により区切ることで、パイプライン段数の逆数でゲート段数は短くなり、その結果動作周波数は向上する。そこで、パラレル／シリアル変換器２０およびシリアル／パラレル変換器３０とを、外部回路とのデータ入出力周波数と再構成可能回路とのデータ入出力周波数を異なる構造にしておき、タスク数に応じた比に設定することにより、外部回路からクロックごとにデータを送り込むことで、外部回路と同じ周波数でプロセッサ１側で処理することが可能となる。
【００２１】
次に、周期的コンフィギュレーション切替部４０の構成例を図５に示す。図５において、周期的コンフィギュレーション切替部４０は、プロセッサ１内部のコンフィギュレーション切替タイミングを示す周期信号を出力する周期信号生成器４６、周期信号生成器４６からの周期信号に応じてネットワーク１０へのコンフィギュレーション・データを出力するネットワーク切替部４２，およびプロセッサ要素ＰＥ1〜ＰＥMに含まれる総ての処理部｛Ｐi,j｜ｉ＝１〜Ｍ，ｊ＝１〜Ｎ｝に対してそれぞれのコンフィギュレーション・データを供給するコンフィギュレーション切替器４４を含む。
【００２２】
ネットワーク切替器４２および各プロセッサ要素ＰＥｉの各処理部Ｐｊ（またはＰi,j）の切替器４４は、ともに同じ構造を有する。図６Ａおよび６Ｂは、図５に示した各処理部Ｐi,jに対するコンフィギュレーション切替器４４およびネットワーク切替器４２の好ましい実施例を示す。図６Ａにおいて、コンフィギュレーション切替器４４は、各タスクに対応するシーケンサ４４２とコンフィギュレーション・メモリ４４４の対を備え、コンフィギュレーション・メモリ４４４の出力はセレクタ４４６を介して出力される。シーケンサ４４２により選択された各タスクのコンフィギュレーション・データを、セレクタ４４６により周期的に切り替える。
【００２３】
一方、図６Ｂでは、すべてのタスクのコンフィギュレーション・データが一つのメモリ４４４ａに記憶してあり、タスクＡ，ＢおよびＣごとに設けられたシーケンサ４４２ａからのコンフィギュレーション・メモリのアドレス信号をセレクタ４４６で切り替えて選択する。図６Ａの切替器４４では、シーケンサ４４２ａおよびコンフィギュレーション・メモリ４４４ａはプロセッサ１のタスク数分の１の動作周波数で実行すればよいため、図６Ｂの切替器４４ａよりも消費電力の観点で有利となる。一方、切替器４４では、タスクＡ，ＢおよびＣ用のコンフィギュレーション・データを異なるメモリ上に分散して持たせるために、若干の回路オーバヘッドが発生する。
【００２４】
以上のような構造を備えたプロセッサ１の基本的な動作を説明する。
図７は、図６Ａのコンフィギュレーション切替器４４のコンフィギュレーション・メモリ４４４にコンフィギュレーション・データを格納する方法とコンフィギュレーション・データが出力されるようすを示す図である。まず、図７Ａにおいて、プロセッサ要素ＰＥｉの処理部Ｐ１およびＰ２にそれぞれ接続された切替器を４４−１および４４−２とする。タスクＡ，ＢおよびＣの処理のために処理部Ｐ１に供給されるコンフィギュレーション・データをＡ−１，Ｂ−１，Ｃ−１とし、処理部Ｐ２に供給されるコンフィギュレーション・データをＡ−２，Ｂ−２，Ｃ−２とした場合、処理に柔軟性を持たせるために処理部Ｐ１とＰ２とではコンフィギュレーションの実装内容をずらすものとする。このため、切替器４４−１のコンフィギュレーション・メモリにＡ−１，Ｂ−１，Ｃ−１の順に格納した場合、切替器４４−２のコンフィギュレーション・メモリにはＣ−２，Ａ−２，Ｂ−２の順に格納する。
【００２５】
ここで、例えば、処理部Ｐ１に対するタスクＡのコンフィギュレーションシーケンスをＡ−１＝｛Ａ1,1、Ａ1,2、Ａ1,3、A1,4、・ ・ ・  ｝とする。同様に、その他のコンフィギュレーション・シーケンスを次にように表す。
【００２６】
Ｂ−１＝｛Ｂ1,1、Ｂ1,2、Ｂ1,3、Ｂ1,4、・ ・ ・  ｝
Ｃ−１＝｛Ｃ1,1、Ｃ1,2、Ｃ1,3、Ｃ1,4、・ ・ ・  ｝
Ａ−２＝｛Ａ2,1、Ａ2,2、Ａ2,3、A2,4、・ ・ ・  ｝
Ｂ−２＝｛Ｂ2,1、Ｂ2,2、Ｂ2,3、Ｂ2,4、・ ・ ・  ｝
Ｃ−２＝｛Ｃ2,1、Ｃ2,2、Ｃ2,3、Ｃ2,4、・ ・ ・  ｝
【００２７】
以上のようなコンフィギュレーション・シーケンスを図７Ａのようにコンフィギュレーション・メモリ４４４に格納した場合、切替器４４−１および４４−２のセレクタからは、図７Ｂのようにコンフィギュレーション・データが出力される。即ち、セレクタ４４６−１からコンフィギュレーション・データＡ1,1、Ｂ1,1、Ｃ1,1、Ａ1,2、Ｂ1,2、Ｃ1,2、Ａ1,3、・・・が、セレクタ４４６−２からＣ2,1、Ａ2,1、Ｂ2,1、Ｃ2,2、Ａ2,2、Ｂ2,2、Ｃ2,3、・・・が、周期信号に同期して出力される。これらのコンフィギュレーション・データを供給されたプロセッサ要素ＰＥｉは、図２に示すように構成が変化する。
【００２８】
このように、本発明によれば、プロセッサ１のコンフィギュレーションが1クロックの単位で周期的に切り替えられる。通常の再構成可能回路では、同一時刻に同じタスクのコンフィギュレーションを実装するが、本アーキテクチャでは、入れ子状に実装されることになる。
【００２９】
一方、タスクＡのデータ系列を{da1, da2, da3, …}、タスクＢのデータ系列を{db1, db2, db3, …}、タスクＣのデータ系列を{dc1, dc2, dc3, …}とする。この場合、上述のパラレル／シリアル変換器２０の働きにより、図２に示すように、プロセッサエレメントには{da1, db1, dｃ1,  da2, db2, dc2， …}という系列でデータが入力される。時刻0では、da1が入力し、前段の処理部Ｐ１のコンフィギュレーションはタスクＡ（正確には、図７Ｂに示すようにＡ1,1）の処理が実装される。次の時刻では、入力データはdb1となり、前段の処理部Ｐ１のコンフィギュレーションはタクスＢ（同様に、Ｂ1,1）となる一方、後段の処理部Ｐ２にはタスクＡ（図７Ｂの例では、Ａ2,1）のコンフィギュレーションが実装される（このコンフィギュレーションは、一時刻前の前段処理部に実装されたコンフィギュレーションＡ1,1とは異なっている）。同様に、次の時刻（T=2）では、前段処理部Ｐ１にはタスクＣ（図７Ｂの例では、Ｃ1,1）のコンフィギュレーションが、後段処理部Ｐ２にはタスクＢ（図７Ｂの例では、Ｂ2,1）のコンフィギュレーションが実装されるという具合である。
【００３０】
以上が、本発明によるプロセッサ１の基本的な動作の説明である。
また、タスクの処理に関連がある場合、タスク間でデータ通信を実施したいケースがある。タスク間でデータを実施する方法として、例えば、図４Ａに示しように、シリアル／パラレル変換器３０で分類されたタスク出力信号を、タイミング調整器６２や６４などを介してパラレル／シリアル変換機２０に帰還する方式がある。この方法では、タスク間のデータ通信には、一旦、パラレル／シリアル変換器２０およびシリアル／パラレル変換器３０を経由する必要がありレイテンシが発生する。そこで好ましい方法として、図４Ｂに示すように、パイプラインの段数をショートカットする機構（フェーズシフト機構）を導入する。
【００３１】
図４Ｂでは、セレクタ５２を使用し、プロセッサエレメントの初段Ｐ１（処理部）、二段Ｐ２（処理部）、最終段ＦＦ３（ラッチ群）の結果を選択して出力する機構となっている。最終段のラッチ群ＦＦ３の結果を選択した場合には、通常の基本動作となる。それに対し、初段の処理部Ｐ１の結果を選択した場合、初段に実装されているタスクの処理結果が、次のプロセッサ要素への入力となる。同様に、二段目の処理部Ｐ２の結果を選択した場合、二段目Ｐ２に実装されているタスクの処理結果が、次のプロセッサ要素への入力となる。セレクタで選択する時刻をずらすことにより、お互いのタスク間でのデータのやりとりが可能となる。なお、セレクタ５２の出力は、前述のパラレル／シリアル変換器２０の入力の１つに接続することも可能である。
【００３２】
以上述べた実施形態では、周期的コンフィギュレーション切替部４０として、図７Ａに示すような構成を採用した。しかし、周期的コンフィギュレーション切替部４０は、遅延器を用いても実現することができる。図８は、遅延器を用いた周期的コンフィギュレーション切替部の構成例を示す図である。
【００３３】
図８Ａの回路は、図７Ａの周期的コンフィギュレーション切替部４０の切替器４４−２の出力回路に遅延器４７を挿入したものである。図８Ｂの回路は、図７Ａの周期的コンフィギュレーション切替部４０の切替器４４−２のセレクタの制御入力の直前に遅延器４８を挿入し、周期信号を送らせた回路である。何れの方法でも性能や機能の面では違いは発生しない。
【００３４】
これまでの説明では、プロセッサ要素間のデータ転送はすべて均一である必要があった。異なる場合、ネットワーク内に異なるタスクのデータが混在することになり、ネットワークのコンフィギュレーションを切り替えることは、データ間の障害の発生原因となる。そのため、再構成可能回路の構成が大規模になり、プロセッサエレメント間のデータ転送時間に差が発生したりする回路に対しては、データの衝突が発生しないような機構が必要となる。図９は、本発明の第２の実施形態によりタスク切り替えの周期にズレがあるプロセッサ要素をグループ化したリコンフィギュラブル回路の構成を概念的に示す図である。
【００３５】
図９において、第２の実施形態によるリコンフィギュラブル回路２は、コンフィギュレーション切替周期にズレがある２つの再構成可能パイプラインプロセッサ１および１ａ（ここでは、グループと称する）、およびこれらのプロセッサまたはグループ１および１ａのネットワーク間に挿入された遅延器６０からなる。グループ内ではプロセッサエレメント間のデータ転送時間は均一とする。グループ間のデータ転送にはグループ内とは異なる時間でデータが転送される。再構成可能回路上に実装するコンフィギュレーションは、各グループ毎に制御し、各グループ間で同じタスクのデータがやり取りされるように同期をとる。それと合せて、グループ間のデータパス上に遅延器６０を挿入して整合させる。例えば、図９においてグループ間転送に1クロックの遅延が余計にかかるとすると、下段のグループ１ａでは１クロック分遅れてタスクが実装されるようにコンフィギュレーションを制御する。これにより上段１から下段１ａへは、整合してデータが転送することが可能である。一方、下段１ａから上段１に対しては、遅延器６０を経由して（例えば３つのタスク切り替えの場合には２段の遅延を生成）信号を戻すことにより整合性をとることができる。
【００３６】
以上は、本発明の説明のために実施例を掲げたに過ぎない。したがって、本発明の技術思想または原理に沿って上述の実施例に種々の変更、修正または追加を行うことは、当業者には容易である。
【００３７】
例えば、上記の実施形態では時分割多重処理可能なリコンフィギュラブル回路として一般的な説明を行ったが、本発明よる構成は種々の画像処理などのプロセッサに応用可能である。
【００３８】
また、本発明のプロセッサは集積回路の全体または一部として実現することが可能である。
上述の実施形態では、ラッチ間のデータ転送は１クロックで行うものとしたが、各要素間のデータ転送が均一に行われる限り、転送に要する期間は１クロックである必要はない。
【００３９】
（付記１）所定数のタスクを並列処理可能な回路であり、
パイプライン構造を有し、かつ供給される第１のコンフィギュレーション・データに応じて構成が可変な処理手段を有する複数のプロセッサ要素と、
前記複数のプロセッサ要素の入力および出力が接続され、供給される第２のコンフィギュレーション・データに応じた前記入力および出力の間においてデータ転送を１クロックで行うネットワークと、
前記処理手段の各々に対し、前記所定数のタスク用に準備された前記第１および第２のコンフィギュレーション・データを周期的に１クロックで切り換えて供給する切替手段とを備えた
ことを特徴とする時分割多重処理可能なリコンフィギュラブル回路。
【００４０】
（付記２）前記第１の切替手段が、
タスクごとの第１のコンフィギュレーション・データを記憶する記憶手段と、
前記記憶手段と対を成し当該記憶手段に出力すべきデータの格納位置を指定する情報を与える手段と、
前記記憶手段の出力を処理すべきタスクに応じて切り換える手段とを含む
ことを特徴とする付記１記載の時分割多重処理可能なリコンフィギュラブル回路。
【００４１】
（付記３）前記第１の切替手段が、
総てのタスクの第１のコンフィギュレーション・データを記憶する記憶手段と、
タスク毎に設けられ、前記記憶手段に出力すべきデータの格納位置を指定する情報を出力するシーケンス手段と、
前記シーケンス手段の出力を処理すべきタスクに応じて切り換えて前記記憶手段に供給する手段とを含む
ことを特徴とする付記１記載の時分割多重処理可能なリコンフィギュラブル回路。
【００４２】
（付記４）前記所定数の入力を前記ネットワークに前記クロックに同期して送り込むパラレル／シリアル変換手段と、
前記ネットワークから供給される時分割多重データを前記所定数の出力端子に出力するシリアル／パラレル変換手段とをさらに備えた
ことを特徴とする付記１記載の時分割多重処理可能なリコンフィギュラブル回路。
【００４３】
（付記５）異なるコンフィギュレーション相の間でデータ転送を行う相関転送手段をさらに備えた
ことを特徴とする付記１記載の時分割多重処理可能なリコンフィギュラブル回路。
【００４４】
（付記６）前記相関転送手段は、転送元の前記処理手段の出力を入力とし、所望の転送先に出力が接続されたセレクタを含む
ことを特徴とする付記５記載の時分割多重処理可能なリコンフィギュラブル回路。
【００４５】
（付記７）前記シリアル／パラレル変換手段の出力を前記パラレル／シリアル変換手段の入力に接続することを可能とするために、前記シリアル／パラレル変換手段の出力のタイミング調整を行う手段をさらに備えた
ことを特徴とする付記４記載の時分割多重処理可能なリコンフィギュラブル回路。
【００４６】
（付記８）各プロセッサ要素における前記処理手段にコンフィギュレーションを１つずつずらして設定するために遅延手段を備えた
ことを特徴とする付記１記載の時分割多重処理可能なリコンフィギュラブル回路。
【００４７】
（付記９）付記１乃至８の何れか一項に記載の第１のリコンフィギュラブル回路と、
前記第１のリコンフィギュラブル回路との間にコンフィギュレーション切替周期のズレがある付記１乃至８の何れか一項に記載の第２のリコンフィギュラブル回路と、
前記第１のリコンフィギュラブル回路の前記ネットワークと、前記第２のリコンフィギュラブル回路の前記ネットワークとの間に挿入され、前記ズレを調整する遅延手段とを備えた
ことを特徴とする時分割多重処理可能なリコンフィギュラブル回路。
【００４８】
（付記１０）前記所定数の入力を前記ネットワークに前記クロックに同期して送り込むパラレル／シリアル変換手段をさらに備え、
前記転送先がパラレル／シリアル変換手段の入力端子の１つである
ことを特徴とする付記６記載の時分割多重処理可能なリコンフィギュラブル回路。
【００４９】
（付記１１）前記パイプライン構造は、前記所定数の整数倍の段数を有する
ことを特徴とする付記１記載の時分割多重処理可能なリコンフィギュラブル回路。
【図面の簡単な説明】
【００５０】
【図１】本発明の第１の実施形態による時分割多重処理可能なリコンフィギュラブル回路の構成を概念的に示すブロック図である。
【図２】プロセッサ要素ＰＥiの動作を説明する図である。
【図３】図１のパラレル・シリアル変換器２０の構成例と動作を示す図である。
【図４Ａ】プロセッサ１の入力から出力への帰還回路の一例を示すブロック図である。
【図４Ｂ】プロセッサ要素ＰＥiにおいてタスク間通信を行う場合の構成例を示す概念図である。
【図５】図１の周期的コンフィギュレーション切替部の構成例を示すブロック図である。
【図６Ａ】図５の切替器４４の第１の構成例を示す図である。
【図６Ｂ】図５の切替器４４の第２の構成例を示す図である。
【図７Ａ】図４Ａの切替器４４のコンフィギュレーション・メモリのデータ格納例を示す図である。
【図７Ｂ】図７Ａの切替器４４の動作を説明するための図である。
【図８Ａ】遅延器を用いた周期的コンフィギュレーション切替部の第１の構成例を示す図である。
【図８Ｂ】遅延器を用いた周期的コンフィギュレーション切替部の第２の構成例を示す図である。
【図９】タスク切り替え周期にズレがあるプロセッサ要素をグループ化した時分割多重処理可能なリコンフィギュラブル回路の構成例を示すブロック図である。
【符号の説明】
【００５１】
１、２  時分割多重処理可能なリコンフィギュラブル回路
１０  ネットワーク
２０  パラレル／シリアル変換器
２２，２８、４２６  ラッチ回路
２４  カウンタ
２６，セレクタ
３０  シリアル／パラレル変換器
４０  周期的コンフィギュレーション切替部
４４  コンフィギュレーション切替器
４６  周期信号生成器
６２，６４  タイミング調整器
４２２、４４２ａ  シーケンサ
４２４、４４４，４４４ａ  コンフィギュレーション・メモリ
【図１】
2006018539.tif 000003
【図２】
2006018539.tif 000004
【図３】
2006018539.tif 000005
【図４Ａ】
2006018539.tif 000006
【図４Ｂ】
2006018539.tif 000007
【図５】
2006018539.tif 000008
【図６Ａ】
2006018539.tif 000009
【図６Ｂ】
2006018539.tif 000010
【図７Ａ】
2006018539.tif 000011
【図７Ｂ】
2006018539.tif 000012
【図８Ａ】
2006018539.tif 000013
【図８Ｂ】
2006018539.tif 000014
【図９】
2006018539.tif 000015