Processor Architect.... egoist
프로세서, SoC, ASIC 설계에 대한 재미난 이야기들. 그리고, 쉼표...
BLOG main image
Notice
babyworm은?
CATEGORY
전체 (241)
SoC 설계 관련 (106)
마이크로 프로세서 이야기 (22)
유용한 설계도구 (7)
검증이야기 (14)
관련 새소식 (28)
초보자 코너 (12)
북마크 (1)
개인적인 (98)
책이야기 (13)
만화/애니메이션 (3)
영화/드라마이야기 (4)
음악이야기 (12)
Boards
질문 게시판
칩쟁이들 모임(올블카페)
TAGS
마이크로 프로세서 synopsys verilog HDL SystemVerilog verification 개인적인 EISC PLI AMD ARM GPU Cadence Synthesis FPGA Mentor 프로세서 Intel LaTex 검증 Microprocessor
Recent Entries
ARM Connected Community...
Painful Truth (2)
불필요하게 어려운 말을... (4)
암울한 반도체 시장 (1)
babyworm의 2008-10-25 북...
Asynchronous는 어려워 (4)
Intel의 새로운 GPU
Guitar로 연주하는 비발디...
AMBA 3.0 AXI protocol에...
중소기업 SoC의 딜레마 (2)
Recent Comments
좋은 책 소개 감사합니다.
11/13 - jwook1004
에구구구.. GALS나 비동기 프...
11/05 - babyworm
안녕하세요. :) 헉.제가 실...
11/05 - babyworm
관리자만 볼 수 있는 댓글입...
11/05 - 비밀방문자
GALs 이거...Arteis 였나..;;...
11/05 - kal9
Recent Trackbacks
불필요하게 어려운 말을 쓰는...
한날은 생각한다
Verilog Coding Style for Sy...
Stay Tuned...
CEO's Leadership Seminar
Stay Tuned...
사악한 쌍둥이 full_case와 p...
Stay Tuned...
칩쟁이들의 모임등록
Stay Tuned...
Calendar
«   2008/11   »
일 월 화 수 목 금 토
            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            
Archive
2008/10
2008/09
2008/08
2008/07
2008/06
2008/05
2008/04
2008/03
2008/02
2008/01
2007/12
2007/11
Link Site
[B]babyworm의 개인적인 블로그
[B]PAPA JOHN'S
[Javaworld] 볕태들의 집합소
[JW] 얌탱옹 블로그
[JW]:+: Welcome To (( sccid...
[JW]iDea Holic
[JW]JS™
[JW]Jung-Hyeon's weB@LOG
[JW]Kino's blog
[JW]애니와 만화의 세계!
[JW]자유로운 늑대의 울음으로~~
[JW]첫사랑 첼로
[JW]최신컴터 놀이~
[KTUG]글과 음악
[KTUG]도은이네 집
[W] eetimes
[W] KERIS 학술 정보 서비스
[W] Microprocessor Report
[W] verification guild
[W]ASIC&FPGA cafe
[W]filedic
[W]WWW CA Page
[W]개인적인 게시판
[W]아람92
193138 Visitors up to today!
Today 109 hit, Yesterday 194 hit

English Ver. (by Google)
Creative Commons License
이 블로그의 모든 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
한RSS에 추가 add to Bloglines
add to google


Add to Technorati Favorites



Candle
'design compiler'에 해당되는 글 2건
Synopsys 버전을 찾아보기.. (4) | 2008/04/11
Synopsys XG모드로 가야 하나.. (3) | 2006/10/31
Synopsys 버전을 찾아보기..
[babyworm, 2008/04/11 09:30, SoC 설계 관련/유용한 설계도구]

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 명령어를 쓰면 되고, 문자 대치하는 것도 훨씬 쉬워지고요.. ㅎㅎ

여담입니다만, 텍스트 큐브로 업그레이드하면서, 소스 하이라이팅 기능과 박스 넣기가 좀 이상해져서, 이쁜 모양으로 소스코드 보여드리기가 상당히 힘드네요.. 집에서 컴퓨터 만질 시간이 생기면  한번 손을 봐야 겠습니다.

네이버에 북마크 다음에 북마크 마가린 바르기 HanRSS에 북마크하기 이올린에 북마크하기 News2.0에 투고하기 del.icio.us에 북마크하기 Digg에 번역해 투고하기 dzone에 번역해 투고하기 붐바
babyworm
2008/04/11 09:30 2008/04/11 09:30
Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
design compiler, synopsys

Trackback0 : Comment4
누적조회 2295 : 오늘조회 58
Trackback Address :: http://babyworm.net/tatter/trackback/228
Help by Grace | 2008/04/11 10:20 | PERMALINK | EDIT/DEL | REPLY
Synopsys는 한번도 쓸일이 없어서 아쉽네요. FPGA를 한다면 시놉시스 FPGA compiler 를 쓴다고 하더라도 결국엔 P&R 과 JTAG 은 Quartus 를 써야된다고 들어서 걍 첨부터 Quartus 를 사용하고 있습니다.

시놉시스에는 FPGA쪽에 JTAG Programming 까지 지원해 주지는 않죠?...
babyworm | 2008/04/11 12:39 | PERMALINK | EDIT/DEL
Synopsys는 ASIC을 만들때 사용하고, FPGA에는 거의 사용안되지요.^^;
로직 합성에서 FPGA 분야에서 가장 유명한 건 synplify인데,얼마전에 synopsys로 합병되었죠.
JTAG programming은 FPGA에 대한 P&R까지 끝나야 programming 파일이 나오는 거라. 해당 회사의 툴을 반드시 거쳐야 하는 걸로 알고 있습니다.
나중에 semi-custom 방법으로 칩을 만드실 때는 지겹도록 사용하셔야 할 거에요 ^^;
donny | 2008/04/12 02:13 | PERMALINK | EDIT/DEL | REPLY
한 수 배워갑니다. Version을 확인하여 script를 적용할 수가 있네요.
저도 IP개발을 하는데 전 그냥 제가 만든 버젼으로 컴파일하라고 합니다. ^^;; 다행히 제 IP를 쓰는 쪽이 아쉬운 상황이다보니 알아서 쓰더군요.
요새 포스팅이 뜸하신걸 보니 많이 바쁘셨나봅니다.
babyworm | 2008/04/14 18:13 | PERMALINK | EDIT/DEL
한시도 눈을 돌릴 수 없는 50일 된 아기를 키우면서, 2개의 프로젝트가 진행되고 있으니 시간을 참 안나네요.. (이런 핑계를.. ^^ )
[로그인][오픈아이디란?]
Name
Password
Homepage

Secret
Synopsys XG모드로 가야 하나..
[babyworm, 2006/10/31 23:20, SoC 설계 관련/유용한 설계도구]

사실 logic synthesis에 있어서 synopsys design compiler가 가지고 있는 비중은 정말로 큽니다.

ASIC designer가 거치는 전체 설계 flow에서 logic synthesis는 어찌보면 implementation의 시작지점이기 때문에 아주 중요합니다.
거기서 만들어진 netlist의 질, 지정된 constraint들이 이후의 툴들에 얼마나 효과적으로 반영될 수 있는가.. 등등..

Synopsys가 design compiler라는 툴로, 이 logic synthesis를 잡아버리면서 (90%이상의 점유율이랍니다.. 완전 독점에 가깝지요..), 이 강력한 파급력으로 DFT, Floorplan, P&R까지 이전의 강자들을 무너트리고 있는 상태입니다.

물론, 다른 회사들도 이 황금어장을 그냥 놓아둘수 없었던지, cadence는 build gates라는 툴로, mentor는 percision으로, synplicity는 synplify AISC으로 대항하고 있지만.. 흠.. 안타깝게 아성은 무너지지 않고 있으며 오히려 더 견고해지고 있는 느낌입니다.

여하튼..

지난번에 synopsys의 topographical synthesis에 대하여 잠시 말씀드렸었는데..오늘 말하려 하는 것은 synopsys가 2004.06버젼부터 선보인(혹 틀릴수도 있어요..) XG 모드라는 것입니다.

처음에 XG모드는 memory를 더욱 효율적으로 사용하고, 더 빠르게 분석할 수 있도록 하자는 목적으로 기존의 DB형식을 대치하려 개발된 synopsys의 내부 표현 저장방식입니다.

저는 개인적으로 예전에 XG모드를 썼다가 크게 덴 적이 있습니다.
온갖 수사로 포장된 2004.06에서의 XG모드... SNUG에 tutorial로 설명된 것으로 보고 혹~ 해서 얼마간 썼었는데..DB모드에서는 정상적으로 합성되는 verilog HDL 소스들이.. 죽기도 하고, 운좋으면 합성되는데 netlist가 이상하기도 하고... 온갖 고생을 시겼었습니다.

그 이후 사실 쳐다보지도 않고 있지요..^^; (소심해서..)
새로 구입한 Design Compiler 2006.x 버젼은 실행시키면 바로 XG,TCL모드로 뜨는데, 일부러 db_mode로 띄워서 쓸 정도니까요..

그런데, 얼마전에 DFT compiler 교육에 교양삼아 참가했었는데, XG모드 이야기가 나오더군요..
뭐, 여러가지 "XG 좋네~ 쓰세요~" 이런류의 이야기 말미에.. "2007년부터 DB 모드는 없어집니다."

캬아악~! DB모드가 없어진다구? orz


1993년 1월호 마이크로 소프트웨어 커버 기사의 이름이 생각납니다.

"이제는 변화에 순응해야 할때..." (C++의 시대가 온다.)

음.. 이제는 XG모드에 맞춰서 스크립트도 작성해야 겠군요..
사실 뭐, 바뀐다고 별일 있겠습니까..
단지, XG모드에 익숙해지고, 믿어가는데 시간이 좀 필요할 뿐이지요.^^;

Synopsys는 꽤 오랜 시간 XG모드로의 전이에 공을 드려왔습니다. 뭐, 여러가지 최적화된 결과를 보이는 모드니까요.. QoR의 관점에서 XG가 월등하다고 보는데, db기반에 익숙한 사람들이 안넘어오니까요..^^;

XG 모드로 이전하기 위한 모든 정보가 있는 곳.


자.. 이제 변화에 순응합시다..

p.s.
DFT Compiler Lab에서 사용해본 DC-XG 모드는 아주 훌륭하더군요.. 속도도 훌륭하고.. ^^;
거기 랩하는 동안 시간이 남아 topographical synthesis도 해봤는데.. 초반에 library 분석하는 데 꽤 오랜 시간이 걸리더군요.. 라이브러리 셋팅이 되고나면, 그 다음 부터는 빠릅니다.

아! 또한가지 design vision 새버젼은 Solaris 버젼을 타더군요.. Solaris 업데이트하시고, DC2006.0x를 깔아야 합니다.

네이버에 북마크 다음에 북마크 마가린 바르기 HanRSS에 북마크하기 이올린에 북마크하기 News2.0에 투고하기 del.icio.us에 북마크하기 Digg에 번역해 투고하기 dzone에 번역해 투고하기 붐바
babyworm
2006/10/31 23:20 2006/10/31 23:20
Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
design compiler, DFT compiler, synopsys, XG mode

Trackback0 : Comment3
누적조회 1159 : 오늘조회 22
Trackback Address :: http://babyworm.net/tatter/trackback/88
gnil | 2006/11/01 13:04 | PERMALINK | EDIT/DEL | REPLY
Magma Design Automation (http://www.magma-da.com) 이라는 회사의 툴은 어떤가요...?
저희는 이걸로 std cell lib setup 하는 것 같은데...
babyworm | 2006/11/02 00:39 | PERMALINK | EDIT/DEL
오~! blaster fusion용으로 라이브러리를 만드시나보군요..
사실 소문만 들었지 사용해본적은 없습니다. RTL2GDSII가 되는 두가지 가장 유명한 툴중의 하나이니, 괜찮을 것이라 생각됩니다. :)

아, Magma 홈에보니 finesim도 Magma것이군요.. 예전에 verilog-XL보다 빠르고, 상당히 저렴한 가격에 마케팅을 해서 랩에서 evaluation해본 경험이 있습니다.
아쉽게도 얼마지나지 않아 NC-verilog가 출시되어 finesim은 자취를 감추었지만요.. 홈페이지에는 아직 있네요..
gnil | 2006/12/08 16:52 | PERMALINK | EDIT/DEL | REPLY
아... 지금보니 그냥 Synopsys 툴로 synthesis 하구요... APnR을 blastfusion 쓰네요;;
[로그인][오픈아이디란?]
Name
Password
Homepage

Secret
*1
Location : Tag : GuestBook : Admin
babyworm’s Blog is powered by Tattertools.com / Designed by Hisday / Modified by Daisy