对带有透明锁存器的数字集成电路进行优化的速度分级的方法

文档序号:6337232阅读:225来源:国知局
专利名称:对带有透明锁存器的数字集成电路进行优化的速度分级的方法
技术领域
本发明属于集成电路领域,具体涉及一种针对考虑工艺偏差影响下的带有透明锁 存器的数字集成电路进行最优化速度分级的方法。
背景技术
随着集成电路工艺进入纳米量级,电路制造中的工艺偏差日益严重,带来了严 重的电路性能不确定性和电路工作频率分散性。为了提高电路制造的收益,B. D. Cory, R. Kapur 和 B. Underwood 于 2003 年提出了速度分级的概念(B. D. Cory, R. Kapur, and B. Underwood, "Speed Binning with Path Delay Test in 150-nm Technology,,,IEEE Design Test Comput.,20 (5),pp. 41-45,2003.),即可将所有的产出电路根据各自可正常 工作的最小时钟周期进行排序,并划分周期等级,然后为不同周期等级中的电路制定不同 的出售价格。速度分级通常应用于以微处理器为代表的高性能流水线系统。而在这些系统 中,广泛采用了具有时序借用和低功耗特性(参见C. Ebeling和B. Lockyear于1995年发表 在 Proceedings of the 16th Conference on Advanced Research inVLSI(ARVLSI' 95) ±M 342 MWOn the performance of level-clocked circuits")的电5PgC胃的 明锁存器作为时序单元。因此,如何对带有透明锁存器的电路进行速度分级优化,即找到一 个最优的分级方法使得电路产品收益最大化,成为当前集成电路产业亟待解决的关键问题 之一。已有的传统速度分级策略通常将电路设计的收益定义为销售利润,即在制定的 价格上卖掉所有电路产品的销售所得。销售利润完全依赖于每一个周期等级的电路数目 和出售价格。基于这一理论,A. Davoodi和A. Srivastava于2008年在IEEE Trans, on VLSI 第 16(6)期 683-692 页的"Variability Driven Gate Sizing for Binning Yield Optimization”文章中提出了一种基于销售利润的收益模型,采用线性罚函数计算分级策 略的利益损失。A. Datta等人进一步发展了该模型,在2008年IEEE Trans, on VLSI第16(7) 期806-815页的"Profit Aware Circuit Design Under Process Variations Considering Speed Binning” 一文中提出通过定义与电路正常工作周期相关的价格函数和基于该函数 的价格加权模型来评价电路设计的收益。但是仅考虑销售利润的收益模型在实际生产应用 中是不够完整的。在现代集成电路生产中,在电路总成本中所占比重日益显著的频率测试 成本必须被纳入收益模型的考量范围。为了进行正确的速度分级,需要在各等级分界处的 时钟周期点对电路进行功能或结构测试。测试成本会随着周期等级数目的增加而上升,从 而降低设计收益。因此一个具有实际意义的收益模型不仅包括销售利润,还必须计入测试 成本。A. Datta等人发表的"Profit Aware Circuit Design Under Process Variations Considering Speed Binning” 一文在速度分级优化方面进行了简单的探讨,提出了一种启 发式方法,通过优化周期等级分界点来最大化销售利润。即每次按指定步长移动一个等级分界点,若能够提高销售利润,则认为这一移动是可以接受的。但这一方法的最优性难以保 证,且每次移动的步长也难以预测。M. Gong 等人于 2009 年 ICCAD 第 328-3;35 页发表的“Binning Optimization Based on S STA for Transparently-Latched Circuits”一文提出同时考虑销售利润和测试成本 的针对透明锁存器电路的速度分级优化方法。这一方法假设测试成本远小于销售利润,并 基于此假设将销售利润和测试成本分别进行优化,首先通过贪婪算法得到最优时间周期等 级分界点从而最大化销售利润,然后再利用字母序二叉树的带权最短路径求解算法得到最 优分界点测试顺序以最小化测试成本。而实际上与销售利润相比,测试成本比重日益增加, 变得不能忽略,所以时间周期等级分界点位置和测试顺序的调整应当同时对销售利润和测 试成本进行优化,才能够使得电路设计的总收益最大化(这里的总收益定义为总收益= 销售利润-测试成本)。此外,为了顺利完成速度分级,首先需要采用统计静态时序分析(SSTA)预测电路 的最小时钟周期的统计分布。目前已有的绝大多数统计静态时序分析算法都是针对边沿触 发器电路的。但速度分级方法通常更多地用于处理带有透明锁存器的电路系统。由于锁存 器的信号输出时间与其输入时间有关,在进行时序分析时需要同时考察所有回路上的时间 约束,因此对这种电路的统计静态时序分析是一个更加复杂的问题。传统方法,如R. Chen 和 H. Zhou 在 2006 年发表于 IEEE Trans, on CAD 第 25 (9)期 1847-1855 页的‘Statistical Timing Verification of Transparently Latched Circuits,,一文中所提出的锁存器电路 时序分析方法等,通常是针对时钟验证问题,通过不断迭代更新透明锁存器输入、输出端的 统计到达时间和检测电路中的负环来计算某个给定时钟周期处的电路良产率。但这一类方 法难以得到包含所有时钟频率点的随机时钟周期分布,除非在每一个可能的时钟周期点都 采用这类SSTA方法以求得该处的良率,而这是非常耗时的。此外,由于在迭代过程中,时序 随机变量需要根据前数次的迭代结果进行更新,而前数次的该变量本身和本次迭代的变量 之间具有统计相关性,这将引起这类算法中的统计自相关现象,最后或多或少地导致这些 算法的随机到达时间的无法收敛的问题。另外,已有方法通常假设工艺偏差具有高斯分布 的特性,而这一假设在实际IC生产中并不一定满足。因此,亟需一种改进的速度分级优化方法,用于处理带有透明锁存器的电路系统 进行优化速度分级,克服现有技术的不足,提高效益,降低生产成本。

发明内容
本发明的主要目的是针对现有技术中所述带有透明锁存器的数字集成电路的速 度分级优化问题,在同时考虑销售利润和测试成本的前提下,寻找最优的时钟周期等级分 界点和测试顺序以最大化电路设计的总收益,从而提出在工艺偏差影响下的带有透明锁存 器的数字集成电路的速度分级优化方法。为实现上述发明目的,本发明提出带有透明锁存器的数字集成电路速度分级优化 方法,其主要包括以下步骤步骤1 计算带有透明锁存器的数字集成电路的最小时钟周期累计密度分布函数 CDF ;以及步骤2 基于上述最小时钟周期累计密度分布函数,通过迭代优化确定最优时钟周期等级分界点和最优测试顺序,以最大化电路设计总收益;所述的总收益=销售利 润-测试成本。本发明步骤1中采用基于通用随机配置法和稀疏网格采样技术的SSTA方法对工 艺偏差影响下的带有透明锁存器的数字集成电路进行分析,通过将随机问题转化为一组在 特定采样点处的固定问题来求出最小时钟周期累计密度分布函数CDF。与已有技术相比,这 一方法不仅能够避免随机到达时间的收敛性问题,还能够以很低的计算复杂度和较高的求 解精度得到任意分布的工艺偏差影响下的透明锁存器电路工作时钟周期的随机分布。本发明步骤2中根据步骤1得出的最小时钟周期累计密度分布函数CDF,采用迭 代优化算法确定时钟周期等级分界点的最优位置以及测试顺序,使得电路设计总收益最大 化。为达到这一目标,首先均勻地初始化时钟周期等级分界点的位置。然后采用计算复杂度 仅为0(n log η)的字母序二叉树带权最短路径求解算法,得到当前分界点位置对应的能够 最小化测试成本的最优测试顺序。接着利用贪婪算法,根据当前最优测试顺序更新等级分 界点位置以最大化电路总收益。最后判断分界点位置是否最优,如果没有,则继续进行时钟 周期分界点测试顺序和位置的迭代优化过程。值得注意的是,由于能够证明电路设计总收 益这一目标函数具有单峰型,因此每一次的迭代过程都能够从理论上保证求解的最优性。本发明中,步骤1包括分步骤-通过稀疏网格技术选择工艺参数空间随机配置点;-计算每一个配置点处的最小时钟周期;以及-根据配置点处的最小时钟周期,利用随机配置法计算数字集成电路最小时钟周 期累计密度分布函数CDF。本发明中,步骤2包括分步骤-分步骤201根据设计需求及漏电功耗约束确定数字集成电路正常工作时最短时 钟周期的最大值和最小值边界点,并按照各等级均勻原则设定初始的时钟等级分界点;-分步骤202确定当前时钟等级分界点的最优测试顺序以最小化测试成本;-分步骤203根据当前的最优测试顺序,采用贪婪算法更新时钟周期等级分界点 以最大化当前测试顺序下的电路设计总收益;以及-分步骤204判断本次迭代中的等级分界点是否已是最优解,即本次迭代与前次 迭代得到的分界点差异是否在设定容限范围内;若是,则停止迭代,若不是,则返回分步骤 202继续进行迭代优化。本发明中,分步骤202还包括子步骤-根据时钟周期等级分界点建立字母序二叉树;-采用基于Hu-Tucker编码的复杂度为Ofclogn)的算法求解字母序二叉树的带权 最短路径,以得到时钟周期等级分界点最优阶数分配;以及-根据最优阶数分配求出能够使得测试成本最小化的最优的时钟周期等级分界点 测试顺序。还包括根据最小时钟周期累计密度分布函数CDF以及时钟周期等级分界点的测 试顺序计算测试成本。本发明中,所述分步骤203还包括根据时钟周期等级分界点和测试顺序计算电路 设计的总收益。
本发明中,所述分步骤204还包括计算前次迭代和本次迭代得到的分界点位置的差异。有利的是,应用本发明提出的方法,在对时钟周期等级分界点的位置和测试顺序 进行优化的过程中,同时考虑了销售利润和测试成本对电路设计总收益的影响,更有利于 得到最优的总收益。本方法不仅能够通过随机配置法以很低的计算复杂度和很高的求解精 度得到透明锁存器电路的工作时钟周期分布,避免随机到达时间求解中的收敛性问题;而 且能够以计算复杂度仅为0 (n log η)的优化方法确定周期等级分界点的最优测试顺序,从 而最小化测试成本;还能够从理论上保证在采用贪婪算法确定周期等级分界点位置以最大 化电路设计收益时,每次迭代计算的最优性。另外,本发明方法同样适用于任意分布工艺偏差影响下的边沿触发器电路的速度 分级优化,只需要将触发器断开,并将其输入输出作为电路的基本输入和基本输出处理即可。


图1是本发明所提出的速度分级优化方法的步骤流程图;图2是计算最小时钟周期累计密度分布函数CDF的步骤流程图;图3是计算最优时钟周期等级分界点位置和测试顺序的步骤流程图;图4是确定时钟周期等级分界点的最优测试顺序的步骤流程图;图5是一个电路设计的速度等级划分示意图,包括该电路设计的工作周期累计密 度分布函数、电路价格函数和划分为六个等级的速度分级策略;图6的示意图是针对图2中电路设计的最优字母序二叉树;图7是S13207电路的时钟周期统计分布CDF函数F(χ)和三种价格曲线(线性曲 线、二阶曲线和三阶曲线)图8是S13207电路的速度分级优化结果;以及图9是S13207优化总收益、销售利润和测试成本的趋势。
具体实施例方式本发明针对带有透明锁存器的数字集成电路的速度分级优化问题,在同时考虑销 售利润和测试成本的前提下,寻找最优的时钟周期等级分界点位置和测试顺序以最大化电 路设计的总收益。实施例1根据本发明的原理,其技术方案主要包括统计时钟周期的计算,时钟周期等级分 界点位置和测试顺序的优化两个方面。下面结合图1-图4的方法流程图来描述其如下具 体步骤步骤1 计算带有诱明锁存器的数字集成电路的最小时钟周期的统计分布,可以 采用基于通用随机配置法(gSCM, generalized Stochastic Collocation Method)和稀疏 网格采点技术(Sparse-Grid Sampling)的统计静态时序分析方法计算透明锁存器电路的 最小时钟周期的统计分布。设I表示通过PCA或ICA对具有相关性的工艺偏差处理后得到的一组独立的具有任意分布的随机变量,则给定锁存器电路的随机最小时钟周期7;。&($可以采用I的通用多 项式展开(gPC,generalized Polynomial Chaos 来逼近,如(1. 1)所示,Twori (¢)^ Twori (ξ)@ Σ(ξ)(1.1)
Z1+...+/^ =0这里的表示时钟周期的真实值,而t。rt(力是近似值。N是随机工艺参 数的个数,M是所采用的多项式的最高阶数,Zfi…表示N阶的通用多项式展开,
(I1+. . . +iN)是这一多项式的阶数。未知系数,如图2所示,可通过以下三个分步骤求 出分步骤101 :采用通用稀疏网格技术生成#的一组配置点{^|众=1,2,...,尸1,这里
P是配置点的数目。令和表示第j维h阶精度高斯积分所对应的配置点(即多项式 H[J 的根)和权重,则由稀疏网格技术所产生k阶精度d维积分的配置点可由Θ 张量 积的线性组合得到,如(1.2)所示,V (&fx-x&t)(12)
Γ Γ这里|丨| =々_^. + ‘。配置点(々,...,纹)£ 5对应的权重如式(1.:3)所示,(1.3)分步骤102 在每一个配置点&处,求解固定工艺参数下的静态时序分析问题,得
到最小时钟周期rw。rt (I)。固定工艺参数下透明锁存器电路的静态时序分析需分别检测建 立时间约束和保持时间约束是否满足,其主要步骤如下子步骤1021 建立SMO约束形式所对应的有向时序图G = (V, E)。顶点集合V表 示电路的基本输入、输出,和所有元器件(包括门和锁存器)的输出端。边集合E表示门和 锁存器端点之间的时间弧。子步骤1022 根据SMO模型中的建立时间约束和有向时序图G = (V,E),构造建立 时间约束图(is。时序图G= (V,E)中,令AJai)表示i顶点处的最晚(最早)到达时间,Aji(Sji) 表示时间弧(j,i)上的最大(最小)延迟。假设所有的锁存器由同一时钟控制,该时钟的 周期为Tc,使能时间为Tp = 0. 5Tco令务=-為,则SMO模型中的建立时间约束可表示如下若(j, i)是一个门单元,勒Jf0+(-Δ 力+) + 0-Tc(1.4)若(j,i)是一个锁存器,考+ (-Δ力.) + i-rc
权利要求
1.一种对带有透明锁存器的数字集成电路进行优化的速度分级的方法,其特征在于, 其包括步骤1 计算带有透明锁存器的数字集成电路的最小时钟周期累计密度分布函数CDF ;以及步骤2 基于上述最小时钟周期累计密度分布函数,通过迭代优化确定最优时钟周期 等级分界点和最优测试顺序,以最大化电路设计总收益;所述的总收益=销售利润-测试 成本。
2.根据权利要求1所述的方法,其特征在于,所述的步骤1包括以下分步骤-通过稀疏网格技术选择工艺参数空间随机配置点;-计算每一个配置点处的最小时钟周期;以及-根据配置点处的最小时钟周期,利用随机配置法计算数字集成电路最小时钟周期累 计密度分布函数CDF。
3.根据权利要求1所述的方法,其特征在于,所述的步骤2包括以下分步骤-分步骤201根据设计需求及漏电功耗约束确定数字集成电路正常工作时最短时钟周 期的最大值和最小值边界点,并按照各等级均勻原则设定初始的时钟等级分界点;-分步骤202确定当前时钟等级分界点的最优测试顺序以最小化测试成本;-分步骤203根据当前的最优测试顺序,采用贪婪算法更新时钟周期等级分界点以最 大化当前测试顺序下的电路设计总收益;以及-分步骤204判断本次迭代中的等级分界点是否已是最优解,即本次迭代与前次迭代 得到的分界点差异是否在设定容限范围内;若是,则停止迭代,若不是,则返回分步骤202 继续进行迭代优化。
4.根据权利要求3所述的方法,其特征在于,所述分步骤202还包括以下子步骤-根据时钟周期等级分界点建立字母序二叉树;-采用基于Hu-Tucker编码的复杂度为Ofclogn)的算法求解字母序二叉树的带权最短 路径,以得到时钟周期等级分界点最优阶数分配;以及-根据最优阶数分配求出能够使得测试成本最小化的最优的时钟周期等级分界点测试 顺序。
5.根据权利要求4所述的方法,其特征在于,所述步骤还包括根据最小时钟周期累计 密度分布函数CDF以及时钟周期等级分界点的测试顺序计算测试成本。
6.根据权利要求3所述的方法,其特征在于,所述分步骤203还包括根据时钟周期等级 分界点和测试顺序计算电路设计的总收益。
7.根据权利要求3所述的方法,其特征在于,所述分步骤204还包括计算前次迭代和本 次迭代得到的分界点位置的差异。
全文摘要
本发明属集成电路领域,涉及针对考虑工艺偏差影响下的带有透明锁存器的数字集成电路进行最优化速度分级的方法,包括计算带有透明锁存器的数字集成电路的最小时钟周期累计密度分布函数,以及根据最小时钟周期累计密度分布函数确定最优时钟周期等级分界点和分界点的最优测试顺序,以最大化总收益。本方法能通过随机配置法以很低的计算复杂度和很高的求解精度得到透明锁存器电路的工作时钟周期分布,避免随机到达时间求解中的收敛性问题;能以计算复杂度仅为O(n log n)的优化方法确定周期等级分界点的最优测试顺序,从而最小化测试成本;还能从理论上保证在采用贪婪算法确定周期等级分界点位置以最大化电路设计收益时,每次迭代计算的最优性。
文档编号G06F17/50GK102142046SQ201010567839
公开日2011年8月3日 申请日期2010年11月26日 优先权日2010年11月26日
发明者周海, 曾璇, 陶俊, 龚旻 申请人:复旦大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1