Patents by Inventor Korbin S. Van Dyke

Korbin S. Van Dyke 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: 6934832
    Abstract: A computer has a multi-stage execution pipeline and an instruction decoder.
    Type: Grant
    Filed: September 21, 2000
    Date of Patent: August 23, 2005
    Assignee: ATI International SRL
    Inventors: Korbin S. Van Dyke, Paul Campbell, Shalesh Thusoo, T. R. Ramesh, Alan McNaughton
  • Patent number: 6826748
    Abstract: A method and computer for performance of the method. While executing a program on a computer, the computer uses registers of a general register file for storage of instruction results. Profile information describing the profileable events is recorded into the general register file as the profileable events occur, without first capturing the information into a main memory of the computer.
    Type: Grant
    Filed: June 24, 1999
    Date of Patent: November 30, 2004
    Assignee: ATI International SRL
    Inventors: Paul H. Hohensee, David L. Reese, John S. Yates, Jr., Korbin S. Van Dyke, T. R. Ramesh, Shalesh Thusoo, Gurjeet Singh Saund, Niteen Aravind Patkar
  • Patent number: 6789181
    Abstract: A method and computer for executing the method. A source program is translated into an object program, in a manner in which the translated object program has a different execution behavior than the source program. The translated object program is executed under a monitor capable of detecting any deviation from fully-correct interpretation before any side-effect of the different execution behavior is irreversibly committed. When the monitor detects the deviation, or when an interrupt occurs during execution of the object program, a state of the program is established corresponding to a state that would have occurred during an execution of the source program, and from which execution can continue. Execution of the source program continues primarily in a hardware emulator designed to execute instructions of an instruction set non-native to the computer.
    Type: Grant
    Filed: November 3, 1999
    Date of Patent: September 7, 2004
    Assignee: ATI International, SRL
    Inventors: John S. Yates, David L. Reese, Korbin S. Van Dyke, Paul H. Hohensee
  • Patent number: 6763452
    Abstract: A method and a multiprocessor computer for execution of the method. A first CPU has a general register file, an instruciton pipeline, and profile circuitry. The profile circuitry is operatively interconnected and under common hardware control with the instruction pipeline. The profile circuitry and instruction pipeline are cooperatively interconnected to detect the occurrence of profileable events occurring in the instruction pipeline. The profile circuitry is operable without software intervention to effect recording of profile information describing the profileable events into the general register file, without first capturing the information into a main memory of the computer. The recording is essentially concurrent with the occurrence of the profileable events.
    Type: Grant
    Filed: June 24, 1999
    Date of Patent: July 13, 2004
    Assignee: ATI International SRL
    Inventors: Paul H. Hohensee, John S. Yates, Jr., Korbin S. Van Dyke, David L. Reese, Stephen C. Purcell
  • Patent number: 6701426
    Abstract: A multiple instruction set processor and method dynamically activates one of a plurality of branch prediction processes depending upon which one of a multiple instruction set is operational. Shared branch history table structures are used and are indexed differently depending upon which instruction set is operational. The apparatus and method also allows switching between instruction set index generators for each of the plurality of instruction sets. Accordingly, different indexes to branch prediction data are used depending upon which of the plurality of instruction sets is operational. Shared memory may be used to contain branch prediction table data for instructions from each of the plurality of instruction sets in response to selection of an instruction set. Shared memory is also used to contain branch target buffer data for instructions from each of the plurality of instruction sets in response to selection of one of the instruction sets.
    Type: Grant
    Filed: October 19, 1999
    Date of Patent: March 2, 2004
    Assignee: ATI International Srl
    Inventors: Greg L. Ries, Ronak S. Patel, Korbin S. Van Dyke, Niteen Patkar, T. R. Ramesh
  • Patent number: 6671798
    Abstract: In a first aspect of the invention, branch prediction hardware, comprising logic and interconnect, is configurable via a control line to alter the manner in which the branch prediction is generated. The configuration can be done programmatically in software. Or, the configuration can be done by hardware in response to processor events. Such processor events include the loading of the CS register and changes in the instruction workload. In a second aspect of the invention, related to speculative execution, the directions of a plurality of branches are predicted based partly on resolved branch history information. Tentative branch history information is then stored for each of the predicted branches. When a predicted branch is resolved, the resolved branch history information is updated based on the stored tentative branch history information for the branch most recently resolved. Additionally, the predictions may be partly based on preceding unresolved branch predictions if any are outstanding.
    Type: Grant
    Filed: November 16, 2001
    Date of Patent: December 30, 2003
    Assignee: Advanced Micro Devices, Inc.
    Inventors: David L. Puziol, Korbin S. Van Dyke, Larry Widigen, Len Shar, Walstein Bennett Smith, III
  • Patent number: 6654872
    Abstract: An instruction aligner and method evaluates a fixed length instruction cache line by breaking it into at least two components. These two components, in one embodiment, include half of the instruction cache line being designated as most significant bytes and the second half of the instruction cache line being designated as least significant bytes. A byte right rotator is responsible for feeding the next sixteen bytes of the instruction stream, while a byte right shifter shifts the unused bytes of the current sixteen bytes the aligner is working on. The byte rotator and byte shifter combine to provide aligned variable length instructions for decoding based on either a fetch PC value or current instruction length.
    Type: Grant
    Filed: January 27, 2000
    Date of Patent: November 25, 2003
    Assignee: ATI International SRL
    Inventors: T. R. Ramesh, Korbin S. Van Dyke
  • Patent number: 6549959
    Abstract: A method and computer for executing the method. A CPU is programmed to execute first and second processes, the first process programmed to generate a second representation in a computer memory of information of the second process stored in the memory in a first representation. A main memory divided into pages for management by a virtual memory manager that uses a table stored in the memory.
    Type: Grant
    Filed: November 4, 1999
    Date of Patent: April 15, 2003
    Assignee: ATI International Srl
    Inventors: John S. Yates, David L. Reese, Korbin S. Van Dyke
  • Patent number: 6499123
    Abstract: An integrated circuit having a normal mode for operating under normal operating conditions and a debug mode for operating to test and debug the integrated circuit. The integrated circuit includes a plurality of output pins that carry a first plurality of signals in the normal mode and carry a second plurality of signals in the debug mode. In one embodiment, the integrated circuit embodies a microprocessor. The microprocessor may include logic circuitry for enabling the second plurality of signals to be output from a multiplexer to the output pins in response to a predetermined event, such as a hit in an associated memory unit.
    Type: Grant
    Filed: April 12, 2000
    Date of Patent: December 24, 2002
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Harold L. McFarland, David R. Stiles, Korbin S. Van Dyke, Shrenik Mehta, John Gregory Favor, Dale R. Greenley, Robert A. Cargnoni
  • Patent number: 6449671
    Abstract: A method and apparatus for busing data elements within a computing system includes processing that begins by providing, on a shared bus, a first control signal relating to a first transaction during a first bus cycle. The processing continues by providing a second control signal relating to a second transaction and a first address signal relating to the first transaction during a second bus cycle. The processing continues by providing a third control signal relating to a third transaction and a second address signal relating to a second transaction during a third bus cycle. The processing then continues by providing a first status relating to the first transaction and a third addressing signal relating to the third transaction during a fourth bus cycle. The processing then continues by providing a second status relating to the second transaction during a fifth bus cycle.
    Type: Grant
    Filed: June 9, 1999
    Date of Patent: September 10, 2002
    Assignee: ATI International Srl
    Inventors: Niteen A. Patkar, Stephen C. Purcell, Shalesh Thusoo, Korbin S. Van Dyke
  • Patent number: 6425075
    Abstract: An improved branch prediction cache (BPC) scheme that utilizes a hybrid cache structure. The BPC provides two levels of branch information caching. The fully associative first level BPC is a shallow but wide structure (36 32-byte entries), which caches full prediction information for a limited number of branch instructions. The second direct mapped level BPC is a deep but narrow structure (256 2-byte entries), which caches only partial prediction information, but does so for a much larger number of branch instructions. As each branch instruction is fetched and decoded, its address is used to perform parallel look-ups in the two branch prediction caches.
    Type: Grant
    Filed: July 27, 1999
    Date of Patent: July 23, 2002
    Assignee: Advanced Micro Devices, Inc.
    Inventors: David R. Stiles, John G. Favor, Korbin S. Van Dyke
  • Patent number: 6397379
    Abstract: A method and a computer for execution of the method. As part of executing a stream of instructions, a series of memory loads is issued from a computer CPU to a bus, some directed to well-behaved memory and some directed to non-well-behaved devices in I/O space. Computer addresses are stored of instructions of the stream that issued memory loads to the non-well-behaved memory, the storage form of the recording allowing determination of whether the memory load was to well-behaved memory or not-well-behaved memory without resolution of any memory address stored in the recording.
    Type: Grant
    Filed: October 28, 1999
    Date of Patent: May 28, 2002
    Assignee: ATI International SRL
    Inventors: John S. Yates, Jr., David L. Reese, Korbin S. Van Dyke
  • Patent number: 6360318
    Abstract: In a first aspect of the invention, branch prediction hardware, comprising logic and interconnect, is configurable via a control line to alter the manner in which the branch prediction is generated. The configuration can be done programmatically In software. Or, the configuration can be done by hardware in response to processor events. Such processor events include the loading of the CS register and changes in the instruction workload. In a second aspect of the invention, related to speculative execution, the directions of a plurality of branches are predicted based partly on resolved branch history information. Tentative branch history information is then stored for each of the predicted branches. When a predicted branch is resolved, the resolved branch history information is updated based on the stored tentative branch history information for the branch most recently resolved. Additionally, the predictions may be partly based on preceding unresolved branch predictions if any are outstanding.
    Type: Grant
    Filed: June 29, 2000
    Date of Patent: March 19, 2002
    Assignee: Advanced Micro Devices, Inc.
    Inventors: David L. Puziol, Korbin S. Van Dyke, Larry Widigen, Len Shar, Walstein Bennett Smith, III
  • Patent number: 6324635
    Abstract: A method and apparatus for address paging emulation includes processing that begins by producing an extended logical address in response to a memory access request. The extended logical address includes a logical address and an address extension. The processing then continues by determining whether an entry exists for the memory access request in a translation look aside table. Such a determination is based on the logical address. When an entry does not exists for the memory access request, the process continues by providing the extended logical address to a plurality of exception handlers. The exception handlers interpret the address extension to identify one of the exception handlers to process the extended logical address. The exception handlers include a page exception handler, a non-page exception handler, a native processor exception handler, and a page directory entry exception handler.
    Type: Grant
    Filed: June 9, 1999
    Date of Patent: November 27, 2001
    Assignee: ATI International SRL
    Inventors: Korbin S. Van Dyke, Paul W. Campbell
  • Patent number: 6321314
    Abstract: A method and apparatus for restricting memory access includes processing that begins by monitoring memory access requests. When one of the memory access requests is requesting access to restricted memory, determining the mode of operation of the processor. Note that the mode of operation of the processor may be a system special operation (i.e., operations internal to the operation of the computing system that are beyond access of computing system users and programmers), non-system special operations, or a valid response to a restricted memory access request. When the mode of operation is non-system special and the memory access is requesting access to restricted memory, the memory access request is modified. The processing then continues by providing a response in accordance with the modified memory access request.
    Type: Grant
    Filed: June 9, 1999
    Date of Patent: November 20, 2001
    Assignee: ATI International S.R.L.
    Inventor: Korbin S. Van Dyke
  • Patent number: 6282639
    Abstract: In a first aspect of the invention, branch prediction hardware, comprising logic and interconnect, is configurable via a control line to alter the manner in which the branch prediction is generated. The configuration can be done programmatically in software. Or, the configuration can be done by hardware in response to processor events. Such processor events include the loading of the CS register and changes in the instruction workload. In a second aspect of the invention, related to speculative execution, the directions of a plurality of branches are predicted based partly on resolved branch history information. Tentative branch history information is then stored for each of the predicted branches. When a predicted branch is resolved, the resolved branch history information is updated based on the stored tentative branch history information for the branch most recently resolved. Additionally, the predictions may be partly based on preceding unresolved branch predictions if any are outstanding.
    Type: Grant
    Filed: June 29, 2000
    Date of Patent: August 28, 2001
    Assignee: Advanced Micro Devices, Inc.
    Inventors: David L. Puziol, Korbin S. Van Dyke, Larry Widigen, Len Shar, Walstein Bennett Smith, III
  • Patent number: 6212629
    Abstract: A pipeline control system for implementing a virtual architecture having a complex instruction set is distributed over RISC-like semi-autonomous functional units in a processor. Decoder logic fetches instructions of the target architecture and translates them into simpler RISC-like operations. These operations, each having an associated tag, are issued to the functional units. Address processing unit computes addresses of the instructions and operands, performs segment relocation, and manages the processor's memory. Operations are executed by the units in a manner that is generally independent of operation processing by the other units. The units report termination information back to the decoder logic, but do not irrevocably change the state of the machine. Based on the termination information, the decoder logic retires normally terminated operations in order.
    Type: Grant
    Filed: July 14, 1998
    Date of Patent: April 3, 2001
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Harold L. McFarland, David R. Stiles, Korbin S. Van Dyke, Shrenik Mehta, John Gregory Favor, Dale R. Greenley, Robert A. Cargnoni
  • Patent number: 6195745
    Abstract: The existing execution units of a high-performance processor are augmented by tile addition of a supplemental integer execution unit, termed the Add/Move Unit (AMU), which performs select adds and moves in parallel and out-of-order with respect to the other execution units. At small incremental cost, AMU enables better use of the expensive limited resources of an existing Address Preparation unit (AP), which handles linear and physical address generation for memory operand references, control transfers, and page crosses. AMU removes data dependencies and thereby increases the available instruction level parallelism. The increased instruction level parallelism is readily exploited by the processor's ability to perform out-of-order and speculative execution, and performance is enhanced as a result.
    Type: Grant
    Filed: May 18, 1998
    Date of Patent: February 27, 2001
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Elliot A. Sowadsky, Larry Widigen, David L. Puziol, Korbin S. Van Dyke
  • Patent number: 6108777
    Abstract: In a first aspect of the invention, branch prediction hardware, comprising logic and interconnect, is configurable via a control line to alter the manner in which the branch prediction is generated. The configuration can be done programmatically in software. Or, the configuration can be done by hardware in response to processor events. Such processor events include the loading of the CS register and changes in the instruction workload. In a second aspect of the invention, related to speculative execution, the directions of a plurality of branches are predicted based partly on resolved branch history information. Tentative branch history information is then stored for each of the predicted branches. When a predicted branch is resolved, the resolved branch history information is updated based on the stored tentative branch history information for the branch most recently resolved. Additionally, the predictions may be partly based on preceding unresolved branch predictions if any are outstanding.
    Type: Grant
    Filed: May 6, 1998
    Date of Patent: August 22, 2000
    Assignee: Advanced Micro Devices, Inc.
    Inventors: David L. Puziol, Korbin S. Van Dyke, Larry Widigen, Len Shar, Walstein Bennett Smith, III
  • Patent number: 6067616
    Abstract: An improved branch prediction cache (BPC) scheme that utilizes a hybrid cache structure. The BPC provides two levels of branch information caching. The fully associative first level BPC is a shallow but wide structure (36 32-byte entries), which caches full prediction information for a limited number of branch instructions. The second direct mapped level BPC is a deep but narrow structure (256 2-byte entries), which caches only partial prediction information, but does so for a much larger number of branch instructions. As each branch instruction is fetched and decoded, its address is used to perform parallel look-ups in the two branch prediction caches.
    Type: Grant
    Filed: April 26, 1996
    Date of Patent: May 23, 2000
    Assignee: Advanced Micro Devices, Inc.
    Inventors: David R. Stiles, John G. Favor, Korbin S. Van Dyke