ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.

Slides:



Advertisements
Similar presentations
University Of Vaasa Telecommunications Engineering Automation Seminar Signal Generator By Tibebu Sime 13 th December 2011.
Advertisements

EELE 367 – Logic Design Module 2 – Modern Digital Design Flow Agenda 1.History of Digital Design Approach 2.HDLs 3.Design Abstraction 4.Modern Design Steps.
Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003.
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
Introductory Comments Regarding Hardware Description Languages.
Kazi Spring 2008CSCI 6601 CSCI-660 Introduction to VLSI Design Khurram Kazi.
The Design Process Outline Goal Reading Design Domain Design Flow
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
Foundation and XACTstepTM Software
1 Chapter 7 Design Implementation. 2 Overview 3 Main Steps of an FPGA Design ’ s Implementation Design architecture Defining the structure, interface.
Digital System Design EEE344 Lecture 1 INTRODUCTION TO THE COURSE
© 2011 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Xilinx Tool Flow.
Chapter 4 Programmable Logic Devices: CPLDs with VHDL Design Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights.
FPGA-Based System Design: Chapter 4 Copyright  2004 Prentice Hall PTR HDL coding n Synthesis vs. simulation semantics n Syntax-directed translation n.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
COE4OI5 Engineering Design. Copyright S. Shirani 2 Course Outline Design process, design of digital hardware Programmable logic technology Altera’s UP2.
ASIC Design Flow – An Overview Ing. Pullini Antonio
Xilinx Development Software Design Flow on Foundation M1.5
© 2003 Xilinx, Inc. All Rights Reserved For Academic Use Only Xilinx Design Flow FPGA Design Flow Workshop.
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Topics n Design methodologies.
1 Moore’s Law in Microprocessors Pentium® proc P Year Transistors.
Lecture 2 1 ECE 412: Microcomputer Laboratory Lecture 2: Design Methodologies.
COE 405 Design and Modeling of Digital Systems
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
1 An Update on Verilog Ξ – Computer Architecture Lab 28/06/2005 Kypros Constantinides.
Field Programmable Gate Arrays (FPGAs) An Enabling Technology.
Programmable Logic Training Course HDL Editor
1 Note on Testing for Hardware Components. 2 Steps in successful hardware design (basic “process”): 1.Understand the requirements (“product’) 2.Write.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU FPGA Design with Xilinx ISE Presenter: Shu-yen Lin Advisor: Prof. An-Yeu Wu 2005/6/6.
Introductory project. Development systems Design Entry –Foundation ISE –Third party tools Mentor Graphics: FPGA Advantage Celoxica: DK Design Suite Design.
An Overview of Hardware Design Methodology Ian Mitchelle De Vera.
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
Tools - Design Manager - Chapter 6 slide 1 Version 1.5 FPGA Tools Training Class Design Manager.
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
Introduction to ASIC flow and Verilog HDL
EE694v-Verification-Lect7-1- Verification Plan & Levels of Verification The Verification Plan Yesterdays and today’s design environment Design specification.
Digital Design Using VHDL and PLDs ECOM 4311 Digital System Design Chapter 1.
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May – 9 June 2007 Javier.
Silicon Programming--Testing1 Completing a successful project (introduction) Design for testability.
FPGA-Based System Design Copyright  2004 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
Chapter 11 System-Level Verification Issues. The Importance of Verification Verifying at the system level is the last opportunity to find errors before.
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
1 Lecture 1: Verilog HDL Introduction. 2 What is Verilog HDL? Verilog Hardware Description Language(HDL)? –A high-level computer language can model, represent.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
EMT 351/4 DIGITAL IC DESIGN Week # 1 EDA & HDL.
Introduction to the FPGA and Labs
Adapted from Krste Asanovic
ASIC Design Methodology
Topics Modeling with hardware description languages (HDLs).
Digital System Verification
Topics Modeling with hardware description languages (HDLs).
Reconfigurable Computing
Week 5, Verilog & Full Adder
332:437 Lecture 7 Verilog Hardware Description Language Basics
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
332:437 Lecture 7 Verilog Hardware Description Language Basics
Verification Plan & Levels of Verification
HIGH LEVEL SYNTHESIS.
332:437 Lecture 7 Verilog Hardware Description Language Basics
THE ECE 554 XILINX DESIGN PROCESS
H a r d w a r e M o d e l i n g O v e r v i e w
Synchronous Digital Design Methodology and Guidelines
Digital Designs – What does it take
THE ECE 554 XILINX DESIGN PROCESS
Synchronous Digital Design Methodology and Guidelines
Presentation transcript:

ASIC/FPGA design flow

FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming Device Programming Timing Simulation Timing Simulation Synthesis & Implementation Synthesis & Implementation Functional Simulation Functional Simulation t pd =22.1ns f max =47.1MHz FPGA CPLD

Design Specification What are the main design considerations? –Design feasibility? Performance power consumption cost –Design spec? Written (Document) –Good starting point, but can be misinterpreted by design team Executable (UML, C/C++, Behavioral VHDL, SystemVerilog) –Harder to understand, less room for misinterpretation –Implementation platform FPGA/CPLD? ASIC? Which FPGA/CPLD vendor? Which device family? –Development time?

RTL Specification Determine I/O signals –Standard interface, protocol, custom interface Partition design into functional blocks –Datapath, Control logic, Memory, etc. Determine block interfaces Specify each block separately at RTL –MUXs, counters, adders, flip-flops etc.

Detailed Design Choose the design entry method –Schematic Intuitive & easy to debug Not portable Poor designer productivity (gates/time) –HDL (Hardware Description Language), e.g. Verilog, VHDL, SystemC Requires some experience, harder to debug Descriptive & portable Easy to modify Greater productivity –Mixed HDL & schematic Interpret the specifications Manage the design hierarchy –Design partitioning Chip partitioning Logic partitioning –Use vendor-supplied IP libraries to reduce design time –Create & manage user-created libraries (circuits)

Functional Simulation Preparation for simulation –Generate simulation patterns Waveform entry HDL testbench –Generate simulation netlist Functional simulation –To verify the functionality of your design only Simulation results –Waveform display –Text output –Self-checking testbench Challenge –Sufficient & efficient test patterns

HDL Synthesis Synthesis = Translation + Optimization –Translate HDL design files into gate-level netlist –Optimize according to your design constraints Area constraints Timing constraints Power constraints Main challenges –Learn synthesizable coding style –Use proper design partitioning for synthesis –Specify reasonable design constraints –Use HDL synthesis tools efficiently assign z=a&b a b z

Design Implementation Implementation flow –Netlist merging, flattening, data base building –Design rule checking –Logic optimization –Block mapping & placement –Net routing –Configuration bitstream generation (FPGA only) –Scan flip-flop insertion (ASIC only) Implementation results –Design error or warnings –Device utilization (FPGA) –Die size (ASIC) –Timing reports Challenge –How to reach high performance & high utilization implementation? FPGA CPLD a b z

Timing Simulation (optional) Post-layout simulation Includes component and wire delays, clock skew, setup and hold times Same input vectors with functional simulation Not necessary if Static Timing Analysis shows no problems

Device Programming (FPGA only) Choose the appropriate configuration scheme –SRAM-based FPGA/CPLD devices Downloading the bitstream via a download cable Programming onto a non-volatile memory device & attaching it on the circuit board –OTP, EPROM, EEPROM or Flash-based FPGA/CPLD devices Using hardware programmer ISP Finish the board design Program the device Challenge –Board design –System considerations FPGA CPLD

Testing (ASIC only) Find defects in chips that return from the foundry due to the manufacturing process Identify differences between specification/verification/prototyping and manufactured ASIC

Common pitfalls/important points Not detailed enough specifications –Do not start design entry until all details are clear –A poor design cannot be saved by good code and synthesis/implementation constraints –Sometimes though, it is better to let the tool do the optimization (for example state machines) Always remember that you cannot prove a complex design has no bugs For complex designs, verification (simulation) and redesign is 80% of total design time!

Testing Basics Defect: A difference between intended design and actual hardware Error: A wrong output produced through a defect Fault: A defect in a higher abstraction level

Example

Controllability and observability Controllability: The difficulty of setting a specific signal to 0 or 1 Observability: The difficulty of reading a specific signal Electron beam testing is too expensive Must set signal through primary inputs and observe through primary outputs

Design For Testability (DFT)

Boundary scan In boundary scan, all flip-flops enter a test mode where they are controllable and observable After functional verification, normal flip- flops are replaced by scan flip-flops Only D flip-flops must be used Clocks must not be generated internally

Built-In Self-Test (BIST)