Getting Started With the NEXYS2 Spartan 3E Kit and Xilinx ISE Webpack Tutorial

Similar documents
Lab 1: Introduction to Xilinx ISE Tutorial

2. Scope of the DE0 Board and Supporting Material

Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial

Technical Aspects of Creating and Assessing a Learning Environment in Digital Electronics for High School Students

Digital Circuit Design Using Xilinx ISE Tools

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

JTAG-HS2 Programming Cable for Xilinx FPGAs. Overview. Revised January 22, 2015 This manual applies to the HTAG-HS2 rev. A

QUICK START GUIDE. SG2 Client - Programming Software SG2 Series Programmable Logic Relay

Xilinx ISE. <Release Version: 10.1i> Tutorial. Department of Electrical and Computer Engineering State University of New York New Paltz

Lab 1: Full Adder 0.0

SKP16C62P Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.

Quick Start Guide. TWR-MECH Mechatronics Board TOWER SYSTEM

Multiplexers Two Types + Verilog

Colorfly Tablet Upgrade Guide

Designing VM2 Application Boards

Getting Started with the Xilinx Zynq All Programmable SoC Mini-ITX Development Kit

LAB #3 VHDL RECOGNITION AND GAL IC PROGRAMMING USING ALL-11 UNIVERSAL PROGRAMMER

ScanWin Installation and Windows 7-64 bit operating system

Quick Start Guide. MRB-KW01 Development Platform Radio Utility Application Demo MODULAR REFERENCE BOARD

USB - FPGA MODULE (PRELIMINARY)

Creating a Webserver on the Nios development kit Stratix Edition board Enoch Hwang

Getting Started with Embedded System Development using MicroBlaze processor & Spartan-3A FPGAs. MicroBlaze

Pre-tested System-on-Chip Design. Accelerates PLD Development

MN3310 Evaluation Kit v1 User Guide

MN1010 Evaluation Kit v3 User Guide

Implementation of Web-Server Using Altera DE2-70 FPGA Development Kit

USB Security Key Instructions

A+ Guide to Managing and Maintaining Your PC, 7e. Chapter 1 Introducing Hardware

No serious hazards are involved in this laboratory experiment, but be careful to connect the components with the proper polarity to avoid damage.

LiveDesign Evaluation Board Technical Reference Manual. Technical reference manual for Altium s LiveDesign Evaluation Boards

PRODUCTIVITY THROUGH INNOVATION 600 CONTROL DIRECT DRIVE TECHNICAL/OPERATION MANUAL

MicroZed I/O Expansion Carrier Card Getting Started Guide

INF-USB2 and SI-USB Quick Start Guide

Programming the On-Chip Flash on a phycore-xc161 phycore-xc167

Quartus II Introduction Using VHDL Design

Troubleshooting Tips Lifestyle SA-2 & SA-3 Amplifier. Troubleshooting Tips

Lab Experiment 1: The LPC 2148 Education Board

Communication with BushingGard using computer USB port

M68EVB908QL4 Development Board for Motorola MC68HC908QL4

Fondamenti su strumenti di sviluppo per microcontrollori PIC

SA-9600 Surface Area Software Manual

Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai Jens Onno Krah

Complete Train Control. Run Your Trains, Not Your Track! 1 PR3 Programmer 1 USB Cable 1 This Instruction sheet

FLASH PROCEDURE for GSM BENTEL and DSC cards

SPI Flash Programming and Hardware Interfacing Using ispvm System

Start A New Project with Keil Microcontroller Development Kit Version 5 and Freescale FRDM-KL25Z

Lab 17: Building a 4-Digit 7-Segment LED Decoder

isppac-powr1220at8 I 2 C Hardware Verification Utility User s Guide

Installation Instructions

AIM SOFTWARE AND USB DRIVER INSTALLATION PROCEDURE

Discovering Computers Living in a Digital World

Installation Instructions for 9555 USB Driver

ACU-1000 Manual Addendum Replacement of CPM-2 with CPM-4

Chapter 4 System Unit Components. Discovering Computers Your Interactive Guide to the Digital World

MAX6683 Evaluation System/Evaluation Kit

Plotting Spectrum Analyzer Data without a Plotter

Open Flow Controller and Switch Datasheet

ISP Engineering Kit Model 300

Installing the IF-NMEASC & SC30 Windows XP Drivers & Software

TAP CONNECT JTAG CABLE

C8051F020 Utilization in an Embedded Digital Design Project Course. Daren R. Wilcox Southern Polytechnic State University Marietta, Georgia

PL-2303 (Chip Rev H, HX, X) USB to Serial Adapter Windows Driver Installer Manual

Lecture 2: Computer Hardware and Ports.

Acer LCD Monitor Driver Installation Guide

Instructions for the installation of drivers and data reading software (TOOLBOX 4) The simple and reliable way to measure radioactivity.

SLC 5/05 Processors Firmware/Operating System ControlFLASH Upgrade

Workshop Intel Galileo Board

1. Downloading. 2. Installation and License Acquiring. Xilinx ISE Webpack + Project Setup Instructions

GPS/GLONASS SiRFstarV Evaluation Kit EVA5100-A

CHAPTER 11: Flip Flops

F-Series Desktop User Manual F20. English - Europe/New Zealand

Analog Devices Welcomes Hittite Microwave Corporation NO CONTENT ON THE ATTACHED DOCUMENT HAS CHANGED

Using Xilinx ISE for VHDL Based Design

Transferring Scans from your Dolphin into Destiny

AMC13 T1 Rev 2 Preliminary Design Review. E. Hazen Boston University E. Hazen - AMC13 T1 V2 1

Physics 226 FPGA Lab #1 SP Wakely. Terasic DE0 Board. Getting Started

DIRECT INTERNET DATA. User s Guide

Installing the Gerber P2C Plotter USB Driver

Deposit Direct. Getting Started Guide

SOFTWARE MANUAL. Please ensure that you read the instruction manual carefully before use. About software

Getting Started. rp5800, rp5700 and rp3000 Models

Installing the USB driver for Firmware 7 or later For use with E-blocks programmer boards and PICmicro Development boards.

Installing S500 Power Monitor Software and LabVIEW Run-time Engine

Chapter 6. Inside the System Unit. What You Will Learn... Computers Are Your Future. What You Will Learn... Describing Hardware Performance

Windows XP.. ELITE Firmware Update procedures.. v1.41

FireWire Hi-Speed USB Combo Quick Installation Guide

Spartan-3E FPGA Starter Kit Board User Guide. UG230 (v1.2) January 20, 2011

E-Blocks Easy Internet Bundle

TEECES DOME LIGHTING SYSTEMS

EDK 350 (868 MHz) EDK 350U (902 MHz) EnOcean Developer Kit

Advanced Central Monitoring. User Guide

Installation Guide for RadioLabs USB Wifi Antennas/Adapters

LatticeXP2 Configuration Encryption and Security Usage Guide

ChipScope Pro Tutorial

TEST CHAPTERS 1 & 2 OPERATING SYSTEMS

How do I monitor the ink levels on my EPSON Stylus printer using Windows 2000 or XP?

MIDECO 64-outputs MIDI note decoder USER MANUAL. Roman Sowa 2012

Debugging Network Communications. 1 Check the Network Cabling

Introduction. Getting familiar with chipkit Pi

COPYRIGHT TOP NOTCH TABLETS LLC HOW TO: Install the Drivers to your PC so you can Flash Firmware to your RK3066 Powered Tablet.

Transcription:

Getting Started With the NEXYS2 Spartan 3E Kit and Xilinx ISE Webpack Tutorial

OVER VIEW The Nexys2 circuit board is a complete, ready to use circuit development platform based on a Xilinx Spartan 3E FPGA. The Nexys2 board input power input bus can be driven from a USB cable, from a 5VDC 15VDC, center positive, 2.1mm wall plug supply, or from a battery pack. A shorting block loaded on the power select jumper selects the power source. The USB circuitry is always powered from the USB cable if no USB cable is attached, the USB circuitry is left unpowered. Features: 500K gate Xilinx Spartan 3E FPGA USB2 based FPGA configuration and high speed data transfers (using the free Adept Suite Software) USB powered (batteries and/or wall plug can also be used) 16MB of Micron PSDRAM &16MB of Intel StrataFlash ROM Xilinx Platform Flash for nonvolatile FPGA configurations Efficient switch mode power supplies (good for battery powered applications) 50MHz oscillator plus socket for second oscillator 60 FPGA I/O s routed to expansion connectors (one highspeed Hirose FX2 connector and four 6 pin headers) 8 LEDs, 4 digit 7 seg display, 4 buttons, 8 slide switches Ships in a plastic carry case with USB cable FPGA and Platform Flash Configuration The FPGA on the Nexys2 board must be configured (or programmed) by the user before it can perform any functions. During configuration, a bit file is transferred into memory cells within the FPGA to define the logical functions and circuit interconnects. The free ISE/ Web Pack CAD software from Xilinx can be used to create bit files from VHDL, Verilog, or schematic based source files. The FPGA can be programmed in two ways: directly from a PC using the on board USB port, and from an on board Platform Flash ROM (the Flash ROM is also user programmable via the USB port). A jumper on the Nexys2 board determines which source (PC or ROM) the FPGA will use to load its configuration. The FPGA will automatically load a configuration from the Platform Flash ROM at power on if the configuration Mode jumper is set to Master serial. If

the Mode jumper is set to JTAG, the FPGA will await programming from the PC (via the USB cable). Digilent s freely available PC based Adept software can be used to configure the FPGA and Platform Flash with any suitable file stored on the computer. Adept uses the USB cable to transfer a selected bit file from the PC to the FPGA or Platform Flash ROM. After the FPGA is configured, it will remain so until it is reset by a power cycle event or by the FPGA reset button (BTNR) being pressed. The Platform Flash ROM will retain a bit file until it is reprogrammed, regardless of power cycle events. To install Drivers of the software: Download and install Digilent Adept suite (ADEPT 1.10, 32 bit windows) from the following link http://www.digilentinc.com/products/detail.cfm?navtop=2&navsub=451&prod=nexys2 User I/O The Nexys2 board includes several input devices, output devices, and data ports, allowing many designs to be implemented without the need for any other components. Four pushbuttons and eight slide switches are provided for circuit inputs. Pushbutton inputs are normally low, and they are driven high only when the pushbutton is pressed. Slide switches generate constant high or low inputs depending on their position. Pushbutton and slide switch inputs use a series resistor for protection against short circuits (a short circuit would occur if an FPGA pin assigned to a pushbutton or slide switch was inadvertently defined as an output). The Nexys2 board contains a four digit common anode seven segment LED display. Each of the four digits is composed of seven segments arranged in a figure 8 pattern, with an LED embedded in each segment.

PIN ASSIGNMENT: The Project Let us write a code for AND gate and implement it on nexys2 board. We would like to place the AND value of two inputs on the rightmost 7 segment display, and leave the rest blank. To start the design, first start Xilinx ISE, and create a new Project with File New Project. When specifying the project name and directory, pick a location without any spaces in the path (i.e. not the desktop) You will often find the Xilinx tools behaving very strangely with difficult to diagnose errors if you have spaces in the project path.

The next step will be to specify the FPGA you are targeting. This is obviously the one that is on the NEXYS2 board.

Skip over the next two pages, and click Finish to complete the project creation and begin the design process. Entering VHDL To describe the design, we will add one simple VHDL file to our project. Though this can be done with any text editor, it is convenient to allow the ISE tools to create the framework for us since we are starting the file from scratch. Adding an existing file is similarly easy, and can be done with Project Add Copy of Source. Select Project New Source, and fill out the dialog telling the tools to create a new VHDL module with the name and2_demo.vhd On the next page, you will be prompted to enter the ports of your new module. This is strictly optional, and saves you the typing of creating the VHDL entity manually. Whether you fill this out or not, the resultant text file will be totally under your control for later editing.

We have entered the ports which will be placed into our entity in the VHDL file : the switches as our inputs, and the seven segments to drive on the display as our outputs. Furthermore, we have included the port anodes which will be used to enable / disable each of the 4 displays individually. The resultant VHDL file looks essentially like this :

Xilinx has conveniently left a place for us to insert the architecture of our design, which will be two very simple statements: After entering the VHDL, save the file, and Check the Syntax for errors by clicking on Check Syntax under Synthesize in the Processes Pane. Assigning Pins The next task is to assign our input and output ports to the correct locations. If we neglected this step, the pins would be assigned by the Xilinx software to random locations, which would not be good. To do this, we must first create one more new file, the Universal Constraints File (.ucf).

Now that we have a constraints file for the project, we can easily assign pins graphically using Assign Package Pins under the User Constraints section in the Process Pane. This can also be entered by double clicking on the.ucf file that you just created from within Project Navigator. For this exercise though, we are going to edit the.ucf file in text, to get a good feel for how simple it is. Single Click on your ucf file from within Project Navigator, and then Select Edit Constraints (Text) from the Process Pane as below. Then you can edit the constraints as shown below. NET "anode<0>" LOC = "F17" ; NET "anode<1>" LOC = "H17" ; NET "anode<2>" LOC = "C18" ; NET "anode<3>" LOC = "F15" ; NET "sevenseg<0>" LOC = "L18" ; NET "sevenseg<1>" LOC = "F18" ; NET "sevenseg<2>" LOC = "D17" ; NET "sevenseg<3>" LOC = "D16" ; NET "sevenseg<4>" LOC = "G14" ;

NET "sevenseg<5>" LOC = "J17" ; NET "sevenseg<6>" LOC = "H14" ; NET "x" LOC = "G18" ; NET "y" LOC = "H18" ; NET "z" LOC = "J14" ; Save the file, now we are ready to try the design on the FPGA. Synthesis, Place+Route, Programming File The next step in the process is to have the Xilinx ISE create a programming file for you. The whole process can be completed by clicking once on your top level design in the Sources Pane, followed by a double click on Generate Programming File. This will run the whole process, and should complete as in the screenshot below. Now that the programming file has been generated, it is time to load your design into the FPGA, and test it out.

Configuration Using the USB port and Digilent ADEPT Software Suite Open the Export.exe file from the digilent adept folder. While the USB is attached, click on Initialize Chain to identify the devices on the board. To program the FPGA, browse to the configuration file and select your and2_demo.bit. Similarly, if you would like to program the board to start on power up program the PROM (XCF04S) with the file as well.

Click Program Chain and wait. When configuration is complete, your FPGA should be operating as your VHDL specified.