Patents by Inventor Frank C. Galloway

Frank C. Galloway 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: 20220100519
    Abstract: A processor employs a plurality of fetch and decode pipelines by dividing an instruction stream into instruction blocks with identified boundaries. The processor includes a branch predictor that generates branch predictions. Each branch prediction corresponds to a branch instruction and includes a prediction that the corresponding branch is to be taken or not taken. In addition, each branch prediction identifies both an end of the current branch prediction window and the start of another branch prediction window. Using these known boundaries, the processor provides different sequential fetch streams to different ones of the plurality of fetch and decode states, which concurrently process the instructions of the different fetch streams, thereby improving overall instruction throughput at the processor.
    Type: Application
    Filed: September 25, 2020
    Publication date: March 31, 2022
    Inventors: Robert B. COHEN, Tzu-Wei LIN, Anthony J. BYBELL, Bill Kai Chiu KWAN, Frank C. GALLOWAY
  • Patent number: 11048506
    Abstract: A system and method for tracking stores and loads to reduce load latency when forming the same memory address by bypassing a load store unit within an execution unit is disclosed. Store-load pairs which have a strong history of store-to-load forwarding are identified. Once identified, the load is memory renamed to the register stored by the store. The memory dependency predictor may also be used to detect loads that are dependent on a store but cannot be renamed. In such a configuration, the dependence is signaled to the load store unit and the load store unit uses the information to issue the load after the identified store has its physical address.
    Type: Grant
    Filed: June 24, 2019
    Date of Patent: June 29, 2021
    Assignee: ADVANCED MICRO DEVICES, INC.
    Inventors: Krishnan V. Ramani, Kai Troester, Frank C. Galloway, David N. Suggs, Michael D. Achenbach, Betty Ann McDaniel, Marius Evers
  • Publication number: 20190310845
    Abstract: A system and method for tracking stores and loads to reduce load latency when forming the same memory address by bypassing a load store unit within an execution unit is disclosed. Store-load pairs which have a strong history of store-to-load forwarding are identified. Once identified, the load is memory renamed to the register stored by the store. The memory dependency predictor may also be used to detect loads that are dependent on a store but cannot be renamed. In such a configuration, the dependence is signaled to the load store unit and the load store unit uses the information to issue the load after the identified store has its physical address.
    Type: Application
    Filed: June 24, 2019
    Publication date: October 10, 2019
    Applicant: Advanced Micro Devices, Inc.
    Inventors: Krishnan V. Ramani, Kai Troester, Frank C. Galloway, David N. Suggs, Michael D. Achenbach, Betty Ann McDaniel, Marius Evers
  • Patent number: 10331357
    Abstract: A system and method for tracking stores and loads to reduce load latency when forming the same memory address by bypassing a load store unit within an execution unit is disclosed. The system and method include storing data in one or more memory dependent architectural register numbers (MdArns), allocating the one or more MdArns to a MEMFILE, writing the allocated one or more MdArns to a map file, wherein the map file contains a MdArn map to enable subsequent access to an entry in the MEMFILE, upon receipt of a load request, checking a base, an index, a displacement and a match/hit via the map file to identify an entry in the MEMFILE and an associated store, and on a hit, providing the entry responsive to the load request from the one or more MdArns.
    Type: Grant
    Filed: December 15, 2016
    Date of Patent: June 25, 2019
    Assignee: ADVANCED MICRO DEVICES, INC.
    Inventors: Betty Ann McDaniel, Michael D. Achenbach, David N. Suggs, Frank C. Galloway, Kai Troester, Krishnan V. Ramani
  • Publication number: 20180052613
    Abstract: A system and method for tracking stores and loads to reduce load latency when forming the same memory address by bypassing a load store unit within an execution unit is disclosed. The system and method include storing data in one or more memory dependent architectural register numbers (MdArns), allocating the one or more MdArns to a MEMFILE, writing the allocated one or more MdArns to a map file, wherein the map file contains a MdArn map to enable subsequent access to an entry in the MEMFILE, upon receipt of a load request, checking a base, an index, a displacement and a match/hit via the map file to identify an entry in the MEMFILE and an associated store, and on a hit, providing the entry responsive to the load request from the one or more MdArns.
    Type: Application
    Filed: December 15, 2016
    Publication date: February 22, 2018
    Applicant: Advanced Micro Devices, Inc.
    Inventors: Betty Ann McDaniel, Michael D. Achenbach, David N. Suggs, Frank C. Galloway, Kai Troester, Krishnan V. Ramani
  • Patent number: 9696998
    Abstract: The apparatuses, systems, and methods in accordance with the embodiments disclosed herein may facilitate modifying post silicon instruction behavior. Embodiments herein may provide registers in predetermined locations in an integrated circuit. These registers may be mapped to generic instructions, which can modify an operation of the integrated circuit. In some embodiments, these registers may be used to implement a patch routine to change the behavior of at least a portion of the integrated circuit. In this manner, the original design of the integrated circuit may be altered.
    Type: Grant
    Filed: August 29, 2013
    Date of Patent: July 4, 2017
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Frank C Galloway
  • Publication number: 20150067389
    Abstract: The apparatuses, systems, and methods in accordance with the embodiments disclosed herein may facilitate modifying post silicon instruction behavior. Embodiments herein may provide registers in predetermined locations in an integrated circuit. These registers may be mapped to generic instructions, which can modify an operation of the integrated circuit. In some embodiments, these registers may be used to implement a patch routine to change the behavior of at least a portion of the integrated circuit. In this manner, the original design of the integrated circuit may be altered.
    Type: Application
    Filed: August 29, 2013
    Publication date: March 5, 2015
    Applicant: ADVANCED MICRO DEVICES, INC.
    Inventor: Frank C. Galloway
  • Patent number: 6675235
    Abstract: An execution unit (2) interface protocol allowing flow-through of data, where a function is specified once and the execution unit performs the function for multiple sets of input data. Function execution is pipelined through the execution unit, where an input unit (6) stores information, while a function logic unit (4) processes data and an output unit (8) holds results to be output. The execution unit (2) allows for data rate distortion, in applications such as data compression, where the amount of data received is different from the amount of data generated as output.
    Type: Grant
    Filed: January 18, 2000
    Date of Patent: January 6, 2004
    Assignee: Motorola, Inc.
    Inventors: Frank C. Galloway, Kristen L. Mason, Gary R. Morrison, Charles Edward Nuckolls, Jennifer L. McKeown
  • Patent number: 6421744
    Abstract: Direct memory access controller (DMAC) (54) adapted to directly execute C language style FOR tasks assigned by a processor (70), where the FOR task includes a movement of a data element from a first location to a second location in memory. The DMAC includes multiple execution units (EUs) (88, 90, 92), each to perform an arithmetic or logical operation, and a FOR task controller (80, 82, 86) to perform the data movement. The FOR task controller selects the operation to be performed by the EU. In one embodiment, the FOR task is made up of C language type FOR loops, where descriptors identify the control and body of the loop. The descriptors identify the source of operands for an EU, and the source may be changed within a FOR task. A descriptor specifies a function code for an EU and may specify multiple sets of operands for the EU.
    Type: Grant
    Filed: October 25, 1999
    Date of Patent: July 16, 2002
    Assignee: Motorola, Inc.
    Inventors: Gary R. Morrison, Kristen L. Mason, Frank C. Galloway, Charles E. Nuckolls, Jennifer L. McKeown, Jeffrey M. Polega, Donald L. Tietjen
  • Patent number: 6418489
    Abstract: Direct memory access controller (DMA) (2) adapted to directly execute C language style FOR tasks, where the FOR task includes a movement of a data element from a first location to a second location in memory, and the movement is controlled by a master DMA engine (MDE) (6). A master DMA engine (MDE) (6) includes a top level state machine (52) to coordinate a context save state machine (54), a parse state machine (56), and a running state machine (58). An loop control descriptor (LCD) queue (74) and a data routing descriptor (DRD) cache store information. The LCD queue allows pipelining of descriptor parsing, while the DRD cache avoids refetching of DRDs on reentry of loops.
    Type: Grant
    Filed: January 18, 2000
    Date of Patent: July 9, 2002
    Assignee: Motorola, Inc.
    Inventors: Kristen L. Mason, Gary R. Morrison, Jeffrey M. Polega, Donald L. Tietjen, Frank C. Galloway, Charles Edward Nuckolls, Jennifer L. McKeown, Robert Bradford Cohen
  • Patent number: 5918247
    Abstract: When a processor (102) issues a request for an address (502), a determination is made as to whether or not the address is contained within a buffer (103) or cache associated with the processor (102), or the address is contained within a line of data currently being fetched from an external memory system (105). If the address is not contained within the buffer or cache and is not contained within a line being currently fetched, the current fetch will be cancelled (515, 516).
    Type: Grant
    Filed: October 27, 1997
    Date of Patent: June 29, 1999
    Assignee: Motorola, Inc.
    Inventors: Sanjay Patel, Donald L. Tietjen, Frank C. Galloway
  • Patent number: 5689659
    Abstract: A data processing system (10) having a bus controller (5) that uses a communication bus (22) which adapts to various system resources (7) and is capable of burst transfers. In one embodiment, the processor core (2) and system resources (7) supply control signals supplying required parameters of the next transfer. The bus controller is capable of transferring operands and/or instructions in incremental bursts from these system resources. Each transfer data burst has an associated unique access address where successive bytes of data are associated with sequential addresses and the burst increment equals the data port size. The burst capability is dependent on the ability of system resource (7) to burst data and can be inhibited with a transfer burst inhibit signal. The length of the desired data is controlled by a sizing signal from the core (2) or from cache and the increment size is supplied by the resource (7).
    Type: Grant
    Filed: October 30, 1995
    Date of Patent: November 18, 1997
    Assignee: Motorola, Inc.
    Inventors: Donald L. Tietjen, Frank C. Galloway, Juan Guillermo Revilla, Nancy G. Woodbridge, David M. Menard, Ronny L. Arnold
  • Patent number: 5649125
    Abstract: A data processing system (10) having a bus controller (5) and a multiplexed communication bus (22) and provides a portion of the valid address information during the data phase. In one embodiment, in response to an address extension control signal, the bus controller (5) allocates the communication bus (22) to provide the address extension on conductors not needed for data, reducing the need for address latch circuitry. In an alternate embodiment, the bus controller (5) provides burst transfers where the processor core (2) increments a portion of each address with each data in the burst. For such burst transfers, the length of the desired data is controlled by a sizing signal (42) from the core (2) or from cache and the increment size is supplied by the system resource (7).
    Type: Grant
    Filed: October 30, 1995
    Date of Patent: July 15, 1997
    Assignee: Motorola, Inc.
    Inventors: Donald L. Tietjen, Frank C. Galloway, David M. Menard, Ronny L. Arnold, Nancy G. Woodbridge