DETACHABLE INTERCONNECT FOR CONFIGURABLE WIDTH MEMORY SYSTEM
The disclosure relates to a detachable signalling interconnect apparatus that provides connectivity between two or more components of a memory system in conjunction with different modes of operation of the components. The memory system comprises: a first socket to receive a first memory module; a second socket to receive a second memory module; a detachable signal-interconnect; and a memory controller coupled to the detachable signal-interconnect and configured to define a first mode of operation and a second mode of operation, wherein in the first mode of operation the detachable signal-interconnect is to couple the memory-controller to the first memory module and in the second mode of operation the detachable signal-interconnect is to couple the memory controller to the first memory module and the second memory module.
Latest RAMBUS INC. Patents:
- Crosstalk cancelation structures having metal layers between signal lines semiconductor packages
- Maintenance operations in a DRAM
- Dynamically changing data access bandwidth by selectively enabling and disabling data links
- Vertical interconnects with variable pitch for scalable escape routing
- Memory component with programmable data-to-clock ratio
This application relates generally to memory systems and more specifically, but not exclusively, to interconnect mechanisms for a memory system.
BACKGROUNDSome types of memory systems are reconfigurable in that a user may change the amount or type of memory storage in the system. For example, a memory system may include a memory controller that is connected to several memory module sockets (e.g., connectors) via a memory bus. The memory controller may thus communicate with any memory modules that are installed in the sockets to control the operation of and provide access to the memory on these modules. Accordingly, a desired amount of memory storage may be provided in the memory system by adding the appropriate number and type of memory modules to the memory system.
Sample features, aspects and advantages of the disclosure will be described in the detailed description and appended claims that follow and the accompanying drawings, wherein:
In accordance with common practice the various features illustrated in the drawings may not be drawn to scale. Accordingly, the dimensions of the various features may be arbitrarily expanded or reduced for clarity. In addition, some of the drawings may be simplified for clarity. Thus, the drawings may not depict all of the components of a given apparatus or method. Finally, like reference numerals may be used to denote like features throughout the specification and figures.
DETAILED DESCRIPTIONThe description that follows sets forth one or more illustrative embodiments. It should be appreciated that the teachings herein may be embodied in a wide variety of forms, some of which may appear to be quite different from those of the disclosed embodiments. Consequently, the specific structural and functional details disclosed herein are merely representative and do not limit the scope of the invention. For example, based on the teachings herein one skilled in the art should appreciate that any of the disclosed structural and functional details may be incorporated in an embodiment independently of any other structural or functional details. Thus, an apparatus may be implemented or a method practiced using any number of the structural or functional details set forth or otherwise taught in any disclosed embodiment(s). Also, an apparatus may be implemented or a method practiced using other structural or functional details in addition to or other than the structural or functional details set forth in any disclosed embodiment(s).
The disclosure relates in some aspects to a detachable signal-interconnect apparatus that provides connectivity between two or more components in conjunction with different modes of operation of the components. For convenience, a signal-interconnect apparatus may be referred to herein simply as “an interconnect.” For illustration purposes, various aspects of several implementations of detachable interconnects will be discussed in the context of memory systems that employ a memory controller and one more memory storage devices (e.g., 1, 2, 3, 4, or more memory modules). It should be appreciated, however, that the teachings herein may be utilized in other types of systems including, for example, communication links for scaleable graphics architectures that may be implemented as graphics cards or in some other form. Thus, the teachings herein also may be employed to couple a central processing unit (“CPU”) to one or more other CPUs, to one or more graphics processing units (“GPUs”), or to some other components or components. Similarly, these concepts may be employed to couple a GPU to one or more other GPUs or to one or more other components.
Several embodiments of configurable width memory systems and various components that may be incorporated into a configurable width memory system are set forth below. In general, a configurable width memory system includes a memory controller, one or more sockets for one or more memory modules, one or more memory modules, and a detachable interconnect that effects point-to-point communication between the memory controller and the one or more memory modules.
The disclosure relates in some aspects to a detachable signal-interconnect that couples the memory controller to one or more of the memory modules, one or more memory devices on a memory module, one or more sockets, or some other component. In general, an interconnect serves to couple one or more signals from at least one component to at least one other component (e.g., between respective signal sources and sinks of these components). In some embodiments a detachable interconnect comprises flex tape or a flexible circuit (e.g., a flexible printed circuit). In some embodiments a flexible circuit comprises one or more flexible cables. In some embodiments a detachable interconnect comprises removable rigid connectors. In some embodiments a detachable interconnect comprises an optical cable. In practice, any of the above or other types of interconnects may comprise one or more parallel signal buses.
The disclosure relates in some aspects to a configurable width memory system that provides point-to-point connectivity between a memory controller and each memory module in the memory system. Advantageously, the detachable interconnect apparatus may be configured to provide such point-to-point connectivity irrespective of whether the memory system is partially or fully populated with memory modules.
These and other aspects of the disclosure will be discussed in conjunction with
A series of sockets 112A-112D for the memory modules 106A-106D, respectively, also are connected to the printed circuit board 110. The sockets 112A-112D may couple power and ground to the memory modules 106A-106D and may, in some embodiments, route other signals (e.g., address and control signals) between the printed circuit board 110 and the memory modules 106A-106D, respectively. To this end, each of the memory modules 106A-106D includes another set of electrical contacts (not shown) that is configured to couple with a set of contacts (not shown) of an associated socket 112A-112D.
Also, as will be discussed in more detail below, in some embodiments the memory modules 106A-106D may include a set of contacts to provide signal connectivity via the sockets 112A-112D to a portion of the data bus. In these cases, the sockets may include additional signal paths (e.g., high-speed pins) for routing data signals between the printed circuit board and the memory modules. Such a configuration may be employed, for example, in conjunction with the first memory module that installed in the memory system (e.g., in the socket that is closest to the memory controller).
As will be discussed in more detail below, various connection mechanisms may be employed to detachably interconnect portions of a data bus between a memory controller, and components disposed remote from the controller such as one or more memory modules, memory devices, sockets, or other components. For example, an interconnect may be coupled to a component via a connector assembly or may be permanently coupled to the component. As an example of the latter scenario, an end portion of the interconnect may be fastened to, soldered to, or integrated within the component.
The different interconnect branches 102A-102D may carry different portions of a memory data bus and associated data bus control signals (e.g., strobe, mask, and write enable signals) of the controller 104. For example, in an embodiment where the controller 104 supports a data bus with a width of 128 signals, each of the branches may carry one fourth of the data bus signals and associated control signals. Thus, in the configuration of
To accommodate the different interconnect configurations, the memory modules 106 may support different data bus widths. For example, for the configuration of
Alternatively, in other embodiments, reconfiguration of a memory system may be accompanied by replacement of any currently installed memory modules 106 with different memory modules that have a different (e.g., narrower) data width and a different (e.g., larger) memory depth. For example, a memory module 106A having a width of 128 bits and a depth of 16×M may be removed and two modules 106A and 106B added, each of which has a width of 64 bits and a depth of 32×M.
Other signals such as address and control signals may be routed between the controller 104 and a memory module 106 in various ways. For example, in some embodiments a portion or all of these other signals may be routed via trace interconnects in the printed circuit board 108 between the controller 104 and the memory module 106. Alternatively, in some embodiments a portion or all of these other signals may be routed via the interconnect 102. In some embodiments power and ground busses may be routed via the interconnect 102.
It should be appreciated that a detachable interconnect, such as a flexible circuit assembly, may be configured in a variety of ways in conjunction with the teachings herein. For example, in some embodiments the interconnect may consist of multiple circuits (e.g., cables, flex tape, etc.). In this case the controller will provide an appropriate interconnect (e.g., a connector or pads) for each circuit. In other embodiments a single interconnect may include several interconnect branches. For example, the interconnect may be a unitary assembly on one end that splits at some point along the assembly to form interconnect branches that may be connected to one or more memory modules. In this case the controller will provide an appropriate interconnect interface (e.g., a connector or a set of contacts) for the controller side of the interconnect.
A flexible circuit or other form of detachable interconnect may be constructed in various ways and of various materials to achieve a desired level of performance (e.g., signal rate, crosstalk, and so on). For example, in some embodiments the interconnect 102 may comprise a controlled impedance circuit and/or a low loss circuit. In some embodiments the interconnect 102 may comprise a high density circuit. Here, the interconnect 102 may be constructed in a manner that facilitates the transmission of a large number (e.g., on the order of one hundred or more) of high speed signals. The interconnect 102 also may be constructed in a manner that results in a relatively small amount of crosstalk between neighboring signals on the interconnect 102. To accomplish the above, the interconnect 102 may comprise a ribbon-type circuit that is fabricated using flex-circuit technology. Such an interconnect may employ, for example, a single layer or multilayer construction, microstrip line, strip-line or co-planar strip technology, one or more ground layers, and appropriate dielectric materials. Here, various types of dielectric materials may be employed depending on the cost/performance of a given application. Such dielectric materials may comprise, for example, FR-4, polyimide, liquid crystal polymer, a polyester-based dielectric, or some other suitable material. In some embodiments the interconnect may be adapted to carry differential signals. Here, each pair of conductors for the differential signals may be separated by one or more ground conductors. Through the use of such techniques reliable data signaling may be provided at rates on the order of 6 Gsymbols/s or more and, with more careful channel design (e.g., including the selection of appropriate materials), at signaling rates on the order of 10-30 Gsymbols/s or more.
A point-to-point detachable interconnect system such as the one described in
Moreover, additional benefits may be provided through the use of one or more detachable interconnects as taught herein. For example, point-to-point connectivity may be provided for fully populated module configurations without undesirable stubs or unused signal paths disposed between module sockets.
Also, in some embodiments, high quality materials and routing techniques may be used for the busses for the higher speed signals in the system (e.g., using a detachable interconnect such as a flexible circuit) while more cost effective materials and routing techniques may be used for the remaining busses in the system. For example, the remaining buses may be implemented using a printed circuit board constructed of conventional FR-4 dielectric or using other suitable techniques and materials. Thus, impedance variations (which also may cause undesirable signal reflections) that may otherwise be present on relatively low-cost printed circuit boards (e.g., a motherboard or a module) may be reduced thereby facilitating the use of higher speed signals.
Through the use of a detachable interconnect as taught herein, a significant improvement may be realized in signal quality between the controller and each module. For example, direct signal paths may be provided between the controller and all of the modules. Moreover, the signals may have less noise (e.g., due to fewer discontinuities and less crosstalk). In addition, higher frequency signals may be subjected to less attenuation. Furthermore, the electrical length for all of the signal paths may be designed to be substantially the same irrespective of the number of modules in the system, thereby enabling even further optimization of the memory bus.
With the above overview in mind, additional details of other aspects of the disclosure that may be employed in a configurable width memory system will now be treated. For convenience certain aspects will be discussed in conjunction with certain embodiments. It should be appreciated, however, that such aspects may be incorporated into another embodiment or a combination of embodiments.
In a similar manner as in
In the configuration of
In the configuration of
As in
Each memory module includes several sets of conductors 312 between its connector and memory devices. To reduce the complexity of
In some embodiments a different subset of the signals associated with each portion of a connector may be coupled to different memory devices on a given memory module. For example, in
It should be appreciated that the connectors may be configured in a variety of ways in conjunction with the teachings herein. For example, in some embodiments a given module (or any other component) may employ multiple connectors (e.g., as depicted in
The system 500 may be reconfigurable in a similar manner as the system 300. For example, in one configuration (e.g., a first mode of operation) the interconnect 502 is coupled in a point-to-point manner to the memory module 506A (as represented by the solid line). In this mode, the entire data bus width is interconnected between the controller 504 and the module 506A. In another configuration (e.g., a second mode of operation) the interconnect 502 is coupled in a point-to-point manner to the memory module 506B (as represented by the dashed line). Thus, in this mode, half the data bus width is directed to the first module 506A, while the other half is coupled to the second module 506B.
The embodiment of
The printed circuit board 610 includes a first set of traces 614A for coupling a first portion of the data bus from the controller 604 to, for example, the socket 612A. The set of traces 614A may carry signals that are similar to, for example, the signals carried by the set of traces 514 of
The printed circuit board 610 also includes a second set of traces 614B for coupling a second portion of the data bus from the controller 604 to, for example, the socket 612B. The set of traces 614B may carry signals that are similar to, for example, the signals carried by the detachable interconnect 502 of
In the first mode of operation as shown in
In the second mode of operation as shown in
As mentioned above, in some embodiments a memory module may not be releasably coupled to the printed circuit board (e.g., via a releasable socket). For example,
The printed circuit board 710 includes a first set of traces 714A for coupling a first portion of the data bus from a memory controller 704 to the memory module 706A. The set of traces 714A may carry signals that are similar to, for example, the signals carried by the set of traces 514 of
The printed circuit board 710 also includes a second set of traces 714B that may couple a second portion of the data bus from the controller 704 to the memory module 706A. For example, a socket or some other suitable component (hereafter referred to for convenience as “socket 718”) next to the memory controller 704 may include a connector 720 that optionally couples the second set of traces 714B with signal paths 722 that are coupled to an interface of the memory controller 704 for the second portion of the data bus. Thus, when coupled together, the set of traces 714B and the signal paths 722 may carry signals that are similar to the signals carried by the detachable interconnect 502 of
In a first mode of operation as shown in
In a second mode of operation as shown in
Various techniques (e.g., soldering and/or clamping) may be employed to couple or attach the memory module 706A to the printed circuit board 710. For example, in some embodiments the memory module 706A may comprise a ball grid array (not shown in
In embodiments that utilize sets of traces to carry data bus signals (e.g., as discussed herein) a given memory module may be relatively close to the memory controller. In these cases, to some extent it may be possible to relax trace width constraints or routing constraints for the connections to such a module.
The printed circuit board 810 includes a first set of traces 814 for coupling a first portion of the data bus from the controller 804 to the first memory module 806A. The set of traces 814 may carry signals that are similar to, for example, the signals carried by the set of traces 514 of
The memory system 800 is reconfigured by swapping the assembly 802A of
In the configuration of
In the configuration of
The assemblies 802 may take various forms. For example, in some embodiments each assembly 802 may comprise a secondary printed circuit board (e.g., the horizontal sections of the assemblies 802 in
As mentioned above, a variety of different types of coupling techniques and mechanisms may be employed to connect a detachable interconnect such as a flexible circuit assembly to another component. Such a component may be, for example, an integrated circuit component such as a memory controller or a memory device or some other component such as a memory module, a socket, or a printed circuit board. In practice, an interconnect may be attached to the top, bottom, or sides of a component. Several specific examples of relatively permanent coupling techniques and mechanisms will now be described in conjunction with
Various techniques may be employed to couple the pairs of contacts. For example, in some embodiments either of the fields 906 and 908 may comprise solder (e.g., solder balls) or some other suitable material that melts when heated to thereby couple corresponding pairs of contacts from the interconnect 902 and the device 904.
In some embodiments the coupling may employ the use of an anisotropic conductive film (“ACF”). For example, an ACF component 910 may be placed between the contact fields 906 and 908. Here, each contact of the contact fields may extend slightly from a surface of the interconnect 902 or the device 904. Upon application of heat (e.g., 180-200° C.) and mechanical pressure that forces the interconnect 902 and the device 904 together, conductive material in the ACF component 910 forms conductive paths between diametrically opposed pairs of contacts in the contact fields 906 and 908. In addition, the epoxy-based ACF component 910 will soften upon application of the heat. Once the ACF component 910 cools, it will bond to inner surfaces of the interconnect 902 and the device 904 forming a mechanical bond between these components.
Referring to
In practice, a set of electrical contacts such as the one described in
In some embodiments the device 904 also may include at least one other set of electrical contacts to provide signal connectivity to other components in a memory system. For example, a memory controller may include a set of contacts (e.g., on its bottom side) to provide signal connectivity to other devices on a motherboard. As discussed herein, a memory controller also may include one or more sets of contacts that provide signal connectivity to one or more memory modules. For example, these contacts may be associated with address signals, control signals, and a portion of the data bus. Similarly, a memory device may include one or more sets of contacts that provide signal connectivity to an associated memory module. Again, these contacts may be associated with address signals, control signals, and a portion of the data bus.
Referring to
Referring to
The interconnect 1102A may be coupled to the printed circuit board 1106A in a variety of ways. For example, in some embodiments the interconnect 1102A and the printed circuit board 1106A included complementary sets of electrical contacts (e.g., pad, lands, or traces) that may be soldered together. As discussed above, either of these fields may comprise solder (e.g., solder balls) that melts when heated or some other suitable material that couples corresponding pairs of contacts of the interconnect 1102A and the printed circuit board 1106A. In some embodiments the coupling may employ the use of an anisotropic conductive film (“ACF”), for example, as discussed above in conjunction with
It should be appreciated that the above techniques may be used to connect an interconnect to various types of devices. For example, the embodiments relating to attachment to an integrated circuit may involve a memory controller, a memory device, or some other type of device. The embodiments relating to an attachment to a printed circuit board may involve a system motherboard, a memory module, or some other type of board component. The embodiments relating to an attachment using a connector may involve an integrated circuit, a printed circuit board, a socket, or some other type of component.
The interconnect coupling techniques described herein may be performed at various stages of the manufacturing process. For example, in some embodiments an interconnect is attached to an integrated circuit device during the integrated circuit assembly process (e.g., in embodiments such as those shown in
Referring to
To facilitate routing the interconnect branch 1302A to the memory module 1304A, the socket 1308A includes (or is attached to) a feed-through mechanism 1310A for the interconnect branch 1302A. That is, the interconnect branch 1302A may be passed through a hole or slot defined by the feed-through 1310A and thereby held in place to some degree.
The interconnect branch 1302B is routed to the memory module 1304A or to the memory module 1304B, depending on the configuration of the memory system. For example, in a first mode of operation the interconnect branch 1302B is routed to a connector 1306B on a back side of the memory module 1304A. This configuration of the interconnect branch 1302B is represented by the solid line in
In a second mode of operation the interconnect branch 1302B is routed to a connector 1306C of the memory module 1304B. This configuration of the interconnect branch 1302B is represented by the dashed line in
It should be appreciated that an interconnect may be attached to a printed circuit board in a variety of other ways. For example, in some embodiments an adhesive such as epoxy may be used to adhere the interconnect to the printed circuit board.
Referring to
Alternatively, some embodiments may utilize a hybrid printed circuit board manufacturing process whereby different sections of the printed circuit board may utilize different dielectrics and/or different trace routing techniques. In such a case the interconnect is, in effect, incorporated into the designated section of the printed circuit board since the materials and characteristic of that section may be substantially the same as the materials and characteristic of a interconnect.
In general, an interconnect apparatus as taught herein may employ various types of signaling schemes. For example, an interconnect apparatus may employ electrical signals (e.g., transmitted via electrical conductors), optical signals (e.g., transmitted via optical fibers), or wireless signals such a radio frequency signals or infrared signals (e.g., transmitted via an appropriate medium such as air).
The embodiment of
The connector 1704 is coupled to a connector 1710 on a printed circuit board 1712. In this case, the connectors 1704 and 1710 includes appropriate contact mechanisms at an interface region 1714 to receive electrical signals from and provide electrical signals to the optoelectronic component 1706. In addition, the connector 1710 may couple a power bus from the printed circuit board 1712 to the connector 1704 to provide power for the optoelectronic component 1706. Also, in a similar manner as discussed above, a set of traces 1716 in the printed circuit board 1712 couple the corresponding electrical signals between the connector 1710 and a component 1718.
With reference to
The memory modules 1804 typically comprise some form of read/write memory. For example, such memory may comprise RAM, DRAM, flash, SRAM, or some other type of memory. Also, in some implementations a memory module may comprise a ROM device.
One portion of the memory bus 1808 comprises an address and control bus 1808C that defines the subset of the memory space of the memory modules 1804 that is being accessed at a given time. In a typical implementation all of the signals of the address and control bus 1808C are routed to each memory module 1804.
Each memory module 1804 may include one or more connectors 1810 or some other connection mechanism for coupling with one or more interconnect branches. For example, as represented by the line 1808A, in the first mode of operation the first interconnect branch 1808A is coupled in a point-to-point manner between the memory controller 1802 and a connector 1810A of the first memory module 1804A. In addition, as represented by the solid line 1808B, in the first mode of operation the second interconnect branch 1808B is coupled in a point-to-point manner between the memory controller 1802 and a connector 1810B of the first memory module 1804A.
Conversely, as represented by the dashed line 1808B, in the second mode of operation the second interconnect branch 1808B is coupled in a point-to-point manner between the memory controller 1802 and a connector 1810C of the second memory module 1804B. Thus, in the second mode of operation the second interconnect branch 1808B is not connected to the connector 1810B.
As discussed above in conjunction with
Each memory array 1812 comprises one or more storage devices 1814 (e.g., a DRAM chip). For example, the memory array 1812A includes two storage devices 1814A and 1814B. Other embodiments may employ a different number of storage devices. Also, the memory arrays 1812 of
Each module 1804 also includes a data bus interface (e.g., comprising one or more array controllers 1816) or other similar functionality that controls how the memory devices 1814 are accessed during different modes of operation of the memory system 1800. Such an array controller may include, for example, appropriate multiplexing and demultiplexing circuitry to selectively couple portions of the data bus to a plurality of subsections 1822 (e.g., memory array subsections 1 . . . N) of the data memory of each memory device 1814. As shown in
As mentioned above, in the first mode of operation the first interconnect 1808A associated with a first data bus portion is inserted into the connector 1810A and the second interconnect 1808B associated with a second data bus portion is inserted into the connector 1810B. In this case, the array controller 1816A couples the signals of the first interconnect 1808A and the second interconnect 1808B to the plurality of memory array subsections 1822A. Similarly, the array controller 1816B couples the signals of the first interconnect 1808A and the second interconnect 1808B to the plurality of memory array subsections 1822B. It should be appreciated that in other implementations these components may be coupled in other ways.
Also as mentioned above, in the second mode of operation the second interconnect 1808B is moved to the connector 1810C of the module 1804B. In this case, the array controller 1816A may couple the signals of the first interconnect 1808A to the memory array subsections 1822A. Note that here, as compared to the first mode of operation, only half as many subsections may be associated with the data bus for a given memory access. In this case, the other half of the subsections are coupled to the data bus during a memory access associated with different address. The array controller 1816B will provide similar functionality to couple the interconnect 1808A to the array subsections 1822B. In addition, the array controllers 1816C and 1816D will provide similar functionality to couple the interconnect 1808B to the array subsections 1822C and 1822D, respectively.
In some embodiments the memory controller 1802 is configured to determine which sockets in the memory system 1800 are populated with a memory module. In this case, the memory controller 1802 may configure the memory modules based on the detected configuration of the memory system 1800. To this end, the memory controller may include a configuration detector component 1818 that is adapted to communicate with the memory modules 1804 (e.g., via an SPID bus, not shown in
For convenience, the operations of
In the following discussion the alternative configurations of the memory modules may be referred to as having or using different data widths. It should be noted, however, that the capacities of the memory modules do not change with the different data widths, at least in the described embodiment. Rather, the full set of data of each module is available regardless of the data path width being used. With wider data widths, different subsets of memory subsections may be accessed through different sets of data connections. With narrower data widths, the different subsets of memory subsections may be accessed through a common set of data connections. At such narrower data widths, larger addressing ranges may be used to access the full set of data. For example, if the data width is reduced by a factor of two the addressing range may be increased by a factor of two (e.g., by using an additional address bit).
As represented by block 1902 in
As represented by blocks 1904 and 1906, the appropriate interconnects are also installed at this time to couple the appropriate portions of the data bus to the memory module or memory modules. Referring to the example of
As represented by block 1908, once the memory system 1800 is powered up, the configuration detector 1818 may detect the configuration of the memory system 1800. As mentioned above, this may involve communicating with each of the installed memory modules 1804. The configuration detector 1818 may thus determine a mode of operation of the memory system 1800 (block 1910)
It should be appreciated that a variety of techniques may be employed to configure one or more of the components of a memory system. For example, in some embodiments a detachable interconnect includes a signal path for one or more bus select signals (e.g., for two bus pins). A full bus width connection (e.g., at a memory module) may be specified if both bus selects are set in a given manner (e.g., driven to a specified voltage level). Conversely, a half bus width connection may be specified if only one of the bus selects is set in the designated manner. Here, an appropriate voltage may be supplied by a power supply, generated from a resistive voltage divider, or correspond to a ground potential. Through the use of such a configuration detection mechanism, the number of pins needed on the memory controller for this purpose may be reduced (or entirely eliminated). In addition, the processing resources (e.g., protocol support) used by the system components (e.g., the memory controller) to support configuration detection may be reduced when techniques such as this are employed.
As represented by block 1912, the mode control circuit 1820 in conjunction with each array controller 1816 may configure the memory arrays 1812 in accordance with the current mode of operation. For example, as discussed herein the width of the data bus for each memory module 1804 may be adjusted along with the addressing range supported by each memory module 1804.
In view of the above, it should be appreciated that various modifications may be incorporated into the disclosed embodiments. For example, an interconnect apparatus may, in general, take a wide variety of forms. As mentioned above an interconnect apparatus may be relatively rigid or at least partially flexible. Also, in some embodiments an interconnect apparatus may be reconfigurable (e.g., detachable). In other embodiments the interconnect apparatus may be attached to one or more components in a relatively permanent manner.
Also, although the above description relates to a large extent to a memory system, it should be noted that the disclosed aspects of the different embodiments may be applicable to other types of systems that transfer data to and receive data from modules (e.g., installable modules). Thus, in some embodiments the sockets described herein may receive logic modules other than memory modules.
Moreover, many of the teachings herein are applicable to a memory system that does not employ reconfigurable memory modules. An example of such an embodiment will be described with reference to
As illustrated in
A similar procedure may be followed in other embodiments to change the number and type of modules in the system. Here, the number of DRAMs needed depends on the DRAM bus width and the module bus width. For example, an x32 module may employ eight x4 DRAMs, four x8 DRAMs, two x16 DRAMs, or one x32 DRAM. In this case a “full width” module corresponds to an x32 module and a “half width” module corresponds to an x16 module. Also, the above concepts relating to full/half width may be applicable to full/half/quad width for a four module upgrade, and so on for systems that support greater numbers of modules.
It also should be appreciated that the various functional components and operations described herein may be implemented in various ways and using a variety of apparatuses. For example, a functional component may be implemented using various hardware components such a processor, a controller, a state machine, logic, or some combination of one or more of these components.
In some embodiments, code including instructions (e.g., software, firmware, middleware, etc.) may be executed on one or more processing devices to implement one or more of the described components or operations. The code and associated components (e.g., data structures and other components by the code or to execute the code) may be stored in an appropriate data memory that is readable by a processing device (e.g., commonly referred to as a computer-readable medium).
The recited order of the blocks in the processes disclosed herein is simply an example of a suitable approach. Thus, operations associated with such blocks may be rearranged while remaining within the scope of the present disclosure. Similarly, the accompanying method claims present operations in a sample order, and are not necessarily limited to the specific order presented.
The components and functions described herein may be connected or coupled in various ways. The manner in which this is done may depend, in part, on whether and how the components are separated from the other components. In some embodiments some of the connections or couplings represented by the lead lines in the drawings may be in an integrated circuit, on a circuit board, implemented as discrete wires, or implemented in some other way.
The signals discussed herein may take various forms. For example, in some embodiments a signal may comprise electrical signals transmitted over a wire, light pulses transmitted through an optical medium such as an optical fiber or air, or RF waves transmitted through a medium such as air, etc. In addition, a plurality of signals may be collectively referred to as a signal herein. The signals discussed above also may take the form of data. For example, in some embodiments an application program may send a signal to another application program. Such a signal may be stored in a data memory.
While certain sample embodiments have been described above in detail and shown in the accompanying drawings, it is to be understood that such embodiments are merely illustrative of and not restrictive of the teachings herein. In particular, it should be recognized that the teachings herein may apply to a wide variety of apparatuses and methods. It will thus be recognized that various modifications may be made to the illustrated embodiments and other embodiments as taught herein, without departing from the broad inventive scope thereof. In view of the above it will be understood that the teachings herein are not limited to the particular embodiments or arrangements disclosed, but are rather intended to cover any changes, adaptations or modifications which are within the scope of the appended claims.
Claims
1. A memory system, comprising:
- a first socket to receive a first memory module;
- a second socket to receive a second memory module;
- a detachable signal-interconnect; and
- a memory controller coupled to the detachable signal-interconnect and configured to define a first mode of operation and a second mode of operation, wherein in the first mode of operation the detachable signal-interconnect is to couple the memory controller to the first memory module and in the second mode of operation the detachable signal-interconnect is to couple the memory controller to the first memory module and the second memory module.
2. The memory system of claim 1, wherein:
- in the first mode of operation the detachable signal-interconnect couples the memory controller to the first memory module in a point-to-point configuration; and
- in the second mode of operation the detachable signal-interconnect couples the memory controller to the first memory module and the second memory module in a point-to-point configuration.
3. The memory system of claim 1, wherein:
- the detachable signal-interconnect comprises a first branch and a second branch; and
- the first branch of the detachable signal-interconnect is configured to carry a first portion of a data bus and the second branch of the detachable signal-interconnect is configured to carry a second portion of the data bus.
4. The memory system of claim 3, wherein:
- in the first mode of operation the first and second branches of the detachable signal-interconnect are to couple the memory controller to the first memory module; and
- in the second mode of operation the first branch of the detachable signal-interconnect is to couple the memory controller to the first memory module and second branch of the detachable signal-interconnect is to couple the memory controller to the second memory module.
5. The memory system of claim 1, wherein in the first mode of operation the first memory module is accessed at a first data bus width and in the second mode of operation the first memory module is accessed at a second data bus width that is different than the first data bus width.
6. The memory system of claim 1, wherein the memory controller is further configured to define the first and second modes of operation based on a determination of how many memory modules are installed in the memory system.
7. The memory system of claim 6, wherein the memory controller is further configured to generate a mode signal based on the determination to cause the first memory module to change a data width at which access to the first memory module is provided.
8. The memory system of claim 1, further comprising a connector attached to the memory controller to provide the coupling between the memory controller and the detachable signal-interconnect.
9. The memory system of claim 1, wherein an end portion of the detachable signal-interconnect is soldered to the memory controller.
10. The memory system of claim 1, wherein the second memory module comprises a connector to provide the coupling between the second memory module and the detachable signal-interconnect.
11. The memory system of claim 10, wherein the first memory module comprises another connector to provide the coupling between the first memory module and the detachable signal-interconnect.
12. The memory system of claim 1, wherein the first memory module comprises first and second connectors to provide the coupling between the first memory module and the detachable signal-interconnect in the first mode of operation.
13. The memory system of claim 1, wherein first socket comprises a passageway for a branch of the detachable signal-interconnect.
14. The memory system of claim 1, further comprising a printed circuit board having a set of traces that are adapted to couple the memory controller to the first memory module in the first and second modes of operation, wherein the detachable signal-interconnect is configured to carry a first portion of a data bus of the memory controller and the set of traces is configured to carry a second portion of the data bus.
15. The memory system of claim 1, wherein a portion of the detachable signal-interconnect is embedded in a printed circuit board.
16. The memory system of claim 1, wherein the detachable signal-interconnect comprises a plurality of circuit branches.
17. The memory system of claim 1, wherein the detachable signal-interconnect comprises a plurality of electrical conductors.
18. The memory system of claim 17, wherein the detachable signal-interconnect further comprises a controlled impedance circuit.
19. The memory system of claim 1, wherein the detachable signal-interconnect comprises at least one optical cable.
20. The memory system of claim 19, wherein the detachable signal-interconnect further comprises an optoelectronic circuit.
21. The memory system of claim 19, further comprising a connector attached to the memory controller to provide the coupling between the memory controller and the at least one optical cable, wherein the connector further comprises an optoelectronic circuit.
22. The memory system of claim 1, wherein the memory controller is directly connected to an end portion of the detachable signal-interconnect to couple signal paths associated with an entire width of the detachable signal-interconnect to the memory controller in the first mode of operation.
23. The memory system of claim 1, wherein:
- the detachable signal-interconnect comprises a plurality of branches; and
- the branches have substantially similar electrical path lengths.
24. The memory system of claim 1, wherein the detachable signal-interconnect comprises flex tape.
25. The memory system of claim 1, wherein the detachable signal-interconnect comprises a flexible circuit.
26. The memory system of claim 1, further comprising a set of printed circuit board traces coupled between the memory controller and the first socket.
27. The memory system of claim 1, wherein the signal-interconnect comprises a printed circuit board.
28. The memory system of claim 1, wherein:
- the first memory module comprises a first type of memory module in the first mode of operation and a second type of memory module in the second mode of operation; and
- the first type of memory module is different than the second type of memory module.
29. The memory system of claim 1, further comprising at least one other socket to receive at least one other memory module;
- wherein in the second mode of operation the detachable signal-interconnect is to further couple the memory controller to the at least one other memory module.
30. The memory system of claim 29, wherein the at least one other memory module comprises a third memory module and a fourth memory module.
31. A memory controller, comprising:
- a memory interface adapted to provide signals to access a plurality of memory devices;
- a set of contacts coupled to the memory interface and adapted to couple with a detachable signal-interconnect; and
- a mode control circuit configured to define a first mode of operation and a second mode of operation, wherein in the first mode of operation the set of contacts is coupled to a first one of the memory devices and in the second mode of operation the set of contacts is coupled to the first one and a second one of the memory devices.
32. The memory controller of claim 31, further comprising a configuration detector configured to determine how many memory modules are installed in the memory system.
33. The memory controller of claim 31, wherein the mode control circuit is further configured to generate a mode signal to cause the first one of the memory devices to change a data width at which access to the first one of the memory devices is provided.
34. The memory controller of claim 31, wherein the first mode of operation is associated with a first width for data transfer to and from a memory device and the second mode of operation is associated with a second width for data transfer to and from the memory device.
35. The memory controller of claim 31, wherein the memory interface is further configured to provide the signals via point-to-point signal paths in the first and second modes of operation.
36. The memory controller of claim 31, further comprising a connector connected to the set of contacts to provide the coupling with the detachable signal-interconnect.
37. The memory controller of claim 31, wherein the detachable signal-interconnect is soldered to the set of contacts.
38. The memory controller of claim 31, wherein the detachable signal-interconnect comprises a controlled impedance circuit.
39. The memory controller of claim 31, wherein:
- the detachable signal-interconnect comprises at least one optical cable;
- the memory controller further comprises a connector to provide the coupling with the at least one optical cable; and
- the connector comprises an optoelectronic circuit.
40. The memory controller of claim 31, wherein the detachable signal-interconnect is attached to a substrate of the memory controller.
41. A memory module, comprising:
- at least one memory device; and
- a first set of contacts adapted to couple with a first detachable signal-interconnect; and
- a second set of contacts adapted to couple with a second detachable signal-interconnect,
- wherein in a first mode of operation access to the at least one memory device is provided via the first set of contacts and in a second mode of operation access to the at least one memory device is provided via the first and second sets of contacts.
42. The memory module of claim 41, further comprising:
- a first connector connected to the first set of contacts to provide the coupling with the first detachable signal-interconnect; and
- a second connector connected to the second set of contacts to provide the coupling with the second detachable signal-interconnect.
43. The memory module of claim 42, wherein the first and second connectors comprise optoelectronics.
44. The memory module of claim 41, wherein:
- the at least one memory device comprises a plurality of memory devices;
- in the first mode of operation, the first set of contacts is coupled to all of the memory devices; and
- in the second mode of operation, the first and second sets of contacts are coupled to all of the memory devices.
45. The memory module of claim 41, further comprising an array controller configured to:
- in the first mode of operation, provide access to the first memory device at a first data bus width; and
- in the second mode of operation, provide access to the first memory device at a second data bus width that is different than the first data bus width.
46. A memory device, comprising:
- a memory array; and
- a set of contacts adapted to couple the memory array to a detachable signal-interconnect;
- wherein in a first mode of operation access to the memory array is provided at a first data bus width and in a second mode of operation access to the memory array is provided at a second data bus width that is different than the first data bus width.
47. The memory device of claim 46, further comprising a connector connected to the set of contacts to provide the coupling with the detachable signal-interconnect.
48. The memory device of claim 47, wherein the connector comprises optoelectronics.
49. The memory device of claim 46, wherein the detachable signal-interconnect comprises a first branch and a second branch, and the memory device further comprises:
- a first connector connected to a first portion of the set of contacts to provide the coupling of the memory array to the first branch of the detachable signal-interconnect; and
- a second connector connected to a second portion of the set of contacts to provide the coupling of the memory array to the second branch of the detachable signal-interconnect.
50. The memory device of claim 46, wherein:
- the memory array comprises a plurality of memory subsections;
- in the first mode of operation, the set of contacts corresponding to the first data bus width is coupled to all of the memory subsections; and
- in a second mode of operation, a portion of the set of contacts corresponding to the second data bus width is coupled to all of the memory subsections.
51. A method of accessing memory in a memory system, comprising:
- determining a configuration of the memory system; and
- selecting a first mode of operation or a second mode of operation based on the determined configuration, wherein in the first mode of operation a first memory device is accessed via a detachable signal-interconnect and in the second mode of operation the first memory device and a second memory device are accessed via the detachable signal-interconnect.
52. The method of claim 51, wherein:
- in the first mode of operation the first memory device is accessed via a first branch and a second branch of the detachable signal-interconnect; and
- in the second mode of operation the first memory device is accessed via the first branch of the detachable signal-interconnect and the second memory device is accessed via the second branch of the detachable signal-interconnect.
53. The method of claim 52, wherein the first branch of the detachable signal-interconnect carries a first portion of a data bus and the second branch of the detachable signal-interconnect carries a second portion of the data bus.
54. The method of claim 51, wherein:
- the first memory device is accessed via a set of traces in a printed circuit board;
- the detachable signal-interconnect carries a first portion of a data bus; and
- the set of traces carries a second portion of the data bus.
55. The method of claim 51, wherein the determination of the configuration comprises determining how many memory modules are installed in the memory system.
56. The method of claim 51, further comprising selecting a data bus width of the first memory device based on the selected mode of operation.
57. The method of claim 51, wherein in the first mode of operation the first memory device is accessed at a first data bus width and in the second mode of operation the first memory device is accessed at a second data bus width that is narrower than the first data bus width.
58. The method of claim 51, wherein:
- in the first mode of operation the detachable signal-interconnect couples a memory controller to the first memory device in a point-to-point configuration; and
- in the second mode of operation the detachable signal-interconnect couples the memory controller to each of the first memory device and the second memory device in a point-to-point configuration.
59. The method of claim 58, wherein the detachable signal-interconnect further comprises a controlled impedance circuit.
60. The method of claim 51, wherein the second memory device comprises a connector for coupling with the detachable signal-interconnect.
61. The method of claim 51, wherein the detachable signal-interconnect comprises an optical cable.
62. A memory system, comprising:
- a first memory module;
- a socket to receive a second memory module;
- a detachable signal-interconnect; and
- a memory controller coupled to the detachable signal-interconnect and configured to define a first mode of operation and a second mode of operation, wherein in the first mode of operation the detachable signal-interconnect is to couple the memory controller to the first memory module and in the second mode of operation the detachable signal-interconnect is to couple the memory controller to the second memory module.
63. The memory system of claim 62, further comprising a printed circuit board having a set of traces that are adapted to couple the memory controller to the first memory module in a point to point configuration in the first and second modes of operation; wherein:
- the detachable signal-interconnect is configured to carry a first portion of a data bus of the memory controller and the set of traces is configured to carry a second portion of the data bus.
64. The memory system of claim 63, wherein the first memory module is attached to the printed circuit board.
65. The memory system of claim 63, wherein the first memory module is soldered to the printed circuit board.
66. The memory system of claim 63, wherein the first memory module is clamped to the printed circuit board.
67. The memory system of claim 62, wherein:
- in the first mode of operation the detachable signal-interconnect couples the memory controller to the first memory module in a point-to-point configuration; and
- in the second mode of operation the detachable signal-interconnect couples the memory controller to the second memory module in a point-to-point configuration.
68. The memory system of claim 62, wherein in the first mode of operation the first memory module is accessed at a first data bus width and in the second mode of operation the first memory module is accessed at a second data bus width that is different than the first data bus width.
69. The memory system of claim 62, wherein the memory controller is further configured to define the first and second modes of operation based on a determination of how many memory modules are installed in the memory system.
70. The memory system of claim 69, wherein the memory controller is further configured to generate a mode signal based on the determination to cause the first memory module to change a data width at which access to the first memory module is provided.
71. The memory system of claim 62, further comprising a connector attached to the memory controller to provide the coupling between the memory controller and the detachable signal-interconnect.
72. The memory system of claim 62, wherein an end portion of the detachable signal-interconnect is soldered to the memory controller.
73. The memory system of claim 62, wherein the second memory module comprises a connector to provide the coupling between the second memory module and the detachable signal-interconnect.
Type: Application
Filed: Jun 30, 2008
Publication Date: May 19, 2011
Applicant: RAMBUS INC. (Los Altos, CA)
Inventors: Ravindranath Kollipara (Palo Alto, CA), Xingchao Yuan (Palo Alto, CA), Frank Lambrecht (mountain View, CA), Ming Li (Fremont, CA), Richard E. Perego (Thornton, CO), Qi Lin (Mountain View, CA), David Nguyen (Cupertino, CA), Kyung Suk Oh (Campbell, CA)
Application Number: 12/675,105
International Classification: G06F 13/40 (20060101); G06F 13/20 (20060101);