关键词:
深度强化学习
电路布局
可布线性
拥塞预测
宏单元布局
摘要:
布局设计是集成电路物理设计的重要步骤,布局设计的质量直接影响着芯片的性能、功耗、面积和制造成本,并制约着后期的布线设计是否能满足拥塞度等要求。布局问题可以简单描述为将集成电路的标准单元、宏单元等模块放置在芯片的适当区域内,线长最小,同时要满足模块间不重叠、功耗、面积和可布线性等约束。随着集成电路需求的持续增长,对高效的布局算法的需求也随之增加。传统布局算法通常需要对每个新电路从头开始布局,这使得布局速度难以跟上需求的增长速度。因此,本文将深度强化学习引入到布局设计过程中,与传统方法相比,经过充分训练的深度强化学习算法能够直接应用于新的电路布局任务,无需对每个新项目重新进行训练。这一优势不仅提高了设计的灵活性和效率,还减少了人工干预的需求,使得处理高复杂性的设计任务变得更加高效和有效。本文通过构建深度强化学习网络模型来学习布局策略,进行宏单元的布局,然后再确定标准单元的位置,同时在布局算法中嵌入拥塞预测模块,进一步对布局结果进行优化。最后在ISPD-2005数据集上进行了实验,实验结果表明本文的算法有效地降低了线长,改善了拥塞情况,且具有良好的泛化能力。本文的主要研究工作及成果如下:
(1)针对现有深度强化学习宏单元布局算法未充分考虑电路状态表示的问题,提出了一种新型深度强化学习布局算法CGPlace。CGPlace融合了卷积神经网络(Convolutional Neural Network,CNN)和图卷积网络(Graph Convolution Network,GCN),并引入了注意力机制以关注重要的特征。具体地说,首先将布局转换为图像,将单元之间关系表示为图结构,其次CGPlace采用CNN提取电路的图像特征,并使用GCN来捕捉电路的图结构特征,同时引入注意力机制的进一步强化算法对于重要布局信息的处理能力。CGPlace通过这种结合图像与图结构的双重特征提取方法,实现了电路特征的深度融合,不仅全面描述了电路的状态,还提升了对电路布局规律和通用特征的识别与表示能力,优化了布局性能。
(2)针对现有深度强化学习宏单元布局算法只专注于优化宏单元互联线长而忽略整体布局线长优化的问题,在CGPlace的基础上提出了改进的布局算法LHPlace。LHPlace整合了宏单元与标准单元的布局,以整体布局线长为优化目标,有效降低了整体布局线长。此外,LHPlace还引入了一个内部奖励学习模块,解决了宏单元与标准单元联合布局中出现的奖励稀疏问题。
(3)针对布局阶段的缺乏详细拥塞信息的问题。在LHPlace的基础上进一步提出了改进的布局算法LHPlace-p,LHPlace-p嵌入了一个拥塞预测模型,该模型能够利用布局阶段的信息预测后续阶段的拥塞信息,预先识别可能的布线问题区域。这使得LHPlace-p可以根据预测结果调整布局策略,从而优化整体布局效果。
(4)本文提出的算法在ISPD-2005基准测试数据集中进行了对比实验,从实验结果看,在大多数测试电路上,CGPlace相比其他现有布局算法显示出更短的宏单元互联线长,而LHPlace在这些基准上相较于CGPlace进一步缩短了平均6%的布局线长。此外,LHPlace-p与LHPlace相比表现出更低的拥塞率,在水平拥塞与垂直拥塞上分别降低了49.74%和75.5%拥塞溢出,这表明LHPlace-p生成的布局具有更高的可布线性。这些实验结果表明我们提出的融合强化学习的布局算法在解决集成电路布局方案方面是有效的,可行的。