This Utility Patent Application claims priority to German Patent Application No. DE 10 2005 051 792.7, filed on Oct. 28, 2005, which is incorporated herein by reference.
Conventional computer systems include read/write memories (e.g., random access memory (RAM) in the form of memory modules. The read/write memories each have a plurality of memory modules in corresponding receptacles of a system board. The memory modules are electrically coupled (e.g., via a plug-in connection) to a memory controller provided on the system board. A processor, such as a central processing unit (CPU), of the computer system, or further system components, are then connected to the memory modules via the memory controller.
If a plurality of memory modules are used, it is known for these modules to be connected to one another in a chain-type arrangement, such that a first memory module of the chain-type arrangement is directly coupled to the memory controller, while the remaining memory modules of the chain-type arrangement effect the transfer of data with the memory controller via the first memory module of the chain-type arrangement. Specifically, command data or write data may be transmitted, starting from the first memory module of the chain-type arrangement, from one of the memory modules to the next memory module of the chain-type arrangement, until the data are received in a final memory module of the chain-type arrangement. Conversely, read data are transmitted from a memory module of the chain-type arrangement to the preceding memory module of the chain-type arrangement, until the data are received in the first memory module of the chain-type arrangement. The first memory module of the chain-type arrangement receives the write or command data from the memory controller and transmits the read data to the memory controller.
In order to realize mutual communication between the memory modules, the memory modules each comprise an interface component which has transmit and receive structures for transferring the respective data signals. In the case of fully-buffered type of memory modules, a serial high-speed protocol may be used for the transfer of data.
The memory modules 100a′, 100b′, 100c′ are each connected to the system board of the computer system via a plug-in connection 10′, in order thereby to provide for an electrical connection to the memory controller 200′. In
Each of the memory modules comprises a plurality of memory chips or memory components 110′, as well as an interface chip or interface component 150′ which effects the transfer of data to the memory controller 200′ and to adjacent memory modules 100a′, 100b′, 100c′ of the chain-type arrangement.
Specifically, the interface component 150′ of the first memory module 100a′ of the chain-type arrangement receives the command data signal or write data signal CA, WD from the memory controller. Starting from the interface component 150′ of the first memory module 100a′, the write or command data signal CA, WD is transmitted to the interface component 150′ of the respectively next memory module 100b′, 100c′ of the chain-type arrangement, until the signal is received in the interface component 150′ of the final memory module 100c′ of the chain-type arrangement. Conversely, the read data signal RD is transmitted, starting from the interface component 150′ of the final memory module 100c′ of the chain-type arrangement, to the interface component 150′ of the respectively preceding memory module 100a′, 100b′ of the chain-type arrangement, until the signal is finally received in the interface component 150′ of the first memory module 100a′ of the chain-type arrangement. As already mentioned, the read data signal RD is transmitted from the interface component 150′ of the interface component of the first memory module 100a′ of the chain-type arrangement to the memory controller 200′.
In order to effect the transfer of data according to the principle described above, the interface components of the memory modules 100a′, 100b′, 100c′ each receive the clock signal CLK′ from the memory controller 200′, in order to transmit the data signals based on this clock signal CLK′ and to sample the received data signals based on the clock signal CLK′.
As illustrated by
For these and other reasons, there is a need for the present invention.
One embodiment provides a method of transferring data in a memory device including at least one memory module and a memory controller. The method includes coupling the memory module to the memory controller via a mechanically detachable data transfer connection. The method includes transferring data between the memory controller and an interface unit assigned to the memory module and disposed on the same side of the mechanically detachable data transfer connection as the memory controller. The method includes transferring data between the interface unit and the memory module via the mechanically detachable data transfer connection.
The accompanying drawings are included to provide a further understanding of the present invention and are incorporated in and constitute a part of this specification. The drawings illustrate the embodiments of the present invention and together with the description serve to explain the principles of the invention. Other embodiments of the present invention and many of the intended advantages of the present invention will be readily appreciated as they become better understood by reference to the following detailed description. The elements of the drawings are not necessarily to scale relative to each other. Like reference numerals designate corresponding similar parts.
In the following Detailed Description, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration specific embodiments in which the invention may be practiced. In this regard, directional terminology, such as “top,” “bottom,” “front,” “back,” “leading,” “trailing,” etc., is used with reference to the orientation of the Figure(s) being described. Because components of embodiments of the present invention can be positioned in a number of different orientations, the directional terminology is used for purposes of illustration and is in no way limiting. It is to be understood that other embodiments may be utilized and structural or logical changes may be made without departing from the scope of the present invention. The following detailed description, therefore, is not to be taken in a limiting sense, and the scope of the present invention is defined by the appended claims.
Embodiments relate to the transfer of data in a memory device, between a memory module and a memory controller, the memory module being electrically coupled to the memory controller via a mechanically detachable connection. Specifically, embodiments relate to a method of accomplishing the transfer of data in such a memory device, to a device for coupling at least one memory module to a memory controller via a mechanically detachable connection (e.g., a plug-in connection), and to a correspondingly designed memory module.
One embodiment of a memory device includes a memory controller and at least one memory module, which are coupled to each other via a mechanically detachable data transfer connection to assign to the memory module an interface unit which is disposed, not on the memory module, but on the same side of a mechanically detachable connection as the memory controller. The mechanically detachable connection may be a plug-in connection. Other embodiments include other suitable types of mechanically detachable connection (e.g., a clamped connection).
One embodiment of a method of transferring data in a memory device having a memory controller and at least one memory module that is electrically coupled to the memory controller via the mechanically detachable connection, comprises transferring data between the memory controller and an interface unit which is assigned to the memory module and is disposed on the same side of the mechanically detachable connection as the memory controller, and transferring data between the interface unit and the memory module via the mechanically detachable connection.
Consequently, in one embodiment, the transfer of data between the memory controller and the interface unit is no longer effected via the mechanically detachable connection, and can thus be optimized with respect to the signal transmission characteristics. In certain embodiments, the communication channel between the interface unit and the memory module, passing via the mechanically detachable connection, is however less critical with respect to its signal transmission characteristics. This becomes clear particularly when the memory device comprises a plurality of the memory modules, a respective interface unit being assigned in this case to each of the memory modules. In order to provide a communication channel to the individual memory modules, in this case data are also transferred between the individual interface units. The communication channel between the memory controller and the interface units, and between the individual interface units, thus carries not only the data for one of the memory modules, but the totality of the data transferred between the memory controller and the memory modules, such that there is transferred between the memory controller and the interface units, and between the individual interface units, a quantity of data which is a multiple of that transferred between one of the memory modules and the associated interface unit via the mechanically detachable connection. Consequently, through use of the above-mentioned approach according to embodiments, a substantial enhancement of performance can be achieved by optimization of the signal transfer characteristics of the communication channel between the memory controller and the interface units.
According to one embodiment, the interface units are coupled to one another in a series arrangement, and different configurations are possible for the transfer of data within the series arrangement.
For example, a command or write data signal from the memory controller can be received in a first interface unit of the series arrangement and then, starting from the first interface unit, be transmitted from one of the interface units to the respectively next interface unit of the series arrangement, until the command or write data signal has been received in a final interface unit of the series arrangement.
Alternatively, the command or write data signal can be transmitted in a star-type fashion from the first interface unit of the series arrangement to a plurality of further interface units. In this case there is the possibility, on the one hand, of transmitting the command or write data signal, starting from the first interface unit, to all other interface units, or, starting from the further interface units to which the command data signal or write data signal was transmitted starting from the first interface unit, of transmitting the command data signal or write data signal from an interface unit to the respectively next interface unit of an adjoining chain-type arrangement.
As compared with the use of a purely chain-type arrangement for transmitting the command or write data signal, a shorter latency time is achieved through transmitting the command or write data signal in a star-type fashion.
With regard to the transfer of a read data signal, there is first of all the possibility of transmitting the read data signal from one of the interface units to the respectively preceding interface unit of the series arrangement, until the read data signal has been received in the first interface unit of the series arrangement, and of then transmitting the read data signal from the first interface unit to the memory controller. This corresponds to a reverse loop configuration, in which the read data signal is transferred between the interface units in the direction which is essentially the reverse of that of the command or write data signal.
Alternatively, it is possible for the read data signal to be transmitted from one of the interface units to the respectively next interface unit of the series arrangement, until the read data signal has been received in a final interface unit of the series arrangement, and for the read data signal then to be transmitted from the final interface unit to the memory controller. This corresponds to a forward loop configuration, in which the read data signal is transmitted between the interface unit in essentially the same direction as the command or write data signal. The forward loop configuration offers advantages in that, in particular, the latency time for accesses to a memory module is dependent only to a small extent on the position, in the series arrangement, of the interface unit assigned to the memory module. In particular, with increasing distance of the interface unit from the memory controller, an extended transmission path for the command or write data signal is compensated by a shortened transmission path for the read data signal to the memory controller.
With regard to the clock data signals on the basis of which the above-mentioned data signals (i.e., the command or write data signal or the read data signal) are sent out, or on the basis of which the received data signals are sampled, it is possible to use, on the one hand, a source-synchronous arrangement, in which clock signals assigned to the data signals are transmitted in parallel to the latter between the memory controller and the interface units, and between the interface units. On the other hand, it is possible to use a mesosynchronous arrangement, in which a reference clock signal is supplied from a central reference clock-signal source to each of the interface units and to the memory controller. The clock signals assigned to the data signals may be generated and conditioned in the interface units with a phase locked loop. It is thereby ensured that the transfer of data is effected on the basis of a high-quality clock signal, thereby ensuring increased reliability and providing for higher data rates.
One embodiment of a memory module is configured to be used within the above-described method embodiment. One memory module embodiment is configured to be coupled to a memory controller of the memory device by means of a mechanically detachable connection for the transmission of data. The memory module is additionally configured to receive data from an external interface unit, and to transmit data to the external interface unit, via the mechanically detachable connection. In contrast to the memory modules as described with reference to
According to one embodiment, the memory module comprises at least one memory component (e.g., a memory chip) which can be directly coupled to the external interface unit via the mechanically detachable connection. Further memory components of the memory module can then be coupled to the interface unit via this memory component.
One embodiment of a device is configured to couple at least one memory module to a memory controller via a mechanically detachable data transfer connection. The device comprises at least one interface unit which is disposed on the same side of the mechanically detachable connection as the memory controller. A plurality of interface units may be provided, in dependence on the provided number of memory modules that can be coupled to the memory controller by means of the device. The at least one interface unit, or the interface units, is/are coupled to the memory controller for the purpose of data transfer, and can be coupled to the memory module or the memory modules via the mechanically detachable connection for the purpose of data transfer.
In one embodiment, the device may be combined with one or more memory modules of the above-mentioned type in order to constitute a memory device that is configured to operate according to the principles as explained above.
Explained in the following are various examples of embodiments of memory devices in which a plurality of memory modules are coupled to a memory controller via a mechanically detachable data transfer connection. The mechanically detachable connection may be, specifically, a plug-in connection. Also possible, however, are other suitable types of mechanically detachable connection (e.g., a clamped connection).
For the provision of the mechanically detachable connection, the embodiments of the memory modules described in the following comprise a plurality of contact surfaces which are disposed along one side of a printed circuit board of the memory module. Upon insertion of the memory module into a receptacle of a system board of a computer system, the receptacle being provided for this purpose, the contact surfaces are brought into engagement with corresponding mating contacts on the system board, such that an electrically conductive connection is produced. In one embodiment, the memory modules are each equipped with a plurality of memory components or memory chips, which may be, for example, dynamic random access memories (DRAMs) of the double data-rate type (DDR) type.
The memory controller 200 is disposed on a system board of a computer system, and serves to connect the memory modules to a processor of the computer system and to further system components.
The memory device furthermore comprises a plurality of interface units 20, which are likewise disposed on the system board of the computer system and which are respectively assigned to one of the memory modules 100a, 100b, 100c. A respective bidirectional interface via the mechanically detachable connection 10 is provided between the memory modules 100a, 100b, 100c and the interface units 20 assigned thereto. The memory device thus comprises a first part, which is disposed on the system board of the computer system and comprises the memory controller 200 and the interface units 20, and a second part, which is constituted by the memory modules 100a, 100b, 100c. In one embodiment, the mechanically detachable connections 10 provide for a modular design of the memory device, whereby memory modules can be easily replaced, added or removed.
Additionally provided, as a clock generating unit, on the system board is a phase locked loop 250, which provides a main clock signal CLK for the memory controller 200. According to one embodiment, the phase locked loop 250 is digitally implemented, such that a high signal quality can be achieved for the main clock signal with a small amount of circuitry resource. Furthermore, in one embodiment the digital design of the phase locked loop 250 provides for good capability for combination with further digital components of the computer system.
The interface units 20 are coupled, in a series arrangement, to the memory controller 200. Specifically, a chain-type arrangement is provided, in which data are transferred between respectively adjacent interface units 20.
A first interface unit 20 of the series arrangement receives a command or write data signal CA, WD from the memory controller 200. Starting from the first interface unit 20 of the series arrangement, the command or write data signal is transmitted from one interface unit 20 to the respectively next interface unit 20 of the series arrangement, until the command or write data signal CA, WD is received in the final interface unit 20 of the series arrangement 20.
A read data signal RD is transmitted, in the reverse direction, from one of the interface units 20 to the respectively preceding interface unit 20 of the series arrangement, until the read data signal RD is finally received in the first interface unit 20 of the series arrangement. From the first interface unit of the series arrangement, the read data signal RD is transmitted to the memory controller 200.
The interface units 20 are thus coupled to one another in a forward loop configuration.
Bidirectional transmission of data is effected between the interface units 20 and the memory modules 100a, 100b, 100c via the mechanically detachable connection 10, but with only data addressed to the respective memory module 100a, 100b, 100c, or data originating from the respective memory module 100a, 100b, 100c, being transferred. Consequently, the quantities of data transferred between the interface units 20 and the memory modules 100a, 100b, 100c via the mechanically detachable connection 10 are generally substantially less than those that are transferred between the memory controller 200 and the interface units 20 or between the interface units 20. In one embodiment, since the memory controller 200 and the interface units 20 are disposed all together on the system board of the computer system, and the system connections that exist between them therefore do not pass via the mechanically detachable connections 10, these signal connections can be optimized with respect to their signal transmission characteristics, with impairments of the signal quality resulting from reflection or crosstalk at the mechanically detachable connections being prevented at the same time.
The transfer of data between the memory controller 200 and the interface units 20 is based on a serial high-speed protocol. In this case, provision is made for data to be transmitted from a transmitter based on a clock signal, and sampled at a receiver based on a clock signal. The memory device of
In the case of the memory device illustrated in
The interface units 20 each comprise a phase locked loop 22, and the memory controller 200 comprises a phase locked loop 220. As explained more fully in the following, the phase locked loops 22, 220 serve to condition an input clock signal and to generate output clock signals of a high signal quality, on the basis of which the transmission of data is then effected. In this way, in embodiments, the reliability of the data transfer is substantially improved, and higher data rates are rendered possible.
In the memory device embodiment of
The reference clock signal RCLK for the interface units 30 is generated by clock replicator 280 based on the main clock signal CLK generated by the phase locked loop 250. An input clock signal of uniformly high quality is thus available to each of the interface units 30 and also to the memory controller 200.
In the memory device embodiment of
This means, specifically, that a first interface unit 40 of the series arrangement receives the command or write data signal CA, WD from the memory controller 200, which data signal is then transmitted from one interface unit 40 to the respectively next interface unit 40 of the series arrangement until it is received in the final interface unit 40 of the series arrangement as already explained in the case of the memory device of
The forward loop configuration embodiment can offer advantages with respect to a latency time that is non-dependent on the position of the interface unit. Thus, for example, the time for transmission of the command or write data signal CA, WD to the first interface unit 40 of the series arrangement is the shortest, while, for this interface unit 40, the time for transmission of the read data signal RD to the memory controller 200 is the longest. In the case of the final interface unit 40 of the series arrangement, on the other hand, the time for transmission of the command or write data signal CA, WD from the memory controller 200 is the longest, while the time for transmission of the read data signal RD to the memory controller 200 is the shortest. Differences in the time for transmission of the data signals resulting from the differing positions of the interface units 40 in the series arrangement are thus compensated.
In the memory device embodiment illustrated in
Each of the interface units 50 are supplied with the reference clock signal RCLK generated by the clock replicator 280, the reference clock signal being generated centrally based on the main clock signal CLK generated by the phase locked loop 250.
As already mentioned in connection with
In the memory device embodiment of
This means, specifically, that the first interface unit 60 of the series arrangement receives the command or write data signal CA, WD from the memory controller 200, the command or write data signal CA, WD then being transmitted, starting from the first interface unit 60 of the series arrangement, to the other interface units 60. In this case it is possible, on the one hand, for the command or write data signal CA, WD to be transmitted, starting from the first interface unit 60, to all other interface units 60 of the series arrangement. On the other hand it is also possible, starting from the further interface units 60 in which the command or write data signal CA, WD was received from the first interface unit 60 of the series arrangement, to transmit the command or write data signal CA, WD in a chain-type or star-type fashion to further interface units 60. In one embodiment, it is thereby possible to avoid a high number of connections emanating from a single point in the star-type connection.
Compared with a purely chain-type transfer of data, such as that described, for example, with reference to the embodiment of
In the memory device embodiment illustrated in
The interface units 70 are each supplied with the reference clock signal RCLK generated by the clock replication means 280, the reference clock signal being generated centrally based on the main clock signal CLK generated by the phase locked loop 250.
In a manner similar to the memory device embodiment of
As illustrated by
As illustrated by
In contrast to the interface unit 20 embodiment of
In one embodiment, the multiplexers 31, 33 and 34 can thus be used to select, as the input clock signal of the first receiver RxP and of the second receiver RxS, an output clock signal of the phase locked loop 32, the output clock signal being generated based on the reference clock signal RCLK. The interface unit 30 can thereby be adapted to the mesosynchronous transfer of data represented in
According to one embodiment, it is also possible to use an arrangement without the multiplexers 31, 33 and 34, the arrangement being designed exclusively for use in connection with a mesosynchronous transfer of data, in that the reference clock signal RCLK is used directly as an input clock signal of the phase locked loop 32 and the output clock signal of the phase locked loop 32 is used directly as an input clock signal of the first receiver RxP, of the second receiver RxS, of the first transmitter TxP and of the second transmitter TxS.
The input clock signal of the first transmitter TxP and the input clock signal of the second transmitter TxS are constituted by an output clock signal of the phase locked loop 42. The input clock signal of the phase locked loop 42 can be selected, via a multiplexer 41, between the associated clock signal CLK1 of the command or write data signal CA, WD and the reference clock signal RCLK. The input clock signal of the first receiver RxP is constituted by the associated clock signal of the command or write data signal CA, WD. The input clock signal of the second receiver RxS is constituted by the associated clock signal CLK2 of the read data signal RD.
The input clock signal of the first transmitter TxP and the input clock signal of the second transmitter TxS are constituted by an output clock signal of the phase locked loop 52. The input clock signal of the phase locked loop 52 can be selected, via a multiplexer 51, between the associated clock signal CLK1 of the command or write data signal CA, WD and the reference clock signal RCLK.
Furthermore, the interface unit 50 also comprises a first additional multiplexer 53, through which the input clock signal of the first receiver RxP can be selected between the associated clock signal CLK1 of the command or write data signal CA, WD and the output clock signal of the phase locked loop 52. Furthermore, the interface unit 50 comprises a second additional multiplexer 54, through which the input clock signal of the second receiver RxS can be selected between the associated clock signal CLK2 of the read data signal RD and the output clock signal of the phase locked loop 52.
By means of the multiplexers 51, 53 and 54, the interface unit 50 can be adapted to the mesosynchronous transfer of data represented in the memory device embodiment of
The interface units 60 and 70 of the memory device embodiments of
According to one embodiment, the phase locked loops 22, 32, 42, 52, 62, 72 used in the interface units 20, 30, 40, 50, 60, 70 are digitally implemented. In one embodiment, it is thereby possible to achieve a high signal quality with a small amount of circuitry resource, and adaptation to further digital components of the interface units 20, 30, 40, 50, 60, 70 is facilitated. It is also possible, however, to use analog phase locked loops in the interface units, 20, 30, 40, 50, 60, 70 or for generating the main clock signal CLK.
It is to be understood that numerous modifications are possible in the above exemplary embodiments. For example, it is possible for the different forms of data transfer to be combined with one another. For example, source-synchronous data transfer and mesosynchronous data transfer can be combined with each other in one memory device. Furthermore, it is possible to combine the star-type transfer of the command or write data signal CA, WD, explained with reference to
Further, it is to be understood that in the above embodiments any illustrated or described connection or coupling between two functional blocks, devices, components or other physical or functional entities could also be implemented by indirect connection or coupling.
Accordingly, although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that a variety of alternate and/or equivalent implementations may be substituted for the specific embodiments shown and described without departing from the scope of the present invention. This application is intended to cover any adaptations or variations of the specific embodiments discussed herein. Therefore, it is intended that this invention be limited only by the claims and the equivalents thereof.
Number | Date | Country | Kind |
---|---|---|---|
10 2005 051 792.7 | Oct 2005 | DE | national |