UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 5662

Virtex JTAG - デバッグ オプションで、JTAG を介して Virtex デバイスをコンフィギュレーションする方法

説明

キーワード : Virtex, JTAG, TAP, configure, configuration, program, programming, コンフィギュレーション, プログラム

重要度: 重要

概要:

Virtex チップは、専用の JTAG ピンを介してコンフィギュレーションできます。

ソリューション

1

There is a software requirement for configuring a single Virtex device via JTAG.
At a minimum, you must use A1.5i/F1.5i or better software when creating a
Virtex design that will be loaded via JTAG.

(1) Create a .bit file which uses the following option in bitgen.

bitgen -g startupclk:jtagclk designName.ncd
Where designName is the name of the routed ncd file.

If you do not do this the Virtex device will accept the bitstream, DONE
will be high and /INIT will be high, but the device will not respond to
stimulus. This option tells the Virtex device to use the JTAG clocks on the TCK
pin to finish the configuration process.

If you do not wish to use the TCK to clock the startup sequence then
you must use the STARTUP_VIRTEX symbol to attach a specific internal
clock net to be used for the startup sequence. Bitgen must then be
instructed to use the userclk for startup with the option -g:userclk

Failure to do either of these options will result in an incomplete device
configuration.

(2) After creating a bitstream as per step 1, prepare the Virtex device for
JTAG configuration. If you are using the JTAG Programmer software,
then do not read any further. If you are using a JTAG tester or writing your
own software, the following applys:

An individual Virtex device can be configured via JTAG in two different ways.

In the first method, an already configured Virtex device is re-configured
via JTAG by toggling the TAP and entering the CFG_IN instruction. In the
second method, an individual Virtex device is configured after
power-up via JTAG exclusively.

If you are configuring a Virtex device via JTAG only, then it is
reccomended to set the mode pins of the Virtex device to 101
(M2=1,M1=0,M0=1 NOPULLUPS) or 001 (M2=0,M1=0,M0=1 PULLUPS).
If you do not set the mode pins to 101 or 001 before power-up, you risk
accidental configuration in another mode.

(3) After physically preparing the individual Virtex device, and creating the
bitstream with the correct bitgen options, follow these instructions to load the bitstream.

(a) On power-up, place a '1' on TMS and clock TCK five times. This takes the
TAP through the Test-Logic-Reset (TLR) state.

(b) Move to the Shift-IR state.

(c) In the Shift-IR state, load the CFG_IN instruction.

(d) Go to the Shift-DR state and shift in the Virtex bitstream. When the entire
bitstream has been shifted in, leave the Shift-DR state and go to the
Test-Logic-Reset state.

(e) From the Test-Logic-Reset state, go to Shift-IR and load in the JSTART
instruction. After loading the JSTART instruction, go to the Shift-DR
state and apply at a minimum 10 clocks to TCK.

(g) After applying the clocks to TCK, return to Test-Logic-Reset.

The device will now be functional.

2


各 Virtex デバイスでの JTAG コンフィギュレーションのトラブルシュート

Virtex デバイスでは TAP は常にアクティブで、問題が発生した場合に使用できます。 JTAG コンフィギュレーション モードでは、DONE は JTAG コンフィギュレーション モード以外の場合と同じ操作を実行します。 Virtex を使用した JTAG コンフィギュレーション モードの場合、DONE ピンはビットストリームがデバイスに正しくロードされたかを監視しています。 DONE が Low の場合、3 つの状況が考えられます。 ビットストリームすべてが送られていない場合、ビットストリームがすべて送られたが、スタートアップ シーケンスが終了していない場合、あるいはエラーが発生した場合。 DONE が High の場合、Virtex デバイスはビットストリーム全体を受け入れていて、ビットストリームは破損していないことを示します。

DONE が High でなく、jtagclk のビットストリームが -g オプションを使用して作成され、JSTART 命令が既に実行されている場合、ビットストリームのエラーが検出されている可能性があります。 Virtex デバイスで JTAG コンフィギュレーション以外を使用した場合、このタイプのエラーが /INIT ピンから発生します。 Virtex JTAG コンフィギュレーションでは、外部 /INIT ピンはステータス レポートには使用されません。 内部の /INIT 信号は表示できます。 DONE ピンが Low で Virtex の JTAG コンフィギュレーションを終了した場合、次に従って、ビットストリームでのエラーの有無を確認してください。

(a) TAP を TLR ステートにします。
(b) CFG_IN 命令をロードします。
(c) Shift-DR ステートで、この 64 ビットのパターンをシフトインします。

2 8 0 0 E 0 0 1 0 0 0 0 0 0 0 0
0010 1000 0000 0000 1110 0000 0000 0001 0000 0000 0000 0000 0000 0000 0000 0000
^
|
このビットからデータのシフトインを実行します。

(d) CFG_OUT 命令をロードします。
(e) Shift-DR で、TDO を読み込み中に TCK が 32 回クロックを供給します。

データは STATUS レジスタの内容です。 CRC のエラーが発生した場合、最後のビットは 1 となります。 32 ビットのコンフィギュレーションが問題なく終了した場合、次のようになります。


0000 0000 0000 0000 0 1 1 111 1 1 0 1 0 1111 0
^
|
CRC_ERROR ビット

右端にあるビットは最後にシフトアウトされたビットです。 上記の値と異なる場合は、コンフィギュレーションに問題がある可能性があります。 STATUS レジスタのビットに関する詳細は、(アプリケーション ノート XAPP151) を参照してください。
AR# 5662
日付 02/10/2007
ステータス アーカイブ
種類 一般
このページをブックマークに追加