Languages

CommunityCategory: XMODEL다른 Verilog 명령을 사용하여 XMODEL 시뮬레이션 실행하기
SA Support Team Staff asked 9 years ago

우리 회사에서는 customized된 wrapper 스크립트를 사용하여 Verilog 시뮬레이션을 수행합니다. 예를 들면, ncverilog를 로컬 머신에서 직접 실행할 수 없고, ncverilog_bsub이라 부르는 wrapper 스크립트를 통해 LSF 서버에서만 실행하도록 되어 있습니다. 그런데, xmodel 프로그램은 ncverilog를 직접 실행하여 로컬 머신에서 시뮬레이션을 수행하는 것 같더군요. 이것을 바꿀수 있는 방법이 있나요?

1 Answers
Best Answer
SA Support Team Staff answered 9 years ago

예, 있습니다. XMODEL의 configuration 설정을 바꾸어주면 됩니다.
XMODEL의 여러가지 기본 설정변수값들은 $XMODEL_HOME/etc/default_config.py 이라는 Python 형식의 파일에 정의되어 있습니다. 여기서 $XMODEL_HOME 은 XMODEL이 설치되어 있는 디렉토리를 의미합니다. 이 파일을 직접 수정하여 설정변수 값을 바꿀 수도 있겠지만, 그러면 XMODEL의 새 버전을 설치할때마다 같은 수정 작업을 반복해야 하는 번거로움이 있습니다.
질문과 같이ncverilog 명령 대신ncverilog_bsub 명령을 사용하여 XMODEL 시뮬레이션을 수행하고자 하는 경우, 저희가 권장하는 방법은 아래와 같습니다.
1) 아래와 같이 my_config.py 라는 새 configuration 파일을 별도의 디렉토리 위치에 만듭니다. 예를 들면, $XMODEL_HOME 보다 하나 상위 폴더가 좋겠지요.

#!/usr/bin/env xmodelpy
"""
CONFIG my_config.py

A custom configuration file for my own use.
"""

# inherit all the default settings in the default_config.py
from default_config import *

# override the command name for executing NC-Verilog
sim_cmd['ncverilog']['ncverilog'] = 'ncverilog_bsub'
sim_cmd['ncverilog']['ncelab'] = 'ncverilog_bsub'
sim_cmd['ncverilog']['ncsim'] = 'ncverilog_bsub'

2) XMODEL_CONFIG 라는 환경변수를 설정하여 새로운 configuration file의 위치를 알려줍니다. 예를 들어,
bash 계열의 shell을 사용하는 경우:

export    XMODEL_CONFIG=/PATH/my_config.py

csh 계열의 shell을 사용하는 경우:

setenv    XMODEL_CONFIG   /PATH/my_config.py

여기서 /PATH/my_config.py 가 위치한 절대 path를 의미합니다. 이 환경변수 설정은 XMODEL_HOME, XMODEL_SIMULATOR 등 다른 환경변수를 설정할때 함께 하면 편리하겠죠?

3) 이제 설정 변경이 끝났습니다. 설정이 성공적으로 되었는지 확인하시려면 다음과 같이 xmodel 을 실행해보시면, xmodel 이 어떤 명령을 사용하는지 확인해볼수 있습니다.

xmodel --command