動的再構成

動的再構成（どうてきさいこうせい、ダイナミック・リコンフィギュレイション、Dynamic reconfiguration）とは、コンピュータのハードウェア技術の1つであり、複数の小規模な演算処理部同士をプログラムに従って短時間に頻繁に結線し直すことで、小さな回路規模で複雑なデジタル処理回路を作るものである。 画像処理やデジタル無線のような用途で、長いパイプライン処理が求められるものに採用され始めている。 機能ごとに固定された専用回路を切り替えるのではなく、演算処理を行うハードワイヤード回路の再配置を行って専用回路を構成し、複数の演算部が協調してパイプラインによる演算処理を行う。 一般には、ALU（Arithmetic Logical Unit）と呼ばれる演算部が数十から数千個ほどが並び、各ALU間はクロスバ・スイッチのような配線で接続される。 例えば数百段もの深いパイプライン処理を行うには、数百段の演算部を専用に備えるか、それが不可能なら従来型の数個のCPUコアで順次実行するという方法が存在するが、動的再構成技術を使えば、数百段をいくつかに分割して例えば数十段分を演算してから、すばやく次の数十段分の演算に対応した回路構成に組み替えて実行を続けることが出来る。この例では一連のパイプライン処理を複数個に分割するので、それぞれの間ではパイプラインによる処理の連続性は失われて演算効率は低下するが、数百段をすべて備える必要がなく求める処理速度に応じた適度な回路規模で済み、パイプライン処理すべき演算内容が変わっても配線プログラムの変更で対応できる、などの利点がある。 最大数千個にもなる演算部同士の配線は、出来るだけ柔軟な組み換えが可能になるようにしながらも、過剰に引き廻して接続点を無闇に増やすのは回路面積を増やすと同時に処理性能を低下させるので避ける必要がある。最適なマトリクス配線の方法は使用する演算対象でも異なると考えられ、各社で研究している段階である。 1秒間に数十回以上の頻度で配線は変更され、多くの製品では配線の変更動作は1クロックで行えるため、少ない演算部でも仮想的に多数の処理段数があるように見せかけられる。 長所 少ない回路規模で複雑な回路を実現できる コストと消費電力が削減でき、小型化にもつながる ASICのように用途に応じた半導体製品をいくつも作る必要がなく、配線の組み替えで対応できれば1つの製品で済む。 求める性能に応じた回路規模が選べる 演算部とスイッチ・配線を単純に並べるだけで半導体設計が済む 短所 回路構成の主要な部分は配線プログラムに任されるが、プログラム開発ツールは発展途上であり、ノウハウの蓄積もない。 演算部としてはALUが一般的であるが、それより小さな単位での比較器やレジスタアレイ単位で組み換えが行われるものもある。いずれも4-32ビット幅での簡単な演算回路から構成され、演算部同士の結線情報がプログラマブルなだけで演算部回路内にはプログラムを解釈する機構は基本的に存在しないハードワイヤード回路である。 また、演算部の粒度という点で他の処理技術と比較すれば、CPUは粒度が大きく、マルチコアであってもそれぞれが汎用的でプラグラマブルな演算やロードとストアの動作を行っているために、パイプライン処理といっても各段ごとは十数クロックから数十クロック程度の時間が掛かり、処理速度はハードワイヤード回路よりもかなり劣る。また逆にFPGAでは粒度が小さく、LUT（Look up table）と呼ばれる配線情報で切り替えられるエレメント単位は通常1ビットごとであり、処理単位の違いなどから面積当たりの処理効率では5-10倍程度の差が出るとされる。 複写機での静止画像処理 ビデオカメラなどでの動画像処理 ゲーム、音楽、電話といった携帯機器 デジタル無線機のベースバンド処理 2001年から2002年にかけて、米Quicksilver Technology社、米Chameleon Systems社、日本のAOIテクノロジー社など多くのベンチャ企業が動的再構成（ダイナミック・リコンフィギュラブル）技術の製品開発を行う企業として設立され、小さなブームを作ったが、その後、解散するなど当時の企業で動的再構成技術により成功した会社は存在しない。当時現れた数少ない実用製品例をソニーが2002年から自社の携帯機器であるウォークマンやPSPシリーズに、動的再構成技術であるVME（Virtual Mobile Engine）として採用したが、その詳細は明かされていない。一方では2004年からは、東芝、三洋電機、三菱電機が開発に着手し、高騰する最先端ASICのマスクコストの回避手段として検討されている。また、NECエレクトロニクス（現ルネサス エレクトロニクス）、パナソニックがこれらの会社に続いた。 FPGAでも、数十ms程度時間がかかるが、回路を動的に切り替えることができる。ザイリンクスは2010年からこの機能の商用サポートを始めた。アルテラもStratix VやCyclone Vでは動的再構成ができる。CPUコアにより、それ以外の部分の回路のバージョンアップという用途にも使える。 [脚注の使い方] ^ ハードワイヤード回路での「パイプライン処理」は、ノイマン型コンピュータの処理高速化手法であるパイプライン処理とは異なり、前者は1クロックごとに次のステージに送られる。 ^ 通常は演算部内にプログラムを解釈する機構は持たないが、ルネサス・テクノロジ社のPA3では、演算部にLUTとステートマシンを組み合わせたエレメントを使用するため、状態遷移によるプログラム的な動作が行える。ただしPA3では、パイプライン演算用に動的再構成技術を使うのではなく、タイマーやPWM、FIFOといったユーザー構築可能な周辺回路領域としてこの技術を採用した。 ^ 動的再構成技術を使った製品では1クロック数十ナノ秒程度で回路構成を変更できるが、FPGAでは基本的に不揮発メモリとのやり取りに最短でも書き換え動作に数十ミリ秒かかる、書き換え動作にはリセットが必要になる、など現行製品ではそのまま動的再構成に使用するには問題が多い。ただし、再構成を短時間で済ませた後でバックグランドでメモリに書き込むものがあり、リセットせず稼動中に書き換え可能なものも現れている。FPGAの大手としては米Xilinx社が2010年より動的再構成機能を正式にサポートした新たなVirtexシリーズを製品出荷し、米Altera社はStratix Vでサポートしている。 ^ 米Xerox社と米Intel社は、2003年にヘテロジニアス・マルチコア型のリコンフィギュラブルLSIであるMXP5800を共同で開発し、翌年にはXerox社の複合機に使用した。 ^ 富士ゼロックス社の複合印刷機での画像処理用に、アイピーフレックス社は1,000個のALUのマトリックス構成を40msごとに組み換えるLSI、DAPDNA-IMXを開発して製品に採用した。 ^ NECエレクトロニクス社製の8ビット256個のALUを使ったN社が「STPエンジン」と呼ぶ技術のダイナミック・リコンフィギュラブルLSIが、ソニーの3種の放送用映像機器に使用されている。 ^ ソニー社ではPSP類やデジタル音楽プレイヤーであるウォークマン類にソニーがVMEと呼ぶダイナミック・リコンフィギュラブル技術を使ったLSI製品を使用している。 ^ NECエレクトロニクスでは「動的再構成」という呼び方を止めて、製品は「プログラマブルLSI」と呼んでいる。 ^ 米マイクロプロセッサー・レポート誌　「多様な機能のプロセッサーを組み合わせる動的再構成回路」 ^ 『やわらかくなるLSI』、日経エレクトロニクス2009年7月27日号 ^ 2010年，FPGAも動的再構成へ - 日経エレクトロニクス - Tech-On！ ^ Stratix V FPGA: パーシャルおよびダイナミック・リコンフィギュレーションによる究極の柔軟性 デジタル信号処理 再構成可能コンピューティング