Reuse of functional data buffers for pattern buffers in XDR DRAM
AssigneeInternational Business Machines Corporation
InventorsMark David Bellows, Kent Harold Haselhorst, Paul Allen Ganfield, Tolga Ozguner
Life of this patent
Estimating the term…
Abstract
A mechanism is provided to reuse functional data buffers. With Extreme Data Rate (XDR™) Dynamic Random Access Memory (DRAM), test patterns are employed to dynamically calibrate data with the clock. To perform this task, data buffers are employed to store data and commands for the calibration patterns. However, there are different procedures and requirements for transmission and reception calibrations. Hence, to reduce the amount of hardware needed to perform transmission and reception calibrations, the data buffers employ additional front end circuitry to reuse the buffers for both tasks.
Claims6
A method for effecting calibration of Random Access Memories (RAMs), comprising:
- storing a serial data pattern in a random access memory;
- establishing at least one store queue to store a calibration pattern, wherein the calibration pattern comprises a plurality of entries;
- receiving a calibration command to calibrate the random access memory;
- responsive to receiving the calibration command, determining whether the calibration command is either a receive calibration or a transmit calibration;
- responsive to receiving the calibration command that is the transmit calibration, converting the plurality of entries of the calibration pattern to a plurality of write commands and then to a plurality of read commands with expects;
- calibrating the random access memory by comparing the serial data pattern to the calibration pattern;
- and
- responsive to receiving the calibration command that is the receive calibration, converting the plurality of entries of the calibration pattern to a plurality of read commands with expects, wherein converting the plurality of entries of the calibration pattern to the plurality of read commands with expects is performed by front end circuitry within a memory interface unit that is at least configured to convert the plurality of entries to the plurality of read commands with expects.
A computer program product for effecting calibration of RAMs, the computer program product having a non-transitory medium with a computer program embodied thereon, the computer program comprising:
- computer code for storing a serial data pattern in a random access memory;
- computer code for establishing at least one store queue to store a calibration pattern, wherein the calibration pattern comprises a plurality of entries;
- computer code for receiving a calibration command to calibrate the random access memory;
- computer code for, responsive to receiving the calibration command, computer code for determining whether the calibration command is either a receive calibration or a transmit calibration;
- responsive to receiving the calibration command that is the transmit calibration, computer code for converting the plurality of entries of the calibration pattern to a plurality of write commands and then to a plurality of read commands with expects;
- and
- computer code for calibrating the random access memory by comparing the serial data pattern to the calibration pattern;
- and
- responsive to receiving the calibration command that is the receive calibration, computer code for converting the plurality of entries of the calibration pattern to a plurality of read commands with expects, wherein the computer code for converting the plurality of entries of the calibration pattern to the plurality of read commands with expects is executed by front end circuitry within a memory interface unit that is at least configured to convert the plurality of entries to the plurality of read commands with expects.
A processor for effecting calibration of Extreme RAMs, the processor including a computer program comprising:
- computer code for storing a serial data pattern in a random access memory;
- computer code for establishing at least one store queue to store a calibration pattern, wherein the calibration pattern comprises a plurality of entries;
- computer code for receiving a calibration command to calibrate the random access memory;
- and
- computer code for responsive to receiving the calibration command, computer code for determining whether the calibration command is either a receive calibration or a transmit calibration;
- responsive to receiving the calibration command that is the transmit calibration, computer code for converting the plurality of entries of the calibration pattern to a plurality of write commands and then to a plurality of read commands with expects;
- and
- computer code for calibrating the random access memory by comparing the serial data pattern to the calibration pattern;
- and
- responsive to receiving the calibration command that is the receive calibration, computer code for converting the plurality of entries of the calibration pattern to a plurality of read commands with expects, wherein the computer code for converting the plurality of entries of the calibration pattern to the plurality of read commands with expects is executed by front end circuitry within a memory interface unit that is at least configured to convert the plurality of entries to the plurality of read commands with expects.
Dependencies are inferred from the claim text.