JP5294304B2 - 再構成可能電子回路装置 - Google Patents

再構成可能電子回路装置 Download PDF

Info

Publication number
JP5294304B2
JP5294304B2 JP2008159267A JP2008159267A JP5294304B2 JP 5294304 B2 JP5294304 B2 JP 5294304B2 JP 2008159267 A JP2008159267 A JP 2008159267A JP 2008159267 A JP2008159267 A JP 2008159267A JP 5294304 B2 JP5294304 B2 JP 5294304B2
Authority
JP
Japan
Prior art keywords
cache
configuration information
circuit configuration
electronic circuit
circuit device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008159267A
Other languages
English (en)
Other versions
JP2010002986A (ja
Inventor
崇雄 戸井
亨 粟島
太郎 藤井
稔朗 北岡
浩一朗 古田
真人 本村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Renesas Electronics Corp
Original Assignee
NEC Corp
Renesas Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp, Renesas Electronics Corp filed Critical NEC Corp
Priority to JP2008159267A priority Critical patent/JP5294304B2/ja
Priority to US12/457,649 priority patent/US8275973B2/en
Publication of JP2010002986A publication Critical patent/JP2010002986A/ja
Application granted granted Critical
Publication of JP5294304B2 publication Critical patent/JP5294304B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Stored Programmes (AREA)
  • Advance Control (AREA)

Description

本発明は、回路構成情報を効率的に保持、転送する再構成可能電子回路装置に関する。
近年、専用論理回路並の性能を実現しつつ、回路動作の変更が容易に可能であるデバイスとしてFPGA(Field Programable Gate Array)やDRP(Dynamically Reconfigurable Processor)が注目されている。例えば、特許文献1と特許文献2とに、DRPのアーキテクチャの一例が開示されている。
FPGAやDRPは、あらかじめデバイス内のコンフィギュレーションメモリに記憶された回路構成情報(以下、「コンフィギュレーションコード」という。)に応じた回路動作を実行する。従って、これらのデバイスで大規模な回路を実現させる場合、多くのコンフィギュレーションコードを保持する必要がある。特に、DRPのようにコンフィギュレーションの構成を複数持ち、この構成を時間軸上で動的に切り替える場合、より多くのコンフィギュレーションコードを保持する必要がある。
特許第3987782号公報 特許第3987783号公報
しかしながら、各演算器内に用意するコンフィギュレーションメモリのサイズを大きくすると、デバイス全体に対してこのコンフィギュレーションメモリが占める割合が大きくなり、逆に演算回路が占める割合は小さくなるので、演算器同士の距離が遠くなり、配線遅延が増大してしまうことがある。
この配線遅延の増大を抑制する方法として、例えば、高速で動作するトランジスタを用いる方法が考えられる。しかし、高速で動作するトランジスタは一般的にリーク電流が大きいため消費電力が増大してしまう。
このほか、回路構成情報の参照には偏りがあるため、この偏りを利用して効率よく回路構成情報を保持、転送できるようにしたいという要望がある。さらに、回路構成情報に含まれるコードにも偏りがあるため、回路構成情報を効率よく保持したいという要望も強い。
本発明は、上記問題に鑑みてなされたものであり、回路構成情報を効率的に保持、転送する再構成可能電子回路装置を提供することを目的とする。
上記目的を達成するために、本発明に係る再構成可能電子回路装置は、複数のプロセッシングエレメント、主記憶部、キャッシュ部、キャッシュ制御部を備え、以下のように構成する。
まず、主記憶部は、複数のプロセッシングエレメントのそれぞれに電子回路を実現させるための回路構成情報を複数記憶する。
次に、キャッシュ部は、複数のプロセッシングエレメントのいずれかにロードされた回路構成情報をキャッシュする。
そして、キャッシュ制御部は、複数のプロセッシングエレメントのそれぞれにロードすべき回路構成情報を選択する。ここで、キャッシュ制御部は、当該選択された回路構成情報がキャッシュ部に記憶されていなければ主記憶部からキャッシュ部に読み出し、当該選択された回路構成情報をキャッシュ部からプロセッシングエレメントにロードする。
ここで、キャッシュ部にキャッシュされる回路構成情報には、当該プロセッシングエレメントにおけるアドレス範囲と当該アドレス範囲に配置されるコード列とが対応付けて指定され、当該コード列には所定の無効コードは含まれない。
また、キャッシュ制御部は、当該プロセッシングエレメントにおける各アドレスを当該所定の無効コードでクリアしてから、当該回路構成情報に指定されるアドレス範囲のそれぞれについてこれに対応付けられるコード列を書き込むことにより、当該回路構成情報をロードする。
本発明によれば、回路構成情報を効率的に保持、転送する再構成可能電子回路装置を提供することができる。
以下、図面を参照して、本実施形態に係る再構成可能電子回路装置について説明する。なお、本実施形態に係る再構成可能電子回路装置は、DRP(Dynamically Reconfigurable Processor)であるが、再構成可能電子回路装置はFPGA(Field Programable Gate Array)であってもよい。
まず、図1を参照して、本実施形態に係る再構成可能電子回路装置が備えるプロセッシングエレメント(以下、「PE(Processing Element)」とする。)10について説明する。なお、再構成可能電子回路装置の内部には、多数のPE10が格子状に配置され、各PE10は、データ配線及びフラグ配線により他のPE10と接続される。ここでは、理解を容易にするため、図1には1つのPE10のみを示し、1つのPEの構成と動作とを説明する。
図1に示すように、PE10は、コンフィギュレーションメモリ(一次キャッシュ)11と、演算ユニット12と、レジスタ13と、を備える。PE10が備える各要素は、PE10内において、図示しないデータ配線を介してデータの受け渡しを行い、図示しないフラグ配線を介してフラグの受け渡しを行う。
PE10は、データ配線を介して他のPE10から供給されたデータに対して所定の演算を施し、演算により得られたデータをデータ配線を介して別のPE10に供給する。また、PE10は、フラグ配線を介して他のPE10からフラグを供給される。さらにPE10は、フラグをフラグ配線を介して別のPE10に供給する。
コンフィギュレーションメモリ11は、演算ユニット12の命令の内容(以下、「演算情報」という。)と、配線接続スイッチ21、22、25、31、32の配線接続情報とをコンフィギュレーションコード(以下、「回路構成情報」という。)として記憶する。なお、コンフィギュレーションメモリ11は、各PE10毎に時間軸上で動的に切り替える構成面(以下、「コンテキスト」という。)の個数分用意されることとなるが、PE10同士で共通する場合もあり得る。図1に示す例では、コンフィギュレーションメモリ11は、コンテキスト1〜コンテキストNにそれぞれ対応したN個分の回路構成情報(コード1〜コードN)を記憶している。
また、演算ユニット12は、供給されたデータに対し所定の演算を施す。なお、演算ユニット12が施す演算内容は、コンフィギュレーションメモリ11に記憶された演算情報のうち、対応するコンテキストの演算情報により決定される。
レジスタ13は、演算ユニット12が出力した演算結果のデータや演算中の中間データなどを一時記憶する。
配線接続スイッチ21、22、25は、それぞれの配線接続情報に従って、対応するPE10(当該配線接続情報を記憶するコンフィギュレーションメモリ11を備えるPE10)と、他のPE10(例えば、隣接するPE10)とをデータ配線で接続する。
配線接続スイッチ31、32、25は、それぞれの配線接続情報に従って、対応するPE10(当該配線接続情報を記憶するコンフィギュレーションメモリ11を備えるPE10)と、他のPE10(例えば、隣接するPE10)とをフラグ配線で接続する。
配線接続スイッチ21、22、25、31、32は、コンフィギュレーションメモリ11に記憶された配線接続情報のうち、対応するコンテキストの配線接続情報に従って配線を接続する。なお、配線接続スイッチ25は、データ配線やフラグ配線の交差部に配置される。
次に、図2を参照して、本実施形態に係る再構成可能電子回路装置100の基本構成について説明する。
図2に示すように、再構成可能電子回路装置100は、複数のPE10と、DRAM(Dynamic Random Access Memory)50と、二次キャッシュメモリ(以下、「二次キャッシュ」という。)60と、キャッシュ制御部70と、を備える。
PE10、再構成可能電子回路装置100内部に複数配置される。
DRAM50は、複数のPE10のそれぞれに電子回路を実現させるための回路構成情報を複数記憶する。DRAM50は、大容量のメモリであり、主記憶部として機能する。
二次キャッシュ60は、複数のPE10のいずれかにロードされた回路構成情報をキャッシュする。二次キャッシュ60は、キャッシュ部として機能する。
キャッシュ制御部70は、複数のPE10のそれぞれにロードすべき回路構成情報を選択する。そして、キャッシュ制御部70は、当該選択された回路構成情報が二次キャッシュ60に記憶されていなければDRAM50から二次キャッシュ60に読み出す。そして、キャッシュ制御部70は、当該選択された回路構成情報を当該二次キャッシュ60から当該PE10にロードする。
ロードすべき回路構成情報は、番号や名前、DRAM50内でのアドレスなどの識別名が割り当てられており、回路構成情報をキャッシュする際には、当該識別名をキーとしてキャッシュするのが典型的である。
次に、図3〜5を参照して、再構成可能電子回路装置100において、二次キャッシュ60がどのように配置され、どのようにPE10(厳密には、PE10内にあるコンフィギュレーションメモリ11)と接続されるかを説明する。
図3に、PE10の列毎に二次キャッシュ60を設け、二次キャッシュ60を、対応する列に属するPE10のそれぞれと接続する例を示す。かかる構成では、二次キャッシュ60から、対応する列に属するPE10がそれぞれの備えるコンフィギュレーションメモリ11に回路構成情報を転送することが可能となる。
図4に、PE10の行毎に二次キャッシュ60を設け、二次キャッシュ60を、対応する行に属するPE10のそれぞれと接続する例を示す。かかる構成では、二次キャッシュ60から、対応する行に属するPE10がそれぞれの備えるコンフィギュレーションメモリ11に回路構成情報を転送することが可能となる。
図5に、任意の数のPE10の行と任意の数のPE10の列とから構成されるPE10のブロック毎に二次キャッシュ60を設け、二次キャッシュ60を、対応するブロックに属するPE10のそれぞれと接続する例を示す。かかる構成では、二次キャッシュ60から、対応するブロックに属するPE10がそれぞれの備えるコンフィギュレーションメモリ11に回路構成情報を転送することが可能となる。なお、図5に示す例では、1ブロックは、8個(4行×2列)のPE10から構成されている。
次に、図6〜10を参照して、本実施形態に係る再構成可能電子回路装置100の動作について説明する。
まず、再構成可能電子回路装置100の動作の説明の前に、図6に示す再構成可能電子回路装置100の構成について簡単に説明する。なお、図6には、PE10の行毎に二次キャッシュ60を配置する例を示す。図6には、理解を容易にするため、1行分のPE10と二次キャッシュ60とのみを示す。
図6に示すように、再構成可能電子回路装置100は、複数のPE10と、DRAM50と、二次キャッシュ60と、キャッシュ制御部70と、を備える。なお、PE10とDRAM50とについては、図2を参照して説明した基本構成と同様であるため説明を省略する。
二次キャッシュ60は、DRAM50よりも高速で動作する記憶装置であって、例えば、デュアルポートRAMにより構成される。二次キャッシュ60をデュアルポートRAMにより構成した場合、DRAM50から回路構成情報を読み込みながら、コンフィギュレーションメモリ11に回路構成情報を転送することが可能となる。
キャッシュ制御部70は、キャッシュコントローラ71と、状態遷移コントローラ72と、から構成される。
キャッシュコントローラ71は、コンフィギュレーションメモリ11と二次キャッシュ60とから構成される階層キャッシュを制御する。キャッシュコントローラ71は、主に以下の(a)〜(d)の事項について制御する。(a)二次キャッシュ60からPE10の備えるコンフィギュレーションメモリ11へどの回路構成情報をどのタイミングでロードするか。(b)コンフィギュレーションメモリ11に保持している複数の回路構成情報のうち、どの回路構成情報をどのタイミングで破棄するか。(c)DRAM50から二次キャッシュ60へどの回路構成情報をどのタイミングでロードするか。(d)二次キャッシュ60に保持している複数の回路構成情報のうち、どの回路構成情報をどのタイミングで破棄するか。なお、キャッシュコントローラ71は、CPU(Central Processing Unit)で代用してもよい。
状態遷移コントローラ72は、再構成可能電子回路装置100のとりうる状態を制御する。特に、状態遷移コントローラ72は、図7に示すように、コンテキストを切り替えることにより、再構成可能電子回路装置100のとりうる状態を制御する。状態遷移コントローラ72は、コンテキストの切り替えのタイミング等を示す信号を制御情報としてキャッシュコントローラ71に供給する。
キャッシュコントローラ71は、その信号に基づいて、いずれの回路構成情報をいずれのPE10にロードするかを決定し、ロードすべき回路構成情報が二次キャッシュ60に記憶されていればそれを用いてPE10へロードし、記憶されなければ、二次キャッシュ60に記憶させる処理とPE10へのロード処理とを行う。
まず、状態遷移コントローラ72は、例えば、各PE10の入出力の状態やクロック信号などに基づいて、各PE10の回路構成情報の更新タイミング(コンテキストの切り替えのタイミング)を検出する。状態遷移コントローラ72は、回路構成情報の更新タイミングを検出すると、更新タイミングを示す情報を制御情報としてキャッシュコントローラ71に供給する。
キャッシュコントローラ71は、制御情報を状態遷移コントローラ72から供給されると、制御情報に基づいて、回路構成情報を更新する。
具体的には、例えば、キャッシュコントローラ71は、1つのPE10のコンフィギュレーションメモリ11に書き込むべき回路構成情報を特定(DRAM50に記憶された回路構成情報から選択)する。そして、キャッシュコントローラ71は、当該特定した回路構成情報が、当該PE10に接続された二次キャッシュ60に記憶されているか否かを判別する。回路構成情報の特定には、上記のように、番号、名前、DRAM50内でのアドレスなどの識別名が用いられ、二次キャッシュ60では、これらの識別名をキーとしたキャッシュを行う。
キャッシュコントローラ71は、当該特定した回路構成情報が当該二次キャッシュ60に記憶されていると判別したときは、二次キャッシュ60から当該回路構成情報を読み出し当該PE10に供給する。一方、キャッシュコントローラ71は、当該特定した回路構成情報が当該二次キャッシュ60に記憶されていないと判別したときは、DRAM50から当該特定した回路構成情報を二次キャッシュ60に読み出すとともに、当該PE10に供給する。
なお、PE10は、供給された回路構成情報をコンフィギュレーションメモリ11に書き込む。キャッシュコントローラ71は、全てのPE10に回路構成情報を供給すると、回路構成情報の更新を終了する。
図6には、キャッシュ制御部70が状態遷移コントローラ72を備える例を示したが、図8に示すように、キャッシュ制御部70が状態遷移コントローラ72備えない構成でもよい。
かかる構成の場合、図8に示すように、キャッシュコントローラ71は、各PE10の状態などを監視して、直接PE10と制御情報の受け渡しを行い、回路構成情報の特定やロードなどを行う。演算要素がPEではなく、FPGAのようにLUT(Look Up Table)である場合も同様である。
次に、図9を参照して、二次キャッシュ60に記憶される回路構成情報について説明する。
図9に示すように、二次キャッシュ60には、10パターンの回路構成情報が記憶されるものとする。また、各回路構成情報は、「0x00」〜「0x0F」の各アドレスに対応付けられた1バイトのコード列、すなわち、全体で16バイトのコード列から構成されるものとする。なお、コード列が特定のコード、例えば「NOP」を示すコード(例えば、16進数で「0x00」)である場合、当該コード列を記憶しない。この「NOP」コードは、PE10の動作を指定する命令として考えるときには「何もしない」ことを意味し、電子回路を構成する命令として考えるときには「何も配線しない」ことを意味するものである。
図9に示す例では、パターン1は、アドレス「0x00」、「0x01」、「0x04」及び「0x0F」に対応付けられたコード列は「0x00」ではないため二次キャッシュ60に記憶するが、他のアドレスのコード列は全て「0x00」であるため記憶しない。同様に、パターン2では、アドレス「0x00」及び「0x01」以外のアドレスに対応付けられたコード列は全て「0x00」であるため、記憶しない。
DRPにおいては、演算ユニット12のうち何も命令を実行しない演算ユニット12が数多く存在することが予想される。演算ユニット12に何も命令を実行しないように指定する演算情報としてNOPを示すコード列、例えば「0x00」を用いることが考えられ、コンフィギュレーションメモリ11には演算情報として多くの「0x00」が記憶されることが予想される。
また、配線接続スイッチ21、22、25、31、32のうちどの配線も接続しない配線接続スイッチ21、22、25、31、32が数多く存在することも予想される。この場合も、配線接続情報として多くの「0x00」が記憶されることが予想される。
このため、二次キャッシュ60において、コード列が「0x00」である場合に、そのコード列部分を圧縮することで、当該コード列を記憶しないことにより、二次キャッシュ60に記憶されるデータ量を大幅に減らすことが可能となる。
次に、図10を参照して、キャッシュコントローラ71がPE10のコンフィギュレーションメモリ11に回路構成情報を書き込む手順について説明する。図6に示すように、二次キャッシュ60には4つのPE10(図10において、PE(A)、PE(B)、PE(C)、PE(D))が接続されている。このときの転送は、転送する信号経路の幅によって制限され、一回に一つのPE10の内容しか転送できないと仮定して説明する。
キャッシュコントローラ71は、接続された全てのPE10のコンフィギュレーションメモリ11に記憶されたコードを全てクリアする。これは、コンフィギュレーションメモリ11にNOP以外のコードが残っていると、PE10が無用な演算を実行することによって消費電力が増加したり、配線接続スイッチが予期せぬ接続を行うことによって回路素子を破壊する可能性があるためである。
なお、NOPに相当する回路構成情報を転送すると転送に時間がかかる。そこで一度、消去してから必要に応じて新しい回路構成情報を転送する。すなわち、転送がなければ消去されるだけとなる。
キャッシュコントローラ71は、接続された全てのPE10のコンフィギュレーションメモリ11の全てのアドレスを「0x00」でクリアした後に、各PE10のコンフィギュレーションメモリ11に対して「0x00」以外のコード列から構成される回路構成情報を書き込む。このように、最低限必要なコード列のみを逐一書き込むことで、書き込みにかかる時間を減らすことが可能となる。
なお、コンフィギュレーションメモリ11の全てのアドレスを「0x00」でクリアする手法として、コンフィギュレーションメモリ11に、全てのアドレスについて「0x00」でクリアする機構を設けても良いし、DMA転送などにより全てのアドレスについて自動的に「0x00」を書き込むようにしてもよい。
また、1つの二次キャッシュ60と接続されるPE10にロードされる回路構成情報は、同じパターンである可能性が高い。すなわち、図3〜5に波線で示したPE群のように、同一の列、同一の行、或いは同一のグループ、に属するPE10は同じ演算処理を実行する可能性が高い。理由を以下に示す。
DRPにより実現される回路に実行させる処理は、同一の演算を並列処理やパイプライン処理することにより実現される場合が多いと予想される。そして、並列処理やパイプライン処理を実行する場合、同一の列又は同一の行に属するPE10の演算処理は同一となり、回路構成情報も同一になることが予想される。さらに、これらの処理を実行する場合、あるPE10が実行した処理と同一の処理を、次のタイミングで当該PE10に隣接するPE10で実行する可能性も高くなり、同一の回路構成情報を次のタイミングで隣接するPE10にロードする可能性が高くなる。
このように、本実施形態に係る再構成可能電子回路装置100では、二次キャッシュ60におけるキャッシュのヒット率が高くなることが予想され、結果として再構成可能電子回路装置100の動作速度の向上が期待できる。
また、コンテキスト数を増やしたい場合、二次キャッシュ60の容量を増やすだけでよい。すなわち、PE10毎に用意されている容量の少ないコンフィギュレーションメモリ11の容量をそれぞれ増やすことに比べると、複数のPE10のコンフィギュレーションをまとめて記憶する二次キャッシュ60の容量を増やす方が面積の増加が少なくてすむ。そして、コンフィギュレーションメモリの面積を小さくすることができると、PE10間の距離も短くなるため遅延を短縮することができる。
また、二次キャッシュ60は一次キャッシュ(コンフィギュレーションメモリ11)とは異なり、遅延短縮の要求は少ないため低速であるがリーク電流が少ないトランジスタで構成することができる。このため、消費電力を減らすことができる。
上記実施形態では、コンフィギュレーションメモリ11が記憶する回路構成情報は、演算ユニット12の演算情報に加え、PE10近傍の配線接続スイッチ21、22、25、31、32の配線接続情報を含むものとして説明した。しかし、演算情報と、配線接続情報とは別のメモリに記憶するようにしてもよい。この場合、演算情報用の二次キャッシュと配線接続情報用の二次キャッシュを別々に設け、キャッシュ制御部がこれらの二次キャッシュを別々に制御するようにすればよい。
上記実施形態では、再構成可能電子回路装置が演算器がベースのDRPから構成されるものとして説明した。しかし、再構成可能電子回路装置は、LUTで実現されるFPGA、プロダクトタームがベースのPLD等から構成されてもよい。
上述のように、本発明によれば、回路構成情報を効率的に保持、転送する再構成可能電子回路装置を提供することができる。
本発明の実施形態に係る再構成可能電子回路装置が備えるプロセッシングエレメントの構成を示す図である。 本発明の実施形態に係る再構成可能電子回路装置の基本構成を示すブロック図である。 二次キャッシュとプロセッシングエレメントとの第1の配置及び接続例を示すブロック図である。 二次キャッシュとプロセッシングエレメントとの第2の配置及び接続例を示すブロック図である。 二次キャッシュとプロセッシングエレメントとの第3の配置及び接続例を示すブロック図である。 再構成可能電子回路装置の動作を説明するためのブロック図である。 状態遷移コントローラが実行するコンテキストの切り替え動作を説明するための図である。 キャッシュ制御部が状態遷移コントローラを備えない場合のキャッシュコントローラの動作を説明するためのブロック図である。 二次キャッシュに記憶される回路構成情報を説明するための図である。 回路構成情報を書き込む手順を説明するための図である。
符号の説明
10 PE(Processing Element)
11 コンフィギュレーションメモリ
12 演算ユニット
13 レジスタ
21、22、25、31、32 配線接続スイッチ
50 DRAM(Dynamic Random Access Memory)
60 二次キャッシュ
70 キャッシュ制御部
71 キャッシュコントローラ
72 状態遷移コントローラ
100 再構成可能電子回路装置

Claims (5)

  1. 複数のプロセッシングエレメントと、
    前記複数のプロセッシングエレメントのそれぞれに電子回路を実現させるための回路構成情報を複数記憶する主記憶部、
    前記複数のプロセッシングエレメントのいずれかにロードされた回路構成情報をキャッシュするキャッシュ部、
    前記複数のプロセッシングエレメントのそれぞれにロードすべき回路構成情報を選択し、当該選択された回路構成情報が前記キャッシュ部に記憶されていなければ前記主記憶部から前記キャッシュ部に読み出し、当該選択された回路構成情報を当該キャッシュ部から当該プロセッシングエレメントにロードするキャッシュ制御部、を備え、
    前記キャッシュ部にキャッシュされる回路構成情報には、当該プロセッシングエレメントにおけるアドレス範囲と当該アドレス範囲に配置されるコード列とが対応付けて指定され、当該コード列には所定の無効コードは含まれず、
    前記キャッシュ制御部は、当該プロセッシングエレメントにおける各アドレスを当該所定の無効コードでクリアしてから、当該回路構成情報に指定されるアドレス範囲のそれぞれについてこれに対応付けられるコード列を書き込むことにより、当該回路構成情報をロードする、
    ことを特徴とする再構成可能電子回路装置。
  2. 請求項に記載の再構成可能電子回路装置であって、
    前記キャッシュ部を複数備え、
    前記複数のプロセッシングエレメントのそれぞれは、前記複数のキャッシュ部のいずれかに対応付けられて、当該対応付けられたキャッシュ部にキャッシュされる回路構成情報がロードされ
    前記複数のプロセッシングエレメントは、格子状に配置され、
    当該格子は、同じ大きさの長方形に分割され、
    前記複数のプロセッシングエレメントのうち、同じ長方形に配置されるプロセッシングエレメントは同じキャッシュ部に対応付けられる、
    ことを特徴とする再構成可能電子回路装置。
  3. 請求項1又は2に記載の再構成可能電子回路装置であって、
    前記キャッシュ制御部は、前記プロセッシングエレメントにおける各アドレスを前記所定の無効コードで自動的にクリアする手段を備える、
    ことを特徴とする再構成可能電子回路装置。
  4. 請求項1乃至3のいずれか1項に記載の再構成可能電子回路装置であって、
    前記キャッシュ部は、演算情報用のキャッシュと配線接続情報用のキャッシュとを備え、
    前記キャッシュ制御部は、前記演算情報用のキャッシュと前記配線接続情報用のキャッシュとを別々に制御する、
    ことを特徴とする再構成可能電子回路装置。
  5. 請求項1乃至4のいずれか1項に記載の再構成可能電子回路装置であって、
    前記キャッシュ部は、デュアルポートRAMにより構成される、
    ことを特徴とする再構成可能電子回路装置。
JP2008159267A 2008-06-18 2008-06-18 再構成可能電子回路装置 Active JP5294304B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008159267A JP5294304B2 (ja) 2008-06-18 2008-06-18 再構成可能電子回路装置
US12/457,649 US8275973B2 (en) 2008-06-18 2009-06-17 Reconfigurable device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008159267A JP5294304B2 (ja) 2008-06-18 2008-06-18 再構成可能電子回路装置

Publications (2)

Publication Number Publication Date
JP2010002986A JP2010002986A (ja) 2010-01-07
JP5294304B2 true JP5294304B2 (ja) 2013-09-18

Family

ID=41432457

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008159267A Active JP5294304B2 (ja) 2008-06-18 2008-06-18 再構成可能電子回路装置

Country Status (2)

Country Link
US (1) US8275973B2 (ja)
JP (1) JP5294304B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5711889B2 (ja) 2010-01-27 2015-05-07 スパンション エルエルシー リコンフィギュラブル回路および半導体集積回路
US9116751B2 (en) * 2011-02-08 2015-08-25 Canon Kabushiki Kaisha Reconfigurable device, processing assignment method, processing arrangement method, information processing apparatus, and control method therefor
CN103914404B (zh) * 2014-04-29 2017-05-17 东南大学 一种粗粒度可重构系统中的配置信息缓存装置及压缩方法
JP6694138B2 (ja) 2016-07-26 2020-05-13 富士通株式会社 プログラマブルロジックデバイスの制御プログラム、制御方法及び情報処理装置
ES2950681T3 (es) 2017-08-03 2023-10-11 Next Silicon Ltd Arquitectura de memoria caché reconfigurable y métodos para coherencia de memoria caché
US10817309B2 (en) 2017-08-03 2020-10-27 Next Silicon Ltd Runtime optimization of configurable hardware
EP3682353A4 (en) 2017-09-13 2021-12-08 Next Silicon Ltd DIRECTED AND INTERCONNECTED GRID DATA FLOW ARCHITECTURE
US11269526B2 (en) 2020-04-23 2022-03-08 Next Silicon Ltd Interconnected memory grid with bypassable units

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02188847A (ja) * 1989-01-18 1990-07-24 Agency Of Ind Science & Technol 階層キャッシュメモリにおけるデータ交換方式
JPH02253356A (ja) * 1989-03-28 1990-10-12 Toshiba Corp 階層キャッシュメモリ装置とその制御方式
GB9403030D0 (en) * 1994-02-17 1994-04-06 Austin Kenneth Re-configurable application specific device
US5745734A (en) * 1995-09-29 1998-04-28 International Business Machines Corporation Method and system for programming a gate array using a compressed configuration bit stream
ATE243390T1 (de) * 1996-12-27 2003-07-15 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen umladen von datenflussprozessoren (dfps) sowie bausteinen mit zwei- oder mehrdimensionalen programmierbaren zellstrukturen (fpgas, dpgas, o.dgl.)
DE19807872A1 (de) * 1998-02-25 1999-08-26 Pact Inf Tech Gmbh Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl.
JP2000010860A (ja) * 1998-06-16 2000-01-14 Hitachi Ltd キャッシュメモリ制御回路及びプロセッサ及びプロセッサシステム及び並列プロセッサシステム
US6526557B1 (en) * 2000-07-25 2003-02-25 Xilinx, Inc. Architecture and method for partially reconfiguring an FPGA
WO2005045692A2 (en) * 2003-08-28 2005-05-19 Pact Xpp Technologies Ag Data processing device and method
US7844796B2 (en) * 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
WO2005010632A2 (en) * 2003-06-17 2005-02-03 Pact Xpp Technologies Ag Data processing device and method
WO2004021176A2 (de) * 2002-08-07 2004-03-11 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
JP3987783B2 (ja) 2002-10-11 2007-10-10 Necエレクトロニクス株式会社 アレイ型プロセッサ
JP3987782B2 (ja) 2002-10-11 2007-10-10 Necエレクトロニクス株式会社 アレイ型プロセッサ
JP2006011705A (ja) * 2004-06-24 2006-01-12 Fujitsu Ltd プロセッサおよび半導体装置
JP2009159567A (ja) * 2007-12-28 2009-07-16 Panasonic Corp リコンフィギュアラブル回路、コンフィギュレーション方法およびプログラム

Also Published As

Publication number Publication date
US8275973B2 (en) 2012-09-25
US20090319754A1 (en) 2009-12-24
JP2010002986A (ja) 2010-01-07

Similar Documents

Publication Publication Date Title
JP5294304B2 (ja) 再構成可能電子回路装置
US10860326B2 (en) Multi-threaded instruction buffer design
US20160328170A1 (en) High speed memory systems and methods for designing hierarchical memory systems
CN102141905B (zh) 一种处理器体系结构
JP2004157593A (ja) 多ポート統合キャッシュ
JP2006164183A (ja) 半導体信号処理装置
US20070294515A1 (en) Register file bit and method for fast context switch
US20110082999A1 (en) Data processing engine with integrated data endianness control mechanism
KR20130127437A (ko) 부동 소수점 레지스터 캐싱을 위한 방법 및 장치
US8862835B2 (en) Multi-port register file with an input pipelined architecture and asynchronous read data forwarding
JP5954112B2 (ja) メモリ装置、演算処理装置、及びキャッシュメモリ制御方法
GB2540940A (en) An apparatus and method for transferring a plurality of data structures between memory and one or more vectors of data elements stored in a register bank
US8862836B2 (en) Multi-port register file with an input pipelined architecture with asynchronous reads and localized feedback
US20050066150A1 (en) Processing block with integrated light weight multi-threading support
CN107408076B (zh) 数据处理装置
JP6190150B2 (ja) 記憶装置
US6941442B2 (en) Entry lockdown within a translation lookaside buffer mechanism
KR101099417B1 (ko) 캐시 메모리 디바이스
JPH0282330A (ja) ムーブアウト・システム
CN114064560B (zh) 一种面向粗粒度可重构阵列的可配置便笺式缓存设计方法
TWI574152B (zh) 具有上下文切換之微控制器
US7502920B2 (en) Hierarchical storage architecture for reconfigurable logic configurations
US10073773B2 (en) Instruction paging in reconfigurable fabric
EP3030963B1 (en) Flexible configuration hardware streaming unit
JP2006157508A (ja) プログラマブルデバイス

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110516

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130426

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130514

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130606

R150 Certificate of patent or registration of utility model

Ref document number: 5294304

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250