System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及集成电路领域,特别是涉及一种考虑模块对称性的布图规划方法、系统及电子设备。
技术介绍
1、物理设计是大规模集成数字电路设计的一个关键阶段,它将逻辑设计转化为可以在硅片中实现的物理结构,这个过程涉及到电路布图、布局、布线、时序优化等问题。通过设计一系列物理约束和目标,确保芯片满足性能、功耗、面积等方面的需求。在进行物理设计时,布图规划是第一步也是极为关键的步骤。
2、布图规划的重要性主要体现在以下几个方面。其一,布图规划阶段是层次规划的一部分。在层次规划中,对整个芯片进行分层次的划分,将逻辑结构组织成层次结构,形成层次化的电路模块。布图规划则在这个基础上进行,决定各个模块的相对位置。其二,布图规划的合理与否直接关系到芯片的时序收敛、布线通畅、电源稳定以及良品率。在一些复杂的超大规模集成电路的设计中,在电路布图时就需要对供电网络、时钟树等网络进行规划,可见布图规划对芯片的完整规划与设计意义重大。其三,布图规划涉及到芯片的面积利用,通过合理地分配模块位置,满足整体的面积约束,对实现高集成度、小尺寸芯片至关重要。
3、随着芯片设计复杂度的急剧增加,层次规划、ip模块被广泛使用,布图规划中模块的位置排布至关重要。在数字电路布图规划中,对称布图的版图结果规整美观,利于后道物理工艺加工制造,降低制造成本。其次,对称性模块相互靠近可以有效降低模块间互连线长度,降低信号传播延迟,提高芯片的响应速度,降低功耗。对称性约束的复杂主要体现在对称种类的多样性以及数据结构表示的复杂性。对称性约束主要有三种对称类型,包括
4、传统的对称性处理包括识别、表示和处理。首先,对称性识别主要通过人工操作,在布图规划前设置的对称模块。对称模块的特征包括长宽相似,以及与其他模块间的连线相似。在这种情况下,将其对称放置一方面可以在几何上获得较好的排布,另一方面可以减少线长。传统方法通过人工找到需要对称放置的模块,并在输入文件中手动设置为对称模块。当模块数较多,且连线复杂时,难以高效准确的判断对称模块。在对称性表示上,未将对称模块层次化表示,导致在布图时,需要判断模块的对称性并搜索与其对称的模块,大大提升了算法复杂度。其次在对称性处理时,使用较为复杂的边界节点的方式表示对称模块的轮廓。传统的b-tree定义边界节点定义模块的边界,但是由于对称模块通常具有不规则的外形,导致需要多个边界节点约束外框,在算法上较为复杂。
技术实现思路
1、为解决现有技术存在的上述问题,本专利技术提供了一种考虑模块对称性的布图规划方法、系统及电子设备。
2、为实现上述目的,本专利技术提供了如下方案。
3、一种考虑模块对称性的布图规划方法,包括:根据输入信息对电路中模块的对称性进行识别,得到对称组;将电路中不属于对称组的模块作为非对称模块;所述输入信息包括模块的尺寸信息和模块的线网信息;所述对称组包括多个对称对;每一对称对包括一个模块或一对模块。
4、选取所述对称组中对称对的对称代表,并基于所述对称代表构建对称树;所述对称代表为所述对称对中的一半模块;所述一半模块为一个模块或半个模块。
5、基于所述对称树和所述非对称模块生成cb-tree。
6、对所述对称树和cb-tree进行模拟退火处理。
7、根据模拟退火处理后的对称树确定所述对称组中对称对的一半模块的坐标。
8、根据退火处理后的cb-tree进行布图规划,基于对称组中对称对选中的模块的坐标更新另一半对称组坐标。
9、可选地,根据输入信息对电路中模块的对称性进行识别,得到对称组,具体包括:对模块的线网信息进行建模,以获取每个模块所在线网的序号。
10、基于每个模块所在线网的序号确定当前簇的线网相似度,并根据线网相似度对模块进行分裂层次聚类,得到对称模块和非对称模块;其中,初始状态下,将电路中所有的模块作为一个簇。
11、可选地,基于每个模块所在线网的序号确定当前簇的线网相似度,并根据线网相似度对模块进行分裂层次聚类,得到对称模块和非对称模块,具体包括:基于每个模块所在线网的序号确定当前簇的线网相似度,并判断所述线网相似度是否大于阈值,得到判断结果。
12、当所述判断结果为线网相似度大于阈值时,则将当前簇中的元素确定为对称模块。
13、当所述判断结果为线网相似度小于等于阈值时,确定当前簇中两两元素间的jaccard距离。
14、将jaccard距离最远的两个元素作为中心,对当前簇中剩余的元素进行聚类。
15、确定每类中元素的形状相似度。
16、将形状相似度最小的两个模块组成对称对。
17、若簇中的模块为奇数,无法全部成对,或模块形状差距超过设定要求,无法构成对称对,则处理为自对称模块。
18、可选地,模拟退火处理的损失函数为:。
19、其中,表示面积,表示总线长,表示面积的权重,表示总线长的权重,表示损失函数值,表示模拟退火处理对象。
20、可选地,模拟退火处理的过程包括:每次退火运算进行多次扰动,每次扰动时,记录前一次的损失函数值,并计算当前的损失函数值。
21、当前一次的损失函数值大于当前的损失函数值时,接受当前扰动,并统计接受次数。
22、当前一次的损失函数值小于等于当前的损失函数值时,按照设定概率接受当前扰动。
23、当扰动结束后,基于接受次数确定接受率。
24、当前一次的损失函数值小于当前的损失函数值时,增大线网相似性阈值。
25、可选地,所述设定概率为:;式中,表示前一次的损失函数值,表示当前的损失函数值,表示模拟退火处理的当前温度,e表示自然对数函数的底数。
26、可选地,对退火处理后的cb-tree进行布图规划,具体包括:以dfs顺序遍历整个退火处理后的cb-tree得到节点,对每个节点进行布图。
27、可选地,以dfs顺序遍历整个退火处理后的cb-tree得到节点,对每个节点进行布图,具体包括:确定当前节点在退火处理后的cb-tree中的位置。
28、当当前节点为其父节点的左子节点时,确定当前节点的位置处于其父节点的右侧区域。
29、搜索当前节点的父节点的右侧长度为第一设定值的区域。
30、若右侧长度为第一设定值的区域中没有其他节点,则将当前节点的父节点的y轴坐标确定为当前节点的y轴坐标。
31、若右侧长度为第一设定值的区域中存在其他节点,则获取这些节点的位置信息,基于这些节点的位置信息确定当前节点的y轴坐标。
32、当当前节点为其父节点的右子节点时,则确定当前节点的位置处于其父节点的上方区域,并将其父节点的x轴坐标确定为当前节本文档来自技高网...
【技术保护点】
1.一种考虑模块对称性的布图规划方法,其特征在于,包括:
2.根据权利要求1所述的考虑模块对称性的布图规划方法,其特征在于,根据输入信息对电路中模块的对称性进行识别,得到对称组,具体包括:
3.根据权利要求2所述的考虑模块对称性的布图规划方法,其特征在于,基于每个模块所在线网的序号确定当前簇的线网相似度,并根据线网相似度对模块进行分裂层次聚类,得到对称模块和非对称模块,具体包括:
4.根据权利要求1所述的考虑模块对称性的布图规划方法,其特征在于,模拟退火处理的损失函数为:
5.根据权利要求4所述的考虑模块对称性的布图规划方法,其特征在于,模拟退火处理的过程包括:
6.根据权利要求5所述的考虑模块对称性的布图规划方法,其特征在于,所述设定概率为:;式中,表示前一次的损失函数值,表示当前的损失函数值,表示模拟退火处理的当前温度,e表示自然对数函数的底数。
7.根据权利要求1所述的考虑模块对称性的布图规划方法,其特征在于,对退火处理后的CB-tree进行布图规划,具体包括:以DFS顺序遍历整个退火处理后的CB-tr
8.根据权利要求7所述的考虑模块对称性的布图规划方法,其特征在于,以DFS顺序遍历整个退火处理后的CB-tree得到节点,对每个节点进行布图,具体包括:
9.一种考虑模块对称性的布图规划系统,其特征在于,所述系统用于实施如权利要求1-8任意一项所述的考虑模块对称性的布图规划方法;所述系统包括:
10.一种电子设备,其特征在于,包括:
...【技术特征摘要】
1.一种考虑模块对称性的布图规划方法,其特征在于,包括:
2.根据权利要求1所述的考虑模块对称性的布图规划方法,其特征在于,根据输入信息对电路中模块的对称性进行识别,得到对称组,具体包括:
3.根据权利要求2所述的考虑模块对称性的布图规划方法,其特征在于,基于每个模块所在线网的序号确定当前簇的线网相似度,并根据线网相似度对模块进行分裂层次聚类,得到对称模块和非对称模块,具体包括:
4.根据权利要求1所述的考虑模块对称性的布图规划方法,其特征在于,模拟退火处理的损失函数为:
5.根据权利要求4所述的考虑模块对称性的布图规划方法,其特征在于,模拟退火处理的过程包括:
6.根据权利要求5所述的考虑模块对称性的布图规划方法,其特征在于,所述...
【专利技术属性】
技术研发人员:翟建旺,李梓轩,田康林,赵康,
申请(专利权)人:北京邮电大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。