Tech と Culture

テクノロジーとカルチャー

GRLIBソースコードのダウンロードとディレクトリ構造

まず最初にソースコードをダウンロードしてきます。
gaisler research の HPのdownloadコーナーより、GRLIBをダウンロードします。LEON3 もGRLIBの中の一つとして含まれています。

今現在のダウンロードファイル名は、 grlib-gpl-1.0.22-b4095.zip です。
(しばしばバージョンアップされています。)
また、GRLIB user's manualもダウンロードします。基本的にこのドキュメントに従えばFPGAにLEON3システムをマッピングすることができます。

GRLIBの基本的なプラットフォームOSは Linux です。私はVMware server上に CentOS 5 をインストールしてそこで使用しています(VMware serverもCentOS5も無料です)。
(cygwinやmsysを用いたwindows上での実行も可能ですが、cygwinのmakeコマンドにバグがあるようで、Linux版と比較すると不安定です。私は、開発する際にxilinx版のmodelsimを使用したかったためmsys環境も少し使用しましたが、一部ファイルを修正したりする必要がありました(xilinx modelsim無料版はwindowsのみ提供)。
とりあえず、FPGAにマッピングしてLinuxをブートさせるまで行うのはLinux上でできますので、Linuxでの操作になれてからWindows環境に移ることをお薦めします。)


まず、最初にこれからLEON関連の開発環境を作っていくためのディレクトリを作成します。
mkdir LEON
cd LEON

ダウンロードしてきたファイルをこのディレクトリに移動して解凍します。
unzip grlib-gpl-1.0.22-b4095.zip
解凍した結果、以下のようなディレクトリ構成になります。
Grlib-dir.jpg
様々なディレクトリがありますが、実際に作業を行うのはdesigns以下のディレクトリのみです。そこからMakeコマンドで必要なものを自動的に集めるような仕組みが組み込まれています。

cd designs
にて designsディレクトリに移動すると、約50種類のFPGAボード毎のディレクトリが存在しています。
最初にLEONシステムを使用する際には、ここにある約50種類のFPGAボードの内のどれか一つを使用することを強く勧めます。というのも、ここに挙げられているFPGAボードであれば、そのボードに合わせた周辺IPを接続したSoCがピン配置を含め完全に準備されているので、makeコマンドのみでFPGAコンフィグファイルが生成できます。
最初にLinuxをブートさせるまでを簡単に体験すれば、全体像を理解するまでの時間が大幅に短縮できます。

有名なボードが多数サポートされています。
私の持っているFPGAボードは GR-XC3S-1500 というものです。これは gaisler research の協力会社である pender electronics という会社が発売しているものです。その他にも altera NEEKや xilinx ML501等の一般的なボードも多数サポートされています。

以降のエントリでは、GR-XC3S-1500 における作業を記述していきます。


GR-XC3S-1500の写真を載せておきます。
Leon-board-pic.jpg

私は標準添付のXilinx impact用のコンフィグケーブルを紛失してしまったため、digilent社のJTAG-USBケーブルを購入してFPGAのコンフィグケーブルとして使用しています。