design and architectures for embedded systems esii
play

Design and Architectures for Embedded Systems (ESII) Prof. Dr. J. - PowerPoint PPT Presentation

1 ESII: Specification & Modeling Design and Architectures for Embedded Systems (ESII) Prof. Dr. J. Henkel, M. Shafique Prof. Dr. J. Henkel, M. Shafique CES CES - Chair for Embedded Systems Chair for Embedded Systems Karlsruhe Institute


  1. 1 ESII: Specification & Modeling Design and Architectures for Embedded Systems (ESII) Prof. Dr. J. Henkel, M. Shafique Prof. Dr. J. Henkel, M. Shafique CES CES - Chair for Embedded Systems Chair for Embedded Systems Karlsruhe Institute of Technology, Germany Karlsruhe Institute of Technology, Germany Today: Specification and Modeling I Today: Specification and Modeling I http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  2. 2 ESII: Specification & Modeling Where are we? - models of computation 2, 3, 4, 5 SYSTEM SPECIFICATION 2, 3, 4, 5 SYSTEM SPECIFICATION -Spec languages Optimization Design Space Exploration Design Space Exploration refine -low power, performance, area, reliability ,… -low power, performance, area, reliability, peak temp. … Estimation&Simulation SYSTEM PARTITIONING SYSTEM PARTITIONING -low power, performance, area, reliability, peak temp. … Hardware Hardware Embedded Embedded Middleware, Middleware, Embedded Processor RTOS Design Software Design & Architectures -Synthesis 13 & 14. 13 & 14. 6. Code 6. Code 7. ISA extensions  7. ISA extensions  Scheduling Generation for Special Instructions Embedded embedded IP: Systems 8. ASIPs, Extensible 8. ASIPs, Extensible -PEs Processors -Memories Optimize for Optimize for -Communication 9. DSPs, VLIW 9. DSPs, VLIW -Peripherals -Low Power -Integration -Integration - … - Performance -Prototyping 10 & 11. Reconfigurable 10 & 11. Reconfigurable IC technology -Area - Tape out Processors -Reliability - 12. Multi-Core  future 12. Multi-Core  future http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  3. 3 ESII: Specification & Modeling Outline  Categorization of systems Categorization of systems  Models vs. Languages Models vs. Languages  State Machine Model State Machine Model  FSM/FSMD FSM/FSMD  HCFSM and HCFSM and Statecharts Statecharts Language Language  Program Program-State Machine (PSM) Model State Machine (PSM) Model  Concurrent Process Model Concurrent Process Model  Dataflow Model Dataflow Model  Concurrent Processes Concurrent Processes  System and Model Properties System and Model Properties http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  4. 4 ESII: Specification & Modeling Categorization of Systems  Transformational Transformational  Operate on inputs; produce outputs and stop Operate on inputs; produce outputs and stop  Interactive Interactive  Do not typically terminate Do not typically terminate  Continuous interaction with environment Continuous interaction with environment  Interactive system act at their own speed Interactive system act at their own speed  Example: OS Example: OS  Reactive Reactive  Like interactive systems Like interactive systems  But: the pace is imposed by the environment But: the pace is imposed by the environment Embedded Systems belong to this group Embedded Systems belong to this group http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  5. 5 ESII: Specification & Modeling What are models for?  => => perform various tasks of a design process: perform various tasks of a design process:  Performance modeling  Functional modeling and specification  Design and synthesis  Validation and verification  Test vector generation  Test coverage analysis  Architecture evaluation and mapping  Technology mapping  Placement and routing (src: A. Jantsch) http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  6. 6 ESII: Specification & Modeling Why Models?  Describing embedded system’s processing behavior Describing embedded system’s processing behavior  Difficulty Difficulty  Due to High Due to High Complexity Complexity  radically growing radically growing  Complexity of Current/Next Complexity of Current/Next-Generation Embedded Systems Generation Embedded Systems  Software complexity ~ Increasing IC Software complexity ~ Increasing IC capactiy capactiy >10 9 LOC  Software Complexity Software Complexity  thousands to millions of LOC thousands to millions of LOC  >10 LOC  Think about Digital Washing Machines or Ovens Think about Digital Washing Machines or Ovens  Now think Now think  Digital Camera Digital Camera  Multimedia TV, Multimedia TV,  Mobile Phones (Video Coding, Audio Coding, GPS, 4G Mobile Phones (Video Coding, Audio Coding, GPS, 4G communication, …) communication, …)  Desired behavior often not fully understood in beginning Desired behavior often not fully understood in beginning  Many implementation bugs due to description mistakes/omissions Many implementation bugs due to description mistakes/omissions  English (or other natural language) common starting point English (or other natural language) common starting point  Precision Precision  hard to describe clearly hard to describe clearly  difficult to impossible difficult to impossible  Level of Ambiguity Level of Ambiguity (src: Vahid02) http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  7. 7 ESII: Specification & Modeling ESII: Spec & Modeling Models and languages • How can we (precisely) capture behavior? – We may think of languages (C, C++), but computation model is the key • Common computation models: – Sequential program model • Statements, rules for composing statements, semantics for executing them – Communicating process model • Multiple sequential programs running concurrently – State machine model • For control dominated systems, monitors control inputs, sets control outputs – Dataflow model • For data dominated systems, transforms input data streams into output streams – Object-oriented model • For breaking complex software into simpler, well-defined pieces Embedded Systems Design: A Unified 5 Hardware/Software Introduction, (c) 2000 Vahid/Givargis http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  8. 8 ESII: Specification & Modeling ESII: Spec & Modeling Models vs. languages Poetry Recipe Story State Sequent. Data- Models machine program flow Languages English Spanish Japanese C C++ Java Recipes vs. English Sequential programs vs. C • Computation models describe system behavior – Conceptual notion, e.g., recipe, sequential program • Languages capture models – Concrete form, e.g., English, C • Variety of languages can capture one model – E.g., sequential program model  C,C++, Java • One language can capture variety of models – E.g., C++ ? sequential program model, object-oriented model, state machine model • Certain languages better at capturing certain computation models Embedded Systems Design: A Unified 6 Hardware/Software Introduction, (c) 2000 Vahid/Givargis http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  9. 9 ESII: Specification & Modeling ESII: Spec & Modeling Finite State Machine (FSM) Model • An FSM is a 6-tuple F < S , I , O , F , H , s 0 > – S is a set of all states { s 0 , s 1 , …, s l } – I is a set of inputs { i 0 , i 1 , …, i m } – O is a set of outputs { o 0 , o 1 , …, o n } → – F is a next-state function ( S x I → S ) → – H is an output function ( S → O ) – s 0 is an initial state • Moore-type → – Associates outputs with states (as given above, H maps S → O ) • Mealy-type → – Associates outputs with transitions ( H maps S x I → O ) • Shorthand notations to simplify descriptions – Implicitly assign 0 to all unassigned outputs in a state – Implicitly AND every transition condition with clock edge (FSM is synchronous) Embedded Systems Design: A Unified 12 Hardware/Software Introduction, (c) 2000 Vahid/Givargis http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

  10. 10 ESII: Specification & Modeling ESII: Spec & Modeling State machine vs. sequential program model • Different thought process used with each model • State machine: – Encourages designer to think of all possible states and transitions among states based on all possible input conditions • Sequential program model: – Designed to transform data through series of instructions that may be iterated and conditionally executed • State machine description excels in many cases – More natural means of computing in those cases – Not due to graphical representation (state diagram) • Would still have same benefits if textual language used (i.e., state table) • Besides, sequential program model could use graphical representation (i.e., flowchart) Embedded Systems Design: A Unified 15 Hardware/Software Introduction, (c) 2000 Vahid/Givargis http://ces.itec.kit.edu J. Henkel, M. Shafique, KIT, WS1011

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend