Embedded Systems Theory and Design

Slides:



Advertisements
Similar presentations
Embedded System, A Brief Introduction
Advertisements

Corso di Sistemi in Tempo Reale Laurea in Ingegneria dell‘Automazione a.a Paolo Pagano
Fault Detection in a HW/SW CoDesign Environment Prepared by A. Gaye Soykök.
Embedded Systems: Introduction. Course overview: Syllabus: text, references, grading, etc. Schedule: will be updated regularly; lectures, assignments.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Define Embedded Systems Small (?) Application Specific Computer Systems.
Embedded System:Introduction 1 Introduction What is an embedded system? Embedded system market trends Characteristics of embedded systems Embedded system.
Winter-Spring 2001Codesign of Embedded Systems1 Introduction to HW/SW Codesign Part of HW/SW Codesign of Embedded Systems Course (CE )
Lecture 1.
COM181 Computer Hardware Ian McCrumRoom 5B18,
1  Staunstrup and Wolf Ed. “Hardware Software codesign: principles and practice”, Kluwer Publication, 1997  Gajski, Vahid, Narayan and Gong, “Specification,
Chapter 1- Introduction
L29:Lower Power Embedded Architecture Design 성균관대학교 조 준 동 교수,
Chapter 1- Introduction Lecture 1 Ready, fire, aim (the fast approach to software development). Ready, aim, aim, aim, aim... (the slow approach to software.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
ECE-777 System Level Design and Automation Introduction 1 Cristinel Ababei Electrical and Computer Department, North Dakota State University Spring 2012.
COMP3221/9221: Microprocessors and Embedded Systems COMP3221: Microprocessors and Embedded Systems Lecture 31: Embedded Systems
EMBEDDED SYSTEMS FOUNDATIONS OF CYBER-PHYSICAL SYSTEMS PETER MARWEDEL Embedded System Design.
Topic (1)Software Engineering (601321)1 Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
Page 1 Reconfigurable Communications Processor Principal Investigator: Chris Papachristou Task Number: NAG Electrical Engineering & Computer Science.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
- 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.
Introduction Advantage of DSP: - Better signal quality & repeatable performance - Flexible  Easily modified (Software Base) - Handle more complex processing.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Lecture 7: Overview Microprocessors / microcontrollers.
Chapter 1- Introduction Lecture 1. Topics covered  Professional software development  What is meant by software engineering.  Software engineering.
Embedded Systems. What is Embedded Systems?  Embedded reflects the facts that they are an integral.
CS220:INTRODUCTION TO SOFTWARE ENGINEERING CH1 : INTRODUCTION 1.
Computer Organization and Architecture Lecture 1 : Introduction
Programmable Logic Devices
CompSci 280 S Introduction to Software Development
System-on-Chip Design
Chapter 1- Introduction
Andreas Hoffmann Andreas Ropers Tim Kogel Stefan Pees Prof
Definition CASE tools are software systems that are intended to provide automated support for routine activities in the software process such as editing.
ECE354 Embedded Systems Introduction C Andras Moritz.
ELEC 7770 Advanced VLSI Design Spring 2016 Introduction
Chapter 1- Introduction
System On Chip.
THE PROCESS OF EMBEDDED SYSTEM DEVELOPMENT
A Methodology for System-on-a-Programmable-Chip Resources Utilization
Introduction ( A SoC Design Automation)
EMBEDDED SYSTEMS
Introducing Embedded Systems and the Microcontrollers
Chapter 1: Introduction
Frequently asked questions about software engineering
Introduction to Reconfigurable Computing
HCI in the software process
Why microcontrollers in embedded systems?
Chapter 1: The 8051 Microcontrollers
ELEC 7770 Advanced VLSI Design Spring 2014 Introduction
Introduction to cosynthesis Rabi Mahapatra CSCE617
Subject Name: Embedded system Design Subject Code: 10EC74
ELEC 7770 Advanced VLSI Design Spring 2012 Introduction
ELEC 7770 Advanced VLSI Design Spring 2010 Introduction
Introduction to Embedded Systems
Chapter 1 Introduction.
HCI in the software process
HIGH LEVEL SYNTHESIS.
Data Acquisition (DAQ)
Computer Evolution and Performance
Embedded Processors.
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
HCI in the software process
Human Computer Interaction Lecture 14 HCI in Software Process
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Presentation transcript:

Embedded Systems Theory and Design SEMINAR- UNDERGUIDNESS PROF. RAJENDRA SINGH KUSHWAH Embedded Systems Theory and Design This lecture is intended to introduce the basic concept of embedded systems. At the end of this lecture the student will be able to define embedded systems identify embedded systems differentiate embedded systems with non-embedded systems and non-embedded real time systems HARI BABU YADAV

Course overview Tentative contents: Introduction to Embedded Computing Embedded System Hardware Embedded Computing Platform   Programming Embedded Systems   Embedded System Development   6. Case Study and Assignments for Designing a Complete System

Course Overview Evaluation criteria: Term papers / Seminars/ Projects : 40% (20% will be clubbed with end term marks and 20% will contribute as Teacher's Assessment) Mid Term (written): 20% End Term (written): 40%

What is an Embedded System An Embedded System is a microprocessor based system that is embedded as a subsystem, in a larger system (which may or may not be a computer system). Highlight the interaction with the environment Input output communications require proper transduction and actuation So A/D conversion requirements can also be mentioned here A very important aspect that should be mentioned is that the design of the hardware and software of the ES derives its specifications from the environment with which it will interact I O

Application areas Automotive electronics Aircraft electronics Trains Telecommunication

Application areas Medical systems Military applications Authentication

Application areas Consumer electronics Fabrication equipment Smart buildings

Essential Components Microprocessor / DSP Sensors Converters (A-D and D-A) Actuators Memory (On-chip and Off chip) Communication path with the interacting environment

Embedded System Structure (Generic) Processor & ASICs Actuator D-A A-D Sensor Memory

Essential Considerations Response Time -- Real Time Systems Area Cost Portability Low Power (Battery Life) Fault Tolerance

Design Issues (Hardware-Software Co-design) System Specification Functions, Real Time Constraints, Cost and Power Constraints Hardware Software Partitioning Hardware Synthesis Software Synthesis and Code Generation Simulation Implementation

ES, MS and RTS All embedded systems are microprocessor based systems, but all microprocessor based systems may not be amenable to embedding (Area, Power, Cost, Payload parameters). Most of the embedded systems have real time constraints, but there may be ES which are not hard RTS (for example off line Palm tops) There may be RTS which are not embedded (e.g. Separate Process Control Computers in a network) Embedded Systems are not GPS; they are designed for dedicated applications with specific interfaces with the sphere of control

General Characteristics of Embedded Systems Perform a single task Usually not general purpose Increasingly high performance and real time constrained Power, cost and reliability are important considerations HW-SW systems Software is used for more features and flexibility Hardware (processors, ASICs, memory etc. are used for performance and security

General Characteristics of Embedded Systems (contd.) ASIPs and ASICs form a significant component Adv: customization  lower power, cost and enhanced performance Disadv: higher development effort (debuggers, compilers etc.) and larger time to market Analog IO ASIC s Mem Digital Processor Cores

Classification of Embedded Systems Distributed and Non distributed Reactive and Transformational Control dominated and Data dominated

Application Specific Characteristics Application is known before the system is designed System is however made programmable for Feature upgrades Product differentiation Often application development occurs in parallel to system development Hw-Sw partitioning should be as delayed as possible For upgrades design reuse is an important criterion IP reuse, object oriented development

DSP Characteristics Signals are increasingly being represented digitally as a sequence of samples ADCs are moving closer to signals; RFs are also treated digitally Typical DSP processing includes: Filtering, DFT, DCT etc. Speech and image: Compression, decompression, encryption, decryption etc. Modems: Equalization, noise and echo cancellation, better SNR Communication channel: encoding, decoding, equalization etc.

Distributed Characteristics Components may be physically distributed Communicating processes on multiple processors Dedicated hw connected through communicating channels Often economical 4 x 8 Bit controllers may be cheaper than a 32 bit microcontroller Multiple processors can perform multiple time critical tasks Better logistics – devices being controlled may be physically distributed

Design Metrics Unit cost – the $ cost for each unit excluding development cost NRE cost: $ cost for design and development Size: The physical space reqd. – determined by bytes of sw, number of gates and transistors in hw Performance: execution time or throughput of the system Power: lifetime of battery, cooling provisions Flexibility: ability to change functionality without heavy NRE cost

Design Metrics (contd.) Time to market = Time to prototype + Time to refine + Time to produce in bulk Correctness: Test and Validation Safety: Often these metrics are contradictory – hence calls for optimization Processor choice, partitioning decisions, compilation knowledge Requires expertise in hw and sw both

Major Subtasks of Embedded System Design Modeling the system to be designed and constraints Experimenting with different algorithms and their preliminary evaluation Factoring the task into smaller subtasks and modeling their interaction Refinement HW-SW partitioning Allocating the tasks into hw, sw running on custom hw or general purpose hw Scheduling – allocation of time steps for several modules sharing the same resource Implementation: Actual hw binding and sw code generation Simulation and Validation Iterate if necessary

What is Co-design? Traditional design SW and HW partitioning done at an early stage and development henceforth proceeds independently CAD tools are focussed towards hardware synthesis For embedded systems we need several components DSPs, microprocessors, network and bus interface etc. HW-SW codesign allow hw and sw design to proceed in parallel with interactions and feedback between the two processes Evaluation of trade offs and performance yields ultimate result

CAD for Embedded Systems Co-design: Joint optimization of hw and sw to optimize design metrics Co-synthesis: Synthesizes designs from formal specifications Rapid prototyping and design space exploration Many of the tasks are interrelated Intermediate evaluation is not easy as a later decision in one path affects the other

A Mix of Disciplines Application Domain (Signal processing, control …) Software Engg. ( Design Process plays an important role) Programming Language Compilers and Operating System Architecture – Processor and IO techniques Parallel and Distributed Computing Real Time Systems

Importance of Embedded Software and Embedded Processors “... the New York Times has estimated that the average American comes into contact with about 60 micro-processors every day....” [Camposano, 1996] Most of the functionality of embedded systems will be implemented in software! Latest top-level BMWs contain over 100 micro- processors [Personal communication]

Views on embedded System It is estimated that each year embedded software is written five times as much as 'regular' software The vast majority of CPU-chips produced world-wide today are used in the embedded market ... ; only a small portion of CPU's is applied in PC's ... the number of software-constructors of Embedded Systems will rise from 2 million in 1994 to 10 million in 2010; ... the number of constructors employed by software-producers 'merely' rises from 0.6 million to 1.1 million. [Department of Trade and Industry/ IDC Benelux BV: Embedded software research in the Netherlands. Analysis and results, 1997 (according to: www.scintilla.utwente.nl/shintabi/engels/thema_text.html)]

Some problems How can we capture the required behaviour of complex systems ? How do we validate specifications? How do we translate specifications efficiently into implementation? Do software engineers ever consider electrical power? How can we check that we meet real-time constraints? How do we validate embedded real-time software? (large volumes of data, testing may be safety-critical)