CN116579289B - 一种基于芯粒技术的基板布局优化方法和系统 - Google Patents
一种基于芯粒技术的基板布局优化方法和系统 Download PDFInfo
- Publication number
- CN116579289B CN116579289B CN202310853723.5A CN202310853723A CN116579289B CN 116579289 B CN116579289 B CN 116579289B CN 202310853723 A CN202310853723 A CN 202310853723A CN 116579289 B CN116579289 B CN 116579289B
- Authority
- CN
- China
- Prior art keywords
- layout
- substrate
- chiplet
- optimization
- chiplets
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 239000000758 substrate Substances 0.000 title claims abstract description 100
- 238000005457 optimization Methods 0.000 title claims abstract description 98
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000005516 engineering process Methods 0.000 title claims abstract description 24
- 239000007771 core particle Substances 0.000 title claims abstract description 9
- 238000013507 mapping Methods 0.000 claims abstract description 25
- 229910052729 chemical element Inorganic materials 0.000 claims abstract description 20
- 238000006243 chemical reaction Methods 0.000 claims abstract description 19
- 239000000126 substance Substances 0.000 claims abstract description 19
- 239000011159 matrix material Substances 0.000 claims description 14
- 238000012856 packing Methods 0.000 claims description 10
- 238000002922 simulated annealing Methods 0.000 claims description 9
- 238000005265 energy consumption Methods 0.000 claims description 5
- 230000004931 aggregating effect Effects 0.000 claims description 2
- 230000010354 integration Effects 0.000 abstract description 7
- 238000013461 design Methods 0.000 abstract description 3
- 230000000007 visual effect Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 22
- 230000008569 process Effects 0.000 description 9
- 238000003860 storage Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 235000012571 Ficus glomerata Nutrition 0.000 description 1
- 244000153665 Ficus glomerata Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000005354 coacervation Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000017525 heat dissipation Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C20/00—Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
- G16C20/10—Analysis or design of chemical reactions, syntheses or processes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Chemical & Material Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Geometry (AREA)
- Crystallography & Structural Chemistry (AREA)
- Chemical Kinetics & Catalysis (AREA)
- Analytical Chemistry (AREA)
- Computing Systems (AREA)
- Architecture (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种基于芯粒技术的基板布局优化方法和系统,属于集成电路设计技术领域,所述方法包括建立芯粒Chiplet的能量场、化学元素和化学键映射模型,依据多个Chiplet的功能特性和互连需求生成初始布局,所述初始布局的总面积大于基板的最大可用面积;执行基于能量场和化学反应模型的空间约束优化,将初始布局调整为满足空间约束条件的基板布局,所述基板布局的总面积等于基板的最大可用面积;基于智能优化算法对所述基板布局进行自适应联合优化生成最优布局,所述最优布局的总面积需小于或等于基板的最大可用面积。上述基于芯粒技术的基板布局优化方法,结合能量场和化学反应模型,实现高效、直观的布局优化,满足空间约束,提升系统性能和集成度。
Description
技术领域
本发明属于集成电路设计技术领域,尤其涉及一种基于芯粒技术的基板布局优化方法和系统。
背景技术
随着半导体技术的快速发展和集成度的不断提高,多个芯粒Chiplet组成的高性能系统越来越受到关注。在设计这类系统时,如何有效地实现Chiplet在基板上的布局优化,以满足空间约束、降低互连延迟、提高性能和集成度等要求,成为了一个重要的技术挑战。
现有的基板布局优化技术主要包括确定性算法,确定性算法的方法在优化过程中往往需要人工设定一些参数,这种参数设置过程通常依赖于设计者的经验和对问题的理解,容易导致局部最优解以及优化效果难以满足实际需求等问题。此外,在应对不同类型和数量的Chiplet时,也缺乏足够的灵活性和适应性,难以实现高效、直观的布局优化。
因此,针对现有技术中存在的问题,如何提出一种能够实现高效、直观的基板布局优化方法,并在满足空间约束的前提下,有效提高多个Chiplet组成的系统性能和集成度,成为了亟待解决的问题。
发明内容
针对上述现有技术中存在的缺陷,本发明提供一种基于芯粒技术的基板布局优化方法,所述方法包括:
建立映射模型,将多个Chiplet的尺寸与能耗通过能量场的形式表示,将Chiplet的功能特性映射为化学元素类型,将互连需求转化为化学键的强度;
依据多个Chiplet的功能特性和互连需求生成初始布局,包括利用化学反应模型模拟化学元素间的键强度和方向,为所有Chiplet确定初始布局,所述初始布局的总面积大于基板的最大可用面积;
执行基于能量场和化学反应模型的空间约束优化,将初始布局调整为满足空间约束条件的基板布局,所述基板布局的总面积等于基板的最大可用面积;
基于智能优化算法对所述基板布局进行自适应联合优化生成最优布局,所述最优布局的总面积需小于或等于基板的最大可用面积。
其中,将每个Chiplet的功能特性映射为一个化学元素类型;
定义一个互连矩阵C,所述互连矩阵C中的元素C_{ij}表示Chiplet_i与Chiplet_j之间的互连需求强度,将C_{ij}映射为化学键的强度,C_{ij}值越大表示互连需求越强烈。
其中,使用二维能量场E(x, y) 将Chiplet占用的面积和互连需求映射到能量场中,其中二维能量场中的每个点代表一个空间位置,按照该点是否被Chiplet占据确定能量值,且能量值与占用该点的Chiplet_i相关的一个能量值E_i;
定义能量场函数E(x, y),其中E(x, y) = E_i对应(x, y)被Chiplet_i占用,以及E(x, y) = E_free对应(x,y)未被Chiplet_i占用;
其中,E_i表示被Chiplet_i占据的位置的能量值,E_free表示空闲位置的能量值。
其中,在能量场模型中引入一个布线能量值W_ij,表示Chiplet_i与Chiplet_j之间的布线能量,W_ij = C_{ij}D_ij,其中,D_ij表示Chiplet_i与Chiplet_j之间的布线距离。
其中,基于Chiplet的面积和功耗为每个Chiplet分配一个能量值E_i:
E_i = A_i / (1 + δP_i),
其中,E_i表示Chiplet_i的能量值,A_i表示Chiplet_i的面积,P_i表示Chiplet_i的功耗,δ是一个调节系数,用于权衡功耗对能量值的影响。
其中,依据多个Chiplet的功能特性和互连需求生成初始布局,包括使用层次聚类算法进行节点分组,层次聚类算法用于将具有相似连接需求的节点聚合在一起。
其中,根据聚类结果,将基板划分为相应数量的区域,将每个聚类分配到不同基板区域;
其中每个聚类的Chiplet分布在同一个区域内,使得具有较强互连需求的Chiplet在布局上保持较近的距离;
在为每个聚类分配的基板区域内将相应的Chiplet随机分布,每个Chiplet之间的距离大于预设阈值。
其中,执行基于能量场和化学反应模型的空间约束优化,包括首先进行聚类区域内的布局优化,然后根据聚类区域内的优化结果调整边界框大小,以及通过矩阵打包算法调整聚类区域的位置关系,所述根据矩形打包算法调整后的结果为基板布局。
其中,对于每个聚类区域中的Chiplet,将其划分为边缘区域Chiplet或非边缘区域Chiplet;
所述边缘区域Chiplet指与其他聚类区域相邻的Chiplet,所述非边缘区域则指在聚类区域内部的Chiplet。
在对所述基板布局进行优化的每次迭代中,首先对边缘区域的Chiplet进行位置更新。
其中,采用模拟退火算法执行对聚类区域内的布局优化和对所述基板布局的布局优化;
所述模拟退火算法的优化函数F为:F = αΣ E(x, y) + β/>Σ W_ij,其中,α和β是权重参数;其中,区域内的布局优化中的W_ij为所述聚类区域内的所有Chiplet对的连接权重,对所述基板布局的布局优化中的W_ij为所有Chiplet对的连接权重。
本发明还提出一种基于芯粒技术的基板布局优化系统,所述系统用于执行前述的方法,所述系统包括:
映射建立模块,用于建立映射模型,将多个Chiplet的尺寸与能耗通过能量场的形式表示,将Chiplet的功能特性映射为化学元素类型,将互连需求转化为化学键的强度;
初始布局生成模块,用于依据多个Chiplet的功能特性和互连需求生成初始布局,包括利用化学反应模型模拟化学元素间的键强度和方向,为所有Chiplet确定初始布局,所述初始布局的总面积大于基板的最大可用面积;
基板布局生成模块,用于执行基于能量场和化学反应模型的空间约束优化,将初始布局调整为满足空间约束条件的基板布局,所述基板布局的总面积等于基板的最大可用面积;
最优布局生成模块,用于基于智能优化算法对所述基板布局进行自适应联合优化生成最优布局,所述最优布局的总面积需小于或等于基板的最大可用面积。
本发明提供了一种基于Chiplet技术的基板布局优化方法,结合能量场和化学反应模型,实现高效、直观的布局优化,满足空间约束,提升系统性能和集成度。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1是示出根据本发明实施例的一种基于Chiplet技术的基板布局优化方法的流程图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述……,但这些……不应限于这些术语。这些术语仅用来将……区分开。例如,在不脱离本发明实施例范围的情况下,第一……也可以被称为第二……,类似地,第二……也可以被称为第一……。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。
本发明引入能量产模型和化学键进行于Chiplet技术基板布局优化方法。其中,能量场模型可以有效地描述空间约束条件,将Chiplet的形状和尺寸映射为能量场,有助于在优化过程中保持布局的空间规范,避免重叠和碰撞。同时,将Chiplet的功能特性映射为化学元素类型,有助于区分不同类型的Chiplet,以及揭示它们之间的相互作用。这种映射关系有利于设计出具有高度集成度和性能的布局。化学键强度和方向可以清晰地描述互连需求,为优化算法提供方向和约束,帮助找到满足互连需求的最佳布局。
采用能量场和化学反应模型的基板布局优化方法具有较高的灵活性,可以容易地扩展到不同类型和数量的Chiplet,适应不同应用场景的需求。
如图1所示,本发明公开了一种基于Chiplet技术的基板布局优化方法,所述方法包括:
步骤1:建立映射模型,将多个Chiplet的尺寸与能耗通过能量场的形式表示为空间约束条件,将Chiplet的功能特性映射为化学元素类型,将互连需求转化为化学键的强度。
步骤2:依据多个Chiplet的功能特性和互连需求生成初始布局,包括利用化学反应模型模拟化学元素间的键强度和方向,为所有Chiplet确定初始布局,所述初始布局体现Chiplet之间的基本位置关系,所述初始布局的总面积大于基板的最大可用面积。
步骤3:执行基于能量场和化学反应模型的空间约束优化,将初始布局调整为满足空间约束条件的基板布局,所述基板布局的总面积等于基板的最大可用面积。
步骤4:基于智能优化算法对基于能量场和化学反应模型的多个Chiplet的基板布局进行自适应联合优化。通过自适应联合迭代优化过程,智能优化算法生成最优布局,所述最优布局的总面积需小于或等于基板的最大可用面积,且可满足多个Chiplet的空间约束。
本发明通过建立映射关系,将Chiplet的形状、大小、功能和互连需求转化为能量场的空间约束和化学键的强度和方向,有助于提高布局效率,使得布局更紧凑、合理,从而减少基板面积和成本。且经过自适应联合迭代优化,智能算法能够生成最优布局。相较于传统的布局方法,该方案能够更好地应对不同类型的Chiplet组合,具有更强的适应性。采用智能算法进行自适应联合优化,可以在布局过程中根据实际需求调整优化策略,包括优化空间利用率、降低功耗或提高性能等,为芯片设计提供了更多的灵活性,有助于实现更符合实际需求的布局方案。
在某一实施例中,将多个Chiplet的形状与尺寸通过能量场的形式表示为空间约束条件,将Chiplet的功能特性映射为化学元素类型,将互连需求转化为化学键的强度和方向,包括建立如下映射关系:
(1)化学元素类型的映射关系:
为了表示Chiplet之间的互连需求,需要每个Chiplet的功能特性映射为一个化学元素类型。设有N种不同的Chiplet功能,则分别将它们映射为化学元素A_1, A_2, ..., A_N,每个Chiplet_i对应一个化学元素类型A_i。Chiplet按照功能对应不同裸片,通常情况下,不同的Chiplet对应不同的功能。
(2)化学键映射:
定义一个互连矩阵C,其中C_{ij}表示Chiplet_i与Chiplet_j之间的互连需求强度,将C_{ij}映射为化学键的强度,值越大表示互连需求越强烈。其中C_{ij}的数值可以按照互联最大需求进行归一化的方式来处理互联矩阵C中的数值,互联需求可以按照数据交互需求、连接线需求或两者结合来设置与之强度对应的数值。
(3)能量场的模型映射关系:
使用二维能量场E(x, y) 将Chiplet占用的面积和互连需求映射到能量场中,其中二维能量场中的每个点代表一个空间位置,按照该点是否被Chiplet占据确定能量值,且能量值与占用该点的Chiplet_i相关的一个能量值E_i。
定义能量场函数E(x, y)为:E(x, y) = E_i, 对应(x, y)被Chiplet_i占用,以及E(x, y) = E_free,对应(x, y)未被Chiplet_i占用。其中,E_i表示被Chiplet_i占据的位置的能量值,E_free表示空闲位置的能量值(如设置为0)。
接着,在能量场模型中引入一个布线能量值W_ij,表示Chiplet_i与Chiplet_j之间的布线能量,W_ij = C_{ij}D_ij,其中,D_ij表示Chiplet_i与Chiplet_j之间的布线距离。
在某一实施例中,基于Chiplet的面积和功耗为每个Chiplet分配一个能量值E_i:
E_i = A_i / (1 + δP_i),
其中,
E_i:表示Chiplet_i的能量值。
A_i:表示Chiplet_i的面积。
P_i:表示Chiplet_i的功耗。
δ:是一个调节系数,用于权衡功耗对能量值的影响。当δ较大时,具有较高功耗的Chiplet将具有更低的能量值,因此在布局优化中会更倾向于将这些Chiplet安排在更适合散热的位置。当δ较小时,功耗对能量值的影响较小,布局优化将主要关注面积的最小化。
在某一实施例中,为了减小少基板面积和成本,需要使得所有Chiplet在能量场中的总能量最小,在优化步骤中根据基于映射关系建立目标函数F。
例如,所述目标函数F可以为:F = αΣ E(x, y) + β/>Σ W_ij,
其中,α和β是权重系数,用于平衡Chiplet占用基板的面积和根据化学元素的化学键强度所需的布线面积之间的影响。
可选地,可以通过调整这些权重系数来实现根据实际需求为Chiplet的空间约束和互连需求之间分配不同的优先级。
在某一实施例中,依据多个Chiplet的功能特性和互连需求生成初始布局,包括使用层次聚类算法进行节点分组,层次聚类算法用于将具有相似连接需求的节点聚合在一起。
使用层次聚类算法进行Chiplet分组包括如下步骤:
步骤s1,构建Chiplet连接图,包括根据Chiplet之间的互连需求,构建一个加权无向图G(V, E)。其中,节点集V表示Chiplet,边集E表示互连需求,边的权重表示互连需求的强度。
步骤s2,基于边权重的信息计算节点间的相似度,包括使用边权重的倒数作为节点间的相似度,相似度_ij = 1 / 边权重_ij。如果两个节点之间没有直接连接,可以将相似度设置为无穷大。
步骤s3,使用层次聚类算法对节点进行聚类产生一个聚类树,其中树的叶子节点表示Chiplet,树的内部节点表示聚类。所述聚类算法可以为凝聚层次聚类法或,以及选择合适的聚类层数使得子集内的边权重分布满足互联需求最优。
步骤s4,根据聚类结果,将基板划分为相应数量的区域,将每个聚类分配到不同基板区域,其中一个聚类所在的基板区域叫做该聚类的聚类区域。每个聚类的Chiplet分布在同一个区域内,使得具有较强互连需求的Chiplet在布局上保持较近的距离。
步骤s5,在为每个聚类分配的基板区域内,将相应的Chiplet随机分布,包括生成一个随机坐标点来实现,每个Chiplet之间的距离大于预设阈值,其中所述预设阈值较常规Chiplet间距更大,这样通常来说也可以保证初始布局的总区域大于基板可用区域面积大小,较大的初始布局总区域可以提高后续布局优化的效果。
在某一实施例中,使用凝聚层次聚类法对Chiplet进行聚类,为从底部开始将每个节点视为一个单独的聚类,然后逐步将最相似的聚类合并,直到达到所需的聚类层数,包括:
将每个Chiplet节点视为一个单独的聚类。此时有与节点数相等的聚类数量。使用所述节点间相似度计算所有聚类之间的距离。选择一种聚类间距离度量方法来确定聚类间的距离,包括但不限于最小距离、最大距离或平均距离。所述最小距离为使用两个聚类中最相似节点间的距离作为聚类间距离,所述最大距离为使用两个聚类中最不相似节点间的距离作为聚类间距离,所述平均距离为使用两个聚类中所有节点对间距离的平均值作为聚类间距离。找到距离最近的两个聚类,将两个边权重对应的Chiplet节点合并为一个新的聚类,更新聚类数量后重复计算聚类间距离和合并最近的聚类,直到达到所需的聚类层数。最后得到一个聚类树,树的叶子节点表示Chiplet,树的内部节点表示聚类。其中,需要根据需求选择合适的聚类层数,切割聚类树,得到最优的聚类结果。
在某一实施例中,在第步骤3中首先进行聚类区域内的布局优化,然后根据聚类区域内的优化结果调整边界框大小,以及通过矩阵打包算法调整聚类区域的位置关系,包括如下步骤来执行上述过程:
步骤t1,执行基于能量场的局部优化,包括对所有聚类区域内的布局进行布局优化。
在每个聚类区域内应用模拟退火算法(Simulated Annealing)来确定该聚类区域内能量最低的布局。优化过程需要定义目标函数,其中包含能量场函数E(x, y)和布线能量值W_ij。其中目标函数F为:F = αΣ E(x, y) + β/>Σ W_ij,
其中,α和β是权重参数,用于权衡能量场函数和布线能量值在目标函数中的相对重要性。该步骤中的W_ij为所述聚类区域内的所有Chiplet对的连接权重。通过优化目标函数,可以找到聚类区域中能量最低的状态。
步骤t2,确定每个聚类区域的的优化后面积和边界框。步骤t2可以通过如下步骤来执行:
步骤t2-1:在每个聚类区域内,找到所有Chiplet的最小和最大x坐标以及最小和最大y坐标,这些坐标值定义了聚类区域的边界框,对于聚类区域k中的所有Chiplet,找到最小和最大x坐标以及最小和最大y坐标,这些坐标值定义了聚类区域的边界框,有min_k =min(Chiplet.x),max_k =max(Chiplet.x),min_k = min(Chiplet.y),以及max_k = max(Chiplet.y)。
步骤t2-2,根据边界框的最小和最大坐标值,计算聚类区域k的宽度width_k和高度height_k:
width_k= max_x - min_x
height_k = max_y - min_y
步骤t2-3,将聚类区域k的宽度和高度相乘,得到优化后的面积optimized_area_i:
optimized_area_k = width_kheight_k
通过步骤t2-1~t2-3, 可以确定每个聚类区域的的优化后面积和边界框。
步骤t3,计算聚类区域之间的互连关系,包括通过计算聚类区域间的连接权重来确定聚类区域间的化学键强度。
遍历聚类区域k和l中的所有Chiplet对 (Chiplet_ik, Chiplet_jl),其中Chiplet_ik属于聚类区域k,Chiplet_jl属于聚类区域l。从互连矩阵C中确定这些Chiplet对i和j之间的互联需求强度C_ ikjl ,并累加所有chiplet对的互联需求强度得到聚类区域k和l之间的总互联需求强度:W_cluster_kl = ∑(C_ikjl)。W_cluster_kl为聚类区域k和l之间的互连需求。
对于互连矩阵C,其中C_{ij}表示Chiplet_i与Chiplet_j之间的互连需求强度,C_ikjl表明属于聚类区域k的Chiplet_ik和属于聚类区域l的Chiplet_jl之间的互联需求强度,C_ikjl= C_{ij},将C_{ij}映射为化学键的强度,值越大表示互连需求越强烈。
步骤3:根据聚类区域的面积和总互连需求对所述聚类区域进行排序。使用加权排序策略。对于每个聚类区域,计算一个分数score_k = aarea_k + b/> W_cluster_k,其中a和b是选择的权重,area_k是聚类区域k的面积,W_cluster_k是聚类区域k的总互连需求,W_cluster_k=∑(W_cluster_kl)。然后按照score_k的值对聚类区域进行排序。
步骤4:使用矩形打包算法结合连接权重将聚类区域放置在基板上:
初始化一个空的二叉树结构,表示基板的可用区域。
遍历排序后的聚类区域列表,对于每个聚类区域,在二叉树中查找足够大的空闲区域以容纳当前聚类区域。
在矩阵打包算法中同时考虑互联需求和布线长度,在优化过程中使用一个含有连接权重和布线长度的目标函数。定义目标函数:FA = ∑(W_ikjlL_ikjl),其中W_ikjl为Chiplet对i和j之间的连接权重,L_ikjl表示Chiplet_ik与Chiplet_jl之间的布线长度。其中,chipleti为待确定位置的聚类区域k内的芯片,聚类区域l为基板上已经确定了位置的所有聚类区域。
通过最小化目标函数FA,在满足互联需求的前提下实现减少总布线长度的优化目标。在矩阵打包过程中通过调整聚类区域的相对位置来实现这一优化目标。
将当前聚类区域放置在找到的空闲区域中,并更新二叉树结构,记录当前聚类区域在基板上的位置。
步骤5:更新所有Chiplet在基板上的位置,得到根据矩形打包算法得到的聚类区域位置,所述根据矩形打包算法得到的布局的总面积等于基板的可用区域的面积。所述经过矩形打包算法调整后的布局结果即为基板布局。
在某一实施例中,基于智能优化算法对基于能量场和化学反应模型的多个Chiplet的基板布局进行自适应联合优化。所述智能算法可以是模拟退火算法,所述目标函数F可以为:F = αΣ E(x, y) + β/>Σ W_ij,该步骤中的W_ij为所有Chiplet对的连接权重,所述模拟退火算法的初始状态为矩阵打包算法中最后确定的Chiplet的布局。
对于每个聚类区域中的Chiplet,将其划分为边缘区域Chiplet和非边缘区域Chiplet。边缘区域Chiplet指与其他聚类区域相邻的Chiplet,非边缘区域则指在聚类区域内部的Chiplet。
在对所述基板布局进行优化的每次迭代中,例如在模拟退火算法的每次迭代中,首先对边缘区域的Chiplet进行位置更新。当边缘区域的Chiplet调整到一定程度后,可以选择性地将优化范围扩展到非边缘区域的Chiplet,如可以在一定迭代次数之后再开始优化非边缘区域,也可以不选择将优化范围扩展到非边缘区域的Chiplet。
在整个优化过程中,确保每次迭代更新后的布局区域仍然保持在基板可用区域内。这可以通过在迭代过程中检查布局区域的边界来实现。以保证最后的布局结果小于或等于基板可用区域,即最后得到的所述最优布局的总面积需小于或等于基板的最大可用面积。
本发明基于Chiplet技术的基板布局优化方法,通过将Chiplet的功能特性映射为化学元素类型,并利用化学键强度和方向描述互连需求,本发明有助于实现高度集成的布局方案,从而提升整个系统的性能。以及采用能量场模型描述Chiplet的形状和尺寸,有效地解决布局过程中的空间约束问题,避免Chiplet之间的重叠和碰撞,确保生成的布局方案满足实际应用场景的需求。且通过利用化学键强度和方向为优化算法提供明确的指导和约束,有助于在较短的时间内找到最优布局方案,提高优化效率。最后,本发明采用的能量场和化学反应模型具有很高的灵活性,可以扩展到不同类型和数量的Chiplet,适应不同应用场景的需求。
因此本发明基于Chiplet技术的基板布局优化方法所产生的技术效果包括实现高度集成的布局方案、满足空间约束、提高优化效率以及具有灵活性和适应性,从而为设计高性能、高集成度的多Chiplet系统提供了有效的解决方案。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
以上介绍了本发明的较佳实施方式,旨在使得本发明的精神更加清楚和便于理解,并不是为了限制本发明,凡在本发明的精神和原则之内,所做的修改、替换、改进,均应包含在本发明所附的权利要求概括的保护范围之内。
Claims (10)
1.一种基于芯粒技术的基板布局优化方法,所述方法包括:
建立映射模型,将多个芯粒Chiplet的尺寸与能耗通过能量场的形式表示,将Chiplet的功能特性映射为化学元素类型,将互连需求转化为化学键的强度;
依据多个Chiplet的功能特性和互连需求生成初始布局,包括利用化学反应模型模拟化学元素间的键强度和方向,为所有Chiplet确定初始布局,所述初始布局的总面积大于基板的最大可用面积;
执行基于能量场和化学反应模型的空间约束优化,将初始布局调整为满足空间约束条件的基板布局,所述基板布局的总面积等于基板的最大可用面积;
基于智能优化算法对所述基板布局进行自适应联合优化生成最优布局,所述最优布局的总面积需小于或等于基板的最大可用面积;
其中,所述基于智能优化算法对基板布局进行自适应联合优化生成最优布局,包括,
对于每个聚类区域中的Chiplet,将其划分为边缘区域Chiplet或非边缘区域Chiplet;
所述边缘区域Chiplet指与其他聚类区域相邻的Chiplet,所述非边缘区域则指在聚类区域内部的Chiplet;
在对所述基板布局进行优化的每次迭代中,首先对边缘区域的Chiplet进行位置更新。
2.如权利要求1所述的一种基于芯粒技术的基板布局优化方法,其特征在于,
将每个Chiplet的功能特性映射为一个化学元素类型;
定义一个互连矩阵C,所述互连矩阵C中的元素C_{ij}表示Chiplet_i与Chiplet_j之间的互连需求强度,将C_{ij}映射为化学键的强度,C_{ij}值越大表示互连需求越强烈。
3.如权利要求1所述的一种基于芯粒技术的基板布局优化方法,其特征在于,
使用二维能量场E(x, y) 将Chiplet占用的面积和互连需求映射到能量场中,其中二维能量场中的每个点代表一个空间位置,按照该点是否被Chiplet占据确定能量值,且能量值与占用该点的Chiplet_i相关的一个能量值E_i;
定义能量场函数E(x, y),其中E(x, y) = E_i对应(x, y)被Chiplet_i占用,以及E(x,y) = E_free对应(x, y)未被Chiplet_i占用;
其中,E_i表示被Chiplet_i占据的位置的能量值,E_free表示空闲位置的能量值。
4.如权利要求3所述的一种基于芯粒技术的基板布局优化方法,其特征在于,
在能量场模型中引入一个布线能量值W_ij,表示Chiplet_i与Chiplet_j之间的布线能量,,其中,D_ij表示Chiplet_i与Chiplet_j之间的布线距离。
5.如权利要求4所述的一种基于芯粒技术的基板布局优化方法,其特征在于,
基于Chiplet的面积和功耗为每个Chiplet分配一个能量值E_i:
,
其中,E_i表示Chiplet_i的能量值,A_i表示Chiplet_i的面积,P_i表示Chiplet_i的功耗,是一个调节系数,用于权衡功耗对能量值的影响。
6.如权利要求1所述的一种基于芯粒技术的基板布局优化方法,其特征在于,
依据多个Chiplet的功能特性和互连需求生成初始布局,包括使用层次聚类算法进行节点分组,层次聚类算法用于将具有相似连接需求的节点聚合在一起。
7.如权利要求6所述的一种基于芯粒技术的基板布局优化方法,其特征在于,
根据聚类结果,将基板划分为相应数量的区域,将每个聚类分配到不同基板区域;
其中每个聚类的Chiplet分布在同一个区域内,使得具有较强互连需求的Chiplet在布局上保持较近的距离;
在为每个聚类分配的基板区域内将相应的Chiplet随机分布,每个Chiplet之间的距离大于预设阈值。
8.如权利要求1所述的一种基于芯粒技术的基板布局优化方法,其特征在于,
执行基于能量场和化学反应模型的空间约束优化,包括首先进行聚类区域内的布局优化,然后根据聚类区域内的优化结果调整边界框大小,以及通过矩阵打包算法调整聚类区域的位置关系,根据矩形打包算法调整后的结果为基板布局。
9.如权利要求1-8之一所述的一种基于芯粒技术的基板布局优化方法,其特征在于,
采用模拟退火算法执行对聚类区域内的布局优化和对所述基板布局的布局优化;
所述模拟退火算法的优化函数F为:,其中,/>和/>是权重参数;其中,区域内的布局优化中的W_ij为所述聚类区域内的所有Chiplet对的连接权重,对所述基板布局的布局优化中的W_ij为所有Chiplet对的连接权重。
10.一种基于芯粒技术的基板布局优化系统,所述系统用于执行权利要求1-9之一所述的方法,所述系统包括:
映射建立模块,用于建立映射模型,将多个芯粒Chiplet的尺寸与能耗通过能量场的形式表示,将Chiplet的功能特性映射为化学元素类型,将互连需求转化为化学键的强度;
初始布局生成模块,用于依据多个Chiplet的功能特性和互连需求生成初始布局,包括利用化学反应模型模拟化学元素间的键强度和方向,为所有Chiplet确定初始布局,所述初始布局的总面积大于基板的最大可用面积;
基板布局生成模块,用于执行基于能量场和化学反应模型的空间约束优化,将初始布局调整为满足空间约束条件的基板布局,所述基板布局的总面积等于基板的最大可用面积;
最优布局生成模块,用于基于智能优化算法对所述基板布局进行自适应联合优化生成最优布局,所述最优布局的总面积需小于或等于基板的最大可用面积。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310853723.5A CN116579289B (zh) | 2023-07-12 | 2023-07-12 | 一种基于芯粒技术的基板布局优化方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310853723.5A CN116579289B (zh) | 2023-07-12 | 2023-07-12 | 一种基于芯粒技术的基板布局优化方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116579289A CN116579289A (zh) | 2023-08-11 |
CN116579289B true CN116579289B (zh) | 2023-09-15 |
Family
ID=87545650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310853723.5A Active CN116579289B (zh) | 2023-07-12 | 2023-07-12 | 一种基于芯粒技术的基板布局优化方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116579289B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116822452B (zh) * | 2023-08-23 | 2023-11-21 | 芯行纪科技有限公司 | 芯片布局优化方法及相关设备 |
CN118297025B (zh) * | 2024-04-23 | 2024-09-10 | 珠海市金义旺电子科技有限公司 | Pcba加工元器件布局优化方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114460683A (zh) * | 2020-11-10 | 2022-05-10 | 中国科学院半导体研究所 | 基于光芯粒的微波光子片上系统 |
WO2023010574A1 (zh) * | 2021-08-06 | 2023-02-09 | 华为技术有限公司 | 芯片封装结构及其封装方法、电子设备 |
CN116341480A (zh) * | 2023-05-29 | 2023-06-27 | 华中科技大学 | 数字芯片布局布线全局优化方法及系统 |
-
2023
- 2023-07-12 CN CN202310853723.5A patent/CN116579289B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114460683A (zh) * | 2020-11-10 | 2022-05-10 | 中国科学院半导体研究所 | 基于光芯粒的微波光子片上系统 |
WO2023010574A1 (zh) * | 2021-08-06 | 2023-02-09 | 华为技术有限公司 | 芯片封装结构及其封装方法、电子设备 |
CN116341480A (zh) * | 2023-05-29 | 2023-06-27 | 华中科技大学 | 数字芯片布局布线全局优化方法及系统 |
Non-Patent Citations (1)
Title |
---|
"基于硅基板专用TAP控制器的Chiplet测试电路";蔡志匡 等;《固体电子学研究与进展》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116579289A (zh) | 2023-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116579289B (zh) | 一种基于芯粒技术的基板布局优化方法和系统 | |
CN113193984B (zh) | 一种空天地一体化网络资源映射方法及系统 | |
CN110795908B (zh) | 偏差驱动的总线感知总体布线方法 | |
US6865726B1 (en) | IC layout system employing a hierarchical database by updating cell library | |
US6480991B1 (en) | Timing-driven global placement based on geometry-aware timing budgets | |
US7984410B2 (en) | Hierarchy-based analytical placement method for an integrated circuit | |
US6249902B1 (en) | Design hierarchy-based placement | |
US7624366B2 (en) | Clock aware placement | |
JP2719509B2 (ja) | グラフ分割化システム | |
CN111291525B (zh) | 考虑总线和非总线线网的层分配方法 | |
US5877091A (en) | Multilayer routing method and structure for semiconductor integrated circuit | |
CN112995289B (zh) | 一种基于非支配排序遗传策略的车联网多目标计算任务卸载调度方法 | |
US7197738B1 (en) | Method and apparatus for routing | |
US20090031275A1 (en) | Method and System for Performing Global Routing on an Integrated Circuit Design | |
CN116644804B (zh) | 分布式训练系统、神经网络模型训练方法、设备和介质 | |
CN112684700A (zh) | 一种群体机器人的多目标搜索与围捕控制方法及系统 | |
WO2024051388A1 (zh) | 一种基于禁忌搜索算法的神经网络片上映射方法和装置 | |
CN109388840A (zh) | 用于具有预定义负载路径和对应网格调整方案的金属成型过程的数值模拟的专用编程计算机 | |
CN114282484B (zh) | 基于改进天牛须算法的异构三维片上网络的布图优化方法、装置、设备及介质 | |
CN113468847A (zh) | 一种基于非整数多倍行高单元的集成电路全局布局方法 | |
US6487697B1 (en) | Distribution dependent clustering in buffer insertion of high fanout nets | |
US10643020B1 (en) | System and method to estimate a number of layers needed for routing a multi-die package | |
US8966428B2 (en) | Fixed-outline floorplanning approach for mixed-size modules | |
US20100077369A1 (en) | Layout design method, apparatus and storage medium | |
CN117807950B (zh) | 一种考虑模块对称性的布图规划方法、系统及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |