Topology Matters in RTL Circuit Representation Learning¶
会议: ICLR 2026
OpenReview: https://openreview.net/forum?id=bn6bD7TowO
代码: https://github.com/BUPT-GAMMA/TopoRTL.git
领域: 图表示学习 / EDA 芯片设计
关键词: RTL 表示学习, 电路拓扑, 多模态对齐, 位置编码, PPA 预测
一句话总结¶
针对现有 RTL 电路表示学习把 Verilog 当普通代码、忽略硬件拓扑的问题,TopoRTL 把电路拆成寄存器锥、构建「图 + 文本摘要」双模态,再用三种拓扑感知位置编码注入注意力、配合拓扑引导的跨模态对齐,用仅 29M 参数在 PPA 预测和电路检索上超过 7B 级文本大模型。
研究背景与动机¶
领域现状:用表示学习把芯片设计中的电路映射到低维向量空间,是 EDA「设计左移」(把性能预测、问题检测前移到早期阶段)的基础能力,可服务 PPA(性能/功耗/面积)预测、电路检索、电路生成等下游任务。RTL(寄存器传输级,工业上用 Verilog 描述)是数字电路中最关键的抽象层,因此大量工作把 RTL 当软件代码处理——CodeV 用 GPT-3.5 给 Verilog 生成自然语言描述再微调 LLM,DeepRTL/DeepRTL2 在「Verilog↔描述」数据上微调 CodeT5+,本质都是基于文本学语法语义。
现有痛点:RTL 不是普通编程语言,它本质上是一张结构化数据流图,行为意图与拓扑结构密不可分。论文用图 1 给出反直觉例子:电路 A 和 B 拓扑几乎一样、但实现的功能不同(一个减法、一个加法);电路 B 和 C 都是四输入加法器、功能完全相同,但 B 是链式结构、C 是树式结构,链式更省功耗、树式时序更优——同样的功能因拓扑不同会带来截然不同的物理表现。纯文本方法看不到这种拓扑差异,导致表示不完整、下游任务受限。
核心矛盾:文本方法(LLM)擅长行为语义但天然不擅长图结构数据,抓不住拓扑;传统拓扑方法(手工特征工程把 Verilog 转图)又缺语义泛化能力;而近期多模态尝试如 CircuitFusion 要靠昂贵的逻辑综合(生成门级网表)来隐式推断拓扑,效率低、违背「设计左移」初衷。三类方法都没能在 RTL 原生层面同时拿到行为和拓扑。
本文目标:在不依赖综合的前提下,直接从 RTL 同时建模行为函数和拓扑结构,让表示对拓扑敏感。
切入角度:作者把 RTL 信号传播拆成两个阶段——计算阶段(信号穿过组合逻辑网络,互连密度影响功耗、传播路径深度影响时序)和存储阶段(时钟边沿寄存器锁存结果,位宽决定数据精度、反映操作复杂度)。这个「双阶段」视角揭示:拓扑不只是组合逻辑的连线,它本身就是行为函数的一种有意表达,因此可以用一组贴合存储/计算维度的结构特征把拓扑显式编码进来。
核心 idea:把电路拆成寄存器锥、构建图与文本双模态,用「位宽中心性 + 最长路径 + 图密度」三种拓扑感知位置编码改造 Transformer 注意力,再用拓扑约束做跨模态对齐,让表示既懂行为又懂拓扑。
方法详解¶
整体框架¶
TopoRTL 的输入是一份 RTL 设计(Verilog),输出是一组既保留行为语义、又对拓扑差异敏感的电路向量表示,可直接用于 PPA 预测和电路检索。整条流水线先做数据预处理(把设计拆成寄存器锥、为每个锥造图模态和文本摘要模态),再过三个核心组件:双模态 tokenizer 给两路模态产生初始嵌入,拓扑感知位置编码 + Transformer 把结构信息注入注意力,最后拓扑引导的跨模态对齐把两路模态拉到一致语义空间。
%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
A["RTL 设计 (Verilog)"] --> B["寄存器锥分解<br/>+ 双模态构建<br/>CDFG 图 + LLM 摘要"]
B --> C["行为感知双模态<br/>Tokenizer"]
C --> D["拓扑感知位置编码<br/>位宽中心性 / 最长路径 / 图密度<br/>注入 Transformer 注意力"]
D --> E["拓扑引导<br/>跨模态对齐"]
E --> F["电路表示<br/>→ PPA 预测 / 电路检索"]
关键设计¶
1. 寄存器锥分解 + 图-文本双模态构建:把一整块电路拆成可对齐的语义单元
纯把整份 Verilog 喂给模型既丢拓扑又粒度太粗。TopoRTL 借「子设计划分」思路,用寄存器驱动的反向遍历把设计拆成寄存器锥(register cone):给定含 \(\{R_i\}_{i=1}^{N}\) 个寄存器的设计,先建信号依赖字典,再从每个寄存器 \(R_i\) 沿组合逻辑反向遍历到它的输入/相连寄存器,最后用 Yosys 把识别出的信号还原成语法正确、可验证的子电路 \(V^{R_i}\)。每个子电路再造两路模态:图模态把 \(V^{R_i}\) 转成控制-数据流图(CDFG)\(G^{R_i}\),节点是组合逻辑和寄存器、边是信号连通性,显式建模拓扑;文本模态则用 GPT-OSS-120B 给每个子电路生成描述高层功能意图的行为摘要 \(S^{R_i}\)。这样一份设计变成 \(N\) 个寄存器锥、每个锥两路互补表示,为后续「拓扑由图来管、行为由文本来管」打好基础。
2. 三种拓扑感知位置编码 + 拓扑感知注意力:把硬件结构变成 Transformer 能感知的归纳偏置
香草 Transformer 对线性序列在行,但看不出 RTL 的层次拓扑——信号路径和连接密度对功能至关重要却被忽略。TopoRTL 顺着「存储/计算双阶段」设计了三种编码。位宽中心性编码对应存储阶段:寄存器位宽直接决定数据精度(32 位算术单元需要宽位宽,1 位控制信号窄位宽即可),从 Verilog 声明(如 reg [31:0] data;)抽出 \(bit(R_i)\),为每个可能的位宽值学一对可查表嵌入 \(a^{bit}_G, a^{bit}_S\),加到 MLP 处理后的节点特征上:\(h^{R_i}_G = x^{R_i} + a^{bit(R_i)}_G\),把位宽和功能复杂度关联起来。最长路径编码与密度编码对应计算阶段:对每个寄存器锥取从其它寄存器到 \(R_i\) 的路径长度集合 \(L^{R_i}\)(用伪逻辑门数衡量),为抗离群点取 Top-K 最长路径求均值 \(l^{R_i} = \text{MEAN}(\text{Top-K}(L^{R_i}))\),再构关系矩阵 \(\Delta L_{ij} = |l^{R_i} - l^{R_j}|\) 表征关键路径差异;图密度 \(\rho^{R_i} = \frac{E^{R_i}}{N^{R_i}(N^{R_i}-1)}\) 量化局部互连紧密程度(越高功耗越大、耦合越紧),同样构差异矩阵 \(\Delta \rho_{ij}\)。最关键的一步是把这两个差异矩阵当作偏置注入注意力分数:
其中 \(f_G, g_G\) 是可学习的 MLP 映射、\(\alpha_G, \beta_G\) 是可学习缩放系数。这样注意力会随寄存器对之间的时序特征(路径深度差)和结构复杂度(密度差)动态调整关注度;代表整块电路的虚拟节点 \(R_0\) 则把所有空间编码重置为独立可学习标量单独处理。图、文本两路各过一套这样的 Transformer。
3. 拓扑引导的跨模态对齐:用拓扑约束把图模态和文本模态拉到一致语义
光有两路独立表示还不够,需要让「图懂的拓扑」和「文本懂的行为」对齐又不破坏拓扑结构。TopoRTL 构造两种互补的融合 \(Y = (H_G, \hat{H}_S)\) 与 \(Z = (\hat{H}_G, H_S)\)(一边用图的输入嵌入配文本的编码输出、另一边反过来),各自跨节点取均值得全局表示 \(y, z\)。对齐用一个带 margin 的四元组/对比损失,既把正对 \((y,z)\) 拉近,又要求其距离小于拓扑不相似负样本的距离(负样本从 batch 内随机取 \(y_{neg}, z_{neg}\)):
其中 \(\beta\) 控制正负样本间距 margin,\([\cdot]_+ = \max(0, \cdot)\)。这个损失同时作为预训练损失,让两路模态在保持拓扑一致性的前提下达成语义对齐,从而在检索这类行为敏感任务里也能借拓扑过滤掉无关样本、提升匹配可靠性。
损失函数 / 训练策略¶
双模态 tokenizer 通过行为等价对比学习任务 + 掩码建模任务预训练(图 tokenizer 映射子电路到紧凑潜表示,文本 tokenizer 基于 BERT 编码摘要);主框架的预训练目标即上面拓扑引导对齐的 \(L_{fuse}\)。整体架构轻量,仅 29.13M 参数。
实验关键数据¶
数据集为 115 份 RTL 设计(来自 OpenCores、VexRiscv、ITC'99、DeepCircuitX),抽寄存器锥后得 7,576 个子电路。两个下游任务:PPA 预测(回归,指标 PCC / R² / MAPE / RRSE)和自然语言代码检索(按 \(L \in \{5,8,10,15\}\) 个负样本检索分类,指标 AUC)。基线含图模态(GCN-MLP/GCN-GNN)、文本模态(Qwen3-Embedding 0.6B/4B/8B、Verilog 专用 CodeV 三个变体 6.7B–7B)、多模态(CircuitFusion)。
主实验(PPA 预测,节选 Area / Power / WNS)¶
| 指标 | TopoRTL (29M) | CircuitFusion (150M) | CodeV-QC (7B) | Qwen3-E-8B |
|---|---|---|---|---|
| Area PCC↑ | 0.863 | 0.647 | 0.818 | 0.720 |
| Area MAPE↓ | 7.952 | 13.242 | 10.830 | 12.079 |
| Power PCC↑ | 0.884 | 0.657 | 0.805 | 0.766 |
| Power MAPE↓ | 25.033 | 43.073 | 37.314 | 37.826 |
| WNS PCC↑ | 0.862 | 0.817 | 0.762 | 0.849 |
| WNS RRSE↓ | 0.580 | 0.808 | 1.400 | 0.674 |
TopoRTL 以远小的参数量(29M vs 7B 文本模型)在 Area/Power 上大幅领先(Area PCC ↑5.5%、Power PCC ↑6.9%、Area MAPE ↓26.2%、Power MAPE ↓31.5%),并在 WNS 上刷新时序基准;Slack 上与最强基线持平。检索任务(图 3)中 TopoRTL 在所有 \(L\) 取值下都稳定保持约 0.8 AUC,优于全部基线,鲁棒性最好。
消融实验(图 5)¶
| 配置 | 现象 |
|---|---|
| Full TopoRTL | 完整模型,整体最优 |
| w/o bit-width | 去掉位宽编码后掉点明显,位宽编码最有效地捕捉拓扑与复杂度 |
| w/o max-path | 去掉最长路径编码,效果有增有减不稳定 |
| w/o graph-density | 去掉密度编码,效果同样不稳定 |
| w/o cross-modal loss | 去掉拓扑引导对齐,时序略升但其它拓扑/行为任务大幅下降 |
关键发现¶
- 位宽中心性编码贡献最大、最稳定;最长路径与图密度编码单独看效果不一致,作者认为这说明电路表示需要多种互补的拓扑信号配合,而非依赖单一结构特征。
- 拓扑引导对齐「偏向拓扑保真」:它优先保证拓扑-语义一致性,可能让 Slack 这类时序精度略降,但显著提升其它拓扑与行为任务,对设计优化整体更有利。
- t-SNE 可视化(图 4)显示 TopoRTL 的表示在 Area/Power 上呈平滑梯度、在 Slack 上呈不重叠的清晰簇,而 CircuitFusion 分布破碎、簇严重纠缠;TopoRTL 的 Slack 簇里仍有孤立离群点,反映 RTL 与门级实现间尚未解决的抽象损失。
亮点与洞察¶
- 把硬件领域知识(双阶段信号传播:存储看位宽、计算看路径深度与密度)翻译成三种可注入注意力的位置编码偏置,是「领域归纳偏置 > 暴力堆参数」的漂亮范例——29M 打 7B。
- 不靠逻辑综合就拿到拓扑,真正贴合 EDA「设计左移」,避免了 CircuitFusion 那种依赖门级网表的高成本路径。
- 「拓扑差异矩阵 \(\Delta L, \Delta \rho\) 当注意力偏置」这一手可迁移到其它结构化图序列任务:凡是节点间存在可量化结构距离(路径、密度、层级)的场景,都能把它做成可学习偏置注入 Transformer。
局限与展望¶
- 当前寄存器锥分解假设同步时序电路,会在抽取过程中破坏时钟域关系,未来需做时钟感知分解以支持异步电路。
- 数据集仅 115 份设计 / 7,576 子电路,规模有限,扩到更大更多样的 RTL 数据才能验证跨架构泛化。
- 最长路径与密度编码效果不稳定,位置编码仍有提升空间;Slack 表示里的离群点也暴露 RTL 抽象与门级实现的对齐缺口。
相关工作与启发¶
- vs CircuitFusion(多模态): 它整合代码/摘要/图,但靠预训练时引入门级网表来隐式推断拓扑,成本高且违背左移;TopoRTL 直接从 RTL 用硬件归纳偏置显式抽拓扑,更轻更快、PPA 全面领先。
- vs SNS v2(拓扑对比): 它把电路分成寄存器锥做功能等价对比预训练,但牺牲了拓扑感知,无法区分图 1 里功能相同、拓扑不同的电路 B 和 C;TopoRTL 正是要把这种拓扑差异显式编码出来。
- vs CodeV / DeepRTL(文本 LLM): 它们把 RTL 当软件代码学语法语义,抓不到图结构拓扑;TopoRTL 以图模态补上拓扑、用对齐保住行为,证明拓扑信息对 RTL 表示不可或缺。
评分¶
- 新颖性: ⭐⭐⭐⭐⭐ 「拓扑即行为」的观察 + 三种硬件启发位置编码注入注意力,角度新且自洽
- 实验充分度: ⭐⭐⭐⭐ PPA 五指标 + 检索 + t-SNE + 消融较完整,但数据集规模偏小
- 写作质量: ⭐⭐⭐⭐ 双阶段动机讲得清楚、图 1 反例有说服力,公式记号略密
- 价值: ⭐⭐⭐⭐⭐ 轻量超大模型、贴合设计左移,对 EDA 表示学习有实际意义