一种片上供电网络无向量验证方法及验证系统的制作方法

文档序号:6515105阅读:232来源:国知局
一种片上供电网络无向量验证方法及验证系统的制作方法
【专利摘要】本发明公开了一种片上供电网络无向量验证方法及验证系统,验证方法包括:基于片上供电网络的等效电路信息建立系统矩阵方程,获得电导矩阵;基于片上供电网络的电路约束条件建立电流约束矩阵以及由相应的电流上界值所构成的电流约束向量;采用一种多级层次式矩阵求逆算法求解电导矩阵的稀疏近似逆矩阵,从而获得片上供电网络中各节点的电压降与所有吸纳电流源的函数关系,作为目标函数;将电流约束矩阵和电流约束向量作为线性规划的可行域,对目标函数进行线性规划,计算出片上供电网络中各节点的最大电压降,以此对各节点的安全性进行验证。本发明能够在无法给出各单元模块吸纳电流详细信息的情况下,对片上供电网络各节点的最坏情况电压降做出估计。
【专利说明】—种片上供电网络无向量验证方法及验证系统
【技术领域】
[0001]本发明涉及ー种超大規模集成电路设计中的物理设计技术范畴,特别是关于ー种片上供电网络无向量验证方法及验证系统。
【背景技术】
[0002]随着集成电路的设计和制造エ艺的不断发展,芯片的集成度和功率密度不断提高,芯片内部供电网络的规模也越来越大。为了获得更低的功耗和更好的性能,供电电压和噪声阈值被不断降低,使得供电电压的波动对于芯片性能的影响变得更加显著。特别是在超大規模集成电路中,各元器件正常工作的ー个重要前提是其能够得到正常的供电电压。而实际上,随着集成电路エ艺尺寸的不断降低,平面エ艺设计下的集成电路供电系统的网络阻抗显得越来越大,供电系统的金属走线上的电压降已经变得不可忽略,即元器件上得到的实际供电电压会小于外部的电源电压。如果供电网络上的电压降过大,就可能使元器件上得到的供电电压过低,导致元器件的时延增加,影响芯片性能,严重时还会引起逻辑错误。因此,供电网络的性能已经成为集成电路设计与优化的ー个重要瓶颈,日益受到学术界和エ业界的重视。
[0003]如图1所示,是现有技术中基于仿真的片上供电网络验证方法,其需要以芯片上各単元模块吸纳电流的值或者波形作为输入向量,基于供电网络模型来模拟仿真芯片各种可能的工作状态,通过求解以此为边界条件的电路方程,获得片上供电网络各节点电压情况。这类验证方法需要枚举芯片各种可能的工作状态进行电路仿真,不仅计算量巨大,而且难以满足芯片设计早期阶段(无法给出各単元模块吸纳电流信息)的验证需求。为了解决这些问题,亟需一种无向量验证方法,即不依赖于具体的输入向量,而是通过某种方式刻画芯片设计早期电路具体情况的不确定性,并以此为基础对片上供电网络的安全性进行验证。

【发明内容】

[0004]针对上述问题,本发明提出了一种片上供电网络无向量验证方法及验证系统,该方法能够基于片上供电网络的等效电路模型和相应的电流约束条件,估计各节点最大电压降,以此为片上供电网络结构的修改和优化提供有力的參考依据。
[0005]本发明提供一种片上供电网络无向量验证方法,其特征在于,包括以下步骤:
[0006]S100、基于片上供电网络的等效电路信息建立系统矩阵方程,获得电导矩阵;
[0007]S200、基于片上供电网络的电路约束条件建立电流约束矩阵以及由相应的电流上界值所构成的电流约束向量;
[0008]S300、采用ー种多级层次式矩阵求逆算法求解电导矩阵的稀疏近似逆矩阵,从而获得片上供电网络中各节点的电压降与所有吸纳电流源的函数关系,作为目标函数;
[0009]S400、将电流约束矩阵和电流约束向量作为线性规划的可行域,对目标函数进行线性规划,计算出片上供电网络中各节点的最大电压降,以此对各节点的安全性进行验证。
[0010]上述步骤S300中,所述多级层次式矩阵求逆算法包括以下步骤:S311、利用多重网格方法对电导矩阵进行层次约化,求取各层次粗网格线性算子;S312、基于层次式矩阵构造其中最粗ー层网格线性算子的稀疏近似逆矩阵。
[0011]上述步骤S300中,在获得电导矩阵的稀疏近似逆矩阵后,还采用迭代算法控制稀疏近似逆矩阵的近似精度。
[0012]上述迭代算法包括以下步骤:
[0013]S323、设定线性方程组的猜测解Ci初始值为零,带入残差向量ri=e1-GCi,eii第i个元素为I的单位向量;
[0014]S324、利用多级矩阵求逆方法计算线性方程组Gxi=A的近似解Xi, G是电导矩阵;
[0015]S325、更新线性方程组的猜测解Ci=Cjxi,以及残差向量I^e1-Gci ;
[0016]S326、判断残差向量Ti的范数是否小于等于预设值e:
[0017]如果大于,返回步骤S324 ;
[0018]如果小于等于,执行步骤S327 ;
[0019]S327、Ci作为描述片上供电网络中各节点的电压降与所有吸纳电流源的函数关系的系数向量。
[0020]上述迭代算法的步骤S326中,残差向量A的范数2,判断| IriI | く e是否成立:
[0021]如果不成立,返回步骤S324 ;
[0022]如果小于等于,执行步骤S327。
[0023]上述迭代算法的收敛率为= ||/ - rt|| , I为单位矩阵,p为所述多级层次式矩阵求逆算法中给出的电导矩阵G的近似逆矩阵。
[0024]此外,本发明还提供ー种片上供电网络无向量验证系统,其特征在于,包括:电路文件解析模块,用于根据片上供电网络的等效电路信息建立系统矩阵方程,获得电导矩阵;电流约束条件解析模块,用于根据片上供电网络的电路约束条件建立电流约束矩阵以及由相应的电流上界值构成的电流约束向量;线性系统求解模块,用于根据ー种多级层次式矩阵求逆算法求解电导矩阵的稀疏近似逆矩阵,从而获得片上供电网络中各节点的电压降与所有吸纳电流源的函数关系,作为目标函数;线性规划求解模块,用于将电流约束矩阵和电流约束向量作为线性规划的可行域,对目标函数进行线性规划,计算出片上供电网络中各节点的最大电压降,以此对各节点的安全性进行验证。
[0025]与现有技术相比,本发明带来的有益效果是:
[0026]I)通过电流约束条件来刻画芯片设计早期电路具体情况的不确定性。
[0027]2)不需要以各单元模块的吸纳电流作为输入向量来进行电路仿真,而是直接根据电流约束条件对片上供电网络的安全性进行验证。本发明能够在芯片设计的早期阶段,还无法给出各単元模块吸纳电流详细信息的情况下,对片上供电网络各节点的最坏情况电压降做出估计,所得的结果可以为片上供电网络结构的修改和优化提供參考,使得这些工作能够尽早地展开,以利于缩短整个芯片设计的周期。
【专利附图】

【附图说明】
[0028]图1是现有的基于仿真的片上供电网络验证方法示意图;
[0029]图2是本发明的片上供电网络无向量验证系统的组成示意图;[0030]图3是本发明的片上供电网络无向量验证方法的工作流程图;
[0031]图4是本发明的片上供电网络无向量验证系统的数据流示意图;
[0032]图5是本发明的具有迭代改善过程的多级层次式矩阵求逆算法的流程图;
[0033]图6是本发明的层次式矩阵构造稀疏近似逆的流程示意图;
[0034]图7是本发明ー实施例的层次式矩阵示意图。
【具体实施方式】
[0035]以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
[0036]如图2所示,本发明提供的ー种片上供电网络无向量验证系统10,其包括ー个高效的电路文件解析模块100、一个高效的电流约束条件解析模块200、ー个快速的线性系统求解模块300和ー个快速的线性规划求解模块400。利用该验证系统,可以对以SPICE电路文件形式描述的片上供电网络进行快速分析,计算出供电网络各节点的最大电压降,以此对片上供电网络的安全性进行验证。
[0037]如图3所示,是本发明提供的片上供电网络无向量验证系统的验证方法流程图,其包括以下步骤:
[0038]S100、基于片上供电网络的等效电路信息建立系统矩阵方程,生成电导矩阵;
[0039]S200、基于片上供电网络的电路约束条件建立电流约束矩阵以及最大电流源向量;
[0040]S300、采用ー种多级层次式矩阵求逆算法求解电导矩阵的稀疏近似逆矩阵,从而获得片上供电网络中各节点的电压降与所有吸纳电流源的函数关系,作为目标函数;
[0041]S400、将电流约束矩阵和最大电流源向量作为线性规划的可行域,对目标函数进行线性规划,计算出片上供电网络中各节点的最大电压降,以此验证片上供电网络的安全性。
[0042]上述步骤S300中,在获得电导矩阵的稀疏近似逆矩阵后,还可以进ー步地采用迭代算法控制稀疏近似逆矩阵的近似精度,以达到预期的精度要求。
[0043]当然,如果在执行步骤S400后,片上供电网络中还有ー些节点未进行验证,可以选取这些待验证节点(图3中步骤S500和S600)然后再次执行步骤S300和S400,如此循环直至所有节点验证完毕。
[0044]与传统的仿真方法相比,本发明采用上述方法快速计算出的节点最大电压降是ー个更加符合实际情况的上界值,能够较为准确地反映出片上供电网络的最坏的工作状态,从而为片上供电网络结构的修改和优化提供有力的參考依据。
[0045]下面对上述片上供电网络无向量验证方法做进ー步的详细介绍。
[0046]如图3和图4所示,步骤SlOO中,基于片上供电网络的等效电路信息建立系统矩阵方程,具体包括以下内容:
[0047]对片上供电网络,建立RC等效电路模型:
[0048]片上供电网络可以看作是由供电金属走线形成的电阻支路与供电金属走线交叉点形成的节点所组成的电路网络。具体地,每ー个供电金属走线分支各自等效为ー个电阻(电导),且每ー个节点各自通过ー个电容电性接地,在某些节点与地之间的电性连接中设置有理想电流源,表示挂载的吸纳电流源,在某些节点与地之间的电性连接中设置有理想电压源,表示外接供电电压源,且进ー步地为了表述方便,还假设既没有连接电流源也没有连接电压源的节点也连接ー个恒为零的理想电流源。根据基尔霍夫电压定律和基尔霍夫电流定律,该RC等效电路模型各节点处的电压降满足以下关系:
[0049]CiX' I) + Gv(l ) = /?(/)
[0050]上式中,C是由各节点处电容构成的电容向量,G是电导矩阵,V是各节点处的电压降,i是各节点处的吸纳电流,t是时间。
[0051]由此可以进ー步推得,片上供电网络各节点处电压降的上界能够由与RC等效电路模型相对应的纯电阻模型给出,即:
[0052]vmax (t) =emaXi G F(G_1i)
[0053]其中,Vmax是由各节点处电压降上界构成的向量,emax()表示逐项取最大值,G是电导矩阵,i是各节点处的吸纳电流,F为吸纳电流向量所有可能取值构成的集合(由后面给出的电流约束条件定义)。
[0054]在实际运用过程中,可以通过片上供电网络无向量验证系统10的电路文件解析模块100对含有片上供电网络等效电路信息的SPICE电路文件进行解析,自动构建代表RC等效电路模型的连接拓扑图,具体过程如下:
[0055]电路文件解析模块100读入SPICE电路文件中记载的片上供电网络等效电路信息,首先处理片上供电网络中诸如节点短路或者是通孔电阻过小的情况,采用并查集的技术将上述节点等效,然后将每个等效节点所代表的原始节点上挂载的吸纳电流源进行合并,再将等效节点与未被忽略 的电阻建立成连接拓扑图,最后对该连接拓扑图做深度优先捜索,识别出所有连通分支作为独立子电路。
[0056]基于获得的连接拓扑图,片上供电网路可以形式化为ー个系统矩阵方程:
[0057]Gx=b
[0058]且6 = XM.ZeArf
[0059]Ni=IJgij^Ol
[0060]上述系数矩阵G也即电导矩阵G,是ー个稀疏、对称、正定的矩阵,具有対称性,Gi是电导矩阵G的对角元素,Ni表示与节点i相连接的节点的集合,giJ为节点i与节点j之间的电导值,也即gu=gu ;同时,右端向量b是由吸纳电流源与供电电压源构成的源向量,其中挂载有吸纳电流源的节点对应的分量可以从SPICE电路文件直接获得,外接供电电压源的节点对应的分量可以通过诺顿等效原理将电压值变换为相应的电流值;向量X是由待求解的供电网络各节点电压降构成。因此,本发明对供电网络的分析即是在给定b的取值范围的前提下,估算出X中各分量的上界。
[0061]片上供电网络无向量验证系统10的电路文件解析模块100在提取上述电导矩阵G后,将电导矩阵G以压缩稀疏行CSR格式存储。
[0062]如图3和图4所示,步骤S200中,通过电流约束条件来刻画芯片设计早期电路具体情况的不确定性。电流约束条件主要包括两大类:局部约束条件和全局约束条件。其中:[0063]局部约束条件对应于单个吸纳电流源,用于对片上供电网络中各节点处吸纳电流源的大小做出界定。所有节点的局部约束条件集合可以表示成以下向量形式:
[0064]0 ^ i (t) ^ IL, >0
[0065]其中,込是由各节点处吸纳电流上界构成的向量。
[0066]全局约束条件对应于多个吸纳电流源,用于对片上供电网络中一组节点的吸纳电流源之和的大小做出界定。假设有多个全局约束条件,则可以将其表示成以下矩阵形式:
[0067]Ui (t)≤ IG, Vf >0
[0068]其中,U是仅包含0或者I作为元素的矩阵,姆一行代表ー组节点,向量Ie中与其相对应的元素则为该组节点吸纳电流之和的上界。
[0069]与步骤SlOO类似,在实际运用过程中,可以通过片上供电网络无向量验证系统10的电流约束条件解析模块200对含有局部约束条件和全局约束条件信息的*.constraints文件进行解析,统计全局约束条件的数目和覆盖程度,生成电流约束矩阵L以及由相应的吸纳电流源上界值所构成的最大电流源向量IM,并以压缩稀疏行CSR格式进行存储。
[0070]在*.constraints文件中,姆ー个局部约束条件包括两列内容,第一列是供电网络节点的位置坐标,与步骤SlOO中SPICE文件中的相关信息相互对应,第二列是该节点处吸纳电流源的上界值;每ー个全局约束条件通过global”注明,以与局部约束条件区分,其后是该全局约束条件包含的节点数目、吸纳电流源总和的上界值,以及这些节点的位置坐标。
[0071]如图3和图4所示,步骤S300中,求解片上供电网络中各节点电压降与所有吸纳电流源的函数关系可以等价于求解以下线性方程组:
[0072]Gx=Gi
[0073]X=G^ei
[0074]其中,G是电导矩阵,ち是第i个元素为I的単位向量,由此求解出的向量X即反映了各节点处吸纳电流对于第i个节点的电压降所产生影响的权重。求解此向量X,即求解电导矩阵G的逆矩阵G—1的第i列Ci。最理想的求解方法是直接构造出电导矩阵G的逆矩阵6_\这种方法需要占用大量的内存资源,且计算量非常大,相当耗时,因此本发明优选ー种多级层次式矩阵求逆算法构造满足一定精度要求的稀疏近似逆矩阵,并且采用隐格式的存储方式来減少占用的内存资源。
[0075]本发明提出的多级层次式矩阵求逆算法是将层次式矩阵的技术融合到了多级矩阵求逆的框架当中,并且通过分块矩阵求逆和多重网格方法之间的类比,对现有的多级矩阵求逆算法做了一些改进。此外,虽然在通常情况下,结合了层次式矩阵技术的多级矩阵求逆算法已经可以达到较高的近似精度,但是由于层次式矩阵是分块构造,因此不能保证每一行或者每一列的精度都能够满足要求。故而为了保证整体算法的鲁棒性,本发明还引入一个迭代改善过程对多级层次式矩阵求逆算法进行补充,以控制最終結果的近似精度,达到期望的精度要求。
[0076]如图5所示,是片上供电网络无向量验证系统10的线性系统求解模块300执行具有迭代改善过程的多级层次式矩阵求逆算法的流程图,包括以下步骤:
[0077]S311、利用多重网格方法对电导矩阵G进行层次约化,求取各层次粗网格线性算子 Si’k ;[0078]S312、基于层次式矩阵(即图5所示的H矩阵)构造其中最粗ー层网格线性算子Su的稀疏近似逆矩阵
[0079]S323、设定线性方程组的猜测解Ci初始值为零,带入残差向量I^e1-Gci
[0080]S324、利用多级矩阵求逆方法计算线性方程组Gxi=Fi的近似解Xi ;
[0081]S325、更新线性方程组的猜测解Ci=Cjxi,以及残差向量I^e1-Gci ;
[0082]S326、判断残差向量ri的范数(一般可以取2范数)是否小于等于预设值e,SPIri I ( z是否成立:
[0083]如果不成立,返回步骤S324 ;
[0084]如果成立,执行步骤S327。
[0085]S327、Ci为最终近似解,也即描述片上供电网络中各节点的电压降与所有吸纳电流源的函数关系的系数向量。
[0086]其中,步骤S323~S327所表示的迭代改善过程的收敛率为允=1- G^G,I为
単位矩阵,^力上述多级层次式矩阵求逆算法所给出的电导矩阵G的近似逆矩阵,实际上
^以隐格式的形式蕴含在步骤S311~S324的处理过程中,并没有显式地构造出来。
[0087]如图6所示,是步骤S312中基于层次式矩阵构造稀疏近似逆矩阵的流程示意图。由于细网格上的结果可以通过对粗网格上所得结果做插值得到,因此只需对最粗一层网格 的线性算子(即图中所示S)构造稀疏近似逆矩阵p即可。而为了达到加速线性系统求解
的目的,不能先显式地构造出S—1再对其做近似(图6中虚线所示过程),实际采用的方法是,先构造原始矩阵S的层次式矩阵近似表
[0088]亍7再通过基于层次式矩阵的代数运算,例如H-Cholesky分解等来得到逆矩阵
的稀疏近似表示,获得稀疏近似逆矩阵$ (图6中实线所示过程)。
[0089]如图7所示,是本发明一个实施例的步骤S312中层次式矩阵结构示意图。
[0090]基于所得的稀疏近似逆矩阵,可以获得片上供电网络中各节点的电压降与所有吸纳电流源的函数关系,作为目标函数。
[0091]如图3和图4所示,步骤S400中,片上供电网络无向量验证系统10的线性规划求解模块400结合电流约束矩阵和最大电流源向量对步骤S300获得的目标函数进行线性规划,计算出片上供电网络中各节点的最大电压降。具体内容如下:
[0092]与步骤S300求解线性方程组类似,通过线性规划求解模块400对目标函数进行线性规划的过程也需要经历很多次的计算。为了进ー步提高计算速度,本发明利用多次计算中线性规划可行域(也即电流约束条件)均保持不变的特性对单纯形法做了一定的改进,使得毎次计算都可以在一定程度上利用之前的计算結果,即在每次求解完ー个线性规划问题之后,保留其最終得到单纯形表格,随后其他线性规划问题的求解都能够在之前的单纯形表格的基础上进行修改,从而提高计算效率。此外,本发明还根据实际验证精度的要求,从目标函数的系数中删除了一部分绝对值很小的项,以对目标函数做一定程度的简化,使得相应的线性规划问题的求解变得相对容易了。[0093]如前所述,结合系统方程和电流约束条件,能够估计片上供电网络各节点电压降最大值:
[0094]vmax (t) =emaXi G F(G_1i)
[0095]于是片上供电网络的验证就转化为了各个节点处求解线性规划问题:
[0096]Maximize vf = (G 'i\ Subject to Li ≤ IM, i ≥ 0
[0097]其中,<为第k个节点处电压降的上界,电流约束矩阵L=[IUT]T,I为单位矩阵,最
大电流源向量/, = VItl gf,T为矩阵转置符号,i是各节点处的吸纳电流。[0098]本领域的技术人员应该明白,上文中所记载的内容只是为了便于理解本发明而采用的【具体实施方式】,并非用于限定本发明。任何本发明所属【技术领域】内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
【权利要求】
1.一种片上供电网络无向量验证方法,其特征在于,包括以下步骤: S100、基于片上供电网络的等效电路信息建立系统矩阵方程,获得电导矩阵; S200、基于片上供电网络的电路约束条件建立电流约束矩阵以及由相应的电流上界值所构成的电流约束向量; S300、采用ー种多级层次式矩阵求逆算法求解电导矩阵的稀疏近似逆矩阵,从而获得片上供电网络中各节点的电压降与所有吸纳电流源的函数关系,作为目标函数; S400、将电流约束矩阵和电流约束向量作为线性规划的可行域,对目标函数进行线性规划,计算出片上供电网 络中各节点的最大电压降,以此对各节点的安全性进行验证。
2.如权利要求1所述的片上供电网络无向量验证方法,其特征在于: 所述步骤S300中,所述多级层次式矩阵求逆算法包括以下步骤: 5311、利用多重网格方法对电导矩阵进行层次约化,求取各层次粗网格线性算子; 5312、基于层次式矩阵构造其中最粗ー层网格线性算子的稀疏近似逆矩阵。
3.如权利要求1或2所述的片上供电网络无向量验证方法,其特征在干, 所述步骤S300中,在获得电导矩阵的稀疏近似逆矩阵后,还采用迭代算法控制稀疏近似逆矩阵的近似精度。
4.如权利要求3所述的片上供电网络无向量验证方法,其特征在于,所述迭代算法包括以下步骤: 5323、设定线性方程组的猜测解Ci初始值为零,带入残差向量ri=e1-GCi,ち是第i个元素为I的单位向量; 5324、利用多级矩阵求逆方法计算线性方程组GXi=ri的近似解Xi,G是电导矩阵; 5325、更新线性方程组的猜测解Ci=Ci+Xi,以及残差向量I^e1-Gci; 5326、判断残差向量Ti的范数是否小于等于预设值e: 如果大于,返回步骤S324 ; 如果小于等于,执行步骤S327; 5327、Ci作为描述片上供电网络中各节点的电压降与所有吸纳电流源的函数关系的系数向量。
5.如权利要求4所述的片上供电网络无向量验证方法,其特征在于,所述迭代算法的步骤S326中,残差向量ri的范数2,判断IIriII ^ e是否成立: 如果不成立,返回步骤S324 ; 如果小于等于,执行步骤S327。
6.如权利要求5所述的片上供电网络无向量验证方法,其特征在于,所述迭代算法的收敛率为i? = ||/ - G-lGj, I为单位矩阵为所述多级层次式矩阵求逆算法中给出的电导矩阵G的近似逆矩阵。
7.ー种片上供电网络无向量验证系统,其特征在于,包括: 电路文件解析模块,用于根据片上供电网络的等效电路信息建立系统矩阵方程,获得电导矩阵; 电流约束条件解析模块,用于根据片上供电网络的电路约束条件建立电流约束矩阵以及由相应的电流上界值构成的电流约束向量;线性系统求解模块,用于根据ー种多级层次式矩阵求逆算法求解电导矩阵的稀疏近似逆矩阵,从而获得片上供电网络中各节点的电压降与所有吸纳电流源的函数关系,作为目标函数; 线性规划求解模块,用于将电流约束矩阵和电流约束向量作为线性规划的可行域,对目标函数进行线性规划,计算出片上供电网络中各节点的最大电压降,以此对各节点的安全性进行验证。`
【文档编号】G06F19/00GK103500284SQ201310472940
【公开日】2014年1月8日 申请日期:2013年10月11日 优先权日:2013年10月11日
【发明者】蔡懿慈, 赵威, 周强 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1