(ISE) software

advertisement
ISE
ISE software tools
• ISE is Xilinx software design tools that concentrate on
delivering you the most productivity available for your
Spartan-IIE™ logic performance.
• With The ProActive Timing Closure technology
you get the fastest runtimes in programmable logic
ensuring you reach your performance goals quicker.
• The Incremental Design delivers
faster re-compile times with guaranteed performance.
• Optional ChipScope Pro verification tools
whisk you through real-time debugging.
Tatjana Petrovic 249/98
2/22
The widest variety of design entry support
• ISE offers powerful Schematic Entry capabilities
integrated in the Project Navigator
• ISE projects can include schematics as well as HDL
source to define a design (HDL editor).
• After the source file is created,
the Project Navigator invokes the
Engineering Capture System (ECS) tool
to enable creation and modification of
the schematic design.
• The three principle components of ECS are: the Schematic Editor, the
Symbol Editor, and HDL netlisters.
Tatjana Petrovic 249/98
3/22
The widest variety of design entry support
• The Schematic Editor is
the main schematic-creation interface.
• The Symbol Editor allows
creation and modification of symbols
that are used in the Schematic Editor.
• The netlist program
translates a schematic into an HDL model
that is used for synthesis and simulation
of the design.
Tatjana Petrovic 249/98
4/22
Timing-Driven Place and Route
for programmable logic
In ISE when you specify timing requirements for
critical paths, performance is dramatically improved
through tools such as
• Timing Analyzer,
• Constraints Editor with
TimeSpecs™ FPGA Editor and
• Floorplanner.
Now, ProActive™ Timing Closure provides
the most advanced technology to help your designs
meet timing specifications much more quickly than
traditional methods.
Tatjana Petrovic 249/98
5/22
Types of Devices: FPGA and CPLD
• The CPLD (complex logic device) has a PAL-like
architecture and is non-volatile.
It gives relatively good performance (up to 250 MHz) and is well
suited for combinational logic circuits and control logic of medium
complexity (up to about 10,000 logic gates).
• The FPGA (field programmable gate array )device has
an array-like architecture and is volatile (SRAM
based).
It makes use of lookup tables (stored in the SRAM
memory) to implement logic functions.
Tatjana Petrovic 249/98
6/22
Design Flow Overview
for CPLDs or FPGAs
Tatjana Petrovic 249/98
7/22
Design Flow Overview
• Designs can be entered in two
basic modes:
Schematic
HDL
•
The schematic flow mode allows
you to create a design that consists
of either a top-level schematic or
top-level ABEL file.
It can contain underlying schematic
diagrams, state machine macros,
instantiated HDL (ABEL, VHDL or
Verilog) macros, LogiBLOX, CORE
Generator modules.
•
The implementation tools fit the
entered design into the target
device architecture.
• Design verification includes
functional simulation, in-circuit
testing, and timing simulation.
• Functional simulation can be
done after the design entry to
verify the proper operation of
the circuit.
• Timing information, such as
delays, race condition, set-up
and hold-time violations, is
obtained from the static timing
simulator and is done after the
design has been compiled for
the target device.
Tatjana Petrovic 249/98
8/22
Project Manager
• The Project Manager gives you access to all the tools
that are needed to design, simulate and implement a project.
• From the Manager you can also create a new project,
open an existing project or delete projects.
• When you create a new project e.g. MyProj,
the Foundation tools will create the following files:
the Project Description File (myproj.pdf), and
three library files, the project library file (myproj),
the simulation library file (simprims) and
the device library (xc4000x) files.
Tatjana Petrovic 249/98
9/22
Schematic Entry
Tatjana Petrovic 249/98
10/22
Schematic Entry
Tatjana Petrovic 249/98
11/22
The Alternative Design Entry
• An alternative way to use the Schematic editor to
enter a design is by using a behavioral-like
description.
• TheXilinx Foundation F2.1 tools allow you to
enter a design using ABEL, VHDL or Verilog.
• An ABEL-based design will be entered using the
Schematic flow mode, while a VHDL/Verilogbased design needs to be entered using the HDLflow mode.
Tatjana Petrovic 249/98
12/22
Design Implementation
• The implementation tools will
translate the netlist (schematic, HDL),
place and route (or fit for CPLDs) the design in the target device and
generate a bitstream that can be downloaded into the device.
• The implementation is typically done,
after the design has been verified by the functional simulator.
• Implemenation needs to be done prior to doing a timing simulation,
since timing information depends on a specific target device and
the way the design has been placed and routed on the device
Tatjana Petrovic 249/98
13/22
Implementation
• The first step is the translation of the design file (EDIF file)
in a proper format (NGD file - Native Generic Database).
• The next step is mapping of the design to
the specific target device.
The mapper optimizes the logic, trims or removes logic and
maps the design in the targeted FPGA device.
• Next is the Place&Route operation, followed by the generation
of the timing information for use by the timing simulator.
• The final step is the generation of the Bitstream which is a
configuration file that can be used to program the FPGA.
Tatjana Petrovic 249/98
14/22
Implementation Report Files
• Pad reports: the assignments of the I/O pins,
the same as specified on the schematic.
• Map report: if logic has been removed
(as part of the optimization) or added.
• The Place&Route report indicates
how much of the device has been utilized.
It gives also a rough estimate of the
average interconnection delay.
Tatjana Petrovic 249/98
15/22
Constraint Files
• There are two types of constraints:
(1) location and (2) timing.
• Location constraints allow you to control
mapping and positioning of logic elements in the target device,
such as the location of the pads (I/O pins).
• Timing constraints inform the system which paths are critical and
need short interconnections (high speed lines)
in order to ensure that your design's performance
functions properly under worst-case conditions.
• Constraints can be entered by
placing constraints on the schematic or in the ABEL file, or
using the Constraint Editor.
Tatjana Petrovic 249/98
16/22
Simulating a circuit
• Design verification is an important aspect of each
project design.
• For complex designs which consists of multiple modules
(macros) it is recommended that you simulate each module
separately before simulating the overall project.
• Design verification consists of functional
simulation and timing simulation.
•
•
Functional simulation can be done after the schematic has been entered or a
HDL file has been created and synthesized. Functional simulation gives
information about the logic operation of the circuit. It does not provide any
information about timing delays.
Timing simulation will tell you how fast signals travel through the gates and
how fast the overall circuit can be operated. Timing information can only be
obtained after the design has been implemented
Tatjana Petrovic 249/98
17/22
Functional Simulation
Logic Simulator window (Screen clip from Xilinx (TM) Foundation software)
Tatjana Petrovic 249/98
18/22
Functional Simulation
Component Selection windows
(Screen clip from Xilinx (TM) Foundation software)
Tatjana Petrovic 249/98
19/22
Timing Simulation
Timing simulation, showing the delay of the output signal (Buzzer) in relation to the input signal
(Screen clip from Xilinx (TM) Foundation software)
Tatjana Petrovic 249/98
20/22
Looking at the Floor Plan: the FPGA Editor
• You can use the FPGA Editor to look how the
device's resources have been used and placed on
the FPGA.
• You can also use this application to place and
route critical components before running the
automatic place and route tools on your design.
• The Editor allows you to display different levels
of details on the FPGA such as short wires, long
wires, switch boxes, routing between components,
components, etc.
Tatjana Petrovic 249/98
21/22
The FPGA Editor
Figure shows the FPGA editor window with a view of the FPGA floorplan,
around the area where the logic circuit has been placed.
The three blue boxes are the I/O blocks, and the red one is the logic block.
The switching network and the routing of the signals to the logic block are shown as well.
Tatjana Petrovic 249/98
22/22
Download