usage/applications emb. computing desktop. research exploitation emb. computing desktop computing

25
Usage/Applications Usage/Applications Emb. Computing Desktop

Upload: caroline-randall

Post on 25-Dec-2015

230 views

Category:

Documents


0 download

TRANSCRIPT

Usage/ApplicationsUsage/Applications

Emb. Computing

Desktop

Research exploitationResearch exploitation

Emb. ComputingDesktop

Computing

Embedded Systems Embedded Systems SeminarSeminar

Abhik RoychoudhuryAbhik Roychoudhury

Semester 1, 2003-2004Semester 1, 2003-2004

ESES

A computing system which is part of A computing system which is part of a “larger system” (read – device).a “larger system” (read – device).

The larger system constitutes the The larger system constitutes the environment – in continuous environment – in continuous interaction.interaction.

The computing system implements a The computing system implements a specific functionality.specific functionality. A dedicated computer implemented by a A dedicated computer implemented by a

combination of hardware and software.combination of hardware and software.

ES ExamplesES Examples

AutomobilesAutomobiles Train control systemsTrain control systems Avionics / Flight controlAvionics / Flight control Nuclear Power PlantsNuclear Power Plants Inside medical devices (for image Inside medical devices (for image

manipulation) and other purposesmanipulation) and other purposes Safety first !Safety first !

ES ExamplesES Examples

Or more vanilla Or more vanilla HDTVHDTV Washing MachinesWashing Machines MicrowaveMicrowave Controllers for other household Controllers for other household

devices such as Air-condevices such as Air-con Finally, smart room / wear (GA Tech Finally, smart room / wear (GA Tech

etc.)etc.)

What is new ?What is new ?

Growth of ES is not new.Growth of ES is not new. Engineers contend that they have Engineers contend that they have

been developing ES (such as Control been developing ES (such as Control sys.) …sys.) …

Such development isSuch development is Hard-coded and example-specificHard-coded and example-specific With little debugging & validationWith little debugging & validation Little timing and power guaranteesLittle timing and power guarantees

Need new design methodologies.Need new design methodologies.

Timeliness ?Timeliness ?

Not 100% clear (at least to me !)Not 100% clear (at least to me !) One obvious answer is the growing One obvious answer is the growing

complexity of embedded systems.complexity of embedded systems. Another issue is the increasing Another issue is the increasing

availability of System-on-Chip availability of System-on-Chip platformsplatforms Makes ES design methodologies Makes ES design methodologies

realizable.realizable.

ES CharacteristicsES Characteristics

Real-time and/or ReactiveReal-time and/or Reactive Often combines hard and soft real-timeOften combines hard and soft real-time Timing constraints on the responseTiming constraints on the response

Low power budgetLow power budget Novel architectures etc.Novel architectures etc.

Low code sizeLow code size Aggressive Code compression possible.Aggressive Code compression possible.

Profile driven development all Profile driven development all important.important.

All methodologies …All methodologies …

Will typically espouse Will typically espouse Integrated model based designIntegrated model based design Efficient Programming TechnologyEfficient Programming Technology

Design Patterns, Run-time supportDesign Patterns, Run-time support Link up to middleware/ RTOSLink up to middleware/ RTOS

Services to Application SoftwareServices to Application Software System-on-Chip Platforms and/or System-on-Chip Platforms and/or

Programmable hardware Programmable hardware High levels of assurance at each stage.High levels of assurance at each stage.

But this is …But this is …

A little bit too abstract (IMHO)A little bit too abstract (IMHO) Sounds like any canonical CS Sounds like any canonical CS

research programme.research programme. Or some collections of it.Or some collections of it. What are the ES design issues ?What are the ES design issues ?

We need to look deeper and in more We need to look deeper and in more details.details.

Models of ComputationModels of Computation“The primary technology outcome of the MoBIES program will be Model-Based Integration technology.

The key technology components to be developed are model-based programming environments and model-based generators. … “

Excerpt from US Air Force Research Lab MOBIES Program Objectives

Models of ComputationModels of Computation

Model based programmingModel based programming Prog. Sys. which allow construction of Prog. Sys. which allow construction of

complex models as a by-product of complex models as a by-product of programming (not the current norm !)programming (not the current norm !)

Model based generatorsModel based generators Input to verif/analysis tools from modelsInput to verif/analysis tools from models Generate actual component interfaces Generate actual component interfaces

etc. from modelsetc. from models

What kind of models ?What kind of models ?

Concurrent processesConcurrent processes Support for timingSupport for timing Support for process communicationSupport for process communication

Explicit modeling of process communication Explicit modeling of process communication can ease interface synthesis.can ease interface synthesis.

Separation of computation /communicationSeparation of computation /communication Objects (crucial link to Prog. Tech.)Objects (crucial link to Prog. Tech.) Discrete and Continuous modelsDiscrete and Continuous models

Programming TechnologyProgramming Technology

Hard and soft real-time requirementsHard and soft real-time requirements Inter-process synchronization Inter-process synchronization

requirementsrequirements Implementation of communicationImplementation of communication

Communication is often peer-to-peer Communication is often peer-to-peer rather than centralized.rather than centralized.

All these requirements need to All these requirements need to introduced into otherwise vanilla code.introduced into otherwise vanilla code.

Programming TechnologyProgramming Technology

The PCES program will extend and combine approaches from programming language analysis and compilation; composable policies and protocols for communications and operating systems services, and correct-by-construction software techniques. These techniques will be developed for both interactive and automatic use in support of embedded real-time programming and execution.

Excerpt from the “Vision” of DARPA PCES Program

- Program Composition for Embedded Systems

Or more simply …Or more simply …

Develop re-usable core software.Develop re-usable core software. Develop list of “features” (or “aspects”) Develop list of “features” (or “aspects”)

you want to assureyou want to assure Synch. , Timing, Memory management, PowerSynch. , Timing, Memory management, Power

Safe code transformation for introducing Safe code transformation for introducing these aspects into core code.these aspects into core code.

Analysis tools for studying tradeoffs Analysis tools for studying tradeoffs between cross-cutting aspects.between cross-cutting aspects.

AOP, SW Composition: much to learn from AOP, SW Composition: much to learn from PL,SEPL,SE

OS, MiddlewareOS, Middleware

“The DARPA Quorum program is pursuing technology research projects that are attempting solutions to a number of the missing capabilities needed for mission critical system development, such as predictable performance for network based applications, fault tolerance and dependability characteristics, real time performance properties, and fine grained distributed systems security. “

Excerpt from description of DARPA Quorum Program

So, the key points include…So, the key points include…

Guarantee of real-time performance (related Guarantee of real-time performance (related to scheduling and schedulability)to scheduling and schedulability) Related to timing and/or power estimationRelated to timing and/or power estimation

Quality of Service (QoS) guarantees in Quality of Service (QoS) guarantees in networked distributed embedded systemsnetworked distributed embedded systems Handling multiple QoS guarantees – expt. Handling multiple QoS guarantees – expt.

PlatformPlatform Formal specification of QoS guarantees and even Formal specification of QoS guarantees and even

run-time monitoring.run-time monitoring. Middleware for open systemsMiddleware for open systems

Fault tolerance, Dynamic scheduling.Fault tolerance, Dynamic scheduling.

Hardware, ArchitectureHardware, Architecture

Low power processor architecturesLow power processor architectures Power model for system-on-chip platforms Power model for system-on-chip platforms

Need to model buses / networks, and traffic flowNeed to model buses / networks, and traffic flow Abstractions in traffic flow : count based Abstractions in traffic flow : count based

distributionsdistributions Transforming assembly code to reduce Transforming assembly code to reduce

power hotspots (more mem. Accesses etc.)power hotspots (more mem. Accesses etc.) Other layers can also handle powerOther layers can also handle power

E.g. power as a secondary concern in schedulingE.g. power as a secondary concern in scheduling But here power is all important.But here power is all important.

Hardware, ArchitectureHardware, Architecture

Transformations for predictable codeTransformations for predictable code Take into account underlying hardware Take into account underlying hardware

platform (a formal model of pipeline, cache platform (a formal model of pipeline, cache etc. ?)etc. ?)

Both sides of the coinBoth sides of the coin Analyze the performance of assembly code to find Analyze the performance of assembly code to find

worst- case execution time etc. (Well understood)worst- case execution time etc. (Well understood) Trade off performance for predictabilityTrade off performance for predictability

Cache locking schemes, New memory architecturesCache locking schemes, New memory architectures Develop models to predict the effect of well-Develop models to predict the effect of well-

understood code transformations (understood code transformations (hothot direction) direction)

Hardware, ArchitecturesHardware, Architectures

Other conventional areas in co-designOther conventional areas in co-design Other EDA topics (like design space exploration) Other EDA topics (like design space exploration)

conventionally considered under HW/Arch., …conventionally considered under HW/Arch., … … … but can be considered to belong to all the but can be considered to belong to all the

layers of ES design presented in this talk.layers of ES design presented in this talk. Reconfigurable architectures Reconfigurable architectures

Reconfigure datapaths, functional units etc. at Reconfigure datapaths, functional units etc. at run-time and/or based on application.run-time and/or based on application.

Tech. support – Field Programmable Gate Arrays Tech. support – Field Programmable Gate Arrays (FPGA): plug-n-play with processors in a design.(FPGA): plug-n-play with processors in a design.

Control SystemsControl Systems

Substantial gamut of ES research does (and Substantial gamut of ES research does (and should !) involve control systemsshould !) involve control systems Refer DARPA “Software Enabled Control” Program Refer DARPA “Software Enabled Control” Program

Related to vehicular controlRelated to vehicular control Uninhabited vehicles, airplanesUninhabited vehicles, airplanes Developing adaptive control systems Developing adaptive control systems

Hybrid Systems (interesting from CS view)Hybrid Systems (interesting from CS view) Multi-modal control in distributed sys (useful for ES)Multi-modal control in distributed sys (useful for ES) Traditional control theory useful for centralized Traditional control theory useful for centralized

laws.laws.

Words of cautionWords of caution

The talk reflects ES design methodology The talk reflects ES design methodology when largely left to a CS person.when largely left to a CS person. Possibly (???) ES design of the future.Possibly (???) ES design of the future.

The reading list reflects emerging ES The reading list reflects emerging ES design trends (emerging somewhat from design trends (emerging somewhat from EDA ?)EDA ?) No exact matchNo exact match..

Applications (Applications (not covered in details herenot covered in details here)) Media ApplicationsMedia Applications Control systems …Control systems …

AdministriviaAdministrivia

Every Tuesday 2-3 PM.Every Tuesday 2-3 PM. Venue: EC for 12, 19, 26 August.Venue: EC for 12, 19, 26 August.

May be changed for later dates.May be changed for later dates. A volunteer needed for subsequent A volunteer needed for subsequent

weeksweeks Desired: 2 weeks preparation time.Desired: 2 weeks preparation time. Speakers for next 2 weeks fixed.Speakers for next 2 weeks fixed. Powerpoint / PDF presentation desirable.Powerpoint / PDF presentation desirable.

QUESTIONS ?QUESTIONS ?