Fault injection in dynamic random access memory (‘DRAM’) modules for performing built-in self-tests (‘BISTs’) including establishing, in the mode registers of the DRAM modules by the memory controller through the shared address bus, an injection of a fault into one or more signal lines of a DRAM module, the fault characterized by a fault type; writing data by the memory controller through a data bus to the DRAM modules, the data identifying a particular DRAM module; and responsive to receiving the data, injecting, by the particular DRAM module, the fault characterized by the fault type into the one or more signal lines of the particular DRAM module.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A method of fault injection in dynamic random access memory (‘DRAM’) modules for performing built-in self-tests (‘BISTs’), the DRAM modules managed by a memory controller, each DRAM module comprising a mode register, the mode registers of the DRAM modules connected to the memory controller through a shared address bus, each mode register comprising a segment indicating whether to inject a fault into one or more signal lines of a DRAM module, a segment identifying one or more signal lines of a DRAM module on which to inject a fault, and a segment including a fault type, the method comprising: establishing, in the mode registers of the DRAM modules by the memory controller through the shared address bus, an injection of a fault into one or more signal lines of a DRAM module, the fault characterized by a fault type; writing data by the memory controller through a data bus to the DRAM modules, the data identifying a particular DRAM module; and responsive to receiving the data, injecting, by the particular DRAM module, the fault characterized by the fault type into the one or more signal lines of the particular DRAM module.
2. The method of claim 1 further comprising: executing, by the particular DRAM module, a BIST; logging, by the memory controller, results of the BIST; and clearing, from the mode registers of the DRAM modules by the memory controller, the injection of the fault into one or more signal lines of a DRAM module.
3. The method of claim 1 wherein establishing an injection of a fault into one or more signal lines of a DRAM module further comprises: setting a segment of the mode registers of the DRAM modules to indicate that a fault is to be injected into one or more signal lines of a DRAM module, setting a segment of the mode registers to identify one or more signal lines of a DRAM module on which to inject the fault; and setting a segment of the mode registers to identify a fault type.
4. The method of claim 1 wherein injecting the fault characterized by the fault type into the one or more signal lines of the particular DRAM module: determining, by the particular DRAM module from a segment of the particular DRAM module's mode register, that a fault is to be injected into one or more signal lines of the particular DRAM; identifying, by the particular DRAM module from a segment of the particular DRAM module's mode register, the one or more signal lines on which to inject the fault; and identifying, by the particular DRAM module from a segment of the particular DRAM module's mode register, the fault type of the fault to inject.
5. The method of claim 1 wherein injecting, by the particular DRAM module, the fault characterized by the fault type on the one or more signal lines of the particular DRAM module includes forcing one or more signal lines high.
6. The method of claim 1 wherein injecting, by the particular DRAM module, the fault characterized by the fault type on the one or more signal lines of the particular DRAM module includes forcing one or more signal lines low.
7. The method of claim 1 wherein injecting, by the particular DRAM module, the fault characterized by the fault type on the one or more signal lines of the particular DRAM module includes electrically disconnecting the one or more signal lines.
8. The method of claim 1 wherein injecting, by the particular DRAM module, the fault characterized by the fault type on the one or more signal lines of the particular DRAM module includes introducing crosstalk between one or more signal lines.
9. An apparatus for fault injection in dynamic random access memory (‘DRAM’) modules for performing built-in self-tests (‘BISTs’), the DRAM modules managed by a memory controller, each DRAM module comprising a mode register, the mode registers of the DRAM modules connected to the memory controller through a shared address bus, each mode register comprising a segment indicating whether to inject a fault into one or more signal lines of a DRAM module, a segment identifying one or more signal lines of a DRAM module on which to inject a fault, and a segment including a fault type, the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions capable of: establishing, in the mode registers of the DRAM modules by the memory controller through the shared address bus, an injection of a fault into one or more signal lines of a DRAM module, the fault characterized by a fault type; writing data by the memory controller through a data bus to the DRAM modules, the data identifying a particular DRAM module; and responsive to receiving the data, injecting, by the particular DRAM module, the fault characterized by the fault type into the one or more signal lines of the particular DRAM module.
10. The apparatus of claim 9 further comprising computer program instructions capable of: executing, by the particular DRAM module, a BIST; logging, by the memory controller, results of the BIST; and clearing, from the mode registers of the DRAM modules by the memory controller, the injection of the fault into one or more signal lines of a DRAM module.
11. The apparatus of claim 9 wherein establishing an injection of a fault into one or more signal lines of a DRAM module further comprises: setting a segment of the mode registers of the DRAM modules to indicate that a fault is to be injected into one or more signal lines of a DRAM module, setting a segment of the mode registers to identify one or more signal lines of a DRAM module on which to inject the fault; and setting a segment of the mode registers to identify a fault type.
12. The apparatus of claim 9 wherein injecting the fault characterized by the fault type into the one or more signal lines of the particular DRAM module: determining, by the particular DRAM module from a segment of the particular DRAM module's mode register, that a fault is to be injected into one or more signal lines of the particular DRAM; identifying, by the particular DRAM module from a segment of the particular DRAM module's mode register, the one or more signal lines on which to inject the fault; and identifying, by the particular DRAM module from a segment of the particular DRAM module's mode register, the fault type of the fault to inject.
13. The apparatus of claim 9 wherein injecting, by the particular DRAM module, the fault characterized by the fault type on the one or more signal lines of the particular DRAM module includes forcing one or more signal lines high.
14. The apparatus of claim 9 wherein injecting, by the particular DRAM module, the fault characterized by the fault type on the one or more signal lines of the particular DRAM module includes forcing one or more signal lines low.
15. The apparatus of claim 9 wherein injecting, by the particular DRAM module, the fault characterized by the fault type on the one or more signal lines of the particular DRAM module includes electrically disconnecting the one or more signal lines.
16. The apparatus of claim 9 wherein injecting, by the particular DRAM module, the fault characterized by the fault type on the one or more signal lines of the particular DRAM module includes introducing crosstalk between one or more signal lines.
17. A dynamic random access memory (‘DRAM’) module for fault injection for performing built-in self-tests (‘BISTs’), the DRAM module comprising: a mode register, the mode register connected to a memory controller through a shared address bus, the mode register comprising: a segment indicating whether to inject a fault into one or more signal lines of the DRAM module; a segment identifying one or more signal lines of the DRAM module on which to inject a fault; and a segment including a fault type.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
December 19, 2007
November 2, 2010
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.