- MicroBlaze は 70 以上のパラメータが設定可能で、高度なエンベデッド ツールを使用するため、シンプルなマイクロコントローラで十分なアプリケーションの場合はシステム設計が面倒となることもあります。→SMMの出番!
- HDLに直接インスタンシエート。
- これは 2 つのハードウェア インプリメンテーション ファイルと 1 つのソフトウェア定義ファイルがあればよい。
- 11.1 以降のツールには、MicroBlaze のソフトウェア開発向けにスタンドアロンのソフトウェア開発キット (SDK) が付属され、フル機能のエンベデッド開発キット (EDK) がなくても C および C++ アプリケーションの作成とデバッグが行える。
- ISE を使用した一般的な FPGA インプリメンテーション フローと同様。任意の階層にHDLでインスタンシエートできる。
- マイクロコントローラのネットリスト (smm.ngc) とブロック RAM メモリのマップ ファイル (smm.bmm) の 2 つ。
<ソフトウェアアプリケーションフロー>
- マイクロコントローラ アプリケーションの開発を始めるために必要な情報すべてが 1 つのソフトウェア記述ファイル (smm.xml) に含まれています。
- アプリケーションの開発は、FPGA デザイン フローと切り離して開始できる。
- ISE 11.1 以降では、SDK がスタンドアロンのオプションとして提供されている。
- SDK には、ソフトウェア アプリケーションの開発に必要なツール、ドライバ、ライブラリ、ユーティリティすべてが含まれている。
- ソフトウェア アプリケーションは、C または C++ で作成したものをマイクロコントローラのブロック RAM に格納できます。
- デ バ ッ グ オ プションを使用すると、アプリケーションをソース レベルで完全にデバッグでき、メモリ、レジスタ、変数の内容が確認できます。
- デバッグを容易にするためにアプリケーション内にブレークポイントを設定することも可能。
- デバッグには、FPGA のコンフィギュレーションと同じケーブルが使用できます。
- SMMの詳細は、アプリケーション ノート XAPP1141 を参照してください。