Patents by Inventor Michael G. Butler
Michael G. Butler 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: 9652396Abstract: A method for accessing a cache memory structure includes dividing a multiple cache elements of a cache memory structure into multiple groups. A serial probing process of the multiple groups is performed. Upon a tag hit resulting from the serial probing process, the probing process for remaining groups exits.Type: GrantFiled: December 27, 2013Date of Patent: May 16, 2017Assignee: Samsung Electronics Co., Ltd.Inventors: Michael G. Butler, Magnus Ekman
-
Publication number: 20150186284Abstract: A method for accessing a cache memory structure includes dividing a multiple cache elements of a cache memory structure into multiple groups. A serial probing process of the multiple groups is performed. Upon a tag hit resulting from the serial probing process, the probing process for remaining groups exits.Type: ApplicationFiled: December 27, 2013Publication date: July 2, 2015Applicant: Samsung Electronics Company, Ltd.Inventors: Michael G. Butler, Magnus Ekman
-
Patent number: 8787058Abstract: A method for comparing content addressable memory (CAM) elements is disclosed. Binary values are stored in a pair of CAM elements. A comparison value is provided to a group of comparators, the comparison value based on the binary value stored in the pair of CAM elements. A match value is provided to the group of comparators, the match value corresponding to a binary value pair to be compared with the binary value stored in the pair of CAM elements. A positive match result value is output from a selected group of comparators via an output line in response to the comparison value matching the match value.Type: GrantFiled: August 11, 2011Date of Patent: July 22, 2014Assignee: Advanced Micro Devices, Inc.Inventors: Ganesh Venkataramanan, Michael G. Butler, James Vinh
-
Publication number: 20130117543Abstract: A method and apparatus for processing multi-cycle instructions include picking a multi-cycle instruction and directing the picked multi-cycle instruction to a pipeline. The pipeline includes a pipeline control configured to detect a latency and a repeat rate of the picked multi-cycle instruction and to count clock cycles based on the detected latency and the detected repeat rate. The method and apparatus further include detecting the repeat rate and the latency of the picked multi-cycle instruction, and counting clock cycles based on the detected repeat rate and the latency of the picked multi-cycle instruction.Type: ApplicationFiled: November 4, 2011Publication date: May 9, 2013Applicant: ADVANCED MICRO DEVICES, INC.Inventors: Ganesh Venkataramanan, Michael G. Butler
-
Publication number: 20130039109Abstract: A method for comparing content addressable memory (CAM) elements is disclosed. Binary values are stored in a pair of CAM elements. A comparison value is provided to a group of comparators, the comparison value based on the binary value stored in the pair of CAM elements. A match value is provided to the group of comparators, the match value corresponding to a binary value pair to be compared with the binary value stored in the pair of CAM elements. A positive match result value is output from a selected group of comparators via an output line in response to the comparison value matching the match value.Type: ApplicationFiled: August 11, 2011Publication date: February 14, 2013Applicant: ADVANCED MICRO DEVICES, INC.Inventors: Ganesh Venkataramanan, Michael G. Butler, James Vinh
-
Patent number: 8214602Abstract: In one embodiment, a processor comprises a data cache and a load/store unit (LSU). The LSU comprises a queue and a control unit, and each entry in the queue is assigned to a different load that has accessed the data cache but has not retired. The control unit is configured to update the data cache hit status of each load represented in the queue as a content of the data cache changes. The control unit is configured to detect a snoop hit on a first load in a first entry of the queue responsive to: the snoop index matching a load index stored in the first entry, the data cache hit status of the first load indicating hit, the data cache detecting a snoop hit for the snoop operation, and a load way stored in the first entry matching a first way of the data cache in which the snoop operation is a hit.Type: GrantFiled: June 23, 2008Date of Patent: July 3, 2012Assignee: Advanced Micro Devices, Inc.Inventors: Ashutosh S. Dhodapkar, Michael G. Butler
-
Patent number: 7861066Abstract: A mechanism for suppressing instruction replay includes a processor having one or more execution units and a scheduler that issue instruction operations for execution by the one or more execution units. The scheduler may also cause instruction operations that are determined to be incorrectly executed to be replayed, or reissued. In addition, a prediction unit within the processor may predict whether a given instruction operation will replay and to provide an indication that the given instruction operation will replay. The processor also includes a decode unit that may decode instructions and in response to detecting the indication, may flag the given instruction operation. The scheduler may further inhibit issue of the flagged instruction operation until a status associated with the flagged instruction is good.Type: GrantFiled: July 20, 2007Date of Patent: December 28, 2010Assignee: Advanced Micro Devices, Inc.Inventors: Ashutosh S. Dhodapkar, Michael G. Butler, Gene W. Shen
-
Patent number: 7743232Abstract: A multiple-core processor having a hierarchical microcode store. A processor may include multiple processor cores, each configured to independently execute instructions defined according to a programmer-visible instruction set architecture (ISA). Each core may include a respective local microcode unit configured to store microcode entries. The processor may also include a remote microcode unit accessible by each of the processor cores. Any given one of the processor cores may be configured to generate a given microcode entrypoint corresponding to a particular microcode entry including one or more operations to be executed by the given processor core, and to determine whether the particular microcode entry is stored within the respective local microcode unit of the given core. In response to determining that the particular microcode entry is not stored within the respective local microcode unit, the given core may convey a request for the particular microcode entry to the remote microcode unit.Type: GrantFiled: July 18, 2007Date of Patent: June 22, 2010Assignee: Advanced Micro Devices, Inc.Inventors: Gene W. Shen, Bruce R. Holloway, Sean Lie, Michael G. Butler
-
Publication number: 20090319727Abstract: In one embodiment, a processor comprises a data cache and a load/store unit (LSU). The LSU comprises a queue and a control unit, and each entry in the queue is assigned to a different load that has accessed the data cache but has not retired. The control unit is configured to update the data cache hit status of each load represented in the queue as a content of the data cache changes. The control unit is configured to detect a snoop hit on a first load in a first entry of the queue responsive to: the snoop index matching a load index stored in the first entry, the data cache hit status of the first load indicating hit, the data cache detecting a snoop hit for the snoop operation, and a load way stored in the first entry matching a first way of the data cache in which the snoop operation is a hit.Type: ApplicationFiled: June 23, 2008Publication date: December 24, 2009Inventors: Ashutosh S. Dhodapkar, Michael G. Butler
-
Publication number: 20090183035Abstract: A processor core includes an instruction decode unit that may dispatch a same integer instruction stream to a plurality of integer execution units and may consecutively dispatch a same floating-point instruction stream to a floating-point unit. The integer execution units may operate in lock-step such that during each clock cycle, each respective integer execution unit executes the same integer instruction. The floating-point unit may execute the same floating-point instruction stream twice. Prior to the integer instructions retiring, compare logic may detect a mismatch between execution results from each of the integer execution units. In addition, prior to the results of the floating-point instruction stream transferring out of the floating-point unit, the compare logic may also detect a mismatch between results of execution of each consecutive floating-point instruction stream. Further, in response to detecting any mismatch, the compare logic may cause instructions causing the mismatch to be re-executed.Type: ApplicationFiled: January 10, 2008Publication date: July 16, 2009Inventors: Michael G. Butler, Nhon Quach
-
Publication number: 20090024838Abstract: A mechanism for suppressing instruction replay includes a processor having one or more execution units and a scheduler that issue instruction operations for execution by the one or more execution units. The scheduler may also cause instruction operations that are determined to be incorrectly executed to be replayed, or reissued. In addition, a prediction unit within the processor may predict whether a given instruction operation will replay and to provide an indication that the given instruction operation will replay. The processor also includes a decode unit that may decode instructions and in response to detecting the indication, may flag the given instruction operation. The scheduler may further inhibit issue of the flagged instruction operation until a status associated with the flagged instruction is good.Type: ApplicationFiled: July 20, 2007Publication date: January 22, 2009Inventors: Ashutosh S. Dhodapkar, Michael G. Butler, Gene W. Shen
-
Publication number: 20090024836Abstract: A multiple-core processor having a hierarchical microcode store. A processor may include multiple processor cores, each configured to independently execute instructions defined according to a programmer-visible instruction set architecture (ISA). Each core may include a respective local microcode unit configured to store microcode entries. The processor may also include a remote microcode unit accessible by each of the processor cores. Any given one of the processor cores may be configured to generate a given microcode entrypoint corresponding to a particular microcode entry including one or more operations to be executed by the given processor core, and to determine whether the particular microcode entry is stored within the respective local microcode unit of the given core. In response to determining that the particular microcode entry is not stored within the respective local microcode unit, the given core may convey a request for the particular microcode entry to the remote microcode unit.Type: ApplicationFiled: July 18, 2007Publication date: January 22, 2009Inventors: Gene W. Shen, Bruce R. Holloway, Sean Lie, Michael G. Butler
-
Publication number: 20080148026Abstract: In one embodiment, a processor comprises a predictor, a checkpoint unit, and circuitry coupled to the checkpoint unit. The predictor is configured to predict an event that can occur during an execution of an instruction operation in the processor. Furthermore, the predictor is configured to provide a confidence indicator corresponding to the prediction. The confidence indicator indicates a relative probability of a correctness of the prediction. The checkpoint unit is configured to store checkpoints of speculative state corresponding to respective instruction operations. Coupled to receive the confidence indicator, the circuitry is configured to save a first checkpoint of speculative state corresponding to the instruction operation if the confidence indicator indicates a first level of probability of correctness. The circuitry is further configured not to save the first checkpoint if the confidence indicator indicates a second level of probability.Type: ApplicationFiled: December 15, 2006Publication date: June 19, 2008Inventors: Ashutosh S. Dhodapkar, Michael G. Butler
-
Patent number: 7293162Abstract: A scheduling scheme and mechanism for a processor system is disclosed. The scheduling scheme provides a reservation station system that includes a control reservation station and a data reservation station. The reservation station system receives an operational entry and for each operational entry it identifies scheduling state information, operand state information, and operand information. The reservation station system stores the scheduling state information and operand information as a control reservation station entry in the control reservation station and stores the operating state information and the operand information as a data reservation station entry in the data reservation station. When control reservation station entries are identified as ready, they are scheduled and issued for execution by a functional unit.Type: GrantFiled: December 18, 2002Date of Patent: November 6, 2007Assignee: Fujitsu LimitedInventors: Michael C Shebanow, Michael G Butler
-
Patent number: 7130991Abstract: A method and apparatus for loop detection for improved branch prediction accuracy. In one embodiment, the method may comprise executing a branch instruction, updating a plurality of event counts corresponding to the branch instruction in response to its executing, determining a loop behavior status corresponding to the branch instruction in response to the event count updating, and promoting the branch instruction to a loop branch prediction type in response to the determination of loop behavior status.Type: GrantFiled: October 9, 2003Date of Patent: October 31, 2006Assignee: Advanced Micro Devices, Inc.Inventor: Michael G. Butler
-
Patent number: 7076635Abstract: A method and apparatus for reducing instruction ITLB accesses. In one embodiment, the method may comprise generating a next virtual fetch address corresponding to an instruction fetch request and determining whether a current physical address translation is valid for the next virtual fetch address in response to its generation, wherein the determination may comprise detecting a change in the virtual page number of the next virtual fetch address relative to a virtual page number of a current virtual fetch address. The method may further comprise activating an ITLB circuit in response to determining that the current physical address translation is not valid for the next virtual fetch address, and performing the instruction fetch using the current physical address translation without activating the ITLB circuit in response to determining that the current physical address translation is valid for said next virtual fetch address.Type: GrantFiled: September 4, 2003Date of Patent: July 11, 2006Assignee: Advanced Micro Devices, Inc.Inventors: Michael G. Butler, S. Craig Nelson
-
Publication number: 20040123077Abstract: A scheduling scheme and mechanism for a processor system is disclosed. The scheduling scheme provides a reservation station system that includes a control reservation station and a data reservation station. The reservation station system receives an operational entry and for each operational entry it identifies scheduling state information, operand state information, and operand information. The reservation station system stores the scheduling state information and operand information as a control reservation station entry in the control reservation station and stores the operating state information and the operand information as a data reservation station entry in the data reservation station. When control reservation station entries are identified as ready, they are scheduled and issued for execution by a functional unit.Type: ApplicationFiled: December 18, 2002Publication date: June 24, 2004Inventors: Michael C. Shebanow, Michael G. Butler
-
Patent number: 6550213Abstract: A system for forming concrete slabs has been developed for commercial buildings having a steel moment-frame structure. This system utilizes the cold-formed-steel framing members, such as the wall girts shipped with a particular building package, to be first utilized as slab foundation forming elements before being framed into the building. The system defines foundation geometry upon simple assembly of the forming elements, and efficiently provides for placement of anchoring hardware which corresponds exactly to the connections of the structural frames.Type: GrantFiled: April 9, 1997Date of Patent: April 22, 2003Inventor: Michael G. Butler
-
Patent number: 6367764Abstract: A stake suitable for use in construction is formed from an elongate threaded metal member, typically of length between 0.45 meter and 1.8 meter, having two ends. A first end region, tapered to a sharp point over typically 3 centimeters, is suitable to be plunged into earth. A middle region has threads that are both deeply cut, typically at a ratio of root diameter to outside diameter less than 0.80, and steeply inclined, typically at least 1 in 20. A second end region has a feature in the shape of a regular prism suitable to be engaged by a torquing tool for rotation of the entire stake. The second end region feature may be a prism of regular cross section, normally a hexagonal prism, of a diameter everywhere less than the minor diameter of the middle region's threads.Type: GrantFiled: November 3, 1998Date of Patent: April 9, 2002Inventor: Michael G. Butler
-
Patent number: 6120723Abstract: A concrete footing for the construction of a wall is created by the placement of a guide member with a series of very large holes, which is supported with adjustable threaded stake supports. This guide is situated along a location which will become the top surface of that footing, typically within the confines of a footing trench. Concrete is conventionally placed via a pump through the large holes thus filling the trench void up to the guide element underside. Adjacent guides are attached with plastic connectors which also fixture vertical reinforcing elements which disassemble to strip guides, typically immediately after concrete has been placed.Type: GrantFiled: April 9, 1997Date of Patent: September 19, 2000Inventor: Michael G. Butler