Self-HWDebug: Automation of LLM Self-Instructing for Hardware Security Verification
<|reference_start|>Self-HWDebug: Automation of LLM Self-Instructing for Hardware Security Verification: The rise of instruction-tuned Large Language Models (LLMs) marks a significant advancement in artificial intelligence (AI) (tailored to respond to specific prompts). Despite their popularity, applying such models to debug security vulnerabilities in hardware designs, i.e., register transfer language (RTL) modules, particularly at system-on-chip (SoC) level, presents considerable challenges. One of the main issues lies in the need for precisely designed instructions for pinpointing and mitigating the vulnerabilities, which requires substantial time and expertise from human experts. In response to this challenge, this paper proposes Self-HWDebug, an innovative framework that leverages LLMs to automatically create required debugging instructions. In Self-HWDebug, a set of already identified bugs from the most critical hardware common weakness enumeration (CWE) listings, along with mitigation resolutions, is provided to the framework, followed by prompting the LLMs to generate targeted instructions for such mitigation. The LLM-generated instructions are subsequently used as references to address vulnerabilities within the same CWE category but in totally different designs, effectively demonstrating the framework's ability to extend solutions across related security issues. Self-HWDebug significantly reduces human intervention by using the model's own output to guide debugging. Through comprehensive testing, Self-HWDebug proves not only to reduce experts' effort/time but also to even improve the quality of the debugging process.<|reference_end|>
@article{akyash2024self-hwdebug:,
    title={Self-HWDebug: Automation of LLM Self-Instructing for Hardware Security
  Verification},
    author={Mohammad Akyash, Hadi Mardani Kamali},
    journal={arXiv preprint arXiv:2405.12347},
    year={2024},
    archivePrefix={arXiv},
    eprint={2405.12347},
    primaryClass={cs.CR}
}