Patents by Inventor Jagadeesh Sankaran

Jagadeesh Sankaran 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: 10803009
    Abstract: A processor includes a scalar processor core and a vector coprocessor core coupled to the scalar processor core. The scalar processor core is configured to retrieve an instruction stream from program storage, and pass vector instructions in the instruction stream to the vector coprocessor core. The vector coprocessor core includes a register file, a plurality of execution units, and a table lookup unit. The register file includes a plurality of registers. The execution units are arranged in parallel to process a plurality of data values. The execution units are coupled to the register file. The table lookup unit is coupled to the register file in parallel with the execution units. The table lookup unit is configured to retrieve table values from one or more lookup tables stored in memory by executing table lookup vector instructions in a table lookup loop.
    Type: Grant
    Filed: July 13, 2012
    Date of Patent: October 13, 2020
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Ching-Yu Hung, Shinri Inamori, Jagadeesh Sankaran, Peter Chang
  • Patent number: 9519617
    Abstract: A vector processor includes a plurality of execution units arranged in parallel, a register file, and a plurality of load units. The register file includes a plurality of registers coupled to the execution units. Each of the load units is configured to load, in a single transaction, a plurality of the registers with data retrieved from memory. The loaded registers corresponding to different execution units. Each of the load units is configured to distribute the data to the registers in accordance with an instruction selectable distribution. The instruction selectable distribution specifies one of plurality of distributions. Each of the distributions specifies a data sequence that differs from the sequence in which the data is stored in memory.
    Type: Grant
    Filed: July 13, 2012
    Date of Patent: December 13, 2016
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Ching-Yu Hung, Shinri Inamori, Jagadeesh Sankaran, Peter Chang
  • Publication number: 20160321074
    Abstract: In one embodiment of the present invention, a programmable vision accelerator enables applications to collapse multi-dimensional loops into one dimensional loops. In general, configurable components included in the programmable vision accelerator work together to facilitate such loop collapsing. The configurable elements include multi-dimensional address generators, vector units, and load/store units. Each multi-dimensional address generator generates a different address pattern. Each address pattern represents an overall addressing sequence associated with an object accessed within the collapsed loop. The vector units and the load store units provide execution functionality typically associated with multi-dimensional loops based on the address pattern. Advantageously, collapsing multi-dimensional loops in a flexible manner dramatically reduces the overhead associated with implementing a wide range of computer vision algorithms.
    Type: Application
    Filed: April 28, 2016
    Publication date: November 3, 2016
    Inventors: Ching Y. HUNG, Jagadeesh SANKARAN, Ravi P. SINGH, Stanley TZENG
  • Patent number: 9336454
    Abstract: A method (and system) of determining a local binary pattern in an image includes selecting an orientation. For each pixel in the image, the method further includes determining a binary decision for each such pixel relative to one neighboring pixel of the orientation, selecting a new orientation, and repeating the determination of the binary decision for each pixel in the image relative to one neighboring pixel of the newly selected orientation.
    Type: Grant
    Filed: June 19, 2013
    Date of Patent: May 10, 2016
    Assignee: TEXAS INSTRUMENTS INCORPORATED
    Inventor: Jagadeesh Sankaran
  • Publication number: 20140355893
    Abstract: A method (and system) of determining a local binary pattern in an image includes selecting an orientation. For each pixel in the image, the method further includes determining a binary decision for each such pixel relative to one neighboring pixel of the orientation, selecting a new orientation, and repeating the determination of the binary decision for each pixel in the image relative to one neighboring pixel of the newly selected orientation.
    Type: Application
    Filed: June 19, 2013
    Publication date: December 4, 2014
    Inventor: Jagadeesh SANKARAN
  • Patent number: 8706923
    Abstract: In accordance with at least some embodiments, a system includes a processing entity configured to run multiple threads. The system also includes a direct memory access (DMA) engine coupled to the processing entity, the DMA engine being configured to track DMA in-flight status information for each of a plurality of DMA channels. The processing entity is configured to manage overlapping DMA requests to a DMA channel of the DMA engine based on said DMA in-flight status information.
    Type: Grant
    Filed: September 14, 2010
    Date of Patent: April 22, 2014
    Assignee: Texas Instruments Incorported
    Inventors: Jagadeesh Sankaran, Jeremiah E. Golston
  • Patent number: 8707013
    Abstract: In accordance with at least some embodiments, a digital signal processor (DSP) includes an instruction fetch unit and an instruction decode unit in communication with the instruction fetch unit. The DSP also includes a register set and a plurality of work units in communication with the instruction decode unit. The register set includes a plurality of legacy predicate registers. Separate from the legacy predicate registers, a plurality of on-demand predicate registers are selectively signaled without changing the opcode space for the DSP.
    Type: Grant
    Filed: July 13, 2010
    Date of Patent: April 22, 2014
    Assignee: Texas Instruments Incorporated
    Inventors: Jagadeesh Sankaran, Joseph R. Zbiciak, Steven D. Krueger
  • Publication number: 20130185540
    Abstract: A processor includes a scalar processor core and a vector coprocessor core coupled to the scalar processor core. The scalar processor core includes a program memory interface through which the scalar processor retrieves instructions from a program memory. The instructions include scalar instructions executable by the scalar processor and vector instructions executable by the vector coprocessor core. The vector coprocessor core includes a plurality of execution units and a vector command buffer. The vector command buffer is configured to decode vector instructions passed by the scalar processor core, to determine whether vector instructions defining an instruction loop have been decoded, and to initiate execution of the instruction loop by one or more of the execution units based on a determination that all of the vector instructions of the instruction loop have been decoded.
    Type: Application
    Filed: July 13, 2012
    Publication date: July 18, 2013
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Ching-Yu HUNG, Shinri INAMORI, Jagadeesh SANKARAN, Peter CHANG
  • Publication number: 20130185538
    Abstract: A processor includes a scalar processor core and a vector coprocessor core coupled to the scalar processor core. The scalar processor core is configured to retrieve an instruction stream from program storage. The instruction stream includes scalar instructions executable by the scalar processor core and vector instructions executable by the vector coprocessor core. The scalar processor core is configured to pass the vector instructions to the vector coprocessor core. The vector coprocessor core configured to process a plurality of data values in parallel while executing each vector instruction passed by the scalar processor core. The vector coprocessor core includes a plurality of processing paths arranged in parallel to process the data values. Each of the processing paths includes an execution unit. Each of the execution units is configured to communicate a result of processing to each other of the execution units.
    Type: Application
    Filed: July 13, 2012
    Publication date: July 18, 2013
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Ching-Yu Hung, Shinri Inamori, Jagadeesh Sankaran, Peter Chang
  • Publication number: 20130185544
    Abstract: A vector processor includes a plurality of execution units arranged in parallel, a register file, and a plurality of load units. The register file includes a plurality of registers coupled to the execution units. Each of the load units is configured to load, in a single transaction, a plurality of the registers with data retrieved from memory. The loaded registers corresponding to different execution units. Each of the load units is configured to distribute the data to the registers in accordance with an instruction selectable distribution. The instruction selectable distribution specifies one of plurality of distributions. Each of the distributions specifies a data sequence that differs from the sequence in which the data is stored in memory.
    Type: Application
    Filed: July 13, 2012
    Publication date: July 18, 2013
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Ching-Yu HUNG, Shinri INAMORI, Jagadeesh SANKARAN, Peter CHANG
  • Publication number: 20130185539
    Abstract: A processor includes a scalar processor core and a vector coprocessor core coupled to the scalar processor core. The scalar processor core is configured to retrieve an instruction stream from program storage, and pass vector instructions in the instruction stream to the vector coprocessor core. The vector coprocessor core includes a register file, a plurality of execution units, and a table lookup unit. The register file includes a plurality of registers. The execution units are arranged in parallel to process a plurality of data values. The execution units are coupled to the register file. The table lookup unit is coupled to the register file in parallel with the execution units. The table lookup unit is configured to retrieve table values from one or more lookup tables stored in memory by executing table lookup vector instructions in a table lookup loop.
    Type: Application
    Filed: July 13, 2012
    Publication date: July 18, 2013
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Ching-Yu HUNG, Shinri INAMORI, Jagadeesh SANKARAN, Peter CHANG
  • Publication number: 20120117360
    Abstract: In accordance with at least some embodiments, a digital signal processor (DSP) includes an instruction fetch unit and an instruction decode unit in communication with the instruction fetch unit. The DSP also includes a register set and a plurality of work units in communication with the instruction decode unit. The DSP selectively uses a dedicated insert instruction to insert a variable number of bits into a register.
    Type: Application
    Filed: November 9, 2010
    Publication date: May 10, 2012
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventor: Jagadeesh SANKARAN
  • Publication number: 20120066415
    Abstract: In accordance with at least some embodiments, a system includes a processing entity configured to run multiple threads. The system also includes a direct memory access (DMA) engine coupled to the processing entity, the DMA engine being configured to track DMA in-flight status information for each of a plurality of DMA channels. The processing entity is configured to manage overlapping DMA requests to a DMA channel of the DMA engine based on said DMA in-flight status information.
    Type: Application
    Filed: September 14, 2010
    Publication date: March 15, 2012
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Jagadeesh SANKARAN, Jeremiah E. GOLSTON
  • Publication number: 20120017067
    Abstract: In accordance with at least some embodiments, a digital signal processor (DSP) includes an instruction fetch unit and an instruction decode unit in communication with the instruction fetch unit. The DSP also includes a register set and a plurality of work units in communication with the instruction decode unit. The register set includes a plurality of legacy predicate registers. Separate from the legacy predicate registers, a plurality of on-demand predicate registers are selectively signaled without changing the opcode space for the DSP.
    Type: Application
    Filed: July 13, 2010
    Publication date: January 19, 2012
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Jagadeesh SANKARAN, Joseph R. ZBICIAK, Steven D. KRUEGER
  • Publication number: 20110317762
    Abstract: Techniques for managing a video encoding pipeline are disclosed herein. In one embodiment, a video encoder includes a multi-stage encoding pipeline. The pipeline includes an entropy coding engine and a transform engine. The entropy encoding engine is configured to, in a first pipeline cycle, entropy encode a transformed first macroblock and determine that a predetermined slice size will be exceeded by adding the entropy encoded macroblock to a slice. The transform engine is configured to provide a transformed macroblock to the entropy coding engine. The transform engine is also configured to determine, in a third pipeline cycle, coding and prediction mode to apply to the first macroblock, based on the entropy coding engine determining, in the first pipeline cycle, that the predetermined slice size will be exceeded by adding the encoded macroblock to a slice.
    Type: Application
    Filed: June 29, 2010
    Publication date: December 29, 2011
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventor: Jagadeesh SANKARAN
  • Publication number: 20110310966
    Abstract: Techniques for efficient syntax element decoding in a system employing context-based adaptive binary arithmetic decoding are disclosed herein. In some embodiments, a video decoding system includes a context-based adaptive binary arithmetic code (“CABAC”) decoder. The decoder includes a processor and decode logic executed by the processor. The decode logic is configured to decompress a CABAC encoded syntax element. The decode logic includes a table embodying a set of rules that determine whether syntax element decoding is complete based on table addressing derived from a decoded syntax element binary value.
    Type: Application
    Filed: June 18, 2010
    Publication date: December 22, 2011
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventor: Jagadeesh SANKARAN
  • Publication number: 20110280314
    Abstract: A video decoder includes a memory (140) operable to hold entropy coded video data accessible as a bit stream, a processor (100) operable to issue at least one command for loose-coupled support and to issue at least one instruction for tightly-coupled support, a bit stream unit (110.1) coupled to said memory (140) and to said processor (100) and responsive to at least one command to provide the loose-coupled support and command-related accelerated processing of the bit stream, and a second bit stream unit (110.2) coupled to said memory (140) and to said processor (100) and responsive to said at least one instruction to provide the tightly-coupled support and instruction-related accelerated processing of the bit stream. Other encoding and decoding processors, circuits, devices, systems and processes are also disclosed.
    Type: Application
    Filed: June 15, 2010
    Publication date: November 17, 2011
    Applicant: TEXAS INSTRUMENTS INCORPORATED
    Inventors: Jagadeesh Sankaran, Sajish Sajayan, Sanmati S. Kamath
  • Patent number: 7885473
    Abstract: This invention decodes coefficient magnitudes in compressed video data using a selected context and speculatively decodes a coefficient sign. The next context selection depends upon a number of iterations. This invention confirms the speculatively decoded coefficient sign upon completion of the magnitude decode. This invention operates in a loop until reaching the number of significant coefficients within the block. The method exits the loop and decodes an escape code if an iteration count is greater than a predetermined number. An embodiment of this invention collects both a count up and a count down in an escape code decode in one loop. An embodiment of this invention estimates the number of significant coefficients in a block and selects the inventive or a prior art decode.
    Type: Grant
    Filed: April 26, 2007
    Date of Patent: February 8, 2011
    Assignee: Texas Instruments Incorporated
    Inventor: Jagadeesh Sankaran
  • Patent number: 7813567
    Abstract: This invention decodes a next significance symbol using a selected context. The invention operates in a loop for each symbol decode for a whole block until the number of decoded map elements reaches a maximum number of coefficients for the block type or a last significant coefficient marker is decoded updating loop variables accordingly. This invention counts the number of decoded significance symbols indicating a significant coefficient and stores the locations of such significant coefficients in an array. An embodiment of this invention estimates the number of significant coefficients in a block and selects the inventive method or a prior art decode method.
    Type: Grant
    Filed: April 26, 2007
    Date of Patent: October 12, 2010
    Assignee: Texas Instruments Incorporated
    Inventor: Jagadeesh Sankaran
  • Patent number: 7788642
    Abstract: An information carrier medium containing software that, when executed by a processor, causes the processor to receive information from circuit logic that is adapted to collect the information from caches on different cache levels. At least some of the information is from caches on different cache levels associated with a common address. The processor also displays the information by way of a graphical user interface (GUI). The GUI displays a portion of the information using a mark-up technique different from that used to display remaining portions of the information.
    Type: Grant
    Filed: May 15, 2006
    Date of Patent: August 31, 2010
    Assignee: Texas Instruments Incorporated
    Inventors: Oliver P. Sohm, Brian Cruickshank, Jagadeesh Sankaran, Gary L. Swoboda