一种模拟集成电路优化方法和系统的制作方法_2

文档序号:9547390阅读:来源:国知局
观测点;
[0037] 依据所述训练点集(Y,X)由公式一计算得到良率的待预测值/的后验分布为
得到当前种群中每个个体的良率的待预测值 平均值户及其方差<,判断所述方差σ?.是否在允许误差范围之内,如果否,则在当前种群 中选择一个新的个体X%进行蒙特卡罗分析得到被选择的新个体f的良率观测值y,把(X % y)加入训练点集(Y,X),重新进行预测,直至每个个体的所述良率的待预测值平均值的方 差< 均在允许误差范围之内,/为良率的待预测值;
[0038] 其中,所述公式一为
^设良率观测值Y的先验 分布为高斯分布:Y~N(0, K(X,X)),K(X,X)为对称正定协方差矩阵,h为种群中待预测个 体的设计变量,iiC 玉l·矩阵元为种群中待预测个体的设计变量之间的相 关性,y#为种群中每个个体观测点上良率的待预测值。
[0039] 优选的,上述模拟集成电路优化系统中,所述仿真模块,还包括:
[0040] 训练点集选取模块,用于判断当前种群为第几代种群;当所述种群为第一代种群 时,在所述第一代种群的全部个体上进行蒙特卡罗分析,所述第一代种群中的全部个体为 当第一代种群的训练点集,将所述第一代种群的训练点集作为当前种群的训练点集(Y,x); 当所述种群为第Z代种群时,以第Z-I代种群的全部个体作为当前种群的训练点集(Υ,Χ)。 [0041] 通过以上方案可知,本发明实施例提供的模拟集成电路优化方法,在通过采用电 路级模拟程序(Simulation program with integrated circuit emphasis,SPICE)对所述 新一代种群进行仿真,得到所述新一代种群中各个个体的电路性能指标的同时,所述采用 SPICE模型和高斯过程回归利用SPICE仿真器对新一代种群进行蒙特卡罗分析估算得到良 率估计值;使得在种群进化过程中同时将电路的性能指标和良率作为约束条件参到进化算 法当中,从而解决了现有技术中解决了最终决策时存在良率低的问题。
【附图说明】
[0042] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0043]图1为本发明实施例公开的一种模拟集成电路优化方法的流程图;
[0044]图2为本发明实施例公开的一种模拟集成电路优化系统的结构示意图。
【具体实施方式】
[0045] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0046] 在传统的模拟集成电路快速设计与优化方法中,优化过程中把良率作为优化约束 条件或优化目标还比较困难。主要原因在于,准确的电路良率估计值是将由芯片代工厂提 供的带工艺统计信息的SPICE模型(主要是CMOS晶体管的BS頂模型)采用SPICE仿真器 进行蒙特卡罗分析得到。蒙特卡罗分析本身需要大量抽样,而进化算法需要对每一代种群 中的每个个体进行蒙特卡罗分析,这就大大增加了实验测量的计算代价,使得将良率指标 加入简化算法几乎不可能实现。因此,只能在得到Pareto最佳解集后进行蒙特卡罗分析来 验证良率。
[0047] 针对于此,本申请实施例公开了一种兼顾良率和性能的模拟集成电路优化方法, 参见图1,包括:
[0048] 步骤SlOl :获取初始电路网表和晶体管统计模型;
[0049] 步骤S102 :对所述初始电路网表和晶体管统计模型分析得到设计变量、优化目标 及约束条件;
[0050] 步骤S103 :依据所述设计变量的范围随机产生初始种群;
[0051] 步骤S104 :更改所述设计变量,依据更改后的所述设计变量生成所述初始种群中 每个个体对应的电路网表,所述电路网表代表新一代种群,记为第一代种群;
[0052] 步骤 105 :通过采用电路级模拟程序(Simulation program with integrated circuit emphasis,SPICE)对所述新一代种群进行仿真,得到所述新一代种群中各个个体 的电路性能指标,例如面积、功耗等指标,所述采用SPICE模型和高斯过程回归利用SPICE 仿真器对新一代种群进行蒙特卡罗分析估算得到良率估计值;
[0053] 步骤S106 :依据所述电路性能指标和良率估计值采用进化算法对所述新一代种 群进行进化得到下一代种群,记为第二代种群,其中每进化一次,种群的代数加1,;
[0054] 步骤S107 :根据预设的最大进化代数判断所述下一代种群进化是否结束,如果 是,执行步骤S108,否则执行步骤S104 ;
[0055] 步骤S108 :生成当前种群对应的Pareto最佳解集,依据Pareto最佳解集进行决 策并验证。
[0056] 在本申请上述实施例公开的上述方法中对电路进行优化的过程中,除了考虑传统 的优化目标外,还把良率也作为优化目标之一,所以Pareto最佳解集上的良率也能够满足 预设要求。同时,在优化过程中采用蒙特卡罗与高斯过程回归(GPR)相结合,加快良率的评 估。
[0057] 可以理解的是,在本申请上述实施例公开的方法中,步骤S105中"所述采用SPICE 模型和高斯过程回归利用SPICE仿真器对新一代种群进行蒙特卡罗分析估算得到良率估 计值"具体可以包括:
[0058] 获取当前种群的训练点集(Y,X),Y为种群中每个个体观测点的良率的观测值,X 为种群中每个个体观测点;
[0059] 依据所述训练点集(Y,X)由公式(1)计算得到种群中每个个体的良率的待预测 值/的后验分布为
得到当前种群中每个个体 的良率的待预测值的平均值y*及其方差or"判断所述方差< 是否在允许误差范围之内, 如果是,将所述良率的待预测值y#作为良率估计值,如果否,则在当前种群中选择一个新的 个体X%进行蒙特卡罗分析得到被选择的新个体f的良率观测值y,把(X% y)加入训练点 集(Y,X),重新进行预测,直至每个个体的所述良率的待预测值平均值的方差<均在允许 误差范围之内,/为良率的待预测值,A为种群中待预测个体的设计变量;
[0060] 其中,所述公式(1)为:
设良率观测值Y的先 验分布为高斯分布:¥~?^(0,1((乂,乂)),1((乂,乂)为对称正定协方差矩阵,矩阵元^(7 1)为 种群中待预测个体的设计变量之间的相关性,y#为种群中每个个体观测点上良率的待预测 值。
[0061] 上述实施例中利用蒙特卡罗结合GPR估计良率的推理过程可以描述如下:
[0063] 其中,f为设计变量,y为良率的观测值,设良率观测值的先验分布为高斯分布为: Y ~N(0,K(X,X)) (3)
[0064] 其中Y = (Y1, y2, 一yy为种群中多个个体观测点
上良率的观测 值,良率的观测值Y和良率的待预测值y*的联合先验分布为:
[0066] 其中,K(X,X)为对称正定协方差矩阵,为种群中待预测个体的设计变量,矩阵 元夂???)为种群中不同的待预测个体的设计变量之间的相关性。由⑷得到良率的待测 值y*的后验分布为:
;其中艮为I个体的预测的良率的 平均值,《4为其方差的平方。
[0067] 参见本申请上述实施例公开的模拟集成电路优化方法中,在种群进化过程中每一 代中个体数是定值,由于训练点集(Y,X)中不断有新的个体加入,使得进化代数越大,需要 加入的新训练点越少,因此需要进行蒙特卡罗分析的个体越少,进而预测的良率值越准确, 这一过程使得进化到一定代后,几乎不需要新的训练点加入,也即不需要再进行蒙特卡罗 分析,因而会加快进化算法。
[0068] 可以理解的是,针对于上述方法,本申请还公开了一种模拟集成电路优化系统,两 者可相互借鉴。参见图2,本申请实施例公开的所述模拟集成电路优化系统,包括:
[0069] 采集模块10,用于获取用户输入的初始电路网表和晶体管统计模型;
[0070] 分析模块20,用于依据所述初始电路网表和晶体管统计模型分析得到设计变量、 优化目标及约束条件;
[0071] 种群生成模块30,用于依据所述设计变量的范围随机产生初始种群;
[0072] 第一进化模块40,用于更改所述设计变量,依据更改后的所述设计变量生成所述 初始种群中每个个体对应的电路网表,所述电路网表代表新一代种群;
[0073] 仿真模块50,用于通过采用电路级模拟程序对所述新一代种群进行仿真,得到 所述新一代种群中各个个体的电路性能指标,所述采用SPICE模型和高斯过程回归利用 SPICE仿真器对新一代种群进行蒙特卡罗分析估算得到良率估计值,所述良率估计值包括 种群中每个个体观测点上良率的待预测值;
[0074] 第二进化模块60,用于依据所述电路性能指标和良率估计值采用进化算法对所述 新一代种群进行进化得到下一代种群;
[0075] 验证决策模块70,用
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1