Leiden Embedded Research Center Prof. Dr. Ed F. Deprettere, Dr. Bart Kienhuis, Dr. Todor Stefanov Leiden Embedded Research Center (LERC) Leiden Institute.

Slides:



Advertisements
Similar presentations
Processes Management.
Advertisements

Accelerators for HPC: Programming Models Accelerators for HPC: StreamIt on GPU High Performance Applications on Heterogeneous Windows Clusters
Computer Abstractions and Technology
1/1/ / faculty of Electrical Engineering eindhoven university of technology Processor support devices Part 1:Interrupts and shared memory dr.ir. A.C. Verschueren.
Advanced microprocessor optimization Kampala August, 2007 Agner Fog
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Sensor Network Platforms and Tools
CMPT 300: Operating Systems I Dr. Mohamed Hefeeda
1 Threads, SMP, and Microkernels Chapter 4. 2 Process: Some Info. Motivation for threads! Two fundamental aspects of a “process”: Resource ownership Scheduling.
Room: E-3-31 Phone: Dr Masri Ayob TK 2123 COMPUTER ORGANISATION & ARCHITECTURE Lecture 4: Computer Performance.
Chapter 5: Computer Systems Organization Invitation to Computer Science, Java Version, Third Edition.
1 School of Computing Science Simon Fraser University CMPT 300: Operating Systems I Dr. Mohamed Hefeeda.
Chapter 13 Embedded Systems
Embedded Computing From Theory to Practice November 2008 USTC Suzhou.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
GCSE Computing - The CPU
Computer Organization and Assembly language
Emotion Engine A look at the microprocessor at the center of the PlayStation2 gaming console Charles Aldrich.
01EMBSYST2007 Ed F.Deprettere1 Embedded Systems and Software Ed F. Deprettere, Todor Stefanov, Hristo Nikolov {edd, stefanov, Leiden.
Computer performance.
Process Management A process is a program in execution. It is a unit of work within the system. Program is a passive entity, process is an active entity.
Course Outline DayContents Day 1 Introduction Motivation, definitions, properties of embedded systems, outline of the current course How to specify embedded.
Computer System Architectures Computer System Software
Lecture 8 Presented By Dr. Shazzad Hosain Asst. Prof. EECS, NSU.
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
CS-2710 Computer Organization Dr. Mark L. Hornick web: faculty-web.msoe.edu/hornick – CS-2710 info syllabus, homework, labs… –
LERC's challenges 08/02/11 The Leiden Embedded Research Center Prof. Dr. Ed F. Deprettere, Dr. Bart Kienhuis Leiden Embedded Research Center (LERC) Leiden.
Architectures for mobile and wireless systems Ese 566 Report 1 Hui Zhang Preethi Karthik.
Computer Systems Organization CS 1428 Foundations of Computer Science.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
High Performance Computing Processors Felix Noble Mirayma V. Rodriguez Agnes Velez Electric and Computer Engineer Department August 25, 2004.
Mahesh Sukumar Subramanian Srinivasan. Introduction Embedded system products keep arriving in the market. There is a continuous growing demand for more.
Fall 2012 Chapter 2: x86 Processor Architecture. Irvine, Kip R. Assembly Language for x86 Processors 6/e, Chapter Overview General Concepts IA-32.
Invitation to Computer Science 5 th Edition Chapter 6 An Introduction to System Software and Virtual Machine s.
Multiprocessing. Going Multi-core Helps Energy Efficiency William Holt, HOT Chips 2005 Adapted from UC Berkeley "The Beauty and Joy of Computing"
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
Advanced Processor Technology Architectural families of modern computers are CISC RISC Superscalar VLIW Super pipelined Vector processors Symbolic processors.
Chapter 16 Micro-programmed Control
C o n f i d e n t i a l 1 Course: BCA Semester: III Subject Code : BC 0042 Subject Name: Operating Systems Unit number : 1 Unit Title: Overview of Operating.
Computer Architecture 2 nd year (computer and Information Sc.)
Operating Systems 1 K. Salah Module 1.2: Fundamental Concepts Interrupts System Calls.
CS 1308 Computer Literacy and the Internet. Objectives In this chapter, you will learn about:  The components of a computer system  Putting all the.
CENTRAL PROCESSING UNIT. CPU Does the actual processing in the computer. A single chip called a microprocessor. Composed of an arithmetic and logic unit.
Stored Program A stored-program digital computer is one that keeps its programmed instructions, as well as its data, in read-write,
Platform Abstraction Group 3. Question How to deal with different types hardware and software platforms? What detail to expose to the programmer? What.
Chapter 5: Computer Systems Design and Organization Dr Mohamed Menacer Taibah University
Playstation2 Architecture Architecture Hardware Design.
Ee314 Microprocessor Systems Dr. Mircea DABACAN Electrical Engineering & Computer Science Dept., Washington State University Office: EE/ME 504 Phone:
Simple ALU How to perform this C language integer operation in the computer C=A+B; ? The arithmetic/logic unit (ALU) of a processor performs integer arithmetic.
Operating Systems: Summary INF1060: Introduction to Operating Systems and Data Communication.
Copyright 2006 by Timothy J. McGuire, Ph.D. 1 MIPS Programming Model CS 333 Sam Houston State University Dr. Tim McGuire.
Interrupts and Exception Handling. Execution We are quite aware of the Fetch, Execute process of the control unit of the CPU –Fetch and instruction as.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Configuring pacemaker while 2kms away. Person is travelling in driverless car.
Introduction to Operating Systems Concepts
Chapter Overview General Concepts IA-32 Processor Architecture
GCSE Computing - The CPU
CS203 – Advanced Computer Architecture
Computers’ Basic Organization
Microprocessor and Microcontroller Fundamentals
ECE354 Embedded Systems Introduction C Andras Moritz.
Visit for more Learning Resources
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
Chapter 5: Computer Systems Organization
Computer Architecture
GCSE Computing - The CPU
Presentation transcript:

Leiden Embedded Research Center Prof. Dr. Ed F. Deprettere, Dr. Bart Kienhuis, Dr. Todor Stefanov Leiden Embedded Research Center (LERC) Leiden Institute of Advanced Computer Science Leiden Univerity {edd, kienhuis,

LERC's challenges 08/02/09 Outline of Presentation Embedded is not merely 'small'. A small, and a not so small example. Embedded means: time matters. Not 'fast', but determinate and predictable (Multi-threaded is neither of the three).

LERC's challenges 08/02/09 NASA's Mars Sojourner Rover (July 8, 1997) Microprocessor: 8-bit Intel 80C85 (produced ) Rover senses the environment (input signals), decides on (computes) its actions (response) in real time. A small Embedded System

iPhone. (Small?) ARM11 core Vector Floating Point co-processor (3D-graphics) SIMD integer CPU (2,1 MIPS) DMA.45mW/MHz

LERC's challenges 08/02/09 A not so small Embedded System station density high in core central core contains supercomputer 350 km text Central core (2km) Remote stationation station contains 100 LF antennas 100 HF compound antennas LOFAR SKA Distributed hierarchical radio telescopes

LERC's challenges 08/02/09 Embedded is What? An Embedded System is an information processing system that is: application domain specific (not general purpose) tightly coupled to its environment Examples of application domains are: automotive, multimedia. Environment: type and properties of input/output information. Tightly coupled: environment dictates what the system’s response behavior must be. (“ES cannot synchronize with environment”) Embedded Systems are reactive and real-time

LERC's challenges 08/02/09 Time Matters. Computer Science has been concerned about abstraction. An instruction set, a register file, and a program counter, is all we need to execute whatever application(s) we can dream of. True. But, no programming language (except assembly) considers timing requirements and constraints. Modern languages and computers make it impossible to tell how long it will take to execute a piece of code.

01EMBSYST2006 Ed F.Deprettere8 System-Level Performance Analysis Input Stream Input Stream I/O PP Memory Requirements? Processor Speeds? Timing Properties? Bus Utilization? Bottleneck ?

01EMBSYST2006 Ed F.Deprettere9 Difficulties Input Stream Complex Input: - Timing (jitter, bursts,...) - Different Event Types Task Communication Task Scheduling ab acc b

01EMBSYST2006 Ed F.Deprettere10 Difficulties Processor Task Buffer Input Stream Task Communication Task Scheduling ab acc b Complex Input: - Timing (jitter, bursts,...) - Different Event Types Variable Resource Availability Variable Execution Demand - Input (different event types) - Internal State (Program, Cache,...)

01EMBSYST2006 Ed F.Deprettere11 Why is it difficult? It is difficult because there are too many parameters for any optimization procedure to give an optimal match between a (small?) set of (simultaneously?) running applications and a corresponding execution platform.

01EMBSYST2006 Ed F.Deprettere12 Summary What is specific to research in embedded systems and software? The impact of the environment The performance analysis in terms of delays and buffer sizes Where are the fundamental questions? Compositionality (modularity) composability (layering) scalability, dependability and security Design space exploration

01EMBSYST2006 Ed F.Deprettere13 Conclusion (2) Move successful concepts (like abstraction and modularity) to embedded systems Do meaningful experiments that are carefully planned (learn from physics …)