Over 20 years of embedded software development a third way emerges

464 views

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
464
On SlideShare
0
From Embeds
0
Number of Embeds
50
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Over 20 years of embedded software development a third way emerges

  1. 1. Over 20 Years of Embedded Software Development – A Third Way Emerges Colin Walls colin_walls@mentor.com Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions. Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.
  2. 2. “Software is eating the world” Marc Andreessen, co-founder of Netscape Mentor Graphics Confidential Information 2
  3. 3. Software is eating the world Contribution of software to product success is increasing How will you cope? Is there a path forward that will prevent hungry software from eating up the entire product budget? $$$ Mentor Graphics Confidential Information 3
  4. 4. Embedded Software is Ubiquitous Embedded software is everywhere Consumer Telcom (Even if most people don’t know what Embedded means …) Automotive Medical Home White Goods Mentor Graphics Confidential Information 4
  5. 5. Trends: Microprocessor Technology 8 bits 16 bits 32 bits RISC 8 bit mcu 16 bit mcu 32 bit Soft Cores mcu Mentor Graphics Confidential Information 5
  6. 6. Trends: Design Composition Hardware Hardware Hardware Software Software Software Mentor Graphics Confidential Information 6
  7. 7. Trends: Software Content In-house In-house In-house In-house RTOS RTOS + comms RTOS + comms + other IP Mentor Graphics Confidential Information 7
  8. 8. Trends: Software Team Size /2 Mentor Graphics Confidential Information 8
  9. 9. Embedded Software Dominant value generator for technology enterprises Low cost of entry Great time for start-ups Danger of “hardware myopia” Mentor Graphics Confidential Information 9
  10. 10. “Most of the new, innovative companies are focusing on the software. I think there will be lots of innovation in the areas of software, but not in hardware.” Steve Jobs February 1985 Mentor Graphics Confidential Information 10
  11. 11. Embedded Software Software innovation is strategic 9 month cycle is typical You get fixed number of “spins” Software is not “free” except for headcount Fixing one bug is cheap, but 1000 can kill a project Mentor Graphics Confidential Information 11
  12. 12. Pre-requisites to Software Success The right runtime software The right tools Pre-silicon prototyping – Buys more cycles Mentor Graphics Confidential Information 12
  13. 13. Embedded Software DevelopmentRuntime – 3 options: Tools – 2 options: Commercial  Commercial In-house  Open source Open source Mentor Graphics Confidential Information 13
  14. 14. Commercial Runtime SoftwarePros Cons Established, reliable  On-going license costs Long-term commitment  No internal knowledge Documented  Vendor lock-in OS-aware debug support  Excess functionality Middleware Hardware drivers Mentor Graphics Confidential Information 14
  15. 15. Commercial Runtime SoftwarePros Cons Established, reliable  On-going license costs Long-term commitment  No internal knowledge Documented  Vendor lock-in OS-aware debug support  Excess functionality Middleware Hardware drivers Mentor Graphics Confidential Information 15
  16. 16. In-house Runtime SoftwarePros Cons Control  Development costs No on-going license costs  Long-term support Exact match to needs  No debug support  Multiple implementations  No middleware  New architecture support  Core competencies Mentor Graphics Confidential Information 16
  17. 17. In-house Runtime SoftwarePros Cons Control  Development costs No on-going license costs  Long-term support Exact match to needs  No debug support  Multiple implementations  No middleware  New architecture support  Core competencies Mentor Graphics Confidential Information 17
  18. 18. Open Source Runtime SoftwarePros Cons Readily available  Nobody responsible Wide user base  Integration takes time and Support from users effort “Free”  Version issues  Fit for purpose Mentor Graphics Confidential Information 18
  19. 19. Open Source Runtime SoftwarePros Cons Readily available  Nobody responsible Wide user base  Integration takes time and Support from users effort “Free”  Version issues  Fit for purpose Mentor Graphics Confidential Information 19
  20. 20. Commercial ToolsPros Cons High functionality  Cost Fully integrated  Vendor lock-in Technical support  Not comparable to Wide range available desktop tools Mentor Graphics Confidential Information 20
  21. 21. Commercial ToolsPros Cons High functionality  Cost Fully integrated  Vendor lock-in Technical support  Not comparable to Wide range available desktop tools Mentor Graphics Confidential Information 21
  22. 22. Open Source ToolsPros Cons Readily available  Nobody responsible Wide user base  Integration takes time and Support from users effort “Free”  Version issues Mentor Graphics Confidential Information 22
  23. 23. Open Source ToolsPros Cons Readily available  Nobody responsible Wide user base  Integration takes time and Support from users effort “Free”  Version issues Mentor Graphics Confidential Information 23
  24. 24. Deployment of open source tools Open source tools “out of the box” ... Which tools? – C/C++ Compilers – Assembler – Linker – Runtime Libraries – Debugger – Debug Stub(s) – Integrated Development Environment Mentor Graphics Confidential Information 24
  25. 25. Deployment of open source tools Do you have the right tools to build the toolchain? What versions of the various toolchain components will you use? – What patches should be applied? How should you configure the various toolchain components? – The configure scripts have thousands of options Mentor Graphics Confidential Information 25
  26. 26. Deployment of open source tools What CPUs will be used on your target systems? – Will both big-endian and little-endian code be required? – e.g. “bare metal” ARM runtime libraries are optimized for little-endian ARM V5 – this will not work with ARM V4 – ARM V6 architecture would not be used efficiently Mentor Graphics Confidential Information 26
  27. 27. Deployment of open source tools Toolchain validation – Compiling programs and running those programs in the target environment – Compiling programs and inspecting the generated object file or executable image, without running the generated code – Compiling fragments of a program with multiple compilers and linking the fragments together – Compiling invalid program fragments and checking for appropriate error messages – Testsuites ... Mentor Graphics Confidential Information 27
  28. 28. Embedded Software DevelopmentRuntime – 3 options: Tools – 2 options: Commercial  Commercial In-house  Open source Open source Mentor Graphics Confidential Information 28
  29. 29. Embedded Software DevelopmentRuntime – 3 options: Tools – 2 options: Commercial  Commercial In-house  Open source Open source There is another way ... Mentor Graphics Confidential Information 29
  30. 30. Embedded Software Development Recognize that open source does not mean “free” Do not underestimate the configuration and deployment challenges [= costs] Consider using a specialist vendor – Tools [and OS] packaged and ready to use – Costs well defined and contained – Additional support [with open source community there for you as well] – Additional value-added components This if The Third Way Mentor Graphics Confidential Information 30
  31. 31. Thank you Colin Walls colin_walls@mentor.com http://blogs.mentor.com/colinwallsAndroid is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries.

×