SlideShare a Scribd company logo
1 of 27
SRI KRISHNA COLLEGE OF ENGINEERING AND TECHNOLOGY
Kuniamuthur, Coimbatore, Tamilnadu, India
An Autonomous Institution, Affiliated to Anna University,
Accredited by NAAC with “A” Grade & Accredited by NBA (CSE, ECE, IT, MECH ,EEE, CIVIL& MCT)
18EC943- Embedded System Design
by
Dr. K.Muthukumar
Associate Professor
Department of Electrical and Electronics
Engineering
EMBEDDED SOFTWARE
Animation
Lecture
Objectives
• Embedded system components
• Software
• Embedded system programming
• Hardware Description Language (HDL)
Contents
• Lab: Software programming tools
• Introduction to hardware systhesis
• Lab: External interface
Real-Time Consideration
 Correct operation of real-time systems
means:
– Working correctly (functionally correct)
– Producing outputs in time!
 i.e. correct result at the right time
Hard Real-time
 System designed to meet all deadlines
 A missed deadline is a design flaw
 For examples: ABS brake, nuclear
reactor monitoring system
 System hardware (over) designed for
worst-case performance
 System software rigorously tested
 Formal proofs used to guarantee timing
correctness
Slide credit – T Givargis
Firm Real-time
 System designed to meet all deadlines, but
occasional missed deadline is allowed
– Sometimes statistically quantified (e.g. 5%
misses)
 For examples: multimedia systems
 System hardware designed for average case
performance
 System software tested under average
(ideal) conditions
Slide credit – T Givargis
Soft Real-time
 System designed to meet as many
deadlines as possible
– Best effort to complete within specified
time, but may be late
 For examples: network switch or router
 System hardware designed for average
case performance
 System software tested under averaged
(ideal) conditions
Hardware vs Software
 Many functions can be done by
software on a general purpose
microprocessor OR by hardware on an
application specific ICs (ASICs)
 For examples: game console graphic,
PWM, PID control
 Leads to Hardware/Software Co-design
concept
Hardware or Software?
 Where to place functionality?
– ex: A Sort algorithm
» Faster in hardware, but more expensive.
» More flexible in software but slower.
» Other examples?
 Must be able to explore these various trade-
offs:
– Cost.
– Speed.
– Reliability.
– Form (size, weight, and power constraints.)
Hardware vs Software
Embedded
Application-Specific
Processors
Embedded
Domain-Specific
Processors
General-Purpose
Processors
FFT Processors
MPEG Processors
FIR Processors
Graphics Processors
DSP Processors
Network Processors
Workstations
Personal Computers
Power/Performance
Programmability and Flexibility
Hardware vs Software
Slide credit – Ingo Sander
Microcessor technology
 Processors vary in their customization for the problem at hand
total = 0
for i = 1 to N loop
total += M[i]
end loop
General-purpose
processor
Single-purpose
processor
Application-specific
processor
Desired
functionality
General-purpose processors
 Programmable device used in a
variety of applications
– Also known as “microprocessor”
 Features
– Program memory
– General datapath with large register file
and general ALU
 User benefits
– Low time-to-market and NRE costs
– High flexibility
 “Pentium” the most well-known, but
there are hundreds of others
IR PC
Register
file
General
ALU
Datapath
Controller
Program
memory
Assembly
code for:
total = 0
for i =1 to …
Control
logic and
State
register
Data
memory
Single-purpose processors
 Digital circuit designed to execute exactly
one program
– a.k.a. coprocessor, accelerator or peripheral
 Features
– Contains only the components needed to
execute a single program
– No program memory
 Benefits
– Fast
– Low power
– Small size
Datapath
Controller
Control
logic
State
register
Data
memory
index
total
+
Application-specific processors
 Programmable processor optimized for a
particular class of applications having
common characteristics
– Compromise between general-purpose and
single-purpose processors
 Features
– Program memory
– Optimized datapath
– Special functional units
 Benefits
– Some flexibility, good performance, size and
power
 DSP จัดอยู่ในประเภทนี้ด ้วย
IR PC
Registers
Custom
ALU
Datapath
Controller
Program
memory
Assembly code
for:
total = 0
for i =1 to …
Control
logic and
State register
Data
memory
FPGA Architecture
FPGA layout with Configurable Logic Blocks (CLB) and I/O Blocks (IOB) (credit: Katz’s Contemporary Logic Design)
IOB IOB IOB IOB
CLB CLB
CLB CLB
IOB
IOB
IOB
IOB
WiringChannels
Typical CLB (credit: www.wikipedia.com)
Programmable switch at wiring intersection
(credit: www.wikipedia.com)
 Highly constrained products tend to use
application specific processors
– Many mobile phones (power&size constrained)
contain ARM chips
– Hi-Fi (high performance&time constrained)
contain DSP chips
Software Costs
Disciplines Used in Embedded System
Design
Trends in Embedded Systems
Future Embedded Systems
Future Embedded Systems
Future Embedded Systems
Observations on Future Embedded
Systems
 More complexity (people expect more
functions and higher performance from
their electronic products)
 This leads to more complex software
 Which requires better design process
 More importantly, thorough testing for
safety critical systems (diagnostics
codes of engine ECUs is half of its total
software codes)
Research in Embedded
Systems
• Hardware – to improve performance (sensors
and actuators), verification, etc.
• Software – reusability, testing, verification,
OS, etc.
• Network – higher connectivity between
systems (e.g. smart homes link many
systems together, standardised protocols,
etc.
• Security – protection against attacks
• Design – improved methodology, more
automation, formal verification

More Related Content

Similar to 3.9-Software.pptx

Introduction to embedded System.pptx
Introduction to embedded System.pptxIntroduction to embedded System.pptx
Introduction to embedded System.pptxPratik Gohel
 
How to create innovative architecture using VisualSim?
How to create innovative architecture using VisualSim?How to create innovative architecture using VisualSim?
How to create innovative architecture using VisualSim?Deepak Shankar
 
How to create innovative architecture using VisualSim?
How to create innovative architecture using VisualSim?How to create innovative architecture using VisualSim?
How to create innovative architecture using VisualSim?Deepak Shankar
 
How to create innovative architecture using ViualSim?
How to create innovative architecture using ViualSim?How to create innovative architecture using ViualSim?
How to create innovative architecture using ViualSim?Deepak Shankar
 
Basic VLSI.ppt
Basic VLSI.pptBasic VLSI.ppt
Basic VLSI.ppt8885684828
 
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).pptsudharani850994
 
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).pptsudharani850994
 
UNIT I_Introduction.pptx
UNIT I_Introduction.pptxUNIT I_Introduction.pptx
UNIT I_Introduction.pptxssuser4ca1eb
 
Hardware Software Codesign
Hardware Software CodesignHardware Software Codesign
Hardware Software Codesigndestruck
 
Design of Software for Embedded Systems
Design of Software for Embedded SystemsDesign of Software for Embedded Systems
Design of Software for Embedded SystemsPeter Tröger
 
Adaptive Computing Seminar - Suyog Potdar
Adaptive Computing Seminar - Suyog PotdarAdaptive Computing Seminar - Suyog Potdar
Adaptive Computing Seminar - Suyog PotdarSuyog Potdar
 
Embeddedsystem basic for Engineering Students
Embeddedsystem basic for Engineering StudentsEmbeddedsystem basic for Engineering Students
Embeddedsystem basic for Engineering StudentsElectro 8
 
Embedded system and its platforms
Embedded system and its platformsEmbedded system and its platforms
Embedded system and its platformsMrunal Deshkar
 

Similar to 3.9-Software.pptx (20)

Introduction to embedded System.pptx
Introduction to embedded System.pptxIntroduction to embedded System.pptx
Introduction to embedded System.pptx
 
Embedded system
Embedded systemEmbedded system
Embedded system
 
Esd module1
Esd module1Esd module1
Esd module1
 
How to create innovative architecture using VisualSim?
How to create innovative architecture using VisualSim?How to create innovative architecture using VisualSim?
How to create innovative architecture using VisualSim?
 
How to create innovative architecture using VisualSim?
How to create innovative architecture using VisualSim?How to create innovative architecture using VisualSim?
How to create innovative architecture using VisualSim?
 
How to create innovative architecture using ViualSim?
How to create innovative architecture using ViualSim?How to create innovative architecture using ViualSim?
How to create innovative architecture using ViualSim?
 
Basic VLSI.ppt
Basic VLSI.pptBasic VLSI.ppt
Basic VLSI.ppt
 
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
 
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
66_9985_EC535_2012_1__2_1_Introduction to VLSI Design (1).ppt
 
UNIT I.pptx
UNIT I.pptxUNIT I.pptx
UNIT I.pptx
 
Introduction to Embedded System
Introduction to Embedded SystemIntroduction to Embedded System
Introduction to Embedded System
 
UNIT I_Introduction.pptx
UNIT I_Introduction.pptxUNIT I_Introduction.pptx
UNIT I_Introduction.pptx
 
Choosing the right processor
Choosing the right processorChoosing the right processor
Choosing the right processor
 
Hardware Software Codesign
Hardware Software CodesignHardware Software Codesign
Hardware Software Codesign
 
Embedded
EmbeddedEmbedded
Embedded
 
Design of Software for Embedded Systems
Design of Software for Embedded SystemsDesign of Software for Embedded Systems
Design of Software for Embedded Systems
 
Adaptive Computing Seminar - Suyog Potdar
Adaptive Computing Seminar - Suyog PotdarAdaptive Computing Seminar - Suyog Potdar
Adaptive Computing Seminar - Suyog Potdar
 
Embeddedsystem basic for Engineering Students
Embeddedsystem basic for Engineering StudentsEmbeddedsystem basic for Engineering Students
Embeddedsystem basic for Engineering Students
 
Harsh embedded systems
Harsh embedded systemsHarsh embedded systems
Harsh embedded systems
 
Embedded system and its platforms
Embedded system and its platformsEmbedded system and its platforms
Embedded system and its platforms
 

Recently uploaded

MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxupamatechverse
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGSIVASHANKAR N
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfKamal Acharya
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...Call Girls in Nagpur High Profile
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 

Recently uploaded (20)

MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Introduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptxIntroduction to IEEE STANDARDS and its different types.pptx
Introduction to IEEE STANDARDS and its different types.pptx
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 

3.9-Software.pptx

  • 1. SRI KRISHNA COLLEGE OF ENGINEERING AND TECHNOLOGY Kuniamuthur, Coimbatore, Tamilnadu, India An Autonomous Institution, Affiliated to Anna University, Accredited by NAAC with “A” Grade & Accredited by NBA (CSE, ECE, IT, MECH ,EEE, CIVIL& MCT) 18EC943- Embedded System Design by Dr. K.Muthukumar Associate Professor Department of Electrical and Electronics Engineering
  • 4. Objectives • Embedded system components • Software • Embedded system programming • Hardware Description Language (HDL)
  • 5. Contents • Lab: Software programming tools • Introduction to hardware systhesis • Lab: External interface
  • 6. Real-Time Consideration  Correct operation of real-time systems means: – Working correctly (functionally correct) – Producing outputs in time!  i.e. correct result at the right time
  • 7. Hard Real-time  System designed to meet all deadlines  A missed deadline is a design flaw  For examples: ABS brake, nuclear reactor monitoring system  System hardware (over) designed for worst-case performance  System software rigorously tested  Formal proofs used to guarantee timing correctness Slide credit – T Givargis
  • 8. Firm Real-time  System designed to meet all deadlines, but occasional missed deadline is allowed – Sometimes statistically quantified (e.g. 5% misses)  For examples: multimedia systems  System hardware designed for average case performance  System software tested under average (ideal) conditions Slide credit – T Givargis
  • 9. Soft Real-time  System designed to meet as many deadlines as possible – Best effort to complete within specified time, but may be late  For examples: network switch or router  System hardware designed for average case performance  System software tested under averaged (ideal) conditions
  • 10. Hardware vs Software  Many functions can be done by software on a general purpose microprocessor OR by hardware on an application specific ICs (ASICs)  For examples: game console graphic, PWM, PID control  Leads to Hardware/Software Co-design concept
  • 11. Hardware or Software?  Where to place functionality? – ex: A Sort algorithm » Faster in hardware, but more expensive. » More flexible in software but slower. » Other examples?  Must be able to explore these various trade- offs: – Cost. – Speed. – Reliability. – Form (size, weight, and power constraints.)
  • 12. Hardware vs Software Embedded Application-Specific Processors Embedded Domain-Specific Processors General-Purpose Processors FFT Processors MPEG Processors FIR Processors Graphics Processors DSP Processors Network Processors Workstations Personal Computers Power/Performance Programmability and Flexibility
  • 13. Hardware vs Software Slide credit – Ingo Sander
  • 14. Microcessor technology  Processors vary in their customization for the problem at hand total = 0 for i = 1 to N loop total += M[i] end loop General-purpose processor Single-purpose processor Application-specific processor Desired functionality
  • 15. General-purpose processors  Programmable device used in a variety of applications – Also known as “microprocessor”  Features – Program memory – General datapath with large register file and general ALU  User benefits – Low time-to-market and NRE costs – High flexibility  “Pentium” the most well-known, but there are hundreds of others IR PC Register file General ALU Datapath Controller Program memory Assembly code for: total = 0 for i =1 to … Control logic and State register Data memory
  • 16. Single-purpose processors  Digital circuit designed to execute exactly one program – a.k.a. coprocessor, accelerator or peripheral  Features – Contains only the components needed to execute a single program – No program memory  Benefits – Fast – Low power – Small size Datapath Controller Control logic State register Data memory index total +
  • 17. Application-specific processors  Programmable processor optimized for a particular class of applications having common characteristics – Compromise between general-purpose and single-purpose processors  Features – Program memory – Optimized datapath – Special functional units  Benefits – Some flexibility, good performance, size and power  DSP จัดอยู่ในประเภทนี้ด ้วย IR PC Registers Custom ALU Datapath Controller Program memory Assembly code for: total = 0 for i =1 to … Control logic and State register Data memory
  • 18. FPGA Architecture FPGA layout with Configurable Logic Blocks (CLB) and I/O Blocks (IOB) (credit: Katz’s Contemporary Logic Design) IOB IOB IOB IOB CLB CLB CLB CLB IOB IOB IOB IOB WiringChannels Typical CLB (credit: www.wikipedia.com) Programmable switch at wiring intersection (credit: www.wikipedia.com)
  • 19.  Highly constrained products tend to use application specific processors – Many mobile phones (power&size constrained) contain ARM chips – Hi-Fi (high performance&time constrained) contain DSP chips
  • 21. Disciplines Used in Embedded System Design
  • 26. Observations on Future Embedded Systems  More complexity (people expect more functions and higher performance from their electronic products)  This leads to more complex software  Which requires better design process  More importantly, thorough testing for safety critical systems (diagnostics codes of engine ECUs is half of its total software codes)
  • 27. Research in Embedded Systems • Hardware – to improve performance (sensors and actuators), verification, etc. • Software – reusability, testing, verification, OS, etc. • Network – higher connectivity between systems (e.g. smart homes link many systems together, standardised protocols, etc. • Security – protection against attacks • Design – improved methodology, more automation, formal verification