High-Level Synthesis Flow on Zynq
2019. 8. 13. 13:51ㆍXilinx/HLS
작년 Zynq2기 스터디 모임에 진행했던 High-Level Synthesis Flow on Zynq 워크샵을 다시 복습해보겠습니다.
Xilinx에서 제공하는 자료들은 Vivado 2017.4로 진행했으나, 이번에 저는 2018.3으로 진행해볼까 합니다.
코스 목표
- Describe the high level synthesis flow
- Understand the control and datapath extraction
- Describe scheduling and binding phases of the HLS flow
- Identify steps involved in validation and verification flows
- State various directives which can be helpful in improving performance and resource utilization
- Describe how to use OpenCV functions in the Vivado HLS tool
- Perform system-level integration of blocks generated by the Vivado HLS tool
코스 목표는 한글로 번역할 경우 정확한 의미 전달이 힘들어 영어로 표기했습니다.
선행 조건
- Xilinx Vivado Design Suite tool에 익숙함
- 기본 C 프로그래밍
- 프로세서 기반 시스템에 대한 기본적인 이해
플랫폼 지원
- Vivado Design Suite: System Edition HLS 2017.4
- Xilinx University board(ZedBoard, Zybo)
※ 이번에는 Vivado 2018.3 플랫폼과 Ultra96 v2를 사용하여 진행할까합니다. 아무래도 새로 산 기자재를 활용해 줘야죠..
지원되는 운영 체제
- Windows 7 SP1 Professional (64 Bit)
- Windows 10 Professional (64 Bit)
- Red Hat Enterprise Linux 6.6 – 6.9 (64 Bit)
- Red Hat Enterprise Linux 7.2 and 7.3 (64 Bit)
- SUSE Linux Enterprise 11.4 and 12.2 (64 Bit)
- Cent OS 7.2 and 7.3 (64 Bit)
- Cent OS 6.7, 6.8, and 6.9 (64 Bit)
- Ubuntu Linux 16.04.2 LTS (64 Bit)
윈도우와 리눅스 여러 운영체제를 지원하네요. 저는 Ubuntu LInux 16.04를 설치했습니다.
Xilinx에서 제공하는 lab 뿐만 아니라 이론 자료들도 공부 후 정리해보겠습니다.
아래는 공부 순서입니다. 위에서부터 아래로 순차적으로 스터디 해보겠습니다.
순서 |
Introduction to High-Level Synthesis (HLS) |
Using Vivado HLS |
Lab 1: Creating Project and Understanding Reports |
Improving Performance |
Lab 2: Optimizing Performance through Pipelining |
Data Types |
Improving Area and Resources Utilization |
Lab 3: Improving Area and Resources Utilization |
Handling Block- and Ports- Level Protocols |
Coding Considerations |
Creating a Processor System |
Lab 4: Creating a Processor System to filter Audio Signal |