Using the XSV Board Xchecker Interface

Similar documents
2608 Sweetgum Drive Apex NC Toll-free: International: FAX: How to install and use your new XStend Board

Universal ByteBlaster

Memec Spartan-II LC User s Guide

COE758 Xilinx ISE 9.2 Tutorial 2. Integrating ChipScope Pro into a project

Device 1 Device 2 Device 3 Device 4

Using the XC9500/XL/XV JTAG Boundary Scan Interface

Flip-flop and Registers

CHAPTER 3 EXPERIMENTAL SETUP

Spartan-II Development System

VHDL Upgrading of a TNT2 card

Section 24. Programming and Diagnostics

Programmable Logic Design I

Lecture 6: Simple and Complex Programmable Logic Devices. EE 3610 Digital Systems

CoLinkEx JTAG/SWD adapter USER MANUAL

Tools to Debug Dead Boards

Lab 4: Hex Calculator

HDL & High Level Synthesize (EEET 2035) Laboratory II Sequential Circuits with VHDL: DFF, Counter, TFF and Timer

Testing Sequential Logic. CPE/EE 428/528 VLSI Design II Intro to Testing (Part 2) Testing Sequential Logic (cont d) Testing Sequential Logic (cont d)

PicoBlaze. for Spartan-3, Virtex-II, Virtex-IIPRO and Virtex-4 devices. JTAG Loader. Quick User Guide. Kris Chaplin and Ken Chapman

Section 24. Programming and Diagnostics

Ilmenau, 9 Dec 2016 Testing and programming PCBA s. 1 JTAG Technologies

Ryerson University Department of Electrical and Computer Engineering EES508 Digital Systems

Remote Diagnostics and Upgrades

7 Nov 2017 Testing and programming PCBA s

SignalTap Plus System Analyzer

Spartan-IIE LC Development Board User s Guide

of Boundary Scan techniques.

Lab 3: VGA Bouncing Ball I

Figure 1 Block diagram of a 4-bit binary counter

RF Solution for LED Display Screen

Comparing JTAG, SPI, and I2C

Saving time & money with JTAG

3. Configuration and Testing

EEM Digital Systems II

Using SignalTap II in the Quartus II Software

STATIC RANDOM-ACCESS MEMORY

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences

FPGA-BASED EDUCATIONAL LAB PLATFORM

Lab 6: Video Game PONG

4:1 Mux Symbol 4:1 Mux Circuit

AN ADVERTICING MODUL, DEVELOPED ON THE BASE OF A CPLD PROGRAMABLE DEVICE

XJTAG DFT Assistant for

18 Nov 2015 Testing and Programming PCBA s. 1 JTAG Technologies

Virtex-II Pro and VxWorks for Embedded Solutions. Systems Engineering Group

Sundance Multiprocessor Technology Limited. Capture Demo For Intech Unit / Module Number: C Hong. EVP6472 Intech Demo. Abstract

Embest Emlink for ARM Cortex-M3. User Manual

Overview of BDM nc. The IEEE JTAG specification is also recommended reading for those unfamiliar with JTAG. 1.2 Overview of BDM Before the intr

Raspberry Pi debugging with JTAG

SERDES Eye/Backplane Demo for the LatticeECP3 Versa Evaluation Board User s Guide

Product Update. JTAG Issues and the Use of RT54SX Devices

BABAR IFR TDC Board (ITB): system design

Chapter 19 IEEE Test Access Port (JTAG)

Entry Level Tool II. Reference Manual. System Level Solutions, Inc. (USA) Murphy Avenue San Martin, CA (408) Version : 1.0.

16 Dec Testing and Programming PCBA s. 1 JTAG Technologies

SERDES Eye/Backplane Demo for the LatticeECP3 Serial Protocol Board User s Guide

FPGA TechNote: Asynchronous signals and Metastability

FPGA Design with VHDL

JTAG Programmer Guide

DALHOUSIE UNIVERSITY Department of Electrical & Computer Engineering Digital Circuits - ECED 2200

XJTAG DFT Assistant for

Spartan-II Development System

Using HERON modules with FPGAs to connect to FPDP

IE1204 Digital Design F11: Programmable Logic, VHDL for Sequential Circuits

Digi Connect SP and TM. Digi Connect Wi SP Hardware Reference _E

IE1204 Digital Design. F11: Programmable Logic, VHDL for Sequential Circuits. Masoumeh (Azin) Ebrahimi

L12: Reconfigurable Logic Architectures

JTAG Test Controller

XJTAG DFT Assistant for

VHDL Design and Implementation of FPGA Based Logic Analyzer: Work in Progress

L11/12: Reconfigurable Logic Architectures

Configuring FLASHlogic Devices

BTW03 DESIGN CONSIDERATIONS IN USING AS A BACKPLANE TEST BUS International Test Conference. Pete Collins

University Program Design Laboratory Package

FPGA Design. Part I - Hardware Components. Thomas Lenzi

Synchronous Sequential Design

COMPUTER ENGINEERING PROGRAM

Why FPGAs? FPGA Overview. Why FPGAs?

Digital Systems Laboratory 1 IE5 / WS 2001

DIGITAL SYSTEM DESIGN VHDL Coding for FPGAs Unit 7

DE2-115/FGPA README. 1. Running the DE2-115 for basic operation. 2. The code/project files. Project Files

University Program Design Laboratory Package

SELENA GPS ATOMIC CLOCK ( Option # 725GPS )

XJTAG DFT Assistant for

Sundance Multiprocessor Technology Limited. Capture Demo For Intech Unit / Module Number: C Hong. EVP6472 Intech Demo. Abstract

Laboratory Exercise 4

EE178 Lecture Module 4. Eric Crabill SJSU / Xilinx Fall 2005

library IEEE; use IEEE.STD_LOGIC_1164.ALL;

APPLICATION NOTE. XCR5128C: 128 Macrocell CPLD with Enhanced Clocking. Features. Description

SignalTap Analysis in the Quartus II Software Version 2.0

Microprocessor Design

Appendix Lightolier Compose System

Debugging IDT S-RIO Gen2 Switches Using RapidFET JTAG

Laboratory Exercise 7

DS099-E08 (v2.5) December 14, 2006

Lab 13: FPGA Circuit Realization Ian Callahan

MSP430 JTAG / BSL connectors

California State University, Bakersfield Computer & Electrical Engineering & Computer Science ECE 3220: Digital Design with VHDL Laboratory 7

FPGA Laboratory Assignment 4. Due Date: 06/11/2012

University Program Design Laboratory Package

12. IEEE (JTAG) Boundary-Scan Testing for the Cyclone III Device Family

Transcription:

Using the XSV Board Xchecker Interface May 1, 2001 (Version 1.0) Application Note by D. Vanden Bout Summary This application note shows how to configure the XC9510 CPLD on the XSV Board to enable the programming and JTAG functions of the Xchecker interface. Introduction The Virtex FPGA on the XSV Board is accessed from the PC parallel port through a simple 25-wire cable that connects to an XC9510 CPLD on the XSV Board. The connections of the CPLD to the configuration and JTAG pins of the Virtex device are shown in Figure 1. The XSV Board is supplied with a default CPLD configuration that lets you download bitstreams to the Virtex using the GXSLOAD utility provided by XESS. This application note describes an alternate circuit for the CPLD that allows you to use all the Xilinx Foundation downloading and testing tools with the XSV Board by attaching an Xchecker cable to the Xchecker interface on the XSV Board. VHDL for the Xchecker Interface Listing 1 shows the VHDL code for the XC9510 CPLD that enables the Xchecker interface on the XSV Board. This interface provides two functions: It transfers configuration bitstreams from the PC to the Virtex FPGA using the slave-serial mode. The JTAG signals can be used to readback and/or test the FPGA. How the VHDL implements these functions is described below. Line 27 drives the mode pins of the Virtex FPGA to set it in the slave-serial configuration mode. This is appropriate if you want to download bitstreams to the Virtex device through its dedicated programming pins (CCLK, DONE, DIN, /PROG, and /INIT). The levels on the mode pins can be changed to enable configuration of the FPGA through the JTAG pins (TCK, TMS. TDO, and TDI). Line 30 disables the Flash RAM because the data outputs of the Flash (D0 D3) can interfere with Virtex DIN signal and the TMS, TDO, and TDI JTAG signals. Note that pin 170 of the Virtex also connects to the Flash chip-enable input, so this FPGA pin cannot be used as an output due to contention. In addition, pins 156, 163, and 167 of the FPGA also connect to the TMS, TDO, and TDI signals so they must remain tristated if the JTAG features of the Xchecker interface are used. Line 36 makes the CPLD pass the value from the TDO pin of the Virtex FPGA over to the RD pin of the Xchecker interface. Note that pin 163 of the FPGA is also connected to TDO and pin 133 is connected to the RD pin of the Xchecker interface, so these pins on the FPGA must be tristated to prevent contention with the TDO output to the Xchecker interface. Line 39 causes the FPGA DONE signal to be displayed on the uppermost segment of the bargraph LED. The bar segment is illuminated after the Virtex FPGA is configured and its DONE signal is high. Pin 152 of the FPGA must be tristated to prevent contention with the CPLD when it is driving this LED. The remaining pins of the CPLD are unused so they are tristated and will not interfere with the remaining signals of the Xchecker interface or the FPGA. The I/O pin assignments for the CPLD on the XSV Board are shown in Listing 2. Using the Xchecker Cable with the XSV First, attach the XSV Board to the parallel port of a PC through the 25-wire downloading cable. Then download the xchk.svf file into the XC9510 CPLD May 1, 2001 (Version 1.0) 1

using the GXSLOAD tool from XESS. At this point, the parallel port interface of the XSV Board is no longer functioning (unless you reprogram the CPLD) and the Xchecker interface is active. Next, connect the Xchecker cable to a serial port of the PC. Then connect the other end of the Xchecker to the XSV Board (the Xchecker connections are keyed so they cannot be attached incorrectly). Next, click-on the Programming tools icon in Foundation and select the Hardware Debugger tool. Select the Cable Communications menu item in the Hardware Debugger window and set the Cable Type to Xchecker. Then set the Port Name to com1 (or whatever COM port the Xchecker cable connects to) and the Baud Rate to 3400. Once the cable is set up, select a.bit file in the Hardware Debugger window and download it to the XSV Board. After the download is complete, the status information at the bottom of the window should show the FPGA is configured. BAR0 on the XSV Board should also be illuminated. Now click-on the Programming tools icon but this time select the JTAG Programmer tool. Select the Output Cable Setup menu item in the JTAG Programmer window and set the Communication Mode to Xchecker, the Port to com1, and the Baud Rate to 3400. Then select the Output Cable Reset command to initialize the JTAG state machine in the Virtex FPGA. Now you can execute JTAG operations on the Virtex FPGA. May 1, 2001 (Version 1.0) 2

Flash RAM D0 A1 A0 A2 A4 A3 D3 D2 D1 /CE A6 BAR0 DS1075 S5 S4 S3 S2 S1 Right LED CLOCK Parallel Port d0 d1 d2 d3 d4 d6 s3 s4 s5 s7 XC9510 P77 P74 P72 P70 P6 P66 P76 P60 P61 P63 TDO P24 P46 P34 P16 P17 P1 P12 P10 P33 P32 P4 P11 P35 P9 P22 P20 P19 P15 P14 P13 P7 S3 S2 S1 S0 RT (2) RD (4) TRIG (6) CCLK (7) DONE (9) TDI (10) DIN (11) TCK (12) /PROG (13) TMS (14) /INIT (15) CLKI (16) RST (17) CLKO (1) Xchecker Port Left LED SW4 P15 M0 M1 M2 CCLK DONE DIN /PROG /INIT TCK TMS TDO TDI P133 P132 P139 P9 P144 P141 P156 P163 P167 P170 P152 Virtex FPGA Figure 1: XSV Board CPLD connections. May 1, 2001 (Version 1.0) 3

1 2 3 4 5 6 7 9 10 11 12 13 14 15 16 17 1 19 20 21 22 23 24 25 26 27 2 29 30 31 32 33 34 35 36 37 3 39 40 41 Listing 1: VHDL code for the CPLD that enables the XSV Xchecker interface. library ieee; use ieee.std_logic_1164.all; entity xchk is port( ce_n: out std_logic; -- Flash RAM chip-enable V_tdo: in std_logic; -- TDO from Virtex FPGA V_rd: out std_logic; -- RD pin of xchecker port used for TDO -- Virtex programming pins V_done: in std_logic; -- input from Virtex done pin V_m: out std_logic_vector(2 downto 0); -- Virtex config mode pins bar: out std_logic_vector(1 downto 0) -- LED bargraph ); end xchk; architecture arch of xchk is constant LO: std_logic := '0'; constant HI: std_logic := '1'; constant SLAVE_SERIAL_MODE: std_logic_vector(2 downto 0) := "111"; begin -- connect Virtex configuration pins V_m <= SLAVE_SERIAL_MODE; -- set Virtex config mode pins into JTAG mode -- disable the Flash RAM so its outputs cannot interfere with the JTAG pins ce_n <= HI; -- loop Virtex TDO output pin over to RD pin on the Xchecker interface -- Note: V_tdo is also connected to Virtex pin 163 and V_rd is -- connected to Virtex pin 133, so keep these two Virtex pins -- tristated if you are using the XChecker JTAG interface to the Virtex. V_rd <= V_tdo; -- display status of Virtex done pin on the bargraph LED bar(0) <= V_done; end arch; May 1, 2001 (Version 1.0) 4

1 2 3 4 5 6 7 9 10 11 12 Listing 2: User-constraint file for CPLD pin assignments. # # pin assignments for the XC9510 CPLD chip on the XSV Board # net V_done loc=p10; net V_m<0> loc=p13; net V_m<1> loc=p14; net V_m<2> loc=p15; net V_tdo loc=p34; net V_rd loc=p17; net ce_n loc=p46; net bar<0> loc=p24; May 1, 2001 (Version 1.0) 5