# What you should know about simulation

Back to Simulation

The user interface/dialogs of the simulator are designed as wizards with direct graphical assistance. The meaning of the different input parameters are graphically visualized. The tutorial is intended as an introduction, the handling is demonstrated, but it provides also a good overview. The appendix contains sources of literature and a list of the simulator error messages.

## What is numeric simulation?

A simulation allows the stating of the behaviour of a physical system by the use of another, reduced, simpler physical system or by a mathematic model. An example for the first case is a model of an airplane in a wind channel. in the second case you need pen and paper and knowledge of mathematics, physics, electronics. A computer and suitable software at least automatizes and accelerates this process.

The appendix "numeric" means that the results are numbers. An example for a not numeric calculation:

A battery with a constant voltage Ubat is stressed with a resistor Rx. Which current flows through the resistor? An electronician would get the following result by the use of pen and paper: "I=Ubat/Rx" (Current equals Voltage Ubat divided by value of resistance Rx) The result is not a number but a formula. But it is general and exact.

There are simulators which generate such formulas/equations (so called "symbolic calculation"). Those calculations can't be done always, because often completed mathematic solutions do not yet exist.

In a pure numeric simulation the intermediat resp. end-results are always numbers, not general results. Therefore a simulation has to be repeated from the beginning, if parameters or circumstances change. The above mentioned electronician needn't rework the complete formula - he just needs to insert a new value for the resistance. Another disadvantage of numeric simulation is the fact that often approximation procedures are used. It might happen that they don't deliver a result (convergency problems) which leads to the breakdown of a simulation if a relative error of a certain maximum can not be guaranteed.

## What shall be calculated/analyzed?

The different calculation targets are named "analyses" while the calculation result in general each has a different form. In the transient-analysis values (mostly voltages and currents) are monitored over time (e.g. [0, 1V] [1s, 2V] [1.5s, 0.7V] ... ). The AC-analysis generates a frequency-sequence e.g. [0, 2V] [10Hz, 1.9V] [5KHz, 0.3V] ... ). In an experimental AC anylysis the respective frequecies of the board's generators must be raised step by step having the same amplitude, while the measured values can be taken only after a certain settling time.

## What is a SPICE-model?

A mathematic model in general is a well defined mathematic description of a real system, but for the TARGET 3001!-simulator additionally the model type must be implemented in the simulator and the syntax must match.

Model types implemented in the simulator: Any simulator owns an ending number of basic elements which can vary (parametrized) or which can constructively be combined. In SPICE the basic elements are general models for resistor, diode, transistor etc. Those general models own some parameters to make a defined model out of the general model.

Example: Transistor BC140 The bipolar transistor is implemented as a so called Gummel-Poon model. The ideal maximum forward current amplification is defined as parameter BF. This general model becomes a BC140-model, if parameter BF and some others achieve a certain value.

The basic elements we are talking about can also be combined to a macro, if the modelling with only one of the basic elements is not possible. Those macros are called subcircuits, i.e. a circuitry of basic elements gets available as a model (Black Box). For example: a bridge rectifier model which is modelled of four diodes in the way they are commonly connected to each other. It is possible to build a model from exotic (mechanic) device like a motor, just by the use of those basic elements.

Syntax of the models: The simulator needs to understand the format of the model description. The following example can be read by any human being but not for the TARGET 3001! simulator:

```MODEL BIPOLARTRANSISTOR NPN
NAME=BC140
BF=230
END
```

The models must be in SPICE-Format (SPICE3F5 or PSPICE). This format has been created for one of the first programs (Berkeley SPICE) for the simulation of electronic circuits.

Example: Bipolartransistor modelcard: .MODEL BC140 NPN(BF=230)

A modelcard for a certain model type contains the parameters needed together with the desired values. The models component manufactures offer in the web are mostly formatted in SPICE3F5 or PSPICE. Those models are offered as textfiles. (.TXT, .SUB, .MOD, .LIB). But TARGET 3001! can search for SPICE models within binary files.

## How are the models integrated into TARGET 3001!

The minimal form of a component in TARGET 3001! is a symbol made of some lines, circles etc. and a connection. New individual symbols can be created at any time and saved to libraries. TARGET 3001! didn't have a simulator from the beginning. This is why not all components have a simulation model. The TARGET 3001! components steadily get upgraded by more and more models. A simulation model must be added to a symbol after the drawing but this has to be done only once. All model information are stored together with the symbol in the library (.SYM3001) or become part of the project after insertion of the symbol. (.T3001) No files cumbrously have to be added as it is to be done in other programs (.Lib etc.)

A model import is easy though some steps have to be done. Most of it is automized:

The models within a file can be searched, a list of models found appears. Now the user has to choose the appropriate one while the model name and comments within the model are helpful.The implementation (th import) of a model later follows automatically on buton click, except the pin assignment. The pin assignment so to speak solders the pins from the package to the nodes of the model. There is a dialog for this action.

E. g. you draw a diode as a symbol made of a triangle, two lines and two connections, each having a pin number (1, 2). As a model a diode-modelcard is chosen, which has anode and cathode as nodes. Pinnumbers 1 and 2 must be assigned to the nodes. Now you must do this assignment otherwise TARGET 3001! automatically would have to understand/to analyze your drawing (symbol). Artificial intelligence would be needed...

A model needs one or more models - in better words "instances". That means in the component is stored the information: „here shall the basic model of a diode be used having the pin assignment A=1 K=2 and having the parameters of the diode-modelcard named 1N4001".

A modelcard is not a single property of a component but it is assigned a project or a library so that other components can use it (e.g. you have two diodes 1N4001 in the schematic). Those global modelcards and the subcircuits too can be called "classes".

Some components (resp. the model) are not yet completely parametrized, this would be uneconomic. In fact it is desirable to design the model of diode 1N4001 immediately working, but not thousands of battry device (1V, 2V, ..., 12V etc). The off-load voltage of a battery must be entered in the schematic. Sure you can adjust the parameters of all diodes 1N4001 used in your schematic afterwards (ex post).

## How is a simulation in TARGET 3001! done?

Draw the circuit in the schematic while you import components to the schematic which have the option "only with model". Some model parameters have to be added as mentioned above. There are vitual, ideal components (controled sources) which are used for the control,modelling of subcitcuits. Those components are to be found in library Simulation.SYM, besides the"Standard.SYM3001"

Now the main dialog of the simulation is opened. Two questions must be answered:

1. How shall the results come out? This means which kind of analysis shall be done. The most common one is the transient analysis. It shows curve progressions (voltage or current) over the time from 0s up to a well defined point of time.

2. Which results shall be saved? The simulator saves all voltages, currents through sources, etc., if not a certain order (PROBE) is given. But you can select only some voltages, currents or digital signals in the schematic at a time for avoiding the slow down of the simulator caused by saving.

A level needn't to be set in general. It is needed only if a component has an assortment of models to choose from. Normally the TARGET 3001!- components have only one model assigned.

The real work for the TARGET 3001! simulator now begins with the creation of the file Target.cir. This textfile contains a "blueprint" of the schematic including all data relevant for the simulation i.e. a netlist, modelckards, subcircuits and the orders. The mentioned textformat is the far spread SPICE format, which can control other external SPICE-Simulators. The reason why this file is generated is, that the simulator kernel Kern (Sim.Exe) was created as a standalone program (Back-End)while the user does not realize it. TARGET 3001! (as Front-End) does all the work.

The simulation results are displayed ion the TARGET 3001! - postprocessor (oszilloscope) or in the schematic by interactive elements (voltmeter, LEDs, oszis etc.)

The simulator kernel is an evolution of the Berkeley SPICE3F5 (recent version of the worldwide famous and well proven Berkeley SPICE). The simulation on digital level hat mainly to be implemented like in the PSPICE simulation program. The expression "mixed mode" means that simulations on analog and digital level are possible simultaneously. On digital level there are no voltages and no currents but only digital states (Low, High). The basic digital element „NOT" (Inverter) translates a Low/High at the input after a definable delay to the output as High/Low. The interfaces (AD/DA-Inverter) between digital Nodes and analog nodes are automatically built in by the simulator.