ECE-777 System Level Design and Automation Introduction 1 Cristinel Ababei Electrical and Computer Department, North Dakota State University Spring 2012.

Slides:



Advertisements
Similar presentations
Embedded System, A Brief Introduction
Advertisements

WATERLOO ELECTRICAL AND COMPUTER ENGINEERING 20s: Computer Hardware 1 WATERLOO ELECTRICAL AND COMPUTER ENGINEERING 20s Computer Hardware Department of.
Corso di Sistemi in Tempo Reale Laurea in Ingegneria dell‘Automazione a.a Paolo Pagano
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
7/23 CSE 325 Embedded Microprocessor System Design Fall 2010 Computer Science & Engineering Department Arizona State University Tempe, AZ Dr. Yann-Hang.
Reconfigurable Computing: What, Why, and Implications for Design Automation André DeHon and John Wawrzynek June 23, 1999 BRASS Project University of California.
Platform-based Design 5KK70 TU/e 2009 Henk Corporaal Bart Mesman.
Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Spring 08, Jan 15 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Introduction Vishwani D. Agrawal James J. Danaher.
Hardware Software Codesign of Embedded System CPSC Rabi Mahapatra.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
11/14/05ELEC Fall Multi-processor SoCs Yijing Chen.
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.
Define Embedded Systems Small (?) Application Specific Computer Systems.
Embedded Systems Introduction. What is an Embedded System What is an Embedded System? Definition of an embedded computer system: is a digital system.
Chapter 13 Embedded Systems
Embedded System:Introduction 1 Introduction What is an embedded system? Embedded system market trends Characteristics of embedded systems Embedded system.
Software Engineering CSE470: Embedded Systems Overview 49 What is an Embedded System What is an Embedded System? Definition of an embedded computer system:
Winter-Spring 2001Codesign of Embedded Systems1 Introduction to HW/SW Co-Synthesis Algorithms Part of HW/SW Codesign of Embedded Systems Course (CE )
Winter-Spring 2001Codesign of Embedded Systems1 Introduction to HW/SW Codesign Part of HW/SW Codesign of Embedded Systems Course (CE )
Evolution of Digital-Design: Past, Present, and Future Design & Co-design of Embedded Systems Maziar Goudarzi.
HW/SW Co-Synthesis of Dynamically Reconfigurable Embedded Systems HW/SW Partitioning and Scheduling Algorithms.
UML for Embedded Systems Development— Extensions; Hardware-Software CoDesign.
1  Staunstrup and Wolf Ed. “Hardware Software codesign: principles and practice”, Kluwer Publication, 1997  Gajski, Vahid, Narayan and Gong, “Specification,
Mahapatra - Texas A&M - Fall 001 Hardware Software Codesign of Embedded System CPSC Rabi Mahapatra.
L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수,
- 1 - EE898-HW/SW co-design Hardware/Software Codesign “Finding right combination of HW/SW resulting in the most efficient product meeting the specification”
International Master of Science Program in System-on-Chip (SoC) Design at KTH SoC Masters Axel Jantsch Royal Institute of.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
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 {
COMP3221/9221: Microprocessors and Embedded Systems COMP3221: Microprocessors and Embedded Systems Lecture 31: Embedded Systems
1 SW HW Hardware-Software Codesign 軟硬體共同設計 Trong-Yen Lee 李宗演 Graduate Institute of Computer, Communication, and Control National Taipei University of Technology.
Lecture 13 Introduction to Embedded Systems Graduate Computer Architecture Fall 2005 Shih-Hao Hung Dept. of Computer Science and Information Engineering.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
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.
Real-Time Operating Systems for Embedded Computing 李姿宜 R ,06,10.
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.
A Methodology for Architecture Exploration of heterogeneous Signal Processing Systems Paul Lieverse, Pieter van der Wolf, Ed Deprettere, Kees Vissers.
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.
Hardware-software Interface Xiaofeng Fan
- 1 - EE898_HW/SW Partitioning Hardware/software partitioning  Functionality to be implemented in software or in hardware? No need to consider special.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
IC Products Processors –CPU, DSP, Controllers Memory chips –RAM, ROM, EEPROM Analog –Mobile communication, audio/video processing Programmable –PLA, FPGA.
System-level power analysis and estimation September 20, 2006 Chong-Min Kyung.
Axel Jantsch 1 Networks on Chip Axel Jantsch 1 Shashi Kumar 1, Juha-Pekka Soininen 2, Martti Forsell 2, Mikael Millberg 1, Johnny Öberg 1, Kari Tiensurjä.
UNIT I. EMBEDDED SYSTEM It is an electrical/electro-mechanical system designed to perform a specific function. It is a combination of hardware and software.
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.
VLSI Design System-on-Chip Design
Center for Embedded Systems (CECS) Eli Bozorgzadeh Computer Science Department.
System-on-Chip Design Hao Zheng Comp Sci & Eng U of South Florida 1.
Introduction to VLSI Design Amit Kumar Mishra ECE Department IIT Guwahati.
Multiprocessor SoC integration Method: A Case Study on Nexperia, Li Bin, Mengtian Rong Presented by Pei-Wei Li.
Embedded Real-Time Systems
April 15, 2013 Atul Kwatra Principal Engineer Intel Corporation Hardware/Software Co-design using SystemC/TLM – Challenges & Opportunities ISCUG ’13.
System-on-Chip Design
ELEC 7770 Advanced VLSI Design Spring 2016 Introduction
Embedded Systems Introduction
Introduction ( A SoC Design Automation)
Chapter 1: Introduction
ELEC 7770 Advanced VLSI Design Spring 2014 Introduction
ELEC 7770 Advanced VLSI Design Spring 2012 Introduction
ELEC 7770 Advanced VLSI Design Spring 2010 Introduction
Introduction to Embedded Systems
Presentation transcript:

ECE-777 System Level Design and Automation Introduction 1 Cristinel Ababei Electrical and Computer Department, North Dakota State University Spring 2012

2 Outline Syllabus, focus of this course, topics covered, project Complex embedded systems are becoming SoCs SoCs: characteristics, applications, complexity, concurrency, heterogeneity VLSI design flow vs. SoC design flow Summary

Syllabus 3

Topics covered No single textbook yet, research papers Project HW assignments and in-class presentations Grading Class website – BlackBoard for additional materials 4

SoC era has come Motivation is increase of “performance”, decrease of costs and time-to-market 5

6 Increasing integration: Complex embedded systems  SoCs

System-on-Chip (SoC) SoC refers to integrating all components of an electronic system into a single chip (what motivates such integration?): – Microprocessors, microcontrollers, DSP’s – ASIC’s, FPGA’s – Memories, IO’s, A/D and D/C converters – Analog, mixed-signal, RF blocks, voltage regulators Communication infrastructure: Bus based, Network- on-Chip (NoC). System-level design (automation) and simultaneous optimization of numerous design metrics is key challenge. A SoC is a complex embedded system. 7

8 Embedded systems characteristics Computational Interact (sense, manipulate, communicate) with the external world: sensors, actuators Reactive: at the speed of the environment Heterogeneity: hardware/software blocks, mixed architectures Networked: shared, adaptive, sensor networks (buildings, environmental monitoring), smart products, wearable computing Flexibility: can run/implement multiple applications sequentially or concurrently - concurrency Reprogrammability/reconfigurability: flexibility in upgrading, bug fixing, product differentiation, product customization Part of a larger system (system within system) Performance and constraints: – Timing (frequency, latency, throughput) – Cost, power, area, weight, temperature, reliability

9 Key recent trends Increasing computation demands, increasing complexity – e.g. multimedia processing in set-top boxes, HDTV Increasingly networked Increasing need for flexibility – time-to-market under ever changing standards HW-SW co-design Higher integration: more blocks on the same chip IP reuse, platform based design, NoC vs. Bus Systems are designed and built as “systems of systems”. Diversity in design methodologies, platform dependent, lack of standards  quality risks, customer confusion

10 SoC market size

11 Complexity and heterogeneity  controller control panel Real-time OS controller processes UI processes ASIC Programmable DSP Programmable DSP Assembly Code DSP Assembly Code Dual-ported RAM CODEC Complexity - handled by working at higher levels of abstraction, hierarchy Heterogeneity - handled by sophisticated HW-SW co-design methodologies

Application domains Consumer electronics (HDTV, digital cameras, camcorders, game consoles), communications (cell phones), space, automotive (video, audio, control), military (radar, sonar), health. More than 30% of the cost of a car is now in Electronics. 90% of all innovations will be based on electronic systems. Modern cars: up to ~100 processors running complex software. Estimated 98% of 8 Billion CPUs produced in 2000 used for embedded apps. 12

More applications Read (“IP reuse” – key concept in system level design – applies to course design too): – The Introduction presentation of ECE-249 at Berkeley: ductionEE249_10.pdf ductionEE249_10.pdf – The introduction presentation of CSE-237D at UCSD: 13

Design flows (i.e., methodologies) 14

15 VLSI design flow examples

16 SoC design flow example

17 Example: Tensilica

18 Example: ARM

19 Handling heterogeneity: HW/SW co-design Fixed Processor Architecture Application Specific HW Block Application-Specific Instruction Set Processor

SoC design flow Various design methodologies – Computation centric: Bus based – past and present – Communication centric: Network-on-Chip based – more recent Key design steps: Intertwined subtasks – Modeling/specification – Refining (or “functional/structural partitioning”) : the function to be implemented into smaller, interacting pieces  hierarchy – HW/SW partitioning: elements in the refined model to either (1) HW units, or (2) SW running on custom hardware or a suitable programmable processor – Allocation (platform design): select components/blocks/IPs – Binding (mapping = implementation): assign functions to HW/SW components – Scheduling: compute the times at which the functions are executed. This is important when several modules in the partition share a single hardware unit. – Verification & debugging Crucial is the co-design and joint optimization of hardware and software For NoC based approach: network synthesis step is crucial 20

System specification, Allocation (platform design) 21

Binding (mapping), Scheduling 22

System level design System-level design is a complex synthesis tasks – software synthesis and code generation – hardware synthesis – interface and communication synthesis – hardware/software partitioning and component selection – hardware/software scheduling Major Components: – Application specification – Design space exploration and system optimization – Estimation: Synthesis based on abstraction only makes sense if there are powerful estimation methods available: Estimate properties of the next layer(s) of abstraction. Design decisions are based on these estimated properties. 23

24 Hardware vs. Software Modules A significant part of the problem is deciding which parts should be in software on programmable processors, and which in specialized hardware. Hardware = functionality implemented via a custom architecture (datapath + FSM) Software = functionality implemented in software on a programmable processor Key differences: – Multiplexing software modules multiplexed with others on a processor hardware modules are typically mapped individually on dedicated hardware – Concurrency processors usually have one “thread of control” dedicated hardware often has concurrent datapaths

Challenges Increasing application complexity – large systems with legacy functions – mixture of event driven and data flow tasks – examples: multimedia, automotive, mobile communication Increasing target system complexity: heterogeneity  HW/SW co-design – mixture of different technologies, processor types, and design styles – large SoCs combining components from different sources, distributed system implementations Design chain integration: – Design steps role  Methodology  Tools Parallel architectures Embedded software and control Numerous constraints and design objectives – examples: cost, power consumption, timing constraints, dependability/reliability 25

26 Design methodologies Past and present: – Ad hoc approaches based on earlier experience with similar products, and on manual design. – HW-SW partitioning decided at the beginning, and then designs proceed separately. Present and future: – HW-SW co-design – Design automation (CAD) tools: very challenging

Tools, companies, academia (open-source) Design tools provided directly by SoC vendors or EDA companies – CAD tools for hardware – Software development environments for software – Implement a variety of design methodologies SoC companies – Academia examples – – – Other resources – – – – NoC Blog –

28 Observations “We are in the middle of a revolution in the way electronics products are designed” System design is the key (also for IC design!) – Start with the highest possible level of abstraction (e.g., control algorithms) – Establish properties at the right level – Use formal models – Leverage multiple “scientific” disciplines

Summary Course syllabus, topics outline SoC era has come: characteristics & applications Design flows System design is the key Emphasis in this course will be put on design automation and on NoC design paradigm Project (with milestones) is 50% of final grade HW #1: “15-slides” style presentation 29