Patents by Inventor Guy Guthrie

Guy Guthrie 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).

  • Publication number: 20070081516
    Abstract: A data processing system includes a first plane including a first plurality of processing nodes, each including multiple processing units, and a second plane including a second plurality of processing nodes, each including multiple processing units. The data processing system also includes a plurality of point-to-point first tier links. Each of the first plurality and second plurality of processing nodes includes one or more first tier links among the plurality of first tier links, where the first tier link(s) within each processing node connect a pair of processing units in the same processing node for communication. The data processing system further includes a plurality of point-to-point second tier links.
    Type: Application
    Filed: October 7, 2005
    Publication date: April 12, 2007
    Inventors: Ravi Arimilli, Benjiman Goodman, Guy Guthrie, Praveen Reddy, William Starke
  • Publication number: 20070079210
    Abstract: A method of handling a stuck bit in a directory of a cache memory which detects an error in a stored tag having an address field, a state field and an error-correction field, determines that the error is associated with a stuck bit of the directory member, marks the directory member as defective, and casts out corrected address information. The error is detected during processing of a cache directory access request, and is determined to be associated with a stuck bit of the directory member by attempting to correct a first error and then detecting a second error after the first correction attempt. The address information is cast out by routing a surrogate tag contained in a surrogate member of the cache directory through error-correction pipeline circuitry while transmitting the address information from the surrogate member to a cast-out machine.
    Type: Application
    Filed: September 13, 2005
    Publication date: April 5, 2007
    Inventors: Robert Bell, Guy Guthrie, William Starke
  • Publication number: 20070079216
    Abstract: A method of handling a stuck bit in a directory of a cache memory, by defining multiple binary encodings to indicate a defective cache state, detecting an error in a tag stored in a member of the directory (wherein the tag at least includes an address field, a state field and an error-correction field), determining that the error is associated with a stuck bit of the directory member, and writing new state information to the directory member which is selected from one of the binary encodings based on a field location of the stuck bit within the directory member. The multiple binary encodings may include a first binary encoding when the stuck bit is in the address field, a second binary encoding when the stuck bit is in the state field, and a third binary encoding when the stuck bit is in the error-correction field. The new state information may also further be selected based on the value of the stuck bit, e.g.
    Type: Application
    Filed: September 13, 2005
    Publication date: April 5, 2007
    Inventors: Robert Bell, Guy Guthrie, William Starke
  • Publication number: 20070073919
    Abstract: A data processing system includes at least a first processing node having an input/output (I/O) controller and a second processing including a memory controller for a memory. The memory controller receives, in order, pipelined first and second DMA write operations from the I/O controller, where the first and second DMA write operations target first and second addresses, respectively. In response to the second DMA write operation, the memory controller establishes a state of a domain indicator associated with the second address to indicate an operation scope including the first processing node. In response to the memory controller receiving a data access request specifying the second address and having a scope excluding the first processing node, the memory controller forces the data access request to be reissued with a scope including the first processing node based upon the state of the domain indicator associated with the second address.
    Type: Application
    Filed: September 15, 2005
    Publication date: March 29, 2007
    Inventors: George Daly, James Fields, Guy Guthrie, William Starke, Jeffrey Stuecheli
  • Publication number: 20070033345
    Abstract: A processing unit for a multiprocessor data processing system includes a processor core and a lower level cache including a reservation logic that records reservations of the processor core. The reservation logic passes or fails store-conditional operations received from the processor core based upon whether the processor core has reservations for target store addresses of the store-conditional operations. The processor core includes a store-through upper level cache, a reservation register, and sequencer logic that, by reference to the reservation register, fails a store-conditional operation without communication with said reservation logic.
    Type: Application
    Filed: August 2, 2005
    Publication date: February 8, 2007
    Applicant: International Business Machines Corporation
    Inventors: Guy Guthrie, Derek Williams
  • Publication number: 20070022250
    Abstract: A system and method of responding to a cache read error with a temporary cache directory column delete. A read command is received at a cache controller. In response to determining that data requested by said read command is stored in a specific data location in the cache, a read of the data is initiated. In response to determining the read of said data results in an error, a column delete indicator for an associativity class including a specific data location to temporarily prevent allocation within the associativity class of storage locations is set. A specific line delete command that marks the specific data location as deleted is issued. In response to the issuing of the specific line delete command, the column delete indicator for the associativity class, such that storage locations within the associativity class other than the specific data location can again be allocated to hold new data is set.
    Type: Application
    Filed: July 19, 2005
    Publication date: January 25, 2007
    Applicant: International Business Machines Corporation
    Inventors: James Fields, Guy Guthrie, William Starke, Phillip Williams
  • Publication number: 20060294309
    Abstract: An efficient system for bootstrap loading scans cache lines into a cache store queue during a scan phase, and then transmits the cache lines from the cache store queue to a cache memory array during a functional phase. Scan circuitry stores a given cache line in a set of latches associated with one of a plurality of cache entries in the cache store queue, and passes the cache line from the latch set to the associated cache entry. The cache lines may be scanned from test software that is external to the computer system. Read/claim dispatch logic dispatches store instructions for the cache entries to read/claim machines which write the cache lines to the cache memory array without obtaining write permission, after the read/claim machines evaluate a mode bit which indicates that cache entries in the cache store queue are scanned cache lines. In the illustrative embodiment the cache memory is an L2 cache.
    Type: Application
    Filed: June 28, 2005
    Publication date: December 28, 2006
    Inventors: Guy Guthrie, Jeffrey Kellington, Kevin Reick, Hugh Shen
  • Publication number: 20060277370
    Abstract: In an entry of a first cache memory within a first coherency domain of a data processing system including at least first and second coherency domains, a coherency state field is set to a first state that indicates that an associated address tag is valid, an associated storage location does not contain valid data, and a memory block identified by the address tag is likely cached outside the first coherency domain. In response to snooping a castout operation, the first cache memory determines if the castout operation hits in the entry and, if so, updates the coherency state field from the first state to a second state indicating that the associated address tag is invalid.
    Type: Application
    Filed: June 6, 2005
    Publication date: December 7, 2006
    Applicant: International Business Machines Corporation
    Inventors: Guy Guthrie, William Starke, Jeffrey Stuecheli, Derek Williams
  • Publication number: 20060271742
    Abstract: Scrubbing logic in a local coherency domain issues to at least one cache hierarchy in a remote coherency domain a domain reset request that forces invalidation of any cached copy of a target memory block then held in said remote coherency domain. A coherency response to said domain reset request is received. In response to said coherency response indicating that said target memory block is not cached in said remote coherency domain, a domain indication of said local coherency domain is updated to indicate that said target memory block is cached, if at all, only within said local coherency domain.
    Type: Application
    Filed: May 24, 2005
    Publication date: November 30, 2006
    Applicant: International Business Machines Corporation
    Inventors: Leo Clark, James Fields, Guy Guthrie, William Starke, Derek Williams
  • Publication number: 20060271743
    Abstract: Scrubbing logic in a local coherency domain issues a domain query request to at least one cache hierarchy in a remote coherency domain. The domain query request is a non-destructive probe of a coherency state associated with a target memory block by the at least one cache hierarchy. A coherency response to the domain query request is received. In response to the coherency response indicating that the target memory block is not cached in the remote coherency domain, a domain indication in the local coherency domain is updated to indicate that the target memory block is cached, if at all, only within the local coherency domain.
    Type: Application
    Filed: May 24, 2005
    Publication date: November 30, 2006
    Applicant: International Business Machines Corporation
    Inventors: Leo Clark, James Fields, Guy Guthrie, William Starke, Derek Williams
  • Publication number: 20060271744
    Abstract: According to a method of data processing, a predictor is maintained that indicates a historical scope of broadcast for one or more previous operations transmitted on an interconnect of a data processing system. A scope of broadcast of a subsequent operation is predictively selected by reference to the predictor.
    Type: Application
    Filed: May 31, 2005
    Publication date: November 30, 2006
    Applicant: International Business Machines Corporation
    Inventors: Benjiman Goodman, Guy Guthrie, William Starke, Jeffrey Stuecheli, Derek Williams
  • Publication number: 20060271741
    Abstract: In response to execution of program code, a control register within scrubbing logic in a local coherency domain is initialized with at least a target address of a target memory block. In response to the initialization, the scrubbing logic issues to at least one cache hierarchy in a remote coherency domain a domain indication scrubbing request targeting a target memory block that may be cached by the at least one cache hierarchy. In response to receipt of a coherency response indicating that the target memory block is not cached in the remote coherency domain, a domain indication in the local coherency domain is updated to indicate that the target memory block is cached, if at all, only within the local coherency domain.
    Type: Application
    Filed: May 24, 2005
    Publication date: November 30, 2006
    Applicant: International Business Machines Corporation
    Inventors: Leo Clark, James Fields, Guy Guthrie, William Starke, Derek Williams
  • Publication number: 20060236037
    Abstract: At a first cache memory affiliated with a first processor core, an exclusive memory access operation is received via an interconnect fabric coupling the first cache memory to second and third cache memories respectively affiliated with second and third processor cores. The exclusive memory access operation specifies a target address. In response to receipt of the exclusive memory access operation, the first cache memory detects presence or absence of a source indication indicating that the exclusive memory access operation originated from the second cache memory to which the first cache memory is coupled by a private communication network to which the third cache memory is not coupled. In response to detecting presence of the source indication, a coherency state field of the first cache memory that is associated with the target address is updated to a first data-invalid state.
    Type: Application
    Filed: April 19, 2005
    Publication date: October 19, 2006
    Inventors: Guy Guthrie, Aaron Sawdey, William Starke, Derek Williams
  • Publication number: 20060224833
    Abstract: In response to a master receiving a memory access request indicating a target address, the master accesses a first cache directory of an upper level cache of a cache hierarchy. In response to the target address being associated in the first cache directory with an entry having a valid address tag and a first invalid coherency state, the master issues a request specifying the target address on an interconnect fabric without regard to a coherency state associated with the target address in a second cache directory of a lower level cache of the cache hierarchy. In response to the target address having a second invalid coherency state with respect to the first cache directory, the master issues a request specifying the target address on an interconnect fabric after determining a coherency state associated with the target address in the second cache directory of the lower level cache of the cache hierarchy.
    Type: Application
    Filed: March 31, 2005
    Publication date: October 5, 2006
    Applicant: International Business Machines Corporation
    Inventors: Guy Guthrie, Aaron Sawdey, William Starke, Jeffrey Stuecheli
  • Publication number: 20060187958
    Abstract: A data processing system includes a plurality of local hubs each coupled to a remote hub by a respective one a plurality of point-to-point communication links. Each of the plurality of local hubs queues requests for access to memory blocks for transmission on a respective one of the point-to-point communication links to a shared resource in the remote hub. Each of the plurality of local hubs transmits requests to the remote hub utilizing only a fractional portion of a bandwidth of its respective point-to-point communication link. The fractional portion that is utilized is determined by an allocation policy based at least in part upon a number of the plurality of local hubs and a number of processing units represented by each of the plurality of local hubs. The allocation policy prevents overruns of the shared resource.
    Type: Application
    Filed: February 10, 2005
    Publication date: August 24, 2006
    Applicant: International Business Machines Corporation
    Inventors: Leo Clark, Guy Guthrie, William Starke
  • Publication number: 20060184748
    Abstract: A cache, system and method for reducing the number of rejected snoop requests. A “stall/reorder unit” in a cache receives a snoop request from an interconnect. Information, such as the address, of the snoop request is stored in a queue of the stall/reorder unit. The stall/reorder unit forwards the snoop request to a selector which also receives a request from a processor. An arbitration mechanism selects either the snoop request or the request from the processor. If the snoop request is denied by the arbitration mechanism, information, e.g., address, about the snoop request may be maintained in the stall/reorder unit. The request may be later resent to the selector. This process may be repeated up to “n” clock cycles. By providing the snoop request additional opportunities (n clock cycles) to be accepted by the arbitration mechanism, fewer snoop requests may ultimately be denied.
    Type: Application
    Filed: February 11, 2005
    Publication date: August 17, 2006
    Applicant: International Business Machines Corporation
    Inventors: Benjiman Goodman, Guy Guthrie, William Starke, Jeffrey Stuecheli, Derek Williams
  • Publication number: 20060184749
    Abstract: A cache, system and method for reducing the number of rejected snoop requests. An incoming snoop request is entered in the first available latch in a pipeline of latches in a stall/reorder unit if the stall/reorder unit is not full. The entered snoop request is dispatched to a selector upon entering a bottom latch in the pipeline. The stall/reorder unit is not informed as to whether the dispatched snoop request is accepted by an arbitration mechanism for several clock cycles after the dispatch occurred. A copy of the dispatched snoop request is stored in a top latch in an overrun pipeline of latches in the first unit upon dispatching the snoop request. By maintaining information about the snoop request, the snoop request may be dispatched again to the selector in case the dispatched snoop request was rejected thereby increasing the chance that the snoop request will ultimately be accepted.
    Type: Application
    Filed: February 11, 2005
    Publication date: August 17, 2006
    Applicant: International Business Machines Corporation
    Inventors: Guy Guthrie, Hugh Shen, William Starke, Derek Williams
  • Publication number: 20060184742
    Abstract: A method, system, and device for enabling intervention across same-level cache memories. In a preferred embodiment, responsive to a cache miss in a first cache memory a direct intervention request is sent from the first cache memory to a second cache memory requesting a direct intervention that satisfies the cache miss. In an alternate embodiment, direct intervention is utilized to access a same-level victim cache.
    Type: Application
    Filed: February 12, 2005
    Publication date: August 17, 2006
    Applicant: International Business Machines Corporation
    Inventors: Leo Clark, James Fields, Guy Guthrie, Bradley McCredie, William Starke
  • Publication number: 20060184746
    Abstract: A cache, system and method for reducing the number of rejected snoop requests. A “stall/reorder unit” in a cache receives a snoop request from an interconnect. The snoop request is entered in the first available latch of the stall/reorder unit unless the stall/reorder unit is full in which case the new snoop request is transmitted to a second unit configured to transmit a request to retry resending the new snoop request. Snoop requests have a higher priority than requests from processors and snoop requests are selected by the arbitration mechanism over processor requests unless the arbitration mechanism requests otherwise (“stall request”) to the stall/reorder unit. By snoop requests having a higher priority than processor requests, the number of snoop requests rejected is reduced. By having the arbitration mechanism issue a stall request, the processor will not be starved.
    Type: Application
    Filed: February 11, 2005
    Publication date: August 17, 2006
    Inventors: Guy Guthrie, Hugh Shen, William Starke, Derek Williams
  • Publication number: 20060184743
    Abstract: A method, system, and device for enabling intervention across same-level cache memories. In a preferred embodiment, responsive to a cache miss in a first cache memory a direct intervention request is sent from the first cache memory to a second cache memory requesting a direct intervention that satisfies the cache miss.
    Type: Application
    Filed: February 12, 2005
    Publication date: August 17, 2006
    Applicant: International Business Machines Corporation
    Inventors: Guy Guthrie, William Starke, Derek Williams