Presentation is loading. Please wait.

Presentation is loading. Please wait.

Usage/Applications Emb. Computing Desktop. Research exploitation Emb. Computing Desktop Computing.

Similar presentations


Presentation on theme: "Usage/Applications Emb. Computing Desktop. Research exploitation Emb. Computing Desktop Computing."— Presentation transcript:

1 Usage/Applications Emb. Computing Desktop

2 Research exploitation Emb. Computing Desktop Computing

3 Embedded Systems Seminar Abhik Roychoudhury Semester 1, 2003-2004

4 ES A computing system which is part of a “larger system” (read – device). A computing system which is part of a “larger system” (read – device). The larger system constitutes the environment – in continuous interaction. The larger system constitutes the environment – in continuous interaction. The computing system implements a specific functionality. The computing system implements a specific functionality. A dedicated computer implemented by a combination of hardware and software. A dedicated computer implemented by a combination of hardware and software.

5 ES Examples Automobiles Automobiles Train control systems Train control systems Avionics / Flight control Avionics / Flight control Nuclear Power Plants Nuclear Power Plants Inside medical devices (for image manipulation) and other purposes Inside medical devices (for image manipulation) and other purposes Safety first ! Safety first !

6 ES Examples Or more vanilla Or more vanilla HDTV HDTV Washing Machines Washing Machines Microwave Microwave Controllers for other household devices such as Air-con Controllers for other household devices such as Air-con Finally, smart room / wear (GA Tech etc.) Finally, smart room / wear (GA Tech etc.)

7 What is new ? Growth of ES is not new. Growth of ES is not new. Engineers contend that they have been developing ES (such as Control sys.) … Engineers contend that they have been developing ES (such as Control sys.) … Such development is Such development is Hard-coded and example-specific Hard-coded and example-specific With little debugging & validation With little debugging & validation Little timing and power guarantees Little timing and power guarantees Need new design methodologies. Need new design methodologies.

8 Timeliness ? Not 100% clear (at least to me !) Not 100% clear (at least to me !) One obvious answer is the growing complexity of embedded systems. One obvious answer is the growing complexity of embedded systems. Another issue is the increasing availability of System-on-Chip platforms Another issue is the increasing availability of System-on-Chip platforms Makes ES design methodologies realizable. Makes ES design methodologies realizable.

9 ES Characteristics Real-time and/or Reactive Real-time and/or Reactive Often combines hard and soft real-time Often combines hard and soft real-time Timing constraints on the response Timing constraints on the response Low power budget Low power budget Novel architectures etc. Novel architectures etc. Low code size Low code size Aggressive Code compression possible. Aggressive Code compression possible. Profile driven development all important. Profile driven development all important.

10 All methodologies … Will typically espouse Will typically espouse Integrated model based design Integrated model based design Efficient Programming Technology Efficient Programming Technology Design Patterns, Run-time support Design Patterns, Run-time support Link up to middleware/ RTOS Link up to middleware/ RTOS Services to Application Software Services to Application Software System-on-Chip Platforms and/or Programmable hardware System-on-Chip Platforms and/or Programmable hardware High levels of assurance at each stage. High levels of assurance at each stage.

11 But this is … A little bit too abstract (IMHO) A little bit too abstract (IMHO) Sounds like any canonical CS research programme. Sounds like any canonical CS 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 details. We need to look deeper and in more details.

12 Models 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

13 Models of Computation Model based programming Model based programming Prog. Sys. which allow construction of complex models as a by-product of programming (not the current norm !) Prog. Sys. which allow construction of complex models as a by-product of programming (not the current norm !) Model based generators Model based generators Input to verif/analysis tools from models Input to verif/analysis tools from models Generate actual component interfaces etc. from models Generate actual component interfaces etc. from models

14 What kind of models ? Concurrent processes Concurrent processes Support for timing Support for timing Support for process communication Support for process communication Explicit modeling of process communication can ease interface synthesis. Explicit modeling of process communication can ease interface synthesis. Separation of computation /communication Separation of computation /communication Objects (crucial link to Prog. Tech.) Objects (crucial link to Prog. Tech.) Discrete and Continuous models Discrete and Continuous models

15 Programming Technology Hard and soft real-time requirements Hard and soft real-time requirements Inter-process synchronization requirements Inter-process synchronization requirements Implementation of communication Implementation of communication Communication is often peer-to-peer rather than centralized. Communication is often peer-to-peer rather than centralized. All these requirements need to introduced into otherwise vanilla code. All these requirements need to introduced into otherwise vanilla code.

16 Programming 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

17 Or more simply … Develop re-usable core software. Develop re-usable core software. Develop list of “features” (or “aspects”) you want to assure Develop list of “features” (or “aspects”) you want to assure Synch., Timing, Memory management, Power Synch., Timing, Memory management, Power Safe code transformation for introducing these aspects into core code. Safe code transformation for introducing these aspects into core code. Analysis tools for studying tradeoffs between cross-cutting aspects. Analysis tools for studying tradeoffs between cross-cutting aspects. AOP, SW Composition: much to learn from PL,SE AOP, SW Composition: much to learn from PL,SE

18 OS, 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

19 So, the key points include… Guarantee of real-time performance (related to scheduling and schedulability) Guarantee of real-time performance (related to scheduling and schedulability) Related to timing and/or power estimation Related to timing and/or power estimation Quality of Service (QoS) guarantees in networked distributed embedded systems Quality of Service (QoS) guarantees in networked distributed embedded systems Handling multiple QoS guarantees – expt. Platform Handling multiple QoS guarantees – expt. Platform Formal specification of QoS guarantees and even run- time monitoring. Formal specification of QoS guarantees and even run- time monitoring. Middleware for open systems Middleware for open systems Fault tolerance, Dynamic scheduling. Fault tolerance, Dynamic scheduling.

20 Hardware, Architecture Low power processor architectures Low power processor architectures Power model for system-on-chip platforms Power model for system-on-chip platforms Need to model buses / networks, and traffic flow Need to model buses / networks, and traffic flow Abstractions in traffic flow : count based distributions Abstractions in traffic flow : count based distributions Transforming assembly code to reduce power hotspots (more mem. Accesses etc.) Transforming assembly code to reduce power hotspots (more mem. Accesses etc.) Other layers can also handle power Other layers can also handle power E.g. power as a secondary concern in scheduling E.g. power as a secondary concern in scheduling But here power is all important. But here power is all important.

21 Hardware, Architecture Transformations for predictable code Transformations for predictable code Take into account underlying hardware platform (a formal model of pipeline, cache etc. ?) Take into account underlying hardware platform (a formal model of pipeline, cache etc. ?) Both sides of the coin Both sides of the coin Analyze the performance of assembly code to find worst- case execution time etc. (Well understood) Analyze the performance of assembly code to find worst- case execution time etc. (Well understood) Trade off performance for predictability Trade off performance for predictability Cache locking schemes, New memory architectures Cache locking schemes, New memory architectures Develop models to predict the effect of well- understood code transformations (hot direction) Develop models to predict the effect of well- understood code transformations (hot direction)

22 Hardware, Architectures Other conventional areas in co-design Other conventional areas in co-design Other EDA topics (like design space exploration) conventionally considered under HW/Arch., … Other EDA topics (like design space exploration) conventionally considered under HW/Arch., … … but can be considered to belong to all the layers of ES design presented in this talk. … but can be considered to belong to all the layers of ES design presented in this talk. Reconfigurable architectures Reconfigurable architectures Reconfigure datapaths, functional units etc. at run- time and/or based on application. Reconfigure datapaths, functional units etc. at run- time and/or based on application. Tech. support – Field Programmable Gate Arrays (FPGA): plug-n-play with processors in a design. Tech. support – Field Programmable Gate Arrays (FPGA): plug-n-play with processors in a design.

23 Control Systems Substantial gamut of ES research does (and should !) involve control systems Substantial gamut of ES research does (and should !) involve control systems Refer DARPA “Software Enabled Control” Program Refer DARPA “Software Enabled Control” Program Related to vehicular control Related to vehicular control Uninhabited vehicles, airplanes Uninhabited 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 laws. Traditional control theory useful for centralized laws.

24 Words of caution The talk reflects ES design methodology when largely left to a CS person. The talk reflects ES design methodology 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 design trends (emerging somewhat from EDA ?) The reading list reflects emerging ES design trends (emerging somewhat from EDA ?) No exact match. No exact match. Applications (not covered in details here) Applications (not covered in details here) Media Applications Media Applications Control systems … Control systems …

25 Administrivia 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 weeks A volunteer needed for subsequent weeks 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 ?


Download ppt "Usage/Applications Emb. Computing Desktop. Research exploitation Emb. Computing Desktop Computing."

Similar presentations


Ads by Google