Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2012.

Similar presentations


Presentation on theme: "CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2012."— Presentation transcript:

1 CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2012

2 Winter 2010- CS 244 2 CS244 – Lecture 3 Embedded System Software

3 Winter 2010- CS 244 3 Course Outline Concept Concept Specification HW/SWPartitioning Hardware Components Software Components Estimation - Exploration Hardware Software Design (Synthesis, Layout, …) Design (Compilation, …) Validation and Evaluation (area, power, performance, …)

4 Winter 2010- CS 244 4 Components of Embedded Systems Analog DigitalAnalog Memory Coprocessors Controllers Converters Processor Interface Software (Application Programs) ASIC

5 5 Design Domains 5 Mechanics Hydraulics Actuators Circuit Boards Packaging Panel & Body MEMS Nanotechnologies Antennas RF Modulators Mixers Amplifiers VCOs Sensors A/D & D/A Power Drivers Filters Signal Conditioners Op. Amps Transistors Passive Devices Power Supply AC/DC & DC/DC System Architecture Processors Memories ALU, MUX, & Latches Gates & FF CMOS Transistors Masks User Software GUI User Libraries System Libraries VM Middleware Device Drivers RTOS BIOS & Firmware OtherAnalogDigitalSoftware

6 Winter 2010- CS 244 6 Digital System architecture  How many processors (custom and general purpose)  The interconnect network  The memory hierarchy and DMA architecture  In some designs, system architecture may include software Processors  Instruction set architecture  Pipeline design and datapath  Controller  RTL description Memories  On-chip (small) memories may be based on Flip Flops (see next slide)  For larger fabrics, often based on DRAM, magnetic media, or laser readable media 6 Reliable Very Reliable

7 Winter 2010- CS 244 7 Software User level software (ULS)  Highly application specific  Low reusability  Typically designed at the last phase GUI  Often part of ULS  May be based on standard GUI libraries (X11, Java, WinCE, GNOME, KDE, etc.)  Often requires more research and refinement than it receives  May be the most complex/challenging design component, especially in display/input limited devices User libraries  Reusable application software  DSP algorithms and application kernels 7  Front End  Back End  Mini Kernel Least Reliable

8 Winter 2010- CS 244 8 Software System libraries  Highly reusable application software  Implementation of standards (e.g., MPEG), custom database engines, GUI kernels, etc. VM  Emulates a portable and documented “fictitious” machine (and perhaps API) on any underlying processing system Middleware  Provide a unique interface between applications, lower level hardware, the grid, or a network of devices  Software that connects two otherwise separate applications Device drivers  API to manipulate, read, and write hardware devices  Highly hardware dependent code  Difficult to debug 8 Reliable

9 Winter 2010- CS 244 9 Software RTOS  Provides, multitasking, scheduling, communication, and synchronization between threads of execution BIOS  Provides very basic API for accessing the underlying computer platform Firmware  Software that is embedded in a system that does not allow modification by an end user  May contain BIOS, RTOS, Middleware, …, ULS  Or, may contain all but ULS  Or, some hybrid 9

10 Winter 2010- CS 244 10 Real-time Systems A real-time system has to produce correct result at the right time (deadline driven) A real-time system imposes stringent timing requirements in addition to correctness  Hard real-time  Firm real-time  Soft real-time

11 Winter 2010- CS 244 11 Hard Real-time System designed to meet all deadlines A missed deadline is a design flaw Examples:  Shuttle navigation system  Nuclear reactor monitoring system System hardware (over) designed for worst-case performance System software vigorously tested Formal proofs used to guarantee timing correctness

12 Winter 2010- CS 244 12 Firm Real-time System designed to meet all deadlines, but  “Occasional” missed deadline is allowed Sometimes statistically quantified (e.g., 5% misses)  No need to compute further once a deadline is missed Examples:  Multimedia systems System hardware designed for average case performance System software tested under average (ideal) conditions

13 Winter 2010- CS 244 13 Soft Real-Time System designed to meet as many deadlines as possible  Best effort to complete within specified time, but may be late Examples:  Network switch or router System hardware designed for average case performance System software tested under average (ideal) conditions

14 Winter 2010- CS 244 14 Embedded Operating Systems Must provide means for dynamic task creation  Create, join, and cancel Must provide means for task synchronization and communication  Shared memory vs. message passing  Semaphore and condition variables vs. monitors Posix threads a common standard provides thread creation and synchronization


Download ppt "CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2012."

Similar presentations


Ads by Google