CAD Techniques for IP-Based and System-On-Chip Designs Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {Email:

Slides:



Advertisements
Similar presentations
Digital System Design Subject Name : Digital System Design Course Code : IT-314.
Advertisements

Embedded System, A Brief Introduction
TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
The Design Process Outline Goal Reading Design Domain Design Flow
Behavioral Synthesis Outline –Synthesis Procedure –Example –Domain-Specific Synthesis –Silicon Compilers –Example Tools Goal –Understand behavioral synthesis.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Combinational Logic Design Sections 3-1, 3-2 Mano/Kime.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Design Flow – Computation Flow. 2 Computation Flow For both run-time and compile-time For some applications, must iterate.
Define Embedded Systems Small (?) Application Specific Computer Systems.
Copyright  1999 Daniel D. Gajski IP – Based Design Methodology Daniel D. Gajski University of California
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
ELEN468 Lecture 11 ELEN468 Advanced Logic Design Lecture 1Introduction.
ECE Lecture 1 1 ECE 3561 Advanced Digital Design Department of Electrical and Computer Engineering The Ohio State University.
Digital System Design Verilog ® HDL Maziar Goudarzi.
ELEN468 Lecture 11 ELEN468 Advanced Logic Design Lecture 1Introduction.
Mahapatra-Texas A&M-Fall'001 Codesign Framework Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available.
Center for Embedded Computer Systems University of California, Irvine and San Diego SPARK: A Parallelizing High-Level Synthesis.
1 Chapter 7 Design Implementation. 2 Overview 3 Main Steps of an FPGA Design ’ s Implementation Design architecture Defining the structure, interface.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Design methodology.
1 Chapter 2. The System-on-a-Chip Design Process Canonical SoC Design System design flow The Specification Problem System design.
CSET 4650 Field Programmable Logic Devices
Electronic Design Automation. Course Outline 1.Digital circuit design flow 2.Verilog Hardware Description Language 3.Logic Synthesis –Multilevel logic.
1 VERILOG Fundamentals Workshop סמסטר א ' תשע " ה מרצה : משה דורון הפקולטה להנדסה Workshop Objectives: Gain basic understanding of the essential concepts.
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
Voicu Groza, 2008 SITE, HARDWARE/SOFTWARE CODESIGN OF EMBEDDED SYSTEMS 1 Hardware/Software Codesign of Embedded Systems DESIGN METHODOLOGIES Voicu.
Shashi Kumar 1 Logic Synthesis: Course Introduction Shashi Kumar Embedded System Group Department of Electronics and Computer Engineering Jönköping Univ.
Principles Of Digital Design Chapter 1 Introduction Design Representation Levels of Abstraction Design Tasks and Design Processes CAD Tools.
CAD for Physical Design of VLSI Circuits
1 Chapter 6 Co-synthesis Techniques. 2 Cosynthesis Methodical approach to system implementations using automated synthesis-oriented techniques Methodology.
Extreme Makeover for EDA Industry
Automated Design of Custom Architecture Tulika Mitra
Hardware Design Environment Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung University.
Section 10: Advanced Topics 1 M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.
1 H ardware D escription L anguages Modeling Digital Systems.
HDL-Based Layout Synthesis Methodologies Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
CPE 626 Advanced VLSI Design Aleksandar Milenkovic Assistant.
COE 405 Design and Modeling of Digital Systems
IEEE ICECS 2010 SysPy: Using Python for processor-centric SoC design Evangelos Logaras Elias S. Manolakos {evlog, Department of Informatics.
Hardware/Software Co-design Design of Hardware/Software Systems A Class Presentation for VLSI Course by : Akbar Sharifi Based on the work presented in.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
ESL and High-level Design: Who Cares? Anmol Mathur CTO and co-founder, Calypto Design Systems.
UNIT 1 Introduction. 1-2 OutlineOutline n Course Topics n Microelectronics n Design Styles n Design Domains and Levels of Abstractions n Digital System.
- 1 - EE898_HW/SW Partitioning Hardware/software partitioning  Functionality to be implemented in software or in hardware? No need to consider special.
Business Trends and Design Methodologies for IP Reuse Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
CprE 588 Embedded Computer Systems Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #5 – System-Level.
System-level power analysis and estimation September 20, 2006 Chong-Min Kyung.
ECE-C662 Lecture 2 Prawat Nagvajara
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
Problem Solving Techniques Using Pascal Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan 30043, ROC
System-on-Chip Design Hao Zheng Comp Sci & Eng U of South Florida 1.
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
EMT 351/4 DIGITAL IC DESIGN Week # 1 EDA & HDL.
System-on-Chip Design
ASIC Design Methodology
Digital System Design An Introduction to Verilog® HDL
EEE2135 Digital Logic Design Chapter 1. Introduction
IP – Based Design Methodology
Introduction to cosynthesis Rabi Mahapatra CSCE617
Embedded systems, Lab 1: notes
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
HIGH LEVEL SYNTHESIS.
Presentation transcript:

CAD Techniques for IP-Based and System-On-Chip Designs Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {

Outline Introduction Basic synthesis tasks Codesign of embedded systems FPGA synthesis and rapid prototyping IP-reuse design methodologies System-on-chip design methodologies HDL-based layout synthesis methodologies

Computer-Aided Design (CAD) Why? What? How?

Human-Centric Design Methodologies Designers are the creator of designs. Designers are artists. Designers pursuit the state of arts. Free styles with less discipline. May not be efficient on handling complex designs. May not be effective on shortening the design cycle.

Human Vs. Computer (Automation) Human is good at innovating creation. Human is not good at handling tedious and repetitive tasks. Computer is good at handling tedious and repetitive tasks, at least it will never complain about it.

Why needs CAD? Design is getting more and more complex. Try to develop an error-prone design? Time-to-market pressure.

What is CAD? CAD = Computer-Aided Design. CAD will never be in the leading role of a design process!!! Just a supporting role. Any techniques, methods, solutions which are used solve a problem in a design process.

How to apply CAD? Understand the design process. Identify the problems which need CAD supports. Correctly define the problem and then solve it.

A Typical System Design Process Idea System HardwareSoftware System board Chips OS Application SW

A Typical Chip Design Process Chip spec. RTL designLogic designGate-level design Layout

Silicon Compilation Compiler: converting a high-level source code to a object code. Silicon compiler: converting a high-level source code (system/chip description) to a piece of silicon.

Synthesis Synthesis is a process which converts a design from one domain to another System-level synthesis High-level (Behavioral) synthesis RTL synthesis Logic synthesis Layout synthesis HDL-based synthesis

The Y Chart BehavioralStructure Physical System level Ckt level System spec. CPU,Mem Chip/BoardTransformation (Synthesis)

Design Level BehavioralStructure Physical System Spec. Algorithm RTL spec. Boolean Eqn. Differential Eqn. CPU, Mem. Processor ALU, Reg. Etc., Gate, FFs Transistor Chip/board Block/chip Macro-cell Std. Cell Polygon

Transitions in the Y Chart BehavioralStructure Physical Synthesis Analysis Optimization Extraction Generation Refinement Abstraction

System-Level Synthesis Inputs: Design functionality (e.g., instruction of a computer) and a set of design constraints or requirements. The transition from a system-level specification to one or more subsystem descriptions at the algorithmic level (a set of communicating concurrent processes, together with a behavioral description at the algorithmic level for each subsystem).

High-Level Synthesis Starting point: a behavioral description at the algorithmic level, which defines a precise procedure for the computational solution of a problem. No notion of “CLOCK”. Outputs: controller and datapath. Time/area tradeoff.

RTL-Level Synthesis Inputs: an RTL netlist and a set of design constraints. Each component in the netlist is described either in behavioral, structural, or logic level. Controller synthesis: the transition from controller behavior to structure. Module generation.

Logic-Level Synthesis Inputs: Boolean functions and FSMs. Outputs: the blocks of combinational logic and storage elements. Logic minimization and optimization. Technology mapping.

Physical-Level Synthesis Inputs: a hierarchical gate-level netlist which may contain hard macros and flexible soft macros. Outputs: a layout. Floorplanning. Placement. Routing. Compaction.

HDL-Based Synthesis Why? What? How? VHDL and Verilog: originally a simulation- based language. Programming languages => hardware! Syntax and semantics gaps. Compilation is the key to the HDL-based synthesis.

Other Design Issues Design entry. Design verification and validation: - simulation - formal method - logic emulation - rapid prototyping - design rule checking Testing

Basic Synthesis Tasks

The Specification Language Problem Many Hardware Descriptive Languages (HDLs): VHDL, Verilog, AHPL, ISP, PMS which are derived from general programming languages, e.g., ADA, ALGOL, C, and PASCAL. All general programming languages can be used for system-level simulation at behavioral-level. No single language can cover the software and hardware spectrum!!!! CASE problem!!!

Behavioral Transformations Optimizing transformations: - Procedure in-line expansion - Loop unrolling - SELECT (IF & CASE) transformations Processes: concurrent execution. Interprocess communication: synchronization issues Similar to OS problem!

Communications Mapping the logical communication structure onto a physical communication structure. Synthesis of communication protocols.

System-Level Partitioning Hardware-software codesign. A lot of academia studies in this area!!! The key to the success is an accurate estimation engine to support the partitioning procedure!!!

Design Exploration Time/area tradeoff. Architectural-level exploration. Memory hierarchy and organization. System-level early design planning. Design estimation issues.

The Classical High-Level Synthesis Tasks Design representation issues. Behavioral transformations. Allocations. Scheduling. Binding. Estimation and design exploration. Why after a decade of intensive research effort high-level synthesis has not yet been accepted by industry????