Embedded systems – an identity crisis?
Embedded systems, much as we know them now, have been around since the early 1970s, when Intel released the first really practical microprocessor. In those days, the term “embedded systems” had not been coined – that did not come along for another 20 years. I wrote a book, which was published in 1986. There was a long list of possible titles, but the word “embedded” did not appear. It was finally called “Programming Dedicated Microprocessors”.
I have always had trouble explaining what I do professionally. People understand that I work with software, but are confused when I cannot necessarily help them make their PC work better. I have to explain what an embedded system is. The description I use is something like this: Inside almost all modern electronic devices are tiny computer chips called microprocessors. They run a fixed program to provide the required functionality to the device. That is an embedded system …
I would go on to explain that this excludes desktop computers, tablets, smart phones and games consoles, as all of those run different software art different times. I usually try to avoid getting into unnecessary details, like the fact that a PC actually includes multiple embedded systems, such as the keyboard, mouse, display controller, disk controller etc. A car is an easier example of a load of embedded systems in a single box.
In the last few years, my working definition of an embedded system and, hence, at a certain level, my own identity, has been harder to define. For example, it used to be that all cell phones were clearly embedded systems; a smart phone may contain an embedded system or two [like the baseband controller], but it is really a computer. This was brought home to me recently, with the announcement of the extension of AMD’s partnership with Mentor Embedded to support both their x86 [traditional PC territory] and ARM-based 64-bit devices. Systems built around such technology has come a long way from the embedded systems I was writing about in 1986. An informative on-demand Web seminar gives extensive detail on this support.
I would be very interested in your definition of an embedded system by comment, email or via social media. Maybe you can help me out of my identity crisis.
Comments
Leave a Reply
You must be logged in to post a comment.
As in that joke about economists, ask five technologists on what is an embedded system and you will get seven answers! 🙂
One that I found online, that I like: “An embedded system is some combination of computer hardware and software, either fixed in capability or programmable, that is specifically designed for a particular function.”
http://searchenterpriselinux.techtarget.com/definition/embedded-system
The first part of the sentence is important, to us at Space Codesign. An embedded system design can involve the development of required hardware as well as software, the two media interacting as the system. That’s where hardware-software partitioning comes in.
But still, we face the more common interpretation of embedded systems (e.g., at the Embedded Systems Conferences) as merely the programming of a fixed, provided hardware platform … make it run, or else! 🙂