Abstract
Recent systems contain hardware and software components together for faster execution speed and less power consumption. In conventional hardware and software co-design, the ratio of software and hardware was divided by the designer's empirical knowledge. To find optimal results, designers iteratively reconfigure accelerators and applications and simulate it. Simulating iteratively while making design change is time-consuming. In this paper, we propose a hardware and software co-design platform for energy-efficient FPGA accelerator design. The proposed platform makes it easy for designers to find an appropriate hardware ratio by automatically generating application program code and hardware code by parameterizing the components of the accelerator. The co-design platform based on the Vitis unified software platform runs on a server with Xilinx Alveo U200 FPGA card. As a result of optimizing the multiplication accelerator for two matrices with 1000 rows, execution time was reduced by 90.7% and power consumption was reduced by 56.3%.
오늘날의 시스템들은 더 빠른 실행 속도와 더 적은 전력 소모를 위해 하드웨어와 소프트웨어 요소를 함께 포함하고 있다. 기존 하드웨어 및 소프트웨어 공동 설계에서 소프트웨어와 하드웨어의 비율은 설계자의 경험적 지식에 의해 나뉘었다. 설계자들은 반복적으로 가속기와 응용 프로그램을 재구성하고 시뮬레이션하며 최적의 결과를 찾는다. 설계를 변경하며 반복적으로 시뮬레이션하는 것은 시간이 많이 소모되는 일이다. 본 논문에서는 에너지 효율적인 FPGA 가속기 설계를 위한 하드웨어 및 소프트웨어 공동 설계 플랫폼을 제안한다. 제안하는 플랫폼은 가속기를 구성하는 주요 성분을 변수화해 응용 프로그램 코드와 하드웨어 코드를 자동으로 생성하여 설계자가 적절한 하드웨어 비율을 쉽게 찾을 수 있도록 한다. 공동 설계 플랫폼은 Xilinx Alveo U200 FPGA가 탑재된 서버에서 Vitis 플랫폼을 기반으로 동작한다. 공동 설계 플랫폼을 통해 1000개의 행을 가지는 두 행렬의 곱셈 연산 가속기를 최적화한 결과 응용프로그램보다 실행 시간이 90.7%, 전력 소모가 56.3% 감소하였다.