« Artix-7でイーサネットに成功 | トップページ | Artix-7の冊子を作りました »

2013.09.12

Artix-7のMicroBlazeでネットワーク対応のU-Bootが起動した

今年、特電に入ってくれたアルバイトさんはとても優秀です。

Artix-7にMicrolBlazeを入れて、U-Bootを起動させてネットワークに対応させるところまで作りあげてくれました。

Artix7base

上の写真は特電Artix-7ボードの下に拡張ボードを挿して、LANが使えるようにしたものです。

まず、MicroBlazeが起動すると、First Stage BootLoaderとしてSREC BootLoaderが動作します。このSREC BootLoaderはSPI ROMからU-BootのSレコードを読み出してきてSDRAM上に展開します。

このSREC BootLoaderはXILINX SDKの中に入っているものを修正して作ったのですが、最初はうまくU-Bootを起動してくれませんでした。

Run_error

SDKの中に入っていたSREC BootLoaderは、XMD上でELFをロードしてRUNするとちゃんと動くのに、BitStreamに埋め込んでFPGAごと起動するとSPI ROMからの読み出しが動かないようです。

どうやら、SelfTestというサンプルプログラムを1回実行すると動くということがわかったので、初期化に何かの問題があったようです。そういうわけで、SelfTestを一回実行してからLoader本体を動かすことで、U-Bootが動き出すところまでいきました。

デバッグ用のメッセージがいろいろ含まれていますが、こんな感じです。

Uboot_20130912_2

Uboot_20130912_1

U-Bootが起動して、Pingを打ってみたら、ちゃんと返ってくる!ネットワーク機能がちゃんと動いているという証拠です。

次にLinuxのイメージをロードしてみたいところです。TFTPサーバを立ち上げてイメージをネットワーク経由でロードできるようにしようとしているのですが、そこでまた何かうまくいかないことが起きているようです。

Uboot_20130912_3

きっと近いうちに解決されるでしょう。

|

« Artix-7でイーサネットに成功 | トップページ | Artix-7の冊子を作りました »

コメント

コメントを書く



(ウェブ上には掲載しません)




« Artix-7でイーサネットに成功 | トップページ | Artix-7の冊子を作りました »