Zibb

Brian DipertEDN Senior Technical Editor Brian Dipert exposes, analyzes and
opines on diverse topics in technology. Follow the Brian's Brain Twitter feed at www.twitter.com/BrianzBrain.



   Advertisement

Profile

RSS Feed

  • Add this blog to your RSS newsreader!

Recent Posts

Recent Comments

Most Commented On

Archives

By Category

Consumer Electronics Design Articles

Blog

Monday, July 14, 2008

Flash Memory-Based Firmware: Blessing, Curse Or Mix Of Both?

Jul 14 2008 1:00AM | Permalink |Comments (4) |


My friend Lisa (who I've mentioned before) recently canceled her AT&T cellular plan early and sold her 1st-generation iPhone on Craigslist, citing longstanding frustration with AT&T's spotty coverage throughout the Truckee area. Instead, she's gone with Sprint's 'iPhone killer', the Samsung Instinct (which is in the laundry list of teardown victims I mentioned last Friday). Lisa's impressions of the Instinct were very positive when she auditioned it in the Sprint showroom, aside from an inability to zoom in and out within the browser via two-finger 'pinching'. However, once she got the Instinct home, she found herself unable to configure it for POP3 email access. The Instinct provides pre-configured profiles for AOL, Gmail, Hotmail and Yahoo, but generic POP3 account configuration seems to be hit-and-miss.

Within my back-and-forth do-date discussion with Lisa regarding the Instinct(specifically regarding whether or not she should keep it or return it within the 30-day evaluation 'grace' period and instead go with a Microsoft-, Palm-, or RIM-based alternative), she offered up a particularly compelling soundbite the other day (which I've lightly edited for grammar):

Well, I finally found someone in technical support at Sprint today who knew all about the issue. He said that Sprint is working on a fix but that they have no idea when the firmware will be available (they use some external company for their POP email programming)...Now why on earth do you think they'd release the phone before fixing this issue? Were they in a hurry to get it out there before the new iPhones went on sale?

Here's my response:

iPhone correlation: probably yes ;-) My first job out of college was working in Intel's nonvolatile memory group, most of that time with flash memory (which enables in-system upgradeable firmware). I regularly see strong evidence that this capability has made programmers, marketeers, upper management, etc. inappropriately willing to release products earlier than they should 'because we can fix it later with a firmware update'.

Though I hope you all don't take (too much) offense at my words above, I meant what I said. The early days of flash memory were interesting ones. The first chip I worked on was the 28F001BX, which integrated four separately erasable blocks, one of them (the appropriately named 'boot block') hardware-lockable to prevent inadvertent corruption (and thereby intended to contain system startup and recovery code). Its predecessors, the 28F256A, 28F512, 28F010 and 28F020, were all bulk-erasable devices in the tradition of their EPROM forbearers. Although flash memory-based firmware is now pervasive, this wasn't always the case; early flash memory chips were more expensive on a $-per-bit basis than EPROM counterparts and much more expensive than the dominant-in-production-environments mask ROM technology of the era...as well as being lower capacity on a Mbit-per-IC basis. Analogies to ASICs versus FPGAs are apt...

Predictably, our sales pitches to both upper management and hardware engineers at potential customers largely fell on deaf ears, as both camps were primarily fixated in system bill-of-materials costs. However, our timing was fairly good; not only was the laptop PC segment (complete with immature, buggy system power management BIOS code) beginning to take off courtesy of CPUs like the 386SL, Europe was also finalizing the GSM digital cellular phone standard (translation: more immature, buggy system code). So we redirected our attack towards three specific promising user communities:

  • Software engineers
  • Production engineers, and
  • Customer support engineers

The three-part pitch was similar in all three cases:

  • With flash memory, software is no longer the gating factor in the system launch and production schedule
  • You can update the firmware image in a JIT (just-in-time) fashion right on the production line; to fix bugs, to add capabilities, and to software-differentiate an otherwise common hardware foundation for multiple product family variants, and
  • That same firmware update methodology (both for patches and feature updates) is also available even after the system's in the end customer's hands.

Bottom line; although flash memory may cost you more than mask ROM upfront, you'll end up saving money through the system lifetime, and you'll also have happier (therefore long-time loyal) customers to boot (pun intended). Slowly but surely, the alluring message got out, and the now-nearly-complete conversion from ROM to flash memory was underway. I confess that Intel's motherboard group, by stimulating volume via its flash BIOS embrace, certainly helped ;-) As did mobile phone pioneers such as Ericsson and Nokia, and networking visionaries like Cisco.

But now, as I survey the technology landscape, I fear that the stability-vs-time-to-market software pendulum has swung too far towards the ship-it-regardless end of the spectrum. Pretty much every electronic gadget you can buy seems to be firmware-upgradeable. And inevitably, pretty much every electronic gadget you buy seems to require at least one firmware upgrade through its useable life in order to deliver on at least some of the feature set promise found in at-launch glossy promotional materials.

I confess that I feel a little guilty at the part I played in cultivating the current situation. And I'm also curious to hear your thoughts on this admittedly controversial topic. To what degree has flash memory firmware in-system upgrade capability enabled you to create products that you otherwise couldn't, either at all or in a timeframe that market forces demand? And conversely, to what degree has flash memory successfully tempted you to take hardware and software design shortcuts that you shouldn't?

p.s...here's what I told Lisa regarding her POP3 woes. Am I right? Time will tell...

I certainly can't promise anything. But given Sprint's troubled corporate state (it's shedding lots of customers of late, mostly to Verizon and AT&T), and if the POP3 bug is as pervasive as you say it is, I suspect it'll get fixed in short order. Your phone is the only thing in Sprint's arsenal that's a halfway-viable competitor to the iPhone.


Reader Comments



at 7/15/2008 3:02:24 AM, Dr Bob said:
As long as a phone works like a phone that is good enough.

anything else is marketing hype and not neccesary



at 7/17/2008 6:29:23 AM, D. Gary said:
I am facing that with every new design from management. Get it out and fix it later.



at 7/18/2008 10:13:17 AM, Richard Gibbs said:
The mobile phone as we know it today is a complex embedded computer that would not exist without flash memory. Data (files) and code (system and application) are both maintained in flash, often in the same device. "Firmware" upgrades may consist of code and/or data modification. Over-the-air upgrades and patches have become standard practice just as PC upgrades/patches are the norm. Smart phones and Java capability have made mobile phones look even more like small, complex computers with real-time performance and and power-saving requirements.

The old days of thinking of the code as simply "firmware" are long gone. This terminology is still used by marketing types to try to hide the complexities of the system from the user.



at 8/6/2008 11:28:46 PM, DJKappa said:
I'm so glad to hear this opinion from somebody else. For several years now I have been complaining to all who will listen that thanks to upgradeable FLASH firmware, most companies are treating their customers as beta testers who are paying for the privilege.

The companies pass the cost of warranty fixes back onto the customer by often insisting you try a firmware upgrade before taking it back.

I have seen several products that wouldn't work at all without firmware upgrades, and one in fact that wouldn't even boot to the point where a firmware upgrade could be initiated! (Can anyone say "boot block"?)

Far from increasing the value to the customer, I would argue that it actually _reduces_ their impulse to buy _any_ product. Certainly for a long while I actively sought out non-firmware-upgradeable products over upgradeable ones, firstly because of the additional cost that a warranty return would incur, hopefully the manufacturer would have tested it better before release, and secondly so that if it didn't work as advertised the return wouldn't be able to be refused.

Sadly, these days, non-firmware-upgradeable products are fewer and farther between.

In most of the products I design I have so far been able to resist the push to "Get it out and fix it later" but the pressure is mounting. We must all stand up and say instead "Get it right the first time".

Post a comment



Display Name

Change Image
Before submitting this form, please type the characters displayed above.
Note the letters are NOT case sensitive.


ADVERTISEMENT

©1997-2009 Reed Business Information, a division of Reed Elsevier Inc. All rights reserved.
Use of this Web site is subject to its Terms of Use | Privacy Policy

Please visit these other Reed Business sites