Explaining EDA synthesis errors with LLMs
<|reference_start|>Explaining EDA synthesis errors with LLMs: Training new engineers in digital design is a challenge, particularly when it comes to teaching the complex electronic design automation (EDA) tooling used in this domain. Learners will typically deploy designs in the Verilog and VHDL hardware description languages to Field Programmable Gate Arrays (FPGAs) from Altera (Intel) and Xilinx (AMD) via proprietary closed-source toolchains (Quartus Prime and Vivado, respectively). These tools are complex and difficult to use -- yet, as they are the tools used in industry, they are an essential first step in this space. In this work, we examine how recent advances in artificial intelligence may be leveraged to address aspects of this challenge. Specifically, we investigate if Large Language Models (LLMs), which have demonstrated text comprehension and question-answering capabilities, can be used to generate novice-friendly explanations of compile-time synthesis error messages from Quartus Prime and Vivado. To perform this study we generate 936 error message explanations using three OpenAI LLMs over 21 different buggy code samples. These are then graded for relevance and correctness, and we find that in approximately 71% of cases the LLMs give correct & complete explanations suitable for novice learners.<|reference_end|>
@article{qiu2024llm-aided,
    title={LLM-aided explanations of EDA synthesis errors},
    author={Siyu Qiu and Benjamin Tan and Hammond Pearce},
    journal={arXiv preprint arXiv:2404.07235},
    year={2024},
    doi={10.1109/LAD62341.2024.10691721},
    archivePrefix={arXiv},
    eprint={2404.07235},
    primaryClass={cs.AR cs.AI cs.PL cs.SE}
}