Languages

CommunityCategory: MODELZENAvoiding unnecessary re-characterization of devices by MODELZEN

MODELZEN

Avoiding unnecessary re-characterization of devices by MODELZEN

SA Support Team Staff 2020-12-30

When you run MODELZEN for the second time, MODELZEN recycles the previously-run characterization results for the devices. However, when I make any change to the technology configuration file, even when the change should not affect the characterization results, MODELZEN conservatively assumes that the previous characterization results have become invalid and re-runs all the characterizations. While I agree that this is a safe thing to do, sometimes it wastes unnecessary time.

Is there a way for me to tell MODELZEN that it is safe to recycle the previously-run characterization results despite the changes I made to the technology configuration file?

1 Answers
Best Answer
SA Support Team Staff 2020-12-30

There are two possible ways depending on your situation. One is temporary while the other is permanent.

If you've just made a quick change to the technology configuration file but don't want to re-run all the device characterizations for this particular change, you can cheat MODELZEN by setting back the timestamp of the technology configuration file. This is exploiting the fact that MODELZEN determines whether it has to re-run the characterizations by comparing the file timestamps. For example, if the last MODELZEN characterizations were run sometime on December 28, 2020, you can deliberately set the timestamp of the technology configuration file (e.g. tech_config.py) to 00:00.00 of the same day using the 'touch' command in Linux as shown below:

touch -d "2020-12-28" tech_config.py

On the other hand, if you have determined that the technology-related settings within the technology configuration file such as dev_model, devo_devicemap, and devo_subcktmap have reached a mature state after a sufficient number of trials and you have built high confidence that they will never be modified, you can store the current characterization results as the trustworthy ones by defining a 'simulation vault'. MODELZEN always recycles the characterization results stored in the simulation vault regardless of the later changes made to the technology configuration file.

You can create a simulation vault from the existing characterization results by copying the MODELZEN simulation directory to a new location and specifying its location in the technology configuration file. The MODELZEN simulation directory is a directory containing the device characterization results run by MODELZEN. Its default location is './modelzen.run/sim' if you run MODELZEN from GLISTER and './modelzen.sim' if you run MODELZEN from the command line. For example, you can copy a MODELZEN simulation directory ./modelzen.run/sim to a new location named /PATH/sim.vault, by using the 'cp' command of Linux with the '-R' option:

cp -R ./modelzen.run/sim /PATH/sim.vault

Next, specify the location of this simulation vault in the technology configuration file by adding the following line:

devo_options['sim_vault'] = '/PATH/sim.vault'

This simulation vault can be an effective way to share and recycle the device characterization results among multiple users or teams using the same technology setup. However, to avoid possible pitfalls due to blindly trusting the characterization results contained in the simulation vault, one must use great cautions. That is, users must take full responsibilities in guaranteeing that the characterization results stored in the simulation vault are valid and up-to-date.

MODELZEN

MODELZEN이 불필요하게 소자특성 시뮬레이션을 다시 수행하는 것을 방지하는 방법

SA Support Team Staff 2020-12-30

MODELZEN 실행을 여러번 하면, MODELZEN은 이전에 수행했던 소자특성 시뮬레이션 결과들을 재활용해서 모델을 빨리 생성하는 것을 보았습니다. 하지만, technology configuration 파일에 어떤 수정이라도 가하면, 그 수정 내용이 이전 소자특성 시뮬레이션 결과들에 전혀 영향을 주지 않는 아주 사소한 것이라 하더라도, MODELZEN은 보수적으로 이전 소자특성 시뮬레이션 결과들이 더 이상 유효하지 않다고 가정하고 모든 소자특성 시뮬레이션을 다시 수행하는 것 같습니다. 이것은 물론 올바른 결과를 보장하는 안전한 방법이라는 데에는 동의하지만, 가끔은 시간을 불필요하게 낭비하는 요소가 되는 것 같습니다.

사용자가 직접 MODELZEN에게 technology configuration 파일이 수정되었지만, 그 수정 내용이 이전 소자특성 시뮬레이션 결과에 영향을 미치지 않으니 그것들을 재활용해도 괜찮다고 알려주는 방법이 있을까요?

1 Answers
Best Answer
SA Support Team Staff 2020-12-30

There are two possible ways depending on your situation. One is temporary while the other is permanent.

If you've just made a quick change to the technology configuration file but don't want to re-run all the device characterizations for this particular change, you can cheat MODELZEN by setting back the timestamp of the technology configuration file. This is exploiting the fact that MODELZEN determines whether it has to re-run the characterizations by comparing the file timestamps. For example, if the last MODELZEN characterizations were run sometime on December 28, 2020, you can deliberately set the timestamp of the technology configuration file (e.g. tech_config.py) to 00:00.00 of the same day using the 'touch' command in Linux as shown below:

touch -d "2020-12-28" tech_config.py

On the other hand, if you have determined that the technology-related settings within the technology configuration file such as dev_model, devo_devicemap, and devo_subcktmap have reached a mature state after a sufficient number of trials and you have built high confidence that they will never be modified, you can store the current characterization results as the trustworthy ones by defining a 'simulation vault'. MODELZEN always recycles the characterization results stored in the simulation vault regardless of the later changes made to the technology configuration file.

You can create a simulation vault from the existing characterization results by copying the MODELZEN simulation directory to a new location and specifying its location in the technology configuration file. The MODELZEN simulation directory is a directory containing the device characterization results run by MODELZEN. Its default location is './modelzen.run/sim' if you run MODELZEN from GLISTER and './modelzen.sim' if you run MODELZEN from the command line. For example, you can copy a MODELZEN simulation directory ./modelzen.run/sim to a new location named /PATH/sim.vault, by using the 'cp' command of Linux with the '-R' option:

cp -R ./modelzen.run/sim /PATH/sim.vault

Next, specify the location of this simulation vault in the technology configuration file by adding the following line:

devo_options['sim_vault'] = '/PATH/sim.vault'

This simulation vault can be an effective way to share and recycle the device characterization results among multiple users or teams using the same technology setup. However, to avoid possible pitfalls due to blindly trusting the characterization results contained in the simulation vault, one must use great cautions. That is, users must take full responsibilities in guaranteeing that the characterization results stored in the simulation vault are valid and up-to-date.