Patents by Inventor Prashant Chandra

Prashant Chandra 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: 20050147038
    Abstract: Techniques for optimizing queuing performance include passing, from a ring having M slots, one or more enqueue requests and one or more dequeue requests to a queue manager, and determining whether the ring is full, and if the ring is full, sending only an enqueue request to the queue manager when one of the M slots is next available, otherwise, sending both an enqueue request and a dequeue request to the queue manager.
    Type: Application
    Filed: December 24, 2003
    Publication date: July 7, 2005
    Inventors: Prashant Chandra, Uday Naik, Alok Kumar, Ameya Varde, David Romano
  • Publication number: 20050141502
    Abstract: A method and apparatus to provide multicast support on a network device. The network device receives an incoming multicast packet, the multicast packet comprising an incoming multicast header and packet data. The packet data is stored at the network device. A plurality of outgoing multicast headers are generated based on the incoming multicast header. Each outgoing multicast header of the plurality of outgoing multicast headers is attached to the packet data to create a plurality of outgoing multicast packets without making multiple copies of the packet data.
    Type: Application
    Filed: December 30, 2003
    Publication date: June 30, 2005
    Inventors: Alok Kumar, Prashant Chandra, Uday Naik
  • Publication number: 20050144413
    Abstract: Methods, software and systems to determine channel ownership and physical block location within the channel in non-uniformly distributed DRAM configurations and also to detect in-range memory address matches are presented. A first method, which may also be implemented in software and/or hardware, allocates memory non-uniformly between a number of memory channels, determines a selected memory channel from the memory channels for a program address, and maps the program address to a physical address within the selected memory channel. A second method, which may also be implemented in software and/or hardware, designates a range of memory to perform address matching, monitors memory accesses and when a memory access occurs with the specified range, perform a particular function.
    Type: Application
    Filed: December 30, 2003
    Publication date: June 30, 2005
    Inventors: Chen-Chi Kuo, Sridhar Lakshmanamurthy, Rohit Natarajan, Kin-Yip Liu, Prashant Chandra, James Guilford
  • Publication number: 20050135367
    Abstract: In general, in one aspect, the disclosure describes a memory controller. The controller includes an interface to a first memory and an interface to a bus coupling the memory controller to at least one processor. The controller also includes circuitry, responsive to read and write commands received over the bus from the at least one processor, to shift data by an amount identified by at least some of the read and write commands.
    Type: Application
    Filed: December 18, 2003
    Publication date: June 23, 2005
    Inventors: Prashant Chandra, Sridhar Lakshmanamurthy, Chen-Chi Kuo, Rohit Natarajan, Mark Rosenbluth
  • Publication number: 20050135353
    Abstract: In general, in one aspect, the disclosure describes a method of assembling a packet in memory. The method includes reading data included in a first segment of a packet divided into multiple segments and issuing a command to a memory controller that causes the memory controller to shift and write a subset of the read data to a memory coupled to the memory controller. The method also includes saving the remainder of the read data as a first residue, retrieving data included in a second segment of the packet, and writing at least a portion of the retrieved data and the first residue to the memory.
    Type: Application
    Filed: December 18, 2003
    Publication date: June 23, 2005
    Inventors: Prashant Chandra, Sridhar Lakshmanamurthy, Chen-Chi Kuo, Rohit Natarajan, Mark Rosenbluth
  • Publication number: 20050132078
    Abstract: According to some embodiments, a processing element arranges for a packet to be transmitted through a port without storing a packet identifier in a local transmit queue if a number of transmit buffers to be associated with the packet does not exceed a pre-determined threshold.
    Type: Application
    Filed: December 12, 2003
    Publication date: June 16, 2005
    Inventors: Alok Kumar, Prashant Chandra, Uday Naik, Ameya Varde, David Chou
  • Publication number: 20050108718
    Abstract: Techniques for parallel processing of events within multiple event contexts include dynamically binding an event context to an execution context in response to receiving an event by storing arriving events into a global event queue and storing events from the global event queue in per-execution context event queues. The techniques associate event queues with the execution contexts to temporarily store the events for a duration of the binding and thus dynamically bind the events received on a per-event basis in the context queues.
    Type: Application
    Filed: November 19, 2003
    Publication date: May 19, 2005
    Inventors: Alok Kumar, Prashant Chandra
  • Publication number: 20050108479
    Abstract: In general, in one aspect, the disclosure describes a processor that includes a memory to store at least a portion of instructions of at least one program and multiple packet engines that include an engine instruction cache to store a subset of the at least one program. The processor also includes circuitry coupled to the packet engines and the memory to receive requests from the multiple engines for subsets of the at least one portion of the at least one set of instructions.
    Type: Application
    Filed: November 6, 2003
    Publication date: May 19, 2005
    Inventors: Sridhar Lakshmanamurthy, Wilson Liao, Prashant Chandra, Jeen-Yuan Miin, Yim Pun
  • Publication number: 20050102486
    Abstract: In general, in one aspect, the disclosure describes a processor that includes an instruction store to store instructions of at least a portion of at least one program and multiple engines coupled to the shared instruction store. The engines provide multiple execution threads and include an instruction cache to cache a subset of the at least the portion of the at least one program from the instruction store, with different respective portions of the engine's instruction cache being allocated to different respective ones of the engine threads.
    Type: Application
    Filed: November 6, 2003
    Publication date: May 12, 2005
    Inventors: Sridhar Lakshmanamurthy, Wilson Liao, Prashant Chandra, Jeen-Yuan Miin, Yim Pun
  • Publication number: 20050102474
    Abstract: In general, in one aspect, the disclosure describes a processor that includes an instruction store to store instructions of at least a portion of at least one program and a set of multiple engines coupled to the instruction store. The engines include an engine instruction cache and circuitry to request a subset of the at least the portion of the at least one program.
    Type: Application
    Filed: November 6, 2003
    Publication date: May 12, 2005
    Inventors: Sridhar Lakshmanamurthy, Wilson Liao, Prashant Chandra, Jeen-Yuan Miin, Yim Pun
  • Publication number: 20050066081
    Abstract: According to some embodiments, free packet buffers are allocated.
    Type: Application
    Filed: September 23, 2003
    Publication date: March 24, 2005
    Inventors: Prashant Chandra, Uday Naik, Alok Kumar, Ameya Varde
  • Publication number: 20050050306
    Abstract: A method of executing instructions on a processor includes, receiving a first condition code produced by executing a first instruction during a first clock cycle on an array of engines included in the processor, receiving a second condition code produced by executing a second instruction during a second clock cycle on the array of engines included in the processor, and executing a logical operator on the first and second condition codes during the second clock cycle on the array of engines included in the processor.
    Type: Application
    Filed: August 26, 2003
    Publication date: March 3, 2005
    Inventors: Sridhar Lakshmanamurthy, Prashant Chandra, Wilson Liao, Jeen-Yuan Miin, Yim Pun, Chen-Chi Kuo, Jaroslaw Sydir, Uday Naik