- Basic Information
- Gender
- Male
- About me
- Henry Davis is the Embedded Software Community Leader for TechBites. Before joining TechBites, Henry served as the founding editor of the Audio DesignLine in the EE Times network. He has more than 30 years publishing experience both as an external contributor and as an Editor and Contributiong Editor to numerous industry publications. As a 'C' level manager, Henry led global teams of engineers and marketers in diverse areas including software development, and semiconductors - encompassing MCUs, MPUs, and DSPs. Henry's past work includes Director of DSP Products for Analog Devices where his team launched the successful ADSP21xxx series of products, and Strategy manager for Texas Instruments. He brings a unique perspective to the Embedded Software space, drawing on his experience as an MCU programmer, Software manager, Director of IC development, VP of Intellectual property, and General Business Manager.
- Education
- Karma
-

- Member since
- Monday, 14 September 2009 21:19
- Last online
- 11 hours 17 minutes ago
- Profile views
- 1015 views
Content I've Created
Category: TB-Articles
|
Category: TB-Reviews
|
Category: TB-Blog
|
Category: TB-Reviews
|
Category: TB-Blog
|
Category: TB-Blog
|
Category: TB-Blog
|
Category: TB-Blog
|
Category: TB-Blog
|
Category: TB-Blog
|
My Wall
Make it work before you make it fast and make it work before you make it small.
But it seems to me that today there's little consideration for efficient use of memory and speed in embedded systems. Considering that many of these products see volume production, there's money left on the table.
Perhaps the trend you point to reflects the downward cost of memory, both in semiconductor and magnetic form: In the days of the IBM PC-AT (IBM's '286 machine) a 40 MB drive cost $1000. (I know because I spent that much of my employer's money to buy one for our design-engineering lab). Today a 1 TB drive costs $130... no, $125... no, $120... you get the point.
Similarly semiconductor memory costs have fallen to levels that are simply hard to believe. For example, one of my mobile digital audio recorders packs an 8 GB flash card. I think I paid something like $65 for it. I don't even know how much DRAM goes for these days because the machine I bought two years ago still has as much of the stuff as I need.
Given the low cost and ready availability of memory (just hop down to your neighborhood Staples), code writers have little inspiration to write small. They are inspired to write fast and, evidently, sloppy. The result is software that is bloated, wasteful of energy (yes!), and, in all too many cases, of questionable stability and reliability.
All good points. I guess that my bias comes from being involved with so many embedded products that went to very large volumes. A dime's difference in memory doesn't seem like much, but when the device is being built 10-100 million units per year it becomes serious money. There's very few operastions managers who would turn down an additional million dollars of profit.
But a lot of my concern comes from your last points. More code=more bugs=more instability=more cusotmer complaints=more cost=job cuts=more problems. Lest anyone think that this is a fanciful scenario, just loko around.


