2023년 6월 12일 월요일

회로 시뮬레이터 SPICE 사용법 [서론]

회로 시뮬레이터 SPICE 사용법 [서론]

--------------------------------------------------------------------------------------

SPICE 회로 시뮬레이터 개요

위키사전에 SPICE를 이렇게 소개하고 있다[링크]

SPICE (Simulation Program with Integrated Circuit Emphasis)는 공용 오픈소스 아날로그 회로 시뮬레이터이다. 이것은 집적 회로와 보드 레벨 설계에 사용되며, 회로 설계의 무결성을 확인하고 그 회로의 동작을 예측한다.

아날로그 회로를 집적회로보드레벨 에서 시험 할 수 있다고 한 점에 주목하자. 왜 우리가 이 회로 시뮬레이터를 배워야 하는지 잘 대변해 주는 말이다. 아직 만들어지지 않은 회로 혹은 부품을 미리 작동 시켜 보자는 것이다. 아날로그 회로의 시뮬레이션이란 회로의 물리적 특성(전압과 전류)을 기술하고 시간과 주파수의 관점에서 동작을 보자는 것이다.

[질문1] 아날로그 회로 시뮬레이터와 디지탈 회로 시뮬레이터의 차이를 이야기 해보자.
[질문2] 아날로그 회로 시뮬레이터로는 디지털 회로를 모의실행 할 수 없을까?

학습에 사용할 LT-SPICE

SPICE는 오픈 소스(open source) 기반의 회로 시뮬레이터다. 다만 사용자 인터페이스나 자사 설계도구(design tools)들과 연계시켜 놓고 상업화 한 여러 버젼이 존재한다. 이 교육과정에서는 LT-SPICE를 사용하겠다. 다른 버젼의 SPICE도 무방하다.

LT-SPICE는 아마도 가장 널리 사용되는 툴 중의 하나일 것이다. 그런만큼 인터넷에서 수많은 자료를 얻을 수 있다. 이번 학습과정도 유튜브 Fesz 채널의 내용을 많이 참고 하였다.

[참고] Youtube Fesz Channel, LT-Spice Tutorial [Link]

LT-Spice는 아래 링크에서 내려 받아 설치할 수 있다.

[설치] LT-Spice Download [Link]

SPICE의 회로 기술(Circuit Description)  

여타 프로그래밍 언어 처럼 SPICE도 문법 체계를 가지고 있다. 다만 이 문법 체계가 하드웨어(회로부품) 사이의 결선(netlist)을 표현한 것이어서 문서로 작성하기 매우 까다롭기 때문에 대부분 그래픽 사용자 인터페이스(GUI, Graphic User Interface) 상에서 설계가 이뤄진다.

SPICE 의 회로 기술 문서(circuit description, document)는 표준화 되어 있으므로 이를 준수하는 다른 버젼에서도 불러 쓸 수(portable) 있다.

SPICE는 프로그래밍 언어의 성격을 가지는데, 예를들어 반복문, 조건문 등을 사용할 수 있으며 계층적 회로 구성이 가능하다. 말하자면 하위회로(sub-circuit)를 작성하여 라이브러리로 불러올 수 있다는 뜻이다.

하위회로(sub-circuit library) 뿐만 아니라 시뮬레이션의 대상회로(DUT, Design Under Test)에 인가할 다양한 형태의 입력을 생성하고 출력물을 시험하기 위해 여러 수학 함수(mathematical functions))들을 라이브러리로 제공한다. 사용자 정의 수식표현(user-defined expression)도 가능하다.

테스트 벤치 명령(Testbench, Simulation Command)

SPICE로 기술한 회로는 부품 사이의 결선과 회로의 동작에 필요한 초기설정, 시뮬레이션 방법(시간 진행상 시뮬레이션, 주파수 특성 시뮬레이션)의 지정 등을 수행하는 명령을 기술 할 수 있다. 우리는 이를 테스트 벤치 또는 시뮬레이션 조건 이라고 한다.

지금 당장 이 말이 뭔소리인지 모르더라도 일단 알아두자. 이번 학습이 끝나면 무슨말인지 다 알게 될 것이다.

----------------------------------------------------------------------

학습 내용

단순히 SPICE라는 회로 시뮬레이터 도구의 사용법을 배우는 것 보다 실제 전자회로에 사용되는 기본 부품들(저항, 컨덴서, 코일, 다이오드, 트랜지스터)을 함께 배우게 될 것이다. 그리고 회로 시뮬레이션의 결과로 무엇을 볼 것인지도 알게 될 것이다. 시뮬레이터가 보여주는 전압과 전류의 변화를 그래프로 보여줄 텐더 그게 무슨 의미인지 알아보려는 것이다. 시뮬레이터가 보여주는 값들을 읽을 줄 알아야 개선도 해보고, 대체 부품을 선택할 수 있을 것이고, 새로운 응용처도 생각해 볼 것이 아닌가.

학습내용은 다음과 같다. (세부 내용은 변경 예정)

  • 저항과 분압회로/LTSPICE 기본 사용법 [링크]
  • 전자회로에서 컨덴서와 코일의 역활 [링크]
  • LC 결합 공진회로와 필터회로/LTSPICE의 주파수 분석
  • 임피던스 매칭/스미스 차트 활용
  • 트랜지스터의 스위칭 및 증폭회로
  • 상용 아날로그 반도체 부품의 라이브러리 활용
------------------------------------------------------------------------

학습시간

 3주 과정/하루 1시간 (분량에 따라 변경예정)

------------------------------------------------------------------------

* 모든 학습 내용은 학습 블로그에 게시됩니다.

------------------------------------------------------------------------


댓글 없음:

댓글 쓰기