This is a continuation of application Ser. No. 10/724,164, filed Dec. 1, 2003, which claims priority from Japanese Patent Application No. 2002-349867, filed Dec. 2, 2002.
1. Field of the Invention
The present invention relates to a memory system which is used in an information processing apparatus, and in particular to a memory system in which a bus is constituted by connecting a plurality of memory modules in series in the form of one-stroke writing.
2. Description of the Prior Art
In recent years, in the field of an information processing apparatus such as a personal computer or a server computer, there is an increasing need for a higher speed of access and a larger storage capacity of a memory system in accordance with an increase in speed of processing by a CPU and an increase in size of a program.
As a memory system with a large storage capacity, there is generally known a structure as shown in
The memory system shown in
Incidentally, in the information processing apparatus in recent years, as a result of the increase in speed of processing in a CPU as described above, a transmission speed of data and an address signal transmitted using a bus has also been increased. When a high-speed signal is transmitted using the bus, reflection or the like occurs in a stub or at a bus end, and a signal waveform to be received in each memory module is distorted. Thus, correct information cannot be received.
In order to solve such a problem, there is proposed a structure of a memory system as shown in
For example, in a server computer connected to a network such as the Internet, since it is not allowed to turn off an apparatus power supply even for a short time, a hot swap (or hot plug) function for making it possible to replace a module while keeping the apparatus power supply on is required.
In the above-described RAMLINK system, since the bus structure is maintained by connecting the plurality of memory modules in the form of one-stroke writing, the bus is disconnected if even one memory module is removed as shown in
In order to cope with such a problem, for example, as shown in
However, in the structure shown in
It is therefore an object of the present invention to provide a memory system, which realizes the hot swap function while suppressing the increase in a mounting area and a price of the memory system, and a control method therefor.
In order to attain the above-described object, in the present invention, the memory system copies data stored in memory modules to a hard disk device at each predetermined period, switches a bus from a unidirectional bus to a bi-directional bus when an arbitrary memory module is replaced, detects an address space of the memory module to be replaced, and accesses a memory area in the hard disk device corresponding to the detected address space when an access to the memory module is requested. Consequently, the hot swap function can be realized without increasing the number of memory modules.
In addition, in replacing the arbitrary memory module, the memory system detects an address space of the memory module, copies corresponding data in the address space to a storage from the hard disk device, and at the time when an access to the memory module to be replaced is requested, accesses a memory area of the storage corresponding to the detected address space to thereby access the storage which is accessible at a high speed compared with the hard disk device. Consequently, time for accessing the memory area corresponding to the memory module to be replaced can be reduced.
Moreover, in replacing the arbitrary memory module, the memory system short-circuits a bus to be disconnected by removing the memory module, detects an address space of the memory module to be replaced, copies data corresponding to the detected address space to the storage from the hard disk device, and accesses a memory area of the storage corresponding to the address space at the time when an access to the memory module to be replaced is requested. Consequently, since the memory system can be operated with the unidirectional bus even at the time of replacement of a memory module, decrease in efficiency of use of the bus is prevented.
Therefore, the memory system, which realizes the hot swap function while suppressing the increase in a mounting area and a price, and an information processing apparatus mounted with the same can be obtained.
The above and other objects, features, and advantages of the present invention will become apparent from the following description with reference to the accompanying drawings, which illustrate examples of the present invention.
As shown in
As shown in
As shown in
In this embodiment, the bus connecting the plurality of memory modules 2 and first memory controller 3 is used as a unidirectional bus at the time of a normal operation as shown in
In addition, in the case in which an access from CPU 1 to memory module 2 to be replaced due to a failure (hereinafter referred to as a failed memory module) is requested, CPU 1 accesses hard disk device 4 via second memory controller 5 instead of the failed memory module. Since data in all memory modules 2 are mirrored to hard disk device 4, hot swap of the failed memory module becomes possible.
Next, an operation of the memory system of this embodiment will be described with reference to
Note that, in the operation of the memory system described below, an example in which memory modules 2, first memory controller 3, and second memory controller 5 are controlled by CPU 1 provided in the information processing apparatus will be described. However, it is also possible to control the operation of the memory system with first memory controller 3 and second memory controller 5. In that case, first memory controller 3 and second memory controller 5 are constituted by a DSP or the like which executes processing described below in accordance with a command from CPU 1.
As shown in
In the case in which a failure has occurred in an arbitrary memory module 2, CPU 1 starts hot swap execution processing for making it possible to remove the failed memory module (step A3). The hot swap execution processing may be started, for example, in the case in which a predetermined command is supplied via an input device (a keyboard, a mouse, etc.) provided in the information processing apparatus, or the case in which a predetermined command is sent via a network or the like.
In the hot swap execution processing, first, CPU 1 detects an address space (memory area) of the failed memory module (step A4) and, in the case in which an access to the failed memory module is requested, switches its control to memory control via second memory controller 5 such that an access is made to the mirrored data in hard disk device 4 (step A5). In addition, CPU 1 sends a control signal for switching the bus operation from the unidirectional bus to the bi-directional bus to each memory module 2 via first memory controller 3 (step A6). Thereafter, as shown in
When the failed memory module is removed, CPU 1 accesses hard disk device 4 via second memory controller 5 instead of the failed memory module in response to the request to access the memory module. In addition, in the case in which an access to any one of the other memory modules is requested, CPU 1 performs transmission and reception of data as usual using a bus route accessible to the memory module (step A7).
Next, in order to insert the memory module recovered from the failure (or a new memory module), CPU 1 confirms whether or not the start of hot swap insertion processing for making it possible to insert a memory module is requested (step A8). The hot swap insertion processing is started, for example, in the case in which a predetermined command is supplied via the input device provided in the information processing apparatus or the case in which a predetermined command is sent via a network or the like. In the case in which the hot swap insertion processing is not requested, CPU 1 returns to the processing of step A7 to continue the above-described processing at the time of hot swap.
In the case in which the start of the hot swap insertion processing is requested, first, CPU 1 switches the control, which was switched so as to access hard disk device 4, to the control for accessing the original memory module 2 (step A9). In addition, CPU 1 sends a control signal for switching the bus operation from the bi-directional bus to the unidirectional bus to first memory controller 3 (step A10). Then, when the memory module recovered from the failure (or new memory module) is inserted, CPU 1 copies data in hard disk device 4 corresponding to the failed memory module to the inserted memory module 2 (step A11) and shifts to the normal operation.
According to the constitution of this embodiment, even in the memory system in which the memory controller and the plurality of memory modules are connected in series in a ring shape, the hot swap function can be realized without increasing the number of memory modules.
As shown in
In the memory system of this embodiment, when an address space of a failed memory module is detected, mirrored data in a hard disk device corresponding to the detected address space is copied to mirror memory module 6. Then, in the case in which an access to the failed module is requested, mirror memory module 6 is accessed via a first memory controller. Moreover, at the time of insertion of a new memory module, data in mirror memory module 6 is copied to the hard disk device and the inserted memory module, respectively. Since the other components and operations are the same as those in the memory system of the first embodiment, descriptions of the components and operations will be omitted.
According to the memory system of this embodiment, the hot swap function can be realized. In addition, since mirror memory module 6, which is accessible at a high speed compared with the hard disk device, is accessed at the time when an access to the failed memory module is requested, time for accessing a memory area corresponding to the failed memory module can be reduced further compared with the first embodiment.
As shown in
In the memory system of this embodiment, when an address space of a failed memory module is detected, mirrored data in a hard disk device corresponding to the detected address space is copied to graphics memory 7. Then, in the case in which an access to the failed memory module is requested, graphics memory 7 is accessed via a first memory controller. Moreover, at the time of insertion of a new memory module, data in graphics memory 7 corresponding to the failed memory module is copied to the hard disk device and the inserted memory module, respectively. Since the other components and operations are the same as those in the memory system of the first embodiment, descriptions of the components and operations will be omitted.
In this embodiment, as in the second embodiment, the hot swap function can be realized. In addition, since graphics memory 7, which is accessible at a high speed compared with the hard disk device, is accessed at the time when an access to the failed memory module is requested, time for accessing a memory area corresponding to the failed memory module can be reduced further compared with the first embodiment.
As shown in
In the memory system of this embodiment, when an address space of the failed memory module is detected, mirrored data in a hard disk device corresponding to the detected address space is dispersedly copied to free memory areas 8 of the memory modules in which a failure has not occurred. Then, in the case in which an access to the failed module is requested, free memory areas 8 of the memory modules in which a failure has not occurred are accessed via a first memory controller. Moreover, at the time of insertion of a new memory module, data in free memory areas 8 corresponding to the failed memory module is copied to the hard disk device and the inserted memory module, respectively. Since the other components and operations are the same as those in the memory system of the first embodiment, descriptions of the components and operations will be omitted.
In this embodiment, as in the second embodiment, the hot swap function can be realized. In addition, free memory area 8 of the memory module, which is accessible at a high speed compared with the hard disk device, is accessed at the time when an access to the failed memory module is requested, time for accessing a memory area corresponding to the failed memory module can be reduced further compared with the first embodiment.
In the first to the fourth embodiments, since the memory system is operated by the bi-directional bus at the time of hot swap, efficiency of use of the bus falls. In addition, since a portion where a memory module is removed becomes a bus end, it is likely that a transmission speed of a signal has to be decreased at the time of hot swap.
A memory system of a fifth embodiment is constituted to be capable of realizing the hot swap function and operable by a unidirectional bus even at the time of hot swap.
As shown in
Memory modules 12 have a plurality of semiconductor memories 210 in which data is stored, and buffer sections 310 for sending and receiving a signal between a bus and semiconductor memory 210. In addition, in the memory system of this embodiment, dummy module 16 to be inserted in the memory system is provided instead of a failed memory module (not-shown memory module 122).
As shown in
As shown in
The memory system may have only one of a unidirectional bus connected in buffer section 310 shown in
As shown in
Next, an operation of the memory system of this embodiment will be described with reference to
Note that, in the operation of the memory system described below, an example in which memory modules 12, first memory controller 13, and second memory controller 15 are controlled by CPU 11 provided in the information processing apparatus will be described. However, it is also possible to control the operation of the memory system with first memory controller 13 and second memory controller 15. In that case, first memory controller 13 and second memory controller 15 are constituted by a DSP or the like which executes processing described below in accordance with a predetermined command from CPU 11.
As shown in
In the case in which a failure has occurred in an arbitrary memory module 12, CPU 11 starts hot swap execution processing for making it possible to remove the failed memory module (step B3). The hot swap execution processing may be started in the case in which a predetermined command is input via the input device (a keyboard or a mouse, etc.) provided in the information processing apparatus or the case in which a predetermined command is sent via a network or the like.
In the hot swap execution processing, first, an address area (memory area) of the failed memory module 12 is detected (step B4), and dispersedly copies data in hard disk device 14 corresponding to the address space to free memory spaces 18 in the respective memory modules 12 in which a failure has not occurred (step B5).
In addition, CPU 11 switches memory control so as to access the mirrored data in the other memory modules 12 in response to a request to access the failed memory module 12 (step B6).
When the failed memory module 12 is removed and dummy module 16 is inserted instead of the failed memory module 12, thereafter, in the case in which an access to the failed memory module 12 is requested, CPU 11 accesses free memory area 18 of a corresponding memory module in which a failure has not occurred using the unidirectional bus. In addition, in the case in which an access to the memory module in which a failure has not occurred is requested, CPU 11 sends and receives data as usual to and from the memory module using the unidirectional bus (step B7).
Next, in order to insert the memory module recovered from the failure (or a new memory module), CPU 11 confirms whether or not the start of hot swap insertion processing for making it possible to insert a memory module is requested (step B8). The hot swap insertion processing is started, for example, in the case in which a predetermined command is supplied via the input device provided in the information processing apparatus or the case in which a predetermined command is sent via a network or the like. In the case in which the hot swap insertion processing is not requested, CPU 11 returns to the processing of step B7 to continue the above-described processing at the time of hot swap.
In the case in which the start of the hot swap insertion processing is requested, first, CPU 11 switches the control, which was switched so as to access free memory area 18 of memory module 12, to the control for accessing the original memory module 12 (step B9). Then, when dummy module 16 is removed and the memory module 12 recovered from the failure (or a new memory module) is inserted instead of dummy module 16, CPU 11 copies data in each memory module corresponding to the address space of the failed memory module to the inserted memory module 12 (step B 10) and shifts to the normal operation.
According to the constitution of this embodiment, the hot swap function can be realized. In addition, since the free memory area of the memory module in which a failure has not occurred, which is accessible at a high speed compared with the hard disk device, is accessed at the time when an access to the failed memory module is requested, time for accessing a memory area corresponding to the failed memory module can be reduced further compared with the first embodiment. Moreover, since the memory system can be operated by the unidirectional bus even at the time of hot swap, efficiency of use of the bus is prevented from falling.
As shown in
As in the fifth embodiment, data in a failed memory module is copied to, for example, free memory areas of the other memory modules in which a failure has not occurred from a hard disk device. The data in the failed memory module may be copied to a mirror memory module or a graphics memory from the hard disk device as in the second or the third embodiment.
In addition, as in the fifth embodiment, the memory system of this embodiment may have only one of the unidirectional buses connected in buffer section 310 shown in
As shown in
Next, an operation at the time of hot swap of the memory system of this embodiment will be described with reference to
Note that the operation of the memory system described below will be described with the case in which the memory modules and the first and second memory controllers are controlled by a CPU provided in an information processing apparatus as an example. However, it is also possible to control the operation of the memory system with the first and second memory controllers. In that case, the first and the second memory controllers are constituted by a DSP or the like which executes processing described below in accordance with a predetermined command.
As shown in
In the case in which a failure has occurred in an arbitrary memory module, the CPU starts hot swap execution processing for making it possible to remove the failed memory module (step C3). The hot swap execution processing may be started, for example, in the case in which a predetermined command is supplied via an input device (a keyboard, a mouse, etc.) provided in the information processing apparatus or in the case in which a predetermined command is sent via a network or the like.
In the hot swap execution processing, first, the CPU detects an address space (memory area) of the failed memory module (step C4) and dispersedly copies data in the hard disk device corresponding to the memory area to the free memory spaces in the respective memory modules in which a failure has not occurred (step C5). In addition, the CPU switches memory control so as to access the mirrored data in the other memory modules in response to a request to access the failed memory module (step C6).
Moreover, the CPU sends an FET control signal for turning on FET switch 19 corresponding to the failed memory module and turning off FET switches 19 corresponding to the memory modules in which a failure has not occurred to the first memory controller (step C7).
When the failed memory module is removed, thereafter, in the case in which an access to the failed memory module is requested, the CPU accesses the free memory area of a corresponding memory module in which a failure has not occurred using the unidirectional bus. In addition, in the case in which an access to the memory module in which a failure has not occurred is requested, the CPU sends and receives data as usual to and from the memory module using the unidirectional bus (step C8).
Next, in order to insert the memory module recovered from the failure (or a new memory module), the CPU confirms whether or not the start of hot swap insertion processing for making it possible to insert a memory module is requested (step C9). The hot swap insertion processing is started, for example, in the case in which a predetermined command is supplied via the input device provided in the information processing apparatus or the case in which a predetermined command is sent via a network or the like. In the case in which the hot swap insertion processing is not requested, the CPU returns to the processing of step C8 to continue the above-described processing at the time of hot swap.
In the case in which the start of the hot swap insertion processing is requested, first, the CPU switches the control, which was switched so as to access the free memory area of the memory module, to the control for accessing the original memory module (step C10). In addition, the CPU sends an FET control signal for turning off FET switches 19 corresponding to all the memory modules to first memory controller 23 (step C11). Then, when the memory module recovered from the failure (or a new memory module) is inserted, the CPU copies data in the free memory area of each memory module corresponding to the address space in which the failure was detected to the inserted memory module (step C12) and shifts to the normal operation.
According to the constitution of this embodiment, as in the fifth embodiment, the hot swap function can be realized. In addition, since the free memory area of the memory module in which a failure has not occurred, which is accessible at a high speed compared with the hard disk device, is accessed at the time when an access to the failed memory module is requested, time for accessing a memory area corresponding to the failed memory module can be reduced further compared with the first embodiment. Moreover, since the memory system can be operated by the unidirectional bus even at the time of hot swap, efficiency of use of the bus is prevented from falling.
As shown in
According to this embodiment, even with the memory system in which the memory controller and the plurality of memory modules are not connected in a ring shape but connected in series by a bus as shown in
As shown in
The short pins 71 are arranged opposedly on connectors 70 so as to short-circuit each other when there is no memory module between them as shown in
Data in a failed memory module is copied from a hard disk device to, for example, free memory areas of the other memory modules in which a failure has not occurred. The data in the failed memory module may be copied from the hard disk device to a mirror memory module or a graphics memory in the same manner as the second embodiment or the third embodiment.
In addition, as in the fifth embodiment, the memory system of this embodiment may have only one of a unidirectional bus connected in buffer section 310 shown in
Next, an operation at the time of hot swap of the memory system of this embodiment will be described with reference to
Note that the operation of the memory system described below will be described with the case in which the memory modules and the first and the second memory controllers are controlled by the CPU provided in the information processing apparatus as an example. However, it is also possible to control the operation of the memory system with the first and the second controllers. In that case, the first and the second memory controllers are constituted by a DSP or the like which executes processing described below in accordance with a predetermined command.
As shown in
In the case in which a failure has occurred in an arbitrary memory module, the CPU starts hot swap execution processing for making it possible to remove the failed memory module (step D3). The hot swap execution processing may be started, for example, in the case in which a predetermined command is supplied via an input device (a keyboard, a mouse, etc.) provided in the information processing apparatus or in the case in which a predetermined command is sent via a network or the like.
In the hot swap execution processing, first, the CPU detects an address space (memory area) of the failed memory module (step D4) and dispersedly copies data in the hard disk device corresponding to the memory area to the free memory spaces in the respective memory modules in which a failure has not occurred (step D5). In addition, the CPU switches memory control so as to access the mirrored data in the other memory modules in response to a request to access the failed memory module (step D6).
When the short pins 71 short-circuit by removing the failed memory module, in the case in which an access to the failed memory module is requested, the CPU accesses a free memory area of a corresponding memory module in which a failure has not occurred using the unidirectional bus. In addition, in the case in which an access to the memory module in which a failure has not occurred is requested, the CPU performs transmission and reception of data as usual to and from the memory module using the unidirectional bus (step D7).
Next, in order to insert the memory module recovered from the failure (or a new memory module), the CPU confirms whether or not the start of hot swap insertion processing for making it possible to insert a memory module is requested (step D8). The hot swap insertion processing is started, for example, in the case in which a predetermined command is supplied via the input device provided in the information processing apparatus or the case in which a predetermined command is sent via a network or the like. In the case in which the hot swap insertion processing is not requested, the CPU returns to the processing of step D7 to continue the above-described processing at the time of hot swap.
In the case in which the start of the hot swap insertion processing is requested, first, the CPU switches the control, which was switched so as to access the free memory area of the memory module, to the control for accessing the original memory module (step D9). Then, when the memory module has recovered from the failure (or a new memory module) is inserted and the short-circuit of the short pins is released, the CPU copies data in the free memory area of each memory module corresponding to the address space in which the failure was detected to the inserted memory module (step D10) and shifts to the normal operation.
According to the constitution of this embodiment, as in the fifth embodiment, the hot swap function can be realized. In addition, since the free memory area of the memory module in which a failure has not occurred, which is accessible at a high speed compared with the hard disk device, is accessed at the time when an access to the failed memory module is requested, time for accessing a memory area corresponding to the failed memory module can be reduced further compared with the first embodiment. Moreover, since the memory system can be operated by the unidirectional bus even at the time of hot swap, efficiency of use of the bus is prevented from falling.
While preferred embodiments of the present invention have been described using specific terms, such description is for illustrative purposes only, and it is to be understood that changes and variations may be made without departing from the spirit or scope of the following claims.
Number | Date | Country | Kind |
---|---|---|---|
2002-349867 | Dec 2002 | JP | national |
Number | Date | Country | |
---|---|---|---|
Parent | 10724164 | Dec 2003 | US |
Child | 12391783 | US |