Patents by Inventor Lucian Codrescu

Lucian Codrescu 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: 9626579
    Abstract: A method includes receiving image data and performing a non-maximum suppression (NMS) operation on the image data. The method also includes initiating an edge tracking by hysteresis (ETH) operation on a portion of the image data prior to completion of the NMS operation.
    Type: Grant
    Filed: May 5, 2014
    Date of Patent: April 18, 2017
    Assignee: QUALCOMM Incorporated
    Inventors: Kim-Chyan Gan, Mao Zeng, Lucian Codrescu
  • Patent number: 9606818
    Abstract: An apparatus includes a primary hypervisor that is executable on a first set of processors and a secondary hypervisor that is executable on a second set of processors. The primary hypervisor may define settings of a resource and the secondary hypervisor may use the resource based on the settings defined by the primary hypervisor. For example, the primary hypervisor may program memory address translation mappings for the secondary hypervisor. The primary hypervisor and the secondary hypervisor may include their own schedulers.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: March 28, 2017
    Assignee: Qualcomm Incorporated
    Inventors: Erich James Plondke, Lucian Codrescu, Christopher Edward Koob, Piyush Patel, Thomas Andrew Sartorius
  • Publication number: 20170046156
    Abstract: Systems and methods pertain to looking up entries of a table. A processor receives one or more single instruction multiple data (SIMD) instructions, including a first SIMD instruction which specifies a first subset of indices. A first subset of table entries is looked up, using a crossbar, with the first subset of indices. A first vector output of the first SIMD instruction is based on whether the outputs of the crossbar belong to a desired subset of table entries. Similarly, second, third, and fourth SIMD instructions specify corresponding second, third, and fourth subsets of indices to lookup the remaining table entries using the crossbar. The size of the crossbar is based on the number of indices in the subset of indices used to lookup table entries.
    Type: Application
    Filed: August 14, 2015
    Publication date: February 16, 2017
    Inventors: Eric Wayne MAHURIN, Lucian CODRESCU, Erich James PLONDKE, David HOYLE, Mao ZENG, Kim-Chyan GAN
  • Publication number: 20160299780
    Abstract: An apparatus includes a processor and a guest operating system. In response to receiving a request to create a task, the guest operating system requests a hypervisor to create a virtual processor to execute the requested task. The virtual processor is schedulable on the processor.
    Type: Application
    Filed: June 21, 2016
    Publication date: October 13, 2016
    Inventors: Erich James Plondke, Lucian Codrescu
  • Patent number: 9455743
    Abstract: A method includes executing, at a processor, a dedicated arithmetic encoding instruction. The dedicated arithmetic encoding instruction accepts a plurality of inputs including a first range, a first offset, and a first state and produces one or more outputs based on the plurality of inputs. The method also includes storing a second state, realigning the first range to produce a second range, and realigning the first offset to produce a second offset based on the one or more outputs of the dedicated arithmetic encoding instruction.
    Type: Grant
    Filed: May 27, 2014
    Date of Patent: September 27, 2016
    Assignee: Qualcomm Incorporated
    Inventors: Bo Zhou, Mao Zeng, Erich James Plondke, Lucian Codrescu, Shu Xiao, Junchen Du, Suhail Jalil
  • Patent number: 9396012
    Abstract: An apparatus includes a processor and a guest operating system. In response to receiving a request to create a task, the guest operating system requests a hypervisor to create a virtual processor to execute the requested task. The virtual processor is schedulable on the processor.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: July 19, 2016
    Assignee: Qualcomm Incorporated
    Inventors: Erich James Plondke, Lucian Codrescu
  • Patent number: 9367468
    Abstract: In a particular embodiment, a method includes identifying one or more way prediction characteristics of an instruction. The method also includes selectively reading, based on identification of the one or more way prediction characteristics, a table to identify an entry of the table associated with the instruction that identifies a way of a data cache. The method further includes making a prediction whether a next access of the data cache based on the instruction will access the way.
    Type: Grant
    Filed: January 15, 2013
    Date of Patent: June 14, 2016
    Assignee: Qualcomm Incorporated
    Inventors: Peter G. Sassone, Suresh K. Venkumahanti, Lucian Codrescu
  • Patent number: 9361109
    Abstract: A system and method to evaluate a data value as an instruction is disclosed. For example, an apparatus configured to execute program code includes an execute unit configured to execute a first instruction associated with a location of a second instruction. The first instruction is identified by a program counter. The apparatus also includes a decode unit configured to receive the second instruction from the location and to decode the second instruction to generate a decoded second instruction without changing the program counter to point to the second instruction.
    Type: Grant
    Filed: May 24, 2010
    Date of Patent: June 7, 2016
    Assignee: QUALCOMM Incorporated
    Inventors: Lucian Codrescu, Erich James Plondke, Suresh Venkumahanti
  • Patent number: 9304932
    Abstract: In a particular embodiment, an apparatus includes control logic configured to selectively set bits of a multi-bit way prediction mask based on a prediction mask value. The control logic is associated with an instruction cache including a data array. A subset of line drivers of the data array is enabled responsive to the multi-bit way prediction mask. The subset of line drivers includes multiple line drivers.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: April 5, 2016
    Assignee: QUALCOMM Incorporated
    Inventors: Peter G. Sassone, Suresh K. Venkumahanti, Lucian Codrescu
  • Publication number: 20160092238
    Abstract: Systems and methods for implementing certain load instructions, such as vector load instructions by cooperation of a main processor and a coprocessor. The load instructions which are identified by the main processor for offloading to the coprocessor are committed in the main processor without receiving corresponding load data. Post-commit, the load instructions are processed in the coprocessor, such that latencies incurred in fetching the load data are hidden from the main processor. By implementing an out-of-order load data buffer associated with an in-order instruction buffer, the coprocessor is also configured to avoid stalls due to long latencies which may be involved in fetching the load data from levels of memory hierarchy, such as L2, L3, L4 caches, main memory, etc.
    Type: Application
    Filed: September 26, 2014
    Publication date: March 31, 2016
    Inventors: Lucian CODRESCU, Christopher Edward KOOB, Eric Wayne MAHURIN, Suresh Kumar VENKUMAHANTI
  • Publication number: 20160077835
    Abstract: A system for translating compressed instructions to instructions in an executable format is described. A translation unit is configured to decompress compressed instructions into a native instruction format using X and Y indices accessed from a memory, a translation memory, and a program specified mix mask. A level 1 cache is configured to store the native instruction format for each compressed instruction. The memory may be configured as a paged instruction cache to store pages of compressed instructions intermixed with pages of uncompressed instructions. Methods of determining a mix mask for efficiently translating compressed instructions is also described. A genetic method uses pairs of mix masks as genes from a seed population of mix masks that are bred and may be mutated to produce pairs of offspring mix masks to update the seed population. A mix mask for efficiently translating compressed instructions is determined from the updated seed population.
    Type: Application
    Filed: November 24, 2015
    Publication date: March 17, 2016
    Inventors: Sergei Larin, Lucian Codrescu, Anshuman Das Gupta
  • Publication number: 20160062770
    Abstract: A method includes identifying, at a scheduling unit, a resource conflict at a shared processing resource that is accessible by a first processing cluster and by a second processing cluster, where the first processing cluster, the second processing cluster, and the shared processing resource are included in a very long instruction word (VLIW) processing unit. The method also includes resolving the resource conflict.
    Type: Application
    Filed: August 29, 2014
    Publication date: March 3, 2016
    Inventors: Suresh Kumar Venkumahanti, Ankit Ghiya, Peter Gene Sassone, Lucian Codrescu, Suman Mamidi
  • Publication number: 20160026607
    Abstract: Parallelization of scalar operations by vector processors using data-indexed accumulators in vector register files, related circuits, methods, and computer-readable media are disclosed. In one aspect, a vector processor comprises a vector register file providing a plurality of write ports and a plurality of vector registers each providing a plurality of accumulators. The vector processor receives an input data vector. For each of the plurality of write ports, the vector processor executes vector operation(s) for accessing an input data value of the input data vector, and determining, based on the input data value, a register index for a vector register among the plurality of vector registers, and an accumulator index for an accumulator among the plurality of accumulators of the vector register. Based on the register index, a register value is retrieved from the register index, and a scalar operation is performed based on the register value and the accumulator index.
    Type: Application
    Filed: September 15, 2014
    Publication date: January 28, 2016
    Inventors: Lucian Codrescu, Eric Wayne Mahurin
  • Patent number: 9235418
    Abstract: A processor device includes a memory and a sequencer that is responsive to the memory. The sequencer supports very long instruction word (VLIW) type instructions and at least one VLIW instruction packet uses a number of operands during execution, The processor device further includes a plurality of instruction execution units responsive to the sequencer and a plurality of register files. Each of the plurality of register files includes a plurality of registers and the plurality of register files are coupled to the plurality of instruction execution units. Further, each of the plurality of register flies includes a number of data read ports and the number of data read ports of each of the plurality of register files is less than the number of operands used by the at least one VLIW instruction packet.
    Type: Grant
    Filed: February 25, 2014
    Date of Patent: January 12, 2016
    Assignee: QUALCOMM Incorporated
    Inventors: Muhammad Ahmed, Erich James Plondke, Lucian Codrescu, William C. Anderson
  • Patent number: 9208102
    Abstract: An apparatus includes a translation lookaside buffer (TLB). The TLB includes at least one entry that includes an entry virtual address and an entry page size indication corresponding to an entry page. The apparatus also includes input logic configured to receive an input page size indication and an input virtual address corresponding to an input page. The apparatus further includes overlap checking logic configured to determine, based at least in part on the entry page size indication and the input page size indication, whether the input page overlaps the entry page.
    Type: Grant
    Filed: January 15, 2013
    Date of Patent: December 8, 2015
    Assignee: Qualcomm Incorporated
    Inventors: Suresh K. Venkumahanti, Erich J. Plondke, Lucian Codrescu, Shane M. Mahon, Rahul R. Toley, Fadi A. Hamdan
  • Patent number: 9207943
    Abstract: In a particular embodiment, a method is disclosed that includes receiving an interrupt at a first thread, the first thread including a lowest priority thread of a plurality of executing threads at a processor at a first time. The method also includes identifying a second thread, the second thread including a lowest priority thread of a plurality of executing threads at a processor at a second time. The method further includes directing a subsequent interrupt to the second thread.
    Type: Grant
    Filed: March 17, 2009
    Date of Patent: December 8, 2015
    Assignee: QUALCOMM Incorporated
    Inventors: Erich James Plondke, Lucian Codrescu
  • Publication number: 20150349796
    Abstract: A method includes executing, at a processor, a dedicated arithmetic encoding instruction. The dedicated arithmetic encoding instruction accepts a plurality of inputs including a first range, a first offset, and a first state and produces one or more outputs based on the plurality of inputs. The method also includes storing a second state, realigning the first range to produce a second range, and realigning the first offset to produce a second offset based on the one or more outputs of the dedicated arithmetic encoding instruction.
    Type: Application
    Filed: May 27, 2014
    Publication date: December 3, 2015
    Applicant: QUALCOMM Incorporated
    Inventors: Bo Zhou, Mao Zeng, Erich James Plondke, Lucian Codrescu, Shu Xiao, Junchen Du, Suhail Jalil
  • Patent number: 9201652
    Abstract: A system for translating compressed instructions to instructions in an executable format is described. A translation unit is configured to decompress compressed instructions into a native instruction format using X and Y indices accessed from a memory, a translation memory, and a program specified mix mask. A level 1 cache is configured to store the native instruction format for each compressed instruction. The memory may be configured as a paged instruction cache to store pages of compressed instructions intermixed with pages of uncompressed instructions. Methods of determining a mix mask for efficiently translating compressed instructions is also described. A genetic method uses pairs of mix masks as genes from a seed population of mix masks that are bred and may be mutated to produce pairs of offspring mix masks to update the seed population. A mix mask for efficiently translating compressed instructions is determined from the updated seed population.
    Type: Grant
    Filed: May 3, 2011
    Date of Patent: December 1, 2015
    Assignee: QUALCOMM Incorporated
    Inventors: Sergei Larin, Lucian Codrescu, Anshuman Das Gupta
  • Publication number: 20150317532
    Abstract: A method includes receiving image data and performing a non-maximum suppression (NMS) operation on the image data. The method also includes initiating an edge tracking by hysteresis (ETH) operation on a portion of the image data prior to completion of the NMS operation.
    Type: Application
    Filed: May 5, 2014
    Publication date: November 5, 2015
    Applicant: QUALCOMM Incorporated
    Inventors: Kim-Chyan Gan, Mao Zeng, Lucian Codrescu
  • Patent number: 9147123
    Abstract: A system and method of processing an image is disclosed. A particular method of determining whether a particular pixel of an image is a feature includes receiving data corresponding to a plurality of pixels (from the image) surrounding the particular pixel. The method further includes determining a set of comparison results, each corresponding to one of the plurality of pixels and indicating a result of comparing an attribute value corresponding to one of the plurality of pixels to a comparison value (based on a particular attribute value of the particular pixel and a threshold value). The method further includes performing a processor-executable instruction that, when executed by a processor, causes the processor to identify a subset of the set of comparison results that indicate the particular pixel is the feature. The identified subset may be a consecutive order of pixels of the plurality of pixels.
    Type: Grant
    Filed: September 4, 2012
    Date of Patent: September 29, 2015
    Assignee: QUALCOMM Incorporated
    Inventors: Mao Zeng, Erich James Plondke, Lucian Codrescu