kunalg123/vsdflow 설치 및 실행 방법
요약
vsdflow는 RTL 언어로 아이디어를 하드웨어로 변환하는 자동화 솔루션입니다. 이 도구는 Verilog 입력 RTL을 받아 Yosys를 이용한 합성, PNR(Qflow) 및 STA(OpenTimer) 과정을 거쳐 GDSII 레이아웃과 성능 지표를 산출합니다. Ubuntu와 CENTOS 환경에서 설치 및 실행 방법을 상세히 안내하며, EDA 기반 TCL 스크립팅 학습에 유용합니다.
핵심 포인트
- vsdflow는 RTL-to-GDS 자동화 솔루션입니다.
- Yosys, Qflow, OpenTimer 등 전문 EDA 툴을 활용합니다.
- 설치 과정은 Ubuntu와 CENTOS 환경별로 안내됩니다.
- EDA 기반 TCL 스크립팅 학습에 최적화된 유틸리티입니다.
Ubuntu에서 설치하고 실행하는 단계:
- sudo apt-get install git
- git clone https://github.com/kunalg123/vsdflow.git
- cd vsdflow
- chmod 777 opensource_eda_tool_install.sh
- ./opensource_eda_tool_install.sh
**초보자 참고 사항: 이 과정은 깨끗한(fresh) Ubuntu 설치 환경에서 테스트되었습니다.
**경험 많은 UNIX 사용자 참고 사항: sudo apt-get 및 sudo remove 명령이 많이 포함되어 있으므로 실행하기 전에 검토하는 것이 좋습니다. - ./vsdflow spi_slave_design_details.csv
- ./vsdflow picorv32_design_details.csv
CENTOS에서 설치하고 실행하는 단계:
먼저 아래 명령어를 사용하여 root로 로그인합니다 (중요).
su -
그런 다음 아래 단계를 따릅니다.
- sudo yum install git
- git clone https://github.com/kunalg123/vsdflow.git
- cd vsdflow
- chmod 777 opensource_eda_tool_install_centos.sh
- sudo ./opensource_eda_tool_install_centos.sh
**초보자 참고 사항: 이 과정은 깨끗한(fresh) CENTOS 7 설치 환경에서 테스트되었습니다.
**경험 많은 UNIX 사용자 참고 사항: sudo yum 명령이 많이 포함되어 있으므로 실행하기 전에 검토하는 것이 좋습니다. - ./vsdflow spi_slave_design_details.csv
- ./vsdflow picorv32_design_details.csv
Ubuntu와 CENTOS에서 'vsdflow'를 테스트하는 단계:
- cd outdir_spi_slave
- qflow display spi_slave
설치된 도구 목록:
- Yosys - RTL Synthesis
- blifFanout - High fanout net (HFN) synthesis
- graywolf - Placement
- qrouter - Detailed routing
- magic - VLSI Layout tool
- netgen - LVS
- OpenTimer 및 OpenSTA - Static timing analysis tool
'vsdflow'는 또한 EDA 기반 TCL 스크립팅을 학습하기 위해 작성된 최고의 유틸리티입니다... 상세한 설명이 비디오 형태로 제공되는 도구를 찾기 매우 어렵습니다. 'vsdflow'는 아래 2개의 TCL 스크립팅 과정에서 (상세하게) 설명되므로 살펴보시는 것이 좋습니다:
TCL scripting part 1:
TCL scripting part 2:
이 과정은 제가 VLSI 산업의 관리자들로부터 이 과정과 'vsdflow'만으로 팀에게 TCL을 학습하도록 요청받는 수준에 이르렀습니다.
VSDFLOW는 프로그래머, 취미가, 소규모 반도체 기술 기업가들이 RTL 언어로 아이디어를 구현하고 VSD (RTL-to-GDS) FLOW를 사용하여 설계를 하드웨어로 변환할 수 있도록 하는 자동화 솔루션입니다. VSDFLOW는 OPHW 도구들로 완전히 구축되었으며, 사용자는 verilog 형식의 입력 RTL을 제공합니다. 이후부터 VSDFLOW가 제어권을 가져가며, RTL은 합성(Yosys 사용)됩니다.
합성된 넷리스트는 PNR 도구(Qflow)에 전달되고, 최종적으로 STA 도구(Opentimer 사용)를 통해 Sign-off가 수행됩니다. 이 플로우의 출력물은 GDSII 레이아웃과 설계의 성능 및 면적 측정 지표입니다. VSDFLOW는 또한 다양한 레벨의 설계 흐름에서 작업하는 사용자를 위해 모든 단계에 훅(hooks)을 제공합니다. ARM Cortex-M0, RISC-V picorv32와 같은 3만 개 인스턴스 수 설계를 대상으로 테스트되었으며, 계층적 또는 글루 로직을 사용하여 수백만 개의 인스턴스 수를 가진 설계에서도 추가 테스트가 가능합니다.
'vsdflow' 작동 원리를 이해하기 위해서는 VLSI 백엔드에 대한 배경 지식이 필요하므로, 다음 3가지 중요한 강좌를 안내해 드립니다. (면접관과 상의하여 이 강좌들을 추천받을 수 있습니다):
물리 설계 플로우(Physical design flow):
정적 타이밍 분석 - 파트 1(Static timing analysis - Part 1):
정적 타이밍 분석 - 파트 2(Static timing analysis - Part 2):
자, 이제... 첫 TCL 스크립트를 작성하고, 기초부터 고급, 전문가 수준까지 배우고, EDA 관점에서 적용한다면 여러분은 취업이나 면접에 나설 준비가 된 것입니다....
모든 행운을 빌며 즐거운 학습 되시길 바랍니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub ML Hardware의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기