FC2カウンター FPGAの部屋 2012年05月18日
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

XPS入りのPlanAhead14.1プロジェクトを作る3(SDK)

XPS入りのPlanAhead14.1プロジェクトを作る2(XPSの設定、インプリメント)”の続き。

PhanAhead14.1プロジェクトでXPSプロジェクトを作製して、インプリメント、ビットファイルの生成まで成功した。今回はハードウェア設定をエクスポートして、SDKを使ってLEDを+1するソフトウェアを作製する。

・FileメニューからExport -> Export Hardware... を選択した。

・ダイアログが開く。Launch SDKにチェックを入れて、OKボタンをクリックした。
PlanAhead141_82_120518.png

・SDKが起動した。
PlanAhead141_83_120518.png

LEDを+1して表示するソフトウェアを作製する。と言っても、ソフトウェアは、”AtlysボードでXPSプロジェクトを試す2(ソフトウェアを試す)”で作っているので、SDKでプロジェクトを作成して入れるだけのはずだ。

・FileメニューのNew -> C Xilinx Projectを選択して、Cプロジェクトを作成する。

・New Projectダイアログが立ち上がる。Project name:にaxi_timer_testと入力し、Select Project TemplateからEmpty Applicationを選択した。Next->ボタンをクリックした。
PlanAhead141_84_120518.png

・Create a new Board Support Package projcetのProject name:をAtlys_bsp_0に変更した。Finishボタンをクリックした。
PlanAhead141_85_120518.png

・Project ExplorerにAtlys_bsp_0とaxi_timer_testが追加された。
PlanAhead141_86_120518.png

・axi_timer_testの下のsrcに、”AtlysボードでXPSプロジェクトを試す2(ソフトウェアを試す)”で作ったaxi_timer_test.cをドラッグアンドドロップした。まだ、Altys用に変更していないので、エラーが出ている。
PlanAhead141_87_120518.png

・xparameters.h を見ながらLEDを制御するGPIOの定義を変えたらコンパイルが通った。axi_timer_test.elf が生成された。
PlanAhead141_88_120518.png

・Xilinx ToolsメニューからProgram FPGAを選択した。

・Program FPGAダイアログでSoftware Configuratioで、ElF File to Initialize in Block RAMで、axi_timer_test.elfを選択した。Programボタンを押して、Atlysボードにソフトウェア入りのビットファイルをダウンロードした。
PlanAhead141_89_120518.png

・結果はエラーだった。やはり、Data2MEMでエラーだった。ISE13.4から直ってない~。
PlanAhead141_90_120518.png

ISE13.4のSDKでのData2MEMエラーは、”MicroBlaze MCSをテストする4(SDK編2)”を参照のこと。
ISE13.4でSDKのソフトウェアデバックをどうやったかというと、iMPACTでソフトウェアの入ってないビットファイルをコンフィグレーションしてから、SDKのデバックでELFファイルだけロードしてデバックすることが出来た。
今回はソフトウェアにバグは無いと思うので、PlanAheadプロジェクトににELFファイルを入れてビットファイルを作り直そうと思う。

・PlanAheadでaxi_timer_test.elfをプロジェクトに入れるには、Add Sources...ではなくて、ToolsメニューからAssociate ELF_ Files... を選択した。

・Associate ELF Filesダイアログが開く。右端の...ボタンをクリックしてELFファイルを指定する。
PlanAhead141_91_120518.png

・Add ELF Filesボタンをクリックした。
PlanAhead141_92_120518.png

・axi_timer_test.elfを指定して、OKボタンをクリックした。
PlanAhead141_93_120518.png

・Associate ELF fileダイアログにaxi_timer_test.elfが追加された。OKボタンをクリックした。
PlanAhead141_94_120518.png

・Associate ELF Filesダイアログにaxi_timer_test.elfが設定された。OKボタンをクリックした。
PlanAhead141_95_120518.png

・PlanAheadのSourcesウインドウでLibraryタブをクリックすると、axi_timer_test.elfが設定されているのがわかる。
PlanAhead141_96_120518.png

・左のFlow Navigator のProgram and Debug -> Gnerate Bitstream をクリックして、再度ビットファイルを生成した。
(最後に *** Running data2mem
with args -bm "system_stub_bd.bmm" -bt "system_stub.bit" -bd "H:\HDL\FndtnISEWork\Spartan6\Atlys\test\Atlys_EDK_test_PA\Atlys_EDK_test_PA.srcs\sources_1\imports\Debug\axi_timer_test.elf" tag system_i_microblaze_0 -o b "download.bit" -p xc6slx45csg324-2 が実行されてソフトウェアがロードされたようだ。

・左のFlow Navigator のProgram and Debug -> iMPACT をクリックしてiMPACT を起動した。

・iMPACT で、Atlys_EDK_test_PA\Atlys_EDK_test_PA.runs\impl_2\download.bit をAtlysボードにダウンロードしたらLED+1ソフトウェアが動作した。system_stub.bit では動作しなかった。これはソフトウェアを入れる前のビットファイルということだ。
PlanAhead141_97_120518.png

これでXPS入りのPlanAhead14.1プロジェクトが完成した。
  1. 2012年05月18日 05:49 |
  2. PlanAheadについて
  3. | トラックバック:0
  4. | コメント:0