[논문 리뷰] CorrectBench: Automatic Testbench Generation with Functional Self-Correction using LLMs for HDL Design
CorrectBench는 기능적 자가검증과 자가수정 기능을 통합하여 신뢰성을 향상시키는 새로운 LLM 기반 프레임워크로, 자동으로 HDL 테스트벤치를 생성한다. 시나리오 기반 검증기로 자연어 명세에 따라 테스트벤치를 검증하고, LLM 기반 수정기로 오류를 수정함으로써 70.13%의 통과 비율을 달성하였으며, 이는 이전 방법의 52.18%와 직접 LLM 생성 방식의 33.33%보다 유의미하게 높다.
Functional simulation is an essential step in digital hardware design. Recently, there has been a growing interest in leveraging Large Language Models (LLMs) for hardware testbench generation tasks. However, the inherent instability associated with LLMs often leads to functional errors in the generated testbenches. Previous methods do not incorporate automatic functional correction mechanisms without human intervention and still suffer from low success rates, especially for sequential tasks. To address this issue, we propose CorrectBench, an automatic testbench generation framework with functional self-validation and self-correction. Utilizing only the RTL specification in natural language, the proposed approach can validate the correctness of the generated testbenches with a success rate of 88.85%. Furthermore, the proposed LLM-based corrector employs bug information obtained during the self-validation process to perform functional self-correction on the generated testbenches. The comparative analysis demonstrates that our method achieves a pass ratio of 70.13% across all evaluated tasks, compared with the previous LLM-based testbench generation framework's 52.18% and a direct LLM-based generation method's 33.33%. Specifically in sequential circuits, our work's performance is 62.18% higher than previous work in sequential tasks and almost 5 times the pass ratio of the direct method. The codes and experimental results are open-sourced at the link: https://github.com/AutoBench/CorrectBench
연구 동기 및 목표
- 순차 회로에서 하드웨어 설계를 위한 테스트벤치 생성 시 LLM의 불안정성을 해결한다.
- 기능적 검증 및 수정 메커니즘이 없는 이전의 LLM 기반 테스트벤치 프레임워크의 한계를 극복한다.
- 자연어 RTL 명세만을 입력으로 사용해 완전히 자동화된 테스트벤치 생성을 가능하게 한다.
- LLM 기반 자가검증 및 자가수정 루프를 도입하여 기능 시뮬레이션의 통과율을 향상시킨다.
- 인간 간섭 없이도 더 높은 신뢰성과 확장성을 확보한다.
제안 방법
- 테스트벤치 생성을 위한 유일한 입력으로 자연어 RTL 명세를 사용한다.
- 70%-틀림 기준을 사용하는 시나리오 기반 자가검증기를 도입하여 88.85%의 검증 정확도를 달성한다.
- 명세에서 유도된 기대 동작과 테스트벤치 출력을 비교하는 기능적 자가검증 메커니즘을 도입한다.
- 검증기로부터 제공된 버그 보고서를 활용해 LLM 기반 수정기가 반복적으로 테스트벤치 코드를 개선한다.
- 자기검증 및 자가수정 루프를 피드백 기반 워크플로우에 통합하여 신뢰성을 향상시킨다.
- 엔드 투 엔드 기능 검증을 위해 Verilog 드라이버와 Python 체커를 조합한 하이브리드 테스트벤치 구조를 활용한다.
실험 결과
연구 질문
- RQ1기능적 자가검증은 LLM 기반 테스트벤치의 신뢰성 향상에 유의미한 영향을 미치는가?
- RQ2LLM 기반 자가수정 메커니즘은 자동 생성된 테스트벤치의 기능 오류를 얼마나 효과적으로 줄이는가?
- RQ3검증 기준(예: 50%-틀림, 70%-틀림) 중에서 검증 정확도와 수렴 성능을 최대화하는 최적의 기준은 무엇인가?
- RQ4CorrectBench 프레임워크는 조합 회로 및 순차 회로 모두에서 기존의 LLM 기반 테스트벤치 생성 방법보다 얼마나 뛰어나게 성능을 발휘하는가?
- RQ5다양한 LLM에 대해 성능 저하 없이 일반화 가능하며 수동 튜닝 없이도 적용 가능한가?
주요 결과
- CorrectBench는 평가된 156개의 Verilog 작업 전반에서 70.13%의 통과 비율을 달성하였으며, 이는 이전 최고 성능 기준인 AutoBench 프레임워크(52.18%)보다 17.95%포인트 높다.
- 순차 회로에서는 AutoBench보다 62.18%포인트 높은 성능을 기록하였고, 직접 LLM 기반 생성 방식의 통과율(33.33%)의 약 5배에 이를 정도로 뛰어나다.
- 시나리오 기반 검증기는 70%-틀림 기준을 사용하여 전반적인 검증 정확도가 88.85%를 기록하였으며, 이 기준은 정밀도와 재현율의 균형을 고려해 최적으로 선정되었다.
- LLM 기반 수정기는 이전 방법 대비 총 성능 향상의 34.33%를 기여하여 오류 수정에서 핵심적인 역할을 한다.
- GPT-4o, GPT-4o-mini, Claude-3.5-Sonnet를 포함한 다양한 LLM에서 일관된 성능을 유지하여 일반화 가능성의 가능성을 입증한다.
- 70%-틀림 검증 기준은 50%-틀림 및 90%-틀림 기준보다 검증 정확도와 전체 시스템 성능 모두에서 뛰어나며, 토큰 비용은 낮고 수렴 속도는 높다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.