今まで、手が出せずに購入したままになっていた、Xilinx Spartan-6 FPGA SP601 Evaluation Kit を、使い始めました。
1.ボードの動作確認。
キット同梱のマニュアル「Getting Strated with the Xilinx Spartan-6 ...」のとおり、シリアル(UART)接続での操作、サンプルの画像処理プログラムの動作を確認しました。
※開発環境 Windows VISTA 64bit Home Premium での確認は失敗しました。
シリアル(UART)接続での操作では、VISTAにハイパーターミナルが実装されていないので・・・×
画像処理プログラムの動作確認では、WinPcap の DLL が導入出来ず・・・×
(開発環境のセットアップ時 WinPcapのインストールは実行されるがDLLがインストールされなかった。)
==>Windows XP Home 32bit 環境で これらの動作確認は成功しました。
2.テストプログラムの作成、動作確認
以前Altera CyclonIII スタータキットで最初に作成した、テストプログラムを Spartan6 EvaluationKit SP601 に移植しました。
1)テストプログラム
キットに実装されているクロックの信号をカウンタに取り込み、カウンタのビットの0/1の切り替えをクロック信号として外部に出力する。
出力周波数の切り替えはプログラムモードによるカウンタのビット選択でおこなう。
CyclonIII スタータキットで作成したテストプロジェクトより使えそうな部品VHDLソースは
Func_gen.vhd カウンタのビットをプログラムモードで選択し、CLK信号を出力
Simple_Cunter.vhd キット実装の水晶発信器のCLK信号をカウント(カウンタ カウントアップ)
mode_change.vhd 4プッシュボタンでプログラムモードチェンジ
2)プロジェクトの作成
①ISE Project Navigatorを立ち上げる。(Xilix ISE Design Suite 11 / ISE / ISE 64ビット / ISE Project Navigator )
②「New Project」ボタンクリック
・Create New Projectダイアログ
Name : TestFuncGen
Location : C:\Xilinx\Project\TestFuncGen << C:\Xilinx\Projectを指定していた場合
・Device Propertiesダイアログ
Product Category : All
Family : Spartan6
Device : XC6SL16
Package : CSG324
Speed : -2
・Create New Sourceダイアログ スルー
・Add Existing Sourceダイアログ スルー
*空のプロジェクトが出来る。
3)プロジェクトに既存(前述)のソースファイルを追加する。
プロジェクト名 TestFuncGenを選択し、右クリックして、各ソースファイルを追加。
4)追加エンティティ(ソースファイル)のシンボル化
追加された各ソースファイルを選択した状態で、[Processes]の Design Utilities / Create Schematic Symbol を実行
5)プロジェクトに Schematec を追加 (CyclonIII スタータキットでの場合、トップエンティティ)
プロジェクト名 TestFuncGenを選択し、右クリックして、New Source... を実行する。
New Source Wizrd
Select source type…: Schematic
File Name : TestFuncGen
6)Schematic の編集
①シンボル化されたエンティティを追加する。
シンボル選択ウインドウの Categories に プロジェクトのディレクトリが表示されるので、選択、>> 4)で作成されたシンボルが表示 これを選択、Schematic にドラッグ&ドロップで追加する。
②ワイヤーの追加
Add Wire のアイコンで 各シンボル端子(シンボル間接続)にワイヤを張る。
③入出力の追加
Add I/O Maker アイコンで 各シンボル端子(FPGAの入出力)に入出力を作成する。
◎IPの追加
IPを使用する場合、一旦、仮プロジェクトを作成、そこにIPを CORE Generator & Architecture Wizard を使って追加する。
すると、仮プロジェクトのディレクトリにVHDL(Verilog HDL)のソースファイルが生成されているので、このファイルを本プロジェクトに追加、シンボル化してこのSchematicに追加する。
7)ピン配置(定義)
① Schematic (TestFuncGen) を選んだ状態で 「I/O Pin Plannig(PlanAhead) - Pre-Synthesis」 「I/O Pin Plannig(PlanAhead) - Post-Synthesis」「Floorplan Area/IO/Logic(PlanAhead)」のいづれかを選び ピンの定義 を行う。
8)ダウンロード(Device Programming)
①Evaluation Kit ボードの USB(JTAG)コネクタとPCを接続する。
②Schematic (TestFuncGen) を選んだ状態で 「Configure Target Device」
*ISE IMPACT立ち上がる
③iMPACTで Bundary Scan ==> Right click to Add Device or ….
④Mouse 右クリック
Add Xilinx Device クリック
バイナリファイル C:/Xilinx/Project/TestFuncGen/testfuncgen.bit を選択 *FPGAのアイコンが表示
Programを選択==> Device Programing Properties ダイアログ表示
ダウンロード開始
--------------------------------------------
今回 開発環境は Windows VISTA 64bit Home Premium で行いました。当初、7)ピン配置(定義)で 設定プログラム PlanAhead が 立ち上がり時 にダウンし、それ以降の作業が不能になりました。WindowsXPに開発環境(ISE WebPACK™ )を組み、同じ手順を試行しました。その結果、ピン配置、ダウンロードの処理が問題なく行え、不完全ながらキットでの動作確認ができました。
その後、Windows VISTAの環境に戻り、あれやこれやと試した結果、libPackStanSolver.dll の読み込みでエラー発生していることがわかりました。
XilixのHPで、ISE のアップデート 11.3 があったのでこれを適用したところ、この障害は解消されました。
--------------------------------------------
※操作性で違和感を感じる点
・ピン配置(定義)、ダウンロード時にソースを選択した状態で行ったこと。(プロジェクト単位で行った方が納得)
・IPの追加が、直接 Schematic に出来なかったこと。
・ソースファイルでシンボルを作成するが、なかなかシンボル選択リストに表示されなかったこと。
・ダウンロードiMPACTでは、バイナリファイル(ダウンロードファイル)を選択し、Programe実行て初めてFPGAが認識されるようです。慣れるまでは不安。
--------------------------------------------
今回 手っ取り早くSpartan6を試したかったため、Altera CyclonIII の開発環境からソースファイルを転用しました。したがって、テストプロジェクトは、一つのトップエンティティ+複数の部品エンティティの構成でとなりました。
どうも前述の違和感は、AlteraとXilixの文化の差に起因するのでしょうか?文化の差、、たとえばプロジェクト意味が異なるのでは、どうもXilinxでは、1つのプロジェクトは1つの開発環境を意味し、複数のトップエンティティがもてるように感じます。(必要なトップエンティティを選んでコンフィグレーション / ダウンロードするかたちを採るのでしょうか?)
とにかく、現時点では、マニュアルを読み倒す必要があると思います。
2009年9月17日木曜日
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿