1. 개요
High-Level Synthesis
고수준 합성(High-Level Synthesis)은 C, C++, SystemC, MATLAB/Simulink 등으로 작성한 높은 추상화 수준의 설계 설명을 하드웨어 기술 언어(Verilog, VHDL, SystemVerilog 등)로 변환하는 EDA 기법이다. 약자로는 주로 HLS라고 부른다.2. 특징
2.1. 장점
HLS의 가장 큰 장점은 추상화 수준을 높인다는 점이다. RTL로 직접 작성하면 클럭, 상태 기계, 레지스터, 각종 신호를 모두 명시해야 한다. HLS에서는 알고리즘을 먼저 쓰고, 파이프라인, 인터페이스, 메모리 구조를 지시어와 제약으로 조정할 수 있다.검증 속도도 장점이다. C/C++ 또는 SystemC 모델은 RTL 시뮬레이션보다 빠르게 실행되는 경우가 많다. 설계자는 알고리즘 단계에서 많은 테스트를 돌린 뒤, HLS 결과 RTL에 대해 C/RTL co-simulation을 수행할 수 있다. 물론 이것이 RTL 검증이나 시스템 검증을 완전히 대체하는 것은 아니다.
알고리즘형 가속기 구현에도 적합하다. FIR, FFT, 행렬 연산, 영상 필터, 압축·암호화, 패킷 처리, 머신러닝 추론처럼 계산 구조가 비교적 명확한 커널은 HLS와 잘 맞는 경우가 많다.