Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
EE Times-Asia > FPGAs/PLDs

OTP firmware enhances processor flexibility

Posted: 01 Aug 2006 ?? ?Print Version ?Bookmark and Share

Keywords:Yeng Peng? Kilopass Technology? otp? one-time programmable? non-volatile memory?

Processor firmware must be upgradeable to account for new algorithms or to simplify the development of derivative products. Storing such firmware in ROM or flash memory poses problems for embedded applications. With mask-programmable ROM, the processor's firmware is "locked in" during chip fabrication. In a typical SoC design flow, firmware is directly in the project's critical path. Every change in the contents of a masked ROM requires an NRE charge and a turnaround that may stretch to months. ROM-based storage also increases the cost of inventory management.

Flash memory is very costly for many consumer applications. Accessing firmware stored on external flash is power-intensive compared with storing firmware on-chip. Downloading firmware from an external flash chip makes the download process susceptible to undesirable interception by an unauthorized third party. Through reverse-engineering, on-chip flash can also be read to reveal its contents.

A better solution is to embed one-time programmable (OTP) non-volatile memory on the processing chip. Beyond accommodating changes in data standards and decreasing the time and cost of derivative products, OTP memory can handle engineering change orders through software modifications. Product lifetime is increased, and firmware configuration during system development enhances the co-development of hardware and software.


  • Consider OTP memory for firmware storage in place of reconfigurable memory, even if there are potential changes in the firmware.

  • Allow some "patch" spaceinclude one or more uncommitted sectors in the OTP memory along with the sectors that store existing program code. To upgrade one of the program-code modules, program the upgraded module into an unused memory sector and use control logic to point to the updated module.

  • Estimate the amount of unused memory segments needed to accommodate future firmware upgrades. The figure will depend on the memory footprint of the firmware, the expected lifetime of the system and the frequency of firmware upgrades. Be conservativeOTP memory is dense, especially compared with flash. Having extra uncommitted segments that might not be used is better than underestimating the amount of memory you will need for firmware upgrades. Embedded OTP memory is also less area-intensive than on-board SRAM.

  • For cost-sensitive applications, such as consumer products, choose an embedded OTP memory that adds little or no processing cost to the logic CMOS SoC. Even a small cost increase can make a big difference in the cost of the completed chip. Embedded flash can add as much as 50 percent to the cost of a chip because of the extra masks and processing steps needed to fabricate a chip with flash.

  • Evaluate the read-access time of an OTP memory to make sure it meets the requirements of your particular chip. Storing boot code in embedded OTP memory instead of an external flash eliminates the time needed to download the flash contents into embedded SRAM.


  • Store firmware on a separate flash chip for downloading to the processor. The additional chip adds cost and area to the system. Test costs and complexity also increase, just like board or multichip-carrier complexity. Finally, code downloads from the additional chip increase power dissipation.

  • Use floating-gate non-volatile memory when firmware security is critical. Hackers can use voltage contrast or other scanning techniques to steal firmware code from embedded flash. Hacking an external flash is even easier, accomplished by intercepting the downloading code stream.

  • Ignore the power required to access the firmware stored in memory. Storing code in external flash and then downloading it to on-chip SRAM is a power-hungry process.

  • Ignore the scalability to new process nodes of the memory storing the firmware. The ability to process a chip at a smaller process node lets you reduce cost or add more features to an existing design at the same cost. Because of physics limitations, floating-gate memory often lags leading-edge process nodes by one to two process generations.

  • Ignore the reliability of any memory you select for firmware storagean area that cannot tolerate errors. Choose an OTP memory that is inherently stable when programmed and is not affected by temperature, voltage, ambient radiation or read operations.

- Yeng Peng
VP of Product Operations, Kilopass Technology

Article Comments - OTP firmware enhances processor flex...
*? You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.

Back to Top