Patents by Inventor Vignyan Reddy Kothinti Naresh

Vignyan Reddy Kothinti Naresh 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: 20190065060
    Abstract: Caching instruction block header data in block architecture processor-based systems is disclosed. In one aspect, a computer processor device, based on a block architecture, provides an instruction block header cache dedicated to caching instruction block header data. Upon a subsequent fetch of an instruction block, cached instruction block header data may be retrieved from the instruction block header cache (if present) and used to optimize processing of the instruction block. In some aspects, the instruction block header data may include a microarchitectural block header (MBH) generated upon the first decoding of the instruction block by an MBH generation circuit. The MBH may contain static or dynamic information about the instructions within the instruction block. As non-limiting examples, the information may include data relating to register reads and writes, load and store operations, branch information, predicate information, special instructions, and/or serial execution preferences.
    Type: Application
    Filed: August 28, 2017
    Publication date: February 28, 2019
    Inventors: Anil Krishna, Gregory Michael Wright, Yongseok Yi, Matthew Gilbert, Vignyan Reddy Kothinti Naresh
  • Publication number: 20180089085
    Abstract: A proposed prefetcher may operate at a cache level where accesses are conducted using physical addresses. The proposed prefetcher may include one or more prefetch engines. Similar to conventional prefetchers, a prefetch engines of the proposed prefetcher may train on access patterns of a memory page to predict future accesses and perform prefetches based on the training. But unlike the conventional prefetchers, the trained prefetch engine may be reused for prefetching even when a request for a new page is received without requiring the prefetch engine to be newly trained on the new page. This can lower access latencies and lower cumulative training time.
    Type: Application
    Filed: September 23, 2016
    Publication date: March 29, 2018
    Inventors: Vignyan Reddy KOTHINTI NARESH, Gregory Michael WRIGHT
  • Publication number: 20180081806
    Abstract: Disclosed are methods and apparatuses for preventing memory violations. In an aspect, a fetch unit accesses, from a branch predictor of a processor, a disambiguation indicator associated with a block of instructions of a program to be executed by the processor, and fetches, from an instruction cache, the block of instructions. The processor executes load instructions and/or store instructions in the block of instructions based on the disambiguation indicator indicating whether or not the load instructions and/or the store instructions in the block of instructions can bypass other instructions of the program or be bypassed by other instructions of the program.
    Type: Application
    Filed: September 22, 2016
    Publication date: March 22, 2018
    Inventors: Vignyan Reddy KOTHINTI NARESH, Anil KRISHNA, Gregory Michael WRIGHT
  • Publication number: 20180081690
    Abstract: Performing distributed branch prediction using fused processor cores in processor-based systems is disclosed. In one aspect, a distributed branch predictor is provided as a plurality of processor cores supporting core fusion. Each processor core is configured to receive a program identifier from another of the processor cores (or from itself), generate a subsequent predicted program identifier, and forward the predicted program identifier (and, optionally, a global history indicator) to the appropriate processor core responsible for handling the next prediction. The processor core also fetches a header and/or one or more instructions for the received program identifier, and sends the header and/or the one or more instructions to the appropriate processor core for execution.
    Type: Application
    Filed: September 21, 2016
    Publication date: March 22, 2018
    Inventors: Anil Krishna, Vignyan Reddy Kothinti Naresh, Gregory Michael Wright
  • Patent number: 9830152
    Abstract: Selective storing of previously decoded instructions of frequently-called instruction sequences in an instruction sequence buffer to be executed by a processor is disclosed. In one aspect, a selective instruction sequence buffer controller is configured to selectively store previously decoded instructions for an instruction sequence by determining if a received instruction address corresponds to an instruction sequence captured in an instruction sequence buffer. If the received instruction address corresponds to a captured instruction sequence, the selective instruction sequence buffer controller provides corresponding micro-operations stored in the instruction sequence buffer for execution. If the received instruction address does not correspond to the captured instruction sequence, the selective instruction sequence buffer controller reduces a frequency indicator of the instruction sequence.
    Type: Grant
    Filed: December 22, 2015
    Date of Patent: November 28, 2017
    Assignee: QUALCOMM Incorporated
    Inventors: Vignyan Reddy Kothinti Naresh, Shivam Priyadarshi, Raguram Damodaran
  • Publication number: 20170277536
    Abstract: Providing references to previously decoded instructions of recently-provided instructions to be executed by a processor is disclosed herein. In one aspect, a low resource micro-operation controller is provided. Responsive to an instruction pipeline receiving an instruction address, the low resource micro-operation controller is configured to determine if the received instruction address corresponds to an instruction address in short history table. Short history table includes instruction addresses of recently-provided instructions having micro-ops in a post-decode queue. If the received instruction address corresponds to an instruction address in short history table, the low resource micro-operation controller is configured to provide reference (e.g., pointer) to the fetch stage that corresponds to an entry in the post-decode queue in which the micro-ops corresponding to the instruction address are stored.
    Type: Application
    Filed: March 24, 2016
    Publication date: September 28, 2017
    Inventors: Vignyan Reddy Kothinti Naresh, Shivam Priyadarshi, Raguram Damodaran
  • Publication number: 20170177366
    Abstract: Selective storing of previously decoded instructions of frequently-called instruction sequences in an instruction sequence buffer to be executed by a processor is disclosed. In one aspect, a selective instruction sequence buffer controller is configured to selectively store previously decoded instructions for an instruction sequence by determining if a received instruction address corresponds to an instruction sequence captured in an instruction sequence buffer. If the received instruction address corresponds to a captured instruction sequence, the selective instruction sequence buffer controller provides corresponding micro-operations stored in the instruction sequence buffer for execution. If the received instruction address does not correspond to the captured instruction sequence, the selective instruction sequence buffer controller reduces a frequency indicator of the instruction sequence.
    Type: Application
    Filed: December 22, 2015
    Publication date: June 22, 2017
    Inventors: Vignyan Reddy Kothinti Naresh, Shivam Priyadarshi, Raguram Damodaran
  • Publication number: 20170075692
    Abstract: Selective flushing of instructions in an instruction pipeline in a processor back to an execution-determined target address in response to a precise interrupt is disclosed. A selective instruction pipeline flush controller determines if a precise interrupt has occurred for an executed instruction in the instruction pipeline. The selective instruction pipeline flush controller determines if an instruction at the correct resolved target address of the instruction that caused the precise interrupt is contained in the instruction pipeline. If so, the selective instruction pipeline flush controller can selectively flush instructions back to the instruction in the pipeline that contains the correct resolved target address to reduce the amount of new instruction fetching.
    Type: Application
    Filed: September 11, 2015
    Publication date: March 16, 2017
    Inventors: Vignyan Reddy Kothinti Naresh, Rami Mohammad Al Sheikh, Harold Wade Cain, III