Patents by Inventor Bernard Drerup

Bernard Drerup 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: 10649901
    Abstract: A set-associative cache memory includes a plurality of ways and a plurality of congruence classes. Each of the plurality of congruence classes includes a plurality of members each belonging to a respective one of the plurality of ways. In the cache memory, a data structure records a history of an immediately previous N ways from which cache lines have been evicted. In response to receipt of a memory access request specifying a target address, a selected congruence class among a plurality of congruence classes is selected based on the target address. At least one member of the selected congruence class is removed as a candidate for selection for victimization based on the history recorded in the data structure, and a member from among the remaining members of the selected congruence class is selected. The cache memory then evicts the victim cache line cached in the selected member of the selected congruence class.
    Type: Grant
    Filed: August 3, 2017
    Date of Patent: May 12, 2020
    Assignee: International Business Machines Corporation
    Inventors: Bernard Drerup, Guy L. Guthrie, Jeffrey Stuecheli, Phillip Williams
  • Publication number: 20190042439
    Abstract: A set-associative cache memory includes a plurality of ways and a plurality of congruence classes. Each of the plurality of congruence classes includes a plurality of members each belonging to a respective one of the plurality of ways. In the cache memory, a data structure records a history of an immediately previous N ways from which cache lines have been evicted. In response to receipt of a memory access request specifying a target address, a selected congruence class among a plurality of congruence classes is selected based on the target address. At least one member of the selected congruence class is removed as a candidate for selection for victimization based on the history recorded in the data structure, and a member from among the remaining members of the selected congruence class is selected. The cache memory then evicts the victim cache line cached in the selected member of the selected congruence class.
    Type: Application
    Filed: August 3, 2017
    Publication date: February 7, 2019
    Inventors: BERNARD DRERUP, GUY L. GUTHRIE, JEFFREY STUECHELI, PHILLIP WILLIAMS
  • Publication number: 20080109610
    Abstract: A method and structure for snooping cache memories of several snooping masters connected to a bus macro, wherein each non-originating snooping master has cache memory, and wherein some, but less than all the cache memories, may have the data requested by an originating snooping master and wherein the needed data in a non-originating snooping master is marked as updated, and wherein a main memory having addresses for all data is connected to the bus macro. Only those non-originating snooping masters which may have the requested data are queried. All the non-originating snooping masters that have been queried reply. If a non-originating snooping master has the requested data marked as updated, that non-originating snooping master returns the updated data to the originating snooping master and possibly to the main memory. If none of the non-originating snooping masters has the requested data marked as updated, then the requested data is read from main memory.
    Type: Application
    Filed: January 8, 2008
    Publication date: May 8, 2008
    Applicant: International Business Machines Corporation
    Inventors: James Dieffenderfer, Bernard Drerup, Jaya Ganasan, Richard Hofmann, Thomas Sartorius, Thomas Speier, Barry Wolford
  • Publication number: 20080071954
    Abstract: A method, and bus prefetching mechanism are provided for implementing enhanced buffer control. A computer system includes a plurality of masters and at least one slave exchanging data over a system bus and the slave prefetches read data under control of a master. The master generates a continue bus signal that indicates a new or a continued request. The master generates a prefetch bus signal that indicates an amount to prefetch including no prefetching. The master includes a mechanism for continuing a sequence of reads allowing prefetching until a request is made indicating a prefetch amount of zero.
    Type: Application
    Filed: November 26, 2007
    Publication date: March 20, 2008
    Applicant: International Business Machines Corporation
    Inventors: Bernard Drerup, Richard Nicholas, Barry Wolford
  • Publication number: 20070233918
    Abstract: A communications bus for a digital device includes a credit-based flow control mechanism, in which a sending component maintains a local record of its credits. Credits are returned to the sender by pulsing a single-bit credit return line. A separate mechanism provides a count of available credits from the receiver, the separate mechanism not necessarily being current. The local record is compared to the count of credits from the separate mechanism over a pre-determined time interval, failure of the two values to agree at any time during the interval indicating a probable credit discrepancy. A credit discrepancy is confirmed, preferably by suspending certain bus activity for a sufficiently long period to account for any delay in propagating credit value changes, and re-comparing the values.
    Type: Application
    Filed: June 11, 2007
    Publication date: October 4, 2007
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Mark Check, Bernard Drerup, Michael Grassi
  • Publication number: 20070067545
    Abstract: A communications bus for a digital device includes a credit-based flow control mechanism, in which a sending component maintains a local record of its credits. Credits are returned to the sender by pulsing a single-bit credit return line. A separate mechanism provides a count of available credits from the receiver, the separate mechanism not necessarily being current. The local record is compared to the count of credits from the separate mechanism over a pre-determined time interval, failure of the two values to agree at any time during the interval indicating a probable credit discrepancy. A credit discrepancy is confirmed, preferably by suspending certain bus activity for a sufficiently long period to account for any delay in propagating credit value changes, and re-comparing the values.
    Type: Application
    Filed: October 27, 2006
    Publication date: March 22, 2007
    Applicant: International Business Machines Corporation
    Inventors: Mark Check, Bernard Drerup, Michael Grassi
  • Publication number: 20060179182
    Abstract: A control mechanism for data bus communications employs channels to which bus transactions are assigned, each channel having independent flow control. The control mechanism enforces an ordering algorithm among channels, whereby at least some transactions may pass other transactions. Channel attributes are programmable to vary the ordering conditions. Preferably, each channel is allocated its own programmable buffer area. The control mechanism independently determines, for each channel, whether buffer space is available and enforces flow control independently for each channel accordingly. Flow control is preferably credit-based, credits representing buffer space or some other capacity of a receiver to receive data. Preferably, the flow control mechanism comprises a central interconnect module controlling internal communications of an integrated circuit chip.
    Type: Application
    Filed: January 31, 2005
    Publication date: August 10, 2006
    Applicant: International Business Machines Corporation
    Inventors: Sundeep Chadha, Mark Check, Bernard Drerup, Michael Grassi
  • Publication number: 20060174158
    Abstract: An integrated circuit chip includes multiple functional components and a central interconnect (CI) module. Each functional component communicates with the CI module via a respective internal bus sharing a common architecture which does not dictate any particular data alignment. The chip architecture defines an alignment mechanism within the CI module, which performs any required alignment of transmitted data. Alignment mechanism design parameters can be varied to accommodate different alignment domains of different functional components. Preferably, the common bus architecture supports multiple internal bus widths, the CI module performing any required bus width conversion. Preferably, for certain transactions not containing a data address, correct alignment is obtained by placing restrictions on transaction size and boundaries, and duplicating certain data on different alignment boundaries.
    Type: Application
    Filed: January 31, 2005
    Publication date: August 3, 2006
    Applicant: International Business Machines Corporation
    Inventors: Mark Check, Bernard Drerup, Michael Grassi
  • Publication number: 20060174040
    Abstract: A communications bus for a digital device includes a credit-based flow control mechanism, in which a sending component maintains a local record of its credits. Credits are returned to the sender by pulsing a single-bit credit return line. A separate mechanism provides a count of available credits from the receiver, the separate mechanism not necessarily being current. The local record is compared to the count of credits from the separate mechanism over a pre-determined time interval, failure of the two values to agree at any time during the interval indicating a probable credit discrepancy. A credit discrepancy is confirmed, preferably by suspending certain bus activity for a sufficiently long period to account for any delay in propagating credit value changes, and re-comparing the values.
    Type: Application
    Filed: January 31, 2005
    Publication date: August 3, 2006
    Applicant: International Business Machines Corporation
    Inventors: Mark Check, Bernard Drerup, Michael Grassi
  • Publication number: 20060174068
    Abstract: A method, and bus prefetching mechanism are provided for implementing enhanced buffer control. A computer system includes a plurality of masters and at least one slave exchanging data over a system bus and the slave prefetches read data under control of a master. The master generates a continue bus signal that indicates a new or a continued request. The master generates a prefetch bus signal that indicates an amount to prefetch including no prefetching. The master includes a mechanism for continuing a sequence of reads allowing prefetching until a request is made indicating a prefetch amount of zero.
    Type: Application
    Filed: February 3, 2005
    Publication date: August 3, 2006
    Applicant: International Business Machines Corporation
    Inventors: Bernard Drerup, Richard Nicholas, Barry Wolford
  • Publication number: 20060174050
    Abstract: An integrated circuit chip includes multiple functional components and a central interconnect module providing communication among the functional components. The central interconnect module includes a buffer which is shared by the sending and receiving components. Preferably, some components perform different functions and communicate with the central interconnect via a common architectural interface. Preferably, each sender is allocated respective credits representing ability of the receiver to receive data (e.g., available buffer space), and the sender can transmit data if it has credits. Credits are decremented when the sender sends data, and returned by the receiver when is again able to receive. The use of a common central interconnect module with a shared buffer reduces buffer requirements and provides a low-overhead path for transferring data within the integrated circuit chip.
    Type: Application
    Filed: January 31, 2005
    Publication date: August 3, 2006
    Applicant: International Business Machines Corporation
    Inventors: Sundeep Chadha, Mark Check, Bernard Drerup, Michael Grassi
  • Publication number: 20060085586
    Abstract: The present invention provides for a system comprising a peripheral component interface (PCI) host bridge. The PCI host bridge is configured to be coupled to a PCI bus, and to receive a system reset signal, to generate a PCI bus reset signal based on the received system reset signal, to detect a PCI operational mode of the PCI bus, and to generate a voltage indicator signal based on the detected PCI operational mode. A voltage regulator is coupled to the PCI host bridge and configured to receive the voltage indicator signal and to regulate a signaling voltage for the PCI bus based on the voltage indicator signal.
    Type: Application
    Filed: October 14, 2004
    Publication date: April 20, 2006
    Applicant: International Business Machines Corporation
    Inventors: Parag Birmiwal, Bernard Drerup
  • Publication number: 20060077896
    Abstract: A method, apparatus and computer program product are provided for optimizing packet flow control through buffer status forwarding. A sending device includes buffer status information of the sending device in transactions being sent to a receiving device. The receiving device uses the buffer status information of the sending device for selecting transactions to offload.
    Type: Application
    Filed: October 8, 2004
    Publication date: April 13, 2006
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sundeep Chadha, Bernard Drerup
  • Publication number: 20060031705
    Abstract: A method, computer system and set of signals are disclosed allowing for communication of a data transfer, via a bus, between a master and a slave using a single transfer request regardless of transfer size and alignment. The invention provides three transfer qualifier signals including: a first signal including a starting byte address of the data transfer; a second signal including a size of the data transfer in data beats; and a third signal including a byte enable for each byte required during a last data beat of the data transfer. The invention is usable with single or multiple beat, aligned or unaligned data transfers. Usage of the three transfer qualifier signals provides the slave with how many data beats it will transfer at the start of the transfer, and the alignment of both the starting and ending data beats. As a result, the slave need not calculate the number of bytes it will transfer.
    Type: Application
    Filed: October 7, 2005
    Publication date: February 9, 2006
    Inventors: Victor Augsburg, James Dieffenderfer, Bernard Drerup, Richard Hofmann, Thomas Sertorius, Barry Wolford
  • Publication number: 20050055655
    Abstract: A method of designing a system on a chip (SoC) to operate with varying latencies and frequencies. A layout of the chip is designed with specific placement of devices, including a bus controller, initiator, and target devices. The time for a signal to propagate from a source device to a destination device is determined relative to a default propagation time. A pipeline stage is then inserted into a bus path between said source device and destination device for each additional time the signal takes to propagate. Each device (i.e., initiators, targets, and bus controller) is designed with logic to control a protocol that functions with a variety of response latencies. With the additional logic, the devices do not need to be changed when pipeline stages are inserted in the various paths. Registers are utilized as the pipeline stages that are inserted within the paths.
    Type: Application
    Filed: October 22, 2004
    Publication date: March 10, 2005
    Applicant: International Business Machines Corporation
    Inventors: Victor Augsburg, James Dieffenderfer, Bernard Drerup, Richard Hofmann, Thomas Sartorius, Barry Wolford