Towards Machine Learning for Placement and Routing in Chip Design: a Methodological Overview

本文概述了机器学习在现代芯片设计中的作用,特别是在布局和布线任务中的应用。文章介绍了布局和布线的基本问题,包括经典求解器,并详细阐述了机器学习如何提升传统方法,如使用深度学习加速布局计算,以及在决策和预测模型中的应用。同时,文章探讨了面临的挑战,如长反馈循环和高可扩展性需求,并指出机器学习在路由预测和拥塞管理中的潜力。

Towards Machine Learning for Placement and Routing in Chip Design: a
Methodological Overview
arXiv:2202.13564v1 [cs.LG] 28 Feb 2022
原文链接https://arxiv.org/abs/2202.13564

Abstract

布局和布线是现代芯片设计流程中两个不可缺少且具有挑战性的任务(NP-hard)。 与使用启发式或专家精心设计的算法的传统求解器相比,机器学习以其数据驱动的特性显示出了很好的前景,它可以减少对知识和先验的依赖,并通过其先进的计算范式(例如带有GPU加速的深度网络)具有潜在的更大的可扩展性。 本调查首先介绍了布局和路由的基本知识,并简要描述了经典的免学习求解器。 然后,我们对机器学习在布局和布线方面的最新进展进行了详细的评述。 最后,我们讨论了未来研究的挑战和机遇。

一、Introduction

布局将各种逻辑组件如逻辑门和功能块分配到芯片物理布局中的离散位置,路由完成互连的物理布线。 布局和路由的目标是在布局密度和路由拥塞等约束条件下优化功率、性能和面积(PPA)指标。布局问题可以看作是具有几何约束的二维装箱问题的一个更为复杂的变体。 后者被称为Nphard[Hartmanis,1982]。 布局的目标与电路设计的逻辑互连和逻辑元件的几何位置有关。 由于布局方案的质量只有在布线后才能得到准确的评价,导致设计流程中的反馈回路很长,因此现代布局需要在早期减少布线拥塞,提高布线性。
布线与布局紧密相连,优秀的布线解决方案可提高芯片面积利用率、时序性能和布线性。 还有关于路由和位置的调查。 [Huang et al.,2021]对EDA领域已有的ML研究进行了全面的综述,这些研究主要分为四大类:传统方法中的决策、性能预测、黑箱优化和自动化设计,并按自动化程度的提高排序。 虽然它涵盖了EDA流程中的各个阶段,但与我们的相比,它提供了对特定任务、布局和路由的浅层分析。 [Hamolia and Melnyk,2021]介绍了ISPD2015数据集,用于比较经典方法和ML算法。 [Rapp et al.,2021]分类了ML如何被用于设计时/运行时优化和ICS的探索策略,以及EmployeDML算法的趋势。 [Markov et al.,2015]回顾了安置研究的历史和SOAT的进展。

二、Problem Background and Classic Solvers

在这里插入图片描述
一般来说,全局布局包括宏布局和标准单元格布局,如图1所示。 具体的布局包括合法化、无线化和可路由性细化。

2.1 Placement Problem

  • 全局安置,它是芯片设计过程中最关键也是最耗时的步骤之一,可以归结为一个约束优化问题。 它为包括宏和芯片布局中的标准单元在内的网表的各种组件分配准确的位置。 标准单元是基本逻辑单元,即逻辑门,而宏是预先设计的ip块,例如srams。 良好的布局可以提高芯片的面积利用率、时序性能和可布线性,而较差的布局分配会影响芯片的性能,甚至使其无法制造。 在形式上,全局布局的输入是一个可以用超图H=(V,E)表示的网表,其中V={ v 1 , v 2 , ⋅ ⋅ ⋅ , v n v_1,v_2,···,v_n v1,v2,⋅⋅⋅,vn}表示节点(单元)集,E={ e 1 , e 2 , ⋅ ⋅ ⋅ e m e_1,e_2,···e_m e1,e2,⋅⋅⋅em}表示超边(网)集。 超边Ei∈E是节点的子集。 我们寻求确定宏和标准单元( x i , y i x_i,y_i xiyi)的位
由于没有提供具体的参考引用内容,以下是一些基于一般性知识对《Towards Cost - Effective Learning: A Synergy of Semi - Supervised and Active Learning》可能涉及内容的推测。 该研究可能聚焦于如何将半监督学习和主动学习相结合以实现更具成本效益的学习方式。半监督学习利用大量未标记数据和少量标记数据进行学习,而主动学习则通过主动选择最有价值的数据进行标记来提高学习效率。二者结合可能在减少标记数据成本的同时,提升模型的性能和泛化能力。 在实际应用中,这种结合可能会用于图像识别、自然语言处理等领域,以在有限的资源下取得更好的学习效果。例如,在图像识别任务中,主动选择一些具有代表性的图像进行标记,然后结合大量未标记图像进行半监督学习,从而在不标记大量图像的情况下获得高精度的识别模型。 ```python # 这里简单模拟一个可能的主动学习和半监督学习结合的伪代码框架 # 假设我们有一些未标记数据和少量标记数据 unlabeled_data = [...] labeled_data = [...] # 主动学习选择最有价值的数据进行标记 def active_selection(unlabeled_data, model): # 选择最有价值的数据的逻辑 selected_data = ... return selected_data # 半监督学习更新模型 def semi_supervised_learning(model, labeled_data, unlabeled_data): # 半监督学习的训练逻辑 updated_model = ... return updated_model # 循环进行主动学习和半监督学习 model = ... for i in range(num_iterations): selected_data = active_selection(unlabeled_data, model) # 标记选择的数据 labeled_data.extend(selected_data) model = semi_supervised_learning(model, labeled_data, unlabeled_data) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值