Cadence 시뮬레이터 - Spectre Study - 1
1) 2020.06.23 초안 작성
2) 2022.05.07 수정
1. Cadence Sprectre Simulation
Spectre는 Cadence 社의 회로 해석회로 해석 Simulator입니다.
일반적으로 회로해석을 위하여 사용하는 툴로는 아마 pspice를 생각하실텐데요.
비슷한 툴이라고 보시면 되나 훨씬 복잡한 회로를 해석할 수 있고, 더욱 빠릅니다.
다른 툴은 Hspice / Spectre / FineSim .. 여러가지 있으나 그중 Spectre에 대해서 간단하게 정리하였습니다.
우선적으로 회로를 해석하는 방법은 어떤 시뮬레이션을 사용하나 기본적으로 같습니다.
시뮬레이션 툴을 변경한다고 하여 V = IR의 회로 해석을 위한 수식이 바뀌지는 않는다는 것 입니다.
그러나 다이오드와 같이 비선형적인 회로를 구성하는 경우에는 시뮬레이션이 Iteration을 돌게되며 어떻게 값을 수렴(convergence)시킬 것 인지에 대해서는 시뮬레이션 마다 다를 수 있습니다.
2. Simulation 구성
일반적으로 Spectre Simulator로 돌리게 되는 경우
1) Runsim. Option File - (input voltage / option / temp 특성 / save / Cmin, Gmin 등 에 대한 설정하는 파일)
2) Netlist (Spice / Spectre Syntax 둘다 상관 호환됨) + LIB파일 TI社 등 Vendor社의 lib 파일의 라이브러리 파일
3) Lumped RLC로 구성된 Spice 파일
4) Verilog-AMS (https://www.accellera.org/downloads/standards/v-ams)기반의 Va파일도 사용함
+ 하단의 Accellera에서 공유하는 Verilog-Ams에 대한 내용으로 참고
3) Spectre의 종류
spectre / spectreAPS / spectreRF ... 여러가지 존재하는 Sim을 간단히 정리해본다면,
. spectre - 시뮬레이터
. spectre APS - spectre + cpu(멀티 스레드) => spectre와 동일한 accuracy에 FastSim. 가능함
. spectre RF - Sparameter 해석
. spectre XF - Fullchip Sim
. AMS Designer - Analog + Digital 해석할때 사용함 (Analog는 Spectre APS / Digital은 nc verilog 사용해서 동시 Sim)
기본적으로 Spectre는 Cadence에서 제공하는 Simulator로 흔히 MMSIM이라고 하며 (MMSIM - Multi-Mode Sim)
- Mixed Simulation(Analog+Digital 회로 해석)을 할 때 사용합니다.
※ Spectre. Vs Hspice.
Spectre社 에서는 기본적으로 voltage tolerance 기반하여 해석하기 때문에 charge tolerance 기반의 Hspice보다 더 정확하다고 함, (+ Hspice는 속도가 매우 느립니다.)
- Voltage(전압)라는 것은 결국 Q=CV로 Charge 량이 voltage로 보이는 것인데, 이는 결국 chgtol을 정확하게 맞춘다면 Hspice보다 정합성이 떨어진단 얘기...
- 하단 내용이 관련한 내용으로 User들은 chgtol 관심도 없고 매번 sim할 때마다 chgtol을 맞춰야하는데 귀찮다.. 뭐 그런 내용으로 이해함. 그래서 voltol방식인 Spectre가 더 정확하다!라고 이야기 하는것으로 파악이 됩니다.
- 하지만, 결국에 Sim을 해석하는 해석 방법은 동일하기 때문에 (MNA, 노달 해석, => 참고
모델에 대한 정합성이 tol보다 더욱 크게 작용함
회로 해석시 R같은 선형 회로의 경우 우리가 아는 회로이론으로 컴퓨터가 계산하나,
반면, Diode 같은 소자가 들어가서 비선형 회로가 되면, Iteration(컴퓨터가 반복 계산)하면서 수렴하게 되는데 이 경우 Simulation의 매우 짜증나는 Convergence 에러가 뜸 (보통은 tolerance값을 높이거나 Timestep을 조절하여 디버깅)
며칠을 돌려서 50%이상 맞춰놨더니 갑자기 Convergence 에러가 난다(?) ==> !? => 분노가 오릅니다.
'스터디 공간' 카테고리의 다른 글
[회로이론] Spectre (2) - Syntax (0) | 2021.03.01 |
---|---|
[Pandas] 누락 데이터 처리 (0) | 2021.03.01 |
[Study w/ VS Code] Tensorflow - Day1 (0) | 2021.03.01 |
[회로이론/전자회로/수동부품] 캐패시터 / Capacitor / Decap (0) | 2021.01.18 |
[Pandas] groupby - Aggregation (0) | 2020.12.21 |
댓글