Patents by Inventor Kathirgamar Aingaran
Kathirgamar Aingaran 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: 8694755Abstract: An apparatus comprising an arbiter circuit, a translation circuit and a controller circuit. The arbiter circuit may be configured to generate one or more first control signals and a data write signal in response to an input signal and a read data signal. The translation circuit may be configured to generate a one or more second control signals in response to the one or more first control signals and the write address signal. The controller circuit may be configured to generate an address signal in response to the one or more second control signals.Type: GrantFiled: March 17, 2010Date of Patent: April 8, 2014Assignee: Ambarella, Inc.Inventors: Kathirgamar Aingaran, Leslie D. Kohn, Robert C. Kunz, Jenn-Yuan Tsai
-
Publication number: 20140095534Abstract: Techniques for processing a query are provided. One or more operations that are required to process a query are performed by a coprocessor that is separate from a general purpose microprocessor that executes query processing software. The query processing software receives a query, determines one or more operations that are required to be executed to fully process the query, and issues one or more commands to one or more coprocessors that are programmed to perform one of the operations, such as a table scan operation and/or a lookup operation. The query processing software obtains results from the coprocessor(s) and performs one or more additional operations thereon to generate a final result of the query.Type: ApplicationFiled: February 26, 2013Publication date: April 3, 2014Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Kathirgamar Aingaran, Garret F Swart
-
Publication number: 20140096145Abstract: A method and apparatus for sending and receiving messages between nodes on a compute cluster is provided. Communication between nodes on a compute cluster, which do not share physical memory, is performed by passing messages over an I/O subsystem. Typically, each node includes a synchronization mechanism, a thread ready to receive connections, and other threads to process and reassemble messages. Frequently, a separate queue is maintained in memory for each node on the I/O subsystem sending messages to the receiving node. Such overhead increases latency and limits message throughput. Due to a specialized coprocessor running on each node, messages on an I/O subsystem are sent, received, authenticated, synchronized, and reassembled at a faster rate and with lower latency. Additionally, the memory structure used may reduce memory consumption by storing messages from multiple sources in the same memory structure, eliminating the need for per-source queues.Type: ApplicationFiled: February 27, 2013Publication date: April 3, 2014Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Kathirgamar Aingaran, William H. Bridge, JR., Garret F. Swart, Sumti Jairath, John G. Johnson
-
Publication number: 20140095468Abstract: Techniques for processing a query are provided. One or more operations that are required to process a query are performed by a coprocessor that is separate from a general purpose microprocessor that executes query processing software. The query processing software receives a query, determines one or more operations that are required to be executed to fully process the query, and issues one or more commands to one or more coprocessors that are programmed to perform one of the operations, such as a table scan operation and/or a lookup operation. The query processing software obtains results from the coprocessor(s) and performs one or more additional operations thereon to generate a final result of the query.Type: ApplicationFiled: February 26, 2013Publication date: April 3, 2014Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Kathirgamar Aingaran, Garret F. Swart, Sanjiv Kapil
-
Publication number: 20140095810Abstract: A method and apparatus are disclosed for enabling nodes in a distributed system to share one or more memory portions. A home node makes a portion of its main memory available for sharing, and one or more sharer nodes mirrors that shared portion of the home node's main memory in its own main memory. To maintain memory coherency, a memory coherence protocol is implemented. Under this protocol, load and store instructions that target the mirrored memory portion of a sharer node are trapped, and store instructions that target the shared memory portion of a home node are trapped. With this protocol, valid data is obtained from the home node and updates are propagated to the home node. Thus, no “dirty” data is transferred between sharer nodes. As a result, the failure of one node will not cause the failure of another node or the failure of the entire system.Type: ApplicationFiled: March 14, 2013Publication date: April 3, 2014Applicant: Oracle International CorporationInventors: PAUL N. LOEWENSTEIN, John G. Johnson, Kathirgamar Aingaran, Zoran Radovic
-
Publication number: 20140095748Abstract: A method and apparatus for reconfiguring hardware structures to pipeline the execution of multiple special purpose hardware implemented functions, without saving intermediate results to memory, is provided. Pipelining functions in a program is typically performed by a first function saving its results (the “intermediate results”) to memory, and a second function subsequently accessing the memory to use the intermediate results as input. Saving and accessing intermediate results stored in memory incurs a heavy performance penalty, requires more power, consumes more memory bandwidth, and increases the memory footprint. Due to the ability to redirect the input and output of the hardware structures, intermediate results are passed directly from one special purpose hardware implemented function to another without storing the intermediate results in memory.Type: ApplicationFiled: March 7, 2013Publication date: April 3, 2014Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Kathirgamar Aingaran, Garret F. Swart
-
Patent number: 7421382Abstract: A method for data analysis of power modeling for a microprocessor has been developed. The method takes multiple values of power data from a power modeling simulator and generates summary data to characterize the power data behavior. Summary data views include results characterizing behavior in a single cycle and behavior across multiple cycles. Data is viewed both at an absolute level to characterize total power and relative to previous levels to characterize power derivatives. Summary data is derived from power generated every cycle when running specific benchmark programs on the power simulator.Type: GrantFiled: December 7, 2001Date of Patent: September 2, 2008Assignee: Sun Microsystems, Inc.Inventors: Miriam G. Blatt, David J. Greenhill, Claude R. Gauthier, Kathirgamar Aingaran
-
Patent number: 7310709Abstract: A method and apparatus is disclosed for maintaining coherency between a primary cache and a secondary cache in a directory-based cache system. Upon identifying a parity error in the primary cache, a tag parity packet and a load instruction are sent from the primary cache to the secondary cache. In response to the tag parity packet, each tag entry in the secondary cache that is associated with the parity error is invalidated. Upon receiving an acknowledgment of receipt of the tag parity packet, the primary cache functions to invalidate each tag entry in the primary cache that is associated with the parity error. Then, the secondary cache communicates data requested in the load instruction to the primary cache.Type: GrantFiled: April 6, 2005Date of Patent: December 18, 2007Assignee: Sun Microsystems, Inc.Inventors: Kathirgamar Aingaran, Ramaswamy Sivaramakrishnan, Sanjay Patel
-
Patent number: 7203100Abstract: A multi-threaded memory system including a plurality of entries, each one of the plurality of entries including a plurality of threads, each one of the plurality of threads including an active cell and a shared read cell. The shared read cell has an output coupled to a read bit line and a corresponding plurality of inputs coupled to an output of the corresponding active cells in each one of the plurality of threads. A multi-threaded memory system is also described.Type: GrantFiled: January 21, 2005Date of Patent: April 10, 2007Assignee: Sun Mircosystems, Inc.Inventors: Shree Kant, Kathirgamar Aingaran, Yuan-Jung D Lin, Kenway Tam
-
Patent number: 7136308Abstract: A memory system includes an active storage circuit and at least one base storage circuit. The at least one base storage circuit is coupled to the active storage circuit though at least one pass gate, at least one driver and a bit line. The at least one pass gate and the at least one driver have a device size substantially similar to a device size of each one of the devices in the active storage circuit and the at least one base storage circuit. A method of swapping data between two storage circuits is also described.Type: GrantFiled: November 1, 2004Date of Patent: November 14, 2006Assignee: Sun Microsystems, Inc.Inventors: Shree Kant, Kenway Tam, Poonacha P. Kongetira, Yuan-Jung D Lin, Zhen W. Liu, Kathirgamar Aingaran
-
Publication number: 20060136919Abstract: A multi-thread processor including a processing core. The processing core including multiple threads and a scheduler. The scheduler includes a thread state register. The thread state register being capable of storing a selective wait state for a selected one of the threads. A method of scheduling threads in a multi-thread processor is also disclosed.Type: ApplicationFiled: March 30, 2005Publication date: June 22, 2006Applicant: Sun Microsystems, Inc.Inventors: Kathirgamar Aingaran, James Laudon
-
Publication number: 20060136915Abstract: An apparatus and method for scheduling execution of multiple threads on a shared processor resource is described in connection with a multithreaded multiprocessor chip. Using a thread selection policy that switches between available threads every cycle to give priority to the least recently executed or scheduled threads, different threads are able to operate in a way that ensures no deadlocks or livelocks while maximizing aggregate performance and fairness between threads. Prioritization is accomplished by monitoring and sorting thread status information for each thread, including speculative states in which a thread may be speculatively scheduled, thereby improving usage of the execution pipeline by switching a thread in with a lower priority.Type: ApplicationFiled: December 17, 2004Publication date: June 22, 2006Applicant: Sun Microsystems, Inc.Inventors: Kathirgamar Aingaran, Hong-Men Su
-
Publication number: 20060092711Abstract: A multi-threaded memory system including a plurality of entries, each one of the plurality of entries including a plurality of threads, each one of the plurality of threads including an active cell and a shared read cell. The shared read cell has an output coupled to a read bit line and a corresponding plurality of inputs coupled to an output of the corresponding active cells in each one of the plurality of threads. A multi-threaded memory system is also described.Type: ApplicationFiled: January 21, 2005Publication date: May 4, 2006Applicant: Sun Microsystems, IncInventors: Shree Kant, Kathirgamar Aingaran, Yuan-Jung Lin, Kenway Tam
-
Publication number: 20060092710Abstract: A memory system includes an active storage circuit and at least one base storage circuit. The at least one base storage circuit is coupled to the active storage circuit though at least one pass gate, at least one driver and a bit line. The at least one pass gate and the at least one driver have a device size substantially similar to a device size of each one of the devices in the active storage circuit and the at least one base storage circuit. A method of swapping data between two storage circuits is also described.Type: ApplicationFiled: November 1, 2004Publication date: May 4, 2006Applicant: Sun Microsystems, IncInventors: Shree Kant, Kenway Tam, Poonacha Kongetira, Yuang-Jung Lin, Zhen Liu, Kathirgamar Aingaran
-
Patent number: 6587815Abstract: Method and apparatus for detecting and analyzing effects of noise in a digital circuit that arises from a coupling of signals produced by switching of a first gate and a second gate in a timed relationship. Where each of a first gate and a second gate can switch within a selected switching time interval, the gate switching effects are combined and the second gate output signal is analyzed with reference to the first gate input signal. Otherwise, the gate switching effects are not combined. When the second gate output signal satisfies at least one of three criteria, this condition is interpreted as indicating that the second gate permits propagation of a noise pulse produced at the first gate.Type: GrantFiled: February 4, 2000Date of Patent: July 1, 2003Assignee: Sun Microsystems, Inc.Inventors: Kathirgamar Aingaran, Manjunath D. Haritsa, Lakshminarasimhan Varadadesikan
-
Publication number: 20030110019Abstract: A method for data analysis of power modeling for a microprocessor has been developed. The method takes multiple values of power data from a power modeling simulator and generates summary data to characterize the power data behavior. Summary data views include results characterizing behavior in a single cycle and behavior across multiple cycles. Data is viewed both at an absolute level to characterize total power and relative to previous levels to characterize power derivatives. Summary data is derived from power generated every cycle when running specific benchmark programs on the power simulator.Type: ApplicationFiled: December 7, 2001Publication date: June 12, 2003Inventors: Miriam G. Blatt, David J. Greenhill, Claude R. Gauthier, Kathirgamar Aingaran
-
Patent number: 6536022Abstract: An automated method of analyzing crosstalk in a digital logic integrated circuit, the method operating on a digital computer, is described. The method uses available software to make an extracted, parameterized netlist from a layout of the integrated circuit. For at least one potential victim wire of the plurality of wires, determining a subset of the wires of the chip are found to be potential aggressor wires that may couple to the victim wire. The aggressor wires are combined into a common aggressor. A risetime of the common aggressor is calculated and used to calculate the magnitude of coupled noise on the victim wire induced by the aggressor wires. An alarm threshold for each potential victim wire is determined based upon the type of logic gate that receives the victim wire.Type: GrantFiled: February 25, 2000Date of Patent: March 18, 2003Assignee: Sun Microsystems, Inc.Inventors: Kathirgamar Aingaran, Edgardo F. Klass, Chaim Amir, Chin-Man Kim
-
Patent number: 6507935Abstract: An automated method of analyzing crosstalk in a digital logic integrated circuit on a digital computer is described. The method uses available software to make an extracted, parameterized netlist from a layout of the integrated circuit. The netlist has gate and black box invocations as well as transistor invocations. Library models are used to find driving resistances and capacitances associated with the gate and black-box invocations. For at least one potential victim wire of the plurality of wires, a subset of the wires of the chip are found to be potential aggressor wires to the victim wire. The aggressor wires are combined into a common aggressor. A risetime of the common aggressor is calculated and used to calculate the magnitude of coupled noise on the victim wire induced by the aggressor wires. An alarm threshold for each potential victim wire is determined based upon the type of logic gate that receives the victim wire.Type: GrantFiled: February 25, 2000Date of Patent: January 14, 2003Assignee: Sun Microsystems, Inc.Inventors: Kathirgamar Aingaran, Chin-Man Kim, Hong You
-
Patent number: 6449753Abstract: An automated method of analyzing crosstalk in a digital logic integrated circuit on a digital computer is described. The method uses available software to make an extracted, parameterized netlist from a layout of the integrated circuit. The netlist has gate and black box invocations as well as transistor invocations. Library models are used to find driving resistances and capacitances associated with the gate and black-box invocations. For at least one potential victim wire of the plurality of wires, a subset of the wires of the chip are found to be potential aggressor wires to the victim wire. The aggressor wires are combined into a common aggressor. A risetime of the common aggressor is calculated and used to calculate the magnitude of coupled noise on the victim wire induced by the aggressor wires. An alarm threshold for each potential victim wire is determined based upon the type of logic gate that receives the victim wire.Type: GrantFiled: March 20, 2000Date of Patent: September 10, 2002Assignee: Sun Microsystems, Inc.Inventors: Kathirgamar Aingaran, Joydeep Mitra
-
Patent number: 6335639Abstract: A logic gate for producing an output signal representing a logical operation of a first logic signal and a second logic signal includes a first input terminal for receiving the first logic signal and a second input terminal for receiving the second logic signal. The logic gate further includes a first transistor, a second transistor, and an evaluation node which is connected to a pre-charge device. The first transistor has a first terminal coupled to the first input, a second terminal coupled to the evaluation node, and a third terminal coupled to the second input. The second transistor has a first terminal coupled to the second input, a second terminal coupled to the evaluation node, and a third terminal coupled to the first input. A change in either of the logic signals triggers the logic gate, and a change in both of the logic signals within a predetermined time period results in the logic signals simultaneously canceling each other out.Type: GrantFiled: May 25, 2000Date of Patent: January 1, 2002Assignee: Sun Microsystems, Inc.Inventor: Kathirgamar Aingaran