図●アイピーフレックスのCPU「DAP/DNA-2」のブロック図
汎用処理を担当する32ビットCPU「DAP(Digital Application Processor)」と動作中に回路構成を変えられる「DNA(Distributed Network Architecture)-2」から成る。
画面●DAP/DNA-2の動的再構成回路を設計する開発ツール「DNA Designer」
回路群をマウスによるドラグ・アンド・ドロップで配置して設計する。
 動的に回路を変更できるCPUが登場した。アイピーフレックスが2004年5月中旬に出荷開始するCPU「DAP/DNA-2」だ([拡大表示])。採用を見込むのは,画像処理や暗号化処理などの高速処理に専用回路を用いるような製品。アルゴリズムに適した回路を動的に構成することで,一つのDAP/DNA-2で複数の専用回路と同等の性能を得られる。加えて,機能変更に柔軟に対処できる。言わばソフトウェアが持つ柔軟性と,専用回路の高速性を両立させた。

 DAP/DNA-2は,汎用処理を担当する32ビットCPU「DAP(Digital Application Processor)」と,動作中に回路構成を変えられる「DNA(Distributed Network Architecture)-2」を1チップに集積したCPUだ。DAPはあまり変更が発生しない基幹部分の処理を担当し,DNA-2に処理を依頼する。

 DNA-2は,算術論理演算ユニット(ALU)168個,16Kバイト容量のメモリー32個,タイミング調整用の遅延回路136個などの計376個の回路群から成る。これらを組み合わせて処理回路を構成する。回路のパターンはDAP/DNA-2上に3種類を保持できる。1クロック(166MHz動作時で約6ナノ秒)で回路構成の切り替えが完了する。

 動的構成可能な回路部品としては,「FPGA(Field-Programmable Gate Arrays)」が広く使われている。トランジスタ単位で回路を動的に構成できる。ただし構成の粒度が細かいため,構成情報の読み込みに時間がかかる。

回路変更の手軽さでFPGAと差別化

 DNA-2は変更する単位が回路なので設計もFPGAより簡単だ。構成情報は回路群をマウスによるドラグ・アンド・ドロップで配置して設計する独自のツール「DNA Designer」で作成する(画面[拡大表示])。画像処理などの基本的な処理であれば,あらかじめ複数の回路を組み合わせた「機能ブロック」が用意されている。どのような回路構成を採っても,DAP/DNA-2の動作周波数の上限である166MHzで動作する。

 一方トランジスタ単位で設計するFGPAは,動作周波数の上限が回路の構成に応じて変わる。見込んだ動作周波数で動作しなかった場合は,設計を見直す手間がかかる。ただしDNAはFPGAのように「入出力ポートを追加することはできない」(アイピーフレックス R&Dセンター先行開発Gr.の斯波康祐ジェネラル・マネージャー)。

 2005年第1四半期には,DNA-2の構成情報を自動生成する機能を開発環境に追加する。具体的には,ANSI C準拠のソースコードで書かれたシステムの情報から,DNAに回路として組み込むアルゴリズムを自動抽出し,構成情報に置き換えるという。

(高橋 秀和)