Patents by Inventor Robert Kanzelman

Robert Kanzelman 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: 10789403
    Abstract: Embodiments of the invention are directed to a computer-implemented method of logic verification. The method includes obtaining a netlist of a circuit comprising a plurality of observable gates. A first observable gate is grouped together with a second observable gate based on a portion of a fan-in logic of the first observable gate being equal to a portion of a fan-in logic of the second observable gate. The group is expanded by including a third observable gate, based on a first strongly connected component (SCC) in the group having a similarity greater than a first threshold to a second SCC in the fan-in logic of the third observable gate. The group is further expanded by including a fourth observable gate, based on the distance of a portion of the fan-in logic of the fourth observable gate from a fan-in logic of at least one observable gate in the group of observable gates.
    Type: Grant
    Filed: May 14, 2019
    Date of Patent: September 29, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Rohit Dureja, Jason Raymond Baumgartner, Alexander Ivrii, Robert Kanzelman
  • Patent number: 8799837
    Abstract: Leveraging existing Binary Decision Diagrams (BDDs) to enhance circuit reductions in a system model representing a state machine as a netlist. The netlist is evaluated to determine the regions with the greatest potential reductions. BDD sweeping is performed to identify redundancies in the netlist. BDD rewriting implements the circuit reductions by replacing gates of the original netlist with more efficient equivalent logic.
    Type: Grant
    Filed: August 25, 2008
    Date of Patent: August 5, 2014
    Assignee: International Business Machines Corporation
    Inventors: Jason Baumgartner, Geert Janssen, Robert Kanzelman, Viresh Paruthi
  • Patent number: 7934180
    Abstract: An incremental speculative merge structure which enables the elimination of invalid merge candidates without requiring the discarding of the speculative merge structure and all verification results obtained upon that structure. Targets are provided for validating the equivalence of gates g1i and g2i, and the fanout references of g1i and g2i are provided to a controllable multiplexer set to output g1i. Upon determining nonequivalence of g2i, of failing to proved equivalence, the multiplexer is switched to output the g1i fanout reference, thus undoing the incremental speculative merge.
    Type: Grant
    Filed: May 27, 2008
    Date of Patent: April 26, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Patent number: 7913208
    Abstract: Methods and systems are provided for determining redundancies in a system model such as a complex circuit design including gates that are state components. A candidate redundant gate is selected, and a merged model is built that eliminates the candidate redundant gate. If the candidate redundant gate is within the merged constraint cone the pre-merge model is used to validate redundancy of the candidate redundant gate. However, if the candidate redundant gate is not within the merged constraint cone the merged model is instead used to validate redundancy of the candidate redundant gate.
    Type: Grant
    Filed: October 11, 2007
    Date of Patent: March 22, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Patent number: 7788618
    Abstract: Methods, systems and software products are provided to enhance the scalability of dependent state analysis element identification. In a method of partitioning a model representing a state machine, a variable is selected from the variables of the model, and a first set of variables are identified that support the selected variable. Then a second set of variables is identified that have overlapping support of the first set of variables. The second set of variables is a partition suitable for use in determining an overapproximation of the reachable states of the selected variable.
    Type: Grant
    Filed: September 29, 2007
    Date of Patent: August 31, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jason Baumgartner, Geert Janssen, Robert Kanzelman, Viresh Paruthi
  • Publication number: 20100050145
    Abstract: Leveraging existing Binary Decision Diagrams (BDDs) to enhance circuit reductions in a system model representing a state machine as a netlist. The netlist is evaluated to determine the regions with the greatest potential reductions. BDD sweeping is performed to identify redundancies in the netlist. BDD rewriting implements the circuit reductions by replacing gates of the original netlist with more efficient equivalent logic.
    Type: Application
    Filed: August 25, 2008
    Publication date: February 25, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason Baumgartner, Geert Janssen, Robert Kanzelman, Viresh Paruthi
  • Publication number: 20090300559
    Abstract: An incremental speculative merge structure which enables the elimination of invalid merge candidates without requiring the discarding of the speculative merge structure and all verification results obtained upon that structure. Targets are provided for validating the equivalence of gates g1i and g2i, and the fanout references of g1i and g2i are provided to a controllable multiplexer set to output g1i. Upon determining nonequivalence of g2i, of failing to proved equivalence, the multiplexer is switched to output the g1i fanout reference, thus undoing the incremental speculative merge.
    Type: Application
    Filed: May 27, 2008
    Publication date: December 3, 2009
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20090100385
    Abstract: Methods and systems are provided for determining redundancies in a system model such as a complex circuit design including gates that are state components. A candidate redundant gate is selected, and a merged model is built that eliminates the candidate redundant gate. If the candidate redundant gate is within the merged constraint cone the pre-merge model is used to validate redundancy of the candidate redundant gate. However, if the candidate redundant gate is not within the merged constraint cone the merged model is instead used to validate redundancy of the candidate redundant gate.
    Type: Application
    Filed: October 11, 2007
    Publication date: April 16, 2009
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20090089730
    Abstract: Methods, systems and software products are provided to enhance the scalability of dependent state analysis element identification. In a method of partitioning a model representing a state machine, a variable is selected from the variables of the model, and a first set of variables are identified that support the selected variable. Then a second set of variables is identified that have overlapping support of the first set of variables. The second set of variables is a partition suitable for use in determining an overapproximation of the reachable states of the selected variable.
    Type: Application
    Filed: September 29, 2007
    Publication date: April 2, 2009
    Inventors: Jason Baumgartner, Geert Janssen, Robert Kanzelman, Viresh Paruthi
  • Publication number: 20080109776
    Abstract: A method, system and computer program product for performing verification are disclosed. A first abstraction of an initial design netlist containing a first target is created and designated as a current abstraction, and the current abstraction is unfolded by a selectable depth. A composite target is verified using a satisfiability solver, and in response to determining that the verifying step has hit the composite target, a counterexample to is examined to identify one or more reasons for the first target to be asserted. One or more refinement pairs are built by examining the counterexample, and a second abstraction is built by composing the refinement pairs. One or more learned clauses and one or more invariants to the second abstraction and the second abstraction is chosen as the current abstraction. The current abstraction is verified with the satisfiability solver.
    Type: Application
    Filed: January 11, 2008
    Publication date: May 8, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080104558
    Abstract: A method, system and computer program product for performing verification of an electronic design is disclosed. The method includes receiving a design, wherein the design includes a first target set and a first register set including one or more registers. A structural product extraction is formed from one or more targets from the first target set and the structural product extraction is recursed for one or more next-state functions of a subset of the one or more registers. A sum-of-products form is recursed from the structural product extraction for one or more next-state functions of a subset of the one or more registers and a product-of-sums form of a result of the second recursing is decomposed to generate a decomposition of the product-of-sums form. The decomposition of the product-of-sums form is synthesized into a second target set and a subset of the second target set to recursively decompose is chosen.
    Type: Application
    Filed: January 4, 2008
    Publication date: May 1, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080104559
    Abstract: A method, system and computer program product for performing verification of an electronic design is disclosed. The method includes receiving a design, wherein the design includes a first target set and a first register set including one or more registers. A structural product extraction is formed from one or more targets from the first target set and the structural product extraction is recursed for one or more next-state functions of a subset of the one or more registers. A sum-of-products form is recursed from the structural product extraction for one or more next-state functions of a subset of the one or more registers and a product-of-sums form of a result of the second recursing is decomposed to generate a decomposition of the product-of-sums form. The decomposition of the product-of-sums form is synthesized into a second target set and a subset of the second target set to recursively decompose is chosen.
    Type: Application
    Filed: January 4, 2008
    Publication date: May 1, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080091386
    Abstract: A method, system and computer program product for reducing XOR/XNOR subexpressions in structural design representations are disclosed. The method includes receiving an initial design, in which the initial design represents an electronic circuit containing an XOR gate. A first simplification mode for the initial design is selected from a set of applicable simplification modes, wherein the first simplification mode is an XOR/XNOR simplification mode, and a simplification of the initial design is performed according to the first simplification mode to generate a reduced design containing a reduced number of XOR gates. Whether a size of the reduced design is less than a size of the initial design is determined, and, in response to determining that the size of the reduced design is less than a the size of the initial design, the initial design is replaced with the reduced design.
    Type: Application
    Filed: December 12, 2007
    Publication date: April 17, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080092091
    Abstract: A method, system and computer program product for reducing XOR/XNOR subexpressions in structural design representations are disclosed. The method includes receiving an initial design, in which the initial design represents an electronic circuit containing an XOR gate. A first simplification mode for the initial design is selected from a set of applicable simplification modes, wherein the first simplification mode is an XOR/XNOR simplification mode, and a simplification of the initial design is performed according to the first simplification mode to generate a reduced design containing a reduced number of XOR gates. Whether a size of the reduced design is less than a size of the initial design is determined, and, in response to determining that the size of the reduced design is less than a the size of the initial design, the initial design is replaced with the reduced design.
    Type: Application
    Filed: December 12, 2007
    Publication date: April 17, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080086707
    Abstract: A method, system and computer program product for performing verification of an electronic design is disclosed. The method includes receiving a design, including a first target set, a primary input set, and a first register set comprising one or more registers. A binary decision diagram analysis of the design is generated. A recursive extraction of one or more next states of selected registers is generated using the binary decision diagram analysis of the first target set and the primary input set. The recursive extraction is decomposed to generate a second target set, and the second target set is verified.
    Type: Application
    Filed: December 7, 2007
    Publication date: April 10, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080072186
    Abstract: A method, system and computer program product for reducing subexpressions in structural design representations containing AND and OR gates are disclosed. The method comprises receiving an initial design, in which the initial design represents an electronic circuit, containing an AND gate. A first simplification mode for the initial design from a set of applicable simplification modes is selected, wherein said simplification mode is an AND/OR simplification mode, and a simplification of the initial design according to the first simplification mode is performed to generate a reduced design. Whether a size of the reduced design is less than a size of the initial design is determined and, in response to determining that the size of the reduced design is less than the size of the initial design, the initial design is replaced with the reduced design.
    Type: Application
    Filed: November 26, 2007
    Publication date: March 20, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080072185
    Abstract: A method, system and computer program product for reducing subexpressions in structural design representations containing AND and OR gates are disclosed. The method comprises receiving an initial design, in which the initial design represents an electronic circuit, containing an AND gate. A first simplification mode for the initial design from a set of applicable simplification modes is selected, wherein said simplification mode is an AND/OR simplification mode, and a simplification of the initial design according to the first simplification mode is performed to generate a reduced design. Whether a size of the reduced design is less than a size of the initial design is determined and, in response to determining that the size of the reduced design is less than the size of the initial design, the initial design is replaced with the reduced design.
    Type: Application
    Filed: November 26, 2007
    Publication date: March 20, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080066033
    Abstract: A method for performing verification is disclosed. The method includes selecting a first computer-design constraint for simplification and applying structural reparamaterization to simplify the first computer-design constraint. In response to determining that the first computer-design constraint is not eliminated, the first computer-design constraint is set equal to a dead-end state of the constraint. A structural preimage of the first computer-design constraint is created, in response to determining that a combination of a target and the dead-end state of the first computer-design constraint is equal to a combination of the target and the structural preimage of the first computer-design constraint, the first computer-design constraint is set equal to the structural preimage.
    Type: Application
    Filed: November 15, 2007
    Publication date: March 13, 2008
    Inventors: JASON BAUMGARTNER, ROBERT KANZELMAN, HARY MONY, VIRESH PARUTHI
  • Publication number: 20080066034
    Abstract: A method for performing verification is disclosed. The method includes selecting a first computer-design constraint for simplification and applying structural reparamaterization to simplify the first computer-design constraint. In response to determining that the first computer-design constraint is not eliminated, the first computer-design constraint is set equal to a dead-end state of the constraint. A structural preimage of the first computer-design constraint is created, in response to determining that a combination of a target and the dead-end state of the first computer-design constraint is equal to a combination of the target and the structural preimage of the first computer-design constraint, the first computer-design constraint is set equal to the structural preimage.
    Type: Application
    Filed: November 15, 2007
    Publication date: March 13, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi
  • Publication number: 20080052648
    Abstract: A method, system and computer program product for performing verification of an electronic design is disclosed. The method includes receiving a design, including a first target set, a primary input set, and a first register set comprising one or more registers. A binary decision diagram analysis of the design is generated. A recursive extraction of one or more next states of selected registers is generated using the binary decision diagram analysis of the first target set and the primary input set. The recursive extraction is decomposed to generate a second target set, and the second target set is verified.
    Type: Application
    Filed: August 31, 2007
    Publication date: February 28, 2008
    Inventors: Jason Baumgartner, Robert Kanzelman, Hari Mony, Viresh Paruthi