EDK

EDK10.1 をインストール。そして、起動。。。せず。。。
(EDKをインストールしたが、すでにCygwinをインストールしてあったので起動できな かった。解決策を試したら起動できるようになった)
Spartan3E Starter Kitを使ってEDKを試してみる1(プロジェクトの作成1)
(Spartan3E Starter Kitを使ってEDKを試してみることにした。Base System Builderを使って、プロジェクトを作る途中まで)
Spartan3E Starter Kitを使ってEDKを試してみる2(プロジェクトの作成2)
(Base System Builderのウィザードが終了するところまで)
Spartan3E Starter Kitを使ってEDKを試してみる3(いろいろ試してみた)
(Xilinx Platform Studioでハードウェアをインプリメントして、ソフトウェアのビルドはXilinx Platform Studio SDK にやるようにしたが、Xilinx Platform Studio SDKでエラー表示が出てビルドできない。xparameters.h の内容をtutrial.c にコピーしたらビルドすることが出来た。MemTestを動かしてみようとしたら、動かないみたい。 Spartan3E Starter Kit にはRS232C端子をDTEに変更したらTera Termの画面にMemtestのメッセージが出た)
Spartan3E Starter Kitを使ってEDKを試してみる4(XPSでソフトウェアのプロジェクトをビルドする)
(Xilinx Platform Studioだけ使用する方法ではうまくいったので、例によって忘れないように書いておく。XPSでハードウェアとソフトウェアを生成してボードにダウンロードして動作さ せる方法)
Xilinx Platform Studio SDKの不具合
(Xilinx Platform Studio のプロジェクトをXilinx Platform Studio SDKに読み込ませると、どうもうまくいかない。)
Xilinx Platform Studio SDKの不具合2
(うまくいっていると思ったISE10.1SP3、EDK10.1SP3正規版の入ってるパソ コンでやってみた。Spartan3E Starter KitのプロジェクトをXPSでビルドしてもエラーになってしまってビルドできなかった。)
ISE からEDKを使う1
ISE からEDKを使う2
ISE からEDKを使う3
(ISEでEDKのプロジェクトファイル.xmp を作成して、ISEでEDKを操作するやり方)
MicroBlaze でuClinuxを動作させたい
(ま だデバックやシミュレーションをしていないが、EDKの使い方もだいぶ学習してきたので、”MicroBlaze uClinux and Spartan-3E Starter Kit”を参考に、EDKでuClinux を動作させようと思いやってみた。XPSの操作方法もいろいろ書いた)
MicroBlaze でuClinuxを動作させたい2
(” MicroBlazeでuClinuxを動作させたい”でuClinuxの起動が、Calibrating delay loop... で止まってしまっていたので、あまり関係ないと思うが、命令キャッシュ2Kbytesとデータキャッシュ8kbytes を入れてみた。やはりだめ)
XPS_TIMER をテスト
(XPS_TIMERをテストしてみたが、それなりに動作しているようだった)
ISE からEDKを内部制御用プロセッサとして使いたい
(SE からEDKを内部制御用プロセッサとして使いたいというニーズがあるので、使いたいと思っている。やってみたがだめそうだった。EDKトレーニングで聞い てきたところクロックジェネレータモジュールをクリックすると倍率が変えられるそうだ。クロックジェネレータを使わずにそのまま入れることも出来るそうで ある)
MicroBlaze でuClinuxを動作させたい3(OPB_TIMERを使ってみた)
(”XPS_TIMERをテスト”でXPS_TIMERをテストしてみたところ正常に動作して いるようだったので、OPB_TIMERを入れて動作させてみたが、同様にだめだった)
Ubuntu でPetalinuxを動かす時の覚書(make menuconfig がエラーになる)
(petalinux-v0.30-rc1/software/petalinux-dist でmake menuconfig するとエラーで落ちてしまう。Ubuntu日本語フォーラムの ”make menuconfig について”にやり方が解説されてあった。)
EDK でPetalinuxを動かしてみる1
(電 脳筆記さんの”MicroBlazeでLinuxを動かす”を見ながらPetalinuxをEDKで動作させようとしている。Dサブ9ピンメスーメスのク ロスケーブルを購入して、Tera Termを115200bps、no parity、1stop bit で起動して、Download Bitsteam でビットファイルをダウンロードしたらFS-BOOTのブート表示が出ました。)
EDK でPetalinuxを動かしてみる2
(” EDKでPetalinuxを動かしてみる1”でUbuntuでmakeして、Spartan3E Starter Kit 上でFS-BOOTまで動作した。さて次はU-BOOTを動かすぞ、、、と、電脳筆記さんの”MicroBlazeでLinuxを動かす”の13. ~15.までやろうとした。つまり、menuconfig して、make all しようとしたが途中でエラー。Ubuntuでやっていたので、CentOSでやってみたらimagesは作成できた。U-BootをFS-BOOTから入 れてみたら起動しない)
EDK でPetalinuxを動かせていない
(EDKでPetalinuxがうごかないので、くやしい)
昨 日はTEDのEDKトレーニングに行ってきた
(東京エレクトロンデバイス(株)の初級ザイリンクスプロセッサ・ワークショップ(ハードウェ ア編)に行ってきました)
The Simple MicroBlaze Microcontroller
ISEから使えるSimple MicroBlaze IP。ただし、SDKを使ってソフトウェアを作製。


 AXI バスのEDKチュートリアルを試す1(Base System Builder) 
EDK Concepts, Tools, and Techniques A Hands-On Guide to Effective Embedded System Design EDK 13.1 (UG683 April 13, 2011)の載っているSP605のAXIバスのチュートリアルを試してみることにした。
使用するFPGAボードはSP605なので、丁度良い。使用するISEのバージョンは13.1とする。
Project Navigator で新規プロジェクトを作成。Embedded Processorを新規で作成し、XPSの画面が出るまで。
 AXI バスのEDKチュートリアルを試す2(XPSのウインドウの説明)
チュートリアルのXPSの説明を読んで、実際にやってみた。
 AXI バスのEDKチュートリアルを試す3(インプリメント) 
今回は、ISEでのインプリメントを試す。今回のビットファイルにはソフトウェアは入っていな い。(使用したISE, EDKは13.1)。
Project Navigator でExport Hardware Design To SDK with Bitstream をダブルクリックして、ハードウェア・デザインをSDKにエクスポートするまで。
 AXI バスのEDKチュートリアルを試す4(SDK1) 
今回はSDKを使ってみよう。(使用したISE, EDKは13.1)
hello_world_0のサンプルアプリケーションをビルドするまで。
 AXI バスのEDKチュートリアルを試す5(SDK2) 
EDK Concepts, Tools, and Techniques A Hands-On Guide to Effective Embedded System Design EDK 13.1 (UG683 April 13, 2011)の34ページからのSDKのProject Explorerについての説明を読み進めている。
hello_worldプロジェクトを実行した。
 AXI バスのEDKチュートリアルを試す6(SDK3) 
memory_test_0、peripheral_test_0、 xilkernel_posix_threads_demo_0、のSDKで作成できる新規プロジェクトについてテストした。
 AXI バスのEDKチュートリアルを試す7(カスタムIPを作る1) 
今回はCIP Wizardで独自のIPを作るチュートリアルを試してみたいと思う。(使用するISEのバージョンは13.1)
カスタムIPを生成するまで。
 AXI バスのEDKチュートリアルを試す8(カスタムIPを作る2)
VHDLソースにLEDのポートの宣言を追加する。
 AXI バスのEDKチュートリアルを試す9(カスタムIPを作る3)
次は、現在のプロジェクトに作成したカスタムIPを追加する。インプリメントしてみた。
 AXI バスのEDKチュートリアルを試す10(カスタムIPを作る4) 
今回はSDKを立ち上げてビットファイルをダウンロードする。成功した。
 AXI バスのEDKチュートリアルを試す11(カスタムIPをカスタマイズする) 
作ってきたLEDの点滅をするカスタムIPをカスタマイズしてみることにした。
チュートリアルのカスタムIPは、レジスタに1を書くとLEDの点滅が始まるが、2を書くとカウンタを+1するのではなく+2するようにした。よって、2倍早 く点滅する。レジスタを読んだ時にカウンタの値も読めるようにした。

 AXI バスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る1
前回、チュートリアルでカスタムIPを作ってみたが、自分でカスタムIPを作ってみることにし た。
SP605のEDKで作ったMicroBlazeシステムに、キャラクタ・ディスプレイ・コントローラをカスタムIPとして接続することにした。今回は ISE13.2でやってみる。
 AXI バスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る2 
カスタムIPのHDLコードを接続する。
 AXI バスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る3 
XPSでカスタムIPを追加して、ポートを接続し、UCFファイルを編集した。
続いて、インプリメントした。
 AXI バスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る4 
前回でISEにインプリメントが終了した。今回はSDKを立ち上げてビットファイルをダウン ロードする。(ISE13.2を使用)
SDKのXMDコンソールで下のコマンドで、キャラクタ・ディスプレイ・コントローラの動作を確認できた。
 AXI バスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る5 
”AXIバスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る4”で 作ったSP605のMicroBlazeシステムのキャラクタ・ディスプレイ・コントローラをVGA(640x480) からSVGA(800x600) に変更しました。
 AXI バスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る6 
前回でMicroBlazeシステムにSVGAのキャラクタ・ディスプレイ・コントローラを実 装できたので、ソフトウェアを書いて、制御してみることにした。
'A'という文字で画面を埋めたが、所々抜けてしまった。
 AXI バスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る7 
”AXIバスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る6”で、 画面いっぱいにA を出したはずなのに、書けていない場所があった。今回はその理由を探ってみた。(くだらないミスでした)
 AXI バスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る8 
”AXIバスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る7”で、 異なったクロック・ドメイン間のデータの受け渡しの問題を解決できた。もう少し確かめてみることにした。
今度は、以前のキャラクタ・ディスプレイ・コントローラのテストのように、いろいろな文字を表示しながら、色を変えるプログラムをつくってみた。

 axi_timer を使う1
”AXIバスのEDKでキャラクタ・ディスプレイ・コントローラのカスタムIPを作る8”で やった表示を0.2秒ごとに書きたいと思い、axi_timerを使ってみることにした。
0.2秒に1回では、SVGAではキャラクタを書くのがあまりに遅いので、0.1秒単位に変更した。割り込み使わなければうまくいきました。
 axi_timer を使う2(割り込みを使用した) 
今回は割り込みが使えない理由を探った。
割り込み信号がMicroBlazeに接続されていなかった。修正後、割り込みで動作するようになった。

 EDK のシミュレーション
EDKを使った場合のシミュレーションのやり方

 Spartan-3A Starter KitでEDKを使ってカメラ表示1(BSB Wizard)
SP605を使ってEDKの使い方を勉強してきたが、今回は、本格的にEDKで回路を構成して みようと思う。
Spartan-3A Starter KitでEDKを使って、カメラ表示回路を作ってみようと思う。使用するEDKのバージョンは13.2。
Spartan-3A Starter KitでEDKを使ってカメラ表示1(BSB Wizard)
前回で、XPSのプロジェクトができたので、Project Navigatorに戻って、トップファイルを生成して、インプリメントしてみた。
リソースを使い過ぎていたので、リソースを削減した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示3(MPMCにポートを追加) 
今回は、DDR2 SDRAMをコントロールするMulti Port Memory Controller(MPMC)のポートを2つ増やすことにする。あとで、カメラ・コントローラ、ディスプレイ・コントローラを接続するためだ。
 Spartan-3A Starter KitでEDKを使ってカメラ表示4(カスタムIPの作成)
今 回は、カスタムIPをウィザードで作成する。カスタムIPは、カメラ・コントローラ、ディスプレイ・コントローラ、SCCBコントローラの3つだ。カメ ラ・コントローラ、ディスプレイ・コントローラは、PLBマスタとスレーブに対応する。SCCBコントローラは、PLBスレーブのみとなる。
 Spartan-3A Starter KitでEDKを使ってカメラ表示5(PLBV46 Master Burstのシングル転送) 
各カスタムIPにアドレスを割り振った。
シングルWriteとシングルRead転送のプロトコルを説明した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示6(PLBV46 Master Burstのバースト転送)
前回はシングル転送だったが、今回はバースト転送について解説した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示7(FIFO容量の修正) 
カメラ表示回路のブロック図を表示して、FIFOの容量を検討した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示8(HDLを書く) 
Camera_Controller のIPICのインターフェース部分をVHDLで書いている。IPICのマスタWriteだ。詳細は”Spartan-3A Starter KitでEDKを使ってカメラ表示6(PLBV46 Master Burstのバースト転送)”のFixed Length Burst Write Operation参照。
 Spartan-3A Starter KitでEDKを使ってカメラ表示9(カメラ回路のシミュレーション) 
VHDLを書き終えたので、カメラ回路のシミュレーションをして単体の動作を確かめた。
Cam_Controller_Top.vhd、Cam_Controller_Top_tb.vhd を掲載した。
 XPS のカスタムIPにCore Generatorで生成したIPのネットリストを追加する 
カスタムIPに自分で作ったVHDLやVerilogのファイルを追加する方法
 Spartan-3A Starter KitでEDKを使ってカメラ表示10(カメラ回路のIPを登録) 
今回は、user_logic.vhd にCam_Controller_Top.vhd のインスタンスを接続して、カスタムIPとして登録した。
各HDLファイルを掲載している。
 Spartan-3A Starter KitでEDKを使ってカメラ表示11(ディスプレイ回路を作り始める)
次は、ディスプレイ回路IPの作成を始めた。カメラ回路と同様にデータバス32ビット幅で作成 したdisplay_controller_v1_00_aを使用することにした。
 Spartan-3A Starter KitでEDKを使ってカメラ表示12(ディスプレイ回路のシミュレーション) 
Disp_Controller_Top.vhd、 Disp_Controller_Top_tb.vhd を作って、シミュレーションで単体の動作を確かめた。VHDLファイルを掲載した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示13(ディスプレイ回路のHDLファイル)
今回は、下位モジュールを貼っておく。VGA_Display_Controller.v、 dcm_DISP_clk.v、cam_data_afifo.xcoを掲載した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示14(ディスプレイ回路のIPを登録) 
今回は、user_logic.vhd にDisp_Controller_Top.vhd のインスタンスを接続して、カスタムIPとして登録した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示15(SCCBコントローラの接続) 
最後のSCCBコントローラを接続する。今回はIPICマスタではなくスレーブなので、大分楽 ができるはず。。。
 Spartan-3A Starter KitでEDKを使ってカメラ表示16(回路をXPSに登録) 
カメラ回路とディスプレイ回路、SCCBコントローラをXPSに登録した。設定を行い、一応イ ンプリメント終了。
 Spartan-3A Starter KitでEDKを使ってカメラ表示17(シミュレーションでデバック1) 
Spartan-3A Starter Kitにダウンロードして、ディスプレイが同期もしていなかったので、いくら何でもおかしいということでシミュレーションを行った。
結局、ポートの設定がしていなくて、PLB_CLK入力がGNDになっていた。
 Spartan-3A Starter KitでEDKを使ってカメラ表示18(シミュレーションでデバック2) 
シミュレーションを行うと、ip2bus_mstrd_reqを1(アクティブ)にしても、 ip2buf_mst_cmdackが帰ってこない。
原因は、MPMCに初期化までip2buf_mst_cmdackは帰らないことになっていて、最初に、ip2buf_mst_cmdackが帰ってくるの は、MPMCの初期化が終了後だった。
 Spartan-3A Starter KitでEDKを使ってカメラ表示19(InitDoneの処理) 
前回、MPMC(Multi-Port Memory Controller)の初期化が済んでいないのが原因だとわかった。
camera_controller, display_controller, sccb_controller の各モジュールにMPMC_InitDone信号を追加して、今までのリセット信号とORをとり、クロックで同期した信号を新たなリセット信号とすること にした。シミュレーション的にはうまくいった。
 Spartan-3A Starter KitでEDKを使ってカメラ表示20(カメラ回路のシミュレーション) 
前回、ディスプレイ回路はシミュレーションの結果、問題なく動作していそうだということがわ かった。今度はカメラ回路のシミュレーションを行った。カメラ回路もシミュレーションでは問題なく動作した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示21(インプリメント) 
今回は、シミュレーションで問題が無い様なので、インプリメントしてみることにした。早速イン プリメントしてみたが、エラーが出てしまった。
エラーを回避するために、DCMを配置制約をいろいろ変えてやってみたら、最適な配置が見つかり、インプリメントが完了した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示22(一応完成)
”Spartan-3A Starter KitでEDKを使ってカメラ表示21(インプリメント)”でインプリメントが終了したので、Spartan-3A Starter Kitにダウンロードして確かめてみた。
最初は、画像がずれていたが、HDLを修正して正常に映るようになった。もう少しやりたいことはあるが、一応完成。
 Spartan-3A Starter KitでEDKを使ってカメラ表示23(LCD、Rotary EncoderカスタムIPの追加)
前 回、CMOSカメラの画像データをディスプレイに表示することができた。それでも、MicroBlazeプロセッサは何も仕事をしていない。ハードウェア だけで表示している。これでは、MicroBlazeプロセッサがかわいそうなので、仕事を割り振ることにした。以前はSMMでやっていたのだが、LCD に主要なCMOSカメラのパラメータを表示して、ロータリー・エンコーダでパラメータを設定して、LCDで表示するという機能をMicroBlazeに割 り振ることにした。
 Spartan-3A Starter KitでEDKを使ってカメラ表示24(LCD、Rotary EncoderカスタムIPの追加2) 
今回は、lcd_controller のVHDLファイルを追加し、user_logic.vhd, lcd_controller.vhd の修正を行った。
 Spartan-3A Starter KitでEDKを使ってカメラ表示25(LCD、Rotary EncoderカスタムIPの追加3) 
入出力ピンを追加したのにXPSのトップファイルを再生成していないために悩んでしまった。イ ンプリメントが終了した。

 xps_timer とxps_intcの使い方1(ソースコード・デバックができない)
xps_timer とxps_intcの使い方を探ってみた。Spartan-3A Starter KitのEDKでxps_timer, xps_intcの割り込み動作がおかしかった。SP605で同じCコードでxps_timerのテストをしてみたのですが、問題なく動作した。独自のタ イマーを組み込んでみることにした。
 SDKでNo source available for "" が出てソースコード・デバックできないときの対処方法 
ソースコード・デバックをすることができなかった時の対処方法をK林さんから教えていただいた ので、備忘録として書いておこうと思う。K林さん、教えて頂いてありがとうございました。
 xps_timer とxps_intcの使い方2(APIを使用する)
xps_intcのControl/Status Register 0をMDMで見ると、LSBが1になっていて、割り込みは受け付けているみたいだ。その後、MicroBlazeに割り込みが入らないんだと思う。

 Spartan-3A Starter KitでEDKを使ってカメラ表示26(独自にタイマーのカスタムIPを作る1)
xps_timerの割り込みがどうしてもSpartan-3A Starter Kitでうまく動かないので、timerのカスタムIPを作ろうと思った。
Simple MicroBlazeにtimer.vhdがあるので、これを接続してみることにする。
一般的なスレーブ・カスタムIPの作成手順を箇条書きにして示した。
 Spartan-3A Starter KitでEDKを使ってカメラ表示27(独自にタイマーのカスタムIPを作る2) 
今回はSDKを使ってソフトウェアを作る。SDKでのソフトウェアの作り方を手順を追って書い た。
smm_timer_testプロジェクトを作成して、smm_timer_test.c を書いた。コンパイルして実行したら、今度はうまく動いた。LEDが順番に点灯していくのが見えた。成功!!!やった~。
 Spartan-3A Starter KitでEDKを使ってカメラ表示28(ソフトでカメラを制御)
Simple MicroBlaze用のタイマーを組み込んだら、うまく動作したので、SDKを立ち上げて、camera_controlプロジェクトを作成して、 camera_control.cを作成した。
LCDの表示は問題なかった(つまり、smm_timerは正常動作)のだが、ロータリー・エンコーダを回しても表示が動かなかった。
 Spartan-3A Starter KitでEDKを使ってカメラ表示29(ソフトでカメラを制御2) 
XPSでChipScope ProをIPとして追加して、rot_a, rot_b, rot_centerの様子を観察したら、rot_a, rot_bがPULLUPされているはずなのに、値が0になっていた。ロータリー・エンコーダが動作しない原因はこれだった。
XPS のUCFでプルアップ制約をしても、どうしてもプルアップされない。ISE12.4でインプリメントした回路は問題ないが、ISE13.2だとXPSの UCFでプルアップ制約は無視される。そこでISEでEDKのIPを使っているので、ISEの制約にプルアップ制約を追加したらうまく行った。

 EDK13.3 のXPSが変わった
ISE13.3が出た時から使っている。ISEはあまり変化が無いようだなと思っていが、 EDKを使ってみてびっくり。
13.3でXPSが変更されたようだ。まずアイコンが変わっている。
 EDK13.3 のXPS(2)
Spartan-6を使用したSP605ボードのEDKサンプルプロジェクトをISE13.3 で試して見ることにした。
 Xilinx Platform Studio 13.3(KC705プラットフォーム)
ISE Design Suite 13 : リリース ノート ガイドを見ると、Xilinx Platform Studio(XPS)に”PlanAheadと同様のWelcomeウィンドウとナビゲーションペインを使用したデザインフロー”と書いてあったので、 XPS単体で立ち上げて見ることにした。
 Xilinx Platform Studio 13.3(KC705プラットフォーム2)
Simulation Flowを確かめてみることにした。
シミュレーション・スクリプトの途中で”ERROR:Simulator:754 - Signal EXCEPTION_ACCESS_VIOLATION received”で止まってしまった。Windows7 64ビット版でないとだめかもしれない。
 Xilinx Platform Studio 13.3(KC705プラットフォーム3)
インプリメントして、SDKを立ち上げ、hello worldプロジェクトを作ってコンパイルしてみた。コンパイルは成功した。

 SDKで stdio.h の関数を使う手順 
AXI Performance Monitor を使ったアプリをSDKで作っているが、printf() とscanf() かgetc() が使いたかった。getc() を使う手順を示した。

 XPSで使用す るIPの制御用関数の情報
EDKのXPSを起動して、IPを追加していって回路を構成するが、それらのIPの制御用関数 の情報がXilinx\14.2\ISE_DS\EDK\sw\XilinxProcessorIPLib\drivers にある。

LinuxでのISEや PlanAheadにXPSプロジェクトを入れた時のエラー
現在、Linux上で、Digilent社のZedBoardのLinuxサンプル、 ZedBoard_OOB_Design.zip をダウンロードして展開し、ISEのプロジェクトを作成して、ZedBoard_OOB_Design\hw\xps_proj ディレクトリのsystem.xmp をISEのプロジェクトに入れてインプリメントを行った。(LinuxはUbuntu12.10、ISE14.4)
そうしたら論理合成時にエラーが発生した。
LinuxのSDK14.4 でコンパイルエラー1
”LinuxでのISEやPlanAheadにXPSプロジェクトを入れた時のエラー”で、 /usr/bin/make を/usr/bin/gmake にリンクして、ISEプロジェクト内のXPSプロジェクトをインプリメントすることができた。
しかし、今回はSDKでエラーが発生した。エラーの内容は、arm-xilinx-eabi-gcc が見つからないというものだった。
LinuxのSDK14.4 でコンパイルエラー2(解決編)
Xilinx_ISE_DS_Lin_14.4_P.49d.3.0/CodeSourcery /lin ディレクトリの xilinx-2012.03-79-arm-xilinx-linux-gnueabi.bin をインストールし、xilinx-2012.03-83-arm-xilinx-eabi.bin もインストールした。
ターミナルから、xsdk を入力して、SDKを立ち上げ、プロジェクトをクリーンしたら、コンパイルが通った。
Linux上のSDKで ZedBoard_OOB_Desgin のLinuxソフトウェアをコンパイル
ZedBoard_OOB_Desgin のLinuxソフトウェアをコンパイルできるかどうかを確かめたが、エラーでコンパイルすることが出来なかった。Xilinx ARM GNU/Linux Toolchain を選択したところ、コンパイルができるようになった。
Linux上のSDKで ZedBoardのLinuxへリモートデバック
Ubuntu12.10上で動作するSDK14.4から、ZedBoard上で動作する Linuxにリモートデバックすることができた。

プロセッサなしでEDKで AXI IPコアを使う方法
Qsysと同じように、EDKでもプロセッサ抜きでXPSプロジェクトでAXI IPを接続できるようです。

XPSのカスタムIPにおけ るMPDファイルの書き方1
XPSプロジェクトのカスタムIPのMPDファイルの書き方を書いておこうと思う。MPDファ イルはXPSプロジェクトのカスタムIPのパラメータやIOポートの情報などを書いておくファイルだ。
XPSのカスタムIPにおけ るMPDファイルの書き方2
XPSのカスタムIPにおけ るMPDファイルの書き方3
XPSのカスタムIPにおけ るMPDファイルの書き方4

XPSのカスタムIPにおけ るMUIファイルの書き方
custom_vtc IPコアを例にMUIファイルの書き方を書いておく。
なお、MPDファイルの書き方は、”XPSのカスタムIPにおけるMPDファイルの書き方1”からのシリーズを参照のこと。

XPSプロジェクトでの入出力信号の処理
XPSプロジェクトでMIG(Memory Interface Generator) で DDR3 SDRAMをインスタンスしていますが、その時に DQ, DQS_P, DQS_N 等の 入出力信号 (inout) は、Net名とExtarnal Ports名を同じ名前にしておかないと Design Rule Check でエラーが出るようです。覚書として書いておきます。

ある constant の値で、他の constant の値を切り替える3(VHDL編2、XPSプロジェクト)
VHDLの達人 hiyuh さんのVHDLコードのおかげで、"SVGA"と入力したら、800x600 に設定することができた。今度は、XPSプロジェクトに置いてAdd IPのダイアログの中で、VGA, SVGAなどの解像度を設定したら、640x480, 800x600 に設定することを目指す。

SDKの Workspace Launcher が表示されなくなった時の対処方法
SDKの Workspace Launcher が何らかの原因で表示されなくなった時の対処方法を備忘録として書いておく。

2つの AXI4 Master ポートを持つ XPS 用 IP の書き方(ISE14.7 の XPS)
ISE14.7 の XPS で2つのAXI4 Master ポートを持つ XPS 用 IP の書き方の覚書です。

inserted by FC2 system