Patents by Inventor Kurt Lewchuk

Kurt Lewchuk 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: 7870407
    Abstract: A processor can operate in different power modes. In an active power mode, the processor executes software. In response to receiving a halt indication from the software, hardware at the processor evaluates bus transactions for the processor. If the bus transactions meet a heuristic, hardware places a processor core in a lower power mode, such as a retention mode. Because the bus transactions are evaluated by hardware, rather than by software, and the software is not required to perform handshakes and other protocols to place the processor in the lower power mode, the processor is able to place the processor core into the lower power mode more quickly, thereby conserving power.
    Type: Grant
    Filed: May 18, 2007
    Date of Patent: January 11, 2011
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Alex Branover, Frank P. Helms, Jonathan M. Owen, Kurt Lewchuk, Maurice Steinman, Paul Mackey
  • Patent number: 7856562
    Abstract: A method includes applying a voltage to a first processor core of a plurality of processor cores to deactivate the first processor core, the voltage less than a retention voltage of the first processor core. The application of the voltage can be in response to a software setting. The software setting can be configured via a user input, a software application, an operating system, or a BIOS setting. Alternately, the application of the voltage can be in response to a permanent hardware setting, such as the state of a fuse associated with the first processor core.
    Type: Grant
    Filed: May 2, 2007
    Date of Patent: December 21, 2010
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Alexander Branover, Maurice Steinman, Frank Helms, Bill K. C. Kwan, W. Kurt Lewchuk, Paul Mackey
  • Publication number: 20080288799
    Abstract: A processor can operate in different power modes. In an active power mode, the processor executes software. In response to receiving a halt indication from the software, hardware at the processor evaluates bus transactions for the processor. If the bus transactions meet a heuristic, hardware places a processor core in a lower power mode, such as a retention mode. Because the bus transactions are evaluated by hardware, rather than by software, and the software is not required to perform handshakes and other protocols to place the processor in the lower power mode, the processor is able to place the processor core into the lower power mode more quickly, thereby conserving power.
    Type: Application
    Filed: May 18, 2007
    Publication date: November 20, 2008
    Applicant: ADVANCED MICRO DEVICES, INC.
    Inventors: Alex Branover, Frank P. Helms, Jonathan M. Owen, Kurt Lewchuk, Maurice Steinman, Paul Mackey
  • Publication number: 20080276026
    Abstract: A method includes applying a voltage to a first processor core of a plurality of processor cores to deactivate the first processor core, the voltage less than a retention voltage of the first processor core. The application of the voltage can be in response to a software setting. The software setting can be configured via a user input, a software application, an operating system, or a BIOS setting. Alternately, the application of the voltage can be in response to a permanent hardware setting, such as the state of a fuse associated with the first processor core.
    Type: Application
    Filed: May 2, 2007
    Publication date: November 6, 2008
    Applicant: ADVANCED MICRO DEVICES, INC.
    Inventors: Alexander Branover, Maurice Steinman, Frank Helms, Bill K.C. Kwan, W. Kurt Lewchuk, Paul Mackey
  • Patent number: 6473832
    Abstract: A processor has pre-cache and post-cache buffers. The pre-cache (or LS1) buffer stores memory operations which have not yet probed the data cache. The post-cache (or LS2) buffer stores the memory operations which have probed the data cache. As a memory operation probes the data cache, it is moved from the LS1 buffer to the LS2 buffer. Since misses and stores which have probed the data cache do not reside in the LS1 buffer, the scan logic for selecting memory operations from the LS1 buffer to probe the data cache may be simple and low latency, allowing for the load latency to the data cache for load hits to be relatively low. Furthermore, since the memory operations which have probed the data cache have been removed from the LS1 buffer, the simple scan logic may support high performance features such as allowing hits to proceed under misses, etc.
    Type: Grant
    Filed: May 18, 1999
    Date of Patent: October 29, 2002
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Hebbalalu S. Ramagopal, William Kurt Lewchuk, William Alexander Hughes
  • Patent number: 6415360
    Abstract: A processor employs an SMC check apparatus. The SMC check apparatus may minimize the number of explicit SMC checks performed for non-cacheable stores. Cacheable stores may be handled using any suitable mechanism. For non-cacheable stores, the processor tracks whether or not the in-flight instructions are cached. Upon encountering a non-cacheable store, the processor inhibits an SMC check if the in-flight instructions are cached. Since, for performance reasons, the code stream is often cached, non-cacheable stores may frequently be able to skip an explicit, complex, and time consuming SMC check. Performance of non-cacheable stores (and memory throughput overall) may be increased. The handling of non-cacheable stores as described herein may be particularly beneficial to video data manipulations, which may frequently be of a non-cacheable memory type and which may be important to the overall performance of a computer system.
    Type: Grant
    Filed: May 18, 1999
    Date of Patent: July 2, 2002
    Assignee: Advanced Micro Devices, Inc.
    Inventors: William Alexander Hughes, William Kurt Lewchuk, Gerald D. Zuraski, Jr.
  • Patent number: 6298424
    Abstract: A computer system includes one or more microprocessors. The microprocessors assign a priority level to each memory operation as the memory operations are initiated. In one embodiment, the priority levels employed by the microprocessors include a fetch priority level and a prefetch priority level. The fetch priority level is higher priority than the prefetch priority level, and is assigned to memory operations which are the direct result of executing an instruction. The prefetch priority level is assigned to memory operations which are generated according to a prefetch algorithm implemented by the microprocessor. As memory operations are routed through the computer system to main memory and corresponding data transmitted, the elements involved in performing the memory operations are configured to interrupt the transfer of data for the lower priority memory operation in order to perform the data transfer for the higher priority memory operation.
    Type: Grant
    Filed: March 10, 2000
    Date of Patent: October 2, 2001
    Assignee: Advanced Micro Devices, Inc.
    Inventors: W. Kurt Lewchuk, Brian D. McMinn, James K. Pickett
  • Patent number: 6157993
    Abstract: During execution of a code sequence, a profile is generated containing addresses of the data cache misses experienced during the execution. The profile is associated with the code sequence such that, during a future execution of the code sequence, the profile is available. Prefetching may be performed, based on the profile. Since the profile records a sequence of miss addresses, an arbitrarily complex miss pattern can be prefetched. In one embodiment, multiple profiles may be associated with a code sequence having multiple entry points (e.g. multiple instructions at which execution may begin within the code sequence). When the code sequence is executed, the profile associated with the entry point of the current execution may be selected. Additionally, a new profile may be generated. If the entry point of the current execution is not associated with a profile, the new profile is saved.
    Type: Grant
    Filed: January 3, 2000
    Date of Patent: December 5, 2000
    Assignee: Advanced Micro Devices, Inc.
    Inventor: W. Kurt Lewchuk
  • Patent number: 6058461
    Abstract: A computer system includes one or more microprocessors. The microprocessors assign a priority level to each memory operation as the memory operations are initiated. In one embodiment, the priority levels employed by the microprocessors include a fetch priority level and a prefetch priority level. The fetch priority level is higher priority than the prefetch priority level, and is assigned to memory operations which are the direct result of executing an instruction. The prefetch priority level is assigned to memory operations which are generated according to a prefetch algorithm implemented by the microprocessor. As memory operations are routed through the computer system to main memory and corresponding data transmitted, the elements involved in performing the memory operations are configured to interrupt the transfer of data for the lower priority memory operation in order to perform the data transfer for the higher priority memory operation.
    Type: Grant
    Filed: December 2, 1997
    Date of Patent: May 2, 2000
    Assignee: Advanced Micro Devices, Inc.
    Inventors: W. Kurt Lewchuk, Brian D. McMinn, James K. Pickett
  • Patent number: 6047363
    Abstract: During execution of a code sequence, a profile is generated containing addresses of the data cache misses experienced during the execution. The profile is associated with the code sequence such that, during a future execution of the code sequence, the profile is available. Prefetching may be performed, based on the profile. Since the profile records a sequence of miss addresses, an arbitrarily complex miss pattern can be prefetched. In one embodiment, multiple profiles may be associated with a code sequence having multiple entry points (e.g. multiple instructions at which execution may begin within the code sequence). When the code sequence is executed, the profile associated with the entry point of the current execution may be selected. Additionally, a new profile may be generated. If the entry point of the current execution is not associated with a profile, the new profile is saved.
    Type: Grant
    Filed: October 14, 1997
    Date of Patent: April 4, 2000
    Assignee: Advanced Micro Devices, Inc.
    Inventor: W. Kurt Lewchuk
  • Patent number: 5983325
    Abstract: A computer system supports a touch command which may be used to open a page in the main memory. Microprocessors within the computer system may determine an appropriate time at which to perform the touch command, and then transmit the touch command to the memory controller within the computer system. In response to the touch command, the memory controller opens the selected page but may not return data from the page. Subsequent memory operations may experience a page hit memory latency instead of a page miss memory latency due to the occurrence of the touch command. Data bus bandwidth is not consumed by the touch command. The touch command may be used even if actually prefetching data is not desirable. The microprocessors in the computer system may monitor which pages are experiencing cache hits within the microprocessors. If a page is experiencing cache hits, a cache miss within the page may be more probable. The touch command may be used to prepare the main memory system for a potential cache miss.
    Type: Grant
    Filed: December 9, 1997
    Date of Patent: November 9, 1999
    Assignee: Advanced Micro Devices, Inc.
    Inventor: W. Kurt Lewchuk
  • Patent number: 5974542
    Abstract: A branch prediction unit includes a cache-line based branch prediction storage having a branch prediction storage location assigned to each cache line of an instruction cache within the microprocessor employing the branch prediction unit. Although each branch prediction storage location is assigned to a particular cache line, the branch prediction storage location stores an alternate target indication indicating whether a branch prediction within the storage location corresponds to a branch instruction within the cache line to which the storage location is assigned or to a branch instruction within a different cache line. The different cache line has a predetermined relationship to the cache line to which the storage location is assigned. In various embodiments, the different cache line is at an index one less than the index of the storage location or is within a different way of the same index.
    Type: Grant
    Filed: October 30, 1997
    Date of Patent: October 26, 1999
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Chinh N. Tran, W. Kurt Lewchuk
  • Patent number: 5771247
    Abstract: A system and method are provided that use a determination of bad data parity and the state of an error signal (Derr.sub.--) as a functional signal indicating a specific type of error in a particular system component. If the Derr.sub.-- signal is active, the parity error recognized by the CPU was caused by a correctable condition in a data providing device. In this instance, the processor will read the corrected data from a buffer without reissuing a fetch request. When the CPU finds a parity error, but Derr.sub.-- is not active a more serious fault condition is identified (bus error or uncorrectable multibit error) requiring a machine level interrupt, or the like. And, when no parity is found by the CPU and Derr.sub.-- is not active, then the data is known to be valid and the parity/ECC latency is eliminated, thereby saving processing cycle time.
    Type: Grant
    Filed: March 4, 1996
    Date of Patent: June 23, 1998
    Assignees: International Business Machines Corporation, Motorola, Inc.
    Inventors: Michael Scott Allen, Ravi Kumar Arimilli, John Michael Kaiser, William Kurt Lewchuk
  • Patent number: 5745698
    Abstract: A method and system are provided for communicating between devices. A signal is output from a first device. In response to the signal, at least one action is initiated by a second device. An indication is output of whether the second device completed the action and of whether operation of the second device is independent of the first device reoutputting the signal.
    Type: Grant
    Filed: August 28, 1996
    Date of Patent: April 28, 1998
    Assignees: International Business Machines Corporation, Motorola, Inc.
    Inventors: Michael Scott Allen, Ravi Kumar Arimilli, John Michael Kaiser, William Kurt Lewchuk
  • Patent number: 5687327
    Abstract: An efficient multiprocessor address transfer mechanism is utilized within a data processing system including a plurality of bus devices. The present invention places control of the flow of address bus operations within the system controller rather than the bus devices, e.g., a master processor. The system controller issues an address bus grant, in response to an address bus request from a particular bus device, and shortly after that issues another signal notifying the granted bus device that it must now disable the address bus. Furthermore, upon receipt of the signal indicating disablement of the address bus, other bus devices may then snoop, or sample, the address bus.
    Type: Grant
    Filed: October 3, 1994
    Date of Patent: November 11, 1997
    Assignee: International Business Machines Corporation
    Inventors: Ravi Kumar Arimilli, John Michael Kaiser, William Kurt Lewchuk, Michael Scott Allen
  • Patent number: 5671370
    Abstract: A system and method which utilizes a unique bus protocol in conjunctions plural Dval.sub.-- control signals to minimize the dead time between blocks of data being transferred between components is a data processing system. The present invention introduces another latch-to-latch data valid control signal and alternates the usage of this signal during back to back data transfers from the same or different bus devices. In this manner the restore and tristate dead cycles are totally overlapped with the data transfer and the minimum possible number of dead cycle(s) is achieved between different blocks of data transfers. With the method of the present invention, data providers alternately activate the Dval.sub.-- signals and data receivers look at all Dval.sub.-- signals and if any one of them is active, then the data is considered valid and can be read.
    Type: Grant
    Filed: March 25, 1996
    Date of Patent: September 23, 1997
    Assignee: International Business Machines Corporation
    Inventors: Michael Scott Allen, Ravi Kumar Arimilli, John Michael Kaiser, William Kurt Lewchuk
  • Patent number: 5659708
    Abstract: A multiprocessor system utilizing a plurality of bus devices coupled via a shared bus utilizes a specially coded signal to notify a bus device initiating a read or a read with intent to modify operation that the requested data, or cache line, is in a modified state within a cache of another bus device. Unlike the modified response signal, this special signal is sent along with the requested data from the one bus device to the requesting bus device, indicating that this data has priority over any data being sent from the memory system coupled to the shared bus. The present invention allows for cache-to-cache and cache-to-memory-and-cache operations.
    Type: Grant
    Filed: October 3, 1994
    Date of Patent: August 19, 1997
    Assignee: International Business Machines Corp.
    Inventors: Ravi Kumar Arimilli, John Michael Kaiser, William Kurt Lewchuk, Michael Scott Allen