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

Simulator for simulating systems including mixed triggers

Assignee: Synopsys Inc
•
Filing: 1995-09-29
•
Granted: 1998-09-15
•
Expires: 2015-09-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method of simulating a system on a computer. The method comprises the following steps. First, analyze a hardware design language specification of the system to identify a set of processes. The hardware design language specification includes a register transfer level definition of a part of the system. Identify a set of triggered processes from the set of processes. Identify a set of triggers for the set of triggered processes, where a first trigger of the set of triggers is for causing a state change in a simulation of the system. Determine an evaluation order of the set of processes using the set of triggers. Simulate the system using the evaluation order.

Inventors

  • 👤 Radha Vaidyanathan
  • 👤 Ping-sheng Tseng

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 14:33
CPC Classifications
G; G06; G06F; G06F30/00; G06F30/30; G06F30/32; G06F30/33

Claims Analysis

Total Claims: 23
Claim 1
Independent Claim 169 words
A method of register transfer level cycle based simulation of a system on a computer, said method comprising the steps of: analyzing a register transfer level based hardware design language specification of a part of said system to identify a set of processes; identifying a set of triggered processes from said set of processes, wherein identifying said set of triggered processes includes classifying each process of said set of processes as being one of sequential, sequential complex, combinational and both combinational and sequential and identifying a process as being a triggered process if said process is classified as sequential, sequential complex, combinational and both combinational and sequential; identifying a set of triggers for said set of triggered processes, a first trigger of said set of triggers for causing a state change in a simulation of said system; determining during said register transfer level cycle-based simulation of said system an evaluation order of said set of processes using said set of triggers; and simulating said system using said evaluation order.
Claim 2
Independent Claim 169 words
A method of register transfer level cycle based simulation of a system on a computer, said method comprising the steps of: analyzing a register transfer level based hardware design language specification of a part of said system to identify a set of processes; identifying a set of triggered processes from said set of processes, wherein identifying said set of triggered processes includes classifying each process of said set of processes as being one of sequential, sequential complex, combinational and both combinational and sequential and identifying a process as being a triggered process if said process is classified as sequential, sequential complex, combinational and both combinational and sequential; identifying a set of triggers for said set of triggered processes, a first trigger of said set of triggers for causing a state change in a simulation of said system; determining during said register transfer level cycle-based simulation of said system an evaluation order of said set of processes using said set of triggers; and simulating said system using said evaluation order.
Claim 3
Dependent Claim 26 words
The method of claim 1 wherein said classifying each process includes determining whether a process includes one of a "wait for" statement and an "event" statement.
Claim 4
Dependent Claim 47 words
The method of claim 1 wherein said identifying said set of triggered processes further includes attempting to split each process in said set of processes that is classified as both combinational and sequential into a new set of sequential processes and a new set of combinational processes.
Claim 5
Dependent Claim 32 words
The method of claim 1 wherein said identifying said set of triggered processes includes reclassifying each process, identified as being combinational that includes a partial assignment of a signal, as being sequential.
Claim 6
Dependent Claim 28 words
The method of claim 1 wherein said first trigger corresponds to a signal in said system that is asynchronous with respect to a clock signal in said system.
Claim 7
Dependent Claim 15 words
The method of claim 1 wherein said first trigger corresponds to a gated clock signal.
Claim 8
Dependent Claim 17 words
The method of claim 1 wherein said first trigger corresponds to an output of a sequential process.
Claim 9
Dependent Claim 18 words
The method of claim 1 wherein said first trigger corresponds to a part of a combinational feedback loop.
Claim 10
Independent Claim 191 words
A method of register transfer level cycle based simulation of a system on a computer, said method comprising the steps of: determining an end time of a first cycle; evaluating a test bench at said register transfer level using said end time; evaluating a plurality of processes at said register transfer level to identify the plurality of processes effected by said evaluating said test bench, wherein said plurality of processes include a plurality of combinational proceses, a plurality of sequential processes, a plurality of sequential complex processes, and a plurality of both combinational and sequential processes, wherein evaluating said plurality of processes includes classifying each process of said set of processes as being one of sequential, sequential complex, combinational, and both combinational and sequential; determining whether said evaluating said plurality of processes at said register transfer level activates a state change signal; if said state change signal is activated, then evaluating a set of processes of said plurality of processes at said register transfer level effected by said state change signal; and else if said state change signal is not activated, then determining a next end time of a second cycle.
Claim 11
Independent Claim 191 words
A method of register transfer level cycle based simulation of a system on a computer, said method comprising the steps of: determining an end time of a first cycle; evaluating a test bench at said register transfer level using said end time; evaluating a plurality of processes at said register transfer level to identify the plurality of processes effected by said evaluating said test bench, wherein said plurality of processes include a plurality of combinational proceses, a plurality of sequential processes, a plurality of sequential complex processes, and a plurality of both combinational and sequential processes, wherein evaluating said plurality of processes includes classifying each process of said set of processes as being one of sequential, sequential complex, combinational, and both combinational and sequential; determining whether said evaluating said plurality of processes at said register transfer level activates a state change signal; if said state change signal is activated, then evaluating a set of processes of said plurality of processes at said register transfer level effected by said state change signal; and else if said state change signal is not activated, then determining a next end time of a second cycle.
Claim 12
Dependent Claim 26 words
The method of claim 9 wherein said determining said end of said first cycle includes determining a time when signal in said test bench will change.
Claim 13
Dependent Claim 39 words
The method of claim 9 wherein said evaluating said test bench using said end time includes executing a set of stimulus processes within said test bench to determine a set of values of signals effecting said plurality of processes.
Claim 14
Dependent Claim 48 words
The method of claim 9 further comprising, after said evaluating said set of processes of said plurality of processes effected by said state change signal, testing to determine whether a number of iterations of evaluation during said first cycle exceeds a number of triggers processed in said system.
Claim 15
Dependent Claim 22 words
The method of claim 12 further comprising decrementing an iteration count if one of said triggers is activated by said test bench.
Claim 16
Dependent Claim 143 words
A computer system for simulating a design at the register transfer level, said computer system comprising: a register transfer level based design specification; an analyzer for parsing said design specification to identify a plurality of triggered processes at a register transfer level wherein said plurality of triggered processes include a plurality of combinational processes, a plurality of sequential processes, a plurality of sequential complex processes, and both combinational and sequential processes; an elaborator for classifying each process of said set of processes as being one of sequential, sequential complex, combinational, and both combinational and sequential, and ordering said plurality of processes and generating a code representation of said plurality of processes at said register transfer level; and a run-time simulator for, on a cycle, evaluating said code representation of said processes to determine a set of values of signals represented by said processes.
Claim 17
Dependent Claim 143 words
A computer system for simulating a design at the register transfer level, said computer system comprising: a register transfer level based design specification; an analyzer for parsing said design specification to identify a plurality of triggered processes at a register transfer level wherein said plurality of triggered processes include a plurality of combinational processes, a plurality of sequential processes, a plurality of sequential complex processes, and both combinational and sequential processes; an elaborator for classifying each process of said set of processes as being one of sequential, sequential complex, combinational, and both combinational and sequential, and ordering said plurality of processes and generating a code representation of said plurality of processes at said register transfer level; and a run-time simulator for, on a cycle, evaluating said code representation of said processes to determine a set of values of signals represented by said processes.
Claim 18
Dependent Claim 31 words
The computer system of claim 14 wherein said elaborator is further for identifying each of said plurality of processes as being one of a state holding process, and a combinational process.
Claim 19
Dependent Claim 41 words
The computer system of claim 15 wherein said elaborator is further for identifying each process of said plurality of processes as being one of a combinational process, a sequential process, a sequential complex process, and a both sequential and combination process.
Claim 20
Dependent Claim 21 words
The computer system of claim 14 wherein said run-time system further includes a run-time core for determining a simulation time cycle.
Claim 21
Dependent Claim 37 words
The computer system of claim 14 wherein said computer system includes a memory for storing said design specification and a processor for evaluating said representation of said processes, said processor being coupled in communication with said memory.
Claim 22
Dependent Claim 242 words
A computer program product including: a computer usable medium having computer readable code embodied therein for causing register transfer level cycle based simulation of a system on a computer, the computer program product comprising: computer readable program code devices configured to cause a computer to effect analyzing a register transfer level based hardware design language specification of a part of said system to identify a set of processes; computer readable program code devices configured to cause a computer to effect identifying a set of triggered processes from said set of processes, wherein identifying said set of triggered processes include classifying each process of said set of processes as being one of sequential, sequential complex, combinational, and both combinational and sequential and identifying a process as being a triggered process if said process is classified as sequential, sequential complex, combinational, and both combinational and sequential; computer readable program code devices configured to cause a computer to effect identifying a set of triggers for said set of triggered processes, a first trigger of said set of triggers for causing a state change in a simulation of said system; computer readable program code devices configured to cause a computer to effect determining during said register transfer level cycle-based simulation of said system an evaluation order of said set of processes using said set of triggers; and computer readable program code devices configured to cause a computer to effect simulating said system using said evaluation order.
Claim 23
Dependent Claim 242 words
A computer program product including: a computer usable medium having computer readable code embodied therein for causing register transfer level cycle based simulation of a system on a computer, the computer program product comprising: computer readable program code devices configured to cause a computer to effect analyzing a register transfer level based hardware design language specification of a part of said system to identify a set of processes; computer readable program code devices configured to cause a computer to effect identifying a set of triggered processes from said set of processes, wherein identifying said set of triggered processes include classifying each process of said set of processes as being one of sequential, sequential complex, combinational, and both combinational and sequential and identifying a process as being a triggered process if said process is classified as sequential, sequential complex, combinational, and both combinational and sequential; computer readable program code devices configured to cause a computer to effect identifying a set of triggers for said set of triggered processes, a first trigger of said set of triggers for causing a state change in a simulation of said system; computer readable program code devices configured to cause a computer to effect determining during said register transfer level cycle-based simulation of said system an evaluation order of said set of processes using said set of triggers; and computer readable program code devices configured to cause a computer to effect simulating said system using said evaluation order.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-09-14 2002-03-16 2002-09-15 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-09-14 2006-03-16 2006-09-15 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-09-14 2010-03-16 2010-09-15 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag