diff --git a/jtag/README.svf b/jtag/README.svf new file mode 100644 index 00000000..ad19c81b --- /dev/null +++ b/jtag/README.svf @@ -0,0 +1,155 @@ +$Id$ + +SVF Player for JTAG Tools +~~~~~~~~~~~~~~~~~~~~~~~~~ + +This README describes the SVF player of the JTAG Tools software package. + +The player has been developed according to the "Serial Vector Format +Specification", Revision E, 8 March 1999 issued by ASSET InterTech, Inc. The +full specification can be found at + + http://www.asset-intertech.com/support/svf.pdf + + +Copyright +--------- + +SVF player is copyright 2004, Arnim Laeuger. + +Parser and lexer are also copyright 2002, CDS at http://www-csd.ijs.si +They have been reused from the "Experimental Boundary Scan" project at + + http://ebsp.sourceforge.net/ + +The SVF player is free software, covered by the GNU General Public License, +and you are welcome to change it and/or distribute copies of it under certain +conditions. There is absolutely no warranty for this software. +Please read the file COPYING for more info. + + +Usage +----- + +The SVF player operates on a single part in the scan chain. Therefore, you +have to bring up the JTAG Tools software, specify a cable and detect the scan +chain beforehand. + +The player will establish a new instruction called "SIR" and a new register +called "SDR". They are used internally by the respective SVF commands and are +reassigned with new values as the player advances through the file. It is not +recommended to use them outside of the SVF player as their content is dynamic. + + +Example session: + +jtag> cable ppdev /dev/parport0 DLC5 +Initializing Xilinx DLC5 JTAG Parallel Cable III on ppdev port /dev/parport0 + +jtag> detect +IR length: 5 +Chain length: 1 +Device Id: 10010000101000100000000010010011 + Manufacturer: Xilinx + Part: XC2S300E-PQ208 + Stepping: 9 + Filename: /usr/local/share/jtag/xilinx/xc2s300e-pq208/xc2s300e-pq208 + +jtag> part + +jtag> svf + +jtag> instruction BYPASS + +jtag> part + +jtag> svf + +jtag> instruction BYPASS + +... + + +It is recommended to set the part's instruction register to BYPASS although +most SVF files do this at the end. By setting the instruction explicitely to +BYPASS the output of the print command will always show meaningful +information. + +The SVF player will issue messages when situations arise that cannot be +handled. These messages are classified as warnings or errors depending on +whether the player can continue operation (warning) or not (error). + +In case the TDO parameter of an SDR command leads to a mismatch the player +issues a warning and continues. If the player should abort in this case then +specify 'stop' at the svf command. + + +Limitations and Deficiencies +---------------------------- + +Several limitations exist for the SVF player. + +It has been tested with files generated by these tools so far: + + Xilinx ISE WebPack 6.3.02i + + Altera Quartus II 4.1sp1 + +Configuration for these devices has been tested so far: + + Xilinx Spartan-IIE, XC2S300E-PQ208 + + Altera MAX3032, EPM3032ALC44 + + Altera MAX3064, EPM3064ALC44 + +The player has not been tested with scan chains containing more than one part. + +The implementation of some SVF commands has deficiencies. + - HIR, HDR + Commands not supported. + Their functionality should be covered by the part concept of JTAG Tools. + + - PIO + Command not supported. + + - PIOMAP + Command not supported. + + - RUNTEST + SCK not supported. + The maximum time constraint is not guaranteed. + + - SIR + Parameter SMASK is not considered. + No check is done against the TDO parameter. + + - SDR + Parameter SMASK is not considered. + + - TRST + Parameters Z and ABSENT are not supported. + + - TIR, TDR + Commands not supported. + Their functionality should be covered by the part concept of JTAG Tools. + +Warning and error messages don't mention the line in the SVF file where the +issue was detected. + +Operation is slowed down significantly when the FREQUENCY command has been +specified. +This is not a problem of the SVF player itself but seem to happen when the +frequency of JTAG Tools is set to a value larger than 0. Configuration takes +very long although the maximum allowed frequency is 10 MHz. +Consider to comment out the FREQUENCY command at the beginning of the SVF +file. + + +Contact +------- + +Sharing your experience with this software is highly welcome. + +Please direct issues either to the openwince-list mailinglist at + + http://lists.sourceforge.net/mailman/listinfo/openwince-list + +or contact me directly + + arniml users.sourceforge.net diff --git a/jtag/include/svf.h b/jtag/include/svf.h new file mode 100644 index 00000000..56e99e06 --- /dev/null +++ b/jtag/include/svf.h @@ -0,0 +1,30 @@ +/* + * $Id$ + * + * Copyright (C) 2004, Arnim Laeuger + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + * 02111-1307, USA. + * + * Written by Arnim Laeuger , 2004. + * + */ + +#ifndef SVF_H +#define SVF_H + +void svf_run(FILE *, int); + +#endif /* SVF_H */