Spartan3EのBSDLファイル
Spartan3E Saple PackのCDにあるWebPACK7.1をインストールしてみたところ、WebPACK7.1に入っているSpartan3EのBSDLファイルが正しくないようです。
MITOUJTAGでバウンダリスキャンを行う場合に、WebPACKやサポートパックをインストールした際に入っているBSDLファイルを使うと、バウンダリスキャンが正しくできないどころか、回路にダメージを与える危険性があります。
なお、iMPACTで書き込みを行うだけなら問題はないと思われますが、より高度なJTAGの使い方をする場合は、ご注意ください。
Spartan3EのBSDLファイルは、
WebPACK7.1に入っている
・xc3s100e_tq144.bsd バージョン1.1.1.2、2005年2月10日
サービスパックに入っている
・xc3s100e_tq144.bsd バージョン1.3 2005年8月26日
と、XILINXのサイトからダウンロードしたもの、
・xc3s100e_tq144.bsd バージョン1.5 2005年12月15日
があります。
結論を言うと、12月15日版のバージョン1.5のBSDLファイルが最も正しいようです。
古い1.3などBSDLファイルには誤りがあるので、正しくバウンダリスキャンができません。
どこが違うかを調べてみると、WebPACK7.1に最初から入っているバージョン1.1.1.2のBSDLファイルでは、まず、JTAGの命令コードが違いました。
バージョン1.3
"EXTEST (001111)," &
"SAMPLE (000001)," &
"IDCODE (001001)," &
バージョン1.1.1.2
"EXTEST (111100)," &
"SAMPLE (100000)," &
"IDCODE (100100)," &
つまり、古いBSDLファイルでは、ビットの上下が逆転して記述されているようです。
また、各入出力端子の記述のうち、端子の出力を禁止するレジスタの値(DISVAL)が、バージョン間で異なっています。
***** xc3s100e_tq144_1_3.bsd
" 270 (BC_1, PAD28, INPUT, X),"&
" 269 (BC_1, PAD28, OUTPUT3, X, 268, 0,Z),"&
" 268 (BC_1, *, CONTROLR, 1,),"&
***** XC3S100E_TQ144_1_1_2_1.BSD
" 270 (BC_1, PAD28, INPUT, X),"&
" 269 (BC_1, PAD28, OUTPUT3, X, 268, 0,Z),"&
" 268 (BC_1, *, CONTROL, 0),"&
*****
バージョン1.5のBSDLファイルではその極性が正しくなっています。
***** xc3s100e_tq144_1_5.bsd
" 270 (BC_1, PAD28, INPUT, X),"&
" 269 (BC_1, PAD28, OUTPUT3, X, 268, 1, PULL1),"&
" 268 (BC_1, *, CONTROLR, 1),"&
***** XC3S100E_TQ144_1_3.BSD
" 270 (BC_1, PAD28, INPUT, X),"&
" 269 (BC_1, PAD28, OUTPUT3, X, 268, 0,Z),"&
" 268 (BC_1, *, CONTROLR, 1,),"&
*****
つまり、
・バージョン1.1.1.2 → JTAG操作不可
・バージョン1.3 → 入出力の極性の定義が逆転
・バージョン1.5 → 正しい
ということで、Spartan3Eのバウンダリスキャンを行う際には、極力新しいBSDLファイルを使うようにする必要があるようです。さもないと、EXTESTの際に入出力が逆転して機器を損傷する危険があります。
参考までに、バージョン1.3のBSDLファイルを使ってバウンダリスキャン(SAMPLE)した際の画面を載せます。
バウンダリスキャンで観ると、ほとんどの信号が出力として認識されている(実際には入力またはHi-Zである)のがおわかりかと思います。
Spartan3Eをバウンダリスキャンする際には、是非とも
XILINXのサイトから最新のものをダウンロードしてご利用ください。
この問題、最初はSpartan3Eのsteppingの関係かと思いましたが、Spartan3E Sample Packで使われているFPGAは、"4CES"とマーキングされています。つまり、このFPGAはES品で、Stepping 0に相当するようです。それに、データシートによれば2005年の11月時点ではまだStepping 1の製品は出ていないようです。よって、BSDLファイルの問題はSteppingとは関係がなさそうです。
XILINXさんをはじめとして、JTAG対応デバイスのベンダーさん。
(有)ナヒテックは、次世代のJTAG技術を専門に開発しているベンチャー企業です。
もし(有)ナヒテックにご連絡いただければ、リリース前でもBSDLファイルを検証させていただきます。ぜひともご検討ください。
| 固定リンク
コメント