Title: CSE245: Computer-Aided Circuit Simulation and Verification
1CSE245 Computer-Aided Circuit Simulation and
Verification
- Lecture 1 Introduction and Formulation
- Spring 2008
- Chung-Kuan Cheng
2Administration
- CK Cheng, CSE 2130, tel. 534-6184,
ckcheng_at_ucsd.edu - Lectures 1230 150pm TTH WLH2205
- Textbooks
- Electronic Circuit and System Simulation Methods
- T.L. Pillage, R.A. Rohrer, C. Visweswariah,
McGraw-Hill - Interconnect Analysis and Synthesis
- CK Cheng, J. Lillis, S. Lin, N. Chang, John
Wiley Sons - Grading
- Homework and Projects 60
- Project Presentation 20
- Final Report 20
3CSE245 Course Outline
- Formulation (2-3 lectures)
- RLC Linear, Nonlinear Components,Transistors,
Diodes - Incident Matrix
- Nodal Analysis, Modified Nodal Analysis
- K Matrix
- Linear System (3-4 lectures)
- S domain analysis, Impulse Response
- Taylors expansion
- Moments, Passivity, Stability, Realizability
- Symbolic analysis, Y-Delta, BDD analysis
- Matrix Solver (3-4 lectures)
- LU, KLU, reordering
- Mutigrid, PCG, GMRES
4CSE245 Course Outline (Cont)
- Integration (3-4 lectures)
- Forward Euler, Backward Euler, Trapezoidal Rule
- Explicit and Implicit Method, Prediction and
Correction - Equivalent Circuit
- Errors Local error, Local Truncation Error,
Global Error - A-Stable
- Alternating Direction Implicit Method
- Nonlinear System (2-3 lectures)
- Newton Raphson, Line Search
- Transmission Line, S-Parameter (2-3 lectures)
- FDTD equivalent circuit, convolution
- Frequency dependent components
- Sensitivity
- Mechanical, Thermal, Bio Analysis
5Motivation
- Why
- Whole Circuit Analysis, Interconnect Dominance
- What
- Power, Clock, Interconnect Coupling
- Where
- Matrix Solvers, Integration Methods
- RLC Reduction, Transmission Lines, S Parameters
- Parallel Processing
- Thermal, Mechanical, Biological Analysis
6Circuit Simulation
- Types of analysis
- DC Analysis
- DC Transfer curves
- Transient Analysis
- AC Analysis, Noise, Distortions, Sensitivity
7Program Structure (a closer look)
Input and setup
Models
- Numerical Techniques
- Formulation of circuit equations
- Solution of ordinary differential equations
- Solution of nonlinear equations
- Solution of linear equations
Output
8Lecture 1 Formulation
- Derive from KCL/KVL
- Sparse Tableau Analysis (IBM)
- Nodal Analysis, Modified Nodal Analysis (SPICE)
some slides borrowed from Berkeley EE219 Course
9Conservation Laws
- Determined by the topology of the circuit
- Kirchhoffs Current Law (KCL) The algebraic sum
of all the currents flowing out of (or into) any
circuit node is zero. - No Current Source Cut
- Kirchhoffs Voltage Law (KVL) Every circuit node
has a unique voltage with respect to the
reference node. The voltage across a branch vb is
equal to the difference between the positive and
negative referenced voltages of the nodes on
which it is incident - No voltage source loop
10Branch Constitutive Equations (BCE)
Element Branch Eqn Variable parameter
Resistor v Ri -
Capacitor i Cdv/dt -
Inductor v Ldi/dt -
Voltage Source v vs i ?
Current Source i is v ?
VCVS vs AV vc i ?
VCCS is GT vc v ?
CCVS vs RT ic i ?
CCCS is AI ic v ?
11Formulation of Circuit Equations
- Unknowns
- B branch currents (i)
- N node voltages (e)
- B branch voltages (v)
- Equations
- NB Conservation Laws
- B Constitutive Equations
- 2BN equations, 2BN unknowns gt unique solution
12Equation Formulation - KCL
Law State Equation
A i 0
Node 1 Node 2
N equations
Branches
Kirchhoffs Current Law (KCL)
13Equation Formulation - KVL
R3
1
2
Is5
R1
R4
G2v3
0
Law State Equation
v - AT e 0
vi voltage across branch i ei voltage at node
i
B equations
Kirchhoffs Voltage Law (KVL)
14Equation Formulation - BCE
Law State Equation
Kvv Kii is
B equations
15Equation FormulationNode-Branch Incidence Matrix
A
branches
n o d e s
(1, -1, 0)
16Equation Assembly (Stamping Procedures)
- Different ways of combining Conservation Laws and
Branch Constitutive Equations - Sparse Table Analysis (STA)
- Nodal Analysis (NA)
- Modified Nodal Analysis (MNA)
17Sparse Tableau Analysis (STA)
- Write KCL Ai0 (N eqns)
- Write KVL v - ATe0 (B eqns)
- Write BCE Kii KvvS (B eqns)
N2B eqns N2B unknowns
N nodes B branches
Sparse Tableau
18Sparse Tableau Analysis (STA)
- Advantages
- It can be applied to any circuit
- Eqns can be assembled directly from input data
- Coefficient Matrix is very sparse
- Disadvantages
- Sophisticated programming techniques and data
- structures are required for time and memory
- efficiency
19Nodal Analysis (NA)
- 1. Write KCL
- Ai0 (N equations, B unknowns)
- 2. Use BCE to relate branch currents to branch
voltages - if(v) (B equations ? B unknowns)
- Use KVL to relate branch voltages to node
voltages - vh(e) (B equations ? N unknowns)
N eqns N unknowns N nodes
Yneins
Nodal Matrix
20Nodal Analysis - Example
R3
- KCL Ai0
- BCE Kvv i is ? i is - Kvv ? A Kvv A
is - KVL v ATe ? A KvATe A is
Yne ins
Yn AKvAT Ins Ais
21Nodal Analysis
- Example shows how NA may be derived from STA
- Better Method Yn may be obtained by direct
inspection (stamping procedure) - Each element has an associated stamp
- Yn is the composition of all the elements stamps
22Nodal Analysis Resistor Stamp
Spice input format Rk N N- Rkvalue
What if a resistor is connected to
ground? . Only contributes to the diagonal
KCL at node N KCL at node N-
23Nodal Analysis VCCS Stamp
Spice input format Gk N N- NC NC-
Gkvalue
KCL at node N KCL at node N-
24Nodal Analysis Current source Stamp
Spice input format Ik N N- Ikvalue
N N-
N N-
Ik
25Nodal Analysis (NA)
- Advantages
- Yn is often diagonally dominant and symmetric
- Eqns can be assembled directly from input data
- Yn has non-zero diagonal entries
- Yn is sparse (not as sparse as STA) and smaller
than STA NxN compared to (N2B)x(N2B) - Limitations
- Conserved quantity must be a function of node
variable - Cannot handle floating voltage sources, VCVS,
CCCS, CCVS
26Modified Nodal Analysis (MNA)
How do we deal with independent voltage sources?
Ekl
k l
-
l
k
ikl
- ikl cannot be explicitly expressed in terms of
node voltages ? it has to be added as unknown
(new column) - ek and el are not independent variables anymore ?
a constraint has to be added (new row)
27MNA Voltage Source Stamp
Spice input format Vk N N- Ekvalue
0 0 1
0 0 -1
1 -1 0
N
28Modified Nodal Analysis (MNA)
- How do we deal with independent voltage sources?
- Augmented nodal matrix
In general
Some branch currents
29MNA General rules
- A branch current is always introduced as an
additional variable for a voltage source or an
inductor - For current sources, resistors, conductors and
capacitors, the branch current is introduced only
if - Any circuit element depends on that branch
current - That branch current is requested as output
30MNA CCCS and CCVS Stamp
31MNA An example
Step 1 Write KCL
(1) (2) (3) (4)
32MNA An example
Step 2 Use branch equations to eliminate as many
branch currents as possible
(1) (2) (3) (4)
Step 3 Write down unused branch equations
(b6) (b7)
33MNA An example
Step 4 Use KVL to eliminate branch voltages from
previous equations
(1) (2) (3) (4) (b6) (b7)
34MNA An example
35Modified Nodal Analysis (MNA)
- Advantages
- MNA can be applied to any circuit
- Eqns can be assembled directly from input data
- MNA matrix is close to Yn
- Limitations
- Sometimes we have zeros on the main diagonal