1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
6 <link rel=
"stylesheet" media=
"screen" type=
"text/css" href=
"./style.css" />
7 <link rel=
"stylesheet" media=
"screen" type=
"text/css" href=
"./design.css" />
8 <link rel=
"stylesheet" media=
"print" type=
"text/css" href=
"./print.css" />
10 <meta http-equiv=
"Content-Type" content=
"text/html; charset=utf-8" />
17 <h1><a name=
"hierarchical_spice_model" id=
"hierarchical_spice_model">Hierarchical SPICE model
</a></h1>
21 If you installed the gEDA Tool Suite from the distribution CD-ROM, then you should have this example of a hierarchical analog RF SPICE model in the:
<br/>
22 <strong><code>{source_install_path}geda-sources/gedagaf/geda-examples-
20060123/RF_Amp
</code></strong> <br/>
25 <pre class=
"code">This README created
3.31.2003
27 --------------------- Contents of directories -----------------------
29 This directory holds the schematics and associated materials for a
30 SPICE model of Agilent
's MSA-
2643 bipolar amp. The model was obtained
31 from Agilent
's datasheet
5980-
2396E. The directory structure is as
34 RF_Amp (base directory)
36 MSA-
2643.sch -- schematic of stuff inside device package (as shown in
37 p.
7 of datasheet. Note that I have not included the transmission
38 lines in this schematic because no value of Z was included in the data
39 sheet. (Yes, it
's probably
50 ohms, but including them was a
40 sideshow compared to my main intent: build a hierarchical model of an
42 MSA-
2643.cir -- netlisted circuit ready for SPICE simulation.
44 Q1.sch -- schematic model of Q1 MSA-
26 transistor shown on p.
8 of datasheet.
45 Q1.cir -- netlisted circuit holding .SUBCKT model of Q1.
47 Q2.sch -- schematic model of Q2 MSA-
26 transistor shown on p.
8 of datasheet.
48 Q2.cir -- netlisted circuit holding .SUBCKT model of Q2.
52 Simulation.cmd -- a file holding SPICE analysis commands which is read
53 at simulation time by the SPICE simulator.
55 5980-
2396E.pdf -- Agilent datasheet about the MSA-
2643.
60 BJTM1_Q1.mod -- text-based SPICE model of BJT1 used in Q1 .SUBCKT
61 DiodeM1_Q1.mod -- text-based SPICE model of diode M1 used in Q1 .SUBCKT
62 DiodeM2_Q1.mod -- SPICE model of diode M2 used in Q1 .SUBCKT
63 DiodeM3_Q1.mod -- SPICE model of diode M3 used in Q1 .SUBCKT
64 (similar files for Q2 models. . . .)
65 These models were obtained from parameters give in p.
8 of the datasheet.
70 spice-subcircuit-IO-
1.sym
71 spice-subcircuit-LL-
1.sym
72 Q_Model.sym -- symbol pointing to lower level models placed on upper
75 ------------ Usage of hierarchical spice models ---------------------
76 This project exemplifies construction of a hierarchical SPICE
77 simulation using gEDA. The project is built in the following way:
79 1. Use a text editor to create .mod files containing SPICE models of
80 the transistors and diodes on p.
8 of the datasheet.
82 2. Create Q1 and Q2 transistor model schematics using gschem. Place
83 the .SUBCKT SPICE block on the schematic to alert the netlister that
84 the schematic is a lower level .SUBCKT for incorporation into other
85 schematics. Place spice-IO pads on the schematic to instantiate the
86 IOs. Make sure to number the spice-IO pads in the same order as you
87 wish them to appear in the .SUBCKT line in the .cir.
89 3. Generate the .SUBCKT netlist by saying:
91 gnetlist -g spice-sdb -o Q1.cir Q1.sch
92 gnetlist -g spice-sdb -o Q2.cir Q2.sch
94 4. Create a symbol for Q1.cir and Q2.cir which will be dropped onto
95 the higher lever schematic. Name the symbol Q_Model.sym. Set the
96 symbol
"DEVICE
" attribute = NPN_TRANSISTOR_subcircuit. This causes
97 the netlister to use
"write-default-component
" to write out the SPICE
98 line for the component. Make sure that the
"REFDES
" attribute is X?
99 and not Q? -- this enables the .SUBCKT file to be attached to the
102 5. Create the higher layer schematic MSA-
2643.sch. Place
103 two copies of Q_Model.sym onto the schematic, corresponding to Q1 and
104 Q2. Make Q1 point to its model by setting the following attributes:
106 model-name: Q1_MSA26F
111 6. Create the rest of the higher layer schematic the usual way. Make
112 sure to place a spice-include block on the schematic and point it to
113 "Simulation.cmd
". Place any analysis commands (e.g. .DC, .AC, .TRAN,
114 etc.) into the file
"Simulation.cmd
".
116 7. Netlist the higher layer design:
118 gnetlist -g spice-sdb -o MSA-
2643.cir MSA-
2643.sch
120 8. The circuit may be simulated by any desired SPICE simulation
121 and analysis package, e.g. LTSpice.
123 -------------------- Contact ----------------------------
124 Documentation and other materials relevant to SPICE simulation under
125 gEDA lives at http://www.brorson.com/gEDA/SPICE
127 For inquiries or bug reports, please contact me:
130 mailto:sdb@cloud9.net