AC 해석 설정: 커브, 포인트, 주파수 스윕 설정
AC 해석:
General form: .ac [curve] [points] [start] [final] Example 1: .ac lin 1 1000 1000
설명: [curve] 필드는 'lin'(선형), 'dec'(데이케이드), 'oct'(옥타브)로 주파수 스윕의 (비)선형성 지정. [points]는 스윕 내 해석 포인트 수(데이케이드면 decade당 포인트, 옥타브면 octave당 포인트). [start]와 [final]은 스윕 시작/끝 주파수. 주의: 'start' 값은 0이 될 수 없음!
DC 해석:
General form: .dc [source] [start] [final] [increment] Example 1: .dc vin 1.5 15 0.5
설명: .dc 카드는 0이 아닌 두 노드 사이 전압을 출력/플롯하려면 필수. 아니면 기본 'small-signal' 해석만 각 0이 아닌 노드와 노드 0 사이 전압 출력.
과도 해석:
General form: .tran [increment] [stop_time] [start_time] + [comp_interval] Example 1: .tran 1m 50m uic Example 2: .tran .5m 32m 0 .01m
설명: 예1: 증분 1ms, 정지시간 50ms(두 파라미터만 있으면 증분과 정지시간). 예2: 증분 0.5ms, 정지 32ms, 시작 0ms, 계산간격 0.01ms. 시작시간 기본값 0. 과도 해석은 항상 시간 0부터 시작하지만 데이터 저장은 시작~정지 사이. 출력 간격은 증분시간 또는 (정지-시작)/50 중 작은 값. 계산간격 변수로 더 작은 강제 가능. 큰 총 간격 카운트엔 .options 카드의 itl5 변수 증설. 'uic' 옵션은 '초기 조건 사용' 지시.
플롯 출력:
General form: .plot [type] [output1] [output2] ... [output n] Example 1: .plot dc v(1,2) i(v2) Example 2: .plot ac v(3,4) vp(3,4) i(v1) ip(v1) Example 3: .plot tran v(4,5) i(v2)
설명: 단일 .plot 또는 .print 카드에 8개 초과 데이터 요청 불가. 8개 넘으면 여러 카드 사용!
SPICE 버전 3 주요 주의점: AC 해석에서 AC 전압 플롯 요청 시 v(3,4)는 복소수의 실수부만 출력! SPICE 2는 극좌표 크기 출력(단일 양 요청 시 더 의미 있음). SPICE3에서 극좌표 크기 얻으려면 vm(3,4)로 다시 써야 함.
프린트 출력:
General form: .print [type] [output1] [output2] ... [output n] Example 1: .print dc v(1,2) i(v2) Example 2: .print ac v(2,4) i(vinput) vp(2,3) Example 3: .print tran v(4,5) i(v2)
설명: .plot과 동일하게 8개 초과 요청 불가. 여러 카드 사용.
푸리에 해석:
General form: .four [freq] [output1] [output2] ... [output n] Example 1: .four 60 v(1,2)
설명: .four 카드는 .tran 카드가 덱 어딘가에 있어야 하고, 충분한 주기 해석을 위한 적절한 시간 파라미터 필요. 또한 .plot 해석이 함께 안 되면 SPICE가 '크래시'할 수 있음(모든 .tran 파라미터가 기술적으로 맞더라도). .four 옵션은 AC 소스 주파수가 소스 카드 라인에 지정됐을 때만 작동, .ac 옵션 라인에선 안 됨.
.tran 카드에 계산간격 변수 포함하면 해석 정밀도 향상. 지정된 전압/전류의 푸리에 해석을 9차 고조파까지 수행, [freq]가 기본주파수(분석 스펙트럼 시작 주파수).
기타:
General form: .options [option1] [option2] Example 1: .options limpts=500 Example 2: .options itl5=0 Example 3: .options method=gear Example 4: .options list Example 5: .options nopage Example 6: .options numdgt=6
설명: 지정 가능한 옵션 많음. 초보자가 가장 필요로 하는 건 'limpts' 설정. 201개 초과 포인트 출력/플롯 시 이 계산 포인트 한도 늘려야 else SPICE가 해석 중단. 위 예(limpts=500)는 분석 유형(DC, AC, 과도) 상관없이 최소 500 계산 포인트 메모리 할당 지시.
예2: 반복 변수 itl5를 0으로 설정. 사용자 조작 가능한 6개 반복 변수 존재. 비선형 방정식 해법의 반복 사이클 한계 제어. itl5는 과도 해석 최대 반복 수. limpts처럼 .tran 카드에서 작은 계산간격 지정 시 보통 증설 필요. itl5를 0으로 하면 한도 완전 해제 → 무한 반복 사이클(무한 시간) 허용. 경고: 시뮬레이션 시간 길어질 수 있음!
예3 method=gear는 SPICE의 수치 적분 방법 설정. 기본은 'trapezoid'(사다리꼴 근사). 'gear'는 2차 이상 다항식 기반, C.W. Gear 명명(Numerical Integration of Stiff Ordinary Equations, Report 221, UIUC). Gear법이 계산량 더 많음('비쌈')이고 때로 사다리꼴법과 약간 다른 결과.
list 옵션(예4)은 최종 출력에 모든 회로 소자와 값 상세 요약 출력.
기본적으로 SPICE 출력은 ASCII 페이지브레이크 코드 삽입해 분석 섹션 분리. nopage(예5)로 페이지네이션 방지.
numdgt(예6)는 .print 데이터 출력 시 유효숫자 자리수 지정. SPICE 기본 4자리.
폭 제어:
General form: .width in=[columns] out=[columns] Example 1: .width out=80