|
MicroBlazeは、ザイリンクスによる、ザイリンクス製FPGA向けに構築されたソフトプロセッサコアである。MicroBlazeはザイリンクスのFPGAの汎用メモリと論理回路で、ソフトプロセッサとして完全に実装されている。 == 概要 == 命令セットアーキテクチャに関して言えば、MicroBlazeはパターソンとヘネシーによる有名なコンピュータアーキテクチャの書籍で記述された、RISCベースのDLXアーキテクチャと非常に似ている。通常の状況において、ほとんどのMicroBlaze命令セットは、1サイクルで実行することが出来る。 MicroBlazeは多様な組み込みアプリケーションをサポートするために、多用途のインターコネクトシステムを持っている。MicroBlazeの主要なI/OバスのCoreConnect PLBバスは、システムメモリにマップされたマスタ・スレーブによる伝統的なトランザクションバスである。多数のベンダが供給するサードパーティのIPは、PLBバスに直接接続する。(またはPLBバスからOPBバスへのブリッジを経由して接続する。)ローカルメモリ(FPGAのBRAM)へのアクセスでは、MicroBlazeは専用のLMBバスを使うことで他のバスの負荷を軽減する。ユーザ定義のコプロセッサは、FSL(Fast Simplex Link)と呼ばれる専用のFIFO形式の接続を経由してサポートされる。コプロセッサインタフェースは、計算処理の一部または全部を、ユーザが設計したハードウェアモジュールで行うことで、計算量が集中するアルゴリズムを加速することが出来る。 MicroBlazeの多くの要素は、ユーザによる設定が可能である。キャッシュサイズ、パイプラインの段数(3段または5段)、組み込みの周辺インタフェース、メモリ管理ユニット、バス・インタフェースがカスタマイズ可能である。サイズに最適化したMicroBlazeは、3段のパイプラインを使用し、論理回路の削減のためにクロック周波数を犠牲にしている。性能に最適化したバージョンは、実行パイプラインを5段に拡張し、最大210 MHz(Virtex-5 FPGA シリーズの場合)での動作が可能である。また、めったに使用されないがハードウェアでの実装が高価となる重要なプロセッサの命令は、選択的に追加/削除が可能である。(すなわち、乗算・除算・浮動小数点命令である)この改変により、開発者はホストハードウェアの条件とアプリケーションソフトの要件に見合った、適切な設計を行うことが可能である。 MMUを使用しない場合、MicroBlazeで動作するオペレーティングシステムは、単純化された保護と仮想メモリモデルに限られる。例えばμClinuxベースのオペレーティングシステムやFreeRTOSが相当する。MMUを使用する場合、MicroBlazeの全体的なスループットは、同等のハードウェアによるCPUコア(例えばVirtex4の中のPowerPC405)よりもかなり低くなるが、Linuxカーネルのような、ハードウェアベースのページングと保護を要求するオペレーティングシステムを動作させることが出来る。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「MicroBlaze」の詳細全文を読む スポンサード リンク
|