FPGA Killer app?
Anyways, to get back on track, while FPGAs are electonic circuit protoyping platfomrs are cool, that idea is not new, and this is how FPGAs are generally used: as protypes for ASICs.
The vision I have for FPGAs (and well, hopefully, many others do too), is to have FPGAs are the delivery platform too. With todays FPGA costs, this is almost viable, and with the cost reductions we have seen due to vendor competition (thanks Xilinx and Altera for being such good sports), the economics may become very lucrative soon, especially considering the NRE costs associated with ASICs, esp the 90nm node and better.
Now, one argument against using FPGAs for final delivery is that ASICs will always beat them in large quantities. This is unquestionably true. But the place where they fit are:
- When the reconfigurablity of the FPGA is what the doctor ordered: For example in logic probes, In-circuit Emulators, etc. These applications just have to be done using FPGAs, but the number of FPGAs that can be sold as part of these products is ver limited. In other words, this is not going to set the FPGA market ablaze.
- Where the circuit logic may need to be changed after product fabrication/sale: We are all used to applying "firmware" patches to various components of our PCs, like the motherboard BIOS, the videocard BIOS, even to our home network gateways, etc. These firware upgrades can fix software bugs after the device has been delivered to the final user. It may also add new functionality, for example adding photo-viewing functionality to the iPod. Most of the patches available today truly only upgrade the software residing on these hardware components. What if we could also upgrade the hardware if need be? Can we even imagine such a need arising? Are there any markets where such a capability may be even required, not just desirable? This is the application this post muses over (so now you know! whew!)
Of course, due to economic and regulatory reasons, most cell phone operators dont and cannot provide this capability (or do not want to!).
Any other "killer apps" for an FPGA? any application where runtime hardware reconfiguration is a basic feature?