Dual Inline Memory Modules (DIMMs) in various forms are used to provide memory expansion in a host computer. A DIMM typically includes a printed circuit board (PCB) with memory devices, such as DRAM or SDRAM, and supporting devices, such as ASICs, mounted to one or both sides. The DIMM is typically mounted in the host computer system by inserting a contact-bearing edge of the DIMM into a card edge connector on the host computer motherboard. This connection allows the host chipset, e.g., memory controller, to interface the DIMM.
Unregistered/unbuffered DIMMs do not include register components positioned between the memory devices and the host memory controller. Instead, the address and control signals from the memory controller are sent directly to every memory device on the DIMM. Unregistered/unbuffered DIMMs can be implemented in systems, such as personal computers, where scalability is of a lesser concern.
Registered DIMMs, sometimes referred to as buffered DIMMs, include additional register components, e.g., ASICS, positioned between the memory devices and the host memory controller. The register components buffer the address and control signals from the host memory controller, which helps reduce the loading and timing constraints of the host memory controller. This can help improve the scalability and reliability of the host memory.
Fully-Buffered Dual Inline Memory Module (FB-DIMM) technology is a relatively new memory architecture designed to allow for memory capacity growth commensurate with processor and I/O improvements. FB-DIMM technology replaces the traditional direct signaling interface between the host memory controller and the DRAM on the DIMM with two independent signaling interfaces—a parallel interface with the DRAM and a point-to-point serialized interface with the host memory controller. The FB-DIMM technology utilizes an advanced memory buffer (AMB) that provides a direct signaling interface between the serialized interface of the memory controller and the parallel interface of the DRAM.
The AMB interfaces with the memory controller and with DRAM ICs on the FB-DIMM to provide a parallel data stream to the DRAM ICs and a serialized data stream to the memory controller and other FB-DIMMs on the memory channel. In doing so, the AMBs utilize serialization/de-serialization (SerDes) technology to de-serialize the serialized data stream of the memory controller and serialize the parallel data stream of the DRAM ICs. The AMBs can support industry standards for the parallel interface with the DRAM ICs, such as double data rate (DDR), DDR2, and DDR3.
This disclosure relates generally to a fully-buffered dual inline memory architecture. More particularly, this disclosure relates to a memory architecture in which a fully-buffered dual inline memory configuration is achieved using unregistered/unbuffered Dual Inline Memory Modules (DIMMs).
The memory controller 16 can have multiple channels 30 (indicated at CHANNEL_1 to CHANNEL_M, where M is a positive integer), each of which can support multiple DIMMs 20 (indicated at DIMM_1 to DIMM_N, where N is a positive integer), to provide the host 12 with a configurable memory capacity. It will be appreciated that the scalability of the memory 18 is virtually unlimited. For example, in one particular configuration of the memory 18, the memory controller 16 can have six channels 30, each of which can handle eight DIMMs 20. Thus, in this particular example, if four gigabyte (GB) DIMMs are used, the memory 18 could be expandable or scalable up to 192 GB. Other configurations and different memory capacities can also be utilized.
In the system 10 of
The AMBs 40 are mounted to the motherboard 14, for example, by soldering or a socket mount. Socket mounted AMBs 40 can allow for adding or removing AMBs as corresponding DIMMs 20 are added or removed. The serialized interface 50 between the memory controller 16 and the AMBs 40, and the parallel interface 52,54 between the AMBs and the DIMMs 20, are provided via printed circuit traces (not shown) on the motherboard 14. The AMBs 40 implement a serialization/de-serialization (SerDes) interface between the data streams of the memory controller 16 and the DRAM ICs 34. The SerDes interface of the AMB 40 de-serializes the serialized data stream of the memory controller 16 for delivery to the DRAM ICs 40 and serializes the parallel data stream of the DRAM ICs for delivery to the memory controller.
The bus over which the AMBs 40 communicate with the memory controller 16 is a low pin count, high-speed, narrow serialized bus. This eliminates the need for the memory controller 16 to interface directly with a high pin count comparatively wide parallel bus, such as those encountered when using memory modules other than FB-DIMMs, such as registered DDR DIMMS. For example, the channel pin count for the serialized bus interface of the AMB 40 may be about 69 pins per channel, whereas the channel pin count for the parallel bus interface of registered DIMMs may be about 240 pins per channel. It can thus be appreciated that the implementing the serialized bus interface of the AMBs 40 can help free-up space on the motherboard 14 and reduces the complexity of the traces on the motherboard.
It will be appreciated that the system 10 of
The memory controller 116 can have multiple channels 130 (indicated at CHANNEL_1 to CHANNEL_M, where M is a positive integer), each of which can support multiple DIMMs 120 (indicated at DIMM_1 to DIMM_N+1, where N is a positive integer), to provide the host 112 with a configurable memory capacity. It will be appreciated that the scalability of the memory 118 is virtually unlimited. For example, in one particular configuration of the memory 118, the memory controller 116 can have six channels 130, each of which can handle eight DIMMs 120. Thus, in this particular example, if four GB DIMMs are used, the memory 118 could be expandable or scalable up to 192 GB. Other configurations and different memory capacities can also be utilized.
In the system 100 of
The AMBs 140 are mounted to the motherboard 114, for example, by soldering or a socket mount. The serialized interface 150 and parallel interface 152, 154 are provided via printed circuit traces (not shown) on the motherboard 114. The AMBs 140 provide a SerDes interface between the data streams of the memory controller 116 and the DRAM ICs 134, de-serializing the data stream of the memory controller and serializing the data stream of the DRAM ICs. The SerDes interface utilizes a low pin count, high-speed, narrow serialized bus interface with the memory controller 116. This eliminates the need for the memory controller 116 to interface directly with a high pin count comparatively wide parallel bus, such as those encountered when using memory modules other than FB-DIMMs, such as registered DDR DIMMS. This can help free-up space on the motherboard 14 and reduces the complexity of the traces on the motherboard.
It will be appreciated that the system 100 of
The riser card 260 includes a printed circuit board configured to provide the requisite power and interface signal paths between the AMBs 240 and the DIMMs 220 on the riser card, and between the AMBs and the memory controller 216 on the motherboard 214. The riser card 260 includes card edge connectors 222 into which contact bearing edges 224 of the DIMMs 220 are inserted. The AMBs 240 are mounted to the riser card 260, for example, by soldering or a socket mount.
As shown in the system 200 illustrated in
The memory controller 216 can have multiple channels 230 (indicated at CHANNEL_1 to CHANNEL_M, where M is a positive integer). Each channel 230 can support multiple DIMMs 220 (indicated at DIMM_1 to DIMM_P, where P is a positive integer) on one or more riser cards 260 (indicated at RISER_1 to RISER_N, where N is a positive integer). This provides the host 212 with memory 218 having virtually unlimited scalability. For example, any particular channel 230 may support multiple DIMMs 220 on a single riser card 260 or multiple DIMMs on multiple riser cards. As another example, a single riser card 260 may support more than one memory controller channel 230.
The AMBs 240 provide an interface between the memory controller 216 on the motherboard 214 and the DIMMs 220 on the riser card 260. The AMBs 240 provide a point-to-point serialized interface 250 with the memory controller 216 and with other AMBs in the channel 230. The AMBs 240 also provide parallel interfaces 252 (e.g., DDR/DDR2/DDR3 interfaces) with the DRAM ICs 234 on the DIMMs 220. The parallel interface includes a data portion, indicated generally at 252, and address/control/chip select portion, indicated generally at 254.
The serialized interface 250 and parallel interface 252, 254 are provided via the printed circuit traces (not shown) on the riser card 260 and motherboard 214. The AMBs 240 provide a SerDes interface between the data streams of the memory controller 216 and the DRAM ICs 234, de-serializing the data stream of the memory controller and serializing the data stream of the DRAM ICs. The SerDes interface utilizes a low pin count, high-speed, narrow serialized bus interface with the memory controller 216, which eliminates the high pin count, wide parallel bus used by non-FB-DIMM memory configurations.
In the system 200 of
It will be appreciated that the system 200 of
In view of the foregoing structural and functional features described above, certain methods will be better appreciated with reference to
What have been described above are examples of the present invention. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the present invention, but one of ordinary skill in the art will recognize that many further combinations and permutations of the present invention are possible. Accordingly, the present invention is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5774647 | Baynham et al. | Jun 1998 | A |
6092146 | Dell et al. | Jul 2000 | A |
6381663 | Morrison et al. | Apr 2002 | B1 |
6470408 | Morrison et al. | Oct 2002 | B1 |
6618266 | Blakely et al. | Sep 2003 | B2 |
6782451 | Tseng | Aug 2004 | B2 |
6960719 | Miksch et al. | Nov 2005 | B2 |
7023719 | Hung et al. | Apr 2006 | B1 |
7079446 | Murtagh et al. | Jul 2006 | B2 |
7254663 | Bartley et al. | Aug 2007 | B2 |
20020172023 | Blakely et al. | Nov 2002 | A1 |
20050082074 | Miksch et al. | Apr 2005 | A1 |
20050259504 | Murtugh et al. | Nov 2005 | A1 |
20060049500 | Goodwin | Mar 2006 | A1 |
20060091529 | Wehrly, Jr. et al. | May 2006 | A1 |
20070028144 | Graham et al. | Feb 2007 | A1 |
20070162670 | Yang et al. | Jul 2007 | A1 |
20080002447 | Gulachenski et al. | Jan 2008 | A1 |
Number | Date | Country | |
---|---|---|---|
20080052462 A1 | Feb 2008 | US |