Claims Analysis
Total Claims: 27
Claim 1
Independent Claim
130 words
A method for creating a simulation engine from a functional description of an integrated circuit, comprising: statically scheduling events associated with said functional description, said statically scheduling comprising analyzing each one of a plurality of partitions within said functional description to determine each time at which an event occurs, wherein each time is measured with respect to a clock associated with said one of said plurality of partitions, and wherein at least one of a phase and a period of said clock associated with a first one of said plurality of partitions differs from a corresponding feature of said clock associated with a second one of said plurality of partitions; forming scheduled source code according to said step of statically scheduling; and compiling said source code into said simulation engine.
Claim 2
Independent Claim
130 words
A method for creating a simulation engine from a functional description of an integrated circuit, comprising: statically scheduling events associated with said functional description, said statically scheduling comprising analyzing each one of a plurality of partitions within said functional description to determine each time at which an event occurs, wherein each time is measured with respect to a clock associated with said one of said plurality of partitions, and wherein at least one of a phase and a period of said clock associated with a first one of said plurality of partitions differs from a corresponding feature of said clock associated with a second one of said plurality of partitions; forming scheduled source code according to said step of statically scheduling; and compiling said source code into said simulation engine.
Claim 3
Dependent Claim
20 words
The method as recited in claim 1 wherein said statically scheduling comprises selecting a master clock for said simulation engine.
Claim 4
Dependent Claim
33 words
The method as recited in claim 2 wherein said master clock has a period equal to the least common multiple of the periods of a plurality of clocks associated within said functional description.
Claim 5
Dependent Claim
32 words
The method as recited in claim 1 wherein said statically scheduling comprises recalibrating said events with respect to a master clock, wherein said master clock is the clock for said simulation engine.
Claim 6
Dependent Claim
18 words
The method as recited in claim 1 wherein said scheduled source code is formulated in a programming language.
Claim 7
Dependent Claim
16 words
The method as recited in claim 5 wherein said programming language is the C programming language.
Claim 8
Dependent Claim
31 words
The method as recited in claim 1 further comprising executing said simulation engine to determine if said functional description of said integrated circuit substantially fulfills a specification of said integrated circuit.
Claim 9
Dependent Claim
17 words
The method as recited in claim 1 wherein said statically scheduling comprises forming a global scheduling table.
Claim 10
Dependent Claim
35 words
The method as recited in claim 8 wherein said global scheduling table defines which ones of a plurality of partitions within said functional description include events within each time slice identified during said statically scheduling.
Claim 11
Dependent Claim
26 words
The method as recited in claim 1 further comprising forming an event-driven simulation model, wherein said simulation engine and said event-driven simulation model are functionally equivalent.
Claim 12
Dependent Claim
45 words
The method as recited in claim 1 further comprising executing said simulation engine, wherein executing said simulation engine comprises, during each clock cycle as defined by a master clock selected during said statically scheduling, evaluating, at least once, each event identified during said statically scheduling.
Claim 13
Independent Claim
62 words
A method for creating a custom simulation engine from a functional description of an integrated circuit, comprising: statically scheduling events associated with said functional description; deriving scheduled source code from said step of statically scheduling; and compiling said source code, thereby creating said custom simulation engine, wherein said custom simulation engine comprises an executable program module derived from said scheduled source code.
Claim 14
Independent Claim
62 words
A method for creating a custom simulation engine from a functional description of an integrated circuit, comprising: statically scheduling events associated with said functional description; deriving scheduled source code from said step of statically scheduling; and compiling said source code, thereby creating said custom simulation engine, wherein said custom simulation engine comprises an executable program module derived from said scheduled source code.
Claim 15
Dependent Claim
52 words
The method as recited in claim 12 wherein said statically scheduling comprises analyzing each one of a plurality of partitions within said functional description to determine each time at which an event occurs, wherein each time is measured with respect to a clock associated with said one of said plurality of partitions.
Claim 16
Dependent Claim
20 words
The method as recited in claim 13 wherein said statically scheduling comprises selecting a master clock for said simulation engine.
Claim 17
Dependent Claim
33 words
The method as recited in claim 14 wherein said master clock has a period equal to the least common multiple of the periods of a plurality of clocks associated within said functional description.
Claim 18
Dependent Claim
34 words
The method as recited in claim 14 wherein said master clock is divided into a plurality of time slices, and wherein each one of said plurality of time slices includes at least one event.
Claim 19
Dependent Claim
56 words
The method as recited in claim 16 wherein a particular event corresponding to a particular one of said plurality of partitions is included within a plurality of said plurality of time slices if said clock associated with said particular one of said plurality of partitions has a period shorter than a period of said master clock.
Claim 20
Dependent Claim
45 words
The method as recited in claim 16 wherein a particular one of said plurality of time slices includes a first event corresponding to a first one of said plurality of partitions and a second event corresponding to a second one of said plurality of partitions.
Claim 21
Dependent Claim
52 words
The method as recited in claim 2 wherein said statically scheduling comprises repeatedly scheduling a particular event detected within said one of said plurality of partitions if a first period of said clock associated with said one of said plurality of partitions is shorter than a second period of said master clock.
Claim 22
Dependent Claim
30 words
The method as recited in claim 19 wherein a number of times said particular event is scheduled is equal to a ratio of said second period to said first period.
Claim 23
Dependent Claim
127 words
The method as recited in claim 2 wherein said scheduled source code corresponding to each one of said plurality of partitions comprises: (i) a first plurality of functions, wherein each of said first plurality of functions corresponds to one of said events within said one of said plurality of partitions; (ii) a second plurality of functions, wherein each one of said second plurality of functions corresponds to a time slice within a period of said master clock in which at least one of said first plurality of functions is scheduled according to said statically scheduling; (iii) a partition routine configured to call each one of said second plurality of functions according to an order of said time slices; and (iv) a set of constant and function definitions.
Claim 24
Dependent Claim
60 words
The method as recited in claim 21 wherein said scheduled source code further comprises a main routine configured to call each of said second plurality of functions corresponding to each of said plurality of partitions according to a time slice in which said each of said second plurality of functions corresponding to each of said plurality of partitions is scheduled.
Claim 25
Dependent Claim
55 words
The method as recited in claim 1 wherein said scheduled source code comprises a plurality of functions, one for each time slice in which at least one event occurs in at least one of said plurality of partitions, and a main routine which repetitively calls each of said plurality of functions in time slice order.
Claim 26
Dependent Claim
74 words
The method as recited in claim 1 wherein said phase of said clock associated with said first one of said plurality of partitions differs from said phase of said clock associated with said second one of said plurality of partitions while said period of said clock associated with said first one of said plurality of partitions is equal to said period of said clock associated with said second one of said plurality of partitions.
Claim 27
Dependent Claim
40 words
The method as recited in claim 1 wherein said period of said clock associated with said first one of said plurality of partitions differs from said phase of said clock associated with said second one of said plurality of partitions.