Added Diode component with standard and verilog model (diode, led, zener)
This commit is contained in:
@@ -0,0 +1,286 @@
|
||||
// (setq tab-width 4)
|
||||
// kelle ez ? :: decl diode_va_ModelNetlistFmt = "%43?global %;model %t diode_va %b%r%8?%29?%:%30?%p %:%k%?[%1i]%;=%p %;%;%;%e%e";
|
||||
|
||||
create_item(
|
||||
"mr_diode", // name
|
||||
"PN junction diode", // label
|
||||
"D", // prefix
|
||||
0, // attributes
|
||||
NULL, // priority
|
||||
NULL, // icon
|
||||
standard_dialog, // dialog name
|
||||
"", // dialog data
|
||||
CmpModelNetlistFmt, // netlist format
|
||||
"Diode", // netlist data
|
||||
ComponentAnnotFmt, // display format string
|
||||
NULL, // symbol name (not used since 2011)
|
||||
NULL, // artwork type (not used since 2011)
|
||||
NULL, // artwork data (not used since 2011)
|
||||
ITEM_PRIMITIVE_EX, // extra attributes
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Model
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Model",
|
||||
"Model instance name",
|
||||
0,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","va_diode")
|
||||
),
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Area
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Area",
|
||||
"Scaling factor",
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","1.0")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Is
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Is",
|
||||
"Saturation current",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
CURRENT_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Tnom
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Tnom",
|
||||
"Nominal temperature",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
TEMPERATURE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Rs
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Rs",
|
||||
"Ohmic resistance",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
RESISTANCE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// N
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"N",
|
||||
"Emission coefficient, (default: 1.0)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Tt
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Tt",
|
||||
"Transit time",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
TIME_UNIT,
|
||||
prm("StdForm","0.0")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Cjo
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Cjo",
|
||||
"Junction capacitance",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
CAPACITANCE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Vj
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Vj",
|
||||
"Junction potential, (default: 1.0)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
VOLTAGE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// M
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"M",
|
||||
"Grading coefficient, (default: 0.5)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Eg
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Eg",
|
||||
"Activation energy, (default: 1.1)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Xti
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Xti",
|
||||
"Is temperature exponent (default: 3.3)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Af
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Af",
|
||||
"Flicker noise exponent (default: 1.0)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Kf
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Kf",
|
||||
"Flicker noise coefficient (default: 0.0)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Fc
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Fc",
|
||||
"Forward bias junction parm (default: 0.5)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Bv
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Bv",
|
||||
"Reverse breakdown voltage (default: 1e99)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
VOLTAGE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Ibv
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"IBv",
|
||||
"Reverse breakdown current (default: 1 mA)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
CURRENT_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// _M
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"_M",
|
||||
"Number of devices in parallel, (default: 1)",
|
||||
PARM_NO_DISPLAY,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
)
|
||||
);
|
||||
@@ -0,0 +1,286 @@
|
||||
// (setq tab-width 4)
|
||||
// kelle ez ? :: decl diode_va_ModelNetlistFmt = "%43?global %;model %t diode_va %b%r%8?%29?%:%30?%p %:%k%?[%1i]%;=%p %;%;%;%e%e";
|
||||
|
||||
create_item(
|
||||
"mr_diode_zener", // name
|
||||
"Zener diode", // label
|
||||
"D", // prefix
|
||||
0, // attributes
|
||||
NULL, // priority
|
||||
NULL, // icon
|
||||
standard_dialog, // dialog name
|
||||
"", // dialog data
|
||||
CmpModelNetlistFmt, // netlist format
|
||||
"Diode", // netlist data
|
||||
ComponentAnnotFmt, // display format string
|
||||
NULL, // symbol name (not used since 2011)
|
||||
NULL, // artwork type (not used since 2011)
|
||||
NULL, // artwork data (not used since 2011)
|
||||
ITEM_PRIMITIVE_EX, // extra attributes
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Model
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Model",
|
||||
"Model instance name",
|
||||
0,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","va_diode")
|
||||
),
|
||||
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Area
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Area",
|
||||
"Scaling factor",
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","1.0")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Is
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Is",
|
||||
"Saturation current",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
CURRENT_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Tnom
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Tnom",
|
||||
"Nominal temperature",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
TEMPERATURE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Rs
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Rs",
|
||||
"Ohmic resistance",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
RESISTANCE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// N
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"N",
|
||||
"Emission coefficient, (default: 1.0)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Tt
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Tt",
|
||||
"Transit time",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
TIME_UNIT,
|
||||
prm("StdForm","0.0")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Cjo
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Cjo",
|
||||
"Junction capacitance",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
CAPACITANCE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Vj
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Vj",
|
||||
"Junction potential, (default: 1.0)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
VOLTAGE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// M
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"M",
|
||||
"Grading coefficient, (default: 0.5)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Eg
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Eg",
|
||||
"Activation energy, (default: 1.1)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Xti
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Xti",
|
||||
"Is temperature exponent (default: 3.3)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Af
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Af",
|
||||
"Flicker noise exponent (default: 1.0)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Kf
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Kf",
|
||||
"Flicker noise coefficient (default: 0.0)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Fc
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Fc",
|
||||
"Forward bias junction parm (default: 0.5)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Bv
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"Bv",
|
||||
"Reverse breakdown voltage (default: 1e99)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
VOLTAGE_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// Ibv
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"IBv",
|
||||
"Reverse breakdown current (default: 1 mA)",
|
||||
PARM_NO_DISPLAY |
|
||||
PARM_OPTIMIZABLE |
|
||||
PARM_STATISTICAL,
|
||||
"StdFileFormSet",
|
||||
CURRENT_UNIT,
|
||||
prm("StdForm","")
|
||||
),
|
||||
|
||||
// ------------------------------------------------------------------------
|
||||
// _M
|
||||
// ------------------------------------------------------------------------
|
||||
create_parm
|
||||
(
|
||||
"_M",
|
||||
"Number of devices in parallel, (default: 1)",
|
||||
PARM_NO_DISPLAY,
|
||||
"StdFileFormSet",
|
||||
UNITLESS_UNIT,
|
||||
prm("StdForm","")
|
||||
)
|
||||
);
|
||||
@@ -0,0 +1,15 @@
|
||||
; 1N4148
|
||||
;
|
||||
model D1N4148 Diode \
|
||||
Is = 2.682n \
|
||||
N = 1.836 \
|
||||
Rs = 0.5664 \
|
||||
Xti = 3 \
|
||||
Eg = 1.11 \
|
||||
Cjo = 4p \
|
||||
M = 0.3333 \
|
||||
Vj = 0.5 \
|
||||
Fc = 0.5 \
|
||||
Bv = 100 \
|
||||
Ibv = 100u
|
||||
; Tt = 11.54n
|
||||
@@ -0,0 +1,35 @@
|
||||
;*====================
|
||||
;*LED Pinout: 1=A, 2=K
|
||||
;*====================
|
||||
|
||||
; ---------------------------------------------------------
|
||||
; Typ INFRARED GaAs LED: Vf=1.2V Vr=5V If=40mA trr=3uS
|
||||
; ---------------------------------------------------------
|
||||
model DLED0 Diode \
|
||||
IS = 93.5p RS = 84m N = 2.63 \
|
||||
BV = 5 IBV = 10u CJO = 2.97p \
|
||||
VJ = 0.75 M = 0.333 TT = 4.32u
|
||||
|
||||
; ---------------------------------------------------------
|
||||
; Typ RED GaAs LED: Vf=1.7V Vr=4V If=40mA trr=3uS
|
||||
; ---------------------------------------------------------
|
||||
model DLED1 Diode \
|
||||
IS = 93.2p RS = 42m N = 3.73 \
|
||||
BV = 4 IBV = 10u CJO = 2.97p \
|
||||
VJ = 0.75 M = 0.333 TT = 4.32u
|
||||
|
||||
; ---------------------------------------------------------
|
||||
; Typ RED,GREEN,YELLOW,AMBER GaAs LED: Vf=2.1V Vr=4V If=40mA trr=3uS
|
||||
; ---------------------------------------------------------
|
||||
model DLED2 Diode \
|
||||
IS = 93.1p RS = 42m N = 4.61 \
|
||||
BV = 4 IBV = 10u CJO = 2.97p \
|
||||
VJ = 0.75 M = 0.333 TT = 4.32u
|
||||
|
||||
; ---------------------------------------------------------
|
||||
; Typ BLUE SiC LED: Vf=3.4V Vr=5V If=40mA trr=3uS
|
||||
; ---------------------------------------------------------
|
||||
model DLED3 Diode \
|
||||
IS = 93.1p RS = 42m N = 7.47 \
|
||||
BV = 5 IBV = 30u CJO = 2.97p \
|
||||
VJ = 0.75 M = 0.333 TT = 4.32u
|
||||
@@ -0,0 +1,18 @@
|
||||
; Motorola MUR820 TO220AC
|
||||
;
|
||||
model MUR820_ON Diode \
|
||||
IS = 3.30803e-08 \
|
||||
RS = 0.01 \
|
||||
N = 1.63481 \
|
||||
EG = 1.00822 \
|
||||
XTI = 4 \
|
||||
BV = 200 \
|
||||
IBV = 0.00005 \
|
||||
CJO = 3.16981e-10 \
|
||||
VJ = 0.437823 \
|
||||
M = 0.40704 \
|
||||
FC = 0.5 \
|
||||
TT = 4.43935e-08 \
|
||||
KF = 0 \
|
||||
AF = 1
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
; Motorola MUR830 TO220AC
|
||||
;
|
||||
model MUR830 Diode \
|
||||
Is = 1.026p \
|
||||
Rs = 36.34m \
|
||||
Ikf = 17.71m \
|
||||
N = 1 \
|
||||
Xti = 10 \
|
||||
Eg = 1.11 \
|
||||
Cjo = 367p \
|
||||
M = 0.4068 \
|
||||
Vj = 0.75 \
|
||||
Fc = 0.5 \
|
||||
Isr = 32.31n \
|
||||
Nr = 2 \
|
||||
Tt = 123.3n
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
; Motorola MUR840 TO220AC
|
||||
;
|
||||
model MUR840 Diode \
|
||||
Is = 1.026p \
|
||||
Rs = 36.34m \
|
||||
Ikf = 17.71m \
|
||||
N = 1 \
|
||||
Xti = 10 \
|
||||
Eg = 1.11 \
|
||||
Cjo = 367p \
|
||||
M = 0.4068 \
|
||||
Vj = 0.75 \
|
||||
Fc = 0.5 \
|
||||
Isr = 132.1n \
|
||||
Nr = 2 \
|
||||
Tt = 123.3n
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
; Motorola MUR850 TO220AC
|
||||
;
|
||||
model MUR850 Diode \
|
||||
Is = 853.7f \
|
||||
Rs = 41.35m \
|
||||
Ikf = 21.56m \
|
||||
N = 1 \
|
||||
Xti = 3 \
|
||||
Eg = 1.11 \
|
||||
Cjo = 367p \
|
||||
M = 0.4068 \
|
||||
Vj = 0.75 \
|
||||
Fc = 0.5 \
|
||||
Isr = 85.16n \
|
||||
Nr = 2 \
|
||||
Tt = 123.3n
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
; Motorola MUR860 TO220AC
|
||||
;
|
||||
model MUR860 Diode \
|
||||
Is = 853.7f \
|
||||
Rs = 41.35m \
|
||||
Ikf = 21.56m \
|
||||
N = 1 \
|
||||
Xti = 3 \
|
||||
Eg = 1.11 \
|
||||
Cjo = 367p \
|
||||
M = 0.4068 \
|
||||
Vj = 0.75 \
|
||||
Fc = 0.5 \
|
||||
Isr = 217.5n \
|
||||
Nr = 2 \
|
||||
Tt = 123.3n
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
; Motorola MURS110
|
||||
;
|
||||
; src: onsemi
|
||||
;
|
||||
model MURS110 Diode \
|
||||
IS = 1.0e-15 \
|
||||
RS = 0.057964 \
|
||||
N = 0.790242 \
|
||||
EG = 1.04345 \
|
||||
XTI = 0.5 \
|
||||
BV = 100 \
|
||||
IBV = 0.000002 \
|
||||
CJO = 1.06518e-10 \
|
||||
VJ = 0.4 \
|
||||
M = 0.626202 \
|
||||
FC = 0.5 \
|
||||
TT = 4.43935e-08 \
|
||||
KF = 0.0 \
|
||||
AF = 1.0
|
||||
|
||||
@@ -0,0 +1,134 @@
|
||||
; ===================================================
|
||||
; Motorola Zener Diodes (OnSemi)
|
||||
; 1=A
|
||||
; 2=K
|
||||
; ===================================================
|
||||
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N746
|
||||
; Motorola 3.3V 500mW Si Zener pkg:DO-13 1,2
|
||||
; Bv = 3.025
|
||||
; ---------------------------------------------------
|
||||
model D1N746 Diode \
|
||||
IS = 1E-11 RS = 13.65 N = 1.27 \
|
||||
TT = 5E-8 CJO = 5.826E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 3.027 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N747
|
||||
; Motorola 3.6V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N747 Diode \
|
||||
IS = 1E-11 RS = 12.8 N = 1.27 \
|
||||
TT = 5E-8 CJO = 5.422E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 3.344 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N748
|
||||
; Motorola 3.9V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N748 Diode \
|
||||
IS = 1E-11 RS = 11.84 N = 1.27 \
|
||||
TT = 5E-8 CJO = 5.076E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 3.663 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N749
|
||||
; Motorola 4.3V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N749 Diode \
|
||||
IS = 1E-11 RS = 10.47 N = 1.27 \
|
||||
TT = 5E-8 CJO = 4.683E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 4.091 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N750
|
||||
; Motorola 4.7V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N750 Diode \
|
||||
IS = 1E-11 RS = 9.066 N = 1.27 \
|
||||
TT = 5E-8 CJO = 4.351E-10 VJ =0.75 \
|
||||
M = 0.33 BV = 4.519 IBV=0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N751
|
||||
; Motorola 5.1V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N751 Diode \
|
||||
IS = 1E-11 RS = 7.708 N = 1.27 \
|
||||
TT = 5E-8 CJO = 4.068E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 4.946 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N752
|
||||
; Motorola 5.6V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N752 Diode \
|
||||
IS = 1E-11 RS = 6.168 N = 1.27 \
|
||||
TT = 5E-8 CJO = 3.766E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 5.477 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N753
|
||||
; Motorola 6.2V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N753 Diode \
|
||||
IS = 1E-11 RS = 4.685 N = 1.27 \
|
||||
TT = 5E-8 CJO = 3.463E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 6.106 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N754
|
||||
; Motorola 6.8V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N754 Diode \
|
||||
IS = 1E-11 RS = 3.721 N = 1.27 \
|
||||
TT = 5E-8 CJO = 3.209E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 6.726 IBV=0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N755
|
||||
; Motorola 7.5V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N755 Diode \
|
||||
IS = 1E-11 RS = 3.359 N = 1.27 \
|
||||
TT = 5E-8 CJO = 2.959E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 7.433 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N756
|
||||
; Motorola 8.2V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N756 Diode \
|
||||
IS = 1E-11 RS = 3.858 N = 1.27 \
|
||||
TT = 5E-8 CJO = 2.749E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 8.123 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N757
|
||||
; Motorola 9.1V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N757 Diode \
|
||||
IS = 1E-11 RS = 5.672 N = 1.27 \
|
||||
TT = 5E-8 CJO = 2.523E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 8.987 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N758
|
||||
; Motorola 10V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N758 Diode \
|
||||
IS = 1E-11 RS = 8.483 N = 1.27 \
|
||||
TT = 5E-8 CJO = 2.334E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 9.83 IBV = 0.01
|
||||
|
||||
; ---------------------------------------------------
|
||||
; 1N759
|
||||
; Motorola 12V 500mW Si Zener pkg:DO-35 1,2
|
||||
; ---------------------------------------------------
|
||||
model D1N759 Diode \
|
||||
IS = 1E-11 RS = 14.95 N = 1.27 \
|
||||
TT = 5E-8 CJO = 2.008E-10 VJ = 0.75 \
|
||||
M = 0.33 BV = 11.7 IBV = 0.01
|
||||
|
||||
@@ -44,6 +44,7 @@ load( strcat( MRMODELS_DIR_CIRCUIT_AEL, "mrmodels_include"));
|
||||
load( strcat( MRMODELS_DIR_CIRCUIT_AEL, "mr/mr_capacitor" ));
|
||||
load( strcat( MRMODELS_DIR_CIRCUIT_AEL, "mr/mr_inductor" ));
|
||||
load( strcat( MRMODELS_DIR_CIRCUIT_AEL, "mr/mr_resistor" ));
|
||||
load( strcat( MRMODELS_DIR_CIRCUIT_AEL, "mr/mr_diode" ));
|
||||
load( strcat( MRMODELS_DIR_CIRCUIT_AEL, "mr/mr_bjt" ));
|
||||
load( strcat( MRMODELS_DIR_CIRCUIT_AEL, "mr/mr_jfet" ));
|
||||
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
-- Master.tag File, Rev:1.0
|
||||
symbol.oa
|
||||
Binary file not shown.
@@ -0,0 +1,2 @@
|
||||
-- Master.tag File, Rev:1.0
|
||||
symbol.oa
|
||||
Binary file not shown.
@@ -0,0 +1,145 @@
|
||||
/*
|
||||
|
||||
Copyright 2002-2005 Tiburon Design Automation, Inc. All rights reserved.
|
||||
|
||||
This software has been provided pursuant to a License Agreement
|
||||
containing restrictions on its use. This software contains
|
||||
valuable trade secrets and proprietary information of
|
||||
Tiburon Design Automation, Inc. and is protected by law. It may
|
||||
not be copied or distributed in any form or medium, disclosed
|
||||
to third parties, reverse engineered or used in any manner not
|
||||
provided for in said License Agreement except with the prior
|
||||
written authorization from Tiburon Design Automation, Inc.
|
||||
|
||||
Verilog-A definition of diode
|
||||
|
||||
Note that GMIN is not picked up from Options card
|
||||
|
||||
$RCSfile: diode.va,v $ $Revision: 1.8 $ $Date: 2012/07/09 19:37:45 $
|
||||
|
||||
*/
|
||||
|
||||
`include "constants.vams"
|
||||
`include "disciplines.vams"
|
||||
|
||||
`define SPICE_GMIN 1.0e-12
|
||||
`define LARGE_REAL 1.0e99
|
||||
`define DEFAULT_TNOM 27
|
||||
`define MAX_EXPL 2.688117142e+43
|
||||
`define MIN_EXPL 3.720075976e-44
|
||||
`define EXPL_THRESHOLD 100.0
|
||||
|
||||
`define DEXP(A,B) \
|
||||
if (A > `EXPL_THRESHOLD) begin \
|
||||
B = `MAX_EXPL*(1.0+(A)-`EXPL_THRESHOLD); \
|
||||
end else if (A < -`EXPL_THRESHOLD) begin \
|
||||
B = `MIN_EXPL; \
|
||||
end else begin \
|
||||
B = exp(A); \
|
||||
end
|
||||
|
||||
module va_diode(anode,cathode);
|
||||
|
||||
// %%DEVICE_CLASS=DIODE%%
|
||||
|
||||
inout anode, cathode;
|
||||
electrical anode, cathode, internal;
|
||||
|
||||
parameter real Area = 1.0 from (0:inf]; //Area scaling factor
|
||||
parameter real Is = 1e-14 from [0:inf]; //Saturation current [A]
|
||||
parameter real Tnom = `DEFAULT_TNOM from (-`P_CELSIUS0:inf); //Measurement temperature [C]
|
||||
parameter real Rs = 0.0 from [0:inf]; //Ohmic res [Ohm]
|
||||
parameter real N = 1.0 from [0:inf]; //Emission coef
|
||||
parameter real Tt = 0.0 from [0:inf]; //Transit time [s]
|
||||
parameter real Cjo = 0.0 from [0:inf]; //Junction capacitance [F]
|
||||
parameter real Vj = 1.0 exclude 0; //Junction potential [v]
|
||||
parameter real M = 0.5 from [0:inf]; //Grading coef
|
||||
parameter real Eg = 1.11 from (0:inf]; //Activation energy [eV]
|
||||
parameter real Xti = 3.0 from [0:inf]; //IS temp exp.
|
||||
parameter real Kf = 0.0; //Flicker noise coef
|
||||
parameter real Af = 1.0 from (0:inf); //Flicker noise exponent
|
||||
parameter real Fc = 0.5 from [0:1]; //Forward bias junct parm
|
||||
parameter real Bv = `LARGE_REAL from [0:inf]; //Reverse breakdown voltage [v]
|
||||
parameter real Ibv = 0.001 from [0:inf]; //Current at BV [A]
|
||||
|
||||
real Vd, Id, Qd;
|
||||
real f1, f2, f3, Fcp;
|
||||
real Ibv_calc, Vth;
|
||||
real Is_temp, Vth_nom, T_nom, T;
|
||||
real exponent;
|
||||
|
||||
analog begin
|
||||
Vth = $vt;
|
||||
T = $temperature;
|
||||
|
||||
f1 = (Vj/(1 - M))*(1 - pow((1 - Fc), 1 - M));
|
||||
f2 = pow((1 - Fc), (1 + M));
|
||||
f3 = 1 - Fc * (1 + M);
|
||||
Fcp = Fc * Vj;
|
||||
|
||||
if (Ibv !=0)
|
||||
Ibv_calc = Ibv;
|
||||
else
|
||||
Ibv_calc = Is * Bv / Vth;
|
||||
|
||||
Vd = V(anode, internal);
|
||||
|
||||
// Temperature dependence
|
||||
T_nom = Tnom + `P_CELSIUS0;
|
||||
Vth_nom = $vt(T_nom);
|
||||
`DEXP((Eg / Vth_nom - Eg / Vth),exponent);
|
||||
|
||||
Is_temp = Is * pow(T/T_nom, Xti / N) * exponent;
|
||||
|
||||
// Intrinsic diode
|
||||
// BV is not adjusted to match Ibv if I(BV) <> Ibv
|
||||
if (Vd < 0) begin
|
||||
if (Vd < -Bv) // Past breakdown
|
||||
begin
|
||||
`DEXP(-(Bv + Vd) / Vth,exponent);
|
||||
Id = -Area * Is_temp * (exponent + Bv / Vth);
|
||||
end
|
||||
|
||||
else if (Vd == -Bv) // At breakdown
|
||||
Id = -Area * Ibv_calc;
|
||||
|
||||
else if (Vd <= -5 * N * Vth) // -Bv < Vd < -5 nKT/q
|
||||
Id = -Area * Is_temp + Vd * `SPICE_GMIN;
|
||||
|
||||
else // -5 nKT/q <= Vd < 0
|
||||
begin
|
||||
`DEXP(Vd / Vth,exponent);
|
||||
Id = Area * Is_temp * (exponent - 1) + Vd * `SPICE_GMIN;
|
||||
end
|
||||
end
|
||||
else // Fwd bias:
|
||||
begin
|
||||
`DEXP(Vd / (N*Vth),exponent);
|
||||
Id = Area * Is_temp * (exponent - 1) +
|
||||
Vd * `SPICE_GMIN;
|
||||
end
|
||||
// Capacitance (junction and diffusion)
|
||||
if (Vd <= Fcp)
|
||||
Qd = Tt * Id + Area * Cjo * Vj
|
||||
* (1 - pow((1 - Vd / Vj), (1 - M)))/(1 - M);
|
||||
else
|
||||
Qd = Tt * Id + Area * Cjo
|
||||
* (f1 + (1 / f2) * (f3 * (Vd - Fcp) + (0.5 * M / Vj)
|
||||
* (Vd * Vd - Fcp * Fcp)));
|
||||
|
||||
I(anode, internal) <+ Id;
|
||||
I(anode, internal) <+ ddt(Qd);
|
||||
if (Rs > 0.0) begin
|
||||
I(internal, cathode) <+ V(internal, cathode) / (Rs / Area);
|
||||
I(internal, cathode) <+ white_noise(4 * `P_K * T / (Rs / Area),
|
||||
"Rs");
|
||||
end
|
||||
else
|
||||
V(internal, cathode) <+ 0.0;
|
||||
|
||||
I(anode, internal) <+ white_noise(2 * `P_Q * abs(Id), "shot");
|
||||
I(anode, internal) <+ flicker_noise(Kf * pow(abs(Id), Af), 1.0, "flicker");
|
||||
end
|
||||
|
||||
endmodule
|
||||
|
||||
Reference in New Issue
Block a user