Jump to content

Random-access memory: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Snydale (talk | contribs)
Undid revision 224125359 by 15.219.201.69 (talk) unexplained deletion of content
​Blanked the page
Line 1: Line 1:
{{redirect|RAM|other uses of the word|Ram}}

[[Image:Memory_module_DDRAM_20-03-2006.jpg|right|thumb|Example of [[read/write memory|writable]] [[volatile memory|volatile]] random access memory: [[Synchronous]] [[Dynamic RAM]] [[DIMM|modules]], primarily used as main memory in [[personal computers]], [[workstation]]s, and [[server]]s.]]
{{Memory types}}

'''Random access memory''' (usually known by its [[acronym]], '''RAM''') is a type of [[computer data storage]]. Today it takes the form of [[integrated circuit]]s that allow the stored [[data]] to be accessed in any order, i.e. at ''[[random access|random]]''. The word ''random'' thus refers to the fact that any piece of data can be returned in a [[constant time]], regardless of its physical location and whether or not it is related to the previous piece of data.<ref>''Strictly speaking, modern types of DRAM are therefore not truly (or technically) random access, as data are read in burst; the name DRAM has stuck however.''</ref>

This contrasts with storage mechanisms such as [[Magnetic tape|tapes]], magnetic discs and [[optical disc]]s, which rely on the physical movement of the recording medium or a reading head. In these devices, the movement takes longer than the data transfer, and the retrieval time varies depending on the physical location of the next item.

The word RAM is mostly associated with [[Volatile memory|volatile]] types of memory (such as [[DRAM]] [[DIMM|memory modules]]), where the information is lost after the power is switched off. However, many other types of memory are RAM as well (i.e. ''Random Access Memory''), including most types of [[read only memory|ROM]] and a kind of [[flash memory]] called ''[[flash memory#NOR flash|NOR-Flash]]''.

==History==
The first type of random access memory was the [[magnetic core memory]], developed in 1951, and used in all computers up until the development of the static and dynamic RAM integrated circuits in the late 1960s and early 1970s. Prior to the development of the magnetic core memory, computers used relays or vacuum tubes to perform memory functions.

== Overview ==
====Types of RAM====
Modern types of ''writable'' RAM generally store a bit of data in either the state of a [[flip-flop (electronics)|flip-flop]], as in [[static random access memory|SRAM]] (static RAM), or as a [[electric charge|charge]] in a [[capacitor]] (or [[transistor]] gate), as in [[dynamic random access memory|DRAM]] (dynamic RAM), [[EPROM]], [[EEPROM]] and [[flash memory|Flash]]. Some types have circuitry to detect and/or correct random faults called ''memory errors'' in the stored data, using [[RAM parity|parity bits]] or [[Error detection and correction|error correction codes]]. RAM of the ''read-only'' type, [[read only memory|ROM]], instead uses a metal mask to permanently enable/disable selected transistors, instead of storing a charge in them.

As both SRAM and DRAM are ''volatile'', other forms of computer storage, such as [[disk storage|disks]] and [[magnetic tape data storage|magnetic tapes]], have been used as "permanent" storage in traditional computers. Many newer products instead rely on [[flash memory]] to maintain data between sessions of use: examples include [[PDA]]s, small music players, mobile phones, synthesizers, advanced calculators, industrial instrumentaion and robotics, and many other types of products; even certain categories of [[personal computer]]s, such as the [[OLPC XO-1]], [[Asus Eee PC]], and others, have begun replacing magnetic disk with so called [[flash drive]]s (similar to fast [[memory card]]s equipped with an [[Integrated Drive Electronics|IDE]] or [[SATA]] interface).

There are two basic types of flash memory: the [[flash memory#NOR flash|NOR type]], which is capable of true random access, and the [[flash memory#NAND flash|NAND type]], which is not; the former is therefore often used in place of ROM, while the latter is used in most [[memory card]]s and [[solid-state drive]]s, due to a lower price.

====Memory hierarchy====
[[Image:NEC 128mb ram.JPG|right|thumb|One module of 128MB NEC SD-RAM.]]
Many computer systems have a memory hierarchy consisting of [[CPU register]]s, on-die [[Static random access memory|SRAM]] caches, external [[cache]]s, [[DRAM]], [[paging]] systems, and [[virtual memory]] or [[swap space]] on a hard drive. This entire pool of memory may be referred to as "RAM" by many developers, even though the various subsystems can have very different [[access time]]s, violating the original concept behind the ''random access'' term in RAM. Even within a hierarchy level such as DRAM, the specific row, column, bank, rank, channel, or [[interleave]] organization of the components make the access time variable, although not to the extent that rotating [[storage media]] or a tape is variable. (Generally, the memory hierarchy follows the access time with the fast CPU registers at the top and the slow hard drive at the bottom.)

In most modern personal computers, the RAM comes in easily upgraded form of modules called '''[[DIMM|memory module]]s''' or '''[[DIMM|DRAM module]]s''' about the size of a few sticks of chewing gum. These can quickly be replaced should they become damaged or too small for current purposes. As suggested above, ''smaller'' amounts of RAM (mostly SRAM) are also integrated in the [[CPU]] and other [[IC]]s on the [[motherboard]], as well as in hard-drives, [[CD-ROM]]s, and several other parts of the computer system.

=====Swapping=====
If a computer becomes low on RAM during intensive application cycles, the computer can resort to [[swapping]]. In this case, the computer temporarily uses [[hard drive]] space as additional memory. Constantly relying on this type of backup memory is called [[Thrash (computer science)|thrashing]], which is generally undesirable because it lowers overall system performance. In order to reduce the dependency on swapping, more RAM can be installed.

====Other uses of the term====
Other physical devices with read/write capability can have "RAM" in their names: for example, [[DVD-RAM]]. "Random access" is also the name of an indexing method: hence, disk storage is often called "random access" because the reading head can move relatively quickly from one piece of data to another, and does not have to read all the data in between. However the final "M" is crucial: "RAM" (provided there is no additional term as in "DVD-RAM") always refers to a solid-state device.
====="RAM disks"=====
Software can "partition" a portion of a computer's RAM, allowing it to act as a much faster hard drive that is called a [[RAM disk]]. Unless the memory used is non-volatile, a RAM disk loses the stored data when the computer is shut down. However, volatile memory can retain its data when the computer is shut down if it has a separate power source, usually a [[battery (electricity)|battery]].

==Recent developments==
Several new types of [[NVRAM|''non-volatile'' RAM]], which will preserve data while powered down, are under development. The technologies used include [[carbon nanotube]]s and the [[magnetic tunnel effect]]. In summer 2003, a 128 [[Kilobyte|KB]] [[MRAM|magnetic RAM]] chip manufactured with 0.18 µm technology was introduced. The core technology of MRAM is based on the magnetic tunnel effect. In June 2004, [[Infineon Technologies]] unveiled a 16 [[Megabyte|MB]] prototype again based on 0.18 µm technology. [[Nantero]] built a functioning carbon nanotube memory prototype 10 [[Gigabyte|GB]] array in 2004. Whether some of these technologies will be able to eventually take a significant market share from either DRAM, SRAM, or flash-memory technology, remains to be seen however.

In 2006, "[[Solid-state drive]]s" (based on flash memory) with capacities exceeding 150 gigabytes and speeds far exceeding traditional disks have become available. This development has started to blur the definition between traditional random access memory and "disks", dramatically reducing the difference in performance.

==Memory wall==
The "memory wall" is the growing disparity of speed between CPU and memory outside the CPU chip.
An important reason for this disparity is the limited communication bandwidth beyond chip boundaries.
From 1986 to 2000, [[Central processing unit|CPU]] speed improved at an annual rate
of 55% while memory speed only improved at 10%. Given these trends, it was expected
that memory latency would become an overwhelming [[bottleneck (engineering)|bottleneck]] in computer performance. <ref>The term was coined in [http://www.cs.virginia.edu/papers/Hitting_Memory_Wall-wulf94.pdf Hitting the Memory Wall: Implications of the Obvious (PDF)].</ref>

Currently, CPU speed improvements have slowed significantly partly due to major physical barriers and partly because current CPU designs have already hit the memory wall in some sense. Intel summarized these causes in their [http://www.intel.com/technology/magazine/computing/Platform-2015-0305.pdf Platform 2015 documentation (PDF)]:
<blockquote>
“First of all, as chip geometries shrink and clock frequencies rise, the transistor leakage current increases, leading to excess power consumption and heat (more on power consumption below). Secondly, the advantages of higher clock speeds are in part negated by memory latency, since memory access times have not been able to keep pace with increasing clock frequencies. Third, for certain applications, traditional serial architectures are becoming less efficient as processors get faster (due to the so-called [[Von Neumann architecture#Von Neumann bottleneck|Von Neumann bottleneck]]), further undercutting any gains that frequency increases might otherwise buy. In addition, partly due to limitations in the means of producing inductance within solid state devices, [[resistance-capacitance]] (RC) delays in signal transmission are growing as feature sizes shrink, imposing an additional bottleneck that frequency increases don't address.”
</blockquote>

The RC delays in signal transmission were also noted in [http://www.cs.utexas.edu/users/cart/trips/publications/isca00.pdf Clock Rate versus IPC: The End of the Road for Conventional Microarchitectures] which projects a maximum of 12.5% average annual CPU performance improvement between 2000 and 2014. The data on [http://www.intel.com/pressroom/kits/quickreffam.htm Intel Processors] clearly shows a slowdown in performance improvements in recent processors. However, Intel's new processors, [[Core 2 Duo]] (codenamed Conroe) show a significant improvement over previous [[Pentium 4]] processors; due to a more efficient architecture, performance increased while clock rate actually decreased.

==Security concerns==
Contrary to simple models (and perhaps common belief), the contents of modern SDRAM modules aren't lost immediately when the computer is shutdown; instead, the contents fade away - a process that takes only seconds at room temperatures, but which can be extended to minutes at low temperatures. As an example, it is therefore possible to get hold of an encryption key if it was stored in ordinary working memory (i.e. the SDRAM modules).<ref>[http://citp.princeton.edu/memory Cold Boot Attacks on Encryption Keys]</ref>

== See also ==
{{commons|RAM}}
<div class="references-small" style="-moz-column-count:2; column-count:2;">
* [[CAS latency]] (CL)
* [[SIMM]]
* [[DIMM]]
* [[DVD-RAM]]
* [[Dual-channel architecture]]
* [[Error detection and correction#Error-correcting code|Error-correcting code]] (ECC)
* [[Registered memory|Registered/Buffered memory]]
* [[Compact Flash]]
* [[PC card]]
* [[Memory shaving]]
* [[Static random access memory|Static RAM]] (SRAM)
* [[Spin Torque Transfer|STT RAM]] (Spin Torque Transfer RAM)
* [[NVRAM|Non-Volatile RAM]] (NVRAM)
* [[Dynamic random access memory|Dynamic RAM]] (DRAM)
** [[Fast Page Mode DRAM]]
** [[Dynamic random access memory#Extended Data Out .28EDO.29 DRAM|EDO RAM]] or Extended Data Out DRAM
** [[XDR DRAM]]
** [[SDRAM]] or Synchronous DRAM
*** [[DDR SDRAM]] or Double Data Rate Synchronous DRAM; now being replaced by [[DDR2 SDRAM]]
*** [[RDRAM]] or [[Rambus]] DRAM
</div>

== Terminology ==
;DRAM:[[Dynamic random access memory]]
;SRAM:[[Static random access memory]]

== Notes and references ==
{{reflist}}

==External links==
* [http://www.howstuffworks.com/ram.htm How RAM Works] &ndash; Article by Jeff Tyson and Dave Coustan
* [http://home.pacbell.net/dbk4297/memory_what_kind.html What kind of RAM] &ndash; Pictures and descriptions of RAM from Darrell's computer help and information site.

[[Category:Computer memory]]

[[af:Ewetoeganklike geheue]]
[[ar:ذاكرة الوصول العشوائي]]
[[bn:র‌্যান্ডম অ্যাক্সেস মেমোরি]]
[[bs:RAM]]
[[br:Memor bresk]]
[[bg:Памет с произволен достъп]]
[[ca:RAM]]
[[cs:RAM]]
[[da:RAM]]
[[de:Random Access Memory]]
[[et:Muutmälu]]
[[el:Μνήμη τυχαίας προσπέλασης]]
[[es:Memoria de acceso aleatorio]]
[[eo:Ĉefmemoro]]
[[eu:RAM]]
[[fa:حافظه دسترسی تصادفی]]
[[fr:Mémoire vive]]
[[fur:RAM]]
[[ga:Cuimhne randamrochtana]]
[[gl:Memoria de acceso aleatorio]]
[[ko:램]]
[[hr:RAM]]
[[id:RAM]]
[[is:RAM]]
[[it:Random access memory]]
[[he:זיכרון גישה אקראית]]
[[ka:ოპერატიული მეხსიერება]]
[[sw:RAM]]
[[la:RAM]]
[[lv:Brīvpiekļuves atmiņa]]
[[hu:Tetszőleges hozzáférésű memória]]
[[ml:റാം]]
[[ms:Ingatan capaian rawak]]
[[nl:Random Access Memory]]
[[ja:Random Access Memory]]
[[no:RAM]]
[[nn:Random Access Memory]]
[[pl:Pamięć o dostępie swobodnym]]
[[pt:Memória RAM]]
[[ro:Memorie cu acces aleator]]
[[ru:Запоминающее устройство с произвольным доступом]]
[[sq:RAM]]
[[simple:Random access memory]]
[[sk:Pamäť s priamym prístupom]]
[[sl:Bralno-pisalni pomnilnik]]
[[sr:RAM]]
[[sh:RAM]]
[[fi:Keskusmuisti]]
[[sv:Random Access Memory]]
[[th:แรม]]
[[vi:RAM]]
[[tg:Хотираи дастраси аҳёнӣ]]
[[tr:RAM]]
[[uk:Оперативна пам'ять]]
[[yi:RAM]]
[[zh:随机存取存储器]]

Revision as of 13:13, 7 July 2008