Programmable read-only memory


A programmable read-only memory is a form of digital memory where the setting of each bit is locked by a fuse or antifuse. It is one type of ROM. The data in them are permanent and cannot be changed. PROMs are used in digital electronic devices to store permanent data, usually low level programs such as firmware or microcode. The key difference from a standard ROM is that the data is written into a ROM during manufacture, while with a PROM the data is programmed into them after manufacture. Thus, ROMs tend to be used only for large production runs with well-verified data, while PROMs are used to allow companies to test on a subset of the devices in an order before burning data into all of them.
PROMs are manufactured blank and, depending on the technology, can be programmed at wafer, final test, or in system. Blank PROM chips are programmed by plugging them into a device called a PROM programmer. The availability of this technology allows companies to keep a supply of blank PROMs in stock, and program them at the last minute to avoid large volume commitment. These types of memories are frequently used in microcontrollers, video game consoles, mobile phones, radio-frequency identification tags, implantable medical devices, high-definition multimedia interfaces and in many other consumer and automotive electronics products.

History

The PROM was invented in 1956 by Wen Tsing Chow, working for the Arma Division of the American Bosch Arma Corporation in Garden City, New York. The invention was conceived at the request of the United States Air Force to come up with a more flexible and secure way of storing the targeting constants in the Atlas E/F ICBM's airborne digital computer. The patent and associated technology were held under secrecy order for several years while the Atlas E/F was the main operational missile of the United States ICBM force. The term burn, referring to the process of programming a PROM, is also in the original patent, as one of the original implementations was to literally burn the internal whiskers of diodes with a current overload to produce a circuit discontinuity. The first PROM programming machines were also developed by Arma engineers under Mr. Chow's direction and were located in Arma's Garden City lab and Air Force Strategic Air Command headquarters.
OTP memory is a special type of non-volatile memory that permits data to be written to memory only once. Once the memory has been programmed, it retains its value upon loss of power. OTP memory is used in applications where reliable and repeatable reading of data is required. Examples include boot code, encryption keys and configuration parameters for analog, sensor or display circuitry. OTP NVM is characterized, over other types of NVM like eFuse or EEPROM, by offering a low power, small area footprint memory structure. As such OTP memory finds application in products from microprocessors & display drivers to Power Management ICs.
Commercially available semiconductor antifuse-based OTP memory arrays have been around at least since 1969, with initial antifuse bit cells dependent on blowing a capacitor between crossing conductive lines. Texas Instruments developed a MOS gate oxide breakdown antifuse in 1979. A dual-gate-oxide two-transistor MOS antifuse was introduced in 1982. Early oxide breakdown technologies exhibited a variety of scaling, programming, size and manufacturing problems that prevented volume production of memory devices based on these technologies.
Although antifuse-based PROM has been available for decades, it wasn’t available in standard CMOS until 2001 when Kilopass Technology Inc. patented 1T, 2T, and 3.5T antifuse bit cell technologies using a standard CMOS process, enabling integration of PROM into logic CMOS chips. The first process node antifuse can be implemented in standard CMOS is 0.18 um. Since the gate oxide breakdown is less than the junction breakdown, special diffusion steps were not required to create the antifuse programming element. In 2005, a split channel antifuse device was introduced by Sidense. This split channel bit cell combines the thick and thin oxide devices into one transistor with a common polysilicon gate.

Programming

A typical PROM comes with all bits reading as "1". Burning a fuse bit during programming causes the bit to read as "0". The memory can be programmed just once after manufacturing by "blowing" the fuses, which is an irreversible process.
The bit cell is programmed by applying a high-voltage pulse not encountered during a normal operation across the gate and substrate of the thin oxide transistor to break down the oxide between gate and substrate. The positive voltage on the transistor's gate forms an inversion channel in the substrate below the gate, causing a tunneling current to flow through the oxide. The current produces additional traps in the oxide, increasing the current through the oxide and ultimately melting the oxide and forming a conductive channel from gate to substrate. The current required to form the conductive channel is around 100µA/100nm and the breakdown occurs in approximately 100µs or less.