본문 바로가기
Digital Logic/FPGA

Vivado 프로그램 이란?

by 고뭉나무 2021. 4. 11.

Vivado 프로그램이란?

FPGAIDE로써 Verilog 혹은 VHDL 언어로 작성한 코드를 시뮬레이터, 합성, 파일 추출까지 할 수 있다.

FPGA 칩은 크게 XilinxIntel(Altera 인수)가 있으며 VivadoXilinx사의 칩을 사용할 때만 이용 가능하다.

 

 

Flow Navigator 정리

위에서부터 아래로 순서대로 실행하면 내가 작성한 코드를 bitstream으로 만들 수 있다.

 

1) Project Manager

프로젝트 관련 설정 및 소스 코드 관리, Xilinx IP 관리 등을 할 수 있다. 간단히 프로젝트 관련 설정 내용이 다 모여 있다고 보면 된다.

 

2) IP Integrator

IP를 가져다 블록 다이어그램을 서로 연결하는 방식으로 전체 디자인을 구성하고 싶을 때 사용한다.

 

3) Simulation

작성된 코드를 RTL 시뮬레이션 할 때 사용한다. 코드가 작성되면 반드시 시뮬레이션부터 해서 내가 생각한 대로 설계가 되었는지 확인해야 한다. 아마 가장 많이 사용할 부분이다.

 

4) RTL Analysis

툴이 자동으로 RTL을 분석해서 Schematic을 만들고취약점을 알려준다. 취약점은 DRC(Design Rule Check)에 있는데, 꼭 확인해 보는 것이 좋다. 회로가 잘 동작되지 않을 때, 원인을 다 찾고 보면 DRC에서 이미 Warning 주고 있는 경우도 많다.

 

5) Synthesis

시뮬레이션도 다 하고, DRC 체크도 다 했으면 Synthesis, 즉 합성이라는 것을 해야 한다. 이 단계는 RTL을 게이트 레벨로 바꾸는 작업이라고 보면 된다. 정확히 말하면 RTL FPGA 내부에 있는 LUT 및 각종 모듈로 변환하는 단계이다. 기본적인 타이밍 체크도 수행된다

 

6) Implementation

합성이 완료되면 게이트가 어떤 게 필요하고 어떻게 연결되어야 하는지는 결정된 것이고, 이제 실제 FPGA 위에 있는 물리적인 소자들에 이를 매핑해야 한다. 즉 이 게이트는 어느 셀을 쓰고, 저 게이트는 어느 셀을 쓰고 이런 것을 결정해야 하는데, 이 과정이 Implementation이라고 보면 된다. 추가로 외부 핀과도 매핑이 진행된다

 

7) Program and Debug

Implementation까지 완료되면 준비는 다 끝났다. 이를 Bitstream으로 만든 뒤에 FPGA에 올리면 되는데, 이 과정을 수행할 때 사용하는 메뉴이다.

 

 

주요 파일

-       FPGA 설계 코드: .v(@Verilog), .vhd(@VDHL)

-       FPGA simulation 코드: .v(@Verilog – Test bench)

-       환경 설정을 해주는 파일: .tcl

-       FPGAHW 핀과 Timing 정보를 담은 코드: .xdc

반응형

댓글