EDX-007でMicroblaze MCSを動かしてみる その2

January 01, 2016

XilinxのSDKを使ってMBMCS向けのソフトウエアをC言語で記述し、ビルドした結果(elfファイル)をbitファイルに組み込むまでの手順を書きます。

手順② SDKによるソフトウエアの開発とbitファイルへの組み込み、ダウンロード

1.ハードウェアプロジェクト設定

Xilinx SDKを起動し、File→New→Project→Xilinx→HardWare Platform Specificationを選んでハードウェアの情報を定義

Project Nameは任意、Provide….のファイルは、”プロジェクト名\ipcore_dir\MCSのIP名_sdk.xml”を指定しFinish

2.アプリを実装

File→New→Project→→Xilinx→Application Projectを選んでNext

デフォルトのままNext。


雛形としてHello worldを選択、Finish。自動的にビルドされる。※ちなみにprint文の標準出力はUARTだが、今回は未使用。


プログラムを実装する。下記はボタンを押すとLEDが消えるだけのサンプルソース。

3.bitファイルへのelfファイルの組み込み

作成済みのビットファイルにelfファイルを組み込んだ新しいビットストリームファイルを作成するためSDKでXilinxTools→ProgramFPGAを選択 。


BirstreamにISE Project Navigatorで作成したビットストリームファイルを指定(プロジェクトファルダ\トップモジュール名.bit)

BMM ファイルは”プロジェクトファルダ\ipcore_dir\MCSのIP名_bd.bmm”に変更

ELF File to Initialize in Block RAMの下にはSDKで作成したelfファイルを指定


Programを押すとアプリのプロジェクトフォルダの下にdownload.bitが生成される(EDX-007はJTAG I/Fを持っていないので書き込みは失敗するがファイルは生成される)

4.BBC[EDX-007]を使って生成されたdownload.bitをコンフィギュレーションする


以上でソフトウエアを含めたMBMCSをEDX-007にダウンロードすることができました。EDX-007のボタンを押すと、LEDが消えることが確認できました。