📄 readme.txt
字号:
Look at the ASCII version of the XSVF (generated with the -a option for the SVF2XSVF translator) and search for the XSDRSIZE command with the biggest parameter. XSDRSIZE is equivalent to the SVF's SDR length plus the lengths of applicable HDR and TDR commands. Remember that the MAX_LEN is defined in bytes. Therefore, the minimum MAX_LEN = ceil( max( XSDRSIZE ) / 8 ); The following MAX_LEN values have been tested and provide relatively good margin for the corresponding devices: DEVICE MAX_LEN Resulting Shift Length Max (in bits) --------- ------- ---------------------------------------------- XC9500/XL/XV 32 256 CoolRunner/II 256 2048 - actual max 1 device = 1035 bits FPGA 128 1024 - svf2xsvf -rlen 1024 XC18V00/XCF00 1100 8800 - no blank check performed (default) - actual max 1 device = 8192 bits verify - max 1 device = 4096 bits program-only XC18V00/XCF00 when using the optional Blank Check operation 2500 20000 - required for blank check - blank check max 1 device = 16384 bits micro.c: #define XSVF_SUPPORT_COMPRESSION This #define includes support for an XSVF compression mechanism that was used by the previous v2.00 SVF2XSVF translator. If you intend to execute v2.00 XSVF with compress, then make sure this is defined. Otherwise, the current v5.xx translator does not support this compression mode. You may omit this definition the code size and runtime memory requirements are reduced.Trouble-shooting: For XC18V00 failures, see readme_xc18v00_xcf00s.txt. Example playxsvf501.exe does not connect to the cable. - If iMPACT is running, iMPACT locks exclusive use of the parallel port. Close iMPACT, launch iMPACT, auto-initialize the chain, and close iMPACT to reset and disconnect iMPACT from the cable. - Try playxsvf501b.exe to see if it works with windrvr6.sys. The XSVF fails in the embedded implementation. - Use the Xilinx iMPACT software to see if it can program the devices on your board through the Xilinx Parallel Cable. - Use the bin\nt\playxsvf.exe with the Xilinx Parallel Cable from a PC to see if it can program the devices on your board with your XSVF file through the Parallel Cable. playxsvf has a verbose mode (-v level). If the XSVF player reports a mismatch at an XSVF command, it is reporting the XSVF command count. This is equivalent to the line number in the corresponding XSVF ascii (.txt) file which can be generated using the -a option for the svf2xsvf translator. - Create an XSVF file that performs only an IDCODE check ("Operation->Get Device ID"). This will verify the TAP functionality and communication. - Create separate XSVF files for erase-only, blank-check-only, program-only, and verify-only to narrow the error region. Use the playxsvf example compiled for the Simulator target to see the TAP transitions. Make sure the compiler is not optimizing out empty timing loops that you may have inserted as the implementation of the waitTime function. Timing should be within +/- 25% for robust programming. Check Xilinx Solution Records at http://support.xilinx.com.----------------------------------------------------------XAPP058 - SVF2XSVF Translator and Reference C Code History----------------------------------------------------------v5.01: Added setPort( TCK, 0 ); to waitTime() function in PORTS.C to ensure that TCK is returned to 0 (at least once) at the beginning of a Run-Test/Idle wait period for the XC18V00/XCF00. This addition is required for implementations that do NOT toggle TCK during the wait period. The SVF2XSVF 5.02 translator made backward-compatible with v4.xx XSVF player for the XC18V00/XCF00S devices. (See readme_xc18v00_xcf00s.txt for more XC18V00/XCF00S information!!!)v5.00: Improved SVF STATE command support. Added XWAIT command for on-demand wait instead of pre-specified XRUNTEST. XWAIT also required for CoolRunner/II. The "extensions", that were previously only enabled via the XSVF_SUPPORT_EXTENSIONS macro, is made a standard part of the XSVF player.v4.14: Support XCOMMENT XSVF command for storing SVF comments and/or line numbers in the XSVF.v4.11: SVF2XSVF translator update only--no changes to XSVF player C code. Add -multiple_runtest option for iMPACT CoolRunner SVF.v4.10: Add new XSIR2 command that supports IR shift lengths > 255 bits.v4.07: [Add Notes] Add notes and code examples for the waitTime function in the ports.c file that satisfy the TCK pulse requirements for the Virtex-II.v4.06: [Bug Fix] Fixed xsvfGotoTapState for problem with retry transition.v4.05: [Bug Fix] Fixed backward compatibility problem of previous "alpha" and "beta" versions which did not work with some older XC9500 devices. Fix required XSVF player C source code and svf2xsvf translator modifications. [Enhancement] Added XENDIR and XENDDR commands to support XPLA devices. [Enhancement] Re-wrote micro.c (and lenval.c) due to new TAP transition strategy and to cleanup old code. (Ports.c remained the same.) [Enhancement] svf2xsvf -v2 option provides excellent backward compatibility for running new XSVF on old v2.00 XSVF player. Works for XC9500/XL devices. For newer devices (XC18V00 and XPLA3), assumes XSDRTDO bug when XSDRSIZE==0 was fixed in old player.v4.00 - v4.04 "beta": [New Device] Support XC18V00 and XPLA SVF without SirRunTest preprocessor. [New Device] Added XSTATE command to support CoolRunner devices. [Bug Fix] svf2xsvf translator fixed bug in which FPGA bitstream could be corrupted (by previous translators). [Enhancement] svf2xsvf translator re-written. The single svf2xsvf translator performed function of previous svf2xsvf and xsvf2ascii. That is, svf2xsvf output both the XSVF file as well as the ASCII text version. [Enhancement] svf2xsvf translator freed from shared library dependencies. [Enhancement] svf2xsvf translator improves translation speed for large FPGA SVF files by greater than 10x. [Change] svf2xsvf translator no longer supported XC9500's XSVF compression technique. Use svf2xsvf v2.00 to compress XC9500 SVF files.eisp_1800a ("alpha"): [New Device] Modified v2.00 solution to support XC18V00 and CoolRunner devices. Used existing v2.00 svf2xsvf translator and supplemented with the SirRunTest preprocessor to prepare XC18V00/XPLA SVF files for the XSVF format. [New Device] XSIR command in XSVF player C source code modified to wait for pre-specified RUNTEST time after shifting if RUNTEST time was non-zero. If RUNTEST time was zero, XSIR ended in Update-IR state so that next command would skip Run-Test/Idle on way to next shift state. The wait was required for XC18V00 and XPLA devices. The skip of Run-Test/Idle was required for the XPLA devices. [Bug Fix] Fixed bug in XSVF player C code so that an XSDR or XSDRTDO executed with a pre-specified XSDRSIZE value of zero skipped any kind of TAP transition and only waited for the pre-specified RUNTEST time in the Run-Test/Idle state. The v2.00 translator performed this sequence when an arbitrary wait was required. But, the v2.00 XSVF player C source code errantly shifted one bit even though zero bits were specified. [Bug Fix] Fixed bug in which XSDRTDOC and XSDRTDOE called the function that performed the XSDRTDOB operation.v2.00: [New Device] svf2xsvf, xsvf2ascii, and XSVF player C code updated to support FPGA bitstreams (i.e. chunking of long SDRs) in SVF.pre-v2.00: [Feature] svf2xsvf translator converted SVF to binary XSVF format. [Feature] xsvf2ascii debugging translator converted binary XSVF format to human-readable ASCII text format. [Feature] XSVF player C code supported XC9500 and XC9500XL CPLDs.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -