Patents by Inventor Guenter Stenz

Guenter Stenz 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: 11875100
    Abstract: Examples described herein provide a non-transitory computer-readable medium storing instructions, which when executed on one or more processors, cause the one or more processors to perform operations. The operations include generating a plurality of child processes according to a number of a plurality of partitions in an integrated circuit (IC) design for an IC die, each of the plurality of child processes corresponding to and assigned to a respective one of the plurality of partitions. The operations include transmitting each of the plurality of partitions to a respective one of the plurality of child processes for routing, each of the plurality of partitions comprising a placement of components for the IC design. The operations include receiving a plurality of routings from the plurality of child processes. The operations include merging the plurality of routings into a global routing for the IC design by assembling together to form a global routing.
    Type: Grant
    Filed: June 4, 2021
    Date of Patent: January 16, 2024
    Assignee: XILINX, INC.
    Inventors: Satish Sivaswamy, Ashot Shakhkyan, Nitin Deshmukh, Garik Mkrtchyan, Guenter Stenz, Bhasker Pinninti
  • Patent number: 11106851
    Abstract: Disclosed approaches for processing a circuit design include interrupting processing of a circuit design by an electronic design automation (EDA) tool at a selected phase of processing. The tool serializes EDA state data into serialized state data while processing is interrupted and writes the serialized state data for subsequent restoration of tool state. To resume processing at the point of interruption, the EDA tool can read the serialized state data and deserialize the serialized state data. The EDA tool bypasses one or more phases of processing after reading the serialized state data and thereafter resumes processing of the circuit design.
    Type: Grant
    Filed: February 28, 2020
    Date of Patent: August 31, 2021
    Assignee: XILINX, INC.
    Inventors: Paul D. Kundarewich, Grigor S. Gasparyan, Mehrdad Eslami Dehkordi, Guenter Stenz, Xiao Dong
  • Patent number: 11003827
    Abstract: Examples described herein provide a non-transitory computer-readable medium storing instructions, which when executed by one or more processors, cause the one or more processors to perform operations. The operations include: generating, using the one or more processors, a plurality of child processes according to a number of programmable dies of the multi-die device, each of the plurality of child processes corresponding to a respective programmable die of the multi-die device, wherein the plurality of child processes execute on different processors; partitioning a design for the multi-die device into a plurality of portions, each of the portions to be used to configure one of the programmable dies of the multi-die device; transmitting the plurality of portions of the design to the plurality of child processes for placement; and receiving placements from the plurality of child processes.
    Type: Grant
    Filed: February 20, 2020
    Date of Patent: May 11, 2021
    Assignee: XILINX, INC.
    Inventors: Paul D. Kundarewich, Grigor S. Gasparyan, Mehrdad Eslami Dehkordi, Guenter Stenz, Zhaoxuan Shen, Amish Pandya
  • Patent number: 10891413
    Abstract: Disclosed approaches for processing a circuit design include providing access to checkpoint data of a design checkpoint of a circuit design and starting child processes by a parent process. An initial intermediate representation is generated by the parent process, and concurrent with the generating of the initial intermediate representation, the child processes load the checkpoint data into respective memory spaces. The parent process produces incremental updates to the design checkpoint. The parent process signals availability of the incremental updates to the child processes, which apply the incremental updates to the checkpoint data in the respective memory spaces. The child processes process the circuit design in response to completion of producing incremental updates by the parent placer process.
    Type: Grant
    Filed: December 5, 2019
    Date of Patent: January 12, 2021
    Assignee: Xilinx, Inc.
    Inventors: Paul D. Kundarewich, Grigor S. Gasparyan, Mehrdad Eslami Dehkordi, Guenter Stenz
  • Patent number: 10416232
    Abstract: Implementing a circuit design may include detecting, using computer hardware, a net of the circuit design with a hold timing violation, generating, using the computer hardware, a list including each load of the net, and filtering, using the computer hardware, the list based on predetermined criteria by, at least in part, removing each load from the list determined to be non-critical with respect to hold timing. Using the computer hardware, the circuit design is modified by inserting a flip-flop in the net to drive each load remaining on the list, clocking the flip-flop with a clock signal of a start point or an end point of a path traversing the net, and triggering the flip-flop with an opposite clock edge compared to the start point or the end point.
    Type: Grant
    Filed: June 19, 2018
    Date of Patent: September 17, 2019
    Assignee: XILINX, INC.
    Inventors: Guenter Stenz, Parivallal Kannan
  • Patent number: 9881112
    Abstract: Vectorless dynamic power estimation for a circuit design may include forming, using a processor, a complex basic element within the circuit design, determining, using the processor, initial toggle rates for basic elements within the circuit design, and determining, using the processor, an initial toggle rate for the complex basic element. Vectorless dynamic power estimation further may include generating, using the processor, final toggle rates by updating the initial toggle rates according to a control signal analysis and calculating, using the processor, dynamic power dissipation for the circuit design using the final toggle rates.
    Type: Grant
    Filed: April 2, 2015
    Date of Patent: January 30, 2018
    Assignee: XILINX, INC.
    Inventors: Fan Zhang, Anup K. Sultania, Guenter Stenz
  • Patent number: 8312405
    Abstract: A method of placing input/output blocks on an integrated circuit device is described. The method may comprise receiving a circuit design having a plurality of input/output blocks to be placed at input/output sites of the integrated circuit device; modifying, for each input/output block of the circuit design, an input/output standard for the input/output block to include bus information; assigning, for each input/output block of the circuit design, an input/output site for the input/output block; and generating an input/output placement for the input/output blocks of the circuit design. A computer product is also disclosed.
    Type: Grant
    Filed: January 20, 2009
    Date of Patent: November 13, 2012
    Assignee: Xilinx, Inc.
    Inventors: Victor Slonim, Rajat Aggarwal, Guenter Stenz, Srinivasan Dasasathyan
  • Patent number: 8082532
    Abstract: A computer-implemented method of implementing a circuit design within an integrated circuit (IC) can include, within an undirected graph representing the circuit design comprising nodes and edges, wherein each node represents a complex function block (CFB) or a pre-placed component of the circuit design and each edge represents at least one connection linking a pair of CFBs of the circuit design, determining an edge weight for each edge. The CFBs can be initially placed and a distance between each pair of CFBs joined by an edge of the undirected graph can be calculated. The CFB placement can be annealed by minimizing a cost function that calculates, for each edge, a product of the edge weight and the distance between the pair of CFBs joined by the edge. The cost function also can sum the products for each edge. The CFB placement can be stored.
    Type: Grant
    Filed: February 3, 2009
    Date of Patent: December 20, 2011
    Assignee: Xilinx, Inc.
    Inventors: Guenter Stenz, Rajat Aggarwal
  • Patent number: 8010924
    Abstract: A method of assigning a plurality of input/output (I/O) objects of a circuit design to banks of a programmable integrated circuit (IC) using integer linear programming can include storing a plurality of constraints that depend upon a plurality of variables, wherein the plurality of constraints regulate assignment of each of the plurality of I/O objects to banks of the programmable IC (125-184), and storing a linear function that depends upon the plurality of constraints and a plurality of cost metrics, wherein each cost metric imposes a penalty when a selected I/O object of the circuit design is assigned to a bank of the programmable IC that is different from a bank to which the selected I/O object is assigned within a reference solution that is infeasible (190).
    Type: Grant
    Filed: July 31, 2008
    Date of Patent: August 30, 2011
    Assignee: Xilinx, Inc.
    Inventors: Victor Z. Slonim, Parivallal Kannan, Guenter Stenz
  • Patent number: 7958480
    Abstract: A method of input/output (I/O) block placement assigned to an input/output bank includes formulating a placement algorithm using integer linear programming (ILP) and simultaneously placing single groups and Relatively Placed Module (RPM) groups of I/O blocks in the I/O bank. The method further includes determining a placeability matrix P and a binary assignment matrix X used for the ILP. The method can further eliminate all assignment matrix elements of X equal to 0 in the integer linear programming and re-index any remaining elements. The method can further place all I/O blocks according to a solution if solving of the standard ILP formulation results in a feasible solution. Optionally, the method generates a placement solution that is as close as possible to an external reference solution specified by designer. Optionally, the method analyzes which constraints were violated and generates useful error information.
    Type: Grant
    Filed: April 21, 2008
    Date of Patent: June 7, 2011
    Assignee: Xilinx, Inc.
    Inventors: Victor Z. Slonim, Parivallal Kannan, Guenter Stenz
  • Patent number: 7512922
    Abstract: A method of creating relatively placed macros (RPMS) for a circuit design for a target device can include determining N best configurations for each of a plurality of connections of the circuit design, wherein each configuration specifies relative positioning of a source and a load of a connection and an estimated delay for the connection. The method can include calculating a maximum allowable delay for each of the plurality of connections of the circuit design and determining that a connection selected from the plurality of connections is critical according to the N best configurations associated with the critical connection and the maximum delay of the critical connection. A configuration from the N best configurations associated with the critical connection can be selected. An RPM for the critical connection can be generated using the selected configuration.
    Type: Grant
    Filed: April 18, 2007
    Date of Patent: March 31, 2009
    Assignee: Xilinx, Inc.
    Inventor: Guenter Stenz
  • Patent number: 7392499
    Abstract: Approaches for placing a plurality of input/output blocks (IOBs) of an electronic design in an integrated circuit are disclosed. The electronic design includes at least one input/output bus associated with a plurality of the IOBs, and the IOBs for each input/output bus are assigned to respective sets. For each combination of pairs of the sets a respective weight factor is generated to indicate a degree of coupling between the first and second sets in the electronic design. An order of the sets is generated, and the sets are placed in an ordered series of input/output sites in the integrated circuit according to the order of the sets. A cost function is evaluated for the pairs of the sets. The generating of the order of the sets and the placing of the sets is conditionally repeated responsive to the evaluating of the cost function.
    Type: Grant
    Filed: August 2, 2005
    Date of Patent: June 24, 2008
    Assignee: Xilinx, Inc.
    Inventors: Guenter Stenz, Srinivasan Dasasathyan
  • Patent number: 7313778
    Abstract: A method (600) of designing a programmable logic device can include the steps of identifying a cost function that penalizes floorplans of a circuit design that do not fit on the programmable logic device (605) and defining modules having components of a same type (615). A set of shapes associated with a module can be determined (610). The circuit design can be annealed (620) to determine a floorplan using the cost function and the set of shapes for the module.
    Type: Grant
    Filed: February 26, 2004
    Date of Patent: December 25, 2007
    Assignee: Xilinx, Inc.
    Inventors: Guenter Stenz, Srinivasan Dasasathyan, Rajat Aggarwal, James L. Saunders
  • Patent number: 7149993
    Abstract: A method of designing a programmable logic device can include receiving a modification to a programmable logic device that has been floorplanned. Modules of the programmable logic device that have been changed by the modification can be identified. The changed modules can be floorplanned thereby determining a placement solution that does not violate boundaries of unchanged modules. The programmable logic device then can be placed and routed.
    Type: Grant
    Filed: March 29, 2004
    Date of Patent: December 12, 2006
    Assignee: Xilinx, Inc.
    Inventors: Rajat Aggarwal, Guenter Stenz, Srinivasan Dasasathyan
  • Patent number: 7143380
    Abstract: Application of network flow techniques to constrained optimization problems is disclosed. The present of constrains may lead to infeasible solutions. The infeasible solutions can be removed by an iterative process of changing the structure of the network and/or the associated parameters. Specific applications of the invention to the placement of tristate buffers and clocks in integrated circuits are disclosed.
    Type: Grant
    Filed: August 8, 2002
    Date of Patent: November 28, 2006
    Assignee: Xilinx, Inc.
    Inventors: Jason H. Anderson, Sudip K. Nag, Guenter Stenz, Srinivasan Dasasathyan
  • Patent number: 7072815
    Abstract: Method and apparatus for post-placement optimization of resources for connections is described. To optimize resource placement, search windows are generated responsive to driver and load components, as well as to a connection between the driver and load components. Adding in a straight-line path search window may be used as an alternative where a bypassed resource is to be relocated. Using connection-based optimization in combination with driver- and resource-based optimization results in improved optimization with negligible impact on runtime.
    Type: Grant
    Filed: August 6, 2002
    Date of Patent: July 4, 2006
    Assignee: Xilinx, Inc.
    Inventors: Kamal Chaudhary, Krishnan Anandh, Sudip K. Nag, Guenter Stenz
  • Patent number: 6983439
    Abstract: Method and apparatus are described for a placer system for placing design objects onto an arrayed architecture, such as a programmable logic device including an FPGA. More particularly, a placer interface is described for communicating with a placer core. The placer interface receives information from external entities, and unifies and generalizes this information for the placer core. The external entities comprise different representations of architecture, design, device, constraints and algorithm-dictated placer-movable objects.
    Type: Grant
    Filed: October 29, 2002
    Date of Patent: January 3, 2006
    Assignee: Xilinx, Inc.
    Inventors: James L. Saunders, Krishnan Anandh, Guenter Stenz, Sudip K. Nag, Jason H. Anderson
  • Patent number: 6957406
    Abstract: The invention relates to a method for placing design components of an integrated circuit. A first site is selected. Other sites that are at maximum distances from already used sites may be selected. Components that have minimum connectivity to already placed components are selected. These components are used for preplacement. Preferably, the number of preplaced components is small. The rest of the design components are placed. An overlap ratio is computed. If the overlap ratio is above a predetermined value, the result is unplaced and additional components are preplaced. Another placement is performed. Overlap ratio is again computed. The steps of unplacing, adding preplaced components and computing overlap ratio are repeated until the overlap ratio falls below the predetermined value.
    Type: Grant
    Filed: October 16, 2002
    Date of Patent: October 18, 2005
    Assignee: Xilinx, Inc.
    Inventor: Guenter Stenz
  • Patent number: 6857115
    Abstract: Application of network flow techniques to constrained optimization problems is disclosed. The present of constrains may lead to infeasible solutions. The infeasible solutions can be removed by an iterative process of changing the structure of the network and/or the associated parameters. Specific applications of the invention to the placement of tristate buffers and clocks in integrated circuits are disclosed.
    Type: Grant
    Filed: August 8, 2002
    Date of Patent: February 15, 2005
    Assignee: Xilinx, Inc.
    Inventors: Srinivasan Dasasathyan, Guenter Stenz, Sudip K. Nag, Jason H. Anderson
  • Patent number: 6789244
    Abstract: Application of network flow techniques to constrained optimization problems is disclosed. The present of constrains may lead to infeasible solutions. The infeasible solutions can be removed by an iterative process of changing the structure of the network and/or the associated parameters. Specific applications of the invention to the placement of tristate buffers and clocks in integrated circuits are disclosed.
    Type: Grant
    Filed: August 8, 2002
    Date of Patent: September 7, 2004
    Assignee: Xilinx, Inc.
    Inventors: Srinivasan Dasasathyan, Guenter Stenz, Sudip K. Nag