摘要
在硬件设计验证过程中,Verilog 代码的错误定位是一个至关重要的且耗时的任务。自大型语言模型 (LLM) 出现以来,它们展现出强大的编程能力。然而,目前还没有工作考虑将 LLM 用于 Verilog 代码的错误定位。本文介绍了 Location-is-Key,这是一个开源的 LLM 解决方案,用于定位 Verilog 代码片段中的功能性错误。LiK 在 RTLLM 基础上,在我们的测试数据集上实现了 93.3% 的 pass@1 定位准确率,超过了 GPT-4 的 77.9%,与 Claude-3.5 的 90.8% 相当。此外,LiK 获得的错误位置显著提高了 GPT-3.5 的错误修复效率(功能性 pass@1 从 40.39% 提升至 58.92%),突出了错误定位在基于 LLM 的 Verilog 调试中的重要性。与现有方法相比,LiK 只需要设计规范和错误代码片段,不需要测试平台、断言或任何其他 EDA 工具。这项研究证明了使用 LLM 进行 Verilog 错误定位的可行性,从而为自动 Verilog 代码调试提供了一个新的方向。