Patents by Inventor John M. MacLaren

John M. MacLaren has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10769013
    Abstract: Various embodiments provide for caching of error checking data for memory having inline storage configurations for primary data and error checking data for the primary data. In particular, various embodiments described herein provide for error checking data caching and cancellation of error checking data read commands for memory having inline storage configurations for primary data and associated error checking data. Additionally, various embodiments described herein provide for combining/canceling of error checking data write commands for memory having inline storage configurations for primary data and associated error checking data.
    Type: Grant
    Filed: June 11, 2018
    Date of Patent: September 8, 2020
    Assignee: Cadence Design Systems, Inc.
    Inventors: John M. MacLaren, Landon Laws, Carl Nels Olson, Thomas J. Shepherd
  • Patent number: 10642538
    Abstract: Various embodiments provide for a multi-channel memory interface capable of supporting a multi-channel memory module (e.g., DIMM) that combines different memory types, such as DDR4/DDR5, DDR5/LPDDR5, or LPDDR4/LPDDR5, through a single physical layer (PHY) interface.
    Type: Grant
    Filed: September 28, 2018
    Date of Patent: May 5, 2020
    Assignee: Cadence Design Systems, Inc.
    Inventors: John M. MacLaren, Jeffrey S. Earl, Anne Hughes
  • Patent number: 10642684
    Abstract: Various embodiments described herein provide for grouping read-modify-writes (RMWs) such that multiple RMW command sequences can be executed (or rearranged in the command queue) in an interleaved manner rather than being executed in order. In particular, various embodiments described herein split the read and write components (commands) of multiple RMW command sequences, group the read components in the command queue to execute consecutively, and group the write components in the command queue to execute consecutively.
    Type: Grant
    Filed: June 28, 2018
    Date of Patent: May 5, 2020
    Assignee: Cadence Design Systems, Inc.
    Inventors: John M. MacLaren, Anne Hughes, Thomas J. Shepherd, Carl Nels Olson
  • Patent number: 10579470
    Abstract: Various embodiments provide for a memory controller capable of detecting an error on addressing (address error or address fault) of memory commands for a memory device implementing an inline storage configuration of primary data with associated error checking data. According to some embodiments, the memory controller indicates that an address error of a particular memory command has occurred (or likely occurred) by detecting when a plurality of data errors is produced by a plurality of error checks performed on primary data resulting from the particular memory command. Various embodiments described herein allow both single-bit error detection and correction, and address protection to exist in a memory solution implementing an inline error checking data storage configuration, such as inline ECC storage configuration.
    Type: Grant
    Filed: July 26, 2018
    Date of Patent: March 3, 2020
    Assignee: Cadence Design Systems, Inc.
    Inventors: John M. MacLaren, Carl Nels Olson
  • Patent number: 10534565
    Abstract: A device including an address extraction for a data burst associated with a host processor and to map the data burst to a memory according to a rotation is provided. The device includes a splitter to separate a first command that associates the data burst with a first round in the rotation, and a selection logic to select, from the first round in the rotation, a first bank group at the address in the memory to execute the first command, and execution logic to receive the data burst and the address in the memory to activate the first bank group at the address in the memory, and to schedule an execution of the first command based on an availability of a second bank group from the first round in the rotation. A system and a non-transitory computer readable medium storing instructions to use the device are also provided.
    Type: Grant
    Filed: April 11, 2018
    Date of Patent: January 14, 2020
    Assignee: CADENCE DESIGN SYSTEMS, INC.
    Inventors: Bikram Banerjee, Anne Hughes, John M. MacLaren
  • Patent number: 10303543
    Abstract: A system and method are provided to control error-protected access to a memory device having address integrity protection for data words of memory transactions. A communication port receives a command having a port address, which is adaptively converted to a memory address by an interface portion. The interface portion includes an adaptation stage carrying out a predefined adaptation response on an address propagated therethrough during a clock cycle of operation. An address protection portion configures the adaptation stage to maintain the predefined adaptation response over at least two clock cycles. Address error is detected based on comparison of output addresses respectively generated upon iterative propagation of the same input address through the adaptation stage over the clock cycles. A command control portion executes to adaptively split each command received from the interface portion, as well as the corresponding memory address according to an inline storage configuration of the memory device.
    Type: Grant
    Filed: May 31, 2017
    Date of Patent: May 28, 2019
    Assignee: Cadence Design Systems, Inc.
    Inventor: John M. MacLaren
  • Patent number: 7320086
    Abstract: A computer system includes a plurality of memory modules that contain semiconductor memory, such as DIMMs. The system includes a host/data controller that utilizes an XOR engine to store data and parity information in a striped fashion on the plurality of memory modules to create a redundant array of industry standard DIMMs (RAID). The host/data controller also interleaves data on a plurality of channels associated with each of the plurality of memory modules. The system implements error interrupt control, ECC error reporting, cartridge error power down procedures in response to command errors, storage of error information in unused segments of each DIMM, hot-pug procedure indicator and remote tagging capabilities of memory cartridges and DIMMs.
    Type: Grant
    Filed: December 1, 2005
    Date of Patent: January 15, 2008
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Tim Majni, Gary J. Piccirillo, John M. MacLaren, Robert A. Lester, John E. Larson, Jerome J. Johnson, Benjamin H. Clark, Patrick L. Ferguson, Siamak Tavallaei, Jeffrey S. Autor, Christian H. Post, Dan Fink, Jeffery Galloway, Bret D. Roscoe
  • Patent number: 7194577
    Abstract: A computer system includes a plurality of memory modules that contain semiconductor memory, such as DIMMs. The system includes a host/data controller that utilizes an XOR engine to store data and parity information in a striped fashion on the plurality of memory modules to create a redundant array of industry standard DIMMs (RAID). The host/data controller also interleaves data on a plurality of channels associated with each of the plurality of memory modules. To optimize memory bandwidth and reduce memory latency, various techniques are implemented in the present RAID system. Present techniques include providing dual memory arbiters, sorting read cycles by chip select or bank address, providing programmable upper and lower boundary registers to facilitate programmable memory mapping, and striping and interleaving memory data to provide a burst length of one.
    Type: Grant
    Filed: August 29, 2003
    Date of Patent: March 20, 2007
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Jerome J. Johnson, Benjamin H. Clark, Gary J. Piccirillo, John M. MacLaren
  • Patent number: 7116241
    Abstract: A processor-based device having a plurality of memory cartridges secured within a chassis by a lever system. The processor-based device comprises an indication system to indicate memory system operating conditions. Each memory cartridge has a protective assembly to protect memory elements within the memory cartridge when the memory cartridge is removed from the processor-based device. The processor-based device is operable such that at least one memory cartridge may be removed from the processor-based device without affecting operation of the processor-based device.
    Type: Grant
    Filed: May 14, 2003
    Date of Patent: October 3, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Christian H. Post, George D. Megason, Brett D. Roscoe, Paul Santeler, John M. MacLaren, John E. Larson, Jeffery Galloway, Siamak Tavallaei, Tim W. Majni, Robert Allan Lester, Anisha Anand, Eric Rose
  • Patent number: 7044770
    Abstract: A technique for identifying the location of electrical components, such as memory cartridges which have been disposed on a substrate. More specifically, a connector configured to be coupled to a first substrate and configured to receive a second substrate, wherein the connector includes an identification device uniquely configured to provide location information and to electrically couple a plurality of location identification signals to the second substrate, the electrical signals being received from traces on the first substrate.
    Type: Grant
    Filed: January 26, 2004
    Date of Patent: May 16, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: John M. MacLaren, John Larson
  • Patent number: 7028213
    Abstract: A computer system includes a plurality of memory modules that contain semiconductor memory, such as DIMMs. The system includes a host/data controller that utilizes an XOR engine to store data and parity information in a striped fashion on the plurality of memory modules to create a redundant array of industry standard DIMMs (RAID). The host/data controller also interleaves data on a plurality of channels associated with each of the plurality of memory modules. The system implements error interrupt control, ECC error reporting, cartridge error power down procedures in response to command errors, storage of error information in unused segments of each DIMM, hot-pug procedure indicator and remote tagging capabilities of memory cartridges and DIMMs.
    Type: Grant
    Filed: September 28, 2001
    Date of Patent: April 11, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Tim Majni, Gary J. Piccirillo, John M. MacLaren, Robert A. Lester, John E. Larson, Jerome J. Johnson, Benjamin H. Clark, Patrick L. Ferguson, Siamak Tavallaei, Jeffrey S. Autor, Christian H. Post, Dan Fink, Jeffery Galloway, Bret D. Roscoe
  • Patent number: 7010652
    Abstract: A computer system includes a plurality of memory modules that contain semiconductor memory, such as DIMMs. The system includes a host/data controller that utilizes an XOR engine to store data and parity information in a striped fashion on the plurality of memory modules to create a redundant array of industry standard DIMMs (RAID). The host/data controller also interleaves data on a plurality of channels associated with each of the plurality of memory modules.
    Type: Grant
    Filed: August 27, 2004
    Date of Patent: March 7, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Gary J. Piccirillo, John M. MacLaren, Robert A. Lester, John E. Larson, Jerome J. Johnson, Benjamin H. Clark
  • Patent number: 6981095
    Abstract: The control logic for a hot-pluggable memory cartridge for use in a redundant memory system. To implement a hot-pluggable memory cartridge in a redundant memory system, control logic to control the sequence of events for powering-up and powering-down a memory cartridge is provided.
    Type: Grant
    Filed: August 5, 2003
    Date of Patent: December 27, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: John M. MacLaren, Jerome J. Johnson, Robert A. Lester, Gary J. Piccirillo, John E. Larson, Christian H. Post, Jeffery Galloway, Ho M. Lai, Eric Rose
  • Patent number: 6975241
    Abstract: A processor-based device having a plurality of memory cartridges secured within a chassis by a lever system. The processor-based device comprises an indication system to indicate memory system operating conditions. Each memory cartridge has a protective assembly to protect memory elements within the memory cartridge when the memory cartridge is removed from the processor-based device. The processor-based device is operable such that at least one memory cartridge may be removed from the processor-based device without affecting operation of the processor-based device.
    Type: Grant
    Filed: May 14, 2003
    Date of Patent: December 13, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Christian H. Post, George D. Megason, Brett D. Roscoe, Paul Santeler, John M. MacLaren, John E. Larson, Jeffery Galloway, Siamak Tavallaei, Tim W. Majni, Robert Allan Lester, Anisha Anand, Eric Rose
  • Patent number: 6938133
    Abstract: A computer system includes a plurality of memory modules that contain semiconductor memory, such as DIMMs. The system includes a host/data controller that utilizes an XOR engine to store data and parity information in a striped fashion on the plurality of memory modules to create a redundant array of industry standard DIMMs (RAID). The host/data controller also interleaves data on a plurality of channels associated with each of the plurality of memory modules. To optimize memory bandwidth and reduce memory latency, various techniques are implemented in the present RAID system. Present techniques include providing dual memory arbiters, sorting read cycles by chip select or bank address, providing programmable upper and lower boundary registers to facilitate programmable memory mapping, and striping and interleaving memory data to provide a burst length of one.
    Type: Grant
    Filed: September 28, 2001
    Date of Patent: August 30, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Jerome J. Johnson, Benjamin H. Clark, Gary J. Piccirillo, John M. MacLaren
  • Patent number: 6854070
    Abstract: A method of adding memory capacity to a computer system. The computer system comprises a redundant memory system including a plurality of memory cartridges. By powering-down a memory cartridge, adding an additional memory module to the memory cartridge, and powering-up the memory cartridge for each memory cartridge in the system, the system can transition from a redundant mode of operation to a non-redundant mode of operation for each power-down, thus allowing the computer system to remain functional during the addition of the memory module. Alternatively, memory cartridges with higher memory capacity than those currently present in the computer system can be used to replace existing memory cartridges in the computer system, using the same techniques.
    Type: Grant
    Filed: January 25, 2001
    Date of Patent: February 8, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: 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, Eric Rose
  • Patent number: 6845472
    Abstract: A system and technique for detecting data errors in a memory device. More specifically, data errors in a memory device are detected by initiating an internal READ command or cleansing operation from a set of logic which is internal to the memory system in which the memory devices reside. Rather than relying on a READ command to be issued from an external device, via a host controller, the cleansing logic initiates a cleansing routine in response to an event such as an operator instruction or a periodic schedule. By implementing the cleansing operation, the system does not rely on external READ commands to verify data integrity. Further, a monitoring device is coupled between the cleansing logic and a memory scheduler. The monitoring device provides a feed back mechanism from which to vary the frequency of certain memory requests such as the cleansing and scrubbing operations. The cleansing routine may rely on typical ECC error logging mechanisms and may be used in a RAID memory architecture.
    Type: Grant
    Filed: January 25, 2001
    Date of Patent: January 18, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: William J. Walker, John M. MacLaren
  • Patent number: 6832286
    Abstract: A computer system includes a plurality of memory modules that contain semiconductor memory, such as DIMMs. The system includes a host/data controller that utilizes an XOR engine to store data and parity information in a striped fashion on the plurality of memory modules to create a redundant array of industry standard DIMMs (RAID). To optimally run back to back cycles to the memory modules, a technique for providing de-rating parameters such that unnecessary latencies designed into the memory devices can be removed while the system is executing requests. By removing any unnecessary latency, cycle time and overall system performance can be improved.
    Type: Grant
    Filed: June 25, 2002
    Date of Patent: December 14, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Jerome J. Johnson, Benjamin H. Clark, Gary J. Piccirillo, John M. MacLaren
  • Patent number: 6832340
    Abstract: A system and technique for correcting data errors in a memory device. More specifically, data errors in a memory device are corrected by scrubbing the corrupted memory device. Generally, a host controller delivers a READ command to a memory controller. The memory controller receives the request and retrieves the data from a memory sub-system. The data is delivered to the host controller. If an error is detected, a scrub command is induced through the memory controller to rewrite the corrected data through the memory sub-system. Once a scrub command is induced, an arbiter schedules the scrub in the queue. Because a significant amount of time can occur before initial read in the scrub write back to the memory, an additional controller may be used to compare all subsequent READ and WRITE commands to those scrubs scheduled in the queue.
    Type: Grant
    Filed: January 25, 2001
    Date of Patent: December 14, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: John E. Larson, John M. MacLaren, Robert A. Lester, Gary J. Piccirillo, Jerome J. Johnson, Patrick L. Ferguson
  • Patent number: 6785835
    Abstract: A computer system includes a plurality of memory modules that contain semiconductor memory, such as DIMMs. The system includes a host/data controller that utilizes an XOR engine to store data and parity information in a striped fashion on the plurality of memory modules to create a redundant array of industry standard DIMMs (RAID). The system supports DIMMs having X4 and X8 configurations. The system also transitions between various states, including a redundant state and a non-redundant state, to facilitate “hot-plug” capabilities utilizing its removable memory cartridges.
    Type: Grant
    Filed: January 25, 2001
    Date of Patent: August 31, 2004
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: John M. MacLaren, Paul Santeler, Kenneth A. Jansen, Sompong P. Olarig, Robert A. Lester, Patrick L. Ferguson, John E. Larson, Jerome J. Johnson, Gary J. Piccirillo