ChipScope Demo Instructions

Similar documents
Using ChipScope. Overview. Detailed Instructions: Step 1 Creating a new Project

Using Project Navigator

CS152 FPGA CAD Tool Flow University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences

Xilinx ChipScope ICON/VIO/ILA Tutorial

Lab 2 Verilog Synthesis & Logic Optimization

Using the ChipScope Pro for Testing HDL Designs on FPGAs

Adding the ILA Core to an Existing Design Lab

ChipScope Inserter flow. To see the Chipscope added from XPS flow, please skip to page 21. For ChipScope within Planahead, please skip to page 23.

Lab 1 FPGA CAD Tools

Verilog Simulation Mapping

Lab 3 Verilog Simulation Mapping

Using Synplify Pro, ISE and ModelSim

Don t expect to be able to write and debug your code during the lab session.

Lab 3: Xilinx PicoBlaze Flow Lab Targeting Spartan-3E Starter Kit

ChipScope Pro Software and Cores User Guide

ISE Tutorial: Using Xilinx ChipScope Pro ILA Core with Project Navigator to Debug FPGA Applications

Using Xilinx ChipScope Pro ILA Core with Project Navigator to Debug FPGA Applications. UG750 (v12.3) November 5, 2010

Project 1a: Hello World!

DESIGN STRATEGIES & TOOLS UTILIZED

ISE Tutorial. Using Xilinx ChipScope Pro ILA Core with Project Navigator to Debug FPGA Applications. UG750 (v14.4) December 18, 2012

EECS150: Lab 1, FPGA CAD Tools

Interfacing a PS/2 Keyboard

Generating Parameterized Modules and IP Cores

ISE Design Suite Software Manuals and Help

SOPC LAB1. I. Introduction. II. Lab contents. 4-bit count up counter. Advanced VLSI Due Wednesday, 01/08/2003

EE 367 Logic Design Lab #1 Introduction to Xilinx ISE and the ML40X Eval Board Date: 1/21/09 Due: 1/28/09

Tutorial: Working with the Xilinx tools 14.4

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180A DIGITAL SYSTEMS I Winter 2015

Lab 4: List Processor and Chipscope

Adding Custom IP to the System

Xilinx Schematic Entry Tutorial

Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial

Verilog Design Entry, Synthesis, and Behavioral Simulation

Contents. Appendix B HDL Entry Tutorial 2 Page 1 of 14

TLL5000 Electronic System Design Base Module. Getting Started Guide, Ver 3.4

EET2141 Project 2: Binary Adder Using Xilinx 7.1i Due Friday April 25

Pico ChipScope Documentation

CSE 591: Advanced Hardware Design and Verification (2012 Spring) LAB #0

Lab 2 Designing with Verilog

Advanced module: Video en/decoder on Virtex 5

EE 231 Fall Lab 1: Introduction to Verilog HDL and Altera IDE

Using the Agilent Technologies Series Logic Analysis System with the Xilinx ChipScope ILA

EECS150: Lab 5, Debugging with ChipScope & the UART/CPU Adaptor

CE 435 Embedded Systems. Spring Lab 3. Adding Custom IP to the SoC Hardware Debug. CE435 Embedded Systems

Programming Xilinx SPARTAN 3 Board (Simulation through Implementation)

Programmable Logic Design Techniques I

Tutorial for Altera DE1 and Quartus II

Vivado Design Suite Tutorial: Programming and Debugging

TLL5000 Electronic System Design Base Module

Quartus II Version 14.0 Tutorial Created September 10, 2014; Last Updated January 9, 2017

LogiCORE IP ChipScope Pro Integrated Controller (ICON) (v1.05a)

Step 1: Downloading the source files

Tutorial on FPGA Design Flow based on Xilinx ISE Webpack and ModelSim. ver. 1.3

QUARTUS II Altera Corporation

Introduction. In this exercise you will:

Virtual Input/Output v3.0

EE 231 Fall EE 231 Lab 2

Digital Circuit Design Using Xilinx ISE Tools

Spartan-6 LX9 MicroBoard Embedded Tutorial. Tutorial 5 Embedded Chipscope Debugging

Introduction. About this tutorial. How to use this tutorial

Lab 6 Debugging. Objective. Introduction. Prelab

AL8253 Core Application Note

ECE 574: Modeling and Synthesis of Digital Systems using Verilog and VHDL. Fall 2017 Final Exam (6.00 to 8.30pm) Verilog SOLUTIONS

NIOS CPU Based Embedded Computer System on Programmable Chip

Tutorial on Quartus II Introduction Using Verilog Code

Hardware/Software Codesign for Wireless Systems (E168b) Lab 2: GPS Correlator

AccelDSP tutorial 2 (Matlab.m to HDL for Xilinx) Ronak Gandhi Syracuse University Fall

Engineering 1630 Fall Simulating XC9572XL s on the ENGN1630 CPLD-II Board

í ChipScope Pro Software and Cores User Guide [] UG029 (v14.2) July 25, 2012

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication

ECE 491 Laboratory 1 Introducing FPGA Design with Verilog September 6, 2004

ChipScope Pro Software and Cores User Guide

CPEN 230L: Introduction to Digital Logic Laboratory Lab #6: Verilog and ModelSim

COS/ELE 375 Verilog & Design Tools Tutorial

Xilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006)

ECT 224: Digital Computer Fundamentals Using Xilinx StateCAD

Getting Started with Xilinx WebPack 13.1

ENGN 1630: CPLD Simulation Fall ENGN 1630 Fall Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim

Vivado Walkthrough ECGR Fall 2015

2 nd Year Laboratory. Experiment: FPGA Design with Verilog. Department of Electrical & Electronic Engineering. Imperial College London.

EE183 LAB TUTORIAL. Introduction. Projects. Design Entry

PlanAhead Release Notes

NIOS CPU Based Embedded Computer System on Programmable Chip

Board-Data Processing. VHDL Exercises. Exercise 1: Basics of VHDL Programming. Stages of the Development process using FPGA s in Xilinx ISE.

Lab 2: Introduction to Verilog HDL and Quartus

Vivado Design Suite Tutorial:

University of California, Davis Department of Electrical and Computer Engineering. Lab 1: Implementing Combinational Logic in the MAX10 FPGA

Tutorial on Simulation using Aldec Active-HDL Ver 1.0

Design Flow Tutorial

EE 361L Digital Systems and Computer Design Laboratory

Xilinx ISE8.1 and Spartan-3 Tutorial EE3810

Lab 1: FPGA Physical Layout

Vivado Design Suite Tutorial: Programming and Debugging

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University. Laboratory Exercise #1 Using the Vivado

High Speed SPI Slave Implementation in FPGA using Verilog HDL

CPE 200L LABORATORY 4: INTRODUCTION TO DE2 BOARD UNIVERSITY OF NEVADA, LAS VEGAS GOALS: BACKGROUND:

Using XILINX WebPACK Software to Create CPLD Designs

E85: Digital Design and Computer Engineering Lab 2: FPGA Tools and Combinatorial Logic Design

Tutorial on FPGA Design Flow based on Aldec Active HDL. Ver 1.5

Transcription:

UNIVERSITY OF CALIFORNIA AT BERKELEY COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE Overview ChipScope is an embedded, software based logic analyzer. By inserting an intergrated controller core (icon) and an integrated logic analyzer (ila) into your design and connecting them properly, you can monitor any or all of the signals in your design. Even nicer is that ChipScope provides you with a convenient software based interface for controlling the integrated logic analyzer, including setting the triggering options and viewing the waveforms. There are six main steps to using ChipScope, as detailed below. 1. Generate an integrated controller core or icon 2. Generate one or maybe more integrated logic analyzers or ilas 3. Connect the ilas to the icon and make all of these modules part of your design. 4. Synthesize, and implement your design (including the icon and ila) as normal. 5. Program the CaLinx board 6. Run the ChipScope software to access and use the ilas (the ChipScope software requires the icon to gain access to the ilas) Detailed Instructions: Step 1 Generating the ICON 1. First you will need to start the ChipScope Core Generator a. Go to Start -> All Programs -> ChipScope Pro 6.1i -> ChipScope Core Generator b. This will present you with the ChipScope core generator wizard. 2. Select the ICON (Integrated Controller) option and click Next 3. General Options a. You will need to change the Output Netlist location. i. By default ChipScope Core Generator will try and write the output to a directory you are not allowed to modfy. ii. Change the box from.\icon.edn to something like c:\users\cs150-xxx\icon.edn iii. You MUST include the icon.edn at the end of the path. b. Select the VirtexE Device Family c. Select the correct number of Control Ports i. Each ILA requires one control port ii. Normally you will only need 1 Control Port 4. Example Template Options a. Make sure Generate HDL Example Files is Checked i. Select a Verilog example file UCB 1 2004

ii. Use the Synplicity Synplify synthesis tool b. You do not need to Generate Batch Mode Argument Example Files c. Click Generate Core 5. The ChipScope Pro Core Generator will now generated the ICON core according to the settings you specified. If you have errors go back and make sure you followed the above instructions 6. When you are done click Start Over and proceed directly to step 2 below. Detailed Instructions: Step 2 Generating the ILA 1. First you will need to start the ChipScope Core Generator if you haven t already started from the previous section. a. Go to Start -> All Programs -> ChipScope Pro 6.1i -> ChipScope Core Generator b. This will present you with the ChipScope core generator wizard. 2. Select the ILA (Integrated Logic Analyzer) option and click Next 3. General Options a. You will need to change the Output Netlist location. i. By default ChipScope Core Generator will try and write the output to a directory you are not allowed to modfy. ii. Change the box from.\ila.edn to something like c:\users\cs150-xxx\ila.edn iii. You MUST include the ila.edn at the end of the path. b. Select the VirtexE Device Family c. Select Rising Edge trigger. i. Falling Edge should only be used by expert debuggers who know EXACTLY what they are doing. 4. Trigger Options a. Normally you will only need 1 Trigger Port i. Set the Trigger Width to any amount you desire (probably either 1bit or 32bits for Lab5) ii. Set the Match Type to Basic unless you need any more advanced features iii. You will most likely need 1 Match Unit iv. Set the Counter Width to Disabled unless you need the counter b. Disable Trigger Sequencing i. This is very useful for more advanced FSM debugging c. Disable the Trigger Output Port 5. Data Options a. Select the desired data depth i. This is the number of samples the ILA will capture after it receives the trigger. It will capture one sample per clock cycle until it captures this many samples. You will probably need relatively few for Lab5. UCB 2 2004

b. Data Same as Trigger should be selected if you are going to connect all the signals you are interested in to the trigger. The bench logic analyzers in the lab have 16bits of input used for both the data and the trigger. The ILA can have separate data and trigger inputs. You may wish to use a one bit trigger connected to a detected error signal, or you may wish to simply connect the outputs you are interested in to the trigger port. It is up to you. If you wish to use a detected error signal then you should connect that to the trigger and connect the counter output to the data port. Otherwise simple make a very large trigger port and have it be the same as the data. c. Data Width is only available when you are using separate trigger and data ports. Set this to the number of bits you will need to see in the wave window of ChipScope. d. Number of BlockRAMs is simply an indicator of how large the ILA you are making will be. If this number is above 20 you may be doing something incorrect. e. Click Next 6. Example and Template Options a. Make sure Generate HDL Example Files is Checked i. Select a Verilog example file ii. Use the Synplicity Synplify synthesis tool b. You will need to Generate Bus/Signal Name Example File c. You do not need to Generate Batch Mode Argument Example Files d. Click Generate Core 7. The ChipScope Pro Core Generator will now generated the ICON core according to the settings you specified. If you have errors go back and make sure you followed the above instructions 8. When you are done, exit ChipScope Core Generator, you now have all the files you need to begin integrating the logic analyzer into your design. Detailed Instructions: Step 3 Connecting the Cores to Your Design 1. Declare a control bus for each ILA, similar to the following: a. wire [35:0] ILAControl; b. Remember, each ILA you want to add to your design will require a control bus. c. You can route control busses as input/outputs if you want to instantiate the ICON somewhere other than where you instantiate the ILA. 2. Instantiate the ICON core a. icon i_icon(.control0(ilacontrol)); b. Remember to only instiate ONE ICON, your design can never have more than one. 3. Instaniate the ILA core a. ila i_ila(.control(ilacontrol),.clk(clock),.trig0(/**/)); UCB 3 2004

b. You may instantiate ILAs wherever they are necessary, just make sure to route the control bus from the ICON appropriately c. You may have one or more ILAs in your design. d. Your ILA may have different ports be sure to read the verilog example produced by the ChipScope Core Generator. 4. REMEMBER TO LOOK AT THE EXAMPLE VERILOG FILES GENERATED BY CHIPSCOPE CORE GENERATOR! Detailed Instructions: Step 4 Synthesize and Implement Your Design 1. Make sure to add the verilog examples generated by ChipScope Core Generator to your Xilinx project as Verilog Design Files. a. This will ensure the Synplify has the correct block box models for the ICON and ILA cores. 2. Synthesize and implement your design as normal. Detailed Instructions: Step 5 Program the CaLinx Board 1. Make sure that the the Parallel Cable IV is connected to the Slave Serial Port on the CaLinx board and that the CaLinx board is on. a. The little light on the Parallel Cable IV will turn green when the cable detects that it is connected to a powered Xilinx chip. 2. Run impact from Project Navigator a. When it asks select FPGA_TOP.bit as before b. Right click on the picture of the FPGA ant select program 3. YOU MUST CLOSE IMPACT OR CHIPSCOPE WILL NOT BE ABLE TO WORK! Detailed Instructions: Step 6 Run ChipScope 1. Once impact is closed, double click Analyze Design Using ChipScope in Project Navigator. 2. Make sure that the the Parallel Cable IV is connected to the JTAG Port on the CaLinx board and that the CaLinx board is programmed, the DONE LED will light up green when the board is programmed.. a. The little light on the Parallel Cable IV will turn green when the cable detects that it is connected to a powered Xilinx chip. 3. Once ChipScope Pro Analyzer is running you must connect to the parallel cable. a. Go to the JTAG Chain menu b. Select Xilinx Parallel Cable c. Select the Xilinx Parallel Cable IV d. Set the Speed to 5MHz e. Make sure the Port is set to LPT1 f. Click OK g. In the next window you will see two chips listed i. The System_ACE-CF is not used in this class ii. The XCV2000E is the FPGA. UCB 4 2004

h. Click OK 4. The ChipScope Pro Analyzer should now be connected to the FPGA and running. a. You can move the Trigger Setup and Waveform windows around as needed to be able to see the information you re looking for. b. First you must use the Trigger Setup window to set a trigger function, just like with the Bench Logic Analyzers c. When you have a trigger, click the Run button in the toolbar to start waiting for that trigger d. When the trigger occurs ChipScope will start downloading data from the FPGA and show it in the Waveform window, much like ModelSim. 5. Please experiment with ChipScope, it is an invaluable tool for FPGA debugging. UCB 5 2004