티스토리 뷰

이전에 HSPICE에서 License 체크 시간을 줄여 시뮬레이션 속도를 빠르게 하는 방법에 대해서 적은 적이 있다.

 

 

[HSPICE] HSPICE에서 License check 시간 줄이기

HSPICE는 명령어를 실행할 때마다 License를 체크한다. 회로 하나만 돌리거나, 거대한 친구를 돌릴 경우 License 체크 시간은 크게 의미가 없지만 만약 많은 수의 회로를 반복적으로 돌릴 경우 이 시간은 기하급수..

made-by-tia.tistory.com

 

Basic-Client-Server 기능의 경우, 가벼운 회로를 빠르게 돌리고자 할 때 사용한다. 그래서 단순한 Coner-Case Simulation 등만 지원할 뿐 Monte-Carlo 시뮬레이션 등은 지원하지 않는다. 이러한 점을 해결하기 위해서 HSPICE에서는 Advanced-Client-Server 기능을 제공한다. (해당하는 시뮬레이션들을 돌리는 것은 다른 범주에 속하므로 여기서는 다루지 않는다.)

 

뿐만 아니라 Basic-Client-Server 기능의 경우, 하나의 서버에 1개밖에 설정할 수 없지만 Advanced-Client-Server의 경우에는 Port number를 다르게 할당받아 여러개의 Client-Server를 운영할 수 있다. 1개의 Advanced-Client-Server 당 1개의 License가 들어가는 것으로 알고 있으며, 각각 1개씩의 CPU를 할당받는 것으로 알고 있다.

1. 시작하는 방법

hspice -CC

위의 명령어가 가장 기본적인 Advanced-Client-Server의 실행 방법이다. 해당 명령어를 실행할 경우, License Check를 하고 아래와 같은 문구를 띄운다.

위에서 빨간색으로 줄친 25001이 바로 Advanced-Client-Server가 사용하는 Port-number이다. 앞으로는 해당 Port-number를 통해서 Client-Server에 명령어를 전달하게 된다.

 

이 상태에서 한 번 더 [ hspice -CC ] 를 실행할 경우 새로운 Port-number를 할당하며 새로운 Client-Server를 만든다. 즉, 2개의 Clent-Server가 컴퓨터에서 돌아가게 되는 것이다. 

 

이 때, Port-number는 꼭 외우거나 변수로 할당해야 한다. 혹은 시뮬레이션 후 나오는 화면을 잘 봐야 한다. 저것을 까먹을 경우, 자동으로 Client-Server 기능이 꺼질 때 까지 License 1개를 계속해서 잡아먹게 된다. 끌 수 있는 방법이 없는 것이다.

 

2. 사용하는 방법

hspice -CC testbench.sp -port 25001

hspice -CC -i ./sp_file/testbench.sp -o ./result/result.lis -port 25001 > out.log

기본적으로 -CC를 통해서 Client-Server 기능을 쓴다는 것을 알리고, 다음에 testbench.sp를 받아다가 시뮬레이션 할 것임을 쓴다. 그리고 가장 중요한 25001 Port로 선언된 Client-Server에 할당할 것임을 알린다.

 

이를 다른 명령어와 함께 복합적으로 사용할 경우, 그 다음줄에 나온 명령어와 같이 쓸 수 있다.

 

주의사항 : -port의 경우, 모든 기능의 맨 마지막에 넣어주어야 한다는 것이다.

 

3. 종료하는 방법

hspice -CC -K -port 25001

종료는 위와 같이 적어주면 된다. 25001의 경우 다른 Port-number로 바꿔주면 된다.

 

주의사항 : -CC -K -port 순서를 항상 지키자!!

4. 활용 용도

- Python을 통해서 자동으로 HSPICE를 병렬로 돌리는 것을 가능하게 할 수 있다.

- Monte-Carlo 등의 Script를 짜 놓고서 변수만 입력하면 자동으로 돌릴 수 있도록 만들 수 있다.

- 1개만 사용하더라도 1개의 SP file을 반복해서 시뮬레이션 할 경우 시간을 절약할 수 있다.

'연구 > HSPICE' 카테고리의 다른 글

[HSPICE] Measure - 고급 문법 정리  (1) 2021.01.13
[HSPICE] Measure - 기본 문법 정리  (2) 2020.02.11
[HSPICE] Measure - TRIG & TARG 기본  (0) 2019.08.17
[HSPICE] HSPICE 주의 사항  (0) 2019.07.24
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함