Semiconductor memory

From Wikipedia, the free encyclopedia - View original article

Jump to: navigation, search

Semiconductor memory is an electronic data storage device, often used as computer memory, implemented on a semiconductor-based integrated circuit. It is made in many different types and technologies.

Semiconductor memory has the property of random access, which means that it takes the same amount of time to access any memory location, so data can be efficiently accessed in any random order.[1] This contrasts with data storage media such as hard disks and CDs which read and write data consecutively and therefore the data can only be accessed in the same sequence it was written. Semiconductor memory also has much faster access times than other types of data storage; a byte of data can be written to or read from semiconductor memory within a few nanoseconds, while access time for rotating storage such as hard disks is in the range of milliseconds. For these reasons it is used for main computer memory (primary storage), to hold data the computer is currently working on, among other uses.

Shift registers, processor registers, data buffers and other small digital registers that have no memory address decoding mechanism are not considered as memory although they also store digital data.


In a semiconductor memory chip, each bit of binary data is stored in a tiny circuit called a memory cell consisting of one to several transistors. The memory cells are laid out in rectangular arrays on the surface of the chip. The 1-bit memory cells are grouped in small units called words which are accessed together as a single memory address. Memory is manufactured in word length that is usually a power of two, typically N=1, 2, 4 or 8 bits.

Data is accessed by means of a binary memory address applied to the chip's address pins. If the memory address consists of M bits, the number of addresses on the chip is 2M, each containing an N bit word. Consequently, the amount of data stored in each chip is N2M bits.[1] Possible figures are 1, 2, 4, 8, 16, 32, 64, 128, 256 and 512 kilobits, megabits, gigabits and terabits, here defined by binary prefixes. Currently (2012) the largest semiconductor memory chips hold a few gigabits of data, but higher capacity memory is constantly being developed. By combining several integrated circuits, memory can be arranged into a larger word length and/or address space than what is offered by each chip, often but not necessarily a power of two.[1]

The two basic operations performed by a memory chip are "read", in which the data contents of a memory word is read out (nondestructively), and "write" in which data is stored in a memory word, replacing any data that was previously stored there.

In addition to standalone memory chips, blocks of semiconductor memory are integral parts of many computer and data processing integrated circuits. For example the microprocessor chips that run computers contain cache memory to store instructions awaiting execution.


RAM chips for computers usually come on removable memory modules like these. Additional memory can be added to the computer by plugging in additional modules.

RAM (Random access memory) has become a generic term for any semiconductor memory that can be written to, as well as read from, in contrast to ROM (below), which can only be read. It should be noted that all semiconductor memory, not just RAM, has the property of random access.

Volatile memory loses its stored data when the power to the memory chip is turned off. However it can be faster and less expensive than non-volatile memory. This type is used for the main memory in most computers, since data is stored on the hard disk while the computer is off. Major types are:[2][3]

Nonvolatile memory preserves the data stored in it during periods when the power to the chip is turned off. Therefore it is used for the memory in portable devices, which don't have disks, and for removable memory cards among other uses. Major types are:[2][3]


  1. ^ a b c Dawoud, Dawoud Shenouda; R. Peplow (2010). Digital System Design - Use of Microcontroller. River Publishers. pp. 255–258. ISBN 8792329403. 
  2. ^ a b Godse, A.P.; D.A.Godse (2008). Fundamentals of Computing and Programing. India: Technical Publications. p. 1.35. ISBN 8184315090. 
  3. ^ a b Arora, Ashok (2006). Foundations of Computer Science. Laxmi Publications. pp. 39–41. ISBN 8170089719.