”ISEからEDKを使う2”で、XPSで新しいプロジェクトを作ってMark to Initialize BRAMs をチェックしたときに、ISEのUpdata Bitstream with Processor Data を実行すれば、XPSの新しいプロジェクトが自動的にビルドされるのかどうかは未知数だったので、この辺を確かめてみた。
まずはXPSで新しいApplication Project を作る。XPSのAppliications タブからAdd Software Application Project.. をダブルクリックする。

ダイアログにProject Name を入れる。ここではTutorial_Project とした。OKボタンをクリックする。

Tutorial_Project が生成できた。これからこのプロジェクトのソフトウェアをBRAMにロードする設定に変更しよう。
Project: TestApp_Memory のところで右クリックをして、メニューのうちのMark to Initialize BRAMを選択してチェックをはずす。これでプロジェクトのアイコンにXがついて、BRAMにこのプロジェクトのソフトウェアがロードされなくなった。

次にProject: Tutorial_Project のところで右クリックして、同様にメニューのうちのMark to Initialize BRAMを選択してチェックを入れる。そうするとプロジェクトのアイコンからXが消えて、このプロジェクトのソフトウェアがBRAMにロードされるようになった。

次にTutorial_Projectにソフトウェアのソースを入力する。Tutorial_ProjectのSources を右クリックしてメニューからAdd New File... を選択する。

ダイアログが開くので、ファイル名を入力する。ここではtutorial.c とした。

tutorial.c を書いて、セーブする。いつまでも他で紹介されたプログラムの転用ではなんなので、ここではある数の約数の数(1とその数自体を除いた約数)を調べるプログラムを作った。何も芸のない、直球のプログラムだ。

ここで、約数のプログラムを下に示す。
#include "xparameters.h"
int main (void)
{
int num_aliqot, num, i, j, k;
num = 1;
while(1){
num_aliqot = 0;
for(i=2; i<num; i++){
for(j=i; (k=num-j)>0; j=j+i) ;
if (k==0) num_aliqot++;
}
xil_printf("num = %d : num_aliqot = %d\r\n", num, num_aliqot);
num++;
}
}
ISEというかProject Navigater に戻ると、Updata Bitstream with Processor Data に?がついている。これはXPSでアプリケーションのプロジェクトを作ったからのようだ。

Updata Bitstream with Processor Data をダブルクリックして、XPSでソフトウェアのビルド、elf ファイルをbit ファイルにロードする。そしてFPGAをコンフィグすると、約数の数を数えるソフトが起動した。

これでうまく行ったが、XPSでプログラムを書き換えてもProject Navigater のUpdata Bitstream with Processor Data は?にならない。これを反映させるには、Updata Bitstream with Processor Data で右クリックしてRerunを選ぶ必要があるようだ。
- 2008年12月14日 07:24 |
- EDK
-
| トラックバック:0
-
| コメント:2