快速产生多样化环形振荡器的方法和系统的制作方法

文档序号:9471544阅读:548来源:国知局
快速产生多样化环形振荡器的方法和系统的制作方法
【技术领域】
[0001]本发明涉及环形振荡器的生成领域,尤其是涉及一种快速产生多样化环形振荡器的方法。
【背景技术】
[0002]集成电路芯片制造的工艺流程通常包含着许多复杂的工艺步骤,每一个步骤都可能有特定的工艺偏差。为了提高芯片成品率,缩短成品率成熟的周期,一般采用设计测试芯片并通过测试和分析测试芯片中的故障找出工艺流程的偏差,然后进行改善以提高成品率。对含有环形振荡器的芯片,可以设计出针对环形振荡器的测试芯片从而有效地在制造工艺中检测环形振荡器的各种参数和稳定性。
[0003]在集成电路的设计和制造过程中,环形振荡器是一个重要的元器件。由于其组成结构的特点,环形振荡器能够反映系统的动态参数,因此被工业界广泛应用。环形振荡器的结构较简单,起振容易,如果不加延迟网络则不需要阻容元件,便于集成化。简单的环形振荡器可以由三个非门或更多奇数个非门输出端和输入端首尾相接,构成环状。例如,图1所示为三个非门构成的环形振荡器。复杂的环形振荡器也可以由奇数个具有逻辑非功能的门电路或模块相连而成,而其中的模块是由一个或多个不同的逻辑门组合而成。

【发明内容】

[0004]在一方面,本发明提供了一种可以简单快速地生成多样化环形振荡器的方法,该方法通过生成单元模板对应基础单元,生成以单元模板为基础结构的环形振荡器,实现环形振荡器内部的连接,实例化产生环形振荡器,使用户可以通过这种方法自动生成多样化的环形振荡器,并使得测试结构可以直接用于测试芯片设计和其它集成电路版图设计的调用。
[0005]构成环形振荡器的基础单元可以包括两种情况:1)标准单元:由反向器(非门)、与门、或门、与非门、或非门、同或门、异或门、与或非门中的一个或多个组成的具有逻辑非功能的门电路或模块;2)非标准单元:用户自定义的具有逻辑非功能的门电路或模块。由此可见构成环形振荡器的基础单元有很多种,而由这些基础单元构成的多样化环形振荡器可以又包括以下两种情况:1)不同基础单元构成的环形振荡器;2)相同基础单元构成的具有不用级数的环形振荡器。
[0006]根据一些实施例,在已有构成环形振荡器的基础单元的情况下,可以通过如下方法快速产生多样化的环形振荡器:
[0007]a)生成单元模板对应于基础单元:定义一个参数化的单元模板,在单元模板上定义出基础单元所需的接口引脚,并对每个引脚定义一个标签;
[0008]b)生成以单元模板为基础结构的环形振荡器:将a)中的单元模板代替基础单元,生成以单元模板为基础结构的环形振荡器;
[0009]c)实现环形振荡器内部的连接:利用等宽线进行单元模板之间,单元模板和起振结构之间的连接,通过约束关系定义路径对齐;
[0010]d)实例化环形振荡器:使用基础单元代替单元模板并根据a)中定义的标记查找与其对应的引脚,通过c)中的等宽线和已定义好的约束关系保证引脚的连接关系。
[0011]作为优选,所述方法在实例化环形振荡器之前,使用单元模板代替组成环形振荡器的基础单元,从而实现了用参数化单元模板灵活地替换基础单元以生成不同需求的环形振汤器的功能。
[0012]作为优选,在实例化环形振荡器之前,每个单元模板被定义了任意一种基础单元,其具体代表哪一种基础单元是在实例化环形振荡器时根据用户的设置来确定的。
[0013]作为优选,所述的引脚可以采用任意多边形,常用的形状为矩形。
[0014]作为优选,所述方法的a)步骤中是通过位置模板来定义基础单元所需接口的引脚的。位置模板起到了在单位模板中定义引脚的作用,并为每个单元模板指定一个标签。
[0015]作为优选,所述方法的b)步骤中可以使用参数控制单元模板的级数,以生成用户需要的特定级数的环形振荡器。
[0016]作为优选,所述方法的c)步骤中的等宽线是一种对引脚之间起到绕线作用的版图基础结构之一。
[0017]作为优选,所述方法的c)步骤中的起振结构是环形振荡器的组成部分之一。起振结构的类型可以与用于实例化的基础单元相同,也可以是与用于实例化的基础单元不同的具有逻辑非功能的门电路或模块,在环形振荡器中主要起到起振的作用。换一种表述为环形振荡器是由N+1个基础单元组成的,N代表任意一种基础单元的数量,且为偶数。
[0018]作为优选,所述方法的d)步骤中的基础单元是用户已有的构成环形振荡器的基础单元。使用不同的基础单元替代单元模板可以产生不同基础结构的环形振荡器,从而实现简便地生成多样化环形振荡器的目的。
[0019]作为优选,如果需要生成相同种类的多个环形振荡器,可以通过复制的方式生成。
[0020]在这种生成环形振荡器的过程中,选择不同的参数可以产生不同级数的单元模板,选择不同的基础单元代替单位模板可以产生不同基础结构的环形振荡器,实现了参数化单元的灵活复用。设计一次参数化单元模板,可以根据使用者的需求,产生不同基础结构、不同级数的环形振荡器。实际应用中,对于同一种基础单元,如果需要找出构成环形振荡器的最佳尺寸,也可以使用此方法简便地用不同尺寸的基础单元来实例化单元模板,生成不同尺寸的环形振荡器,并找出最优化的基础结构尺寸。
[0021]在另一方面,本发明提供一个计算机软件包,其可以是包括存于非暂存计算机可读的介质的计算机指令,其特征在于,此软件包包括了用以生成环形振荡器的基础单元以及相关步骤,通过在至少一台计算机上执行这些步骤,用所储存的基础单元来快速生成环形振荡器,这些指令包括:
[0022]a)生成单元模板对应基础单元:定义一个参数化的单元模板,在单元模板上定义出基础单元所需的接口引脚,并对每个引脚定义一个标签;
[0023]b)生成以单元模板为基础结构的环形振荡器:将a)中的单元模板代替基础单元,生成以单元模板为基础结构的环形振荡器;
[0024]c)实现环形振荡器内部的连接:利用等宽线进行单元模板之间、单元模板和起振结构的连接,通过约束关系定义路径对齐;
[0025]d)实例化环形振荡器:使用基础单元代替单元模板并根据a)中定义的标记查找与其对应的引脚,通过c)中的等宽线和已定义好的约束关系保证引脚的连接关系。
[0026]在一些实施例中,该软件包中所包含的基础单元包括两种情况:标准单元和非标准单元,其中标准单元是由反向器/非门、与门、或门、与非门、或非门、同或门、异或门、与或非门中其中一个或多个组成的具有逻辑非功能的门电路或模块,非标准单元是用户自定义的具有逻辑非功能的门电路或模块。
[0027]在一些实施例中,实例化环形振荡器之前,该软件包所包含的单元模板被用来代替组成形振荡器的基础单元。
[0028]在一些实施例中,实例化环形振荡器之前,该软件包所包含的单元模板只是作为一种基础单元的定义,可以根据用户需求具体到所需基础单元。
[0029]在一些实施例中,用此软件包生成环形振荡器的基础单元的a)步骤中是通过位置模板来定义用于连接的引脚的。
[0030]在一些实施例中,用此软件包生成以单元模板为基础结构的环形振荡器的b)步骤中选择不同的参数可以产生由不同数量单元模板构成的环形振荡器。
[0031]在一些实施例中,用此软件包实现环形振荡器内部连接的c)步骤中的等宽线是一种对引脚之间起到绕线作用的版图基础结构之一。
[0032]在一些实施例中,用此软件包实例化生成环形振荡器的d)步骤中,使用不同的基础单元替代单元模板可以产生不同基础结构的环形振荡器。
[0033]在另一方面,本发明提供一个系统,其特征在于,该系统包含至少一台计算机,该计算机用环形振荡器基础单元来快速产生多样化环形振荡器的设计,该系统的功能包括:
[0034]生成单元模板对应基础单元:定义一个参
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1