Hello,
as said in a previous thread I get warnings like
Warning svf: command TIR not implemented
Warning svf: command TDR not implemented
Warning svf: command HIR not implemented
Warning svf: command HDR not implemented
when using jtag to program a FPGA with a svf file created
by Xilinx impact. The concrete case is a Digilent Nexys2 board
which has a JTAG chain like
TDI -> FPGA(xc3s1200e) -> PROM(xcf04s) -> TDO
This chain definition was given to impact when the svf file
was created, specifically the impact commands
setMode -bs
setCable -port svf -file sys_tst_rlink_n2.svf
addDevice -p 1 -file sys_tst_rlink_n2.bit
addDevice -p 2 -file /mnt/data/opt/Xilinx/12.1/ISE_DS/ISE/xcf/data/xcf04s.bsd
program -p 1
Impact creates a svf file which contains TIR. TDR, HIR, and
HDR commands, many have a length of 0, but not all. The full
svf file is appended, only the "SDR 3841375 ..." command which
contains the actual FPGA bitstream is abbreviated.
I was a little astonished that jtag requires to specify
with a 'part' command which device to be programmed.
I thought that the svf file describes already the full
chain and can therefore be applied without stating which
device to target (this was after all already specified
when the svf was created with impact).
I seems to me that the 'svf' command in jtag
1. ignores the TIR. TDR, HIR, HDR commands, which are
apparently used by impact to describe the parts of
the chain to be skipped over
2. somehow adds proper padding based on the chain
position specified with the 'part' command
I'm not very familiar with the svf files, but if that's true it
seems to me a bit against the spirit of the svf format, at
least as impact uses it.
The second last SIR command with a length of 14 targets both devices
in the chain. That seems to collide with the logic described above
and as a consequence this SIR command it fails with
Error svf: SIR command length inconsistent
With best regards,
Walter
---------------
here the complete svf file:
// Created using Xilinx Cse Software [ISE - 12.1]
// Date: Mon Jul 11 22:04:52 2011
TRST OFF;
ENDIR IDLE;
ENDDR IDLE;
STATE RESET;
STATE IDLE;
FREQUENCY 1E6 HZ;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 8 TDI (ff) SMASK (ff) ;
HDR 1 TDI (00) SMASK (01) ;
TDR 0 ;
//Loading device with 'idcode' instruction.
SIR 6 TDI (09) SMASK (3f) ;
SDR 32 TDI (00000000) SMASK (ffffffff) TDO (f1c2e093) MASK (0fffffff) ;
//Boundary Scan Chain Contents
//Position 1: xc3s1200e
//Position 2: XCF04S
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
TIR 0 ;
HIR 8 TDI (ff) SMASK (ff) ;
HDR 1 TDI (00) SMASK (01) ;
TDR 0 ;
//Loading device with 'idcode' instruction.
SIR 6 TDI (09) ;
SDR 32 TDI (00000000) TDO (f1c2e093) ;
//Loading device with 'bypass' instruction.
SIR 6 TDI (3f) ;
// Loading device with a `jprogram` instruction.
SIR 6 TDI (0b) ;
// Loading device with a `cfg_in` instruction.
SIR 6 TDI (05) ;
RUNTEST 14000 TCK;
// Loading device with a `cfg_in` instruction.
SIR 6 TDI (05) ;
SDR 95 TDI (000000000000000000000000) SMASK (7fffffffffffffffffffffff) ;
SIR 6 TDI (05) ;
SDR 3841375 TDI (0000000200000.. snip snip snip .....fffffffffff) ;
// Loading device with a `jstart` instruction.
SIR 6 TDI (0c) ;
RUNTEST 13 TCK;
//Loading device with 'bypass' instruction.
SIR 6 TDI (3f) ;
//Loading device with 'bypass' instruction.
SIR 6 TDI (3f) ;
TIR 0 ;
HIR 8 TDI (ff) ;
HDR 1 TDI (00) ;
TDR 0 ;
TIR 0 ;
HIR 8 TDI (ff) ;
HDR 1 TDI (00) ;
TDR 0 ;
// Loading device with a `jstart` instruction.
SIR 6 TDI (0c) ;
RUNTEST 13 TCK;
//Checking done pin status.
//Loading device with 'Bypass' instruction.
SIR 6 TDI (3f) TDO (21) MASK (20) ;
TIR 0 ;
HIR 0 ;
TDR 0 ;
HDR 0 ;
SIR 14 TDI (3fff) SMASK (3fff) ;
SDR 2 TDI (00) SMASK (03) ;
------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
UrJTAG-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/urjtag-development