FPGAの部屋

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

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。ご利用ください。 http://marsee101.web.fc2.com/index.html

カテゴリ: MicroBlazeクロスコンパイラ

カスタム設計の MicroBlaze”さんに、自作のMicroBlazeコアがあります。NGCなので、Spartan-3でのみ動作かもしれませんが。。。

GCCは、Webサイトにあるやり方で、EDKのgnuのmicroblazeフォルダをCygwinにコピーすると、mb-gccなどが使えました。(.bashrcにパスを追加しました)私は、ISE12.4のフォルダをコピーしました。

まだ、あまりテストしていませんが、WebPACKからMicroBlazeが使えるのはとても良いと思います。Simple MicroBlazeにも応用ができそうです。Simple MicroBlazeの場合はBMMとELFファイルを使って、DATA2MEMでプログラムを入れる必要があると思います。

さて、VMware上のFedora14は時計が狂うことを除いて、問題なく動作している。

目的のMicroBlazeクロスコンパイラを試してみようと思う。
MicroBlazeクロスコンパイラを使用したアプリケーションのコンパイル方法”を見ながら、HelloWorld.cをMicroBlazeクロスコンパイラでコンパイルする。

1.まずは、HelloWorld.tar.lzmaをダウンロードして、解凍する。

2.PATHの設定を行う。

3.HelloWorldフォルダの下に行く。

4.コマンドラインで microblaze-gcc -o HelloWorld.elf HelloWorld.c を実行した。HelloWorld.elf ができた。
1d70b0e9.png


あっけなく成功。
次は自分で作ったSimple MicroBlazeのコードをコンパイルしてみる。

Fedora14でMicroBlazeクロスコンパイラをmakeした。

MicroBlaze Cross Compiler環境生成スクリプトのページからスクリプトをダウンロードする。
Fedora14の自分のホームにダウンロードして、make_microblaze_gcc を実行する。
28bb9eae.png


makeが始まった。最初にパッケージファイルをダウンロードしている。
dd982e83.png


途中でなんどもカーネルクラッシュが表示されて気になるが、構わずmakeする。時刻もずれるが、そのままにしないと時刻がおかしいとエラーになってしまう。makeを3回やってしまった。(時刻ずれの対策の1つを”VMware Playerを使用してFedora14をインストールする3”の(もう1つ追加)と(更に追加)に示す)
一応成功したのだろうか?MicroBlazeのコンパイルを試してみることにする。(makeに何時間もかかりました)
a9e8e1e1.png

AQUAXIS TECHNOLOGYからMicroBlaze クロスコンパイラ環境生成スクリプトがダウンロードできる。MicroBlazeクロスコンパイラがあれば、SDKが無くても(つまりISE WebPACKでも)Simple MicroBlaze用のコードがコンパイルできるはず。。。ということでMicroBlaze クロスコンパイラ環境生成スクリプトをダウンロードしてやってみた。
ひでみさんのブログも毎日拝見しているが、とてもすごい方だと思う。)

Fedora14で確かめたということだったが、私の環境では、VMWare ServerにUbuntu8.04がインストールされていた。これを10.04にアップグレードしたら、ネットワークがつながらなくなってしまった。もうすでにVMWare Serverは古いようなので、見限って、自分のパソコンにインストールされているCygwinでMicroBlaze クロスコンパイラ環境生成スクリプトを走らせてみた。

Cygwinを起動して、./make_microblaze_gcc を起動した。wgetでパッケージをダウンロードしていた。
0eb5f72a.png


1時間くらいコンパイルしていたが、予想通りにエラーで停止した。
a91738e6.png


この時点で、Windows XP 32ビット版の使用メモリは4GB近い。搭載メモリは3GBなので、1GBは仮想メモリに鳴っているはず。とてもWindows XPの動作が鈍い。アプリをすべて落としてもメモリは解放されなかった。仕方が無いので、再起動した。

Cygwinでうまく行かなかったので、すでにインストールされているVMWare Serverでやってみようと思い、インストールされているUbuntu8.04を10.04にアップグレードしたらネットワークがつながらなくなってしまった。もう、VMWare Serverはメンテされていないようのでこの機会に消去して、VMWare PlayerをインストールしてFedora14をインストールしてやってみることにする。

↑このページのトップヘ