CktFormalizer: 자연어로부터 회로 표현의 자동 형식화
요약
CktFormalizer는 LLM 기반 하드웨어 생성의 신뢰성 문제를 해결하기 위해 개발된 프레임워크입니다. 이 프레임워크는 Lean 4에 임베딩된 종속 타입 언어(dependently-typed HDL)를 사용하여, 자연어 사양으로부터 생성되는 Verilog 코드가 컴파일 타임에 하드웨어 결함(예: 너비 불일치, 루프 등)을 가지지 않도록 강제합니다. 이를 통해 기존 방식에서 발생하던 합성 단계의 실패율을 획기적으로 줄이고 디자인의 정확성을 높입니다.
핵심 포인트
- LLM이 생성한 하드웨어 코드(Verilog)는 종종 구문은 맞지만, 실제 합성이나 실리콘 단계에서 결함(너비 불일치, 루프 등)을 포함합니다.
- CktFormalizer는 Lean 4 기반의 종속 타입 언어(dependently-typed HDL)를 사용하여 하드웨어 생성을 재지향합니다.
- Lean의 타입 검사기는 비트 너비 제약 조건, case 커버리지, 무순환성 등을 인코딩하여 결함을 컴파일 타임 오류로 변환하고 수정 가이드를 제공합니다.
- 이 프레임워크는 디자인을 구조적으로 결함으로부터 보호하는 '정확성 방화벽(correctness firewall)' 역할을 수행합니다.
LLM은 자연어 사양으로부터 하드웨어 설명을 생성할 수 있지만, 결과로 나오는 Verilog는 종종 너비 불일치(width mismatches), 조합 루프(combinational loops), 그리고 불완전한 case 로직을 포함합니다. 이는 구문 검사(syntax checks)를 통과하지만 합성(synthesis)이나 실리콘 단계에서 실패하는 경우가 많습니다. 우리는 CktFormalizer라는 프레임워크를 제시합니다. 이 프레임워크는 Lean 4에 임베딩된 종속 타입 언어(dependently-typed HDL)를 통해 LLM 기반 하드웨어 생성을 재지향합니다. Lean은 세 가지 역할을 수행합니다: (i) 타입 검사기(type checker): 종속 타입은 비트 너비 제약 조건, case 커버리지, 그리고 무순환성(acyclicity)을 인코딩하여, 하드웨어 결함을 컴파일 타임 오류로 변환하고 반복적인 수리를 안내합니다; (ii) 정확성 방화벽(correctness firewall): 컴파일된 디자인은 백엔드에서 조용한 실패를 유발하는 결함으로부터 구조적으로 자유롭습니다. (기존 방식에서는 합성 과정 중 올바른 디자인의 20%가 손실되었습니다.)
Variant는 공식 명세(formal specification)와 기능적으로 동등합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.CL의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기