Patents by Inventor Satish B. Sivaswamy

Satish B. Sivaswamy 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: 20230359801
    Abstract: Routing a circuit design includes generating a graph of the circuit design where each connected component is represented as a vertex, generating a routing solution for the circuit design by routing packet-switched nets so that the packet-switched nets of a same connected component do not overlap, and, for each routing resource that is shared by packet-switched nets of different connected components, indicating the shared routing resource on the graph by adding an edge. Cycle detection may be performed on the graph. For each cycle detected on the graph, the cycle may be broken by deleting the edge from the graph and ripping-up a portion of the routing solution corresponding to the deleted edge. The circuit design, or portion thereof, for which the routing solution was ripped up may be re-routed using an increased cost for a shared routing resource freed from the ripping-up.
    Type: Application
    Filed: May 4, 2022
    Publication date: November 9, 2023
    Applicant: Xilinx, Inc.
    Inventors: Sreesan Venkatakrishnan, Nitin Deshmukh, Satish B. Sivaswamy
  • Patent number: 11733980
    Abstract: Implementing an application can include generating, from the application, a compact data flow graph (DFG) including load nodes, inserting, in the compact DFG, a plurality of virtual buffer nodes (VBNs) for each of a plurality of buffers of a data processing engine (DPE) array to be allocated to nets of the application, and, forming groups of one or more load nodes of the compact DFG based on shared buffer requirements of the loads on a per net basis. Virtual driver nodes (VDNs) that map to drivers of nets can be added to the compact DFG, where each group of the compact DFG is driven by a dedicated VDN. Connections between VDNs and load nodes through selected ones of the VBNs are created according to a plurality of constraints. The plurality of buffers are allocated to the nets based on the compact DFG as connected.
    Type: Grant
    Filed: December 10, 2021
    Date of Patent: August 22, 2023
    Assignee: Xilinx, Inc.
    Inventors: Brian Guttag, Satish B. Sivaswamy, Nitin Deshmukh
  • Patent number: 11709521
    Abstract: Synthetizing a hardware description language code into a netlist comprising loads and a multi-clock buffer (MBUF). The MBUF receives a global clocking signal and generates a first and a second related clocking signals. The loads are grouped into a first and a second groups receiving the first and the second clocking signals respectively. A first/second clock modifying leaf are placed between a common node and the first/group groups respectively, wherein the common node is positioned closer in proximity to the first/second groups in comparison to a clock source generating the global clocking signal. The first/second clock modifying leaves receive a least divided clocking signal from the MBUF and generate the first/second clocking signals respectively. The least divided clocking signal is routed from the MBUF to the first/second clock modifying leaves. The first/second clocking signals are routed from the first/second clock modifying leaves to the first/second group respectively.
    Type: Grant
    Filed: June 26, 2020
    Date of Patent: July 25, 2023
    Assignee: XILINX, INC.
    Inventors: Frederic Revenu, Frank Mueller, Thomas O. Satter, Mehrdad Eslami Dehkordi, Garik Mkrtchyan, Satish B. Sivaswamy, Nicholas A. Mezei, Chun Zhang
  • Publication number: 20230185548
    Abstract: Implementing an application can include generating, from the application, a compact data flow graph (DFG) including load nodes, inserting, in the compact DFG, a plurality of virtual buffer nodes (VBNs) for each of a plurality of buffers of a data processing engine (DPE) array to be allocated to nets of the application, and, forming groups of one or more load nodes of the compact DFG based on shared buffer requirements of the loads on a per net basis. Virtual driver nodes (VDNs) that map to drivers of nets can be added to the compact DFG, where each group of the compact DFG is driven by a dedicated VDN. Connections between VDNs and load nodes through selected ones of the VBNs are created according to a plurality of constraints. The plurality of buffers are allocated to the nets based on the compact DFG as connected.
    Type: Application
    Filed: December 10, 2021
    Publication date: June 15, 2023
    Applicant: Xilinx, Inc.
    Inventors: Brian Guttag, Satish B. Sivaswamy, Nitin Deshmukh
  • Patent number: 11238206
    Abstract: Performing partition wire assignment for routing a multi-partition circuit design can include performing, using computer hardware, a global assignment phase by clustering a plurality of super-long lines (SLLs) into a plurality of SLL bins, clustering loads of nets of a circuit design into a plurality of load clusters, and assigning the plurality of SLL bins to the plurality of load clusters. For each SLL bin, a detailed assignment phase can be performed wherein each net having a load cluster assigned to the SLL bin is assigned one or more particular SLLs of the SLL bin using the computer hardware.
    Type: Grant
    Filed: March 26, 2021
    Date of Patent: February 1, 2022
    Inventors: Satish B. Sivaswamy, Nitin Deshmukh, Garik Mkrtchyan, Grigor S. Gasparyan
  • Patent number: 10318699
    Abstract: Disclosed approaches for fixing a hold time violation in a circuit design include determining a first hold budget that is an amount to fix a first hold time violation on a first path of the circuit design. For each connection of a first plurality of connections on the first path, a respective projected setup slack of the connection in allocating the first hold budget to fixing the first hold time violation on the connection is determined. For each connection of the first plurality of connections, a respective connection hold budget based on the first hold budget and the respective projected setup slack is determined. Each connection of the first plurality of connections is adjusted according to the respective connection hold budget.
    Type: Grant
    Filed: June 13, 2017
    Date of Patent: June 11, 2019
    Assignee: XILINX, INC.
    Inventors: Satish B. Sivaswamy, Parivallal Kannan
  • Patent number: 9842187
    Abstract: Approaches for processing a circuit design include determining pin slack values for pins of the circuit elements in the circuit design. A processor selects a subset of endpoints based on pin slack values of the endpoints being in a critical slack range and determines startpoints of the circuit design that are in respective critical fanin cones. For each endpoint of the subset, the processor determines an arrival time from each startpoint in the respective critical fanin cone and determines for each startpoint-endpoint pair, a respective set of constraint values as a function of the respective arrival time from the startpoint. The processor generates a graph in the memory circuit from the startpoint-endpoint pairs. First nodes in the graph represent the startpoints and second nodes in the graph represent the endpoints, and values in the respective set of constraint values are associated with edges that connect the nodes.
    Type: Grant
    Filed: March 28, 2016
    Date of Patent: December 12, 2017
    Assignee: XILINX, INC.
    Inventors: Jindrich Zejda, Atul Srinivasan, Ilya K. Ganusov, Walter A. Manaker, Jr., Benjamin S. Devlin, Satish B. Sivaswamy