Claims Analysis
Total Claims: 27
Claim 1
Independent Claim
98 words
A method for incorporating a description of an analog component model into a circuit simulator in a computer programming language used by a simulator program residing in a computer, the method comprising the steps of: entering a high-level description of the component model; compiling the high-level description using the computer to produce model behavior code parse trees and model structure data; translating using the computer the parse trees to produce scalar-code parse trees; and converting using the computer the scalar-code parse trees and model structure data into code in the computer programming language used by the simulator program.
Claim 2
Independent Claim
98 words
A method for incorporating a description of an analog component model into a circuit simulator in a computer programming language used by a simulator program residing in a computer, the method comprising the steps of: entering a high-level description of the component model; compiling the high-level description using the computer to produce model behavior code parse trees and model structure data; translating using the computer the parse trees to produce scalar-code parse trees; and converting using the computer the scalar-code parse trees and model structure data into code in the computer programming language used by the simulator program.
Claim 3
Dependent Claim
26 words
A method according to claim 1 further comprising, before the translating step, the step of: debugging the model behavior code parse trees and model structure data.
Claim 4
Dependent Claim
40 words
A method according to claim 1 further comprising, before the translating step, the step of: analyzing the data-flow of the model behavior code parse trees to produce verified parse trees and error messages for those variables referenced but not defined.
Claim 5
Dependent Claim
29 words
A method according to claim 3 further comprising, before the translating step but after the analyzing step, the step of: debugging the verified parse trees and model structure data.
Claim 6
Dependent Claim
29 words
A method according to claim 1 further comprising, before the converting step, the step of: checking argument dependence of the scalar-code parse trees to produce repartitioned scalar-code parse trees.
Claim 7
Dependent Claim
31 words
A method according to claim 1 wherein the entering step comprises the steps of: naming the model; declaring parameters; describing a topology of the model; declaring arguments; and specifying argument-dependent equations.
Claim 8
Dependent Claim
18 words
A method according to claim 6 wherein the entering step further comprises the step of: specifying argument-independent equations.
Claim 9
Dependent Claim
40 words
A method according to claim 1 wherein the converting step comprises the steps of: filling in templates of information required by the simulator program with information from the scalar code parse trees; and producing code according to the filled-in templates.
Claim 10
Dependent Claim
32 words
A method according to claim 8 wherein the producing step comprises the step of: passing messages to objects representing nodes in a parse tree asking the objects to generate code representing themselves.
Claim 11
Independent Claim
136 words
A method for describing a model of an analog device for a simulator program and for using the model of an analog device in conjunction with the simulator program to perform a simulation, the method being performed within a computer and comprising the steps of: naming the model using a language and syntax recognizable by the computer; declaring parameters for the model using the language and syntax recognizable by the computer; describing a topology of the model using the language and syntax recognizable by the computer; declaring arguments for the model using the language and syntax recognizable by the computer; specifying argument-dependent equations for the model using the language and syntax recognizable by the computer; and employing the model in conjunction with the simulator program using the computer to perform a simulation of a physical phenomenon.
Claim 12
Independent Claim
136 words
A method for describing a model of an analog device for a simulator program and for using the model of an analog device in conjunction with the simulator program to perform a simulation, the method being performed within a computer and comprising the steps of: naming the model using a language and syntax recognizable by the computer; declaring parameters for the model using the language and syntax recognizable by the computer; describing a topology of the model using the language and syntax recognizable by the computer; declaring arguments for the model using the language and syntax recognizable by the computer; specifying argument-dependent equations for the model using the language and syntax recognizable by the computer; and employing the model in conjunction with the simulator program using the computer to perform a simulation of a physical phenomenon.
Claim 13
Dependent Claim
14 words
A method according to claim 10 further comprising the step of: specifying argument-independent equations.
Claim 14
Dependent Claim
35 words
A method according to claim 11 wherein the step of specifying argument-independent equations immediately precedes the step of describing a topology of the model and all of the steps are performed in the order indicated.
Claim 15
Dependent Claim
25 words
A method according to claim 10 wherein the step of declaring parameters comprises the steps of: declaring default values; and declaring legal sets of values.
Claim 16
Dependent Claim
38 words
A method according to claim 10 wherein the step of describing a topological model comprises the steps of: naming nodes, pads, and branches; connecting branches between nodes and pads; and specifying units for each node, pad, and branch.
Claim 17
Dependent Claim
23 words
A method according to claim 14 wherein the describing step further comprises the steps of: naming unknowns; and specifying units for each unknown.
Claim 18
Dependent Claim
40 words
A method according to claim 10 wherein the step of declaring arguments comprises the steps of: declaring across arguments; specifying the nodes or pads the across arguments refer to; declaring value arguments; and associating the value argument with an unknown.
Claim 19
Dependent Claim
19 words
A method according to claim 16 wherein the specifying steps further comprises the step of: further specifying a polarity.
Claim 20
Dependent Claim
32 words
A method according to claim 10 wherein the step of specifying argument-dependent equations comprises the steps of: writing expressions for a through value for branches; and writing expressions for constraints on unknowns.
Claim 21
Independent Claim
155 words
A method for creating objects representing variables and their associated vector of derivatives with respect to arguments, which are able to respond to arithmetic operators by calculating the derivatives as well as the value of the variable, and for using the objects so created in conjunction with a simulator program to perform simulations of a physical phenomenon, the method comprising the steps of: identifying an arithmetic operation; determining how the arithmetic operation is affected by differentiation to produce a derivative with respect to the plurality of arguments; writing code in a computer using a language and syntax recognizable by the computer to create a computer language object comprising: a header containing the value of the variable; and a vector associated with the header, the vector containing the determined derivative with respect to the argument; and employing the objects in conjunction with the simulator program using the computer to perform a simulation of a physical phenomenon.
Claim 22
Independent Claim
155 words
A method for creating objects representing variables and their associated vector of derivatives with respect to arguments, which are able to respond to arithmetic operators by calculating the derivatives as well as the value of the variable, and for using the objects so created in conjunction with a simulator program to perform simulations of a physical phenomenon, the method comprising the steps of: identifying an arithmetic operation; determining how the arithmetic operation is affected by differentiation to produce a derivative with respect to the plurality of arguments; writing code in a computer using a language and syntax recognizable by the computer to create a computer language object comprising: a header containing the value of the variable; and a vector associated with the header, the vector containing the determined derivative with respect to the argument; and employing the objects in conjunction with the simulator program using the computer to perform a simulation of a physical phenomenon.
Claim 23
Dependent Claim
23 words
A method according to claim 19 wherein the object created by the writing step further comprises associated methods to produce a numerical result.
Claim 24
Dependent Claim
32 words
A method according to claim 19 wherein the object created by the writing step further comprises associated methods to produce code in a second language for producing a numerical result when executed.
Claim 25
Dependent Claim
33 words
A method according to claim 21 further comprising the additional step of: linking the code produced in the second language into the code of an analog simulator program written in the second language.
Claim 26
Dependent Claim
20 words
A method according to claim 21 further comprising the step of: optimizing the code in the second language before execution.
Claim 27
Dependent Claim
38 words
A method according to claim 23 further comprising the additional step of: linking the code produced in the second language into the code of an analog simulator program written in the second language after optimization and before execution.