Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SEPT2011
Page | 1
ELE655 LAB MANUAL 1. Design Entry may have two alternatives: a) Performing HDL coding for synthesis as the target (Xilinx HDL Editor) b) Using Cores (Xilinx Core Generator) 2. Functional Simulation of Synthesizable HDL code (MTI Model Sim) 3. Design Synthesis (Xilinx project navigator) 4. Design implementation (Xilinx Design Manager) The stages are linked as follows:
SEPT2011
FUNCTIONAL SIMULATION
SYNTHESIS
IMPLEMENTATION
TIMING SIMULATION
Design Entry The first stage of Xilinx design flow is a design entry process. A design must be specified either a schematic editor or HDL text-based tool
Functional Simulation The functional simulation of the design is used to verify functionality of the design assuming zero delay in simulation. The simulation is performed before the design is implemented as hardware. Testbenches (Verilog HDL) or text fixtures are used to specify circuit stimuli and responses. Simulation can be divided as functional and timing simulation. Functional simulation verifies that the designs specifications are correctly coded . Timing simulation operates with real delays (results of Page | 2
SEPT2011
device implementation) and is used for verification of implemented design. Timing data are given in an .sdf file (Standard Delay Format) . Xilinx supports functional and timing simulations at different points of the design flow: Register Transfer Level (RTL) simulation Post-synthesis functional simulation (Pre-NGDBuild) Post-implementation back-annotated timing simulation.
Design Synthesis After simulation, synthesis is performed and the target technology (choice of a particular FPGA device family) is selected. The output of the synthesis process is creation of gate level netlist (Electronic Design Interchange Format - EDIF). The EDIF netlist is used as input file to Xilinx Implementation tool and specifies how the core will be implemented.
Design Implementation Design implementation includes the following steps: i) ii) Translate - EDIF netlist must be converted into Native Generic Database file (NGD) Map the UCF(User Constraint File) file is an input into a MAP program that maps logical design to Xilinx FPGA. Place and Route(PAR) the mapped design is ready to be placed and routed. The output is a fully routed NCD file.
iii)
The implement design process generated review reports such as Map report and PAR report. To improve the design, changes can be made at process properties, constraints and source files.
Program onto FPGA Programming on the Xilinx device can be made as follows: Creation of a programming file (BIT) to program FPGA Generate a PROM, ACE, JTAG file for debugging or to download to device Use iMPACT to program the device through programming cable.
Xilinx FPGA, as an SRAM-based programmable PLD, must be configured with the configuration bitstream. The configuration bitstream is generated from the fully routed NCD file, by means of a BitGen program.
Page | 3
SEPT2011
(a)Multipler
(b) Incrementer by 1
IF Stage Figure 1 IF Stage in MIPS and its components (a) multiplexer (b) incrementer
In lab #1, you are required to write modules for multiplexer and incrementer as given in Figure 2.. Once these modules have been written, write their test benches to simulate possible inputs as provided in Figure 3. Synthesize the modules and capture the RTL schematic of the modules.
Page | 4
SEPT2011
Source files
Page | 5