SPICE Simulation:
SPICE Simulation สำหรับวงจร IC
01 บทนำ: SPICE คืออะไร
SPICE (Simulation Program with Integrated Circuit Emphasis) คือซอฟต์แวร์จำลองวงจรไฟฟ้าที่เป็นมาตรฐานอุตสาหกรรม ถูกพัฒนาครั้งแรกที่ UC Berkeley ในปี 1973
SPICE ใช้ Modified Nodal Analysis (MNA) ในการสร้าง matrix equation ของวงจร แล้ว solve ด้วย Newton-Raphson iteration
Cadence Spectre, Synopsys HSPICE, Mentor Eldo, LTspice (free), ngspice (open-source)
เข้าใจ band theory, PN junction, MOSFET I-V characteristics, threshold voltage, carrier transport — พื้นฐานที่ทุก IC designer ต้องรู้
Tools: LTspice / Cadence Spectre (SPICE simulation)
Related: Device Physics · MOSFET Fundamentals · CMOS Logic Basics
Path: IC Design Engineer
02 DC Analysis
DC Analysis หา operating point ของวงจรโดยแก้ nonlinear KCL equations ที่ steady state — ใช้ Newton-Raphson convergence
DC Sweep: กวาด input voltage/current แล้วพล็อต output — ได้ VTC curve ของ inverter, I-V ของ MOSFET
Operating Point (.op): คำนวณ DC bias ทุก node ในวงจร — จำเป็นก่อน AC analysis
03 AC Analysis
AC Analysis linearize วงจรรอบ operating point แล้วหา frequency response — ได้ Bode plot (gain & phase vs frequency)
ใช้วิเคราะห์ bandwidth, gain margin, phase margin ของ amplifier/filter
04 Transient Analysis
Transient Analysis จำลองวงจรในโดเมนเวลา — solve differential equations ด้วย numerical integration (Backward Euler, Trapezoidal)
ใช้ดู: switching waveform, propagation delay, rise/fall time, overshoot, settling time, eye diagram
Timestep Control: adaptive timestep สำคัญมาก — timestep เล็กเกินช้า ใหญ่เกินไม่แม่น
05 Monte Carlo & Corner Analysis
Monte Carlo: สุ่ม parameter (VT, tox, W, L) ตาม distribution แล้วรัน simulation หลายร้อย-พันรอบ — ดู yield distribution
Process Corner: TT (typical), FF (fast-fast), SS (slow-slow), FS, SF — จำลอง worst-case ของ fabrication variation
BSIM Model: industry-standard MOSFET model (BSIM4, BSIM-CMG สำหรับ FinFET) — มี parameter หลายร้อยตัวที่ foundry จัดให้ใน PDK
06 SPICE Netlist & Syntax
* CMOS Inverter SPICE Netlist
.include "ptm_45nm.lib"
M1 out in vdd vdd PMOS W=200n L=45n
M2 out in gnd gnd NMOS W=100n L=45n
Vdd vdd 0 DC 1.0
Vin in 0 PULSE(0 1.0 0 10p 10p 500p 1n)
.tran 10p 2n
.measure tran tpd TRIG v(in) VAL=0.5 RISE=1
+ TARG v(out) VAL=0.5 FALL=1
.endองค์ประกอบหลัก: instance name, nodes, model, parameters — .measure ใช้วัด delay/slew อัตโนมัติ