Return to Support Page
 homesearchagentssupportask xilinxmap

Answers Database


BOUNDARY SCAN/JTAG: How to do connsecutive readbacks via the JTAG interface in the XC4K/XC5K devices in XACT 5.x, 6.x


Record #941

Problem Title:
BOUNDARY SCAN/JTAG: How to do connsecutive readbacks via the JTAG
interface in the XC4K/XC5K devices in XACT 5.x, 6.x



Problem Description:
Keywords: boundary scan, jtag, xc4000, xc4k, xc4000e, xc5k,
xc5200, readback, consecutive

Urgency: standard

General Description:

The procedure for performing consecutive readbacks via the
JTAG interface for the XC4K/XC5K devices.



Solution 1:

1. For the XC5200 Start Here:

If you are attempting to do readback via the TAP in the
XC5200, skip down to step 3A.

1A. For the XC4000 or XC4000E Start Here:

In your schematic, or top-level synthesis design, instantiate the BSCAN and READ
BACK symbols.

2.

Connect the BSCAN symbol pins TDI, TMS, TCK, and TDO to the
boundary scan pads TDI, TMS, TCK, and TDO, respectively.

3.

Next, connect the net between the TCK pad and TCK pin on the
BSCAN symbol to an IBUF.  Take the output of the IBUF and
connect it to the CLK pin of the READBACK symbol. This
drawing can be obtained from the Xilinx hotline via fax.
Note: This is available in the CRC

3A.

Note, for the XC5200 family, drawing this connection in your
schematic or HDL code will not work, due to ppr.  If you
want to do connsecutive readbacks via the TAP in the XC5200
family, then you must connect the bscan symbol and readback
symbols by using XDE.

After placing and routing your design, load your .lca file
from ppr into XDE and enter the EditLCA program.

Next follow the procedures below (Note, <ENTER> points to the
enter/return key on your keyboard):

(a)

eb bscan <ENTER>

This will bring you into the editblock window for the bscan
symbol for the 5k.


(b)
In the editblock window, select the 'used' option, which is
in the upper left hand corner of the screen.

(c)
endb <ENTER>

This brings you back to the EditLCA screen.

(d)
addnet username tckpin.i rdbk.ck <ENTER>

,where tckpin is the pin number of your 5200 device.  For
example, if you're design was a 5202PC84, then the above
command line would be:

addnet username p16.i rdbk.ck <ENTER>

(e)
At this point you should see a net go from the TCK pin
to the ck pin of the readback symbol.

(f)
Save your chagnes to the .lca file and exit XDE.

4.

After entering the above circuit, compile the design to an
.lca file.

5.

Make the .bit file for the .lca file by using the following
option with makebits:


-f readclk:rdbk

For example, at a unix prompt:


% makebits -f readclk:rdbk designame

6.

Now the FPGA is ready to perform connsecutive readbacks.

READBACK is performed by loading the IR with the READBACK
instruction and then shifting out the captured data from the
shift-dr state in the TAP.

Perform the first readback by loading the IR with the
READBACK instruction.  This first readback must be finished,
which means shifting out the *entire* readback bitstream.  To
be safe, shift out the entire bitstream and then send three
additional TCK's.

7.

After performing the first readback, another readback can be
performed by going to the test-logic-reset state, and
re-loading the READBACK instruction and performing the
READBACK as described in the previous paragraph.

In summary, connsecutive readbacks are performed by
starting from test-logic-reset, loading the IR with the
READBACK instruction, shifting out the readback bitstream
plus three additional TCK's, and then going back to the
test-logic-reset state.


Alterantively, if you do not want to go back to the
test-logic-reset state, realize that after shifting out
readback bitstream, a minimum of 3 additional clocks are
needed on the readback register.  So, after doing a readback,
instead of going back to test-logic-reset, a user can opt to
execute some other JTAG instruction, and then perform another
readback.


Additional Notes:

A hard copy of the BSCAN to READBACK connection is availble on request.  It is a
vailable in the CRC

Also, this above procedure is only needed if you intend to do
more than 1 readback.  If you intend only to do a readback
once, then connection between the BSCAN symbol and the
READBACK symbol is not needed. In that case, all that is
needed is the BSCAN symbol instantiated with the boundary
scan pads(TDI, TMS, TCK, & TDO) on the top-level of the
design.



End of Record #941

For the latest news, design tips, and patch information on the Xilinx design environment, check out the Xilinx Expert Journals!

© 1998 Xilinx, Inc. All rights reserved
Trademarks and Patents