Registered memory

From Wikipedia, the free encyclopedia
  (Redirected from Buffered memory)
Jump to: navigation, search
Not to be confused with ECC memory, although memory modules often use both technologies.

Registered (also called buffered) memory modules have a register between the DRAM modules and the system's memory controller. They place less electrical load on the memory controller and allow single systems to remain stable with more memory modules than they would have otherwise. When compared with registered memory, conventional memory is usually referred to as unbuffered memory or unregistered memory. When manufactured as a dual in-line memory module (DIMM), a registered memory module is called an RDIMM, while unregistered memory is called UDIMM.

Registered memory is often more expensive because of the lower number of units sold and additional circuitry required, so it is usually found only in applications where the need for scalability and robustness outweighs the need for a low price – for example, registered memory is usually used in servers.

Although most registered memory modules also feature error-correcting code memory (ECC), it is also possible for memory to be Registered and not ECC, or ECC modules to not be registered. Non-registered ECC memory is supported and used in motherboards which do not support the very large amounts of memory used by servers.

Performance[edit]

Normally, there is a performance penalty for using registered memory. Each read or write is buffered for one cycle between the memory bus and the DRAM, so the registered RAM can be thought of as running one clock cycle behind the equivalent unregistered DRAM. With SDRAM, this only applies to the first cycle of a burst.

However, this performance penalty is not universal. There are other factors involved in memory access speed. For example, the Intel Westmere 5600 series of processors access memory using interleaving, wherein memory access is distributed across three channels. If two memory DIMMs are used per channel, this "...results in a reduction of maximum memory bandwidth for 2DPC (DIMMs per channel) configurations with UDIMM by some 5% in comparison to RDIMM."[1] (p. 14). This is because "...when you go to two DIMMs per memory channel, due to the high electrical loading on the address and control lines, the memory controller uses a “2T” or “2N” timing for UDIMMs. Consequently every command that normally takes a single clock cycle is stretched to two clock cycles to allow for settling time. Therefore, for two or more DIMMs per channel, RDIMMs will have lower latency and better bandwidth than UDIMMs."[2]

Compatibility[edit]

Usually the motherboard must match the memory type: registered memory will not work in a motherboard not designed for it, and vice-versa. Some PCs will accept registered memory, but registered and unregistered memory cannot be mixed.[3] There is much confusion between registered and ECC memory; it is widely thought that ECC memory will not work (without ECC functionality) in a motherboard without ECC support, although the compatibility issues arise when trying to use registered memory (which also supports ECC and is described as ECC RAM) in a desktop PC motherboard.

Buffered memory[edit]

Buffered memory is an older term for registered memory. Buffered refers to an electronic buffer placed between the memory and the memory controller. In general registered RAM won't fit in a slot for unregistered RAM, however it will with SDRAM.

However, some systems with large maximum memory capacities use Fully Buffered DIMM (FB-DIMM) modules. In normal registered/buffered memory only the control lines are buffered, whereas in fully buffered memory the data lines are buffered as well with all transfers performed in a serial fashion; the additional logic present on each FB-DIMM module transforms serial input into parallel signals required to drive memory chips.[4]

Load Reduced DIMM (LRDIMM) modules are similar to registered/buffered memory, in a way that LRDIMM modules buffer both control and data lines while keeping the parallel nature of all signals. As such, LRDIMM memory provides large overall maximum memory capacities, while addressing some of the performance and power consumption issues of FB-DIMM memory induced by the required conversion between serial and parallel signal forms.[4][5]

Both FB-DIMM and LRDIMM memory types are designed primarily to control the amount of electrical current flowing to and from the memory chips at any given time. They are not compatible with registered/buffered memory, and motherboards that require them usually will not accept any other kind of memory.

References[edit]

External links[edit]