Download presentation
Presentation is loading. Please wait.
1
SPICE 소개 및 사용법 정보통신공학과 이종복 교수
2
SPICE 실습 I. 개요 SPICE(Simulation Program with Integrated Circuit Emphasis )란 ? - 범용 회로 시뮬레이션 프로그램 - R,L,C 및 전류원,전압원 포함 - 반도체소자(diode,BJT,JFET,MOSFET)를 포함 - 직류분석, 과도분석,교류분석 - University of California, Berkeley의 Dr. Lawrence Nagel 개발
3
SPICE 회로문법 저항 : R 캐피시터 : C 전압원 : V BJT : Q JFET : J MOSFET : M
PULSE파 : 디지털회로 SIN파 : 아날로그 회로 BJT : Q JFET : J MOSFET : M Voltage Controlled Voltage Source : E
4
SUB CIRCUIT 기능 : 하나의 회로를 객체로 만들어서 호출하여 이용함. 프로그램의 서브루틴이나 함수와 비슷함. 문법 :
정의 .SUBCKT 서브회로명 노드명1,노드명2,...,노드명N 회로 기술 .ENDS 서브회로명 호출 X1 실제노드명1,...,실제노드명N 서브회로명
5
SPICE 명령문 MODEL : 모델문 .DC : 직류분석 .TRAN : 과도분석 .AC : 교류분석 . * : 코멘트
NPN : NPN 바이폴라 트랜지스터 PNP : PNP 바이폴라 트랜지스터 NMOS : NMOS 트랜지스터 PMOS : PMOS 트랜지스터 .DC : 직류분석 .TRAN : 과도분석 .AC : 교류분석 . * : 코멘트 .END : 종료문 .probe : 파형보기
6
% Microsim Eval 8 PSPICE 사용법
[1] 시뮬레이션하고자하는 회로를 text editor로 만든다. 이 화일을 test.cir이라고 하자. [2] 시작 -> 프로그램 -> MicroSim Eval8 -> PSPICE A_D를 선택한다. [3] PSpiceAD 창이 뜨면 File->Open->test.cir을 선택하여 더블클릭하면 시뮬레이션이 시작된다. 추후에 PSpiceAD창을 띄우고 싶으면 Microsim Design Manager 에서 좌측 상단 두번째 메뉴 (Run PSpice A/D)를 클릭한다. [4] 성공적으로 수행이 되었으면 PSpiceAD 창의 File -> Examine Output으로 결과를 본다. DC 분석값이나 AC 전압이득값은 이것을 보고 충분하다. [5] 에러가 발생하면 역시 PSpiceAD 창의 File->Examine Output 으로 에러의 원인을 살핀다.
7
[5] 그래픽으로 출력을 보고 싶으면 test.cir에 .probe 명령어를
삽입하고 File->Run Probe를 시행한다. 그러면 Microsim Probe 창이 뜬다(과도분석에서 파형을 관찰하거나 주파수분석 결과를 보고 싶을 때 Probe를 한다). [6] Trace->Add를 통하여 노드가 수록된 창에서 보고 싶은 신호를 선택한다. [7] View -> Area 후 마우스로 확대해서 보고 싶은 영역을 정하면 그 부분을 크게 볼 수 있다. 전체 파형으로 되돌아가고 싶으면 View -> Fit을 실행한다. [8] 입력과 출력의 스케일이 달라서 동시에 보기가 어려우면 Plot -> Add Plot하여 플롯화면을 2 개의 윈도우로 나누어 검사한다. 이 때 왼쪽 마우스를 클릭하면 SEL>>이 나타 나서 어느 플롯 윈도우가 활성화되었는지를 나타낸다.
8
[9] 입력파형과 출력파형의 스케일이 다른 경우 Plot->Add Y-Axis를 이용하여 복수개의 Y축을 동시에 볼 수 있다.
[10] 주파수 분석에서 Trace->Add 했을 때 Functions or Macros에서 DB, P등을 선택하고 Output Variables에서 원하는 노드를 선택하여 원하는 함수값을 적용하여 그 파형을 나타낼 수 있다. 아니면 하단에 직접 손으로 입력 가능하다. [11] Trace->Eval Goal Functions 하여 Functions or Macros에서 Max,Min등을 선택하고 Output Variables에서 원하는 노드를 선택하여 그 값을 알 수 있다. [12] Tools->Cursor를 선택하면 커서가 나타난다. 마우스 좌측버튼으로 파형을 찍으면 A1=X 좌표값, Y좌표값이 조그만 창에 나온다. 우측버튼을 찍으면 A2=X좌표값, Y좌표값이 나타나며, 두 지점간의 차이가 diff=X좌표차이값, Y좌표차이값과 같이 표현된다.
9
[11] 주파수응답 결과를 dB로 정규화해서 보고 싶으면
Trace->Add 했을 때 20* LOG10(V(출력노드)/중간주파수이득))의 수식을 Trace Expression란에 직접 쳐넣는다 (아니면 Functions or Macros에서 수식을, Output Variables에서 노드를 선택하고 Ok를 누르면 된다). 또는 DB(V(출력노드/중간주파수이득))도 가능하다. [12] 시뮬레이션 결과중 Text는 화일명.out으로 생성되며, Probe결과는 화일명.dat으로 생성된다. [13] SPICE에서 floating node는 허용되지 않으므로 불가피한 경우 10 MEG 이상의 매우 큰 저항을 연결하면 사실상 floating node역할을 한다. [14] MicroSim Probe에 파형을 띄운 상태에서 재시뮬레이션이 되지 않으므로 이 창을 닫은 후에 재시뮬레이션 한다.
10
% 예제1 : 다이오드 반파정류 DIODE HALF WAVE RECTIFIER VS 1 0 SIN (0 5V 1KHz) D1 1 2 TYDIODE R K .MODEL TYDIODE D (VJ=0.7) .TRAN 1ms 5ms .PROBE .END 1 2
11
% 다이오드 반파정류 시간도메인 파형
12
% 예제3 :공통이미터 증폭기 과도분석 VCC 5 0 DC 22V R K R K RE K RC K RL MEG C UF CE UF VS 4 0 SIN(0 1mV 1KHz) * SIN (dc-offset amplitude freq) Q TYNPN .MODEL TYNPN NPN(BF=90 IS=5E-15) .OP .TRAN 10us 5ms * tstep tstop .OPTIONS NOPAGE .probe .END 5 3 6 4 2 1
13
**** SMALL SIGNAL BIAS SOLUTION
TEMPERATURE = DEG C NODE VOLTAGE NODE VOLTAGE NODE VOLTAGE ( 1) ( 2) ( 3) ( 4) ( 5) VOLTAGE SOURCE CURRENTS NAME CURRENT VCC E-03 VS E+00 TOTAL POWER DISSIPATION E-02 WATTS
14
**** BIPOLAR JUNCTION TRANSISTORS
NAME Q1 MODEL QMODEL IB E-05 IC E-03 VBE E-01 VBC E+01 VCE E+01 BETADC E+01 GM E-02 RPI E+03 RX E+00 RO E+12 CBE E+00 CBC E+00 CJS E+00 BETAAC E+01 CBX E+00 FT E+17
15
% 예제 3: Time Domain에서의 입출력 파형
16
% Plot->Add Y-Axis로 scale이 다른 그래프 동시 보기
17
% 예제 4 :공통이미터 AC분석 5 3 6 4 2 1 VCC 5 0 DC 22V R1 5 2 56K R2 2 0 8.2K
RE K RC K CS UF CC PF RL MEG CE UF VS 4 0 AC 1mV 0 *AC 진폭 위상 Q TYNPN .MODEL TYNPN NPN(BF=90 IS=5E-15) .OP .AC LIN 1 10KH 1000KH * 점의수, 시작주파수, 최종주파수 .OPTIONS NOPAGE .probe .PRINT AC VM(3) VM(4) * 입력과 출력의 진폭을 출력하라 .END 5 3 6 4 2 1
18
% AC 분석 결과 **** AC ANALYSIS TEMPERATURE = DEG C FREQ VM(3) VM(4) 1.000E E E-03
19
% 예제5:CE 주파수분석 frequency response vcc v rb k rb k rc 4 5 4k re 6 0 2k rs 2 1 1k rl k cs uf ce uf cc 5 7 1uf cbe pf cbc 5 3 4pf cce 5 6 1pf q tynpn cw pf cw pf vs 1 0 ac 1mV .model tynpn npn bf=100 is=5e-15 .ac dec 10 10hz 100meghz * 점의 수 시작주파수 최종주파수 .plot ac v(7) db(7) p(7) .options nopage .end 4 5 7 1 2 3 6
20
% Probe를 시행한 주파수 응답 그래픽 결과
21
% 출력노드의 dB와 위상
22
% 정규와 및 3dB Cut Off Frequency 구하기
23
**** SMALL SIGNAL BIAS SOLUTION
TEMPERATURE = DEG C NODE VOLTAGE NODE VOLTAGE ( 1) ( 2) ( 3) ( 4) ( 5) ( 6) ( 7)
24
Simple OP AMP modeling vin vi 0 sin(0 1mV 1KHz) x1 vo 0 vi- opamp r1 vi vi- 10k rf vi- vo 100k .tran 1ms 100ms .probe .subckt opamp vo vi+ vi- e1 vo 0 vi+ vi- 1e6 * vcvs, +node -node +cntrl -cntrl gain .ends opamp .end rf vi r1 vo vi- vi+
25
O O O O O O Wien Bridge Oscillator v1 3 0 15 v2 4 0 -15 r1 0 2 1k
c uF c uF xblock ua741 .ic v(5)=-15 .op .lib .tran 0.05m 2.5m 0.025m .probe .end O O O O O O
26
과제 제출 회로 그림 및 노드 번호 직류분석, 교류분석, 주파수분석 손으로 푼 것 SPICE와의 결과비교 제출 시 유의사항 :
직류분석 : 주요 노드 전압과의 비교 과도분석 : 입력파형과 출력파형을 비교하여 전압이득 측정 교류분석 : 전압이득을 Time domain 입력 파형과 출력 파형의 진폭을 측정하여 비율을 구함(.TRAN 분석). 입력에 1V 를 주고 출력값을 읽음(.AC 분석). 주파수분석 주파수 도메인에서 파형을 normalize 하여 -3dB 인 지점을 측정하여 비교(Tools->Cursor 이용) 제출 시 유의사항 : 폴더를 자기 이름으로 해서 압축할 것 예)홍길동.zip
Similar presentations