quo vadis sld reasoning about the trends and challenges
play

QUO VADIS, SLD? REASONING ABOUT THE TRENDS AND CHALLENGES OF SYSTEM - PowerPoint PPT Presentation

1 QUO VADIS, SLD? REASONING ABOUT THE TRENDS AND CHALLENGES OF SYSTEM LEVEL DESIGN Alberto Sangiovanni-Vincentelli Presentation by Michael Zimmer September 21 st , 2010 Current Problems 2 Exponentially rising complexity in circuits and


  1. 1 QUO VADIS, SLD? REASONING ABOUT THE TRENDS AND CHALLENGES OF SYSTEM LEVEL DESIGN Alberto Sangiovanni-Vincentelli Presentation by Michael Zimmer September 21 st , 2010

  2. Current Problems 2  Exponentially rising complexity in circuits and systems  Functionality  Verification  Time-to-market  Productivity  Safety and Reliability  Can traditional design flows (i.e. RTL) continue to meet these demands?  Embedded Systems more intricate

  3. Possible Solutions 3  Raise level of abstraction  For chips, this means going above RTL  60% productivity increase? (International Technology Roadmap for Semiconductors)  New levels of design reuse  Need new “design science” for embedded system design  System Level Design

  4. Challenges 4  Heterogeneity and Complexity of the Hardware Platform  Exponential complexity growth  Transistors on a chip  Expanding use of embedded systems  More networking  Custom hardware implementations costly  Design reuse?  Looks more like a system (integrating predesigned components)

  5. Challenges 5  Embedded Software Complexity  Reconfigurable and programmable hardware platforms increase reliance on software  1+ million lines of code in cell phone  100+ million lines of code in automobiles  Embedded software requirements stricter  Continuously react with environment  Safety and reliability  How to verify?  Tens of lines per day

  6. Challenges 6  Integration Complexity  Top-down approach?  Requires knowledge of entire system for efficient partitioning  Integration of predesigned or independently designing components?  Need some way to standardize integration of components (often from different suppliers)

  7. Challenges 7  Industrial Supply Chain  Health and efficiency essential  System design needs to be supported across entire development  Integration of tools and frameworks from separate domains  Information flow between companies  Can more efficiently meets demands (safety, cost, etc)  Who benefits?

  8. Example: Mobile Communications Design Chain 8  Application Developers  Sell software directly to customer or come bundled with service provider  Service Providers  Access to network infrastructure  Device Makers  Manufacture cell phones with significant software content and hardware integration  IP Providers  Provide components to design chain  Outsourcing Companies  Manufacturing, design, etc

  9. Example: Mobile Communications Design Chain 9  Boundaries under stress  SIM cards  Cell phone locked to service provider, but cell phone can still operate with different providers  Standards  Not locked to one IC provider, IC provider can provide to multiple device makers  Unified methodology and framework favors balance that maximizes welfare of the system

  10. Example: Automotive Design Chain 10  Car Manufactures (OEMs)  GM, Ford, Toyota  Provide final product  Tier 1 Suppliers  Bosch, Contiteves, Siemens  Provide subsystems  Tier 2 Suppliers  Chip manufacturers, IP providers  Manufacturing Suppliers  Not as common for safety and liability reasons

  11. Example: Automotive Design Chain 11  Sharing IP and standards could improve time-to- market, development, and maintenance costs  AUTOSAR, world-wide consortium, has this goal in mind  Hard real time software hard to share  Can’t just add tasks and not affect behavior  New, strong methodology needed that can guarantee functionality and timing  Would cause restructuring of industry  Plug and play environment results in better solutions  Tier 1 suppliers?

  12. Needs of Supply Chain 12  Design chains should connect seamlessly  Boundaries between companies are often not clean  Misinterpretations result in design errors  Optimization hard beyond one boundary

  13. Platform Based Design 13  Current approaches address either software or hardware but not both  Software approaches miss time and concurrency  Hardware approaches too specific for software  Don’t address all challenges

  14. Desired Methodology 14  Hardware and embedded software design as two faces of the same coin  High levels of abstraction for initial design  Effective architectural design exploration  Detailed implementation by synthesis or manual refinement  Platform  Reuse and facilitating adaptation of a common design to various applications

  15. Conventional Use of Platform Concept 15  IC Domain  Flexible IC where customization is achieved by programming components of the chip  FPGA, DSP, MPU, etc  Can’t always fully optimize  Xilinx Virtex II  FPGA with software programming IPs  Converging?  Semiconductor companies adding FPGA-like blocks  FPGA companies adding hard components

  16. Conventional Use of Platform Concept 16  PC Domain  Standard platforms have enabled quick and efficient development  X86 Instruction Set Architecture  Fully specified set of busses (USB, PCI, etc)  Full specification of I/O devices  Allows hardware/software codesign

  17. Conventional Use of Platform Concept 17  Systems Domain  Platform allow quick development of new applications  Sharing subsystems  Common mechanical features on automobiles like engines, chassis, powertrains, etc

  18. Platform-Based Design Methodology 18  Main Principles  Start at highest level of abstraction  Hide unnecessary details of implementation  Summarize important parameters of implementation in abstract model  Limit design space exploration to available components  Carry out design as sequence of refinements from initial specification to final implementation using platforms at various levels of abstraction

  19. Platform-Based Design Methodology 19  Platform  Library of components usable at current level of abstraction  Computational and communication blocks  Characterized by performance and functionality  Can have virtual components  Platform Instance  Set of components selected with set parameters  Mapping functionality to architecture  Important to keep separate

  20. Platform-Based Design Process 20  Meet-in-the-middle process  Top-down: Map functionality into instance of platform and propagate constants  Bottom-up: Build a platform by choosing components of the library  Mapping becomes new functionality

  21. Fractal Nature of Design 21

  22. Platform-Based Design 22  Partitioning of software and hardware is the consequence of decisions at higher levels of abstraction  Platforms should restrict design space  Establishing number, location, and components of intermediate platforms is the essence of PBD  Precisely defined layers  Better reuse

  23. Example Application of PBD: Wireless Sensor Network Design 23

  24. Model-Driven (Software) Development 24  Closely resembles Platform-Based Design  Model-Driven Architecture  Platform-Independent Model  Platform-Specific Models  Interface definitions  Separation of function and platform

  25. Domain-Specific Languages 25  Vanderbilt University group evolved MDD for embedded software design  Because a single modeling language not suitable for all domains  But how to define and integrate various models?  Interaction must be mathematically well characterized  This allows model transformations

  26. Remarks on Platform-Based Design 26  Is being adopted  Well-defined layers of abstraction help supply chain where performance and cost are the contract between companies  Designers do need to be trained in PBD and have supporting tools

  27. Overview 27

  28. Representing Functionality 28  Need to capture at high level of abstraction without assumptions about implementation  Languages for Hardware Design  Attempts to raise abstraction levels  SystemC  C lacks concurrency and notion of time  Capture particular aspects of hardware  Used for simulation (not directly synthesizable or verifiable)  SystemVerilog  Extend Verilog (RTL) to higher abstraction level

  29. Representing Functionality 29  Languages for Embedded System Design  Want higher productivity and correctness guarantees  Synchronous Languages  Strong formal semantics to make verification and code generation possible  Esterel, Lustre, Signal  Safety-critical domain

  30. Representing Functionality 30  Models of Computation  In traditional approaches, assumptions about architecture embedded in formulation  Want maximum flexibility while capturing design  Mathematically sound representations  Discrete Time  Flexible model  Finite State Machines  Less flexible, but easier to analyze and synthesize

  31. Representing Functionality 31  Heterogeneous Models of Computation  Mixing models is not trivial  Numerous approaches  LSV Model, Interface Automata  Environments for capturing designs  Ptolemy II  ForSyDe and SML-Sys  Behavior-Interaction Priority Framework  Signal Processing Worksystem  Simulink  LabVIEW

  32. Representing Architecture 32  Needs to be represented to enable mapping of functionality  Netlist that establishes how a set of components is connected  Capabilities should be included  “Cost” needs to be computed  Time, Power, etc.

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