Synopsys 버전을 찾아보기..

Solvnet newsletter으로 보내진 reference script를 보다보니, 세상이 많이 바뀌긴 한거 같습니다. ^^;

Doony님께서도 블로그에 쓰셨습니다만, 저희도 Synopsys의 Design Compiler에 대한 의존도가 높다보니, Reference Methdology에 대하여 관심을 가지지 않을 수 없지요.

Design Compiler를 여러가지 버젼을 혼용하는 환경에서는 하나의 스크립트로 통합하여 사용하는데 어려움을 겪을 수도 있는데요.. (음.. 실제적으로 한 회사내에서 혼용하는 경우는 적겠지만, 저희 같은 경우는 IP 제공이 주된 업무이다보니, 버전을 적게 타는 스크립트를 주로 생각하게 되죠..)

이때는 compatibility_verion 이라는 synopsys의 내부 변수를 살펴보면 되죠. (printvar compatibility_verion 하면 현재 구동중인 버전을 알수 있어요. ) 근데 예전에는 이 버전의 형식의 그냥 숫자라서 여러 연산이 가능했는데, 이제는 Y니 A니 SP니 이런 영문자가 들어가서 좀 따지기 귀찮죠.. (여기에 대해서는 밑에)

이 변수를 어떻게 쓰느냐하면, 버전에 따라 지원하는 명령을 바꿀수 있도록 지원하는 거죠.
예를 들어 shell_is_in_upf_mode나 shell_is_in_xg_mode, shell_is_in_topographical_mode와 같은 환경에 대한 명령은 synopsys version이 올라가면서 추가된 것이라 예전 버젼에서 돌리면 에러가 발생합니다. 뭐, 덤덤히 그냥 지우고 돌리세요 해도 되지만 ^^;

이런 경우에는 다음과 같이 버젼 체크를 통해 간단히 벗어날 수 있지요.. 음.. 더 좋은 방법이 있을수도 있지만, 제가 잘 모르는 관계로.. ㅋㅋ

if {[string match {*2007*} $compatibility_version]} {
        set DC_SUPPORT_UCF        "true"
                set DC_SUPPORT_TOPO_MODE  "true"

} else if {[string match {*2006*} $compatibility_version]} {
        set DC_SUPPORT_UCF "false"
                set DC_SUPPORT_TOPO_MODE "true"
} else {
        set DC_SUPPORT_UCF "false"
                set DC_SUPPORT_TOPO_MODE "false"
}

if { $DC_SUPPORT_TOPO_MODE == "true" } {
        if {[shell_is_in_topographical_mode]} {
                ...

        }

}

Design Compiler에서 TCL을 지원하면서 여러가지 편해졌습니다. file system 조작도 file 명령어를 쓰면 되고, 문자 대치하는 것도 훨씬 쉬워지고요.. ㅎㅎ<br /><br />여담입니다만, 텍스트 큐브로 업그레이드하면서, 소스 하이라이팅 기능과 박스 넣기가 좀 이상해져서, 이쁜 모양으로 소스코드 보여드리기가 상당히 힘드네요.. 집에서 컴퓨터 만질 시간이 생기면  한번 손을 봐야 겠습니다.

Mentor의 verifiaction seminar

Tool Vendor들의 세미나 계절인지라, Mentor도 검증 관련 세미나를 하는군요. 관심있으신 분은 참고하세요.


행사 일정: 5월 16일/ 임페리얼 펠리스 호텔


행사 등록: http://mentorkr.com/event/200705/form.html




오늘날의 SoC 디자인은 전체 SoC Verification 플로우 측면에서 최적의 효율성과 능률성을
가져올 수 있는 솔루션을 필요로 하고 있습니다.

Mentor Graphics는 ESL(electronic system level design) 및 High-level-synthesis technology, 그리고 Advanced verification platform, Assertion-based verification, DFT 등의 업계 선도적인 verification 솔루션들을 통하여, 디자인 효율 및 생산성을 향상시키기 위한 다양하고
새로운 기술과 방법론을 데모와 함께 선 보일 예정입니다.

꼭 참석하셔서 Mentor Graphics의
최신 Design & Verification 솔루션
들을 만나보시기 바랍니다.

행  /사  /일  /정

09:30 – 10:00- 행사 등록

10:00 – 10:20- Welcome / Opening; Johnny Chang

10:20 – 11:10- ESL – Embracing the differences is key to design success;  Gary Dare

11:10 – 12:00- Catapult synthesis – A Proven Methodology for DSP Hardware Creation; Dan Gardner

12:00 – 13:00- Lunch

13:00 – 13:50- Advanced Functional Verification Platform; ED&C

13:50 – 14:05- Break / Coffee

14:05 – 14:55- Finding the toughest bugs with 0-In Verification;Rindert Schutten

14:55 – 15:45- From ATPG to Compression and Yield Improvement;T.P.Tai

——————–


사실 mentor의 경우 SystemVerilog에 무게를 두고 VMM을 밀고 있는 synopsys나 SystemC에 무게를 두고 있는 cadence에 비하면 약간은 중립적인 입장을 취하고 있는 기분입니다.


실제적으로 AVM(Advanced Verification Methodology)이라고 불리는 Mentor의 Verification Kit은 SystemVerilog와 SystemC를 모두 지원할 수 있도록 되어 있지요.


문서나 Technical Report/Paper도 비교적 다른 회사에 비하여 얻기 쉽고 말입니다. 오랫만에 갔더니만 AVM Cookbook도 새버젼이 나와 있고, 용어도 잘 정리해서 문서로 만들어놨더군요.


처음 검증을 시작하시는 분들에게는 참 도움을 많이 주는 회사인건 맞는 것 같습니다. 이제 남은 건 분발 뿐인가요.. ^^;

p.s.
얼마전 Modelsim SE도 systemVerilog를 지원하신다는 분이 계셨는데, 찾아보니 NCVerilog와 마찬가지로 SystemVerilog Design 부분만 지원하는 것이더군요. 제가 필요한건 SystemVerilog Verification 분야거든요.. Assertion이라던지 모델을 이용해서 작업을 해볼 예정이라.. ^^;  참고적으로, Questa는 SystemVerilog Verification을 지원하는 군요.. 관련 자료는 여기 있습니다.
툴 구매가 이루어지기 전에는 일단 예전처럼 C++/PLI를 사용하는 방향으로 작업할 예정입니다. 왠지 SystemVerilog관련 verification책은 좀 일찍 산 듯 한 느낌이 ㅠㅠ;

Precision이 Synplify Pro보다 좋은 성능을 낸다고 하네요.

Mentor의 FPGA 합성 툴인 Precision.

FPGA 합성 도구.. 삼파전?이라는 글에서 잠시 다룬적이 있는데, 사실 그 글을 사용할때는 예전 FPGA Advantage에 번들링 되어 있던 Precision을 생각하고 썼었는데요..

ESNUG의 글을 보니 Precision이 Synplify Pro보다 더 좋은 결과를 내준다는 보고가 최근에 들어왔네요.

게다가 가격은 Synplify Pro의 1/3 이라고하니 가격 경쟁력도 있습니다.

나중에 한번 evaluation을 해 볼까.. 하는 생각이 드네요..
회사에서 FPGA는 prototyping정도로 밖에 안쓰는 관계로 그리 심각히 필요치가 않다는 것이 문제지만요..

FPGA design을 많이 하시는 분들은 Precision을 고려해 보시는 것도 좋겠네요.
IDEC의 지원을 받으시는 학생 분들은 두 가지 좋은 툴을 골라 쓸 수 있으니 얼마나 행복하십니까. ^^;

IDEC의 사업을 통해서 tool에 익숙한 엔지니어들이 많이 배출되는 건 아주 긍정적입니다. 학생때 왜 좀더 열심히 툴을 쓰지 않았나 몰라요..^^;