Disclosed embodiments relate to harmonic distortion macro-models for simulating Harmonic Distortion vs. output load for electronic circuits.
Circuit designers need macro-models that can precisely and accurately predict the behavior of an actual electronic device in their particular application to avoid the need to build breadboards for actual testing. Circuit simulation programs, of which Simulation Program with Integrated Circuit Emphasis (SPICE) and its derivatives are the most often used, take a text netlist describing the circuit elements (transistors, resistors, capacitors, etc.) and their connections, and translate this description into equations to be solved. The general equations produced are nonlinear differential algebraic equations which are solved using implicit integration methods, Newton's method and sparse matrix techniques.
SPICE macro-models have evolved over the past decade, and new models allow users to duplicate characterization data on their computers. Unfortunately, most electronic circuit simulation models that claim to provide circuit designers with accurate simulation data actually do not duplicate the actual behavior of the device, at least for certain parameters, and some available SPICE models also still lack certain parameters. For example, most available simulation models do not adequately simulate noise or distortion, generally providing erroneous and misleading readings even for relatively simple circuits such as low-noise precision operational amplifiers. As known in the art, “noise” describes the random electrical signals produced by the device, while “distortion” refers to unwanted harmonics introduced by the device.
This Summary briefly indicates the nature and substance of this Disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims.
Disclosed embodiments recognize there are no known macro-modeling solutions for modeling harmonic distortion (HD) vs. output loading at the macro-modeling level that can provide universality and ease-of-use. Universality refers to the disclosed solution being able to (i) be applied across the boundary of different circuit architectures/circuit categories with only the need to insert the disclosed solution in between existing sub-circuit blocks of a macro-model or otherwise in the signal path of the sub-circuit blocks, and (ii) with no needed changes to the sub-circuit blocks for converting an existing non-HD macro model into a macro-model that describes the HD behavior of the electronic device.
Ease-of-use refers to the solution being capable of use by a macro-model engineer having ordinary skill in the art without requiring the macro-model engineer to possess a thorough understanding of the circuit architecture (or years of experience), significant time (e.g., several weeks) to do trial and error work, and the ability to obtain access to a circuit database or circuit design database. HD values as a function of an equivalent output impedance (Z) generated by disclosed methods can be expressed as a particular harmonic of a fundamental frequency such as the first harmonic (HD1) or second harmonic (HD2), or as a total harmonic distortion (THD) which is a common measurement for the level of HD present in certain devices.
Disclosed embodiments include methods of HD versus load modeling for electronic circuits. A macro-model circuit is provided including sub-circuit block(s) modeling an electronic device and an HD generation block in a signal path of the macro-model circuit that includes an HD equation relating a load current parameter responsive to an a time-varying input voltage (Vin(t)). The sub-circuit block(s) used for modeling the electronic device can be known sub-circuit block(s).
Responsive to receiving Vin(t) at an input of the macro-model circuit under a set of operating conditions including the output of the macro-model circuit loaded with an output impedance (Z), a simulated load current (iL) is generated. iL or another load current derived from iL (iL′) is fed back to the HD generation block to provide its load current parameter. The load current parameter is inputted into the HD equation for the HD equation to become a substituted equation. At least one simulated HD value under loading by Z for the electronic device is generated from the substituted equation.
Reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, wherein:
Example embodiments are described with reference to the drawings, wherein like reference numerals are used to designate similar or equivalent elements. Illustrated ordering of acts or events should not be considered as limiting, as some acts or events may occur in different order and/or concurrently with other acts or events. Furthermore, some illustrated acts or events may not be required to implement a methodology in accordance with this disclosure.
Also, the terms “coupled to” or “couples with” (and the like) as used herein without further qualification are intended to describe either an indirect or direct electrical connection. Thus, if a first device “couples” to a second device, that connection can be through a direct electrical connection where there are only parasitics in the pathway, or through an indirect electrical connection via intervening items including other devices and connections. For indirect coupling, the intervening item generally does not modify the information of a signal but may adjust its current level, voltage level, and/or power level.
In step 102, responsive to receiving Vin(t) at an input of the macro-model circuit under a set of operating conditions (e.g., conventional conditions such as power supply levels), Vin(t) defining the frequency and amplitude, temperature, etc. including the output node of the macro-model circuit loaded with an output impedance (Z), a simulated load current (iL) is generated. Step 103 comprising feeding back iL or another load current derived from iL (iL′) to the HD generation block to provide its load current parameter. Step 104 comprises inputting the load current parameter into the HD equation so that the HD equation becomes a substituted equation. Step 105 comprises generating at least one simulated HD value (first HD value) under loading by Z for the electronic device from the substituted equation.
The HD equation can be in the form comprising a1*Vin+a2*iL*2+a3*iL*3, where a1, a2 and a3 are each constants, and iL* comprises iL or iL′. Vin(t) can be a sinusoidal signal or any signal having frequency component(s)) providing a fundamental frequency, and the generating (step 105) can comprise using a half-angle formula to generate the first HD value at two times the fundamental frequency (2nd HD) (See Examples section below), and/or the generating step can comprise using a triple-angle formula to generate the first HD value at three times the fundamental frequency (3rd HD) (See Examples section below). Half-angle formulas are shown below:
sin2 θ=[1−cos(2θ)]/2
cos2 θ=[1+cos(2θ)]/2
tan2 θ=[1−cos(2θ)]/2 divided by [1+cos(2θ)]/2
An example triple-angle formulas is shown below:
cos 3θ=4 cos3 θ−3 cos θ
The method can further comprise repeating the method after changing Z to a different Z (Z′), including responsive to receiving Vin(t) at the input of the macro-model circuit under a set of operating conditions including the output of the macro-model circuit being loaded with Z′. A simulated load current (second iL) is then generated, the second iL or another load current measure derived from the second iL (second iL′) fed back to the HD generation block to provide a second load current parameter for the HD generation block, and the second load current parameter is then input into the HD equation so that the HD equation becomes a substituted equation. A least one different simulated HD value (a second HD value) under loading by Z′ for the electronic device is then generated from the substituted equation.
The method can comprise generating a plot of HD versus output load using at least the first HD value and its associated Z, and the second HD value with its associated Z′. As used herein, the first and second HD value can be for any HD parameter (e.g., HD2, HD3, HD4, etc.), where the different impedance conditions (Z, Z′) produce different first and second HD values. The method can be implemented using a circuit netlist for the electronic device. In this embodiment, the macro-model circuit can be implemented using a circuit schematic editor or by a user directly typing to the circuit netlist. Disclosed macro-models can be made available on the Internet for world-wide customer downloads.
In one embodiment the sub-circuit block for modeling an electronic device comprises a first sub-circuit block and a second sub-circuit block. In this embodiment the HD generation block can be positioned before the first sub-circuit block, between the first sub-circuit block and the second sub-circuit block, or after the second sub-circuit block.
The processor 230 can comprise a central processing unit (CPU), microcontroller unit (MCU) or digital signal processor (DSP). iL or iL′ can utilize a variety of forms and mathematical formats/equations that include iL as a main variable. Examples include, but are not limited to (where var=a variable or a constant), the following:
iL′=iL
var a.
iL′=iL*var b.
iL′=iL+var c.
iL′=var*iLvar+var d.
Regarding modelling, for non-HD macro-modeling of the electronic circuit, the HD generation block 210 can be replaced with an ideal wire (i.e., a forward gain of 1×). Upon conversion into the HD macro-model for HD modeling, this ideal wire can be replaced by the HD generation block 210 by which the HD equation is utilized (the forward gain, the coefficient a1 in a HD equation, such as Vout=a1*Vin+a2*iL2+a3*iL3, where a1 can be set to 1×, 2×, etc. . . . ).
Within the known world of “behavioral methods” for performing circuit macro-modeling for HD generation, advantages of disclosed embodiment incorporating a disclosed HD generation block having a new HD equation that incorporates the sampled load current is that the macro-modeling user will be able to simulate the impact of various output loading on HD. The denominator in the HD equation below is the impedance (Z) seen at the output node of the electronic device having a load resistor RL and feedback resistor (RFB), such as is typical for operating an operational amplifier.
IL=VOUT/(RL∥RFB), where ∥ means RL and RFB are electrically in parallel.
For instance, for an amplifier, a user using disclosed methods can simulate in these following contexts:
In known art of behavioral modeling, HD as a function of RL will be flat horizontal line as shown in
In known art of behavioral modeling HD as a function of RFB will be flat horizontal line as shown in
In known art of behavioral modeling, HD as a function of Vout will have a loop steepness slope and thus be inaccurate because in the known art, there is no load current measurement in Vout=a1*Vin+a2*Vin2+a3*Vin3, so that as one increases the input amplitude (Vin) that translates into an increased output amplitude, the HD will increase as well proportional to the rate of increase or the slope of the input amplitude increase only. In contrast, for disclosed embodiments, HD as a function of output load (e.g., RL, RFB) will be varying with a significantly steeper slope tracking the behavior of the real semiconductor (e.g., silicon) chip. Again, the improved performance results because of the new dependency of load current measure in the HD generation circuit, which creates an additional dependency of output loading in addition to the voltage increase. Thus, a double impact regarding HD is provided, the first impact is the Vout increase provided by the known art, and the second impact is the newly added output load impact toward the limited fixed capacity output buffer of the electronic device. The first impact represents the numerator (“Vout”) of the load current measure (e.g., iL=Vout/(RL∥RFB)) and the second newly added impact represents the denominator such as RL∥RFB of the load current measure, such as iL=Vout/(RL∥RFB).
Disclosed embodiments are further illustrated by the following specific Examples, which should not be construed as limiting the scope or content of this Disclosure in any way.
Regarding HD2 for a Vin(t)=cos(ωt) and an Equivalent Impedance of RL:
a2*Vin2|vin is replaced by iL=a2*iL2
Since Vin(t)=cos(ωt), Vout=constant×Vin (the constant is assumed to be=1 to simplify the analysis) and iL=Vout/RL, then:
Thus, injecting iL will give rise to HD2 (i.e., 2ω) with an output load (here RL) dependency.
Regarding HD3 for a Vin(t)=cos(ωt) and an Equivalent Impedance of RL:
Thus, injecting iL will give rise to HD3 (i.e., 3ω) with an output load (here RL) dependency.
Those skilled in the art to which this disclosure relates will appreciate that many other embodiments and variations of embodiments are possible within the scope of the claimed invention, and further additions, deletions, substitutions and modifications may be made to the described embodiments without departing from the scope of this disclosure.
This application claims the benefit of Provisional Application Ser. No. 61/917,585 entitled “Harmonic Distortion vs. Loading macro modeling” filed on Dec. 18, 2013, which is herein incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
61917585 | Dec 2013 | US |