Patents by Inventor Robert E. Mains
Robert E. Mains 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: 8380656Abstract: A method for computing power consumption includes querying a software database for a key node and a gate comprising an input port, connected to the key node, and an output port. The software database is created from a net list associated with a design. The method includes calculating a probability of activity level at the output port based on a predetermined activity level at the key node, and querying the software database for next gate comprising a next input port, connected to the previous output port, and a next output port. The method includes calculating a probability of activity level at the next output port based on the probability of activity level at the previous output port. The method includes computing a sub-circuit gate power by sum of power of all the gates based on the probability of activity level at output ports of the gates.Type: GrantFiled: October 30, 2009Date of Patent: February 19, 2013Assignee: Oracle America, Inc.Inventors: Krishnan Sundaresan, Wei-Lun Hung, Jaewon Oh, Robert E. Mains
-
Publication number: 20110106748Abstract: A method for computing power consumption includes querying a software database for a key node and a gate comprising an input port, connected to the key node, and an output port. The software database is created from a net list associated with a design. The method includes calculating a probability of activity level at the output port based on a predetermined activity level at the key node, and querying the software database for next gate comprising a next input port, connected to the previous output port, and a next output port. The method includes calculating a probability of activity level at the next output port based on the probability of activity level at the previous output port. The method includes computing a sub-circuit gate power by sum of power of all the gates based on the probability of activity level at output ports of the gates.Type: ApplicationFiled: October 30, 2009Publication date: May 5, 2011Applicant: SUN MICROSYSTEMS, INC.Inventors: Krishnan Sundaresan, Wei-Lun Hung, Jaewon Oh, Robert E. Mains
-
Patent number: 7802217Abstract: Broadly speaking, the embodiments of the present invention fill the need for a method of designing semiconductor device chips with reduced power consumption. The embodiments describe methods that are activity-based and are used for power optimization. The embodiments provide methods of selecting instances of a block of a chip to be replaced by either gate-length bias (GBIAS) cells or high-threshold-voltage (HVT) cells with minimal impact (little or no impact) on the overall performance of the chip. Only instances not on the critical path(s) are selected. Instances with low activities and high slack thresholds are chosen to be replaced by either GBIAS cells or HVT cells. By replacing the instances with low activities and high slack threshold, the performance impact on the block and chip is minimized. The replacement results in net power reduction, which is critical to advanced device technologies.Type: GrantFiled: January 25, 2008Date of Patent: September 21, 2010Assignee: Oracle America, Inc.Inventors: Venkatesh P. Gopinath, Krishnan Sundaresan, Jaewon Oh, Ke Peng, Robert E. Mains
-
Patent number: 7797658Abstract: A method and apparatus for executing multithreaded algorithm to provide static timing analysis of a chip design includes analyzing a chip design to identify various components and nodes associated with the components. A node tree is built with a plurality of nodes. The node tree identifies groups of nodes that are available in different levels. A size of node grouping for a current level is determined by looking up the node tree. Testing data for parallel processing of different size of node groupings using varied thread counts is compiled. An optimum thread count for the current level based on the size of node grouping in the node tree is identified from compiled testing data. Dynamic parallel processing of nodes in the current level is performed using the number of threads identified by the optimum thread count. An acceptable design of the chip is determined by the dynamic parallel processing.Type: GrantFiled: October 22, 2007Date of Patent: September 14, 2010Assignee: Oracle America, Inc.Inventors: George J. Chen, Darryl J. Gove, Robert E. Mains
-
Publication number: 20090327985Abstract: Various methods and apparatus for executing a multithreaded algorithm that performs a static timing analysis of an integrated circuit chip (chip) include logic for traversing the chip to identify a plurality of components (cells or nodes) within a chip circuit of the chip. A waveform graph is defined for the identified nodes. One or more virtual graphs are generated from the waveform graph. The plurality of nodes in the one or more virtual graphs are processed using multiple threads to obtain quadruplet of time domain dataset values representing the different modes of propagation for each node. A timing check is performed at an end node of the virtual graphs using the quadruplet of time domain dataset values to determine any timing violation within the chip design.Type: ApplicationFiled: June 26, 2008Publication date: December 31, 2009Inventors: George J. Chen, Gilda Garreton, Steven M. Rubin, Robert E. Mains
-
Publication number: 20090106717Abstract: A method and apparatus for executing multithreaded algorithm to provide static timing analysis of a chip design includes analyzing a chip design to identify various components and nodes associated with the components. A node tree is built with a plurality of nodes. The node tree identifies groups of nodes that are available in different levels. A size of node grouping for a current level is determined by looking up the node tree. Testing data for parallel processing of different size of node groupings using varied thread counts is compiled. An optimum thread count for the current level based on the size of node grouping in the node tree is identified from compiled testing data. Dynamic parallel processing of nodes in the current level is performed using the number of threads identified by the optimum thread count. An acceptable design of the chip is determined by the dynamic parallel processing.Type: ApplicationFiled: October 22, 2007Publication date: April 23, 2009Inventors: George J. Chen, Darryl J. Gove, Robert E. Mains
-
Patent number: 7216316Abstract: Broadly speaking, a method is provided for evaluating nets in a crosstalk noise analysis. More specifically, a method is provided for evaluating timing window overlap between a pair of nets. The method includes selecting one timing window from each net of the pair of nets for analysis. The method further includes analyzing characteristics of the timing windows selected from the pair of nets to identify a timing window overlap presence, wherein the timing window overlap presence can exist between any two timing windows associated with each net of the pair of nets, respectively.Type: GrantFiled: March 5, 2004Date of Patent: May 8, 2007Assignee: Sun Microsystems, Inc.Inventors: Jeannette N. Sutherland, Robert E. Mains, Matthew J. Amatangelo, Shervin Hojat
-
Patent number: 7206958Abstract: Given two synchronous clocks which transact data from a transmitter element to a receiver element which are analyzed by static timing, the interval between the transmitting data launch clock edge and the receiving capture clock edge is adjusted from the clock waveforms provided in order to represent the worst case slack situation between these two clocks over time. The amount of this adjustment is determined without unrolling (enumerating) all possible launch/capture pairs for these clocks. The greatest common divisor (GCD) of a transmit clock frequency and a receive clock frequency is determined. An effective phase shift is determined by performing a MOD operation between the GCD and an offset of the transmitter and receiver clocks. An algorithm uses the GCD and effective phase shift to determine a launch/capture interval that corresponds to a critical slack condition.Type: GrantFiled: October 21, 2003Date of Patent: April 17, 2007Assignee: Sun Microsystems, Inc.Inventors: Jeannette N. Sutherland, Robert E. Mains, Matthew J. Amatangelo
-
Patent number: 7051305Abstract: A method of estimating delay which includes configuring a first signal path and second signal path such that the first signal path is a victim signal path and the second signal path is an aggressor signal path, calculating Miller factors between the victim signal path and the aggressor signal path for a plurality of edge combinations between a victim signal edge and an aggressor signal edge, and using the Miller factors to perform a timing analysis.Type: GrantFiled: April 27, 2004Date of Patent: May 23, 2006Assignee: Sun Microsystems, Inc.Inventors: Hien T. Ha, George J. Chen, Robert E. Mains
-
Patent number: 5771375Abstract: An apparatus and method are disclosed that perform static timing analysis on a logic circuit. The logic circuit is unique in that it includes a path topology having a mixture of full cycle and half cycle timing paths. The apparatus and method first perform a data event identification event on the logic circuit and use this event to define a set of clock-to-data-phase transformation rules for defining in all latch instances of the circuit, how each data phase is generated and from what clock edge each data phase is created. Next, the system then performs a test edge selection and then performs a clock adjustment based on the transformation rules and the test edge selection. In performing the test edge selection, the system selects a correct time leading or time trailing edge based on which edge level of the clock is the level against which an arriving data signal to be tested.Type: GrantFiled: September 18, 1995Date of Patent: June 23, 1998Assignee: International Business Machines CorporationInventor: Robert E. Mains