Patent US5392227A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5392227A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for generating electronic circuit simulation models having improved accuracy

Assignee: Logic Modeling Corp
•
Filing: 1992-07-24
•
Granted: 1995-02-21
•
Expires: 2012-07-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system and method accurately translate a structural data file (30) that describes a complex logic circuit into a simulation model file (40) executable by a simulator (42). A net-list (34) is traversed, and the resulting model description is compiled into structural partitions including a WHEN-CONDITION partition (WC) that identify boundaries between synchronous and asynchronous subcircuits. The simulation model is also divided into execution time levels by a partitioned levelization method. Asynchronous feedback loops, which ordinarily lead to levelization failures, are correctly modeled by inserting time delay "levelers" (254, 262) into the feedback loop model. The resulting simulation model includes re-evaluation and evaluation stability checking steps (152, 230, 232, 276) that provide correct functional and timing evaluation of the simulation model.

Inventors

  • 👤 Jay A. Hiserote

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 06:13
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/32; G06F30/33

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 117 words
A method of making a simulation model of a logic circuit having synchronous and asynchronous subcircuits, each of the subcircuits including one or more elements, comprising the steps of: describing the logic circuit with a net-list that lists the elements and associated interconnections among them; tracing the net-list the logic circuit into AFTER code, WHEN code, and WHEN-CONDITION code partitions to accurately model functional boundaries between the synchronous and asynchronous subcircuits; inserting a transport delay between the WHEN code and the AFTER code to accurately simulate the synchronous and asynchronous subcircuits; and compiling the simulation model so that the partitioning is retained in the simulation modeling code, thereby resulting in a correct simulation of the logic circuit.
Claim 2
Independent Claim 117 words
A method of making a simulation model of a logic circuit having synchronous and asynchronous subcircuits, each of the subcircuits including one or more elements, comprising the steps of: describing the logic circuit with a net-list that lists the elements and associated interconnections among them; tracing the net-list the logic circuit into AFTER code, WHEN code, and WHEN-CONDITION code partitions to accurately model functional boundaries between the synchronous and asynchronous subcircuits; inserting a transport delay between the WHEN code and the AFTER code to accurately simulate the synchronous and asynchronous subcircuits; and compiling the simulation model so that the partitioning is retained in the simulation modeling code, thereby resulting in a correct simulation of the logic circuit.
Claim 3
Dependent Claim 101 words
The method of claim 1 in which the net-list includes a listed output port having associated therewith a trace path that includes one or more predecessor elements and in which the tracing step comprises the steps of: tracing the net-list from the listed output port back through each predecessor element until reaching a trace path termination point at an input port or a register output; identifying each element along the trace path as a member of an AFTER code partition; and identifying each trace path termination point as either an input to the AFTER code partition or a transport register output.
Claim 4
Dependent Claim 99 words
The method of claim 1 in which the net-list includes a listed register synchronous data input having associated therewith a trace path that includes one or more predecessor elements and in which the tracing step comprises the steps of: tracing the net-list from the listed register synchronous data input back through each predecessor element until reaching a trace path termination point at an input port or a register output; identifying each element along the trace path as a member of a WHEN code partition; and identifying each trace path termination point as an input to the WHEN code partition.
Claim 5
Dependent Claim 98 words
The method of claim 1 in which the net-list includes a listed register asynchronous control input having associated therewith a trace path that includes one or more predecessor elements and in which the tracing step comprises the steps of: tracing the net-list from the listed register asynchronous control input back through each predecessor element until reaching a trace path termination point at an input port or a register output; identifying each element along the trace path as a member of a WHEN-CONDITION code partition; and identifying each trace path termination point as an input to the WHEN-CONDITION partition.
Claim 6
Independent Claim 124 words
A method of executing in a simulator a simulation model of a logic circuit including synchronous and asynchronous subcircuits, the model being partitioned into WHEN code including a WHEN register code, WHEN-CONDITION code including a WHEN-CONDITION register code, and AFTER code including an AFTER input code, comprising the following steps implemented in a computer program: invoking the simulation model with a WHEN-CONDITION input code change received from the simulator; evaluating the WHEN code but not evaluating the WHEN register code; evaluating the WHEN-CONDITION code and the WHEN-CONDITION register code; evaluating the WHEN register code; updating the AFTER input code and the WHEN register code; evaluating the AFTER code after a transport delay time has elapsed; and sending an AFTER code value to the simulator.
Claim 7
Independent Claim 124 words
A method of executing in a simulator a simulation model of a logic circuit including synchronous and asynchronous subcircuits, the model being partitioned into WHEN code including a WHEN register code, WHEN-CONDITION code including a WHEN-CONDITION register code, and AFTER code including an AFTER input code, comprising the following steps implemented in a computer program: invoking the simulation model with a WHEN-CONDITION input code change received from the simulator; evaluating the WHEN code but not evaluating the WHEN register code; evaluating the WHEN-CONDITION code and the WHEN-CONDITION register code; evaluating the WHEN register code; updating the AFTER input code and the WHEN register code; evaluating the AFTER code after a transport delay time has elapsed; and sending an AFTER code value to the simulator.
Claim 8
Dependent Claim 26 words
The method of claim 5 in which each of the evaluating steps further includes the step of repetitively evaluating the code until successive evaluations are stable.
Claim 9
Dependent Claim 60 words
The method of claim 5 further including the steps of: inserting into a modeled interconnection in the model of the asynchronous subcircuit a leveler model having an input value and an output level; evaluating the simulation model having the leveler repetitively until successive evaluations of the input value are stable; and sending a stable model evaluation result to the simulator.
Claim 10
Dependent Claim 33 words
The method of claim 7 in which the leveler comprises a storage element model in which the output level is initially level-0 during levelization and the input value is held constant between evaluations.
Claim 11
Dependent Claim 14 words
The method of claim 7 in which the asynchronous subcircuit comprises a feedback loop.

References Cited (Backward Citations)

US4342093A Cited
US5067091A Cited
US5036473A Cited
US5062067A Cited
US5068812A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-02-20 1998-08-22 1999-02-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-02-20 2002-08-22 2003-02-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-02-20 2006-08-22 2007-02-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag