2009年9月17日木曜日

Spartan6 Evaluation Kit(SP601)を使ってみました。

今まで、手が出せずに購入したままになっていた、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月2日水曜日

Xilinx ISE Design Suite の導入

Xilinx Spartan6 FPGA SP601 評価キットがようやく入手できたので。開発環境を整えました。その手順をここに記録します。

////////////////////////////////
 
 概要
  1.Xilinxアカウント登録
  2.ライセンスの登録
  3.ISE Design Suiteのインストール
  4.ISE Design Suiteの動作確認

  ※今回のISE Design Suiteは 以前、Xilinxからのメール
  「Welcome to Xilinx Electronic Fulfillment」、
  「Xilinx, Inc. – Important Information Regarding Your Spartan(r)-6 FPGA SP601 Evaluation Kit Purchase」
  に従いインストール作業を行った。

  ※評価キット同梱のメディア(DVD、USBメモリ)は今回使用しなかった。

////////////////////////////////

1.Xilinxアカウント登録
 1)メール「Welcome to Xilinx Electronic Fulfillment」記載の
   https://secure.xilinx.com/webreg/register.do?group=esd_oms
  でXilinx HP にアクセス

  (1)ユーザアカウントの作成
     userid : ×××××@××××.×××  ※今回メールアドレスにしました。
     Corprate Email : ×××××@××××.××× ※Xilinxからのメールを受けたメールアドレス。
     password : ××××××××
     First Name : Taro
     Last Name : Yamada
    でユーザーアカウントを作成する。 
  (2)Xilinxからメール「Xilinx Registration: Account Activation」が届く
  (3)メール記載のアドレスでユーザーアカウントをアクティブ化する。
     https://secure.xilinx.com/webreg/activate.do?languageID=1&key=s5w7ea36827
  (4)ユーザーIDとパスワードでサインインする。
  (5)ユーザープロファイルを登録する。(メールアドレスは、Xilinxからメールを受け取ったアドレス)
  (6)サインアウト
        
2.ライセンスの登録
 1)準備 PCのEthernet MACアドレスを調べる。
  (1)すべてのプログラム/アクセサリ/コマンドプロンプトを起動
  (2) ipconfig /all を 実行
  
   Microsoft Visual C++ 2005 Redistributeale(x64)

   Windows IP 構成

    ホスト名 . . . . . . . . . . . . : My-PC-ORION
    プライマリ DNS サフィックス . . . . . . . :
   . . . . . . . . . . .
     Gigabit Ethernet NIC (NDIS 6.0)
    物理アドレス. . . . . . . . . . . : 00-21-70-XX-XX-XX
    DHCP 有効 . . . . . . . . . . . . : いいえ
   . . . . . . . . . . .

   が表示されるので ホスト名(My-PC-ORION)と物理アドレス(00-21-70-XX-XX-XX
)を控える。

 2)再度 https://secure.xilinx.com/webreg/register.do?group=esd_oms でXilinx HP にアクセス
  (1)ユーザーIDとパスワードでログインする。
  (2)Home/Support/Product Download and Licensing のページに切り替わる Tab:3.Create New Licences 
  (3)ISE Design Suite WebPack Edition, Node-Locked License にチェック 「Generate Node-Locked License」をクリック
  (4)Generate Node Liense ページ  [2 SYSTEM INFORMATION] 「Select a host] [
  (5)Add a host....
    Operating System : Windows 64-bit
    HostID Type : Ethernet MAC
    HostID Value : 00-21-70-XX-XX-XX
    HostID Name : My-PC-ORION
   「Add」をクリック
    
     ※手間取っていると タイムアウトエラー 一旦サインアウト サインイン
  (6)REVIEW LICENCE REQUEST
「Next」をクリック

    Congratulations
    Your new license file has been successfully generated and e-mailed to ...
    Please add this sender (xilinx.notification@entitlenow.com) to your ...    

   License File Details
    Node License
    Host ID: 002170XXXXXX

    Products
    ISE Design Suite: WebPack Edition, Node-Locked License (Full): 1 seats

  ※ Tab:4.Manage Licensesの表示に切り替わる。

3.ISE Design Suiteのインストール (引き続きXilinx ウエブサイトでの作業)
 1)Home/Support/Product Download and Licensing の Tab:1.Download Software に移る。
 2) の ISE Design Suite : Full DVD  
   Full DVD Single File Download Image 5.63GB の [Download] を実行
 
   *ダウンローダー プログラムのインストール が要求される。 適宜にインストール
   その後 ファイル Xilix_11.1_ISE_DS_SFD.tar のダウンロードが開始される。
   C:\DownLoad\Xilinx のフォルダを作成 そこにダウンロード

 3)Xilix_11.1_ISE_DS_SFD.tarの解凍
  (1)Cygwinを起動 (Windows用 tarコマンド(フリーソフト)を使う代り)
  (2)ダウンロードディレクトリへ cd /cygdrive/c/DownLoad/Xilinx を実行
  (3)解凍 tar xvf Xilix_11.1_ISE_DS_SFD.tar を実行

 4)xsetup.exe の実行
   (1)C:\DownLoad\Xilinx\Xilinx_11.1_ISE_DS_SFD\xsetup.exeを実行

    ((ウイルス対策ソフトをOFF  ?))

    ライセンス承諾
(2)インストールディレクトリの選択 そのまま
  (3)インストールする製品の選択 そのまま
  (4)インストールオプションの選択そのまま
     *ケーブルドライバ WindowsXP Pro x64 WindowsVISTA Business サポートの記述


  (5)インストールの実行
  (6)Xilinx License Configuration Manager  が立ち上がる。
     ・Start ISE WebPack を選択 「Next」をクリック
     ・ライセンスファイルのリスト表示 「Close」をクリック
  (7)Jungo デバイスソフトウエアのインストール 
     ・インストール
  (8)Xilinx デバイスソフトウエアのインストール 
    ・インストール

  (9)インストール完了

  (10)XilinxUpdateが立ち上がる。
    ・「Check for Update」をクリック
   エラー発生 [An error occurd when running the XilinxUpdate program]
[Unable to access the required files.Common reasons for this are:]
[The machine is not currently connected to the internet ]
 5)ISE Design Suite のアップデート( XilinxUpdateエラー対応)
  (1) http://www.xilinx.com/getproductでXilinxウエブサイトにアクセス
    Xilinxからのメール
  「Xilinx, Inc. – Important Information Regarding Your Spartan(r)-6 FPGA SP601 ..
記載のアドレス  
  (2)Tab:2.Software Updates  ISE Suite 11.2.Complete Update for Windows64 選択 
  (3)ダウンロードファイル Xilinx_11.2_ISE_DS_nt64.tar  を解凍
  (4)xsetup.exe の実行
     C:\DownLoad\Xilinx\Xilinx_11.2_ISE_DS_nt64\xsetup.exe

   ①Select Destination Directory
     C:\Xilinx\11.1   そのまま 「OK」クリック
   ②Warning      「Yes」クリック
   ③Updateリスト    そのまま 「OK」クリック
    * 進捗表示 0%の時間が長い。

4.ISE Design Suiteの動作確認
  (1)起動
    すべてのプログラム>Xilinx ISE Design Suite 11> ISE > ISE 64ビット > Project Navigator
  (2) Tip of the Day が表示 「OK」クリック
  (3)新規プロジェクトの作成
    File > New Project...
  (4)New Project Wizard が表示
   ・Name Test
   ・Location C:\Xilinx\Project\Test (C:\Xilinx\Projectフォルダ作成)
   「Next」クリック
  (5)New Project Wizard  Device Properties
   ・Family Spartan6 を選択
   ・Device XC6SLX16 を選択
   ・Package CSG324 を選択
   「Next」クリック
  (6)New Project Wizard  Create New Source
   「Next」クリック
  (7)New Project Wizard  Add File
    CQ出版 Interface 9月 の 3章のソース(同誌HPよりダウンロード)
     [test.ucf] [test.vhd] を 追加
   「Next」クリック
  (8)New Project Wizard  Preoject Summary
   「Finish」をクック
  (9)Adding Source Files....が表示
   「OK」をクック
  (10)Generate Program Fileを実行
   ① Designタブ Hirardy ウインドでトップモジュール test - rti(C:\Xilinx\Projct\Test\test.vhd) を選択
   ② Processes: test - rti ウインドで Generate Prograing File が表示 それをクリック
   ③ [Synthesis] [Implenet Design/Translate]まで通過、[Implenet Design/Map]でエラー

  一応ISE Design Suiteの 動作確認はできたことに???

////////////////////////////////
 積み残し
・Windows の適合性
 今回、PC環境はWindowsVISTA64ビットHomePre.、XilinxのツールでWindowsVISTA Businesを前提にしているものかあり、実際に評価キットでの開発を始めたら、インストールし直しする羽目になる可能性あり。
・USB/シリアル ドライバーのインストール
 今回使用PCは、他のマイコン用に同様なドライバが組み込まれているので、一連のインストール作業のうち USB/シリアル ドライバーのインストールは省いた。

////////////////////////////////
 今回は、時間が取れなくて、ちょっとお茶を濁した程度、まだ評価キット自体にたどり着けない、、ちょっともどかしい。。。こんなところです。