Read-only memory

Last updated
an EPROM 4Mbit EPROM Texas Instruments TMS27C040 (1).jpg
an EPROM

Read-only memory (ROM) is a type of non-volatile memory used in computers and other electronic devices. Data stored in ROM cannot be electronically modified after the manufacture of the memory device. Read-only memory is useful for storing software that is rarely changed during the life of the system, also known as firmware. Software applications (like video games) for programmable devices can be distributed as plug-in cartridges containing read-only memory.

Contents

Strictly, read-only memory refers to memory that is hard-wired, such as diode matrix or a mask ROM integrated circuit, which cannot be electronically [lower-alpha 1] changed after manufacture. Although discrete circuits can be altered in principle, through the addition of bodge wires and/or the removal or replacement of components, integrated circuits (ICs) cannot. Correction of errors, or updates to the software, require new devices to be manufactured and to replace the installed device.

Erasable programmable read-only memory (EPROM) and electrically erasable programmable read-only memory (EEPROM) can be erased and re-programmed, but usually this can only be done at relatively slow speeds, may require special equipment to achieve, and is typically only possible a certain number of times. [1]

The term "ROM" is sometimes used to mean a ROM device containing specific software, or a file with software to be stored in EEPROM or Flash Memory. For example, users modifying or replacing the Android operating system describe files containing a modified or replacement operating system as "custom ROMs" after the type of storage the file used to be written to.

History

Discrete-component ROM

IBM used capacitor read-only storage (CROS) and transformer read-only storage (TROS) to store microcode for the smaller System/360 models, the 360/85 and the initial two models (370/155 and 370/165) of the S/370. On some models there was also a writeable control store (WCS) for additional diagnostics and emulation support. The Apollo Guidance Computer used core rope memory, programmed by threading wires through magnetic cores.

Solid-state ROM

Many game consoles use interchangeable ROM cartridges, allowing for one system to play multiple games. PokemonSilverBoard.jpg
Many game consoles use interchangeable ROM cartridges, allowing for one system to play multiple games.

The simplest type of solid-state ROM is as old as the semiconductor technology itself. Combinational logic gates can be joined manually to map n-bit address input onto arbitrary values of m-bit data output (a look-up table). With the invention of the integrated circuit came mask ROM. Mask ROM consists of a grid of word lines (the address input) and bit lines (the data output), selectively joined together with transistor switches, and can represent an arbitrary look-up table with a regular physical layout and predictable propagation delay.

In mask ROM, the data is physically encoded in the circuit, so it can only be programmed during fabrication. This leads to a number of serious disadvantages:

  1. It is only economical to buy mask ROM in large quantities, since users must contract with a foundry to produce a custom design.
  2. The turnaround time between completing the design for a mask ROM and receiving the finished product is long, for the same reason.
  3. Mask ROM is impractical for R&D work since designers frequently need to modify the contents of memory as they refine a design.
  4. If a product is shipped with faulty mask ROM, the only way to fix it is to recall the product and physically replace the ROM in every unit shipped.

Subsequent developments have addressed these shortcomings. PROM, invented by Wen Tsing Chow in 1956, [2] [3] allowed users to program its contents exactly once by physically altering its structure with the application of high-voltage pulses. This addressed problems 1 and 2 above, since a company can simply order a large batch of fresh PROM chips and program them with the desired contents at its designers' convenience. The 1971 invention of EPROM essentially solved problem 3, since EPROM (unlike PROM) can be repeatedly reset to its unprogrammed state by exposure to strong ultraviolet light. EEPROM, developed by Yasuo Tarui, Yutaka Hayashi and Kiyoko Naga at the Electrotechnical Laboratory in 1972, [4] went a long way to solving problem 4, since an EEPROM can be programmed in-place if the containing device provides a means to receive the program contents from an external source (for example, a personal computer via a serial cable). Flash memory, invented by Fujio Masuoka at Toshiba in the early 1980s and commercialized in the late 1980s, is a form of EEPROM that makes very efficient use of chip area and can be erased and reprogrammed thousands of times without damage. It permits erasure and programming of only a specific part of the device, instead of the entire device. This can be done at high speed, hence the name "flash". [5] [6]

All of these technologies improved the flexibility of ROM, but at a significant cost-per-chip, so that in large quantities mask ROM would remain an economical choice for many years. (Decreasing cost of reprogrammable devices had almost eliminated the market for mask ROM by the year 2000.) Rewriteable technologies were envisioned as replacements for mask ROM.

The most recent development is NAND flash, also invented at Toshiba. Its designers explicitly broke from past practice, stating plainly that "the aim of NAND flash is to replace hard disks," [7] rather than the traditional use of ROM as a form of non-volatile primary storage. As of 2007, NAND has partially achieved this goal by offering throughput comparable to hard disks, higher tolerance of physical shock, extreme miniaturization (in the form of USB flash drives and tiny microSD memory cards, for example), and much lower power consumption.

Use for storing programs

Every stored-program computer may use a form of non-volatile storage (that is, storage that retains its data when power is removed) to store the initial program that runs when the computer is powered on or otherwise begins execution (a process known as bootstrapping, often abbreviated to "booting" or "booting up"). Likewise, every non-trivial computer needs some form of mutable memory to record changes in its state as it executes.

Forms of read-only memory were employed as non-volatile storage for programs in most early stored-program computers, such as ENIAC after 1948. (Until then it was not a stored-program computer as every program had to be manually wired into the machine, which could take days to weeks.) Read-only memory was simpler to implement since it needed only a mechanism to read stored values, and not to change them in-place, and thus could be implemented with very crude electromechanical devices (see historical examples below). With the advent of integrated circuits in the 1960s, both ROM and its mutable counterpart static RAM were implemented as arrays of transistors in silicon chips; however, a ROM memory cell could be implemented using fewer transistors than an SRAM memory cell, since the latter needs a latch (comprising 5-20 transistors) to retain its contents, while a ROM cell might consist of the absence (logical 0) or presence (logical 1) of one transistor connecting a bit line to a word line. [8] Consequently, ROM could be implemented at a lower cost-per-bit than RAM for many years.

Most home computers of the 1980s stored a BASIC interpreter or operating system in ROM as other forms of non-volatile storage such as magnetic disk drives were too costly. For example, the Commodore 64 included 64 KB of RAM and 20 KB of ROM contained a BASIC interpreter and the "KERNAL" of its operating system. Later home or office computers such as the IBM PC XT often included magnetic disk drives, and larger amounts of RAM, allowing them to load their operating systems from disk into RAM, with only a minimal hardware initialization core and bootloader remaining in ROM (known as the BIOS in IBM-compatible computers). This arrangement allowed for a more complex and easily upgradeable operating system.

In modern PCs, "ROM" (or flash) is used to store the basic bootstrapping firmware for the main processor, as well as the various firmware needed to internally control self-contained devices such as graphic cards, hard disks, DVD drives, TFT screens, etc., in the system. Today, many of these "read-only" memories – especially the BIOS – are often replaced with Flash memory (see below), to permit in-place reprogramming should the need for a firmware upgrade arise. However, simple and mature sub-systems (such as the keyboard or some communication controllers in the integrated circuits on the main board, for example) may employ mask ROM or OTP (one-time programmable).

ROM and successor technologies such as flash are prevalent in embedded systems. These are in everything from industrial robots to home appliances and consumer electronics (MP3 players, set-top boxes, etc.) all of which are designed for specific functions, but are based on general-purpose microprocessors. With software usually tightly coupled to hardware, program changes are rarely needed in such devices (which typically lack hard disks for reasons of cost, size, or power consumption). As of 2008, most products use Flash rather than mask ROM, and many provide some means for connecting to a PC for firmware updates; for example, a digital audio player might be updated to support a new file format. Some hobbyists have taken advantage of this flexibility to reprogram consumer products for new purposes; for example, the iPodLinux and OpenWrt projects have enabled users to run full-featured Linux distributions on their MP3 players and wireless routers, respectively.

ROM is also useful for binary storage of cryptographic data, as it makes them difficult to replace, which may be desirable in order to enhance information security.

Use for storing data

Since ROM (at least in hard-wired mask form) cannot be modified, it is only suitable for storing data which is not expected to need modification for the life of the device. To that end, ROM has been used in many computers to store look-up tables for the evaluation of mathematical and logical functions (for example, a floating-point unit might tabulate the sine function in order to facilitate faster computation). This was especially effective when CPUs were slow and ROM was cheap compared to RAM.

Notably, the display adapters of early personal computers stored tables of bitmapped font characters in ROM. This usually meant that the text display font could not be changed interactively. This was the case for both the CGA and MDA adapters available with the IBM PC XT.

The use of ROM to store such small amounts of data has disappeared almost completely in modern general-purpose computers. However, Flash ROM has taken over a new role as a medium for mass storage or secondary storage of files.

Types

The first EPROM, an Intel 1702, with the die and wire bonds clearly visible through the erase window. Eprom.jpg
The first EPROM, an Intel 1702, with the die and wire bonds clearly visible through the erase window.

Semiconductor-based

Classic mask-programmed ROM chips are integrated circuits that physically encode the data to be stored, and thus it is impossible to change their contents after fabrication. Other types of non-volatile solid-state memory permit some degree of modification:

By applying write protection, some types of reprogrammable ROMs may temporarily become read-only memory.

Other technologies

There are other types of non-volatile memory which are not based on solid-state IC technology, including:

Historical examples

Transformer matrix ROM (TROS), from the IBM System 360/20 IBM 360 20 TROS.jpg
Transformer matrix ROM (TROS), from the IBM System 360/20
  • Diode matrix ROM, used in small amounts in many computers in the 1960s as well as electronic desk calculators and keyboard encoders for terminals. This ROM was programmed by installing discrete semiconductor diodes at selected locations between a matrix of word line traces and bit line traces on a printed circuit board.
  • Resistor, capacitor, or transformer matrix ROM, used in many computers until the 1970s. Like diode matrix ROM, it was programmed by placing components at selected locations between a matrix of word lines and bit lines. ENIAC's Function Tables were resistor matrix ROM, programmed by manually setting rotary switches. Various models of the IBM System/360 and complex peripheral devices stored their microcode in either capacitor (called BCROS for balanced capacitor read-only storage on the 360/50 and 360/65, or CCROS for card capacitor read-only storage on the 360/30) or transformer (called TROS for transformer read-only storage on the 360/20, 360/40 and others) matrix ROM.
  • Core rope, a form of transformer matrix ROM technology used where size and weight were critical. This was used in NASA/MIT's Apollo Spacecraft Computers, DEC's PDP-8 computers, the Hewlett-Packard 9100A calculator, and other places. This type of ROM was programmed by hand by weaving "word line wires" inside or outside of ferrite transformer cores.
  • Diamond Ring stores, in which wires are threaded through a sequence of large ferrite rings that function only as sensing devices. These were used in TXE telephone exchanges.
  • The perforated metal character mask ("stencil") in Charactron cathode ray tubes, which was used as ROM to shape a wide electron beam to form a selected character shape on the screen either for display or a scanned electron beam to form a selected character shape as an overlay on a video signal.

Speed

Although the relative speed of RAM vs. ROM has varied over time, as of 2007 large RAM chips can be read faster than most ROMs. For this reason (and to allow uniform access), ROM content is sometimes copied to RAM or shadowed before its first use, and subsequently read from RAM.

Writing

For those types of ROM that can be electrically modified, writing speed has traditionally been much slower than reading speed, and it may need unusually high voltage, the movement of jumper plugs to apply write-enable signals, and special lock/unlock command codes. Modern NAND Flash achieves the highest write speeds of any rewritable ROM technology, with speeds as high as 10 GB/s, this has been enabled by the increased investment in both consumer and enterprise solid state drives and flash memory products for higher end mobile devices. On a technical level the gains have been achieved by increasing parallelism both in controller design and of storage, the use of large DRAM read/write caches and the implementation of memory cells which can store more than one bit (DLC, TLC and MLC). The latter approach is more failure prone but this has been largely mitigated by overprovisioning (the inclusion of spare capacity in a product which is visible only to the drive controller) and by increasingly sophisticated read/write algorithms in drive firmware.

Endurance and data retention

Because they are written by forcing electrons through a layer of electrical insulation onto a floating transistor gate, rewriteable ROMs can withstand only a limited number of write and erase cycles before the insulation is permanently damaged. In the earliest EPROMs, this might occur after as few as 1,000 write cycles, while in modern Flash EEPROM the endurance may exceed 1,000,000. The limited endurance, as well as the higher cost per bit, means that Flash-based storage is unlikely to completely supplant magnetic disk drives in the near future.[ citation needed ]

The timespan over which a ROM remains accurately readable is not limited by write cycling. The data retention of EPROM, EAROM, EEPROM, and Flash may be time-limited by charge leaking from the floating gates of the memory cell transistors. Early generation EEPROM's, in the mid 1980's generally cited 5 or 6 year data retention. A review of EEPROM's offered in the year 2020 shows manufacturers citing 100 year data retention. Adverse environments will reduce the retention time ( Leakage is accelerated by high temperatures or radiation ). Masked ROM and fuse/antifuse PROM do not suffer from this effect, as their data retention depends on physical rather than electrical permanence of the integrated circuit, although fuse re-growth was once a problem in some systems. [9]

Content images

The contents of ROM chips can be extracted with special hardware devices and relevant controlling software. This practice is common for, as a main example, reading the contents of older video game console cartridges. Another example is making backups of firmware/OS ROMs from older computers or other devices - for archival purposes, as in many cases, the original chips are PROMs and thus at risk of exceeding their usable data lifetime.

The resultant memory dump files are known as ROM images or abbreviated ROMs, and can be used to produce duplicate ROMs - for example to produce new cartridges or as digital files for playing in console emulators. The term ROM image originated when most console games were distributed on cartridges containing ROM chips, but achieved such widespread usage that it is still applied to images of newer games distributed on CD-ROMs or other optical media.

ROM images of commercial games, firmware, etc. usually contain copyrighted software. The unauthorized copying and distribution of copyrighted software is a violation of copyright laws in many jurisdictions, although duplication for backup purposes may be considered fair use depending on location. In any case, there is a thriving community engaged in the distribution and trading of such software and abandonware for preservation/sharing purposes.

Timeline

Date of introductionChip nameCapacity (bits)ROM type MOSFET Manufacturer(s) Process AreaRef
1956?? PROM ? Arma ?? [2] [3]
1965? 256-bit ROM Bipolar TTL Sylvania ?? [10]
1965?1 kb ROM MOS General Microelectronics ??
196933011 kbROM Bipolar Intel ?? [10]
1970? 512-bit PROMBipolar TTL Radiation ?? [11]
197117022 kb EPROM Static MOS (silicon gate)Intel?15 mm² [11] [12]
1974?4 kbROMMOS AMD, General Instrument ?? [10]
1974?? EAROM MNOS General Instrument ?? [11]
197527088 kbEPROM NMOS (FGMOS)Intel?? [13] [14]
1976?2 kb EEPROM MOS Toshiba ?? [15]
1977µCOM-43 (PMOS)16 kbPROM PMOS NEC ?? [16]
1977271616 kbEPROM TTL Intel?? [17] [18]
1978EA8316F16 kbROM NMOS Electronic Arrays ?436 mm² [10] [19]
1978µCOM-43 (CMOS)16 kbPROM CMOS NEC?? [16]
1978273232 kbEPROMNMOS (HMOS)Intel?? [13] [20]
1978236464 kbROMNMOSIntel?? [21]
1980?16 kbEEPROMNMOS Motorola 4,000 nm? [13] [22]
1981276464 kbEPROMNMOS (HMOS II)Intel3,500 nm ? [13] [22] [23]
1982?32 kbEEPROMMOSMotorola?? [22]
198227128128 kbEPROMNMOS (HMOS II)Intel?? [13] [22] [24]
1983?64 kbEPROMCMOS Signetics 3,000 nm? [22]
198327256256 kbEPROMNMOS (HMOS)Intel?? [13] [25]
1983?256 kbEPROMCMOS Fujitsu ?? [26]
January 1984MBM 276464 kbEEPROMNMOSFujitsu?528 mm² [27]
1984?512 kbEPROMNMOS AMD 1,700 nm? [22]
198427512512 kbEPROMNMOS (HMOS)Intel?? [13] [28]
1984?1 Mb EPROMCMOSNEC1,200 nm? [22]
1987?4 MbEPROMCMOSToshiba 800 nm ? [22]
1990?16 MbEPROMCMOSNEC 600 nm ? [22]
1993?8 Mb MROM CMOS Hyundai ?? [29]
1995?1 MbEEPROMCMOSHitachi?? [30]
1995?16 MbMROMCMOS AKM, Hitachi?? [30]

See also

Terminology

Notes

  1. Some discrete component ROM could be mechanically altered, e.g., by adding and removing transformers. IC ROMs, however, cannot be mechanically changed.

Related Research Articles

BIOS Firmware

BIOS is firmware used to perform hardware initialization during the booting process, and to provide runtime services for operating systems and programs. The BIOS firmware comes pre-installed on a personal computer's system board, and it is the first software to run when powered on. The name originates from the Basic Input/Output System used in the CP/M operating system in 1975. The BIOS originally proprietary to the IBM PC has been reverse engineered by companies looking to create compatible systems. The interface of that original system serves as a de facto standard.

Computer memory Device used on a computer for storing data

In computing, memory refers to a device that is used to store information for immediate use in a computer or related computer hardware device. It typically refers to semiconductor memory, specifically metal–oxide–semiconductor (MOS) memory, where data is stored within MOS memory cells on a silicon integrated circuit chip. The term "memory" is often synonymous with the term "primary storage". Computer memory operates at a high speed, for example random-access memory (RAM), as a distinction from storage that provides slow-to-access information but offers higher capacities. If needed, contents of the computer memory can be transferred to secondary storage; a very common way of doing this is through a memory management technique called "virtual memory". An archaic synonym for memory is store.

Microcontroller small computer on a single integrated circuit

A microcontroller is a small computer on a single metal-oxide-semiconductor (MOS) integrated circuit (IC) chip. In modern terminology, it is similar to, but less sophisticated than, a system on a chip (SoC); a SoC may include a microcontroller as one of its components. A microcontroller contains one or more CPUs along with memory and programmable input/output peripherals. Program memory in the form of ferroelectric RAM, NOR flash or OTP ROM is also often included on chip, as well as a small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general purpose applications consisting of various discrete chips.

In computing, booting is the process of starting a computer. It can be initiated by hardware such as a button press, or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its main memory, so some process must load software into memory before it can be executed. This may be done by hardware or firmware in the CPU, or by a separate processor in the computer system.

A programmable read-only memory (PROM) 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.

Flash memory Electronic non-volatile computer storage device

Flash memory is an electronic (solid-state) non-volatile computer memory storage medium that can be electrically erased and reprogrammed. The two main types of flash memory are named after the NAND and NOR logic gates. The individual flash memory cells, consisting of floating-gate MOSFETs, exhibit internal characteristics similar to those of the corresponding gates.

EEPROM Computer memory used for small quantities of data

EEPROM (also E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, integrated in microcontrollers for smart cards and remote keyless systems, and other electronic devices to store relatively small amounts of data but allowing individual bytes to be erased and reprogrammed.

Programmable logic device reprogrammable computer hardware technology

A programmable logic device (PLD) is an electronic component used to build reconfigurable digital circuits. Unlike integrated circuits (IC) which consist of logic gates and have a fixed function, a PLD has an undefined function at the time of manufacture. Before the PLD can be used in a circuit it must be programmed (reconfigured) by using a specialized program.

An EPROM, or erasable programmable read-only memory, is a type of programmable read-only memory (PROM) chip that retains its data when its power supply is switched off. Computer memory that can retrieve stored data after a power supply has been turned off and back on is called non-volatile. It is an array of floating-gate transistors individually programmed by an electronic device that supplies higher voltages than those normally used in digital circuits. Once programmed, an EPROM can be erased by exposing it to strong ultraviolet light source. EPROMs are easily recognizable by the transparent fused quartz window on the top of the package, through which the silicon chip is visible, and which permits exposure to ultraviolet light during erasing.

Non-volatile random-access memory (NVRAM) is random-access memory that retains data without applied power. This is in contrast to dynamic random-access memory (DRAM) and static random-access memory (SRAM), which both maintain data only for as long as power is applied, or such forms of memory as magnetic tape, which cannot be randomly accessed but which retains data indefinitely without electric power.

Mask ROM (MROM) is a type of read-only memory (ROM) whose contents are programmed by the integrated circuit manufacturer. The terminology mask comes from integrated circuit fabrication, where regions of the chip are masked off during the process of photolithography.

Non-volatile memory (NVM) or non-volatile storage is a type of computer memory that can retrieve stored information even after having been power cycled. In contrast, volatile memory needs constant power in order to retain data. Examples of non-volatile memory include flash memory, read-only memory (ROM), ferroelectric RAM, most types of magnetic computer storage devices, optical discs, and early computer storage methods such as paper tape and punched cards.

Programmer (hardware) device that configures programmable non-volatile integrated circuits

A programmer (hardware), device programmer, chip programmer, device burner, or PROM writer is a piece of electronic equipment that arranges written software to configure programmable non-volatile integrated circuits, called programmable devices. The target devices include PROM, EPROM, EEPROM, Flash memory, eMMC, MRAM, FeRAM, NVRAM, PLDs, PLAs, PALs, GALs, CPLDs, FPGAs, and microcontrollers.

Semiconductor memory is a digital electronic semiconductor device used for digital data storage, such as computer memory. It typically refers to MOS memory, where data is stored within metal–oxide–semiconductor (MOS) memory cells on a silicon integrated circuit memory chip. There are numerous different types using different semiconductor technologies. The two main types of random-access memory (RAM) are static RAM (SRAM), which uses several transistors per memory cell, and Dynamic random-access memory (DRAM), which uses a single transistor and MOS capacitor per cell. Non-volatile memory uses floating-gate memory cells, which consist of a single transistor per cell.

Charge trap flash (CTF) is a semiconductor memory technology used in creating non-volatile NOR and NAND flash memory. It is a type of floating-gate MOSFET memory technology, but differs from the conventional floating-gate technology in that it uses a silicon nitride film to store electrons rather than the doped polycrystalline silicon typical of a floating-gate structure. This approach allows memory manufacturers to reduce manufacturing costs five ways:

  1. Fewer process steps are required to form a charge storage node
  2. Smaller process geometries can be used
  3. Multiple bits can be stored on a single flash memory cell.
  4. Improved reliability
  5. Higher yield since the charge trap is less susceptible to point defects in the tunnel oxide layer

An electronic device or embedded system is said to be field-programmable or in-place programmable if its firmware can be modified "in the field," without disassembling the device or returning it to its manufacturer.

Random-access memory Form of computer data storage

Random-access memory is a form of computer memory that can be read and changed in any order, typically used to store working data and machine code. A random-access memory device allows data items to be read or written in almost the same amount of time irrespective of the physical location of data inside the memory. In contrast, with other direct-access data storage media such as hard disks, CD-RWs, DVD-RWs and the older magnetic tapes and drum memory, the time required to read and write data items varies significantly depending on their physical locations on the recording medium, due to mechanical limitations such as media rotation speeds and arm movement.

Single-board microcontroller microcontroller built onto a single printed circuit board

A single-board microcontroller is a microcontroller built onto a single printed circuit board. This board provides all of the circuitry necessary for a useful control task: a microprocessor, I/O circuits, a clock generator, RAM, stored program memory and any necessary support ICs. The intention is that the board is immediately useful to an application developer, without requiring them to spend time and effort to develop controller hardware.

Memory cell (computing) part of computer memory

The memory cell is the fundamental building block of computer memory. The memory cell is an electronic circuit that stores one bit of binary information and it must be set to store a logic 1 and reset to store a logic 0. Its value is maintained/stored until it is changed by the set/reset process. The value in the memory cell can be accessed by reading it.

George Perlegos Computer scientist and engineer

George Perlegos is a Greek-American computer scientist and engineer, best known for pioneering the use of EEPROM and founding Atmel.

References

  1. "flash ROM Definition from PC Magazine Encyclopedia". pcmag.com. Archived from the original on November 10, 2013.
  2. 1 2 Han-Way Huang (5 December 2008). Embedded System Design with C805. Cengage Learning. p. 22. ISBN   978-1-111-81079-5. Archived from the original on 27 April 2018.
  3. 1 2 Marie-Aude Aufaure; Esteban Zimányi (17 January 2013). Business Intelligence: Second European Summer School, eBISS 2012, Brussels, Belgium, July 15-21, 2012, Tutorial Lectures. Springer. p. 136. ISBN   978-3-642-36318-4. Archived from the original on 27 April 2018.
  4. Tarui, Y.; Hayashi, Y.; Nagai, K. (1972). "Electrically reprogrammable nonvolatile semiconductor memory". IEEE Journal of Solid-State Circuits. 7 (5): 369–375. Bibcode:1972IJSSC...7..369T. doi:10.1109/JSSC.1972.1052895. ISSN   0018-9200.
  5. "1987: Toshiba Launches NAND Flash". eWEEK.
  6. Detlev Richter (Sep 12, 2013). "Chapter 2. Fundamentals of Non-Volatile Memories". Flash Memories: Economic Principles of Performance, Cost and Reliability. Springer Science & Business Media. p. 6.
  7. See page 6 of Toshiba's 1993 NAND Flash Applications Design Guide Archived 2009-10-07 at the Wayback Machine .
  8. See chapters on "Combinatorial Digital Circuits" and "Sequential Digital Circuits" in Millman & Grable, Microelectronics, 2nd ed.
  9. "Memory Ic". transparentc. Archived from the original on 12 July 2016. Retrieved 22 July 2016.
  10. 1 2 3 4 "1965: Semiconductor Read-Only-Memory Chips Appear". Computer History Museum . Retrieved 20 June 2019.
  11. 1 2 3 "1971: Reusable semiconductor ROM introduced". Computer History Museum . Retrieved 19 June 2019.
  12. "1702A Datasheet" (PDF). Intel . Retrieved 6 July 2019.
  13. 1 2 3 4 5 6 7 "A chronological list of Intel products. The products are sorted by date" (PDF). Intel museum. Intel Corporation. July 2005. Archived from the original (PDF) on August 9, 2007. Retrieved July 31, 2007.
  14. "2708 Datasheet" (PDF). Intel . Retrieved 6 July 2019.
  15. Iizuka, H.; Masuoka, F.; Sato, Tai; Ishikawa, M. (1976). "Electrically alterable avalanche-injection-type MOS READ-ONLY memory with stacked-gate structure". IEEE Transactions on Electron Devices. 23 (4): 379–387. Bibcode:1976ITED...23..379I. doi:10.1109/T-ED.1976.18415. ISSN   0018-9383.
  16. 1 2 µCOM-43 SINGLE CHIP MICROCOMPUTER: USERS' MANUAL (PDF). NEC Microcomputers. January 1978. Retrieved 27 June 2019.
  17. "Intel: 35 Years of Innovation (1968–2003)" (PDF). Intel. 2003. Retrieved 26 June 2019.
  18. "2716: 16K (2K x 8) UV ERASABLE PROM" (PDF). Intel. Retrieved 27 June 2019.
  19. "1982 CATALOG" (PDF). NEC Electronics . Retrieved 20 June 2019.
  20. "2732A Datasheet" (PDF). Intel . Retrieved 6 July 2019.
  21. Component Data Catalog (PDF). Intel. 1978. pp. 1–3. Retrieved 27 June 2019.
  22. 1 2 3 4 5 6 7 8 9 "Memory". STOL (Semiconductor Technology Online). Retrieved 25 June 2019.
  23. "2764A Datasheet" (PDF). Intel. Retrieved 6 July 2019.
  24. "27128A Datasheet" (PDF). Intel. Retrieved 6 July 2019.
  25. "27256 Datasheet" (PDF). Intel . Retrieved 2 July 2019.
  26. "History of Fujitsu's Semiconductor Business". Fujitsu . Retrieved 2 July 2019.
  27. "MBM 2764" (PDF). Fujitsu. January 1984. Retrieved 21 June 2019.
  28. "D27512-30 Datasheet" (PDF). Intel . Retrieved 2 July 2019.
  29. "History: 1990s". SK Hynix . Retrieved 6 July 2019.
  30. 1 2 "Japanese Company Profiles" (PDF). Smithsonian Institution. 1996. Retrieved 27 June 2019.