diff options
Diffstat (limited to 'Windows/spice/examples/xspice/table/README.table')
-rw-r--r-- | Windows/spice/examples/xspice/table/README.table | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/Windows/spice/examples/xspice/table/README.table b/Windows/spice/examples/xspice/table/README.table new file mode 100644 index 00000000..ca286eec --- /dev/null +++ b/Windows/spice/examples/xspice/table/README.table @@ -0,0 +1,55 @@ +This example/xspice/table directory offers input files, table files as +well as table generators for the ngspice table model. This model is a XSPICE +extension for ngspice. It enables simulation of devices that consist of in/out +data points, i.e. devices where analytical model equations are not available. + +The table model reads a value val from a file. With the 2D table model val +depends on 2 input parameters, i.e. val = f(x,y), with the 3D table on 3 input +parameters, i.e. val = f(x,y,z). Val may be defined as a voltage or as a +current, either single ended or differential. The inputs x, y (, z) may be +voltage inputs (infinite input resistance, single ended or differential) or +current sinks (zero input resistance, single ended or differential). Single +ended denotes: one node given, the other is 0 (ground), differential: both +nodes are to be given. + +For some implementation details, and the format of the 2D or 3D tables, +please have a look at the ngspice manual, chapters 12.2.27 and 12.2.28. + +How to generate these tables? +For simple functional relationships you may do this manually. For example in +the table directory there are the files test~.table containing simple linear +curves. + +You may analyse measured curves and fit their data into the table format. + +If you already have functional models, you may design a table generator. It +runs the models at certain input condition, calculates the output and stores +it with the correct format. Some examples are given here in the +table-generator files. The bsim4 tables have been thus generated already and +are distributed as files bsim4~.table. + +The example input files table-model-bip~.sp require some further user action +because their table is not provided with the distribution due to its large +size. So cd into the table directory and run the following command: +ngspice table-generator-q-2d.sp +The table will be generated, using the built in ngspice bipolar model and model +parameters for a CLC409 bipolar npn transistor. + +Some considerations for using table models +These table models are pure dc models. The input is an ideal open (for voltage) +or short circuit (for current). If your application requires a more complex +input behavior, it may be emulated by additional passive (or active?) devices +added to the table model. Also, if dynamic behavior ir expected, there a no +capacitors in the table model, so again add them externally. The example input +files give some hints: The bipolar table transistor should show a base input +behaviour like a common transistor, so we have added a diode with parameters +optimized to compare well with the analytical model. The MOS transistors at +least require some input capacitance, emulated by some extra capacitors. So +the table models offer a lot of freedome, but require careful considerations +of their environment to become really useful. + +The 2D and 3D table models use linear interpolation to obtain their output +data. This may limit the application to not have a too steep slope. Otherwise +convergence problems may arise. The derivatives (output vs. each input) +required by ngspice are calculated by an approach named eno (essentially non +oscillating) interpolation, that has proven itself to be very robust. |