대부분의 에지 컴퓨팅, 컴퓨터 비전 및 산업 제어 알고리즘이 FPGA 하드웨어 지식이 거의 또는 전혀 없는 개발자에 의해 기본적으로 C++로 개발되고 있다. 이에 마이크로칩은 C++ 알고리즘을 FPGA 최적화된 RTL 코드로 직접 변환하는 HLS 디자인 워크플로우인 SmartHLS를 PolarFire FPGA 제품군에 새롭게 추가했다.
에지 컴퓨팅 시스템 하드웨어 가속을 위한
마이크로칩 PolarFire FPGA 제품을 더욱
쉽게 활용할 수 있도록 해 개발 편의 향상
고성능 저전력 에지 컴퓨팅 애플리케이션이 늘면서 전력 효율성 가속과 유연성 및 제품 출시 기간 단축 이점을 제공하는 FPGA에 대한 수요가 높아졌다. 그러나 대부분의 에지 컴퓨팅, 컴퓨터 비전 및 산업 제어 알고리즘은 FPGA 하드웨어 지식이 거의 또는 전혀 없는 개발자에 의해 기본적으로 C++로 개발되고 있다.
마이크로칩테크놀로지는 2일, 이러한 중요한 개발 커뮤니티를 지원하기 위해 C++ 알고리즘을 FPGA 최적화된 RTL(Register Transfer Level) 코드로 직접 변환해 생산성과 설계 용이성을 대폭 향상시키는 HLS(High Level Synthesis) 디자인 워크플로우인 SmartHLS를 PolarFire FPGA 제품군에 새롭게 추가했다.
▲ 마이크로칩, PolarFire® FPGA 플랫폼에 최적화된
C++ 기반 SmartHLS 툴 스위트 출시 [그림=마이크로칩]
브루스 와이어(Bruce Weyer) 마이크로칩 FPGA 사업부 부사장은 “SmartHLS는 Libero® SoC 디자인 툴 스위트를 개선하는 동시에, 다양한 알고리즘 개발자 커뮤니티가 FPGA 하드웨어 전문성 없이도 마이크로칩의 미드레인지 PolarFire 및 PolarFire SoC 플랫폼의 방대한 이점을 누릴 수 있도록 돕는다”라고 말했다.
그러면서 “해당 툴과 마이크로칩 VectorBlox™ Neural Network SDK(Software Development Kit)를 함께 사용하면 FPGA 가속기를 사용하는 임베디드 비전, 머신러닝, 모터 제어 및 산업 자동화 같은 애플리케이션을 위한 C/C++ 기반 알고리즘을 사용하여 최첨단 솔루션 개발 시 생산성을 높일 수 있다”라고 덧붙였다.
오픈소스 Eclipse 통합 개발 환경을 기반으로 하는 SmartHLS 디자인 스위트는 C++ 소프트웨어 코드를 사용해 마이크로칩의 Libero SmartDesign 프로젝트로 통합하는 데 필요한 HDL IP 구성요소를 생성한다. 개발자는 기존 FPGA RTL 툴을 사용할 때보다 더 높은 추상화 수준에서 하드웨어 동작을 표현할 수 있다.
SmartHLS 디자인 스위트는 멀티스레딩 API를 통해 개발에 들이는 시간 단축하고 생산성을 높인다. 멀티스레딩 API는 하드웨어 명령을 동시에 실행하고 여타 HLS 제품과 비교하여 복잡한 하드웨어 병렬 표현을 단순화하는 특징을 갖는다.
동급 RTL 디자인보다 최대 10배 적은 코드 라인을 요구하는 SmartHLS 툴은 최종 코드 읽기, 이해, 테스트 및 디버깅 과정을 단순화한다. 하드웨어 마이크로아키텍처 디자인 트레이드오프 탐색을 간소화하며, 개발자가 기존 C++ 소프트웨어 구현 시 PolarFire FPGA 및 FPGA SoC와 함께 사용할 수 있도록 한다.
개발자는 마이크로칩 웹사이트에서 제공하는 SmartHLS v.2021.2 툴을 사용해 개발을 시작할 수 있다. 해당 툴은 최근 출시된 Libero SoC V2021.2 디자인 스위트에 포함되며 독립형 소프트웨어로 사용할 수 있다.