Alpha-RTL:用于 RTL 硬件优化的测试时训练

arXiv cs.LG 论文

摘要

Alpha-RTL (TTT-RTL) 引入了一种用于 RTL 硬件优化的测试时训练框架,利用带有 EDA 反馈的强化学习来优化 LLM 生成的设计。它在基准测试上实现了显著的 PPA 减少。

arXiv:2606.05253v1 公告类型:新 摘要:大型语言模型(LLM)在生成功能正确的寄存器传输级(RTL)硬件设计方面展现出越来越大的潜力。最近的系统通过集成 EDA 的强化学习(包括语法、仿真和 PPA 奖励)进一步改进,但在部署前训练一个通用的 RTL 生成器,而测试时方法则使用冻结的策略进行搜索。我们则在测试时执行强化学习,使 LLM 策略能够针对当前具体的 RTL 问题,适应可执行的 EDA 反馈。我们提出了 TTT-RTL,据我们所知这是首个针对每个设计的测试时训练框架,它闭环了 LLM 策略与用于 RTL 优化的 EDA 流水线。TTT-RTL 采样候选实现,通过语法检查和仿真进行验证,使用综合衍生的 PPA 积分为有效设计评分,通过 PUCT 索引的设计状态池重用高奖励变体,并使用熵策略梯度目标更新策略。为了在奖励稀疏或平台期的情况下稳定策略更新,我们引入了一个自适应 KL 预算控制器,该控制器使用参考 KL、有效样本量和奖励饱和信号调整熵约束。在 Nangate 45nm 工艺下的 RTLLM v2.0 上,TTT-RTL 将几何平均 PPA 乘积相较于参考降低了 65.1%,优于最强已发表的冻结策略智能体基线(26.1%)。在 Sky130 工艺下的工业级 XuanTie C910 FPU 前导零预测单元上,TTT-RTL 实现了 59.4% 的 ADP 减少,消融实验证实策略自适应、状态重用和 KL 预算控制各自都有贡献。这些结果表明,使用可执行 EDA 反馈的测试时训练可以将基于 LLM 的 RTL 生成从功能正确性推向物理优化的硬件。
查看原文
查看缓存全文

缓存时间: 2026/06/05 08:09

# Alpha-RTL: 面向RTL硬件优化的测试时训练

**来源:** https://arxiv.org/html/2606.05253

周培龙¹,²,³, 陈志荣¹,², 李仓源¹,², 高浩宇¹,²,³, 常凯岩¹,², 曲子明¹,², 王颖¹,²

1. 中国科学院计算技术研究所 高性能处理器实验室 (SKLP)
2. 中国科学院大学
3. 前沿交叉科学学院

通讯作者: wangying2009@ict\.ac\.cn (mailto:[email protected])

######  摘要

大语言模型 (LLMs) 在生成功能正确的寄存器传输级 (RTL) 硬件设计方面展现出越来越大的潜力。最近的LLM-for-RTL系统通过Verilog域蒸馏、结合自动化测试平台的RLVR,或集成EDA的强化学习(包含语法、仿真和PPA奖励)进一步提升了这种能力。然而,这些方法主要在部署前训练一个通用的RTL生成器,而测试时方法通常使用冻结的策略进行搜索。我们则是在测试时执行强化学习,使LLM策略能够根据特定RTL优化问题中可执行的EDA反馈进行自适应。这种设置具有挑战性,因为候选设计必须通过稀疏的离散有效性门控——语法检查和仿真——才能接收到有意义的、由综合导出的面积、时序或功耗反馈。我们提出了 **TTT-RTL**,据我们所知,这是首个*针对单个设计*的测试时训练框架,它闭环连接了LLM策略与用于RTL优化的EDA流水线。TTT-RTL会采样候选实现,通过语法检查和仿真进行验证,使用综合导出的PPA乘积对有效设计进行评分,通过一个PUCT索引的设计状态池重用高奖励变体,并使用熵策略梯度目标更新策略。为了在稀疏或平台化的奖励组中稳定策略更新,我们引入了一个自适应的KL预算控制器,该控制器根据参考KL、有效样本量、恒定奖励比例和beta搜索饱和度来调整熵约束。在Nangate 45nm工艺下的RTLLM v2.0基准测试中,TTT-RTL将几何平均PPA乘积降低了 65.1%,优于最强已发表冻结策略智能体基线(在同一参考归一化指标下为 26.1%)。在一个基于Sky130工艺的工业级玄铁C910 FPU前导零预测单元上,TTT-RTL相比原始实现实现了 59.4% 的ADP缩减。消融实验表明,策略自适应、状态重用和KL预算控制各自对性能提升有所贡献。这些结果表明,结合可执行EDA反馈的测试时训练可以将基于LLM的RTL生成从功能正确性推向物理优化的硬件。

## 1 引言

硬件设计是一个劳动密集的过程,其质量最终由物理指标评判:面积、时钟频率和功耗。现代EDA流程将用Verilog或VHDL编写的寄存器传输级 (RTL) 描述转换为物理电路;最终的 *PPA乘积*(面积 × 延迟 × 功耗,RTLLM v2.0报告中使用的联合品质因数)不仅取决于代码的逻辑正确性,还依赖于精细的微架构选择——流水线深度、操作调度、信号编码——这些如果不运行综合是很难预测的。

最近的工作表明,LLM可以生成功能正确的RTL代码 (Liu et al., 2023b, c; Blocklove et al., 2023)。这些模型从训练语料库中学习模仿高质量的Verilog,当给定硬件规格时,它们可以生成通过功能仿真的设计。然而,功能正确性是硬件质量的必要但不充分条件。一个通过所有测试向量案例的乘法器可能仍然比优化后的参考实现大30%或慢30%。由于物理综合指标是由EDA工具在评估时计算的——而不是在LLM训练期间——现有模型无法学习最小化PPA乘积。

现有的RTL优化方法分为两大类,每类都只抓住了所需的一半。**冻结LLM搜索智能体**——EvolVE (Hsin et al., 2026)、VeriAgent (Wang et al., 2026) 以及当前最先进的REvolution (Min et al., 2025)——利用综合反馈通过进化或反思循环驱动LLM,但权重从未更新:搜索质量受限于不变的基策略,并且从EDA工具积累的设计知识在运行结束时就被丢弃了。**训练时RL方法**——ChipSeek (Chen et al., 2025) 和 EARL (Shi et al., 2025)——确实从综合信号中学习,但它们提供一个单一的摊销策略,并通过 Pass@k 进行评估:每个候选都是独立的单次生成,没有机制将一次尝试的EDA结果反馈到同一设计的下一次尝试中。

我们认为缺失的范式是*在测试时将搜索融合到训练中*:给定一个设计和其参考,进行多轮搜索,每次rollout的EDA反馈都*针对该问题在线*更新模型,从而使策略本身随着搜索的进行而深化。具体来说,我们将Verilog候选视为PUCT树中的节点,每个节点的扩展都由一个三阶段EDA流水线(语法 → 仿真 → 综合)评分,并将这种密集的物理奖励反馈给同一设计的在线策略梯度更新。结果是一个闭环,其中探索和训练在基于EDA的反馈下共同进化,而不是搜索被嫁接在一个冻结的策略之上。在RTLLM v2.0上,这种范式在PPA乘积缩减方面显著优于最强已发表智能体基线,并且在玄铁C910工业级浮点单元上,它改进了经过良好调优的生产级RTL——我们将在下文量化这两点。

#### 贡献。

1.  我们将面向单个设计的RTL优化形式化为一个测试时训练问题,将由PUCT引导的搜索融合到由EDA反馈驱动的在线策略更新中。
2.  我们提出了 **TTT-RTL**,通过一个Verilog状态池、EDA反馈提示、一个熵优势估计器和一个三阶段语法/仿真/综合奖励来实例化该范式,构建在 `verl` (Sheng et al., 2024) 之上。
3.  在 **RTLLM v2.0** 上,TTT-RTL覆盖了48/49个设计,并将PPA乘积的几何平均值降低了 **65.1%**,而最强已发表智能体基线 (REvolution) 为 **26.1%**;在一个 **玄铁 C910** 工业级LZA单元上,它在seed 42下将经过良好调优的生产级RTL的ADP改善了 **59.4%**,单种子组件消融实验隔离了PUCT池和熵估计器的贡献。

## 2 相关工作

### 2.1 测试时训练与基于可验证奖励的强化学习

测试时训练 (TTT) (Sun et al., 2020) 在推理时使用从测试输入构建的辅助自监督目标来更新模型参数。Yuksekgonul 等人 (2026) 通过 **PUCT引导的探索** 将TTT扩展到离散推理:一个验证器对候选解决方案评分,策略梯度更新改进了针对特定问题的生成策略,使LLM能够解决超出其静态训练分布的数学问题。TTRL (Zuo et al., 2025) 类似地使用未标记数据上的多数投票伪标签执行测试时RL,而 Snell 等人 (2024) 和 Wu 等人 (2024) 在不更新模型的情况下扩展了测试时计算。在优化器方面,GRPO (Shao et al., 2024) 提供了我们构建基础的组相对策略梯度配方,最初开发用于可验证的数学正确性,而 CodeRL (Le et al., 2022) 是程序综合中最接近的先例,使用单元测试通过/失败作为RL奖励信号。

### 2.2 用于RTL和PPA优化的LLM

#### 面向功能正确性的Verilog生成。

越来越多的研究工作将LLM应用于硬件描述语言生成,并在开放基准上进行评估。VerilogEval (Liu et al., 2023b) 衡量了156个HDLBits任务的通过率,而 RTLLM (Lu et al., 2024) 及其 v2.0 后继 OpenLLM-RTL (Liu et al., 2025) 将设置扩展到带有综合反馈的更大设计;RTLLM v2.0 是我们在本文中使用的基准。在生成方面,RTLCoder (Liu et al., 2023c)、Chip-Chat (Blocklove et al., 2023)、ChipNeMo (Liu et al., 2023a) 和 BetterV (Pei et al., 2024) 对LLM进行微调或引导以生成Verilog,但**仅针对功能正确性**,不优化物理指标。

#### 用于PPA的冻结策略智能体。

最近的一条线直接针对物理优化,使用LLM作为搜索或多智能体循环中的**冻结组件**:EvolVE (Hsin et al., 2026)(进化代码生成)、VeriAgent (Wang et al., 2026)(带综合反馈批评者的多智能体系统)、REvolution (Min et al., 2025)(基于群体的带反思搜索,当前SOTA)和 COEVO (Ping et al., 2026)(正确性与PPA的协同进化)。这四种是我们RTLLM v2.0比较中的主要基线;在所有情况下,**LLM权重从未更新**。

#### 在RTL上的训练时RL。

ChipSeek (Chen et al., 2025) 是基于RL的最接近的先前工作:它使用分层EDA反馈训练RTL生成模型,并在RTLLM v2.0上报告了84.09%的Pass@5,其最佳配置下平均归一化EDAP降至0.76。EARL (Shi et al., 2025) 是一种并行的训练时RL方法,它结合了SFT与基于可验证编译器/测试台信号的熵感知DAPO风格更新。两者都产生一个**离线、摊销的策略**,在所有设计间共享,并通过 Pass@k 生成协议进行评估。

#### 区别。

与仅功能的Verilog生成器、权重从未更新的冻结LLM PPA智能体以及提供单一摊销策略的离线RL方法不同,TTT-RTL结合了**基于EDA的奖励**与**针对单个设计的测试时自适应**:每个问题触发其自身的、由PUCT状态池驱动的在线策略更新,验证器由混合离散-连续物理指标(而非标量通过/失败)门控,并且我们在整个RTLLM v2.0基准上报告覆盖率和参考归一化的PPA乘积,而非 Pass@k。

## 3 方法:TTT-RTL

参见图注

**图1:** TTT-RTL 概览。该框架包含四个部分:问题资产(第 3.1 节)、带EDA反馈提示构造器的PUCT状态池(第 3.2 节)、LLM rollout与三阶段EDA奖励流水线(第 3.3 节),以及带状态池准入的测试时策略更新(第 3.4 节)。

图 1 总结了闭环 TTT-RTL 流水线的四个部分;本节剩余部分将形式化每个组件。

### 3.1 问题形式化与PUCT引导的状态采样

令 \(\mathcal{P}\) 表示一个RTL设计问题,由自然语言描述、一个功能测试平台和一个参考实现指定。一个**设计状态** \(s=(v, r, t)\) 包含一个Verilog实现 \(v\)、其奖励 \(r\) 和创建时间步 \(t\)。目标是找到一个功能正确且最小化目标度量 \(M(v)\) 的设计 \(v^*\)(\(M(v)\) 在第 3.3 节中定义)。我们用一个根状态 \(s_0 = (\epsilon, 0, -1)\)(\(\epsilon\) 是一个空实现)初始化一个**状态池** \(\mathcal{S}\),并通过在PUCT分数下采样父状态来迭代增长 \(\mathcal{S}\),该分数平衡了利用(高奖励节点)和探索(很少采样的节点):

\[
\mathrm{PUCT}(s) = Q(s) + c \cdot \sigma \cdot P(s) \cdot \frac{\sqrt{1+T}}{1+N(s)},
\tag{1}
\]

其中 \(c=1.0\) 是探索系数,\(T\) 是迄今为止扩展过的父状态总数,\(N(s)\) 计算 \(s\)(或其任何后代)被扩展的次数。\(Q(s)\) 是 \(s\) 对于已访问状态可达的最佳单步子奖励,当 \(s\) 尚未被扩展时回退到 \(R(s)\)。比例因子 \(\sigma = R_{\max} - R_{\min}\) 是当前池 \(\mathcal{S}\) 全局范围内的奖励范围,而 \(P(s)\) 是归一化的线性排名先验:

\[
P(s) = \frac{|\mathcal{S}| - \operatorname{rank}(s)}{\sum_{s' \in \mathcal{S}} \bigl(|\mathcal{S}| - \operatorname{rank}(s')\bigr)}, \quad \operatorname{rank}(s) \in \{0, \ldots, |\mathcal{S}| - 1\},
\tag{2}
\]

其中状态按奖励降序排序,因此 \(\operatorname{rank}(s) = 0\) 是最佳状态 (Yuksekgonul et al., 2026, App. A.2)。为了保持批次多样性,TTT-RTL 应用了**谱系阻断**:来自同一直接父子链的两个状态不会出现在同一个批次中。

### 3.2 基于EDA反馈的提示构建

每个父状态 \(s\) 的提示包含参考实现及其综合指标、设计规格,以及对于非根状态,父状态的Verilog及其EDA反馈(根提示省略父块):

> [Reference] area={A_ref}, delay={D_ref}, power={P_ref}, M={M_ref}. [Spec] {design_description} [Previous] {verilog_code} [Feedback] Syntax: PASS. Functional: PASS. Synthesis: area={A}, delay={D}, power={P}, M={M} (improved by {Δ}). Produce a Verilog module with M lower than {M}.

将目标表述为一个具体的数值阈值,将生成目标锚定在可测量的物理量上。

### 3.3 三阶段奖励函数

每个实现 \(v\) 通过三个阶段进行评估,奖励为:

\[
r = \omega_{\text{syn}} r_{\text{syn}} + \omega_{\text{func}} r_{\text{func}} + \omega_{\text{ppa}} r_{\text{ppa}}, \quad (\omega_{\text{syn}}, \omega_{\text{func}}, \omega_{\text{ppa}}) = (0.1, 1.0, 10.0),
\tag{3}
\]

并且在失败时提前终止评估。

**阶段1(语法)**:使用 iverilog 编译;失败时,\(r_{\text{syn}} \in (0, 1]\) 随错误消息数量衰减(详细评分见附录 I)。

**阶段2(功能)**:针对参考测试平台进行仿真;\(r_{\text{func}} \in \{0, 1\}\)。

相似文章

测试时训练破坏安全护栏

arXiv cs.LG

本文识别了测试时训练(TTT)的三种威胁模型,攻击者可利用这些模型绕过LLM的安全过滤器,实现高攻击成功率。研究结果表明,TTT引入了新的漏洞,破坏了现有的安全护栏。

使用TTT算法学习正则语言

Lobsters Hottest

本教程提供了TTT算法在Python中用于主动自动机学习的完整实现,解释了它如何通过消除冗余的成员查询并结合判别树与二分搜索反例分析来改进L*算法。