Abstract:
A method includes querying a memory to determine what type of voltage the memory requires and applying the proper operating voltage to the memory based on the query. An apparatus that supports different memory types is also disclosed.

Description:
BACKGROUND 
   Systems such as servers use onboard Random Access Memory (RAM) which can be added by plugging in one or more memory modules to the server&#39;s circuit board. Depending on a particular server&#39;s memory requirements, different amount or types of RAM is added. 
   Different memory technologies usually require different operating voltages to operate properly. Typically, with each generation of memory technology, the operating voltage of the memory drops due to design improvements. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     For a detailed description of exemplary embodiments of the invention, reference will now be made to the accompanying drawings in which: 
       FIG. 1  shows a flowchart highlighting the actions for supporting different memory types in accordance with an embodiment of the invention; and 
       FIG. 2  shows a block diagram of an electronic device in accordance with an embodiment of the invention. 
   

   NOTATION AND NOMENCLATURE 
   Certain terms are used throughout the following description and claims to refer to particular system components. As one skilled in the art will appreciate, computer companies may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In the following discussion and in the claims, the terms “including” and “comprising” are used in an open-ended fashion, and thus should be interpreted to mean “including, but not limited to . . . .” Also, the term “couple” or “couples” is intended to mean either an indirect or direct electrical connection. Thus, if a first device couples to a second device, that connection may be through a direct electrical connection, or through an indirect electrical connection via other devices and connections. 
   DETAILED DESCRIPTION 
   The following discussion is directed to various embodiments of the invention. Although one or more of these embodiments may be preferred, the embodiments disclosed should not be interpreted, or otherwise used, as limiting the scope of the disclosure, including the claims. In addition, one skilled in the art will understand that the following description has broad application, and the discussion of any embodiment is meant only to be exemplary of that embodiment, and not intended to intimate that the scope of the disclosure, including the claims, is limited to that embodiment. 
   An electronic device such as a server in accordance with an embodiment of the invention will use memory modules such as Dual In-line Memory Modules (DIMMs) as the system memory. DIMMs can include Dynamic Random Access Memory (DRAM) devices. The DIMMs are plugged into sockets located in one of the server&#39;s circuit boards. The sockets are in turn coupled to a controller such as a memory controller directly or through a buffer. 
   In addition to RAM, DIMMs typically include a nonvolatile storage area such as an Electrically Erasable Programmable Read Only Memory (EEPROM) that has stored therein the feature set of the particular DIMM, including the memory technology of the memory devices such as DRAMS located on the DIMM, as well as bus speed information, etc. In some embodiments, this information is in accordance with a serial presence detect (SPD) standard. Such is described in U.S. Pat. No. 6,134,638 which is included herein by reference. In other embodiments instead of an EEPROM other types of memory can also be used. The EEPROM is separate from the DRAM memory devices and is powered from a voltage rail that is different from the voltage rail used to power the DRAM devices, since the EEPROM requires a different operating voltage. Prior to configuring the memory controller, the system queries the EEPROM on each DIMM to determine how the memory controller should be configured; these queries are transmitted using a serial system management interface in such embodiments. 
   As the operating speed of DRAMs has increased over the years, fewer and fewer DIMMs are supported on the DDR bus due to capacitance issues which causes a problem when additional memory capacity is required. A Fully Buffered DIMM (FB-DIMM) is currently being developed through EDEC Solid State Technology Association (once known as Joint Electron Device Engineering Council) to solve the memory capacity issue. FB-DIMM is an evolution of the DIMM in which an Advanced Memory Buffer (AMB) integrated circuit is placed on the DIMM between the card edge interface and the DRAM device. The AMB provides a serial interface to the server&#39;s memory controller through a connector, and a parallel interface to the DRAM devices located on the DIMM. The parallel interface is not exposed to the memory controller. 
   Referring to  FIG. 1 , there is shown a flowchart of actions taken in order to support different memory types in a server in accordance with one embodiment of the invention. In the illustrative example, the method shown in  FIG. 1  supports a first memory type such as DRAM Double Data Rate 2 (DDR2) and a second memory type such as DRAM Double Data Rate 3 (DDR3). The DDR2 memory has an operating voltage of 1.8 Volt, while the DDR3 memory has an operating voltage of 1.5 volt and has a faster data transfer rate than the DDR2 memory. 
   Since the FB-DIMM interface to the system memory controller is the same for FB-DIMMs with DDR2 or DDR3 DRAM devices, it is desirable for the system to support either type of FB-DIMM even though the two types of memory devices require different operating voltages. In  102 , system power is applied to the electronic system which in this illustrative example comprises a server. In  104 , the DDR2/3 memory devices located on the FB-DIMMS coupled to the system are not powered up, while the EEPROM on the FB-DIMMs are powered up. After “powergood” status is achieved, the system processor(s) (see item  210  in  FIG. 2 ) are removed from their reset condition in  106 . Powergood status is achieved when the server determines that the system voltage level has stabilized to a predetermined level after system power-up. 
   In  108 , the system&#39;s Basic Input/Output System (BIOS) is initialized. During the BIOS initialization in  110 , the EEPROMs on the FB-DIMMS are queried via a serial system management interface. Although a serial interface is used in this illustrative example, other interfaces can be used to query the DIMMs. The query determines if the FB-DIMMs contain DDR2 or DDR3 memory devices, although in other embodiments, the query could determine between other memory device types. 
   If all the FB-DIMMs in the system are determined to contain DDR2 memory devices, the routine moves to  112  where a programmable voltage regulator in the server is set to the voltage level required for the DDR2 memory devices. The voltage regulator is set to the required voltage level by setting a voltage regulator input called Voltage ID (VID). If in  110 , it is determined that system contains DDR3 memory devices, in  114 , the programmable voltage regulator is set to the voltage level required for the DDR3 memory devices. 
   If in  110  it is determined that there is a mixture of DDR2 and DDR3 memory devices (e.g., one DIMM that is plugged into the server has DDR2 devices while another DIMM has DDR3 devices), in  120 , the memory initialization is terminated and system operation is halted. As an optional feature, an audible and/or visual alarm (e.g., error light and/or audible signal) can be provided to the system operator. In  116 , the voltage regulator output is enabled by sending an enable signal to the voltage regulator which in turn provides the appropriate voltage to the DIMMs. In  118 , the rest of the BIOS initialization is completed and the system is booted. 
   In  FIG. 2 , there is shown a partial block diagram of an electronic device such as a server  200  that can provide the multiple DIMM type support discussed above. Server  200  includes drives  202 , a monitor  204 , a mouse  230 , a light  238  and keyboard  206  coupled to the server via an input/output sub-section  208 . The input/output sub-section  208  can include the necessary hardware/software to perform the necessary I/O control functions. 
   A processor  210  is coupled to a memory controller  212  via a processor front side bus. The memory controller  212  is coupled to one or more FB DIMMs  218  via a memory interface. In other embodiments, where for example the memory controller function is integrated inside of the processor, the FB DIMMs  218  are coupled directly to the processor. The FB DIMM  218  includes one or more memory devices  224 , a memory buffer  226  as previously described, and an EEPROM  228 . The I/O sub-section  208  communicates with the EEPROM  228  via an IIC bus or other type of bus. Given that the EEPROM operates using a different voltage level (e.g., 2.5 volt) than the memory devices  224 , it has its own power supply  214 . 
   The DIMM(s)  218  are powered by a DIMM power supply  216  that includes a programmable output voltage  232  that is used to power the DIMM(s)  218 . The programmable output voltage can be provided by a programmable voltage regulator. The DIMM power supply  216  includes an enable input  234  that enables the output  232  of the power supply to provide an output voltage. A VID input  236  receives a signal that instructs the DIMM power supply  216  what output voltage level is required. Both the enable and VID signals are provided via lines  222  and  220  respectively from the I/O sub-section  208 . 
   The method of supplying a programmable voltage regulator with a VID that corresponds to the power supply voltage requirements of a particular memory technology (e.g., DDR2, etc.) provides many advantages to an electronic device such as a server  200 . The method disclosed also can help prevent damaging DIMMs that are incorrectly installed, since before powering the DIMM(s) the system checks to see the type of memory device the DIMM(s) have installed. 
   The above discussion is meant to be illustrative of the principles and various embodiments of the present invention. Numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. For example, although DDR2 and DDR3 memory devices have been discussed, the invention can select from amongst 2 or more different memory devices that require different operating voltages. Also, although DIMM memory packages have been described, other memory packages can be supported, including memory types that are directly installed or plugged-in to a circuit board. In still another embodiment, two or more power regulators can be provided and appropriate switches included to allow various memory slots in a system to be electrically connected to different power regulators in response to the initial EEPROM query in  110  (see  FIG. 1 ) in order to accommodate a mixed memory type system. It is intended that the following claims be interpreted to embrace all such variations and modifications.