Patents by Inventor Benjamin John Fuller

Benjamin John Fuller 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: 11868265
    Abstract: Techniques are described herein processing asynchronous power transition events while maintaining a persistent memory state. In some embodiments, a system may proxy asynchronous reset events through system logic, which generates an interrupt to invoke a special persistent flush interrupt handler that performs a persistent cache flush prior to invoking a hardware power transition. Additionally or alternatively, the system may include a hardware backup mechanism to ensure all resets and power-transitions requested in hardware reliably complete within a bounded window of time independent of whether the persistent cache flush handler succeeds.
    Type: Grant
    Filed: March 25, 2022
    Date of Patent: January 9, 2024
    Assignee: Oracle International Corporation
    Inventor: Benjamin John Fuller
  • Patent number: 11797456
    Abstract: Techniques described herein provide a handshake mechanism and protocol for notifying an operating system whether system hardware supports persistent cache flushing. System firmware may determine whether the hardware is capable of supporting a full flush of processor caches and volatile memory buffers in the event of a power outage or asynchronous reset. If the hardware is capable, then persistent cache flushing may be selectively enabled and advertised to the operating system. Once persistent cache flushing is enabled, the operating system and applications may treat data committed to volatile processor caches as persistent. If disabled or not supported by system hardware, then the platform may not advertise support for persistent cache flushing to the operating system.
    Type: Grant
    Filed: March 25, 2022
    Date of Patent: October 24, 2023
    Assignee: Oracle International Corporation
    Inventor: Benjamin John Fuller
  • Patent number: 11507454
    Abstract: Techniques are described for identifying patterns of memory cells in a memory array that are predictive of non-correctable errors (“corruption patterns”). The techniques described herein identify patterns of cell errors that are likely to generate errors that cannot be corrected by an error correction code (ECC). The identification of non-correctable cells is accomplished by identifying a pattern of cell errors storing bit values that deviate from corresponding expected values. The pattern of these memory cells and various combinations of the cells in the pattern are compared to patterns of cells that are known to be correctable using ECC. If the error pattern or one or more of the combinations of erroneous cells in the pattern are not associated with patterns that are correctable via ECC, the error pattern is identified as predictive of a likely uncorrectable error.
    Type: Grant
    Filed: October 26, 2020
    Date of Patent: November 22, 2022
    Assignee: Oracle International Corporation
    Inventor: Benjamin John Fuller
  • Publication number: 20220318152
    Abstract: Techniques are described herein for flushing volatile system memory to persistent memory after the loss of alternating current (AC) power. In some embodiments, the techniques include implementing an extended hold-up window long enough to complete a full flush of processor caches and memory controller buffers using energy available in the bulk capacitors of one or more power supplies after a power outage event. The voltage on the bulk capacitors within the one or more power supply units may be monitored, and a notification may be triggered when a programmable threshold voltage is detected on the bulk capacitors. The system may configure the voltage threshold to indicate that a certain minimum amount of energy used to successfully complete a cache flush operation is available. The techniques allow flushing volatile system caches without relying on battery backup units (BBUs), which may be cumbersome to install and maintain.
    Type: Application
    Filed: March 25, 2022
    Publication date: October 6, 2022
    Applicant: Oracle International Corporation
    Inventor: Benjamin John Fuller
  • Publication number: 20220318153
    Abstract: Techniques are described herein processing asynchronous power transition events while maintaining a persistent memory state. In some embodiments, a system may proxy asynchronous reset events through system logic, which generates an interrupt to invoke a special persistent flush interrupt handler that performs a persistent cache flush prior to invoking a hardware power transition. Additionally or alternatively, the system may include a hardware backup mechanism to ensure all resets and power-transitions requested in hardware reliably complete within a bounded window of time independent of whether the persistent cache flush handler succeeds.
    Type: Application
    Filed: March 25, 2022
    Publication date: October 6, 2022
    Applicant: Oracle International Corporation
    Inventor: Benjamin John Fuller
  • Publication number: 20220318154
    Abstract: Techniques described herein provide a handshake mechanism and protocol for notifying an operating system whether system hardware supports persistent cache flushing. System firmware may determine whether the hardware is capable of supporting a full flush of processor caches and volatile memory buffers in the event of a power outage or asynchronous reset. If the hardware is capable, then persistent cache flushing may be selectively enabled and advertised to the operating system. Once persistent cache flushing is enabled, the operating system and applications may treat data committed to volatile processor caches as persistent. If disabled or not supported by system hardware, then the platform may not advertise support for persistent cache flushing to the operating system.
    Type: Application
    Filed: March 25, 2022
    Publication date: October 6, 2022
    Applicant: Oracle International Corporation
    Inventor: Benjamin John Fuller
  • Publication number: 20220129347
    Abstract: Techniques are described for identifying patterns of memory cells in a memory array that are predictive of non-correctable errors (“corruption patterns”). The techniques described herein identify patterns of cell errors that are likely to generate errors that cannot be corrected by an error correction code (ECC). The identification of non-correctable cells is accomplished by identifying a pattern of cell errors storing bit values that deviate from corresponding expected values. The pattern of these memory cells and various combinations of the cells in the pattern are compared to patterns of cells that are known to be correctable using ECC. If the error pattern or one or more of the combinations of erroneous cells in the pattern are not associated with patterns that are correctable via ECC, the error pattern is identified as predictive of a likely uncorrectable error.
    Type: Application
    Filed: October 26, 2020
    Publication date: April 28, 2022
    Applicant: Oracle International Corporation
    Inventor: Benjamin John Fuller