2003.5.29 Ver.1.14 パラレルエラー対策、エラー処理、内部整理
2003.4.16 Ver.1.13 AN2131SC/2135SC両用SPI高速ドライバ追加
2003.1.20 Ver.1.12 AN2135S専用C高速版ドライバ
2003.1.10 パラレルドライバにGIVEIOインストール機能追加
2002.8.29 Ver1.1公開、デイジーチェイン対応
2002.8. 6 AlteraBitBlaster用ドライバ追加
2002.8. 5 Ver.1.0に更新,USB-PDC用ドライバ追加
2002.3.22 回路図Rev.2に修正、Alteraピン配置のTVCCとGNDが逆でした
2002.3.19 1stリリース
2002.3.15 回路図追加
SPCISP EZ-USB対応 ISPプログラム
=>>
概要
Xilinx FPGA(SpartanIIシリーズ)のコンフィグレーションを行なうプログラムです。
Xilinx純正のダウンロードツールiMPACTの代わりに使用します。
パラレルポートのない方、EZ-USBの勉強をSpartanとIIと一緒にやりたい方、繰り返しコンフィグレーションする為にiMPACTで毎回書き込み操作をするのが面倒な方等に向いています。
対応済みインターフェース/ドライバー
とりあえずこちらを一読してください。
ダウンロード
最新プログラム
SPCISP Ver.1.14 コンプリートバイナリ(最新DLLドライバー同梱)
SPCISP Ver.1.14 ソース (spcisp.exeのみ)
最新ドライバー
バイナリは、SPCISPに同梱
(Ver.1.11)SPCISP用Xilinx/Alteraパラレルドライバ、ソース一式
回路図
spc_usb2 : EZ-USB(AN2131SC/AN2135SC) SPI高速版プローブ用JTAG部回路説明
spc_usb : USB(AN2135SC)用JTAGプローブ部 回路図 Rev.2
spc_pdc : USB-PDC(AN2131SC)用JTAGプローブ部 回路説明
特徴
下記の特徴があります。
・XilinxSpartan2 専用です。(Vertexでも多分動く)
・ドライバー部をDLL化しているため、DLLの差し替えで独自ハードに対応可能
・EZ-USB(AN2135SC)を使ったUSB接続の専用プローブで高速プログラムできます。
・JTAGモードとシリアルスレーブモード(現在USBのみ)の両方に対応しています。
・純正仕様のパラレルI/Fのプローブにも対応しているほか、Altera BitBlaster?
仕様のケーブルも使えます!(Alteraデバイスが書き込めるわけではない)
・ソースを公開しているので、Xilinx以外のJTAGアプリにも応用可能です。
・JTAGデイジーチェイン+自動選択に対応(Ver1.1より)
iMPACTに勝っている点として、
・常駐実行させて、bitstreamファイル生成時に自動書き込みさせるこが可能
・プログラムの起動速度が速い。
・USBプローブの使用により、パラレルI/F不要+高速コンフィグ可能
・JTAGデイジーチェイン自動検査のため、幅広い接続状態に対応
iMPACTに劣っている点として、
・Spartan2のみ対応
・パラレルI/Fでは、I/Oポートを直接制御していおりWindowsNT/2000/XPではGIVEIO.SYSが必要
・GUIインターフェース無し
などです。
EZ-USBプローブの作成
パラレルケーブルで速度、安定度ともに十分な方はUSBプローブの作成は不要です。
EZ-USBによるプローブの場合、AN2131SCかAN2135SCが搭載され、EEPROM未接続のEZ-USBモジュールで、指定のポートが空いているものが必要です。
この条件を満たすモジュールをすでに所有しているなら、それを加工してJTAG-ISPケーブルを制作できます。
配線とコネクタの他に必要なものは、いくつかの抵抗だけです。
ドライバーは、SPI版,AN2135SC版、USB-PDC版(AN2131SC)の3種類があります。
このうちSPI版が最も新しく高速なので、可能な方はこちらをお勧めします。
USB-PDC版(AN2131SC)は、古い骨格で作られているため、SpartanIIのコンフィグ以外には向きません。
EZ-USBモジュールをキットで購入するなら、MINI-USBがお勧めです。
自作の他、使用/流用可能なモジュールとしては、下記のものなどがあります。
1)オプティマイズ製MINI-USB
私が知る限り、個人で入手可能な専用キット/モジュールとしては、現在(2003.4.16)最も小さく安価なものです。
このモジュールにおいて、動作確認を行なっています。
2) 株式会社 アイ・ピイ・アイ製AN2131SC基板
未確認ですが、たぶん使えます。
3)オプティマイズ製カメレオンUSBの再生品
CPLDが壊れてしまったカメレオンUSBを再利用できます。
実際、こんな風に制作してみました。
4)プリンストン製スマートメディアリーダ、PRD-SM2
こうして最初に使用したものですが、販売終了しています。
後継機種では、中味がAN2135SCとは異なっている模様です。
5)I・O DATA製 USB-PDC
これまた販売終了品ですが、EZ-USBユーザーの間では人気が高い携帯電話用ケーブルです。
外部とのI/FにバッファICが入っているそうで、I/Oの方向が決まっている為、より高速な"SPI版"を使用するためには、内部の改造が必要なようです。
FREE WINGさんが、初期のAN2135SC用ドライバーを元にUSB-PDC専用ドライバーを制作されています。
詳しくはFREE WINGさんのホームページの「EZ−USBでスパルタン2をコンフィグ」をご覧下さい。
プローブの制作が終わったら、EZ-USB開発キット内にあるデバイスドライバー"ezusb2k.inf"と"ezusb.sys"をインストールし、EEPROMなしのAN2135SCをPCに接続してCypressのデバイスドライバを認識させます。
ドライバーのインストールについては、MINI-USBのに説明があります。
使い方
あらかじめPC,ISP用各種プローブ,SpartanIIをつなぎ、SpartanIIに電源を供給しておきます。
USBプローブの場合は、PCと接続して、EZ-USB開発キットのデバイスドライバーをインストールして認識させます。
spcisp.exeと使用するドライバーDLLを同じディレクトリに配置します。
コマンドプロンプトからspcisp.exeを実行すると簡単な使い方が表示されます。
適当なパラメーターを与えてプログラムを起動すると、コンフィグレーションを実行します。
詳しくは、アーカイブ内のspcisp.txtを読んでください
注意事項、免責
このプログラムや製作記事に関して、その使用に関していかなる責任も負いません。
各々自己責任と、良識に基づいて情報やプログラムを使用してください。
bitstreamファイルの解析は独自方法で、ヘッダの一部は解明していない為、ツールのバージョンによっては判読不可能な可能性があります。
Webpack4.1i,Webpack4.2,Webpack5.1SP3では動作確認をしています。
今後の展望
・XC18Vxxの書き込みサポート
・コンフィグ後に、JTAG経由でデータ通信
−SpartanII接続のFlashROMのJTAG経由で書き換える(実験終了済)
−SpartanII接続の大容量RAMにデータを送り込む
・パラレルスレーブモード対応 ← コンフィグ後の高速データ通信
・GUI化=iMPACT置き換えの為
・iMpacct置き換え=自動コンフィグをシンプルにする為
旧バージョンダウンロード
SPCISP Ver.1.13 コンプリートバイナリ(最新DLLドライバー同梱)
SPCISP Ver.1.13 ソース (spcisp.exe,spc_usb.dll,spc_usb2.dll)
(Ver.1.12)AN2135SC用ドライバV1.10,Playxsvf対応高速版
2003.2.24 WindowsXPでは動作しません。
SPCISP Ver.1.10 Win32実行ファイル+各種ドライバーDLL
SPCISP Ver.1.10 ソース一式(含ドライバ)
Altera BitBlaster用追加ドライバー
Ver.1.0 Win32実行ファイル+各種ドライバーDLL
SPCISP Ver.1.0ソース
XilinxパラレルI/Fドライバーソース
AN2135SC(PRD-SM2)ドライバーソース
AN2131SC(USB-PDC)ドライバーソース ※FREE WINGさんご提供Ver.0.9 Win32実行ファイル Ver.0.9 ソースリスト