iMPACT
バッチモードの例
コマンドは、特定の順序で実行する必要があります。 たとえば、デバイスのプログラムを実行するには、最初にモードを設定し、ケーブルを選択するコマンドを入力し、最少 1 つのデバイス チェーンを定義する必要があります。
ほとんどの場合、コマンド ファイル (.cmd) で次の 6 つの操作を実行するだけで済みます。
  1.  操作モードの設定
  2.  ケーブル ポートの設定
  3.  チェーンの定義およびファイルの割り当て
  4.  デバイスのプログラム
  5.  デバイスの検証
  6.  iMPACT の終了
次に例を 10 個紹介します。 各例では、コマンド シーケンスを示した後にそのコマンド シーケンスで使用される各コマンドについて説明します。 コマンド シーケンスの各コマンドの左側の番号は構文には含まれておらず、 コマンドを説明する際の参照番号として付けられているだけです。
コマンド シーケンスの例 1 : FPGA 2 個を含む JTAG チェーンのプログラム
1     setMode -bscan
2     setCable -p auto
3     addDevice -p 1 -file bitstream1.bit
4     addDevice -p 2 -file bitstream2.bit
5     program -v -p 1
6     program -v -p 2
7     saveCDF -file filename.cdf
8     quit
説明 :
  1.  バウンダリ スキャン (JTAG) コンフィギュレーション モードに設定します。
  2.  自動的にケーブルを検索します。 ザイリンクス プログラム ケーブルがコンピュータに接続されている必要があります。
  3.  JTAG チェーンの最初の位置にデバイスを追加し、コンフィギュレーション ファイル bitstream1.bit を割り当てます。
  4.  JTAG チェーンの 2 番目の位置にデバイスを追加し、コンフィギュレーション ファイル bitstream2.bit を割り当てます。
  5.  JTAG チェーンの最初の位置にあるデバイスをプログラム、検証します。
  6.  JTAG チェーンの 2 番目の位置にあるデバイスをプログラム、検証します。
  7.  プロジェクト (チェーン構成と割り当てたファイル) を filename.cdf に保存します。
  8.  iMPACT を終了します。
コマンド シーケンスの例 2 : PROM ファイルの生成 (.mcs)
1     setMode -pff
2     setSubmode -pffserial
3     addPromDevice -p 1 -name xc18V04
4     addDesign -version 0 -name 0
5     addDeviceChain -index 0
6     addDevice -p 1 -file bitstream1.bit
7     generate -format mcs -fillvalue FF -output promfile1
8     quit
説明 :
  1.  PROM ファイル生成モードに設定します。
  2.  スレーブ シリアルのサブモードに設定します。
  3.  XC18V04 PROM を position 1 に追加します。
  4.  デザインを 1 個追加します。
    PROM ファイルの生成シーケンスでは、バージョンと名前を常に 0 に設定する必要があります。これは 1 度だけ設定する必要があります。
  5.  チェーン 1 個をデザインに追加します。
    PROM ファイルの生成シーケンスではインデックスを常に 0 を指定する必要があります。これは 1 度だけ設定する必要があります。
  6.  チェーンの 1 番目にデバイスを追加し、コンフィギュレーション ファイル bitstream1.bit を割り当てます。
  7.  promfile1.mcs を生成します。 PROM のチェックサムは、デバイスで予測されるフィル値に基づいて算出されます。 デフォルトのフィル値は FF で、PROM でデータが消去されている状態と一致しています。
  8.  iMPACT を終了します。
コマンド シーケンスの例 3 : XC18V04 (プログラム)、サードパーティ デバイス (バイパス接続)、XC18V04 (プログラム)、および XC18V04 (バイパス接続し BSD ファイルを割り当てる) を含むチェーンの作成
1     setMode -bscan
2     setCable -p auto
3     addDevice -p 1 -sprom xc18V04 -file design1.mcs
4     addDevice -p 2 -file thirdparty.bsd
5     addDevice -p 3 -sprom xc18V04 -file design2.mcs
6     addDevice -p 4 -file xc18V04_vq44.bsd
7     program -e -v -p 1
8     program -e -v -p 3
9     saveCdf -file filename.cdf
10    quit
説明 :
  1.  バウンダリ スキャン (JTAG) コンフィギュレーション モードに設定します。
  2.  自動的にケーブルを検索します。 ザイリンクス プログラム ケーブルがコンピュータに接続されている必要があります。
  3.  ザイリンクス XC18V04 ISP PROM を JTAG チェーンの 1 番目位置に追加し、PROM ファイル (design1.mcs) を割り当てます。 addDevice コマンドを使用して PROM プログラム ファイルのあるザイリンクス PROM デバイスを追加する場合は、特定の PROM タイプ (XC18V04) を -sprom オプションを使用して指定する必要があります。
  4.  JTAG チェーンの 2 番目の位置にザイリンクス以外のデバイスを追加し、thirdparty.bsd ファイルを割り当てます。 JTAG チェーン内のザイリンクス以外のデバイスは、すべてこのように指定する必要があります。
  5.  ザイリンクス XC18V04 ISP PROM を JTAG チェーンの 3 番目の位置に追加し、PROM ファイル (design2.mcs) を割り当てます。
  6.  ザイリンクス デバイスを JTAG チェーンの 4 番目に追加して、xc18V04_vq44.bsd ファイルを割り当てます。JTAG チェーンに配置されているがプログラムが不要なザイリンクス デバイスは、BSDL ファイルを割り当てることでバイパス接続することができます。 ザイリンクス BSDL ファイルは、$xilinx\<device>\data\ ディレクトリにあります。 たとえば、xc18V04_vq44.bsd ファイルは、$xilinx\xc18V00\data\xc18V04_vq44.bsd から入手できます。
  7.  JTAG チェーンの 1 番目のデバイスで、プログラムの消去、プログラム、検証します。 その他のデバイスはすべて、自動的にバイパス接続されます。
  8.  JTAG チェーンの 3 番目のデバイスで、プログラムの消去、プログラム、検証します。 その他のデバイスはすべて、自動的にバイパス接続されます。
  9.  プロジェクト (チェーン構成と割り当てたファイル) を filename.cdf に保存します。
  10.  iMPACT を終了します。
コマンド シーケンスの例 4 : CDF ファイルの読み込みとデバイスのプログラム
1     setMode -bscan
2     setCable -p auto
3     loadCdf -file filename.cdf
4     program -p 2
5     quit
説明 :
  1.  バウンダリ スキャン (JTAG) コンフィギュレーション モードに設定します。
  2.  自動的にケーブルを検索します。 ザイリンクス プログラム ケーブルがコンピュータに接続されている必要があります。
  3.  チェーン構成およびチェーン内の各デバイスに関連するファイルを含む filename.cdf ファイルを読み込みます。
  4.  JTAG チェーンの 2 番目にあるデバイスをプログラムします。
  5.  iMPACT を終了します。
コマンド シーケンスの例 5 : パラレル ケーブル IV を使用した XC18V512 PROM のプログラム
1     setMode -bscan
2     setCable -port lpt1
3     setCableSpeed -speed 5000000
4     addDevice -p 1 -sprom xc18V512 -file design1.mcs
5     program -e -p 1 -v
6     quit
説明 :
  1.  バウンダリ スキャン (JTAG) コンフィギュレーション モードに設定します。
  2.  プログラム ケーブルが LPT1 に接続されていることを iMPACT に認識させます。iMPACT ではパラレル ケーブル III と パラレル ケーブル IV のいずれが使用されているかが自動的に識別されます。
  3.  ケーブルの通信速度を 5MHz (5,000,000Hz) に設定します。 このコマンドは、パラレル ケーブル IV ケーブルでのみ使用できます。
  4.  ザイリンクス XC18V512 ISP PROM を JTAG チェーンの 1 番目位置に追加し、PROM ファイル (design1.mcs) を割り当てます。
  5.  JTAG チェーンの 1 番目のデバイスで、プログラムの消去、プログラム、検証します。
  6.  iMPACT を終了します。
コマンド シーケンスの例 6 : リビジョンが 2 つある System ACE™ MPM (.mpm) ファイルの生成
1     setMode -mpm
2     setSubmode -mpmss
3     addConfigDevice -size 33554432 -name XCCACEM32
4     addDesign -version 0 -name rev0
5     addDeviceChain -index 0
6     addDesign -version 1 -name rev1
7     addDeviceChain -index 0
8     setAttribute -collection -attr name -value design
9     setCurrentDesign -version 0
10    setCurrentDeviceChain -index 0
11    addDevice -position 1 -file design1.bit
12    addDevice -position 2 -file design2.bit
13    setCurrentDesign -version 1
14    setCurrentDeviceChain -index 0
15    addDevice -position 1 -file design3.bit
16    addDevice -position 2 -file design4.bit
17    generate
18    quit
説明 :
  1.  System ACE™ MPM ファイル生成モードに設定します。
  2.  スレーブ シリアルのサブモードに設定します。
  3.  デバイスのサイズを 33554432 (32Mb) に、デバイス名を XCCACEM32 に指定します。
  4.  デザインをコンフィギュレーション アドレス 0 (-version 0) に追加します。
    アドレスには 0 ~ 7 が使用できます。 このアドレスに割り当てられたデザイン名は rev0 です。
  5.  最初のスレーブ シリアル デバイス チェーンをコンフィギュレーション アドレス 0 (4 行目で指定済み) に追加し、CFG_DATA[0] ピン (-index 0) を割り当てます。
  6.  デザインをコンフィギュレーション アドレス 1 (-version 1) に追加します。
    アドレスには 0 ~ 7 が使用できます。 このアドレスに割り当てられたデザイン名は rev1 です。
  7.  2 番目のスレーブ シリアル デバイス チェーンをコンフィギュレーション アドレス 1 (6 行目で指定済み) に追加し、CFG_DATA[0] ピン (-index 0) を割り当てます。
  8.  MPM のファイル名を「design」に指定します。
    ファイル名には 8 文字までしか使用できません。
  9.  現在のデザインのリビジョンを 0 に設定します。
    この後の addDevice コマンドは、このバージョンに適用されます。
  10.  現在のデバイス チェーンのインデックスを 0 に設定します。
    この後の addDevice コマンドはこのチェーンのインデックスに適用されます。
  11.  現在のデザイン (9 行目で指定済み) の現在のデバイス チェーン (10 行目で指定済み) にある 1 番目のデバイスに design1.bit ファイルを追加します。
  12.  現在のデザイン (9 行目で指定済み) の現在のデバイス チェーン (10 行目で指定済み) にある 2 番目のデバイスに design2.bit ファイルを追加します。
  13.  現在のデザインのリビジョンを 1 に設定します。 
    この後の addDevice コマンドは、このバージョンに適用されます。
  14.  現在のデバイス チェーンのインデックスを 0 に設定します。
    この後の addDevice コマンドはこのチェーンのインデックスに適用されます。
  15.  現在のデザイン (13 行目で指定済み) の現在のデバイス チェーン (14 行目で指定済み) にある 1 番目のデバイスに design3.bit ファイルを追加します。
  16.  現在のデザイン (13 行目で指定済み) の現在のデバイス チェーン (14 行目で指定済み) にある 2 番目のデバイスに design4.bit ファイルを追加します。
  17.  setAttribute で指定したデザイン名を使用して design.mpm ファイルを生成します。 -path オプションを使用すると、design.mpm ファイルの保存先を指定できます。
  18.  iMPACT を終了します。      
コマンド シーケンスの例 7 : System ACE (.ace) ファイルの生成
1     setMode -cf
2     addConfigDevice -size 134217728 -name XCCACE128-I
3     addCollection -name collection1
4     addDesign -version 0 -namerev0a
5     addDeviceChain -index 0
6     addDesign -version 1 -namerev1a
7     addDeviceChain -index 0
8     addCollection -name collection2
9     addDesign -version 0 -name rev0b
10    addDeviceChain -index 0
11    addDesign -version 1 -name rev1b
12    addDeviceChain -index 0
13    setCurrentDeviceChain -index 0
14    setCurrentCollection -collection collection1
15    setCurrentDesign -version 0
16    addDevice -position 1 -file design1a.bit
17    addDevice -position 2 -file design2a.bit
18    setCurrentDesign -version 1
19    addDevice -position 1 -file design3a.bit
20    addDevice -position 2 -file design4a.bit
21    setCurrentCollection -collection collection2
22    setCurrentDesign -version 0
23    addDevice -position 1 -file design1b.bit
24    addDevice -position 2 -file design2b.bit
25    setCurrentDesign -version 1
26    addDevice -position 1 -file design3b.bit
27    addDevice -position 2 -file design4b.bit
28    generate -active collection1
29    quit
説明 :
  1.  System ACE CF ファイル生成モードに設定します。
  2.  コンパクト フラッシュ (CF) デバイスのサイズを 134217728 ビット (128Mb CF カード) に、名前を XCACE128-I に指定します。
  3.  collection1 という名前のコレクションを追加します。
  4.  デザインをコンフィギュレーション アドレス 0 (-version 0) に追加します。 アドレスには 0 ~ 7 が使用できます。 このアドレスに割り当てられたデザイン名は rev0a です。
  5.  JTAG デバイス チェーンを追加します。 System ACE CF ファイルの生成では、-index オプションを常に 0 に設定する必要があります。
  6.  デザインをコンフィギュレーション アドレス 1 (-version 1) に追加します。
    アドレスには 0 ~ 7 が使用できます。 このアドレスに割り当てられたデザイン名は rev1a です。
  7.  JTAG デバイス チェーンを追加します。
    System ACE CF ファイルの生成では、-index オプションを常に 0 に設定する必要があります。
  8.  collection2 という名前のコレクションを追加します。
  9.  デザインをコンフィギュレーション アドレス 0 (-version 0) に追加します。
    アドレスには 0 ~ 7 が使用できます。 このアドレスに割り当てられたデザイン名は rev0b です。
  10.  JTAG デバイス チェーンを追加します。
    System ACE CF ファイルの生成では、-index オプションを常に 0 に設定する必要があります。
  11.  デザインをコンフィギュレーション アドレス 1 (-version 1) に追加します。 アドレスには 0 ~ 7 が使用できます。 このアドレスに割り当てられたデザイン名は rev1b です。  
  12.  JTAG デバイス チェーンを追加します。
    System ACE CF ファイルの生成では、-index オプションを常に 0 に設定する必要があります。
  13.  現在のデバイス チェーンのインデックスを 0 に設定します。
    System ACE CF ファイルの生成シーケンスでは、インデックスを常に 0 に設定する必要があります。これは 1 度のみ設定する必要があります。
  14.  現在のコレクションを collection1 に設定します。
    この後の addDevice コマンドは、このコレクションに適用されます。
  15.  現在のデザインのリビジョンを 0 に設定します。 
    この後の addDevice コマンドは、このバージョンに適用されます。
  16.  現在のコレクション (14 行目で設定済み) の現在のバージョン (15 行目で設定済み) の現在のデバイス チェーンにある 1 番目のデバイスに design1a.bit を追加します。
  17.  現在のコレクション (14 行目で設定済み) の現在のバージョン (15 行目で設定済み) の現在のデバイス チェーンにある 2 番目のデバイスに design2a.bit を追加します。
  18.  現在のデザインのリビジョンを 1 に設定します。 
    この後の addDevice コマンドは、このバージョンに適用されます。
  19.  現在のコレクション (14 行目で設定済み) の現在のバージョン (18 行目で設定済み) の現在のデバイス チェーンにある 1 番目のデバイスに design3a.bit を追加します。
  20.  現在のコレクション (14 行目で設定済み) の現在のバージョン (18 行目で設定済み) の現在のデバイス チェーンにある 2 番目のデバイスに design4a.bit を追加します。
  21.  現在のコレクションを collection2 に設定します。
    この後の addDevice コマンドは、このコレクションに適用されます。
  22.  現在のデザインのリビジョンを 0 に設定します。 
    この後の addDevice コマンドは、このバージョンに適用されます。
  23.  現在のコレクション (21 行目で設定済み) の現在のバージョン (22 行目で設定済み) の現在のデバイス チェーンにある 1 番目のデバイスに design1b.bit を追加します。
  24.  現在のコレクション (21 行目で設定済み) の現在のバージョン (22 行目で設定済み) の現在のデバイス チェーンにある 2 番目のデバイスに design2a.bit を追加します。
  25.  現在のデザインのリビジョンを 1 に設定します。 
    この後の addDevice コマンドは、このバージョンに適用されます。
  26.  現在のコレクション (21 行目で設定済み) の現在のバージョン (25 行目で設定済み) の現在のデバイス チェーンにある 1 番目のデバイスに design3b.bit を追加します。
  27.  現在のコレクション (21 行目で設定済み) の現在のバージョン (25 行目で設定済み) の現在のデバイス チェーンにある 1 番目のデバイスに design4b.bit を追加します。
  28.  作成した各デザイン セット (rev0arev1arev0brev1b) に対して ACE ファイルを生成します。
    -path オプションを使用すると、これらのファイルの保存先を指定できます。
    -active オプションを使用すると、プロジェクト ディレクトリの最上位レベルで作成される xilinx.sys ファイルでアクティブに定義するコレクションを指定できます。
  29.  iMPACT を終了します。
コマンド シーケンスの例 8 : System ACE MPM デバイスのプログラム
1     setMode -bscan
2     setCable -port lpt1
3     addDevice -p 1 -file mpm_design.mpm -mpm xccacem64
4     program -e -p 2 -v
5     quit
説明 :
  1.  バウンダリ スキャン (JTAG) コンフィギュレーション モードに設定します。
  2.  プログラム ケーブルが LPT1 に接続されていることを iMPACT に認識させます。
    iMPACT ではパラレル ケーブル III と パラレル ケーブル IV のどちらが使用されているかが自動的に識別されます。
  3.  ザイリンクス System ACE MPM デバイスを JTAG チェーンの 1 番目に追加し、mpm_design.mpm ファイルを割り当てます。 64Mb の System ACE MPM デバイスを指定します。
    メモ : System ACE MPM と System ACE SC は、XC18V01 と XCV50E の 2 個のデバイスから構成されています。 iMPACT ではこの構成が認識されているので、addDevice コマンドで MPM が追加されるごとに JTAG チェーンに 2 個のデバイスが自動的に追加されます。 MPM デバイスの追加後にほかのデバイスを JTAG チェーンに追加すると、JTAG チェーンで MPM デバイスが JTAG チェーンの 2 箇所を使用していることが確認できます。たとえば、addDevice -p 3 の場合、チェーンの 3 番目にデバイスが追加されることになります。
  4.  プログラムの消去、プログラム、検証を実行します。 System ACE MPM デバイスで実行したすべての操作は、2 番目の System ACE MPM のデバイスに適用されます。
  5.  iMPACT を終了します。
コマンド シーケンスの例 9 : リビジョンが 2 つある XCF00P プラットフォーム フラッシュ PROM のファイルの生成 (.mcs および .cfi)
1     setMode -pff
2     setSubmode -pffversion
3     addPromDevice -position 1 -name xcf32p
4     addPromDevice -position 2 -name xcf32p
5     addCollection -name test
6     addDesign -version 0 -name 0000
7     addDeviceChain -index 0
8     setCurrentDesign -version 0
9     addDevice -position 1 -file bitstream1a.bit
10    addDevice -position 2 -file bitstream2a.bit
11    addDesign -version 1 -name 1000
12    addDeviceChain -index 0
13    setCurrentDesign -version 1
14    addDevice -position 1 -file bitstream1b.bit
15    addDevice -position 2 -file bitstream2b.bit
16    generate -format mcs -fillvalue FF
17    quit
説明 :
  1.  PROM ファイル生成モードに設定します。
  2.  XCF00P プラットフォーム フラッシュ PROM のデザイン リビジョン機能をサポートするサブ モードに切り替えます。
  3.  XCF32P PROM を position 1 に追加します。
  4.  XCF32P PROM を position 2 に追加します。
  5.  デザイン リビジョン名を「test」に指定します。
  6.  デザイン リビジョン 0 を追加します。
  7.  デザイン リビジョン 0 にシングル チェーンに追加します。
    インデックスは、PROM ファイルの生成シーケンスで 0 に設定する必要があります。
  8.  現在のデザインのリビジョンを 0 に設定します。
    この後の addDevice コマンドはこのデザインのリビジョンに適用されます。
  9.  現在のデザイン リビジョン (8 行目で設定済み) の 1 番目のデバイスに bitstream1a.bit を追加します。
  10.  現在のデザイン リビジョン (8 行目で設定済み) の 2 番目のデバイスに bitstream2a.bit を追加します。
  11.  デザイン リビジョン 1 を追加します。
  12.  デザイン リビジョン 1 にシングル チェーンに追加します。
    インデックスは、PROM ファイルの生成シーケンスで 0 に設定する必要があります。
  13.  現在のデザインのリビジョンを 1 に設定します。
    この後の addDevice コマンドはこのデザインのリビジョンに適用されます。
  14.  現在のデザイン リビジョン (13 行目で設定済み) の 1 番目のデバイスに bitstream1b.bit を追加します。
  15.  現在のデザイン リビジョン (13 行目で設定済み) の 2 番目のデバイスに bitstream2b.bit を追加します。
  16.  5 行目の addCollection で指定した名前「test」を使用して test_0.mcs および test_0.cfi を生成します。 PROM のチェックサムは、デバイスで予測されるフィル値に基づいて算出されます。 デフォルトのフィル値は FF で、PROM でデータが消去されている状態と一致しています。 -path オプションを使用すると、PROM ファイルの保存先を指定できます。
  17.  iMPACT を終了します。
コマンド シーケンスの例 10 : PC IV ケーブルを使用したリビジョンが 2 つある XCF00P プラットフォーム フラッシュ PROM のプログラム
1     setMode -bscan
2     setCable -port lpt1
3     setCableSpeed -speed 5000000
4     addDevice -p 1 -sprom xcf32p -file test_0.mcs
5     addDevice -p 2 -sprom xcf32p -file test_1.mcs
6     Program -p 1 2 -defaultVersion 0 -ver 0 erase verify -ver 1 erase verify
7     quit
説明 :
  1.  バウンダリ スキャン (JTAG) コンフィギュレーション モードに設定します。
  2.  プログラム ケーブルが LPT1 に接続されていることを iMPACT に認識させます。iMPACT ではパラレル ケーブル III と パラレル ケーブル IV のいずれが使用されているかが自動的に識別されます。
  3.  ケーブルの通信速度を 5MHz (5,000,000Hz) に設定します。 このコマンドは、パラレル ケーブル IV ケーブルでのみ使用できます。
  4.  ザイリンクス XCF32P ISP PROM を JTAG チェーンの 1 番目の位置に追加し、PROM ファイル (test_0.mcs) を割り当てます。 test_0.mcs と同じ保存先に含まれている test_0.cfi ファイルは、自動的にこのファイルに関連付けられます。
  5.  ザイリンクス XCF32P ISP PROM を JTAG チェーンの 2 番目の位置に追加し、PROM ファイル (test_1.mcs) を割り当てます。 test_1.mcs と同じ保存先に含まれている test_1.cfi ファイルは、自動的にこのファイルに関連付けられます。
  6.  JTAG チェーンの XCF32P デバイスの両方でデフォルトのデザイン リビジョンを 0 に設定して、プログラムの消去、プログラム、および検証を実行します。 (XCF00P プラットフォーム フラッシュ PROM のプログラム オプションの詳細は、program のバッチ コマンドを参照してください。)
  7.  iMPACT を終了します。

© Copyright 1995–2009, Xilinx® Inc. All rights reserved.