Faver: Boosting LLM-based RTL Generation with Function Abstracted Verifiable Middleware
Mu, Shi, Wang et al.
LLM-based RTL generation is an interesting research direction, as it holds the potential to liberate the least automated stage in the current chip design. However, due to the substantial semantic gap between high-level specifications and RTL, coupled with limited training data, existing models struggle with generation accuracy. Drawing on human experience, design with verification helps improving accuracy. However, as the RTL testbench data are even more scarce, it is not friendly for LLMs. Although LLMs excel at higher-level languages like Python/C, they have a huge semantic gap from RTL. When implementing the same functionality, Python/C code and hardware code differ significantly in the spatiotemporal granularity, requiring the LLM not only to consider high-level functional semantics but also to ensure the low-level details align with the circuit code. It is not an easy task. In this paper, we propose a function abstracted verifiable middleware (Faver) that streamlines RTL verification in LLM-based workflows. By mixing LLM-friendly code structures with a rule-based template, Faver decouples the details of circuit verification, allowing the LLM to focus on the functionality itself. In our experiments on the SFT model and open-source models, Faver improved the model's generation accuracy by up to 14%.
academic
Faver: تعزيز توليد RTL القائم على نماذج اللغة الكبيرة باستخدام برنامج وسيط قابل للتحقق من الوظائف المجردة
تقدم هذه الورقة برنامجاً وسيطاً قابلاً للتحقق من الوظائف المجردة (Faver) لمعالجة مشكلة دقة توليد كود RTL القائم على نماذج اللغة الكبيرة (LLM). يجمع هذا الأسلوب بين بنية الكود الودية لـ LLM والقوالب المستندة إلى القواعد، مما يفصل تفاصيل التحقق من الدوائر، مما يسمح لـ LLM بالتركيز على الوظيفة نفسها. في التجارب على نماذج SFT والنماذج مفتوحة المصدر، يحسّن Faver دقة توليد النموذج بما يصل إلى 14%.
تصميم RTL هو المرحلة الأقل أتمتة والأكثر استهلاكاً للموارد البشرية في تصميم الرقائق. على الرغم من أن نماذج اللغة الكبيرة تظهر إمكانات في توليد RTL، إلا أن الفجوة الدلالية الضخمة بين المواصفات عالية المستوى و RTL، بالإضافة إلى محدودية بيانات التدريب، تؤدي إلى ضعف أداء النماذج الحالية من حيث دقة التوليد.
الاستفادة من خبرة التصميم البشري في طريقة "التصميم والتحقق"، مع الحاجة إلى حل الصعوبات الأساسية لـ LLM في التحقق من الأجهزة، خاصة تحديات المتغيرات المتعلقة بالتوقيت وتوليد محفزات الاختبار.
اقتراح إطار عمل Faver: يسمح لـ LLM بكتابة كود دلالي عالي المستوى للتحقق من الدوائر، والاستفادة من إطار عمل التصميم والتحقق
تصميم قوالب الوظائف-الفئات المجردة: تعيين دلالات الساعة والسجلات في تصميم الأجهزة إلى فئات Python/C التي تعتمد على الأحداث، مما يقلل الفجوة الزمانية والمكانية بين التحقق من الأجهزة والبرامج
التحقق التجريبي: إثبات أن Faver يحسّن دقة توليد RTL القائم على LLM بما يصل إلى 14% على مجموعات اختبار ونماذج متعددة
التحليل النظري: توفير نماذج رياضية لمعدل نجاح النظام ومعدل صحة التغذية الراجعة
الإدخال: وصف المواصفات باللغة الطبيعية لمتطلبات الوظائف الأجهزة
الإخراج: كود RTL (Verilog) صحيح وظيفياً ويمر التحقق
القيود: يجب أن يكون RTL المُولّد صحيحاً من حيث الصيغة والوظيفة
تستشهد الورقة بأعمال مهمة في هذا المجال، بما في ذلك:
ChipGPT, ChipNeMo وغيرها من نماذج LLM المتخصصة في تصميم الأجهزة
VerilogCoder, MAGE وغيرها من طرق التصميم والتحقق
RTLLM, VerilogEval وغيرها من معايير التقييم القياسية
Toffee, Verilator وغيرها من أدوات المحاكاة المشتركة
التقييم الإجمالي: هذه ورقة عالية الجودة ذات مساهمة مهمة في مجال توليد RTL القائم على LLM. من خلال تصميم برنامج وسيط مبتكر للتجريد الوظيفي، تحل بشكل فعال مشكلة الفجوة الدلالية بين التحقق من البرامج والأجهزة، والنتائج التجريبية مقنعة، مع قيمة عملية وتأثير أكاديمي جيد.