전원 설계 기술 정보 사이트

기술 자료 다운로드

2019.03.07 시뮬레이션

SPICE 시뮬레이션의 수렴성과 안정성

전자 회로 시뮬레이션의 기초

최근, SPICE를 베이스로 한 시뮬레이터의 시뮬레이션 결과는 실제의 특성에 매우 근접합니다. 경우에 따라서는 그 결과를 현실적으로 이상적인 특성으로 생각하여, 실제의 회로 특성을 그에 맞추어 조정하는 등, 매우 「유용한」 툴로 사용할 수 있습니다. 그러나, 해석 알고리즘 및 조건 설정, 디바이스 모델에 따라서는 수렴성 및 안정성에 과제가 있습니다. 시뮬레이션의 수렴성과 안정성이라는 과제를 이해함으로써, 보다 효과적으로 시뮬레이션을 이용할 수 있습니다.

SPICE 시뮬레이션의 수렴성과 안정성

시뮬레이션에서 수렴성의 문제란, 실행해도 계산을 시작하지 않거나 도중에 멈추는 단순한 것부터, 약간의 조건 변경에도 결과가 대폭 달라지는 등, 있을 수 없는 결과가 얻어지는 경우가 있습니다. 간단히 말하자면, 해석 에러 및 결과가 불안정적이라는 것입니다.

이에는 몇가지 원인이 있는데, 디바이스 모델에 기인하는 예를 들어보겠습니다. 하기는 직렬로 접속한 저항과 다이오드의 I-V (전류 – 전압) 특성이며, 다이오드와 같은 비선형 디바이스의 시뮬레이션은 저항과 같이 전류와 전압이 단순히 비례하는 선형 디바이스에 비해 복잡해집니다. 저항의 I-V 특성의 계산식은 누구나 간단히 세울 수 있을 것입니다. 그러나, 다이오드의 순방향 특성에 대한 식은 금방 떠오르지 않을 것입니다. 하기 예는 SPICE에서는 잘 알려진 뉴턴의 법칙을 사용하여, 부하 선과 비선형 부하 (이 경우에는 다이오드)의 교차점인 동작점의 시뮬레이션을 반복하여 구하는 방법을 나타냅니다. 이러한 디바이스 모델의 특성이 불연속이거나, 변곡점 (変曲点)을 지니는 등 특성이 복잡할 경우, 오른쪽 그림과 같이 「있을 수 없는」, 수렴되지 않는 결과가 얻어지는 경우가 있습니다.

수렴성과 안정성이 나쁜 경우의 대처 방법

수렴성과 안정성이 나쁜 경우에는 몇가지 대처 방법이 있습니다. 이는 시뮬레이터에 따라 차이가 있으므로, 하나의 예로서 인식하여 주십시오. 시뮬레이터의 설정 항목에 수렴성 및 안정성에 관계되는 항목이 있으므로, 이러한 항목을 변경합니다. 본 예에서는 알고리즘에 3가지 선택지가 있으므로, 선택을 변경해 봅니다. 또한, 정밀도 및 오차 등의 수렴 조건도 변경해 봅니다.

①알고리즘을 Gear로 변경한다.
   ・trapezoidal (사다리꼴 법칙) : 계산 속도와 정밀도는 높지만, 수렴성이 낮음.
   ・modified trap (사다리꼴 법칙 개량판) : 사다리꼴 법칙의 수렴성을 개선.
   ・Gear (예측자 수정법) : 수렴하기 쉽지만 계산 속도, 정밀도 면에서는 열등함.

②수렴 조건을 완화한다.
   ・Abstol : 전류 정밀도. 그림의 경우 1pA 이내.
   ・Reltol : 상대 오차. 그림의 경우 0.1% 이내.
   ・Chgtol : 전하 정밀도. 그림의 경우 10fC 이내.
   ・Vlottol : 전압 정밀도. 그림의 경우 1uV 이내.
정밀도를 높이면 (값을 낮추면), 계산 속도는 저하되지만 수렴성은 높아진다.

③Maximum Timestep을 설정한다. 이 부분은 공란으로 남겨두어도 시뮬레이션은 가능하지만, Timestep을 너무 크게 잡아서 에러가 발생하는 경우가 있다.

④Tran (과도 해석)에서 최초의 DC 포인트의 수렴이 나쁜 경우에는 「skip dc」로 설정하는 것이 효과적이다.

상기는 유저 측에서 시뮬레이터 설정 등의 변경을 통해 수렴성 및 안정성 문제를 회피할 수 있는 경우의 접근 방법이지만, 그 중에는 디바이스 모델 자체에 결함이 있는 경우도 있습니다. 이러한 경우에는 시뮬레이션 에러를 유저 측에서 해결하는 것은 매우 어렵습니다.

만약, 디바이스 모델을 작성하는 경우에는 우선 정밀도보다 수렴성과 안정성을 중시하여, 동작하는 디바이스 모델을 작성하는 것이 중요합니다.

키 포인트

・SPICE 베이스의 시뮬레이터에서 해석 에러 및 결과가 안정적이지 않은 경우에는 수렴성과 안정성의 문제로 생각할 수 있다.

・수렴성과 안정성의 문제는 SPICE 시뮬레이터의 설정을 변경함으로써 회피할 수 있는 경우가 있다.

・디바이스 모델에 결함이 있는 경우에는 유저 측에서 해결하기 곤란하다.