49
Integrated Circuits Laboratory Faculty of Engineering Digital Design Digital Design Flow Flow Using Mentor Graphics Tools Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

Embed Size (px)

Citation preview

Page 1: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

Integrated Circuits Laboratory

Faculty of Engineering

Digital Design Flow Digital Design Flow Using Mentor Graphics ToolsUsing Mentor Graphics Tools

Presented by: Sameh Assem Ibrahim 16-October-2003

Page 2: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

2/36 Integrated Circuits Laboratory

Faculty of Engineering

ObjectivesObjectives

Learn the digital design flow starting from VHDL down to physical device verification.

Be familiar with the basics of downloading a design into an FPGA and testing it.

Learn Mentor Graphics Tools:

- FPGA Advantage 5.x : - HDL Designer Series (Design Entry)

- ModelSim (Simulation)

- Leonardo Spectrum (Synthesis)

Learn Xilinx Tools:

- ISE Alliance (Placement and Routing)

- iMPACT (Design Downloading into FPGA)

Page 3: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

3/36 Integrated Circuits Laboratory

Faculty of Engineering

Digital Design FlowDigital Design Flow

HDL Designer Series

(Design Entry)

Download design to FPGA chip Design Architect

(Schematic editing)

ENIREAD & SG(Format conversion)

(Schematic generation)

Xilinx Alliance(FPGA Implementation)

ModelSim

(VHDL Simulation)

FPGA ASIC

Leonardo Spectrum(FPGA or ASIC synthesis)

VHDL netlist and SDF file for timing simulation

VHDL netlist & VITAL Post synthesis verification

Testing

fail

fail

Page 4: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

4/36 Integrated Circuits Laboratory

Faculty of Engineering

Digital Design FlowDigital Design Flow

ASIC

GDSII format to foundry

Mach TA/PA(Timing and Power

analysis)

QuickSim(Digital simulation

with delays)

SPICE netlist

IC station(Autoplace, Autoroute, DRC, LVS, netlist and parasitics extraction)

DVE(Viewpoints generation)

fail

Page 5: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

5/36 Integrated Circuits Laboratory

Faculty of Engineering

Design EntryDesign Entry

Using HDL Designer Series.

First step is to create a design library.

Design entry can either be Top-Down or Bottom-Up.

Five different design entry methods are available:

- VHDL / Verilog

- Truth Table

- Flow Charts

- State Machines

- Block Diagrams

Page 6: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

6/36 Integrated Circuits Laboratory

Faculty of Engineering

Creating the Design Library (1)Creating the Design Library (1)

Design Entry

1. Run HDL Designer Series:

> Start > All Programs > FPGA Advantage 5.x > Design > HDL Designer

Page 7: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

7/36 Integrated Circuits Laboratory

Faculty of Engineering

Creating the Design Library (2)Creating the Design Library (2)

Design Entry

Library Folder

Library Name

Press OK and Open Library to create designs

Page 8: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

8/36 Integrated Circuits Laboratory

Faculty of Engineering

Creating the DesignCreating the Design

Design Entry

Page 9: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

9/36 Integrated Circuits Laboratory

Faculty of Engineering

VHDL Entry (1)VHDL Entry (1)

Design Entry

Page 10: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

10/36 Integrated Circuits Laboratory

Faculty of Engineering

VHDL Entry (2)VHDL Entry (2)

Design Entry

Entity Name

Library Name

Architecture Name

Page 11: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

11/36 Integrated Circuits Laboratory

Faculty of Engineering

VHDL Entry (3)VHDL Entry (3)

Entity is written here

Architecture is written here

Design Entry

Save

Page 12: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

12/36 Integrated Circuits Laboratory

Faculty of Engineering

Truth Table Entry (1)Truth Table Entry (1)

Blue = Input

Yellow = OutputRight click to add or remove columns

Design Entry

Page 13: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

13/36 Integrated Circuits Laboratory

Faculty of Engineering

Truth Table Entry (2)Truth Table Entry (2)

Design EntryEnter required inputs and outputs

Save

Page 14: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

14/36 Integrated Circuits Laboratory

Faculty of Engineering

Truth Table Entry (3)Truth Table Entry (3)

Design Entry

Library NameEntity Name

Architecture Name

Yet an entity is still required

Page 15: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

15/36 Integrated Circuits Laboratory

Faculty of Engineering

Truth Table Entry (4)Truth Table Entry (4)

Design Entry

Page 16: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

16/36 Integrated Circuits Laboratory

Faculty of Engineering

Truth Table Entry (6)Truth Table Entry (6)

Design Entry

Library Name

Truth Table Entity Name

Page 17: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

17/36 Integrated Circuits Laboratory

Faculty of Engineering

Truth Table Entry (7)Truth Table Entry (7)

Design Entry

Page 18: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

18/36 Integrated Circuits Laboratory

Faculty of Engineering

Truth Table Entry (8)Truth Table Entry (8)

Generate HDL

Design Entry

Page 19: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

19/36 Integrated Circuits Laboratory

Faculty of Engineering

Flow Chart EntryFlow Chart Entry

Design Entry

Save

Generate HDL

Flow

End Point

Action

Stat Point

An Entity is required

Page 20: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

20/36 Integrated Circuits Laboratory

Faculty of Engineering

State Diagram EntryState Diagram Entry

Mainly Used for Controllers (Finite State Machines “FSM”)

Design Entry

Add state Start state

1st one added

Double click to add action

Double click to add transition condition

Add transition

Generate HDL

Page 21: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

21/36 Integrated Circuits Laboratory

Faculty of Engineering

Block Diagram Entry (1)Block Diagram Entry (1)

Design Entry

Block Diagram Editor

Adding a block (for Top-Down designs)

Adding a component (for Bottom-Up designs)

Adding a moduleware (a library of VHDL blocks)

ConnectorsI/O ports

Page 22: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

22/36 Integrated Circuits Laboratory

Faculty of Engineering

Block Diagram Entry (2)Block Diagram Entry (2)

Adding a component

Design Entry

Browse for your libraries here

Browse for your components here

Then drag to your Block diagram

Page 23: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

23/36 Integrated Circuits Laboratory

Faculty of Engineering

Block Diagram Entry (3)Block Diagram Entry (3)

Adding a modulware

Design Entry

Page 24: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

24/36 Integrated Circuits Laboratory

Faculty of Engineering

Block Diagram Entry (4)Block Diagram Entry (4)

Design EntryExample of a Block Diagram

Page 25: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

25/36 Integrated Circuits Laboratory

Faculty of Engineering

Test BenchesTest Benches

Test benches are generated automatically as a block diagram with a tester and a block under test.

The tester is a VHDL file with the entity already specified, only the test waveforms are required.

Design Entry

Page 26: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

26/36 Integrated Circuits Laboratory

Faculty of Engineering

SimulationSimulation

Using ModelSim.

The created testbench can be used.

Test Waveforms can be created within the program.

Outputs can be checked either as waveforms or as a list of numbers.

Page 27: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

27/36 Integrated Circuits Laboratory

Faculty of Engineering

Starting ModelSimStarting ModelSim

Select the design to be simulated and then press

Compilation is done and then ModelSim starts.

Simulation

Page 28: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

28/36 Integrated Circuits Laboratory

Faculty of Engineering

ModelSim WindowsModelSim Windows

Simulation

Page 29: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

29/36 Integrated Circuits Laboratory

Faculty of Engineering

Using ModelSim (1)Using ModelSim (1)

Simulation

Page 30: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

30/36 Integrated Circuits Laboratory

Faculty of Engineering

Using ModelSim (2)Using ModelSim (2)

Simulation

Page 31: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

31/36 Integrated Circuits Laboratory

Faculty of Engineering

Using ModelSim (3)Using ModelSim (3)

Simulation

Select a signal and either use Force for a specific input or Clock for a periodic signal

Page 32: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

32/36 Integrated Circuits Laboratory

Faculty of Engineering

Using ModelSim (4)Using ModelSim (4)

Simulation

Time of simulation in ns

Run simulation

Page 33: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

33/36 Integrated Circuits Laboratory

Faculty of Engineering

SynthesisSynthesis

Using Leonardo Spectrum.

A technology dependent step.

Either ASICs or FPGAs can be targeted.

Various output formats can be obtained (VHDL/SDF/EDIF)

Page 34: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

34/36 Integrated Circuits Laboratory

Faculty of Engineering

Running Leonardo SpectrumRunning Leonardo Spectrum

Synthesis

Click on the synthesizer button

Select your designunit

Page 35: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

35/36 Integrated Circuits Laboratory

Faculty of Engineering

Adjusting Synthesis FlowAdjusting Synthesis Flow

Synthesis

Choose yourdevice family

Choose yourdevice

Choose yourspeed grade

Choose yourwiring table

Choose what tooptimize for andwhether topreservehierarchy or not

Check insert I/0 pads

Page 36: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

36/36 Integrated Circuits Laboratory

Faculty of Engineering

Generating the EDIF FileGenerating the EDIF File

SynthesisPress Run Flow

The EDIF file is created in this path

Page 37: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

37/36 Integrated Circuits Laboratory

Faculty of Engineering

Other Outputs (1)Other Outputs (1)

SynthesisRTL Schematic Technology Schematic

Page 38: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

38/36 Integrated Circuits Laboratory

Faculty of Engineering

Other Outputs (2)Other Outputs (2)

Synthesis

VHDL & SDF Area Report

Page 39: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

39/36 Integrated Circuits Laboratory

Faculty of Engineering

Xilinx ISE4.2i FlowXilinx ISE4.2i Flow

The input to the flow is the EDIF file from Leonardo Spectrum.

The output is a bit file to be downloaded into the FPGA.

Steps are:

- Mapping the design blocks into the FPGA design units.

- Placement and Rouing of these units.

- Genration of the bit file and downloading it to the FPGA.

An FPGA programmer kit must be present, connected to the PC and with a manual at hand to know pins configuration.

Page 40: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

40/36 Integrated Circuits Laboratory

Faculty of Engineering

Creating a New Project (1)Creating a New Project (1)

Design Implementation

Page 41: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

41/36 Integrated Circuits Laboratory

Faculty of Engineering

Creating a New Project (2)Creating a New Project (2)

Design Implementation

Insert the nameof the project

Insert the path you want to createthe project in

Add data related to device family,the device itself, and the design flowused

Page 42: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

42/36 Integrated Circuits Laboratory

Faculty of Engineering

Creating a New Project (3)Creating a New Project (3)

Design Implementation

Choose whether to add the EDIFnetlist or to add a copy from it

Page 43: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

43/36 Integrated Circuits Laboratory

Faculty of Engineering

Implementing the DesignImplementing the Design

Design Implementation

There are 3 steps for implementing the design:

1. Translating the EDIF netlist into primitives.

2. Mapping these primitives into their technology dependent counterpart.

3. Placing and routing these technology primitives.

Page 44: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

44/36 Integrated Circuits Laboratory

Faculty of Engineering

Translating the Design (1)Translating the Design (1)

Design Implementation

Translates the EDIF and gives a report declaring success of translationor gives warnings and errors.

Generates a post translation modelthat can be in VHDL format fora first step back annotation

Page 45: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

45/36 Integrated Circuits Laboratory

Faculty of Engineering

Right click on this tab

Choose properties

Translating the Design (2)Translating the Design (2)

Design Implementation

Choose VHDL Format

VHDL File Name

Page 46: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

46/36 Integrated Circuits Laboratory

Faculty of Engineering

Mapping the DesignMapping the Design

Design Implementation

Maps the primitives into technology primitives and generates a report.

Generates a VHDL as before.

Page 47: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

47/36 Integrated Circuits Laboratory

Faculty of Engineering

Placement and Routing of the Placement and Routing of the DesignDesign

Design Implementation

Page 48: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

48/36 Integrated Circuits Laboratory

Faculty of Engineering

Programming the FPGAProgramming the FPGA

Design Implementation

Generates the programming bit file for the FPGA

Generates a file to be loaded into the PROM (if present in the kit)

Downloads the design into the FPGA(iMPACT software)

Page 49: Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003

49/36 Integrated Circuits Laboratory

Faculty of Engineering

ThanksThanks

Special thanks go to1. Eng. Sameh Talal (Aiat Co.)2. Eng. Ahmed Mohsen

For their help in preparing the material for this presentation.