Mon, 13 Jun 2005

JTAG の練習。

仕事で XC9500 シリーズの PLD を使うことになり、ナヒテックさんのNAXJPを使ってみました。

Xilinx の WebPack に付属する書き込みソフト(Impact) はかっちょいいのですが、重いし、WebPack 自体、Windows2000 以降にしかインストールできないようでちょっと不便だったのですが(仕事場は Win98)、NAXJP での書き込みは快適です。Altera の ByteBlasterMV ケーブルも使えて、素晴らしいです。

ちょっと JTAG に興味がわいたので、Amazon で 「JTAG」 で検索して引っかかった「JTAGテストの基礎と応用」 を買ってきて勉強中です。

この本の内容のほとんどコピペですが、JTAG をたたくソフトを作ってみました。

ショボイ機能しかないので、「(・ω・) JTAG」(shobon-JTAG)です。週末で仕事場に行ってないので、手元にあった Altera の Cyclone (EP1C12)+ ByteBlaster相当回路つきブレッドボード でしか試していませんが、IR Capture と、Sample コマンドは 動作しているようです。

本体は C# で書いてあります。個人では 2000 系の OS を使っているので、パラレルポートアクセス用として giveio.sys を使用しており、オープンと inp() outp() だけ C で書いた DLL になっています。

お遊び用の貴重な Cyclone(w を壊してはたまらないので、実行させながら各信号がドライブされるのを見ていると、IR-Capture を何回か実行すると急に TCK の周期が早くなるのに気づきました。.NET Framework の JIT とかいう奴の効果でしょうか。

手持ちのノートPC(Pentium-M 1.6G)ですと、何度か実行すると周期が 20us->2us くらいになります。inp(),outp() のたびにWin32 DLL を呼び出している割には早いですね。っていうか、何のウェイトも考えずに作ったので、C#(.NET) で書かなかったら早すぎて使い物にならんかったかも。

というわけで、今のところローカルな環境でしか試していませんが、そのうち XC9500 のピン検査ができるようになる、といいなあ(w

SAMPLE コマンドや DR の長さがハードコードしてあって本当に(・ω・)なのですが、とりあえずおいときます。必要な方はソースを修正(ハードコード部分、Wait 等)して遊んでください。ライセンスは GPL です。

当然ですが、このコードを使用したことによって発生する損害に対して、一切の保障はしません。あしからず。

★shobon-JTAG ダウンロードは新エントリ:shobon-JTAG 2005.7.5からどうぞ。

posted at: 07:00 | permanent link