Get email delivery of the Cadence blog featured here
I like to do the (London) Times crossword most days. For more information on how cryptic crosswords even work, see my offtopic post Aren't All Crosswords Cryptic? There's also a blog where each day the crosswords get analyzed and critiqued, and solvers give their experiences. Recently, one hurdle that a lot of solvers fell at was the word EPROM since none of them had ever heard of it, even people who had spent their whole career in IT. The clue was "Record traveller's memory (5)" with the record being EP (yeah, nothing ever goes obsolete in crosswordland) and the traveller (with two Ls since this is the London Times, officially just The Times) is ROM (short for Romany). The memory is EPROM. It's not surprising that nobody had heard of it. Apart from it being somewhat obscure anyway to someone outside the semiconductor industry, they have been obsolete for about 40 years.
As it happens, I had some experience with EPROMs. When I first came to the US and joined VLSI Technology, the company made most of its money manufacturing ROMs for video games. This was the first video-game boom with companies like Atari, Mattel, Coleco, and more all making video game systems. In those days, a game came in the form of a cartridge, but inside the cartridge was actually a ROM. A ROM was programmed with a single mask containing the ones and zeros of the code for the game. Early ROMs were programmed at the poly level (transistor) but that's very early in the manufacturing process, which is not good for leadtime. It also meant that each game ROM had to be manufactured completely separately. One product our memory team developed was a metal programmed ROM. This meant much shorter leadtimes. It also meant that, like a gate-array, the bases could be manufactured in bulk and only later when the metal was added was the code inserted. So if one game was a hit and another was a dud, it was easy to adjust inventory since they were all built on the same base.
I don't actually know how the games were developed in detail, but by the time they got to me, they were on one or more EPROMs. So what was an EPROM? It stands for Erasable Programmable Read-Only-Memory. The bits on an erased EPROM were all zero. Using a special programmer device that applied much higher voltages than normal, the zeros could be switched to ones. But the process was not reversible. What was possible was to erase the whole memory and set it back to all zero. This was done with a high-intensity ultra-violet light. What made EPROMs so recognizable was they had a quartz window over the chip for this purpose (see the image at the top of this post). However, in practice, they would usually have some sort of label over the window, both to cover it up from accidentally erasure by sunlight (although I was told that would actually take weeks) and to note down what the chip had been programmed with.
When EPROMs were used to hold software for embedded systems (such as PC BIOS), there was the strange concept of an OTP EPROM. That's a One-Time-Programmable Erasable PROM — that is an erasable PROM that can't be erased. Since the quartz window was expensive, if the chip was never going to be erased in practice then it could be omitted. The chip would be programmed once and then shipped out inside the product. If the BIOS ever needed to be updated, the chip would simply be changed. In practice, outside of development groups, BIOS chips were never updated in early PCs.
My job at VLSI was to work out a chain to get from the EPROM to the file used to make the mask. That involved interfacing to the programmer to get the data out through an RS-232 interface (terminal). And also write the program that converted the binary ROM contents into the instructions required for the mask making machine known as MEBES (Manufacturing Electron Beam Exposure System). This was still the era when a tapeout involved actual tape. Later, I would go to Japan and install my software on a mainframe in Osaka so that we didn't have pay expensive couriers to hand-carry masks across the Pacific. You can read about that adventure in my post VLSI's Secret Business...and a Trip to Japan.
EPROM is a floating-gate technology. That means that above the transistor, embedded in the oxide, is a gate that is completely insulated. The insulation is very good, so if you can get some electrons onto that floating gate they will stay there for literally decades and so the memory will hold its value. You can't get any electrons there with normal power-supply voltage, hence the need for a special programmer device that supplied much higher voltages. At this higher voltage, electrons can get through the insulator to the floating gate and accumulate there. This is known as avalanche hot carrier injection.
The only way to get the electrons out from an EPROM was to erase the whole memory with ultraviolet photons that causes ionization in the insulator and lets the electrons escape to the substrate.
Requiring ultraviolet light to erase the EPROM was inconvenient for a couple of reasons. First, the quartz windows significantly increased the cost of the devices. Second, it required a special piece of equipment to deliver the ultraviolet light, which also needed safety precautions because these are wavelengths you do not want to get in your eyes. Third, it took time, about 15 minutes if I remember right.
Obviously, what would have been nirvana was to be able to write zeros into a PROM, too, meaning that it was not necessary to bulk erase the device, so like a DRAM but non-volatile. But a good halfway compromise would be to avoid the UV light and be able to erase all or part of the memory with signals to its pins. That is what an EEPROM is, an Electrically Erasable Programmable Read-Only Memory. Sometimes that was written E2PROM. Flash memory is a type of EEPROM, and there isn't really a bright line separating what is called EEPROM and what is called flash (or often, somewhat confusingly, NAND or NOR). EEPROM is typically smaller, can erase an individual byte, but requires two transistors per bit to achieve this. Flash is typically much larger, can only erase a page at a time, but only requires one transistor per bit.
By the way, the first EEPROMs were developed by Intel. It is easy to forget that Intel was a memory company before the invention of the microprocessor. They manufactured the first commercially available DRAM. But famously, they withdrew from that market in the mid-80s (you can read that story in my post Andy Grove, RIP). DRAM manufacturing moved primarily to Japan, and then a decade or two later mainly to South Korea.
These second-generation EEPROM devices used a different technique to get the charge onto the gate, known as Fowler–Nordheim tunneling. I'm not a device physicist, so I don't pretend to understand precisely how that differs from the earlier avalanche injection. However, the effect was to increase both the reliability and the endurance (how many times a bit could be erased and re-written). EEPROM required an extra 20+V power supply for the erase. That was not very convenient, and eventually, charge-pumps would be developed that could create this high-voltage on-chip and just required a normal (for the time) 5V power supply.
NAND Flash, NOR Flash, 3D NAND, 3DXpoint (aka Optane), MRAM, RRAM
Sign up for Sunday Brunch, the weekly Breakfast Bytes email.