Jump to content

Examine individual changes

This page allows you to examine the variables generated by the Edit Filter for an individual change.

Variables generated for this change

VariableValue
Edit count of the user (user_editcount)
null
Name of the user account (user_name)
'102.90.58.86'
Age of the user account (user_age)
0
Groups (including implicit) the user is in (user_groups)
[ 0 => '*' ]
Rights that the user has (user_rights)
[ 0 => 'createaccount', 1 => 'read', 2 => 'edit', 3 => 'createtalk', 4 => 'writeapi', 5 => 'viewmyprivateinfo', 6 => 'editmyprivateinfo', 7 => 'editmyoptions', 8 => 'abusefilter-log-detail', 9 => 'urlshortener-create-url', 10 => 'centralauth-merge', 11 => 'abusefilter-view', 12 => 'abusefilter-log', 13 => 'vipsscaler-test' ]
Whether the user is editing from mobile app (user_app)
false
Whether or not a user is editing through the mobile interface (user_mobile)
true
Page ID (page_id)
74567
Page namespace (page_namespace)
0
Page title without namespace (page_title)
'Dynamic random-access memory'
Full page title (page_prefixedtitle)
'Dynamic random-access memory'
Edit protection level of the page (page_restrictions_edit)
[]
Last ten users to contribute to the page (page_recent_contributors)
[ 0 => '178.164.130.162', 1 => 'Jamedeus', 2 => '2409:40D1:19:EE42:1DA5:BA3A:A6ED:1790', 3 => 'Beland', 4 => 'Zac67', 5 => 'ReadOnlyAccount', 6 => 'GreenC bot', 7 => 'Maxeto0910', 8 => 'Kvng', 9 => '2402:8100:398D:D7D7:3950:A2FF:43BA:C2ED' ]
Page age in seconds (page_age)
678829401
Action (action)
'edit'
Edit summary/reason (summary)
''
Old content model (old_content_model)
'wikitext'
New content model (new_content_model)
'wikitext'
Old page wikitext, before the edit (old_wikitext)
'{{Short description|Type of computer memory}} {{Redirect|DRAM||Dram (disambiguation){{!}}Dram}} {{Hatnote|{{BDprefix|p=b}}}} {{citation style|date=April 2019}} {{Memory types}} [[Image:MT4C1024-HD.jpg|thumb|right|upright=1.8|A [[Die (integrated circuit)|die]] photograph of the [[Micron Technology]] MT4C1024 DRAM [[integrated circuit]] (1994). It has a capacity of 1&nbsp;[[megabit]] equivalent to <math>2^{20}</math>bits or {{nowrap|128 [[KiB]].}}<ref name=mt4acid>{{cite web |access-date=2016-04-02 |date=2012-11-15 |title=How to "open" microchip and what's inside? : ZeptoBars |url=http://zeptobars.com/en/read/how-to-open-microchip-asic-what-inside |quote=Micron MT4C1024 — 1 mebibit (220 bit) dynamic ram. Widely used in 286 and 386-era computers, early 90s. Die size - 8662x3969μm. |url-status=live |archive-url=https://web.archive.org/web/20160314015357/http://zeptobars.com/en/read/how-to-open-microchip-asic-what-inside |archive-date=2016-03-14 }}</ref>]] [[File:NeXTcube motherboard.jpg|thumb|[[Motherboard]] of the [[NeXTcube]] computer, 1990, with 64 MiB main memory DRAM (top left) and 256 KiB of [[Video RAM (dual-ported DRAM)|VRAM]]<ref>{{cite web|url=http://www.nextcomputers.org/NeXTfiles/Docs/Hardware/NeXTServiceManualPages1-160_OCR.pdf |title=NeXTServiceManualPages1-160 |date= |access-date=2022-03-09}}</ref> (lower edge, right of middle)]] '''Dynamic random-access memory''' ('''dynamic RAM''' or '''DRAM''') is a type of [[random-access memory|random-access]] [[semiconductor memory]] that stores each [[bit]] of data in a [[memory cell (computing)|memory cell]], usually consisting of a tiny [[capacitor]] and a [[transistor]], both typically based on [[metal–oxide–semiconductor]] (MOS) technology. While most DRAM memory cell designs use a capacitor and transistor, some only use two transistors. In the designs where a capacitor is used, the capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The [[electric charge]] on the capacitors gradually leaks away; without intervention the data on the capacitor would soon be lost. To prevent this, DRAM requires an external ''[[memory refresh]]'' circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to [[static random-access memory]] (SRAM) which does not require data to be refreshed. Unlike [[flash memory]], DRAM is [[volatile memory]] (vs. [[non-volatile memory]]), since it loses its data quickly when power is removed. However, DRAM does exhibit limited [[data remanence]]. DRAM typically takes the form of an [[integrated circuit]] chip, which can consist of dozens to billions of DRAM memory cells. DRAM chips are widely used in [[digital electronics]] where low-cost and high-capacity [[computer memory]] is required. One of the largest applications for DRAM is the ''[[main memory]]'' (colloquially called the "RAM") in modern [[computer]]s and [[graphics card]]s (where the "main memory" is called the ''[[Video random access memory|graphics memory]]''). It is also used in many portable devices and [[video game]] consoles. In contrast, SRAM, which is faster and more expensive than DRAM, is typically used where speed is of greater concern than cost and size, such as the [[CPU cache|cache memories]] in [[Central processing unit|processor]]s. The need to refresh DRAM demands more complicated circuitry and timing than SRAM. This is offset by the structural simplicity of DRAM memory cells: only one transistor and a capacitor are required per bit, compared to four or six transistors in SRAM. This allows DRAM to reach very high [[Computer storage density|densities]] with a simultaneous reduction in cost per bit. Refreshing the data consumes power and a variety of techniques are used to manage the overall power consumption. DRAM had a 47% increase in the price-per-bit in 2017, the largest jump in 30 years since the 45% jump in 1988, while in recent years the price has been going down.<ref>{{cite web|url=http://www.icinsights.com/news/bulletins/Are-The-Major-DRAM-Suppliers-Stunting-DRAM-Demand/|title=Are the Major DRAM Suppliers Stunting DRAM Demand?|website=www.icinsights.com|access-date=2018-04-16|url-status=live|archive-url=https://web.archive.org/web/20180416202834/http://www.icinsights.com/news/bulletins/Are-The-Major-DRAM-Suppliers-Stunting-DRAM-Demand/|archive-date=2018-04-16}}</ref> In 2018, a "key characteristic of the DRAM market is that there are currently only three major suppliers — [[Micron Technology]], [[SK Hynix]] and [[Samsung Electronics]]" that are "keeping a pretty tight rein on their capacity".<ref>{{Cite web |last1=EETimes |last2=Hilson |first2=Gary |date=2018-09-20 |title=DRAM Boom and Bust is Business as Usual |url=https://www.eetimes.com/dram-boom-and-bust-is-business-as-usual/ |access-date=2022-08-03 |website=EETimes}}</ref> There is also [[Kioxia]] (previously [[Toshiba]] Memory Corporation after 2017 spin-off). Other manufacturers make and sell [[DIMM]]s (but not the DRAM chips in them), such as [[Kingston Technology]], and some manufacturers that sell [[stacked DRAM]] (used e.g. in the fastest [[supercomputer]]s on the [[exascale computing|exascale]]), separately such as [[Viking Technology]]. Others sell such integrated into other products, such as [[Fujitsu]] into its CPUs, AMD in GPUs, and [[Nvidia]], with [[HBM2]] in some of their GPU chips. ==History== [[File:Original 1T1C DRAM design.svg|thumb|upright=1.6|A schematic drawing depicting the cross-section of the original one-transistor, one-capacitor [[NMOS logic|NMOS]] DRAM cell. It was patented in 1968.]] The [[cryptanalysis|cryptanalytic]] machine code-named ''"Aquarius"'' used at [[Bletchley Park]] during [[World War II]] incorporated a hard-wired dynamic memory. Paper tape was read and the characters on it "were remembered in a dynamic store. ... The store used a large bank of capacitors, which were either charged or not, a charged capacitor representing cross (1) and an uncharged capacitor dot (0). Since the charge gradually leaked away, a periodic pulse was applied to top up those still charged (hence the term 'dynamic')".<ref>{{cite book |first1=B. Jack |last1=Copeland |title=Colossus: The secrets of Bletchley Park's code-breaking computers |url=https://books.google.com/books?id=YiiQDwAAQBAJ&pg=PA301 |date=2010 |publisher=Oxford University Press |isbn=978-0-19-157366-8 |page=301}}</ref> [[Toshiba]] invented and introduced a dynamic RAM for its [[electronic calculator]] ''"Toscal" BC-1411'' , which was introduced in November 1965,<ref name="toscal">{{cite web|url=http://www.oldcalculatormuseum.com/s-toshbc1411.html|title=Spec Sheet for Toshiba "TOSCAL" BC-1411|website=www.oldcalculatormuseum.com|access-date=8 May 2018|url-status=live|archive-url=https://web.archive.org/web/20170703071307/http://www.oldcalculatormuseum.com/s-toshbc1411.html|archive-date=3 July 2017}}</ref><ref>[http://collection.sciencemuseum.org.uk/objects/co8406093/toscal-bc-1411-calculator-with-electronic-calculator Toscal BC-1411 calculator] {{webarchive|url=https://web.archive.org/web/20170729145228/http://collection.sciencemuseum.org.uk/objects/co8406093/toscal-bc-1411-calculator-with-electronic-calculator |date=2017-07-29 }}, [[Science Museum, London]]</ref> it used a form of capacitive DRAM (180 bit) built from discrete [[Bipolar transistor|bipolar]] memory cells.<ref name="toscal"/><ref>[http://www.oldcalculatormuseum.com/toshbc1411.html Toshiba "Toscal" BC-1411 Desktop Calculator] {{webarchive|url=https://web.archive.org/web/20070520202433/http://www.oldcalculatormuseum.com/toshbc1411.html |date=2007-05-20 }}</ref> In 1967, Tomohisa Yoshimaru and Hiroshi Komikawa from Toshiba applied for an American patent of the concept with a priority of May, 1966 due to an early Japanese application.<ref>{{cite web |title=Memory Circuit |url= https://patents.google.com/patent/US3550092A/en?q=(memory+)&assignee=Toshiba+Corp&before=priority:19670101&after=priority:19640101|website=[[Google Patents]] |access-date=18 June 2023}}</ref> The earliest forms of DRAM mentioned above used [[bipolar transistors]]. While it offered improved performance over [[magnetic-core memory]], bipolar DRAM could not compete with the lower price of the then-dominant magnetic-core memory.<ref>{{cite web |title=1966: Semiconductor RAMs Serve High-speed Storage Needs |url=https://www.computerhistory.org/siliconengine/semiconductor-rams-serve-high-speed-storage-needs/ |website=Computer History Museum}}</ref> Capacitors had also been used for earlier memory schemes, such as the drum of the [[Atanasoff–Berry Computer]], the [[Williams tube]] and the [[Selectron tube]]. In 1966, Dr. [[Robert Dennard]] at the [[IBM Thomas J. Watson Research Center]] was working on MOS memory and was trying to create an alternative to SRAM which required six MOS transistors for each [[bit]] of data. While examining the characteristics of MOS technology, he found it was capable of building capacitors, and that storing a charge or no charge on the MOS capacitor could represent the 1 and 0 of a bit, while the MOS transistor could control writing the charge to the capacitor. This led to his development of the single-transistor MOS DRAM memory cell.<ref>{{cite web |title=IBM100 — DRAM |url=https://www.ibm.com/ibm/history/ibm100/us/en/icons/dram/ |website=IBM |date=9 August 2017}}</ref> He filed a patent in 1967, and was granted U.S. patent number [https://web.archive.org/web/20151231134927/http://patft1.uspto.gov/netacgi/nph-Parser?patentnumber=3387286 3,387,286] in 1968.<ref>{{cite web |title=Robert Dennard |url=https://www.britannica.com/biography/Robert-Dennard |website=Encyclopedia Britannica|date=September 2023 }}</ref> MOS memory offered higher performance, was cheaper, and consumed less power, than magnetic-core memory.<ref name="computerhistory1970">{{cite web |title=1970: Semiconductors compete with magnetic cores |url=https://www.computerhistory.org/storageengine/semiconductors-compete-with-magnetic-cores/ |website=[[Computer History Museum]]}}</ref> MOS DRAM chips were commercialized in 1969 by Advanced Memory Systems, Inc of [[Sunnyvale, California|Sunnyvale, CA]]. This 1024 bit chip was sold to [[Honeywell]], [[Raytheon]], [[Wang Laboratories]], and others. The same year, Honeywell asked [[Intel]] to make a DRAM using a three-transistor cell that they had developed. This became the Intel 1102 in early 1970.<ref>{{cite web|url=http://inventors.about.com/library/weekly/aa100898.htm|archive-url=https://archive.today/20130306105823/http://inventors.about.com/library/weekly/aa100898.htm|url-status=dead|archive-date=March 6, 2013|title=Who Invented the Intel 1103 DRAM Chip?|publisher=ThoughtCo|author=Mary Bellis|date=23 Feb 2018|access-date=27 Feb 2018}}</ref> However, the 1102 had many problems, prompting Intel to begin work on their own improved design, in secrecy to avoid conflict with Honeywell. This became the first commercially available DRAM, the [[Intel 1103]], in October 1970, despite initial problems with low yield until the fifth revision of the [[photomask|mask]]s. The 1103 was designed by Joel Karp and laid out by Pat Earhart. The masks were cut by Barbara Maness and Judy Garcia.<ref>{{cite web |url=http://archive.computerhistory.org/resources/still-image/PENDING/X3665.2007/Semi_SIG/Notes%20from%20interview%20with%20John%20Reed.pdf |title=Archived copy |access-date=2014-01-15 |url-status=dead |archive-url=https://web.archive.org/web/20140116124021/http://archive.computerhistory.org/resources/still-image/PENDING/X3665.2007/Semi_SIG/Notes%20from%20interview%20with%20John%20Reed.pdf |archive-date=2014-01-16 }}</ref>{{original research inline|date=December 2016}} MOS memory overtook magnetic-core memory as the dominant memory technology in the early 1970s.<ref name="computerhistory1970"/> The first DRAM with multiplexed row and column [[address bus|address lines]] was the [[Mostek]] MK4096 4&nbsp;Kbit DRAM designed by Robert Proebsting and introduced in 1973. This addressing scheme uses the same address pins to receive the low half and the high half of the address of the memory cell being referenced, switching between the two halves on alternating bus cycles. This was a radical advance, effectively halving the number of address lines required, which enabled it to fit into packages with fewer pins, a cost advantage that grew with every jump in memory size. The MK4096 proved to be a very robust design for customer applications. At the 16&nbsp;Kbit density, the cost advantage increased; the 16&nbsp;Kbit Mostek MK4116 DRAM,<ref>{{cite web |first=Ken |last=Shirriff |title=Reverse-engineering the classic MK4116 16-kilobit DRAM chip |date=November 2020 |url=http://www.righto.com/2020/11/reverse-engineering-classic-mk4116-16.html}}</ref><ref>{{cite web |first=Robert |last=Proebsting |interviewer=Hendrie, Gardner |title=Oral History of Robert Proebsting |date=14 September 2005 |publisher=Computer History Museum |id=X3274.2006 |url=https://www.cs.utexas.edu/~hunt/class/2016-spring/cs350c/documents/Robert-Proebsting.pdf}}</ref> introduced in 1976, achieved greater than 75% worldwide DRAM market share. However, as density increased to 64&nbsp;Kbit in the early 1980s, Mostek and other US manufacturers were overtaken by Japanese DRAM manufacturers, which dominated the US and worldwide markets during the 1980s and 1990s. Early in 1985, [[Gordon Moore]] decided to withdraw Intel from producing DRAM.<ref>[http://www.shmj.or.jp/makimoto/en/pdf/makimoto_E_01_12.pdf "Outbreak of Japan-US Semiconductor War"] {{Webarchive|url=https://web.archive.org/web/20200229223250/http://www.shmj.or.jp/makimoto/en/pdf/makimoto_E_01_12.pdf |date=2020-02-29 }}</ref> By 1986, all United States chip makers had stopped making DRAMs.<ref> {{cite book |first1=William R. |last1=Nester |title=American Industrial Policy: Free or Managed Markets? |url=https://books.google.com/books?id=hCi_DAAAQBAJ |date=2016 |publisher=Springer |isbn=978-1-349-25568-9 |page=115}} </ref> In 1985, when 64K DRAM memory chips were the most common memory chips used in computers, and when more than 60 percent of those chips were produced by Japanese companies, semiconductor makers in the United States accused Japanese companies of [[export dumping]] for the purpose of driving makers in the United States out of the commodity memory chip business. Prices for the 64K product plummeted to as low as 35 cents apiece from $3.50 within 18 months, with disastrous financial consequences for some U.S. firms. On 4 December 1985 the US Commerce Department's International Trade Administration ruled in favor of the complaint.<ref> {{cite news |first1=David E. |last1=Sanger |url=https://www.nytimes.com/1985/08/03/business/japan-chip-dumping-is-found.html |title=Japan chip 'dumping' is found |newspaper=New York Times |date=3 August 1985}} <br/> {{cite news |first1=Donald |last1=Woutat. |url=https://www.latimes.com/archives/la-xpm-1985-12-04-fi-625-story.html |title=6 Japan Chip Makers Cited for Dumping |newspaper=Los Angeles Times |date=4 November 1985}} <br/> {{cite news |url=https://www.latimes.com/archives/la-xpm-1986-03-14-fi-20761-story.html |title=More Japan Firms Accused: U.S. Contends 5 Companies Dumped Chips |newspaper=Los Angeles Times |date=1986}} <br/> {{cite news |first1=David E. |last1=Sanger |url=https://www.nytimes.com/1987/11/03/business/japanese-chip-dumping-has-ended-us-finds.html |title=Japanese Chip Dumping Has Ended, U.S. Finds |newspaper=New York Times |date=3 November 1987}} </ref> [[Synchronous dynamic random-access memory]] (SDRAM) was developed by [[Samsung]]. The first commercial SDRAM chip was the Samsung KM48SL2000, which had a capacity of 16{{nbsp}}[[Mebibit|Mb]],<ref name="electronic-design">{{cite journal |title=Electronic Design |journal=[[Electronic Design]] |date=1993 |volume=41 |issue=15–21 |url=https://books.google.com/books?id=QmpJAQAAIAAJ |publisher=Hayden Publishing Company |quote=The first commercial synchronous DRAM, the Samsung 16-Mbit KM48SL2000, employs a single-bank architecture that lets system designers easily transition from asynchronous to synchronous systems.}}</ref> and was introduced in 1992.<ref>{{cite web |title=KM48SL2000-7 Datasheet |url=https://www.datasheetarchive.com/KM48SL2000-7-datasheet.html |publisher=[[Samsung]] |access-date=19 June 2019 |date=August 1992}}</ref> The first commercial [[DDR SDRAM]] ([[double data rate]] SDRAM) memory chip was Samsung's 64{{nbsp}}Mb DDR SDRAM chip, released in 1998.<ref>{{cite news |title=Samsung Electronics Develops First 128Mb SDRAM with DDR/SDR Manufacturing Option |url=https://www.samsung.com/semiconductor/insights/news-events/samsung-electronics-develops-first-128mb-sdram-with-ddr-sdr-manufacturing-option/ |access-date=23 June 2019 |work=[[Samsung Electronics]] |publisher=[[Samsung]] |date=10 February 1999}}</ref> Later, in 2001, Japanese DRAM makers accused Korean DRAM manufacturers of dumping.<ref> {{cite web |author1=Kuriko Miyake |url=http://edition.cnn.com/2001/TECH/industry/10/25/chip.dumping.idg/ |title=Japanese chip makers say they suspect dumping by Korean firms |publisher=CNN |date=2001}} <br/> {{cite news |url=https://www.itworld.com/article/2794396/japanese-chip-makers-suspect-dumping-by-korean-firms.html |title=Japanese chip makers suspect dumping by Korean firms |newspaper=ITWorld |date=2001}} <br/> {{cite web |url=https://www.eetimes.com/dram-pricing-investigation-in-japan-targets-hynix-samsung/ |title=DRAM pricing investigation in Japan targets Hynix, Samsung |date=2001 |publisher=EETimes }} <br/> {{cite web |url=https://phys.org/news/2006-01-korean-dram-japan.html |title=Korean DRAM finds itself shut out of Japan |publisher=Phys.org |date=2006 }} </ref> In 2002, US computer makers made claims of [[DRAM price fixing]]. =={{Anchor|ROW}}Principles of operation== [[Image:square array of mosfet cells read.png|thumb|250px|The principles of operation for reading a simple 4 <math>\times</math>4 DRAM array]] [[Image:DRAM_cell_field_(details).png|thumb|250px|Basic structure of a DRAM cell array]] DRAM is usually arranged in a rectangular array of charge storage cells consisting of one capacitor and transistor per data bit. The figure to the right shows a simple example with a four-by-four cell matrix. Some DRAM matrices are many thousands of cells in height and width.<ref>{{cite web |url = http://www.eng.utah.edu/~cs7810/pres/11-7810-12.pdf |title = Lecture 12: DRAM Basics |date = 2011-02-17 |access-date = 2015-03-10 |website = utah.edu |url-status = live |archive-url = https://web.archive.org/web/20150616050009/http://www.eng.utah.edu/~cs7810/pres/11-7810-12.pdf |archive-date = 2015-06-16 }}</ref><ref>{{cite web |url = https://www.cs.princeton.edu/courses/archive/fall04/cos471/lectures/20-Memory.pdf |title = Lecture 20: Memory Technology |date = 2004-11-23 |access-date = 2015-03-10 |author = David August |website = cs.princeton.edu |pages = 3–5 |url-status = dead |archive-url = https://web.archive.org/web/20050519185856/http://www.cs.princeton.edu/courses/archive/fall04/cos471/lectures/20-Memory.pdf |archive-date = 2005-05-19 }}</ref> The long horizontal lines connecting each row are known as word-lines. Each column of cells is composed of two bit-lines, each connected to every other storage cell in the column (the illustration to the right does not include this important detail). They are generally known as the "+" and "−" bit lines. A [[sense amplifier]] is essentially a pair of cross-connected [[inverter (logic gate)|inverter]]s between the bit-lines. The first inverter is connected with input from the + bit-line and output to the − bit-line. The second inverter's input is from the − bit-line with output to the + bit-line. This results in [[positive feedback]] which stabilizes after one bit-line is fully at its highest voltage and the other bit-line is at the lowest possible voltage. ===Operations to read a data bit from a DRAM storage cell=== # The sense amplifiers are disconnected.<ref name="Kenner:24,30">{{harvnb|Keeth|Baker|Johnson|Lin|2007|pp=24–30}}</ref> # The bit-lines are precharged to exactly equal voltages that are in between high and low logic levels (e.g., 0.5&nbsp;V if the two levels are 0 and 1&nbsp;V). The bit-lines are physically symmetrical to keep the capacitance equal, and therefore at this time their voltages are equal.<ref name="Kenner:24,30"/> # The precharge circuit is switched off. Because the bit-lines are relatively long, they have enough [[capacitance]] to maintain the precharged voltage for a brief time. This is an example of [[dynamic logic (digital logic)|dynamic logic]].<ref name="Kenner:24,30"/> # The desired row's word-line is then driven high to connect a cell's storage capacitor to its bit-line. This causes the transistor to conduct, transferring [[Electric charge|charge]] from the storage cell to the connected bit-line (if the stored value is 1) or from the connected bit-line to the storage cell (if the stored value is 0). Since the capacitance of the bit-line is typically much higher than the capacitance of the storage cell, the voltage on the bit-line increases very slightly if the storage cell's capacitor is discharged and decreases very slightly if the storage cell is charged (e.g., 0.54 and 0.45&nbsp;V in the two cases). As the other bit-line holds 0.50&nbsp;V there is a small voltage difference between the two twisted bit-lines.<ref name="Kenner:24,30"/> # The sense amplifiers are now connected to the bit-lines pairs. Positive feedback then occurs from the cross-connected inverters, thereby amplifying the small voltage difference between the odd and even row bit-lines of a particular column until one bit line is fully at the lowest voltage and the other is at the maximum high voltage. Once this has happened, the row is "open" (the desired cell data is available).<ref name="Kenner:24,30"/> # All storage cells in the open row are sensed simultaneously, and the sense amplifier outputs latched. A column address then selects which latch bit to connect to the external data bus. Reads of different columns in the same row can be performed without a [[Memory timings|row opening delay]] because, for the open row, all data has already been sensed and latched.<ref name="Kenner:24,30"/> # While reading of columns in an open row is occurring, current is flowing back up the bit-lines from the output of the sense amplifiers and recharging the storage cells. This reinforces (i.e. "refreshes") the charge in the storage cell by increasing the voltage in the storage capacitor if it was charged to begin with, or by keeping it discharged if it was empty. Note that due to the length of the bit-lines there is a fairly long propagation delay for the charge to be transferred back to the cell's capacitor. This takes significant time past the end of sense amplification, and thus overlaps with one or more column reads.<ref name="Kenner:24,30"/> # When done with reading all the columns in the current open row, the word-line is switched off to disconnect the storage cell capacitors (the row is "closed") from the bit-lines. The sense amplifier is switched off, and the bit-lines are precharged again.<ref name="Kenner:24,30"/> ===To write to memory=== [[File:Square array of mosfet cells write.png|thumb|250px|right|Writing to a DRAM cell]] To store data, a row is opened and a given column's sense amplifier is temporarily forced to the desired high or low voltage state, thus causing the bit-line to charge or discharge the cell storage capacitor to the desired value. Due to the sense amplifier's positive feedback configuration, it will hold a bit-line at stable voltage even after the forcing voltage is removed. During a write to a particular cell, all the columns in a row are sensed simultaneously just as during reading, so although only a single column's storage-cell capacitor charge is changed, the entire row is refreshed (written back in), as illustrated in the figure to the right.<ref name="Kenner:24,30"/> ===Refresh rate=== {{Main|Memory refresh}} {{See also|#Security}} Typically, manufacturers specify that each row must be refreshed every 64&nbsp;ms or less, as defined by the [[JEDEC]] standard. Some systems refresh every row in a burst of activity involving all rows every 64&nbsp;ms. Other systems refresh one row at a time staggered throughout the 64&nbsp;ms interval. For example, a system with 2<sup>13</sup>&nbsp;=&nbsp;8,192 rows would require a staggered [[refresh rate]] of one row every 7.8&nbsp;μs which is 64&nbsp;ms divided by 8,192 rows. A few real-time systems refresh a portion of memory at a time determined by an external timer function that governs the operation of the rest of a system, such as the [[vertical blanking interval]] that occurs every 10–20&nbsp;ms in video equipment. The row address of the row that will be refreshed next is maintained by external logic or a [[Counter (digital)|counter]] within the DRAM. A system that provides the row address (and the refresh command) does so to have greater control over when to refresh and which row to refresh. This is done to minimize conflicts with memory accesses, since such a system has both knowledge of the memory access patterns and the refresh requirements of the DRAM. When the row address is supplied by a counter within the DRAM, the system relinquishes control over which row is refreshed and only provides the refresh command. Some modern DRAMs are capable of self-refresh; no external logic is required to instruct the DRAM to refresh or to provide a row address. Under some conditions, most of the data in DRAM can be recovered even if the DRAM has not been refreshed for several minutes.<ref>[https://www.usenix.org/legacy/event/sec08/tech/full_papers/halderman/halderman_html/ Lest We Remember: Cold Boot Attacks on Encryption Keys] {{webarchive|url=https://web.archive.org/web/20150105103510/https://www.usenix.org/legacy/event/sec08/tech/full_papers/halderman/halderman_html/ |date=2015-01-05 }}, Halderman et al, USENIX Security 2008.</ref> ===Memory timing=== {{Main|Memory timings}} Many parameters are required to fully describe the timing of DRAM operation. Here are some examples for two timing grades of asynchronous DRAM, from a data sheet published in 1998:<ref name="Micron1">{{cite web|url=http://download.micron.com/pdf/datasheets/dram/d47b.pdf|title=Micron 4 Meg x 4 EDO DRAM data sheet|website=micron.com|access-date=8 May 2018|url-status=dead|archive-url=https://web.archive.org/web/20070927174618/http://download.micron.com/pdf/datasheets/dram/d47b.pdf|archive-date=27 September 2007}}</ref> {|class="wikitable" style="text-align:center;" |- !||"50&nbsp;ns"||"60&nbsp;ns"||Description |- |''t''<sub>RC</sub>||84&nbsp;ns||104&nbsp;ns||align=left|Random read or write cycle time (from one full /RAS cycle to another) |- |''t''<sub>RAC</sub>||50&nbsp;ns||60&nbsp;ns||align=left|Access time: /RAS low to valid data out |- |''t''<sub>RCD</sub>||11&nbsp;ns||14&nbsp;ns||align=left|/RAS low to /CAS low time |- |''t''<sub>RAS</sub>||50&nbsp;ns||60&nbsp;ns||align=left|/RAS pulse width (minimum /RAS low time) |- |''t''<sub>RP</sub>||30&nbsp;ns||40&nbsp;ns||align=left|/RAS precharge time (minimum /RAS high time) |- |''t''<sub>PC</sub>||20&nbsp;ns||25&nbsp;ns||align=left|Page-mode read or write cycle time (/CAS to /CAS) |- |''t''<sub>AA</sub>||25&nbsp;ns||30&nbsp;ns||align=left|Access time: Column address valid to valid data out (includes address [[setup time]] before /CAS low) |- |''t''<sub>CAC</sub>||13&nbsp;ns||15&nbsp;ns||align=left|Access time: /CAS low to valid data out |- |''t''<sub>CAS</sub>||8&nbsp;ns||10&nbsp;ns||align=left|/CAS low pulse width minimum |} Thus, the generally quoted number is the minimum /RAS low time. This is the time to open a row, allowing the sense amplifiers to settle. Note that the data access for a bit in the row is shorter, since that happens as soon as the sense amplifier has settled, but the DRAM requires additional time to propagate the amplified data back to recharge the cells. The time to read additional bits from an open page is much less, defined by the /CAS to /CAS cycle time. The quoted number is the clearest way to compare between the performance of different DRAM memories, as it sets the slower limit regardless of the row length or page size. Bigger arrays forcibly result in larger bit line capacitance and longer propagation delays, which cause this time to increase as the sense amplifier settling time is dependent on both the capacitance as well as the propagation latency. This is countered in modern DRAM chips by instead integrating many more complete DRAM arrays within a single chip, to accommodate more capacity without becoming too slow. When such a RAM is accessed by clocked logic, the times are generally rounded up to the nearest clock cycle. For example, when accessed by a 100&nbsp;MHz state machine (i.e. a 10&nbsp;ns clock), the 50&nbsp;ns DRAM can perform the first read in five clock cycles, and additional reads within the same page every two clock cycles. This was generally described as {{nowrap|"5-2-2-2"}} timing, as bursts of four reads within a page were common. When describing synchronous memory, timing is described by clock cycle counts separated by hyphens. These numbers represent {{nowrap|''t''<sub>CL</sub>-''t''<sub>RCD</sub>-''t''<sub>RP</sub>-''t''<sub>RAS</sub>}} in multiples of the DRAM clock cycle time. Note that this is half of the data transfer rate when [[double data rate]] signaling is used. JEDEC standard PC3200 timing is {{nowrap|3-4-4-8}}<ref>{{cite web|title=Corsair CMX1024-3200 (1&nbsp;GByte, two bank unbuffered DDR SDRAM DIMM)|url=http://www.corsairmemory.com/corsair/products/specs/cmx1024-3200.pdf|archive-url=https://web.archive.org/web/20080911032322/http://www.corsairmemory.com/_datasheets/cmx1024-3200.pdf|archive-date=11 September 2008|date=December 2003}}</ref> with a 200&nbsp;MHz clock, while premium-priced high performance PC3200 DDR DRAM DIMM might be operated at {{nowrap|2-2-2-5}} timing.<ref>{{cite web|title=Corsair TWINX1024-3200XL dual-channel memory kit|url=http://www.corsairmemory.com/corsair/products/specs/twinx1024-3200xl.pdf|archive-url=https://web.archive.org/web/20061207112238/http://www.corsairmemory.com/corsair/products/specs/twinx1024-3200xl.pdf|archive-date=7 December 2006|date=May 2004}}</ref> {|class="wikitable" style="text-align:center;" !rowspan=3| ||colspan=4|PC-3200 (DDR-400)||colspan=4|PC2-6400 (DDR2-800)||colspan=4|PC3-12800 (DDR3-1600)||rowspan=3|Description |- !colspan=2|Typical||colspan=2|Fast||colspan=2|Typical||colspan=2|Fast||colspan=2|Typical||colspan=2|Fast |- !cycles||time||cycles||time||cycles||time||cycles||time||cycles||time||cycles||time |- |''t''<sub>CL</sub>||3||15&nbsp;ns||2||10&nbsp;ns||5||12.5&nbsp;ns||4||10&nbsp;ns||9||11.25&nbsp;ns||8||10&nbsp;ns||align=left|/CAS low to valid data out (equivalent to ''t''<sub>CAC</sub>) |- |''t''<sub>RCD</sub>||4||20&nbsp;ns||2||10&nbsp;ns||5||12.5&nbsp;ns||4||10&nbsp;ns||9||11.25&nbsp;ns||8||10&nbsp;ns||align=left|/RAS low to /CAS low time |- |''t''<sub>RP</sub>||4||20&nbsp;ns||2||10&nbsp;ns||5||12.5&nbsp;ns||4||10&nbsp;ns||9||11.25&nbsp;ns||8||10&nbsp;ns||align=left|/RAS precharge time (minimum precharge to active time) |- |''t''<sub>RAS</sub>||8||40&nbsp;ns||5||25&nbsp;ns||16||40&nbsp;ns||12||30&nbsp;ns||27||33.75&nbsp;ns||24||30&nbsp;ns||align=left|Row active time (minimum active to precharge time) |} Minimum random access time has improved from ''t''<sub>RAC</sub>&nbsp;=&nbsp;50&nbsp;ns to {{nowrap|1=''t''<sub>RCD</sub> + ''t''<sub>CL</sub> = 22.5&nbsp;ns}}, and even the premium 20&nbsp;ns variety is only 2.5 times better compared to the typical case (~2.22 times better). [[CAS latency]] has improved even less, from {{nowrap|1=''t''<sub>CAC</sub> = 13&nbsp;ns}} to 10&nbsp;ns. However, the DDR3 memory does achieve 32 times higher bandwidth; due to internal pipelining and wide data paths, it can output two words every 1.25&nbsp;ns {{gaps|(1|600|u=Mword/s)}}, while the EDO DRAM can output one word per ''t''<sub>PC</sub>&nbsp;=&nbsp;20&nbsp;ns (50&nbsp;Mword/s). ====Timing abbreviations==== {| | *''t''<sub>CL</sub> – CAS latency *''t''<sub>CR</sub> – Command rate *''t''<sub>PTP</sub> – precharge to precharge delay *''t''<sub>RAS</sub> – RAS active time *''t''<sub>RCD</sub> – RAS to CAS delay *''t''<sub>REF</sub> – Refresh period *''t''<sub>RFC</sub> – Row refresh cycle time *''t''<sub>RP</sub> – RAS precharge | *''t''<sub>RRD</sub> – RAS to RAS delay *''t''<sub>RTP</sub> – Read to precharge delay *''t''<sub>RTR</sub> – Read to read delay *''t''<sub>RTW</sub> – Read to write delay *''t''<sub>WR</sub> – Write recovery time *''t''<sub>WTP</sub> – Write to precharge delay *''t''<sub>WTR</sub> – Write to read delay *''t''<sub>WTW</sub> – Write to write delay |} ==Memory cell design== {{See also|Memory cell (computing)}} Each bit of data in a DRAM is stored as a positive or negative electrical charge in a capacitive structure. The structure providing the capacitance, as well as the transistors that control access to it, is collectively referred to as a ''DRAM cell''. They are the fundamental building block in DRAM arrays. Multiple DRAM memory cell variants exist, but the most commonly used variant in modern DRAMs is the one-transistor, one-capacitor (1T1C) cell. The transistor is used to admit current into the capacitor during writes, and to discharge the capacitor during reads. The access transistor is designed to maximize drive strength and minimize transistor-transistor leakage (Kenner, pg. 34). <!--The design of the memory cell varies by DRAM manufacturer and process.--> The capacitor has two terminals, one of which is connected to its access transistor, and the other to either ground or V<sub>CC</sub>/2. In modern DRAMs, the latter case is more common, since it allows faster operation. In modern DRAMs, a voltage of +V<sub>CC</sub>/2 across the capacitor is required to store a logic one; and a voltage of -V<sub>CC</sub>/2 across the capacitor is required to store a logic zero. The electrical charge stored in the capacitor is measured in [[coulomb]]s. For a logic one, the charge is: <math display ="inline">Q = {V_{CC} \over 2} \cdot C</math>, where ''Q'' is the charge in coulombs and ''C'' is the capacitance in [[farad]]s. A logic zero has a charge of: <math display="inline">Q = {-V_{CC} \over 2} \cdot C</math>.<ref name="Kenner:22">{{harvnb|Keeth|Baker|Johnson|Lin|2007|p=22}}</ref> Reading or writing a logic one requires the wordline is driven to a voltage greater than the sum of V<sub>CC</sub> and the access transistor's threshold voltage (V<sub>TH</sub>). This voltage is called ''V<sub>CC</sub> pumped'' (V<sub>CCP</sub>). The time required to discharge a capacitor thus depends on what logic value is stored in the capacitor. A capacitor containing logic one begins to discharge when the voltage at the access transistor's gate terminal is above V<sub>CCP</sub>. If the capacitor contains a logic zero, it begins to discharge when the gate terminal voltage is above V<sub>TH</sub>.<ref name="Kenner:24">{{harvnb|Keeth|Baker|Johnson|Lin|2007|p=24}}</ref> ===Capacitor design=== Up until the mid-1980s, the capacitors in DRAM cells were co-planar with the access transistor (they were constructed on the surface of the substrate), thus they were referred to as ''planar'' capacitors. The drive to increase both density and, to a lesser extent, performance, required denser designs. This was strongly motivated by economics, a major consideration for DRAM devices, especially commodity DRAMs. The minimization of DRAM cell area can produce a denser device and lower the cost per bit of storage. Starting in the mid-1980s, the capacitor was moved above or below the silicon substrate in order to meet these objectives. DRAM cells featuring capacitors above the substrate are referred to as ''stacked'' or ''folded plate'' capacitors. Those with capacitors buried beneath the substrate surface are referred to as ''trench'' capacitors. In the 2000s, manufacturers were sharply divided by the type of capacitor used in their DRAMs and the relative cost and long-term scalability of both designs have been the subject of extensive debate. The majority of DRAMs, from major manufactures such as [[Hynix]], [[Micron Technology]], [[Samsung Electronics]] use the stacked capacitor structure,<!--where a cylindrical and tall capacitor is stacked on top of the transistor--> whereas smaller manufacturers such Nanya Technology use the trench capacitor structure (Jacob, pp.&nbsp;355–357). The capacitor in the stacked capacitor scheme is constructed above the surface of the substrate. The capacitor is constructed from an oxide-nitride-oxide (ONO) dielectric sandwiched in between two layers of polysilicon plates (the top plate is shared by all DRAM cells in an IC), and its shape can be a rectangle, a cylinder, or some other more complex shape. There are two basic variations of the stacked capacitor, based on its location relative to the bitline&mdash;capacitor-over-bitline (COB) and capacitor-under-bitline (CUB). In a former variation, the capacitor is underneath the bitline, which is usually made of metal, and the bitline has a polysilicon contact that extends downwards to connect it to the access transistor's source terminal. In the latter variation, the capacitor is constructed above the bitline, which is almost always made of polysilicon, but is otherwise identical to the COB variation. The advantage the COB variant possesses is the ease of fabricating the contact between the bitline and the access transistor's source as it is physically close to the substrate surface. However, this requires the active area to be laid out at a 45-degree angle when viewed from above, which makes it difficult to ensure that the capacitor contact does not touch the bitline. CUB cells avoid this, but suffer from difficulties in inserting contacts in between bitlines, since the size of features this close to the surface are at or near the minimum feature size of the process technology (Kenner, pp.&nbsp;33–42). The trench capacitor is constructed by etching a deep hole into the silicon substrate. The substrate volume surrounding the hole is then heavily doped to produce a buried n<sup>+</sup> plate and to reduce resistance. A layer of oxide-nitride-oxide dielectric is grown or deposited, and finally the hole is filled by depositing doped polysilicon, which forms the top plate of the capacitor. The top of the capacitor is connected to the access transistor's drain terminal via a polysilicon strap (Kenner, pp.&nbsp;42–44). A trench capacitor's depth-to-width ratio in DRAMs of the mid-2000s can exceed 50:1 (Jacob, p.&nbsp;357). Trench capacitors have numerous advantages. Since the capacitor is buried in the bulk of the substrate instead of lying on its surface, the area it occupies can be minimized to what is required to connect it to the access transistor's drain terminal without decreasing the capacitor's size, and thus capacitance (Jacob, pp.&nbsp;356–357). Alternatively, the capacitance can be increased by etching a deeper hole without any increase to surface area (Kenner, pg. 44). Another advantage of the trench capacitor is that its structure is under the layers of metal interconnect, allowing them to be more easily made planar, which enables it to be integrated in a logic-optimized process technology, which have many levels of interconnect above the substrate. The fact that the capacitor is under the logic means that it is constructed before the transistors are. This allows high-temperature processes to fabricate the capacitors, which would otherwise be degrading the logic transistors and their performance. This makes trench capacitors suitable for constructing [[embedded DRAM]] (eDRAM) (Jacob, p.&nbsp;357). Disadvantages of trench capacitors are difficulties in reliably constructing the capacitor's structures within deep holes and in connecting the capacitor to the access transistor's drain terminal (Kenner, pg. 44). ===Historical cell designs=== First-generation DRAM ICs (those with capacities of 1&nbsp;Kbit), of which the first was the [[Intel 1103]], used a three-transistor, one-capacitor (3T1C) DRAM cell. By the second-generation, the requirement to reduce cost by fitting the same amount of bits in a smaller area led to the almost universal adoption of the 1T1C DRAM cell, although a couple of devices with 4 and 16&nbsp;Kbit capacities continued to use the 3T1C cell for performance reasons (Kenner, p.&nbsp;6). These performance advantages included, most significantly, the ability to read the state stored by the capacitor without discharging it, avoiding the need to write back what was read out (non-destructive read). A second performance advantage relates to the 3T1C cell has separate transistors for reading and writing; the memory controller can exploit this feature to perform atomic read-modify-writes, where a value is read, modified, and then written back as a single, indivisible operation (Jacob, p.&nbsp;459). ===Proposed cell designs=== The one-transistor, zero-capacitor (1T, or 1T0C) DRAM cell has been a topic of research since the late-1990s. ''1T DRAM'' is a different way of constructing the basic DRAM memory cell, distinct from the classic one-transistor/one-capacitor (1T/1C) DRAM cell, which is also sometimes referred to as "1T DRAM", particularly in comparison to the 3T and 4T DRAM which it replaced in the 1970s. In 1T DRAM cells, the bit of data is still stored in a capacitive region controlled by a transistor, but this capacitance is no longer provided by a separate capacitor. 1T DRAM is a "capacitorless" bit cell design that stores data using the parasitic body capacitance that is inherent to [[silicon on insulator|silicon on insulator (SOI)]] transistors. Considered a nuisance in logic design, this [[floating body effect]] can be used for data storage. This gives 1T DRAM cells the greatest density as well as allowing easier integration with high-performance logic circuits since they are constructed with the same SOI process technologies. Refreshing of cells remains necessary, but unlike with 1T1C DRAM, reads in 1T DRAM are non-destructive; the stored charge causes a detectable shift in the [[threshold voltage]] of the transistor.<ref>{{cite conference|first=Jean-Michel|last=Sallese|title=Principles of the 1T Dynamic Access Memory Concept on SOI|book-title=MOS Modeling and Parameter Extraction Group Meeting|location=Wroclaw, Poland|date=2002-06-20|url=http://legwww.epfl.ch/ekv/mos-ak/wroclaw/MOS-AK_JMS.pdf|access-date=2007-10-07|url-status=live|archive-url=https://web.archive.org/web/20071129114317/http://legwww.epfl.ch/ekv/mos-ak/wroclaw/MOS-AK_JMS.pdf|archive-date=2007-11-29}}</ref> Performance-wise, access times are significantly better than capacitor-based DRAMs, but slightly worse than SRAM. There are several types of 1T DRAMs: the commercialized [[Z-RAM]] from Innovative Silicon, the TTRAM<ref>{{cite book|author1=F. Morishita|title=Proceedings of the IEEE 2005 Custom Integrated Circuits Conference, 2005|display-authors=etal|chapter=A capacitorless twin-transistor random access memory (TTRAM) on SOI|date=21 September 2005|volume=Custom Integrated Circuits Conference 2005|pages=428–431|doi=10.1109/CICC.2005.1568699|isbn=978-0-7803-9023-2|s2cid=14952912}}</ref> from Renesas and the [[A-RAM]] from the [[University of Granada|UGR]]/[[CNRS]] consortium. ==Array structures==<!--The RSes for all points in this section: Jacob, pp&nbsp;358–361; Kenner, pp.&nbsp;65&nbsp;75--> [[File:DRAM_self-aligned_storage_node_locations.png|thumb|right|Self-aligned storage node locations simplify the fabrication process in modern DRAM.<ref>J. Park et al., IEDM 2015.</ref>]] DRAM cells are laid out in a regular rectangular, grid-like pattern to facilitate their control and access via wordlines and bitlines. The physical layout of the DRAM cells in an array is typically designed so that two adjacent DRAM cells in a column share a single bitline contact to reduce their area. DRAM cell area is given as ''n'' F<sup>2</sup>, where ''n'' is a number derived from the DRAM cell design, and ''F'' is the smallest feature size of a given process technology. This scheme permits comparison of DRAM size over different process technology generations, as DRAM cell area scales at linear or near-linear rates with respect to feature size. The typical area for modern DRAM cells varies between 6–8 F<sup>2</sup>. The horizontal wire, the wordline, is connected to the gate terminal of every access transistor in its row. The vertical bitline is connected to the source terminal of the transistors in its column. The lengths of the wordlines and bitlines are limited. The wordline length is limited by the desired performance of the array, since propagation time of the signal that must transverse the wordline is determined by the [[RC time constant]]. The bitline length is limited by its capacitance (which increases with length), which must be kept within a range for proper sensing (as DRAMs operate by sensing the charge of the capacitor released onto the bitline). Bitline length is also limited by the amount of operating current the DRAM can draw and by how power can be dissipated, since these two characteristics are largely determined by the charging and discharging of the bitline. ===Bitline architecture=== [[Sense amplifier]]s are required to read the state contained in the DRAM cells. When the access transistor is activated, the electrical charge in the capacitor is shared with the bitline. The bitline's capacitance is much greater than that of the capacitor (approximately ten times). Thus, the change in bitline voltage is minute. Sense amplifiers are required to resolve the voltage differential into the levels specified by the logic signaling system. Modern DRAMs use differential sense amplifiers, and are accompanied by requirements as to how the DRAM arrays are constructed. Differential sense amplifiers work by driving their outputs to opposing extremes based on the relative voltages on pairs of bitlines. The sense amplifiers function effectively and efficient only if the capacitance and voltages of these bitline pairs are closely matched. Besides ensuring that the lengths of the bitlines and the number of attached DRAM cells attached to them are equal, two basic architectures to array design have emerged to provide for the requirements of the sense amplifiers: open and folded bitline arrays. ====Open bitline arrays==== The first generation (1&nbsp;Kbit) DRAM ICs, up until the 64&nbsp;Kbit generation (and some 256&nbsp;Kbit generation devices) had open bitline array architectures. In these architectures, the bitlines are divided into multiple segments, and the differential sense amplifiers are placed in between bitline segments. Because the sense amplifiers are placed between bitline segments, to route their outputs outside the array, an additional layer of interconnect placed above those used to construct the wordlines and bitlines is required. The DRAM cells that are on the edges of the array do not have adjacent segments. Since the differential sense amplifiers require identical capacitance and bitline lengths from both segments, dummy bitline segments are provided. The advantage of the open bitline array is a smaller array area, although this advantage is slightly diminished by the dummy bitline segments. The disadvantage that caused the near disappearance of this architecture is the inherent vulnerability to [[Noise (electronics)|noise]], which affects the effectiveness of the differential sense amplifiers. Since each bitline segment does not have any spatial relationship to the other, it is likely that noise would affect only one of the two bitline segments. ====Folded bitline arrays==== The folded bitline array architecture routes bitlines in pairs throughout the array. The close proximity of the paired bitlines provide superior [[Common-mode signal|common-mode]] noise rejection characteristics over open bitline arrays. The folded bitline array architecture began appearing in DRAM ICs during the mid-1980s, beginning with the 256&nbsp;Kbit generation. This architecture is favored in modern DRAM ICs for its superior noise immunity. This architecture is referred to as ''folded'' because it takes its basis from the open array architecture from the perspective of the circuit schematic. The folded array architecture appears to remove DRAM cells in alternate pairs (because two DRAM cells share a single bitline contact) from a column, then move the DRAM cells from an adjacent column into the voids. The location where the bitline twists occupies additional area. To minimize area overhead, engineers select the simplest and most area-minimal twisting scheme that is able to reduce noise under the specified limit. As process technology improves to reduce minimum feature sizes, the signal to noise problem worsens, since coupling between adjacent metal wires is inversely proportional to their pitch. The array folding and bitline twisting schemes that are used must increase in complexity in order to maintain sufficient noise reduction. Schemes that have desirable noise immunity characteristics for a minimal impact in area is the topic of current research (Kenner, p.&nbsp;37). ====Future array architectures==== Advances in process technology could result in open bitline array architectures being favored if it is able to offer better long-term area efficiencies; since folded array architectures require increasingly complex folding schemes to match any advance in process technology. The relationship between process technology, array architecture, and area efficiency is an active area of research. ===Row and column redundancy=== The first DRAM [[integrated circuit]]s did not have any redundancy. An integrated circuit with a defective DRAM cell would be discarded. Beginning with the 64&nbsp;Kbit generation, DRAM arrays have included spare rows and columns to improve yields. Spare rows and columns provide tolerance of minor fabrication defects which have caused a small number of rows or columns to be inoperable. The defective rows and columns are physically disconnected from the rest of the array by a triggering a [[Polyfuse (PROM)|programmable fuse]] or by cutting the wire by a laser. The spare rows or columns are substituted in by remapping logic in the row and column decoders (Jacob, pp.&nbsp;358–361). ==Error detection and correction== {{Main|RAM parity|ECC memory}} Electrical or magnetic interference inside a computer system can cause a single bit of DRAM to [[RAM parity|spontaneously flip]] to the opposite state. The majority of one-off ("[[soft error|soft]]") errors in DRAM chips occur as a result of [[background radiation]], chiefly [[neutron]]s from [[cosmic ray]] secondaries, which may change the contents of one or more memory cells or interfere with the circuitry used to read/write them. The problem can be mitigated by using [[Redundancy (engineering)|redundant]] memory bits and additional circuitry that use these bits to detect and correct soft errors. In most cases, the detection and correction are performed by the [[memory controller]]; sometimes, the required logic is transparently implemented within DRAM chips or modules, enabling the ECC memory functionality for otherwise ECC-incapable systems.<ref>{{cite web |url = http://www.intelligentmemory.com/ECC-DRAM/ |title = ECC DRAM – Intelligent Memory |access-date = 2015-01-16 |website = intelligentmemory.com |url-status = dead |archive-url = https://web.archive.org/web/20141223152744/http://www.intelligentmemory.com/ECC-DRAM/ |archive-date = 2014-12-23 }}</ref> The extra memory bits are used to record [[RAM parity|parity]] and to enable missing data to be reconstructed by [[error-correcting code]] (ECC). Parity allows the detection of all single-bit errors (actually, any odd number of wrong bits). The most common error-correcting code, a [[Hamming code#Hamming codes with additional parity (SECDED)|SECDED Hamming code]], allows a single-bit error to be corrected and, in the usual configuration, with an extra parity bit, double-bit errors to be detected.<ref>{{cite web|author1=Mastipuram, Ritesh|author2=Wee, Edwin C|title=Soft errors' impact on system reliability|url=http://www.edn.com/article/CA454636.html|website=EDN|publisher=Cypress Semiconductor|archive-url=https://web.archive.org/web/20070416115228/http://www.edn.com/article/CA454636.html|archive-date=16 April 2007|date=30 September 2004}}</ref> Recent studies give widely varying error rates with over seven orders of magnitude difference, ranging from {{nowrap|10<sup>&minus;10</sup>−10<sup>−17</sup> error/bit·h}}, roughly one bit error, per hour, per gigabyte of memory to one bit error, per century, per gigabyte of memory.<ref name="Borucki1">Borucki, "Comparison of Accelerated DRAM Soft Error Rates Measured at Component and System Level", 46th Annual International Reliability Physics Symposium, Phoenix, 2008, pp. 482–487</ref><ref name="Schroeder1">Schroeder, Bianca et al. (2009). [http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf "DRAM errors in the wild: a large-scale field study"] {{webarchive|url=https://web.archive.org/web/20150310193355/http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf |date=2015-03-10 }}. ''Proceedings of the Eleventh International Joint Conference on Measurement and Modeling of Computer Systems'', pp.&nbsp;193–204.</ref><ref name="Xin1">{{cite web|url=http://www.ece.rochester.edu/~xinli/usenix07/|title=A Memory Soft Error Measurement on Production Systems|website=www.ece.rochester.edu|access-date=8 May 2018|url-status=dead|archive-url=https://web.archive.org/web/20170214005146/http://www.ece.rochester.edu/~xinli/usenix07/|archive-date=14 February 2017}}</ref> The Schroeder et al. 2009 study reported a 32% chance that a given computer in their study would suffer from at least one correctable error per year, and provided evidence that most such errors are intermittent hard rather than soft errors and that trace amounts of radioactive material that had gotten into the chip packaging were emitting alpha particles and corrupting the data.<ref>{{cite web |url=https://spectrum.ieee.org/computing/hardware/drams-damning-defects-and-how-they-cripple-computers |title=DRAM's Damning Defects—and How They Cripple Computers - IEEE Spectrum |access-date=2015-11-24 |url-status=live |archive-url=https://web.archive.org/web/20151124182515/https://spectrum.ieee.org/computing/hardware/drams-damning-defects-and-how-they-cripple-computers |archive-date=2015-11-24 }}</ref> A 2010 study at the University of Rochester also gave evidence that a substantial fraction of memory errors are intermittent hard errors.<ref>{{cite web|url=http://www.cs.rochester.edu/~kshen/papers/usenix2010-li.pdf|title="A Realistic Evaluation of Memory Hardware Errors and Software System Susceptibility". Usenix Annual Tech Conference 2010|author1=Li, Huang|author2=Shen, Chu|year=2010|url-status=live|archive-url=https://web.archive.org/web/20150515214728/http://www.cs.rochester.edu/%7Ekshen/papers/usenix2010-li.pdf|archive-date=2015-05-15}}</ref> Large scale studies on non-ECC main memory in PCs and laptops suggest that undetected memory errors account for a substantial number of system failures: the 2011 study reported a 1-in-1700 chance per 1.5% of memory tested (extrapolating to an approximately 26% chance for total memory) that a computer would have a memory error every eight months.<ref>{{cite web|url=http://research.microsoft.com/pubs/144888/eurosys84-nightingale.pdf|title=Cycles, cells and platters: an empirical analysis of hardware failures on a million consumer PCs. Proceedings of the sixth conference on Computer systems (EuroSys '11). pp 343-356|year=2011|url-status=live|archive-url=https://web.archive.org/web/20121114111006/http://research.microsoft.com/pubs/144888/eurosys84-nightingale.pdf|archive-date=2012-11-14}}</ref> ==Security== ===Data remanence=== {{Main|Data remanence}} Although dynamic memory is only specified and ''guaranteed'' to retain its contents when supplied with power and refreshed every short period of time (often {{nowrap|64 ms}}), the memory cell [[capacitor]]s often retain their values for significantly longer time, particularly at low temperatures.<ref name=citp /> Under some conditions most of the data in DRAM can be recovered even if it has not been refreshed for several minutes.<ref name="Scheick1">{{Cite journal|last1=Scheick|first1=Leif Z.|last2=Guertin|first2=Steven M.|last3=Swift|first3=Gary M.|title=Analysis of radiation effects on individual DRAM cells|journal=IEEE Transactions on Nuclear Science|volume=47|issue=6|pages=2534–2538|date=December 2000|issn=0018-9499|doi=10.1109/23.903804|bibcode=2000ITNS...47.2534S}}</ref> This property can be used to circumvent security and recover data stored in the main memory that is assumed to be destroyed at power-down. The computer could be quickly rebooted, and the contents of the main memory read out; or by removing a computer's memory modules, cooling them to prolong data remanence, then transferring them to a different computer to be read out. Such an attack was demonstrated to circumvent popular disk encryption systems, such as the [[Open-source software|open source]] [[TrueCrypt]], Microsoft's [[BitLocker Drive Encryption]], and [[Apple Inc.|Apple]]'s [[FileVault]].<ref name=citp>{{cite web|title=Center for Information Technology Policy » Lest We Remember: Cold Boot Attacks on Encryption Keys |url=http://citp.princeton.edu/memory/ |url-status=dead |archive-url=https://web.archive.org/web/20110722182409/http://citp.princeton.edu/memory/ |archive-date=July 22, 2011 }} 080222 citp.princeton.edu</ref> This type of attack against a computer is often called a [[cold boot attack]]. ===Memory corruption=== {{See also|#Operations to read a data bit from a DRAM storage cell}} Dynamic memory, by definition, requires periodic refresh. Furthermore, reading dynamic memory is a destructive operation, requiring a recharge of the storage cells in the row that has been read. If these processes are imperfect, a read operation can cause [[soft error]]s. In particular, there is a risk that some charge can leak between nearby cells, causing the refresh or read of one row to cause a ''disturbance error'' in an adjacent or even nearby row. The awareness of disturbance errors dates back to the first commercially available DRAM in the early 1970s (the [[Intel 1103]]). Despite the mitigation techniques employed by manufacturers, commercial researchers proved in a 2014 analysis that commercially available [[DDR3]] DRAM chips manufactured in 2012 and 2013 are susceptible to disturbance errors.<ref>{{cite web | url = http://users.ece.cmu.edu/~omutlu/pub/dram-row-hammer_kim_talk_isca14.pdf | title = Flipping Bits in Memory Without Accessing Them: DRAM Disturbance Errors | date = June 24, 2014 | access-date = March 10, 2015 | author1 = Yoongu Kim | author2 = Ross Daly | author3 = Jeremie Kim | author4 = Chris Fallin | author5 = Ji Hye Lee | author6 = Donghyuk Lee | author7 = Chris Wilkerson | author8 = Konrad Lai | author9 = Onur Mutlu | website = ece.cmu.edu | url-status = live | archive-url = https://web.archive.org/web/20150326080426/http://users.ece.cmu.edu/~omutlu/pub/dram-row-hammer_kim_talk_isca14.pdf | archive-date = 2015-03-26 }}</ref> The associated side effect that led to observed bit flips has been dubbed ''[[row hammer]]''. ==Packaging== ===Memory module=== {{Main|Memory module}} Dynamic RAM ICs are usually packaged in molded epoxy cases, with an internal lead frame for interconnections between the [[Die (integrated circuit)|silicon die]] and the package leads. The original [[IBM PC]] design used ICs packaged in [[dual in-line package]]s (DIP), soldered directly to the main board or mounted in sockets. As memory density skyrocketed, the DIP package was no longer practical. For convenience in handling, several dynamic RAM integrated circuits may be mounted on a single memory module, allowing installation of 16-bit, 32-bit or 64-bit wide memory in a single unit, without the requirement for the installer to insert multiple individual integrated circuits. Memory modules may include additional devices for parity checking or error correction. Over the evolution of desktop computers, several standardized types of memory module have been developed. Laptop computers, game consoles, and specialized devices may have their own formats of memory modules not interchangeable with standard desktop parts for packaging or proprietary reasons. ===Embedded=== {{Main|eDRAM}} DRAM that is integrated into an integrated circuit designed in a logic-optimized process (such as an [[application-specific integrated circuit]], [[microprocessor]], or an entire [[system on a chip]]) is called ''embedded DRAM'' (eDRAM). Embedded DRAM requires DRAM cell designs that can be [[Semiconductor device fabrication|fabricated]] without preventing the fabrication of fast-switching transistors used in high-performance logic, and modification of the basic logic-optimized process technology to accommodate the process steps required to build DRAM cell structures. ==Versions== Since the fundamental DRAM cell and array has maintained the same basic structure for many years, the types of DRAM are mainly distinguished by the many different interfaces for communicating with DRAM chips. ===Asynchronous DRAM=== The original DRAM, now known by the [[retronym]] "''asynchronous DRAM''" was the first type of DRAM in use. From its origins in the late 1960s, it was commonplace in computing up until around 1997, when it was mostly replaced by ''Synchronous DRAM''. In the present day, manufacture of asynchronous RAM is relatively rare.<ref>{{cite web|url=http://www.radio-electronics.com/info/data/semicond/memory/sdram-memory-basics-tutorial.php|title=SDRAM Memory Basics & Tutorial|author=Ian Poole|access-date=26 Feb 2018|url-status=live|archive-url=https://web.archive.org/web/20180227153519/http://www.radio-electronics.com/info/data/semicond/memory/sdram-memory-basics-tutorial.php|archive-date=2018-02-27}}</ref> ====Principles of operation==== An asynchronous DRAM chip has power connections, some number of address inputs (typically 12), and a few (typically one or four) bidirectional data lines. There are four [[active-low]] control signals: * {{overline|RAS}}, the Row Address Strobe. The address inputs are captured on the falling edge of {{overline|RAS}}, and select a row to open. The row is held open as long as {{overline|RAS}} is low. * {{overline|CAS}}, the Column Address Strobe. The address inputs are captured on the falling edge of {{overline|CAS}}, and select a column from the currently open row to read or write. * {{overline|WE}}, Write Enable. This signal determines whether a given falling edge of {{overline|CAS}} is a read (if high) or write (if low). If low, the data inputs are also captured on the falling edge of {{overline|CAS}}. * {{overline|OE}}, Output Enable. This is an additional signal that controls output to the data I/O pins. The data pins are driven by the DRAM chip if {{overline|RAS}} and {{overline|CAS}} are low, {{overline|WE}} is high, and {{overline|OE}} is low. In many applications, {{overline|OE}} can be permanently connected low (output always enabled), but switching {{overline|OE}} can be useful when connecting multiple memory chips in parallel. This interface provides direct control of internal timing. When {{overline|RAS}} is driven low, a {{overline|CAS}} cycle must not be attempted until the sense amplifiers have sensed the memory state, and {{overline|RAS}} must not be returned high until the storage cells have been refreshed. When {{overline|RAS}} is driven high, it must be held high long enough for precharging to complete. Although the DRAM is asynchronous, the signals are typically generated by a clocked memory controller, which limits their timing to multiples of the controller's clock cycle. =====RAS Only Refresh===== Classic asynchronous DRAM is refreshed by opening each row in turn. The refresh cycles are distributed across the entire refresh interval in such a way that all rows are refreshed within the required interval. To refresh one row of the memory array using {{overline|RAS}} only refresh (ROR), the following steps must occur: # The row address of the row to be refreshed must be applied at the address input pins. # {{overline|RAS}} must switch from high to low. {{overline|CAS}} must remain high. # At the end of the required amount of time, {{overline|RAS}} must return high. This can be done by supplying a row address and pulsing {{overline|RAS}} low; it is not necessary to perform any {{overline|CAS}} cycles. An external counter is needed to iterate over the row addresses in turn.<ref>{{cite web|title=Understanding DRAM Operation (Application Note)|url=http://www.ece.cmu.edu/~ece548/localcpy/dramop.pdf|publisher=IBM|archive-url=https://web.archive.org/web/20170829153054/http://www.ece.cmu.edu/~ece548/localcpy/dramop.pdf|archive-date=29 August 2017|date=December 1996}}</ref> In some designs, the CPU handled RAM refresh, among these the [[Zilog Z80]] is perhaps the best known example, hosting a row counter in a [[processor register]], R, and including internal timers that would periodically poll the row at R and then increment the value in the register. Refreshes were interleaved with common instructions like memory reads.<ref>{{cite book |title=Z80 CPU User Manual |url=http://www.zilog.com/docs/z80/um0080.pdf |page=3}}</ref> In other systems, especially [[home computer]]s, refresh was often handled by the video circuitry as it often had to read from large areas of memory, and performed refreshes as part of these operations.<ref>{{cite web |url=https://retrocomputing.stackexchange.com/questions/14012/what-is-dram-refresh-and-why-is-the-weird-apple-ii-video-memory-layout-affected |title=What is DRAM refresh and why is the weird Apple II video memory layout affected by it?}}</ref> =====CAS before RAS refresh===== For convenience, the counter was quickly incorporated into the DRAM chips themselves. If the {{overline|CAS}} line is driven low before {{overline|RAS}} (normally an illegal operation), then the DRAM ignores the address inputs and uses an internal counter to select the row to open. This is known as {{overline|CAS}}-before-{{overline|RAS}} (CBR) refresh. This became the standard form of refresh for asynchronous DRAM, and is the only form generally used with SDRAM. =====Hidden refresh===== Given support of {{overline|CAS}}-before-{{overline|RAS}} refresh, it is possible to deassert {{overline|RAS}} while holding {{overline|CAS}} low to maintain data output. If {{overline|RAS}} is then asserted again, this performs a CBR refresh cycle while the DRAM outputs remain valid. Because data output is not interrupted, this is known as ''hidden refresh''.<ref>[http://www.downloads.reactivemicro.com/Public/Electronics/DRAM/DRAM%20Refresh.pdf Various Methods of DRAM Refresh] {{webarchive|url=https://web.archive.org/web/20111003001843/http://www.downloads.reactivemicro.com/Public/Electronics/DRAM/DRAM%20Refresh.pdf |date=2011-10-03 }} Micron Technical Note TN-04-30</ref> ====Page mode DRAM==== <!-- This section is linked from [[Fast page mode]] --> <!-- This section is linked from [[Fast Page Mode RAM]] --> <!-- This section is linked from [[Fast Page Mode DRAM]] --> <!-- This section is linked from [[FPM RAM]] --> <!-- This section is linked from [[FPM DRAM]] --> <!-- This section is linked from [[FPRAM]] --> <!-- This section is linked from [[Page mode DRAM]] --> <!-- This section is linked from [[Page mode memory]] --> <!-- This section is linked from [[Page mode RAM]] --> <!-- Change the above redirects if you change the title to this section (section links in redirects are case sensitive) --> '''Page mode DRAM''' is a minor modification to the first-generation DRAM IC interface which improved the performance of reads and writes to a row by avoiding the inefficiency of precharging and opening the same row repeatedly to access a different column. In page mode DRAM, after a row was opened by holding {{overline|RAS}} low, the row could be kept open, and multiple reads or writes could be performed to any of the columns in the row. Each column access was initiated by asserting {{overline|CAS}} and presenting a column address. For reads, after a delay (''t''<sub>CAC</sub>), valid data would appear on the data out pins, which were held at high-Z before the appearance of valid data. For writes, the write enable signal and write data would be presented along with the column address.<ref name="Kenner 13">{{harvnb|Keeth|Baker|Johnson|Lin|2007|p=13}}</ref> Page mode DRAM was in turn later improved with a small modification which further reduced latency. DRAMs with this improvement were called '''fast page mode DRAMs''' ('''FPM DRAMs'''). In page mode DRAM, {{overline|CAS}} was asserted before the column address was supplied. In FPM DRAM, the column address could be supplied while {{overline|CAS}} was still deasserted. The column address propagated through the column address data path, but did not output data on the data pins until {{overline|CAS}} was asserted. Prior to {{overline|CAS}} being asserted, the data out pins were held at high-Z. FPM DRAM reduced ''t''<sub>CAC</sub> latency.<ref name="Kenner 14">{{harvnb|Keeth|Baker|Johnson|Lin|2007|p=14}}</ref> Fast page mode DRAM was introduced in 1986 and was used with Intel 80486. ''Static column'' is a variant of fast page mode in which the column address does not need to be stored in, but rather, the address inputs may be changed with {{overline|CAS}} held low, and the data output will be updated accordingly a few nanoseconds later.<ref name="Kenner 14" /> ''Nibble mode'' is another variant in which four sequential locations within the row can be accessed with four consecutive pulses of {{overline|CAS}}. The difference from normal page mode is that the address inputs are not used for the second through fourth {{overline|CAS}} edges; they are generated internally starting with the address supplied for the first {{overline|CAS}} edge.<ref name="Kenner 14" /> =====Extended data out DRAM===== <!-- This section redirects from [[Extended data out DRAM]] --> <!-- This section redirects from [[Extended Data Out RAM]] --> <!-- This section redirects from [[Extended Data Out DRAM]] --> <!-- This section redirects from [[EDO DRAM]] --> <!-- This section redirects from [[EDO RAM]] --> <!-- Change the above redirects if you change the title to this section (section links in redirects are case sensitive) --> [[Image:Pair32mbEDO-DRAMdimms.jpg|thumb|A pair of 32&nbsp;[[Megabyte|MB]] EDO DRAM modules]] Extended data out DRAM (EDO DRAM) was invented and patented in the 1990s by [[Micron Technology]] who then licensed technology to many other memory manufacturers.<ref>{{cite book | author=S. Mueller | title=Upgrading and Repairing Laptops | year=2004 | publisher=Que; Har/Cdr Edition | page=221 | isbn=9780789728005 |url=https://books.google.com/books?id=xCXVGneKwScC}}</ref> EDO RAM, sometimes referred to as ''hyper page mode'' enabled DRAM, is similar to fast page mode DRAM with the additional feature that a new access cycle can be started while keeping the data output of the previous cycle active. This allows a certain amount of overlap in operation (pipelining), allowing somewhat improved performance. It is up to 30% faster than FPM DRAM,<ref>{{cite web|last1=Lin|first1=Albert|title=Memory Grades, the Most Confusing Subject|url=http://www.simmtester.com/page/news/showpubnews.asp?num=11|website=Simmtester.com|publisher=CST, Inc.|access-date=1 November 2017|date=20 December 1999|url-status=live|archive-url=https://web.archive.org/web/20171107005936/http://www.simmtester.com/page/news/showpubnews.asp?num=11|archive-date=7 November 2017}}</ref> which it began to replace in 1995 when [[Intel]] introduced the [[Mercury chipset|430FX chipset]] with EDO DRAM support. Irrespective of the performance gains, FPM and EDO SIMMs can be used interchangeably in many (but not all) applications.<ref>{{cite web|last1=Huang|first1=Andrew|title=Bunnie's RAM FAQ|url=http://www.bunniestudios.com/bunnie/dramfaq/DRAMFAQ.html|date=14 September 1996|url-status=live|archive-url=https://web.archive.org/web/20170612210850/http://www.bunniestudios.com/bunnie/dramfaq/DRAMFAQ.html|archive-date=12 June 2017}}</ref><ref>{{cite journal|author1=Cuppu, Vinodh|author2=Jacob, Bruce|author3=Davis, Brian|author4=Mudge, Trevor|title=High-Performance DRAMs in Workstation Environments|journal=IEEE Transactions on Computers|date=November 2001|volume=50|issue=11|pages=1133–1153|url=http://www.bunniestudios.com/bunnie/dramfaq/dram-workstation.pdf|access-date=2 November 2017|doi=10.1109/12.966491|hdl=1903/7456|url-status=live|archive-url=https://web.archive.org/web/20170808082644/http://www.bunniestudios.com/bunnie/dramfaq/dram-workstation.pdf|archive-date=8 August 2017|hdl-access=free}}</ref> To be precise, EDO DRAM begins data output on the falling edge of {{overline|CAS}} but does not stop the output when {{overline|CAS}} rises again. It holds the output valid (thus extending the data output time) until either {{overline|RAS}} is deasserted, or a new {{overline|CAS}} falling edge selects a different column address. Single-cycle EDO has the ability to carry out a complete memory transaction in one clock cycle. Otherwise, each sequential RAM access within the same page takes two clock cycles instead of three, once the page has been selected. EDO's performance and capabilities created an opportunity to reduce the immense performance loss associated with a lack of L2 cache in low-cost, commodity PCs. This was also good for notebooks due to difficulties with their limited form factor, and battery life limitations. Additionally, for systems with an L2 cache, the availability of EDO memory improved the average memory latency seen by applications over earlier FPM implementations. Single-cycle EDO DRAM became very popular on video cards towards the end of the 1990s. It was very low cost, yet nearly as efficient for performance as the far more costly VRAM. ====Burst EDO DRAM==== An evolution of EDO DRAM, burst EDO DRAM (BEDO DRAM), could process four memory addresses in one burst, for a maximum of {{nowrap|5-1-1-1}}, saving an additional three clocks over optimally designed EDO memory. It was done by adding an address counter on the chip to keep track of the next address. BEDO also added a pipeline stage allowing page-access cycle to be divided into two parts. During a memory-read operation, the first part accessed the data from the memory array to the output stage (second latch). The second part drove the data bus from this latch at the appropriate logic level. Since the data is already in the output buffer, quicker access time is achieved (up to 50% for large blocks of data) than with traditional EDO. Although BEDO DRAM showed additional optimization over EDO, by the time it was available the market had made a significant investment towards synchronous DRAM, or SDRAM.<ref>{{cite web|last=Kent |first=Dean |url=https://www.tomshardware.com/reviews/ram-guide,89-7.html |title=Burst EDO (BEDO) - Ram Guide {{pipe}} Tom's Hardware |publisher=Tomshardware.com |date= 24 October 1998|access-date=2022-03-09}}</ref> Even though BEDO RAM was superior to SDRAM in some ways, the latter technology quickly displaced BEDO. ==={{Anchor|ROW-ACTIVATION}}Synchronous dynamic RAM=== {{Main|Synchronous dynamic random-access memory}} Synchronous dynamic RAM (SDRAM) significantly revises the asynchronous memory interface, adding a clock (and a clock enable) line. All other signals are received on the rising edge of the clock. The {{overline|RAS}} and {{overline|CAS}} inputs no longer act as strobes, but are instead, along with {{overline|WE}}, part of a 3-bit command controlled by a new active-low strobe, ''chip select'' or {{overline|CS}}: {| class="wikitable" |+ SDRAM Command summary ! {{overline|CS}} ! {{overline|RAS}} ! {{overline|CAS}} ! {{overline|WE}} ! Address ! Command |- | {{no|H}} || {{n/a|x}} || {{n/a|x}} || {{n/a|x}} || {{n/a|x}} || Command inhibit (no operation) |- | {{yes|L}} || {{no|H}} || {{no|H}} || {{no|H}} || {{n/a|x}} || No operation |- | {{yes|L}} || {{no|H}} || {{no|H}} || {{yes|L}} || {{n/a|x}} || Burst Terminate: stop a read or write burst in progress. |- | {{yes|L}} || {{no|H}} || {{yes|L}} || {{no|H}} || style="text-align:center;" | Column || Read from currently active row. |- | {{yes|L}} || {{no|H}} || {{yes|L}} || {{yes|L}} || style="text-align:center;" | Column || Write to currently active row. |- | {{yes|L}} || {{yes|L}} || {{no|H}} || {{no|H}} || style="text-align:center;" | Row || Activate a row for read and write. |- | {{yes|L}} || {{yes|L}} || {{no|H}} || {{yes|L}} || {{n/a|x}} || Precharge (deactivate) the current row. |- | {{yes|L}} || {{yes|L}} || {{yes|L}} || {{no|H}} || {{n/a|x}} || Auto refresh: refresh one row of each bank, using an internal counter. |- | {{yes|L}} || {{yes|L}} || {{yes|L}} || {{yes|L}} || style="text-align:center;" | Mode || Load mode register: address bus specifies DRAM operation mode. |} The {{overline|OE}} line's function is extended to a per-byte "DQM" signal, which controls data input (writes) in addition to data output (reads). This allows DRAM chips to be wider than 8 bits while still supporting byte-granularity writes. Many timing parameters remain under the control of the DRAM controller. For example, a minimum time must elapse between a row being activated and a read or write command. One important parameter must be programmed into the SDRAM chip itself, namely the [[CAS latency]]. This is the number of clock cycles allowed for internal operations between a read command and the first data word appearing on the data bus. The "Load mode register" command is used to transfer this value to the SDRAM chip. Other configurable parameters include the length of read and write bursts, i.e. the number of words transferred per read or write command. The most significant change, and the primary reason that SDRAM has supplanted asynchronous RAM, is the support for multiple internal banks inside the DRAM chip. Using a few bits of "bank address" which accompany each command, a second bank can be activated and begin reading data ''while a read from the first bank is in progress''. By alternating banks, an SDRAM device can keep the data bus continuously busy, in a way that asynchronous DRAM cannot. ====Single data rate synchronous DRAM==== {{See also|Synchronous dynamic random-access memory|l1=SDR SDRAM}} Single data rate SDRAM (SDR SDRAM or SDR) is the original generation of SDRAM; it made a single transfer of data per clock cycle. ====Double data rate synchronous DRAM==== {{Main|DDR SDRAM|DDR2 SDRAM|DDR3 SDRAM|DDR4 SDRAM|DDR5 SDRAM}} [[File:SAMSUNG@DDR-SDRAM@64MBit@K4D62323HA-QC60 Stack-DSC03539-DSC03556 - ZS-DMap.jpg|thumb|The [[die (integrated circuit)|die]] of a Samsung DDR-SDRAM 64-MBit package]] Double data rate SDRAM (DDR SDRAM or DDR) was a later development of SDRAM, used in PC memory beginning in 2000. Subsequent versions are numbered sequentially (''DDR2'', ''DDR3'', etc.). DDR SDRAM internally performs double-width accesses at the clock rate, and uses a [[double data rate]] interface to transfer one half on each clock edge. DDR2 and DDR3 increased this factor to 4× and 8×, respectively, delivering 4-word and 8-word bursts over 2 and 4 clock cycles, respectively. The internal access rate is mostly unchanged (200 million per second for DDR-400, DDR2-800 and DDR3-1600 memory), but each access transfers more data. ====Direct Rambus DRAM==== {{Main|RDRAM}} ''Direct RAMBUS DRAM'' (''DRDRAM'') was developed by Rambus. First supported on [[motherboard]]s in 1999, it was intended to become an industry standard, but was outcompeted by [[DDR SDRAM]], making it technically obsolete by 2003. ====Reduced Latency DRAM==== {{Main|RLDRAM}} Reduced Latency DRAM (RLDRAM) is a high performance double data rate (DDR) SDRAM that combines fast, random access with high bandwidth, mainly intended for networking and caching applications. ===Graphics RAM=== Graphics RAMs are asynchronous and synchronous DRAMs designed for graphics-related tasks such as [[texture memory]] and [[framebuffer]]s, found on [[video card]]s. ====Video DRAM==== {{Main|VRAM}} Video DRAM (VRAM) is a [[dual-ported RAM|dual-ported]] variant of DRAM that was once commonly used to store the frame-buffer in some [[graphics card|graphics adaptors]]. ===={{Anchor|WRAM}}Window DRAM==== Window DRAM (WRAM) is a variant of VRAM that was once used in graphics adaptors such as the [[Matrox]] Millennium and [[Rage Pro#3D Rage Pro & Rage IIc|ATI 3D Rage Pro]]. WRAM was designed to perform better and cost less than VRAM. WRAM offered up to 25% greater bandwidth than VRAM and accelerated commonly used graphical operations such as text drawing and block fills.<ref name="wramdef">{{cite web |url=http://www.pcguide.com/ref/video/techWRAM-c.html |title=Window RAM (WRAM) |archive-url=https://web.archive.org/web/20100102101703/http://pcguide.com/ref/video/techWRAM-c.html |archive-date=2010-01-02}}</ref> ===={{Anchor|MDRAM}}Multibank DRAM==== [[File:MoSys MD908.png|thumb|[[MoSys]] MDRAM MD908]] Multibank DRAM (MDRAM) is a type of specialized DRAM developed by [[MoSys]]. It is constructed from small [[memory bank]]s of {{nowrap|256 kB}}, which are operated in an [[Interleaved memory|interleaved]] fashion, providing bandwidths suitable for graphics cards at a lower cost to memories such as [[Static Random Access Memory|SRAM]]. MDRAM also allows operations to two banks in a single clock cycle, permitting multiple concurrent accesses to occur if the accesses were independent. MDRAM was primarily used in graphic cards, such as those featuring the [[Tseng Labs]] ET6x00 chipsets. Boards based upon this chipset often had the unusual capacity of {{nowrap|2.25 MB}} because of MDRAM's ability to be implemented more easily with such capacities. A graphics card with {{nowrap|2.25 MB}} of MDRAM had enough memory to provide 24-bit color at a resolution of 1024×768&mdash;a very popular setting at the time. ===={{Anchor|SGRAM}}Synchronous graphics RAM==== Synchronous graphics RAM (SGRAM) is a specialized form of SDRAM for graphics adaptors. It adds functions such as [[bit mask]]ing (writing to a specified bit plane without affecting the others) and block write (filling a block of memory with a single colour). Unlike VRAM and WRAM, SGRAM is single-ported. However, it can open two memory pages at once, which simulates the dual-port nature of other video RAM technologies. ====Graphics double data rate SDRAM==== {{Main|GDDR}} [[File:Sapphire Ultimate HD 4670 512MB - Qimonda HYB18H512321BF-10-93577.jpg|alt=|thumb|A 512-MBit [[Qimonda]] GDDR3 SDRAM package]] [[File:SAMSUNG@QDDR3-SDRAM@256MBit@K5J55323QF-GC16 Stack-DSC01340-DSC01367 - ZS-retouched.jpg|thumb|Inside a Samsung GDDR3 256-MBit package]] Graphics double data rate SDRAM is a type of specialized [[Double data rate|DDR]] [[Synchronous dynamic random-access memory|SDRAM]] designed to be used as the main memory of [[graphics processing unit]]s (GPUs). GDDR SDRAM is distinct from commodity types of DDR SDRAM such as DDR3, although they share some core technologies. Their primary characteristics are higher clock frequencies for both the DRAM core and I/O interface, which provides greater memory bandwidth for GPUs. As of 2020, there are seven, successive generations of GDDR: [[GDDR2]], [[GDDR3]], [[GDDR4]], [[GDDR5]], [[GDDR5X]], [[GDDR6]] and [[GDDR6X]]. ==={{Anchor|PSRAM}}Pseudostatic RAM=== [[File:Olivetti JP90 - Toshiba TC518129CFWL-80 on controller-8514.jpg|thumb|1 Mbit high speed [[CMOS]] pseudostatic RAM, made by [[Toshiba]] ]] Pseudostatic RAM (PSRAM or PSDRAM) is dynamic RAM with built-in refresh and address-control circuitry to make it behave similarly to static RAM (SRAM). It combines the high density of DRAM with the ease of use of true SRAM. PSRAM is used in the Apple iPhone and other embedded systems such as XFlar Platform.<ref>{{cite news |first=Patrick |last=Mannion |title=Under the Hood — Update: Apple iPhone 3G exposed |newspaper=EETimes |date=2008-07-12 |url=http://www.eetimes.com/showArticle.jhtml?articleID=209000014#selection-1371.0-1383.10 |archive-url=https://archive.today/20130122004240/http://www.eetimes.com/showArticle.jhtml?articleID=209000014#selection-1371.0-1383.10 |url-status=dead |archive-date=2013-01-22 }}</ref> Some DRAM components have a "self-refresh mode". While this involves much of the same logic that is needed for pseudo-static operation, this mode is often equivalent to a standby mode. It is provided primarily to allow a system to suspend operation of its DRAM controller to save power without losing data stored in DRAM, rather than to allow operation without a separate DRAM controller as is in the case of mentioned PSRAMs. An [[EDRAM|embedded]] variant of PSRAM was sold by MoSys under the name [[1T-SRAM]]. It is a set of small DRAM banks with an SRAM cache in front to make it behave much like a true SRAM. It is used in [[Nintendo]] [[GameCube]] and [[Wii]] video game consoles. [[Cypress Semiconductor]]'s HyperRAM<ref>{{cite web |url=https://www.cypress.com/products/hyperram-octal-xspi-ram-memory|title=psRAM(HyperRAM) |publisher= Cypress semiconductor}}</ref> is a type of PSRAM supporting a [[JEDEC memory standards|JEDEC]]-compliant 8-pin HyperBus<ref>{{cite web |url=https://www.cypress.com/products/hyperbus-memory|title=Hyperbus |publisher= Cypress semiconductor}}</ref> or Octal xSPI interface. ==See also== {{Portal|Electronics}} * [[DRAM price fixing]] * [[Flash memory]] * [[List of device bit rates]] * [[Memory bank]] * [[Memory geometry]] ==References== {{Reflist|30em}} * {{cite book | last1=Keeth | first1=Brent | last2=Baker | first2=R. Jacob | last3=Johnson | first3=Brian | last4=Lin | first4=Feng | date=2007 | title=DRAM Circuit Design: Fundamental and High-Speed Topics | publisher=Wiley | isbn=978-0470184752 | url=https://books.google.com/books?id=TgW3LTubREQC }} ==Further reading== *{{cite book |first1=Bruce |last1=Jacob |first2=David |last2=Wang |first3=Spencer |last3=Ng |title=Memory Systems: Cache, DRAM, Disk |url=https://books.google.com/books?id=SrP3aWed-esC |date=2010 |orig-year=2008 |publisher=Morgan Kaufmann |isbn=978-0-08-055384-9}} ==External links== * {{cite book |url=http://www.eecs.berkeley.edu/~culler/courses/cs252-s05/lectures/cs252s05-lec01-intro.ppt#359,15,Memory%20Capacity%20%20(Single%20Chip%20DRAM |first1=David |last1=Culler |chapter=Memory Capacity (Single Chip DRAM) |page=15 |title=EECS 252 Graduate Computer Architecture: Lecture 1 |publisher=Electrical Engineering and Computer Sciences,University of California, Berkeley |year=2005}} Logarithmic graph 1980–2003 showing size and cycle time. * [http://www-1.ibm.com/servers/eserver/pseries/campaigns/chipkill.pdf Benefits of Chipkill-Correct ECC for PC Server Main Memory] — A 1997 discussion of SDRAM reliability—some interesting information on "soft errors" from [[cosmic ray]]s, especially with respect to [[error-correcting code]] schemes * [http://www.tezzaron.com/about/papers/soft_errors_1_1_secure.pdf Tezzaron Semiconductor Soft Error White Paper] 1994 literature review of memory error rate measurements. * {{cite web |url=http://www.nepp.nasa.gov/docuploads/40D7D6C9-D5AA-40FC-829DC2F6A71B02E9/Scal-00.pdf |title=Scaling and Technology Issues for Soft Error Rates |first1=A. |last1=Johnston |work=4th Annual Research Conference on Reliability Stanford University |date=October 2000|url-status=dead |archive-url=https://web.archive.org/web/20041103124422/http://www.nepp.nasa.gov/docuploads/40D7D6C9-D5AA-40FC-829DC2F6A71B02E9/Scal-00.pdf |archive-date=2004-11-03 }} * {{cite journal |url=http://www.research.ibm.com/journal/rd/462/mandelman.html |title=Challenges and future directions for the scaling of dynamic random-access memory (DRAM) |date=2002 |doi=10.1147/rd.462.0187|archive-url=https://web.archive.org/web/20050322211513/http://www.research.ibm.com/journal/rd/462/mandelman.html|archive-date=2005-03-22|last1=Mandelman |first1=J. A. |last2=Dennard |first2=R. H. |last3=Bronner |first3=G. B. |last4=Debrosse |first4=J. K. |last5=Divakaruni |first5=R. |last6=Li |first6=Y. |last7=Radens |first7=C. J. |journal=IBM Journal of Research and Development |volume=46 |issue=2.3 |pages=187–212 }} * [https://arstechnica.com/paedia/r/ram_guide/ram_guide.part1-2.html Ars Technica: RAM Guide] * {{cite thesis|first1=David Tawei |last1=Wang|title=Modern DRAM Memory Systems: Performance Analysis and a High Performance, Power-Constrained DRAM-Scheduling Algorithm|type=PhD |publisher=University of Maryland, College Park|year=2005|url=http://www.ece.umd.edu/~blj/papers/thesis-PhD-wang--DRAM.pdf|access-date=2007-03-10 |hdl=1903/2432}} A detailed description of current DRAM technology. * [http://www.cs.berkeley.edu/~pattrsn/294 Multi-port Cache DRAM — '''MP-RAM'''] * {{cite web |url=https://lwn.net/Articles/250967/ |title=What every programmer should know about memory |first1=Ulrich |last1=Drepper |year=2007}} {{DRAM}} {{Authority control}} [[Category:Computer memory]] [[Category:Types of RAM]] [[Category:American inventions]] [[Category:20th-century inventions]]'
New page wikitext, after the edit (new_wikitext)
'{{Short description|Type of computer memory}} {{citation style|date=April 2019}} [[Image:MT4C1024-HD.jpg|thumb|right|upright=1.8|A die photograph of the Micron Technology MT4C1024 DRAM integrated circuit (1994). It has a capacity of 1&nbsp;megabit equivalent to <math>2^{20}</math>bits or ]] [[File:NeXTcube motherboard.jpg|thumb|Motherboard of the NeXTcube computer, 1990, with 64 MiB main memory DRAM (top left) and 256 KiB of VRAM<ref>{{cite web|url=http://www.nextcomputers.org/NeXTfiles/Docs/Hardware/NeXTServiceManualPages1-160_OCR.pdf |title=NeXTServiceManualPages1-160 |date= |access-date=2022-03-09}}</ref> (lower edge, right of middle)]] '''Dynamic random-access memory''' ('''dynamic RAM''' or '''DRAM''') is a type of random-access semiconductor memory that stores each bit of data in a memory cell, usually consisting of a tiny capacitor and a transistor, both typically based on metal–oxide–semiconductor (MOS) technology. While most DRAM memory cell designs use a capacitor and transistor, some only use two transistors. In the designs where a capacitor is used, the capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The electric charge on the capacitors gradually leaks away; without intervention the data on the capacitor would soon be lost. To prevent this, DRAM requires an external ''memory refresh'' circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to static random-access memory (SRAM) which does not require data to be refreshed. Unlike flash memory, DRAM is volatile memory (vs. non-volatile memory), since it loses its data quickly when power is removed. However, DRAM does exhibit limited data remanence. DRAM typically takes the form of an integrated circuit chip, which can consist of dozens to billions of DRAM memory cells. DRAM chips are widely used in digital electronics where low-cost and high-capacity computer memory is required. One of the largest applications for DRAM is the ''main memory'' (colloquially called the "RAM") in modern computers and graphics cards (where the "main memory" is called the ''graphics memory''). It is also used in many portable devices and video game consoles. In contrast, SRAM, which is faster and more expensive than DRAM, is typically used where speed is of greater concern than cost and size, such as the cache memories in processors. The need to refresh DRAM demands more complicated circuitry and timing than SRAM. This is offset by the structural simplicity of DRAM memory cells: only one transistor and a capacitor are required per bit, compared to four or six transistors in SRAM. This allows DRAM to reach very high densities with a simultaneous reduction in cost per bit. Refreshing the data consumes power and a variety of techniques are used to manage the overall power consumption. DRAM had a 47% increase in the price-per-bit in 2017, the largest jump in 30 years since the 45% jump in 1988, while in recent years the price has been going down. In 2018, a "key characteristic of the DRAM market is that there are currently only three major suppliers — Micron Technology, SK Hynix and Samsung Electronics" that are "keeping a pretty tight rein on their capacity". There is also Kioxia (previously Toshiba Memory Corporation after 2017 spin-off). Other manufacturers make and sell DIMMs (but not the DRAM chips in them), such as Kingston Technology, and some manufacturers that sell stacked DRAM (used e.g. in the fastest supercomputers on the exascale), separately such as Viking Technology. Others sell such integrated into other products, such as Fujitsu into its CPUs, AMD in GPUs, and Nvidia, with HBM2 in some of their GPU chips. ==History== [[File:Original 1T1C DRAM design.svg|thumb|upright=1.6|A schematic drawing depicting the cross-section of the original one-transistor, one-capacitor [[NMOS logic|NMOS]] DRAM cell. It was patented in 1968.]] The [[cryptanalysis|cryptanalytic]] machine code-named ''"Aquarius"'' used at [[Bletchley Park]] during [[World War II]] incorporated a hard-wired dynamic memory. Paper tape was read and the characters on it "were remembered in a dynamic store. ... The store used a large bank of capacitors, which were either charged or not, a charged capacitor representing cross (1) and an uncharged capacitor dot (0). Since the charge gradually leaked away, a periodic pulse was applied to top up those still charged (hence the term 'dynamic')".<ref>{{cite book |first1=B. Jack |last1=Copeland |title=Colossus: The secrets of Bletchley Park's code-breaking computers |url=https://books.google.com/books?id=YiiQDwAAQBAJ&pg=PA301 |date=2010 |publisher=Oxford University Press |isbn=978-0-19-157366-8 |page=301}}</ref> [[Toshiba]] invented and introduced a dynamic RAM for its [[electronic calculator]] ''"Toscal" BC-1411'' , which was introduced in November 1965,<ref name="toscal">{{cite web|url=http://www.oldcalculatormuseum.com/s-toshbc1411.html|title=Spec Sheet for Toshiba "TOSCAL" BC-1411|website=www.oldcalculatormuseum.com|access-date=8 May 2018|url-status=live|archive-url=https://web.archive.org/web/20170703071307/http://www.oldcalculatormuseum.com/s-toshbc1411.html|archive-date=3 July 2017}}</ref><ref>[http://collection.sciencemuseum.org.uk/objects/co8406093/toscal-bc-1411-calculator-with-electronic-calculator Toscal BC-1411 calculator] {{webarchive|url=https://web.archive.org/web/20170729145228/http://collection.sciencemuseum.org.uk/objects/co8406093/toscal-bc-1411-calculator-with-electronic-calculator |date=2017-07-29 }}, [[Science Museum, London]]</ref> it used a form of capacitive DRAM (180 bit) built from discrete [[Bipolar transistor|bipolar]] memory cells.<ref name="toscal"/><ref>[http://www.oldcalculatormuseum.com/toshbc1411.html Toshiba "Toscal" BC-1411 Desktop Calculator] {{webarchive|url=https://web.archive.org/web/20070520202433/http://www.oldcalculatormuseum.com/toshbc1411.html |date=2007-05-20 }}</ref> In 1967, Tomohisa Yoshimaru and Hiroshi Komikawa from Toshiba applied for an American patent of the concept with a priority of May, 1966 due to an early Japanese application.<ref>{{cite web |title=Memory Circuit |url= https://patents.google.com/patent/US3550092A/en?q=(memory+)&assignee=Toshiba+Corp&before=priority:19670101&after=priority:19640101|website=[[Google Patents]] |access-date=18 June 2023}}</ref> The earliest forms of DRAM mentioned above used [[bipolar transistors]]. While it offered improved performance over [[magnetic-core memory]], bipolar DRAM could not compete with the lower price of the then-dominant magnetic-core memory.<ref>{{cite web |title=1966: Semiconductor RAMs Serve High-speed Storage Needs |url=https://www.computerhistory.org/siliconengine/semiconductor-rams-serve-high-speed-storage-needs/ |website=Computer History Museum}}</ref> Capacitors had also been used for earlier memory schemes, such as the drum of the [[Atanasoff–Berry Computer]], the [[Williams tube]] and the [[Selectron tube]]. In 1966, Dr. [[Robert Dennard]] at the [[IBM Thomas J. Watson Research Center]] was working on MOS memory and was trying to create an alternative to SRAM which required six MOS transistors for each [[bit]] of data. While examining the characteristics of MOS technology, he found it was capable of building capacitors, and that storing a charge or no charge on the MOS capacitor could represent the 1 and 0 of a bit, while the MOS transistor could control writing the charge to the capacitor. This led to his development of the single-transistor MOS DRAM memory cell.<ref>{{cite web |title=IBM100 — DRAM |url=https://www.ibm.com/ibm/history/ibm100/us/en/icons/dram/ |website=IBM |date=9 August 2017}}</ref> He filed a patent in 1967, and was granted U.S. patent number [https://web.archive.org/web/20151231134927/http://patft1.uspto.gov/netacgi/nph-Parser?patentnumber=3387286 3,387,286] in 1968.<ref>{{cite web |title=Robert Dennard |url=https://www.britannica.com/biography/Robert-Dennard |website=Encyclopedia Britannica|date=September 2023 }}</ref> MOS memory offered higher performance, was cheaper, and consumed less power, than magnetic-core memory.<ref name="computerhistory1970">{{cite web |title=1970: Semiconductors compete with magnetic cores |url=https://www.computerhistory.org/storageengine/semiconductors-compete-with-magnetic-cores/ |website=[[Computer History Museum]]}}</ref> MOS DRAM chips were commercialized in 1969 by Advanced Memory Systems, Inc of [[Sunnyvale, California|Sunnyvale, CA]]. This 1024 bit chip was sold to [[Honeywell]], [[Raytheon]], [[Wang Laboratories]], and others. The same year, Honeywell asked [[Intel]] to make a DRAM using a three-transistor cell that they had developed. This became the Intel 1102 in early 1970.<ref>{{cite web|url=http://inventors.about.com/library/weekly/aa100898.htm|archive-url=https://archive.today/20130306105823/http://inventors.about.com/library/weekly/aa100898.htm|url-status=dead|archive-date=March 6, 2013|title=Who Invented the Intel 1103 DRAM Chip?|publisher=ThoughtCo|author=Mary Bellis|date=23 Feb 2018|access-date=27 Feb 2018}}</ref> However, the 1102 had many problems, prompting Intel to begin work on their own improved design, in secrecy to avoid conflict with Honeywell. This became the first commercially available DRAM, the [[Intel 1103]], in October 1970, despite initial problems with low yield until the fifth revision of the [[photomask|mask]]s. The 1103 was designed by Joel Karp and laid out by Pat Earhart. The masks were cut by Barbara Maness and Judy Garcia.<ref>{{cite web |url=http://archive.computerhistory.org/resources/still-image/PENDING/X3665.2007/Semi_SIG/Notes%20from%20interview%20with%20John%20Reed.pdf |title=Archived copy |access-date=2014-01-15 |url-status=dead |archive-url=https://web.archive.org/web/20140116124021/http://archive.computerhistory.org/resources/still-image/PENDING/X3665.2007/Semi_SIG/Notes%20from%20interview%20with%20John%20Reed.pdf |archive-date=2014-01-16 }}</ref>{{original research inline|date=December 2016}} MOS memory overtook magnetic-core memory as the dominant memory technology in the early 1970s.<ref name="computerhistory1970"/> The first DRAM with multiplexed row and column [[address bus|address lines]] was the [[Mostek]] MK4096 4&nbsp;Kbit DRAM designed by Robert Proebsting and introduced in 1973. This addressing scheme uses the same address pins to receive the low half and the high half of the address of the memory cell being referenced, switching between the two halves on alternating bus cycles. This was a radical advance, effectively halving the number of address lines required, which enabled it to fit into packages with fewer pins, a cost advantage that grew with every jump in memory size. The MK4096 proved to be a very robust design for customer applications. At the 16&nbsp;Kbit density, the cost advantage increased; the 16&nbsp;Kbit Mostek MK4116 DRAM,<ref>{{cite web |first=Ken |last=Shirriff |title=Reverse-engineering the classic MK4116 16-kilobit DRAM chip |date=November 2020 |url=http://www.righto.com/2020/11/reverse-engineering-classic-mk4116-16.html}}</ref><ref>{{cite web |first=Robert |last=Proebsting |interviewer=Hendrie, Gardner |title=Oral History of Robert Proebsting |date=14 September 2005 |publisher=Computer History Museum |id=X3274.2006 |url=https://www.cs.utexas.edu/~hunt/class/2016-spring/cs350c/documents/Robert-Proebsting.pdf}}</ref> introduced in 1976, achieved greater than 75% worldwide DRAM market share. However, as density increased to 64&nbsp;Kbit in the early 1980s, Mostek and other US manufacturers were overtaken by Japanese DRAM manufacturers, which dominated the US and worldwide markets during the 1980s and 1990s. Early in 1985, [[Gordon Moore]] decided to withdraw Intel from producing DRAM.<ref>[http://www.shmj.or.jp/makimoto/en/pdf/makimoto_E_01_12.pdf "Outbreak of Japan-US Semiconductor War"] {{Webarchive|url=https://web.archive.org/web/20200229223250/http://www.shmj.or.jp/makimoto/en/pdf/makimoto_E_01_12.pdf |date=2020-02-29 }}</ref> By 1986, all United States chip makers had stopped making DRAMs.<ref> {{cite book |first1=William R. |last1=Nester |title=American Industrial Policy: Free or Managed Markets? |url=https://books.google.com/books?id=hCi_DAAAQBAJ |date=2016 |publisher=Springer |isbn=978-1-349-25568-9 |page=115}} </ref> In 1985, when 64K DRAM memory chips were the most common memory chips used in computers, and when more than 60 percent of those chips were produced by Japanese companies, semiconductor makers in the United States accused Japanese companies of [[export dumping]] for the purpose of driving makers in the United States out of the commodity memory chip business. Prices for the 64K product plummeted to as low as 35 cents apiece from $3.50 within 18 months, with disastrous financial consequences for some U.S. firms. On 4 December 1985 the US Commerce Department's International Trade Administration ruled in favor of the complaint.<ref> {{cite news |first1=David E. |last1=Sanger |url=https://www.nytimes.com/1985/08/03/business/japan-chip-dumping-is-found.html |title=Japan chip 'dumping' is found |newspaper=New York Times |date=3 August 1985}} <br/> {{cite news |first1=Donald |last1=Woutat. |url=https://www.latimes.com/archives/la-xpm-1985-12-04-fi-625-story.html |title=6 Japan Chip Makers Cited for Dumping |newspaper=Los Angeles Times |date=4 November 1985}} <br/> {{cite news |url=https://www.latimes.com/archives/la-xpm-1986-03-14-fi-20761-story.html |title=More Japan Firms Accused: U.S. Contends 5 Companies Dumped Chips |newspaper=Los Angeles Times |date=1986}} <br/> {{cite news |first1=David E. |last1=Sanger |url=https://www.nytimes.com/1987/11/03/business/japanese-chip-dumping-has-ended-us-finds.html |title=Japanese Chip Dumping Has Ended, U.S. Finds |newspaper=New York Times |date=3 November 1987}} </ref> [[Synchronous dynamic random-access memory]] (SDRAM) was developed by [[Samsung]]. The first commercial SDRAM chip was the Samsung KM48SL2000, which had a capacity of 16{{nbsp}}[[Mebibit|Mb]],<ref name="electronic-design">{{cite journal |title=Electronic Design |journal=[[Electronic Design]] |date=1993 |volume=41 |issue=15–21 |url=https://books.google.com/books?id=QmpJAQAAIAAJ |publisher=Hayden Publishing Company |quote=The first commercial synchronous DRAM, the Samsung 16-Mbit KM48SL2000, employs a single-bank architecture that lets system designers easily transition from asynchronous to synchronous systems.}}</ref> and was introduced in 1992.<ref>{{cite web |title=KM48SL2000-7 Datasheet |url=https://www.datasheetarchive.com/KM48SL2000-7-datasheet.html |publisher=[[Samsung]] |access-date=19 June 2019 |date=August 1992}}</ref> The first commercial [[DDR SDRAM]] ([[double data rate]] SDRAM) memory chip was Samsung's 64{{nbsp}}Mb DDR SDRAM chip, released in 1998.<ref>{{cite news |title=Samsung Electronics Develops First 128Mb SDRAM with DDR/SDR Manufacturing Option |url=https://www.samsung.com/semiconductor/insights/news-events/samsung-electronics-develops-first-128mb-sdram-with-ddr-sdr-manufacturing-option/ |access-date=23 June 2019 |work=[[Samsung Electronics]] |publisher=[[Samsung]] |date=10 February 1999}}</ref> Later, in 2001, Japanese DRAM makers accused Korean DRAM manufacturers of dumping.<ref> {{cite web |author1=Kuriko Miyake |url=http://edition.cnn.com/2001/TECH/industry/10/25/chip.dumping.idg/ |title=Japanese chip makers say they suspect dumping by Korean firms |publisher=CNN |date=2001}} <br/> {{cite news |url=https://www.itworld.com/article/2794396/japanese-chip-makers-suspect-dumping-by-korean-firms.html |title=Japanese chip makers suspect dumping by Korean firms |newspaper=ITWorld |date=2001}} <br/> {{cite web |url=https://www.eetimes.com/dram-pricing-investigation-in-japan-targets-hynix-samsung/ |title=DRAM pricing investigation in Japan targets Hynix, Samsung |date=2001 |publisher=EETimes }} <br/> {{cite web |url=https://phys.org/news/2006-01-korean-dram-japan.html |title=Korean DRAM finds itself shut out of Japan |publisher=Phys.org |date=2006 }} </ref> In 2002, US computer makers made claims of [[DRAM price fixing]]. =={{Anchor|ROW}}Principles of operation== [[Image:square array of mosfet cells read.png|thumb|250px|The principles of operation for reading a simple 4 <math>\times</math>4 DRAM array]] [[Image:DRAM_cell_field_(details).png|thumb|250px|Basic structure of a DRAM cell array]] DRAM is usually arranged in a rectangular array of charge storage cells consisting of one capacitor and transistor per data bit. The figure to the right shows a simple example with a four-by-four cell matrix. Some DRAM matrices are many thousands of cells in height and width.<ref>{{cite web |url = http://www.eng.utah.edu/~cs7810/pres/11-7810-12.pdf |title = Lecture 12: DRAM Basics |date = 2011-02-17 |access-date = 2015-03-10 |website = utah.edu |url-status = live |archive-url = https://web.archive.org/web/20150616050009/http://www.eng.utah.edu/~cs7810/pres/11-7810-12.pdf |archive-date = 2015-06-16 }}</ref><ref>{{cite web |url = https://www.cs.princeton.edu/courses/archive/fall04/cos471/lectures/20-Memory.pdf |title = Lecture 20: Memory Technology |date = 2004-11-23 |access-date = 2015-03-10 |author = David August |website = cs.princeton.edu |pages = 3–5 |url-status = dead |archive-url = https://web.archive.org/web/20050519185856/http://www.cs.princeton.edu/courses/archive/fall04/cos471/lectures/20-Memory.pdf |archive-date = 2005-05-19 }}</ref> The long horizontal lines connecting each row are known as word-lines. Each column of cells is composed of two bit-lines, each connected to every other storage cell in the column (the illustration to the right does not include this important detail). They are generally known as the "+" and "−" bit lines. A [[sense amplifier]] is essentially a pair of cross-connected [[inverter (logic gate)|inverter]]s between the bit-lines. The first inverter is connected with input from the + bit-line and output to the − bit-line. The second inverter's input is from the − bit-line with output to the + bit-line. This results in [[positive feedback]] which stabilizes after one bit-line is fully at its highest voltage and the other bit-line is at the lowest possible voltage. ===Operations to read a data bit from a DRAM storage cell=== # The sense amplifiers are disconnected.<ref name="Kenner:24,30">{{harvnb|Keeth|Baker|Johnson|Lin|2007|pp=24–30}}</ref> # The bit-lines are precharged to exactly equal voltages that are in between high and low logic levels (e.g., 0.5&nbsp;V if the two levels are 0 and 1&nbsp;V). The bit-lines are physically symmetrical to keep the capacitance equal, and therefore at this time their voltages are equal.<ref name="Kenner:24,30"/> # The precharge circuit is switched off. Because the bit-lines are relatively long, they have enough [[capacitance]] to maintain the precharged voltage for a brief time. This is an example of [[dynamic logic (digital logic)|dynamic logic]].<ref name="Kenner:24,30"/> # The desired row's word-line is then driven high to connect a cell's storage capacitor to its bit-line. This causes the transistor to conduct, transferring [[Electric charge|charge]] from the storage cell to the connected bit-line (if the stored value is 1) or from the connected bit-line to the storage cell (if the stored value is 0). Since the capacitance of the bit-line is typically much higher than the capacitance of the storage cell, the voltage on the bit-line increases very slightly if the storage cell's capacitor is discharged and decreases very slightly if the storage cell is charged (e.g., 0.54 and 0.45&nbsp;V in the two cases). As the other bit-line holds 0.50&nbsp;V there is a small voltage difference between the two twisted bit-lines.<ref name="Kenner:24,30"/> # The sense amplifiers are now connected to the bit-lines pairs. Positive feedback then occurs from the cross-connected inverters, thereby amplifying the small voltage difference between the odd and even row bit-lines of a particular column until one bit line is fully at the lowest voltage and the other is at the maximum high voltage. Once this has happened, the row is "open" (the desired cell data is available).<ref name="Kenner:24,30"/> # All storage cells in the open row are sensed simultaneously, and the sense amplifier outputs latched. A column address then selects which latch bit to connect to the external data bus. Reads of different columns in the same row can be performed without a [[Memory timings|row opening delay]] because, for the open row, all data has already been sensed and latched.<ref name="Kenner:24,30"/> # While reading of columns in an open row is occurring, current is flowing back up the bit-lines from the output of the sense amplifiers and recharging the storage cells. This reinforces (i.e. "refreshes") the charge in the storage cell by increasing the voltage in the storage capacitor if it was charged to begin with, or by keeping it discharged if it was empty. Note that due to the length of the bit-lines there is a fairly long propagation delay for the charge to be transferred back to the cell's capacitor. This takes significant time past the end of sense amplification, and thus overlaps with one or more column reads.<ref name="Kenner:24,30"/> # When done with reading all the columns in the current open row, the word-line is switched off to disconnect the storage cell capacitors (the row is "closed") from the bit-lines. The sense amplifier is switched off, and the bit-lines are precharged again.<ref name="Kenner:24,30"/> ===To write to memory=== [[File:Square array of mosfet cells write.png|thumb|250px|right|Writing to a DRAM cell]] To store data, a row is opened and a given column's sense amplifier is temporarily forced to the desired high or low voltage state, thus causing the bit-line to charge or discharge the cell storage capacitor to the desired value. Due to the sense amplifier's positive feedback configuration, it will hold a bit-line at stable voltage even after the forcing voltage is removed. During a write to a particular cell, all the columns in a row are sensed simultaneously just as during reading, so although only a single column's storage-cell capacitor charge is changed, the entire row is refreshed (written back in), as illustrated in the figure to the right.<ref name="Kenner:24,30"/> ===Refresh rate=== {{Main|Memory refresh}} {{See also|#Security}} Typically, manufacturers specify that each row must be refreshed every 64&nbsp;ms or less, as defined by the [[JEDEC]] standard. Some systems refresh every row in a burst of activity involving all rows every 64&nbsp;ms. Other systems refresh one row at a time staggered throughout the 64&nbsp;ms interval. For example, a system with 2<sup>13</sup>&nbsp;=&nbsp;8,192 rows would require a staggered [[refresh rate]] of one row every 7.8&nbsp;μs which is 64&nbsp;ms divided by 8,192 rows. A few real-time systems refresh a portion of memory at a time determined by an external timer function that governs the operation of the rest of a system, such as the [[vertical blanking interval]] that occurs every 10–20&nbsp;ms in video equipment. The row address of the row that will be refreshed next is maintained by external logic or a [[Counter (digital)|counter]] within the DRAM. A system that provides the row address (and the refresh command) does so to have greater control over when to refresh and which row to refresh. This is done to minimize conflicts with memory accesses, since such a system has both knowledge of the memory access patterns and the refresh requirements of the DRAM. When the row address is supplied by a counter within the DRAM, the system relinquishes control over which row is refreshed and only provides the refresh command. Some modern DRAMs are capable of self-refresh; no external logic is required to instruct the DRAM to refresh or to provide a row address. Under some conditions, most of the data in DRAM can be recovered even if the DRAM has not been refreshed for several minutes.<ref>[https://www.usenix.org/legacy/event/sec08/tech/full_papers/halderman/halderman_html/ Lest We Remember: Cold Boot Attacks on Encryption Keys] {{webarchive|url=https://web.archive.org/web/20150105103510/https://www.usenix.org/legacy/event/sec08/tech/full_papers/halderman/halderman_html/ |date=2015-01-05 }}, Halderman et al, USENIX Security 2008.</ref> ===Memory timing=== {{Main|Memory timings}} Many parameters are required to fully describe the timing of DRAM operation. Here are some examples for two timing grades of asynchronous DRAM, from a data sheet published in 1998:<ref name="Micron1">{{cite web|url=http://download.micron.com/pdf/datasheets/dram/d47b.pdf|title=Micron 4 Meg x 4 EDO DRAM data sheet|website=micron.com|access-date=8 May 2018|url-status=dead|archive-url=https://web.archive.org/web/20070927174618/http://download.micron.com/pdf/datasheets/dram/d47b.pdf|archive-date=27 September 2007}}</ref> {|class="wikitable" style="text-align:center;" |- !||"50&nbsp;ns"||"60&nbsp;ns"||Description |- |''t''<sub>RC</sub>||84&nbsp;ns||104&nbsp;ns||align=left|Random read or write cycle time (from one full /RAS cycle to another) |- |''t''<sub>RAC</sub>||50&nbsp;ns||60&nbsp;ns||align=left|Access time: /RAS low to valid data out |- |''t''<sub>RCD</sub>||11&nbsp;ns||14&nbsp;ns||align=left|/RAS low to /CAS low time |- |''t''<sub>RAS</sub>||50&nbsp;ns||60&nbsp;ns||align=left|/RAS pulse width (minimum /RAS low time) |- |''t''<sub>RP</sub>||30&nbsp;ns||40&nbsp;ns||align=left|/RAS precharge time (minimum /RAS high time) |- |''t''<sub>PC</sub>||20&nbsp;ns||25&nbsp;ns||align=left|Page-mode read or write cycle time (/CAS to /CAS) |- |''t''<sub>AA</sub>||25&nbsp;ns||30&nbsp;ns||align=left|Access time: Column address valid to valid data out (includes address [[setup time]] before /CAS low) |- |''t''<sub>CAC</sub>||13&nbsp;ns||15&nbsp;ns||align=left|Access time: /CAS low to valid data out |- |''t''<sub>CAS</sub>||8&nbsp;ns||10&nbsp;ns||align=left|/CAS low pulse width minimum |} Thus, the generally quoted number is the minimum /RAS low time. This is the time to open a row, allowing the sense amplifiers to settle. Note that the data access for a bit in the row is shorter, since that happens as soon as the sense amplifier has settled, but the DRAM requires additional time to propagate the amplified data back to recharge the cells. The time to read additional bits from an open page is much less, defined by the /CAS to /CAS cycle time. The quoted number is the clearest way to compare between the performance of different DRAM memories, as it sets the slower limit regardless of the row length or page size. Bigger arrays forcibly result in larger bit line capacitance and longer propagation delays, which cause this time to increase as the sense amplifier settling time is dependent on both the capacitance as well as the propagation latency. This is countered in modern DRAM chips by instead integrating many more complete DRAM arrays within a single chip, to accommodate more capacity without becoming too slow. When such a RAM is accessed by clocked logic, the times are generally rounded up to the nearest clock cycle. For example, when accessed by a 100&nbsp;MHz state machine (i.e. a 10&nbsp;ns clock), the 50&nbsp;ns DRAM can perform the first read in five clock cycles, and additional reads within the same page every two clock cycles. This was generally described as {{nowrap|"5-2-2-2"}} timing, as bursts of four reads within a page were common. When describing synchronous memory, timing is described by clock cycle counts separated by hyphens. These numbers represent {{nowrap|''t''<sub>CL</sub>-''t''<sub>RCD</sub>-''t''<sub>RP</sub>-''t''<sub>RAS</sub>}} in multiples of the DRAM clock cycle time. Note that this is half of the data transfer rate when [[double data rate]] signaling is used. JEDEC standard PC3200 timing is {{nowrap|3-4-4-8}}<ref>{{cite web|title=Corsair CMX1024-3200 (1&nbsp;GByte, two bank unbuffered DDR SDRAM DIMM)|url=http://www.corsairmemory.com/corsair/products/specs/cmx1024-3200.pdf|archive-url=https://web.archive.org/web/20080911032322/http://www.corsairmemory.com/_datasheets/cmx1024-3200.pdf|archive-date=11 September 2008|date=December 2003}}</ref> with a 200&nbsp;MHz clock, while premium-priced high performance PC3200 DDR DRAM DIMM might be operated at {{nowrap|2-2-2-5}} timing.<ref>{{cite web|title=Corsair TWINX1024-3200XL dual-channel memory kit|url=http://www.corsairmemory.com/corsair/products/specs/twinx1024-3200xl.pdf|archive-url=https://web.archive.org/web/20061207112238/http://www.corsairmemory.com/corsair/products/specs/twinx1024-3200xl.pdf|archive-date=7 December 2006|date=May 2004}}</ref> {|class="wikitable" style="text-align:center;" !rowspan=3| ||colspan=4|PC-3200 (DDR-400)||colspan=4|PC2-6400 (DDR2-800)||colspan=4|PC3-12800 (DDR3-1600)||rowspan=3|Description |- !colspan=2|Typical||colspan=2|Fast||colspan=2|Typical||colspan=2|Fast||colspan=2|Typical||colspan=2|Fast |- !cycles||time||cycles||time||cycles||time||cycles||time||cycles||time||cycles||time |- |''t''<sub>CL</sub>||3||15&nbsp;ns||2||10&nbsp;ns||5||12.5&nbsp;ns||4||10&nbsp;ns||9||11.25&nbsp;ns||8||10&nbsp;ns||align=left|/CAS low to valid data out (equivalent to ''t''<sub>CAC</sub>) |- |''t''<sub>RCD</sub>||4||20&nbsp;ns||2||10&nbsp;ns||5||12.5&nbsp;ns||4||10&nbsp;ns||9||11.25&nbsp;ns||8||10&nbsp;ns||align=left|/RAS low to /CAS low time |- |''t''<sub>RP</sub>||4||20&nbsp;ns||2||10&nbsp;ns||5||12.5&nbsp;ns||4||10&nbsp;ns||9||11.25&nbsp;ns||8||10&nbsp;ns||align=left|/RAS precharge time (minimum precharge to active time) |- |''t''<sub>RAS</sub>||8||40&nbsp;ns||5||25&nbsp;ns||16||40&nbsp;ns||12||30&nbsp;ns||27||33.75&nbsp;ns||24||30&nbsp;ns||align=left|Row active time (minimum active to precharge time) |} Minimum random access time has improved from ''t''<sub>RAC</sub>&nbsp;=&nbsp;50&nbsp;ns to {{nowrap|1=''t''<sub>RCD</sub> + ''t''<sub>CL</sub> = 22.5&nbsp;ns}}, and even the premium 20&nbsp;ns variety is only 2.5 times better compared to the typical case (~2.22 times better). [[CAS latency]] has improved even less, from {{nowrap|1=''t''<sub>CAC</sub> = 13&nbsp;ns}} to 10&nbsp;ns. However, the DDR3 memory does achieve 32 times higher bandwidth; due to internal pipelining and wide data paths, it can output two words every 1.25&nbsp;ns {{gaps|(1|600|u=Mword/s)}}, while the EDO DRAM can output one word per ''t''<sub>PC</sub>&nbsp;=&nbsp;20&nbsp;ns (50&nbsp;Mword/s). ====Timing abbreviations==== {| | *''t''<sub>CL</sub> – CAS latency *''t''<sub>CR</sub> – Command rate *''t''<sub>PTP</sub> – precharge to precharge delay *''t''<sub>RAS</sub> – RAS active time *''t''<sub>RCD</sub> – RAS to CAS delay *''t''<sub>REF</sub> – Refresh period *''t''<sub>RFC</sub> – Row refresh cycle time *''t''<sub>RP</sub> – RAS precharge | *''t''<sub>RRD</sub> – RAS to RAS delay *''t''<sub>RTP</sub> – Read to precharge delay *''t''<sub>RTR</sub> – Read to read delay *''t''<sub>RTW</sub> – Read to write delay *''t''<sub>WR</sub> – Write recovery time *''t''<sub>WTP</sub> – Write to precharge delay *''t''<sub>WTR</sub> – Write to read delay *''t''<sub>WTW</sub> – Write to write delay |} ==Memory cell design== {{See also|Memory cell (computing)}} Each bit of data in a DRAM is stored as a positive or negative electrical charge in a capacitive structure. The structure providing the capacitance, as well as the transistors that control access to it, is collectively referred to as a ''DRAM cell''. They are the fundamental building block in DRAM arrays. Multiple DRAM memory cell variants exist, but the most commonly used variant in modern DRAMs is the one-transistor, one-capacitor (1T1C) cell. The transistor is used to admit current into the capacitor during writes, and to discharge the capacitor during reads. The access transistor is designed to maximize drive strength and minimize transistor-transistor leakage (Kenner, pg. 34). <!--The design of the memory cell varies by DRAM manufacturer and process.--> The capacitor has two terminals, one of which is connected to its access transistor, and the other to either ground or V<sub>CC</sub>/2. In modern DRAMs, the latter case is more common, since it allows faster operation. In modern DRAMs, a voltage of +V<sub>CC</sub>/2 across the capacitor is required to store a logic one; and a voltage of -V<sub>CC</sub>/2 across the capacitor is required to store a logic zero. The electrical charge stored in the capacitor is measured in [[coulomb]]s. For a logic one, the charge is: <math display ="inline">Q = {V_{CC} \over 2} \cdot C</math>, where ''Q'' is the charge in coulombs and ''C'' is the capacitance in [[farad]]s. A logic zero has a charge of: <math display="inline">Q = {-V_{CC} \over 2} \cdot C</math>.<ref name="Kenner:22">{{harvnb|Keeth|Baker|Johnson|Lin|2007|p=22}}</ref> Reading or writing a logic one requires the wordline is driven to a voltage greater than the sum of V<sub>CC</sub> and the access transistor's threshold voltage (V<sub>TH</sub>). This voltage is called ''V<sub>CC</sub> pumped'' (V<sub>CCP</sub>). The time required to discharge a capacitor thus depends on what logic value is stored in the capacitor. A capacitor containing logic one begins to discharge when the voltage at the access transistor's gate terminal is above V<sub>CCP</sub>. If the capacitor contains a logic zero, it begins to discharge when the gate terminal voltage is above V<sub>TH</sub>.<ref name="Kenner:24">{{harvnb|Keeth|Baker|Johnson|Lin|2007|p=24}}</ref> ===Capacitor design=== Up until the mid-1980s, the capacitors in DRAM cells were co-planar with the access transistor (they were constructed on the surface of the substrate), thus they were referred to as ''planar'' capacitors. The drive to increase both density and, to a lesser extent, performance, required denser designs. This was strongly motivated by economics, a major consideration for DRAM devices, especially commodity DRAMs. The minimization of DRAM cell area can produce a denser device and lower the cost per bit of storage. Starting in the mid-1980s, the capacitor was moved above or below the silicon substrate in order to meet these objectives. DRAM cells featuring capacitors above the substrate are referred to as ''stacked'' or ''folded plate'' capacitors. Those with capacitors buried beneath the substrate surface are referred to as ''trench'' capacitors. In the 2000s, manufacturers were sharply divided by the type of capacitor used in their DRAMs and the relative cost and long-term scalability of both designs have been the subject of extensive debate. The majority of DRAMs, from major manufactures such as [[Hynix]], [[Micron Technology]], [[Samsung Electronics]] use the stacked capacitor structure,<!--where a cylindrical and tall capacitor is stacked on top of the transistor--> whereas smaller manufacturers such Nanya Technology use the trench capacitor structure (Jacob, pp.&nbsp;355–357). The capacitor in the stacked capacitor scheme is constructed above the surface of the substrate. The capacitor is constructed from an oxide-nitride-oxide (ONO) dielectric sandwiched in between two layers of polysilicon plates (the top plate is shared by all DRAM cells in an IC), and its shape can be a rectangle, a cylinder, or some other more complex shape. There are two basic variations of the stacked capacitor, based on its location relative to the bitline&mdash;capacitor-over-bitline (COB) and capacitor-under-bitline (CUB). In a former variation, the capacitor is underneath the bitline, which is usually made of metal, and the bitline has a polysilicon contact that extends downwards to connect it to the access transistor's source terminal. In the latter variation, the capacitor is constructed above the bitline, which is almost always made of polysilicon, but is otherwise identical to the COB variation. The advantage the COB variant possesses is the ease of fabricating the contact between the bitline and the access transistor's source as it is physically close to the substrate surface. However, this requires the active area to be laid out at a 45-degree angle when viewed from above, which makes it difficult to ensure that the capacitor contact does not touch the bitline. CUB cells avoid this, but suffer from difficulties in inserting contacts in between bitlines, since the size of features this close to the surface are at or near the minimum feature size of the process technology (Kenner, pp.&nbsp;33–42). The trench capacitor is constructed by etching a deep hole into the silicon substrate. The substrate volume surrounding the hole is then heavily doped to produce a buried n<sup>+</sup> plate and to reduce resistance. A layer of oxide-nitride-oxide dielectric is grown or deposited, and finally the hole is filled by depositing doped polysilicon, which forms the top plate of the capacitor. The top of the capacitor is connected to the access transistor's drain terminal via a polysilicon strap (Kenner, pp.&nbsp;42–44). A trench capacitor's depth-to-width ratio in DRAMs of the mid-2000s can exceed 50:1 (Jacob, p.&nbsp;357). Trench capacitors have numerous advantages. Since the capacitor is buried in the bulk of the substrate instead of lying on its surface, the area it occupies can be minimized to what is required to connect it to the access transistor's drain terminal without decreasing the capacitor's size, and thus capacitance (Jacob, pp.&nbsp;356–357). Alternatively, the capacitance can be increased by etching a deeper hole without any increase to surface area (Kenner, pg. 44). Another advantage of the trench capacitor is that its structure is under the layers of metal interconnect, allowing them to be more easily made planar, which enables it to be integrated in a logic-optimized process technology, which have many levels of interconnect above the substrate. The fact that the capacitor is under the logic means that it is constructed before the transistors are. This allows high-temperature processes to fabricate the capacitors, which would otherwise be degrading the logic transistors and their performance. This makes trench capacitors suitable for constructing [[embedded DRAM]] (eDRAM) (Jacob, p.&nbsp;357). Disadvantages of trench capacitors are difficulties in reliably constructing the capacitor's structures within deep holes and in connecting the capacitor to the access transistor's drain terminal (Kenner, pg. 44). ===Historical cell designs=== First-generation DRAM ICs (those with capacities of 1&nbsp;Kbit), of which the first was the [[Intel 1103]], used a three-transistor, one-capacitor (3T1C) DRAM cell. By the second-generation, the requirement to reduce cost by fitting the same amount of bits in a smaller area led to the almost universal adoption of the 1T1C DRAM cell, although a couple of devices with 4 and 16&nbsp;Kbit capacities continued to use the 3T1C cell for performance reasons (Kenner, p.&nbsp;6). These performance advantages included, most significantly, the ability to read the state stored by the capacitor without discharging it, avoiding the need to write back what was read out (non-destructive read). A second performance advantage relates to the 3T1C cell has separate transistors for reading and writing; the memory controller can exploit this feature to perform atomic read-modify-writes, where a value is read, modified, and then written back as a single, indivisible operation (Jacob, p.&nbsp;459). ===Proposed cell designs=== The one-transistor, zero-capacitor (1T, or 1T0C) DRAM cell has been a topic of research since the late-1990s. ''1T DRAM'' is a different way of constructing the basic DRAM memory cell, distinct from the classic one-transistor/one-capacitor (1T/1C) DRAM cell, which is also sometimes referred to as "1T DRAM", particularly in comparison to the 3T and 4T DRAM which it replaced in the 1970s. In 1T DRAM cells, the bit of data is still stored in a capacitive region controlled by a transistor, but this capacitance is no longer provided by a separate capacitor. 1T DRAM is a "capacitorless" bit cell design that stores data using the parasitic body capacitance that is inherent to [[silicon on insulator|silicon on insulator (SOI)]] transistors. Considered a nuisance in logic design, this [[floating body effect]] can be used for data storage. This gives 1T DRAM cells the greatest density as well as allowing easier integration with high-performance logic circuits since they are constructed with the same SOI process technologies. Refreshing of cells remains necessary, but unlike with 1T1C DRAM, reads in 1T DRAM are non-destructive; the stored charge causes a detectable shift in the [[threshold voltage]] of the transistor.<ref>{{cite conference|first=Jean-Michel|last=Sallese|title=Principles of the 1T Dynamic Access Memory Concept on SOI|book-title=MOS Modeling and Parameter Extraction Group Meeting|location=Wroclaw, Poland|date=2002-06-20|url=http://legwww.epfl.ch/ekv/mos-ak/wroclaw/MOS-AK_JMS.pdf|access-date=2007-10-07|url-status=live|archive-url=https://web.archive.org/web/20071129114317/http://legwww.epfl.ch/ekv/mos-ak/wroclaw/MOS-AK_JMS.pdf|archive-date=2007-11-29}}</ref> Performance-wise, access times are significantly better than capacitor-based DRAMs, but slightly worse than SRAM. There are several types of 1T DRAMs: the commercialized [[Z-RAM]] from Innovative Silicon, the TTRAM<ref>{{cite book|author1=F. Morishita|title=Proceedings of the IEEE 2005 Custom Integrated Circuits Conference, 2005|display-authors=etal|chapter=A capacitorless twin-transistor random access memory (TTRAM) on SOI|date=21 September 2005|volume=Custom Integrated Circuits Conference 2005|pages=428–431|doi=10.1109/CICC.2005.1568699|isbn=978-0-7803-9023-2|s2cid=14952912}}</ref> from Renesas and the [[A-RAM]] from the [[University of Granada|UGR]]/[[CNRS]] consortium. ==Array structures==<!--The RSes for all points in this section: Jacob, pp&nbsp;358–361; Kenner, pp.&nbsp;65&nbsp;75--> [[File:DRAM_self-aligned_storage_node_locations.png|thumb|right|Self-aligned storage node locations simplify the fabrication process in modern DRAM.<ref>J. Park et al., IEDM 2015.</ref>]] DRAM cells are laid out in a regular rectangular, grid-like pattern to facilitate their control and access via wordlines and bitlines. The physical layout of the DRAM cells in an array is typically designed so that two adjacent DRAM cells in a column share a single bitline contact to reduce their area. DRAM cell area is given as ''n'' F<sup>2</sup>, where ''n'' is a number derived from the DRAM cell design, and ''F'' is the smallest feature size of a given process technology. This scheme permits comparison of DRAM size over different process technology generations, as DRAM cell area scales at linear or near-linear rates with respect to feature size. The typical area for modern DRAM cells varies between 6–8 F<sup>2</sup>. The horizontal wire, the wordline, is connected to the gate terminal of every access transistor in its row. The vertical bitline is connected to the source terminal of the transistors in its column. The lengths of the wordlines and bitlines are limited. The wordline length is limited by the desired performance of the array, since propagation time of the signal that must transverse the wordline is determined by the [[RC time constant]]. The bitline length is limited by its capacitance (which increases with length), which must be kept within a range for proper sensing (as DRAMs operate by sensing the charge of the capacitor released onto the bitline). Bitline length is also limited by the amount of operating current the DRAM can draw and by how power can be dissipated, since these two characteristics are largely determined by the charging and discharging of the bitline. ===Bitline architecture=== [[Sense amplifier]]s are required to read the state contained in the DRAM cells. When the access transistor is activated, the electrical charge in the capacitor is shared with the bitline. The bitline's capacitance is much greater than that of the capacitor (approximately ten times). Thus, the change in bitline voltage is minute. Sense amplifiers are required to resolve the voltage differential into the levels specified by the logic signaling system. Modern DRAMs use differential sense amplifiers, and are accompanied by requirements as to how the DRAM arrays are constructed. Differential sense amplifiers work by driving their outputs to opposing extremes based on the relative voltages on pairs of bitlines. The sense amplifiers function effectively and efficient only if the capacitance and voltages of these bitline pairs are closely matched. Besides ensuring that the lengths of the bitlines and the number of attached DRAM cells attached to them are equal, two basic architectures to array design have emerged to provide for the requirements of the sense amplifiers: open and folded bitline arrays. ====Open bitline arrays==== The first generation (1&nbsp;Kbit) DRAM ICs, up until the 64&nbsp;Kbit generation (and some 256&nbsp;Kbit generation devices) had open bitline array architectures. In these architectures, the bitlines are divided into multiple segments, and the differential sense amplifiers are placed in between bitline segments. Because the sense amplifiers are placed between bitline segments, to route their outputs outside the array, an additional layer of interconnect placed above those used to construct the wordlines and bitlines is required. The DRAM cells that are on the edges of the array do not have adjacent segments. Since the differential sense amplifiers require identical capacitance and bitline lengths from both segments, dummy bitline segments are provided. The advantage of the open bitline array is a smaller array area, although this advantage is slightly diminished by the dummy bitline segments. The disadvantage that caused the near disappearance of this architecture is the inherent vulnerability to [[Noise (electronics)|noise]], which affects the effectiveness of the differential sense amplifiers. Since each bitline segment does not have any spatial relationship to the other, it is likely that noise would affect only one of the two bitline segments. ====Folded bitline arrays==== The folded bitline array architecture routes bitlines in pairs throughout the array. The close proximity of the paired bitlines provide superior [[Common-mode signal|common-mode]] noise rejection characteristics over open bitline arrays. The folded bitline array architecture began appearing in DRAM ICs during the mid-1980s, beginning with the 256&nbsp;Kbit generation. This architecture is favored in modern DRAM ICs for its superior noise immunity. This architecture is referred to as ''folded'' because it takes its basis from the open array architecture from the perspective of the circuit schematic. The folded array architecture appears to remove DRAM cells in alternate pairs (because two DRAM cells share a single bitline contact) from a column, then move the DRAM cells from an adjacent column into the voids. The location where the bitline twists occupies additional area. To minimize area overhead, engineers select the simplest and most area-minimal twisting scheme that is able to reduce noise under the specified limit. As process technology improves to reduce minimum feature sizes, the signal to noise problem worsens, since coupling between adjacent metal wires is inversely proportional to their pitch. The array folding and bitline twisting schemes that are used must increase in complexity in order to maintain sufficient noise reduction. Schemes that have desirable noise immunity characteristics for a minimal impact in area is the topic of current research (Kenner, p.&nbsp;37). ====Future array architectures==== Advances in process technology could result in open bitline array architectures being favored if it is able to offer better long-term area efficiencies; since folded array architectures require increasingly complex folding schemes to match any advance in process technology. The relationship between process technology, array architecture, and area efficiency is an active area of research. ===Row and column redundancy=== The first DRAM [[integrated circuit]]s did not have any redundancy. An integrated circuit with a defective DRAM cell would be discarded. Beginning with the 64&nbsp;Kbit generation, DRAM arrays have included spare rows and columns to improve yields. Spare rows and columns provide tolerance of minor fabrication defects which have caused a small number of rows or columns to be inoperable. The defective rows and columns are physically disconnected from the rest of the array by a triggering a [[Polyfuse (PROM)|programmable fuse]] or by cutting the wire by a laser. The spare rows or columns are substituted in by remapping logic in the row and column decoders (Jacob, pp.&nbsp;358–361). ==Error detection and correction== {{Main|RAM parity|ECC memory}} Electrical or magnetic interference inside a computer system can cause a single bit of DRAM to [[RAM parity|spontaneously flip]] to the opposite state. The majority of one-off ("[[soft error|soft]]") errors in DRAM chips occur as a result of [[background radiation]], chiefly [[neutron]]s from [[cosmic ray]] secondaries, which may change the contents of one or more memory cells or interfere with the circuitry used to read/write them. The problem can be mitigated by using [[Redundancy (engineering)|redundant]] memory bits and additional circuitry that use these bits to detect and correct soft errors. In most cases, the detection and correction are performed by the [[memory controller]]; sometimes, the required logic is transparently implemented within DRAM chips or modules, enabling the ECC memory functionality for otherwise ECC-incapable systems.<ref>{{cite web |url = http://www.intelligentmemory.com/ECC-DRAM/ |title = ECC DRAM – Intelligent Memory |access-date = 2015-01-16 |website = intelligentmemory.com |url-status = dead |archive-url = https://web.archive.org/web/20141223152744/http://www.intelligentmemory.com/ECC-DRAM/ |archive-date = 2014-12-23 }}</ref> The extra memory bits are used to record [[RAM parity|parity]] and to enable missing data to be reconstructed by [[error-correcting code]] (ECC). Parity allows the detection of all single-bit errors (actually, any odd number of wrong bits). The most common error-correcting code, a [[Hamming code#Hamming codes with additional parity (SECDED)|SECDED Hamming code]], allows a single-bit error to be corrected and, in the usual configuration, with an extra parity bit, double-bit errors to be detected.<ref>{{cite web|author1=Mastipuram, Ritesh|author2=Wee, Edwin C|title=Soft errors' impact on system reliability|url=http://www.edn.com/article/CA454636.html|website=EDN|publisher=Cypress Semiconductor|archive-url=https://web.archive.org/web/20070416115228/http://www.edn.com/article/CA454636.html|archive-date=16 April 2007|date=30 September 2004}}</ref> Recent studies give widely varying error rates with over seven orders of magnitude difference, ranging from {{nowrap|10<sup>&minus;10</sup>−10<sup>−17</sup> error/bit·h}}, roughly one bit error, per hour, per gigabyte of memory to one bit error, per century, per gigabyte of memory.<ref name="Borucki1">Borucki, "Comparison of Accelerated DRAM Soft Error Rates Measured at Component and System Level", 46th Annual International Reliability Physics Symposium, Phoenix, 2008, pp. 482–487</ref><ref name="Schroeder1">Schroeder, Bianca et al. (2009). [http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf "DRAM errors in the wild: a large-scale field study"] {{webarchive|url=https://web.archive.org/web/20150310193355/http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf |date=2015-03-10 }}. ''Proceedings of the Eleventh International Joint Conference on Measurement and Modeling of Computer Systems'', pp.&nbsp;193–204.</ref><ref name="Xin1">{{cite web|url=http://www.ece.rochester.edu/~xinli/usenix07/|title=A Memory Soft Error Measurement on Production Systems|website=www.ece.rochester.edu|access-date=8 May 2018|url-status=dead|archive-url=https://web.archive.org/web/20170214005146/http://www.ece.rochester.edu/~xinli/usenix07/|archive-date=14 February 2017}}</ref> The Schroeder et al. 2009 study reported a 32% chance that a given computer in their study would suffer from at least one correctable error per year, and provided evidence that most such errors are intermittent hard rather than soft errors and that trace amounts of radioactive material that had gotten into the chip packaging were emitting alpha particles and corrupting the data.<ref>{{cite web |url=https://spectrum.ieee.org/computing/hardware/drams-damning-defects-and-how-they-cripple-computers |title=DRAM's Damning Defects—and How They Cripple Computers - IEEE Spectrum |access-date=2015-11-24 |url-status=live |archive-url=https://web.archive.org/web/20151124182515/https://spectrum.ieee.org/computing/hardware/drams-damning-defects-and-how-they-cripple-computers |archive-date=2015-11-24 }}</ref> A 2010 study at the University of Rochester also gave evidence that a substantial fraction of memory errors are intermittent hard errors.<ref>{{cite web|url=http://www.cs.rochester.edu/~kshen/papers/usenix2010-li.pdf|title="A Realistic Evaluation of Memory Hardware Errors and Software System Susceptibility". Usenix Annual Tech Conference 2010|author1=Li, Huang|author2=Shen, Chu|year=2010|url-status=live|archive-url=https://web.archive.org/web/20150515214728/http://www.cs.rochester.edu/%7Ekshen/papers/usenix2010-li.pdf|archive-date=2015-05-15}}</ref> Large scale studies on non-ECC main memory in PCs and laptops suggest that undetected memory errors account for a substantial number of system failures: the 2011 study reported a 1-in-1700 chance per 1.5% of memory tested (extrapolating to an approximately 26% chance for total memory) that a computer would have a memory error every eight months.<ref>{{cite web|url=http://research.microsoft.com/pubs/144888/eurosys84-nightingale.pdf|title=Cycles, cells and platters: an empirical analysis of hardware failures on a million consumer PCs. Proceedings of the sixth conference on Computer systems (EuroSys '11). pp 343-356|year=2011|url-status=live|archive-url=https://web.archive.org/web/20121114111006/http://research.microsoft.com/pubs/144888/eurosys84-nightingale.pdf|archive-date=2012-11-14}}</ref> ==Security== ===Data remanence=== {{Main|Data remanence}} Although dynamic memory is only specified and ''guaranteed'' to retain its contents when supplied with power and refreshed every short period of time (often {{nowrap|64 ms}}), the memory cell [[capacitor]]s often retain their values for significantly longer time, particularly at low temperatures.<ref name=citp /> Under some conditions most of the data in DRAM can be recovered even if it has not been refreshed for several minutes.<ref name="Scheick1">{{Cite journal|last1=Scheick|first1=Leif Z.|last2=Guertin|first2=Steven M.|last3=Swift|first3=Gary M.|title=Analysis of radiation effects on individual DRAM cells|journal=IEEE Transactions on Nuclear Science|volume=47|issue=6|pages=2534–2538|date=December 2000|issn=0018-9499|doi=10.1109/23.903804|bibcode=2000ITNS...47.2534S}}</ref> This property can be used to circumvent security and recover data stored in the main memory that is assumed to be destroyed at power-down. The computer could be quickly rebooted, and the contents of the main memory read out; or by removing a computer's memory modules, cooling them to prolong data remanence, then transferring them to a different computer to be read out. Such an attack was demonstrated to circumvent popular disk encryption systems, such as the [[Open-source software|open source]] [[TrueCrypt]], Microsoft's [[BitLocker Drive Encryption]], and [[Apple Inc.|Apple]]'s [[FileVault]].<ref name=citp>{{cite web|title=Center for Information Technology Policy » Lest We Remember: Cold Boot Attacks on Encryption Keys |url=http://citp.princeton.edu/memory/ |url-status=dead |archive-url=https://web.archive.org/web/20110722182409/http://citp.princeton.edu/memory/ |archive-date=July 22, 2011 }} 080222 citp.princeton.edu</ref> This type of attack against a computer is often called a [[cold boot attack]]. ===Memory corruption=== {{See also|#Operations to read a data bit from a DRAM storage cell}} Dynamic memory, by definition, requires periodic refresh. Furthermore, reading dynamic memory is a destructive operation, requiring a recharge of the storage cells in the row that has been read. If these processes are imperfect, a read operation can cause [[soft error]]s. In particular, there is a risk that some charge can leak between nearby cells, causing the refresh or read of one row to cause a ''disturbance error'' in an adjacent or even nearby row. The awareness of disturbance errors dates back to the first commercially available DRAM in the early 1970s (the [[Intel 1103]]). Despite the mitigation techniques employed by manufacturers, commercial researchers proved in a 2014 analysis that commercially available [[DDR3]] DRAM chips manufactured in 2012 and 2013 are susceptible to disturbance errors.<ref>{{cite web | url = http://users.ece.cmu.edu/~omutlu/pub/dram-row-hammer_kim_talk_isca14.pdf | title = Flipping Bits in Memory Without Accessing Them: DRAM Disturbance Errors | date = June 24, 2014 | access-date = March 10, 2015 | author1 = Yoongu Kim | author2 = Ross Daly | author3 = Jeremie Kim | author4 = Chris Fallin | author5 = Ji Hye Lee | author6 = Donghyuk Lee | author7 = Chris Wilkerson | author8 = Konrad Lai | author9 = Onur Mutlu | website = ece.cmu.edu | url-status = live | archive-url = https://web.archive.org/web/20150326080426/http://users.ece.cmu.edu/~omutlu/pub/dram-row-hammer_kim_talk_isca14.pdf | archive-date = 2015-03-26 }}</ref> The associated side effect that led to observed bit flips has been dubbed ''[[row hammer]]''. ==Packaging== ===Memory module=== {{Main|Memory module}} Dynamic RAM ICs are usually packaged in molded epoxy cases, with an internal lead frame for interconnections between the [[Die (integrated circuit)|silicon die]] and the package leads. The original [[IBM PC]] design used ICs packaged in [[dual in-line package]]s (DIP), soldered directly to the main board or mounted in sockets. As memory density skyrocketed, the DIP package was no longer practical. For convenience in handling, several dynamic RAM integrated circuits may be mounted on a single memory module, allowing installation of 16-bit, 32-bit or 64-bit wide memory in a single unit, without the requirement for the installer to insert multiple individual integrated circuits. Memory modules may include additional devices for parity checking or error correction. Over the evolution of desktop computers, several standardized types of memory module have been developed. Laptop computers, game consoles, and specialized devices may have their own formats of memory modules not interchangeable with standard desktop parts for packaging or proprietary reasons. ===Embedded=== {{Main|eDRAM}} DRAM that is integrated into an integrated circuit designed in a logic-optimized process (such as an [[application-specific integrated circuit]], [[microprocessor]], or an entire [[system on a chip]]) is called ''embedded DRAM'' (eDRAM). Embedded DRAM requires DRAM cell designs that can be [[Semiconductor device fabrication|fabricated]] without preventing the fabrication of fast-switching transistors used in high-performance logic, and modification of the basic logic-optimized process technology to accommodate the process steps required to build DRAM cell structures. ==Versions== Since the fundamental DRAM cell and array has maintained the same basic structure for many years, the types of DRAM are mainly distinguished by the many different interfaces for communicating with DRAM chips. ===Asynchronous DRAM=== The original DRAM, now known by the [[retronym]] "''asynchronous DRAM''" was the first type of DRAM in use. From its origins in the late 1960s, it was commonplace in computing up until around 1997, when it was mostly replaced by ''Synchronous DRAM''. In the present day, manufacture of asynchronous RAM is relatively rare.<ref>{{cite web|url=http://www.radio-electronics.com/info/data/semicond/memory/sdram-memory-basics-tutorial.php|title=SDRAM Memory Basics & Tutorial|author=Ian Poole|access-date=26 Feb 2018|url-status=live|archive-url=https://web.archive.org/web/20180227153519/http://www.radio-electronics.com/info/data/semicond/memory/sdram-memory-basics-tutorial.php|archive-date=2018-02-27}}</ref> ====Principles of operation==== An asynchronous DRAM chip has power connections, some number of address inputs (typically 12), and a few (typically one or four) bidirectional data lines. There are four [[active-low]] control signals: * {{overline|RAS}}, the Row Address Strobe. The address inputs are captured on the falling edge of {{overline|RAS}}, and select a row to open. The row is held open as long as {{overline|RAS}} is low. * {{overline|CAS}}, the Column Address Strobe. The address inputs are captured on the falling edge of {{overline|CAS}}, and select a column from the currently open row to read or write. * {{overline|WE}}, Write Enable. This signal determines whether a given falling edge of {{overline|CAS}} is a read (if high) or write (if low). If low, the data inputs are also captured on the falling edge of {{overline|CAS}}. * {{overline|OE}}, Output Enable. This is an additional signal that controls output to the data I/O pins. The data pins are driven by the DRAM chip if {{overline|RAS}} and {{overline|CAS}} are low, {{overline|WE}} is high, and {{overline|OE}} is low. In many applications, {{overline|OE}} can be permanently connected low (output always enabled), but switching {{overline|OE}} can be useful when connecting multiple memory chips in parallel. This interface provides direct control of internal timing. When {{overline|RAS}} is driven low, a {{overline|CAS}} cycle must not be attempted until the sense amplifiers have sensed the memory state, and {{overline|RAS}} must not be returned high until the storage cells have been refreshed. When {{overline|RAS}} is driven high, it must be held high long enough for precharging to complete. Although the DRAM is asynchronous, the signals are typically generated by a clocked memory controller, which limits their timing to multiples of the controller's clock cycle. =====RAS Only Refresh===== Classic asynchronous DRAM is refreshed by opening each row in turn. The refresh cycles are distributed across the entire refresh interval in such a way that all rows are refreshed within the required interval. To refresh one row of the memory array using {{overline|RAS}} only refresh (ROR), the following steps must occur: # The row address of the row to be refreshed must be applied at the address input pins. # {{overline|RAS}} must switch from high to low. {{overline|CAS}} must remain high. # At the end of the required amount of time, {{overline|RAS}} must return high. This can be done by supplying a row address and pulsing {{overline|RAS}} low; it is not necessary to perform any {{overline|CAS}} cycles. An external counter is needed to iterate over the row addresses in turn.<ref>{{cite web|title=Understanding DRAM Operation (Application Note)|url=http://www.ece.cmu.edu/~ece548/localcpy/dramop.pdf|publisher=IBM|archive-url=https://web.archive.org/web/20170829153054/http://www.ece.cmu.edu/~ece548/localcpy/dramop.pdf|archive-date=29 August 2017|date=December 1996}}</ref> In some designs, the CPU handled RAM refresh, among these the [[Zilog Z80]] is perhaps the best known example, hosting a row counter in a [[processor register]], R, and including internal timers that would periodically poll the row at R and then increment the value in the register. Refreshes were interleaved with common instructions like memory reads.<ref>{{cite book |title=Z80 CPU User Manual |url=http://www.zilog.com/docs/z80/um0080.pdf |page=3}}</ref> In other systems, especially [[home computer]]s, refresh was often handled by the video circuitry as it often had to read from large areas of memory, and performed refreshes as part of these operations.<ref>{{cite web |url=https://retrocomputing.stackexchange.com/questions/14012/what-is-dram-refresh-and-why-is-the-weird-apple-ii-video-memory-layout-affected |title=What is DRAM refresh and why is the weird Apple II video memory layout affected by it?}}</ref> =====CAS before RAS refresh===== For convenience, the counter was quickly incorporated into the DRAM chips themselves. If the {{overline|CAS}} line is driven low before {{overline|RAS}} (normally an illegal operation), then the DRAM ignores the address inputs and uses an internal counter to select the row to open. This is known as {{overline|CAS}}-before-{{overline|RAS}} (CBR) refresh. This became the standard form of refresh for asynchronous DRAM, and is the only form generally used with SDRAM. =====Hidden refresh===== Given support of {{overline|CAS}}-before-{{overline|RAS}} refresh, it is possible to deassert {{overline|RAS}} while holding {{overline|CAS}} low to maintain data output. If {{overline|RAS}} is then asserted again, this performs a CBR refresh cycle while the DRAM outputs remain valid. Because data output is not interrupted, this is known as ''hidden refresh''.<ref>[http://www.downloads.reactivemicro.com/Public/Electronics/DRAM/DRAM%20Refresh.pdf Various Methods of DRAM Refresh] {{webarchive|url=https://web.archive.org/web/20111003001843/http://www.downloads.reactivemicro.com/Public/Electronics/DRAM/DRAM%20Refresh.pdf |date=2011-10-03 }} Micron Technical Note TN-04-30</ref> ====Page mode DRAM==== <!-- This section is linked from [[Fast page mode]] --> <!-- This section is linked from [[Fast Page Mode RAM]] --> <!-- This section is linked from [[Fast Page Mode DRAM]] --> <!-- This section is linked from [[FPM RAM]] --> <!-- This section is linked from [[FPM DRAM]] --> <!-- This section is linked from [[FPRAM]] --> <!-- This section is linked from [[Page mode DRAM]] --> <!-- This section is linked from [[Page mode memory]] --> <!-- This section is linked from [[Page mode RAM]] --> <!-- Change the above redirects if you change the title to this section (section links in redirects are case sensitive) --> '''Page mode DRAM''' is a minor modification to the first-generation DRAM IC interface which improved the performance of reads and writes to a row by avoiding the inefficiency of precharging and opening the same row repeatedly to access a different column. In page mode DRAM, after a row was opened by holding {{overline|RAS}} low, the row could be kept open, and multiple reads or writes could be performed to any of the columns in the row. Each column access was initiated by asserting {{overline|CAS}} and presenting a column address. For reads, after a delay (''t''<sub>CAC</sub>), valid data would appear on the data out pins, which were held at high-Z before the appearance of valid data. For writes, the write enable signal and write data would be presented along with the column address.<ref name="Kenner 13">{{harvnb|Keeth|Baker|Johnson|Lin|2007|p=13}}</ref> Page mode DRAM was in turn later improved with a small modification which further reduced latency. DRAMs with this improvement were called '''fast page mode DRAMs''' ('''FPM DRAMs'''). In page mode DRAM, {{overline|CAS}} was asserted before the column address was supplied. In FPM DRAM, the column address could be supplied while {{overline|CAS}} was still deasserted. The column address propagated through the column address data path, but did not output data on the data pins until {{overline|CAS}} was asserted. Prior to {{overline|CAS}} being asserted, the data out pins were held at high-Z. FPM DRAM reduced ''t''<sub>CAC</sub> latency.<ref name="Kenner 14">{{harvnb|Keeth|Baker|Johnson|Lin|2007|p=14}}</ref> Fast page mode DRAM was introduced in 1986 and was used with Intel 80486. ''Static column'' is a variant of fast page mode in which the column address does not need to be stored in, but rather, the address inputs may be changed with {{overline|CAS}} held low, and the data output will be updated accordingly a few nanoseconds later.<ref name="Kenner 14" /> ''Nibble mode'' is another variant in which four sequential locations within the row can be accessed with four consecutive pulses of {{overline|CAS}}. The difference from normal page mode is that the address inputs are not used for the second through fourth {{overline|CAS}} edges; they are generated internally starting with the address supplied for the first {{overline|CAS}} edge.<ref name="Kenner 14" /> =====Extended data out DRAM===== <!-- This section redirects from [[Extended data out DRAM]] --> <!-- This section redirects from [[Extended Data Out RAM]] --> <!-- This section redirects from [[Extended Data Out DRAM]] --> <!-- This section redirects from [[EDO DRAM]] --> <!-- This section redirects from [[EDO RAM]] --> <!-- Change the above redirects if you change the title to this section (section links in redirects are case sensitive) --> [[Image:Pair32mbEDO-DRAMdimms.jpg|thumb|A pair of 32&nbsp;[[Megabyte|MB]] EDO DRAM modules]] Extended data out DRAM (EDO DRAM) was invented and patented in the 1990s by [[Micron Technology]] who then licensed technology to many other memory manufacturers.<ref>{{cite book | author=S. Mueller | title=Upgrading and Repairing Laptops | year=2004 | publisher=Que; Har/Cdr Edition | page=221 | isbn=9780789728005 |url=https://books.google.com/books?id=xCXVGneKwScC}}</ref> EDO RAM, sometimes referred to as ''hyper page mode'' enabled DRAM, is similar to fast page mode DRAM with the additional feature that a new access cycle can be started while keeping the data output of the previous cycle active. This allows a certain amount of overlap in operation (pipelining), allowing somewhat improved performance. It is up to 30% faster than FPM DRAM,<ref>{{cite web|last1=Lin|first1=Albert|title=Memory Grades, the Most Confusing Subject|url=http://www.simmtester.com/page/news/showpubnews.asp?num=11|website=Simmtester.com|publisher=CST, Inc.|access-date=1 November 2017|date=20 December 1999|url-status=live|archive-url=https://web.archive.org/web/20171107005936/http://www.simmtester.com/page/news/showpubnews.asp?num=11|archive-date=7 November 2017}}</ref> which it began to replace in 1995 when [[Intel]] introduced the [[Mercury chipset|430FX chipset]] with EDO DRAM support. Irrespective of the performance gains, FPM and EDO SIMMs can be used interchangeably in many (but not all) applications.<ref>{{cite web|last1=Huang|first1=Andrew|title=Bunnie's RAM FAQ|url=http://www.bunniestudios.com/bunnie/dramfaq/DRAMFAQ.html|date=14 September 1996|url-status=live|archive-url=https://web.archive.org/web/20170612210850/http://www.bunniestudios.com/bunnie/dramfaq/DRAMFAQ.html|archive-date=12 June 2017}}</ref><ref>{{cite journal|author1=Cuppu, Vinodh|author2=Jacob, Bruce|author3=Davis, Brian|author4=Mudge, Trevor|title=High-Performance DRAMs in Workstation Environments|journal=IEEE Transactions on Computers|date=November 2001|volume=50|issue=11|pages=1133–1153|url=http://www.bunniestudios.com/bunnie/dramfaq/dram-workstation.pdf|access-date=2 November 2017|doi=10.1109/12.966491|hdl=1903/7456|url-status=live|archive-url=https://web.archive.org/web/20170808082644/http://www.bunniestudios.com/bunnie/dramfaq/dram-workstation.pdf|archive-date=8 August 2017|hdl-access=free}}</ref> To be precise, EDO DRAM begins data output on the falling edge of {{overline|CAS}} but does not stop the output when {{overline|CAS}} rises again. It holds the output valid (thus extending the data output time) until either {{overline|RAS}} is deasserted, or a new {{overline|CAS}} falling edge selects a different column address. Single-cycle EDO has the ability to carry out a complete memory transaction in one clock cycle. Otherwise, each sequential RAM access within the same page takes two clock cycles instead of three, once the page has been selected. EDO's performance and capabilities created an opportunity to reduce the immense performance loss associated with a lack of L2 cache in low-cost, commodity PCs. This was also good for notebooks due to difficulties with their limited form factor, and battery life limitations. Additionally, for systems with an L2 cache, the availability of EDO memory improved the average memory latency seen by applications over earlier FPM implementations. Single-cycle EDO DRAM became very popular on video cards towards the end of the 1990s. It was very low cost, yet nearly as efficient for performance as the far more costly VRAM. ====Burst EDO DRAM==== An evolution of EDO DRAM, burst EDO DRAM (BEDO DRAM), could process four memory addresses in one burst, for a maximum of {{nowrap|5-1-1-1}}, saving an additional three clocks over optimally designed EDO memory. It was done by adding an address counter on the chip to keep track of the next address. BEDO also added a pipeline stage allowing page-access cycle to be divided into two parts. During a memory-read operation, the first part accessed the data from the memory array to the output stage (second latch). The second part drove the data bus from this latch at the appropriate logic level. Since the data is already in the output buffer, quicker access time is achieved (up to 50% for large blocks of data) than with traditional EDO. Although BEDO DRAM showed additional optimization over EDO, by the time it was available the market had made a significant investment towards synchronous DRAM, or SDRAM.<ref>{{cite web|last=Kent |first=Dean |url=https://www.tomshardware.com/reviews/ram-guide,89-7.html |title=Burst EDO (BEDO) - Ram Guide {{pipe}} Tom's Hardware |publisher=Tomshardware.com |date= 24 October 1998|access-date=2022-03-09}}</ref> Even though BEDO RAM was superior to SDRAM in some ways, the latter technology quickly displaced BEDO. ==={{Anchor|ROW-ACTIVATION}}Synchronous dynamic RAM=== {{Main|Synchronous dynamic random-access memory}} Synchronous dynamic RAM (SDRAM) significantly revises the asynchronous memory interface, adding a clock (and a clock enable) line. All other signals are received on the rising edge of the clock. The {{overline|RAS}} and {{overline|CAS}} inputs no longer act as strobes, but are instead, along with {{overline|WE}}, part of a 3-bit command controlled by a new active-low strobe, ''chip select'' or {{overline|CS}}: {| class="wikitable" |+ SDRAM Command summary ! {{overline|CS}} ! {{overline|RAS}} ! {{overline|CAS}} ! {{overline|WE}} ! Address ! Command |- | {{no|H}} || {{n/a|x}} || {{n/a|x}} || {{n/a|x}} || {{n/a|x}} || Command inhibit (no operation) |- | {{yes|L}} || {{no|H}} || {{no|H}} || {{no|H}} || {{n/a|x}} || No operation |- | {{yes|L}} || {{no|H}} || {{no|H}} || {{yes|L}} || {{n/a|x}} || Burst Terminate: stop a read or write burst in progress. |- | {{yes|L}} || {{no|H}} || {{yes|L}} || {{no|H}} || style="text-align:center;" | Column || Read from currently active row. |- | {{yes|L}} || {{no|H}} || {{yes|L}} || {{yes|L}} || style="text-align:center;" | Column || Write to currently active row. |- | {{yes|L}} || {{yes|L}} || {{no|H}} || {{no|H}} || style="text-align:center;" | Row || Activate a row for read and write. |- | {{yes|L}} || {{yes|L}} || {{no|H}} || {{yes|L}} || {{n/a|x}} || Precharge (deactivate) the current row. |- | {{yes|L}} || {{yes|L}} || {{yes|L}} || {{no|H}} || {{n/a|x}} || Auto refresh: refresh one row of each bank, using an internal counter. |- | {{yes|L}} || {{yes|L}} || {{yes|L}} || {{yes|L}} || style="text-align:center;" | Mode || Load mode register: address bus specifies DRAM operation mode. |} The {{overline|OE}} line's function is extended to a per-byte "DQM" signal, which controls data input (writes) in addition to data output (reads). This allows DRAM chips to be wider than 8 bits while still supporting byte-granularity writes. Many timing parameters remain under the control of the DRAM controller. For example, a minimum time must elapse between a row being activated and a read or write command. One important parameter must be programmed into the SDRAM chip itself, namely the [[CAS latency]]. This is the number of clock cycles allowed for internal operations between a read command and the first data word appearing on the data bus. The "Load mode register" command is used to transfer this value to the SDRAM chip. Other configurable parameters include the length of read and write bursts, i.e. the number of words transferred per read or write command. The most significant change, and the primary reason that SDRAM has supplanted asynchronous RAM, is the support for multiple internal banks inside the DRAM chip. Using a few bits of "bank address" which accompany each command, a second bank can be activated and begin reading data ''while a read from the first bank is in progress''. By alternating banks, an SDRAM device can keep the data bus continuously busy, in a way that asynchronous DRAM cannot. ====Single data rate synchronous DRAM==== {{See also|Synchronous dynamic random-access memory|l1=SDR SDRAM}} Single data rate SDRAM (SDR SDRAM or SDR) is the original generation of SDRAM; it made a single transfer of data per clock cycle. ====Double data rate synchronous DRAM==== {{Main|DDR SDRAM|DDR2 SDRAM|DDR3 SDRAM|DDR4 SDRAM|DDR5 SDRAM}} [[File:SAMSUNG@DDR-SDRAM@64MBit@K4D62323HA-QC60 Stack-DSC03539-DSC03556 - ZS-DMap.jpg|thumb|The [[die (integrated circuit)|die]] of a Samsung DDR-SDRAM 64-MBit package]] Double data rate SDRAM (DDR SDRAM or DDR) was a later development of SDRAM, used in PC memory beginning in 2000. Subsequent versions are numbered sequentially (''DDR2'', ''DDR3'', etc.). DDR SDRAM internally performs double-width accesses at the clock rate, and uses a [[double data rate]] interface to transfer one half on each clock edge. DDR2 and DDR3 increased this factor to 4× and 8×, respectively, delivering 4-word and 8-word bursts over 2 and 4 clock cycles, respectively. The internal access rate is mostly unchanged (200 million per second for DDR-400, DDR2-800 and DDR3-1600 memory), but each access transfers more data. ====Direct Rambus DRAM==== {{Main|RDRAM}} ''Direct RAMBUS DRAM'' (''DRDRAM'') was developed by Rambus. First supported on [[motherboard]]s in 1999, it was intended to become an industry standard, but was outcompeted by [[DDR SDRAM]], making it technically obsolete by 2003. ====Reduced Latency DRAM==== {{Main|RLDRAM}} Reduced Latency DRAM (RLDRAM) is a high performance double data rate (DDR) SDRAM that combines fast, random access with high bandwidth, mainly intended for networking and caching applications. ===Graphics RAM=== Graphics RAMs are asynchronous and synchronous DRAMs designed for graphics-related tasks such as [[texture memory]] and [[framebuffer]]s, found on [[video card]]s. ====Video DRAM==== {{Main|VRAM}} Video DRAM (VRAM) is a [[dual-ported RAM|dual-ported]] variant of DRAM that was once commonly used to store the frame-buffer in some [[graphics card|graphics adaptors]]. ===={{Anchor|WRAM}}Window DRAM==== Window DRAM (WRAM) is a variant of VRAM that was once used in graphics adaptors such as the [[Matrox]] Millennium and [[Rage Pro#3D Rage Pro & Rage IIc|ATI 3D Rage Pro]]. WRAM was designed to perform better and cost less than VRAM. WRAM offered up to 25% greater bandwidth than VRAM and accelerated commonly used graphical operations such as text drawing and block fills.<ref name="wramdef">{{cite web |url=http://www.pcguide.com/ref/video/techWRAM-c.html |title=Window RAM (WRAM) |archive-url=https://web.archive.org/web/20100102101703/http://pcguide.com/ref/video/techWRAM-c.html |archive-date=2010-01-02}}</ref> ===={{Anchor|MDRAM}}Multibank DRAM==== [[File:MoSys MD908.png|thumb|[[MoSys]] MDRAM MD908]] Multibank DRAM (MDRAM) is a type of specialized DRAM developed by [[MoSys]]. It is constructed from small [[memory bank]]s of {{nowrap|256 kB}}, which are operated in an [[Interleaved memory|interleaved]] fashion, providing bandwidths suitable for graphics cards at a lower cost to memories such as [[Static Random Access Memory|SRAM]]. MDRAM also allows operations to two banks in a single clock cycle, permitting multiple concurrent accesses to occur if the accesses were independent. MDRAM was primarily used in graphic cards, such as those featuring the [[Tseng Labs]] ET6x00 chipsets. Boards based upon this chipset often had the unusual capacity of {{nowrap|2.25 MB}} because of MDRAM's ability to be implemented more easily with such capacities. A graphics card with {{nowrap|2.25 MB}} of MDRAM had enough memory to provide 24-bit color at a resolution of 1024×768&mdash;a very popular setting at the time. ===={{Anchor|SGRAM}}Synchronous graphics RAM==== Synchronous graphics RAM (SGRAM) is a specialized form of SDRAM for graphics adaptors. It adds functions such as [[bit mask]]ing (writing to a specified bit plane without affecting the others) and block write (filling a block of memory with a single colour). Unlike VRAM and WRAM, SGRAM is single-ported. However, it can open two memory pages at once, which simulates the dual-port nature of other video RAM technologies. ====Graphics double data rate SDRAM==== {{Main|GDDR}} [[File:Sapphire Ultimate HD 4670 512MB - Qimonda HYB18H512321BF-10-93577.jpg|alt=|thumb|A 512-MBit [[Qimonda]] GDDR3 SDRAM package]] [[File:SAMSUNG@QDDR3-SDRAM@256MBit@K5J55323QF-GC16 Stack-DSC01340-DSC01367 - ZS-retouched.jpg|thumb|Inside a Samsung GDDR3 256-MBit package]] Graphics double data rate SDRAM is a type of specialized [[Double data rate|DDR]] [[Synchronous dynamic random-access memory|SDRAM]] designed to be used as the main memory of [[graphics processing unit]]s (GPUs). GDDR SDRAM is distinct from commodity types of DDR SDRAM such as DDR3, although they share some core technologies. Their primary characteristics are higher clock frequencies for both the DRAM core and I/O interface, which provides greater memory bandwidth for GPUs. As of 2020, there are seven, successive generations of GDDR: [[GDDR2]], [[GDDR3]], [[GDDR4]], [[GDDR5]], [[GDDR5X]], [[GDDR6]] and [[GDDR6X]]. ==={{Anchor|PSRAM}}Pseudostatic RAM=== [[File:Olivetti JP90 - Toshiba TC518129CFWL-80 on controller-8514.jpg|thumb|1 Mbit high speed [[CMOS]] pseudostatic RAM, made by [[Toshiba]] ]] Pseudostatic RAM (PSRAM or PSDRAM) is dynamic RAM with built-in refresh and address-control circuitry to make it behave similarly to static RAM (SRAM). It combines the high density of DRAM with the ease of use of true SRAM. PSRAM is used in the Apple iPhone and other embedded systems such as XFlar Platform.<ref>{{cite news |first=Patrick |last=Mannion |title=Under the Hood — Update: Apple iPhone 3G exposed |newspaper=EETimes |date=2008-07-12 |url=http://www.eetimes.com/showArticle.jhtml?articleID=209000014#selection-1371.0-1383.10 |archive-url=https://archive.today/20130122004240/http://www.eetimes.com/showArticle.jhtml?articleID=209000014#selection-1371.0-1383.10 |url-status=dead |archive-date=2013-01-22 }}</ref> Some DRAM components have a "self-refresh mode". While this involves much of the same logic that is needed for pseudo-static operation, this mode is often equivalent to a standby mode. It is provided primarily to allow a system to suspend operation of its DRAM controller to save power without losing data stored in DRAM, rather than to allow operation without a separate DRAM controller as is in the case of mentioned PSRAMs. An [[EDRAM|embedded]] variant of PSRAM was sold by MoSys under the name [[1T-SRAM]]. It is a set of small DRAM banks with an SRAM cache in front to make it behave much like a true SRAM. It is used in [[Nintendo]] [[GameCube]] and [[Wii]] video game consoles. [[Cypress Semiconductor]]'s HyperRAM<ref>{{cite web |url=https://www.cypress.com/products/hyperram-octal-xspi-ram-memory|title=psRAM(HyperRAM) |publisher= Cypress semiconductor}}</ref> is a type of PSRAM supporting a [[JEDEC memory standards|JEDEC]]-compliant 8-pin HyperBus<ref>{{cite web |url=https://www.cypress.com/products/hyperbus-memory|title=Hyperbus |publisher= Cypress semiconductor}}</ref> or Octal xSPI interface. ==See also== {{Portal|Electronics}} * [[DRAM price fixing]] * [[Flash memory]] * [[List of device bit rates]] * [[Memory bank]] * [[Memory geometry]] ==References== {{Reflist|30em}} * {{cite book | last1=Keeth | first1=Brent | last2=Baker | first2=R. Jacob | last3=Johnson | first3=Brian | last4=Lin | first4=Feng | date=2007 | title=DRAM Circuit Design: Fundamental and High-Speed Topics | publisher=Wiley | isbn=978-0470184752 | url=https://books.google.com/books?id=TgW3LTubREQC }} ==Further reading== *{{cite book |first1=Bruce |last1=Jacob |first2=David |last2=Wang |first3=Spencer |last3=Ng |title=Memory Systems: Cache, DRAM, Disk |url=https://books.google.com/books?id=SrP3aWed-esC |date=2010 |orig-year=2008 |publisher=Morgan Kaufmann |isbn=978-0-08-055384-9}} ==External links== * {{cite book |url=http://www.eecs.berkeley.edu/~culler/courses/cs252-s05/lectures/cs252s05-lec01-intro.ppt#359,15,Memory%20Capacity%20%20(Single%20Chip%20DRAM |first1=David |last1=Culler |chapter=Memory Capacity (Single Chip DRAM) |page=15 |title=EECS 252 Graduate Computer Architecture: Lecture 1 |publisher=Electrical Engineering and Computer Sciences,University of California, Berkeley |year=2005}} Logarithmic graph 1980–2003 showing size and cycle time. * [http://www-1.ibm.com/servers/eserver/pseries/campaigns/chipkill.pdf Benefits of Chipkill-Correct ECC for PC Server Main Memory] — A 1997 discussion of SDRAM reliability—some interesting information on "soft errors" from [[cosmic ray]]s, especially with respect to [[error-correcting code]] schemes * [http://www.tezzaron.com/about/papers/soft_errors_1_1_secure.pdf Tezzaron Semiconductor Soft Error White Paper] 1994 literature review of memory error rate measurements. * {{cite web |url=http://www.nepp.nasa.gov/docuploads/40D7D6C9-D5AA-40FC-829DC2F6A71B02E9/Scal-00.pdf |title=Scaling and Technology Issues for Soft Error Rates |first1=A. |last1=Johnston |work=4th Annual Research Conference on Reliability Stanford University |date=October 2000|url-status=dead |archive-url=https://web.archive.org/web/20041103124422/http://www.nepp.nasa.gov/docuploads/40D7D6C9-D5AA-40FC-829DC2F6A71B02E9/Scal-00.pdf |archive-date=2004-11-03 }} * {{cite journal |url=http://www.research.ibm.com/journal/rd/462/mandelman.html |title=Challenges and future directions for the scaling of dynamic random-access memory (DRAM) |date=2002 |doi=10.1147/rd.462.0187|archive-url=https://web.archive.org/web/20050322211513/http://www.research.ibm.com/journal/rd/462/mandelman.html|archive-date=2005-03-22|last1=Mandelman |first1=J. A. |last2=Dennard |first2=R. H. |last3=Bronner |first3=G. B. |last4=Debrosse |first4=J. K. |last5=Divakaruni |first5=R. |last6=Li |first6=Y. |last7=Radens |first7=C. J. |journal=IBM Journal of Research and Development |volume=46 |issue=2.3 |pages=187–212 }} * [https://arstechnica.com/paedia/r/ram_guide/ram_guide.part1-2.html Ars Technica: RAM Guide] * {{cite thesis|first1=David Tawei |last1=Wang|title=Modern DRAM Memory Systems: Performance Analysis and a High Performance, Power-Constrained DRAM-Scheduling Algorithm|type=PhD |publisher=University of Maryland, College Park|year=2005|url=http://www.ece.umd.edu/~blj/papers/thesis-PhD-wang--DRAM.pdf|access-date=2007-03-10 |hdl=1903/2432}} A detailed description of current DRAM technology. * [http://www.cs.berkeley.edu/~pattrsn/294 Multi-port Cache DRAM — '''MP-RAM'''] * {{cite web |url=https://lwn.net/Articles/250967/ |title=What every programmer should know about memory |first1=Ulrich |last1=Drepper |year=2007}} {{DRAM}} {{Authority control}} [[Category:Computer memory]] [[Category:Types of RAM]] [[Category:American inventions]] [[Category:20th-century inventions]]'
Unified diff of changes made by edit (edit_diff)
'@@ -1,18 +1,14 @@ {{Short description|Type of computer memory}} -{{Redirect|DRAM||Dram (disambiguation){{!}}Dram}} -{{Hatnote|{{BDprefix|p=b}}}} {{citation style|date=April 2019}} -{{Memory types}} +[[Image:MT4C1024-HD.jpg|thumb|right|upright=1.8|A die photograph of the Micron Technology MT4C1024 DRAM integrated circuit (1994). It has a capacity of 1&nbsp;megabit equivalent to <math>2^{20}</math>bits or ]] +[[File:NeXTcube motherboard.jpg|thumb|Motherboard of the NeXTcube computer, 1990, with 64 MiB main memory DRAM (top left) and 256 KiB of VRAM<ref>{{cite web|url=http://www.nextcomputers.org/NeXTfiles/Docs/Hardware/NeXTServiceManualPages1-160_OCR.pdf |title=NeXTServiceManualPages1-160 |date= |access-date=2022-03-09}}</ref> (lower edge, right of middle)]] -[[Image:MT4C1024-HD.jpg|thumb|right|upright=1.8|A [[Die (integrated circuit)|die]] photograph of the [[Micron Technology]] MT4C1024 DRAM [[integrated circuit]] (1994). It has a capacity of 1&nbsp;[[megabit]] equivalent to <math>2^{20}</math>bits or {{nowrap|128 [[KiB]].}}<ref name=mt4acid>{{cite web |access-date=2016-04-02 |date=2012-11-15 |title=How to "open" microchip and what's inside? : ZeptoBars |url=http://zeptobars.com/en/read/how-to-open-microchip-asic-what-inside |quote=Micron MT4C1024 — 1 mebibit (220 bit) dynamic ram. Widely used in 286 and 386-era computers, early 90s. Die size - 8662x3969μm. |url-status=live |archive-url=https://web.archive.org/web/20160314015357/http://zeptobars.com/en/read/how-to-open-microchip-asic-what-inside |archive-date=2016-03-14 }}</ref>]] -[[File:NeXTcube motherboard.jpg|thumb|[[Motherboard]] of the [[NeXTcube]] computer, 1990, with 64 MiB main memory DRAM (top left) and 256 KiB of [[Video RAM (dual-ported DRAM)|VRAM]]<ref>{{cite web|url=http://www.nextcomputers.org/NeXTfiles/Docs/Hardware/NeXTServiceManualPages1-160_OCR.pdf |title=NeXTServiceManualPages1-160 |date= |access-date=2022-03-09}}</ref> (lower edge, right of middle)]] +'''Dynamic random-access memory''' ('''dynamic RAM''' or '''DRAM''') is a type of random-access semiconductor memory that stores each bit of data in a memory cell, usually consisting of a tiny capacitor and a transistor, both typically based on metal–oxide–semiconductor (MOS) technology. While most DRAM memory cell designs use a capacitor and transistor, some only use two transistors. In the designs where a capacitor is used, the capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The electric charge on the capacitors gradually leaks away; without intervention the data on the capacitor would soon be lost. To prevent this, DRAM requires an external ''memory refresh'' circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to static random-access memory (SRAM) which does not require data to be refreshed. Unlike flash memory, DRAM is volatile memory (vs. non-volatile memory), since it loses its data quickly when power is removed. However, DRAM does exhibit limited data remanence. -'''Dynamic random-access memory''' ('''dynamic RAM''' or '''DRAM''') is a type of [[random-access memory|random-access]] [[semiconductor memory]] that stores each [[bit]] of data in a [[memory cell (computing)|memory cell]], usually consisting of a tiny [[capacitor]] and a [[transistor]], both typically based on [[metal–oxide–semiconductor]] (MOS) technology. While most DRAM memory cell designs use a capacitor and transistor, some only use two transistors. In the designs where a capacitor is used, the capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The [[electric charge]] on the capacitors gradually leaks away; without intervention the data on the capacitor would soon be lost. To prevent this, DRAM requires an external ''[[memory refresh]]'' circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to [[static random-access memory]] (SRAM) which does not require data to be refreshed. Unlike [[flash memory]], DRAM is [[volatile memory]] (vs. [[non-volatile memory]]), since it loses its data quickly when power is removed. However, DRAM does exhibit limited [[data remanence]]. +DRAM typically takes the form of an integrated circuit chip, which can consist of dozens to billions of DRAM memory cells. DRAM chips are widely used in digital electronics where low-cost and high-capacity computer memory is required. One of the largest applications for DRAM is the ''main memory'' (colloquially called the "RAM") in modern computers and graphics cards (where the "main memory" is called the ''graphics memory''). It is also used in many portable devices and video game consoles. In contrast, SRAM, which is faster and more expensive than DRAM, is typically used where speed is of greater concern than cost and size, such as the cache memories in processors. -DRAM typically takes the form of an [[integrated circuit]] chip, which can consist of dozens to billions of DRAM memory cells. DRAM chips are widely used in [[digital electronics]] where low-cost and high-capacity [[computer memory]] is required. One of the largest applications for DRAM is the ''[[main memory]]'' (colloquially called the "RAM") in modern [[computer]]s and [[graphics card]]s (where the "main memory" is called the ''[[Video random access memory|graphics memory]]''). It is also used in many portable devices and [[video game]] consoles. In contrast, SRAM, which is faster and more expensive than DRAM, is typically used where speed is of greater concern than cost and size, such as the [[CPU cache|cache memories]] in [[Central processing unit|processor]]s. +The need to refresh DRAM demands more complicated circuitry and timing than SRAM. This is offset by the structural simplicity of DRAM memory cells: only one transistor and a capacitor are required per bit, compared to four or six transistors in SRAM. This allows DRAM to reach very high densities with a simultaneous reduction in cost per bit. Refreshing the data consumes power and a variety of techniques are used to manage the overall power consumption. -The need to refresh DRAM demands more complicated circuitry and timing than SRAM. This is offset by the structural simplicity of DRAM memory cells: only one transistor and a capacitor are required per bit, compared to four or six transistors in SRAM. This allows DRAM to reach very high [[Computer storage density|densities]] with a simultaneous reduction in cost per bit. Refreshing the data consumes power and a variety of techniques are used to manage the overall power consumption. - -DRAM had a 47% increase in the price-per-bit in 2017, the largest jump in 30 years since the 45% jump in 1988, while in recent years the price has been going down.<ref>{{cite web|url=http://www.icinsights.com/news/bulletins/Are-The-Major-DRAM-Suppliers-Stunting-DRAM-Demand/|title=Are the Major DRAM Suppliers Stunting DRAM Demand?|website=www.icinsights.com|access-date=2018-04-16|url-status=live|archive-url=https://web.archive.org/web/20180416202834/http://www.icinsights.com/news/bulletins/Are-The-Major-DRAM-Suppliers-Stunting-DRAM-Demand/|archive-date=2018-04-16}}</ref> In 2018, a "key characteristic of the DRAM market is that there are currently only three major suppliers — [[Micron Technology]], [[SK Hynix]] and [[Samsung Electronics]]" that are "keeping a pretty tight rein on their capacity".<ref>{{Cite web |last1=EETimes |last2=Hilson |first2=Gary |date=2018-09-20 |title=DRAM Boom and Bust is Business as Usual |url=https://www.eetimes.com/dram-boom-and-bust-is-business-as-usual/ |access-date=2022-08-03 |website=EETimes}}</ref> There is also [[Kioxia]] (previously [[Toshiba]] Memory Corporation after 2017 spin-off). Other manufacturers make and sell [[DIMM]]s (but not the DRAM chips in them), such as [[Kingston Technology]], and some manufacturers that sell [[stacked DRAM]] (used e.g. in the fastest [[supercomputer]]s on the [[exascale computing|exascale]]), separately such as [[Viking Technology]]. Others sell such integrated into other products, such as [[Fujitsu]] into its CPUs, AMD in GPUs, and [[Nvidia]], with [[HBM2]] in some of their GPU chips. +DRAM had a 47% increase in the price-per-bit in 2017, the largest jump in 30 years since the 45% jump in 1988, while in recent years the price has been going down. In 2018, a "key characteristic of the DRAM market is that there are currently only three major suppliers — Micron Technology, SK Hynix and Samsung Electronics" that are "keeping a pretty tight rein on their capacity". There is also Kioxia (previously Toshiba Memory Corporation after 2017 spin-off). Other manufacturers make and sell DIMMs (but not the DRAM chips in them), such as Kingston Technology, and some manufacturers that sell stacked DRAM (used e.g. in the fastest supercomputers on the exascale), separately such as Viking Technology. Others sell such integrated into other products, such as Fujitsu into its CPUs, AMD in GPUs, and Nvidia, with HBM2 in some of their GPU chips. ==History== @@ -124,4 +120,5 @@ ===Refresh rate=== {{Main|Memory refresh}} + {{See also|#Security}} '
New page size (new_size)
88444
Old page size (old_size)
90121
Size change in edit (edit_delta)
-1677
Lines added in edit (added_lines)
[ 0 => '[[Image:MT4C1024-HD.jpg|thumb|right|upright=1.8|A die photograph of the Micron Technology MT4C1024 DRAM integrated circuit (1994). It has a capacity of 1&nbsp;megabit equivalent to <math>2^{20}</math>bits or ]]', 1 => '[[File:NeXTcube motherboard.jpg|thumb|Motherboard of the NeXTcube computer, 1990, with 64 MiB main memory DRAM (top left) and 256 KiB of VRAM<ref>{{cite web|url=http://www.nextcomputers.org/NeXTfiles/Docs/Hardware/NeXTServiceManualPages1-160_OCR.pdf |title=NeXTServiceManualPages1-160 |date= |access-date=2022-03-09}}</ref> (lower edge, right of middle)]]', 2 => ''''Dynamic random-access memory''' ('''dynamic RAM''' or '''DRAM''') is a type of random-access semiconductor memory that stores each bit of data in a memory cell, usually consisting of a tiny capacitor and a transistor, both typically based on metal–oxide–semiconductor (MOS) technology. While most DRAM memory cell designs use a capacitor and transistor, some only use two transistors. In the designs where a capacitor is used, the capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The electric charge on the capacitors gradually leaks away; without intervention the data on the capacitor would soon be lost. To prevent this, DRAM requires an external ''memory refresh'' circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to static random-access memory (SRAM) which does not require data to be refreshed. Unlike flash memory, DRAM is volatile memory (vs. non-volatile memory), since it loses its data quickly when power is removed. However, DRAM does exhibit limited data remanence.', 3 => 'DRAM typically takes the form of an integrated circuit chip, which can consist of dozens to billions of DRAM memory cells. DRAM chips are widely used in digital electronics where low-cost and high-capacity computer memory is required. One of the largest applications for DRAM is the ''main memory'' (colloquially called the "RAM") in modern computers and graphics cards (where the "main memory" is called the ''graphics memory''). It is also used in many portable devices and video game consoles. In contrast, SRAM, which is faster and more expensive than DRAM, is typically used where speed is of greater concern than cost and size, such as the cache memories in processors.', 4 => 'The need to refresh DRAM demands more complicated circuitry and timing than SRAM. This is offset by the structural simplicity of DRAM memory cells: only one transistor and a capacitor are required per bit, compared to four or six transistors in SRAM. This allows DRAM to reach very high densities with a simultaneous reduction in cost per bit. Refreshing the data consumes power and a variety of techniques are used to manage the overall power consumption.', 5 => 'DRAM had a 47% increase in the price-per-bit in 2017, the largest jump in 30 years since the 45% jump in 1988, while in recent years the price has been going down. In 2018, a "key characteristic of the DRAM market is that there are currently only three major suppliers — Micron Technology, SK Hynix and Samsung Electronics" that are "keeping a pretty tight rein on their capacity". There is also Kioxia (previously Toshiba Memory Corporation after 2017 spin-off). Other manufacturers make and sell DIMMs (but not the DRAM chips in them), such as Kingston Technology, and some manufacturers that sell stacked DRAM (used e.g. in the fastest supercomputers on the exascale), separately such as Viking Technology. Others sell such integrated into other products, such as Fujitsu into its CPUs, AMD in GPUs, and Nvidia, with HBM2 in some of their GPU chips.', 6 => '' ]
Lines removed in edit (removed_lines)
[ 0 => '{{Redirect|DRAM||Dram (disambiguation){{!}}Dram}}', 1 => '{{Hatnote|{{BDprefix|p=b}}}}', 2 => '{{Memory types}}', 3 => '[[Image:MT4C1024-HD.jpg|thumb|right|upright=1.8|A [[Die (integrated circuit)|die]] photograph of the [[Micron Technology]] MT4C1024 DRAM [[integrated circuit]] (1994). It has a capacity of 1&nbsp;[[megabit]] equivalent to <math>2^{20}</math>bits or {{nowrap|128 [[KiB]].}}<ref name=mt4acid>{{cite web |access-date=2016-04-02 |date=2012-11-15 |title=How to "open" microchip and what's inside? : ZeptoBars |url=http://zeptobars.com/en/read/how-to-open-microchip-asic-what-inside |quote=Micron MT4C1024 — 1 mebibit (220 bit) dynamic ram. Widely used in 286 and 386-era computers, early 90s. Die size - 8662x3969μm. |url-status=live |archive-url=https://web.archive.org/web/20160314015357/http://zeptobars.com/en/read/how-to-open-microchip-asic-what-inside |archive-date=2016-03-14 }}</ref>]]', 4 => '[[File:NeXTcube motherboard.jpg|thumb|[[Motherboard]] of the [[NeXTcube]] computer, 1990, with 64 MiB main memory DRAM (top left) and 256 KiB of [[Video RAM (dual-ported DRAM)|VRAM]]<ref>{{cite web|url=http://www.nextcomputers.org/NeXTfiles/Docs/Hardware/NeXTServiceManualPages1-160_OCR.pdf |title=NeXTServiceManualPages1-160 |date= |access-date=2022-03-09}}</ref> (lower edge, right of middle)]]', 5 => ''''Dynamic random-access memory''' ('''dynamic RAM''' or '''DRAM''') is a type of [[random-access memory|random-access]] [[semiconductor memory]] that stores each [[bit]] of data in a [[memory cell (computing)|memory cell]], usually consisting of a tiny [[capacitor]] and a [[transistor]], both typically based on [[metal–oxide–semiconductor]] (MOS) technology. While most DRAM memory cell designs use a capacitor and transistor, some only use two transistors. In the designs where a capacitor is used, the capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The [[electric charge]] on the capacitors gradually leaks away; without intervention the data on the capacitor would soon be lost. To prevent this, DRAM requires an external ''[[memory refresh]]'' circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to [[static random-access memory]] (SRAM) which does not require data to be refreshed. Unlike [[flash memory]], DRAM is [[volatile memory]] (vs. [[non-volatile memory]]), since it loses its data quickly when power is removed. However, DRAM does exhibit limited [[data remanence]].', 6 => 'DRAM typically takes the form of an [[integrated circuit]] chip, which can consist of dozens to billions of DRAM memory cells. DRAM chips are widely used in [[digital electronics]] where low-cost and high-capacity [[computer memory]] is required. One of the largest applications for DRAM is the ''[[main memory]]'' (colloquially called the "RAM") in modern [[computer]]s and [[graphics card]]s (where the "main memory" is called the ''[[Video random access memory|graphics memory]]''). It is also used in many portable devices and [[video game]] consoles. In contrast, SRAM, which is faster and more expensive than DRAM, is typically used where speed is of greater concern than cost and size, such as the [[CPU cache|cache memories]] in [[Central processing unit|processor]]s.', 7 => 'The need to refresh DRAM demands more complicated circuitry and timing than SRAM. This is offset by the structural simplicity of DRAM memory cells: only one transistor and a capacitor are required per bit, compared to four or six transistors in SRAM. This allows DRAM to reach very high [[Computer storage density|densities]] with a simultaneous reduction in cost per bit. Refreshing the data consumes power and a variety of techniques are used to manage the overall power consumption.', 8 => '', 9 => 'DRAM had a 47% increase in the price-per-bit in 2017, the largest jump in 30 years since the 45% jump in 1988, while in recent years the price has been going down.<ref>{{cite web|url=http://www.icinsights.com/news/bulletins/Are-The-Major-DRAM-Suppliers-Stunting-DRAM-Demand/|title=Are the Major DRAM Suppliers Stunting DRAM Demand?|website=www.icinsights.com|access-date=2018-04-16|url-status=live|archive-url=https://web.archive.org/web/20180416202834/http://www.icinsights.com/news/bulletins/Are-The-Major-DRAM-Suppliers-Stunting-DRAM-Demand/|archive-date=2018-04-16}}</ref> In 2018, a "key characteristic of the DRAM market is that there are currently only three major suppliers — [[Micron Technology]], [[SK Hynix]] and [[Samsung Electronics]]" that are "keeping a pretty tight rein on their capacity".<ref>{{Cite web |last1=EETimes |last2=Hilson |first2=Gary |date=2018-09-20 |title=DRAM Boom and Bust is Business as Usual |url=https://www.eetimes.com/dram-boom-and-bust-is-business-as-usual/ |access-date=2022-08-03 |website=EETimes}}</ref> There is also [[Kioxia]] (previously [[Toshiba]] Memory Corporation after 2017 spin-off). Other manufacturers make and sell [[DIMM]]s (but not the DRAM chips in them), such as [[Kingston Technology]], and some manufacturers that sell [[stacked DRAM]] (used e.g. in the fastest [[supercomputer]]s on the [[exascale computing|exascale]]), separately such as [[Viking Technology]]. Others sell such integrated into other products, such as [[Fujitsu]] into its CPUs, AMD in GPUs, and [[Nvidia]], with [[HBM2]] in some of their GPU chips.' ]
Parsed HTML source of the new revision (new_html)
'<div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><div class="shortdescription nomobile noexcerpt noprint searchaux" style="display:none">Type of computer memory</div> <style data-mw-deduplicate="TemplateStyles:r1097763485">.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}</style><table class="box-Citation_style plainlinks metadata ambox ambox-style ambox-citation_style" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><span><img alt="" src="/upwiki/wikipedia/en/thumb/f/f2/Edit-clear.svg/40px-Edit-clear.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="/upwiki/wikipedia/en/thumb/f/f2/Edit-clear.svg/60px-Edit-clear.svg.png 1.5x, /upwiki/wikipedia/en/thumb/f/f2/Edit-clear.svg/80px-Edit-clear.svg.png 2x" data-file-width="48" data-file-height="48" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article <b>has an unclear <a href="/enwiki/wiki/Wikipedia:Citing_sources#Citation_style" title="Wikipedia:Citing sources">citation style</a></b>.<span class="hide-when-compact"> The references used may be made clearer with a different or consistent style of <a href="/enwiki/wiki/Wikipedia:Citing_sources" title="Wikipedia:Citing sources">citation</a> and <a href="/enwiki/wiki/Help:Footnotes" title="Help:Footnotes">footnoting</a>.</span> <span class="date-container"><i>(<span class="date">April 2019</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/enwiki/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this template message</a></small>)</i></span></div></td></tr></tbody></table> <figure class="mw-default-size mw-halign-right" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:MT4C1024-HD.jpg" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/9/9b/MT4C1024-HD.jpg/400px-MT4C1024-HD.jpg" decoding="async" width="400" height="194" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/9/9b/MT4C1024-HD.jpg/600px-MT4C1024-HD.jpg 1.5x, /upwiki/wikipedia/commons/thumb/9/9b/MT4C1024-HD.jpg/800px-MT4C1024-HD.jpg 2x" data-file-width="10944" data-file-height="5312" /></a><figcaption>A die photograph of the Micron Technology MT4C1024 DRAM integrated circuit (1994). It has a capacity of 1&#160;megabit equivalent to <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle 2^{20}}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <msup> <mn>2</mn> <mrow class="MJX-TeXAtom-ORD"> <mn>20</mn> </mrow> </msup> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle 2^{20}}</annotation> </semantics> </math></span><img src="https://wikimedia.org/enwiki/api/rest_v1/media/math/render/svg/30ccc1bd960deeb4fa9aa01b7e403c5e67dd1de4" class="mwe-math-fallback-image-inline mw-invert" aria-hidden="true" style="vertical-align: -0.338ex; width:3.039ex; height:2.676ex;" alt="{\displaystyle 2^{20}}"></span>bits or</figcaption></figure> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:NeXTcube_motherboard.jpg" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/d/d6/NeXTcube_motherboard.jpg/220px-NeXTcube_motherboard.jpg" decoding="async" width="220" height="216" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/d/d6/NeXTcube_motherboard.jpg/330px-NeXTcube_motherboard.jpg 1.5x, /upwiki/wikipedia/commons/thumb/d/d6/NeXTcube_motherboard.jpg/440px-NeXTcube_motherboard.jpg 2x" data-file-width="3371" data-file-height="3310" /></a><figcaption>Motherboard of the NeXTcube computer, 1990, with 64 MiB main memory DRAM (top left) and 256 KiB of VRAM<sup id="cite_ref-1" class="reference"><a href="#cite_note-1">&#91;1&#93;</a></sup> (lower edge, right of middle)</figcaption></figure> <p><b>Dynamic random-access memory</b> (<b>dynamic RAM</b> or <b>DRAM</b>) is a type of random-access semiconductor memory that stores each bit of data in a memory cell, usually consisting of a tiny capacitor and a transistor, both typically based on metal–oxide–semiconductor (MOS) technology. While most DRAM memory cell designs use a capacitor and transistor, some only use two transistors. In the designs where a capacitor is used, the capacitor can either be charged or discharged; these two states are taken to represent the two values of a bit, conventionally called 0 and 1. The electric charge on the capacitors gradually leaks away; without intervention the data on the capacitor would soon be lost. To prevent this, DRAM requires an external <i>memory refresh</i> circuit which periodically rewrites the data in the capacitors, restoring them to their original charge. This refresh process is the defining characteristic of dynamic random-access memory, in contrast to static random-access memory (SRAM) which does not require data to be refreshed. Unlike flash memory, DRAM is volatile memory (vs. non-volatile memory), since it loses its data quickly when power is removed. However, DRAM does exhibit limited data remanence. </p><p>DRAM typically takes the form of an integrated circuit chip, which can consist of dozens to billions of DRAM memory cells. DRAM chips are widely used in digital electronics where low-cost and high-capacity computer memory is required. One of the largest applications for DRAM is the <i>main memory</i> (colloquially called the "RAM") in modern computers and graphics cards (where the "main memory" is called the <i>graphics memory</i>). It is also used in many portable devices and video game consoles. In contrast, SRAM, which is faster and more expensive than DRAM, is typically used where speed is of greater concern than cost and size, such as the cache memories in processors. </p><p>The need to refresh DRAM demands more complicated circuitry and timing than SRAM. This is offset by the structural simplicity of DRAM memory cells: only one transistor and a capacitor are required per bit, compared to four or six transistors in SRAM. This allows DRAM to reach very high densities with a simultaneous reduction in cost per bit. Refreshing the data consumes power and a variety of techniques are used to manage the overall power consumption. </p><p>DRAM had a 47% increase in the price-per-bit in 2017, the largest jump in 30 years since the 45% jump in 1988, while in recent years the price has been going down. In 2018, a "key characteristic of the DRAM market is that there are currently only three major suppliers — Micron Technology, SK Hynix and Samsung Electronics" that are "keeping a pretty tight rein on their capacity". There is also Kioxia (previously Toshiba Memory Corporation after 2017 spin-off). Other manufacturers make and sell DIMMs (but not the DRAM chips in them), such as Kingston Technology, and some manufacturers that sell stacked DRAM (used e.g. in the fastest supercomputers on the exascale), separately such as Viking Technology. Others sell such integrated into other products, such as Fujitsu into its CPUs, AMD in GPUs, and Nvidia, with HBM2 in some of their GPU chips. </p> <div id="toc" class="toc" role="navigation" aria-labelledby="mw-toc-heading"><input type="checkbox" role="button" id="toctogglecheckbox" class="toctogglecheckbox" style="display:none" /><div class="toctitle" lang="en" dir="ltr"><h2 id="mw-toc-heading">Contents</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#History"><span class="tocnumber">1</span> <span class="toctext">History</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#Principles_of_operation"><span class="tocnumber">2</span> <span class="toctext">Principles of operation</span></a> <ul> <li class="toclevel-2 tocsection-3"><a href="#Operations_to_read_a_data_bit_from_a_DRAM_storage_cell"><span class="tocnumber">2.1</span> <span class="toctext">Operations to read a data bit from a DRAM storage cell</span></a></li> <li class="toclevel-2 tocsection-4"><a href="#To_write_to_memory"><span class="tocnumber">2.2</span> <span class="toctext">To write to memory</span></a></li> <li class="toclevel-2 tocsection-5"><a href="#Refresh_rate"><span class="tocnumber">2.3</span> <span class="toctext">Refresh rate</span></a></li> <li class="toclevel-2 tocsection-6"><a href="#Memory_timing"><span class="tocnumber">2.4</span> <span class="toctext">Memory timing</span></a> <ul> <li class="toclevel-3 tocsection-7"><a href="#Timing_abbreviations"><span class="tocnumber">2.4.1</span> <span class="toctext">Timing abbreviations</span></a></li> </ul> </li> </ul> </li> <li class="toclevel-1 tocsection-8"><a href="#Memory_cell_design"><span class="tocnumber">3</span> <span class="toctext">Memory cell design</span></a> <ul> <li class="toclevel-2 tocsection-9"><a href="#Capacitor_design"><span class="tocnumber">3.1</span> <span class="toctext">Capacitor design</span></a></li> <li class="toclevel-2 tocsection-10"><a href="#Historical_cell_designs"><span class="tocnumber">3.2</span> <span class="toctext">Historical cell designs</span></a></li> <li class="toclevel-2 tocsection-11"><a href="#Proposed_cell_designs"><span class="tocnumber">3.3</span> <span class="toctext">Proposed cell designs</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-12"><a href="#Array_structures"><span class="tocnumber">4</span> <span class="toctext">Array structures</span></a> <ul> <li class="toclevel-2 tocsection-13"><a href="#Bitline_architecture"><span class="tocnumber">4.1</span> <span class="toctext">Bitline architecture</span></a> <ul> <li class="toclevel-3 tocsection-14"><a href="#Open_bitline_arrays"><span class="tocnumber">4.1.1</span> <span class="toctext">Open bitline arrays</span></a></li> <li class="toclevel-3 tocsection-15"><a href="#Folded_bitline_arrays"><span class="tocnumber">4.1.2</span> <span class="toctext">Folded bitline arrays</span></a></li> <li class="toclevel-3 tocsection-16"><a href="#Future_array_architectures"><span class="tocnumber">4.1.3</span> <span class="toctext">Future array architectures</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-17"><a href="#Row_and_column_redundancy"><span class="tocnumber">4.2</span> <span class="toctext">Row and column redundancy</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-18"><a href="#Error_detection_and_correction"><span class="tocnumber">5</span> <span class="toctext">Error detection and correction</span></a></li> <li class="toclevel-1 tocsection-19"><a href="#Security"><span class="tocnumber">6</span> <span class="toctext">Security</span></a> <ul> <li class="toclevel-2 tocsection-20"><a href="#Data_remanence"><span class="tocnumber">6.1</span> <span class="toctext">Data remanence</span></a></li> <li class="toclevel-2 tocsection-21"><a href="#Memory_corruption"><span class="tocnumber">6.2</span> <span class="toctext">Memory corruption</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-22"><a href="#Packaging"><span class="tocnumber">7</span> <span class="toctext">Packaging</span></a> <ul> <li class="toclevel-2 tocsection-23"><a href="#Memory_module"><span class="tocnumber">7.1</span> <span class="toctext">Memory module</span></a></li> <li class="toclevel-2 tocsection-24"><a href="#Embedded"><span class="tocnumber">7.2</span> <span class="toctext">Embedded</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-25"><a href="#Versions"><span class="tocnumber">8</span> <span class="toctext">Versions</span></a> <ul> <li class="toclevel-2 tocsection-26"><a href="#Asynchronous_DRAM"><span class="tocnumber">8.1</span> <span class="toctext">Asynchronous DRAM</span></a> <ul> <li class="toclevel-3 tocsection-27"><a href="#Principles_of_operation_2"><span class="tocnumber">8.1.1</span> <span class="toctext">Principles of operation</span></a> <ul> <li class="toclevel-4 tocsection-28"><a href="#RAS_Only_Refresh"><span class="tocnumber">8.1.1.1</span> <span class="toctext">RAS Only Refresh</span></a></li> <li class="toclevel-4 tocsection-29"><a href="#CAS_before_RAS_refresh"><span class="tocnumber">8.1.1.2</span> <span class="toctext">CAS before RAS refresh</span></a></li> <li class="toclevel-4 tocsection-30"><a href="#Hidden_refresh"><span class="tocnumber">8.1.1.3</span> <span class="toctext">Hidden refresh</span></a></li> </ul> </li> <li class="toclevel-3 tocsection-31"><a href="#Page_mode_DRAM"><span class="tocnumber">8.1.2</span> <span class="toctext">Page mode DRAM</span></a> <ul> <li class="toclevel-4 tocsection-32"><a href="#Extended_data_out_DRAM"><span class="tocnumber">8.1.2.1</span> <span class="toctext">Extended data out DRAM</span></a></li> </ul> </li> <li class="toclevel-3 tocsection-33"><a href="#Burst_EDO_DRAM"><span class="tocnumber">8.1.3</span> <span class="toctext">Burst EDO DRAM</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-34"><a href="#Synchronous_dynamic_RAM"><span class="tocnumber">8.2</span> <span class="toctext">Synchronous dynamic RAM</span></a> <ul> <li class="toclevel-3 tocsection-35"><a href="#Single_data_rate_synchronous_DRAM"><span class="tocnumber">8.2.1</span> <span class="toctext">Single data rate synchronous DRAM</span></a></li> <li class="toclevel-3 tocsection-36"><a href="#Double_data_rate_synchronous_DRAM"><span class="tocnumber">8.2.2</span> <span class="toctext">Double data rate synchronous DRAM</span></a></li> <li class="toclevel-3 tocsection-37"><a href="#Direct_Rambus_DRAM"><span class="tocnumber">8.2.3</span> <span class="toctext">Direct Rambus DRAM</span></a></li> <li class="toclevel-3 tocsection-38"><a href="#Reduced_Latency_DRAM"><span class="tocnumber">8.2.4</span> <span class="toctext">Reduced Latency DRAM</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-39"><a href="#Graphics_RAM"><span class="tocnumber">8.3</span> <span class="toctext">Graphics RAM</span></a> <ul> <li class="toclevel-3 tocsection-40"><a href="#Video_DRAM"><span class="tocnumber">8.3.1</span> <span class="toctext">Video DRAM</span></a></li> <li class="toclevel-3 tocsection-41"><a href="#Window_DRAM"><span class="tocnumber">8.3.2</span> <span class="toctext">Window DRAM</span></a></li> <li class="toclevel-3 tocsection-42"><a href="#Multibank_DRAM"><span class="tocnumber">8.3.3</span> <span class="toctext">Multibank DRAM</span></a></li> <li class="toclevel-3 tocsection-43"><a href="#Synchronous_graphics_RAM"><span class="tocnumber">8.3.4</span> <span class="toctext">Synchronous graphics RAM</span></a></li> <li class="toclevel-3 tocsection-44"><a href="#Graphics_double_data_rate_SDRAM"><span class="tocnumber">8.3.5</span> <span class="toctext">Graphics double data rate SDRAM</span></a></li> </ul> </li> <li class="toclevel-2 tocsection-45"><a href="#Pseudostatic_RAM"><span class="tocnumber">8.4</span> <span class="toctext">Pseudostatic RAM</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-46"><a href="#See_also"><span class="tocnumber">9</span> <span class="toctext">See also</span></a></li> <li class="toclevel-1 tocsection-47"><a href="#References"><span class="tocnumber">10</span> <span class="toctext">References</span></a></li> <li class="toclevel-1 tocsection-48"><a href="#Further_reading"><span class="tocnumber">11</span> <span class="toctext">Further reading</span></a></li> <li class="toclevel-1 tocsection-49"><a href="#External_links"><span class="tocnumber">12</span> <span class="toctext">External links</span></a></li> </ul> </div> <h2><span class="mw-headline" id="History">History</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=1"title="Edit section: History" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:Original_1T1C_DRAM_design.svg" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/6/6a/Original_1T1C_DRAM_design.svg/350px-Original_1T1C_DRAM_design.svg.png" decoding="async" width="350" height="263" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/6/6a/Original_1T1C_DRAM_design.svg/525px-Original_1T1C_DRAM_design.svg.png 1.5x, /upwiki/wikipedia/commons/thumb/6/6a/Original_1T1C_DRAM_design.svg/700px-Original_1T1C_DRAM_design.svg.png 2x" data-file-width="800" data-file-height="600" /></a><figcaption>A schematic drawing depicting the cross-section of the original one-transistor, one-capacitor <a href="/enwiki/wiki/NMOS_logic" title="NMOS logic">NMOS</a> DRAM cell. It was patented in 1968.</figcaption></figure> <p>The <a href="/enwiki/wiki/Cryptanalysis" title="Cryptanalysis">cryptanalytic</a> machine code-named <i>"Aquarius"</i> used at <a href="/enwiki/wiki/Bletchley_Park" title="Bletchley Park">Bletchley Park</a> during <a href="/enwiki/wiki/World_War_II" title="World War II">World War II</a> incorporated a hard-wired dynamic memory. Paper tape was read and the characters on it "were remembered in a dynamic store. ... The store used a large bank of capacitors, which were either charged or not, a charged capacitor representing cross (1) and an uncharged capacitor dot (0). Since the charge gradually leaked away, a periodic pulse was applied to top up those still charged (hence the term 'dynamic')".<sup id="cite_ref-2" class="reference"><a href="#cite_note-2">&#91;2&#93;</a></sup> </p><p><a href="/enwiki/wiki/Toshiba" title="Toshiba">Toshiba</a> invented and introduced a dynamic RAM for its <a href="/enwiki/wiki/Electronic_calculator" class="mw-redirect" title="Electronic calculator">electronic calculator</a> <i>"Toscal" BC-1411</i> , which was introduced in November 1965,<sup id="cite_ref-toscal_3-0" class="reference"><a href="#cite_note-toscal-3">&#91;3&#93;</a></sup><sup id="cite_ref-4" class="reference"><a href="#cite_note-4">&#91;4&#93;</a></sup> it used a form of capacitive DRAM (180 bit) built from discrete <a href="/enwiki/wiki/Bipolar_transistor" class="mw-redirect" title="Bipolar transistor">bipolar</a> memory cells.<sup id="cite_ref-toscal_3-1" class="reference"><a href="#cite_note-toscal-3">&#91;3&#93;</a></sup><sup id="cite_ref-5" class="reference"><a href="#cite_note-5">&#91;5&#93;</a></sup> </p><p>In 1967, Tomohisa Yoshimaru and Hiroshi Komikawa from Toshiba applied for an American patent of the concept with a priority of May, 1966 due to an early Japanese application.<sup id="cite_ref-6" class="reference"><a href="#cite_note-6">&#91;6&#93;</a></sup> </p><p>The earliest forms of DRAM mentioned above used <a href="/enwiki/wiki/Bipolar_transistors" class="mw-redirect" title="Bipolar transistors">bipolar transistors</a>. While it offered improved performance over <a href="/enwiki/wiki/Magnetic-core_memory" title="Magnetic-core memory">magnetic-core memory</a>, bipolar DRAM could not compete with the lower price of the then-dominant magnetic-core memory.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7">&#91;7&#93;</a></sup> Capacitors had also been used for earlier memory schemes, such as the drum of the <a href="/enwiki/wiki/Atanasoff%E2%80%93Berry_Computer" class="mw-redirect" title="Atanasoff–Berry Computer">Atanasoff–Berry Computer</a>, the <a href="/enwiki/wiki/Williams_tube" title="Williams tube">Williams tube</a> and the <a href="/enwiki/wiki/Selectron_tube" title="Selectron tube">Selectron tube</a>. In 1966, Dr. <a href="/enwiki/wiki/Robert_Dennard" class="mw-redirect" title="Robert Dennard">Robert Dennard</a> at the <a href="/enwiki/wiki/IBM_Thomas_J._Watson_Research_Center" class="mw-redirect" title="IBM Thomas J. Watson Research Center">IBM Thomas J. Watson Research Center</a> was working on MOS memory and was trying to create an alternative to SRAM which required six MOS transistors for each <a href="/enwiki/wiki/Bit" title="Bit">bit</a> of data. While examining the characteristics of MOS technology, he found it was capable of building capacitors, and that storing a charge or no charge on the MOS capacitor could represent the 1 and 0 of a bit, while the MOS transistor could control writing the charge to the capacitor. This led to his development of the single-transistor MOS DRAM memory cell.<sup id="cite_ref-8" class="reference"><a href="#cite_note-8">&#91;8&#93;</a></sup> He filed a patent in 1967, and was granted U.S. patent number <a rel="nofollow" class="external text" href="https://web.archive.org/web/20151231134927/http://patft1.uspto.gov/netacgi/nph-Parser?patentnumber=3387286">3,387,286</a> in 1968.<sup id="cite_ref-9" class="reference"><a href="#cite_note-9">&#91;9&#93;</a></sup> MOS memory offered higher performance, was cheaper, and consumed less power, than magnetic-core memory.<sup id="cite_ref-computerhistory1970_10-0" class="reference"><a href="#cite_note-computerhistory1970-10">&#91;10&#93;</a></sup> </p><p>MOS DRAM chips were commercialized in 1969 by Advanced Memory Systems, Inc of <a href="/enwiki/wiki/Sunnyvale,_California" title="Sunnyvale, California">Sunnyvale, CA</a>. This 1024 bit chip was sold to <a href="/enwiki/wiki/Honeywell" title="Honeywell">Honeywell</a>, <a href="/enwiki/wiki/Raytheon" title="Raytheon">Raytheon</a>, <a href="/enwiki/wiki/Wang_Laboratories" title="Wang Laboratories">Wang Laboratories</a>, and others. The same year, Honeywell asked <a href="/enwiki/wiki/Intel" title="Intel">Intel</a> to make a DRAM using a three-transistor cell that they had developed. This became the Intel 1102 in early 1970.<sup id="cite_ref-11" class="reference"><a href="#cite_note-11">&#91;11&#93;</a></sup> However, the 1102 had many problems, prompting Intel to begin work on their own improved design, in secrecy to avoid conflict with Honeywell. This became the first commercially available DRAM, the <a href="/enwiki/wiki/Intel_1103" title="Intel 1103">Intel 1103</a>, in October 1970, despite initial problems with low yield until the fifth revision of the <a href="/enwiki/wiki/Photomask" title="Photomask">masks</a>. The 1103 was designed by Joel Karp and laid out by Pat Earhart. The masks were cut by Barbara Maness and Judy Garcia.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12">&#91;12&#93;</a></sup><sup class="noprint Inline-Template" style="white-space:nowrap;">&#91;<i><a href="/enwiki/wiki/Wikipedia:No_original_research" title="Wikipedia:No original research"><span title="The material near this tag possibly contains original research. (December 2016)">original research?</span></a></i>&#93;</sup> MOS memory overtook magnetic-core memory as the dominant memory technology in the early 1970s.<sup id="cite_ref-computerhistory1970_10-1" class="reference"><a href="#cite_note-computerhistory1970-10">&#91;10&#93;</a></sup> </p><p>The first DRAM with multiplexed row and column <a href="/enwiki/wiki/Address_bus" class="mw-redirect" title="Address bus">address lines</a> was the <a href="/enwiki/wiki/Mostek" title="Mostek">Mostek</a> MK4096 4&#160;Kbit DRAM designed by Robert Proebsting and introduced in 1973. This addressing scheme uses the same address pins to receive the low half and the high half of the address of the memory cell being referenced, switching between the two halves on alternating bus cycles. This was a radical advance, effectively halving the number of address lines required, which enabled it to fit into packages with fewer pins, a cost advantage that grew with every jump in memory size. The MK4096 proved to be a very robust design for customer applications. At the 16&#160;Kbit density, the cost advantage increased; the 16&#160;Kbit Mostek MK4116 DRAM,<sup id="cite_ref-13" class="reference"><a href="#cite_note-13">&#91;13&#93;</a></sup><sup id="cite_ref-14" class="reference"><a href="#cite_note-14">&#91;14&#93;</a></sup> introduced in 1976, achieved greater than 75% worldwide DRAM market share. However, as density increased to 64&#160;Kbit in the early 1980s, Mostek and other US manufacturers were overtaken by Japanese DRAM manufacturers, which dominated the US and worldwide markets during the 1980s and 1990s. </p><p>Early in 1985, <a href="/enwiki/wiki/Gordon_Moore" title="Gordon Moore">Gordon Moore</a> decided to withdraw Intel from producing DRAM.<sup id="cite_ref-15" class="reference"><a href="#cite_note-15">&#91;15&#93;</a></sup> By 1986, all United States chip makers had stopped making DRAMs.<sup id="cite_ref-16" class="reference"><a href="#cite_note-16">&#91;16&#93;</a></sup> </p><p>In 1985, when 64K DRAM memory chips were the most common memory chips used in computers, and when more than 60 percent of those chips were produced by Japanese companies, semiconductor makers in the United States accused Japanese companies of <a href="/enwiki/wiki/Export_dumping" class="mw-redirect" title="Export dumping">export dumping</a> for the purpose of driving makers in the United States out of the commodity memory chip business. Prices for the 64K product plummeted to as low as 35 cents apiece from $3.50 within 18 months, with disastrous financial consequences for some U.S. firms. On 4 December 1985 the US Commerce Department's International Trade Administration ruled in favor of the complaint.<sup id="cite_ref-17" class="reference"><a href="#cite_note-17">&#91;17&#93;</a></sup> </p><p><a href="/enwiki/wiki/Synchronous_dynamic_random-access_memory" title="Synchronous dynamic random-access memory">Synchronous dynamic random-access memory</a> (SDRAM) was developed by <a href="/enwiki/wiki/Samsung" title="Samsung">Samsung</a>. The first commercial SDRAM chip was the Samsung KM48SL2000, which had a capacity of 16<span class="nowrap">&#160;</span><a href="/enwiki/wiki/Mebibit" class="mw-redirect" title="Mebibit">Mb</a>,<sup id="cite_ref-electronic-design_18-0" class="reference"><a href="#cite_note-electronic-design-18">&#91;18&#93;</a></sup> and was introduced in 1992.<sup id="cite_ref-19" class="reference"><a href="#cite_note-19">&#91;19&#93;</a></sup> The first commercial <a href="/enwiki/wiki/DDR_SDRAM" title="DDR SDRAM">DDR SDRAM</a> (<a href="/enwiki/wiki/Double_data_rate" title="Double data rate">double data rate</a> SDRAM) memory chip was Samsung's 64<span class="nowrap">&#160;</span>Mb DDR SDRAM chip, released in 1998.<sup id="cite_ref-20" class="reference"><a href="#cite_note-20">&#91;20&#93;</a></sup> </p><p>Later, in 2001, Japanese DRAM makers accused Korean DRAM manufacturers of dumping.<sup id="cite_ref-21" class="reference"><a href="#cite_note-21">&#91;21&#93;</a></sup> </p><p>In 2002, US computer makers made claims of <a href="/enwiki/wiki/DRAM_price_fixing" class="mw-redirect" title="DRAM price fixing">DRAM price fixing</a>. </p> <h2><span class="mw-headline" id="Principles_of_operation"><span class="anchor" id="ROW"></span>Principles of operation</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=2"title="Edit section: Principles of operation" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <figure typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:Square_array_of_mosfet_cells_read.png" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/3/3d/Square_array_of_mosfet_cells_read.png/250px-Square_array_of_mosfet_cells_read.png" decoding="async" width="250" height="369" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/3/3d/Square_array_of_mosfet_cells_read.png/375px-Square_array_of_mosfet_cells_read.png 1.5x, /upwiki/wikipedia/commons/thumb/3/3d/Square_array_of_mosfet_cells_read.png/500px-Square_array_of_mosfet_cells_read.png 2x" data-file-width="630" data-file-height="930" /></a><figcaption>The principles of operation for reading a simple 4 <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\displaystyle \times }"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="true" scriptlevel="0"> <mo>&#x00D7;<!-- × --></mo> </mstyle> </mrow> <annotation encoding="application/x-tex">{\displaystyle \times }</annotation> </semantics> </math></span><img src="https://wikimedia.org/enwiki/api/rest_v1/media/math/render/svg/0ffafff1ad26cbe49045f19a67ce532116a32703" class="mwe-math-fallback-image-inline mw-invert" aria-hidden="true" style="vertical-align: 0.019ex; margin-bottom: -0.19ex; width:1.808ex; height:1.509ex;" alt="{\displaystyle \times }"></span>4 DRAM array</figcaption></figure> <figure typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:DRAM_cell_field_(details).png" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/9/9c/DRAM_cell_field_%28details%29.png/250px-DRAM_cell_field_%28details%29.png" decoding="async" width="250" height="278" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/9/9c/DRAM_cell_field_%28details%29.png/375px-DRAM_cell_field_%28details%29.png 1.5x, /upwiki/wikipedia/commons/thumb/9/9c/DRAM_cell_field_%28details%29.png/500px-DRAM_cell_field_%28details%29.png 2x" data-file-width="1569" data-file-height="1745" /></a><figcaption>Basic structure of a DRAM cell array</figcaption></figure> <p>DRAM is usually arranged in a rectangular array of charge storage cells consisting of one capacitor and transistor per data bit. The figure to the right shows a simple example with a four-by-four cell matrix. Some DRAM matrices are many thousands of cells in height and width.<sup id="cite_ref-22" class="reference"><a href="#cite_note-22">&#91;22&#93;</a></sup><sup id="cite_ref-23" class="reference"><a href="#cite_note-23">&#91;23&#93;</a></sup> </p><p>The long horizontal lines connecting each row are known as word-lines. Each column of cells is composed of two bit-lines, each connected to every other storage cell in the column (the illustration to the right does not include this important detail). They are generally known as the "+" and "−" bit lines. </p><p>A <a href="/enwiki/wiki/Sense_amplifier" title="Sense amplifier">sense amplifier</a> is essentially a pair of cross-connected <a href="/enwiki/wiki/Inverter_(logic_gate)" title="Inverter (logic gate)">inverters</a> between the bit-lines. The first inverter is connected with input from the + bit-line and output to the − bit-line. The second inverter's input is from the − bit-line with output to the + bit-line. This results in <a href="/enwiki/wiki/Positive_feedback" title="Positive feedback">positive feedback</a> which stabilizes after one bit-line is fully at its highest voltage and the other bit-line is at the lowest possible voltage. </p> <h3><span class="mw-headline" id="Operations_to_read_a_data_bit_from_a_DRAM_storage_cell">Operations to read a data bit from a DRAM storage cell</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=3"title="Edit section: Operations to read a data bit from a DRAM storage cell" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <ol><li>The sense amplifiers are disconnected.<sup id="cite_ref-Kenner:24,30_24-0" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup></li> <li>The bit-lines are precharged to exactly equal voltages that are in between high and low logic levels (e.g., 0.5&#160;V if the two levels are 0 and 1&#160;V). The bit-lines are physically symmetrical to keep the capacitance equal, and therefore at this time their voltages are equal.<sup id="cite_ref-Kenner:24,30_24-1" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup></li> <li>The precharge circuit is switched off. Because the bit-lines are relatively long, they have enough <a href="/enwiki/wiki/Capacitance" title="Capacitance">capacitance</a> to maintain the precharged voltage for a brief time. This is an example of <a href="/enwiki/wiki/Dynamic_logic_(digital_logic)" class="mw-redirect" title="Dynamic logic (digital logic)">dynamic logic</a>.<sup id="cite_ref-Kenner:24,30_24-2" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup></li> <li>The desired row's word-line is then driven high to connect a cell's storage capacitor to its bit-line. This causes the transistor to conduct, transferring <a href="/enwiki/wiki/Electric_charge" title="Electric charge">charge</a> from the storage cell to the connected bit-line (if the stored value is 1) or from the connected bit-line to the storage cell (if the stored value is 0). Since the capacitance of the bit-line is typically much higher than the capacitance of the storage cell, the voltage on the bit-line increases very slightly if the storage cell's capacitor is discharged and decreases very slightly if the storage cell is charged (e.g., 0.54 and 0.45&#160;V in the two cases). As the other bit-line holds 0.50&#160;V there is a small voltage difference between the two twisted bit-lines.<sup id="cite_ref-Kenner:24,30_24-3" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup></li> <li>The sense amplifiers are now connected to the bit-lines pairs. Positive feedback then occurs from the cross-connected inverters, thereby amplifying the small voltage difference between the odd and even row bit-lines of a particular column until one bit line is fully at the lowest voltage and the other is at the maximum high voltage. Once this has happened, the row is "open" (the desired cell data is available).<sup id="cite_ref-Kenner:24,30_24-4" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup></li> <li>All storage cells in the open row are sensed simultaneously, and the sense amplifier outputs latched. A column address then selects which latch bit to connect to the external data bus. Reads of different columns in the same row can be performed without a <a href="/enwiki/wiki/Memory_timings" title="Memory timings">row opening delay</a> because, for the open row, all data has already been sensed and latched.<sup id="cite_ref-Kenner:24,30_24-5" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup></li> <li>While reading of columns in an open row is occurring, current is flowing back up the bit-lines from the output of the sense amplifiers and recharging the storage cells. This reinforces (i.e. "refreshes") the charge in the storage cell by increasing the voltage in the storage capacitor if it was charged to begin with, or by keeping it discharged if it was empty. Note that due to the length of the bit-lines there is a fairly long propagation delay for the charge to be transferred back to the cell's capacitor. This takes significant time past the end of sense amplification, and thus overlaps with one or more column reads.<sup id="cite_ref-Kenner:24,30_24-6" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup></li> <li>When done with reading all the columns in the current open row, the word-line is switched off to disconnect the storage cell capacitors (the row is "closed") from the bit-lines. The sense amplifier is switched off, and the bit-lines are precharged again.<sup id="cite_ref-Kenner:24,30_24-7" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup></li></ol> <h3><span class="mw-headline" id="To_write_to_memory">To write to memory</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=4"title="Edit section: To write to memory" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <figure class="mw-halign-right" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:Square_array_of_mosfet_cells_write.png" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/8/80/Square_array_of_mosfet_cells_write.png/250px-Square_array_of_mosfet_cells_write.png" decoding="async" width="250" height="363" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/8/80/Square_array_of_mosfet_cells_write.png/375px-Square_array_of_mosfet_cells_write.png 1.5x, /upwiki/wikipedia/commons/thumb/8/80/Square_array_of_mosfet_cells_write.png/500px-Square_array_of_mosfet_cells_write.png 2x" data-file-width="640" data-file-height="930" /></a><figcaption>Writing to a DRAM cell</figcaption></figure> <p>To store data, a row is opened and a given column's sense amplifier is temporarily forced to the desired high or low voltage state, thus causing the bit-line to charge or discharge the cell storage capacitor to the desired value. Due to the sense amplifier's positive feedback configuration, it will hold a bit-line at stable voltage even after the forcing voltage is removed. During a write to a particular cell, all the columns in a row are sensed simultaneously just as during reading, so although only a single column's storage-cell capacitor charge is changed, the entire row is refreshed (written back in), as illustrated in the figure to the right.<sup id="cite_ref-Kenner:24,30_24-8" class="reference"><a href="#cite_note-Kenner:24,30-24">&#91;24&#93;</a></sup> </p> <h3><span class="mw-headline" id="Refresh_rate">Refresh rate</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=5"title="Edit section: Refresh rate" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <style data-mw-deduplicate="TemplateStyles:r1033289096">.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}</style><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/Memory_refresh" title="Memory refresh">Memory refresh</a></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="#Security">§&#160;Security</a></div> <p>Typically, manufacturers specify that each row must be refreshed every 64&#160;ms or less, as defined by the <a href="/enwiki/wiki/JEDEC" title="JEDEC">JEDEC</a> standard. </p><p>Some systems refresh every row in a burst of activity involving all rows every 64&#160;ms. Other systems refresh one row at a time staggered throughout the 64&#160;ms interval. For example, a system with 2<sup>13</sup>&#160;=&#160;8,192 rows would require a staggered <a href="/enwiki/wiki/Refresh_rate" title="Refresh rate">refresh rate</a> of one row every 7.8&#160;μs which is 64&#160;ms divided by 8,192 rows. A few real-time systems refresh a portion of memory at a time determined by an external timer function that governs the operation of the rest of a system, such as the <a href="/enwiki/wiki/Vertical_blanking_interval" title="Vertical blanking interval">vertical blanking interval</a> that occurs every 10–20&#160;ms in video equipment. </p><p>The row address of the row that will be refreshed next is maintained by external logic or a <a href="/enwiki/wiki/Counter_(digital)" title="Counter (digital)">counter</a> within the DRAM. A system that provides the row address (and the refresh command) does so to have greater control over when to refresh and which row to refresh. This is done to minimize conflicts with memory accesses, since such a system has both knowledge of the memory access patterns and the refresh requirements of the DRAM. When the row address is supplied by a counter within the DRAM, the system relinquishes control over which row is refreshed and only provides the refresh command. Some modern DRAMs are capable of self-refresh; no external logic is required to instruct the DRAM to refresh or to provide a row address. </p><p>Under some conditions, most of the data in DRAM can be recovered even if the DRAM has not been refreshed for several minutes.<sup id="cite_ref-25" class="reference"><a href="#cite_note-25">&#91;25&#93;</a></sup> </p> <h3><span class="mw-headline" id="Memory_timing">Memory timing</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=6"title="Edit section: Memory timing" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/Memory_timings" title="Memory timings">Memory timings</a></div> <p>Many parameters are required to fully describe the timing of DRAM operation. Here are some examples for two timing grades of asynchronous DRAM, from a data sheet published in 1998:<sup id="cite_ref-Micron1_26-0" class="reference"><a href="#cite_note-Micron1-26">&#91;26&#93;</a></sup> </p> <table class="wikitable" style="text-align:center;"> <tbody><tr> <th></th> <th>"50&#160;ns"</th> <th>"60&#160;ns"</th> <th>Description </th></tr> <tr> <td><i>t</i><sub>RC</sub></td> <td>84&#160;ns</td> <td>104&#160;ns</td> <td align="left">Random read or write cycle time (from one full /RAS cycle to another) </td></tr> <tr> <td><i>t</i><sub>RAC</sub></td> <td>50&#160;ns</td> <td>60&#160;ns</td> <td align="left">Access time: /RAS low to valid data out </td></tr> <tr> <td><i>t</i><sub>RCD</sub></td> <td>11&#160;ns</td> <td>14&#160;ns</td> <td align="left">/RAS low to /CAS low time </td></tr> <tr> <td><i>t</i><sub>RAS</sub></td> <td>50&#160;ns</td> <td>60&#160;ns</td> <td align="left">/RAS pulse width (minimum /RAS low time) </td></tr> <tr> <td><i>t</i><sub>RP</sub></td> <td>30&#160;ns</td> <td>40&#160;ns</td> <td align="left">/RAS precharge time (minimum /RAS high time) </td></tr> <tr> <td><i>t</i><sub>PC</sub></td> <td>20&#160;ns</td> <td>25&#160;ns</td> <td align="left">Page-mode read or write cycle time (/CAS to /CAS) </td></tr> <tr> <td><i>t</i><sub>AA</sub></td> <td>25&#160;ns</td> <td>30&#160;ns</td> <td align="left">Access time: Column address valid to valid data out (includes address <a href="/enwiki/wiki/Setup_time" class="mw-redirect" title="Setup time">setup time</a> before /CAS low) </td></tr> <tr> <td><i>t</i><sub>CAC</sub></td> <td>13&#160;ns</td> <td>15&#160;ns</td> <td align="left">Access time: /CAS low to valid data out </td></tr> <tr> <td><i>t</i><sub>CAS</sub></td> <td>8&#160;ns</td> <td>10&#160;ns</td> <td align="left">/CAS low pulse width minimum </td></tr></tbody></table> <p>Thus, the generally quoted number is the minimum /RAS low time. This is the time to open a row, allowing the sense amplifiers to settle. Note that the data access for a bit in the row is shorter, since that happens as soon as the sense amplifier has settled, but the DRAM requires additional time to propagate the amplified data back to recharge the cells. The time to read additional bits from an open page is much less, defined by the /CAS to /CAS cycle time. The quoted number is the clearest way to compare between the performance of different DRAM memories, as it sets the slower limit regardless of the row length or page size. Bigger arrays forcibly result in larger bit line capacitance and longer propagation delays, which cause this time to increase as the sense amplifier settling time is dependent on both the capacitance as well as the propagation latency. This is countered in modern DRAM chips by instead integrating many more complete DRAM arrays within a single chip, to accommodate more capacity without becoming too slow. </p><p>When such a RAM is accessed by clocked logic, the times are generally rounded up to the nearest clock cycle. For example, when accessed by a 100&#160;MHz state machine (i.e. a 10&#160;ns clock), the 50&#160;ns DRAM can perform the first read in five clock cycles, and additional reads within the same page every two clock cycles. This was generally described as <span class="nowrap">"5-2-2-2"</span> timing, as bursts of four reads within a page were common. </p><p>When describing synchronous memory, timing is described by clock cycle counts separated by hyphens. These numbers represent <span class="nowrap"><i>t</i><sub>CL</sub>-<i>t</i><sub>RCD</sub>-<i>t</i><sub>RP</sub>-<i>t</i><sub>RAS</sub></span> in multiples of the DRAM clock cycle time. Note that this is half of the data transfer rate when <a href="/enwiki/wiki/Double_data_rate" title="Double data rate">double data rate</a> signaling is used. JEDEC standard PC3200 timing is <span class="nowrap">3-4-4-8</span><sup id="cite_ref-27" class="reference"><a href="#cite_note-27">&#91;27&#93;</a></sup> with a 200&#160;MHz clock, while premium-priced high performance PC3200 DDR DRAM DIMM might be operated at <span class="nowrap">2-2-2-5</span> timing.<sup id="cite_ref-28" class="reference"><a href="#cite_note-28">&#91;28&#93;</a></sup> </p> <table class="wikitable" style="text-align:center;"> <tbody><tr> <th rowspan="3"></th> <th colspan="4">PC-3200 (DDR-400)</th> <th colspan="4">PC2-6400 (DDR2-800)</th> <th colspan="4">PC3-12800 (DDR3-1600)</th> <th rowspan="3">Description </th></tr> <tr> <th colspan="2">Typical</th> <th colspan="2">Fast</th> <th colspan="2">Typical</th> <th colspan="2">Fast</th> <th colspan="2">Typical</th> <th colspan="2">Fast </th></tr> <tr> <th>cycles</th> <th>time</th> <th>cycles</th> <th>time</th> <th>cycles</th> <th>time</th> <th>cycles</th> <th>time</th> <th>cycles</th> <th>time</th> <th>cycles</th> <th>time </th></tr> <tr> <td><i>t</i><sub>CL</sub></td> <td>3</td> <td>15&#160;ns</td> <td>2</td> <td>10&#160;ns</td> <td>5</td> <td>12.5&#160;ns</td> <td>4</td> <td>10&#160;ns</td> <td>9</td> <td>11.25&#160;ns</td> <td>8</td> <td>10&#160;ns</td> <td align="left">/CAS low to valid data out (equivalent to <i>t</i><sub>CAC</sub>) </td></tr> <tr> <td><i>t</i><sub>RCD</sub></td> <td>4</td> <td>20&#160;ns</td> <td>2</td> <td>10&#160;ns</td> <td>5</td> <td>12.5&#160;ns</td> <td>4</td> <td>10&#160;ns</td> <td>9</td> <td>11.25&#160;ns</td> <td>8</td> <td>10&#160;ns</td> <td align="left">/RAS low to /CAS low time </td></tr> <tr> <td><i>t</i><sub>RP</sub></td> <td>4</td> <td>20&#160;ns</td> <td>2</td> <td>10&#160;ns</td> <td>5</td> <td>12.5&#160;ns</td> <td>4</td> <td>10&#160;ns</td> <td>9</td> <td>11.25&#160;ns</td> <td>8</td> <td>10&#160;ns</td> <td align="left">/RAS precharge time (minimum precharge to active time) </td></tr> <tr> <td><i>t</i><sub>RAS</sub></td> <td>8</td> <td>40&#160;ns</td> <td>5</td> <td>25&#160;ns</td> <td>16</td> <td>40&#160;ns</td> <td>12</td> <td>30&#160;ns</td> <td>27</td> <td>33.75&#160;ns</td> <td>24</td> <td>30&#160;ns</td> <td align="left">Row active time (minimum active to precharge time) </td></tr></tbody></table> <p>Minimum random access time has improved from <i>t</i><sub>RAC</sub>&#160;=&#160;50&#160;ns to <span class="nowrap"><i>t</i><sub>RCD</sub> + <i>t</i><sub>CL</sub> = 22.5&#160;ns</span>, and even the premium 20&#160;ns variety is only 2.5 times better compared to the typical case (~2.22 times better). <a href="/enwiki/wiki/CAS_latency" title="CAS latency">CAS latency</a> has improved even less, from <span class="nowrap"><i>t</i><sub>CAC</sub> = 13&#160;ns</span> to 10&#160;ns. However, the DDR3 memory does achieve 32 times higher bandwidth; due to internal pipelining and wide data paths, it can output two words every 1.25&#160;ns <span style="white-space:nowrap">(1<span style="margin-left:0.25em">600</span>&#160;Mword/s)</span>, while the EDO DRAM can output one word per <i>t</i><sub>PC</sub>&#160;=&#160;20&#160;ns (50&#160;Mword/s). </p> <h4><span class="mw-headline" id="Timing_abbreviations">Timing abbreviations</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=7"title="Edit section: Timing abbreviations" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <table> <tbody><tr> <td> <ul><li><i>t</i><sub>CL</sub> – CAS latency</li> <li><i>t</i><sub>CR</sub> – Command rate</li> <li><i>t</i><sub>PTP</sub> – precharge to precharge delay</li> <li><i>t</i><sub>RAS</sub> – RAS active time</li> <li><i>t</i><sub>RCD</sub> – RAS to CAS delay</li> <li><i>t</i><sub>REF</sub> – Refresh period</li> <li><i>t</i><sub>RFC</sub> – Row refresh cycle time</li> <li><i>t</i><sub>RP</sub> – RAS precharge</li></ul> </td> <td> <ul><li><i>t</i><sub>RRD</sub> – RAS to RAS delay</li> <li><i>t</i><sub>RTP</sub> – Read to precharge delay</li> <li><i>t</i><sub>RTR</sub> – Read to read delay</li> <li><i>t</i><sub>RTW</sub> – Read to write delay</li> <li><i>t</i><sub>WR</sub> – Write recovery time</li> <li><i>t</i><sub>WTP</sub> – Write to precharge delay</li> <li><i>t</i><sub>WTR</sub> – Write to read delay</li> <li><i>t</i><sub>WTW</sub> – Write to write delay</li></ul> </td></tr></tbody></table> <h2><span class="mw-headline" id="Memory_cell_design">Memory cell design</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=8"title="Edit section: Memory cell design" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/enwiki/wiki/Memory_cell_(computing)" title="Memory cell (computing)">Memory cell (computing)</a></div> <p>Each bit of data in a DRAM is stored as a positive or negative electrical charge in a capacitive structure. The structure providing the capacitance, as well as the transistors that control access to it, is collectively referred to as a <i>DRAM cell</i>. They are the fundamental building block in DRAM arrays. Multiple DRAM memory cell variants exist, but the most commonly used variant in modern DRAMs is the one-transistor, one-capacitor (1T1C) cell. The transistor is used to admit current into the capacitor during writes, and to discharge the capacitor during reads. The access transistor is designed to maximize drive strength and minimize transistor-transistor leakage (Kenner, pg. 34). </p><p>The capacitor has two terminals, one of which is connected to its access transistor, and the other to either ground or V<sub>CC</sub>/2. In modern DRAMs, the latter case is more common, since it allows faster operation. In modern DRAMs, a voltage of +V<sub>CC</sub>/2 across the capacitor is required to store a logic one; and a voltage of -V<sub>CC</sub>/2 across the capacitor is required to store a logic zero. The electrical charge stored in the capacitor is measured in <a href="/enwiki/wiki/Coulomb" title="Coulomb">coulombs</a>. For a logic one, the charge is: <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\textstyle Q={V_{CC} \over 2}\cdot C}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="false" scriptlevel="0"> <mi>Q</mi> <mo>=</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <msub> <mi>V</mi> <mrow class="MJX-TeXAtom-ORD"> <mi>C</mi> <mi>C</mi> </mrow> </msub> <mn>2</mn> </mfrac> </mrow> <mo>&#x22C5;<!-- ⋅ --></mo> <mi>C</mi> </mstyle> </mrow> <annotation encoding="application/x-tex">{\textstyle Q={V_{CC} \over 2}\cdot C}</annotation> </semantics> </math></span><img src="https://wikimedia.org/enwiki/api/rest_v1/media/math/render/svg/3d7d91ed3a31bd64c34dbb4ab70c6ea1fc2bb6fb" class="mwe-math-fallback-image-inline mw-invert" aria-hidden="true" style="vertical-align: -1.171ex; width:12.369ex; height:4.009ex;" alt="{\textstyle Q={V_{CC} \over 2}\cdot C}"></span>, where <i>Q</i> is the charge in coulombs and <i>C</i> is the capacitance in <a href="/enwiki/wiki/Farad" title="Farad">farads</a>. A logic zero has a charge of: <span class="mwe-math-element"><span class="mwe-math-mathml-inline mwe-math-mathml-a11y" style="display: none;"><math xmlns="http://www.w3.org/1998/Math/MathML" alttext="{\textstyle Q={-V_{CC} \over 2}\cdot C}"> <semantics> <mrow class="MJX-TeXAtom-ORD"> <mstyle displaystyle="false" scriptlevel="0"> <mi>Q</mi> <mo>=</mo> <mrow class="MJX-TeXAtom-ORD"> <mfrac> <mrow> <mo>&#x2212;<!-- − --></mo> <msub> <mi>V</mi> <mrow class="MJX-TeXAtom-ORD"> <mi>C</mi> <mi>C</mi> </mrow> </msub> </mrow> <mn>2</mn> </mfrac> </mrow> <mo>&#x22C5;<!-- ⋅ --></mo> <mi>C</mi> </mstyle> </mrow> <annotation encoding="application/x-tex">{\textstyle Q={-V_{CC} \over 2}\cdot C}</annotation> </semantics> </math></span><img src="https://wikimedia.org/enwiki/api/rest_v1/media/math/render/svg/7298448a771eede1dd99e63b50446d6a31c5487c" class="mwe-math-fallback-image-inline mw-invert" aria-hidden="true" style="vertical-align: -1.171ex; width:13.647ex; height:4.009ex;" alt="{\textstyle Q={-V_{CC} \over 2}\cdot C}"></span>.<sup id="cite_ref-Kenner:22_29-0" class="reference"><a href="#cite_note-Kenner:22-29">&#91;29&#93;</a></sup> </p><p>Reading or writing a logic one requires the wordline is driven to a voltage greater than the sum of V<sub>CC</sub> and the access transistor's threshold voltage (V<sub>TH</sub>). This voltage is called <i>V<sub>CC</sub> pumped</i> (V<sub>CCP</sub>). The time required to discharge a capacitor thus depends on what logic value is stored in the capacitor. A capacitor containing logic one begins to discharge when the voltage at the access transistor's gate terminal is above V<sub>CCP</sub>. If the capacitor contains a logic zero, it begins to discharge when the gate terminal voltage is above V<sub>TH</sub>.<sup id="cite_ref-Kenner:24_30-0" class="reference"><a href="#cite_note-Kenner:24-30">&#91;30&#93;</a></sup> </p> <h3><span class="mw-headline" id="Capacitor_design">Capacitor design</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=9"title="Edit section: Capacitor design" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <p>Up until the mid-1980s, the capacitors in DRAM cells were co-planar with the access transistor (they were constructed on the surface of the substrate), thus they were referred to as <i>planar</i> capacitors. The drive to increase both density and, to a lesser extent, performance, required denser designs. This was strongly motivated by economics, a major consideration for DRAM devices, especially commodity DRAMs. The minimization of DRAM cell area can produce a denser device and lower the cost per bit of storage. Starting in the mid-1980s, the capacitor was moved above or below the silicon substrate in order to meet these objectives. DRAM cells featuring capacitors above the substrate are referred to as <i>stacked</i> or <i>folded plate</i> capacitors. Those with capacitors buried beneath the substrate surface are referred to as <i>trench</i> capacitors. In the 2000s, manufacturers were sharply divided by the type of capacitor used in their DRAMs and the relative cost and long-term scalability of both designs have been the subject of extensive debate. The majority of DRAMs, from major manufactures such as <a href="/enwiki/wiki/Hynix" class="mw-redirect" title="Hynix">Hynix</a>, <a href="/enwiki/wiki/Micron_Technology" title="Micron Technology">Micron Technology</a>, <a href="/enwiki/wiki/Samsung_Electronics" title="Samsung Electronics">Samsung Electronics</a> use the stacked capacitor structure, whereas smaller manufacturers such Nanya Technology use the trench capacitor structure (Jacob, pp.&#160;355–357). </p><p>The capacitor in the stacked capacitor scheme is constructed above the surface of the substrate. The capacitor is constructed from an oxide-nitride-oxide (ONO) dielectric sandwiched in between two layers of polysilicon plates (the top plate is shared by all DRAM cells in an IC), and its shape can be a rectangle, a cylinder, or some other more complex shape. There are two basic variations of the stacked capacitor, based on its location relative to the bitline&#8212;capacitor-over-bitline (COB) and capacitor-under-bitline (CUB). In a former variation, the capacitor is underneath the bitline, which is usually made of metal, and the bitline has a polysilicon contact that extends downwards to connect it to the access transistor's source terminal. In the latter variation, the capacitor is constructed above the bitline, which is almost always made of polysilicon, but is otherwise identical to the COB variation. The advantage the COB variant possesses is the ease of fabricating the contact between the bitline and the access transistor's source as it is physically close to the substrate surface. However, this requires the active area to be laid out at a 45-degree angle when viewed from above, which makes it difficult to ensure that the capacitor contact does not touch the bitline. CUB cells avoid this, but suffer from difficulties in inserting contacts in between bitlines, since the size of features this close to the surface are at or near the minimum feature size of the process technology (Kenner, pp.&#160;33–42). </p><p>The trench capacitor is constructed by etching a deep hole into the silicon substrate. The substrate volume surrounding the hole is then heavily doped to produce a buried n<sup>+</sup> plate and to reduce resistance. A layer of oxide-nitride-oxide dielectric is grown or deposited, and finally the hole is filled by depositing doped polysilicon, which forms the top plate of the capacitor. The top of the capacitor is connected to the access transistor's drain terminal via a polysilicon strap (Kenner, pp.&#160;42–44). A trench capacitor's depth-to-width ratio in DRAMs of the mid-2000s can exceed 50:1 (Jacob, p.&#160;357). </p><p>Trench capacitors have numerous advantages. Since the capacitor is buried in the bulk of the substrate instead of lying on its surface, the area it occupies can be minimized to what is required to connect it to the access transistor's drain terminal without decreasing the capacitor's size, and thus capacitance (Jacob, pp.&#160;356–357). Alternatively, the capacitance can be increased by etching a deeper hole without any increase to surface area (Kenner, pg. 44). Another advantage of the trench capacitor is that its structure is under the layers of metal interconnect, allowing them to be more easily made planar, which enables it to be integrated in a logic-optimized process technology, which have many levels of interconnect above the substrate. The fact that the capacitor is under the logic means that it is constructed before the transistors are. This allows high-temperature processes to fabricate the capacitors, which would otherwise be degrading the logic transistors and their performance. This makes trench capacitors suitable for constructing <a href="/enwiki/wiki/Embedded_DRAM" class="mw-redirect" title="Embedded DRAM">embedded DRAM</a> (eDRAM) (Jacob, p.&#160;357). Disadvantages of trench capacitors are difficulties in reliably constructing the capacitor's structures within deep holes and in connecting the capacitor to the access transistor's drain terminal (Kenner, pg. 44). </p> <h3><span class="mw-headline" id="Historical_cell_designs">Historical cell designs</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=10"title="Edit section: Historical cell designs" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <p>First-generation DRAM ICs (those with capacities of 1&#160;Kbit), of which the first was the <a href="/enwiki/wiki/Intel_1103" title="Intel 1103">Intel 1103</a>, used a three-transistor, one-capacitor (3T1C) DRAM cell. By the second-generation, the requirement to reduce cost by fitting the same amount of bits in a smaller area led to the almost universal adoption of the 1T1C DRAM cell, although a couple of devices with 4 and 16&#160;Kbit capacities continued to use the 3T1C cell for performance reasons (Kenner, p.&#160;6). These performance advantages included, most significantly, the ability to read the state stored by the capacitor without discharging it, avoiding the need to write back what was read out (non-destructive read). A second performance advantage relates to the 3T1C cell has separate transistors for reading and writing; the memory controller can exploit this feature to perform atomic read-modify-writes, where a value is read, modified, and then written back as a single, indivisible operation (Jacob, p.&#160;459). </p> <h3><span class="mw-headline" id="Proposed_cell_designs">Proposed cell designs</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=11"title="Edit section: Proposed cell designs" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <p>The one-transistor, zero-capacitor (1T, or 1T0C) DRAM cell has been a topic of research since the late-1990s. <i>1T DRAM</i> is a different way of constructing the basic DRAM memory cell, distinct from the classic one-transistor/one-capacitor (1T/1C) DRAM cell, which is also sometimes referred to as "1T DRAM", particularly in comparison to the 3T and 4T DRAM which it replaced in the 1970s. </p><p>In 1T DRAM cells, the bit of data is still stored in a capacitive region controlled by a transistor, but this capacitance is no longer provided by a separate capacitor. 1T DRAM is a "capacitorless" bit cell design that stores data using the parasitic body capacitance that is inherent to <a href="/enwiki/wiki/Silicon_on_insulator" title="Silicon on insulator">silicon on insulator (SOI)</a> transistors. Considered a nuisance in logic design, this <a href="/enwiki/wiki/Floating_body_effect" title="Floating body effect">floating body effect</a> can be used for data storage. This gives 1T DRAM cells the greatest density as well as allowing easier integration with high-performance logic circuits since they are constructed with the same SOI process technologies. </p><p>Refreshing of cells remains necessary, but unlike with 1T1C DRAM, reads in 1T DRAM are non-destructive; the stored charge causes a detectable shift in the <a href="/enwiki/wiki/Threshold_voltage" title="Threshold voltage">threshold voltage</a> of the transistor.<sup id="cite_ref-31" class="reference"><a href="#cite_note-31">&#91;31&#93;</a></sup> Performance-wise, access times are significantly better than capacitor-based DRAMs, but slightly worse than SRAM. There are several types of 1T DRAMs: the commercialized <a href="/enwiki/wiki/Z-RAM" title="Z-RAM">Z-RAM</a> from Innovative Silicon, the TTRAM<sup id="cite_ref-32" class="reference"><a href="#cite_note-32">&#91;32&#93;</a></sup> from Renesas and the <a href="/enwiki/wiki/A-RAM" title="A-RAM">A-RAM</a> from the <a href="/enwiki/wiki/University_of_Granada" title="University of Granada">UGR</a>/<a href="/enwiki/wiki/CNRS" class="mw-redirect" title="CNRS">CNRS</a> consortium. </p> <h2><span class="mw-headline" id="Array_structures">Array structures</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=12"title="Edit section: Array structures" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <figure class="mw-default-size mw-halign-right" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:DRAM_self-aligned_storage_node_locations.png" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/c/cd/DRAM_self-aligned_storage_node_locations.png/220px-DRAM_self-aligned_storage_node_locations.png" decoding="async" width="220" height="171" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/c/cd/DRAM_self-aligned_storage_node_locations.png/330px-DRAM_self-aligned_storage_node_locations.png 1.5x, /upwiki/wikipedia/commons/thumb/c/cd/DRAM_self-aligned_storage_node_locations.png/440px-DRAM_self-aligned_storage_node_locations.png 2x" data-file-width="706" data-file-height="550" /></a><figcaption>Self-aligned storage node locations simplify the fabrication process in modern DRAM.<sup id="cite_ref-33" class="reference"><a href="#cite_note-33">&#91;33&#93;</a></sup></figcaption></figure> <p>DRAM cells are laid out in a regular rectangular, grid-like pattern to facilitate their control and access via wordlines and bitlines. The physical layout of the DRAM cells in an array is typically designed so that two adjacent DRAM cells in a column share a single bitline contact to reduce their area. DRAM cell area is given as <i>n</i> F<sup>2</sup>, where <i>n</i> is a number derived from the DRAM cell design, and <i>F</i> is the smallest feature size of a given process technology. This scheme permits comparison of DRAM size over different process technology generations, as DRAM cell area scales at linear or near-linear rates with respect to feature size. The typical area for modern DRAM cells varies between 6–8 F<sup>2</sup>. </p><p>The horizontal wire, the wordline, is connected to the gate terminal of every access transistor in its row. The vertical bitline is connected to the source terminal of the transistors in its column. The lengths of the wordlines and bitlines are limited. The wordline length is limited by the desired performance of the array, since propagation time of the signal that must transverse the wordline is determined by the <a href="/enwiki/wiki/RC_time_constant" title="RC time constant">RC time constant</a>. The bitline length is limited by its capacitance (which increases with length), which must be kept within a range for proper sensing (as DRAMs operate by sensing the charge of the capacitor released onto the bitline). Bitline length is also limited by the amount of operating current the DRAM can draw and by how power can be dissipated, since these two characteristics are largely determined by the charging and discharging of the bitline. </p> <h3><span class="mw-headline" id="Bitline_architecture">Bitline architecture</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=13"title="Edit section: Bitline architecture" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <p><a href="/enwiki/wiki/Sense_amplifier" title="Sense amplifier">Sense amplifiers</a> are required to read the state contained in the DRAM cells. When the access transistor is activated, the electrical charge in the capacitor is shared with the bitline. The bitline's capacitance is much greater than that of the capacitor (approximately ten times). Thus, the change in bitline voltage is minute. Sense amplifiers are required to resolve the voltage differential into the levels specified by the logic signaling system. Modern DRAMs use differential sense amplifiers, and are accompanied by requirements as to how the DRAM arrays are constructed. Differential sense amplifiers work by driving their outputs to opposing extremes based on the relative voltages on pairs of bitlines. The sense amplifiers function effectively and efficient only if the capacitance and voltages of these bitline pairs are closely matched. Besides ensuring that the lengths of the bitlines and the number of attached DRAM cells attached to them are equal, two basic architectures to array design have emerged to provide for the requirements of the sense amplifiers: open and folded bitline arrays. </p> <h4><span class="mw-headline" id="Open_bitline_arrays">Open bitline arrays</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=14"title="Edit section: Open bitline arrays" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <p>The first generation (1&#160;Kbit) DRAM ICs, up until the 64&#160;Kbit generation (and some 256&#160;Kbit generation devices) had open bitline array architectures. In these architectures, the bitlines are divided into multiple segments, and the differential sense amplifiers are placed in between bitline segments. Because the sense amplifiers are placed between bitline segments, to route their outputs outside the array, an additional layer of interconnect placed above those used to construct the wordlines and bitlines is required. </p><p>The DRAM cells that are on the edges of the array do not have adjacent segments. Since the differential sense amplifiers require identical capacitance and bitline lengths from both segments, dummy bitline segments are provided. The advantage of the open bitline array is a smaller array area, although this advantage is slightly diminished by the dummy bitline segments. The disadvantage that caused the near disappearance of this architecture is the inherent vulnerability to <a href="/enwiki/wiki/Noise_(electronics)" title="Noise (electronics)">noise</a>, which affects the effectiveness of the differential sense amplifiers. Since each bitline segment does not have any spatial relationship to the other, it is likely that noise would affect only one of the two bitline segments. </p> <h4><span class="mw-headline" id="Folded_bitline_arrays">Folded bitline arrays</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=15"title="Edit section: Folded bitline arrays" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <p>The folded bitline array architecture routes bitlines in pairs throughout the array. The close proximity of the paired bitlines provide superior <a href="/enwiki/wiki/Common-mode_signal" title="Common-mode signal">common-mode</a> noise rejection characteristics over open bitline arrays. The folded bitline array architecture began appearing in DRAM ICs during the mid-1980s, beginning with the 256&#160;Kbit generation. This architecture is favored in modern DRAM ICs for its superior noise immunity. </p><p>This architecture is referred to as <i>folded</i> because it takes its basis from the open array architecture from the perspective of the circuit schematic. The folded array architecture appears to remove DRAM cells in alternate pairs (because two DRAM cells share a single bitline contact) from a column, then move the DRAM cells from an adjacent column into the voids. </p><p>The location where the bitline twists occupies additional area. To minimize area overhead, engineers select the simplest and most area-minimal twisting scheme that is able to reduce noise under the specified limit. As process technology improves to reduce minimum feature sizes, the signal to noise problem worsens, since coupling between adjacent metal wires is inversely proportional to their pitch. The array folding and bitline twisting schemes that are used must increase in complexity in order to maintain sufficient noise reduction. Schemes that have desirable noise immunity characteristics for a minimal impact in area is the topic of current research (Kenner, p.&#160;37). </p> <h4><span class="mw-headline" id="Future_array_architectures">Future array architectures</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=16"title="Edit section: Future array architectures" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <p>Advances in process technology could result in open bitline array architectures being favored if it is able to offer better long-term area efficiencies; since folded array architectures require increasingly complex folding schemes to match any advance in process technology. The relationship between process technology, array architecture, and area efficiency is an active area of research. </p> <h3><span class="mw-headline" id="Row_and_column_redundancy">Row and column redundancy</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=17"title="Edit section: Row and column redundancy" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <p>The first DRAM <a href="/enwiki/wiki/Integrated_circuit" title="Integrated circuit">integrated circuits</a> did not have any redundancy. An integrated circuit with a defective DRAM cell would be discarded. Beginning with the 64&#160;Kbit generation, DRAM arrays have included spare rows and columns to improve yields. Spare rows and columns provide tolerance of minor fabrication defects which have caused a small number of rows or columns to be inoperable. The defective rows and columns are physically disconnected from the rest of the array by a triggering a <a href="/enwiki/wiki/Polyfuse_(PROM)" title="Polyfuse (PROM)">programmable fuse</a> or by cutting the wire by a laser. The spare rows or columns are substituted in by remapping logic in the row and column decoders (Jacob, pp.&#160;358–361). </p> <h2><span class="mw-headline" id="Error_detection_and_correction">Error detection and correction</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=18"title="Edit section: Error detection and correction" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main articles: <a href="/enwiki/wiki/RAM_parity" title="RAM parity">RAM parity</a> and <a href="/enwiki/wiki/ECC_memory" title="ECC memory">ECC memory</a></div> <p>Electrical or magnetic interference inside a computer system can cause a single bit of DRAM to <a href="/enwiki/wiki/RAM_parity" title="RAM parity">spontaneously flip</a> to the opposite state. The majority of one-off ("<a href="/enwiki/wiki/Soft_error" title="Soft error">soft</a>") errors in DRAM chips occur as a result of <a href="/enwiki/wiki/Background_radiation" title="Background radiation">background radiation</a>, chiefly <a href="/enwiki/wiki/Neutron" title="Neutron">neutrons</a> from <a href="/enwiki/wiki/Cosmic_ray" title="Cosmic ray">cosmic ray</a> secondaries, which may change the contents of one or more memory cells or interfere with the circuitry used to read/write them. </p><p>The problem can be mitigated by using <a href="/enwiki/wiki/Redundancy_(engineering)" title="Redundancy (engineering)">redundant</a> memory bits and additional circuitry that use these bits to detect and correct soft errors. In most cases, the detection and correction are performed by the <a href="/enwiki/wiki/Memory_controller" title="Memory controller">memory controller</a>; sometimes, the required logic is transparently implemented within DRAM chips or modules, enabling the ECC memory functionality for otherwise ECC-incapable systems.<sup id="cite_ref-34" class="reference"><a href="#cite_note-34">&#91;34&#93;</a></sup> The extra memory bits are used to record <a href="/enwiki/wiki/RAM_parity" title="RAM parity">parity</a> and to enable missing data to be reconstructed by <a href="/enwiki/wiki/Error-correcting_code" class="mw-redirect" title="Error-correcting code">error-correcting code</a> (ECC). Parity allows the detection of all single-bit errors (actually, any odd number of wrong bits). The most common error-correcting code, a <a href="/enwiki/wiki/Hamming_code#Hamming_codes_with_additional_parity_(SECDED)" title="Hamming code">SECDED Hamming code</a>, allows a single-bit error to be corrected and, in the usual configuration, with an extra parity bit, double-bit errors to be detected.<sup id="cite_ref-35" class="reference"><a href="#cite_note-35">&#91;35&#93;</a></sup> </p><p>Recent studies give widely varying error rates with over seven orders of magnitude difference, ranging from <span class="nowrap">10<sup>&#8722;10</sup>−10<sup>−17</sup> error/bit·h</span>, roughly one bit error, per hour, per gigabyte of memory to one bit error, per century, per gigabyte of memory.<sup id="cite_ref-Borucki1_36-0" class="reference"><a href="#cite_note-Borucki1-36">&#91;36&#93;</a></sup><sup id="cite_ref-Schroeder1_37-0" class="reference"><a href="#cite_note-Schroeder1-37">&#91;37&#93;</a></sup><sup id="cite_ref-Xin1_38-0" class="reference"><a href="#cite_note-Xin1-38">&#91;38&#93;</a></sup> The Schroeder et al. 2009 study reported a 32% chance that a given computer in their study would suffer from at least one correctable error per year, and provided evidence that most such errors are intermittent hard rather than soft errors and that trace amounts of radioactive material that had gotten into the chip packaging were emitting alpha particles and corrupting the data.<sup id="cite_ref-39" class="reference"><a href="#cite_note-39">&#91;39&#93;</a></sup> A 2010 study at the University of Rochester also gave evidence that a substantial fraction of memory errors are intermittent hard errors.<sup id="cite_ref-40" class="reference"><a href="#cite_note-40">&#91;40&#93;</a></sup> Large scale studies on non-ECC main memory in PCs and laptops suggest that undetected memory errors account for a substantial number of system failures: the 2011 study reported a 1-in-1700 chance per 1.5% of memory tested (extrapolating to an approximately 26% chance for total memory) that a computer would have a memory error every eight months.<sup id="cite_ref-41" class="reference"><a href="#cite_note-41">&#91;41&#93;</a></sup> </p> <h2><span class="mw-headline" id="Security">Security</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=19"title="Edit section: Security" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <h3><span class="mw-headline" id="Data_remanence">Data remanence</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=20"title="Edit section: Data remanence" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/Data_remanence" title="Data remanence">Data remanence</a></div> <p>Although dynamic memory is only specified and <i>guaranteed</i> to retain its contents when supplied with power and refreshed every short period of time (often <span class="nowrap">64 ms</span>), the memory cell <a href="/enwiki/wiki/Capacitor" title="Capacitor">capacitors</a> often retain their values for significantly longer time, particularly at low temperatures.<sup id="cite_ref-citp_42-0" class="reference"><a href="#cite_note-citp-42">&#91;42&#93;</a></sup> Under some conditions most of the data in DRAM can be recovered even if it has not been refreshed for several minutes.<sup id="cite_ref-Scheick1_43-0" class="reference"><a href="#cite_note-Scheick1-43">&#91;43&#93;</a></sup> </p><p>This property can be used to circumvent security and recover data stored in the main memory that is assumed to be destroyed at power-down. The computer could be quickly rebooted, and the contents of the main memory read out; or by removing a computer's memory modules, cooling them to prolong data remanence, then transferring them to a different computer to be read out. Such an attack was demonstrated to circumvent popular disk encryption systems, such as the <a href="/enwiki/wiki/Open-source_software" title="Open-source software">open source</a> <a href="/enwiki/wiki/TrueCrypt" title="TrueCrypt">TrueCrypt</a>, Microsoft's <a href="/enwiki/wiki/BitLocker_Drive_Encryption" class="mw-redirect" title="BitLocker Drive Encryption">BitLocker Drive Encryption</a>, and <a href="/enwiki/wiki/Apple_Inc." title="Apple Inc.">Apple</a>'s <a href="/enwiki/wiki/FileVault" title="FileVault">FileVault</a>.<sup id="cite_ref-citp_42-1" class="reference"><a href="#cite_note-citp-42">&#91;42&#93;</a></sup> This type of attack against a computer is often called a <a href="/enwiki/wiki/Cold_boot_attack" title="Cold boot attack">cold boot attack</a>. </p> <h3><span class="mw-headline" id="Memory_corruption">Memory corruption</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=21"title="Edit section: Memory corruption" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="#Operations_to_read_a_data_bit_from_a_DRAM_storage_cell">§&#160;Operations to read a data bit from a DRAM storage cell</a></div> <p>Dynamic memory, by definition, requires periodic refresh. Furthermore, reading dynamic memory is a destructive operation, requiring a recharge of the storage cells in the row that has been read. If these processes are imperfect, a read operation can cause <a href="/enwiki/wiki/Soft_error" title="Soft error">soft errors</a>. In particular, there is a risk that some charge can leak between nearby cells, causing the refresh or read of one row to cause a <i>disturbance error</i> in an adjacent or even nearby row. The awareness of disturbance errors dates back to the first commercially available DRAM in the early 1970s (the <a href="/enwiki/wiki/Intel_1103" title="Intel 1103">Intel 1103</a>). Despite the mitigation techniques employed by manufacturers, commercial researchers proved in a 2014 analysis that commercially available <a href="/enwiki/wiki/DDR3" class="mw-redirect" title="DDR3">DDR3</a> DRAM chips manufactured in 2012 and 2013 are susceptible to disturbance errors.<sup id="cite_ref-44" class="reference"><a href="#cite_note-44">&#91;44&#93;</a></sup> The associated side effect that led to observed bit flips has been dubbed <i><a href="/enwiki/wiki/Row_hammer" title="Row hammer">row hammer</a></i>. </p> <h2><span class="mw-headline" id="Packaging">Packaging</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=22"title="Edit section: Packaging" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <h3><span class="mw-headline" id="Memory_module">Memory module</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=23"title="Edit section: Memory module" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/Memory_module" title="Memory module">Memory module</a></div> <p>Dynamic RAM ICs are usually packaged in molded epoxy cases, with an internal lead frame for interconnections between the <a href="/enwiki/wiki/Die_(integrated_circuit)" title="Die (integrated circuit)">silicon die</a> and the package leads. The original <a href="/enwiki/wiki/IBM_PC" class="mw-redirect" title="IBM PC">IBM PC</a> design used ICs packaged in <a href="/enwiki/wiki/Dual_in-line_package" title="Dual in-line package">dual in-line packages</a> (DIP), soldered directly to the main board or mounted in sockets. As memory density skyrocketed, the DIP package was no longer practical. For convenience in handling, several dynamic RAM integrated circuits may be mounted on a single memory module, allowing installation of 16-bit, 32-bit or 64-bit wide memory in a single unit, without the requirement for the installer to insert multiple individual integrated circuits. Memory modules may include additional devices for parity checking or error correction. Over the evolution of desktop computers, several standardized types of memory module have been developed. Laptop computers, game consoles, and specialized devices may have their own formats of memory modules not interchangeable with standard desktop parts for packaging or proprietary reasons. </p> <h3><span class="mw-headline" id="Embedded">Embedded</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=24"title="Edit section: Embedded" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/EDRAM" title="EDRAM">eDRAM</a></div> <p>DRAM that is integrated into an integrated circuit designed in a logic-optimized process (such as an <a href="/enwiki/wiki/Application-specific_integrated_circuit" title="Application-specific integrated circuit">application-specific integrated circuit</a>, <a href="/enwiki/wiki/Microprocessor" title="Microprocessor">microprocessor</a>, or an entire <a href="/enwiki/wiki/System_on_a_chip" title="System on a chip">system on a chip</a>) is called <i>embedded DRAM</i> (eDRAM). Embedded DRAM requires DRAM cell designs that can be <a href="/enwiki/wiki/Semiconductor_device_fabrication" title="Semiconductor device fabrication">fabricated</a> without preventing the fabrication of fast-switching transistors used in high-performance logic, and modification of the basic logic-optimized process technology to accommodate the process steps required to build DRAM cell structures. </p> <h2><span class="mw-headline" id="Versions">Versions</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=25"title="Edit section: Versions" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <p>Since the fundamental DRAM cell and array has maintained the same basic structure for many years, the types of DRAM are mainly distinguished by the many different interfaces for communicating with DRAM chips. </p> <h3><span class="mw-headline" id="Asynchronous_DRAM">Asynchronous DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=26"title="Edit section: Asynchronous DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <p>The original DRAM, now known by the <a href="/enwiki/wiki/Retronym" title="Retronym">retronym</a> "<i>asynchronous DRAM</i>" was the first type of DRAM in use. From its origins in the late 1960s, it was commonplace in computing up until around 1997, when it was mostly replaced by <i>Synchronous DRAM</i>. In the present day, manufacture of asynchronous RAM is relatively rare.<sup id="cite_ref-45" class="reference"><a href="#cite_note-45">&#91;45&#93;</a></sup> </p> <h4><span class="mw-headline" id="Principles_of_operation_2">Principles of operation</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=27"title="Edit section: Principles of operation" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <p>An asynchronous DRAM chip has power connections, some number of address inputs (typically 12), and a few (typically one or four) bidirectional data lines. There are four <a href="/enwiki/wiki/Active-low" class="mw-redirect" title="Active-low">active-low</a> control signals: </p> <ul><li><span style="text-decoration:overline;">RAS</span>, the Row Address Strobe. The address inputs are captured on the falling edge of <span style="text-decoration:overline;">RAS</span>, and select a row to open. The row is held open as long as <span style="text-decoration:overline;">RAS</span> is low.</li> <li><span style="text-decoration:overline;">CAS</span>, the Column Address Strobe. The address inputs are captured on the falling edge of <span style="text-decoration:overline;">CAS</span>, and select a column from the currently open row to read or write.</li> <li><span style="text-decoration:overline;">WE</span>, Write Enable. This signal determines whether a given falling edge of <span style="text-decoration:overline;">CAS</span> is a read (if high) or write (if low). If low, the data inputs are also captured on the falling edge of <span style="text-decoration:overline;">CAS</span>.</li> <li><span style="text-decoration:overline;">OE</span>, Output Enable. This is an additional signal that controls output to the data I/O pins. The data pins are driven by the DRAM chip if <span style="text-decoration:overline;">RAS</span> and <span style="text-decoration:overline;">CAS</span> are low, <span style="text-decoration:overline;">WE</span> is high, and <span style="text-decoration:overline;">OE</span> is low. In many applications, <span style="text-decoration:overline;">OE</span> can be permanently connected low (output always enabled), but switching <span style="text-decoration:overline;">OE</span> can be useful when connecting multiple memory chips in parallel.</li></ul> <p>This interface provides direct control of internal timing. When <span style="text-decoration:overline;">RAS</span> is driven low, a <span style="text-decoration:overline;">CAS</span> cycle must not be attempted until the sense amplifiers have sensed the memory state, and <span style="text-decoration:overline;">RAS</span> must not be returned high until the storage cells have been refreshed. When <span style="text-decoration:overline;">RAS</span> is driven high, it must be held high long enough for precharging to complete. </p><p>Although the DRAM is asynchronous, the signals are typically generated by a clocked memory controller, which limits their timing to multiples of the controller's clock cycle. </p> <h5><span class="mw-headline" id="RAS_Only_Refresh">RAS Only Refresh</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=28"title="Edit section: RAS Only Refresh" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h5> <p>Classic asynchronous DRAM is refreshed by opening each row in turn. </p><p>The refresh cycles are distributed across the entire refresh interval in such a way that all rows are refreshed within the required interval. To refresh one row of the memory array using <span style="text-decoration:overline;">RAS</span> only refresh (ROR), the following steps must occur: </p> <ol><li>The row address of the row to be refreshed must be applied at the address input pins.</li> <li><span style="text-decoration:overline;">RAS</span> must switch from high to low. <span style="text-decoration:overline;">CAS</span> must remain high.</li> <li>At the end of the required amount of time, <span style="text-decoration:overline;">RAS</span> must return high.</li></ol> <p>This can be done by supplying a row address and pulsing <span style="text-decoration:overline;">RAS</span> low; it is not necessary to perform any <span style="text-decoration:overline;">CAS</span> cycles. An external counter is needed to iterate over the row addresses in turn.<sup id="cite_ref-46" class="reference"><a href="#cite_note-46">&#91;46&#93;</a></sup> In some designs, the CPU handled RAM refresh, among these the <a href="/enwiki/wiki/Zilog_Z80" title="Zilog Z80">Zilog Z80</a> is perhaps the best known example, hosting a row counter in a <a href="/enwiki/wiki/Processor_register" title="Processor register">processor register</a>, R, and including internal timers that would periodically poll the row at R and then increment the value in the register. Refreshes were interleaved with common instructions like memory reads.<sup id="cite_ref-47" class="reference"><a href="#cite_note-47">&#91;47&#93;</a></sup> In other systems, especially <a href="/enwiki/wiki/Home_computer" title="Home computer">home computers</a>, refresh was often handled by the video circuitry as it often had to read from large areas of memory, and performed refreshes as part of these operations.<sup id="cite_ref-48" class="reference"><a href="#cite_note-48">&#91;48&#93;</a></sup> </p> <h5><span class="mw-headline" id="CAS_before_RAS_refresh">CAS before RAS refresh</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=29"title="Edit section: CAS before RAS refresh" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h5> <p>For convenience, the counter was quickly incorporated into the DRAM chips themselves. If the <span style="text-decoration:overline;">CAS</span> line is driven low before <span style="text-decoration:overline;">RAS</span> (normally an illegal operation), then the DRAM ignores the address inputs and uses an internal counter to select the row to open. This is known as <span style="text-decoration:overline;">CAS</span>-before-<span style="text-decoration:overline;">RAS</span> (CBR) refresh. This became the standard form of refresh for asynchronous DRAM, and is the only form generally used with SDRAM. </p> <h5><span class="mw-headline" id="Hidden_refresh">Hidden refresh</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=30"title="Edit section: Hidden refresh" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h5> <p>Given support of <span style="text-decoration:overline;">CAS</span>-before-<span style="text-decoration:overline;">RAS</span> refresh, it is possible to deassert <span style="text-decoration:overline;">RAS</span> while holding <span style="text-decoration:overline;">CAS</span> low to maintain data output. If <span style="text-decoration:overline;">RAS</span> is then asserted again, this performs a CBR refresh cycle while the DRAM outputs remain valid. Because data output is not interrupted, this is known as <i>hidden refresh</i>.<sup id="cite_ref-49" class="reference"><a href="#cite_note-49">&#91;49&#93;</a></sup> </p> <h4><span class="mw-headline" id="Page_mode_DRAM">Page mode DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=31"title="Edit section: Page mode DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <p><b>Page mode DRAM</b> is a minor modification to the first-generation DRAM IC interface which improved the performance of reads and writes to a row by avoiding the inefficiency of precharging and opening the same row repeatedly to access a different column. In page mode DRAM, after a row was opened by holding <span style="text-decoration:overline;">RAS</span> low, the row could be kept open, and multiple reads or writes could be performed to any of the columns in the row. Each column access was initiated by asserting <span style="text-decoration:overline;">CAS</span> and presenting a column address. For reads, after a delay (<i>t</i><sub>CAC</sub>), valid data would appear on the data out pins, which were held at high-Z before the appearance of valid data. For writes, the write enable signal and write data would be presented along with the column address.<sup id="cite_ref-Kenner_13_50-0" class="reference"><a href="#cite_note-Kenner_13-50">&#91;50&#93;</a></sup> </p><p>Page mode DRAM was in turn later improved with a small modification which further reduced latency. DRAMs with this improvement were called <b>fast page mode DRAMs</b> (<b>FPM DRAMs</b>). In page mode DRAM, <span style="text-decoration:overline;">CAS</span> was asserted before the column address was supplied. In FPM DRAM, the column address could be supplied while <span style="text-decoration:overline;">CAS</span> was still deasserted. The column address propagated through the column address data path, but did not output data on the data pins until <span style="text-decoration:overline;">CAS</span> was asserted. Prior to <span style="text-decoration:overline;">CAS</span> being asserted, the data out pins were held at high-Z. FPM DRAM reduced <i>t</i><sub>CAC</sub> latency.<sup id="cite_ref-Kenner_14_51-0" class="reference"><a href="#cite_note-Kenner_14-51">&#91;51&#93;</a></sup> Fast page mode DRAM was introduced in 1986 and was used with Intel 80486. </p><p><i>Static column</i> is a variant of fast page mode in which the column address does not need to be stored in, but rather, the address inputs may be changed with <span style="text-decoration:overline;">CAS</span> held low, and the data output will be updated accordingly a few nanoseconds later.<sup id="cite_ref-Kenner_14_51-1" class="reference"><a href="#cite_note-Kenner_14-51">&#91;51&#93;</a></sup> </p><p><i>Nibble mode</i> is another variant in which four sequential locations within the row can be accessed with four consecutive pulses of <span style="text-decoration:overline;">CAS</span>. The difference from normal page mode is that the address inputs are not used for the second through fourth <span style="text-decoration:overline;">CAS</span> edges; they are generated internally starting with the address supplied for the first <span style="text-decoration:overline;">CAS</span> edge.<sup id="cite_ref-Kenner_14_51-2" class="reference"><a href="#cite_note-Kenner_14-51">&#91;51&#93;</a></sup> </p> <h5><span class="mw-headline" id="Extended_data_out_DRAM">Extended data out DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=32"title="Edit section: Extended data out DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h5> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:Pair32mbEDO-DRAMdimms.jpg" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/e/e4/Pair32mbEDO-DRAMdimms.jpg/220px-Pair32mbEDO-DRAMdimms.jpg" decoding="async" width="220" height="210" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/e/e4/Pair32mbEDO-DRAMdimms.jpg/330px-Pair32mbEDO-DRAMdimms.jpg 1.5x, /upwiki/wikipedia/commons/thumb/e/e4/Pair32mbEDO-DRAMdimms.jpg/440px-Pair32mbEDO-DRAMdimms.jpg 2x" data-file-width="1868" data-file-height="1784" /></a><figcaption>A pair of 32&#160;<a href="/enwiki/wiki/Megabyte" title="Megabyte">MB</a> EDO DRAM modules</figcaption></figure> <p>Extended data out DRAM (EDO DRAM) was invented and patented in the 1990s by <a href="/enwiki/wiki/Micron_Technology" title="Micron Technology">Micron Technology</a> who then licensed technology to many other memory manufacturers.<sup id="cite_ref-52" class="reference"><a href="#cite_note-52">&#91;52&#93;</a></sup> EDO RAM, sometimes referred to as <i>hyper page mode</i> enabled DRAM, is similar to fast page mode DRAM with the additional feature that a new access cycle can be started while keeping the data output of the previous cycle active. This allows a certain amount of overlap in operation (pipelining), allowing somewhat improved performance. It is up to 30% faster than FPM DRAM,<sup id="cite_ref-53" class="reference"><a href="#cite_note-53">&#91;53&#93;</a></sup> which it began to replace in 1995 when <a href="/enwiki/wiki/Intel" title="Intel">Intel</a> introduced the <a href="/enwiki/wiki/Mercury_chipset" class="mw-redirect" title="Mercury chipset">430FX chipset</a> with EDO DRAM support. Irrespective of the performance gains, FPM and EDO SIMMs can be used interchangeably in many (but not all) applications.<sup id="cite_ref-54" class="reference"><a href="#cite_note-54">&#91;54&#93;</a></sup><sup id="cite_ref-55" class="reference"><a href="#cite_note-55">&#91;55&#93;</a></sup> </p><p>To be precise, EDO DRAM begins data output on the falling edge of <span style="text-decoration:overline;">CAS</span> but does not stop the output when <span style="text-decoration:overline;">CAS</span> rises again. It holds the output valid (thus extending the data output time) until either <span style="text-decoration:overline;">RAS</span> is deasserted, or a new <span style="text-decoration:overline;">CAS</span> falling edge selects a different column address. </p><p>Single-cycle EDO has the ability to carry out a complete memory transaction in one clock cycle. Otherwise, each sequential RAM access within the same page takes two clock cycles instead of three, once the page has been selected. EDO's performance and capabilities created an opportunity to reduce the immense performance loss associated with a lack of L2 cache in low-cost, commodity PCs. This was also good for notebooks due to difficulties with their limited form factor, and battery life limitations. Additionally, for systems with an L2 cache, the availability of EDO memory improved the average memory latency seen by applications over earlier FPM implementations. </p><p>Single-cycle EDO DRAM became very popular on video cards towards the end of the 1990s. It was very low cost, yet nearly as efficient for performance as the far more costly VRAM. </p> <h4><span class="mw-headline" id="Burst_EDO_DRAM">Burst EDO DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=33"title="Edit section: Burst EDO DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <p>An evolution of EDO DRAM, burst EDO DRAM (BEDO DRAM), could process four memory addresses in one burst, for a maximum of <span class="nowrap">5-1-1-1</span>, saving an additional three clocks over optimally designed EDO memory. It was done by adding an address counter on the chip to keep track of the next address. BEDO also added a pipeline stage allowing page-access cycle to be divided into two parts. During a memory-read operation, the first part accessed the data from the memory array to the output stage (second latch). The second part drove the data bus from this latch at the appropriate logic level. Since the data is already in the output buffer, quicker access time is achieved (up to 50% for large blocks of data) than with traditional EDO. </p><p>Although BEDO DRAM showed additional optimization over EDO, by the time it was available the market had made a significant investment towards synchronous DRAM, or SDRAM.<sup id="cite_ref-56" class="reference"><a href="#cite_note-56">&#91;56&#93;</a></sup> Even though BEDO RAM was superior to SDRAM in some ways, the latter technology quickly displaced BEDO. </p> <h3><span class="mw-headline" id="Synchronous_dynamic_RAM"><span class="anchor" id="ROW-ACTIVATION"></span>Synchronous dynamic RAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=34"title="Edit section: Synchronous dynamic RAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/Synchronous_dynamic_random-access_memory" title="Synchronous dynamic random-access memory">Synchronous dynamic random-access memory</a></div> <p>Synchronous dynamic RAM (SDRAM) significantly revises the asynchronous memory interface, adding a clock (and a clock enable) line. All other signals are received on the rising edge of the clock. </p><p>The <span style="text-decoration:overline;">RAS</span> and <span style="text-decoration:overline;">CAS</span> inputs no longer act as strobes, but are instead, along with <span style="text-decoration:overline;">WE</span>, part of a 3-bit command controlled by a new active-low strobe, <i>chip select</i> or <span style="text-decoration:overline;">CS</span>: </p> <table class="wikitable"> <caption>SDRAM Command summary </caption> <tbody><tr> <th><span style="text-decoration:overline;">CS</span> </th> <th><span style="text-decoration:overline;">RAS</span> </th> <th><span style="text-decoration:overline;">CAS</span> </th> <th><span style="text-decoration:overline;">WE</span> </th> <th>Address </th> <th>Command </th></tr> <tr> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td data-sort-value="" style="background: #ececec; color: #2C2C2C; vertical-align: middle; text-align: center;" class="table-na">x</td> <td data-sort-value="" style="background: #ececec; color: #2C2C2C; vertical-align: middle; text-align: center;" class="table-na">x</td> <td data-sort-value="" style="background: #ececec; color: #2C2C2C; vertical-align: middle; text-align: center;" class="table-na">x</td> <td data-sort-value="" style="background: #ececec; color: #2C2C2C; vertical-align: middle; text-align: center;" class="table-na">x</td> <td>Command inhibit (no operation) </td></tr> <tr> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td data-sort-value="" style="background: #ececec; color: #2C2C2C; vertical-align: middle; text-align: center;" class="table-na">x</td> <td>No operation </td></tr> <tr> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td data-sort-value="" style="background: #ececec; color: #2C2C2C; vertical-align: middle; text-align: center;" class="table-na">x</td> <td>Burst Terminate: stop a read or write burst in progress. </td></tr> <tr> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="text-align:center;">Column</td> <td>Read from currently active row. </td></tr> <tr> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="text-align:center;">Column</td> <td>Write to currently active row. </td></tr> <tr> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="text-align:center;">Row</td> <td>Activate a row for read and write. </td></tr> <tr> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td data-sort-value="" style="background: #ececec; color: #2C2C2C; vertical-align: middle; text-align: center;" class="table-na">x</td> <td>Precharge (deactivate) the current row. </td></tr> <tr> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#FFC7C7;vertical-align:middle;text-align:center;" class="table-no">H</td> <td data-sort-value="" style="background: #ececec; color: #2C2C2C; vertical-align: middle; text-align: center;" class="table-na">x</td> <td>Auto refresh: refresh one row of each bank, using an internal counter. </td></tr> <tr> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="background:#9EFF9E;vertical-align:middle;text-align:center;" class="table-yes">L</td> <td style="text-align:center;">Mode</td> <td>Load mode register: address bus specifies DRAM operation mode. </td></tr></tbody></table> <p>The <span style="text-decoration:overline;">OE</span> line's function is extended to a per-byte "DQM" signal, which controls data input (writes) in addition to data output (reads). This allows DRAM chips to be wider than 8 bits while still supporting byte-granularity writes. </p><p>Many timing parameters remain under the control of the DRAM controller. For example, a minimum time must elapse between a row being activated and a read or write command. One important parameter must be programmed into the SDRAM chip itself, namely the <a href="/enwiki/wiki/CAS_latency" title="CAS latency">CAS latency</a>. This is the number of clock cycles allowed for internal operations between a read command and the first data word appearing on the data bus. The "Load mode register" command is used to transfer this value to the SDRAM chip. Other configurable parameters include the length of read and write bursts, i.e. the number of words transferred per read or write command. </p><p>The most significant change, and the primary reason that SDRAM has supplanted asynchronous RAM, is the support for multiple internal banks inside the DRAM chip. Using a few bits of "bank address" which accompany each command, a second bank can be activated and begin reading data <i>while a read from the first bank is in progress</i>. By alternating banks, an SDRAM device can keep the data bus continuously busy, in a way that asynchronous DRAM cannot. </p> <h4><span class="mw-headline" id="Single_data_rate_synchronous_DRAM">Single data rate synchronous DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=35"title="Edit section: Single data rate synchronous DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">See also: <a href="/enwiki/wiki/Synchronous_dynamic_random-access_memory" title="Synchronous dynamic random-access memory">SDR SDRAM</a></div> <p>Single data rate SDRAM (SDR SDRAM or SDR) is the original generation of SDRAM; it made a single transfer of data per clock cycle. </p> <h4><span class="mw-headline" id="Double_data_rate_synchronous_DRAM">Double data rate synchronous DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=36"title="Edit section: Double data rate synchronous DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main articles: <a href="/enwiki/wiki/DDR_SDRAM" title="DDR SDRAM">DDR SDRAM</a>, <a href="/enwiki/wiki/DDR2_SDRAM" title="DDR2 SDRAM">DDR2 SDRAM</a>, <a href="/enwiki/wiki/DDR3_SDRAM" title="DDR3 SDRAM">DDR3 SDRAM</a>, <a href="/enwiki/wiki/DDR4_SDRAM" title="DDR4 SDRAM">DDR4 SDRAM</a>, and <a href="/enwiki/wiki/DDR5_SDRAM" title="DDR5 SDRAM">DDR5 SDRAM</a></div> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:SAMSUNG@DDR-SDRAM@64MBit@K4D62323HA-QC60_Stack-DSC03539-DSC03556_-_ZS-DMap.jpg" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/b/b9/SAMSUNG%40DDR-SDRAM%4064MBit%40K4D62323HA-QC60_Stack-DSC03539-DSC03556_-_ZS-DMap.jpg/220px-SAMSUNG%40DDR-SDRAM%4064MBit%40K4D62323HA-QC60_Stack-DSC03539-DSC03556_-_ZS-DMap.jpg" decoding="async" width="220" height="149" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/b/b9/SAMSUNG%40DDR-SDRAM%4064MBit%40K4D62323HA-QC60_Stack-DSC03539-DSC03556_-_ZS-DMap.jpg/330px-SAMSUNG%40DDR-SDRAM%4064MBit%40K4D62323HA-QC60_Stack-DSC03539-DSC03556_-_ZS-DMap.jpg 1.5x, /upwiki/wikipedia/commons/thumb/b/b9/SAMSUNG%40DDR-SDRAM%4064MBit%40K4D62323HA-QC60_Stack-DSC03539-DSC03556_-_ZS-DMap.jpg/440px-SAMSUNG%40DDR-SDRAM%4064MBit%40K4D62323HA-QC60_Stack-DSC03539-DSC03556_-_ZS-DMap.jpg 2x" data-file-width="5628" data-file-height="3821" /></a><figcaption>The <a href="/enwiki/wiki/Die_(integrated_circuit)" title="Die (integrated circuit)">die</a> of a Samsung DDR-SDRAM 64-MBit package</figcaption></figure> <p>Double data rate SDRAM (DDR SDRAM or DDR) was a later development of SDRAM, used in PC memory beginning in 2000. Subsequent versions are numbered sequentially (<i>DDR2</i>, <i>DDR3</i>, etc.). DDR SDRAM internally performs double-width accesses at the clock rate, and uses a <a href="/enwiki/wiki/Double_data_rate" title="Double data rate">double data rate</a> interface to transfer one half on each clock edge. DDR2 and DDR3 increased this factor to 4× and 8×, respectively, delivering 4-word and 8-word bursts over 2 and 4 clock cycles, respectively. The internal access rate is mostly unchanged (200 million per second for DDR-400, DDR2-800 and DDR3-1600 memory), but each access transfers more data. </p> <h4><span class="mw-headline" id="Direct_Rambus_DRAM">Direct Rambus DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=37"title="Edit section: Direct Rambus DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/RDRAM" title="RDRAM">RDRAM</a></div> <p><i>Direct RAMBUS DRAM</i> (<i>DRDRAM</i>) was developed by Rambus. First supported on <a href="/enwiki/wiki/Motherboard" title="Motherboard">motherboards</a> in 1999, it was intended to become an industry standard, but was outcompeted by <a href="/enwiki/wiki/DDR_SDRAM" title="DDR SDRAM">DDR SDRAM</a>, making it technically obsolete by 2003. </p> <h4><span class="mw-headline" id="Reduced_Latency_DRAM">Reduced Latency DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=38"title="Edit section: Reduced Latency DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/RLDRAM" title="RLDRAM">RLDRAM</a></div> <p>Reduced Latency DRAM (RLDRAM) is a high performance double data rate (DDR) SDRAM that combines fast, random access with high bandwidth, mainly intended for networking and caching applications. </p> <h3><span class="mw-headline" id="Graphics_RAM">Graphics RAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=39"title="Edit section: Graphics RAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <p>Graphics RAMs are asynchronous and synchronous DRAMs designed for graphics-related tasks such as <a href="/enwiki/wiki/Texture_memory" title="Texture memory">texture memory</a> and <a href="/enwiki/wiki/Framebuffer" title="Framebuffer">framebuffers</a>, found on <a href="/enwiki/wiki/Video_card" class="mw-redirect" title="Video card">video cards</a>. </p> <h4><span class="mw-headline" id="Video_DRAM">Video DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=40"title="Edit section: Video DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/VRAM" class="mw-redirect" title="VRAM">VRAM</a></div> <p>Video DRAM (VRAM) is a <a href="/enwiki/wiki/Dual-ported_RAM" title="Dual-ported RAM">dual-ported</a> variant of DRAM that was once commonly used to store the frame-buffer in some <a href="/enwiki/wiki/Graphics_card" title="Graphics card">graphics adaptors</a>. </p> <h4><span class="mw-headline" id="Window_DRAM"><span class="anchor" id="WRAM"></span>Window DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=41"title="Edit section: Window DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <p>Window DRAM (WRAM) is a variant of VRAM that was once used in graphics adaptors such as the <a href="/enwiki/wiki/Matrox" title="Matrox">Matrox</a> Millennium and <a href="/enwiki/wiki/Rage_Pro#3D_Rage_Pro_&amp;_Rage_IIc" class="mw-redirect" title="Rage Pro">ATI 3D Rage Pro</a>. WRAM was designed to perform better and cost less than VRAM. WRAM offered up to 25% greater bandwidth than VRAM and accelerated commonly used graphical operations such as text drawing and block fills.<sup id="cite_ref-wramdef_57-0" class="reference"><a href="#cite_note-wramdef-57">&#91;57&#93;</a></sup> </p> <h4><span class="mw-headline" id="Multibank_DRAM"><span class="anchor" id="MDRAM"></span>Multibank DRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=42"title="Edit section: Multibank DRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:MoSys_MD908.png" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/3/3d/MoSys_MD908.png/220px-MoSys_MD908.png" decoding="async" width="220" height="220" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/3/3d/MoSys_MD908.png/330px-MoSys_MD908.png 1.5x, /upwiki/wikipedia/commons/thumb/3/3d/MoSys_MD908.png/440px-MoSys_MD908.png 2x" data-file-width="627" data-file-height="627" /></a><figcaption><a href="/enwiki/wiki/MoSys" title="MoSys">MoSys</a> MDRAM MD908</figcaption></figure> <p>Multibank DRAM (MDRAM) is a type of specialized DRAM developed by <a href="/enwiki/wiki/MoSys" title="MoSys">MoSys</a>. It is constructed from small <a href="/enwiki/wiki/Memory_bank" title="Memory bank">memory banks</a> of <span class="nowrap">256 kB</span>, which are operated in an <a href="/enwiki/wiki/Interleaved_memory" title="Interleaved memory">interleaved</a> fashion, providing bandwidths suitable for graphics cards at a lower cost to memories such as <a href="/enwiki/wiki/Static_Random_Access_Memory" class="mw-redirect" title="Static Random Access Memory">SRAM</a>. MDRAM also allows operations to two banks in a single clock cycle, permitting multiple concurrent accesses to occur if the accesses were independent. MDRAM was primarily used in graphic cards, such as those featuring the <a href="/enwiki/wiki/Tseng_Labs" title="Tseng Labs">Tseng Labs</a> ET6x00 chipsets. Boards based upon this chipset often had the unusual capacity of <span class="nowrap">2.25 MB</span> because of MDRAM's ability to be implemented more easily with such capacities. A graphics card with <span class="nowrap">2.25 MB</span> of MDRAM had enough memory to provide 24-bit color at a resolution of 1024×768&#8212;a very popular setting at the time. </p> <h4><span class="mw-headline" id="Synchronous_graphics_RAM"><span class="anchor" id="SGRAM"></span>Synchronous graphics RAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=43"title="Edit section: Synchronous graphics RAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <p>Synchronous graphics RAM (SGRAM) is a specialized form of SDRAM for graphics adaptors. It adds functions such as <a href="/enwiki/wiki/Bit_mask" class="mw-redirect" title="Bit mask">bit masking</a> (writing to a specified bit plane without affecting the others) and block write (filling a block of memory with a single colour). Unlike VRAM and WRAM, SGRAM is single-ported. However, it can open two memory pages at once, which simulates the dual-port nature of other video RAM technologies. </p> <h4><span class="mw-headline" id="Graphics_double_data_rate_SDRAM">Graphics double data rate SDRAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=44"title="Edit section: Graphics double data rate SDRAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h4> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1033289096"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/enwiki/wiki/GDDR" class="mw-redirect" title="GDDR">GDDR</a></div> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:Sapphire_Ultimate_HD_4670_512MB_-_Qimonda_HYB18H512321BF-10-93577.jpg" class="mw-file-description"><img alt="" src="/upwiki/wikipedia/commons/thumb/c/c2/Sapphire_Ultimate_HD_4670_512MB_-_Qimonda_HYB18H512321BF-10-93577.jpg/220px-Sapphire_Ultimate_HD_4670_512MB_-_Qimonda_HYB18H512321BF-10-93577.jpg" decoding="async" width="220" height="165" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/c/c2/Sapphire_Ultimate_HD_4670_512MB_-_Qimonda_HYB18H512321BF-10-93577.jpg/330px-Sapphire_Ultimate_HD_4670_512MB_-_Qimonda_HYB18H512321BF-10-93577.jpg 1.5x, /upwiki/wikipedia/commons/thumb/c/c2/Sapphire_Ultimate_HD_4670_512MB_-_Qimonda_HYB18H512321BF-10-93577.jpg/440px-Sapphire_Ultimate_HD_4670_512MB_-_Qimonda_HYB18H512321BF-10-93577.jpg 2x" data-file-width="3753" data-file-height="2815" /></a><figcaption>A 512-MBit <a href="/enwiki/wiki/Qimonda" title="Qimonda">Qimonda</a> GDDR3 SDRAM package</figcaption></figure> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:SAMSUNG@QDDR3-SDRAM@256MBit@K5J55323QF-GC16_Stack-DSC01340-DSC01367_-_ZS-retouched.jpg" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/a/a0/SAMSUNG%40QDDR3-SDRAM%40256MBit%40K5J55323QF-GC16_Stack-DSC01340-DSC01367_-_ZS-retouched.jpg/220px-SAMSUNG%40QDDR3-SDRAM%40256MBit%40K5J55323QF-GC16_Stack-DSC01340-DSC01367_-_ZS-retouched.jpg" decoding="async" width="220" height="153" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/a/a0/SAMSUNG%40QDDR3-SDRAM%40256MBit%40K5J55323QF-GC16_Stack-DSC01340-DSC01367_-_ZS-retouched.jpg/330px-SAMSUNG%40QDDR3-SDRAM%40256MBit%40K5J55323QF-GC16_Stack-DSC01340-DSC01367_-_ZS-retouched.jpg 1.5x, /upwiki/wikipedia/commons/thumb/a/a0/SAMSUNG%40QDDR3-SDRAM%40256MBit%40K5J55323QF-GC16_Stack-DSC01340-DSC01367_-_ZS-retouched.jpg/440px-SAMSUNG%40QDDR3-SDRAM%40256MBit%40K5J55323QF-GC16_Stack-DSC01340-DSC01367_-_ZS-retouched.jpg 2x" data-file-width="5305" data-file-height="3691" /></a><figcaption>Inside a Samsung GDDR3 256-MBit package</figcaption></figure> <p>Graphics double data rate SDRAM is a type of specialized <a href="/enwiki/wiki/Double_data_rate" title="Double data rate">DDR</a> <a href="/enwiki/wiki/Synchronous_dynamic_random-access_memory" title="Synchronous dynamic random-access memory">SDRAM</a> designed to be used as the main memory of <a href="/enwiki/wiki/Graphics_processing_unit" title="Graphics processing unit">graphics processing units</a> (GPUs). GDDR SDRAM is distinct from commodity types of DDR SDRAM such as DDR3, although they share some core technologies. Their primary characteristics are higher clock frequencies for both the DRAM core and I/O interface, which provides greater memory bandwidth for GPUs. As of 2020, there are seven, successive generations of GDDR: <a href="/enwiki/wiki/GDDR2" class="mw-redirect" title="GDDR2">GDDR2</a>, <a href="/enwiki/wiki/GDDR3" class="mw-redirect" title="GDDR3">GDDR3</a>, <a href="/enwiki/wiki/GDDR4" class="mw-redirect" title="GDDR4">GDDR4</a>, <a href="/enwiki/wiki/GDDR5" class="mw-redirect" title="GDDR5">GDDR5</a>, <a href="/enwiki/wiki/GDDR5X" class="mw-redirect" title="GDDR5X">GDDR5X</a>, <a href="/enwiki/wiki/GDDR6" class="mw-redirect" title="GDDR6">GDDR6</a> and <a href="/enwiki/wiki/GDDR6X" class="mw-redirect" title="GDDR6X">GDDR6X</a>. </p> <h3><span class="mw-headline" id="Pseudostatic_RAM"><span class="anchor" id="PSRAM"></span>Pseudostatic RAM</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=45"title="Edit section: Pseudostatic RAM" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h3> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/enwiki/wiki/File:Olivetti_JP90_-_Toshiba_TC518129CFWL-80_on_controller-8514.jpg" class="mw-file-description"><img src="/upwiki/wikipedia/commons/thumb/6/68/Olivetti_JP90_-_Toshiba_TC518129CFWL-80_on_controller-8514.jpg/220px-Olivetti_JP90_-_Toshiba_TC518129CFWL-80_on_controller-8514.jpg" decoding="async" width="220" height="165" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/6/68/Olivetti_JP90_-_Toshiba_TC518129CFWL-80_on_controller-8514.jpg/330px-Olivetti_JP90_-_Toshiba_TC518129CFWL-80_on_controller-8514.jpg 1.5x, /upwiki/wikipedia/commons/thumb/6/68/Olivetti_JP90_-_Toshiba_TC518129CFWL-80_on_controller-8514.jpg/440px-Olivetti_JP90_-_Toshiba_TC518129CFWL-80_on_controller-8514.jpg 2x" data-file-width="3168" data-file-height="2376" /></a><figcaption>1 Mbit high speed <a href="/enwiki/wiki/CMOS" title="CMOS">CMOS</a> pseudostatic RAM, made by <a href="/enwiki/wiki/Toshiba" title="Toshiba">Toshiba</a></figcaption></figure> <p>Pseudostatic RAM (PSRAM or PSDRAM) is dynamic RAM with built-in refresh and address-control circuitry to make it behave similarly to static RAM (SRAM). It combines the high density of DRAM with the ease of use of true SRAM. PSRAM is used in the Apple iPhone and other embedded systems such as XFlar Platform.<sup id="cite_ref-58" class="reference"><a href="#cite_note-58">&#91;58&#93;</a></sup> </p><p>Some DRAM components have a "self-refresh mode". While this involves much of the same logic that is needed for pseudo-static operation, this mode is often equivalent to a standby mode. It is provided primarily to allow a system to suspend operation of its DRAM controller to save power without losing data stored in DRAM, rather than to allow operation without a separate DRAM controller as is in the case of mentioned PSRAMs. </p><p>An <a href="/enwiki/wiki/EDRAM" title="EDRAM">embedded</a> variant of PSRAM was sold by MoSys under the name <a href="/enwiki/wiki/1T-SRAM" title="1T-SRAM">1T-SRAM</a>. It is a set of small DRAM banks with an SRAM cache in front to make it behave much like a true SRAM. It is used in <a href="/enwiki/wiki/Nintendo" title="Nintendo">Nintendo</a> <a href="/enwiki/wiki/GameCube" title="GameCube">GameCube</a> and <a href="/enwiki/wiki/Wii" title="Wii">Wii</a> video game consoles. </p><p><a href="/enwiki/wiki/Cypress_Semiconductor" title="Cypress Semiconductor">Cypress Semiconductor</a>'s HyperRAM<sup id="cite_ref-59" class="reference"><a href="#cite_note-59">&#91;59&#93;</a></sup> is a type of PSRAM supporting a <a href="/enwiki/wiki/JEDEC_memory_standards" title="JEDEC memory standards">JEDEC</a>-compliant 8-pin HyperBus<sup id="cite_ref-60" class="reference"><a href="#cite_note-60">&#91;60&#93;</a></sup> or Octal xSPI interface. </p> <h2><span class="mw-headline" id="See_also">See also</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=46"title="Edit section: See also" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <style data-mw-deduplicate="TemplateStyles:r1132942124">.mw-parser-output .portalbox{padding:0;margin:0.5em 0;display:table;box-sizing:border-box;max-width:175px;list-style:none}.mw-parser-output .portalborder{border:solid #aaa 1px;padding:0.1em;background:#f9f9f9}.mw-parser-output .portalbox-entry{display:table-row;font-size:85%;line-height:110%;height:1.9em;font-style:italic;font-weight:bold}.mw-parser-output .portalbox-image{display:table-cell;padding:0.2em;vertical-align:middle;text-align:center}.mw-parser-output .portalbox-link{display:table-cell;padding:0.2em 0.2em 0.2em 0.3em;vertical-align:middle}@media(min-width:720px){.mw-parser-output .portalleft{clear:left;float:left;margin:0.5em 1em 0.5em 0}.mw-parser-output .portalright{clear:right;float:right;margin:0.5em 0 0.5em 1em}}</style><ul role="navigation" aria-label="Portals" class="noprint portalbox portalborder portalright"> <li class="portalbox-entry"><span class="portalbox-image"><span class="noviewer" typeof="mw:File"><a href="/enwiki/wiki/File:Nuvola_apps_ksim.png" class="mw-file-description"><img alt="icon" src="/upwiki/wikipedia/commons/thumb/8/8d/Nuvola_apps_ksim.png/28px-Nuvola_apps_ksim.png" decoding="async" width="28" height="28" class="mw-file-element" srcset="/upwiki/wikipedia/commons/thumb/8/8d/Nuvola_apps_ksim.png/42px-Nuvola_apps_ksim.png 1.5x, /upwiki/wikipedia/commons/thumb/8/8d/Nuvola_apps_ksim.png/56px-Nuvola_apps_ksim.png 2x" data-file-width="128" data-file-height="128" /></a></span></span><span class="portalbox-link"><a href="/enwiki/wiki/Portal:Electronics" title="Portal:Electronics">Electronics portal</a></span></li></ul> <ul><li><a href="/enwiki/wiki/DRAM_price_fixing" class="mw-redirect" title="DRAM price fixing">DRAM price fixing</a></li> <li><a href="/enwiki/wiki/Flash_memory" title="Flash memory">Flash memory</a></li> <li><a href="/enwiki/wiki/List_of_device_bit_rates" class="mw-redirect" title="List of device bit rates">List of device bit rates</a></li> <li><a href="/enwiki/wiki/Memory_bank" title="Memory bank">Memory bank</a></li> <li><a href="/enwiki/wiki/Memory_geometry" title="Memory geometry">Memory geometry</a></li></ul> <h2><span class="mw-headline" id="References">References</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=47"title="Edit section: References" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <style data-mw-deduplicate="TemplateStyles:r1011085734">.mw-parser-output .reflist{font-size:90%;margin-bottom:0.5em;list-style-type:decimal}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist reflist-columns references-column-width" style="column-width: 30em;"> <ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1133582631">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url("/upwiki/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url("/upwiki/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url("/upwiki/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("/upwiki/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:#d33}.mw-parser-output .cs1-visible-error{color:#d33}.mw-parser-output .cs1-maint{display:none;color:#3a3;margin-left:0.3em}.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}</style><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.nextcomputers.org/NeXTfiles/Docs/Hardware/NeXTServiceManualPages1-160_OCR.pdf">"NeXTServiceManualPages1-160"</a> <span class="cs1-format">(PDF)</span><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-09</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=NeXTServiceManualPages1-160&amp;rft_id=http%3A%2F%2Fwww.nextcomputers.org%2FNeXTfiles%2FDocs%2FHardware%2FNeXTServiceManualPages1-160_OCR.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFCopeland2010" class="citation book cs1">Copeland, B. Jack (2010). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=YiiQDwAAQBAJ&amp;pg=PA301"><i>Colossus: The secrets of Bletchley Park's code-breaking computers</i></a>. Oxford University Press. p.&#160;301. <a href="/enwiki/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&#160;<a href="/enwiki/wiki/Special:BookSources/978-0-19-157366-8" title="Special:BookSources/978-0-19-157366-8"><bdi>978-0-19-157366-8</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Colossus%3A+The+secrets+of+Bletchley+Park%27s+code-breaking+computers&amp;rft.pages=301&amp;rft.pub=Oxford+University+Press&amp;rft.date=2010&amp;rft.isbn=978-0-19-157366-8&amp;rft.aulast=Copeland&amp;rft.aufirst=B.+Jack&amp;rft_id=https%3A%2F%2Fbooks.google.com%2Fbooks%3Fid%3DYiiQDwAAQBAJ%26pg%3DPA301&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-toscal-3"><span class="mw-cite-backlink">^ <a href="#cite_ref-toscal_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-toscal_3-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.oldcalculatormuseum.com/s-toshbc1411.html">"Spec Sheet for Toshiba "TOSCAL" BC-1411"</a>. <i>www.oldcalculatormuseum.com</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170703071307/http://www.oldcalculatormuseum.com/s-toshbc1411.html">Archived</a> from the original on 3 July 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">8 May</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=www.oldcalculatormuseum.com&amp;rft.atitle=Spec+Sheet+for+Toshiba+%22TOSCAL%22+BC-1411&amp;rft_id=http%3A%2F%2Fwww.oldcalculatormuseum.com%2Fs-toshbc1411.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://collection.sciencemuseum.org.uk/objects/co8406093/toscal-bc-1411-calculator-with-electronic-calculator">Toscal BC-1411 calculator</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170729145228/http://collection.sciencemuseum.org.uk/objects/co8406093/toscal-bc-1411-calculator-with-electronic-calculator">Archived</a> 2017-07-29 at the <a href="/enwiki/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a>, <a href="/enwiki/wiki/Science_Museum,_London" title="Science Museum, London">Science Museum, London</a></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.oldcalculatormuseum.com/toshbc1411.html">Toshiba "Toscal" BC-1411 Desktop Calculator</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20070520202433/http://www.oldcalculatormuseum.com/toshbc1411.html">Archived</a> 2007-05-20 at the <a href="/enwiki/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a></span> </li> <li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://patents.google.com/patent/US3550092A/en?q=(memory+)&amp;assignee=Toshiba+Corp&amp;before=priority:19670101&amp;after=priority:19640101">"Memory Circuit"</a>. <i><a href="/enwiki/wiki/Google_Patents" title="Google Patents">Google Patents</a></i><span class="reference-accessdate">. Retrieved <span class="nowrap">18 June</span> 2023</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Google+Patents&amp;rft.atitle=Memory+Circuit&amp;rft_id=https%3A%2F%2Fpatents.google.com%2Fpatent%2FUS3550092A%2Fen%3Fq%3D%28memory%2B%29%26assignee%3DToshiba%2BCorp%26before%3Dpriority%3A19670101%26after%3Dpriority%3A19640101&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.computerhistory.org/siliconengine/semiconductor-rams-serve-high-speed-storage-needs/">"1966: Semiconductor RAMs Serve High-speed Storage Needs"</a>. <i>Computer History Museum</i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Computer+History+Museum&amp;rft.atitle=1966%3A+Semiconductor+RAMs+Serve+High-speed+Storage+Needs&amp;rft_id=https%3A%2F%2Fwww.computerhistory.org%2Fsiliconengine%2Fsemiconductor-rams-serve-high-speed-storage-needs%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.ibm.com/ibm/history/ibm100/us/en/icons/dram/">"IBM100 — DRAM"</a>. <i>IBM</i>. 9 August 2017.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=IBM&amp;rft.atitle=IBM100+%E2%80%94+DRAM&amp;rft.date=2017-08-09&amp;rft_id=https%3A%2F%2Fwww.ibm.com%2Fibm%2Fhistory%2Fibm100%2Fus%2Fen%2Ficons%2Fdram%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.britannica.com/biography/Robert-Dennard">"Robert Dennard"</a>. <i>Encyclopedia Britannica</i>. September 2023.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Encyclopedia+Britannica&amp;rft.atitle=Robert+Dennard&amp;rft.date=2023-09&amp;rft_id=https%3A%2F%2Fwww.britannica.com%2Fbiography%2FRobert-Dennard&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-computerhistory1970-10"><span class="mw-cite-backlink">^ <a href="#cite_ref-computerhistory1970_10-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-computerhistory1970_10-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.computerhistory.org/storageengine/semiconductors-compete-with-magnetic-cores/">"1970: Semiconductors compete with magnetic cores"</a>. <i><a href="/enwiki/wiki/Computer_History_Museum" title="Computer History Museum">Computer History Museum</a></i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Computer+History+Museum&amp;rft.atitle=1970%3A+Semiconductors+compete+with+magnetic+cores&amp;rft_id=https%3A%2F%2Fwww.computerhistory.org%2Fstorageengine%2Fsemiconductors-compete-with-magnetic-cores%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFMary_Bellis2018" class="citation web cs1">Mary Bellis (23 Feb 2018). <a rel="nofollow" class="external text" href="https://archive.today/20130306105823/http://inventors.about.com/library/weekly/aa100898.htm">"Who Invented the Intel 1103 DRAM Chip?"</a>. ThoughtCo. Archived from <a rel="nofollow" class="external text" href="http://inventors.about.com/library/weekly/aa100898.htm">the original</a> on March 6, 2013<span class="reference-accessdate">. Retrieved <span class="nowrap">27 Feb</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Who+Invented+the+Intel+1103+DRAM+Chip%3F&amp;rft.pub=ThoughtCo&amp;rft.date=2018-02-23&amp;rft.au=Mary+Bellis&amp;rft_id=http%3A%2F%2Finventors.about.com%2Flibrary%2Fweekly%2Faa100898.htm&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20140116124021/http://archive.computerhistory.org/resources/still-image/PENDING/X3665.2007/Semi_SIG/Notes%20from%20interview%20with%20John%20Reed.pdf">"Archived copy"</a> <span class="cs1-format">(PDF)</span>. Archived from <a rel="nofollow" class="external text" href="http://archive.computerhistory.org/resources/still-image/PENDING/X3665.2007/Semi_SIG/Notes%20from%20interview%20with%20John%20Reed.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 2014-01-16<span class="reference-accessdate">. Retrieved <span class="nowrap">2014-01-15</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Archived+copy&amp;rft_id=http%3A%2F%2Farchive.computerhistory.org%2Fresources%2Fstill-image%2FPENDING%2FX3665.2007%2FSemi_SIG%2FNotes%2520from%2520interview%2520with%2520John%2520Reed.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span><span class="cs1-maint citation-comment"><code class="cs1-code">{{<a href="/enwiki/wiki/Template:Cite_web" title="Template:Cite web">cite web</a>}}</code>: CS1 maint: archived copy as title (<a href="/enwiki/wiki/Category:CS1_maint:_archived_copy_as_title" title="Category:CS1 maint: archived copy as title">link</a>)</span></span> </li> <li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFShirriff2020" class="citation web cs1">Shirriff, Ken (November 2020). <a rel="nofollow" class="external text" href="http://www.righto.com/2020/11/reverse-engineering-classic-mk4116-16.html">"Reverse-engineering the classic MK4116 16-kilobit DRAM chip"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Reverse-engineering+the+classic+MK4116+16-kilobit+DRAM+chip&amp;rft.date=2020-11&amp;rft.aulast=Shirriff&amp;rft.aufirst=Ken&amp;rft_id=http%3A%2F%2Fwww.righto.com%2F2020%2F11%2Freverse-engineering-classic-mk4116-16.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFProebsting2005" class="citation web cs1">Proebsting, Robert (14 September 2005). <a rel="nofollow" class="external text" href="https://www.cs.utexas.edu/~hunt/class/2016-spring/cs350c/documents/Robert-Proebsting.pdf">"Oral History of Robert Proebsting"</a> <span class="cs1-format">(PDF)</span>. Interviewed by Hendrie, Gardner. Computer History Museum. X3274.2006.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Oral+History+of+Robert+Proebsting&amp;rft.pub=Computer+History+Museum&amp;rft.date=2005-09-14&amp;rft.aulast=Proebsting&amp;rft.aufirst=Robert&amp;rft_id=https%3A%2F%2Fwww.cs.utexas.edu%2F~hunt%2Fclass%2F2016-spring%2Fcs350c%2Fdocuments%2FRobert-Proebsting.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.shmj.or.jp/makimoto/en/pdf/makimoto_E_01_12.pdf">"Outbreak of Japan-US Semiconductor War"</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200229223250/http://www.shmj.or.jp/makimoto/en/pdf/makimoto_E_01_12.pdf">Archived</a> 2020-02-29 at the <a href="/enwiki/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a></span> </li> <li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFNester2016" class="citation book cs1">Nester, William R. (2016). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=hCi_DAAAQBAJ"><i>American Industrial Policy: Free or Managed Markets?</i></a>. Springer. p.&#160;115. <a href="/enwiki/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&#160;<a href="/enwiki/wiki/Special:BookSources/978-1-349-25568-9" title="Special:BookSources/978-1-349-25568-9"><bdi>978-1-349-25568-9</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=American+Industrial+Policy%3A+Free+or+Managed+Markets%3F&amp;rft.pages=115&amp;rft.pub=Springer&amp;rft.date=2016&amp;rft.isbn=978-1-349-25568-9&amp;rft.aulast=Nester&amp;rft.aufirst=William+R.&amp;rft_id=https%3A%2F%2Fbooks.google.com%2Fbooks%3Fid%3DhCi_DAAAQBAJ&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFSanger1985" class="citation news cs1">Sanger, David E. (3 August 1985). <a rel="nofollow" class="external text" href="https://www.nytimes.com/1985/08/03/business/japan-chip-dumping-is-found.html">"Japan chip 'dumping' is found"</a>. <i>New York Times</i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=New+York+Times&amp;rft.atitle=Japan+chip+%27dumping%27+is+found&amp;rft.date=1985-08-03&amp;rft.aulast=Sanger&amp;rft.aufirst=David+E.&amp;rft_id=https%3A%2F%2Fwww.nytimes.com%2F1985%2F08%2F03%2Fbusiness%2Fjapan-chip-dumping-is-found.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> <br /> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFWoutat.1985" class="citation news cs1">Woutat., Donald (4 November 1985). <a rel="nofollow" class="external text" href="https://www.latimes.com/archives/la-xpm-1985-12-04-fi-625-story.html">"6 Japan Chip Makers Cited for Dumping"</a>. <i>Los Angeles Times</i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=Los+Angeles+Times&amp;rft.atitle=6+Japan+Chip+Makers+Cited+for+Dumping&amp;rft.date=1985-11-04&amp;rft.aulast=Woutat.&amp;rft.aufirst=Donald&amp;rft_id=https%3A%2F%2Fwww.latimes.com%2Farchives%2Fla-xpm-1985-12-04-fi-625-story.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> <br /> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation news cs1"><a rel="nofollow" class="external text" href="https://www.latimes.com/archives/la-xpm-1986-03-14-fi-20761-story.html">"More Japan Firms Accused: U.S. Contends 5 Companies Dumped Chips"</a>. <i>Los Angeles Times</i>. 1986.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=Los+Angeles+Times&amp;rft.atitle=More+Japan+Firms+Accused%3A+U.S.+Contends+5+Companies+Dumped+Chips&amp;rft.date=1986&amp;rft_id=https%3A%2F%2Fwww.latimes.com%2Farchives%2Fla-xpm-1986-03-14-fi-20761-story.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> <br /> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFSanger1987" class="citation news cs1">Sanger, David E. (3 November 1987). <a rel="nofollow" class="external text" href="https://www.nytimes.com/1987/11/03/business/japanese-chip-dumping-has-ended-us-finds.html">"Japanese Chip Dumping Has Ended, U.S. Finds"</a>. <i>New York Times</i>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=New+York+Times&amp;rft.atitle=Japanese+Chip+Dumping+Has+Ended%2C+U.S.+Finds&amp;rft.date=1987-11-03&amp;rft.aulast=Sanger&amp;rft.aufirst=David+E.&amp;rft_id=https%3A%2F%2Fwww.nytimes.com%2F1987%2F11%2F03%2Fbusiness%2Fjapanese-chip-dumping-has-ended-us-finds.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-electronic-design-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-electronic-design_18-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation journal cs1"><a rel="nofollow" class="external text" href="https://books.google.com/books?id=QmpJAQAAIAAJ">"Electronic Design"</a>. <i><a href="/enwiki/wiki/Electronic_Design" class="mw-redirect" title="Electronic Design">Electronic Design</a></i>. Hayden Publishing Company. <b>41</b> (15–21). 1993. <q>The first commercial synchronous DRAM, the Samsung 16-Mbit KM48SL2000, employs a single-bank architecture that lets system designers easily transition from asynchronous to synchronous systems.</q></cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=Electronic+Design&amp;rft.atitle=Electronic+Design&amp;rft.volume=41&amp;rft.issue=15%E2%80%9321&amp;rft.date=1993&amp;rft_id=https%3A%2F%2Fbooks.google.com%2Fbooks%3Fid%3DQmpJAQAAIAAJ&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.datasheetarchive.com/KM48SL2000-7-datasheet.html">"KM48SL2000-7 Datasheet"</a>. <a href="/enwiki/wiki/Samsung" title="Samsung">Samsung</a>. August 1992<span class="reference-accessdate">. Retrieved <span class="nowrap">19 June</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=KM48SL2000-7+Datasheet&amp;rft.pub=Samsung&amp;rft.date=1992-08&amp;rft_id=https%3A%2F%2Fwww.datasheetarchive.com%2FKM48SL2000-7-datasheet.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation news cs1"><a rel="nofollow" class="external text" href="https://www.samsung.com/semiconductor/insights/news-events/samsung-electronics-develops-first-128mb-sdram-with-ddr-sdr-manufacturing-option/">"Samsung Electronics Develops First 128Mb SDRAM with DDR/SDR Manufacturing Option"</a>. <i><a href="/enwiki/wiki/Samsung_Electronics" title="Samsung Electronics">Samsung Electronics</a></i>. <a href="/enwiki/wiki/Samsung" title="Samsung">Samsung</a>. 10 February 1999<span class="reference-accessdate">. Retrieved <span class="nowrap">23 June</span> 2019</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=Samsung+Electronics&amp;rft.atitle=Samsung+Electronics+Develops+First+128Mb+SDRAM+with+DDR%2FSDR+Manufacturing+Option&amp;rft.date=1999-02-10&amp;rft_id=https%3A%2F%2Fwww.samsung.com%2Fsemiconductor%2Finsights%2Fnews-events%2Fsamsung-electronics-develops-first-128mb-sdram-with-ddr-sdr-manufacturing-option%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-21">^</a></b></span> <span class="reference-text"> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFKuriko_Miyake2001" class="citation web cs1">Kuriko Miyake (2001). <a rel="nofollow" class="external text" href="http://edition.cnn.com/2001/TECH/industry/10/25/chip.dumping.idg/">"Japanese chip makers say they suspect dumping by Korean firms"</a>. CNN.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Japanese+chip+makers+say+they+suspect+dumping+by+Korean+firms&amp;rft.pub=CNN&amp;rft.date=2001&amp;rft.au=Kuriko+Miyake&amp;rft_id=http%3A%2F%2Fedition.cnn.com%2F2001%2FTECH%2Findustry%2F10%2F25%2Fchip.dumping.idg%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> <br /> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation news cs1"><a rel="nofollow" class="external text" href="https://www.itworld.com/article/2794396/japanese-chip-makers-suspect-dumping-by-korean-firms.html">"Japanese chip makers suspect dumping by Korean firms"</a>. <i>ITWorld</i>. 2001.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=ITWorld&amp;rft.atitle=Japanese+chip+makers+suspect+dumping+by+Korean+firms&amp;rft.date=2001&amp;rft_id=https%3A%2F%2Fwww.itworld.com%2Farticle%2F2794396%2Fjapanese-chip-makers-suspect-dumping-by-korean-firms.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> <br /> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.eetimes.com/dram-pricing-investigation-in-japan-targets-hynix-samsung/">"DRAM pricing investigation in Japan targets Hynix, Samsung"</a>. EETimes. 2001.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=DRAM+pricing+investigation+in+Japan+targets+Hynix%2C+Samsung&amp;rft.pub=EETimes&amp;rft.date=2001&amp;rft_id=https%3A%2F%2Fwww.eetimes.com%2Fdram-pricing-investigation-in-japan-targets-hynix-samsung%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> <br /> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://phys.org/news/2006-01-korean-dram-japan.html">"Korean DRAM finds itself shut out of Japan"</a>. Phys.org. 2006.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Korean+DRAM+finds+itself+shut+out+of+Japan&amp;rft.pub=Phys.org&amp;rft.date=2006&amp;rft_id=https%3A%2F%2Fphys.org%2Fnews%2F2006-01-korean-dram-japan.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.eng.utah.edu/~cs7810/pres/11-7810-12.pdf">"Lecture 12: DRAM Basics"</a> <span class="cs1-format">(PDF)</span>. <i>utah.edu</i>. 2011-02-17. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150616050009/http://www.eng.utah.edu/~cs7810/pres/11-7810-12.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on 2015-06-16<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-03-10</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=utah.edu&amp;rft.atitle=Lecture+12%3A+DRAM+Basics&amp;rft.date=2011-02-17&amp;rft_id=http%3A%2F%2Fwww.eng.utah.edu%2F~cs7810%2Fpres%2F11-7810-12.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFDavid_August2004" class="citation web cs1">David August (2004-11-23). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20050519185856/http://www.cs.princeton.edu/courses/archive/fall04/cos471/lectures/20-Memory.pdf">"Lecture 20: Memory Technology"</a> <span class="cs1-format">(PDF)</span>. <i>cs.princeton.edu</i>. pp.&#160;3–5. Archived from <a rel="nofollow" class="external text" href="https://www.cs.princeton.edu/courses/archive/fall04/cos471/lectures/20-Memory.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 2005-05-19<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-03-10</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=cs.princeton.edu&amp;rft.atitle=Lecture+20%3A+Memory+Technology&amp;rft.pages=3-5&amp;rft.date=2004-11-23&amp;rft.au=David+August&amp;rft_id=https%3A%2F%2Fwww.cs.princeton.edu%2Fcourses%2Farchive%2Ffall04%2Fcos471%2Flectures%2F20-Memory.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-Kenner:24,30-24"><span class="mw-cite-backlink">^ <a href="#cite_ref-Kenner:24,30_24-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Kenner:24,30_24-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-Kenner:24,30_24-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-Kenner:24,30_24-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-Kenner:24,30_24-4"><sup><i><b>e</b></i></sup></a> <a href="#cite_ref-Kenner:24,30_24-5"><sup><i><b>f</b></i></sup></a> <a href="#cite_ref-Kenner:24,30_24-6"><sup><i><b>g</b></i></sup></a> <a href="#cite_ref-Kenner:24,30_24-7"><sup><i><b>h</b></i></sup></a> <a href="#cite_ref-Kenner:24,30_24-8"><sup><i><b>i</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFKeethBakerJohnsonLin2007">Keeth et al. 2007</a>, pp.&#160;24–30</span> </li> <li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.usenix.org/legacy/event/sec08/tech/full_papers/halderman/halderman_html/">Lest We Remember: Cold Boot Attacks on Encryption Keys</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150105103510/https://www.usenix.org/legacy/event/sec08/tech/full_papers/halderman/halderman_html/">Archived</a> 2015-01-05 at the <a href="/enwiki/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a>, Halderman et al, USENIX Security 2008.</span> </li> <li id="cite_note-Micron1-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-Micron1_26-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20070927174618/http://download.micron.com/pdf/datasheets/dram/d47b.pdf">"Micron 4 Meg x 4 EDO DRAM data sheet"</a> <span class="cs1-format">(PDF)</span>. <i>micron.com</i>. Archived from <a rel="nofollow" class="external text" href="http://download.micron.com/pdf/datasheets/dram/d47b.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 27 September 2007<span class="reference-accessdate">. Retrieved <span class="nowrap">8 May</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=micron.com&amp;rft.atitle=Micron+4+Meg+x+4+EDO+DRAM+data+sheet&amp;rft_id=http%3A%2F%2Fdownload.micron.com%2Fpdf%2Fdatasheets%2Fdram%2Fd47b.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-27">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20080911032322/http://www.corsairmemory.com/_datasheets/cmx1024-3200.pdf">"Corsair CMX1024-3200 (1&#160;GByte, two bank unbuffered DDR SDRAM DIMM)"</a> <span class="cs1-format">(PDF)</span>. December 2003. Archived from <a rel="nofollow" class="external text" href="http://www.corsairmemory.com/corsair/products/specs/cmx1024-3200.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 11 September 2008.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Corsair+CMX1024-3200+%281+GByte%2C+two+bank+unbuffered+DDR+SDRAM+DIMM%29&amp;rft.date=2003-12&amp;rft_id=http%3A%2F%2Fwww.corsairmemory.com%2Fcorsair%2Fproducts%2Fspecs%2Fcmx1024-3200.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-28">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20061207112238/http://www.corsairmemory.com/corsair/products/specs/twinx1024-3200xl.pdf">"Corsair TWINX1024-3200XL dual-channel memory kit"</a> <span class="cs1-format">(PDF)</span>. May 2004. Archived from <a rel="nofollow" class="external text" href="http://www.corsairmemory.com/corsair/products/specs/twinx1024-3200xl.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 7 December 2006.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Corsair+TWINX1024-3200XL+dual-channel+memory+kit&amp;rft.date=2004-05&amp;rft_id=http%3A%2F%2Fwww.corsairmemory.com%2Fcorsair%2Fproducts%2Fspecs%2Ftwinx1024-3200xl.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-Kenner:22-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-Kenner:22_29-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFKeethBakerJohnsonLin2007">Keeth et al. 2007</a>, p.&#160;22</span> </li> <li id="cite_note-Kenner:24-30"><span class="mw-cite-backlink"><b><a href="#cite_ref-Kenner:24_30-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFKeethBakerJohnsonLin2007">Keeth et al. 2007</a>, p.&#160;24</span> </li> <li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFSallese2002" class="citation conference cs1">Sallese, Jean-Michel (2002-06-20). <a rel="nofollow" class="external text" href="http://legwww.epfl.ch/ekv/mos-ak/wroclaw/MOS-AK_JMS.pdf">"Principles of the 1T Dynamic Access Memory Concept on SOI"</a> <span class="cs1-format">(PDF)</span>. <i>MOS Modeling and Parameter Extraction Group Meeting</i>. Wroclaw, Poland. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20071129114317/http://legwww.epfl.ch/ekv/mos-ak/wroclaw/MOS-AK_JMS.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on 2007-11-29<span class="reference-accessdate">. Retrieved <span class="nowrap">2007-10-07</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=conference&amp;rft.atitle=Principles+of+the+1T+Dynamic+Access+Memory+Concept+on+SOI&amp;rft.btitle=MOS+Modeling+and+Parameter+Extraction+Group+Meeting&amp;rft.place=Wroclaw%2C+Poland&amp;rft.date=2002-06-20&amp;rft.aulast=Sallese&amp;rft.aufirst=Jean-Michel&amp;rft_id=http%3A%2F%2Flegwww.epfl.ch%2Fekv%2Fmos-ak%2Fwroclaw%2FMOS-AK_JMS.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-32">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFF._Morishita2005" class="citation book cs1 cs1-prop-long-vol">F. Morishita; et&#160;al. (21 September 2005). "A capacitorless twin-transistor random access memory (TTRAM) on SOI". <i>Proceedings of the IEEE 2005 Custom Integrated Circuits Conference, 2005</i>. Vol.&#160;Custom Integrated Circuits Conference 2005. pp.&#160;428–431. <a href="/enwiki/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1109%2FCICC.2005.1568699">10.1109/CICC.2005.1568699</a>. <a href="/enwiki/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&#160;<a href="/enwiki/wiki/Special:BookSources/978-0-7803-9023-2" title="Special:BookSources/978-0-7803-9023-2"><bdi>978-0-7803-9023-2</bdi></a>. <a href="/enwiki/wiki/S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&#160;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:14952912">14952912</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=bookitem&amp;rft.atitle=A+capacitorless+twin-transistor+random+access+memory+%28TTRAM%29+on+SOI&amp;rft.btitle=Proceedings+of+the+IEEE+2005+Custom+Integrated+Circuits+Conference%2C+2005&amp;rft.pages=428-431&amp;rft.date=2005-09-21&amp;rft_id=https%3A%2F%2Fapi.semanticscholar.org%2FCorpusID%3A14952912%23id-name%3DS2CID&amp;rft_id=info%3Adoi%2F10.1109%2FCICC.2005.1568699&amp;rft.isbn=978-0-7803-9023-2&amp;rft.au=F.+Morishita&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-33">^</a></b></span> <span class="reference-text">J. Park et al., IEDM 2015.</span> </li> <li id="cite_note-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-34">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20141223152744/http://www.intelligentmemory.com/ECC-DRAM/">"ECC DRAM – Intelligent Memory"</a>. <i>intelligentmemory.com</i>. Archived from <a rel="nofollow" class="external text" href="http://www.intelligentmemory.com/ECC-DRAM/">the original</a> on 2014-12-23<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-01-16</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=intelligentmemory.com&amp;rft.atitle=ECC+DRAM+%E2%80%93+Intelligent+Memory&amp;rft_id=http%3A%2F%2Fwww.intelligentmemory.com%2FECC-DRAM%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-35">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFMastipuram,_RiteshWee,_Edwin_C2004" class="citation web cs1">Mastipuram, Ritesh; Wee, Edwin C (30 September 2004). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20070416115228/http://www.edn.com/article/CA454636.html">"Soft errors' impact on system reliability"</a>. <i>EDN</i>. Cypress Semiconductor. Archived from <a rel="nofollow" class="external text" href="http://www.edn.com/article/CA454636.html">the original</a> on 16 April 2007.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=EDN&amp;rft.atitle=Soft+errors%27+impact+on+system+reliability&amp;rft.date=2004-09-30&amp;rft.au=Mastipuram%2C+Ritesh&amp;rft.au=Wee%2C+Edwin+C&amp;rft_id=http%3A%2F%2Fwww.edn.com%2Farticle%2FCA454636.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-Borucki1-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-Borucki1_36-0">^</a></b></span> <span class="reference-text">Borucki, "Comparison of Accelerated DRAM Soft Error Rates Measured at Component and System Level", 46th Annual International Reliability Physics Symposium, Phoenix, 2008, pp. 482–487</span> </li> <li id="cite_note-Schroeder1-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-Schroeder1_37-0">^</a></b></span> <span class="reference-text">Schroeder, Bianca et al. (2009). <a rel="nofollow" class="external text" href="http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf">"DRAM errors in the wild: a large-scale field study"</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150310193355/http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf">Archived</a> 2015-03-10 at the <a href="/enwiki/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a>. <i>Proceedings of the Eleventh International Joint Conference on Measurement and Modeling of Computer Systems</i>, pp.&#160;193–204.</span> </li> <li id="cite_note-Xin1-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-Xin1_38-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20170214005146/http://www.ece.rochester.edu/~xinli/usenix07/">"A Memory Soft Error Measurement on Production Systems"</a>. <i>www.ece.rochester.edu</i>. Archived from <a rel="nofollow" class="external text" href="http://www.ece.rochester.edu/~xinli/usenix07/">the original</a> on 14 February 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">8 May</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=www.ece.rochester.edu&amp;rft.atitle=A+Memory+Soft+Error+Measurement+on+Production+Systems&amp;rft_id=http%3A%2F%2Fwww.ece.rochester.edu%2F~xinli%2Fusenix07%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-39">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://spectrum.ieee.org/computing/hardware/drams-damning-defects-and-how-they-cripple-computers">"DRAM's Damning Defects—and How They Cripple Computers - IEEE Spectrum"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20151124182515/https://spectrum.ieee.org/computing/hardware/drams-damning-defects-and-how-they-cripple-computers">Archived</a> from the original on 2015-11-24<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-11-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=DRAM%27s+Damning+Defects%E2%80%94and+How+They+Cripple+Computers+-+IEEE+Spectrum&amp;rft_id=https%3A%2F%2Fspectrum.ieee.org%2Fcomputing%2Fhardware%2Fdrams-damning-defects-and-how-they-cripple-computers&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-40"><span class="mw-cite-backlink"><b><a href="#cite_ref-40">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFLi,_HuangShen,_Chu2010" class="citation web cs1">Li, Huang; Shen, Chu (2010). <a rel="nofollow" class="external text" href="http://www.cs.rochester.edu/~kshen/papers/usenix2010-li.pdf">"<span class="cs1-kern-left"></span>"A Realistic Evaluation of Memory Hardware Errors and Software System Susceptibility". Usenix Annual Tech Conference 2010"</a> <span class="cs1-format">(PDF)</span>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150515214728/http://www.cs.rochester.edu/%7Ekshen/papers/usenix2010-li.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on 2015-05-15.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=%22A+Realistic+Evaluation+of+Memory+Hardware+Errors+and+Software+System+Susceptibility%22.+Usenix+Annual+Tech+Conference+2010&amp;rft.date=2010&amp;rft.au=Li%2C+Huang&amp;rft.au=Shen%2C+Chu&amp;rft_id=http%3A%2F%2Fwww.cs.rochester.edu%2F~kshen%2Fpapers%2Fusenix2010-li.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-41">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://research.microsoft.com/pubs/144888/eurosys84-nightingale.pdf">"Cycles, cells and platters: an empirical analysis of hardware failures on a million consumer PCs. Proceedings of the sixth conference on Computer systems (EuroSys '11). pp 343-356"</a> <span class="cs1-format">(PDF)</span>. 2011. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20121114111006/http://research.microsoft.com/pubs/144888/eurosys84-nightingale.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on 2012-11-14.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Cycles%2C+cells+and+platters%3A+an+empirical+analysis+of+hardware+failures+on+a+million+consumer+PCs.+Proceedings+of+the+sixth+conference+on+Computer+systems+%28EuroSys+%2711%29.+pp+343-356&amp;rft.date=2011&amp;rft_id=http%3A%2F%2Fresearch.microsoft.com%2Fpubs%2F144888%2Feurosys84-nightingale.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-citp-42"><span class="mw-cite-backlink">^ <a href="#cite_ref-citp_42-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-citp_42-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20110722182409/http://citp.princeton.edu/memory/">"Center for Information Technology Policy&#160;» Lest We Remember: Cold Boot Attacks on Encryption Keys"</a>. Archived from <a rel="nofollow" class="external text" href="http://citp.princeton.edu/memory/">the original</a> on July 22, 2011.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Center+for+Information+Technology+Policy+%C2%BB+Lest+We+Remember%3A+Cold+Boot+Attacks+on+Encryption+Keys&amp;rft_id=http%3A%2F%2Fcitp.princeton.edu%2Fmemory%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> 080222 citp.princeton.edu</span> </li> <li id="cite_note-Scheick1-43"><span class="mw-cite-backlink"><b><a href="#cite_ref-Scheick1_43-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFScheickGuertinSwift2000" class="citation journal cs1">Scheick, Leif Z.; Guertin, Steven M.; Swift, Gary M. (December 2000). "Analysis of radiation effects on individual DRAM cells". <i>IEEE Transactions on Nuclear Science</i>. <b>47</b> (6): 2534–2538. <a href="/enwiki/wiki/Bibcode_(identifier)" class="mw-redirect" title="Bibcode (identifier)">Bibcode</a>:<a rel="nofollow" class="external text" href="https://ui.adsabs.harvard.edu/abs/2000ITNS...47.2534S">2000ITNS...47.2534S</a>. <a href="/enwiki/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1109%2F23.903804">10.1109/23.903804</a>. <a href="/enwiki/wiki/ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a>&#160;<a rel="nofollow" class="external text" href="https://www.worldcat.org/issn/0018-9499">0018-9499</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=IEEE+Transactions+on+Nuclear+Science&amp;rft.atitle=Analysis+of+radiation+effects+on+individual+DRAM+cells&amp;rft.volume=47&amp;rft.issue=6&amp;rft.pages=2534-2538&amp;rft.date=2000-12&amp;rft.issn=0018-9499&amp;rft_id=info%3Adoi%2F10.1109%2F23.903804&amp;rft_id=info%3Abibcode%2F2000ITNS...47.2534S&amp;rft.aulast=Scheick&amp;rft.aufirst=Leif+Z.&amp;rft.au=Guertin%2C+Steven+M.&amp;rft.au=Swift%2C+Gary+M.&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-44"><span class="mw-cite-backlink"><b><a href="#cite_ref-44">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFYoongu_KimRoss_DalyJeremie_KimChris_Fallin2014" class="citation web cs1">Yoongu Kim; Ross Daly; Jeremie Kim; Chris Fallin; Ji Hye Lee; Donghyuk Lee; Chris Wilkerson; Konrad Lai; Onur Mutlu (June 24, 2014). <a rel="nofollow" class="external text" href="http://users.ece.cmu.edu/~omutlu/pub/dram-row-hammer_kim_talk_isca14.pdf">"Flipping Bits in Memory Without Accessing Them: DRAM Disturbance Errors"</a> <span class="cs1-format">(PDF)</span>. <i>ece.cmu.edu</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150326080426/http://users.ece.cmu.edu/~omutlu/pub/dram-row-hammer_kim_talk_isca14.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on 2015-03-26<span class="reference-accessdate">. Retrieved <span class="nowrap">March 10,</span> 2015</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=ece.cmu.edu&amp;rft.atitle=Flipping+Bits+in+Memory+Without+Accessing+Them%3A+DRAM+Disturbance+Errors&amp;rft.date=2014-06-24&amp;rft.au=Yoongu+Kim&amp;rft.au=Ross+Daly&amp;rft.au=Jeremie+Kim&amp;rft.au=Chris+Fallin&amp;rft.au=Ji+Hye+Lee&amp;rft.au=Donghyuk+Lee&amp;rft.au=Chris+Wilkerson&amp;rft.au=Konrad+Lai&amp;rft.au=Onur+Mutlu&amp;rft_id=http%3A%2F%2Fusers.ece.cmu.edu%2F~omutlu%2Fpub%2Fdram-row-hammer_kim_talk_isca14.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-45"><span class="mw-cite-backlink"><b><a href="#cite_ref-45">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFIan_Poole" class="citation web cs1">Ian Poole. <a rel="nofollow" class="external text" href="http://www.radio-electronics.com/info/data/semicond/memory/sdram-memory-basics-tutorial.php">"SDRAM Memory Basics &amp; Tutorial"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20180227153519/http://www.radio-electronics.com/info/data/semicond/memory/sdram-memory-basics-tutorial.php">Archived</a> from the original on 2018-02-27<span class="reference-accessdate">. Retrieved <span class="nowrap">26 Feb</span> 2018</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=SDRAM+Memory+Basics+%26+Tutorial&amp;rft.au=Ian+Poole&amp;rft_id=http%3A%2F%2Fwww.radio-electronics.com%2Finfo%2Fdata%2Fsemicond%2Fmemory%2Fsdram-memory-basics-tutorial.php&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-46"><span class="mw-cite-backlink"><b><a href="#cite_ref-46">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20170829153054/http://www.ece.cmu.edu/~ece548/localcpy/dramop.pdf">"Understanding DRAM Operation (Application Note)"</a> <span class="cs1-format">(PDF)</span>. IBM. December 1996. Archived from <a rel="nofollow" class="external text" href="http://www.ece.cmu.edu/~ece548/localcpy/dramop.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 29 August 2017.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Understanding+DRAM+Operation+%28Application+Note%29&amp;rft.pub=IBM&amp;rft.date=1996-12&amp;rft_id=http%3A%2F%2Fwww.ece.cmu.edu%2F~ece548%2Flocalcpy%2Fdramop.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-47"><span class="mw-cite-backlink"><b><a href="#cite_ref-47">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation book cs1"><a rel="nofollow" class="external text" href="http://www.zilog.com/docs/z80/um0080.pdf"><i>Z80 CPU User Manual</i></a> <span class="cs1-format">(PDF)</span>. p.&#160;3.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Z80+CPU+User+Manual&amp;rft.pages=3&amp;rft_id=http%3A%2F%2Fwww.zilog.com%2Fdocs%2Fz80%2Fum0080.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-48"><span class="mw-cite-backlink"><b><a href="#cite_ref-48">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://retrocomputing.stackexchange.com/questions/14012/what-is-dram-refresh-and-why-is-the-weird-apple-ii-video-memory-layout-affected">"What is DRAM refresh and why is the weird Apple II video memory layout affected by it?"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=What+is+DRAM+refresh+and+why+is+the+weird+Apple+II+video+memory+layout+affected+by+it%3F&amp;rft_id=https%3A%2F%2Fretrocomputing.stackexchange.com%2Fquestions%2F14012%2Fwhat-is-dram-refresh-and-why-is-the-weird-apple-ii-video-memory-layout-affected&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-49"><span class="mw-cite-backlink"><b><a href="#cite_ref-49">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.downloads.reactivemicro.com/Public/Electronics/DRAM/DRAM%20Refresh.pdf">Various Methods of DRAM Refresh</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20111003001843/http://www.downloads.reactivemicro.com/Public/Electronics/DRAM/DRAM%20Refresh.pdf">Archived</a> 2011-10-03 at the <a href="/enwiki/wiki/Wayback_Machine" title="Wayback Machine">Wayback Machine</a> Micron Technical Note TN-04-30</span> </li> <li id="cite_note-Kenner_13-50"><span class="mw-cite-backlink"><b><a href="#cite_ref-Kenner_13_50-0">^</a></b></span> <span class="reference-text"><a href="#CITEREFKeethBakerJohnsonLin2007">Keeth et al. 2007</a>, p.&#160;13</span> </li> <li id="cite_note-Kenner_14-51"><span class="mw-cite-backlink">^ <a href="#cite_ref-Kenner_14_51-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Kenner_14_51-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-Kenner_14_51-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFKeethBakerJohnsonLin2007">Keeth et al. 2007</a>, p.&#160;14</span> </li> <li id="cite_note-52"><span class="mw-cite-backlink"><b><a href="#cite_ref-52">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFS._Mueller2004" class="citation book cs1">S. Mueller (2004). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=xCXVGneKwScC"><i>Upgrading and Repairing Laptops</i></a>. Que; Har/Cdr Edition. p.&#160;221. <a href="/enwiki/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&#160;<a href="/enwiki/wiki/Special:BookSources/9780789728005" title="Special:BookSources/9780789728005"><bdi>9780789728005</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Upgrading+and+Repairing+Laptops&amp;rft.pages=221&amp;rft.pub=Que%3B+Har%2FCdr+Edition&amp;rft.date=2004&amp;rft.isbn=9780789728005&amp;rft.au=S.+Mueller&amp;rft_id=https%3A%2F%2Fbooks.google.com%2Fbooks%3Fid%3DxCXVGneKwScC&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-53"><span class="mw-cite-backlink"><b><a href="#cite_ref-53">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFLin1999" class="citation web cs1">Lin, Albert (20 December 1999). <a rel="nofollow" class="external text" href="http://www.simmtester.com/page/news/showpubnews.asp?num=11">"Memory Grades, the Most Confusing Subject"</a>. <i>Simmtester.com</i>. CST, Inc. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20171107005936/http://www.simmtester.com/page/news/showpubnews.asp?num=11">Archived</a> from the original on 7 November 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">1 November</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=Simmtester.com&amp;rft.atitle=Memory+Grades%2C+the+Most+Confusing+Subject&amp;rft.date=1999-12-20&amp;rft.aulast=Lin&amp;rft.aufirst=Albert&amp;rft_id=http%3A%2F%2Fwww.simmtester.com%2Fpage%2Fnews%2Fshowpubnews.asp%3Fnum%3D11&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-54"><span class="mw-cite-backlink"><b><a href="#cite_ref-54">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFHuang1996" class="citation web cs1">Huang, Andrew (14 September 1996). <a rel="nofollow" class="external text" href="http://www.bunniestudios.com/bunnie/dramfaq/DRAMFAQ.html">"Bunnie's RAM FAQ"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170612210850/http://www.bunniestudios.com/bunnie/dramfaq/DRAMFAQ.html">Archived</a> from the original on 12 June 2017.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Bunnie%27s+RAM+FAQ&amp;rft.date=1996-09-14&amp;rft.aulast=Huang&amp;rft.aufirst=Andrew&amp;rft_id=http%3A%2F%2Fwww.bunniestudios.com%2Fbunnie%2Fdramfaq%2FDRAMFAQ.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-55"><span class="mw-cite-backlink"><b><a href="#cite_ref-55">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFCuppu,_VinodhJacob,_BruceDavis,_BrianMudge,_Trevor2001" class="citation journal cs1">Cuppu, Vinodh; Jacob, Bruce; Davis, Brian; Mudge, Trevor (November 2001). <a rel="nofollow" class="external text" href="http://www.bunniestudios.com/bunnie/dramfaq/dram-workstation.pdf">"High-Performance DRAMs in Workstation Environments"</a> <span class="cs1-format">(PDF)</span>. <i>IEEE Transactions on Computers</i>. <b>50</b> (11): 1133–1153. <a href="/enwiki/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1109%2F12.966491">10.1109/12.966491</a>. <a href="/enwiki/wiki/Hdl_(identifier)" class="mw-redirect" title="Hdl (identifier)">hdl</a>:<span class="cs1-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://hdl.handle.net/1903%2F7456">1903/7456</a></span>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170808082644/http://www.bunniestudios.com/bunnie/dramfaq/dram-workstation.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on 8 August 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">2 November</span> 2017</span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=IEEE+Transactions+on+Computers&amp;rft.atitle=High-Performance+DRAMs+in+Workstation+Environments&amp;rft.volume=50&amp;rft.issue=11&amp;rft.pages=1133-1153&amp;rft.date=2001-11&amp;rft_id=info%3Ahdl%2F1903%2F7456&amp;rft_id=info%3Adoi%2F10.1109%2F12.966491&amp;rft.au=Cuppu%2C+Vinodh&amp;rft.au=Jacob%2C+Bruce&amp;rft.au=Davis%2C+Brian&amp;rft.au=Mudge%2C+Trevor&amp;rft_id=http%3A%2F%2Fwww.bunniestudios.com%2Fbunnie%2Fdramfaq%2Fdram-workstation.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-56"><span class="mw-cite-backlink"><b><a href="#cite_ref-56">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFKent1998" class="citation web cs1">Kent, Dean (24 October 1998). <a rel="nofollow" class="external text" href="https://www.tomshardware.com/reviews/ram-guide,89-7.html">"Burst EDO (BEDO) - Ram Guide &#124; Tom's Hardware"</a>. Tomshardware.com<span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-09</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Burst+EDO+%28BEDO%29+-+Ram+Guide+%26%23124%3B+Tom%27s+Hardware&amp;rft.pub=Tomshardware.com&amp;rft.date=1998-10-24&amp;rft.aulast=Kent&amp;rft.aufirst=Dean&amp;rft_id=https%3A%2F%2Fwww.tomshardware.com%2Freviews%2Fram-guide%2C89-7.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-wramdef-57"><span class="mw-cite-backlink"><b><a href="#cite_ref-wramdef_57-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20100102101703/http://pcguide.com/ref/video/techWRAM-c.html">"Window RAM (WRAM)"</a>. Archived from <a rel="nofollow" class="external text" href="http://www.pcguide.com/ref/video/techWRAM-c.html">the original</a> on 2010-01-02.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Window+RAM+%28WRAM%29&amp;rft_id=http%3A%2F%2Fwww.pcguide.com%2Fref%2Fvideo%2FtechWRAM-c.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-58"><span class="mw-cite-backlink"><b><a href="#cite_ref-58">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFMannion2008" class="citation news cs1">Mannion, Patrick (2008-07-12). <a rel="nofollow" class="external text" href="https://archive.today/20130122004240/http://www.eetimes.com/showArticle.jhtml?articleID=209000014#selection-1371.0-1383.10">"Under the Hood — Update: Apple iPhone 3G exposed"</a>. <i>EETimes</i>. Archived from <a rel="nofollow" class="external text" href="http://www.eetimes.com/showArticle.jhtml?articleID=209000014#selection-1371.0-1383.10">the original</a> on 2013-01-22.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=EETimes&amp;rft.atitle=Under+the+Hood+%E2%80%94+Update%3A+Apple+iPhone+3G+exposed&amp;rft.date=2008-07-12&amp;rft.aulast=Mannion&amp;rft.aufirst=Patrick&amp;rft_id=http%3A%2F%2Fwww.eetimes.com%2FshowArticle.jhtml%3FarticleID%3D209000014%23selection-1371.0-1383.10&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-59"><span class="mw-cite-backlink"><b><a href="#cite_ref-59">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.cypress.com/products/hyperram-octal-xspi-ram-memory">"psRAM(HyperRAM)"</a>. Cypress semiconductor.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=psRAM%28HyperRAM%29&amp;rft.pub=Cypress+semiconductor&amp;rft_id=https%3A%2F%2Fwww.cypress.com%2Fproducts%2Fhyperram-octal-xspi-ram-memory&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> <li id="cite_note-60"><span class="mw-cite-backlink"><b><a href="#cite_ref-60">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.cypress.com/products/hyperbus-memory">"Hyperbus"</a>. Cypress semiconductor.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=Hyperbus&amp;rft.pub=Cypress+semiconductor&amp;rft_id=https%3A%2F%2Fwww.cypress.com%2Fproducts%2Fhyperbus-memory&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></span> </li> </ol></div> <ul><li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFKeethBakerJohnsonLin2007" class="citation book cs1">Keeth, Brent; Baker, R. Jacob; Johnson, Brian; Lin, Feng (2007). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=TgW3LTubREQC"><i>DRAM Circuit Design: Fundamental and High-Speed Topics</i></a>. Wiley. <a href="/enwiki/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&#160;<a href="/enwiki/wiki/Special:BookSources/978-0470184752" title="Special:BookSources/978-0470184752"><bdi>978-0470184752</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=DRAM+Circuit+Design%3A+Fundamental+and+High-Speed+Topics&amp;rft.pub=Wiley&amp;rft.date=2007&amp;rft.isbn=978-0470184752&amp;rft.aulast=Keeth&amp;rft.aufirst=Brent&amp;rft.au=Baker%2C+R.+Jacob&amp;rft.au=Johnson%2C+Brian&amp;rft.au=Lin%2C+Feng&amp;rft_id=https%3A%2F%2Fbooks.google.com%2Fbooks%3Fid%3DTgW3LTubREQC&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></li></ul> <h2><span class="mw-headline" id="Further_reading">Further reading</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=48"title="Edit section: Further reading" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <ul><li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFJacobWangNg2010" class="citation book cs1">Jacob, Bruce; Wang, David; Ng, Spencer (2010) [2008]. <a rel="nofollow" class="external text" href="https://books.google.com/books?id=SrP3aWed-esC"><i>Memory Systems: Cache, DRAM, Disk</i></a>. Morgan Kaufmann. <a href="/enwiki/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&#160;<a href="/enwiki/wiki/Special:BookSources/978-0-08-055384-9" title="Special:BookSources/978-0-08-055384-9"><bdi>978-0-08-055384-9</bdi></a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=book&amp;rft.btitle=Memory+Systems%3A+Cache%2C+DRAM%2C+Disk&amp;rft.pub=Morgan+Kaufmann&amp;rft.date=2010&amp;rft.isbn=978-0-08-055384-9&amp;rft.aulast=Jacob&amp;rft.aufirst=Bruce&amp;rft.au=Wang%2C+David&amp;rft.au=Ng%2C+Spencer&amp;rft_id=https%3A%2F%2Fbooks.google.com%2Fbooks%3Fid%3DSrP3aWed-esC&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></li></ul> <h2><span class="mw-headline" id="External_links">External links</span><span class="mw-editsection"> <a role="button" href="/enwiki/w/index.php?title=Dynamic_random-access_memory&amp;action=edit&amp;section=49"title="Edit section: External links" class="cdx-button cdx-button--size-large cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--icon-only cdx-button--weight-quiet "> <span class="minerva-icon minerva-icon--edit"></span> <span>edit</span> </a> </span> </h2> <ul><li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFCuller2005" class="citation book cs1">Culler, David (2005). "Memory Capacity (Single Chip DRAM)". <a rel="nofollow" class="external text" href="http://www.eecs.berkeley.edu/~culler/courses/cs252-s05/lectures/cs252s05-lec01-intro.ppt#359,15,Memory%20Capacity%20%20(Single%20Chip%20DRAM"><i>EECS 252 Graduate Computer Architecture: Lecture 1</i></a>. Electrical Engineering and Computer Sciences,University of California, Berkeley. p.&#160;15.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=bookitem&amp;rft.atitle=Memory+Capacity+%28Single+Chip+DRAM%29&amp;rft.btitle=EECS+252+Graduate+Computer+Architecture%3A+Lecture+1&amp;rft.pages=15&amp;rft.pub=Electrical+Engineering+and+Computer+Sciences%2CUniversity+of+California%2C+Berkeley&amp;rft.date=2005&amp;rft.aulast=Culler&amp;rft.aufirst=David&amp;rft_id=http%3A%2F%2Fwww.eecs.berkeley.edu%2F~culler%2Fcourses%2Fcs252-s05%2Flectures%2Fcs252s05-lec01-intro.ppt%23359%2C15%2CMemory%2520Capacity%2520%2520%28Single%2520Chip%2520DRAM&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> Logarithmic graph 1980–2003 showing size and cycle time.</li> <li><a rel="nofollow" class="external text" href="http://www-1.ibm.com/servers/eserver/pseries/campaigns/chipkill.pdf">Benefits of Chipkill-Correct ECC for PC Server Main Memory</a> — A 1997 discussion of SDRAM reliability—some interesting information on "soft errors" from <a href="/enwiki/wiki/Cosmic_ray" title="Cosmic ray">cosmic rays</a>, especially with respect to <a href="/enwiki/wiki/Error-correcting_code" class="mw-redirect" title="Error-correcting code">error-correcting code</a> schemes</li> <li><a rel="nofollow" class="external text" href="http://www.tezzaron.com/about/papers/soft_errors_1_1_secure.pdf">Tezzaron Semiconductor Soft Error White Paper</a> 1994 literature review of memory error rate measurements.</li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFJohnston2000" class="citation web cs1">Johnston, A. (October 2000). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20041103124422/http://www.nepp.nasa.gov/docuploads/40D7D6C9-D5AA-40FC-829DC2F6A71B02E9/Scal-00.pdf">"Scaling and Technology Issues for Soft Error Rates"</a> <span class="cs1-format">(PDF)</span>. <i>4th Annual Research Conference on Reliability Stanford University</i>. Archived from <a rel="nofollow" class="external text" href="http://www.nepp.nasa.gov/docuploads/40D7D6C9-D5AA-40FC-829DC2F6A71B02E9/Scal-00.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 2004-11-03.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=unknown&amp;rft.jtitle=4th+Annual+Research+Conference+on+Reliability+Stanford+University&amp;rft.atitle=Scaling+and+Technology+Issues+for+Soft+Error+Rates&amp;rft.date=2000-10&amp;rft.aulast=Johnston&amp;rft.aufirst=A.&amp;rft_id=http%3A%2F%2Fwww.nepp.nasa.gov%2Fdocuploads%2F40D7D6C9-D5AA-40FC-829DC2F6A71B02E9%2FScal-00.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFMandelmanDennardBronnerDebrosse2002" class="citation journal cs1">Mandelman, J. A.; Dennard, R. H.; Bronner, G. B.; Debrosse, J. K.; Divakaruni, R.; Li, Y.; Radens, C. J. (2002). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20050322211513/http://www.research.ibm.com/journal/rd/462/mandelman.html">"Challenges and future directions for the scaling of dynamic random-access memory (DRAM)"</a>. <i>IBM Journal of Research and Development</i>. <b>46</b> (2.3): 187–212. <a href="/enwiki/wiki/Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1147%2Frd.462.0187">10.1147/rd.462.0187</a>. Archived from <a rel="nofollow" class="external text" href="http://www.research.ibm.com/journal/rd/462/mandelman.html">the original</a> on 2005-03-22.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&amp;rft.genre=article&amp;rft.jtitle=IBM+Journal+of+Research+and+Development&amp;rft.atitle=Challenges+and+future+directions+for+the+scaling+of+dynamic+random-access+memory+%28DRAM%29&amp;rft.volume=46&amp;rft.issue=2.3&amp;rft.pages=187-212&amp;rft.date=2002&amp;rft_id=info%3Adoi%2F10.1147%2Frd.462.0187&amp;rft.aulast=Mandelman&amp;rft.aufirst=J.+A.&amp;rft.au=Dennard%2C+R.+H.&amp;rft.au=Bronner%2C+G.+B.&amp;rft.au=Debrosse%2C+J.+K.&amp;rft.au=Divakaruni%2C+R.&amp;rft.au=Li%2C+Y.&amp;rft.au=Radens%2C+C.+J.&amp;rft_id=http%3A%2F%2Fwww.research.ibm.com%2Fjournal%2Frd%2F462%2Fmandelman.html&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></li> <li><a rel="nofollow" class="external text" href="https://arstechnica.com/paedia/r/ram_guide/ram_guide.part1-2.html">Ars Technica: RAM Guide</a></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFWang2005" class="citation thesis cs1">Wang, David Tawei (2005). <a rel="nofollow" class="external text" href="http://www.ece.umd.edu/~blj/papers/thesis-PhD-wang--DRAM.pdf"><i>Modern DRAM Memory Systems: Performance Analysis and a High Performance, Power-Constrained DRAM-Scheduling Algorithm</i></a> <span class="cs1-format">(PDF)</span> (PhD). University of Maryland, College Park. <a href="/enwiki/wiki/Hdl_(identifier)" class="mw-redirect" title="Hdl (identifier)">hdl</a>:<a rel="nofollow" class="external text" href="https://hdl.handle.net/1903%2F2432">1903/2432</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2007-03-10</span></span>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adissertation&amp;rft.title=Modern+DRAM+Memory+Systems%3A+Performance+Analysis+and+a+High+Performance%2C+Power-Constrained+DRAM-Scheduling+Algorithm&amp;rft.inst=University+of+Maryland%2C+College+Park&amp;rft.date=2005&amp;rft_id=info%3Ahdl%2F1903%2F2432&amp;rft.aulast=Wang&amp;rft.aufirst=David+Tawei&amp;rft_id=http%3A%2F%2Fwww.ece.umd.edu%2F~blj%2Fpapers%2Fthesis-PhD-wang--DRAM.pdf&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span> A detailed description of current DRAM technology.</li> <li><a rel="nofollow" class="external text" href="http://www.cs.berkeley.edu/~pattrsn/294">Multi-port Cache DRAM — <b>MP-RAM</b></a></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1133582631"><cite id="CITEREFDrepper2007" class="citation web cs1">Drepper, Ulrich (2007). <a rel="nofollow" class="external text" href="https://lwn.net/Articles/250967/">"What every programmer should know about memory"</a>.</cite><span title="ctx_ver=Z39.88-2004&amp;rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&amp;rft.genre=unknown&amp;rft.btitle=What+every+programmer+should+know+about+memory&amp;rft.date=2007&amp;rft.aulast=Drepper&amp;rft.aufirst=Ulrich&amp;rft_id=https%3A%2F%2Flwn.net%2FArticles%2F250967%2F&amp;rfr_id=info%3Asid%2Fen.wikipedia.org%3ADynamic+random-access+memory" class="Z3988"></span></li></ul> <div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style><style data-mw-deduplicate="TemplateStyles:r1061467846">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}</style></div><div role="navigation" class="navbox" aria-labelledby="Dynamic_random-access_memory_(DRAM)" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1063604349">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}</style><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/enwiki/wiki/Template:DRAM" title="Template:DRAM"><abbr title="View this template" style=";;background:none transparent;border:none;box-shadow:none;padding:0;">v</abbr></a></li><li class="nv-talk"><a href="/enwiki/wiki/Template_talk:DRAM" title="Template talk:DRAM"><abbr title="Discuss this template" style=";;background:none transparent;border:none;box-shadow:none;padding:0;">t</abbr></a></li><li class="nv-edit"><a href="/enwiki/wiki/Special:EditPage/Template:DRAM" title="Special:EditPage/Template:DRAM"><abbr title="Edit this template" style=";;background:none transparent;border:none;box-shadow:none;padding:0;">e</abbr></a></li></ul></div><div id="Dynamic_random-access_memory_(DRAM)" style="font-size:114%;margin:0 4em"><a class="mw-selflink selflink">Dynamic random-access memory</a> (DRAM)</div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Asynchronous</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/enwiki/wiki/FPM_DRAM" class="mw-redirect" title="FPM DRAM">FPM DRAM</a></li> <li><a href="/enwiki/wiki/EDO_DRAM" class="mw-redirect" title="EDO DRAM">EDO DRAM</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/enwiki/wiki/Synchronous_dynamic_random-access_memory" title="Synchronous dynamic random-access memory">Synchronous</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/enwiki/wiki/Synchronous_dynamic_random-access_memory" title="Synchronous dynamic random-access memory">SDRAM</a></li> <li><a href="/enwiki/wiki/DDR_SDRAM" title="DDR SDRAM">DDR SDRAM</a> <ul><li><a href="/enwiki/wiki/DDR2_SDRAM" title="DDR2 SDRAM">DDR2</a></li> <li><a href="/enwiki/wiki/DDR3_SDRAM" title="DDR3 SDRAM">DDR3</a></li> <li><a href="/enwiki/wiki/DDR4_SDRAM" title="DDR4 SDRAM">DDR4</a></li> <li><a href="/enwiki/wiki/DDR5_SDRAM" title="DDR5 SDRAM">DDR5</a></li></ul></li> <li><a href="/enwiki/wiki/LPDDR" title="LPDDR">LPDDR</a> (Mobile DDR)</li> <li><a href="/enwiki/wiki/Fast_Cycle_DRAM" title="Fast Cycle DRAM">Fast Cycle DRAM</a> (FCRAM)</li> <li><a href="/enwiki/wiki/EDRAM" title="EDRAM">eDRAM</a></li> <li><a href="/enwiki/wiki/RLDRAM" title="RLDRAM">RLDRAM</a></li> <li><a href="/enwiki/wiki/High_Bandwidth_Memory" title="High Bandwidth Memory">HBM</a> <ul><li><a href="/enwiki/wiki/HBM2" class="mw-redirect" title="HBM2">HBM2</a></li> <li><a href="/enwiki/wiki/HBM2E" class="mw-redirect" title="HBM2E">HBM2E</a></li> <li><a href="/enwiki/wiki/HBM3" class="mw-redirect" title="HBM3">HBM3</a></li> <li><a href="/enwiki/wiki/HBM-PIM" class="mw-redirect" title="HBM-PIM">HBM-PIM</a></li> <li><a href="/enwiki/wiki/HBM3E" class="mw-redirect" title="HBM3E">HBM3E</a></li></ul></li> <li><a href="/enwiki/wiki/Hybrid_Memory_Cube" title="Hybrid Memory Cube">Hybrid Memory Cube</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Graphics</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/enwiki/wiki/Video_RAM_(dual-ported_DRAM)" class="mw-redirect" title="Video RAM (dual-ported DRAM)">VRAM</a></li> <li><a href="/enwiki/wiki/WRAM_(memory)" class="mw-redirect" title="WRAM (memory)">WRAM</a></li> <li><a href="/enwiki/wiki/MDRAM" class="mw-redirect" title="MDRAM">MDRAM</a></li> <li><a href="/enwiki/wiki/SGRAM" class="mw-redirect" title="SGRAM">SGRAM</a> <ul><li><a href="/enwiki/wiki/GDDR_SDRAM" title="GDDR SDRAM">GDDR</a></li> <li><a href="/enwiki/wiki/GDDR2" class="mw-redirect" title="GDDR2">GDDR2</a></li> <li><a href="/enwiki/wiki/GDDR3" class="mw-redirect" title="GDDR3">GDDR3</a></li> <li><a href="/enwiki/wiki/GDDR4" class="mw-redirect" title="GDDR4">GDDR4</a></li> <li><a href="/enwiki/wiki/GDDR5" class="mw-redirect" title="GDDR5">GDDR5</a></li> <li><a href="/enwiki/wiki/GDDR6" class="mw-redirect" title="GDDR6">GDDR6</a></li> <li><a href="/enwiki/wiki/GDDR7" class="mw-redirect" title="GDDR7">GDDR7</a></li></ul></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/enwiki/wiki/Rambus" title="Rambus">Rambus</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/enwiki/wiki/RDRAM" title="RDRAM">RDRAM</a></li> <li><a href="/enwiki/wiki/XDR_DRAM" title="XDR DRAM">XDR DRAM</a></li> <li><a href="/enwiki/wiki/XDR2_DRAM" title="XDR2 DRAM">XDR2 DRAM</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/enwiki/wiki/Memory_module" title="Memory module">Memory modules</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/enwiki/wiki/SIMM" title="SIMM">SIMM</a></li> <li><a href="/enwiki/wiki/DIMM" title="DIMM">DIMM</a></li> <li><a href="/enwiki/wiki/UniDIMM" title="UniDIMM">UniDIMM</a></li> <li><a href="/enwiki/wiki/Compression_Attached_Memory_Module" title="Compression Attached Memory Module">CAMM</a></li></ul> </div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Lists</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/enwiki/wiki/Random-access_memory#DRAM" title="Random-access memory">DRAM timeline</a></li> <li><a href="/enwiki/wiki/Synchronous_dynamic_random-access_memory#Timeline" title="Synchronous dynamic random-access memory">SDRAM timeline</a></li> <li><a href="/enwiki/wiki/List_of_interface_bit_rates#Dynamic_random-access_memory" title="List of interface bit rates">Bandwidth</a></li> <li><a href="/enwiki/wiki/Transistor_count#Memory" title="Transistor count">Transistor count</a></li></ul> </div></td></tr></tbody></table></div> <div class="navbox-styles"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1061467846"></div><div role="navigation" class="navbox authority-control" aria-label="Navbox" style="padding:3px"><table class="nowraplinks hlist navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="/enwiki/wiki/Help:Authority_control" title="Help:Authority control">Authority control databases</a>: National <span class="mw-valign-text-top noprint" typeof="mw:File/Frameless"><a href="https://www.wikidata.org/wiki/Q189396#identifiers" title="Edit this at Wikidata"><img alt="Edit this at Wikidata" src="/upwiki/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/10px-OOjs_UI_icon_edit-ltr-progressive.svg.png" decoding="async" width="10" height="10" class="mw-file-element" srcset="/upwiki/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/15px-OOjs_UI_icon_edit-ltr-progressive.svg.png 1.5x, /upwiki/wikipedia/en/thumb/8/8a/OOjs_UI_icon_edit-ltr-progressive.svg/20px-OOjs_UI_icon_edit-ltr-progressive.svg.png 2x" data-file-width="20" data-file-height="20" /></a></span></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><span class="uid"><a rel="nofollow" class="external text" href="http://olduli.nli.org.il/F/?func=find-b&amp;local_base=NLX10&amp;find_code=UID&amp;request=987007409265805171">Israel</a></span></li> <li><span class="uid"><a rel="nofollow" class="external text" href="https://id.loc.gov/authorities/sh2015000304">United States</a></span></li></ul> </div></td></tr></tbody></table></div></div>'
Whether or not the change was made through a Tor exit node (tor_exit_node)
false
Unix timestamp of change (timestamp)
'1706759274'