다중언어 하드웨어 코드 완성을 위한 대규모 리포지터리 벤치마크 MHRC Bench

다중언어 하드웨어 코드 완성을 위한 대규모 리포지터리 벤치마크 MHRC Bench
안내: 본 포스트의 한글 요약 및 분석 리포트는 AI 기술을 통해 자동 생성되었습니다. 정보의 정확성을 위해 하단의 [원본 논문 뷰어] 또는 ArXiv 원문을 반드시 참조하시기 바랍니다.

초록

MHRC-Bench는 Chisel, SystemVerilog/VHDL, HLS C/C++ 등 세 가지 하드웨어 설계 언어를 포괄하는 최초의 다중언어 리포지터리‑레벨 코드 완성 벤치마크이다. 47,175개의 실제 프로젝트 파일을 기반으로 코드 구조와 하드웨어 의미론을 5단계·9카테고리로 정밀 라벨링하고, 전용 학습 데이터(MHRC‑Bench‑Train)와 평가 데이터(MHRC‑Bench‑Eval)를 제공한다. 실험 결과, 대규모 사전학습 모델보다 MHRC‑Bench‑Train으로 파인‑튜닝된 소형 모델이 GPT‑5 등 상용 모델을 능가함을 보여준다.

상세 분석

본 논문은 기존 소프트웨어 중심 코드 완성 벤치마크가 하드웨어 설계 언어를 거의 다루지 못한다는 문제점을 지적하고, 이를 해결하기 위해 MHRC‑Bench라는 새로운 데이터셋과 평가 프레임워크를 제안한다. 데이터 수집 단계에서는 2000년 이후에 생성되고 5개 이상의 스타를 받은 MIT 등 permissive 라이선스의 GitHub 리포지터리를 대상으로, GPL 등 제한적 라이선스와 벤더‑전용 디렉터리를 제외함으로써 저작권 위험을 최소화하였다. 최종적으로 584개의 서로 다른 리포지터리에서 47,175개의 파일을 확보했으며, 각 파일당 하나의 완성 타깃을 무작위로 선택한다. 타깃 선택은 tree‑sitter 기반 구문 트리를 이용해 syntactically complete한 노드를 추출하고, 해당 노드의 정확한 소스 구간을 정답으로 삼는다. 이는 기존 연구에서 흔히 보이는 임의 문자 스팬 선택보다 높은 구문 일관성을 보장한다.

라벨링은 두 축으로 이루어진다. 첫 번째는 코드 구조 레벨로, CST의 깊이(depth)를 기준으로 5개의 버킷(구조적 복잡도)으로 구분한다. 두 번째는 하드웨어 의미론 레벨로, 하드웨어 설계·검증 흐름을 반영해 9개의 세부 카테고리(Design Structure, Declaration & Definition, Storage Block, Computation Block, Control Flow Block, Interface, Property & Assertion, Testbench Stimulus, Monitoring & Checking)를 정의하고, 5명의 도메인 전문가가 검증하였다. 이러한 다중 라벨링은 모델이 단순 문법 예측을 넘어 설계 의도와 인터페이스, 검증 로직까지 이해했는지를 정밀히 평가할 수 있게 한다.

평가에서는 오픈‑소스 코드 LLM(DeepSeek‑Coder‑5.7B, Qwen2.5‑Coder‑3B/7B/14B)과 상용 모델(GPT‑5, Gemini 2.5 Pro, Grok‑4, DeepSeek V3.2)을 대상으로 Exact Match(EM), Exact Structure(ES), 그리고 컴파일 성공률을 측정했다. 사전학습 모델은 하드웨어 코드에 대해 EM이 거의 0%에 가까웠으나, MHRC‑Bench‑Train으로 파인‑튜닝된 Qwen2.5‑Coder‑7B는 EM·ES 모두 30% 이상 상승하고, 컴파일 통과율도 크게 개선되었다. 특히, 파인‑튜닝된 7B 모델이 14B 사전학습 모델보다 EM·ES·컴파일 성공률에서 모두 우수했으며, 이는 하드웨어 특화 데이터가 모델의 구조적·의미적 이해를 크게 촉진한다는 점을 시사한다.

추가 분석에서는 언어별·카테고리별 성능 차이를 살펴보았다. V/SV와 VHDL은 구조적 복잡도가 높은 Design Structure와 Interface 영역에서 상대적으로 낮은 정확도를 보였으며, 이는 복잡한 포트 연결과 파라미터화된 모듈 선언이 모델에게 어려움을 주는 것으로 해석된다. 반면, HLS C/C++는 Computation Block과 Property 영역에서 비교적 높은 정확도를 기록했는데, 이는 기존 자연어‑코드 모델이 C‑계열 언어에 익숙하기 때문으로 판단된다. 또한, 교차 파일 의존성이 평균 3~6개에 달하는 작업에서 모델의 성능이 급격히 감소함을 확인했으며, 이는 현재 LLM이 전역 프로젝트 컨텍스트를 효과적으로 활용하지 못한다는 한계를 드러낸다.

결론적으로, MHRC‑Bench는 하드웨어 설계 코드 완성이라는 새로운 연구 영역을 체계적으로 정의하고, 다중 라벨링을 통한 정밀 평가 체계를 제공함으로써 향후 LLM 기반 하드웨어 자동화 연구에 필수적인 기준점이 될 것이다.


댓글 및 학술 토론

Loading comments...

의견 남기기