Memory Timings
   HOME

TheInfoList



OR:

Memory timings or RAM timings describe the timing information of a memory module. Due to the inherent qualities of
VLSI Very large-scale integration (VLSI) is the process of creating an integrated circuit (IC) by combining millions or billions of MOS transistors onto a single chip. VLSI began in the 1970s when MOS integrated circuit (Metal Oxide Semiconductor) c ...
and microelectronics, memory chips require time to fully execute commands. Executing commands too quickly will result in data corruption and results in system instability. With appropriate time between commands, memory modules/chips can be given the opportunity to fully switch transistors, charge capacitors and correctly signal back information to the memory controller. Because system performance depends on how fast memory can be used, this timing directly affects the performance of the system. The timing of modern
synchronous dynamic random-access memory Synchronous dynamic random-access memory (synchronous dynamic RAM or SDRAM) is any DRAM where the operation of its external pin interface is coordinated by an externally supplied clock signal. DRAM integrated circuits (ICs) produced from the ...
(SDRAM) is commonly indicated using four parameters: CL, TRCD, TRP, and TRAS in units of
clock cycle In electronics and especially synchronous digital circuits, a clock signal (historically also known as ''logic beat'') oscillates between a high and a low state and is used like a metronome to coordinate actions of digital circuits. A clock sig ...
s; they are commonly written as four numbers separated with hyphens, ''e.g.'' 7-8-8-24. The fourth (tRAS) is often omitted, or a fifth, the Command rate, sometimes added (normally 2T or 1T, also written 2N, 1N). These parameters (as part of a larger whole) specify the clock latency of certain specific commands issued to a
random access memory Random-access memory (RAM; ) is a form of computer memory that can be read and changed in any order, typically used to store working Data (computing), data and machine code. A Random access, random-access memory device allows data items to b ...
. Lower numbers imply a shorter wait between commands (as determined in
clock cycles In electronics and especially synchronous digital circuits, a clock signal (historically also known as ''logic beat'') oscillates between a high and a low state and is used like a metronome to coordinate actions of digital circuits. A clock signa ...
). What determines absolute latency (and thus system performance) is determined by both the timings and the memory clock frequency. When translating memory timings into actual latency, it is important to note that timings are in units of clock ''cycles'', which for
double data rate In computing, a computer bus operating with double data rate (DDR) transfers data on both the rising and falling edges of the clock signal. This is also known as double pumped, dual-pumped, and double transition. The term toggle mode is used i ...
memory is half the speed of the commonly quoted transfer rate. Without knowing the clock frequency it is impossible to state if one set of timings is "faster" than another. For example, DDR3-2000 memory has a 1000 MHz clock frequency, which yields a 1 ns clock cycle. With this 1 ns clock, a
CAS latency Column Address Strobe (CAS) latency, or CL, is the delay in clock cycles between the READ command and the moment data is available. In asynchronous DRAM, the interval is specified in nanoseconds (absolute time). In synchronous DRAM, the interval ...
of 7 gives an absolute CAS latency of 7 ns. Faster DDR3-2666 memory (with a 1333 MHz clock, or 0.75 ns per cycle) may have a larger CAS latency of 9, but at a clock frequency of 1333 MHz the amount of time to wait 9 clock cycles is only 6.75 ns. It is for this reason that DDR3-2666 CL9 has a smaller absolute CAS latency than DDR3-2000 CL7 memory. Both for DDR3 and DDR4, the four timings described earlier are not the only relevant timings and give a very short overview of the performance of memory. The full memory timings of a memory module are stored inside of a module's SPD chip. On
DDR3 Double Data Rate 3 Synchronous Dynamic Random-Access Memory (DDR3 SDRAM) is a type of synchronous dynamic random-access memory (SDRAM) with a high bandwidth ("double data rate") interface, and has been in use since 2007. It is the higher-speed ...
and
DDR4 Double Data Rate 4 Synchronous Dynamic Random-Access Memory (DDR4 SDRAM) is a type of synchronous dynamic random-access memory with a high bandwidth (" double data rate") interface. Released to the market in 2014, it is a variant of dynamic ra ...
DIMM A DIMM () (Dual In-line Memory Module), commonly called a RAM stick, comprises a series of dynamic random-access memory integrated circuits. These memory modules are mounted on a printed circuit board and designed for use in personal compute ...
modules, this chip is a
PROM A promenade dance, commonly called a prom, is a dance party for high school students. It may be offered in semi-formal black tie or informal suit for boys, and evening gowns for girls. This event is typically held near the end of the school yea ...
or
EEPROM EEPROM (also called E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, usually integrated in microcontrollers such as smart cards and remote keyless systems, or as a ...
flash memory chip and contains the
JEDEC The JEDEC Solid State Technology Association is an independent semiconductor engineering trade organization and standardization body headquartered in Arlington County, Virginia, United States. JEDEC has over 300 members, including some of the w ...
-standardized timing table data format. See the
SPD The Social Democratic Party of Germany (german: Sozialdemokratische Partei Deutschlands, ; SPD, ) is a centre-left social democratic political party in Germany. It is one of the major parties of contemporary Germany. Saskia Esken has been t ...
article for the table layout among different versions of DDR and examples of other memory timing information that is present on these chips. Modern
DIMM A DIMM () (Dual In-line Memory Module), commonly called a RAM stick, comprises a series of dynamic random-access memory integrated circuits. These memory modules are mounted on a printed circuit board and designed for use in personal compute ...
s include a
Serial Presence Detect In computing, serial presence detect (SPD) is a standardized way to automatically access information about a memory module. Earlier 72-pin SIMMs included five pins that provided five bits of ''parallel presence detect'' (PPD) data, but the 168-pi ...
(SPD) ROM chip that contains recommended memory timings for automatic configuration as well as XMP profiles of faster timing information (and higher voltages) to allow a quick and easy performance boost via overclocking. The BIOS on a PC may allow the user to manually make timing adjustments in an effort to increase performance (with possible risk of decreased stability) or, in some cases, to increase stability (by using suggested timings). Note:
Memory bandwidth Memory bandwidth is the rate at which data can be read from or stored into a semiconductor memory by a central processing unit, processor. Memory bandwidth is usually expressed in units of bytes per second, bytes/second, though this can vary for ...
measures the
throughput Network throughput (or just throughput, when in context) refers to the rate of message delivery over a communication channel, such as Ethernet or packet radio, in a communication network. The data that these messages contain may be delivered ov ...
of memory, and is generally limited by the transfer rate, not latency. By interleaving access to SDRAM's multiple internal banks, it is possible to transfer data continuously at the peak transfer rate. It is possible for increased bandwidth to come at a cost in latency. In particular, each successive generation of DDR memory has higher transfer rates but the absolute latency does not change significantly, and especially when first appearing on the market, the new generation generally has longer latency than the previous one. Increasing memory bandwidth, even while increasing memory latency, may improve the performance of a computer system with multiple processors and/or multiple execution threads. Higher bandwidth will also boost performance of integrated graphics processors that have no dedicated
video memory 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 ...
but use regular RAM as
VRAM Video random access memory (VRAM) is dedicated computer memory used to store the pixels and other graphics data as a framebuffer to be rendered on a computer monitor. This is often different technology than other computer memory, to facilitate b ...
. Modern
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was introd ...
processors are heavily optimized with techniques such as instruction pipelines,
out-of-order execution In computer engineering, out-of-order execution (or more formally dynamic execution) is a paradigm used in most high-performance central processing units to make use of instruction cycles that would otherwise be wasted. In this paradigm, a proce ...
, memory prefetching,
memory dependence prediction Memory dependence prediction is a technique, employed by high-performance out-of-order execution microprocessors that execute memory access operations (loads and stores) out of program order, to predict true dependencies between loads and stores at ...
, and
branch prediction In computer architecture, a branch predictor is a digital circuit that tries to guess which way a branch (e.g., an if–then–else structure) will go before this is known definitively. The purpose of the branch predictor is to improve the flow ...
to preemptively load memory from RAM (and other caches) to speed up execution even further. With this amount of complexity from performance optimization, it is difficult to state with certainty the effects memory timings may have on performance. Different workloads have different memory access patterns and are affected differently in performance by these memory timings.


Handling in BIOS

In Intel systems, memory timings and management are handled by the
Memory Reference Code The Memory Reference Code (or MRC) is a fundamental component in the design of some computers, and is "one of the most important aspects of the BIOS" for an Intel-based motherboard. It is the part of an Intel motherboard's firmware that determin ...
(MRC), a part of the
BIOS In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the ...
.{{cite web , last1=Pelner , first1=Jenny , last2=Pelner , first2=James , title=Minimal Intel Architecture Boot Loader (323246) , url=https://www.intel.com/content/dam/www/public/us/en/documents/white-papers/minimal-intel-architecture-boot-loader-paper.pdf , publisher=Intel , access-date=12 November 2022


See also

*
Serial Presence Detect In computing, serial presence detect (SPD) is a standardized way to automatically access information about a memory module. Earlier 72-pin SIMMs included five pins that provided five bits of ''parallel presence detect'' (PPD) data, but the 168-pi ...
*
JEDEC The JEDEC Solid State Technology Association is an independent semiconductor engineering trade organization and standardization body headquartered in Arlington County, Virginia, United States. JEDEC has over 300 members, including some of the w ...
*
Eye pattern In telecommunication, an eye pattern, also known as an eye diagram, is an oscilloscope display in which a digital signal from a receiver is repetitively sampled and applied to the vertical input, while the data rate is used to trigger the horiz ...
* Overshoot and
crosstalk In electronics, crosstalk is any phenomenon by which a signal transmitted on one circuit or channel of a transmission system creates an undesired effect in another circuit or channel. Crosstalk is usually caused by undesired capacitive, induc ...


References

Computer memory el:Μνήμη τυχαίας προσπέλασης#Χρόνος προσπέλασης