Claims Analysis
Total Claims: 24
Claim 1
Independent Claim
85 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, the method comprising the steps of: entering a high-level description of the component model; compiling the high-level description to produce model behavior code parse trees and model structure data; translating the parse trees to produce scalar-code parse trees; and converting the scalar-code parse trees and model structure data into code in the computer programming language used by the simulator program.
Claim 2
Dependent Claim
24 words
A method according to claim 1 further comprising, before the translating step, the step of: debugging the verified parse trees and model structure data.
Claim 3
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 4
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 5
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 6
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 7
Dependent Claim
14 words
A method according to claim 6 further comprising the step of: specifying argument-independent equations.
Claim 8
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 9
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 10
Independent Claim
31 words
A method for describing a model of an analog device, comprising the steps of: naming the model; declaring parameters; describing a topology of the model; declaring arguments; and specifying argument-dependent equations.
Claim 11
Dependent Claim
14 words
A method according to claim 10 further comprising the step of: specifying argument-independent equations.
Claim 12
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 13
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 14
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 15
Dependent Claim
19 words
A method according to claim 14 further comprising the steps of: naming unknowns; and specifying units for each unknown.
Claim 16
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 17
Dependent Claim
19 words
A method according to claim 16 wherein the specifying steps further comprises the step of: further specifying a polarity.
Claim 18
Dependent Claim
33 words
A method according to claim 10 wherein the step of specifying argument-dependent equations comprises the steps of: writing expressions for the through value for branches; and writing expressions for the constraints on unknowns.
Claim 19
Independent Claim
100 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, 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 to create an 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.
Claim 20
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 21
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 22
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 23
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 24
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.