Patents by Inventor Philip Hillier

Philip Hillier 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: 11404105
    Abstract: A write history buffer can prevent write disturb in memory, enabling a reduction in write disturb refresh rate and improvement in performance. A memory device can include circuitry to cause consecutive write commands to the same address to be spaced by an amount of time to reduce incidences of write disturb, and therefore reduce the required write disturb refresh rate and improve performance. In one example, a memory device receives multiple write commands to an address. In response to receipt of the multiple write commands, the first write command is sent to the memory and a timer is started. Subsequent write commands that are received after the first write command and before expiration of the timer are held in a buffer. After expiration of the timer, only the most recent of the subsequent write commands to the address is sent to the memory array.
    Type: Grant
    Filed: December 21, 2020
    Date of Patent: August 2, 2022
    Assignee: Intel Corporation
    Inventors: Akanksha Mehta, Benjamin Graniello, Rakan Maddah, Philip Hillier, Richard P. Mangold, Prashant S. Damle, Kunal A. Khochare
  • Patent number: 11188264
    Abstract: A memory system includes a nonvolatile (NV) memory device with asymmetry between intrinsic read operation delay and intrinsic write operation delay. The system can select to perform memory access operations with the NV memory device with the asymmetry, in which case write operations have a lower delay than read operations. The system can alternatively select to perform memory access operations with the NV memory device where a configured write operation delay that matches the read operation delay.
    Type: Grant
    Filed: February 3, 2020
    Date of Patent: November 30, 2021
    Assignee: Intel Corporation
    Inventors: Shekoufeh Qawami, Philip Hillier, Benjamin Graniello, Rajesh Sundaram
  • Publication number: 20210110862
    Abstract: A write history buffer can prevent write disturb in memory, enabling a reduction in write disturb refresh rate and improvement in performance. A memory device can include circuitry to cause consecutive write commands to the same address to be spaced by an amount of time to reduce incidences of write disturb, and therefore reduce the required write disturb refresh rate and improve performance. In one example, a memory device receives multiple write commands to an address. In response to receipt of the multiple write commands, the first write command is sent to the memory and a timer is started. Subsequent write commands that are received after the first write command and before expiration of the timer are held in a buffer. After expiration of the timer, only the most recent of the subsequent write commands to the address is sent to the memory array.
    Type: Application
    Filed: December 21, 2020
    Publication date: April 15, 2021
    Inventors: Akanksha MEHTA, Benjamin GRANIELLO, Rakan MADDAH, Philip HILLIER, Richard P. MANGOLD, Prashant S. DAMLE, Kunal A. KHOCHARE
  • Publication number: 20200174705
    Abstract: A memory system includes a nonvolatile (NV) memory device with asymmetry between intrinsic read operation delay and intrinsic write operation delay. The system can select to perform memory access operations with the NV memory device with the asymmetry, in which case write operations have a lower delay than read operations. The system can alternatively select to perform memory access operations with the NV memory device where a configured write operation delay that matches the read operation delay.
    Type: Application
    Filed: February 3, 2020
    Publication date: June 4, 2020
    Inventors: Shekoufeh QAWAMI, Philip HILLIER, Benjamin GRANIELLO, Rajesh SUNDARAM
  • Patent number: 10310989
    Abstract: One embodiment provides a memory controller. The memory controller includes a memory controller memory; a timestamp circuitry and a demarcation voltage (VDM) selection circuitry. The timestamp circuitry is to capture a current timer index from a timer circuitry in response to an initiation of a periodic patrol scrub and to compare the current timer index to a stored timestamp. The VDM selection circuitry is to update a state of a sub-block of a memory array, if the state is less than a threshold and a difference between the current timer index and the stored timestamp is nonzero. The timestamp circuitry is further to store the current timer index as a new timestamp.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: June 4, 2019
    Assignee: Intel Corporation
    Inventors: Philip Hillier, Jeffrey W. Ryden, Muthukumar P. Swaminathan, Zion S. Kwok, Kunal A. Khochare, Richard P. Mangold, Prashant S. Damle
  • Publication number: 20190102320
    Abstract: One embodiment provides a memory controller. The memory controller includes a memory controller memory; a timestamp circuitry and a demarcation voltage (VDM) selection circuitry. The timestamp circuitry is to capture a current timer index from a timer circuitry in response to an initiation of a periodic patrol scrub and to compare the current timer index to a stored timestamp. The VDM selection circuitry is to update a state of a sub-block of a memory array, if the state is less than a threshold and a difference between the current timer index and the stored timestamp is nonzero. The timestamp circuitry is further to store the current timer index as a new timestamp.
    Type: Application
    Filed: September 29, 2017
    Publication date: April 4, 2019
    Applicant: INTEL CORPORATION
    Inventors: Philip Hillier, Jeffrey W. Ryden, Muthukumar P. Swaminathan, Zion S. Kwok, Kunal A. Khochare, Richard P. Mangold, Prashant S. Damle
  • Patent number: 9934859
    Abstract: In response to a write operation on a storage element in a non-volatile memory device, a count provided by a global counter is stored to indicate a time at which the write operation occurs on the storage element. In response to receiving a request perform a read operation on the storage element, a determination is made of a demarcation voltage to apply for performing the read operation on the storage element, based on a progress of the global counter since the write operation on the storage element.
    Type: Grant
    Filed: December 27, 2016
    Date of Patent: April 3, 2018
    Assignee: INTEL CORPORATION
    Inventors: Muthukumar P. Swaminathan, Zion S. Kwok, Prashant S. Damle, Kunal A. Khochare, Philip Hillier, Jeffrey W. Ryden, Richard P. Mangold
  • Patent number: 9691492
    Abstract: A predetermined pattern of bits is written to a non-volatile memory device prior to powering down the non-volatile memory device. A plurality of voltages are applied to the non-volatile memory device to determine which voltage of the plurality of voltages allows the predetermined pattern of bits to be read with a least amount of error. The determined voltage is set to be a demarcation voltage for reading from the non-volatile memory device.
    Type: Grant
    Filed: September 29, 2016
    Date of Patent: June 27, 2017
    Assignee: INTEL CORPORATION
    Inventors: Bruce Querbach, Zion S. Kwok, Christopher F. Connor, Philip Hillier, Jeffrey W. Ryden
  • Publication number: 20080052568
    Abstract: In a data processing system having a memory control device including at least two mirrored memory ports, a method, system, and article of manufacture for processing read requests are disclosed herein. In accordance with the method of the present invention, a read request is received on a system interconnect coupling read requestors with memory resources. The received read request is issued only to a specified one of the at least two mirrored memory ports within the memory control device. In response to detecting an unrecoverable error resulting from the read request issued to the one mirrored memory port, the received read request is issued to an alternate of the at least two mirrored memory ports.
    Type: Application
    Filed: October 30, 2007
    Publication date: February 28, 2008
    Inventors: Philip Hillier, Joseph Kirscht, Elizabeth McGlone
  • Publication number: 20080016294
    Abstract: A memory controller optimizes execution of a read/modify/write command by breaking the RMW command into separate and unique read and write commands that do not need to be executed together, but just need to be executed in the proper sequence. The most preferred embodiments use a separate RMW queue in the controller in conjunction with the read queue and write queue. In other embodiments, the controller places the read and write portions of the RMW into the read and write queue, but where the write queue has a dependency indicator associated with the RMW write command in the write queue to insure the controller maintains the proper execution sequence. The embodiments allow the memory controller to translate RMW commands into read and write commands with the proper sequence of execution to preserve data coherency.
    Type: Application
    Filed: July 18, 2007
    Publication date: January 17, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Philip Hillier, William Hovis, Joseph Kirscht
  • Publication number: 20070288676
    Abstract: In a first aspect, a first method is provided for servicing commands. The first method includes the steps of (1) receiving a first command for servicing in a memory controller including a plurality of memory ports, wherein the first command is of a first priority; (2) receiving a second command for servicing in the memory controller, wherein the second command is of a second priority that is higher than the first priority; (3) determining whether the first and second commands will be serviced through the same memory port; and (4) if the first and second commands will not be serviced through the same memory port, servicing the first and second commands during the same time period. Numerous other aspects are provided.
    Type: Application
    Filed: August 23, 2007
    Publication date: December 13, 2007
    Inventors: Philip Hillier, Joseph Kirscht
  • Publication number: 20070288698
    Abstract: A memory controller includes scrub circuitry that performs scrub cycles in a way that does not delay processor reads to memory during the scrub cycle. Atomicity of the scrub operation is assured by protocols set up in the memory controller, not by using an explicit atomic read-correct-write operation. The result is a memory controller that efficiently scrubs memory while minimizing the impact of scrub cycles on system performance.
    Type: Application
    Filed: March 26, 2007
    Publication date: December 13, 2007
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Philip Hillier, Joseph Kirscht, Elizabeth McGlone
  • Publication number: 20060253659
    Abstract: A method and a virtual port register array are provided for implementing shared access to a register array port by multiple sources simultaneously. A plurality of write data stages is provided for transferring write data to a plurality of register arrays from the multiple sources. A plurality of read data stages is provided for transferring read data from the plurality of register arrays to the multiple sources. A respective multiplexer stage is coupled between the write data stages and the physical write port and the read data stages and the physical read port and clocking is provided to alternate register array access and to allow pass-through of only one source request at a time per physical write port and physical read port.
    Type: Application
    Filed: May 5, 2005
    Publication date: November 9, 2006
    Applicant: International Business Machines Corporation
    Inventors: Todd Greenfield, Philip Hillier, Gene Leung
  • Publication number: 20060248432
    Abstract: A method, and apparatus are provided for implementing processor bus speculative data completion in a computer system. A memory controller in the computer system sends uncorrected data from a memory to a processor bus. The memory controller also applies the uncorrected data to error correcting code (ECC) checking and correcting circuit. When a single bit error (SBE) is detected, corrected data is sent to the processor bus a predefined number of cycles after the uncorrected data.
    Type: Application
    Filed: April 28, 2005
    Publication date: November 2, 2006
    Applicant: International Business Machines Corporation
    Inventors: Wayne Barrett, Philip Hillier, Joseph Kirscht, Elizabeth McGlone
  • Publication number: 20060248275
    Abstract: A method, apparatus, system, and signal-bearing medium that, in an embodiment, select a command to send to memory. In an embodiment, the oldest command in a write queue that does not collide with a conflict queue is sent to memory and added to the conflict queue if some or all of the following are true: all of the commands in the read queue collide with the conflict queue, any read command incoming from the processor does not collide with the write queue, the number of commands in the write queue is greater than a first threshold, and all commands in the conflict queue have been present for less than a second threshold. In an embodiment, a command does not collide with a queue if the command does not access the same cache line in memory as the commands in the queue. In this way, in an embodiment, write commands are sent to the memory at a time that reduces the impact on the performance of read commands.
    Type: Application
    Filed: April 28, 2005
    Publication date: November 2, 2006
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Herman Blackmon, Philip Hillier, Joseph Kirscht, Brian Vanderpool
  • Publication number: 20060187739
    Abstract: In an aspect, a method is provided for using memory. The method includes the steps of (1) employing memory stacking, memory mirroring and memory interleaving in a total memory to reduce a number of memory entries that are written to an input/output (I/O) device while a portion of the total memory is replaced; and (2) storing data in the total memory. Numerous other aspects are provided.
    Type: Application
    Filed: February 24, 2005
    Publication date: August 24, 2006
    Applicant: International Business Machines Corporation
    Inventors: John Borkenhagen, Sudhir Dhawan, Philip Hillier, Joseph Kirscht, Randolph Kolvick
  • Publication number: 20060184846
    Abstract: In a data processing system having a memory control device including at least two mirrored memory ports, a method, system, and article of manufacture for processing read requests are disclosed herein. In accordance with the method of the present invention, a read request is received on a system interconnect coupling read requestors with memory resources. The received read request is issued only to a specified one of the at least two mirrored memory ports within the memory control device. In response to detecting an unrecoverable error resulting from the read request issued to the one mirrored memory port, the received read request is issued to an alternate of the at least two mirrored memory ports.
    Type: Application
    Filed: February 3, 2005
    Publication date: August 17, 2006
    Applicant: International Business Machines Corporation
    Inventors: Philip Hillier, Joseph Kirscht, Elizabeth McGlone
  • Publication number: 20060161759
    Abstract: In a first aspect, a first method is provided for accessing a main memory. The first method includes the steps of (1) receiving a real address of the main memory that includes critical bits requiring conversion to bits of a physical address to start a memory access in a node including local memory of the main memory, wherein the physical address is a node-specific address; (2) converting the critical bits of the real address to critical bits of a physical address in a time faster than the time required to convert the entire real address to a physical address representing a node-specific memory address; and (3) employing the converted critical bits to start the memory access. Numerous other aspects are provided.
    Type: Application
    Filed: January 14, 2005
    Publication date: July 20, 2006
    Applicant: International Business Machines Corporation
    Inventors: Philip Hillier, Joseph Kirscht
  • Publication number: 20060129741
    Abstract: A computer system includes at least one processor, multiple memory modules embodying a main memory, a communications medium for communicating data between the at least one processor and main memory, and memory access control logic which controls the routing of data and access to memory. The communications medium and memory access control logic are designed to accommodate a heterogenous collection of main memory configurations, in which at least one physical parameter is variable for different configurations. The bits of the memory address are mapped to actual memory locations by assigning fixed bit positions to the most critical physical parameters across multiple different module types, and assigning remaining non-contiguous bit positions to less critical physical parameters. In the preferred embodiment, the computer system employs a distributed memory architecture.
    Type: Application
    Filed: December 15, 2004
    Publication date: June 15, 2006
    Applicant: International Business Machines Corporation
    Inventors: Philip Hillier, Joseph Kirscht, Jamie Kuesel
  • Publication number: 20060106956
    Abstract: In a first aspect, a first method is provided for servicing commands. The first method includes the steps of (1) receiving a first command for servicing in a memory controller including a plurality of memory ports, wherein the first command is of a first priority; (2) receiving a second command for servicing in the memory controller, wherein the second command is of a second priority that is higher than the first priority; (3) determining whether the first and second commands will be serviced through the same memory port; and (4) if the first and second commands will not be serviced through the same memory port, servicing the first and second commands during the same time period. Numerous other aspects are provided.
    Type: Application
    Filed: November 12, 2004
    Publication date: May 18, 2006
    Applicant: International Business Machines Corporation
    Inventors: Philip Hillier, Joseph Kirscht