1.一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,按照如下步骤实现:
步骤S1:将版图规划表示为B*-tree;
步骤S2:初始化所述步骤S1获取的B*-tree为完全二叉树,记为初始解I;
步骤S3:设置算法迭代次数iterative=0,设置最大的迭代数目;
步骤S4:判断所述初始解I是否为可行解;
步骤S5:通过一系列B*-tree扰动产生邻居解;
步骤S6:对所述步骤S5中的邻居解采用可行解策略,使得邻居解满足边框约束;
步骤S7:采用混合模拟退火算法在解空间中搜索最优解;
步骤S8:令iterative=iterative+1;
步骤S9:重复所述步骤S5至所述步骤S8,直到迭代次数iterative大于预设的迭代数目。
2.根据权利要求1所述的一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,在所述步骤S1中将版图规划表示为B*-tree,其中,树形结构中的每个节点都代表一个模块,而且每个节点至多有两个子节点。
3.根据权利要求1所述的一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,在所述步骤S2中,所述初始化所述步骤S1获取的B*-tree为完全二叉树包括:除了树结构中的最后两行的节点,每个父节点有两个子节点。
4.根据权利要求1所述的一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,在所述步骤S5中,对于解空间中每个解都由B*-tree表示,且所述一系列B*-tree的扰动方式包括:模块旋转、移动模块到另一个区域以及交换两个模块。
5.根据权利要求1所述的一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,在所述步骤S6中,通过可行解策略算法使所述所述步骤S5中获取的邻居解为可行解,且所述可行解策略算法采用如下步骤实现:
步骤S61:令j==0;
步骤S62:while(初始解S是不可行的orj≤给定的数值);
步骤S63:令j++;
步骤S64:通过一系列B*-tree的扰动产生新的解S1;。
其中,j表示可行解策略在实行过程中的迭代次数。
6.根据权利要求1所述的一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,在所述步骤S7中,还包括如下步骤:
步骤S71:通过B*-tree扰动产生新的解I',并将对应的B*-tree记为J;
步骤S72:基于新的罚函数计算新解I'的费用值,并计算新的解和上一步解的费用差;
步骤S73:判断是否接受J;
步骤S74:通过一新的温度改变公式搜索最优解。
7.根据权利要求6所述的一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,所述新的罚函数包括两部分:面积函数A和过度长度函数L';所述面积函数A通过计算包含候选版图规划F结果的最小矩形的面积来获得,计算公式为:
其中,W0,H0分别表示给定边框的宽和高;候选版图规划F的宽和高分别记为W和H;
所述过度长度函数L'通过计算每个模块超出给定边框的长度来获得;若第i个模块超出给定边框的长度记为Li,则其计算公式为:
其中,(xi,yi)表示第i个模块的左下角坐标;第i个模块的宽和高分别记为wi和hi;
则过度长度函数的计算公式为:
其中,S表示超出给定边框的所有模块的集合。
8.据权利要求6所述的一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,所述新的温度改变公式包括三部分:高温随机搜索阶段、局部搜索阶段以及温度上升阶段。
9.根据权利要求6所述的一种用于求解给定边框约束的VLSI版图设计方法,其特征在于,所述新的温度改变公式通过如下步骤获取:
步骤S741:Tn=avg/(log(P));
步骤S742:if(n==给定的数值);
步骤S743:Tn=Tn×avgcost/(λ×n);
步骤S744:Tn=Tn×Pm;
步骤S745:Tactual=estimateavg/Tn;
步骤S746:if(n>给定的数值);
步骤S747:Tn=Tn×avgcost/n;
步骤S748:Tactual=estimateavg/Tn。
其中,Tn=avg/(log(P))用来计算初始温度,n是模拟退火算法中的迭代数目,Tn是第n步的温度;m是用来控制在当前温度下进行局部搜索的次数,且为一常数;P是接受较差的解的初始概率;平均上山费用,也即费用值增大的方向,记为avg;当前温度下的平均费用差记为avgcost;λ是用户定义的参数,用于令温度能够快速降低;estimateavg是用来控制温度的常数,Tactual是实际温度。