基于深度强化学习的芯片全局自动布局方法技术

技术编号:35444310 阅读:17 留言:0更新日期:2022-11-03 11:56
本发明专利技术公开了基于深度强化学习的芯片全局自动布局方法,可对超大规模集成电路芯片快速布局,能够保证布局结果收敛以实现快速布局,并使得布局布线的线长、拥塞、面积达到近似最优。另外,芯片全局自动布局方法中提出一种空间利用率的方法,并将该空间利用率的方法应用在局部布局和全局自动布局中,从而使得局部布局和全局自动布局的面积达到最小。还有的是,应用异步训练网络结构,通过该网络结构学习训练,可使局部布局和全局自动布局相关性更紧密,且布局结果更容易收敛,能实现芯片全局自动布局的可靠性。自动布局的可靠性。自动布局的可靠性。

【技术实现步骤摘要】
基于深度强化学习的芯片全局自动布局方法


[0001]本专利技术涉及电子设计自动化的
,尤其涉及到基于深度强化学习的芯片全局自动布局方法。

技术介绍

[0002]现如今,随着集成电路的快速发展,电子设计自动化(EDA)技术所面临的问题愈加复杂,需要处理的电路规模和计算的数据量不断增大。EDA技术的发展速度能否跟上设计和制造工艺的飞速进步成为了关键问题。在集成电路物理设计阶段,布局布线是一个重要且耗时的步骤。首先,布局过程中涉及大量的迭代和优化,所需时间会显著地影响集成电路设计周期。其次,在集成电路的物理设计中,各个步骤间存在着密切联系,布局的结果的会影响可布线性以及布线过程的运行时间、拥挤度和布通率等参数。近年来,除了以线长和时延为驱动外,以可布线性为驱动的布局算法也受到关注。尽管在过去的几十年中布局算法有了显著的进步,但是快速且高效的布局仍然是一个具有挑战性的问题。
[0003]全局自动布局是芯片设计中的一个长期挑战,需要对日益复杂的电路进行多目标优化。为了解决芯片中的布局问题,学者们提出了基于解析器求解的方法,包括了非线性优化器,还有现代分析技术兴起之后发展的更先进的二次方法,以及最近的基于静电学方法和替换的方法,这些方法基于梯度优化方案中更新单元的位置,并且通常可以通过使用分区在CPU上并行化来处理数百万个标准单元,以减少运行时间。谷歌也提出了第一个用于宏布局的端到端学习方法,该方法将芯片布局建模为一个顺序决策问题。日本幸村雄介在专利中使用了Q学习的方法设计布局布线;在文献(郝睿,蔡懿慈,周强,王锐.DrPlace:基于深度学习的可布线性驱动布局算法[J].计算机辅助设计与图形学学报,2021,33(04):624

631)中也提出了基于深度学习的可布线性驱动布局算法。尽管先前的工作都在CPU上执行超大规模优化问题的繁重数值计算,但是布局质量和布局的速度均有优化提升的地方。

技术实现思路

[0004]本专利技术的目的在于克服现有技术的不足,提供一种基于深度强化学习的芯片全局自动布局方法,旨在超大规模集成电路中运用深度强化学习实现芯片快速全局自动布局并得到近似最优的解决方案。
[0005]为实现上述目的,本专利技术所提供的技术方案为:
[0006]基于深度强化学习的芯片全局自动布局方法,包括以下步骤:
[0007]S1、输入芯片布局信息;
[0008]S2、对芯片布局信息进行预处理,其中包括设计规则;
[0009]S3、进行芯片局部布局的强化学习,得到最优的芯片局部布局信息;
[0010]S4、判断步骤S3得到的最优的芯片局部布局信息是否满足设计规则,若满足,则进入步骤S5,否则返回步骤S3再次进行芯片局部布局的强化学习;
[0011]S5、结合最优的芯片局部布局信息进行芯片全局自动布局的深度强化学习,得到
最优的芯片全局自动布局信息;
[0012]S6、依据步骤S5得到的最优的芯片全局自动布局信息进行填充布局,得到最优的芯片全局自动布局效果;
[0013]S7、判断步骤S6得到的最优的芯片全局自动布局效果是否满足设计规则,若满足,则采用该最优的芯片全局自动布局信息进行芯片全局自动布局,否则返回步骤S5继续进行芯片全局自动布局的深度强化学习。
[0014]进一步地,对布局信息进行预处理,包括:
[0015]S2

1网格预处理:设置网格为正方形并建立直角坐标系,其横轴为x,纵轴为y,在网格中,边用e表示,边与边之间的布线容量用c
e
表示,记第i个格子G的中心点信息为G
i
={x
i
,y
i
,c
ei
},设置网格数;
[0016]S2

2、宏单元预处理:把每一个宏单元视为矩形,利用快速排序算法对宏单元进行大小排序,并以此排序的结果组成排序序列集合作为输入集:
[0017]H={S
i
,i=1,...,N}
[0018]其中,S
i
=(L
i
,W
i
,P
i
)为元组,表示带有位置信息的宏单元的面积,L
i
表示宏单元的长,W
i
表示宏单元的宽,P
i
表示宏单元的位置信息,即P
i
={x
i
,y
i
},N表示宏单元的总数;
[0019]S2

3、标准单元预处理:将标准单元分为两种单元簇:
[0020]1)依附宏单元H
i
的标准单元为依附型标准单元簇,记作B
i
,则B
i
={b
i1
,,b
i2
,...,b
in
};
[0021]2)不依附宏单元的标准单元为散件型标准单元簇,记作B,则B={b1,b2,...,b
n
};
[0022]S2

4、设计规则。
[0023]进一步地,强化学习局部布局,包括:
[0024]S3

1、向布局区域输入宏单元序列H={S
i
,i=1,...,N}及其依附型标准单元簇B
i
={b
i1
,b
i2
,...,b
in
},并以集合簇的形式随机散放;
[0025]S3

2、针对每一个宏单元S
i
及其随机放置的依附型标准单元簇B
i
利用静电系统局部布局模型初始布局,使依附型标准单元簇B
i
进行分散移动,使得宏单元S
i
与依附型标准单元簇B
i
整体静电平衡,形成初始的局部布局信息序列状态S;
[0026]S3

3、从静电系统局部布局模型初始布局后得到的初始布局信息状态S中提取特征信息,令该特征信息为φ(S),输入到Actor

critic强化学习网络中,经过网络训练,得到最优的布局策略,根据最优布局策略输出一个最优的初始局部布局,输出最优策略对应的Actor网络参数θ和Critic参数ω;
[0027]S3

4、用矩形将该单元模块进行规范化得到宏单元模块,令其长为L
N
,宽为W
N
,面积为S
N
,输出的信息序列为:
[0028]H
N
={S
N1
,S
N2
,..,S
Nn
}
[0029]其中,S
N
={L
N
,W
N
,P
N
},L
N本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于深度强化学习的芯片全局自动布局方法,其特征在于,包括以下步骤:S1、输入芯片布局信息;S2、对芯片布局信息进行预处理,其中包括设计规则;S3、进行芯片局部布局的强化学习,得到最优的芯片局部布局信息;S4、判断步骤S3得到的最优的芯片局部布局信息是否满足设计规则,若满足,则进入步骤S5,否则返回步骤S3再次进行芯片局部布局的强化学习;S5、结合最优的芯片局部布局信息进行芯片全局自动布局的深度强化学习,得到最优的芯片全局自动布局信息;S6、依据步骤S5得到的最优的芯片全局自动布局信息进行填充布局,得到最优的芯片全局自动布局效果;S7、判断步骤S6得到的最优的芯片全局自动布局效果是否满足设计规则,若满足,则采用该最优的芯片全局自动布局信息进行芯片全局自动布局,否则返回步骤S5继续进行芯片全局自动布局的深度强化学习。2.根据权利要求1所述的基于深度强化学习的芯片全局自动布局方法,其特征在于,对布局信息进行预处理,包括:S2

1网格预处理:设置网格为正方形并建立直角坐标系,其横轴为x,纵轴为y,在网格中,边用e表示,边与边之间的布线容量用ce表示,记第i个格子G的中心点信息为G
i
={x
i
,y
i
,c
ei
},设置网格数;S2

2、宏单元预处理:把每一个宏单元视为矩形,利用快速排序算法对宏单元进行大小排序,并以此排序的结果组成排序序列集合作为输入集:H={S
i
,i=1,...,N}其中,S
i
=(L
i
,W
i
,P
i
)为元组,表示带有位置信息的宏单元的面积,L
i
表示宏单元的长,W
i
表示宏单元的宽,P
i
表示宏单元的位置信息,即P
i
={x
i
,y
i
},N表示宏单元的总数;S2

3、标准单元预处理:将标准单元分为两种单元簇:1)依附宏单元H
i
的标准单元为依附型标准单元簇,记作B
i
,则B
i
={b
i1
,b
i2


,b
in
};2)不依附宏单元的标准单元为散件型标准单元簇,记作B,则B={b1,b2,...,b
n
}:S2

4、设计规则。3.根据权利要求2所述的基于深度强化学习的芯片全局自动布局方法,其特征在于,强化学习局部布局,包括:S3

1、向布局区域输入宏单元序列H={S
i
,i=1,...,N}及其依附型标准单元簇B
i
={b
i1
,b
i2


,b
in
},并以集合簇的形式随机散放;S3

2、针对每一个宏单元S
i
及其随机放置的依附型标准单元簇B
i
利用静电系统局部布局模型初始布局,使依附型标准单元簇B
i
进行分散移动,使得宏单元S
i
与依附型标准单元簇B
i
整体静电平衡,形成初始的局部布局信息序列状态S;S3

3、从静电系统局部布局模型初始布局后得到的初始布局信息状态S中提取特征信息,令该特征信息为φ(S),输入到Actor

critic强化学习网络中,经过网络训练,得到最优的布局策略,根据最优布局策略输出一个最优的初始局部布局,输出最优策略对应的Actor网络参数θ和Critic参数ω;S3

4、用矩形将该单元模块进行规范化得到宏单元模块,令其长为L
N
,宽为W
N
,面积为
S
N
,输出的信息序列为:H
N
={S
N1
,S
N2
,..,S
Nn
}其中,S
N
={L
N
,W
N
,P
N
},L
N
为更新模块的长,W
N
为更新模块的宽,P
N
为该模块的位置信息。4.根据权利要求3所述的基于深度强化学习的芯片全局自动布局方法,其特征在于,所述步骤S3

3中,具体的设定和步骤如下:S3
‑3‑
1、马尔可夫决策:1)状态S:静电系统局部布局模型形成的初始的局部布局信息序列状态,包括宏单元信息S
i
及其依附型标准单元簇B
i
的长和宽及其在网格中的位置信息;2)动作集合A:所有标准单元可能采取的动作的集合;3)衰减因子γ:设置γ为1,表示所有的后续状态和当前奖励一致;4)探索率∈:使用∈

贪婪法进行价值迭代,即设置一个较小的∈值,使用1

∈的概率贪婪地选择目前认为是最大行为价值的行为,而用∈的概率随机的从所有m个可选行为中选择行为;用公式表示为:其中,a表示动作,s表示为状态;S3
‑3‑
2、约束设定;S3
‑3‑
3、损失函数设定;S3
‑3‑
4、更新网络参数,得到Actor网络参数θ、Critic网络参数ω以及策略梯度估计5.根据权利要求4所述的基于深度强化学习的芯片全局自动布局方法,其特征在于,所述约束设定包括:1)线长约束:采用半周长线长,其最接近斯坦纳树,布线的最低成本,其计算公式为:HPWL(i)=(max
b∈i
{x
b
}

min
b∈i
{x
b
})+(max
b∈i
{y
b
}

min
b∈i
{y

【专利技术属性】
技术研发人员:陈学松敖启缘蔡述庭张丽丽
申请(专利权)人:广东工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1