System-on-Chip Design

Slides:



Advertisements
Similar presentations
SoC Challenges & Transaction Level Modeling (TLM) Dr. Eng. Amr T. Abdel-Hamid ELECT 1002 Spring 2008 System-On-a-Chip Design.
Advertisements

ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
High Level Languages: A Comparison By Joel Best. 2 Sources The Challenges of Synthesizing Hardware from C-Like Languages  by Stephen A. Edwards High-Level.
Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.
Fault Detection in a HW/SW CoDesign Environment Prepared by A. Gaye Soykök.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Spring 07, Jan 16 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Introduction Vishwani D. Agrawal James J. Danaher.
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
Copyright  2006 Daniel D. Gajski 1 Extreme Makeover of System Design Science Daniel Gajski Center for Embedded Computer Systems (CECS) University of California,
Define Embedded Systems Small (?) Application Specific Computer Systems.
Hier wird Wissen Wirklichkeit Computer Architecture – Part 5 – page 1 of 25 – Prof. Dr. Uwe Brinkschulte, Prof. Dr. Klaus Waldschmidt Part 5 Fundamentals.
Copyright  1999 Daniel D. Gajski IP – Based Design Methodology Daniel D. Gajski University of California
1  Staunstrup and Wolf Ed. “Hardware Software codesign: principles and practice”, Kluwer Publication, 1997  Gajski, Vahid, Narayan and Gong, “Specification,
1 Chapter 2. The System-on-a-Chip Design Process Canonical SoC Design System design flow The Specification Problem System design.
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.
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 {
Extreme Makeover for EDA Industry
Slide No. 1 Course: Logic Design Dr. Ali Elkateeb Topic: Introduction Course Number: COMP 1213 Course Title: Logic Design Instructor: Dr. Ali Elkateeb.
Section 10: Advanced Topics 1 M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.
High Performance Embedded Computing © 2007 Elsevier Lecture 3: Design Methodologies Embedded Computing Systems Mikko Lipasti, adapted from M. Schulte Based.
System Design with CoWare N2C - Overview. 2 Agenda q Overview –CoWare background and focus –Understanding current design flows –CoWare technology overview.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
Welcome CSC 480/580 – Digital Logic & Computer Design Term: Winter 2002 Instructor: William T Krieger.
Configurable, reconfigurable, and run-time reconfigurable computing.
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.
ESL and High-level Design: Who Cares? Anmol Mathur CTO and co-founder, Calypto Design Systems.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
SpecC stands for “specification description language based on C”.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
System-level power analysis and estimation September 20, 2006 Chong-Min Kyung.
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.
Center for Embedded Systems (CECS) Eli Bozorgzadeh Computer Science Department.
System-on-Chip Design Hao Zheng Comp Sci & Eng U of South Florida 1.
CDA 4253 FPGA System Design Hao Zheng Dept of Comp Sci & Eng USF.
System-on-Chip Design Homework Solutions
System-on-Chip Design Analysis of Control Data Flow
April 15, 2013 Atul Kwatra Principal Engineer Intel Corporation Hardware/Software Co-design using SystemC/TLM – Challenges & Opportunities ISCUG ’13.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
System-on-Chip Design Homework Solutions
Andreas Hoffmann Andreas Ropers Tim Kogel Stefan Pees Prof
ELEC 7770 Advanced VLSI Design Spring 2016 Introduction
ENG3050 Embedded Reconfigurable Computing Systems
Chapter 1: Introduction
IP – Based Design Methodology
ELEC 7770 Advanced VLSI Design Spring 2014 Introduction
Design Flow System Level
Comp 541 Wrap Up! Montek Singh Apr 27, 2018.
Introduction to cosynthesis Rabi Mahapatra CSCE617
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
Logical architecture refinement
ELEC 7770 Advanced VLSI Design Spring 2012 Introduction
T Computer Architecture, Autumn 2005
COE 561 Digital System Design & Synthesis Introduction
ELEC 7770 Advanced VLSI Design Spring 2010 Introduction
ECNG 1014: Digital Electronics Lecture 1: Course Overview
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
Architectures of distributed systems Fundamental Models
A High Performance SoC: PkunityTM
Introduction to Embedded Systems
Chapter 1 Introduction.
HIGH LEVEL SYNTHESIS.
THE ECE 554 XILINX DESIGN PROCESS
Transaction Level Modeling: An Overview
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Architectures of distributed systems Fundamental Models
Digital Designs – What does it take
THE ECE 554 XILINX DESIGN PROCESS
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Presentation transcript:

System-on-Chip Design Hao Zheng Comp Sci & Eng U of South Florida

Overview A system-on-chip (SoC): a computing system on a single silicon substrate that integrates both hardware and software. Hardware packages all necessary electronics for a particular application. which implemented by SW running on HW. Aim for low power and low cost. Also more reliable than multi-component sys.

SoC Hardware Architecture Often used in embedded application. How to implement an application on a HW platform executing some SW programs? source: wiki

Topics Computational models for HW & SW System modeling using SystemC HW/SW partitioning HW/SW interfacing High-level synthesis Transforming SW to HW implementation On-chip communication architectures FPGA prototying, if time allows.

Prerequisites Working knowledge of C/C++ programming Solid background in digital logic design Good understanding of computer organization and architecture

Textbooks No required textbooks. References:

Evaluation 6-8 assignments: 60% of final grade 1 final project: 40% of final grade Final grading scale Need verifiable proof to make up missing/late assignments

Course Communication Course site on Canvas @ my.usf.edu Download assignments & submit your solutions Participate discussions Checking grades www.cse.usf.edu/~zheng/teaching/soc Lecture slides reading assignments Other related material

Embedded Systems A computing device embedded in a larger system. Pervasive 98% processors sold annually are used in embedded applications.

Embedded Systems

Embedded Systems: Design Challenges Power/energy efficient: mobile & battery powered Highly reliable: Extreme environment (e.g. temperature) Real-time operations: predictable performance Highly complex E.g. Mercedes Benz E-class 55 electronic control units 5 communication busses Tightly coupled Software & Hardware Rapid development at low price

Design Complexity Challenges

Design Complexity Challenges Answer to design complexity challenges: Move to higher levels of abstraction

Levels of Abstraction: Behavior Different levels of abstraction represent different modeling details

Levels of Abstraction: Behavior

Levels of Abstraction: Structure Circuit: network of transistors Logic: network of basic logic gates AND/OR/NOT, latches/FFs, etc. Processor: network of logic components i.e. ALU, MUX, decoders, registers, etc. See Figure 1.5 in the Embedded book. System: network of processors, memories, buses, and other custom processing logic. See Figure 1.8 in the Embedded book.

System Behavioral Models Multiple communicating concurrent processes for HW & SW. Communication and synchronization. Embedded book

System Structural Models Embedded book

SoC Design Flow: A Simplified View Exploration/ Estimation System Specification HW/SW Partitioning HW Model SW Program HW/SW Co-Verification Synthesis Compilation HW Implementation Binary Image CPU Mem HW Impl. IF System Integration Read: section 2.6 – 2.7, Embedded book.

Models of Computation Formal abstract representations of a system various degrees of expressive power complexity Supported features Examples HW: FSM, FSMD, super-state FSMD, SW: data flow, control flow, control-data flow, process network,

System Specification: Language Requirements Formality: formal syntax and semantics Executability: validation through simulation Synthesizability: Implementation in HW and/or SW Support for IP reuse Modularity Hierarchical composition Separation of concepts Simplicity

System-Level Description Languages

Synthesis Converting a behavioral description to a structural one. RTL synthesis is well known. Cycle accurate model -> logic gate netlist High-level synthesis: from C to a structural model. Still in early stage of adoption. System synthesis: system behavioral model -> system structural model under active research.

System Synthesis Processes -> CPUs or custom logic HW/SW partitioning Communication -> Buses or NoC Flow Profiling & Estimation Component & connection allocation Process and channel binding Process scheduling IF component insertion Model refinement

Hardware/Software Co-Design Definition: HW/SW co-design is the design of cooperating HW components and SW components in a single design effort. Alternative definition: HW/SW co-design means meeting system level objectives by exploiting the synergy of HW and SW through concurrent design.

High-Level Synthesis Embedded book

Concurrency vs Parallelism Concurrency: independent operations are arranged such that they may be executed simultaneously. Simultaneous executions may not be possible. Parallelism: HW platform can execute multiple operations simultaneously. Parallelism is useless if SW does not display concurrency.

System Design Methodology The Embedded Book, Chapter 2

Terminologies + S A B Cout Cin Specification Structural Model Transistor level model Implementation

Historical Overview Embedded book

Bottom-Up Methodology Embedded book

Top-Down Methodology Embedded book

Meet-in-the-Middle Methodology Embedded book

Platform Methodology Reuse of previous defined platforms With well-defined structures and standard components. Add more components necessary for an application. These components are then synthesized. System implementation is generated by combining the layouts of existing and custom components. Advantages: faster development, lower cost,

An Example Platform: Xilinx Zynq

Reading Guide Embedded Book CoDesign Book Chapter 1, sec 1.1 – 1.5, skip 1.3.1 – 1.3.2 Chapter 2, skip 2.5 CoDesign Book Chapter 1

Backup

A System Level HW Design Flow