← Back to Patent Explorer
US5490266A Expired / Lapsed US ⏱️ 0.0 years remaining

Process oriented logic simulation having stability checking

Assignee: Altera Corp
•
Filing: 1994-02-03
•
Granted: 1996-02-06
•
Expires: 2014-02-03
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A logic simulator for optimal configurability of combinatorial and sequential logic circuits in a simulated behavioral form. The present invention contains process oriented functional blocks with event posting to eliminate unnecessary evaluations in logic simulation. Also, the present invention manages a process to logic signal(s) and logic signal to process(s) sensitivity relationship(s) which reduces the traditional overhead of event scheduling and stabilization. The processing logic of the preferred embodiment is operably disposed within the random access memory and executed by the processor of a computer system. Upon activation of the present invention and initialization of all signals, a test is performed to determine if the logic network being simulated is in a stable condition. If the logic network is not stable, a loop is initiated for propagating signals and updating signal states throughout the logic network. Once the logic is propagated, the new state for all signals for which a state transition has occurred is set. Once the new states of signals have been set, a test is performed to determine if a new state has been encountered. A loop continues as long as signals transition to a new state. When a new state is not encountered, but the logic network has still not stabilized, a new state is forced and a new loop iteration is initiated. These loop iterations continue until the logic network stabilizes and simulation processing terminates.

Inventors

  • 👤 Jay J. Sturges

Bibliographic Details

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

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 366 words
A logic simulator for simulating the operation of a logic network in a computer system, said logic simulator comprising: means for defining a plurality of signals using state information associated with each signal of said plurality of signals in an execution cycle, said state information including a definition of a current state of a current execution cycle and a prior state of a prior execution cycle of each signal of said plurality of signals; means for defining a logic process associated with a group of said plurality of signals, said logic process having input corresponding to one or more signal inputs of said group of said plurality of signals associated with said logic process, said logic process having output corresponding to one or more signal outputs of said group of said plurality of signals associated with said logic process, said logic process including simulation logic defining a relationship between said input of said logic process and said output of said logic process, said simulation logic further including a definition of interconnections between signals of said group of signals associated with said logic process; means for defining sensitivity information including a definition of which of said plurality of signals affect said output of said logic process; means for applying input signals to said input of said logic process; means for executing in successive execution cycles said simulation logic of said logic process to produce output signals on said output of said logic process, said means for executing further including means for updating said state information; means for executing in successive execution cycles only said simulation logic associated with a signal specified in said sensitivity information that has changed state since said signal was last evaluated or that has an unknown prior state; means for determining if said output of said logic process is either no longer changing state or changing state in a predictable manner thereby indicating that the logic process is stable; and means for continuing to propagate, evaluate and update said simulation logic in successive execution cycles until said output of said logic process is either no longer changing state or changing state in a predictable manner thereby indicating that the logic process is stable.
Claim 2
Dependent Claim 366 words
A logic simulator for simulating the operation of a logic network in a computer system, said logic simulator comprising: means for defining a plurality of signals using state information associated with each signal of said plurality of signals in an execution cycle, said state information including a definition of a current state of a current execution cycle and a prior state of a prior execution cycle of each signal of said plurality of signals; means for defining a logic process associated with a group of said plurality of signals, said logic process having input corresponding to one or more signal inputs of said group of said plurality of signals associated with said logic process, said logic process having output corresponding to one or more signal outputs of said group of said plurality of signals associated with said logic process, said logic process including simulation logic defining a relationship between said input of said logic process and said output of said logic process, said simulation logic further including a definition of interconnections between signals of said group of signals associated with said logic process; means for defining sensitivity information including a definition of which of said plurality of signals affect said output of said logic process; means for applying input signals to said input of said logic process; means for executing in successive execution cycles said simulation logic of said logic process to produce output signals on said output of said logic process, said means for executing further including means for updating said state information; means for executing in successive execution cycles only said simulation logic associated with a signal specified in said sensitivity information that has changed state since said signal was last evaluated or that has an unknown prior state; means for determining if said output of said logic process is either no longer changing state or changing state in a predictable manner thereby indicating that the logic process is stable; and means for continuing to propagate, evaluate and update said simulation logic in successive execution cycles until said output of said logic process is either no longer changing state or changing state in a predictable manner thereby indicating that the logic process is stable.
Claim 3
Dependent Claim 37 words
The logic simulator as claimed in claim 1 wherein said state information includes information specifying whether each signal of said plurality of signals has changed state since each signal was last evaluated in said prior execution cycle.
Claim 4
Dependent Claim 24 words
The logic simulator as claimed in claim 1 further including means for setting a start state of each signal of said plurality of signals.
Claim 5
Dependent Claim 39 words
The logic simulator as claimed in claim 1 wherein said means for determining further includes means for determining if said output of said logic process has changed state since said output was last evaluated in said prior execution cycle.
Claim 6
Dependent Claim 40 words
The logic simulator as claimed in claim 1 wherein said means for determining further includes means for determining if a signal specified in said sensitivity information has changed state since said output was last evaluated in said prior execution cycle.
Claim 7
Dependent Claim 39 words
The logic simulator as claimed in claim 1 wherein said means for executing further includes means for executing simulation logic associated only with a signal specified in said sensitivity information that has changed state from a previous execution cycle.
Claim 8
Dependent Claim 31 words
The logic simulator as claimed in claim 1 wherein said logic process includes a definition of precedence among signals within said group of said plurality of signals in one execution cycle.
Claim 9
Dependent Claim 352 words
A process for simulating the operation of a logic network in a computer system, said process comprising the steps of: defining a plurality of signals using state information associated with each signal of said plurality of signals in an execution cycle, said state information including a definition of a current state in a current execution cycle and a prior state of a prior execution cycle of each signal of said plurality of signals: defining a logic process associated with a group of said plurality of signals, said logic process having input corresponding to one or more signal inputs of said group of said plurality of signals associated with said logic process, said logic process having output corresponding to one or more signal outputs of said group of said plurality of signals associated with said logic process, said logic process including simulation logic defining a relationship between said input of said logic process and said output of said logic process, said simulation logic further including a definition of interconnections between signals of said group of signals associated with said logic process; defining sensitivity information including a definition of which of said plurality of signals affect said output of said logic process; applying input signals to said input of said logic process; executing said simulation logic in successive execution cycles of said logic process to produce output signals on said output of said logic process, said step of executing further including a step of updating said state information; executing only said simulation logic in successive execution cycles associated with a signal specified in said sensitivity information that has changed state since said signal was last evaluated or that has an unknown prior state; determining if said output of said logic process is either no longer changing state or changing state in a predictable manner thereby indicating that the logic process is stable; and continuing to propagate, evaluate and update said simulation logic in successive execution cycles until said output of said logic process is either no longer changing state or changing state in a predictable manner thereby indicating that the logic process is stable.
Claim 10
Dependent Claim 352 words
A process for simulating the operation of a logic network in a computer system, said process comprising the steps of: defining a plurality of signals using state information associated with each signal of said plurality of signals in an execution cycle, said state information including a definition of a current state in a current execution cycle and a prior state of a prior execution cycle of each signal of said plurality of signals: defining a logic process associated with a group of said plurality of signals, said logic process having input corresponding to one or more signal inputs of said group of said plurality of signals associated with said logic process, said logic process having output corresponding to one or more signal outputs of said group of said plurality of signals associated with said logic process, said logic process including simulation logic defining a relationship between said input of said logic process and said output of said logic process, said simulation logic further including a definition of interconnections between signals of said group of signals associated with said logic process; defining sensitivity information including a definition of which of said plurality of signals affect said output of said logic process; applying input signals to said input of said logic process; executing said simulation logic in successive execution cycles of said logic process to produce output signals on said output of said logic process, said step of executing further including a step of updating said state information; executing only said simulation logic in successive execution cycles associated with a signal specified in said sensitivity information that has changed state since said signal was last evaluated or that has an unknown prior state; determining if said output of said logic process is either no longer changing state or changing state in a predictable manner thereby indicating that the logic process is stable; and continuing to propagate, evaluate and update said simulation logic in successive execution cycles until said output of said logic process is either no longer changing state or changing state in a predictable manner thereby indicating that the logic process is stable.
Claim 11
Dependent Claim 36 words
The process as claimed in claim 8 wherein said state information includes information specifying whether each signal of said plurality of signals has changed state since each signal was last evaluated in said prior execution cycle.
Claim 12
Dependent Claim 24 words
The process as claimed in claim 8 further including a step of setting a start state of each signal of said plurality of signals.
Claim 13
Dependent Claim 37 words
The process as claimed in claim 8 wherein said step of determining further includes a step of determining if said output of said logic has changed since said output was last evaluated in said prior execution cycle.
Claim 14
Dependent Claim 40 words
The process as claimed in claim 8 wherein said step of determining further includes a step of determining if a signal specified in said sensitivity information has changed state since said signal was last evaluated in said prior execution cycle.
Claim 15
Dependent Claim 30 words
The process as claimed in claim 8 wherein said logic process includes a definition of precedence among signals within said group of said plurality of signals in one execution cycle.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-02-05 1999-08-07 2000-02-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-02-05 2003-08-07 2004-02-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-02-05 2007-08-07 2008-02-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag