フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
webadm | 投稿日時: 2006-5-21 20:15 |
Webmaster 登録日: 2004-11-7 居住地: 投稿: 3094 |
Jam STAPL Player他 JTAGをいろいろ試すには最低限JTAGケーブルがあればソフトウェアでTCK,TMS,TDIを操ってTDOを読み出すのが一般的である。
JTAGケーブルはALTERAやXILINX、LATTICEなどがそれぞれ独自の仕様のものを売っていたり仕様をある程度公開しているので買うか自作することが簡単にできる。 しかしソフトウェアになるとちょっとゼロから作るのは誰にとってもハードルが高い。何が正しいのかわからないし、ケーブルやターゲットの回路の相性とかでうまく読み出せない時にはなおさら出口の見えない泥沼に入ることになる(既に経験済み) そこで誰か最初にそういうソフトウェアを書いた人がいればそれを公開してくれればだいぶ敷居が低くなると誰しも考えるはず。 実はそういうのが世の中にはいくつかある。中でも信用がおけるのがALTERAがJTAGの基本的な操作がプログラムできるJam STAPL PlayerというBASIC風の言語(STAPL)インタプリターをソースコード付きで公開してくれている。サポートしているJTAGケーブルはALTERAのパラレルケーブル(ByteBlaster系)とシリアルケーブル(BitBlaster)、XILINXやLATTICEのJTAGケーブルなどと気が利いている。どれかひとつもっていればよいことになる。 Jam STAPL PlayerはSTAPLで書かれたテキストソースかあらかじめコンパイルされたバイトコードのどちらでも実行できる。STAPLのコンパイラも別途提供されていてALTERAのサイトからダウンロードすることができる。 それとSTAPLで書かれたサンプルソースもあるので、実際に実行して試してみることができる。今回はIDCODEというデバイスIDを読み出すプログラムを実行してみた。これは新しく作ったFPGA/CPLDボードでJTAGが正しく機能するかテストするのに有用である。というのも最新のデザインツールとかはJTAGの操作が失敗しても詳しいトラブル解析のための情報はほとんど表示してくれないので、試作したボードの設計がまずかった時にはお先真っ暗になる(既に経験済み) 実際に今回自作したFLEX10KボードでIDCODEを試してみた結果は以下の通り。 引用:
インチキケーブルやインチキボードで同じことを実行すると以下のようにエラーに遭遇しその原因が表示される。 引用:
もちろんJam STAPL PlayerはIDCODE以外にもほとんどすべての標準のJTAG命令を利用したバウンダリースキャンテストをプログラムすることができる。なのでJTAGが誤動作する原因を探る場合には利用することができる。 今回のテーマではハードウェアで同様のことをやってしまおうという無謀な計画である。実際にどうJTAGを操作すればよいかはこのJam STAPL Playerをお手本にしてやってみることにする。 ALTERAからこのソフト以外は得に役立つドキュメントとかは提供されていないが、XILINXからはJTAGの基本的な動作やそれを使ったJTAGのトラブルシューティングに関する解説ドキュメント(JTAG Programmer Guid)が提供されている。それにはXILINXのJTAGケーブルの回路図も含まれている。それらも併せて読むとよりJTAGについて理解が深まると思われる。 |
フラット表示 | 前のトピック | 次のトピック |
題名 | 投稿者 | 日時 |
---|---|---|
ウォーミングアップ後のテーマはJTAG Waveform emulator(中止) | webadm | 2006-5-18 16:01 |
まずはJTAGの標準規格書を入手することから | webadm | 2006-5-19 22:04 |
とりあえずざっと読み終えた | webadm | 2006-5-20 3:59 |
» Jam STAPL Player他 | webadm | 2006-5-21 20:15 |
「バウンダリスキャン講座」発見 | webadm | 2006-6-5 3:14 |
読書中 | webadm | 2006-6-10 1:56 |
読書完了 | webadm | 2006-6-11 23:39 |
HDL記述の自由度 | webadm | 2006-6-12 20:44 |
なんだか | webadm | 2006-6-24 2:39 |
投稿するにはまず登録を | |