Patent US5809283A successfully refreshed from Google Patents.
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
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:42
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.
References Cited (Backward Citations)
US4315315A
Cited
US4455619A
Cited
US4725975A
Cited
US4584642A
Cited
US4527249A
Cited
US4695968A
Cited
US4725971A
Cited
US4677587A
Cited
US4882690A
Cited
US4918594A
Cited
US4744084A
Cited
US4862347A
Cited
US4787062A
Cited
US5151867A
Cited
US4922445A
Cited
US4827427A
Cited
US5029102A
Cited
US5151984A
Cited
US5313615A
Cited
US4901260A
Cited
US4937765A
Cited
US5062067A
Cited
US5111413A
Cited
US5175843A
Cited
US5222030A
Cited
US5198705A
Cited
US5258919A
Cited
US5491640A
Cited
US5392227A
Cited
US5630100A
Cited
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 |