On Sun, Dec 12, 2004 at 09:07:55AM -0800, Bruce Perens wrote: > Hamish Moffatt wrote: > >I'm going to disagree (violently) here. FLASH costs money, which drives > >up costs to consumers directly. > > > Maybe, maybe not. A lot of the processors come with it on board whether > you want it or not, many of the ones that don't have an expensive (in > pin-count) external memory bus.
If it's in the chip it costs money. If there's a non-FLASH variant available, designers will use it because it's cheaper. And whether it's in the micro or external, it costs money. If it's external it takes space too. In addition to the FLASH part, you might need some other logic (eg a CPLD) to actually transfer the contents of FLASH into the programmable device. That costs a few more dollars and takes a bit more board space. The front-end chips used in DVB (digital television) cards have their firmware loaded through I2C and I don't think they have any way to initiate that themselves. Hence if you wanted a wholly hardware solution you would need a CPLD to act as the I2C master. Instead the software drivers program these chips just fine during initialisation. > >Further, if you want to support firmware > >upgrades, you need to find a VERY robust process else you have huge > >technical support and repair issues, not to mentioned unhappy customers. > > > In general the FLASH is being loaded via JTAG, and the RAM is being > loaded via JTAG. No difference. You can write a device with completely > wedged software via JTAG. FLASH is loaded in the factory by JTAG. RAM isn't; I'm not sure what you mean there. > >I'm an EE working on industrial telecommunications equipment and I always > >argue for putting as little as possible in FLASH, so that we can upgrade > >it easily later. > > > Are you sure you don't mean ROM? In general, FLASH systems are designed > to upgrade in place. Sure, but you need to develop an upgrade process that means the device still works if you lose power or unplug it during the FLASH process. It'll generate tech support calls, without a doubt. So if you can avoid it, you would (and should). The FLASH technology makes partial reprogramming easy, but you still have to use it sensibly. Hamish -- Hamish Moffatt VK3SB <[EMAIL PROTECTED]> <[EMAIL PROTECTED]>