Languages

CommunityCategory: MODELZENMODELZEN로 모델생성시 발생하는 “definition of model not found” 또는 “undefined model or subcircuit” 에러메시지

MODELZEN

MODELZEN로 모델생성시 발생하는 “definition of model not found” 또는 “undefined model or subcircuit” 에러메시지

SA Support Team Staff 2019-03-08

MODELZEN으로 모델추출을 진행하는 과정에서 아래와 같은 메시지가 발생하였습니다.

HSPICE를 simulator로 사용하는 경우:

**error** definition of model 'xxx' not found. Please specify a defined model name.

Spectre를 시뮬레이터로 사용하는 경우:

ERROR (SFE-23): The instance 'aaa' is referencing an undefined model or subcircuit, 'xxx'. Either include the file containing the definition of 'xxx', or define 'xxx' before running the simulation.

이러한 에러는 왜 발생하는 것이고, 어떻게 해결해야 하나요?

1 Answers
Best Answer
SA Support Team Staff 2019-03-08

해당 에러메시지는 MODELZEN이 HSPICE 또는 Spectre로 회로의 특성을 추출하는 시뮬레이션을 수행할때, netlist에서 사용되고 있는 소자 모델이 담긴 모델 라이브러리가 제대로 인용되지 않아서 발생하는 것입니다. 다시 말해, 어떤 회로에 대해 SPICE 시뮬레이션을 진행하기 위해서는, 그 회로에 사용된 소자들의 특성을 기술한 모델 라이브러리를 그 시뮬레이션에 포함시켜야 하는데, 이 모델 라이브러리는 보통 공정 파운드리 회사에서 제공하는 PDK에 포함되어 있습니다. 어떤 파일을 어떠한 형태로 SPICE 시뮬레이션에 포함시켜야 하는지는 공정에 따라 다를 수 있으니 해당 공정의 매뉴얼 문서를 참고하시기 바랍니다. 예를 들어, HSPICE 시뮬레이션을 수행하는 경우에는:

.lib "/path_to_model/models.lib" typ

와 같은 구문을 사용하고, Spectre 시뮬레이션을 수행하는 경우에는:

include "/path_to_model/models.scs" section=typ

와 같은 구문을 사용해 모델라이브러리를 포함시키는 경우가 많습니다. 하나이상의 모델 라이브러리를 포함시켜야 하는 경우도 많이 있습니다.
MODELZEN이 HSPICE나 Spectre를 사용해 회로의 특성을 추출할때도 같은 형태로 모델 라이브러리를 포함시켜주어야 합니다. 공정 매뉴얼에서 모델 라이브러리를 포함시키기 위해 권장하는 구문이 있다면, 그 구문의 내용을 technology configuration 파일의 dev_model['hspice'] 또는 dev_model['spectre'] 항목에 정의해주면 됩니다. 더 자세한 내용은 MODELZEN User's Guide의 4.3절 Defining Device Models and Corners 부분을 참고하시기 바랍니다.