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).

  • Publication number: 20090132783
    Abstract: In a particular embodiment, a method is disclosed that includes executing a single instruction to identify a location within a table stored at a memory. The single instruction is executable by a processor to extract bit field data from a first register and insert the bit field data into an index portion of a second register. The second register includes a table address portion and an index portion. The table address portion includes a table address identifying a memory location associated with a table. The table address and the bit field data combine to form an indexed address to an element within the table.
    Type: Application
    Filed: November 20, 2007
    Publication date: May 21, 2009
    Applicant: QUALCOMM INCORPORATED
    Inventors: Shankar Krithivasan, Lucian Codrescu, Erich James Plondke, Mao Zeng
  • Publication number: 20090132793
    Abstract: In a particular embodiment, a method is disclosed that includes identifying a first block of bits within a result to be written to a destination register by an execution unit. The result includes a plurality of bits having the first block of bits and a second block of bits. The first block of bits has a value of zero. The method further includes providing an encoded bit value representing the first block of bits to a control register and selectively writing the second block of bits, but not the first block of bits, to the destination register. The destination register is sized to receive the first and second blocks of bits.
    Type: Application
    Filed: November 20, 2007
    Publication date: May 21, 2009
    Applicant: QUALCOMM Incorporated
    Inventors: Suresh K. Venkumahanti, Lucian Codrescu, Shankar Krithivasan, Jian Shen, Lin Wang
  • Publication number: 20090119477
    Abstract: The disclosure includes a method and system of configuring a translation lookaside buffer (TLB). In an embodiment, the TLB includes a first portion and a second portion. The first portion or the second portion may be selectively disabled in response to a value of a TLB configuration indicator.
    Type: Application
    Filed: November 7, 2007
    Publication date: May 7, 2009
    Applicant: QUALCOMM INCORPORATED
    Inventors: Erich James Plondke, Ajay Anant Ingle, Lucian Codrescu, Paul Bassett
  • Patent number: 7526633
    Abstract: Techniques for processing transmissions in a communications (e.g., CDMA) system. The method and system encode and process instructions of mixed lengths (e.g., 16 bits and 32 bits) and instruction packets including instructions of mixed lengths. This includes encoding a plurality of instructions of a first length and a plurality of instructions of a second length. The method and system encode a header having at least one instruction length bit. The instruction bit distinguishes between instructions of the first length and instructions of the second length for an associated DSP to process in a mixed stream. The method and system distinguish between the instructions of the first length and the instructions of the second length according to the contents of the instruction length bits. The header further includes bits for distinguishing between instructions of varying lengths in an instruction packet.
    Type: Grant
    Filed: March 23, 2005
    Date of Patent: April 28, 2009
    Assignee: QUALCOMM Incorporated
    Inventors: Lucian Codrescu, Erich Plondke, Muhammad Ahmed, William C. Anderson
  • Patent number: 7523295
    Abstract: An interleaved multithreading pipeline operating method comprises reading an instruction packet containing at least two instructions, steering a first instruction of the instruction packet to a first execution unit for execution and generating a first result, steering a second instruction of the instruction packet to a second execution unit for execution using the first result and generating a second result, and storing the second result.
    Type: Grant
    Filed: March 21, 2005
    Date of Patent: April 21, 2009
    Assignee: QUALCOMM Incorporated
    Inventors: Lucian Codrescu, Erich Plondke, Muhammad Ahmed, Sujat Jamil, William C. Anderson
  • Publication number: 20090070602
    Abstract: A device is disclosed that includes an instruction execution pipeline having multiple stages for executing an instruction. The device also includes a control logic circuit coupled to the instruction execution pipeline. The control logic circuit is adapted to skip at least one stage of the instruction execution pipeline during execution of the instruction. The control logic circuit is also adapted to execute at least one non-skipped stage during execution of the decoded instruction.
    Type: Application
    Filed: September 6, 2007
    Publication date: March 12, 2009
    Applicant: QUALCOMM INCORPORATED
    Inventors: Ajay Anant Ingle, Lucian Codrescu, Suresh K. Venkumahanti
  • Publication number: 20080184007
    Abstract: A method and system to combine multiple register units within a microprocessor, such as, for example, a digital signal processor, are described. A first register unit and a second register unit are retrieved from a register file structure within a processing unit, the first register unit and the second register unit being non-adjacently located within the register file structure. The first register unit and the second register unit are further combined during execution of a single instruction to form a resulting register unit. Finally, the resulting register unit is stored within the register file structure for further processing. Alternatively, a first half word unit from the first register unit and a second half word unit from the second register unit are retrieved. The first half word unit and the second half word unit are further input into corresponding high and low portions of a resulting register unit to form the resulting register unit during execution of a single instruction.
    Type: Application
    Filed: August 2, 2006
    Publication date: July 31, 2008
    Inventors: Lucian Codrescu, Erich Plondke, Mao Zeng
  • Patent number: 7398371
    Abstract: A shared translation look-aside buffer method comprises saving data stored in a first selected set of registers to a predetermined section of a thread-specific area in memory upon encountering an exception/interrupt, re-enabling exceptions and optionally interrupts, addressing a cause of the exception/interrupt while safely permitting another exception, and restoring the saved data to the first selected set of registers.
    Type: Grant
    Filed: June 23, 2005
    Date of Patent: July 8, 2008
    Assignee: QUALCOMM Incorporated
    Inventors: Erich Plondke, William C. Anderson, Lucian Codrescu
  • Patent number: 7383420
    Abstract: A processor is operable to carry out a method that comprises accessing a first register based on a program instruction and obtaining a first register-out value, accessing a second register based on the first register-out value and obtaining a second register-out value, and storing the second register-out value into a third register based on the program instruction. The processor is further operable to carry out a method that comprises accessing a first register based on a program instruction and obtaining a first register-out value, accessing a second register based on the program instruction and obtaining a second register-out value, and storing the first register-out value into a third register based on the second register-out value.
    Type: Grant
    Filed: March 24, 2005
    Date of Patent: June 3, 2008
    Assignee: QUALCOMM Incorporated
    Inventors: Erich Plondke, Lucian Codrescu, Muhammad Ahmed, William C. Anderson
  • Publication number: 20080115145
    Abstract: Techniques for the design and use of a digital signal processor, including (but not limited to) fox processing transmissions in a communications (e.g., CDMA) system. A method and system control transferring data between debugging registers and digital signal processor processes in association with a power transition sequence of the digital signal processor. In a digital signal processor, debugging registers associate with the core processor process and the debugging process. Control bits control transferring data among the debugging registers, the core processor process and the debugging process. The control bit prevents transferring data among the debugging registers, the core processor process and the debugging process in the event of a power transition sequence. Control bits also prevent a power transition sequence of the digital signal processor in the event of transferring data among the debugging registers and the core processor process or the debugging process.
    Type: Application
    Filed: November 15, 2006
    Publication date: May 15, 2008
    Inventors: Lucian Codrescu, William C. Anderson, Suresh Venkumahanti, Louis Achille Giannini, Manojkumar Pyla, Xufeng Chen
  • Publication number: 20080115011
    Abstract: Techniques for the design and use of a digital signal processor, including (but not limited to) for processing transmissions in a communications (e.g., CDMA) system. Trusted and untrusted debugging operational control occurs in operating a core processor associated with the digital signal processor. A debugging process within a debugging mechanism associates with the core processor. The core processor process determines the origin of debugging control as trusted debugging control or untrusted debugging control. In the event of trusted debugging control, the core processor process provides to the trusted debugging control a first set of features and privileges. Alternatively, in the event that debugging control is untrusted debugging control, the core processor process provides the untrusted debugging control a second restricted set of features and privileges, all for maintaining security and proper operation of the core processor process.
    Type: Application
    Filed: November 15, 2006
    Publication date: May 15, 2008
    Inventors: Lucian Codrescu, William C. Anderson, Suresh Venkumahanti, Louis Achille Giannini, Manojkumar Pyla, Xufeng Chen
  • Publication number: 20080115115
    Abstract: Techniques for the design and use of a digital signal processor, including (but not limited to) for processing transmissions in a communications (e.g., CDMA) system. The method and system improve software instruction debugging operations by capturing real-time information relating to software execution flow and include and instructions and circuitry for operating a core processor process within a core processor. A non-intrusive debugging process operates within a debugging mechanism of a digital signal processor. Non-intrusively monitoring in real time predetermined aspects of software execution occurs with the core processing process and occurs in real-time on the processor. An embedded trace macrocell records selectable aspects of the non-intrusively monitored software execution and generates at least one breakpoint in response to events arising within the selectable aspects of the non-intrusively monitored software execution.
    Type: Application
    Filed: November 15, 2006
    Publication date: May 15, 2008
    Inventors: Lucian Codrescu, William C. Anderson, Suresh Venkumahanti, Louis Achille Giannini, Manojkumar Pyla, Xufeng Chen
  • Publication number: 20080115113
    Abstract: Techniques for the design and use of a digital signal processor, including (but not limited to) for processing transmissions in a communications (e.g., CDMA) system. The disclosed method and system provide for processing instructions in a multi-threaded process including the use of breakpoint instructions for generating debugging event(s). Generating a debugging event occurs in response to the execution of breakpoint instructions and executes debugging instructions in response to the debugging event. The debugging instructions debug processing instructions in the multi-threaded processor by transitioning at least one or more threads into a debugging mode. The disclosure generates a debugging return for reporting the executing debugging instructions in the subset of the threads of the multi-threaded processor.
    Type: Application
    Filed: November 15, 2006
    Publication date: May 15, 2008
    Inventors: Lucian Codrescu, William C. Anderson, Suresh Venkumahanti, Louis Achille Giannini, Manojkumar Pyla, Xufeng Chen
  • Publication number: 20080114972
    Abstract: Techniques for the design and use of a digital signal processor, including (but not limited to) for processing transmissions in a communications (e.g., CDMA) system. Stuffing instructions in a processing pipeline of a multi-threaded digital signal processor provides for operating a core processor process and a debugging process within a debugging mechanism. Writing a stuff instruction into a debugging process registry and a stuff command in a debugging process command register provides for identifying a predetermined thread of the multi-threaded digital signal processor in which to execute the stuff instruction. The instruction stuffing process issues a debugging process control resume command during a predetermined stage of executing on the predetermined thread and directs the core processor to perform the stuff instruction during the debugging process. The core processor may then execute the stuffed instruction in association with the core processor process and the debugging process.
    Type: Application
    Filed: November 15, 2006
    Publication date: May 15, 2008
    Inventors: Lucian Codrescu, William C. Anderson, Suresh Venkumahanti, Louis Achille Giannini, Manojkumar Pyla, Xufeng Chen
  • Publication number: 20080091867
    Abstract: A multi-threaded processor is disclosed that includes a sequencer adapted to provide instructions associated with one or more threads of a multi-threaded processor. The sequencer includes an interrupt controller adapted to receive one or more interrupts and to selectively allow a first thread of the one or more threads to service at least one interrupt. The interrupt controller includes logic to preclude a second thread of the one or more threads from responding to the at least one interrupt.
    Type: Application
    Filed: December 12, 2007
    Publication date: April 17, 2008
    Applicant: QUALCOMM Incorporated
    Inventors: Erich Plondke, Lucian Codrescu, Muhammad Ahmed, William Anderson, Suresh Venkumahanti
  • Publication number: 20080046683
    Abstract: A processor device is disclosed that includes a register file with a combined condition code register for scalar and vector operations. The processor device utilizes the combined condition code register for scalar and vector operations. Further, a compare operation can store resulting bits in the combined condition code register and a conditional operation can utilize the combined condition code register bits for evaluating a condition.
    Type: Application
    Filed: August 18, 2006
    Publication date: February 21, 2008
    Inventors: Lucian Codrescu, Erich Plondke, Taylor Simpson
  • Publication number: 20080034189
    Abstract: A method and system to perform shifting and rounding operations within a microprocessor, such as, for example, a digital signal processor, during execution of a single instruction are described. An instruction to shift and round data within a source register unit of a register file structure is received within a processing unit. The instruction includes a shifting bit value indicating the bit amount for a right shift operation and is subsequently executed to shift data within the source register unit to the right by an encoded bit value, calculated by subtracting a single bit from the shifting bit value contained within the instruction. A predetermined bit extension is further inserted within the vacated bit positions adjacent to the shifted data. Subsequently, an addition operation is performed on the shifted data and a unitary integer value is added to the shifted data to obtain resulting data.
    Type: Application
    Filed: August 2, 2006
    Publication date: February 7, 2008
    Inventors: Lucian Codrescu, Erich Plondke, Mao Zeng
  • Publication number: 20080016316
    Abstract: A method and system to indicate which page within a software-managed page table triggers an exception within a microprocessor, such as, for example, a digital signal processor, wherein a software-managed translation lookaside buffer (TLB) module receives a virtual address produced by an instruction within a Very Long Instruction Word (VLIW) packet, such as, for example, a fetch instruction, and further compares the virtual address to each stored TLB entry. If a match exists, then the TLB module outputs a corresponding mapped physical address for the instruction. Otherwise, if the VLIW packet spans two pages, where a first page is present as a TLB entry within the TLB module and the second page is missing from the stored TLB entries, an indication bit within a data field of a control register is set to identify the TLB miss exception to a software management unit.
    Type: Application
    Filed: July 14, 2006
    Publication date: January 17, 2008
    Inventors: Lucian Codrescu, Erich Plondke, Muhammad Ahmed, Vijaya Kumar Janjanam
  • Publication number: 20070266229
    Abstract: Methods and apparatus for encoding information regarding a hardware loop of a set of packets is provided, each packet (400) containing instructions. The information is encoded into one or more bits of at least one instruction (300) in the set of packets. The information may indicate whether a packet is or is not an end packet of the loop. Information regarding two hardware loops may be encoded where information regarding the first loop is encoded into an instruction at a first position in each packet and information regarding the second loop is encoded into an instruction at a second position in each packet. End instruction information may be encoded into an instruction not having encoded loop information at the same bit positions reserved for the encoded loop information, the end instruction information indicating whether an instruction is the last instruction of a packet and the length of a packet.
    Type: Application
    Filed: May 10, 2006
    Publication date: November 15, 2007
    Inventors: Erich Plondke, Robert Lester, Lucian Codrescu, Muhammad Ahmed
  • Publication number: 20070266226
    Abstract: A method and system to combine corresponding half word units from multiple register units within a microprocessor, such as, for example, a digital signal processor, during execution of a single instruction are described. An instruction to combine predetermined disparate source register units from a register file structure is received within a processing unit. The instruction is then executed to combine corresponding half word units from the source register units and to input the half word units into respective portions of a resulting destination register unit. During the execution of the instruction, the predetermined source register units are identified and corresponding most significant half word units and associated data are retrieved from the identified register units. The retrieved half word units are further combined and input into a respective most significant portion of a resulting destination register unit.
    Type: Application
    Filed: May 10, 2006
    Publication date: November 15, 2007
    Inventors: Mao Zeng, Lucian Codrescu