Patents by Inventor Michael S. Siegel
Michael S. Siegel 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: 9442852Abstract: A coherent attached processor proxy (CAPP) within a primary coherent system participates in an operation on a system fabric of the primary coherent system on behalf of an attached processor (AP) that is external to the primary coherent system and that is coupled to the CAPP. The operation includes multiple components communicated with the CAPP including a request and at least one coherence message. The CAPP determines one or more of the components of the operation by reference to at least one programmable data structure within the CAPP that can be reprogrammed.Type: GrantFiled: November 27, 2012Date of Patent: September 13, 2016Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, David W. Cummings, Michael S. Siegel, William J. Starke, Jeff A. Stuecheli
-
Coherent attached processor proxy supporting coherence state update in presence of dispatched master
Patent number: 9390013Abstract: A coherent attached processor proxy (CAPP) of a primary coherent system receives a memory access request specifying a target address in the primary coherent system from an attached processor (AP) external to the primary coherent system. The CAPP includes a CAPP directory of contents of a cache memory in the AP that holds copies of memory blocks belonging to a coherent address space of the primary coherent system. In response to the memory access request, the CAPP performs a first determination of a coherence state for the target address and allocates a master machine to service the memory access request in accordance with the first determination. Thereafter, during allocation of the master machine, the CAPP updates the coherence state and performs a second determination of the coherence state. The master machine services the memory access request in accordance with the second determination.Type: GrantFiled: September 26, 2013Date of Patent: July 12, 2016Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, David W. Cummings, Michael S. Siegel, Jeffrey A. Stuecheli -
Patent number: 9367458Abstract: A coherent attached processor proxy (CAPP) within a primary coherent system participates in an operation on a system fabric of the primary coherent system on behalf of an attached processor (AP) that is external to the primary coherent system and that is coupled to the CAPP. The operation includes multiple components communicated with the CAPP including a request and at least one coherence message. The CAPP determines one or more of the components of the operation by reference to at least one programmable data structure within the CAPP that can be reprogrammed.Type: GrantFiled: February 26, 2013Date of Patent: June 14, 2016Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, David W. Cummings, Michael S. Siegel, William J. Starke, Jeff A. Stuecheli
-
Patent number: 9367505Abstract: One or more systems, devices, methods, and/or processes described can receive, via an interconnect, messages from processing nodes, and a first portion of the messages can displace a second portion of the messages based on priorities of the first portion of messages or based on expirations times of the second portion of messages. In one example, the second portion of messages can be stored via a buffer of a fabric controller (FBC) of the interconnect, and the first portion of messages, associated with higher priorities than the second portion of messages, can displace the second portion of messages in the buffer. For instance, the second portion of messages can include speculative commands. In another example, the second portion of messages can be stored via the buffer, and the second portion of messages, associated with expiration times, can displace the second portion of messages based on the expiration times.Type: GrantFiled: June 23, 2014Date of Patent: June 14, 2016Assignee: International Business Machines CorporationInventors: Guy L. Guthrie, Charles F. Marino, Michael S. Siegel, William J. Starke, Jeffrey A. Stuecheli
-
Patent number: 9367504Abstract: One or more systems, devices, methods, and/or processes described can receive, via an interconnect, messages from processing nodes and a first portion of the messages can displace a second portion of the messages based on priorities of the first portion of messages or based on expirations times of the second portion of messages. In one example, the second portion of messages can be stored via a buffer of a fabric controller (FBC) of the interconnect, and the first portion of messages, associated with higher priorities than the second portion of messages, can displace the second portion of messages in the buffer. For instance, the second portion of messages can include speculative commands. In another example, the second portion of messages can be stored via the buffer, and the second portion of messages, associated with expiration times, can displace the second portion of messages based on the expiration times.Type: GrantFiled: December 20, 2013Date of Patent: June 14, 2016Assignee: International Business Machines CorporationInventors: Guy L. Guthrie, Charles F. Marino, Michael S. Siegel, William J. Starke, Jeffrey A. Stuecheli
-
Coherent attached processor proxy supporting coherence state update in presence of dispatched master
Patent number: 9256537Abstract: A coherent attached processor proxy (CAPP) of a primary coherent system receives a memory access request specifying a target address in the primary coherent system from an attached processor (AP) external to the primary coherent system. The CAPP includes a CAPP directory of contents of a cache memory in the AP that holds copies of memory blocks belonging to a coherent address space of the primary coherent system. In response to the memory access request, the CAPP performs a first determination of a coherence state for the target address and allocates a master machine to service the memory access request in accordance with the first determination. Thereafter, during allocation of the master machine, the CAPP updates the coherence state and performs a second determination of the coherence state. The master machine services the memory access request in accordance with the second determination.Type: GrantFiled: February 14, 2013Date of Patent: February 9, 2016Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, David W. Cummings, Michael S. Siegel, Jeffrey A. Stuecheli -
Patent number: 9251111Abstract: In one or more embodiments, one or more systems, devices, methods, and/or processes described can continually increase a command rate of an interconnect if one or more requests to lower the command rate are not received within one or more periods of time. In one example, the command rate can be set to a fastest level. In another example, the command rate can be incrementally increased over periods of time. If a request to lower the command rate is received, the command rate can be set to a reference level or can be decremented to one slower rate level. In one or more embodiments, the one or more requests to lower the command rate can be based on at least one of an issue rate of speculative commands and a number of overcommit failures, among others.Type: GrantFiled: December 20, 2013Date of Patent: February 2, 2016Assignee: International Business Machines CorporationInventors: Guy L. Guthrie, David J. Krolak, Charles F. Marino, Praveen S. Reddy, Michael S. Siegel
-
Patent number: 9251077Abstract: A coherent attached processor proxy (CAPP) that participates in coherence communication in a primary coherent system on behalf of an external attached processor maintains, in each of a plurality of entries of a CAPP directory, information regarding a respective associated cache line of data from the primary coherent system cached by the attached processor. In response to initiation of recovery operations, the CAPP transmits, in a generally sequential order with respect to the CAPP directory, multiple memory access requests indicating an error for addresses indicated by the plurality of entries. In response to a snooped memory access request that targets a particular address hitting in the CAPP directory during the transmitting, the CAPP performs a coherence recovery operation for the particular address prior to a time indicated by the generally sequential order.Type: GrantFiled: September 25, 2013Date of Patent: February 2, 2016Inventors: Bartholomew Blaner, David W. Cummings, George W. Daly, Jr., Michael S. Siegel, Jeff A. Stuecheli
-
Patent number: 9251076Abstract: A coherent attached processor proxy (CAPP) participates in coherence communication in a primary coherent system on behalf of an attached processor external to the primary coherent system. The CAPP includes an epoch timer that advances at regular intervals to define epochs of operation of the CAPP. Each of one or more entries in a data structure in the CAPP are associated with a respective epoch. Recovery operations for the CAPP are initiated based on a comparison of an epoch indicated by the epoch timer and the epoch associated with one of the one or more entries in the data structure.Type: GrantFiled: September 25, 2013Date of Patent: February 2, 2016Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, Kevin F. Reick, Michael S. Siegel, Jeff A. Stuecheli
-
Patent number: 9229868Abstract: A coherent attached processor proxy (CAPP) that participates in coherence communication in a primary coherent system on behalf of an attached processor external to the primary coherent system tracks delivery of data to destinations in the primary coherent system via one or more entries in a data structure. Each of the one or more entries specifies with a destination tag a destination in the primary coherent system to which data is to be delivered from the attached processor. In response to initiation of recovery operations for the CAPP, the CAPP performs data recovery operations, including transmitting, to at least one destination indicated by the destination tag of one or more entries, an indication of a data error in data to be delivered to that destination from the attached processor.Type: GrantFiled: September 24, 2013Date of Patent: January 5, 2016Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, Kenneth A. Lauricella, Joseph G. McDonald, Michael S. Siegel, Jeff A. Stuecheli
-
Patent number: 9208092Abstract: A coherent attached processor proxy (CAPP) includes transport logic having a first interface configured to support communication with a system fabric of a primary coherent system and a second interface configured to support communication with an attached processor (AP) that is external to the primary coherent system and that includes a cache memory that holds copies of memory blocks belonging to a coherent address space of the primary coherent system. The CAPP further includes one or more master machines that initiate memory access requests on the system fabric of the primary coherent system on behalf of the AP, one or more snoop machines that service requests snooped on the system fabric, and a CAPP directory having a precise directory having a plurality of entries each associated with a smaller data granule and a coarse directory having a plurality of entries each associated with a larger data granule.Type: GrantFiled: September 24, 2013Date of Patent: December 8, 2015Assignee: GLOBALFOUNDRIES INC.Inventors: Bartholomew Blaner, Michael S. Siegel, Jeffrey A. Stuecheli, Charles F. Marino
-
Patent number: 9208091Abstract: A coherent attached processor proxy (CAPP) includes transport logic having a first interface configured to support communication with a system fabric of a primary coherent system and a second interface configured to support communication with an attached processor (AP) that is external to the primary coherent system and that includes a cache memory that holds copies of memory blocks belonging to a coherent address space of the primary coherent system. The CAPP further includes one or more master machines that initiate memory access requests on the system fabric of the primary coherent system on behalf of the AP, one or more snoop machines that service requests snooped on the system fabric, and a CAPP directory having a precise directory having a plurality of entries each associated with a smaller data granule and a coarse directory having a plurality of entries each associated with a larger data granule.Type: GrantFiled: June 19, 2013Date of Patent: December 8, 2015Assignee: GLOBALFOUNDRIES INC.Inventors: Bartholomew Blaner, Michael S. Siegel, Jeffrey A. Stuecheli, Charles F. Marino
-
Patent number: 9146872Abstract: In response to receiving a memory access request and expected coherence state at an attached processor at a coherent attached processor proxy (CAPP), the CAPP determines that a conflicting request is being serviced. In response to determining that the CAPP is servicing a conflicting request and that the expected state matches, a master machine of the CAPP is allocated in a Parked state to service the memory access request after completion of service of the conflicting request. The Parked state prevents servicing by the CAPP of a further conflicting request snooped on the system fabric. In response to completion of service of the conflicting request, the master machine transitions out of the Parked state and issues on the system fabric a memory access request corresponding to that received from AP.Type: GrantFiled: February 26, 2013Date of Patent: September 29, 2015Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, David W. Cummings, Michael S. Siegel, Jeff A. Stuecheli
-
Patent number: 9135174Abstract: In response to receiving a memory access request and expected coherence state at an attached processor at a coherent attached processor proxy (CAPP), the CAPP determines that a conflicting request is being serviced. In response to determining that the CAPP is servicing a conflicting request and that the expected state matches, a master machine of the CAPP is allocated in a Parked state to service the memory access request after completion of service of the conflicting request. The Parked state prevents servicing by the CAPP of a further conflicting request snooped on the system fabric. In response to completion of service of the conflicting request, the master machine transitions out of the Parked state and issues on the system fabric a memory access request corresponding to that received from the AP.Type: GrantFiled: November 27, 2012Date of Patent: September 15, 2015Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, David W. Cummings, Michael S. Siegel, Jeff A. Stuecheli
-
Patent number: 9086975Abstract: A coherent attached processor proxy (CAPP) of a primary coherent system receives a memory access request from an attached processor (AP) and an expected coherence state of a target address of the memory access request with respect to a cache memory of the AP. In response, the CAPP determines a coherence state of the target address and whether or not the expected state matches the determined coherence state. In response to determining that the expected state matches the determined coherence state, the CAPP issues a memory access request corresponding to that received from the AP on a system fabric of the primary coherent system. In response to determining that the expected state does not match the coherence state determined by the CAPP, the CAPP transmits a failure message to the AP without issuing on the system fabric a memory access request corresponding to that received from the AP.Type: GrantFiled: February 26, 2013Date of Patent: July 21, 2015Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, Charles Marino, Michael S. Siegel, William J. Starke, Jeff A. Stuecheli
-
Patent number: 9069674Abstract: A coherent attached processor proxy (CAPP) of a primary coherent system receives a memory access request from an attached processor (AP) and an expected coherence state of a target address of the memory access request with respect to a cache memory of the AP. In response, the CAPP determines a coherence state of the target address and whether or not the expected state matches the determined coherence state. In response to determining that the expected state matches the determined coherence state, the CAPP issues a memory access request corresponding to that received from the AP on a system fabric of the primary coherent system. In response to determining that the expected state does not match the coherence state determined by the CAPP, the CAPP transmits a failure message to the AP without issuing on the system fabric a memory access request corresponding to that received from the AP.Type: GrantFiled: November 27, 2012Date of Patent: June 30, 2015Assignee: International Business Machines CorporationInventors: Bartholomew Blaner, Charles Marino, Michael S. Siegel, William J. Starke, Jeff A. Stuecheli
-
Publication number: 20150178230Abstract: In one or more embodiments, one or more systems, devices, methods, and/or processes described can send, via an interconnect, a rate master command to at least one of multiple processing nodes; determine that a message indicating a dropped command, associated with the rate master command, is received; determine that a count, associated with dropped commands, satisfies a threshold; and provide, to the processing nodes via the interconnect, a signal indicating a command rate, in response to determining that the count satisfies the threshold. Moreover, the count can be incremented in response to determining that the message is received. The at least one of multiple processing nodes can receive, via the interconnect, the signal indicating the command rate and can utilize the command rate in issuing speculative commands, via the interconnect.Type: ApplicationFiled: December 20, 2013Publication date: June 25, 2015Inventors: PAUL A. GANFIELD, GUY L. GUTHRIE, JOHN T. HOLLAWAY, JR., DAVID J. KROLAK, CHARLES F. MARINO, PRAVEEN S. REDDY, MICHAEL S. SIEGEL, WILLIAM J. STARKE, JEFFREY A. STUECHELI
-
Publication number: 20150178238Abstract: In one or more embodiments, one or more systems, devices, methods, and/or processes described can continually increase a command rate of an interconnect if one or more requests to lower the command rate are not received within one or more periods of time. In one example, the command rate can be set to a fastest level. In another example, the command rate can be incrementally increased over periods of time. If a request to lower the command rate is received, the command rate can be set to a reference level or can be decremented to one slower rate level. In one or more embodiments, the one or more requests to lower the command rate can be based on at least one of an issue rate of speculative commands and a number of overcommit failures, among others.Type: ApplicationFiled: December 20, 2013Publication date: June 25, 2015Inventors: GUY L. GUTHRIE, DAVID J. KROLAK, CHARLES F. MARINO, PRAVEEN S. REDDY, MICHAEL S. SIEGEL
-
Publication number: 20150178205Abstract: One or more systems, devices, methods, and/or processes described can receive, via an interconnect, messages from processing nodes, and a first portion of the messages can displace a second portion of the messages based on priorities of the first portion of messages or based on expirations times of the second portion of messages. In one example, the second portion of messages can be stored via a buffer of a fabric controller (FBC) of the interconnect, and the first portion of messages, associated with higher priorities than the second portion of messages, can displace the second portion of messages in the buffer. For instance, the second portion of messages can include speculative commands. In another example, the second portion of messages can be stored via the buffer, and the second portion of messages, associated with expiration times, can displace the second portion of messages based on the expiration times.Type: ApplicationFiled: June 23, 2014Publication date: June 25, 2015Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: GUY L. GUTHRIE, CHARLES F. MARINO, MICHAEL S. SIEGEL, WILLIAM J. STARKE, JEFFREY A. STUECHELI
-
Publication number: 20150178233Abstract: One or more systems, devices, methods, and/or processes described can receive, via an interconnect, messages from processing nodes and a first portion of the messages can displace a second portion of the messages based on priorities of the first portion of messages or based on expirations times of the second portion of messages. In one example, the second portion of messages can be stored via a buffer of a fabric controller (FBC) of the interconnect, and the first portion of messages, associated with higher priorities than the second portion of messages, can displace the second portion of messages in the buffer. For instance, the second portion of messages can include speculative commands. In another example, the second portion of messages can be stored via the buffer, and the second portion of messages, associated with expiration times, can displace the second portion of messages based on the expiration times.Type: ApplicationFiled: December 20, 2013Publication date: June 25, 2015Inventors: GUY L. GUTHRIE, CHARLES F. MARINO, MICHAEL S. SIEGEL, WILLIAM J. STARKE, JEFFREY A. STUECHELI