ソフト・マクロのCPUを使おう! ――FPGAによるシステムLSI設計の意味
●ソフト・マクロのCPUは性能が低い?
―― No! 汎用RISCマイコンと比べて引けをとらないソフト・マクロのCPUをFPGAで動作させても,汎用マイコンのような性能は得られないだろうという設計者もいます.
表4のように,マイクロプロセッサとしてはIntel社のPentium 4プロセッサのように3GHzを超えるものがあります.それとFPGA用のソフト・マクロのCPUを比較しても勝負にならないのは当然です.大量の電力を使い,空冷用のファンを回しながら使用するパソコン用CPUと比べてみても何の意味もありません.
では,組み込み用マイコンと比較したらどうなるのでしょう.CISCマイコンでは25MHz~48MHz,RISCマイコンでも100MHz~200MHzが主流です.一方,ソフト・マクロのCPUはRISCアーキテクチャで1MHzあたり約1MIPSの性能なので,動作周波数から換算すれば100MIPSを超えるということになります.
性能を考えるとき,ベンダ発表値をうのみにはできません.最速デバイスを使用し,最小構成の論理でチューニングを行った「チャンピオン・データ」の場合が多いからです.
筆者は,Altera社のStratixデバイスで,Niosコアを動作させてみました.CPU,内蔵ROM/RAM,UART,汎用I/Oを組み込んだ標準的なハードウェア構成にしてあります.ターゲット・デバイスは「EP1S10F780C7ES」です.Stratixファミリの中ではいちばん遅いスピード・グレードのデバイスです.
設計ツールのデフォルト条件でコンパイルしたところ,85MHz以上の性能になりました.チューンアップすれば,もう少し上げられそうです.FPGAでソフト・マクロのCPUを使用しても,組み込み用RISCマイコンとまったく引けをとらない性能が得られることがわかりました.
〔表4〕CPU性能比較
用 途
|
分 類
|
アーキテクチャ
|
動作周波数
|
パソコン用 | 市販マイコン |
CISC
|
3GHz超 |
組み込み用 |
CISC
|
25MHz~48MHz | |
RISC
|
100MHz~200MHz | ||
ソフト・マクロCPU |
RISC
|
100MHz超 |