差分
この文書の現在のバージョンと選択したバージョンの差分を表示します。
動的リコンフィギャラブルとは [2010/11/03 13:43] wasmii |
動的リコンフィギャラブルとは [2011/04/05 07:19] (現在) |
||
---|---|---|---|
ライン 9: | ライン 9: | ||
{{:fpga_structure.jpg|}} | {{:fpga_structure.jpg|}} | ||
- | FPGAの構成(簡略図).スライスと呼ばれる回路構成単位を大量に並べた構成を取っている. | + | 図:FPGAの構成(簡略図).スライスと呼ばれる回路構成単位を大量に並べた構成を取っている. |
ライン 15: | ライン 15: | ||
{{:active_fpga.jpg|}} | {{:active_fpga.jpg|}} | ||
- | アプリケーション回路実行中でも,ある瞬間にはアクティブになっている回路は少ない. | + | 図:アプリケーション回路実行中でも,ある瞬間にはアクティブになっている回路は少ない. |
+ | |||
+ | 一方で,動的リコンフィギャラブルアーキテクチャ(Dynamically Reconfigurable Processor Array)は,回路構成単位(プロセッシングエレメント:Processing Element:PE)の数を少なくし,代わりに各PEはアプリケーション実行中にその役割を切り替えることができるようになっています.この点から,FPGAと動的リコンフィギャラブルアーキテクチャは次のように見ることができます. | ||
+ | |||
+ | * FPGA : 実行時に機能を切り替え不能なブロックを大量に並べる(1-10万個) | ||
+ | * DRPA : 実行時に機能を切り替えることができるブロックを並べる(10-100個) | ||
+ | |||
+ | {{:pe_connection.png|}} | ||
+ | |||
+ | 図:動的リコンフィギャラブルアーキテクチャの基本構成.PEの数は少ない. | ||
+ | |||
+ | ====== PEの再構成によるデータパスの変更 ====== | ||
+ | |||
+ | 動的リコンフィギャラブルアーキテクチャのPEの構成は,次の図のようになっています.(これはMuCCRA-3の例) | ||
+ | |||
+ | {{:pe_structure.png|}} | ||
+ | |||
+ | FPGAのスライスとはずいぶんと違います.論理素子(AND,OR)などではなく,レジスタアレイ,ALU,スイッチなどが入っています. | ||
+ | そして,これらのALU,レジスタアレイ、スイッチなどが1クロックごとに動作を切り替えていきます.たとえばALUだと,あるクロックでは加算,つぎのクロックでは乗算といった具合です. | ||
+ | |||
+ | 瞬時に役割が切り替えられると,1つのPEが複数の役割をこなせると言うことがわかりますね. | ||
+ | 時分割された処理ならば,1つのPEが何役もこなすことができます.これが,動的リコンフィギャラブルアーキテクチャのPEの数が少なくて済む理由です. | ||
+ | |||
+ | また,動的リコンフィギャラブルアーキテクチャはPEのアレイで構成されていますが,各PEの機能は規則正しく一斉に切り替わっていきます.こうすることにより,PEアレイ全体で構成されるデータフローを切り替えていき,プログラムを実行していくというわけです. | ||
+ | |||
+ | {{:dataflow_exec.png|}} | ||
+ | |||
+ | 図:動的リコンフィギャラブルアーキテクチャのアプリケーション実行の流れ.1クロックごとにデータの流れを変え,アプリケーション回路を実行していく. | ||