Using In-System Programming in Boundary-Scan Systems: TAP Timing
Using In-System Programming in Boundary-Scan Systems: TAP Timing
Using In-System Programming in Boundary-Scan Systems: TAP Timing
Summary
This application note discusses basic design considerations for in-system programming (ISP) of multiple XC9500 devices in a Boundary-Scan chain and shows how to design systems that contain multiple XC9500 devices as well as other IEEE 1149.1-compatible devices. Note: The Basic Boundary-Scan Design Guidelines and Debugging Boundary-Scan Systems
sections within this application note apply to all Xilinx devices that support Boundary-Scan.
Introduction
The XC9500 family performs both in-system programming and IEEE 1149.1 Boundary-Scan (JTAG) testing via a single 4-wire Test Access Port (TAP). This simplifies system designs and allows standard Automatic Test Equipment (ATE) to perform both functions. Xilinx also provides the software that programs and tests XC9500 devices.
TAP Timing
Figure 1 shows the timing relationships of the TAP signals. These TAP timing characteristics are identical for both Boundary-Scan and ISP operations. The timing for the INPUT-I/O-CLK and I/O signals is relevant to Boundary-Scan operations (such as EXTEST) that activate or strobe the system pins.
X-Ref Target - Figure 1
TCKMIN
TCK TMS
TMSS
TMSH
TDIS
TDIH
TDI TDO
TDOZX
TDOV
TDOXZ
TINS TINH
INPUT-I/O-CLK
TIOV
I/O
X070_01_042402
Figure 1:
1997, 2002, 2007 Xilinx, Inc. All rights reserved. XILINX, the Xilinx logo, and other designated brands included herein are trademarks of Xilinx, Inc. All other trademarks are the property of their respective owners.
www.xilinx.com
TAP AC Parameters
Table 1 shows the timing parameters for the TAP waveforms shown in Figure 1. Table 1: XC9500 Test Access Port Timing Parameters (ns)
Symbol TCKMIN TMSS TMSH TDIS TDIH TDOZX TDOXZ TDOV TINS TINH TIOV Parameter TCK Minimum Clock Period TMS Setup Time TMS Hold Time TDI Setup Time TDI Hold Time TDO Float to Valid Delay TDI Valid to Float Delay TDO Valid Delay I/O Setup Time I/O Hold Time EXTEST Output Valid Delay 15 30 55 Min 100 10 10 15 25 35 35 35 Max
Capacitive Decoupling
Decouple the VCC input with a 0.1 F capacitor connected to the nearest ground plane (lowinductance surface mount capacitors are recommended). Decouple the printed circuit board power inputs with 0.1 F ceramic and 100 F electrolytic capacitors. This helps to provide a stable, noise-free power supply to the ISP parts.
There are a number of possibilities for creating Boundary-Scan chains, several of which are discussed in the following sections. The single-port serial chain is the recommended topology for in-system programming via Xilinx iMPACT software and cables. Other more complex chain variations are also discussed. However, the Xilinx software does not directly support the more complex chain topologies. Some third-party Boundary-Scan tool vendors support these complex chain configurations. Only Boundary-Scan experts should attempt to use the more complex topologies.
System
Figure 2:
Star Configuration
The single port serial chain, shown in Figure 3, configuration has a significant limitation due to the possibility that a defect in the backplane wiring or the removal of a board from the system can break the chain. This would make ISP and system testing impossible. In order to overcome this limitation and make the 1149.1 standard practical for very large systems, the standard allows the connection of Boundary-Scan chains in star configuration in which the four pins of the TAP are multiplexed. The costs of this approach are the additional overhead required to switch between scan paths, and the reduced TCK frequency due to TMS routing delays.
www.xilinx.com
Device 1
MUX
Path 1
TDI TMS TCK Device 1 TDI TDO TMS TCK Device 2 TDI TDO TMS TCK Device N TDI TMS TCK TDO
System
Path 2
Select
TDO
DE-MUX
x070_03_042302
Figure 3:
Star Configuration
Caution! The external MUX and select hardware must disconnect the primary TMS or TCK from
the deselected scan chain to prevent unexpected behavior on the deselected scan chain.
TDI
TDI
TDO
x070_04_021907
Figure 4:
www.xilinx.com
In-System Programming
Parallel Chains
In the topology shown in Figure 5, TDI and TMS inputs are independent but the TDO is shared. This means that although data can be streamed into portions of the system independently, data being streamed out is time multiplexed through TMS control. Caution! This topology is not recommended for use with the Xilinx iMPACT software and cables.
X-Ref Target - Figure 5
TDI
TMS TCK
TMS
x070_05_042302
Figure 5:
Parallel Chains
In-System Programming
www.xilinx.com
The normal operating mode of a system or a device in the system is known as mission mode which is different from test mode. When operating a device in Boundary-Scan test mode (such as when using either INTEST or EXTEST) as well as when performing ISP operations, the device is effectively disconnected from the overall system. When the operation is completed, the device is re-connected to the system. This can sometimes result in unpredictable system behavior. Additional discussion regarding this problem can be found in [Ref 3]. Fortunately, the XC9500 family supplies two proprietary Boundary-Scan instructions that serve to alleviate this problem.
The ISPEX operation takes approximately 100 s to complete. If the ISPEX instruction is held in the instruction register for longer than 100 s, the ISPEX operation does not take effect until the ISPEX instruction is displaced from the instruction register. In order to ensure safe operation, all INTEST, EXTEST, and ISP operations involving the XC9500 parts should be bracketed by ISPEN and ISPEX instructions. The designer must also be careful to select an initial condition that is system-safe so that when the ISPEX instruction is released, the XC9500 part in question safely resumes operation with the rest of the system.
www.xilinx.com
Conclusion Provide the capability for the ATE to disable conventional (non Boundary-Scan) ICs whose run-time node values might introduce conflicts with Boundary-Scan logic values during test operations.
Verify that the entire system is held in a benign state during Boundary-Scan test operations. Verify that the set-up and hold times of TDI and TMS with respect to TCK are met by the system.
If the Initialize Chain operation does not identify any devices, then check for proper power to the devices in the Boundary-Scan chain, check the TCK and TMS signals for opens or shorts, and check the final TDO signal path for an open or short. If a fewer than expected number of devices are identified, then check for an open or short on the TDI pin of the first device shown in the iMPACT Boundary-Scan view. The first device in the Boundary-Scan view is the last device for which iMPACT received an IDCODE. A breach in the serial signal path preceding the device prevents iMPACT from identifying further devices.
The iMPACT Debug menu contains several items that help debug Boundary-Scan issues. The Chain Integrity Testing and IDCODE Looping functions in the Debug menu can help identify signal integrity issues in the Boundary-Scan chain. When traversing the IR states, the CAPTURE-IR value specified in the BSDL file is always shifted out on TDO at SHIFT-IR. This fact can be used to test Boundary-Scan chain continuity. After exit from Test-Logic-Reset, if the system transitions directly to Shift-DR, the values shifted out on TDO must be either the IDCODE (if implemented) or the BYPASS register contents. If all logic 0s are shifted in at TDI, then the first incidence of a logic 1 on TDO represents the first bit of an IDCODE. This fact can be used for blind interrogation of the Boundary-Scan chain and for further Boundary-Scan chain continuity checks. When entering ISP mode via the ISPEN instruction, all XC9500 function pins float to a weakly pulled-up high-impedance state. The pins can easily be tested for this behavior. When ISPEX is shifted out of the instruction register, the XC9500 devices should take on their programmed values with the functional pins acting immediately as inputs or outputs, as programmed. The pins can easily be tested for this behavior. TDO assumes its defined value at the falling edge of TCK. When not in SHIFT-IR or SHIFT-DR, TDO exhibits high-impedance. The last valid TDI bit clocks into the TAP with TMS High. In BYPASS mode, TDO equals the applied TDI data one TCK pulse earlier.
Conclusion
When designing ISP systems, common-sense rules related to electronic system design and board layout should be adhered to. In order to benefit from the synergies associated with the integration of test and programming operations, the designer must consciously design with the entire system life cycle in mind.
www.xilinx.com
References
References
1. IEEE 1149.1-199,0 Standard Test Access Port and Boundary-Scan Architecture. 2. Colin Maunder and Rod Tulloss, The Test Access Port and Boundary-Scan Architecture, ISBN: 0-8186-9070-4. 3. Kenneth P. Parker, The Boundary-Scan Handbook, ISBN: 0-7923-9270-1. 4. Harry Bleeker et al., Boundary-Scan Test - A Practical Approach, ISBN: 0-792-9296-5. 5. Hideo Fujiwara, Logic Testing and Design for Testability, ISBN: 0-262-06096-5. 6. M. Montrose, Printed Circuit Board Design Techniques, ISBN: 0780311310.
Revision History
The following table shows the revision history for this document.
Date 07/01/97 05/22/02 02/19/07 Version 1.0 2.0 2.1 Xilinx initial release. Revised release. Updated format. Removed references to the discontinued MultiLINX cable. Corrected connection in Figure 4, page 4. Basic Boundary-Scan Design Guidelines, page 6 updated. Revision
11/15/07
2.1.1
Notice of Disclaimer
Xilinx is disclosing this Application Note to you AS-IS with no warranty of any kind. This Application Note is one possible implementation of this feature, application, or standard, and is subject to change without further notice from Xilinx. You are responsible for obtaining any rights you may require in connection with your use or implementation of this Application Note. XILINX MAKES NO REPRESENTATIONS OR WARRANTIES, WHETHER EXPRESS OR IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION, IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT, OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL XILINX BE LIABLE FOR ANY LOSS OF DATA, LOST PROFITS, OR FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR INDIRECT DAMAGES ARISING FROM YOUR USE OF THIS APPLICATION NOTE.
www.xilinx.com