1 / 24

Introduction to HW/SW Codesign

Introduction to HW/SW Codesign. Part of HW/SW Codesign of Embedded Systems Course (CE 40-226). Today programme. Introduction to HW/SW Codesign Distinguishing features of electronic systems System-level codesign issues. Reference:

tommy
Download Presentation

Introduction to HW/SW Codesign

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to HW/SW Codesign Part of HW/SW Codesign of Embedded Systems Course (CE 40-226) Codesign of Embedded Systems

  2. Today programme • Introduction to HW/SW Codesign • Distinguishing features of electronic systems • System-level codesign issues Reference: G. De Micheli, M. Sami, “Hardware/Software Co-design”, NATO ASI Series, Kluwer Academic Publishers, 1996. Codesign of Embedded Systems

  3. Introduction to HW/SW Codesign Distinguishing features of electronic systems Codesign of Embedded Systems

  4. Hardware Technology Degree of Programmability Level of Integration Distinguishing features of electronic systems Application Domain Codesign of Embedded Systems

  5. Application domains • General-purpose computing systems • Dedicated computing and control systems • Emulation and prototyping systems Codesign of Embedded Systems

  6. Application domains (cont’d) • GP computing systems • Traditional computers • End-user can program them • Support applications of different kinds • Dedicated computing and/or control systems • Specific target applications • Limited programming access for the user • Dedicated software programs • Known as Embedded Systems • “Control functions” or “Data comm. and processing” or both Codesign of Embedded Systems

  7. Application domains (cont’d) • Emulation and prototyping systems • Programmable HW technology • Hardware configuration by HW compilers (synthesis systems) • Specialized users program them • Intermediate points of the design and manufacturing of a product Codesign of Embedded Systems

  8. Degree of programmability • Programmability at the • Application level • Instruction level • Hardware level Codesign of Embedded Systems

  9. Degree of programmability (cont’d) • Application level • Most restricted level • User have to use specialized language • VCR - Automated navigation systems • Instruction level • Personal computer users • Writing, compiling and executing programs • Processor architecture defines degree of programmability Codesign of Embedded Systems

  10. Degree of programmability (cont’d) • Hardware level • Configuring HW after manufacturing • Micro-programming: emulation of other ISAs • Common for DSPs, not for ISPs (esp. RISC) • FPGAs Codesign of Embedded Systems

  11. Degree of programmability (cont’d) • Programmability • Increases applicability, but not performance • Top performance in • GP computing: super-scalar RISC architectures • Dedicated applications: ASICs • Some app. domains (ex. Comm.) • ASIPs: specialized instruction-level programmable processors • Midway between ASIC and ISP: Performance, Power, Production volume Codesign of Embedded Systems

  12. Technology • Digital-system components have • Different scale of integration • Discrete and integrated components • Different fabrication technology • Bipolar, CMOS • To us, technology affects field-programmability • Storing programs in memory • Configurable HW • One-time configurable • Re-configurable Codesign of Embedded Systems

  13. Level of Integration • Digital systems are • Lumped => System-on-Chip • Distributed • Advantages of higher integration • Higher reliability • Lower power budget • Increased performance • Disadvantages • Larger chip sizes. More complex debugging Codesign of Embedded Systems

  14. Introduction to HW/SW Codesign System-level Co-Design Issues Codesign of Embedded Systems

  15. General-purposecomputing systems • ISP: Primarily in general-purpose computing • Codesign of ISP is strange • Architectural support for OS • Compiler development: Retargetable, Optimizing • Codesign areas: • organizational choices: pipelines, concurrency, memory hierarchy • Instruction-set selection • Performance • Compatibility Codesign of Embedded Systems

  16. Dedicated computing and control systems • Data-processing systems • GP DSP / ASIP • ASIP • Less compatibility, more performance • Need for application-specific compilers • Retargetable compilers • Computer-Aided compiler generation • fixed-point arithmetic operations • Hence, use assembly • Today design time: SW > HW Codesign of Embedded Systems

  17. Memory CPU Sensors Actuators Hardwired Unit Random Logic Timers A/D D/A Dedicated computing … (cont’d) • Embedded control systems Embedded System Codesign of Embedded Systems

  18. Dedicated computing … (cont’d) • Control systems • Often have a data-processing component • Reactive systems • RT: hard/soft • Timers • Safety and reliability more important than performance • Safety: Formal verification+ System-level testing • Reliability: Redundancy Codesign of Embedded Systems

  19. Emulation and prototyping systems • Codesign application 1: • SW accelerators/coprocessors • Specific operations: floating-point ops. • Critical loops: exploiting local parallelism • for(j=0; j<N; j++) a[j] = a[j] + b[j]; • for(j=1; j<N; j++) a[j] = a[j] + a[j-1]; • Coprocessors based on programmable HW • Example: PAM (PeRLe-0, PeRLe-1) Codesign of Embedded Systems

  20. Emulation and prototyping systems (cont’d) • Major codesign problems: • Identifying critical parts of SW • Compile critical SW parts for HW emulation • Codesign application 2: • Acceleration of system-level simulation by HW emulation Codesign of Embedded Systems

  21. Emulation and prototyping systems (cont’d) • Codesign application 3: • Computer-aided prototyping • Validate HW before manufacturing to avoid expensive redesign • Prototyping of complex digital systems (HW + SW) Codesign of Embedded Systems

  22. What we learned today • Categorized digital systems • This helps in decision-makings in codesign strategies and algorithms • Reviewed problem areas within each application domain Codesign of Embedded Systems

  23. Complementary notes • Verilog Short Course • Instructor: • Farshid Soheili, Emad Semicon. Co. • First session • Saturday: Esfand 6th • “Avecina-16” room • VHDL short course will also be held soon Codesign of Embedded Systems

  24. Complementary notes (cont’d) • Optional paper presentation • Any subtopic from second topic of today programme: • System-Level Co-Design Issues Codesign of Embedded Systems

More Related