Claims
- 1. A computer system comprising:
a host/data controller; and a memory system coupled to the host/data controller, the memory system comprising a plurality of memory modules, each of the plurality of memory modules adapted to contain at least one semiconductor memory device and adapted to facilitate insertion and removal of the at least one semiconductor memory device while the computer system is operating, wherein the host/data controller facilitates transition of the memory system between a redundant mode of operation and a non-redundant mode of operation.
- 2. The computer system, as set forth in claim 1, wherein the host/data controller comprises error detection logic configured to detect errors in data stored in the memory modules.
- 3. The computer system, as set forth in claim 1, wherein the at least one semiconductor memory device comprises a dual inline memory module (DIMM).
- 4. The computer system, as set forth in claim 1, wherein each of the plurality of memory modules is adapted to contain at least five of the semiconductor memory devices.
- 5. The computer system, as set forth in claim 1, wherein the plurality of memory modules comprise five memory modules.
- 6. The computer system, as set forth in claim 1, comprising a memory controlling system coupled between the host/data controller and the plurality of memory modules, the memory controlling system configured to control access to the plurality of memory modules.
- 7. The computer system, as set forth in claim 6, wherein the memory controlling system comprises error detection logic configured to detect errors in data stored in the plurality of memory modules.
- 8. The computer system, as set forth in claim 6, wherein the memory controlling system comprises a plurality of memory controllers, each of the plurality of memory controllers being coupled to a respective one of the plurality of memory modules by a respective bus segment.
- 9. The computer system, as set forth in claim 1, wherein the host/data controller writes data in a striped fashion across the plurality of memory modules.
- 10. The computer system, as set forth in claim 9, wherein the host/data controller comprises an exclusive OR engine adapted to receive data to be written to the plurality of memory modules, create parity information, and deliver the data and parity information in a striped fashion across the plurality of memory modules.
- 11. The computer system, as set forth in claim 9, wherein the host/data controller comprises an exclusive OR engine adapted to receive data and parity information to be read from the plurality of memory modules and to re-create a faulty portion of the data and parity information.
- 12. A method of controlling a memory system comprising the acts of:
(a) operating in a redundant state; (b) if a fault occurs, transitioning from the redundant state to operate in a redundant-fault state; (c) if the fault does not reoccur, transitioning from the redundant-fault state to operate in the redundant state; (d) if the fault reoccurs to a given extent, providing an indication of the fault reoccurrence; (e) transitioning from the redundant-fault state to operate in a non-redundant state to facilitate curing the fault; (f) if the reoccurring fault is cured, transitioning from the non-redundant state to operate in a rebuild state in which a portion of the memory system is rebuilt; and (g) when the portion of the memory system is rebuilt, transitioning from the non-redundant state to operate in the redundant state.
- 13. The method, as set forth in claim 12, wherein act (a) comprises the act of utilizing error correction code to correct errors to prevent occurrence of the fault.
- 14. The method, as set forth in claim 12, wherein act (b) comprises the act of exclusive ORing data in the redundant-fault state to correct the fault.
- 15. The method, as set forth in claim 12, wherein act (d) comprises the act of providing a notification to a user that the memory system is operating in the non-redundant mode.
- 16. The method, as set forth in claim 12, wherein act (e) comprises the act of removing a faulty portion of the memory system while the memory system operates in the non-redundant mode.
- 17. The method, as set forth in claim 16, wherein act (e) comprises the act of replacing the faulty portion of the memory system with the portion of the memory system to be rebuilt.
- 18. The method, as set forth in claim 12, wherein act (f) comprises the act of verifying let the portion of the memory system that has been rebuilt.
- 19. A method of controlling a memory system comprising a plurality of memory modules, wherein each of the memory modules contains X4 memory chips, the method comprising the acts of:
(a) during a memory transaction, correcting single bit errors in each of the plurality of memory modules using error correction code; and (b) during the memory transaction, correcting a multi-bit error in one of the plurality of memory modules using an exclusive OR engine.
- 20. The method, as set forth in claim 19, wherein act (b) comprises the act of detecting the multi-bit error using error correction code.
- 21. A method of controlling a memory system comprising a plurality of memory modules, wherein each of the memory modules contains X8 memory chips, the method comprising the acts of:
(a) during a memory transaction, detecting an error in one of the plurality of memory modules using error correction code; and (b) during the memory transaction, correcting the error in one of the plurality of memory modules using an exclusive OR engine.
- 22. The method, as set forth in claim 21, wherein act (a) comprises the act of detecting one of a single bit error and a multi-bit error.
- 23. A device for controlling a memory system comprising a plurality of memory modules, wherein each of the memory modules contains X4 memory chips, the device comprising:
means for correcting single bit errors in each of the plurality of memory modules during a memory transaction; and means for correcting a multi-bit error in one of the plurality of memory modules during a memory transaction.
- 24. The device, as set forth in claim 23, comprising means for detecting the multi-bit error during the memory transaction.
- 25. The device, as set forth in claim 23, wherein the means for correcting the single bit errors comprises error correction code.
- 26. The device, as set forth in claim 23, wherein the means for correcting the multi-bit error comprises an exclusive OR engine.
- 27. The device, as set forth in claim 23, wherein the means for detecting the mulit-bit error comprises error correction code.
- 28. A device for controlling a memory system comprising a plurality of memory modules, wherein each of the memory modules contains X8 memory chips, the device comprising:
means for detecting an error in one of the plurality of memory modules during a memory transaction; and means for correcting the error in one of the plurality of memory modules during the memory transaction.
- 29. The device, as set forth in claim 28, wherein the means for detecting the error comprises error correction code.
- 30. The device, as set forth in claim 28, wherein the means for correcting the error comprises an exclusive OR engine.
- 31. The device, as set forth in claim 28, wherein the error comprises one of a single bit error and a multi-bit error.
- 32. A computer system comprising:
a host/data controller; and a memory system coupled to the host/data controller, the memory system comprising a plurality of removable memory cartridges, each of the plurality of removable memory cartridges adapted to contain at least one semiconductor memory device and an associated memory controller, wherein the host/data controller transitions the memory system from a redundant mode of operation to a non-redundant mode of operation to facilitate removal of one of the plurality of removable memory cartridges while the computer system is operating.
- 33. The computer system, as set forth in claim 32, wherein the host/data controller comprises error detection logic configured to detect errors in data stored in the memory modules.
- 34. The computer system, as set forth in claim 32, wherein the at least one semiconductor memory device comprises a dual inline memory module (DIMM).
- 35. The computer system, as set forth in claim 32, wherein each of the plurality of memory cartridges is adapted to contain at least eight of the semiconductor memory devices.
- 36. The computer system, as set forth in claim 32, wherein the plurality of memory cartridges comprise five memory cartridges.
- 37. The computer system, as set forth in claim 32, wherein the host/data controller writes data in a striped fashion across the plurality of memory cartridges.
- 38. The computer system, as set forth in claim 37, wherein the host/data controller comprises an exclusive OR engine adapted to receive data to be written to the plurality of memory cartridges, create parity information, and deliver the data and parity information in a striped fashion across the plurality of memory cartridges.
- 39. The computer system, as set forth in claim 37, wherein the host/data controller comprises an exclusive OR engine adapted to receive data and parity information to be read from the plurality of memory cartridges and to re-create a faulty portion of the data and parity information.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to Provisional Application Ser. No. 60/177,811, filed on Jan. 25, 2000.
[0002] The following commonly owned applications and patents are hereby incorporated by reference for all purposes:
[0003] U.S. patent application Ser. No. 08/940,419, filed Sep. 30, 1997, entitled “Installation and Removal of Components of a Computer” by Sompong P. Olarig, Kenneth A. Jansen, and Paul A. Santler, issued Aug. 1, 2000, as U.S. Pat. No. 6,098,132;
[0004] U.S. patent application Ser. No. 08/940,282, filed Sep. 30, 1997, entitled “Fault Tolerant Memory” by Paul A. Santler, Kenneth A. Jansen, and Sompong P. Olarig.
[0005] U.S. patent application Ser. No. 09/303,369, filed Apr. 30, 1999, entitled “Replacement, Upgrade and/or Additional of Hot-Pluggable Components in a Computer System” by Theodore F. Emerson, Vincent Nguyen, Peter Michels, and Steve Clohset; and
[0006] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Memory Sub-System Error Cleansing” by William J. Walker, and John M. MacLaren;
[0007] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Hot Replace Power Control Sequence Logic” by John M. MacLaren, Jerome J. Johnson, Robert A. Lester, Gary J. Piccirillo, John E. Larson, and Christian H. Post;
[0008] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Hot-Replace of Memory” by John E. Larson, John M. MacLaren, Jerome J. Johnson, Gary J. Piccirillo, Robert A. Lester, Christian H. Post, Jefferey Galloway, Anisha Anand, Ho M. Lai, and Eric Rose;
[0009] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Hot-Upgrade/Hot-Add Memory” by Jerome J. Johnson, John M. MacLaren, Robert A. Lester, John E. Larson, Gary J. Piccirillo, Christian H. Post, Jeffery Galloway, Ho M. Lai, Anisha Anand, and Eric Rose
[0010] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “R aid Memory” by John M. MacLaren, Paul Santeler, Kenneth A. Jansen, Sompong P. Olarig, Robert A. Lester, Patrick L. Ferguson, John E. Larson, Jerome J. Johnson, and Gary J. Piccirillo;
[0011] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Technique for Identifying Multiple Circuit Components” by John M. MacLaren and John E. Larson;
[0012] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Memory Data Verify Operation” by Robert A. Lester, John M. MacLaren, Patrick L. Ferguson, and John E. Larson;
[0013] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Real-Time Hardware Memory Scrubbing” by John E. Larson, John M. MacLaren, Robert A. Lester, Gary Piccirillo, Jerome J. Johnson, and Patrick L. Ferguson;
[0014] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Hot-Plug Memory Cartridge Power Control Logic” by Ho M. Lai and John M. MacLaren;
[0015] U.S. patent application Ser. No. ______, filed concurrently herewith, entitled “Removable Memory Cartridge System for Use With a Server or Other Processor-Based Device” by Brett D. Roscoe, George D. Megason, and Christian H. Post;
Provisional Applications (1)
|
Number |
Date |
Country |
|
60177811 |
Jan 2000 |
US |