(57)【要約】レジスタが最後に使用されていることを決定するために、「レジスタの使用」情報を格納し使用することにより、電力消費量の節減を達成する方法及び装置について開示する。レジスタの使用情報は、特定のレジスタに対して「最後に読み出された」情報の形態をとることができる。最後に読み出された情報は、読み出された後、レジスタの値をゼロに強制するために用いられるか、又はそのレジスタだけをクロックし、他のレジスタをマスクオフするように用いられる。レジスタの使用情報を用いて電力節約するための幾つかの方法とハードウエアの変形例についても開示する。
2005539292.tif 000002
【特許請求の範囲】
【請求項１】
複数のストライプの中に組織化された複数のレジスタを含むデバイスで実施される方法であって、少なくともいくつかのストライプに対して、レジスタの使用に関する情報を提供し、該情報を、電力消費量を低減するために使用することを含んでいる、方法。
【請求項２】
情報の提供は、読み出される必要があるレジスタの中の最後の値に関する情報を提供することを含んでいる請求項１の方法。
【請求項３】
情報の使用は、最後に読み出された信号の値を、強制的に一定値にすることを含んでいる請求項２の方法。
【請求項４】
情報の使用は、その後のストライプで使用されるデータが含まれるそれらレジスタだけをクロックすることを含んでいる請求項２の方法。
【請求項５】
前記情報からクロッキング用マスクを作成することをさらに含んでいる請求項４の方法。
【請求項６】
ビットを、各レジスタの状態に対応するメモリの中で維持することをさらに含んでいる請求項１の方法。
【請求項７】
複数のストライプの中に組織化された複数のレジスタを含むデバイスにおいて、最後に読み出された信号が伝播するの防止する方法であって、レジスタ内の値が読み出される必要のある最後に関する情報を提供し、該情報を使用して、最後に読み出された値を一定値に強制することを含んでいる、方法。
【請求項８】
情報の使用は、最後に読み出された信号の値を、最後の読み出しに関する情報を受信するゲートに入力し、該ゲートの出力をゼロに強制することを含んでいる請求項７の方法。
【請求項９】
複数のストライプの中に組織化された複数のレジスタを含むデバイスにおいて、最後に読み出された信号が伝播するの防止する方法であって、レジスタ内の値が読み出される必要のある最後に関する情報を提供し、該情報を使用して、全部より少ない数のレジスタをクロックすることを含んでいる、方法。
【請求項１０】
情報の使用は、ストライプをクロックするのに用いられたクロック信号をマスキングすることを含んでいる請求項９の方法。
【請求項１１】
前記マスキングするステップは、前記情報を、クロックパルスを受信する複数のゲートへ入力し、前記入力情報に基づいてストライプをクロックすることを含んでいる請求項１０の方法。
【請求項１２】
ストライプをクロックするのに用いられたクロック信号をマスキングするために、マスキングビットの値を局部的に決定することをさらに含んでいる請求項１０の方法。
【請求項１３】
マスキングビットの値を局部的に決定するステップは、読み出しアドレス情報及び書き込みアドレス情報と、最後に読み出された情報であるマスキングビットの値から決定することを含んでいる請求項１２の方法。
【請求項１４】
チェーンコンフィギュレーションの中で互いに相互接続された複数のパスレジスタファイルを形成するために相互接続された複数のレジスタと、
少なくとも１つが、前記パスレジスタファイルの各ファイル間で接続された複数の機能ユニットと、
隣接するパスレジスタファイルの間で伝播する値を一定値に強制するために、隣接する２つのパスレジスタファイルの間に接続された少なくとも１つのゲートと、を具えているリコンフィギュラブル装置。
【請求項１５】
少なくとも１つのゲートは、単調関数を示すゲートを含んでいる請求項１４の装置。
【請求項１６】
互いに直列に相互接続された複数のパスレジスタファイルを形成するために相互接続された複数のレジスタと、
１つが、前記パスレジスタファイルの間で接続された複数の機能ユニットと、
クロックパルス源と、
最後に読み出された情報に基づいて、複数のレジスタの内の幾つかをクロックするために、前記クロックパルスと、最後に読み出された情報を受信する複数のゲートと、を具えている装置。
【発明の詳細な説明】
【技術分野】
【０００１】
連邦政府の資金援助による研究に関する陳述
この発明は、少なくとも一部分は、契約番号ＤＡＢＴ６３−９６−Ｃ−００８３のＤＡＲＰＡ−ＩＴＯ／ＴＴＯによる資金の援助を通じて開発されたもので、連邦政府は、この発明の権利を有することができる。
【０００２】
本発明は、リコンフィギュラブル・アーキテクチャに関するもので、より具体的には、情報をパイプラインのように処理するのに用いられるリコンフィギュラブル・アーキテクチャに関する。
【背景技術】
【０００３】
従来、リコンフィギュラブル演算のための方法として、ユーザの定義されたアプリケーションを実行するために、プログラマブルハードウエアを静的にコンフィギュアすることが行われている。このようなコンフィギュレーションの静的性質は、２つの問題を引き起こす。その１つは、より多くのハードウエアを必要とすることであり、もう１つは、単一のハードウエアデザインでは、将来のプロセス・ジェネレーションで不可避的に利用されるようになるであろう追加のリソースを利用できないことである。パイプライン化されたリコンフィギュレーションと称される技術は、そのハードウエアの迅速なリコンフィギュレーションを通じて、小さなピースのハードウエア上で、大きな論理コンフィギュレーションを実行する(implement)。この技術の場合、コンパイラは、固定ハードウエアの制約を満足させる手段を担うことはできなくなる。また、デザインの性能向上は、そのデザインに割り当てられたハードウエアの量に比例する。
【０００４】
パイプライン化コンフィギュレーションは、単一の静的コンフィギュレーションを、アプリケーションのパイプラインステージに対応する複数のピースに分割することにより、パイプライン化演算を仮想化することを含んでいる。各パイプラインステージは、１サイクル毎に１つずつ、ファブリックの中へロードされる。これは、ファブリックの中にコンフィギュレーションの全体が一時に存在しない場合でも、演算の実行を可能にする。
【０００５】
図１は、仮想プロセスを示すもので、３ステージのファブリックに仮想化された５ステージのパイプラインを示している。図１Ａは、５ステージのアプリケーションを示し、６連続サイクルにおける各々の論理(仮想)パイプラインステージの状態を示している。図１Ｂは、物理ステージ(physical stages)がこのアプリケーションをエグゼキュート(execute)するときのファブリック内の物理ステージの状態を示している。この例では、仮想パイプステージ１は、サイクル１でコンフィギュアされ、次のサイクルでエグゼキュートできる状態にあり、２つのサイクルに対してエグゼキュートする。物理パイプステージ４は無い。それゆえ、サイクル４では、第４番目の仮想パイプステージは物理ステージ１でコンフィギュアされ、第１の仮想ステージを取り替える。一旦パイプラインが一杯になると、５サイクル毎に２連続サイクルに対して２つの結果を生じる。例えば、サイクル２、３、７、８、．．．は入力を消費し、サイクル６、７、１１、１２、．．．は出力を発生する。
【０００６】
図２は、パイプライン化ファブリックのアーキテクチュラルクラスのアブストラクトビューである。複数のプロセッシングエレメント(ＰＥｓ)の各ロウは、それに関連のある相互接続と共に、ストライプと称される。各々のプロセッシングエレメント(ＰＥ)は、典型的には、演算論理ユニット(ＡＬＵ)とパスレジスタファイルを含んでいる。各々のＡＬＵは、ルックアップテーブル(ＬＵＴｓ)と、キャリーチェーン、ゼロ検出等のための追加回路を含んでいる。デザイナーは、一組のＮＢビット幅ＡＬＵｓを用いて、組合せ論理を実装する。ＡＬＵの動作は静的であり、特定の仮想ストライプは物理ストライプに存在する。デザイナーは、ＡＬＵｓのキャリーラインについて、カスケード、チェーン又は他の接続を行ない、よりワイドなＡＬＵを構築し、相互接続ネットワークを介してＰＥｓどうしをチェーンし、複合的な組合せ機能を構築する。
【０００７】
パイプライン・リコンフィギュレーションのために重要なエネーブリング構造の１つは、パスレジスタファイルである。パスレジスタファイルの一例を図３に示している。パスレジスタファイル(10)は、４つのレジスタ(12)(14)(16)(18)(これらは任意のビット幅を有することができる)と、この図の中で４つのマルチプレクサ(20)(22)(24)(26)からなる書き込みポートと、書き込みアドレスデコーダ(28)と、この図の中で読み出しアドレスに応答する４〜１のマルチプレクサ(30)からなる読み出しポートと、を具えている。図３の構造では、このレジスタファイル(10)に接続された機能ユニットは、レジスタファイルから一の値を読み出すことができるし、また、機能ユニットは、一の値を、固有レジスタ(specific registers)(12)(14)(16)(18)の１つに書き込むことができる。レジスタ(12)(14)(16)(18)の１つへ、書き込みポートによる値の書き込みが行われない場合、先のストライプにおける先のパスレジスタファイルの中の対応するパスレジスタからの値が、ライン(32)(34)(36)(38)を通じて、夫々、レジスタ(12)(14)(16)(18)の中へ書き込まれる。
【０００８】
図４は、４つのパスレジスタファイル(42)(44)(46)(48)のアプリケーションへの使用例を示している。この図において、パスレジスタファイル(42)(44)(46)(48)はリング型に接続されているが、そうでなくてもよい。図４では、レジスタファイル(42)(44)(46)(48)の各々について、レジスタは１つだけが示されているが、どのレジスタファイルもレジスタの数は任意である。図４において、機能ユニット１が発生したデータは、１つのレジスタファイル(44)を通って、機能ユニット２へ進む。
【０００９】
図４の構造の主な問題は、機能ユニット２だけに用いられるべき値が、その後のストライプにおける他のパスレジスタファイル(46)(48)(42)でも、引き続き存続することである。もし、その値が、このレジスタを使用する他のストライプによって上書きされる(overwritten)と、その値は、他の機能ユニットに伝播し、機能ユニット１に戻る。この動作(activity)は、演算に役立つものでないので、相当な電力の無駄になる。
【００１０】
パイプラインのリコンフィギュラブル・デバイスのパスレジスタファイルにおいて、電力消費に関連する問題とは、チップ内にある先のアプリケーションからの古い値が、チップの中を伝播され続けて、対象の演算とは無関係であるにも拘わらず、電力を消費することである。それゆえ、演算に必要でなくなった信号を終了させるための機構をパイプラインファブリックの中に設ける必要がある。
【発明の開示】
【００１１】
＜発明の要旨＞
本発明は、「レジスタ使用(register use)」情報を格納して使用し、最後に使用されるレジスタであることを決定し、節電を達成できる方法及び装置に関するものである。レジスタ使用情報は、特定のレジスタに対して、「最後の読み出し(last read)」情報の形態をとることもできる。最後読み出し情報は、読み出しが終わった後に、レジスタの値を強制的に一定値にするために用いられるか、又は、他のレジスタのマスクを外して、そのレジスタだけをクロックするのに用いられる。「レジスタ使用」情報を使用して節電を達成するための方法及びハードウエアについて、幾つかの変形例が開示されている。これらの利点及その他については、以下に記載する発明の詳細な説明によって明らかになるであろう。
【００１２】
＜発明の詳細な説明＞
図５は、好ましくない信号伝播を終了させるための本発明の一実施例を示している。図５を参照すると、既知の如く、各々の物理ストライプは、例えば、コンフィギュレーションワードを物理ストライプに書き込むことにより、仮想ストライプでコンフィギュアされる。コンフィギュレーション管理及びデータ管理の詳細な説明を記載した文献がある[Schmit, et al, "Managing Pipeline-ReconfigurableFPGAs"published in ACM 6th International Symposium on FPGAs, February 1998]。この文献の全体はその引用を以て本願への記載加入とする。コンフィギュレーションワードを物理ストライプへ書き込むタスクのより詳細については、前記文献を参照することができる。リコンフィギュラブル・ファブリックの構造と動作に関するさらなる詳細については、文献[Schmit, et al,"PipeRench : a virtualized programmable data path in 0.18 Micron Technology", in Proceedings of the IEEE Custom Integrated Circuits Conference (CICC), 2002]、文献[Schmit, "PipeRench : a reconfigurable, architectural and compiler", IEEE Computer, pages 70-76 (April 2000)]、文献[Schmit,"Incremental Reconfiguration for Pipelined Applications", Proceedings of the IEEE Symposium on FPGAs for Custom Computing Machines, pp. 47-55, 1997]、及び文献[Schmit et al, "PipeRench : A Coprocessor for Streaming Multimedia Acceleration", International Symposium on Computer Architecture, pp. 38-49, 1999]を参照することができ、これらの文献は引用を以て本願への記載加入とする。
【００１３】
本発明の目的の１つは、レジスタファイルの読み出しが、アプリケーションの中の当該データ値の最後の読み出しかどうかを示すストライプのエンコーディングの中(例えば、コンフィギュレーションワードの中)に、幾つかの追加情報を含めることである。「最後の読み出し(last read)」情報は、仮想ストライプ情報を発生させるコンパイラ又は物理デザインツールによって作成されることができるし、或はまた、仮想ストライプ群を分析して、最後の読み出しであることを決定する別個のプログラムによって行なうこともできる。アプリケーションにおける最初と最後のストライプは、特例を提供する。仮想アプリケーションの最後のストライプでは、その後のストライプは無い。それゆえ、レジスタファイルの中の値でさらに読み出すものは無い。最初の仮想ストライプでは、最初の仮想ストライプの前の物理ストライプのレジスタファイルにその時点であるどの値も使用されることはない。アプリケーションの最初と最後のストライプ以外にストライプについては、読み出されるレジスタの値が最後であるという情報(「最後の読み出し情報」とも称される)が、節電のための多くの手段に用いられることができる。
【００１４】
図５は、最後の読み出しの後に値をマスキングすることにより、電力消費を少なくするために、最後の読み出しを用いる一実施例を示している。図５では、説明を簡素化するために、４つのレジスタファイル(42)(44)(46)(48)は、夫々、１つのレジスタ(42')(44')(46')(48')を有している。しかしながら、実際は、例えば図３に示されるように、各レジスタファイルは複数のレジスタを有することは理解されるであろう。また、各レジスタは１ビットよりも多く格納できることは理解されるであろう。前述の文献に記載された実際のパイプレンチ(PipeRench)の実装において、各レジスタファイルの中の各レジスタは８ビットを格納する。図５の実施例において、最後の読み出し情報は、ファブリック内の順次ストライプの値を一定値に固定するのに用いられる。図５の実施例では、レジスタファイル(42)より前又は該ファイルの中に配置されたＡＮＤ(52)ゲート、レジスタファイル(44)より前又は該ファイルの中に配置されたＡＮＤ(54)ゲート、レジスタファイル(46)より前又は該ファイルの中に配置されたＡＮＤ(56)ゲート、及びレジスタファイル(48)より前又は該ファイルの中に配置されたＡＮＤ(58)ゲートで達成される。レジスタ(44')から読み出された値が、読み出される必要のある値の最後であると仮定した場合、ＡＮＤゲート(56)の入力端子の１つにゼロを入力すると、ＡＮＤゲート(56)の出力端子の値と、その後のパスレジスタファイルの値もまた、強制的にゼロにされる。他のＡＮＤゲート(52)(54)(58)の入力端子に入力された値は、レジスタ(44')によって作成された信号の伝播を終わらせる上で意味をもたない。ＡＮＤゲートの位置に用いられることのできる他のゲートとして、ＯＲゲート、ＮＡＮＤゲートがある。入力の１つにおける制御値に基づいて、出力を強制(force)するゲートのように、単調関数を示すどのタイプのゲートでも用いられることができる。
【００１５】
レジスタ(44')によって出力された値は、その値を強制的にゼロにすることにより、ＡＮＤゲート(56)によって伝播が防止されて、終了となることは認識されるであろう。レジスタにおいて、クロッキング値が一定であると、クロッキング値が変化する場合よりも、電力消費は少ない。最後の読み出しレジスタに応答して、適当なマルチプレクサに対するマルチプレクサの読み出しビットをマスキングすることによっても同様な結果が達成されるので、レジスタによって出力される値は、もはや必要とされず、読み出されない。
【００１６】
最後の読み出し情報を用いて、信号の伝播を停止させ、電力の節約をする他の方法を図６に示している。図６の回路は、ＡＮＤゲート(52)(54)(56)(58)がクロック信号(60)を受信するために配置されている点以外は、図５の回路と同様である。ＡＮＤゲート(52)(54)(56)(58)によって出力されたクロック信号は、夫々、レジスタ(42')(44')(46')(48')に入力される。レジスタの電力節約のために、最後の読み出し情報が用いられる他の方法は、レジスタのクロッキングを停止させることである。これは、図６に示されるように、クロック信号(60)をそれらのレジスタ(42')(46')(48')へマスキング(ブロッキング)することによって行われる。レジスタ(42')(46')(48')は、ＡＮＤゲート(52)(56)(58)の入力端子の１つに、夫々、ゼロを入力することにより、未使用である。使用中のレジスタ(44')だけが、ＡＮＤゲート(54)の入力端子の１つに１を入力することによって実際にクロックされる。これは、大きなクロック分配電力と、さらには、レジスタ自体に分散される電力を節電する。ＡＮＤゲート(52)(54)(56)(58)に入力される値(例えば、０１００)は、クロッキング用マスク(clocking mask)と称される。
【００１７】
図７は、図６に示される回路の少し複雑な実施例を示しており、複数のゲートとクロッキングマスクをゲートに供給する代わりに、情報は、複数のマスクユニット(62)(64)(66)(68)へ供給され、レジスタファイル(42)(44)(46)(48)内のレジスタが、夫々、クロックされるべきかどうかについて、部分的に決定される。図７の構成は、ストライプ(レジスタファイル)毎に異なるクロックマスクの値を計算するために、マスクユニット(62)(64)(66)(68)の追加の回路と、１マスクユニットにつき２つのＡＮＤゲートを必要とする。クロックマスクビットは、各レジスタファイルの各レジスタの中の「最も最近(most recently)」に起こったことに基づいて決定される。最も最近に起こったことは、入力「ReadAdd0」「ReadAdd1」「WriteAdd」「LastRead0」「LastRead1」及び「LastVirtual」の他、先のマスクユニットの状態に関する情報に基づいて決定される。そのレジスタが「最後の読み出し」であった場合、クロックはマスクが外される。そのレジスタが、「最後の読み出し」であったよりも最近に書き込まれた場合、クロックは有効になる(enabled)。これは、上記の入力を受信する小さな有限状態機械で実施されることができる。
【００１８】
図８に示されるように、この状態機械において、そのレジスタが最後の仮想ストライプではなく、このストライプの中に書き込まれた(書き込みアドレス(write address)によって指示されるように)か、又は先のストライプの中にクロックされ、最後の読み出しでなかった(読み出しアドレス及びそのポートに対応する最後の読み出しビットで指示されるように)場合、レジスタファイルのレジスタはクロックされることになる。
【００１９】
図９は、図６の回路をローカルマスクユニットとして供されるように変更された回路を示している。
【００２０】
先の実施例は、節電のためには、値が伝播すべきでないことを決定するために、その値を強制的に一定値(例えば、ゼロ)にするか、又はレジスタをクロックしないことにより、レジスタの値が最後の読み出しであるかどうかについて、全く同じ情報を使用している。パスレジスタファイルが２以上のレジスタを含むとき、リードポートアドレス(どのレジスタがアクセスされるかを特定する)と、「最後の読み出し」と示されたビットが合成され、アプリケーションでどの値が最後に読み出されるかが決定される。この情報をエンコードする他の方法もあるが、現在のところ、あまり効果的なものはない。例えば、情報と読み出しポートアドレスを合成しなくてもよいように、各レジスタファイルの各レジスタに対して、明示的に使用中の(in-use)ビットをもつことができる。このように、本発明は、電力節約のために、どんなレジスタ使用(register use)情報をも用いることを対象とするものである。
【００２１】
さらに、最初の仮想ストライプか又は最後の仮想ストライプであるかについてのストライプの情報もまた、節電のために、マスクユニットによって用いられることができる。アプリケーションは、最初の仮想ストライプにて、先のストライプからもたらされるどのデータも、このアプリケーションには意味がないことを知る。この偽データは、ファブリックのストライプで実行された先の計算結果であり得る。結果として、ストライプが最初の仮想ストライプであることを知らされたマスクユニットは、最初の仮想ストライプを含む物理ストライプに先行して、物理ストライプからの任意のデータについて、クロックをマスクするか、又はデータをゲートすることができる。
【００２２】
図１０は、４つのレジスタ、２つのリード(read)ポート、１つのライト(write)ポート及び４つのゲート群を有する複合レジスタファイルを示しており、これは、最後の一定値に読み出されたレジスタから、出力値を作ることができる。図１１は、図１０と同じパラメータを有すると共に、マスクユニットによって生成される別個のクロックをもつレジスタファイルを示している。図１１のレジスタファイルは、２つのレジスタを含むファイルに減じられたとしても、図７で用いられ、(44)をがり替えられる。
【００２３】
最後に、最初と最後の仮想ストライプの特別な場合に対応するためには、レジスタファイルは、使われていないレジスタファイルエントリをマスクするか(例えば、図１０参照)か、又は、例えば、別個のクロック信号を各レジスタに供給することにより、それらのクロックを停止させる(gated)べきである。
【００２４】
本発明の望ましい実施例を記載したが、当該分野の専門家であれば、多くの変形及び変更を行なうことはできるであろう。本発明は、前記の記載ではなく、特許請求の範囲の記載によって規定される。
【図面の簡単な説明】
【００２５】
【図１Ａ】３段階リコンフィギュラブルファブリック上で５段階パイプラインを仮想化するプロセスを示す図である。
【図１Ｂ】３段階リコンフィギュラブルファブリック上で５段階パイプラインを仮想化するプロセスを示す図である。
【図２】リコンフィギュラブルファブリックのストライプを示す図である。
【図３】パスレジスタファイルの一実施例である。
【図４】好ましくない信号伝播を示すために、各々が単一レジスタを有する４つのパスレジスタファイルを示す図である。
【図５】信号の値をゼロに強制することにより、好ましくない信号伝播を終了させるための本発明の一実施例を示す図である。
【図６】読み出される値を作成する必要があるレジスタだけをクロックすることにより、好ましくない信号伝播を終了させるための本発明の他の実施例を示す図である。
【図７】読み出される値を作成する必要があるレジスタだけをクロックすることにより、好ましくない信号伝播を終了させるための本発明の他の実施例を示す図である。
【図８】マスクユニットの一実施例を示す説明図である。
【図９】ローカルマスクユニットを使用できるように、請求項６の回路に変更を加えた回路を示す図である。
【図１０】複数のレジスタが共通のクロック信号でクロックされ、１つのレジスタをゼロの値に強制するために４つのＡＮＤゲート及びデコーダが用いられた回路を示す図である。
【図１１】各レジスタが自らのクロック信号によってクロックされるように、図１０の回路に変更を加えた回路を示す図である。
【図１Ａ】
2005539292.tif 000003
【図１Ｂ】
2005539292.tif 000004
【図２】
2005539292.tif 000005
【図３】
2005539292.tif 000006
【図４】
2005539292.tif 000007
【図５】
2005539292.tif 000008
【図６】
2005539292.tif 000009
【図７】
2005539292.tif 000010
【図８】
2005539292.tif 000011
【図９】
2005539292.tif 000012
【図１０】
2005539292.tif 000013
【図１１】
2005539292.tif 000014
【手続補正書】
【提出日】平成16年11月23日(2004.11.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のストライプの中に組織化された複数のレジスタを含むデバイスで実施される方法であって、少なくともいくつかのストライプに対して、レジスタの使用に関する情報を提供し、該情報を、電力消費量を低減するために使用することを含んでいる、方法。
【請求項２】
情報の提供は、読み出される必要があるレジスタの中の最後の値に関する情報を提供することを含んでいる請求項１の方法。
【請求項３】
情報の使用は、最後に読み出された信号の値を、強制的に一定値にすることを含んでいる請求項２の方法。
【請求項４】
情報の使用は、その後のストライプで使用されるデータが含まれるそれらレジスタだけをクロックすることを含んでいる請求項２の方法。
【請求項５】
前記情報からクロッキング用マスクを作成することをさらに含んでいる請求項４の方法。
【請求項６】
ビットを、各レジスタの状態に対応するメモリの中で維持することをさらに含んでいる請求項１の方法。
【請求項７】
複数のストライプの中に組織化された複数のレジスタを含むデバイスにおいて、最後に読み出された信号が伝播するの防止する方法であって、レジスタ内の値が読み出される必要のある最後に関する情報を提供し、該情報を使用して、最後に読み出された値を一定値に強制することを含んでいる、方法。
【請求項８】
情報の使用は、最後に読み出された信号の値を、最後の読み出しに関する情報を受信するゲートに入力し、該ゲートの出力をゼロに強制することを含んでいる請求項７の方法。
【請求項９】
複数のストライプの中に組織化された複数のレジスタを含むデバイスにおいて、最後に読み出された信号が伝播するの防止する方法であって、レジスタ内の値が読み出される必要のある最後に関する情報を提供し、該情報を使用して、全部より少ない数のレジスタをクロックすることを含んでいる、方法。
【請求項１０】
情報の使用は、ストライプをクロックするのに用いられたクロック信号をマスキングすることを含んでいる請求項９の方法。
【請求項１１】
前記マスキングするステップは、前記情報を、クロックパルスを受信する複数のゲートへ入力し、前記入力情報に基づいてストライプをクロックすることを含んでいる請求項１０の方法。
【請求項１２】
ストライプをクロックするのに用いられたクロック信号をマスキングするために、マスキングビットの値を局部的に決定することをさらに含んでいる請求項１０の方法。
【請求項１３】
マスキングビットの値を局部的に決定するステップは、読み出しアドレス情報及び書き込みアドレス情報と、最後に読み出された情報であるマスキングビットの値から決定することを含んでいる請求項１２の方法。
【請求項１４】
チェーンコンフィギュレーションの中で互いに相互接続された複数のパスレジスタファイルを形成するために相互接続された複数のレジスタと、
少なくとも１つが、前記パスレジスタファイルの各ファイル間で接続された複数の機能ユニットと、
レジスタ使用情報に応答して、隣接するパスレジスタファイルの間で伝播する値を一定値に強制するために、隣接する２つのパスレジスタファイルの間に接続された少なくとも１つのゲートと、を具えているリコンフィギュラブル装置。
【請求項１５】
少なくとも１つのゲートは、単調関数を示すゲートを含んでいる請求項１４の装置。
【請求項１６】
互いに直列に相互接続された複数のパスレジスタファイルを形成するために相互接続された複数のレジスタと、
１つが、前記パスレジスタファイルの間で接続された複数の機能ユニットと、
クロックパルス源と、
最後に読み出された情報に基づいて、複数のレジスタの内の幾つかをクロックするために、前記クロックパルスと、最後に読み出された情報を受信する複数のゲートと、を具えている装置。
【国際調査報告】
2005539292.tif 000015
2005539292.tif 000016
2005539292.tif 000017