mirror of
https://github.com/holub/mame
synced 2025-04-25 01:40:16 +03:00
Added more documentation to diode and bjt model. (nw)
This commit is contained in:
parent
3cfe098bb2
commit
fd59a10f92
@ -32,6 +32,58 @@ namespace netlist
|
||||
// nld_Q - Base classes
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
/* FIXME: Make table pretty */
|
||||
|
||||
/*! Class representing the bjt model paramers.
|
||||
* This is the model representation of the bjt model. Typically, SPICE uses
|
||||
* the following parameters. A "Y" in the first column indicates that the
|
||||
* parameter is actually used in netlist.
|
||||
*
|
||||
* |NL? |name |parameter |units|default| example|area |
|
||||
* |:--:|:-----|:--------------------------------|:----|------:|-------:|:----:|
|
||||
* | Y |IS |transport saturation current|A |1E-016|1E-015|* |
|
||||
* | Y |BF |ideal maximum forward beta|- |100|100| |
|
||||
* | Y |NF |forward current emission coefficient|- |1|1| |
|
||||
* | |VAF |forward Early voltage|V |infinite |200| |
|
||||
* | |IKF |corner for forward beta high current roll-off|A |infinite |0.01|* |
|
||||
* | |ISE |B-E leakage saturation current|A |0|0.0000000000001|* |
|
||||
* | |NE |B-E leakage emission coefficient|- |1.5|2| |
|
||||
* | Y |BR |ideal maximum reverse beta |- |1|0.1| |
|
||||
* | Y |NR |reverse current emission coefficient|- |1|1| |
|
||||
* | |VAR |reverse Early voltage|V |infinite |200| |
|
||||
* | |IKR |corner for reverse beta high current roll-off|A |infinite |0.01|* |
|
||||
* | |ISC |leakage saturation current|A |0|8| |
|
||||
* | |NC |leakage emission coefficient|- |2|1.5| |
|
||||
* | |RB |zero bias base resistance| |0|100|* |
|
||||
* | |IRB |current where base resistance falls halfway to its min value|A |infinte |0.1|* |
|
||||
* | |RBM |minimum base resistance at high currents| |RB |10|* |
|
||||
* | |RE |emitter resistance| |0|1|* |
|
||||
* | |RC |collector resistance | |0|10|* |
|
||||
* | |CJE |B-E zero-bias depletion capacitance|F |0|2pF |* |
|
||||
* | |VJE |B-E built-in potential|V |0.75|0.6| |
|
||||
* | |MJE |B-E junction exponential factor |- |0.33|0.33| |
|
||||
* | |TF |ideal forward transit time |sec |0|0.1ns | |
|
||||
* | |XTF|coefficient for bias dependence of TF |- |0| | |
|
||||
* | |VTF |voltage describing VBC dependence of TF |V |infinite | | |
|
||||
* | |ITF |high-current parameter for effect on TF |A |0| |* |
|
||||
* | |PTF |excess phase at freq=1.0/(TF*2PI) Hz |deg |0| | |
|
||||
* | |CJC |B-C zero-bias depletion capacitance |F |0|2pF |* |
|
||||
* | |VJC |B-C built-in potential |V |0.75|0.5| |
|
||||
* | |MJC |B-C junction exponential factor |- |0.33|0.5| |
|
||||
* | |XCJC |fraction of B-C depletion capacitance connected to internal base node |- |1| | |
|
||||
* | |TR |ideal reverse transit time |sec |0|10ns | |
|
||||
* | |CJS |zero-bias collector-substrate capacitance |F |0|2pF |* |
|
||||
* | |VJS |substrate junction built-in potential |V |0.75| | |
|
||||
* | |MJS |substrate junction exponential factor |- |0|0.5| |
|
||||
* | |XTB |forward and reverse beta temperature exponent |- |0| | |
|
||||
* | |EG|energy gap for temperature effect on IS |eV |1.11| | |
|
||||
* | |XTI|temperature exponent for effect on IS |- |3| | |
|
||||
* | |KF |flicker-noise coefficient |- |0| | |
|
||||
* | |AF |flicker-noise exponent |- |1| | |
|
||||
* | |FC |coefficient for forward-bias depletion capacitance formula |- |0.5| | |
|
||||
* | |TNOM |Parameter measurement temperature |C |27|50| |
|
||||
*/
|
||||
|
||||
class bjt_model_t : public param_model_t
|
||||
{
|
||||
public:
|
||||
@ -44,13 +96,14 @@ namespace netlist
|
||||
, m_NR(*this, "NR")
|
||||
{}
|
||||
|
||||
value_t m_IS;
|
||||
value_t m_BF;
|
||||
value_t m_NF;
|
||||
value_t m_BR;
|
||||
value_t m_NR;
|
||||
value_t m_IS; //!< transport saturation current
|
||||
value_t m_BF; //!< ideal maximum forward beta
|
||||
value_t m_NF; //!< forward current emission coefficient
|
||||
value_t m_BR; //!< ideal maximum reverse beta
|
||||
value_t m_NR; //!< reverse current emission coefficient
|
||||
};
|
||||
// Have a common start for transistors
|
||||
|
||||
// Have a common start for transistors
|
||||
|
||||
NETLIB_OBJECT(Q)
|
||||
{
|
||||
|
@ -39,10 +39,10 @@ namespace netlist
|
||||
: param_model_t(device, name, val)
|
||||
, m_TYPE(*this, "TYPE")
|
||||
, m_FPF(*this, "FPF")
|
||||
, m_SLEW(*this, "TYPE")
|
||||
, m_RI(*this, "VLL")
|
||||
, m_RO(*this, "VLL")
|
||||
, m_UGF(*this, "VLL")
|
||||
, m_SLEW(*this, "SLEW")
|
||||
, m_RI(*this, "RI")
|
||||
, m_RO(*this, "RO")
|
||||
, m_UGF(*this, "UGF")
|
||||
, m_VLL(*this, "VLL")
|
||||
, m_VLH(*this, "VLH")
|
||||
, m_DAB(*this, "DAB")
|
||||
|
@ -358,6 +358,31 @@ private:
|
||||
nl_double m_Vcrit;
|
||||
};
|
||||
|
||||
/*! Class representing the diode model paramers.
|
||||
* This is the model representation of the diode model. Typically, SPICE uses
|
||||
* the following parameters. A "Y" in the first column indicates that the
|
||||
* parameter is actually used in netlist.
|
||||
*
|
||||
* |NL? |name |parameter |units|default| example|area |
|
||||
* |:--:|:-----|:--------------------------------|:----|------:|-------:|:----:|
|
||||
* | Y |IS |saturation current |A |1.0e-14| 1.0e-14| * |
|
||||
* | |RS |ohmic resistanc |Ohm | 0| 10| * |
|
||||
* | Y |N |emission coefficient |- | 1| 1| |
|
||||
* | |TT |transit-time |sec | 0| 0.1ns| |
|
||||
* | |CJO |zero-bias junction capacitance |F | 0| 2pF| * |
|
||||
* | |VJ |junction potential |V | 1| 0.6| |
|
||||
* | |M |grading coefficient |- | 0.5| 0.5| |
|
||||
* | |EG |band-gap energy |eV | 1.11| 1.11 Si| |
|
||||
* | |XTI |saturation-current temp.exp |- | 3|3.0 pn. 2.0 Schottky| |
|
||||
* | |KF |flicker noise coefficient |- | 0| | |
|
||||
* | |AF |flicker noise exponent |- | 1| | |
|
||||
* | |FC |coefficient for forward-bias depletion capacitance formula|-|0.5|| |
|
||||
* | |BV |reverse breakdown voltage |V |infinite| 40| |
|
||||
* | |IBV |current at breakdown voltage |V | 0.001| | |
|
||||
* | |TNOM |parameter measurement temperature|deg C| 27| 50| |
|
||||
*
|
||||
*/
|
||||
|
||||
class diode_model_t : public param_model_t
|
||||
{
|
||||
public:
|
||||
@ -367,8 +392,8 @@ public:
|
||||
, m_N(*this, "N")
|
||||
{}
|
||||
|
||||
value_t m_IS;
|
||||
value_t m_N;
|
||||
value_t m_IS; //!< saturation current.
|
||||
value_t m_N; //!< emission coefficient.
|
||||
};
|
||||
|
||||
|
||||
|
@ -771,7 +771,7 @@ WARN_LOGFILE =
|
||||
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
|
||||
# Note: If this tag is empty the current directory is searched.
|
||||
|
||||
INPUT = ".." "../documentation"
|
||||
INPUT = ".." "../analog" "../documentation"
|
||||
|
||||
# This tag can be used to specify the character encoding of the source files
|
||||
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
|
||||
|
@ -963,7 +963,7 @@ namespace netlist
|
||||
printf("Looking for %s %s\n", param.name().c_str(), name.c_str());
|
||||
m_value = param.model_value(name);
|
||||
}
|
||||
const double operator()() const { return m_value; }
|
||||
double operator()() const { return m_value; }
|
||||
operator double() const { return m_value; }
|
||||
private:
|
||||
double m_value;
|
||||
|
Loading…
Reference in New Issue
Block a user