
- •Navigating This Book
- •Table of Contents
- •Introduction
- •The History of Programmable Logic
- •Complex Programmable Logic Devices (CPLDs)
- •Why Use a CPLD?
- •Field Programmable Gate Arrays (FPGAs)
- •Design Integration
- •The Basic Design Process
- •HDL File Change Example
- •Before (16 x 16 multiplier):
- •After (32 x 32 multiplier):
- •Intellectual Property (IP) Cores
- •Design Verification
- •Xilinx Solutions
- •Introduction
- •Xilinx Devices
- •Platform FPGAs
- •Virtex FPGAs
- •Virtex-II Pro FPGAs
- •Virtex FPGAs
- •Spartan FPGAs
- •Spartan-3 FPGAs
- •Spartan-IIE FPGAs
- •Spartan-IIE Architectural Features
- •Xilinx CPLDs
- •XC9500 ISP CPLD Overview
- •XC9500XL 3.3V Family
- •XC9500XV 2.5V CPLD Family
- •CoolRunner Low-Power CPLDs
- •CoolRunner-II CPLDs
- •CoolRunner Reference Designs
- •Military and Aerospace
- •Automotive and Industrial
- •Design Tools
- •Design Entry
- •Synthesis
- •Implementation and Configuration
- •Board-Level Integration
- •Verification Technologies
- •Advanced Design Techniques
- •Embedded SW Design Tools Center
- •Xilinx IP Cores
- •Web-Based Information Guide
- •End Markets
- •Silicon Products and Solutions
- •Design Resources
- •System Resources
- •Xilinx Online (IRL)
- •Configuration Solutions
- •Processor Central
- •Tools and Partnerships
- •Memory Corner
- •Silicon
- •Design Tools and Boards
- •Technical Literature and Training
- •Connectivity Central
- •High-Speed Design Resources
- •Signal Integrity Tools
- •Partnerships
- •Signal Integrity
- •Services
- •Xilinx Design Services
- •Education Services
- •Live E-Learning Environment
- •Day Segment Courses
- •Computer-Based Training (CBT)
- •University Program
- •Design Consultants
- •Technical Support
- •Module Descriptions
- •WebPACK Design Suite
- •WebPACK Design Entry
- •WebPACK StateCAD
- •WebPACK MXE Simulator
- •WebPACK HDL Bencher Tool
- •WebPACK FPGA Implementation Tools
- •WebPACK CPLD Implementation Tools
- •WebPACK iMPACT Programmer
- •WebPACK ChipViewer
- •XPower
- •WebPACK CD-ROM Installation
- •Getting Started
- •Licenses
- •Projects
- •Summary
- •Introduction
- •Design Entry
- •The Language Template
- •Close the Language Templates
- •Edit the Counter Module
- •Save the Counter Module
- •Functional Simulation
- •State Machine Editor
- •Top-Level VHDL Designs
- •Top-Level Schematic Designs
- •ECS Hints
- •I/O Markers
- •Implementing CPLDs
- •Introduction
- •Synthesis
- •Constraints Editor
- •CPLD Reports
- •Timing Simulation
- •Configuration
- •Implementing FPGAs
- •Introduction
- •Synthesis
- •The Constraints File
- •FPGA Reports
- •Programming
- •Summary
- •Design Reference Bank
- •Introduction
- •Get the Most out of Microcontroller-Based Designs
- •Conventional Stepper Motor Control
- •Using a Microcontroller to Control a Stepper Motor
- •Stepper Motor Control Using a CPLD
- •PC-Based Motor Control
- •Design Partitioning
- •Conclusion
- •Documentation and Example Code
- •Website Reference
- •ACRONYMS
- •GLOSSARY OF TERMS

WEBPACK ISE DESIGN SOFTWARE
4. Generate Programming File – Creates a programming bitstream. For CPLDs, the implementation process includes:
1.Translate – Interprets the design and runs a “design rule check.”
2.Fit – Allocates resource usage and connections.
3.Generate Programming File – Creates a JED file for programming.
WebPACK Design Suite
TABLE 3-1: WEBPACK DEVICE SUPPORT
Device |
Support |
|
|
Virtex-II Pro |
Up to XC2VP2 |
|
|
Virtex-II |
Up to XC2V250 |
|
|
Virtex-E |
Up to XCV300E |
|
|
Spartan-IIE |
Up to XC2S300E |
|
|
Spartan-II |
Up to XC2S200 |
|
|
Spartan-3 |
Up to XC3S400 |
|
|
CoolRunner-II |
All |
|
|
CoolRunner |
All |
|
|
XC9500 Families |
All |
|
|
WEBPACK DESIGN ENTRY
The WebPACK tool suite supports several different design entries. The XST synthesis tool synthesizes HDL code in VHDL, Verilog, or ABEL into a netlist.
Schematic designs are converted into VHDL or Verilog, which are then synthesized by XST in the same way.
WEBPACK STATECAD
StateCAD is a tool for graphically entering state machines in “bubble diagram” form.
You simply draw the states, transitions, and outputs, and StateCAD gives a visual test facility. State machines are generated in HDL and then added to the WebPACK ISE project.
Xilinx • 93

PROGRAMMABLE LOGIC DESIGN -- QUICK START HANDBOOK • CHAPTER 3
WEBPACK MXE SIMULATOR
The WebPACK MXE Simulator can be used for both functional and timing simulation. The necessary libraries are already pre-compiled into MXE. Prewritten scripts seamlessly compile the design to be tested, as well as its testbench.
For functional simulation, the written code is simulated before synthesis. After fitting (CPLDs) or place and route (FPGAs), you can simulate the design using the same original testbench as a test fixture, but with logic and routing delays added.
WEBPACK HDL BENCHER TOOL
The HDL Bencher tool generates the testbenches, allowing you to simulate the design under test.
The HDL Bencher tool reads the design under test. You simply enter signal transitions in a graphical timing diagram GUI.
You can also enter your expected simulation results, allowing the simulator to flag a warning if the simulation did not yield the expected results.
WEBPACK FPGA IMPLEMENTATION TOOLS
As we discussed, there are several steps to implementing an FPGA design. Xilinx FPGA implementation tools perform all of these steps.
WEBPACK CPLD IMPLEMENTATION TOOLS
Similarly, CPLD implementation tools perform all of the steps in the CPLD implementation flow outlined previously.
WEBPACK IMPACT PROGRAMMER
The iMPACT programmer module allows you to program a device in-sys- tem for all devices available in the WebPACK software. (You must connect a JTAG cable to the PC’s parallel port.)
For FPGAs, the programmer module allows you to configure a device via the JTAG cable.
Xilinx FPGAs are based on a volatile SRAM technology, so the device will not retain configuration data when you remove the power. Therefore, this configuration method is normally only used for test purposes.
CPLDs, however, are non-volatile devices. Once programmed, they will retain their program until it’s erased or reprogrammed.
The programmer module also includes a PROM file formatter. The use of an external PROM is a popular method of storing FPGA configuration data.
The PROM file formatter takes in the bitstream generated during the implementation phase and provides an MCSor HEX-formatted file used by PROM programmers.
Xilinx • 94