SoC Design for the New Millennium Daniel D. Gajski

Size: px
Start display at page:

Download "SoC Design for the New Millennium Daniel D. Gajski"

Transcription

1 SoC Design for the New Millennium Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine

2 Outline System gap Design flow Model algebra System environment Vision Conclusion Copyright 2003 Daniel D. Gajski 2

3 Past, Present and Future Design Flow Capture & Simulate Describe & Synthesize Specify, Explore & Refine Specs Specs Executable Spec Functionality System Gap Algorithms SW? Algorithms SW? Algorithms Architecture Communications Network Algorithms Connectivity Protocols Design Describe Design SW/HW Design Performance Simulate Logic Simulate Logic Logic Timing Physical Physical Physical Manufacturing Manufacturing Manufacturing 1960 s 1980 s 2000 s Copyright 2003 Daniel D. Gajski 3

4 Missing Semantics: Simulation Dominated Design Flow Simulatable but not synthesizable/verifiable case X is when X1 => Finite State Machine when X2 => Table Lookup Controller Memory (VHDL, Verilog, C, SystemC, ) Copyright 2003 Daniel D. Gajski 4

5 Principles of Design Methodology Well defined specification Complete Just another model Well defined system models Several possible models Well defined semantics Formal representation Design synthesis Design decisions => transformations Automatic model generation Model verification Formally defined transformations Provable equivalence System Specification model SER Intermediate models Cycle accurate implementation model Copyright 2003 Daniel D. Gajski 5

6 Modeling as Algebra Algebra = < {objects}, {operations} > Set of all possible expressions [ex: a * (b + c)] Model Algebra = < {objects}, {compositions} > Set of all possible models [ex: ] Model Transformation t is a change in objects or composition Model refinement is an ordered set of transformations Methodology is a sequence of models and corresponding refinements Copyright 2003 Daniel D. Gajski 6

7 Model Definition Model Algebra = < {objects}, {composition rules} > Objects Behaviors (representing tasks / computations / functions) Channels (representing communication between behaviors) Composition rules Sequential, parallel, pipelined, FSM Behavior composition creates hierarchy Behavior composition also creates execution order Relations Relations define a specific model [a*((b+c)*(b-c))] Relations define the model structure (composition and connectivity) Relations? {objects} x {compositions} Copyright 2003 Daniel D. Gajski 7

8 Model Transformations (Rearrange and Replace) Rearrange object composition To distribute computation over components Replace objects Import library components Add / Remove synchronization To correctly transform a sequential composition to parallel and vice-versa Decompose abstract data structures To implement data transaction over a bus Other transformations B2 B1 a*(b+c) = a*b + a*c Distributivity of multiplication over addition analogous to B3 = B1 B2 PE1 B3 Distribution of behaviors (tasks) over components PE2 Copyright 2003 Daniel D. Gajski 8

9 Model Refinement Definition Ordered set of transformations < t m,, t 2, t 1 > is a refinement model B = t m ( ( t 2 ( t 1 ( model A ) ) ) ) Derives a more detailed model from an abstract one Specific sequence for each model refinement Not all sequences are relevant Automatic model generation Each transformation can be automated Each refined model can be automatically generated Equivalence verification Each transformation maintains functional equivalence Refinement is thus correct by construction Copyright 2003 Daniel D. Gajski 9

10 Refinement based Methodology Refinement based system level methodology Methodology := < {models}, {refinements} > Each transformation is uniquely defined Each transformation can be automatic No need for designer modeling No need for modeling languages Designers only make design decisions Copyright 2003 Daniel D. Gajski 10

11 System Synthesis through Refinement Set of models Each design decisions => one model transformation Select components / connections/ IPs Map behaviors / channels Schedule behaviors/channels Add new objects ( IF, IC, Arbiters, ) Synchronize to preserve equivalence Design is a sequence of decisions Refinement is a sequence of model transformations Synthesis = design + refinement Challenge: define the design and refinement sequences Copyright 2003 Daniel D. Gajski 11

12 System Verification through Refinement Set of models Transformations preserve equivalence Same partial order of tasks Same input/output data for each task Same partial order of data transactions Equivalent replacements All refined models will be equivalent to input model Still need to verify First model Correctness of replacements Designer Decisions Library of objects Model A Refinement Tool t1 t2 tm Model B Copyright 2003 Daniel D. Gajski 12

13 Y Chart Behavior (Function) System RTL/CA Logic Transistor Structure (Design) MoC MoC MoC Physical (Layout) MoC Copyright 2003 Daniel D. Gajski 13

14 RTL Functional Model Finite State Machine with Data (FSMD) Combined model for control and computation FSMD = FSM + DFG Implementation: controller plus datapath Op1 Op2 Op1 Op2 Op3 S1 S2 Op4 Op1 Op2 S3 Op5 Op6 Op3 FSMD model (SFSMD model) Copyright 2003 Daniel D. Gajski 14

15 RTL Structural Model Multi-pipelined data path Hardwired or programmable controller RISC or NISC style Control inputs Data memory D Q D Q Cotrol signals IR Register Selector RF Cache Bus 1 Next- Sate Logic or Address generator D Q State register or PC Output logic or Program memory SR ALU / Latch Bus 2 Bus 3 Controller Signal status Register Datapath Control outputs Datapath outputs Copyright 2003 Daniel D. Gajski 15

16 RTL Synthesis Variable binding Rescheduling Allocation Operation Binding Bus Binding FSM Synthesis RTL Control inputs Data memory D Q D Control signals IR Register Selector RF Memory Op1 Op2 Op1 Op2 Op3 S1 S3 S2 Op1 Op5 Op2 Op3 Op4 Op6 Controller Nextstate logic or Address generator Q D State Q register or PC Output logic or Program memory SR Signal status ALU / Latch Register Bus 1 Bus 2 Bus 3 Datapath FSMD model Control outputs Datapath outputs RTL/NISC structural model Copyright 2003 Daniel D. Gajski 16

17 System Functional Model Program State Machine States described by procedures in a programming language Example: SpecC! (SystemC subset?!) Proc Proc PSM model Proc Proc Proc Copyright 2003 Daniel D. Gajski 17

18 System Structural Model Arbitrary components (Proc., IP, Memory) Arbitrary connectivity (buses, protocols) System architecture Memory µprocessor IP Comp. Interface Interface Bus Interface Interface Memory Custom HW Copyright 2003 Daniel D. Gajski 18

19 System Synthesis Variable Binding Behavior Binding Channel Binding Allocation IF Synthesis Profiling Refinement System System architecture Memory µprocessor IP Comp. Proc Proc Interface Interface Proc Proc Proc Interface Interface Bus PSM model Custom HW Memory Copyright 2003 Daniel D. Gajski 19

20 System Synthesis (continued) RTL MoC Control RAM Pipeline IF FSM State IP Netlist PC IR FSMD1 FSMD2 FSMD3 FMDS4 FSMD5 Control State Datapath Mem RF IF FSM State Memory ALU HCFSMD model RTL/IS Implementation + results Copyright 2003 Daniel D. Gajski 20

21 System Level Models Models based on time granularity of computation and communication A system level design methodology is a path from model A to F Communication Cycletimed D F Approximatetimed C E A. System specification model B. Component model C. Bus-arbitration model D. Bus-functional model E. Cycle-accurate computation model F. Implementation model Cycletimed Untimed A B Untimed Approximatetimed Computation Source: Lukai Cai, D. Gajski. Transaction level modeling: An overview, ISSS 2003 Copyright 2003 Daniel D. Gajski 21

22 A: Specification Model Objects - Computation -Behaviors - Communication -Variables B2B3 B2 v2 = v1 + b*b; B1 v1 = a*a; v1 B3 v3= v1- b*b; Composition - Hierarchy - Order -Sequential -Parallel -Piped -States - Transitions v2 v3 -TI, TOC Communication Cycletimed D F B4 v4 = v2 + v3; c = sequ(v4); - Synchronization -Notify/Wait Approximatetimed C E Cycletimed Untimed A B Untimed Approximatetimed Computation Copyright 2003 Daniel D. Gajski 22

23 B: Component-Assembly Model Objects - Computation - Proc - IPs - Memories - Communication -Variable channels PE1 B1 PE2 v1 = a*a; cv12 B2 v2 = v1 + b*b; cv11 cv2 PE3 B3 v3= v1- b*b; v3 B4 v4 = v2 + v3; c = sequ(v4); Composition - Hierarchy - Order -Sequential -Parallel -Piped -States - Transitions -TI, TOC Communication Cycletimed D F A B1 v1 = a*a; v1 - Synchronization -Notify/Wait B2B3 Approximatetimed C E B2 v2 = v1 + b*b; B3 v3= v1- b*b; v2 v3 Cycletimed Untimed A B Untimed Approximatetimed Computation B4 v4 = v2 + v3; c = sequ(v4); Copyright 2003 Daniel D. Gajski 23

24 C: Bus-Arbitration Model Objects - Computation - Proc - IPs (Arbiters) - Memories - Communication - Abstract bus channels PE1 B1 PE2 v1 = a*a; B2 v2 = v1 + b*b; PE4 (Arbiter) 3 cv12 cv2 1 2 cv11 1. Master interface 2. Slave interface 3. Arbiter interface PE3 B3 v3= v1- b*b; v3 B4 v4 = v2 + v3; c = sequ(v4); Composition - Hierarchy - Order -Sequential -Parallel -Piped -States - Transitions -TI, TOC Communication Cycletimed D F PE1 B1 v1 = a*a; cv11 - Synchronization -Notify/Wait Approximatetimed C E cv12 B PE3 B3 v3= v1- b*b; PE2 v3 Cycletimed Untimed A B Untimed Approximatetimed Computation B2 v2 = v1 + b*b; cv2 B4 v4 = v2 + v3; c = sequ(v4); Copyright 2003 Daniel D. Gajski 24

25 D: Bus-Functional Model Objects - Computation - Proc - IPs (Arbiters) - Memories - Communication - Protocol bus channels PE1 B1 PE2 v1 = a*a; B2 v2 = v1 + b*b; PE4 (Arbiter) 3 address[15:0] address[15:0] data[31:0] data[31:0] 1 ready 2 ack ready ack 1: master interface 2: slave interface 3: arbitor interface IProtocolSlav e PE3 B3 v3= v1- b*b; v3 B4 v4 = v2 + v3; c = sequ(v4); Composition - Hierarchy - Order -Sequential -Parallel -Piped -States - Transitions -TI, TOC Communication Cycletimed D F PE1 PE4 (Arbiter) C PE3 - Synchronization -Notify/Wait Approximatetimed C E B1 v1 = a*a; 3 cv12 B3 v3= v1- b*b; Cycletimed Untimed A B Untimed Approximatetimed Computation PE2 B2 v2 = v1 + b*b; cv2 1 2 cv11 1. Master interface 2. Slave interface 3. Arbiter interface v3 B4 v4 = v2 + v3; c = sequ(v4); Copyright 2003 Daniel D. Gajski 25

26 E: Cycle-Accurate Computation Model Objects - Computation Communication Approximatetimed Cycletimed - Proc - IPs (Arbiters) - Memories - Wrappers - Communication - Abstract bus channels D C F E PE1 MOV r1, 10 MUL r1, r1, r1... PE2 MLA... r1, r2, r2, r PE4 S0 S1 S2 S3 4 3 cv12 cv2 1 2 cv11 1. Master interface 2. Slave interface 3. Arbiter interface 4. Wrapper PE1 B1 v1 = a*a; 4 PE3 PE4 (Arbiter) 3 cv12 S0 S1 S2 S3 S4 PE3 C B3 v3= v1- b*b; Composition - Hierarchy - Order -Sequential -Parallel -Piped -States - Transitions -TI, TOC - Synchronization -Notify/Wait Cycletimed Untimed A B Untimed Approximatetimed Computation PE2 B2 v2 = v1 + b*b; cv2 1 2 cv11 1. Master interface 2. Slave interface 3. Arbiter interface v3 B4 v4 = v2 + v3; c = sequ(v4); Copyright 2003 Daniel D. Gajski 26

27 address[15:0] address[15:0] data[31:0] data[31:0] ready ack ready ack e F: Implementation Model Objects - Computation - Proc - IPs (Arbiters) - Memories - Communication -Buses (wires) interrupt PE4 req S0 S1 S2 S3 PE1 MOV r1, 10 MUL r1, r1, r1... interrupt interrupt req PE3 S0 S1 S2 S3 S4 PE2 MLA... r1, r2, r2, r1... MCNTR MADDR MDATA Composition - Hierarchy - Order -Sequential -Parallel -Piped -States - Transitions -TI, TOC - Synchronization Communication -Notify/Wait Approximatetimed Cycletimed D C F E PE1 B1 D v1 = a*a; PE4 (Arbiter) 3 PE3 B3 v3= v1- b*b; PE1 E B1 v1 = a*a; PE4 (Arbiter) 3 cv12 PE3 S0 S1 Cycletimed Untimed A B Untimed Approximatetimed Computation PE2 B2 v2 = v1 + b*b; 1 2 1: master interface 2: slave interface 3: arbitor interface IProtocolSlav v3 B4 v4 = v2 + v3; c = sequ(v4); PE2 B2 v2 = v1 + b*b; cv2 1 2 cv11 1. Master interface 2. Slave interface 3. Arbiter interface 4. Wrapper 4 S2 S3 S4 Copyright 2003 Daniel D. Gajski 27

28 Refinement User Interface (RUI) Algorithm selection System structure SoC Environment Capture Validation User Interface (VUI) Compile Spec. optimization Profiling weights Profiling Profiling data Specification model Simulate Verify Allocation Beh. partitioning Scheduling / RTOS Comp. / IP attributes Comp. / IP models Arch. synthesis Design decisions Estimation Estimation results Arch. refinement Architecture model Test Simulate Verify Protocol selection Channel partitioning Arbitration Protocol attributes Protocol models Comm. synthesis Design decisions Comm. refinement Estimation Communication model Estimation results Test Simulate Verify Cycle scheduling Protocol scheduling SW/HW synthesis RTL/RTOS attributes RTL/RTOS models Impl. synthesis Design decisions Estimation Estimation results CA refinement CA model Test Simulate Verify Lang. Translators Copyright 2003 Daniel D. Gajski 28

29 Vocoder Results Experiment on GSM Vocoder design (10K lines of code) Normalized Time Simulation Speed Spec Arch Comm Impl Number of Lines Code Size Spec Arch Comm Impl Spec Arch Arch Comm Comm Impl Total Refinement Effort Modified lines 3, ,146 10,355 Manual 3~4 mons. 1~2 mons. 5~6 mons Automated User / Refine 15 mins / <1 min 5 mins/ <0.5 min 30 mins / <2 mins 9~12 mons 50 mins / <4 mins Conclusion Productivity gain >2,000X for industrial strength designs Compare 9-12 months (manual refinement) vs minutes (user decisions + automatic refinement) Enables extensive design exploration (60/day) Copyright 2003 Daniel D. Gajski 29

30 Simulation Speed & Code size JPEG Results Simulation Speed Code Size Normalized Time Number of Lines Spec Arch Comm Impl Spec Arch Comm Impl Refinement Effort Refinement Effort Modified lines Manual Automated User / Refine SpecfiArch 751 1~2 mons. 5 mins / <0.5 min ArchfiComm 492 ~1 mons. 3 mins/ <0.5 min CommfiImpl 1,278 3~4 mons 20 mins / <1 mins Total 2,521 5~7 mons 28 mins <2mins Compare 5-7months (manual refinement) vs. 28 minutes (user decisions) + 2 minutes (automatic refinement) Copyright 2003 Daniel D. Gajski 30

31 Conclusion New design flow paradigm based on SER methodology Semantics before syntax (language does not matter) Model algebra before semantics System verification, synthesis, modeling simplified SW = HW = computation is the inevitable truth SoC environment gives 1000X productivity gain Challenge: Define models, refinements, methodology Copyright 2003 Daniel D. Gajski 31

System Level Design Flow

System Level Design Flow System Level Design Flow What is needed and what is not Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine www.cecs.uci.edu/~gajski System Level Design Flow What is

More information

System Level Design For Low Power. Yard. Doç. Dr. Berna Örs Yalçın

System Level Design For Low Power. Yard. Doç. Dr. Berna Örs Yalçın System Level Design For Low Power Yard. Doç. Dr. Berna Örs Yalçın References System-Level Design Methodology, Daniel D. Gajski Hardware-software co-design of embedded systems : the POLIS approach / by

More information

SpecC Methodology for High-Level Modeling

SpecC Methodology for High-Level Modeling EDP 2002 9 th IEEE/DATC Electronic Design Processes Workshop SpecC Methodology for High-Level Modeling Rainer Dömer Daniel D. Gajski Andreas Gerstlauer Center for Embedded Computer Systems Universitiy

More information

System Debugging and Verification : A New Challenge. Center for Embedded Computer Systems University of California, Irvine

System Debugging and Verification : A New Challenge. Center for Embedded Computer Systems   University of California, Irvine System Debugging and Verification : A New Challenge Daniel Gajski Samar Abdi Center for Embedded Computer Systems http://www.cecs.uci.edu University of California, Irvine Overview Simulation and debugging

More information

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer)

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer) ESE Back End 2.0 D. Gajski, S. Abdi (with contributions from H. Cho, D. Shin, A. Gerstlauer) Center for Embedded Computer Systems University of California, Irvine http://www.cecs.uci.edu 1 Technology advantages

More information

Transaction-Level Modeling Definitions and Approximations. 2. Definitions of Transaction-Level Modeling

Transaction-Level Modeling Definitions and Approximations. 2. Definitions of Transaction-Level Modeling Transaction-Level Modeling Definitions and Approximations EE290A Final Report Trevor Meyerowitz May 20, 2005 1. Introduction Over the years the field of electronic design automation has enabled gigantic

More information

System-on-Chip Environment

System-on-Chip Environment System-on-Chip Environment SCE Version 2.2.0 Beta Tutorial Samar Abdi Junyu Peng Haobo Yu Dongwan Shin Andreas Gerstlauer Rainer Doemer Daniel Gajski Center for Embedded Computer Systems University of

More information

Embedded System Design

Embedded System Design Modeling, Synthesis, Verification Daniel D. Gajski, Samar Abdi, Andreas Gerstlauer, Gunar Schirner 9/29/2011 Outline System design trends Model-based synthesis Transaction level model generation Application

More information

SPECC: SPECIFICATION LANGUAGE AND METHODOLOGY

SPECC: SPECIFICATION LANGUAGE AND METHODOLOGY SPECC: SPECIFICATION LANGUAGE AND METHODOLOGY SPECC: SPECIFICATION LANGUAGE AND METHODOLOGY Daniel D. Gajski Jianwen Zhu Rainer Dömer Andreas Gerstlauer Shuqing Zhao University of California, Irvine SPRINGER

More information

System-on-Chip Environment (SCE)

System-on-Chip Environment (SCE) System-on-Chip Environment (SCE) Tutorial Samar Abdi Junyu Peng Rainer Doemer Dongwan Shin Andreas Gerstlauer Alexander Gluhak Lukai Cai Qiang Xie Haobo Yu Pei Zhang Daniel Gajski Center for Embedded Computer

More information

NISC Application and Advantages

NISC Application and Advantages NISC Application and Advantages Daniel D. Gajski Mehrdad Reshadi Center for Embedded Computer Systems University of California, Irvine Irvine, CA 92697-3425, USA {gajski, reshadi}@cecs.uci.edu CECS Technical

More information

System-On-Chip Architecture Modeling Style Guide

System-On-Chip Architecture Modeling Style Guide Center for Embedded Computer Systems University of California, Irvine System-On-Chip Architecture Modeling Style Guide Junyu Peng Andreas Gerstlauer Rainer Dömer Daniel D. Gajski Technical Report CECS-TR-04-22

More information

Embedded System Design Modeling, Synthesis, Verification

Embedded System Design Modeling, Synthesis, Verification Modeling, Synthesis, Verification Daniel D. Gajski, Samar Abdi, Andreas Gerstlauer, Gunar Schirner Chapter 4: System Synthesis Outline System design trends Model-based synthesis Transaction level model

More information

A Hybrid Instruction Set Simulator for System Level Design

A Hybrid Instruction Set Simulator for System Level Design Center for Embedded Computer Systems University of California, Irvine A Hybrid Instruction Set Simulator for System Level Design Yitao Guo, Rainer Doemer Technical Report CECS-10-06 June 11, 2010 Center

More information

Hardware/Software Co-design

Hardware/Software Co-design Hardware/Software Co-design Zebo Peng, Department of Computer and Information Science (IDA) Linköping University Course page: http://www.ida.liu.se/~petel/codesign/ 1 of 52 Lecture 1/2: Outline : an Introduction

More information

COE 561 Digital System Design & Synthesis Introduction

COE 561 Digital System Design & Synthesis Introduction 1 COE 561 Digital System Design & Synthesis Introduction Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Outline Course Topics Microelectronics Design

More information

System-on-Chip Environment

System-on-Chip Environment System-on-Chip Environment SCE Version 2.2.0 Beta Tutorial Samar Abdi Junyu Peng Haobo Yu Dongwan Shin Andreas Gerstlauer Rainer Doemer Daniel Gajski Center for Embedded Computer Systems University of

More information

Transaction Level Modeling: An Overview

Transaction Level Modeling: An Overview Transaction Level Modeling: An Overview Lukai Cai and Daniel Gajski Center for Embedded Computer Systems University of California, lrvine Irvine, CA 92697, USA {lcai,gajski}@cecs.uci.edu ABSTRACT Recently,

More information

Intro to High Level Design with SystemC

Intro to High Level Design with SystemC Intro to High Level Design with SystemC Aim To introduce SystemC, and its associated Design Methodology Date 26th March 2001 Presented By Alan Fitch Designer Challenges Design complexity System on Chip

More information

Lecture 3: Computation Modeling

Lecture 3: Computation Modeling COEN 691B: Embedded System Design Lecture 3: Computation Modeling Samar Abdi (slides courtesy of A. Gerstlauer, D. Gajski and R. Doemer) Assistant Professor Electrical and Computer Engineering Concordia

More information

Cycle-accurate RTL Modeling with Multi-Cycled and Pipelined Components

Cycle-accurate RTL Modeling with Multi-Cycled and Pipelined Components Cycle-accurate RTL Modeling with Multi-Cycled and Pipelined Components Rainer Dömer, Andreas Gerstlauer, Dongwan Shin Technical Report CECS-04-19 July 22, 2004 Center for Embedded Computer Systems University

More information

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis

More information

ICS 252 Introduction to Computer Design

ICS 252 Introduction to Computer Design ICS 252 Introduction to Computer Design Lecture 3 Fall 2006 Eli Bozorgzadeh Computer Science Department-UCI System Model According to Abstraction level Architectural, logic and geometrical View Behavioral,

More information

The SpecC Language. Outline

The SpecC Language. Outline Rainer Dömer Center for Embedded Computer Systems University of California, Irvine http://www.cecs.uci.edu/~specc/ Outline Introduction The SpecC model System-level language requirements The SpecC language

More information

Design Methodologies. Kai Huang

Design Methodologies. Kai Huang Design Methodologies Kai Huang News Is that real? In such a thermally constrained environment, going quad-core only makes sense if you can properly power gate/turbo up when some cores are idle. I have

More information

Embedded System Design

Embedded System Design Modeling, Synthesis, Verification Daniel D. Gajski, Samar Abdi, Andreas Gerstlauer, Gunar Schirner 7/8/2009 Modeling Abstract view of a design Representation of reality in each design step Apply analysis,

More information

Embedded System Design and Modeling EE382V, Fall 2008

Embedded System Design and Modeling EE382V, Fall 2008 Embedded System Design and Modeling EE382V, Fall 2008 Lecture Notes 4 System Design Flow and Design Methodology Dates: Sep 16&18, 2008 Scribe: Mahesh Prabhu SpecC: Import Directive: This is different from

More information

Cadence SystemC Design and Verification. NMI FPGA Network Meeting Jan 21, 2015

Cadence SystemC Design and Verification. NMI FPGA Network Meeting Jan 21, 2015 Cadence SystemC Design and Verification NMI FPGA Network Meeting Jan 21, 2015 The High Level Synthesis Opportunity Raising Abstraction Improves Design & Verification Optimizes Power, Area and Timing for

More information

Modeling and Simulation of System-on. Platorms. Politecnico di Milano. Donatella Sciuto. Piazza Leonardo da Vinci 32, 20131, Milano

Modeling and Simulation of System-on. Platorms. Politecnico di Milano. Donatella Sciuto. Piazza Leonardo da Vinci 32, 20131, Milano Modeling and Simulation of System-on on-chip Platorms Donatella Sciuto 10/01/2007 Politecnico di Milano Dipartimento di Elettronica e Informazione Piazza Leonardo da Vinci 32, 20131, Milano Key SoC Market

More information

Two HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design

Two HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design Two HDLs used today Introduction to Structured VLSI Design VHDL I VHDL and Verilog Syntax and ``appearance'' of the two languages are very different Capabilities and scopes are quite similar Both are industrial

More information

The SpecC System-Level Design Language and Methodology, Part 1. Class 309

The SpecC System-Level Design Language and Methodology, Part 1. Class 309 Embedded Systems Conference San Francisco 2002 The SpecC System-Level Design Language and Methodology, Part 1 Class 309 Rainer Dömer Center for Embedded Computer Systems Universitiy of California, Irvine,

More information

System Level Design Technologies and System Level Design Languages

System Level Design Technologies and System Level Design Languages System Level Design Technologies and System Level Design Languages SLD Study Group EDA-TC, JEITA http://eda.ics.es.osaka-u.ac.jp/jeita/eda/english/project/sld/index.html Problems to Be Solved 1. Functional

More information

ECE 5745 Complex Digital ASIC Design Topic 1: Hardware Description Languages

ECE 5745 Complex Digital ASIC Design Topic 1: Hardware Description Languages ECE 5745 Complex Digital ASIC Design Topic 1: Hardware Description Languages Christopher Batten School of Electrical and Computer Engineering Cornell University http://www.csl.cornell.edu/courses/ece5745

More information

VHDL. VHDL History. Why VHDL? Introduction to Structured VLSI Design. Very High Speed Integrated Circuit (VHSIC) Hardware Description Language

VHDL. VHDL History. Why VHDL? Introduction to Structured VLSI Design. Very High Speed Integrated Circuit (VHSIC) Hardware Description Language VHDL Introduction to Structured VLSI Design VHDL I Very High Speed Integrated Circuit (VHSIC) Hardware Description Language Joachim Rodrigues A Technology Independent, Standard Hardware description Language

More information

Topics. Verilog. Verilog vs. VHDL (2) Verilog vs. VHDL (1)

Topics. Verilog. Verilog vs. VHDL (2) Verilog vs. VHDL (1) Topics Verilog Hardware modeling and simulation Event-driven simulation Basics of register-transfer design: data paths and controllers; ASM charts. High-level synthesis Initially a proprietary language,

More information

NISC Technology Online Toolset

NISC Technology Online Toolset NISC Technology Online Toolset Mehrdad Reshadi, Bita Gorjiara, Daniel Gajski Technical Report CECS-05-19 December 2005 Center for Embedded Computer Systems University of California Irvine Irvine, CA 92697-3425,

More information

CprE 588 Embedded Computer Systems

CprE 588 Embedded Computer Systems CprE 588 Embedded Computer Systems Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #4 Introduction to SpecC Introduction System-on-Chip (SOC) design

More information

MODELING LANGUAGES AND ABSTRACT MODELS. Giovanni De Micheli Stanford University. Chapter 3 in book, please read it.

MODELING LANGUAGES AND ABSTRACT MODELS. Giovanni De Micheli Stanford University. Chapter 3 in book, please read it. MODELING LANGUAGES AND ABSTRACT MODELS Giovanni De Micheli Stanford University Chapter 3 in book, please read it. Outline Hardware modeling issues: Representations and models. Issues in hardware languages.

More information

Overview of SOC Architecture design

Overview of SOC Architecture design Computer Architectures Overview of SOC Architecture design Tien-Fu Chen National Chung Cheng Univ. SOC - 0 SOC design Issues SOC architecture Reconfigurable System-level Programmable processors Low-level

More information

SystemC abstractions and design refinement for HW- SW SoC design. Dündar Dumlugöl. Vice President of Engineering, CoWare, Inc.

SystemC abstractions and design refinement for HW- SW SoC design. Dündar Dumlugöl. Vice President of Engineering, CoWare, Inc. SystemC abstractions and design refinement for HW- SW SoC design Dündar Dumlugöl Vice President of Engineering, CoWare, Inc. Overview SystemC abstraction levels & design flow Interface Synthesis Analyzing

More information

C-based Interactive RTL Design Methodology

C-based Interactive RTL Design Methodology C-based Interactive RTL Design Methodology Dongwan Shin, Andreas Gerstlauer, Rainer Dömer and Daniel Gajski Technical Report CECS-03-42 December 1, 2003 Center for Embedded Computer Systems University

More information

EE382V: System-on-a-Chip (SoC) Design

EE382V: System-on-a-Chip (SoC) Design EE382V: System-on-a-Chip (SoC) Design Lecture 8 HW/SW Co-Design Sources: Prof. Margarida Jacome, UT Austin Andreas Gerstlauer Electrical and Computer Engineering University of Texas at Austin gerstl@ece.utexas.edu

More information

4 th European SystemC Users Group Meeting

4 th European SystemC Users Group Meeting 4 th European SystemC Users Group Meeting http://www-ti.informatik.uni-tuebingen.de/systemc Copenhagen October 5 th, 2001, 1100-1600 SystemC 2.0 Tutorial Thorsten Grötker R & D Manager Synopsys, Inc. Motivation

More information

ECE 587 Hardware/Software Co-Design Lecture 12 Verification II, System Modeling

ECE 587 Hardware/Software Co-Design Lecture 12 Verification II, System Modeling ECE 587 Hardware/Software Co-Design Spring 2018 1/20 ECE 587 Hardware/Software Co-Design Lecture 12 Verification II, System Modeling Professor Jia Wang Department of Electrical and Computer Engineering

More information

Pilot: A Platform-based HW/SW Synthesis System

Pilot: A Platform-based HW/SW Synthesis System Pilot: A Platform-based HW/SW Synthesis System SOC Group, VLSI CAD Lab, UCLA Led by Jason Cong Zhong Chen, Yiping Fan, Xun Yang, Zhiru Zhang ICSOC Workshop, Beijing August 20, 2002 Outline Overview The

More information

Computer-Aided Recoding for Multi-Core Systems

Computer-Aided Recoding for Multi-Core Systems Computer-Aided Recoding for Multi-Core Systems Rainer Dömer doemer@uci.edu With contributions by P. Chandraiah Center for Embedded Computer Systems University of California, Irvine Outline Embedded System

More information

RTOS Modeling for System Level Design

RTOS Modeling for System Level Design RTOS Modeling for System Level Design Andreas Gerstlauer Haobo Yu Daniel D. Gajski Center for Embedded Computer Systems University of California, Irvine Irvine, CA 92697, USA E-mail: {gerstl,haoboy,gajski}@cecs.uci.edu

More information

ECE 587 Hardware/Software Co-Design Lecture 23 Hardware Synthesis III

ECE 587 Hardware/Software Co-Design Lecture 23 Hardware Synthesis III ECE 587 Hardware/Software Co-Design Spring 2018 1/28 ECE 587 Hardware/Software Co-Design Lecture 23 Hardware Synthesis III Professor Jia Wang Department of Electrical and Computer Engineering Illinois

More information

Verilog. What is Verilog? VHDL vs. Verilog. Hardware description language: Two major languages. Many EDA tools support HDL-based design

Verilog. What is Verilog? VHDL vs. Verilog. Hardware description language: Two major languages. Many EDA tools support HDL-based design Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two major languages Verilog (IEEE 1364), latest version is

More information

Part 2: Principles for a System-Level Design Methodology

Part 2: Principles for a System-Level Design Methodology Part 2: Principles for a System-Level Design Methodology Separation of Concerns: Function versus Architecture Platform-based Design 1 Design Effort vs. System Design Value Function Level of Abstraction

More information

Synthesis of Combinational and Sequential Circuits with Verilog

Synthesis of Combinational and Sequential Circuits with Verilog Synthesis of Combinational and Sequential Circuits with Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two

More information

Unit 2: High-Level Synthesis

Unit 2: High-Level Synthesis Course contents Unit 2: High-Level Synthesis Hardware modeling Data flow Scheduling/allocation/assignment Reading Chapter 11 Unit 2 1 High-Level Synthesis (HLS) Hardware-description language (HDL) synthesis

More information

Word-Level Equivalence Checking in Bit-Level Accuracy by Synthesizing Designs onto Identical Datapath

Word-Level Equivalence Checking in Bit-Level Accuracy by Synthesizing Designs onto Identical Datapath 972 PAPER Special Section on Formal Approach Word-Level Equivalence Checking in Bit-Level Accuracy by Synthesizing Designs onto Identical Datapath Tasuku NISHIHARA a), Member, Takeshi MATSUMOTO, and Masahiro

More information

NGUYEN KHAC HIEU REVIEW OF SYSTEM DESIGN FRAMEWORKS. Master of Science thesis

NGUYEN KHAC HIEU REVIEW OF SYSTEM DESIGN FRAMEWORKS. Master of Science thesis NGUYEN KHAC HIEU REVIEW OF SYSTEM DESIGN FRAMEWORKS Master of Science thesis Examiner: Prof. Timo D. Hämäläinen Examiner and topic approved by the Faculty Council of the Faculty of Computing and Electrical

More information

Outline. SLD challenges Platform Based Design (PBD) Leveraging state of the art CAD Metropolis. Case study: Wireless Sensor Network

Outline. SLD challenges Platform Based Design (PBD) Leveraging state of the art CAD Metropolis. Case study: Wireless Sensor Network By Alberto Puggelli Outline SLD challenges Platform Based Design (PBD) Case study: Wireless Sensor Network Leveraging state of the art CAD Metropolis Case study: JPEG Encoder SLD Challenge Establish a

More information

Cycle-approximate Retargetable Performance Estimation at the Transaction Level

Cycle-approximate Retargetable Performance Estimation at the Transaction Level Cycle-approximate Retargetable Performance Estimation at the Transaction Level Yonghyun Hwang Samar Abdi Daniel Gajski Center for Embedded Computer Systems University of California, Irvine, 92617-2625

More information

Tag der mundlichen Prufung: Dekan/Dekanin: Gutachter:

Tag der mundlichen Prufung: Dekan/Dekanin: Gutachter: System-level Modeling and Design with the SpecC Language Dissertation zur Erlangung des Grades eines Doktors der Naturwissenschaften der Universitat Dortmund am Fachbereich Informatik von Rainer Domer

More information

Scheduling in RTL Design Methodology

Scheduling in RTL Design Methodology cheduling in RTL Design Methodology Dongwan hin and Daniel Gajski Technical Report IC-01-65 July 1, 2001 Center for Embedded Computer ystems Information and Computer cience University of California, Irvine

More information

Network Synthesis for SoC

Network Synthesis for SoC Network Synthesis for SoC Dongwan Shin, Andreas Gerstlauer and Daniel Gajski Technical Report CECS-04-15 June 10, 2004 Center for Embedded Computer Systems University of California, Irvine Irvine, CA 92697-3425,

More information

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation

Introduction to Electronic Design Automation. Model of Computation. Model of Computation. Model of Computation Introduction to Electronic Design Automation Model of Computation Jie-Hong Roland Jiang 江介宏 Department of Electrical Engineering National Taiwan University Spring 03 Model of Computation In system design,

More information

Abstraction Layers for Hardware Design

Abstraction Layers for Hardware Design SYSTEMC Slide -1 - Abstraction Layers for Hardware Design TRANSACTION-LEVEL MODELS (TLM) TLMs have a common feature: they implement communication among processes via function calls! Slide -2 - Abstraction

More information

EITF35: Introduction to Structured VLSI Design

EITF35: Introduction to Structured VLSI Design EITF35: Introduction to Structured VLSI Design Part 1.2.2: VHDL-1 Liang Liu liang.liu@eit.lth.se 1 Outline VHDL Background Basic VHDL Component An example FSM Design with VHDL Simulation & TestBench 2

More information

NISC Double-Handshake Communication Interface

NISC Double-Handshake Communication Interface NISC Double-Handshake Communication Interface Bita Gorjiara, Mehrdad Reshadi, Daniel Gajski Technical Report CECS-0-8 Novermber 00 Center for Embedded Computer Systems University of California Irvine Irvine,

More information

High-Level Synthesis of Programmable Hardware Accelerators Considering Potential Varieties

High-Level Synthesis of Programmable Hardware Accelerators Considering Potential Varieties THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS TECHNICAL REPORT OF IEICE.,, (VDEC) 113 8656 7 3 1 CREST E-mail: hiroaki@cad.t.u-tokyo.ac.jp, fujita@ee.t.u-tokyo.ac.jp SoC Abstract

More information

System-level simulation (HW/SW co-simulation) Outline. EE290A: Design of Embedded System ASV/LL 9/10

System-level simulation (HW/SW co-simulation) Outline. EE290A: Design of Embedded System ASV/LL 9/10 System-level simulation (/SW co-simulation) Outline Problem statement Simulation and embedded system design functional simulation performance simulation POLIS implementation partitioning example implementation

More information

Register Transfer Methodology II

Register Transfer Methodology II Register Transfer Methodology II Chapter 12 1 Outline 1. Design example: One shot pulse generator 2. Design Example: GCD 3. Design Example: UART 4. Design Example: SRAM Interface Controller 5. Square root

More information

Outline. Register Transfer Methodology II. 1. One shot pulse generator. Refined block diagram of FSMD

Outline. Register Transfer Methodology II. 1. One shot pulse generator. Refined block diagram of FSMD Outline Register Transfer Methodology II 1. Design example: One shot pulse generator 2. Design Example: GCD 3. Design Example: UART 4. Design Example: SRAM Interface Controller 5. Square root approximation

More information

Contents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation

Contents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation Contents Part I Basic Concepts 1 The Nature of Hardware and Software... 3 1.1 Introducing Hardware/Software Codesign... 3 1.1.1 Hardware... 3 1.1.2 Software... 5 1.1.3 Hardware and Software... 7 1.1.4

More information

Embedded System Design

Embedded System Design Embedded System Design Daniel D. Gajski Samar Abdi Andreas Gerstlauer Gunar Schirner Embedded System Design Modeling, Synthesis and Verification Daniel D. Gajski Center for Embedded Computer Systems University

More information

HIGH-LEVEL SYNTHESIS

HIGH-LEVEL SYNTHESIS HIGH-LEVEL SYNTHESIS Page 1 HIGH-LEVEL SYNTHESIS High-level synthesis: the automatic addition of structural information to a design described by an algorithm. BEHAVIORAL D. STRUCTURAL D. Systems Algorithms

More information

An introduction to CoCentric

An introduction to CoCentric A Hand-Out 1 An introduction to CoCentric Las Palmas de G. C., Spain Jun, 27 th, 2002 Agenda 2 System-level SoC design What is SystemC? CoCentric System Studio SystemC based designs verification CoCentric

More information

System On Chip: Design & Modelling (SOC/DAM) 1 R: Verilog RTL Design with examples.

System On Chip: Design & Modelling (SOC/DAM) 1 R: Verilog RTL Design with examples. System On Chip: Design & Modelling (SOC/DAM) Exercises Here is the first set of exercises. These are intended to cover subject groups 1-4 of the SOC/DAM syllabus (R, SC, SD, ESL). These questions are styled

More information

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web.

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web. Codesign Framework Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web. Embedded Processor Types General Purpose Expensive, requires

More information

SysteMoC. Verification and Refinement of Actor-Based Models of Computation

SysteMoC. Verification and Refinement of Actor-Based Models of Computation SysteMoC Verification and Refinement of Actor-Based Models of Computation Joachim Falk, Jens Gladigau, Christian Haubelt, Joachim Keinert, Martin Streubühr, and Jürgen Teich {falk, haubelt}@cs.fau.de Hardware-Software-Co-Design

More information

I 3 I 2. ! Language of logic design " Logic optimization, state, timing, CAD tools

I 3 I 2. ! Language of logic design  Logic optimization, state, timing, CAD tools Course Wrap-up Let s Try the Priority Encoder One More Time = =! Priority Encoder Revisited! What (We Hope) You Learned I 3 O 3 I j O j! Design Methodology! I 2 O 2 I O I O Zero Oj Ij Ij CS 5 - Spring

More information

Structural Design Composition for C++ Hardware Models

Structural Design Composition for C++ Hardware Models Structural Design Composition for C++ Hardware Models Frederic Doucet, Vivek Sinha, Rajesh Gupta Center for Embedded Computer Systems University of California at Irvine fdoucet,vsinha,rguptag@ics.uci.edu

More information

DIGITAL DESIGN TECHNOLOGY & TECHNIQUES

DIGITAL DESIGN TECHNOLOGY & TECHNIQUES DIGITAL DESIGN TECHNOLOGY & TECHNIQUES CAD for ASIC Design 1 INTEGRATED CIRCUITS (IC) An integrated circuit (IC) consists complex electronic circuitries and their interconnections. William Shockley et

More information

System-level design refinement using SystemC. Robert Dale Walstrom. A thesis submitted to the graduate faculty

System-level design refinement using SystemC. Robert Dale Walstrom. A thesis submitted to the graduate faculty System-level design refinement using SystemC by Robert Dale Walstrom A thesis submitted to the graduate faculty in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE Major: Computer

More information

Communication Abstractions for System-Level Design and Synthesis

Communication Abstractions for System-Level Design and Synthesis Communication Abstractions for System-Level Design and Synthesis Andreas Gerstlauer Technical Report CECS-03-30 October 16, 2003 Center for Embedded Computer Systems University of California, Irvine Irvine,

More information

OSCI Update. Guido Arnout OSCI Chief Strategy Officer CoWare Chairman & Founder

OSCI Update. Guido Arnout OSCI Chief Strategy Officer CoWare Chairman & Founder OSCI Update Guido Arnout OSCI Chief Strategy Officer CoWare Chairman & Founder Chief Strategy Officer charter Ensure that OSCI strategy is created, coordinated, communicated & executed Identify OSCI technical

More information

Synthesis at different abstraction levels

Synthesis at different abstraction levels Synthesis at different abstraction levels System Level Synthesis Clustering. Communication synthesis. High-Level Synthesis Resource or time constrained scheduling Resource allocation. Binding Register-Transfer

More information

Platform-based SW/HW Synthesis

Platform-based SW/HW Synthesis Platform-based SW/HW Synthesis Zhong Chen, Ph.D. (Visiting Prof. from Peking University) zchen@cs.ucla.edu SOC Group,UCLA Led by Jason Cong ICSOC Workshop Taiwan 03/28/2002 Contents Overview HW/SW Co-design

More information

Digital System Design

Digital System Design Digital System Design Analog time varying signals that can take on any value across a continuous range of voltage, current or other metric Digital signals are modeled with two states, 0 or 1 underneath

More information

RTOS Modeling for System Level Design

RTOS Modeling for System Level Design RTOS Modeling for System Level Design Design, Automation and Test in Europe Conference and Exhibition (DATE 03) Andreas Gerslauer, Haobo Yu, Daniel D. Gajski 2010. 1. 20 Presented by Jinho Choi c KAIST

More information

Platform-based Design

Platform-based Design Platform-based Design The New System Design Paradigm IEEE1394 Software Content CPU Core DSP Core Glue Logic Memory Hardware BlueTooth I/O Block-Based Design Memory Orthogonalization of concerns: the separation

More information

Overview of Computer Organization. Chapter 1 S. Dandamudi

Overview of Computer Organization. Chapter 1 S. Dandamudi Overview of Computer Organization Chapter 1 S. Dandamudi Outline Introduction Basic Terminology and Notation Views of computer systems User s view Programmer s view Advantages of high-level languages Why

More information

Synthesizable Verilog

Synthesizable Verilog Synthesizable Verilog Courtesy of Dr. Edwards@Columbia, and Dr. Franzon@NCSU http://csce.uark.edu +1 (479) 575-6043 yrpeng@uark.edu Design Methodology Structure and Function (Behavior) of a Design HDL

More information

Communication Link Synthesis for SoC

Communication Link Synthesis for SoC Communication Link Synthesis for SoC Dongwan Shin, Andreas Gerstlauer and Daniel Gajski Technical Report CECS-04-16 June 10, 2004 Center for Embedded Computer Systems University of California, Irvine Irvine,

More information

100-hour Design Cycle: A Test Case. keeping the specication close to the conceptualization. 2. Use of standard languages for input specications.

100-hour Design Cycle: A Test Case. keeping the specication close to the conceptualization. 2. Use of standard languages for input specications. 100-hour Design Cycle: A Test Case Daniel D. Gajski, Loganath Ramachandran, Peter Fung 3, Sanjiv Narayan 1 and Frank Vahid 2 University of California, Irvine, CA 3 Matsushita Electric Works, Research and

More information

RTOS Scheduling in Transaction Level Models

RTOS Scheduling in Transaction Level Models RTOS Scheduling in Transaction Level Models Haobo Yu, Andreas Gerstlauer, Daniel Gajski CECS Technical Report 03-12 March 20, 2003 Center for Embedded Computer Systems Information and Computer Science

More information

Overview of Computer Organization. Outline

Overview of Computer Organization. Outline Overview of Computer Organization Chapter 1 S. Dandamudi Outline Introduction Basic Terminology and Notation Views of computer systems User s view Programmer s view Advantages of high-level languages Why

More information

General Transducer Architecture

General Transducer Architecture General Transducer Architecture D Gajski, Hansu Cho, Samar Abdi Technical Report CECS-05-08 August 8, 2005 Center for Embedded Computer Systems University of California, Irvine Irvine, CA 92697-3425, USA

More information

Functional Programming in Hardware Design

Functional Programming in Hardware Design Functional Programming in Hardware Design Tomasz Wegrzanowski Saarland University Tomasz.Wegrzanowski@gmail.com 1 Introduction According to the Moore s law, hardware complexity grows exponentially, doubling

More information

Embedded System Design and Modeling EE382V, Fall 2008

Embedded System Design and Modeling EE382V, Fall 2008 Embedded System Design and Modeling EE382V, Fall 2008 Lecture Notes 3 The SpecC System-Level Design Language Dates: Sep 9&11, 2008 Scribe: Mahesh Prabhu Languages: Any language would have characters, words

More information

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis Jan 31, 2012 John Wawrzynek Spring 2012 EECS150 - Lec05-verilog_synth Page 1 Outline Quick review of essentials of state elements Finite State

More information

Sunburst Design - Verilog-2001 Design & Best Coding Practices by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

Sunburst Design - Verilog-2001 Design & Best Coding Practices by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. World Class Verilog & SystemVerilog Training Sunburst Design - Verilog-2001 Design & Best Coding Practices by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc. Cliff Cummings

More information

Automatic Communication Refinement for System Level Design

Automatic Communication Refinement for System Level Design Automatic Communication Refinement for System Level Design Samar Abdi and Daniel Gajski Technical Report CECS-03-08 March 7, 2003 Center for Embedded Computer Systems University of California, Irvine Irvine,

More information

HW/SW Co-design. Design of Embedded Systems Jaap Hofstede Version 3, September 1999

HW/SW Co-design. Design of Embedded Systems Jaap Hofstede Version 3, September 1999 HW/SW Co-design Design of Embedded Systems Jaap Hofstede Version 3, September 1999 Embedded system Embedded Systems is a computer system (combination of hardware and software) is part of a larger system

More information

Lecture 7: Introduction to Co-synthesis Algorithms

Lecture 7: Introduction to Co-synthesis Algorithms Design & Co-design of Embedded Systems Lecture 7: Introduction to Co-synthesis Algorithms Sharif University of Technology Computer Engineering Dept. Winter-Spring 2008 Mehdi Modarressi Topics for today

More information

Partitioning Methods. Outline

Partitioning Methods. Outline Partitioning Methods 1 Outline Introduction to Hardware-Software Codesign Models, Architectures, Languages Partitioning Methods Design Quality Estimation Specification Refinement Co-synthesis Techniques

More information