SlideShare a Scribd company logo
Hardware/Software Co-Design  T S PRADEEPKUMAR SCS, VIT
Outline Embedded Hardware  Embedded Software Issues in Embedded System Design Hardware/ Software Partioning Designing Embedded Systems Co-Design
Embedded Systems An embedded system  uses a computer to perform some function, but is not used (nor perceived) as a computer Software is used for features and flexibility Hardware is used for performance Typical characteristics: it performs a single function it is part of a larger (controlled) system cost and reliability are often the most significant aspects
Embedded Systems SOC IP Based Design System Environment PCB  Design Satellite Macro-Cell Micro-Cell Zone 2: Urban Zone 1: In-Building Pico-Cell Zone 4: Global Zone 3: Suburban Firmware CORE Software SOC   µ P/C Analog Embedded Software Memory Embedded  System Design
Embedded Hardware Input Sensors Sample and Hold Circuit A/D Converters Communication UART Processing Units ASIC Processors Reconfigurable processors
Embedded Hardware Memories RAM, ROM, Flash, Cache Output D/A Converters, Actuators
Embedded Software Real Time Operating Systems General Requirements Scheduling in RTOS Aperiodic Periodic Real Time Databases Other Software Architectures Function Queue Scheduling Round Robin (with Interrupts)
Issues while Designing ES Choosing Right platform Memory and I/O Requirements WDT, Cache, Flash memory, etc Processors Choice PLC Micro Controller or DSP ASIC or FPGA
Issues… Hardware Software Tradeoff Porting Issues of OS in the Target Board
Hardware /Software Partitioning Definition A HW/SW partitioning algorithm implements a  specification  on some sort of  multiprocessor architecture Usually Multiprocessor architecture = one CPU + some ASICs on CPU bus
Hardware /Software Partitioning Terminology Allocation Synthesis methods which design the multiprocessor topology along with the Process Elements and SW architecture Scheduling The process of assigning Process Element (CPU and/or ASICs) time to processes to get executed
Hardware /Software Partitioning Hw/Sw partitioning can speedup software Can reduce energy too In most partitioning algorithms Type of CPU is fixed and given ASICs must be synthesized
Designing of Embedded Systems There are five stages of development of Embedded Systems Requirement Analysis Design Data Structures, Software Architecture, Interfaces and algorithms Coding Testing Maintenance
Designing of Embedded Systems There are three Design Flows Waterfall Model Spiral Model Successive refinement For Designing, Unified Modeling Language (UML) is used
Embedded System Design Traditional Methodology HW Design & Build Hardware/Software Partitioning and Allocation SW Design & Code Interface Design HW/SW Integration
Problems with Past Design Method Lack of unified system-level representation Can't verify the entire HW-SW system Hard to find incompatibilities across HW-SW boundary (often found only when prototype is built)  Architecture is defined  a priori , based on expert evaluation of the functionality and constraints Lack of well-defined design flow Time-to-market problems Specification revision becomes difficult
Embedded System Design HW/SW Co-Design Methodology HW Design & Build Hardware/Software Partitioning and Allocation SW Design & Code Interface Design HW/SW Integration
Co-Design Framework
Co-Design The software functionality should be partitioned in such a fashion that processors in the system do not get overloaded when the system is operating at peak capacity.  This involves simulating the system with the proposed software and hardware architecture.
Co-Design The system should be designed for future growth by considering a scalable architecture, i.e. system capacity can be increased by adding new hardware modules. The system will not scale very well if some hardware or software module becomes a bottleneck in increasing system capacity.
Co-Design Software modules that interact very closely with each other should be placed on the same processor, this will reduce delays in the system. Higher system performance can be achieved by this approach by inter-processor message communication.
Embedded Controller Example: Engine Control Unit (ECU) Task: control the torque produced by the engine by timing fuel injection and spark Major constraints: Low fuel consumption Low exhaust emission
ECU  Task: control injection time (3 sub-tasks) compute air flow compute injection time drive actuators air flow injection time air temperature engine temperature engine speed throttle position look-up table PWM signals air pressure
ECU- Option 1 32 bit CPU A/D Actuations (PWM) Analog inputs Digital inputs compute air flow compute injection time drive actuators air flow injection time air temperature engine temperature engine speed throttle position look-up table PWM signals air pressure
ECU- Option 2 16 bit CPU A/D Actuations (PWM) Analog inputs Digital inputs FPGA compute air flow compute injection time drive actuators air flow injection time air temperature engine temperature engine speed throttle position look-up table PWM signals air pressure
ECU- Option 3 8 bit CPU DSP Actuations (PWM) Analog  inputs Digital inputs FPGA A/D compute air flow compute injection time drive actuators air flow injection time air temperature engine temperature engine speed throttle position look-up table PWM signals air pressure
Thank You

More Related Content

PPTX
Hardware Software Codesign
DOCX
Embedded system notes
DOCX
Hardware-Software Codesign
PPTX
Introduction to Embedded Systems
PPTX
Embedded System
PPT
Embedded system
PDF
Introduction to Embedded Architecture
PDF
Unit 1 Introduction to Embedded computing and ARM processor
Hardware Software Codesign
Embedded system notes
Hardware-Software Codesign
Introduction to Embedded Systems
Embedded System
Embedded system
Introduction to Embedded Architecture
Unit 1 Introduction to Embedded computing and ARM processor

What's hot (20)

PPTX
Introduction to Embedded Systems I : Chapter 1
PPTX
Embedded system
PPTX
Design challenges in embedded systems
PPTX
ARM Processors
PPT
Raspberry pi
PPTX
Embedded system
PDF
Introduction to embedded system design
PPTX
Ppt on embedded systems
PPTX
Trends in Embedded system Design
PPTX
Embedded system introduction
PPT
PDF
ARM CORTEX M3 PPT
PPTX
Introduction to Embedded System I: Chapter 2 (5th portion)
DOCX
ARM7-ARCHITECTURE
PPTX
Introduction to embedded systems
PDF
System On Chip
PDF
SOC System Design Approach
PPTX
Ch 1 introduction to Embedded Systems (AY:2018-2019--> First Semester)
PDF
Introduction to Embedded System
PPTX
PIC Microcontrollers
Introduction to Embedded Systems I : Chapter 1
Embedded system
Design challenges in embedded systems
ARM Processors
Raspberry pi
Embedded system
Introduction to embedded system design
Ppt on embedded systems
Trends in Embedded system Design
Embedded system introduction
ARM CORTEX M3 PPT
Introduction to Embedded System I: Chapter 2 (5th portion)
ARM7-ARCHITECTURE
Introduction to embedded systems
System On Chip
SOC System Design Approach
Ch 1 introduction to Embedded Systems (AY:2018-2019--> First Semester)
Introduction to Embedded System
PIC Microcontrollers
Ad

Similar to Design of embedded systems (20)

PPT
PPT
Embedded 120206023739-phpapp02
PPTX
Embedded Systems Overview
PDF
Module-1 Embedded computing.pdf
PPTX
The Comprehensive Guide to Embedded Systems Architecture: Building Blocks, De...
PPT
Introduction to Embedded system
PPT
Embeddedsystem basic for Engineering Students
PPT
B tech Projects,Final Year Projects,Engineering Projects
PPT
Embedded systems in brief
PPTX
3.9-Software.pptx
PDF
Introduction to Embedded System Architecture and Design.docx.pdf
PPT
39245175 intro-es-ii
PPT
Architecture offffffffffffff ESD-ppt.ppt
PDF
ERTS_Unit 1_PPT.pdf
PDF
Embedded Systems - A Brief Introduction
PPT
UNIT-III ES.ppt
PPT
Embedded system
PPT
Embedded 100912065920-phpapp02
PPTX
Embedded Systems
PPTX
Embedded Systems
Embedded 120206023739-phpapp02
Embedded Systems Overview
Module-1 Embedded computing.pdf
The Comprehensive Guide to Embedded Systems Architecture: Building Blocks, De...
Introduction to Embedded system
Embeddedsystem basic for Engineering Students
B tech Projects,Final Year Projects,Engineering Projects
Embedded systems in brief
3.9-Software.pptx
Introduction to Embedded System Architecture and Design.docx.pdf
39245175 intro-es-ii
Architecture offffffffffffff ESD-ppt.ppt
ERTS_Unit 1_PPT.pdf
Embedded Systems - A Brief Introduction
UNIT-III ES.ppt
Embedded system
Embedded 100912065920-phpapp02
Embedded Systems
Embedded Systems
Ad

More from Pradeep Kumar TS (20)

PDF
Digital Portfolio and Footprint
PDF
Open book Examination
PDF
Software Define Networking (SDN)
PDF
What next - Career Enhancement of Graduates
PDF
Protothreads
PDF
PDF
Software Defined Networks
PDF
Higher Order Thinking - Question paper setting
PDF
IoT Communication Protocols
PDF
IoT Applications
PDF
RPL - Routing Protocol for Low Power and Lossy Networks
PDF
Mannasim for NS2
PDF
Recompiling network simulator 2
PDF
OTcl and C++ linkages in NS2
PDF
Wired and Wireless Examples in ns2
PDF
Installation of ns2
PDF
Introduction to ns2
PDF
Software Defined Networking - 1
PDF
Software Defined Networking - 2
PDF
Software Defined Networking - 3
Digital Portfolio and Footprint
Open book Examination
Software Define Networking (SDN)
What next - Career Enhancement of Graduates
Protothreads
Software Defined Networks
Higher Order Thinking - Question paper setting
IoT Communication Protocols
IoT Applications
RPL - Routing Protocol for Low Power and Lossy Networks
Mannasim for NS2
Recompiling network simulator 2
OTcl and C++ linkages in NS2
Wired and Wireless Examples in ns2
Installation of ns2
Introduction to ns2
Software Defined Networking - 1
Software Defined Networking - 2
Software Defined Networking - 3

Recently uploaded (20)

PDF
Anesthesia in Laparoscopic Surgery in India
PDF
Introduction-to-Social-Work-by-Leonora-Serafeca-De-Guzman-Group-2.pdf
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PDF
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
01-Introduction-to-Information-Management.pdf
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
Pre independence Education in Inndia.pdf
PDF
TR - Agricultural Crops Production NC III.pdf
PDF
Insiders guide to clinical Medicine.pdf
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PPTX
master seminar digital applications in india
PPTX
PPH.pptx obstetrics and gynecology in nursing
PPTX
Pharma ospi slides which help in ospi learning
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PPTX
COMPUTERS AS DATA ANALYSIS IN PRECLINICAL DEVELOPMENT.pptx
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
Anesthesia in Laparoscopic Surgery in India
Introduction-to-Social-Work-by-Leonora-Serafeca-De-Guzman-Group-2.pdf
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
Origin of periodic table-Mendeleev’s Periodic-Modern Periodic table
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
01-Introduction-to-Information-Management.pdf
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
STATICS OF THE RIGID BODIES Hibbelers.pdf
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
O7-L3 Supply Chain Operations - ICLT Program
Pre independence Education in Inndia.pdf
TR - Agricultural Crops Production NC III.pdf
Insiders guide to clinical Medicine.pdf
2.FourierTransform-ShortQuestionswithAnswers.pdf
master seminar digital applications in india
PPH.pptx obstetrics and gynecology in nursing
Pharma ospi slides which help in ospi learning
FourierSeries-QuestionsWithAnswers(Part-A).pdf
COMPUTERS AS DATA ANALYSIS IN PRECLINICAL DEVELOPMENT.pptx
human mycosis Human fungal infections are called human mycosis..pptx

Design of embedded systems

  • 1. Hardware/Software Co-Design T S PRADEEPKUMAR SCS, VIT
  • 2. Outline Embedded Hardware Embedded Software Issues in Embedded System Design Hardware/ Software Partioning Designing Embedded Systems Co-Design
  • 3. Embedded Systems An embedded system uses a computer to perform some function, but is not used (nor perceived) as a computer Software is used for features and flexibility Hardware is used for performance Typical characteristics: it performs a single function it is part of a larger (controlled) system cost and reliability are often the most significant aspects
  • 4. Embedded Systems SOC IP Based Design System Environment PCB Design Satellite Macro-Cell Micro-Cell Zone 2: Urban Zone 1: In-Building Pico-Cell Zone 4: Global Zone 3: Suburban Firmware CORE Software SOC µ P/C Analog Embedded Software Memory Embedded System Design
  • 5. Embedded Hardware Input Sensors Sample and Hold Circuit A/D Converters Communication UART Processing Units ASIC Processors Reconfigurable processors
  • 6. Embedded Hardware Memories RAM, ROM, Flash, Cache Output D/A Converters, Actuators
  • 7. Embedded Software Real Time Operating Systems General Requirements Scheduling in RTOS Aperiodic Periodic Real Time Databases Other Software Architectures Function Queue Scheduling Round Robin (with Interrupts)
  • 8. Issues while Designing ES Choosing Right platform Memory and I/O Requirements WDT, Cache, Flash memory, etc Processors Choice PLC Micro Controller or DSP ASIC or FPGA
  • 9. Issues… Hardware Software Tradeoff Porting Issues of OS in the Target Board
  • 10. Hardware /Software Partitioning Definition A HW/SW partitioning algorithm implements a specification on some sort of multiprocessor architecture Usually Multiprocessor architecture = one CPU + some ASICs on CPU bus
  • 11. Hardware /Software Partitioning Terminology Allocation Synthesis methods which design the multiprocessor topology along with the Process Elements and SW architecture Scheduling The process of assigning Process Element (CPU and/or ASICs) time to processes to get executed
  • 12. Hardware /Software Partitioning Hw/Sw partitioning can speedup software Can reduce energy too In most partitioning algorithms Type of CPU is fixed and given ASICs must be synthesized
  • 13. Designing of Embedded Systems There are five stages of development of Embedded Systems Requirement Analysis Design Data Structures, Software Architecture, Interfaces and algorithms Coding Testing Maintenance
  • 14. Designing of Embedded Systems There are three Design Flows Waterfall Model Spiral Model Successive refinement For Designing, Unified Modeling Language (UML) is used
  • 15. Embedded System Design Traditional Methodology HW Design & Build Hardware/Software Partitioning and Allocation SW Design & Code Interface Design HW/SW Integration
  • 16. Problems with Past Design Method Lack of unified system-level representation Can't verify the entire HW-SW system Hard to find incompatibilities across HW-SW boundary (often found only when prototype is built) Architecture is defined a priori , based on expert evaluation of the functionality and constraints Lack of well-defined design flow Time-to-market problems Specification revision becomes difficult
  • 17. Embedded System Design HW/SW Co-Design Methodology HW Design & Build Hardware/Software Partitioning and Allocation SW Design & Code Interface Design HW/SW Integration
  • 19. Co-Design The software functionality should be partitioned in such a fashion that processors in the system do not get overloaded when the system is operating at peak capacity. This involves simulating the system with the proposed software and hardware architecture.
  • 20. Co-Design The system should be designed for future growth by considering a scalable architecture, i.e. system capacity can be increased by adding new hardware modules. The system will not scale very well if some hardware or software module becomes a bottleneck in increasing system capacity.
  • 21. Co-Design Software modules that interact very closely with each other should be placed on the same processor, this will reduce delays in the system. Higher system performance can be achieved by this approach by inter-processor message communication.
  • 22. Embedded Controller Example: Engine Control Unit (ECU) Task: control the torque produced by the engine by timing fuel injection and spark Major constraints: Low fuel consumption Low exhaust emission
  • 23. ECU Task: control injection time (3 sub-tasks) compute air flow compute injection time drive actuators air flow injection time air temperature engine temperature engine speed throttle position look-up table PWM signals air pressure
  • 24. ECU- Option 1 32 bit CPU A/D Actuations (PWM) Analog inputs Digital inputs compute air flow compute injection time drive actuators air flow injection time air temperature engine temperature engine speed throttle position look-up table PWM signals air pressure
  • 25. ECU- Option 2 16 bit CPU A/D Actuations (PWM) Analog inputs Digital inputs FPGA compute air flow compute injection time drive actuators air flow injection time air temperature engine temperature engine speed throttle position look-up table PWM signals air pressure
  • 26. ECU- Option 3 8 bit CPU DSP Actuations (PWM) Analog inputs Digital inputs FPGA A/D compute air flow compute injection time drive actuators air flow injection time air temperature engine temperature engine speed throttle position look-up table PWM signals air pressure