Patents by Inventor Paul G. Villarrubia

Paul G. Villarrubia 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: 20200104453
    Abstract: A system and method of performing model-based refinement of a placement of components in integrated circuit generation select one of the components as a candidate component and postulate a move of the candidate component from an original position to a new position. The method includes defining nets associated with the candidate component. An initial perimeter and a new perimeter associated with each of the one or more nets are defined. The initial perimeter includes the candidate component at its original position and the new perimeter includes the candidate component at its new position. The method includes quantifying a change from the initial perimeter and the new perimeter and the original position and the new position, and obtaining a model of wires interconnecting the candidate component to the components of each of the nets. A result of the placement is provided for manufacture of the integrated circuit.
    Type: Application
    Filed: September 28, 2018
    Publication date: April 2, 2020
    Inventors: Myung-Chul Kim, Gi-Joon Nam, Shyam Ramji, Benjamin N. Trombley, Paul G. Villarrubia
  • Patent number: 10558775
    Abstract: A system and method to perform physical synthesis to transition a logic design to a physical layout of an integrated circuit include obtaining an initial netlist that indicates all components of the integrated circuit including memory elements and edges that interconnect the components. The method also includes generating a graph with at least one of the memory elements and the edges carrying one or more signals to the at least one of the memory elements or from the at least one of the memory elements. The components other than memory elements are not indicated individually on the graph. The netlist is updated based on the graph.
    Type: Grant
    Filed: December 20, 2017
    Date of Patent: February 11, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Myung-Chul Kim, Arjen Alexander Mets, Gi-Joon Nam, Shyam Ramji, Lakshmi N. Reddy, Alexander J. Suess, Benjamin Trombley, Paul G. Villarrubia
  • Publication number: 20200034507
    Abstract: A putative circuit design is represented as a set of movable blocks of predetermined size which must fit into a bounding box, with a plurality of subsets to be interconnected by wires. A total weighted wire length is determined as a function of coordinates of centers of the movable blocks by summing a half perimeter wire length over the plurality of subsets, and a density penalty is determined as a convolution of an indicator function of the current placement and a convolution kernel, via incremental integer computation without use of floating point arithmetic. Blocks are moved to minimize a penalty function which is the sum of the total weighted wire length and the product of a density penalty weight and the density penalty. The process repeats until a maximum value of the density penalty weight is reached or the density penalty approaches zero.
    Type: Application
    Filed: July 27, 2018
    Publication date: January 30, 2020
    Inventors: Alexey Y. Lvov, Gi-Joon Nam, Benjamin Neil Trombley, Myung-Chul Kim, Paul G. Villarrubia
  • Patent number: 10528695
    Abstract: A putative circuit design is represented as a set of movable blocks of predetermined size which must fit into a bounding box, with a plurality of subsets to be interconnected by wires. A total weighted wire length is determined as a function of coordinates of centers of the movable blocks by summing a half perimeter wire length over the plurality of subsets, and a density penalty is determined as a convolution of an indicator function of the current placement and a convolution kernel, via incremental integer computation without use of floating point arithmetic. Blocks are moved to minimize a penalty function which is the sum of the total weighted wire length and the product of a density penalty weight and the density penalty. The process repeats until a maximum value of the density penalty weight is reached or the density penalty approaches zero.
    Type: Grant
    Filed: July 27, 2018
    Date of Patent: January 7, 2020
    Assignee: International Business Machines Corporation
    Inventors: Alexey Y. Lvov, Gi-Joon Nam, Benjamin Neil Trombley, Myung-Chul Kim, Paul G. Villarrubia
  • Publication number: 20190188352
    Abstract: A system and method to perform physical synthesis to transition a logic design to a physical layout of an integrated circuit include obtaining an initial netlist that indicates all components of the integrated circuit including memory elements and edges that interconnect the components. The method also includes generating a graph with at least one of the memory elements and the edges carrying one or more signals to the at least one of the memory elements or from the at least one of the memory elements. The components other than memory elements are not indicated individually on the graph. The netlist is updated based on the graph.
    Type: Application
    Filed: December 20, 2017
    Publication date: June 20, 2019
    Inventors: Myung-Chul Kim, Arjen Alexander Mets, Gi-Joon Nam, Shyam Ramji, Lakshmi N. Reddy, Alexander J. Suess, Benjamin Trombley, Paul G. Villarrubia
  • Publication number: 20190026418
    Abstract: The disclosed herein relates to method for persistence during placement optimization of an integrated circuit design. The method comprises performing cluster operation by grouping of a plurality of cells into a plurality of mobs. The method further comprises performing a spreading operation by moving the plurality of mobs and the plurality of cells simultaneously to optimize empty space of the integrated circuit design.
    Type: Application
    Filed: September 25, 2018
    Publication date: January 24, 2019
    Inventors: Myung-Chul Kim, Shyam Ramji, Paul G. Villarrubia, Natarajan Viswanathan
  • Patent number: 10140409
    Abstract: The disclosed herein relates to method for persistence during placement optimization of an integrated circuit design. The method comprises performing cluster operation by grouping of a plurality of cells into a plurality of mobs. The method further comprises performing a spreading operation by moving the plurality of mobs and the plurality of cells simultaneously to optimize empty space of the integrated circuit design.
    Type: Grant
    Filed: August 11, 2016
    Date of Patent: November 27, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Myung-Chul Kim, Shyam Ramji, Paul G. Villarrubia, Natarajan Viswanathan
  • Patent number: 9754062
    Abstract: A method of implementing timing adjustments across a transparent latch of an integrated circuit, a system, and a computer program product are described. The method includes obtaining initial input timing slack and input potential power savings at an input and an initial output timing slack and output potential power savings at an output of the transparent latch. The method also includes adjusting a cycle boundary of the transparent latch to obtain a new input timing slack at the input and a new output timing slack at the output of the transparent latch, wherein the new input timing slack is greater than the initial input timing slack based on the input potential power savings being greater than the output potential power savings and the new output timing slack is greater than the initial output timing slack based on the output potential power savings being greater than the input potential power savings.
    Type: Grant
    Filed: November 6, 2015
    Date of Patent: September 5, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kerim Kalafala, Gregory M. Schaeffer, Stephen G. Shuma, Paul G. Villarrubia
  • Publication number: 20170220722
    Abstract: The disclosed herein relates to method for persistence during placement optimization of an integrated circuit design. The method comprises performing cluster operation by grouping of a plurality of cells into a plurality of mobs. The method further comprises performing a spreading operation by moving the plurality of mobs and the plurality of cells simultaneously to optimize empty space of the integrated circuit design.
    Type: Application
    Filed: August 11, 2016
    Publication date: August 3, 2017
    Inventors: MYUNG-CHUL KIM, SHYAM RAMJI, PAUL G. VILLARRUBIA, NATARAJAN VISWANATHAN
  • Publication number: 20170132347
    Abstract: A method of implementing timing adjustments across a transparent latch of an integrated circuit, a system, and a computer program product are described. The method includes obtaining initial input timing slack and input potential power savings at an input and an initial output timing slack and output potential power savings at an output of the transparent latch. The method also includes adjusting a cycle boundary of the transparent latch to obtain a new input timing slack at the input and a new output timing slack at the output of the transparent latch, wherein the new input timing slack is greater than the initial input timing slack based on the input potential power savings being greater than the output potential power savings and the new output timing slack is greater than the initial output timing slack based on the output potential power savings being greater than the input potential power savings.
    Type: Application
    Filed: November 6, 2015
    Publication date: May 11, 2017
    Inventors: Kerim Kalafala, Gregory M. Schaeffer, Stephen G. Shuma, Paul G. Villarrubia
  • Patent number: 9524363
    Abstract: An improved circuit design system may include a computer processor to perform a placement for a circuit by physical synthesis. The system may also include a controller to compute a preferred location of at least one selected element of the circuit, and to calculate placement constraints for each selected element. The system may further include an updated design for the circuit generated by performing another round of physical synthesis with the placement constraints.
    Type: Grant
    Filed: May 31, 2012
    Date of Patent: December 20, 2016
    Assignee: GLOBALFOUNDRIES INC.
    Inventors: Charles J. Alpert, Gi-Joon Nam, Chin Ngai Sze, Paul G. Villarrubia, Natarajan Viswanathan
  • Patent number: 9495501
    Abstract: The disclosed herein relates to method for persistence during placement optimization of an integrated circuit design. The method comprises performing cluster operation by grouping of a plurality of cells into a plurality of mobs. The method further comprises performing a spreading operation by moving the plurality of mobs and the plurality of cells simultaneously to optimize empty space of the integrated circuit design.
    Type: Grant
    Filed: January 29, 2016
    Date of Patent: November 15, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Myung-Chul Kim, Shyam Ramji, Paul G. Villarrubia, Natarajan Viswanathan
  • Patent number: 9483596
    Abstract: A method, system and computer program product for forming a netlist for an electronic circuit is disclosed. A Very High Speed Integrated Circuit Hardware Description Language (VHDL) file is created for a plurality of voltage domains. The VHDL file includes a voltage domain attribute and a logic voltage attribute for a pin of the electronic circuit. The voltage domain attribute and the logic voltage attribute for the pin are read from the VHDL file. Netlist instructions for the pin are synthesized to form a netlist for the electronic circuit. Synthesizing the netlist instructions begins with synthesizing netlist instructions within a voltage domain indicated by the voltage domain attribute and ends with synthesizing netlist instructions within a voltage domain indicated by the logic voltage attribute.
    Type: Grant
    Filed: January 8, 2016
    Date of Patent: November 1, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: John T. Badar, David J. Geiger, KM Mozammel Hossain, Paul G. Villarrubia
  • Patent number: 9098669
    Abstract: Boundary timing in the design of an integrated circuit is facilitated by designating a subset of boundary latches in the circuit, and applying placement constraints to the boundary latches. Global placement is performed while maintaining the boundary latch placement constraints, and a timing driven placement is performed after implementing timing assertions. Boundary latches are designated using a depth-first search to identify the first latches along interconnection paths with the PI/PO, and filtering out ineligible latches according to designer rules. A latch can be filtered out if it is in a large cluster of latches driven by a primary input or driving a primary output, if it drives too many POs, or is a feed-through latch. Constraints include movebounds, preplacement, or attractive forces between boundary latches and other boundary fixed objects, i.e., a fixed gate or a PI/PO.
    Type: Grant
    Filed: January 10, 2014
    Date of Patent: August 4, 2015
    Assignee: International Business Machines Corporation
    Inventors: Charles J. Alpert, Mark D. Aubel, Gregory F. Ford, Zhuo Li, Chin Ngai Sze, Paul G. Villarrubia, Natarajan Viswanathan
  • Publication number: 20150199465
    Abstract: Boundary timing in the design of an integrated circuit is facilitated by designating a subset of boundary latches in the circuit, and applying placement constraints to the boundary latches. Global placement is performed while maintaining the boundary latch placement constraints, and a timing driven placement is performed after implementing timing assertions. Boundary latches are designated using a depth-first search to identify the first latches along interconnection paths with the PI/PO, and filtering out ineligible latches according to designer rules. A latch can be filtered out if it is in a large cluster of latches driven by a primary input or driving a primary output, if it drives too many POs, or is a feed-through latch. Constraints include movebounds, preplacement, or attractive forces between boundary latches and other boundary fixed objects, i.e., a fixed gate or a PI/PO.
    Type: Application
    Filed: January 10, 2014
    Publication date: July 16, 2015
    Applicant: International Business Machines Corporation
    Inventors: Charles J. Alpert, Mark D. Aubel, Gregory F. Ford, Zhuo Li, Chin Ngai Sze, Paul G. Villarrubia, Natarajan Viswanathan
  • Patent number: 8954915
    Abstract: Integrated circuit design uses a library of structured soft blocks (SSBs) composed of pre-defined sets of cells with their logic implementation and placement templates with their relative placement information. A compiler receives a circuit description which includes an instance of an SSB and unfolds the instance according to the placement template to generate a modified circuit description which includes the relative placement information. The placement of circuit objects is optimized while maintaining relative locations for cells of the SSB instance according to the relative placement information. The SSB may be hierarchical. Gate resizing of cells in the SSB instance may result in a change in its bounds. A timing optimization procedure for the modified circuit description may be carried out while hiding internal details of the SSB instance. For example, buffers may be inserted in nets external to the SSB instance while preventing insertion of buffers in any internal nets.
    Type: Grant
    Filed: May 28, 2013
    Date of Patent: February 10, 2015
    Assignee: International Business Machines Corporation
    Inventors: Yiu-Hing Chan, Mark D. Mayo, Shyam Ramji, Paul G. Villarrubia
  • Patent number: 8954912
    Abstract: A latch placement tool determines a shape for a cluster of latches from a preliminary layout (or based on a netlist), including an aspect ratio of the shape, and generates a template for placement of the latches in conformity with the shape. Latches are placed around a local clock buffer (LCB) based on latch size, from largest latch first to smallest latch last, and based on their ideal locations given the target aspect ratio. The ideal locations may be further based on the clock driver pin configuration of the LCB. The final template preferably has an aspect ratio that is approximately equal to the aspect ratio of the shape of the cluster, but the latch placement may be constrained by clock routing topology. Latch placement within a cluster can be further optimized by swapping one of the latches with another to minimize total wirelength of the design.
    Type: Grant
    Filed: November 29, 2012
    Date of Patent: February 10, 2015
    Assignee: International Business Machines Corporation
    Inventors: Charles J. Alpert, Zhuo Li, Gi-Joon Nam, Shyam Ramji, Chin Ngai Sze, Paul G. Villarrubia, Natarajan Viswanathan
  • Patent number: 8930867
    Abstract: Scheduling of parallel processing for regionally-constrained object placement selects between different balancing schemes. For a small number of movebounds, computations are assigned by balancing the placeable objects. For a small number of objects per movebound, computations are assigned by balancing the movebounds. If there are large numbers of movebounds and objects per movebound, both objects and movebounds are balanced amongst the processors. For object balancing, movebounds are assigned to a processor until an amortized number of objects for the processor exceeds a first limit above an ideal number, or the next movebound would raise the amortized number of objects above a second, greater limit. For object and movebound balancing, movebounds are sorted into descending order, then assigned in the descending order to host processors in successive rounds while reversing the processor order after each round. The invention provides a schedule in polynomial-time while retaining high quality of results.
    Type: Grant
    Filed: October 4, 2013
    Date of Patent: January 6, 2015
    Assignee: International Business Machines Corporation
    Inventors: Gi-Joon Nam, Shyam Ramji, Taraneh Taghavi, Paul G. Villarrubia
  • Publication number: 20140359546
    Abstract: Integrated circuit design uses a library of structured soft blocks (SSBs) composed of pre-defined sets of cells with their logic implementation and placement templates with their relative placement information. A compiler receives a circuit description which includes an instance of an SSB and unfolds the instance according to the placement template to generate a modified circuit description which includes the relative placement information. The placement of circuit objects is optimized while maintaining relative locations for cells of the SSB instance according to the relative placement information. The SSB may be hierarchical. Gate resizing of cells in the SSB instance may result in a change in its bounds. A timing optimization procedure for the modified circuit description may be carried out while hiding internal details of the SSB instance. For example, buffers may be inserted in nets external to the SSB instance while preventing insertion of buffers in any internal nets.
    Type: Application
    Filed: May 28, 2013
    Publication date: December 4, 2014
    Applicant: International Business Machines Corporation
    Inventors: Yiu-Hing Chan, Mark D. Mayo, Shyam Ramji, Paul G. Villarrubia
  • Patent number: 8826215
    Abstract: Method of placing and routing circuit components including: dividing a layout area of an integrated circuit (IC) design into an array of tiles, each tile having a plurality of edges that are common to adjoining tiles; placing of circuit components into the layout area of the IC design such that each tile including a plurality of circuit components, the placing of circuit components being performed for primarily routability without resort to a timing model, routability being measured by congestion of wiring nets at the tile edges; performing a virtual timing operation of the IC design with a virtual timing model assuming ideal buffering is done to test the placement of circuit components; performing a wire synthesis operation of the IC design for layer assignment, buffering and timing optimization while minimizing degradation in routability; and performing a plurality of timing optimizations of the IC design while minimizing degradation in routability.
    Type: Grant
    Filed: May 24, 2013
    Date of Patent: September 2, 2014
    Assignee: International Business Machines Corporation
    Inventors: Charles J. Alpert, Zhuo Li, Gi-Joon Nam, Chin Ngai Sze, Paul G. Villarrubia