一种自带对比功能的标准单元库功能测试方法

文档序号:9417273阅读:325来源:国知局
一种自带对比功能的标准单元库功能测试方法
【技术领域】
[0001]本发明涉及一种数字集成电路的功能测试方法,属于数字集成电路验证领域,尤其涉及一种自带对比功能的标准单元库功能测试方法。
【背景技术】
[0002]随着集成电路设计及制造水平飞速发展,单个芯片可以集成数以千万个晶体管。然而,为了满足更多的功能需求,集成度仍需不断的提高。那么在保证芯片面积不变的前提下,每一个器件单元的面积就要不断减小,即每个门级单元的最小尺寸不断变小。每一次尺寸的改变,必然会有新的标准单元库产生。
[0003]标准单元库一般包括两大类单元:组合单元和时序单元。组合单元输入测试端口一般不超过6个,时序单元输入测试端口一般不超过5个。在集成电路中,每一个标准单元是否符合标准要求,对于每一个器件单元、每一款芯片都是至关重要的。所以在使用这些标准单元之前,对其进行功能测试是一种常规且非常必要的手段。
[0004]对一个新的设计进行功能验证需要经过3个步骤:生成输入激励,捕获输出结果,判断对比结果。同样的,对于标准单元库的验证也是如此。测试平台包裹着单元库,对其输入测试向量,检测输出结果。传统标准单元库的功能测试方法,对于组合单元是输入六位的测试向量,再通过六位测试向量的变化对一个单元进行测试;对于时序单元是输入五位的测试向量,考虑复位置位的情况下,再通过五位测试向量的变化对一个单元进行测试。即每64(26)个测试向量测试一个组合单元,每128(4*25)个测试向量测试一个时序单元。然而并非每一个组合单元都有6个输入接口,需要6位的测试向量(时序单元也并非都是5个接口)。所以这种测试方法虽然简单可行,然而冗余向量过多,测试效率低下且并不能自动检测标准单元功能。
[0005]为解决上述问题,本发明提出一种基于向量复用的对标准单元库进行功能验证的方法,本发明根据不同单元的输入端口数量,对库中的单元自动进行分类测试,减少了冗余的输入向量,并大大提高了测试效率且可以通过实际测试结果与功能要求自动对比,检测出不符合要求单元,减少了验证人员的工作量。

【发明内容】

[0006]本发明的目的在于提供了一种自带对比功能的对标准单元库的功能验证方法。其电路结构分为七部分:输入向量选择扩展模块,标准单元模块,对照单元模块,地址选择模块,输出向量选择模块与对比判断模块;其中输出向量选择模块包含输出向量选择模块1、输出向量选择模块2,输出向量选择模块1、输出向量选择模块2分别对应标准单元模块和对照单元模块。这七个模块构成测试设计的整体。
[0007]输入向量选择扩展模块,在外部输入激励为6位测试向量的前提下,对输入端口数量不同(1、2、3、4、5和6)的标准单元自动进行向量的扩展复用并扩展成60位输入向量;同时对多个标准单元进行测试,而且并不会造成位宽的浪费。在此基础上再根据对输入端口数量的分类,产生不同数量的输入向量对标准单元进行全覆盖且无冗余的测试。
[0008]标准单元模块,将不同类型、不同端口数量的标准单元自动地分类排序并与输入向量选择扩展模块产生的信号输出端相连接。将经过标准单元处理过的输出信号与输出向量选择模块I相连接。
[0009]对照单元模块,按照标准单元模块内单元的排列顺序,创建出相应的对照单元并赋予其理想功能,各个对照单元的输入端与输入向量选择扩展模块产生的信号输出端相连接。将经过对照单元处理过的输出信号与输出向量选择模块2相连接。
[0010]地址选择模块,将不同类型、不同端口数量的标准单元划分成不同的地址,以便分批次测试。将地址信号与输入向量选择扩展模块相连接,使其根据地址来区分单元类别,产生并输出不同的扩展测试向量,这些扩展测试向量每次测试10?60个标准单元。此外,地址信号还与输出向量选择模块1、输出向量选择模块2分别连接,使得输出模块根据地址来判断当前时刻被测试单元与理想单元模型,将测试结果与相应的输入向量同时输出。
[0011]输出向量选择模块I与标准单元模块相连接,接收来自各个标准单元的测试结果。同时与地址选择模块相连接,根据地址选择模块输入的不同地址来选定应该接收的标准单元的测试结果,并将其与地址同时输出。
[0012]输出向量选择模块2与对照单元模块相连接,接收来自各个标准单元模型的测试结果。同时与地址选择模块相连接,根据地址选择模块输入的不同地址来选定应该接收的标准单元的测试结果,并将其与地址同时输出。
[0013]对比判断模块,与输出向量选择模块1、输出向量选择模块2分别连接,同时接收来自被测单元与被测单元模型的输出向量,以及地址和输入向量。根据对比数据,得出实际标准单元功能是否满足理想功能需求。
[0014]所述标准单元库功能测试是指对标准单元库中所有组合时序单元的功能是否满足要求进行检验测试。
[0015]所述自带对比功能是指自动生成测试向量对标准单元进行测试,再将所有单元的输出结果,通过异或或同或逻辑,与理想模型产生结果自动进行对比判断。
[0016]所述自动生成测试向量,是指通过地址选择模块所生成地址,识别其单元信息,对初始6位向量进行选择性地扩展,生成针对不同类别单元的扩展测试测试向量。
[0017]所述理想模型是指,利用per1、verilog等工具通过对标准单元文件名称内容的提取来进行识别,并自动地赋予理想功能而产生的单元模型。
[0018]所述扩展测试向量是指将6位初始向量扩展成60位测试向量对不同端口数量的单元进行并行测试,在减小冗余向量的基础上提高测试速率。
[0019]所述地址选择模块所生成地址,是指地址选择模块根据标准单元模块内单元排列顺序,依据单元类别、端口数量和测试批次对库内单元进行地址设置。
[0020]所述单元排列顺序是指利用peri等工具,提取标准单元文件内单元信息,自动地将所有单元按照组合时序类别以及端口数量来分类测试的顺序。
[0021]本发明可以获得如下有益效果:
[0022]1.可以自动将单元库内所有标准单元根据单元类别和输入端口数量进行分类排序,并由排序生成地址控制信号。
[0023]2.可以将6位初始测试向量,根据不同地址信号,选择性地扩展成60位测试向量对同类单元进行并行测试,向量利用率和单元测试效率相对于传统方法均大大提高。
[0024]3.可以按照排序来创建相应的对照单元,并自动赋予每个单元相应的理想单元功能,即自动形成对照组。
[0025]4.由于向量扩展与分类测试,在保证100%测试覆盖率的前提下,减少了测试向量,即减少了测试激励的变化,所以使得测试使用的内存空间与cpu占用率均会有不同程度的下降。
[0026]5.拥有自动对比功能,将实际测试结果与理想功能自动进行对比检测,直接检测每一个标准单元是否满足要求,并将不满足要求的单元地址、输入向量、输出向量列出。
【附图说明】
[0027]图1为测试结构图;
[0028]图2为输入向量选择示意图;
[0029]图3为输入向量扩展示意图;
[0030]图4为测试标准单元库整体流程图;
【具体实施方式】
[0031]以下将结合附图对本发明作进一步说明。
[0032]如图1所示为此测试方法的电路结构示意图。上左A所示部分为输入向量选择扩展模块,其功能为将外部输入或内部生成的6位测试向量根据地址信号进行选择扩展(测试向量为格雷码)。输出给标准单元与对照单元使用。上中B所示部分为测试单元模块部分,将单元库中的单元按照时序与组合单元进行分类,并分别按照输入端口数量进行排序。将排序好的单元输入端与A部分扩展之后的输入向量进行连接,接收测试向量。下中C所示为对照单元模块,将标准单元对应的理想模型按照B中单元顺序进行排序。同时接受来自A部分的测试向量。上右D所示为输出向量选择模块1,由多选一路选择器构成,用来接收测试之后的标准单元输出结果,并根据输入进来的地址信号进行选择输出,输出的向量即为此时正在测试单元的实际输出结果。下右E所示为输出向量选择模块2,接收来自对照单元模块的输出向量并根据地址信号进行选择输出。中间的E,即为连接各个模块的地址选择模块。根据被测单元生成不同的地址,此地址信号由9位构成,第一位为组合、时序单元分类位,第二到四位含义为单元的输入端口数量,后五位含义为单元的测试批次。生成的地址信号输送给输入向量选择扩展模块和输出向量选择模块1、2,分别控制输入向量的选择扩展和输出向量的选择输出。最后端的F为对比判断模块,接收D、F模块的输出向量,判断两模块的输出是否完全相同,如相同则说明被测单元符合功能要求,如不相同,则根据地址可以找到有误标准单元,再根据
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1