wxPython

예전에 simulator를 만들때 cross platform에서 GUI를 만드는 것이 참 어려웠던 기억이 있습니다.

그나마 좀 쓸만한 것이 TK 기반의 gui들인데, 그나마 perl-tk를 이용하는 것이  가장 무난했던 것 같습니다. (그 전에는 TCL/TK를 썼지만, linux에 perl은 windows를 제외한 대부분의 platform에 porting되어 있으니까요.. 단, perl-tk는 가끔 없는 것도 있다는 것이 함정)

Python을 잘쓰지는 못하지만, 역시 TK inter가 있으니까요. 문제는 다들 느끼시듯이 TK가 그다지 이쁘지 않다는 것..

회사 분이 소개시켜주셔서 wxPython에 관심을 가지게 되었는데.. platform의 native GUI API library를 사용한다니, TK보다야..

여하튼, 찾아보니 아래와 같은 PDF 문서가 검색되네요.. 아쉽게도 번역서는 없고.. 좀 봐야겠습니다. Python은 예전에 마눌님께서 bioinformatics에 관심이 있다고 하셔서 잠시  봤던 것이 전부인데(마눌님은 안하시고, 저만 교양삼아 봤다는..).. 그래도 뭐 언어가 다 언어죠..

시간이 될 때 틈틈히 봐야겠습니다.

http://eduunix.ccut.edu.cn/index2/pdf/Manning.Publications.wxPython.in.Action.Mar.2006.pdf

HM 모델에서 doxygen으로 문서 만들기

이거 사실 어려운 거 아닌데, 생각보다 모르시는 분들이 많으시네요..

HM model에 보면 doc directory에 doxygen을 통해서 문서를 생성할 수 있도록 설정이 되어 있고,  graphviz를 이용해서 아주 훌륭한 class 상속관계도를 볼 수도 있습니다.

저는 Linux에서라면야 대부분 깔려있겠지만, 혹시라도 안깔려 있다면 sudo apt-get이나 sudo yum install 통해서 doxygen package와 graphviz package를 설치하십시요.

이후에는 doc 디렉토리에서 doxygen이라고 입력하시면 html 디렉토리가 생기고, 거기에 있는 index.html을 web browser로 보시면 됩니다. (보시면 HM 3.4라고 적혀있을텐데, 살포시 무시하십시오. 그건 그냥 doxygen configuration에 그렇게 적혀 있으니 그런 겁니다.)

windows의 경우 저는 cygwin 신봉자(?)라서..

cygwin의 setup program을 통해서 마찬가지로 doxygen을 설치하시고..

graphviz의 cygwin port를 여기에 나온 설명대로 설치합시다. 요약하면, cygwin terminal에서 아래 명령을 통해서 setup을 실행시키고(당연히 cygwin setup입니다!!)

cygstart -- /path/to/setup.exe -K http://cygwinports.org/ports.gpg

설치할때 여러 미러 중에서  ftp://ftp.cygwinports.org/pub/cygwinports 를 선택해서 사용하는 것입니다. 위의 미러를 선택하면 graphviz package가 보이므로, 이를 설치하면 됩니다.

쉽죠?

p.s.

살짝 관계없는 이야기인데.. 예전에 doxygen 가지고 verilogHDL 문서를 만들면 어떨까해서, 이런 저런 scripting을 했던 경험이 있는데 별로 만족스럽지는 못했었습니다.

그런데, 이번에 doxygen보는 김에 생각나서 보니, systemverilog에서 doxygen을 사용하는 것이 가능하더군요. (물론, 스크립트를 통해서기는 하지만..)

음.. 써봐야지.. 🙂

SystemVerilog

IT-SoC 센터에서 SystemVerilog Verification을 한다기에 들어왔습니다. 
몇년째 책을 보고 예제 몇 개 끄적이다가 잊고.. DPI오~ 예제 몇 개 끄적여보다 잊고.. OVM사용해보고.. 예제 몇 개 끄적여보다 잊고.. UVM 오~~ 예제 몇 개 끄적여보다 잊고를 반복하고 있어서, 이번에는 제대로 듣고 업무에 적용을 해 봐야겠다는 생각이 있습니다. 

근데.. 초반 2일이 SystemVerilog for Design section이네요..
음.. 음.. 내일 부터가 기대됩니다. 2일동안 verification을 얼마나 깊이 다룰지 걱정이 쪼금(이라고 쓰고, ‘많이’라고 읽는..)됩니다. 

예전부터 (개인적으로) 주장하던 것인데..
SystemVerilog가 Design Language의 대세가 될 것이냐.. 에는 약간 회의가 있습니다. (물론, 강사님 말로는 많이들 사용한다고 하시더군요..)
일단 SystemVerilog의 문법을 제대로 처리하는 tool과 못하는 tool이 혼재해 있는 상태에 적어도 IP단계에서는 systemverilog를 도입하는 것이 거의 어렵다고 봐야겠죠. (물론 SystemVerilog도 Synthesizable Subset이 정의되어 있지만… 음 Verilog 2001 문법도 아주 많이 제한해서 사용하는 판국에..)

그럼 Verification에서는.. 이라는 질문에는 아주 긍정적으로 봅니다. (사실 제가 긍정할 필요도 없을 정도로 대세죠.. 희안하게도 국내에서는 좀 적게 사용하는 경향이 있지만)

OVM이나 UVM(사실 UVM은 paper를 본 것이 다라서 뭐라 이야기하기 어렵고.) 같은 것이 SystemVerilog를 기반으로 하고 있어서 뭐 별 일 없이 그냥 표준이 되어가고 있어요..

p.s.
이거 왜 공개되었다가 없어졌나했더니.. SCV관련된 이야기했다가 확인을 못해서 비공개처리하고 잊었었나 보군요.. 일단 지우고..공개

p.s.2.
음.. 별 기대없이 들었는데.. http://verificationacademy.com/course-modules/uvm-ovm-verification/basic-uvm-universal-verification-methodology VA에서 하는 UVM basics 꽤 쓸만하네요.. 이제 목표는 적용해보는것..