Sylina Manual

Sylina Manual Demo en de

Table of Contents

1 icon-warning.svg Warning

This is an experimental prototype. Expect the software to crash, the computer to freeze and have to be restarted. Do not leave other applications running, which may cause damage or data loss. No guarantee is given for the functionality of the software or correctness of the results. You install and use the software at your own risk.

2 Installation

2.1 Requirements

  1. PC with at least 4 GB RAM
  2. Mouse
  3. Windows or Linux 64-Bit
  4. Current Browser (FF 93, Chrome 95.0.4638.69, Edge 92.0.902.62)

2.2 Linux

See Demo.

2.3 Windows

See Demo.

3 Starting of the program

  1. Open a command line (shell)
  2. Start ./sylinaserver in the command line
  3. Open localhost:7788 in the browser

4 Workflow and data flow

With the Sylina prototype it is important to have an idea of ​​how the parts of the software work together, since wrong user input is often not yet checked.

Sylina consists of a solver and a browser window (GUI). The solver gets the circuit with the values ​​and the desired analysis method from the GUI. It performs the analysis and returns the results on request. To do this, it stores various data internally.


Figure 1: overview and data flow

In Figure 1 a typical process is represented by the numbers.

  1. Load selected circuit The necessary data is collected in the analysis dialog.
  2. Analyze The circuit and the analysis method is sent to the solver, which carries out the analysis. The data is stored in the solver.
  3. Set Values Sets the values ​​for the components in the solver. This is used to weight the results and draw curves.
  4. The results are queried for formulas or curves and displayed in the GUI. The data in the solver is also accessed for formula transformations such as toR.
  5. Curves are generated from the formula table or the formulas.

The second step, Analyze, is crucial. It is the actual analysis and computationally intensive. If it fails, no solution can be found.

The prototype does not yet coordinate the steps and does not warn of wrong processes. The user has to take care that the analysis, setting values ​​and querying results are based on the same data in the solver.

5 Overview screen layout


Figure 2: Drag & Drop a formula onto a row

Table 1: Main menu
Menu Submenu Action
Circuit Add Circuit Add circuit editor
  Tools Open tool dialog
  Models Open models dialog
Diagrams Bode Add Bode diagram
  PZ Add PZ diagram
  Nyqusit Add Nyquist diagram
  Text Add text component
  Formula Add formula component
Analyze   Open the analysis dialog
Log   Open and start the log dialog

The screen is organized into rows, columns and items. The items are circuits, diagrams, tables, formulas and texts.

When a new element is created, it is inserted on a new line. The position of the new line is either after the line with the element that triggered the action or after the top visible line.

The rows can be moved up and down using drag & drop.

Elements can be moved to a new line or positioned in an existing line using drag & drop.

The positioning is not entirely free. This allows for quick arranging. The layout is more based on a document than on the usual window/dialog scheme.

This puts all the circuits, diagrams, formulas, and annotations on one page for analysis.

6 Number format

The decimal seperator is the dot . in Sylina.

A digital group seperator does not exist.

The following formats are allowed

integer 123
decimal 3.14
E notation 1.23e3

Abbreviations like in SPICE e.g. k, u, m for kilo, mirco and milli are not allowed.

This abbreviations will be available in the release version.

7 Schematic editor


Figure 3: Add a circuit editor

Circuit | Add Circuit adds a circuit component.

With Circuit | Tools or a right click with the mouse in the circuit editor opens the tool dialog.


Figure 4: Circuit editor and tool dialog

First, an action is selected, which is then executed when you click in the editor. E.g. adding a transistor or rotating an element.

The zoom and clear actions are carried out immediately.

If there are several circuit editors, exactly one is selected. Recognizable by the red header. The actions of the tool dialog apply to the selected circuit editor.

A circuit editor is selected by clicking in the circuit editor.

Items in the tool dialog

Table 2: Tools
Icon Key Action Icon Key Action Icon Key Action
icon-esc.svg Esc Neutral icon-r.svg r Resistance icon-vccs.svg   Voltage controlled current source
icon-zoomp.svg + Zoom in icon-l.svg l Inductance icon-ccvs.svg   Current controlled voltage source
icon-zoomm.svg - Zoom out icon-c.svg c Capacitor icon-nullor.svg   Nullor element
icon-zoom0.svg 0 Normal size icon-gnd.svg g Ground component icon-vdc.svg   DC voltage
icon-edit.svg e Edit values icon-net.svg   Net component icon-vac.svg   AC voltage
icon-move.svg m Move element icon-npn.svg n NPN transistor icon-vm.svg   Voltage measurement
icon-rotate.svg t 90° rotation icon-pnp.svg p PNP transistor icon-idc.svg   DC current
icon-vmirror.svg v Vertical mirroring icon-opa.svg   Opamap icon-iac.svg   AC current
icon-hmirror.svg h Horizontal mirroring icon-jnfet.svg   JNFET icon-im.svg   Current measurement
icon-del.svg Del Delete item icon-nmos.svg   NMOS icon-zin.svg   Input impedance measurement
icon-sel.svg   Multiple selection icon-pmos.svg   PMOS icon-t2.svg   Transformer 2 windings
icon-clear.svg   Clear circuit icon-diode.svg   Diode icon-t3.svg   Transformer 3 windings
icon-wire.svg w New connection icon-vcvs.svg   Voltage controlled voltage source icon-gft.svg   GFT component
icon-text.svg   Text component icon-cccs.svg   Current controlled current source icon-tian.svg   Tian component

7.1 Add elements

An element is selected in the tool dialog or by the corresponding key.

With a click in the circuit editor, the element is then created at this position.

7.2 Create connections


Figure 5: Draw connection

To establish connections, Wire icon-wire.svg is selected or the w key is pressed. By clicking in the editor and moving the mouse, the connection is drawn with a right-angled course. One click keeps the last kink.

Double-click to end drawing of the current connection.

When the connection touches an element's pin, the two are connected.

To link the current connection to another connection, click on it.

If the pins of elements are on top of each other, they are also connected. But be careful if an element is moved, this connection is lost.

7.3 Select / move elements

Elements can be selected and moved with icon-move.svg or the m key.

Clicking on the element selects it. A selected element turns blue.

Multiple elements can be selected by pressing the Ctrl key at the same time. The selection is canceled by clicking on the blank area of the circuit.


Figure 6: Select and move connecting wire

A connecting wire is selected and moved.

The connections are lost.


Figure 7: Select and move connection point

A connection point is selected and moved.

The connected connection wires are also moved.

The direct connection to pins of elements is lost.


Figure 8: Select and move resistance

A resistance is selected and moved.

The connected connecting wires are also moved.

7.4 Rotate / Mirror elements

Rotate is selected with icon-rotate.svg or the t (turn around) key.

Clicking on an element rotates it by 90°.

icon-vmirror.svg selects mirroring on the vertical axis.

icon-hmirror.svg selects mirroring on the horizontal axis.

Clicking on an element mirrors it accordingly.

7.5 Edit values

There are two options for editing elements.


Figure 9: Element Value

With icon-edit.svg the edit mode is selected.

Clicking on the element opens the editing dialog.


Figure 10: Table with values

With Circuit | Values, a table with all elements of the circuit is added to the editor. The values ​​can be changed there.

Multiple data sets can be stored in the table. The name of the data set is in the combo box. With Save, the data set in the table is applied to the circuit and becomes the active data there. Delete deletes the data set. At least one set must be preserved.

You can change the name of the data set in the combo box. If the data set with the name already exists, the values ​​in this data set are saved with Save. If the data set with the name does not exist, a new data set with this name is created.

The name of the active data set is displayed in the circuit editor header.

When analysing a circuit, the active data set is used.

8 Diagrams

There are Bode, Nyquist and pole-zero diagrams.

One diagram is active at a time. Clicking on the diagram activates it.

A new curve is drawn in the active diagram. If no corresponding diagram exists, a new diagram is created.

8.1 Bode plot


Figure 11: Bode plot

The magnitude is displayed in the upper part.

The axis can be scaled logarithmically, in dB or linearly.

The frequency axis can be displayed in angular frequency rad/s or as frequency Hz.

In the lower part, the phase is displayed in degrees.

With Zoom, an area can be enlarged with the mouse.

With Fit, the axes are set in such a way that all curves are visible.

When a new curve is added to the diagram, the axes are not adjusted. The curves can be made fully visible by Fit or manually in the configuration dialog.

The configuration dialog opens with Config or a right-click in the diagram.


Figure 12: Bode axes configuration

The axes for the Bode diagram can be set in the Axes tab of the configuration dialog.

With Apply, the set values ​​are applied to the diagram.

Table 3: Bode configuration axes
Field Description
min Start value for the respective axis
max End value for the respective axis
ticks Spacing of the labeled points on the axis.
  For logarithmic scales it is a factor, for linear scales it is an amount
mticks Distance of the unlabeled points on the axis
unit Rad/s or Hz for the frequency axis
type Logarithmic, dB or linear


Figure 13: Bode configuration dialog graph

In the Graphs tab, the name of the curve and the color can be changed.

With X the curve is deleted.

8.2 Nyquist plot


Figure 14: Nyquist plot

The Nyquist plot is a parametric representation of the transfer-function.

The real part is horizontal and the imaginary part is vertical. The curve runs from the start frequency to the end frequency.

The axes are linear.

The presentation is very simple. Orbits at infinity and mirror image of negative frequencies are not shown.

Since only a limited number of points are calculated, it can sometimes look a bit angular. This can be improved by recalculating the curve for a smaller frequency range. See also Release.

With Zoom, an area can be enlarged with the mouse.

With Fit, the axes are set in such a way that all curves are visible.

The configuration dialog opens with Config or a right-click in the diagram.


Figure 15: Nyquist configuration dialog axes

Table 4: Nyquist configurations axes
Field Description
min Start value for the x and y axis
max End value for the x and y axis
ticks Spacing of the labeled points on the axes/curve
mticks Distance of the unlabeled points on the axes/curve
unit Rad/s or Hz for the frequency label of the curve

With Apply, the set values ​​are applied to the diagram.


Figure 16: Nyquist configuration dialog graph

In the Graphs tab, the name of the curve and the color can be changed.

With X the curve is deleted.

8.3 Pole-Zero plot


Figure 17: Pole-Zero plot

The poles and zeros of the transfer-function are displayed here.

The real part is horizontal and the imaginary part is vertical.

The axes are linear.

With Zoom, an area can be enlarged with the mouse.

With Fit, the axes are set in such a way that all curves are visible.

The configuration dialog opens with Config or a right-click in the diagram.


Figure 18: PZ configuration dialog axes

Table 5: PZ configuration axes
Field Description
min Start value for the x and y axis
max End value for the x and y axis
ticks Distance between the labeled points on the x and y axis
mticks Distance between the unlabeled points on the x and y axis

With Apply, the set values ​​are applied to the diagram.


Figure 19: Pole-Zero values

In the configuration dialog Tab Graphs the name and the color of the poles and zeros can be changed.

With X the poles and zeros are deleted.

With Values ​​the numerical values ​​of the poles and zeros are displayed in a text component.

9 Analysis tables


Figure 20: Table of results

Above the table is the name with the frequency for the weighting.

The table shows the numerator terms on the left and the denominator terms on the right.

Menu opens a dialog with which the selected terms can be displayed in a formula.

Table 6: Results table menu
Menu Description
Select all All terms in the table are selected
Unselect Reset the selection
Menu Opens the table dialog

Table 7: Table column description
Field Description
cb Checkbox to select a row
tn*s Weight of the term with the frequency calculated in the numerator
td*s Weight of the term with the frequency calculated in the denominator
exn Exponent of the s terms
tn Weight of the term without frequency
Numerator Term in the numerator
Denominator Term in the denominator


Figure 21: Table dialog

On the left you can see the table dialog, which was opened by clicking on Menu.

The table can be edited further when the dialg is open.

With To Formula the selected terms from the table are displayed in a formula.

The name appears in the formula with Name := ….

The two lines with Select are only there to conveniently make a selection. With Select, the corresponding number in the numerator and denominator is selected in the table.

Table 8: Elements in the table dialog
Element Description
Select all All terms in the table are selected
Unselect all All terms are reset
To Formula The selected terms are displayed in a formula component
Source Associated table with [number]
Name Name of the formula
numerator terms Number of terms in the numerator that are selected with Select
denominator temrs Number of terms in the denominator that are selected with Select
Select See line numerator terms / denominator terms

10 Formula component


Figure 22: Formula

A formula appears in the formula component. The actual formula can be preceded by a name with name :=.

Text and Html can be used to switch between a pure text view and a structured Html view.

Under the Formula menu are listed actions that are performed on the formula. The result appears in a new formula.

Some actions use the data in the solver. These must match the formula. See also Workflow.

Table 9: Formula component menu
Menu Submenu Description
Text   Display as text
Html   Display formatted as Html
Formula plot Opens the plot dialog
  simplify Formula is simplified. Mainly by reduction.
  toR Conductances (GRx) are converted into resistances and the formula is simplified
  RR Open RR dialog for RR analysis
  normalize The formula is brought to the form $$ H0 \cdot \frac{1+A(s)}{1+B(s)} $$
  subst Variables in the formula are replaced
  eval term Variables in the formula are replaced with numbers. order is preserved
  eval Entire formula is calculated and displayed as numbers (except s).
  collect s The formula is displayed sorted by the exponent of s.
  clone The same formula is displayed in a new formula.

icon-warning.svg Prototype. The transformations of the formulas sometimes lead to strange representations. E.g. signs are not reduced or obvious simplifications are not made.

11 Text component

The text component simply displays text. You can switch between plain text and html. See also Release.

12 Small signal analysis / frequency analysis (AC)

Sylina does a symbolic small signal analysis in the frequency domain for linear circuits. With Spice, this corresponds to the numerical AC analysis. The result is a transfer-function in the frequency domain with the Laplace variable s.

$$ H(s) = \frac{N(s)}{D(s)} $$

Common analysis methods in electronics is analysis in the time domain (transients) and small signal analysis in the frequency domain. For the interpretation and application of the results, one must be clear about the advantages and disadvantages of the respective analysis methods.

In small signal analysis, non-linear components such as semiconductors are linearized at the operating point. The non-linear components are replaced by linear models. The analysis is then carried out on this linearized circuit. The results are only valid as long as the components show a sufficiently linear behavior with regard to voltage and current around the operating point. So normally only for small signals.

Despite this limitation, the analysis is usefull because the results are much easier to manipulate. One obtains a rational polynomial in s.

When analysing in the time domain, one obtains a system of differential equations that can often only be solved numerically.

13 Small signal models

With Circuit | Models opens a dialog with the existing models.

In the following, only a small selection of the models is shown. See the models table for a complete list.

13.1 Elementary components

The elementary components are R, L, C, VCVS, VCCS, CCVS, CCCS, nullor, voltage source and current source.

They are used to perform the actual analysis and the small signal models are built from them.

13.2 NPN, PNP


Figure 23: Small signal model npnvi

npnvi is a simple model for a transistor.

13.3 Operational amplifier


Figure 24: Ideal opamp

The ideal operational amplifier is modeled with a nullor. In the resulting formula the operational amplifier does not appear as an amplification factor or similar quantity. There it is taken into account with its ideal properties in the "structure".

If it is to be considered as an active element in an RR analysis, a model with explicit gain (such as opvg) must be chosen.


Figure 25: Opamp with gain and input and output resistance

opvgr is an operational amplifier with input and output resistance and gain.


Figure 26: Opamp with single pole

In the opvlp1rc model, a pole is created with an RC element and shielded from the output with a nullor.

The parameters for determining the pole are the gain and the frequency w1 in rad/s at which the pole becomes effective.


Figure 27: Parameters for the single pole opamp

The following relationship applies

$$ GBP = gain \cdot \omega_1 = gain \cdot 2 \cdot \pi \cdot f_1 $$

The values ​​of an opamp with open gain of 1e6 and a pole at 62.8 rad/s give a

$$ GBP = 1 \cdot 10^6 \cdot 62.8 rad/s = 62.8 \cdot 10^6 rad/s = 10 \cdot 10^6 Hz = 10 MHz $$

13.4 Transformer

There are many ways to model transformers. See Albach.

SYLINA only analyses linear small signal models. i.e. non-linear factors such as hysteresis and saturation are not taken into account.

13.4.1 Two windings


Figure 28: Ideal transformer

An ideal transformer only transforms the voltage and current ratios of the primary and secondary side.

$$ U2 = n \cdot U1 $$

$$ I1 = n \cdot I2 $$

In contrast to a real transformer, direct voltages and direct currents are also transmitted.

An ideal transformer is used in many models to build a more realistic model.


Figure 29: Model t2wa

This model consists of a leakage inductance Ls and a magnetizing inductance Lp and an ideal transformer.

The following relationships exist with the coupling factor k and the self-inductances L1 and L2:

$$ L_s = (1-k^2) L1 $$

$$ L_h = k^2 L1 $$

$$ n = \frac{1}{k} \sqrt{\frac{L2}{L1}} $$


Figure 30: Model t2wb

The t2wb model is based on the matrix

$$ \begin{bmatrix} v1 \\ v2 \\ \end{bmatrix} = \begin{bmatrix}s L1 && s M \\ s M && s L2 \\ \end{bmatrix} \begin{bmatrix} i1 \\ i2 \end{bmatrix} $$

The connection between the coupling factor k and the self-inductances L1 and L2 is as follows:

$$ M = k \cdot \sqrt{L1 \cdot L2} $$


Figure 31: Model t2wc

The t2wc model is basically the same as the t2wa model. However, L1, L2 and k are input parameters and Ls, Lp and n are calculated internally from them.

The parameter k is only valid in the range 0 < k < 1.

I.e. Ls or Lp must not become zero.

13.4.2 Three windings

The models for a three-winding transformer are similar to those for two-windings.

The following relationships are used.

v1 \\ v2 \\ v3 \\
s L_1 &amp; s M_{12} &amp; s M_{13} \\
s M_{12} &amp; s L_2 &amp; s M_{23} \\
s M_{13} &amp; s M_{23} &amp; s L_3 \\
i1 \\ i2 \\ i3 \\

$$ L_{s1} = L_1 - \frac{M_{12} M_{13}}{M_{23}}  = L_1 (1 - \frac{k_{12} k_{13}}{k_{23}})$$

$$ L_{s2} = L_2 - \frac{M_{12} M_{23}}{M_{13}} = L_2 (1 - \frac{k_{12} k_{23}}{k_{13}}) $$

$$ L_{s3} = L_3 - \frac{M_{13} M_{23}}{M_{12}} = L_3 (1 - \frac{k_{13} k_{23}}{k_{12}}) $$

$$ L_h = \frac{M_{12} M_{13}}{M_{23}} = L_1 \frac{k_{12} k_{13}}{k_{23}} $$

$$ n_2 = \frac{M_{23}}{M_{13}} = \frac{k_{23}}{k_{13}} \sqrt{\frac{L_2}{L_1}}  $$

$$ n_3 = \frac{M_{23}}{M_{12}} = \frac{k_{23}}{k_{12}} \sqrt{\frac{L_3}{L_1}} $$

$$ M_{ij} = k_{ij} \sqrt{L_i L_j} $$

The coupling factors must be $$ 0 &lt; k_{ij} &lt; 1 $$ so that Ls1, Ls2, Ls3 and Lh do not become zero.

14 Analysis

The analysis dialog is opened in the main menu with Analyze.

14.1 icon-warning.svg Important prerequisites for the analysis

For the analysis, it is necessary that the components in the circuit have a unique name. E.g. two resistors may not have the same name 'R1'.

Furthermore, at least one ground component (GND) must be present. Without a GND component, the analysis will produce meaningless results.

If the circuit is separated by components such as a transformer, VCVS or nullor, several GND's may be necessary. Circuit seperation can also be caused by analysis components such as ZIN.

If in doubt, it is better to place several GND components to force a defined potential.

In the SYLINA prototype, it must be ensured that the entries are correct. There are no warnings for invalid values.

14.2 Analysis init tab

On the Init tab, Load selected circuit is used to load the data of the active circuit into the analysis dialog.


Figure 32: Analysis dialog

Table 10: Analysis init tab
Field Description
Circuit Name of the loaded circuit
Analyze Selection Input->Output for a transfer-function
  or an analysis element from the circuit.
  Depending on the selection, the following entries change
Input Input source
Output Output measurement
Method Name of the analysis if an analysis item is selected
Optional additional fields Depending on the analysis and method
Advanced Settings EET: (must be empty for normal analysis)
Open List of elements to be removed
Short List of elements to be shorted
Nullify out For an NDI, the output pins for a nullator
Nullify in For an NDI, the input pins for a norator

The analysis is started with Analyze. This is the critical action. Plots or formulas can only be generated later if Analyze is successful.

In the Messages list at the bottom of the dialog you will see a nr Send Analyze init. After a successful analysis, a nr Receive Analyze init Success appears. The SYLINA prototype has to wait for the answer.

If successful, the numerical values ​​of the components in the circuit are then set in the solver with Set Values. Numerical values ​​are necessary for plots, but also to weight the symbolic terms.

14.3 Analysis formula tab


Figure 33: Analysis dialog formula

After the Analyze has been successfully carried out in the Init tab, the result can be shown in a table in the Formula tab.

Table 11: Fields analysis formula tab
Field Description
Name Name for the generated result table
num terms Number of terms in the result numerator
den terms Number of terms in the denominator for the result
s Frequency at which the result is weighted
  in $$\omega$$ (rad/s) or f (Hz).

With Statistic, information about the solution is shown in the Messages list. Among other things, the number of terms in the numerator and denominator. This allows you to better estimate how many terms make sense in the resulting formula table.

Depending on the circuit, there can be thousands of terms in the solution. But such a large number makes no sense for a formula. Therefore it is better to load only a small number of terms into the result table.

With To table, the result table is created with the specified number of terms. See analysis table.

14.4 Analysis Plot Bode/PZ tab


Figure 34: Analysis dialog plot Bode/PZ

Various curves can be generated in the Plot Bode/PZ tab.

The complete solution that is stored internally is taken into account. These curves can thus be used as a reference to compare approximate solutions with.

A new curve is drawn in the respective active diagram. If no corresponding diagram exists, a new diagram is created.

In the diagram, the axis may have to be adjusted (Fit) so that the curve is fully visible.

Element Description
Bode Generates a Bode diagram
Nyquist Generates a Nyquist diagram
PZ Generates a pole-zero diagram
Name Name of the curve
from..to.. Frequency range in which the curve is calculated
Color Color for the curve

14.5 Analysis Plot RR tab


Figure 35: Analysis dialog RR

A curve for the return ratio (RR) analysis can be drawn here as a Bode or Nyquist plot. See Analysis RR for details.

The denominator of the complete solution is the network determinant $$ \Delta $$. From this, the RR can be determined according to Bode.

With entries in Num zero and Den zero it is determined for which active component a complete or partial RR is generated.

In the usual analysis, Num zero is empty and Den zero contains an active component or all active components.

If there are multiple components, the names are separated by spaces.

Element Description
RR Bode Generates a Bode curve for RR
RR Nyquist Generates a Nyquist curve for RR
Name Name of the curve in the diagram
Num zero For a partial RR, the names of the active elements in the numerator to be zeroed
Den zero The names of the active elements in the denominator to be zeroed
from..to.. Frequency range in which the curve is drawn
Color Color of the curve

15 Feedback Analysis

15.1 General Feedback Theorem GFT

See Middlebrook GFT chapter 13, page 35, 43.

The relevant formulas are:

$$ H = H_{inf} \frac{1+\frac{1}{T_n}}{1+\frac{1}{T}} $$

$$ \frac{1}{T} = \frac{1}{T_{ifwd}} + \frac{1}{T_{vfwd}} + \frac{T_{irev}}{T_{vfwd}} = \frac{1}{T_{ifwd}} + \frac{1}{T_{vfwd}} + \frac{T_{vrev}}{T_{ifwd}} $$

$$ \frac{1}{T_n} = \frac{1}{T_{nifwd}} + \frac{1}{T_{nvfwd}} + \frac{T_{nirev}}{T_{nvfwd}} 
    = \frac{1}{T_{nifwd}} + \frac{1}{T_{nvfwd}} + \frac{T_{nvrev}}{T_{nifwd}} $$

where T is the loop gain. Depending on the circuit and the injection point, simplified equations result.

With the GFT component the subexpressions $$ H_{inf}, T_{vfwd}, T_{ifwd}, T_{vrev}, T_{irev}, T_{nvfwd}, T_{nifwd}, T_{nvrev} $$ and $$ T_{nirev} $$ can be determined. The desired expressions can then be formed with this.

For an example see simple feedback circuit GFT.

15.2 Tian

See Tian.

After that, the formula for the loop gain is:

$$ T = \frac{Delta - Y1 - Y2}{Y1 + Y2} $$

The subexpressions $$ Delta, Y1 $$ and $$ Y2 $$ can be determined with the TIAN component. T can then be derived from this.

15.3 Return Ratio (RR)

A transfer-function can be represented as a rational polynomial in s.

$$ H(s) = \frac{N(s)}{D(s)} = \frac{a_0 + a_1 s + a_2 s^2 + ... + a_m s^m}{b_0 + b_1 s + b_2 s^2 + ... + b_n s^n }  = \frac{\Delta_{ij}}{\Delta} $$

The denominator of the transfer-function is the so called network determinant $$ \Delta $$.

This is independent of the input sources of the circuit and only determined by the topology of the circuit. Voltage sources are shorted and current sources are opened. Different transfer-functions have the same network determinant if the topology of the circuit stays the same.

The network determinant is used in the return ratio (RR) calculation.

I.e. first a transfer-function is determined and the denominator of this is used as the network determinant.

15.3.1 Single loop

Normal feedback analysis works with a single loop.

You look for a place where you interrupt all feedback paths.

If that doesn't work, look for a dominant loop and break it. The remaining loops are considered as stable and are ignored.

In the return ratio analysis, an active element is neutralized purely algebraically (set to zero) and a loop calculation is carried out. You calculate the return difference and the return ratio, which are related as follows:

Return Difference $$ F_0 = \frac{\Delta}{\Delta_0} $$ and Return Ratio $$ T_0 = F_0 - 1 $$.

For single loops, the RR corresponds to the loop gain.

For an example see simple feedback circuit RR.

15.3.2 Multiple loops

With multiple loops, it is not possible to interrupt all feedback paths at one point. Normal feedback analysis is therefore not possible. Most of the time you then focus on a dominant loop.

However, the return ratio (RR) analysis is possible. Using the Return Difference (RD) leads to simpler expressions.

See [Bode], [Fox].

Partial return differences can be formed. This is done by neutralizing a subset of the active elements.

A complete RD can be formed with (with three active elements):

$$ F = F_1 F^1_2 F^{1,2}_3 = \frac{\Delta}{\Delta_1} \frac{\Delta_1}{\Delta_{1,2}} \frac{\Delta_{1, 2}}{\Delta_{1,2,3}} $$

If you want to calculate the complete T, most of it cancels out and you get

$$ T = \frac{\Delta}{\Delta_{1,2,3}} - 1 $$

In order to form the partial RR, you specify in the RR dialog which active elements in the numerator and denominator are to be deactivated. For a single loop or for a complete RR, you only enter elements for the denominator (See Figure 35).


In a circuit there are three active elements Q1, Q2 and Q3.

The partial T is to be determined when Q1 is already neutral and Q3 remains active. Q2 is the element to be examined. That makes:

$$ T^1_2 = \frac{\Delta_1}{\Delta_{1,2}} - 1 $$

For this analysis, enter Q1 in the numerator and Q1 Q2 in the denominator in the dialog.

16 Examples

16.1 Simple common emitter amplifier


Figure 36: Common emitter amplifier

Three analyses are drawn in the circuit.

The transfer-function Vout/Vin, the input resistance Zin and the output resistance Zout.

For Zin and Zout, the ZIN analysis component is used.


Figure 37: Small signal parameters Q1

The small signal parameters for the npn transistor Q1, determined from a Spice simulation. See parameters from Spice.


Figure 38: Small signal model npnvi2

The small signal equivalent circuit for the npnvi2 model.

16.1.1 Transfer-function

To determine the transfer-function, the input source and the output measurement are specified in the analysis dialog.


Figure 39: Analysis dialog

icon-pt1.svg Load selected circuit

icon-pt2.svg Select analysis method

icon-pt3.svg Select input source and output measurement

Then press the Analyze button. Wait until the response "Receive…" comes in the message text below. Now press the Set Values ​​button.


Figure 40: ce1 plot dialog

Switch to the Plot Bode/PZ tab and enter a function name, start and end frequency and then press the Bode button.


Figure 41: ce1 Bode plot

The Bode plot appears. This is the complete solution. So no approximation. The plot is the reference for simplified formulas.


Figure 42: ce1 formula dialog

You can now develop a formula on the Formula tab. With the Statistic button you get the number of terms in the numerator and denominator in the message text. If this is in the range of less than 100 terms, you can still work well with the entire expression. The To table button outputs the expression in a table. The frequency at which the formula is to be developed is also specified. A favorable frequency can be found using the Bode plot.

20 terms for numerator and denominator were selected. The values ​​in the table are weighted at 10e6 rad/s.


Figure 43: ce1 table

As a test, one can first select everything in the table with Select all and plot to compare the curve with the complete curve. This is the red curve.


Figure 44: ce1 table and plot

If this curve looks good, you can only select the values ​​with the large values ​​and then plot them. For the green curve, 1 term in the numerator and three terms in the denominator were chosen. This fits quite well around the chosen frequency of 10e6 rad/s and also includes the pole at around 100e6 rad/s.


Figure 45: Tabel formula dialog

From this, the formula is now displayed via To Formula.


Figure 46: Formula straight from the table

The first formula (Fig. 46) is still not reduced and with conductances ​​for the resistors.


Figure 47: After simplify

The second formula (Fig. 47) is simplified with Simplify.


Figure 48: After toR

The third formula (Fig. 48) is given by toR with impedances and is also simplified.

From the formula one sees that the gain at 10e6 rad/s is mainly determined by -(RC * gm$Q1) and the pole at 100e6 rad/s by CBC$Q1 * RC.

In this case, you can also output the exact formula. However, this becomes large even with this small circuit.

16.2 Input impedance / output impedance common emitter amplifier


Figure 49: Common emitter amplifier

The analysis components Zin and Zout are already included in the circuit for determining the input and output resistance.

Analysis components are usually in a neutral state where the circuit is not affected. If they are used for analysis, the circuit will be adjusted accordingly.


Figure 50: ZIN neutral state

The ZIN component in the neutral state.


Figure 51: ZIN active state

The ZIN component in the active state.


Figure 52: Analysis Zin dialog

The selection of the ZIN component in the analysis dialog.


Figure 53: Zin and Zout plot

The Bode plot for the input resistance Zin and the output resistance Zout.

In the following the frequency 10e3 rad/s is selected for the formula.

A formula table is generated at 10e3 rad/s and the largest term in the numerator and denominator is selected from the table. The formula is formed from this and converted into impedances (toR). This gives the following formulas.


Figure 54: Simplest Zin and Zout formulas

This is of course only the simplest approximation, but fits very well in the mid frequency range.

16.2.1 Differential amplifier


Figure 55: Differential amplifier

The circuit is not completely symmetrical. RC1 and RC2 are slightly different and so are CBC$Q1 and CBC$Q2. This is particularly noticeable in the common mode gain.

First, the differential gain is examined. With an Analyse Vin-Vout | Set Value | Plot Bode the exact differential gain is plotted.


Figure 56: Exact differential gain

This is fairly flat in the middle frequency response. To develop a formula, the weighted table is created at 100e3 rad/s.


Figure 57: Differential gain at 100e3 rad/s.


Figure 58: Approximate differential gain at 100e3 rad/s

For a simple formula, two terms each in the numerator and denominator are selected and output as a formula. With toR this formula is simplified. The value fits well for the middle frequency range.


Figure 59: Circuit in common mode (CM).

For common mode gain, the connection is changed to CM. See red circle. CM is a net label, i.e. CM at Vin and CM on the right are connected. This means that Vin is routed equally to both inputs. The rest of the values ​​remain unchanged.


Figure 60: Exact common mode gain

With an Analyse Vin-Vout | Set Value | Plot Bode the exact common mode gain is plotted (1: cm blue).

Ideally, the common mode gain should be very small. Here it is already quite large due to small asymmetries (RC, CBC). At 20e6 rad/s it goes close to 0.8.

For 100e3 rad/s and 20e6 rad/s the weighted tables are created and terms are selected. The selected terms are checked in the Bode plot. In Figure 60, the red curve is for the 100e3 rad/s selection and the green curve for the 20e6 rad/s selection in the tables.


Figure 61: Weighted table at 100e3 rad/s.


Figure 62: Weighted table at 20e6 rad/s.

This gives the following two approximate formulas.


Figure 63: Simple approximate formula at 100e3 rad/s.


Figure 64: Approximate formula at 20e6 rad/s.

If you take a closer look, you can see that the common mode amplification is 0 for a symmetrical circuit according to the formulas. In a real circuit, there are of course always small asymmetries.

16.3 Extra Element Theorem (EET) & Co

There are a number of analysis methods in which modified circuits are generated from a circuit and simpler analysis are used from them. The overall result is then formed from the simpler partial results.

One of them is the Extra Element Theorem (EET) [MidEET], [Vorp], [BassoLin]. Sylina supports the analysis with the EET (still very simple implemented in the prototype).


Figure 65: EET circuit

This is the circuit to be examined. C1 is the extra element.


Figure 66: H0 dialog

To determine H0, capacitor C1 is removed.

This is done by entering C1 in the Open field.

Then the transfer-function from Vin to Vout is determined.


Figure 67: H0 formula

The table and formula for H0.


Figure 68: Zd dialog

For the determination of Zd, C1 is left removed and the resistance across C1 is determined. The component Zc1 is used for this.


Figure 69: Zd table

The table and formula for Zd. Zd is 0.


Figure 70: Zn dialog

The analysis dialog for the determination of Zn. C1 and Vin are removed. Vin must be removed because a voltage source will be shorted if not used directly in the analysis. A nullor is placed across the input Vin and the output Vout for the null double injection.


Figure 71: Zn null double injection NDI by nullor

Here you can see that C1 and Vin are removed and the Nullor is connected. The output is nulled and the corresponding voltage/current is injected at the input by the norator. The resistance is determined via C1 with Zc1. Current is injected through Zc1 as a second source.


Figure 72: Zn table

The table and formula for Zn.

The complete transfer-function according the EET is calculated as follows:

$$ H(s) = \frac{Vout}{Vin} = H0 \cdot \frac{1 + \frac{Zn}{ZC_1}}{1 + \frac{Zd}{ZC_1}}  $$

mit $$ Zd = 0 $$ und $$ ZC_1 = \frac{1}{s \cdot C_1} $$

$$ H(s) = H0 \cdot (1 + s \cdot C_1 \cdot Zn) $$

$$ H(s) = \frac{(-R2-R3)}{R1} \cdot (1 + s \cdot C_1 \cdot \frac{R2 \cdot  R3}{R2 + R3}) = \frac{-1}{R1} \cdot (R2 + R3 + s \cdot C_1 \cdot R2 \cdot R3 ) $$

The following formulas in Fig. 73 are from the direct determination of the transfer-function with Sylina. As you can see, the results agree.


Figure 73: Transfer-function determined directly

16.4 Active filter


Figure 74: Active filter

The circuit is a state variable filter. It has low pass (LP), band pass (BP) and high pass (HP) outputs.


Figure 75: Bode plot

The three transfer-functions for LP, BP and HP in the Bode plot.


Figure 76: Pole-Zero plot

The pole-zero plot for the bandpass.

At 100 rad/s the formula tables and from them the formulas for the LP, BP and HP are formed.


Figure 77: Low pass formula


Figure 78: Highpass formula


Figure 79: Bandpass formula

Note the minus signs in the numerator and denominator [18].

16.5 Feedback analysis GFT

See Middlebrook GFT for details.

With the GFT component the subexpressions $$ H_{inf}, T_{vfwd}, T_{ifwd}, T_{vrev}, T_{irev}, T_{nvfwd}, T_{nifwd}, T_{nvrev} $$ and $$ T_{nirev} $$ can be determined.


Figure 80: Simple feedback circuit

In the circuit above, GFT1 is at an ideal injection point just after a controlled voltage source. There is only one loop and also no signal path from output to input in the main branch via E2 to E1. The Tvfwd method is therefore sufficient to determine the loop gain. A voltage is injected in between X and W, and the returned voltage between W and Y is measured. Vin has 0V.


Figure 81: GFT Tvfwd dialog

The component GFT1 and the method Tvfwd are selected in the analysis dialog. Then Analyze and Set Values are pressed.


Figure 82: Plot dialog

The values ​​for the Bode plot are set in the Plot Bode/PZ tab.


Figure 83: GFT Tvfwd Bode plot

And with a click on Bode, the Bode plot is drawn.


Figure 84: GFT Tvfwd Nyquist plot

Clicking on Nyquist displays the Nyquist plot.

The circuit has a phase margin of 15 degrees. I.e. it will oscillate lightly. There is a pole at about 100e3 and 1e6 rad/s through R1,C1 and R2,C2. C3 provides a zero at about 100e6 rad/s and a pole at 1e9 rad/s.


Figure 85: GFT Tvfwd formula

16.6 Feedback analysis return ratio (RR)

The same circuit is analysed with RR as before with the GFT.


Figure 86: Simple feedback circuit


Figure 87: Vin Vout analysis

First a normal transfer-function is derived, here Vin to Vout.


Figure 88: Formula table dialog

The transfer-function is created in a table with To table.


Figure 89: RR formula from table

All entries in the table are selected first. The values ​​for the RR analysis are set in the RR tab in the table menu.

For a complete RR, the active elements E1 and E2 are entered in Den zero.

The formula is then created by clicking on Formula.


Figure 90: RR formula with -1 term at the end

The formula is first created as $$ rr := F - 1 $$ with the return difference F. This is because you may want to continue working with F.

If one is only interested in RR the formula has to be simplified with simplify or toR.


Figure 91: RR formula after several simplifications and toR

This is the same formula developed by GFT Tvfwd. In general, both methods do not give the same solution. This is the case here because the circuit is so simple, has an ideal injection point, and there is only one loop. Bode Plot and Nyuist Plot are of course the same as in the GFT example.

16.7 Colpitts oscillator

A loop gain analysis with GFT and RR is performed with a Colpitts oscillator.


Figure 92: Colpitts oscillator circuit

Since a transfer-function is required for RR, the current source Iin is included. It is important that such a source does not affect the circuit when it is inactive. A current source is open when inactive.


Figure 93: Colpitts transfer-function Vout/Iin

The Bode plot of the transfer-function Vout / Iin.


Figure 94: Colpitts RR dialog

The values ​​for the RR analysis.

The active element J1 must be entered in the Den zero field.


Figure 95: Colpitts RR and GFT Tvfwd Bode plot

The Bode plot of the RR analysis in blue.

Another Tvfwd analysis of GFT1 is shown in red.

The curves are almost identical up to 100e6 rad/s.

The reason is that we have almost a single loop and an ideal injection point for GFT1.

This is only disturbed at higher frequencies by the parasitic capacitances in J1.


Figure 96: Colpitts RR and GFT Tvfwd Nyquist plot

The Nyquist plot for the RR and Tvfwd.

The curve is angular because only a few points are calculated and these are simply connected.

The critical point at -1 is encircled and the circuit is unstable.

However, this is desirable for an oscillator.

16.8 Transformer

Only the linear behavior of transformers is analysed.


Figure 97: Circuit with ideal transformer

An ideal transformer T1 with two serial resistors Rs1 and Rs2 and a load RL.


Figure 98: Parameters for the ideal transformer

The ideal transformer T1 has a 1:10 ratio from primary to secondary.


Figure 99: Model for the ideal transformer

The small signal model for the ideal transformer. The primary voltage is transformed 1:n to the secondary side. The current with 1 : 1/n.


Figure 100: Bode plot for the ideal transformer

The transfer-function from Vin to Vout in blue and the input resistance zin in red.


Figure 101: tfid formula

The transfer-function Vin to Vout. Rs1 forms a voltage divider together with the transformed impedance from the output. This only achieves a transfer factor of approx. 9.


Figure 102: zinid formula

The resistances on the secondary side are transformed with 1/n2 to the primary side and appear there with 10.01 ohms.

Now the transformer T1 is replaced by the model t2wa.


Figure 103: t2wa model

The t2wa model has a main inductance Lp and a leakage inductance Ls and an ideal transformer.


Figure 104: Parameters for the transformer model t2wa

The parameters for the transformer T1 with the model t2wa.


Figure 105: tf1 Bode

The Bode plot of the transfer-function Vin to Vout with the transformer model t2wa.

The transfer-function is now clearly frequency dependent.


Figure 106: tf1 approx

An approximate formula at 10e3 rad/s. No difference to the complete solution can be seen in the Bode plot.


Figure 107: zin1 Bode

The Bode plot for zin with the model t2wa for T1. The complete solution in blue and an approximate solution in red.


Figure 108: zin1 approx

A formula for an approximate solution at 10e3 rad/s. No difference to the complete solution can be seen in the Bode plot.

17 Small signal parameter determination

Sylina does a small signal analysis.

To do this, the circuit is linearized at the operating point and the parameters for the small-signal models used must be set.

Very simple approximations for determining these parameters for a BJT, a MOSFET and a JFET are given below.

See [Thompson], [Tietze/Schenk], [Vladimirescu].

Even if you get specific values ​​for the parameters from the data sheets, curves or SPICE parameters, you should always be aware of the device variation and the dependence of the parameters on the voltages, currents and temperature.


Figure 109: Active region of a transistor

The approximations apply to the active region of ​​the transistors and only to individual transistors. The influence of the substrate on integrated circuits is not taken into account.

The circuit is at the desired operating point and, in particular, the collector current or drain current of the transistor is known.

17.1 Small signal models

The parameters are determined for the following small-signal models.

17.1.1 BJT


Figure 110: NPN BJT small signal model

Formula for IC

$$ I_C = I_S e^{\frac{V_{BE}}{V_T}} ( 1 + \frac{V_{CE}}{V_A} ) $$

$$ V_{CE} &gt; V_{BE}$$

17.1.2 MOSFET


Figure 111: NMOSFET small signal model

Formula for ID in the active region

$$ I_D = \frac{K}{2} (V_{GS} - V_{th})^2 (1+\frac{V_{DS}}{V_A})  $$

$$ V_{GS} &gt;= V_{th} $$

$$ V_{DS} &gt;= V_{GS} - V_{th} $$

$$ V_A = \frac{1}{\lambda}$$

17.1.3 JFET


Figure 112: JNFET small signal model

Formula for ID in the active region

$$ I_D = Beta (V_{GS} - V_{th})^2 (1+\frac{V_{DS}}{V_A})  $$

$$ V_{GS} &gt;= V_{th} $$

$$ V_{DS} &gt;= V_{GS} - V_{th} $$

$$ V_A = \frac{1}{\lambda}$$

17.2 Determination based on experience

At the beginning of a circuit design, there are often no special components and therefore no data sheets or SPICE models.

In this case one will often use typical values. It is reasonable to differentiate between small signal transistors and power transistors.

In the further course of the design, these values ​​are refined and special types are selected.

17.2.1 BJT, typical values

Parameter Small signal transistor Power transistor
Ic 1 mA 1 A
gm 0.038 S 38 S
beta 100..400 50..200
VBE 0.7 V 0.7..1 V
RBE 5 kOhm 5 Ohm
Rx 20..500 Ohm 0.1..50 Ohm
CBE 20 pF 20 nF
CBC 2 pF 2 nF
Ro 100 kOhm 100 kOhm

17.2.2 MOSFET, typical values

parameter Small signal transistor Power transistor
Id 10 mA 1 A
gm 0.05 S 2 S
CGD 4 pF 200 pF
CGS 20 pF 2000 pF
RDS 50 kOhm 50 kOhm

For small Id currents note the subthreshold effect.

17.2.3 JFET, typical values

Parameter Small signal transistor
Id 1 mA
gm 0.005
CGD 2 pF
CGS 4 pF
RDS 50 kOhm

17.3 Determination with a data sheet

17.3.1 BJT data sheet

Model   From the  
parameter Determination Data sheet Notes
gm $$ g_m = \frac{  I_C  }{k T / q} = \frac{    I_C  }{V_T} \hspace{20mm} $$   $$ V_T \approx 26 mV $$. $$I_C$$ is the desired current in the operating point.
RBE $$ r_{BE} = \frac{V_{BE}}{I_B} = \frac{\beta}{g_m} $$ $$\beta$$ or $$h_{fe}$$ $$\beta$$, $$h_{fe}$$ is the small-signal current gain with large device variation
Ro $$ r_o \approx \frac{V_A}{I_C} $$ $$V_A$$ $$ V_A $$ is Early voltage
Rx 1. estimate   20..500 Ohm
  2. $$ R_x \approx \frac{\tau_{CB}}{C_{BC}} $$ $$\tau_{CB}$$ Collector base time constant $$\tau_{CB}$$ if given in the data sheet.
  $$C_{BC} \approx C_{obo}$$ $$C_{obo}$$  
CBC $$ C_{BC} \approx C_{obo}  $$ $$C_{obo}$$ For Cobo there is often a curve with values ​​over the reverse voltage VBC.
CBE $$ C_{BE} \approx \frac{g_m}{2 \pi f_T} - C_{obo}  $$ $$C_{obo}, f_T$$ The pn junction BE is in the forward direction. As a result, the value of Cibo does not fit well.
      and there is also the diffusion capacity. Therefore, CBE is determined via fT.

17.3.2 MOSFET data sheet

Model   From the  
parameter Determination Data sheet Notes
gm 1. $$  g_m = \frac{2 I_D}{V_{GS} - V_{th}} $$ $$V_{th}$$ $$I_D$$ is the desired current at the operating point
      $$V_{th}$$ has large device variation
  2. $$ g_m = \frac{\Delta I_D}{ \Delta V_{GS} } = \frac{I_{D2} - I_{D1}}{V_{GS2} - V_{GS1}}$$ Curves $$I_D(V_{GS})$$  
RDS 1. read from curves    
  2. estimate    
CGD $$ C_{GD} \approx C_{rss}  $$ $$C_{rss}$$ large device variation
CGS $$ C_{GS} \approx C_{iss} - C_{rss} $$ $$C_{rss}, \ C_{iss}$$ large device variation

17.3.3 JFET data sheet

Model   From the  
parameter Determination Data sheet Notes
gm $$ g_m = \frac{2 }{V_{th}} \sqrt{I_{DSS} I_D }  $$ $$V_{th},\  I_{DSS}$$ $$I_D$$ is the desired current at the operating point
      $$I_{DSS}$$ is $$I_D$$ with $$V_{GS}=0$$
      $$V_{th}$$ has large device variation
RDS 1. read from curve    
  2. estimate    
CGD $$ C_{GD} \approx C_{rss}  $$ $$C_{rss}$$ large device variation
CGS $$ C_{GS} \approx C_{iss} - C_{rss} $$ $$C_{rss}, \ C_{iss}$$ large device variation

17.4 Determination with SPICE models

If SPICE models exist, it is better to run an .OP simulation and read the model parameters from it. The non-linearities are then taken into account. See OP-simulation.

The approximate formulas given are imprecise, especially for the capacitances.

17.4.1 BJT SPICE

Model   SPICE-  
parameter Determination Parameter Notes
gm $$ g_m = \frac{  I_C  }{k T / q} = \frac{    I_C  }{V_T} \hspace{20mm} $$   $$ V_T \approx 26 mV $$. $$I_C$$ is the desired current at the operating point.
RBE $$ r_{BE} = \frac{V_{BE}}{I_B} = \frac{BF}{g_m} $$ BF BF is the current gain.
Rx Rx = RB RB  
Ro $$ r_o \approx \frac{VAF}{I_C} $$ VAF VAF is Early voltage.
CBC $$ CBC = \frac{CJC}{ (1 - \frac{V_{BC}}{ VJC})^{MJC}  }  $$ CJC, VJC, MJC $$ V_{BC} &lt; \frac{VJC}{2} $$, smaller with larger $$V_{BC}$$.
      Reverse pn-junction.
      VJC=0.75, MJC=1/3
CBE 1. From simulation or data sheet    
  2. $$ CBE = CB + \frac{CJE}{ (1 - \frac{V_{BE}}{ VJE})^{MJE}  }  $$ CJE, VJE, MJE $$ V_{BE} &lt; \frac{VJE}{2} $$, smaller with larger $$V_{BE}$$.
  $$CB = TF * gm$$ TF Forward pn-junction.
      CB is the difffusion capacitor.
      VJE=0.75, MJE=1/3


Model   SPICE  
parameter Determination Parameter Notes
gm $$gm = \sqrt{2 K_p \frac{W}{L} I_D}$$ KP, VTO If W,L are not given then $$\frac{W}{L} = 1$$
RDS $$RDS = \frac{1}{LAMBDA * I_D}$$ LAMBDA  
CGD CGD = CGDO * W CGDO Default W=100e-6 with LTspice. see .OPTIONS defw
CGS CGS = CGSO * W CGSO Default W=100e-6 with LTspice. see .OPTIONS defw


Model   SPICE  
parameter Determination Parameter Notes
gm $$ 2 \sqrt{BETA * I_D} $$ BETA  
RDS $$RDS = \frac{1}{LAMBDA * I_D}$$ LAMBDA  
CGD $$ CGD = \frac{Cgd} { (1 - V_{GD})^\frac{1}{2} }  $$ Cgd reverse pn-junction
CGS $$ CGS = \frac{Cgs} { (1 - V_{GS})^\frac{1}{2} }  $$ Cgs reverse pn-junction

17.5 Small signal parameters from a SPICE simulation

With an .OP simulation, the small-signal parameters can be determined by simulation. This takes the non-linearities into account.

17.5.1 ngspice

In the following you can see the call of ngspice with an OP analysis and the output of the values ​​for the diode d1. For detailed output see appendix Determining the operating point with Spice.

1: $: ngspice
2: $: ...
3: $: ngspice 15 -> source diode1.net
4: $: ...
5: $: ngspice 16 -> op
6: $: ...
7: $: ngspice 17 -> show d1
8: $: ...

17.5.2 LTspice

An OP analysis must be performed in LTspice. The result is then in the error log (View | SPICE Error Log).


Figure 113: LTspice OP analysis

17.5.3 Summary parameters with Sylina, ngspice and LTspice

In the table, the Sylina model parameters are compared with ngspice and LTspice OP values.

Table 12: Small signal parameters
Model/Parameter Sylina ngspice LTspice
Diode R 1/gd Req
  C cd CAP
NPN, PNP gm gm Gm
  RBE 1/gpi Rpi
  CBE cpi Cbe
  CBC cmu Cbc
  beta gm/gpi BetaAC
  Rx 1/gx Rx
  Ro 1/go Ro
  Re 1/gm 1/Gm
NMOS, PMOS gm gm Gm
  RDS 1/gds 1/Gds
  CGS cgs Cgsov
  CGD cgd Cgdov
JFET gm gm Gm
  RDS 1/gds 1/Gds
(M=1/2, PB=1) CGS $$ \approx \frac{cgs}{(1-\frac{vgs}{PB})^{M}} $$ Cgs
  CGD $$ \approx \frac{cgd}{(1-\frac{vgd}{PB})^{M}} $$ Cgd

For detailed examples see appendix Determining the operating point with Spice.

18 What's coming in the release

  1. Better layout. More modern, lighter.
  2. Improved formula operations.
  3. Cursors for plots.
  4. Copy curves between diagrams.
  5. SPICE for determining the working point.
  6. Better subst for formulas.
  7. Editor for small signal models.
  8. Export to CAS (maxima, sympy,…).
  9. Export/import of netlists for SPICE.
  10. Weighted table for RR.
  11. Weighted table of formulas.
  12. Step and impulse response, numerical as a plot.
  13. root loci.
  14. Graphic elements in the circuit diagram (lines, circles,…).
  15. hierarchical schematics.

19 Appendix

19.1 Table of small signal models

Table 13: Small signal model
Component Model Method Description
Diode dr   simply a R
Diode drc   R and C
GFT GFT Hinf see Middlebrook
GFT GFT Tifwd  
GFT GFT Tirev  
GFT GFT Tnifwd  
GFT GFT Tnirev  
GFT GFT Tnvfwd  
GFT GFT Tnvrev  
GFT GFT Tvfwd  
GFT GFT Tvrev  
JNFET jnfet1   JNFET with Rpi, Cpi, Cu, gm, Ro
NMOS nmos1   NMOS with Rpi, Cpi, Cu, gm, Ro
PMOS pmos1   PMOS with Rpi, Cpi, Cu, gm, Ro
NPN npnvi   Voltage controlled with Rpi, Cpi, Cu, gm
NPN npnvi2   Current controlled with extra Rx und Ro
NPN npnt1   T-Modell with beta, RE
NPN npnii3   Current controlled Rpi, beta, Ro
NPN npnii4   Current controlled with beta
PNP pnpvi   Voltage controlled with Rpi, Cpi, Cu, gm
PNP pnpvi2   Voltage controlled with extra Rx und Ro
PNP pnpt1   T-Modell with beta, RE
PNP pnpii3   Current controlled Rpi, beta, Ro
PNP pnpii4   Current controlled with beta
OPAMP opvid   Ideal Opamp
OPAMP opvg   Opamp with gain
OPAMP opvgr   Opamp with gain and input and output resistance
OPAMP opvlp1rc   Opamp with a low pass from R,C
OPAMP opvlp2rc   Opamp with two low passes from R,C
OPAMP opvslp1   Opamp with a low pass as formula
OPAMP opvslp2   Opamp with two low passes as formula
TRAFO t2id   Ideal transformer with 2 windings
TRAFO t2wa   Transformer with leakage and main inductance, n
TRAFO t2wb   Transformer with L1, L2, M
TRAFO t2wc   Transformer with L1, L2, k
T3W t3id   Ideal transformer with 3 windings
T3W t3wa   With leakage and main inductance, n2, n3
T3W t3wb   With L1,L2,L3,M12,M13,M23
T3W t3wc   With L1, L2, L3, k12, k13, k23
TIAN TIAN Delta See Tian
ZIN ZIN   Input impedance with Z = V/I

19.2 Operating point determination with Spice

1: diode1.net
2: V1 N001 0 5
3: R1 N002 N001 4k
4: D1 N002 0 diode1
5: .op
6: .model diode1 D(IS=2.5n RS=.5 N=1.752 CJO=4p)
7: .end
 1: ngspice 15 -> source diode1.net
 3: Circuit: * diode1.net
 5: ngspice 16 -> op
 6: Doing analysis at TEMP = 27.000000 and TNOM = 27.000000
 8: No. of Data Rows : 1
 9: ngspice 17 -> show d1
10:  Diode: Junction Diode model
11:      device                    d1
12:       model                diode1
13:     thermal                     0
14: 	 vd              0.588959
15: 	 id            0.00110262
16: 	 gd             0.0243323
17: 	 cd           6.16009e-12
1: Circuit: * diode1.net
3: 			--- Diodes ---
4: Name:      d1
5: Model:   diode1
6: Id:      1.10e-03
7: Vd:      5.90e-01
8: Req:     4.11e+01
9: CAP:     6.16e-12
 1: bjt1.net
 2: R1 N001 N003 27k
 3: R2 N003 0 10k
 4: RC N001 out 1k
 5: RE N004 0 220
 6: Q1 out N003 N004 0 BJT1
 7: V1 N001 0 5
 8: V2 N002 0 AC 1
 9: C1 N003 N002 10u
10: .op
11: .MODEL BJT1 NPN (IS=1e-14 VAF=100 BF=200 CJC=8e-12 CJE=12e-12 RB=10 RC=0.3 RE=0.2)
12: .end
 1: ngspice 18 -> source bjt1.net
 3: Circuit: * bjt1.net
 5: ngspice 19 -> op
 6: Doing analysis at TEMP = 27.000000 and TNOM = 27.000000
 8: No. of Data Rows : 1
 9: ngspice 20 -> show q1
10:  BJT: Bipolar Junction Transistor
11:      device                    q1
12:       model                  bjt1
13: 	 ic            0.00260947
14: 	 ib           1.29012e-05
15: 	 ie           -0.00262237
16: 	vbe              0.679635
17: 	vbc              -1.13268
18: 	 gm              0.100863
19: 	gpi           0.000498792
20: 	gmu                 1e-12
21: 	 gx                   0.1
22: 	 go           2.58024e-05
23: 	cpi           1.91279e-11
24: 	cmu           5.90451e-12
25: 	cbx                     0
26:        csub                     0
 1: Circuit: * bjt1.net
 2: 			--- Bipolar Transistors ---
 3: Name:       q1
 4: Model:     bjt1
 5: Ib:       1.29e-05
 6: Ic:       2.61e-03
 7: Vbe:      6.80e-01
 8: Vbc:     -1.13e+00
 9: Vce:      1.81e+00
10: BetaDC:   2.02e+02
11: Gm:       1.01e-01
12: Rpi:      2.00e+03
13: Rx:       1.00e+01
14: Ro:       3.88e+04
15: Cbe:      1.91e-11
16: Cbc:      5.90e-12
17: Cjs:      0.00e+00
18: BetaAC:   2.02e+02
19: Cbx:      0.00e+00
20: Ft:       6.41e+08
 1: jnfet1.net
 2: J1 out N003 N004 jnfet1
 3: V1 N001 0 12
 4: V2 N002 0 AC 1
 5: RL N001 out 2.2k
 6: Rs N004 0 220
 7: Rg N003 0 1Mega
 8: C1 N003 N002 1u
 9: .op
10: .MODEL jnfet1 NJF(IS=0.25p VTO=-1.5 BETA=3.0m RD=10 RS=10 CGS=4p CGD=4p)
11: .end
 1: ngspice 18 -> source jnfet1.net
 3: Circuit: * jnfet1.net
 5: ngspice 19 -> op
 6: Doing analysis at TEMP = 27.000000 and TNOM = 27.000000
 8: No. of Data Rows : 1
 9: ngspice 20 -> show j1
10:  JFET: Junction Field effect transistor
11:      device                    j1
12:       model                jnfet1
13: 	vgs             -0.581767
14: 	vgd               -6.4099
15: 	 ig          -7.49163e-12
16: 	 id            0.00252945
17: 	 is           -0.00252945
18: 	igd           -6.6599e-12
19: 	 gm             0.0055094
20: 	gds                     0
21: 	ggs           1.00015e-12
22: 	ggd                 1e-12
 1: Circuit: * jnfet1.net
 2: 			--- JFET Transistors ---
 3: Name:      j1
 4: Model:   jnfet1
 5: Id:      2.53e-03
 6: Vgs:    -5.56e-01
 7: Vds:     5.88e+00
 8: Gm:      5.51e-03
 9: Gds:     0.00e+00
10: Cgs:     3.18e-12
11: Cgd:     1.47e-12

20 Bibliography

  1. Manfred Albach, Induktivitäten in der Leistungselektronik, Springer Vieweg, 2017
  2. Christophe P. Basso, Linear Circuit Transfer Functions, Wiley, 2016
  3. Hendrik W. Bode, Network Analysis and Feedback Amplifier Design, van Nostrand, 1945
  4. Robert Fox, http://www.fox.ece.ufl.edu/Multiple-Loop_Feedback.html, 2014
  5. LTspice®, www.analog.com
  6. R. D. Middlebrook, Measurement of loop gain in feedback systems, International Journal of Electronics (volume 38, no. 4, 485-512), 1975
  7. R.D. Middlebrook, EET Chapter 8, 12, https://web.archive.org/web/20160401041428/http://ardem.com/D_OA_Rules&Tools/index.asp
  8. R. D. Middlebrook, GFT Chapter 13, https://web.archive.org/web/20160401041428/http://ardem.com/D_OA_Rules&Tools/index.asp
  9. R. D. Middlebrook, The GFT: A Final Solution for Design-Oriented Feedback Analysis, Ardem DVD, 2013
  10. R. D. Middlebrook, Technical Therapy for Analog Circuit Designers, Ardem DVD, 2013
  11. ngspice, http://ngspice.sourceforge.net/
  12. Marc Thompson, Intuitive Analog Circuit Design, Newnes, 2014, 2nd edition
  13. M. Tian, V. Visvanathan, J. Hantgan, K. Kundert Striving for Small-Signal Stability, Circuits & Devices, 2001
  14. U. Tietze, Ch. Schenk Halbleiter-Schaltungstechnik, Springer, 2010, 13. Aufl.
  15. A. Vladimirescu, THE SPICE BOOK, Wiley, 1994
  16. Vatché Vorperian, Fast analytical techniques for electrical and electronic circuits, Cambridge University Press, 2002

    Last Change 2022-04-29