CN103608814A - 用于电元件的串联和并联组合的系统和方法 - Google Patents
用于电元件的串联和并联组合的系统和方法 Download PDFInfo
- Publication number
- CN103608814A CN103608814A CN201280022942.9A CN201280022942A CN103608814A CN 103608814 A CN103608814 A CN 103608814A CN 201280022942 A CN201280022942 A CN 201280022942A CN 103608814 A CN103608814 A CN 103608814A
- Authority
- CN
- China
- Prior art keywords
- value
- similar elements
- combination
- component
- computing equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种用于生成和匹配在标称上相同的初始元件的复杂串联和/或并联组合以实现与初始元件有恒定比率并且彼此之间有恒定比率的复合值的方法和系统。复合值之间的比率能够在几乎任何期望的精确程度上保持恒定,其中潜在误差相对于在不同值的各个元件的构造过程中典型存在的误差大大降低。由于初始元件在标称上相同,值之间的比率主要依赖于初始元件的连接而不是它们的几何、并因此无论制造过程中的变化如何均保持几乎恒定。
Description
本申请要求于2011年3月22日提交的临时申请第61/466,421号的优先权,其全部内容通过引用合并于此。
技术领域
本发明一般地涉及电子电路的设计。更具体地,本发明涉及用于实施半导体电路中的部件值的方法。
背景技术
在半导体芯片或晶片上形成的半导体电路包括多种类型的电路元件,包括例如电阻器、电容器、电感器、晶体管等。这些元件必须以该元件的值或性能满足包含它们的电路的要求的方式在半导体芯片上产生。
任何半导体材料具有特定的特性,且这些特性中的一些使得构造在半导体上的元件将具有全部或部分地依赖于该元件所占据的面积的特定值。包括电阻器、电容器和电感器的多个元件因此通常以鉴于半导体的特性将导致由期望的电路设计指定的特定值的尺寸的几何形状来产生。
例如,假设半导体具有300Ω每平方的片电阻,即,当电流流过半导体表面上1微米乘1微米的面积时,它经受300欧姆(Ω)的电阻。因此,预期以1微米宽度和10微米长度构造的电阻器将具有电阻3000Ω(或者3千欧(KΩ);1000Ω=1kΩ)的电阻,因为经过电阻器的电流沿电阻器的长度方向流过十平方的电阻器。
然而,这种基于某些假设的预期通常被证明是不正确的。例如,元件的物理尺寸容易受到制造过程中的误差或变化的影响,这可能无法可靠地或反复地制作为了获得电阻器的期望值而确定的精确尺寸。假设需要3kΩ的电阻器,所期望的1微米乘10微米的实际尺寸在每个方向上变化0.03微米。基于这种变化的方向,一个实例中,实际电阻器可以是0.97微米宽9.97微米长,对于总面积为9.6709平方微米并且实际电阻为2901.27Ω的情况,变化超过3%。可替选地,电阻器可以是1.03微米宽10.03微米长,对于总面积10.3309平方微米并且电阻为3099.27Ω的情况,同样与期望值的差异超过3%。如果长度和宽度的变化小于0.03微米,或者变化方向相反,则将获得在这两个端值之间的其它电阻。
除了这个有关获得电阻器的精确绝对值的问题之外,有时甚至更期望获得两个电阻的值之间的精确比率。例如,考虑到需要1比1.7273的电阻比率的情况。这可以在理论上通过传统方式在芯片上构造如下两个电阻器来实现:一个电阻器1微米宽且10微米长,而另一个电阻器1微米宽且17.273微米长。
但是,假设:由于制造过程使得这些尺寸都被侵蚀了0.1微米。则第一电阻器将是0.9微米长乘9.9微米宽,面积为8.91平方微米,而第二电阻器将是0.9微米长乘17.173微米宽,面积为15.4557平方微米。由此得到的两个电阻器之间的比率现在为1.7346,而不是所期望的1.7273,误差恰好超过-0.42%。尽管这看起来很小,但是这种误差足以降低半导体芯片上的电路的精度或性能。
此外,电阻器的电阻由于材料的“体电阻”的变化可能与预期的有所不同。这通常是由于用于制作电阻器的硅层的厚度变化所导致,以及由于在制造电阻器时注入硅中的杂质材料的量的变化所导致。
再进一步,关于在半导体芯片上构造元件,需要与材料建立连接。例如,在芯片上构造多晶硅电阻器必须具有接触孔,并且有时在每一端具有不同的掺杂浓度,以用于金属轨迹建立良好接触。接触孔及相关特性引入了“端效应”,这通常是与目标电阻串联的不必要的附加电阻,因此要添加到所设计的电阻值。通常,这种附加电阻在很大程度上依赖于如何准确地在芯片材料中切割接触孔;这也会造成与期望值的差异或误差,产生出比目标电阻高的电阻,并且由于不能精确地得知不必要的端效应电阻,因此难以精确地对不同的值进行匹配。
再次,假设:期望构造比率为1比1.7273的两个电阻器,其中一个电阻器为1KΩ,另一电阻器为1.7273KΩ。即使将电阻器构造为精确的尺寸以得到这些值,如果向每个值加入例如100KΩ的“端效应”,则作为有效的1.1KΩ与1.8273KΩ之间的比率变为1.6612,而不是期望的1.7273,几乎4%的误差。再次地,这会显著地改变期望电路性能。
另一个问题是,芯片设计过程通常包括“放置和布线”阶段。这通常通过软件来自动执行,并且顾名思义,其是由两个步骤组成,放置和布线。第一步骤,放置,涉及确定电路中的部件应当“布置”或应当位于芯片上那些通常有限的空间中的何处。接下来是布线,其中确定在何处放置所布置的元件之间所需的连接。布线步骤的目的在于,在遵守预期的制造过程的规则和限制的同时实施所有期望的连接。
由于放置步骤所确定的元件的位置对用于确定元件之间的连接的布线步骤的能力具有后续的影响,所以放置和布线步骤是相互关联的。因此,在具有不同尺寸的许多元件的电路中,确定元件的最佳位置以及它们的连接可能是很复杂的。
这些问题使得难以在具有精确值的半导体芯片上实施元件,并且更具体地,难以实施在元件值之间有精确比率的多个元件。
发明内容
公开了一种用于生成在标称上相同的初始元件的复杂串联和/或并联组合以实现任意的非平凡复合值的方法和系统。根据本文所公开的那样构建的组合使复合值与初始元件的值之间的比率、以及因此两个复合值之间的比率在高的精确程度上保持几乎恒定,而无论制造过程中的变化如何。
在一个实施例中公开了一种设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的方法,每个部件被构造为一定数目的重复相同元件的组合,所述方法包括:接收用于第一部件的第一期望值和用于第二部件的第二期望值作为计算设备处的输入;由所述计算设备计算用于所述第一部件和所述第二部件的所述期望值之间的比率;接收待用在每个部件中的重复相同元件的所述数目作为所述计算设备处的输入;由所述计算设备确定所接收到的所述数目的重复相同元件的串联和并联连接的可能组合;由所述计算设备基于用于所述重复相同元件的单位值来计算用于每个组合的值;由所述计算设备从所确定的所述组合中识别在所确定的值之间有所述期望比率的两个组合;并且计算用于所述重复相同元件的实际值,所述实际值当与所计算出的所选择的所述两个组合的值相乘时得到所接收到的用于所述第一部件和所述第二部件的所述期望值。
在另一实施例中公开了一种设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的方法,每个部件被构造为一定数目的重复相同元件的组合,所述方法包括:接收用于第一部件的第一期望值和用于第二部件的第二期望值作为计算设备处的输入;由所述计算设备计算用于所述第一部件和所述第二部件的所述期望值之间的比率;接收指示待用在所述第一部件中的重复相同元件的数目的第一元件值以及指示待用在所述第二部件中的重复相同元件的数目的第二元件值作为所述计算设备处的输入;由所述计算设备确定所述第一元件值的数目的重复相同元件以及所述第二元件值的数目的重复相同元件的串联和并联连接的可能组合;由所述计算设备基于用于所述重复相同元件的单位值来计算用于每个组合的值;由所述计算设备从所确定的所述第一元件值的组合中识别用于所述第一部件的组合并且从所确定的所述第二元件值的组合中识别用于所述第二部件的组合,使得所述用于所述第一部件的组合和所述用于所述第二部件的组合在所确定的值之间有所述期望比率;并且计算用于所述重复相同元件的实际值,所述实际值当与所计算出的所选择的所述两个组合的值相乘时得到所接收到的用于所述第一部件和所述第二部件的所述期望值。
在又一实施例中公开了一种设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的方法,每个部件被构造为一定数目的重复相同元件的组合,所述方法包括:接收用于所述多个电路部件的多个值n以及期望最大误差容限作为计算设备处的输入;由所述计算设备根据所接收到的用于所述多个电路部件的所述多个值来确定用于所述重复相同元件的标称值;接收待用在每个部件中的重复相同元件的所述数目作为所述计算设备处的输入;由所述计算设备确定所接收到的所述数目的重复相同元件的串联和并联连接的可能组合;由所述计算设备基于用于所述重复相同元件的单位值来计算用于每个组合的值;由所述计算设备选择一组一个或多个组合作为待用于构造期望部件的组合的初始假设;由所述计算设备计算所述组所选组合的值的比率与所述多个部件的期望值的比率之间的均方根误差;由所述计算设备将所述所选组合中的一个或多个组合重复地替换为其它组合以产生新的一组所选组合、并计算所述新的一组所选组合的值与所述多个部件的所述期望值之间的均方根误差;并且由所述计算设备识别这样的一组组合:该组组合的均方根误差在所述期望最大误差容限内或者是能被找到的最低误差。
在又一实施例中公开了一种用于设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的系统,每个部件被构造为一定数目的重复相同元件的组合,所述系统包括:输入装置、处理器、存储器和输出装置,所述输入装置用于接收用于第一部件的第一期望值和用于第二部件的第二期望值、并且接收待用在每个部件中的相同元件的所述数目作为输入;所述处理器被配置成:计算用于所述第一部件和所述第二部件的所述期望值之间的比率;确定所选择的所述数目的重复相同元件的串联和并联连接的可能组合;基于用于所述重复相同元件的单位值来计算用于每个组合的值;从所确定的所述组合中识别在所确定的值之间有所述期望比率的两个组合;并且计算用于所述重复相同元件的实际值,所述实际值当与所计算出的所选择的所述两个组合的值相乘时得到所接收到的用于所述第一部件和所述第二部件的所述期望值;所述存储器用于存储表示重复相同元件的每个所确定的所述组合以及每个组合的值的数据;所述输出装置用于输出所识别出的所述两个组合以及所计算出的所述相同元件的实际值。
在再又一实施例中公开了一种其上实施有用于使得计算设备执行一种设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的方法的指令的非暂时性计算机可读存储介质,每个部件被构造为一定数目的重复相同元件的组合,所述方法包括:接收用于第一部件的第一期望值和用于第二部件的第二期望值作为计算设备处的输入;由所述计算设备计算用于所述第一部件和所述第二部件的所述期望值之间的比率;接收待用在每个部件中的重复相同元件的所述数目作为所述计算设备处的输入;由所述计算设备确定所接收到的所述数目的重复相同元件的串联和并联连接的可能组合;由所述计算设备基于用于所述重复相同元件的单位值来计算用于每个组合的值;由所述计算设备从所确定的所述组合中识别在所确定的值之间有所述期望比率的两个组合;并且计算用于所述重复相同元件的实际值,所述实际值当与所计算出的所选择的所述两个组合的值相乘时得到所接收到的用于所述第一部件和所述第二部件的所述期望值。
附图说明
图1示出三个电阻器的一个可能组合。
图2示出七个电阻器的一个可能组合。
图3示出十四个电阻器的三个可能组合。
图4示出五个电阻器的一个可能组合。
图5是示出以软件实施的如本文所述的方法的一个可能的实施例的流程图。
图6是示出以软件实施的如本文所述的方法的可替选实施例的流程图。
具体实施方式
本申请描述了一种用于生成在标称上相同的初始元件的复杂串联和/或并联组合以实现任意的非平凡复合值的方法和系统。此外,复合值与初始元件的值之间的比率、以及因此两个复合值之间的比率保持几乎恒定而与制造过程中的变化无关。使用本文描述的技术,芯片设计者可以实施一种不依赖于如上所述那样可能在制造中变化的元件的精确几何差异、而是仅依赖于元件的连接性的元件匹配方法。
在所描述的方法中,算法生成了多个类似的初始二端子元件的并联和串联组合,以产生与初始二端子元件具有固定阻抗关系的二端子复合元件。例如,如果初始元件是1kΩ的电阻器,则该算法配置1kΩ电阻器的多个实例的串联和并联组合以构建具有不同电阻值的复合元件。初始元件的值可以被选择为使得复合元件的实际值是电路设计者所期望的。该算法能够处理可以被设计者容易地可视化的小数目元件的平凡情形、以及需花费长得多的时间来分析的包含较大数目的元件的复杂得多的情形。
众所周知,串联和/或并联连接的具有阻抗的多个元件的连接导致可能不同于所述多个元件中的任何元件的阻抗的等效阻抗;例如,对于本领域技术人员显而易见的是,三个1kΩ电阻器当被串联放置时得到3kΩ的有效电阻,或者当被并联放置时得到333.3Ω的有效电阻。然而,其它组合不是显而易见的;设计者不太可能知道如何将任意数目的电阻器(比如14个,每个都例如为1kΩ)连接成导致4.567kΩ电阻的配置,如果不花费相当大量的时间来设置这种配置的话。
本文描述的方法允许设计者精确地控制不同值的部件之间的比率,而无需依靠按精确值制作每个部件的能力。这是通过使用在标称上相同的元件并且将至少一个所述部件构造为给定数目的相同元件的复杂串联和/或并联连接方案来完成的;在特定限制内,对于所述部件可以获得任何任意值。该方法适用于所有情形,既适用于其中元件全部串联或全部并联并因此可以被表示为简单的整数比(如上所述的1:3或3:1等)的平凡情形,也适用于任何其它非平凡情形,并且可确定导致任意值的组合。
以这种方式构建的具有不同值的元件的组合的匹配相对于现有技术得以大大改进。如上所述,改变元件的物理尺度以实现不同值的现有技术方法当在芯片上精确地制造期望尺寸时易受误差的影响,使得任何给定元件的值以及因此两个元件的比率可能不是所预期的或期望的。
相比之下,由于所描述的方法每次均使用相同的在标称上相同的元件,该方法没有遭受由于尺度不精确所导致的相同的系统误差。此外,由于组合与单个元件相比通常将在芯片上占据较大的面积,所以制造过程中的任何变化更可能均摊在更大的面积上,从而与单个元件中的值的变化相比降低了这种变化对组合的值的影响。因此,即使尺度不精确,每个元件以及因此元件的每个组合在该过程中通常将遭受相同的系统变化,因此元件组合与基本元件的值的比率或者元件的两个组合之间的比率将被保持。
类似地,在本文描述的方法中,增加电阻的上述“端效应”与现有技术相比通常将贡献显著更小的误差。这是因为这种效应通常将随机地散布在较大数目的在标称上相同的元件间,并因此不太可能造成相比于两个单独元件的情形显著的变化。因此,尽管随着任何端效应电阻改变单个元件或组合的总电阻可能改变,但是如上所述那样常常比绝对值更重要的比率如果有改变的话也不会改变很多。
使用相同元件的另一优点是:自动放置和布线软件工具能够更容易地在芯片上对复杂串联和/或并联的元件进行布置和连接。这是因为每个元件(诸如电阻器或其它部件)是被反复使用的同样的在标称上相同的元件;所有的组合使用相同形状的相同元件,区别仅在于连接性,并且这正好适合该放置和布线工具方法。通过使用如本文所述的在标称上相同的元件的串联和/或并联连接,设计芯片布局的潜在繁琐过程由此变得不复杂并且更方便。
例如电阻器、电感器或电容器的两个电元件可以串联或并联连接。已知,两个相同类型的元件的这种串联或并联组合的有效值将不同于任一元件的值。例如,描述了电阻R1和R2的串联连接的有效电阻RS的等式为:
Rs=R1+R2
而R1和R2并联连接的有效电阻RP为:
因此,如果值相同的两个电阻器串联连接,则电阻增大并且串联组合获得每个元件的电阻的两倍。如果两个电阻器并联连接,则有效电阻将是每个元件的电阻的二分之一。
电感器的串联和并联值是通过与电阻器相同的方式来确定的,但是电容却相反。因此,两个电容器C1和C2并联产生的有效电容CP给出为:
CP=G1+C2
而两个电容C1和C2串联的有效电容由下式给出:
为便于参考,这里一般涉及电阻器,应该理解,所描述的方法和装置也可以执行用于电感器和电容器。
即使在所有的元件都基本相同并具有相同的标称值的情况下,元件越多将允许组合越多。因此,三个电阻器可以完全串联,完全并联,或者两个电阻器串联,然后串联的这两个电阻器再与第三个电阻器并联。图1中示出最后一种情况,其中电阻器R1和R2串联,并且电阻器R3与R1和R2的组合并联。(如果电阻器均具有相同的值,则将哪一电阻器指定为R1、R2或R3都没有关系。)
四个电阻器产生更多可能组合;四个电阻器可以全部串联,四个全部并联,三个串联且该串联组合与最后的电阻器并联,或者两对的两个电阻器分别串联并且这两对串联再彼此并联。五个电阻器还将产生更多的组合,以此类推。例如,图2示出7个电阻器的一种可能组合。
关于图1,如果每个电阻器为1kΩ,则从上述等式可以看出,R1和R2的组合导致2kΩ的有效电阻,而将具有2kΩ组合电阻的这两个电阻器与第三个1kΩ电阻器R3并联放置将导致图1的组合的有效电阻为666.67Ω。
类似地,可以使用上述公式计算图2中电阻器组合的值。再次,如果每个电阻器为1kΩ,根据图1的电阻器R1、R2和R3的有效值为666.67Ω。增大电阻器R4和R6与电阻器R1、R2和R3串联会产生666.67Ω+2kΩ=2.667kΩ。将该电阻量布置为与1kΩ的R5并联会产生727.3Ω的有效电阻。最后,向电阻器R1至R6的有效电阻727.3kΩ增大1kΩ的R7得到图2的组合的1,727.3Ω的有效电阻。
如上所述,产生两个电阻值之间的1比1.7273的比率的一种方式是构建在它们的面积之间具有该比率的两个电阻器,例如一个电阻器为1微米宽且10微米长,而另一电阻器为1微米宽且17.273微米长。同样,如上所述,制造中的精度误差可以改变每个电阻器的值,并因此改变它们之间的比率。
从图2中可以看出产生两个电阻值之间的1比1.7273的比率的另一种方式。可以制作1kΩ的第一电阻器,然后不改变形状地制作第二电阻器,即可以指定如图2所示的7个与第一电阻器相同的1kΩ电阻器的组合(或者给定制造过程的情况下尽可能地几乎相同)。
无论1kΩ的电阻器在制造中的任何面积侵蚀或延展,图2的1kΩ电阻器与1.7273kΩ电阻器组合之间的比率将保持在1.7273,因为所有电阻器的形状是相同的并且将经历类似的侵蚀或延展。该比率是根据图2的组合中的电阻器连接推导出的,而不是根据任何调整单个电阻器的长度或宽度的尝试获得的。
类似地,鉴于上述情况中每个电阻器的面积在制造中会变化,由于“端效应”相对于每个电阻器是相同的,使得增加到每个电阻器的电阻相同,因此比率将再次被保持。出于这个原因,采用相同电阻的组合制作期望比率相对不会受到几何误差和电阻端处的接触电阻的影响,并且这是在半导体芯片上进行电阻匹配的更优方式。
可以从上述公式中确定,如果重复的电阻器的标称值改变,则这种电阻器的每个组合的值以相同的百分比改变,使得比率保持相同。例如,如果图1中的每个电阻器改变了10%,从1kΩ变为至900Ω,则组合的值从667Ω变为600Ω,同样改变10%。类似地,如果每个电阻器改变了50%,变为500Ω,则组合的值改变50%,变为333.33Ω。类似的计算将表明图2的组合或者在标称上相同的电阻器的任何其它组合的同样如此。
如上所述,制造过程可能具有变化,所述变化使得难以构建具有精确尺度和特定值的单个元件;然而,通常预期,任何这样的变化自身将跨半导体芯片上的特定电路的小尺寸而保持至少近似恒定。因此,芯片上的任何在标称上相同的元件将具有相对于期望形状和值的相同或几乎相同的变化,所有这些元件或者它们的组合之间的比率将在与如现有技术中那样试图将每个元件构建为期望值的情况相比大得多的程度上保持恒定。
图3示出三个电阻器组合的另一例子。假设:电路需要三个电阻器值,期望这三个电阻器的标称值将为1kΩ、1.83kΩ和876Ω,并且这三个电阻器之间的比率是关键的。鉴于如上所述的制造过程中的变化,制作具有正确长度和宽度的三个单独的电阻器以确保电阻器之间的比率保持恒定将是困难的。
然而,代替试图以精确的这些量制作三个电阻器,可以使用标准电阻器来产生每个都如图3中所示的14个电阻器的三个组合。使用上述公式,对于本领域技术人员显而易见的是,如果标准电阻器被分配单位值,则第二组合具有2的值,使得该组合的有效电阻是标准电阻器的二倍。因此,例如,如果每个电阻器具有1Ω的值,则第二组合将具有2Ω的有效电阻。通过应用上述串联和并联电阻公式还可以确认,对于单位电阻器值,第一和第三组合具有使得所有三个组合具有1比1.83比0.876的期望比率的有效值。因此,为了允许第二组合具有1.83kΩ的有效电阻,每个电阻器应当具有1.83kΩ(期望电阻)除以2(第二组合的值)的标称值,或者915Ω。再次使用上述公式,还可以看出,当每个电阻器具有915Ω的标称值时,第一组合具有1kΩ的有效电阻,并且第三组合具有876Ω的有效电阻,因此这三个组合呈期望比率。
如果这三个组合被制作在单个芯片上,图3中所示的所有52个电阻器将是相同的或几乎相同的,再次预期,制造过程中的任何变化将跨其中实施有这三个组合的单个电路而几乎恒定。如果在制造过程中存在使得每个电阻器的标称值变为例如900Ω的误差,则这三个电阻器组合之间的比率将保持几乎恒定。
为了理解并使用本文所关注的重复元件的复杂串联和/或并联配置,具有一些以数学形式以及绘图形式表示这种结构的方式是有帮助的。本文所描述的算法使用已开发的代数标记法,其允许以数学形式表达这种配置并且允许软件语言执行这种表达形式。
该算法采用具有两个经定义的运算符的前缀标记法。一个运算符“s”表示元件的串联连接,并且另一运算符“p”表示元件的并联连接。每个运算符接受任意数目的操作数。
如本领域技术人员应理解的那样,被认为是数据的“s”或“p”的表达形式是列表结构,列表中的第一项为运算符并且后续项为操作数。从左至右对操作数进行求值,并且对任何列表操作数进行递归求值。因此,作为一个实例,表达式:
(s2(p3))
是三项“s”、“2”和“(p3)”的列表。列表中的第一项是运算符“s”。第二项“2”是“s”的第一自变量,并且第三项“(p3)”是“s”的第二自变量并且本身是列表。
运算符“s”和“p”的自变量是这样的操作数:其或者是“s”和“p”的其它表达式,或者是表示被施加操作数的重复元件的数目的非零基数。例如,表达式“(s4)”表示施加于单个自变量的“s”或串联运算符,基数4表示4个重复元件。通过如上定义的求值器对“(s4)”求值,产生数字4,由此将四个元件布置为串联。
作为另一例子,表达式“(s2(p3))”表示施加于两个自变量的“s”串联运算符。第一自变量为基数2,表示两个重复元件串联布置。第二个自变量为“(p3)”,表示施加于基数3的并联运算符“p”,基数3表示三个重复元件被并联放置,并且然后将这个并联配置布置为与其它两个元件串联。图4中示出所得到的配置。
这个递归分析可以根据需要反复地进行。因此,构造代表任何其它两个表达式的串联或并联组合的表达式的做法相当于反复地构造三项列表,第一项为“s”或“p”,第二项为两个表达式中的第一表达式,并且第三项为另一表达式。
例如,如果两个结构A=(s4)与B=(s2(p3))是以并联构造,则产生列表“(PAB)”,并可以写成:
(p(s4)(s2(p3)))
类似地,串联组合为“(sAB)”,或者:
(s(s4)(s2(p3)))
还可以看出,简化式有时是可能的。例如,在上一个串联组合中,由于A包含4个串联元件,并且A本身与B串联,其中B包含另外两个串联元件,该表达式可能简化为:
(s6(p3))
作为该标记法的另一例子,由于两个电阻R1和R2是串联的,并且该组合然后与另一电阻器R3并联,因此图1的三个电阻器的组合表示为(p1(s2))。图2的组合包含相同的电阻器R1至R3;添加与这些元件串联的电阻器R4和R6会得到:
(s2(p1(s2)))
把这个组合与电阻器R5并联获得如下表达式:
(p1(s2(p1(s2))))
最后,向该组合增加电阻器R7,产生对于图2的总体表达式:
(s1(p1(s2(p1(s2)))))
可以类似地推导出表示图3的组合的表达式。对于1kΩ的组合的表达式为:
(p(s2)(s2(p2(s1(p1(s2))(p1(s1(p2)))))))
对于1.83kΩ,表达式为:
(s1(p(s2)(s1(p(s2)(s1(p(s2)(s1(p(s2)(s2)))))))))
876Ω被表示为:
(s(p2(s2))(p1(s1(p3(s(p2)(p1(s2)))))))
因此,对于任何数目的元件,可以相对直观地确定它们之间的所有可能的串联和并联连接,但是随着元件数目的增加,这种做法变得繁琐且耗时。对于1个元件,当然只有一种配置。两个元件导致两个组合,将元件彼此串联或并联地布置。三个元件可以全部串联或全部并联,或者如图1所示地两个元件彼此串联然后再与第三元件并联。
对于更大的数目,一种确定n个元件的所有可能组合的方式是首先确定数目小于n的元件的所有组合,然后使这些组合与其余元件进行所有可能组合。因此,对于n=4,可以确定三个元件的所有组合,然后使第四元件与这些组合中的每一个进行串联或并联。类似地,可以将两个元件的所有组合与两个元件的所有组合进行串联或并联。从n=1开始,并以这种方式进行下去,可以对于任何n值确定所有的组合。
然而,应当理解,组合的数目呈指数增长,因此在为n=16的情况下,具有大约600,000个可能组合。因此,为了有效地确定和使用多于极少数目的元件的组合,在软件中对这种元件组合进行构造及求值并具有执行计算的处理器是有帮助的。
在一个实施例中,本文所描述的方法和算法实施在以LISP编程语言编写的程序中。运算符“s”和“p”可以表达为LISP中的S-expressions。LISP中的S-expressions是homoiconic,因此运算符可被视为运算符或数据,并且通过将“s”和“p”表达式执行作为适当的数据结构,算法使用这个属性来生成重复元件的所有串联和/或并联组合。
在一个实施例中,例如由电路设计者对待用在每个组合中的一定数目的元件进行选择,然后如上所述那样确定该数目的元件的所有可能组合。以软件实施这一点的一个可能的代码实施例如下:
(在这个例子中,元件是电阻器;如上所述,用于电感器的串联和并联连接的公式与电阻器的相同,但用于计算电容器的串联和并联连接的公式相反;因此,如果元件是电容器,则上述代码需要修改)。
该程序定义了主函数“series-parallel-values”,该主函数产生重复元件的组合并且具有可选自变量n,n为待使用的重复元件的数目。上面的程序列表的第一部分,第1-23行,提供了命名为“join”的函数作为主函数中的局部函数;“join”函数试图简化由主函数所产生的组合的表达式。这将在下面作进一步说明。
程序的主函数首先确定待使用的电阻器的数目是否为一个(参见上面列表的第24行)。如果电阻器的数目为一,则只有一种可能的情形,并且程序返回表示为1个组合列表的退化情形。
如果待使用的电阻器的数目n不为一,通常可能是这种情况,则程序查找出n个电阻器的所有组合。如上所述,这一点是通过查找出小于n的全部数目的电阻器的所有组合(第31行的循环),并且将这些组合与其余电阻器的所有组合进行组合(第34行)。再次对于具有单位值的标准电阻器而言,每个组合的值也得以确定。在本实施例中,由于在LISP的运行,对于整数的除法运算产生有理分数,因此没有由于近似所导致的四舍五入的小数位或误差产生。
因此,再次,如果n=4,则将1个元件的每个组合(再次地,只有一个组合)与其它3个、2个或1个元件的每个组合进行串联和并联。接下来,将2个元件的每个组合与2个元件和1个元件的每个组合构成串联和并联。然后,将3个元件的每个组合与1个元件构成串联和并联。由此,将产生出n个元件的每个可能组合。
在查找这些组合的过程中,函数“series-parallel-values”递归地调用其自身,即,每一次用于确定较小数目的电阻器的组合,直到该较小数目为1。在本实施例中,为了优化该递归调用并且避免冗余的计算,产生数据结构“known-resistor-combinations”。当主函数试图将元件布置为如上所述的组合时,核查“known-resistor-combinations”(第23A行)以确定是否已经产生该组合;如果该组合已被事先产生,则不需要执行函数,而是简单地从“known-resistor-combinations”中重新检索该事先产生的组合。如果该组合尚未事先产生,则执行主函数以产生该组合并且将结果存储在“known-resistor-combinations”数据结构(第42A行)中,以备后续查找。
通过避免重新计算事先已产生的组合而减少所需要的计算次数,使用诸如“known-resistor-combinations”的数据结构将增大程序的效率。然而,对于本文所述方法的使用而言,这种数据结构是可任意选择而并非必须的。
以这种方式计算的所有串联和并联组合的结果被返回(标记法已通过下面将说明的“join”函数被简化,参见第35和36行)并且存储在,例如,哈希表中(第38和39行)。可任选地动态分配哈希表(第27行);再次地,这更加高效,但对于算法而言不是必须的。在本实施方式中,哈希表具有与组合的有理分数相等的关键字(key),即,如上所说明的表示特定组合的代数表达式的值。这些值在第38和39行中被计算。
当所有循环完毕时,哈希表条目被收集,并且关键字和n个元件的所有组合的关联表达式被编译成列表,从“series-parallel-values”函数的调用中返回。此外,如果使用数据结构“known-resistor-combinations”的的话,则随着“series-parallel-values”函数循环的产生,该数据结构“known-resistor-combinations”将包含数目小于n的元件(即,从一个元件至n-1个元件)的所有组合。
在本实施例中,不对基本电阻器输入值。而是如上述所地假设每个电阻器的值为单位值。因此,所返回的组合表中将包含表示每个组合与单位值(或者,用其它术语来说,当每个电阻器具有1Ω值时的有效电阻)的比率的多个数值,因此,在电阻器的情形中,值的范围将从1/n(即n个电阻器并联)到n(即n个电阻器串联)。
考虑上述n=4的例子。由此产生的表中将包含如下信息:
因此,表中的值从1/4(即1/n,表示4个单位值电阻器并联(“p4”))到4(表示4个单位值电阻器串联)。这两个界限值之间的值表示4个电阻所指示的其它可能组合。
本领域技术人员应理解,上述方法中的某些对称性也可以用于缩短为确定n个相同元件的所有可能组合并计算这些组合的值所需要的时间。使用上述n=4的例子将首先理解,1个元件与其它3个元件的所有组合相结合的做法等同于3个元件的组合与其它1个元件相结合的做法。类似地,对于n=16,15个元件的组合与最后一个元件的组合等同于1个元件与其它15个元件的组合后的组合。因此,对于任何数目n,确定1个、2个、3个等元件与其余元件的所有组合之间的所有组合最多只需要确定到n/2的组合,因为对于大于n/2的n个元件的所有组合已确定。上面的代码例子中没有体现这一“捷径”。
此外,正如从上面n=4的表中所看出的那样,除了中间行中的值为1以外,可以看出,第一行中的配置的值是最后一行中的配置的值的倒数,第二行中的值是倒数第二行的倒数,以此类推。还可以看出,每个配置均是具有相反行号的行中的配置的“倒数”,即,如果以“s”替换每个“p”并且以“p”替换每个“s”,则将获得具有相反行号的行中的配置。本领域技术人员可以利用这两种对称性编写需要较少计算的程序,从而比如上所示的LISP列表更加高效。
本文所描述的方法的预期用途之一是识别可用于构建两个(或更多个)部件的两个组合,所述部件在它们之间具有任意比率的值。从上表可以看出,比率可以在四个电阻器的组合中的每个组合的精确分数值之间确定。因此,第一配置(p4)的值与第二配置(p2(s2))的值之间的比率为1/4比2/5,也就是0.25比0.4,或者1比1.6。第一配置的值与最后一个配置(s4)的值之间的比率为1/4比4,或者1比16。类似地,可以计算出表中任意其它配对的两个配置之间的比率。
因此,例如,假设设计者想要具有值为375Ω和833.33Ω、比率为1比2.2222的两个电阻部件。当上面关于四个电阻器的表中的配置对之间的所有比率均被计算出时,将会发现,这些配置中的两个配置之间的比率是1比2.2222。
上面关于四个电阻器的表中第四条目具有配置(p1(s3)),即,三个电阻器串联,该串联与第四电阻器并联,并且当电阻器为单位值时,值为3/4或0.75。表中第七条目具有配置(s1(p1(s2))),即,两个电阻器串联,该串联与第三电阻器并联,并且该组合再与第四电阻器串联,值为5/3or1.6667。当电阻器值是单位值时,这两个配置(表中第4和第7条目)之间的比率是它们在表中所示出的值的比率,即,0.75比1.6667或者1比2.2222。因此,与基本电阻元件的值无关,并且与制造过程中的变化无关,以这些配置构建的电阻值将保持0.75比1.6667或者1比2.2222的比率。
基本的重复电阻器可以构造为任何尺寸(在一些实际的限制内),这依赖于对于两个组合电阻器所期望的实际值。由于在本例子中第一组合电阻器的值要为375Ω,则重复电阻器的标称值可以通过将所期望的375Ω的值除以第二个组合值0.75(以单位电阻器值计算),由此产生500Ω的标称值。因此,以500Ω的标称值制作重复电阻器将产生具有375Ω(即,0.75乘以500Ω)的预期值的第一组合。第二组合将具有所期望的1.667乘以500Ω,或者833.33Ω,或者2.2222乘以375Ω的预期值。如上所述,如果在制造过程中引起基本电阻器的值变化,使得其值不同于500Ω的标称值,则两个组合之间的比率还将保持在2.2222。
上面关于四个电阻器的表具有九个可能的配置。因此,能够产生81个配对,尽管他们中的九对将与其自身配置进行配对,且一些配对会具有与其它配对相同的值。因此可以看出,随着组合中的元件数目的增加,不仅可能组合的数目迅速增加,而且可能的比率的数目甚至增加得更快。
例如,如上所述使用16个元件产生大约600,000个可能组合;该组合数目将导致大约3600亿种可能的配对。因此,在大多数情况下,让处理器或其它计算设备来确定所有可能组合的做法是最为高效的,以上述代码为例,并且让计算设备来确定组合之间的比率并且识别在部件之间提供设计者所期望的比率的组合。
通过这种方式,能够在极度精确的程度上对具有任意比例值的两个部件进行匹配。上述一个例子中示出,根据1至20微米的顺序制造长度和宽度过程中,0.1微米的误差可能会导致两个部件值的比率变化有效分数的百分之一。使用本文所述的方法,可以很容易地使两个部件值的比率精确到百万分之一以内。
例如,假设期望产生两个电阻器的值,一个具有2kΩ的电阻而另一个为2.001kΩ,并且使匹配精确到百万分之五以内。由于如上所示的原因,这仅仅通过调整电阻器的面积的传统制造技术是极难完成的。
然而,再次假设使用16个电阻器。计算设备可以确定如上所述的16电阻器的600,000个可能组合,计算每个这种组合的值,然后计算每一对这种组合之间的比率,并且识别比率最接近于2001比2000的两个组合。事实上,在这种情况下,计算设备将查出,最接近的比率是以上述有理分数的形式存在于具有14/3和667/143的值的组合之间。可以通过代数法确定,这两个值之间的比率以整数的形式减小至2002/2001,或者以十进制的形式降低至2000.99950比2000,与期望比率2001/2000相比误差小于百万分之(ppm)0.250。被识别出的两个表达式为:
(s4(p1(s1(p(s2)(s1(p(s2)(s1(p(s2)(s2)))))))))
和
(s4(p1(s1(p1(s2))(p2(s(p2)(p3))))))
再次地,通过使用用于电阻器串联和并联连接的上述公式,可以确定,对于电阻器为单位值,第一表达式的值为14/3,并且第二表达式的值为667/143。因此,根据该处理,计算设备能够确定使用这两个组合所构造的2kΩ和2.001kΩ的两个电阻器值将获得很好地在期望目标比率的误差容限内的恒定的比率。
返回到这些表达式的分数值上,如上所述,为了从第一组合获得期望电阻2001Ω,重复电阻器的标称值应当是期望值2001Ω除以第一组合的值14/3(以单位电阻器值计算)。2001Ω除以14/3产生428.786Ω的重复电阻器标称值;如果需要,该计算还可以通过计算设备完成。因此,从16个均具有428.786Ω的标定值的电阻器中分别制作的两个组合将产生关于第二组合的期望值2kΩ(即,428.786*667/143)和关于第一组合的2.001kΩ(即,428.786*14/3)。
通过如下事实使得能够达到这个等级的精度:如上所述,以这种方式存在大约180亿种不同的方式将由16个相同元件制作的两个电阻值进行匹配。如有必要可使用更多的元件,因此,以这种方式可以获得几乎任何等级的精度。
现在说明“join”函数。如上所述,表达式:
(s(s4)(s2(p3)))
可以简化为:
(s6(p3))
在某些情况下,还可以简化并联元件的表达式。
虽然简化表达式对于所描述方法的操作和使用不是必须的,但是如果需要,这可以便于设计者阅读表达式。由于这个原因,在一个实施例中,程序包括用于使两个表达式处于串联或并联并且还试图对所产生的表达式进行简化的构造函数。如上所述,每个表达式本身可以是串联或并联的两个表达式的组合。在一个实施例中,这个构造函数,命名为“join”函数,由上述主函数“series-parallel-values”中第1-23行所示出的代码进行定义。
本领域技术人员将看出,“join”函数预计出现三个自变量。第一自变量是“s”或“p”,第二自变量是第一数据结构,而第三个自变量是第二数据结构。注意,第二和第三自变量本身也可以是以“s”或“p”开头的表达式。
一些例子可有助于阐明如上所示的程序的操作。在本实施例中,“join”函数首先确定第二和第三自变量实际上是否仅是整数(上述列表第5行)。如果是,则该程序将表达式简化为两个元件的列表,也就是,第一自变量运算符执行整数之和。因此,操作“(join's34)”通过让运算符“s”执行整数加和的形式来被简化,其中第二自变量是3并且第三自变量是4。这产生了“(s7)”。(在表达式“(join's34)”中,“s”前面的撇号用在LISP中以指示撇号之后的项作为数据处理,而不是作为可执行的运算符来处理。)
接下来,该程序确定第二自变量(第6-12行)或者第三自变量(第13-19行)是否为整数,如果是,则尝试简化。更具体地,如果这些自变量之一是整数,则该算法查看另一自变量是否开始于与该自变量试图结合(join)的函数相同的函数(第8和15行)。
如果该另一自变量不以相同的函数开始,则可以不简化并返回函数和两个自变量的简单组合。例如,在如下表达式中:
(join's3'(p4))
当第二自变量为整数时,第三自变量“(p4)”没有以相同的函数“s”开始,并因此不能被简化,所以该程序简单地返回相同表达式“(s3(p4))”。
另一方面,如果第三自变量开始于与该自变量试图结合的函数相同的函数,则程序确定该相同函数的第一自变量是否为整数(第10行),并且,如果是,则构造并返回以第三自变量修改调用的该相同函数,其中该相同函数的自变量与第一整数自变量相加。因此,例如,如下表达式:
(join's4'(s4(p5)))
第三自变量“(s4(p5))”开始于与第一自变量“s”相同的函数“s”,并且其第一自变量为整数,从而程序返回对该相同的“s”函数的修改调用,与施加于第一自变量“s”函数的“4”相加,因此简化为:
(s8(p5))
如果第三自变量以相同的函数开始,但该相同函数的自变量不是整数,则依然可以如下方式简化:仅将来自第一自变量的整数自变量与第三自变量正试图结合的该相同函数相加(第11行)。因此,在如下表达式中:
(join's4'(s(p3)(s3)))
第三自变量“(s(p3)(s3))”开始于与第一自变量相同的函数“s”,但第三自变量不是执行整数而是执行另一函数。然而,第一“s”函数的自变量可以与第二“s”函数相加,由此得到:
(s4(p3)(s3))
当认为将要结合的第三自变量是整数时,采取与上述类似的一系列步骤(第13-19行)。
如果要加入的自变量均不是整数,则程序将确定要加入的两个元件是否具有相同的函数(第20行)。如果他们具有相同的函数,则程序构造对于具有两组自变量的拼接(concatenation)的通用函数的调用(第2部分,第20行)。因此:
(join'p'(p(s9))'(p(s5)(s2)))
得到:
(p(s9)(s5)(s2))
如果要结合的两个元件(即,第二和第三自变量)不具有相同的函数,则程序确定第一自变量是否与试图结合的一个自变量的函数相同(第21行);如果是,则将第二个自变量的操作数简单地附加于第一自变量函数的自变量列表中。第三自变量遵循类似情况(第22行)。因此:
(join'p'(p3)'(s3))
与第一自变量“p”具有相同函数的第二自变量“(p3)”,因此第二自变量的操作数“3”被添加到第一自变量“p”的自变量列表中并且由此得到:
(P3(s3))
如果这些情况均不适用,则算法简单地返回三个自变量(第23行)。因此:
(join'p'(s2)'(s5))
不能通过上述步骤进行简化,由此程序简单地返回:
(p(s2)(s5))
除了在所有可能的表达式的确定过程中的表达式求值操作之外,在某些情况下能够查找出单个表达式的值是有帮助的。在一个实施例中,用于“s”和“p”的代数的求值器定义在LISP例程中,这里命名为“evaluate-sp-expression”,如下所示:
该求值器预期该表达式由符号“s”或“p”、整数或由求值器递归地执行的另一表达式组成。因此,作为代码考虑,运算符“s”和“p”的操作数是“s”和“p”的其它表达式或者是表示被施加运算符的重复元件的数目的非零基数。
表示图4的组合的表达式“(s2(p3))”的求值产生有理数7/3。可以看出,这与将每个电阻器的值设置为1并使用上述用于串联和并联电阻的公式所获得的结果相同,因为图4的组合的总电阻RT给出为:
在每个R等于1的情况下,其再次等于7/3。注意,运算符“s”和“p”执行并返回有理数,由此能够提供精确的结果并且不涉及近似。
图5是示出了用于在计算设备上实施用于设计具有特定标称值的两个半导体电路部件的上述方法的一个实施例的流程图,其中期望这两个值的比率保持恒定,即使实际值与标称值不同。通过软件来执行所示的步骤;例如,所示的步骤中的一些可以通过上述LISP列表来执行。
在步骤501中,计算设备接收指示例如已由电路设计者确定了的、用于待构建在半导体芯片上的至少第一和第二部件的期望值的输入。在步骤502中,由计算设备计算这两个值之间的比率。
在步骤503中,计算设备还接收指示用于构造第一和第二部件的相同元件的数目n的输入。再次地,这通常由电路设计者基于各种考虑来确定。例如,如上所述,所使用的重复相同电阻器越多,可能的组合就越多,并且可以实现的精确水平就越高。在上述16个电阻器的例子中,再次地,超过600,000个组合是可能的,因此超过3600亿个可能对组合是可能的;预期该对数应当允许精度充分低于如上面例子中那样的百万分之一。另一方面,更多的电阻器占用更大的空间,这在芯片上是受限制的。本领域的设计者应能够在特定情况下做出权衡。
在步骤504中,n个相同元件的所有的可能串联和/或并联组合由计算设备例如通过运行诸如如上所示的算法来自动确定。接着,在步骤505中,假设每个相同元件的值为单位值,使用如上所述的用于串联和并联连接的公式计算每个组合的值,并且将结果存储在数据结构中。
在步骤506中,如上所述,选择如下两个组合:这两个组合的值之间的比率与部件的期望值之间的比率相同。在步骤507中,还如上所述,对于相同元件计算标称值,该标称值当与所选择的组合的值相乘时得到如上所述的期望部件值。
在许多情况下,在设计中将有多于两个的部件将希望在它们之间保持比率恒定,例如,如图3中所示。在这样的情形中,将选择多于两个的组合,其中这些组合的值(再次地,以单位电阻器值计算)被选择为使得所有的期望部件将尽可能接近地相对于彼此维持它们各自的比率。
一种测量部件与期望值匹配的接近程度的方法是计算所选择的组合的值与期望值的均方根偏差。例如,可以计算该组合值与期望值的绝对差的均方根误差。可替选地,可以计算该组合值相对于期望值的百分比差值的均方根误差。其它准则对于本领域技术人员而言是显而易见的;设计者可以选择被认为最适合于给定情况的标准。在任何情况下,为了执行这种计算,必须选择一组部件,即,必须以某种方式识别完整的一组组合。
一种识别潜在的一组组合的方法是首先确定如何构造如上所述的两个部件,然后试图依次地添加其它部件。在每一种情况下,考虑到已经如上所述那样确定了重复相同元件的标称值,因此用于每个其它部件的组合是根据可以与已经设计的部件维持期望比率的方式进行查找的。
该方法的局限性在于,可以构造的值的范围将受制于事先确定的重复相同元件的标称值,由此受到要以所述方式设计的第一组两个部件的选择的影响。如前所述,n个相同电阻器的组合可以产生范围从相同电阻器的标称值的1/n倍(n个电阻器并联)至标称值的n倍(n个电阻器串联)的电阻值。
因此,在上述例子中,如果每个组合中要使用16个相同电阻器,并且对于2000Ω和2001Ω的电阻值来选择第一组两个组合,则重复电阻器的标称值将为428.786Ω。结果,如果然后将这两个组合视为固定的,则要增加的任何其它组合分别将被限制为16个428.786Ω的相同电阻器的组合。这种组合将能够以合理的精度制作出标称范围从428.786除以16(或者大约26.8Ω)至428.786乘以16(或者6860.576Ω)的电阻值。
如果只使用16个这种电阻器的组合,则这些低值和高值将必须用于此范围之外的期望值;例如,1Ω的期望值(或者小于26.8Ω的任何其它期望值)将由提供26.8Ω电阻的组合来表示,并且100kΩ的期望值(或者大于6860.576Ω的任何其它期望值)将由提供6860.576Ω电阻的组合来表示。这些值与期望值之间的差异将因此贡献于通过上述均方根计算所计算出的误差。
因此,还可以看出,可精确地制作的实际值的范围依赖于相同电阻器的标称值。如果将相同电阻器的标称值选定为1Ω,则组合的真实值范围将从1/16Ω(.0625Ω)至16Ω,而如果相同电阻器的标称值为1000Ω,则组合的真实值范围将从62.5Ω至16,000Ω(16kΩ)。
鉴于这种由初始确定重复相同电阻器的标称值所产生的局限性,第一组两个组合相同可能会导致所选择的标称值不能很好地适于组合使用以产生其它期望电阻值。因此,并非首先识别导致相同电阻器的标称值被确定的两个组合,可能优选的是首先识别该标称值。
做到这一点的一种方式是选择重复相同电阻器的标称值作为期望部件值的平均数。作为第一估算,一种方式可以是通过简单地将期望部件值加起来并且除以这些值的数目来试图取算术平均值或者平均数。
然而,这种简单方法的局限性将很快显现。假设:存在有三个期望部件值,其中首先两个部件为100kΩ,并且其第三部件为1kΩ。这三个值的平均值为201kΩ除以3,或者67kΩ。尽管100kΩ电阻可以由16个每个均为67kΩ的电阻器的组合来构造,可以从这种组合获得的最低电阻是通过将所有电阻器并联放置而产生的67kΩ除以16(或者4.1875kΩ)的电阻。4.1875kΩ与另一值的比率和1kΩ的期望值与另一值的比率相比的比率差将增加平方根算法中的显著误差。
认为,对期望电阻值“求均值”的更好方法是对每个值取对数,取对数的平均值,并且将相同电阻器的标称值设置为该平均值是标称值的对数时的那个数值。因此,在上述直观例子中,100,000的对数(以10为底)是5(如上所述,存在两个这种值),并且1000的对数为3,使得三个值的对数的加和为13。因此,这三个值的对数的平均值为13除以3,或者4.333,并且10的4.333数量级为21.544kΩ。
因此,使用这种方法,每个重复相同电阻器的标称值是21.544kΩ,而不是上述简单方法的67kΩ。可以看出,100kΩ的期望值完全处于16乘以21.544kΩ的范围内,同时可以由16个这种21.544kΩ的电阻器制作的最低值为21.544kΩ除以16(再次地,所有16个电阻器并联)或者1.3465kΩ。尽管1.3465kΩ依然大于1kΩ的期望值,但是它明显比以简单方法获得的4.1875kΩ更加接近,并因此产生低得多的平方根误差。
如本例子中那样,通过使用期望值的对数的平均值所获得的重复电阻器的标称值的做法通常应当低于通过仅对期望值求均值所获得的标称值。还如本例子中那样,较低的重复电阻器的标称值将允许组合更紧密地近似于一组期望值中较小的电阻值,同时还保持构造该组期望值中较大的电阻值的能力。
一旦重复电阻器的标称值被选择,用于每个部件的适当组合通过如下方式识别:将期望部件值除以该标称值,然后识别与该结果具有最接近值(以单位值计算,即,1Ω电阻器)的组合。因此,在上述例子中,要通过16个各自具有21.544kΩ标称值的电阻器来构造100kΩ电阻,则应当选择具有以100,000除以21,544(或者4.6417)为单位值的组合。
作为实际问题,尽管电路设计者可能希望以这种方式选择可提供与期望值的最接近匹配的组合,但这通过对计算设备编程以识别组合的方式会更加容易。这可通过如下方式来完成:对计算设备编程,以将每个值分配给组合,并且如上所述那样计算各个值的绝对差或百分比差的均方根误差。然后,计算设备可以改变所分配的组合,并再次计算均方根误差,重复该过程,直到获得在期望误差容限内的一组组合或者获得最小的可能误差容限。如果使用不是均方根的其它标准,计算设备可以被编程以执行这种适于识别最紧密地符合部件的期望值的一组组合的算法。
在一个实施例中,计算设备可以以任意一组组合开始顺序地识别所有可能组组合,并识别具有最小均方根误差的组。在备选实施例中,对于每个组合的期望值,计算设备可以使用如上所述的组合值的表来识别一些有限数目的组合,所述组合的值当乘以重复电阻器的标称值时将产生接近于部件的期望值的值,然后计算设备可以计算这些有限数目的组合的所有组的均方根误差,再次选择具有最小误差的组。
在另一个实施例中,计算设备可以识别一组组合并且计算均方根误差,然后保持被分配给其它期望值的组合固定不变而仅改变被分配给第一期望值的组合,直到识别出导致最小误差的被分配给第一期望值的组合。然后,计算设备类似地改变被分配给第二期望值的组合,同时保持其它组合固定不变,直到识别出导致最小误差的被分配给第二个期望值的组合。计算设备类似地识别导致最小均方根误差的用于每个期望值的组合,直到已经对于每个期望值识别出组合。
图6是示出了用于在计算设备上实施用于设计具有特定标称值的多个半导体电路部件的上述方法的一个实施例的流程图,再次地,其中期望部件值的比率保持恒定,即使实际值与标称值不同。再次通过软件来执行所示的步骤;例如,所示步骤中的一些可以通过上述LISP列表来执行。
在步骤601中,计算设备接收指示例如已由电路设计者确定了的、用于待构建在半导体芯片上的至少第一和第二部件的期望值的输入。在步骤602中,如上所述那样对于重复相同元件确定标称值,例如通过采取期望值的对数的平均值。
在步骤603中,计算设备还接收指示待用于构造多个部件中每个部件的相同元件的数目n的输入。再次地,这通常由电路由设计者确定。
在步骤604中,n个相同元件的所有的可能串联和/或并联组合再次由计算设备例如通过运行诸如如上所示的算法来自动确定。接着,在步骤605中,再次假设每个相同元件的值为单位值,使用如上所述的用于串联和并联连接的公式计算每个组合的值,并且存储结果。
在步骤606中,对于每个期望值识别多个组合。如上所述,计算设备可以尝试为每个部件识别将导致接近该部件的期望值的值的组合,或者可以初始地识别任意一组组合。
在步骤607中,确定该组组合的实际值与参考值的比率相对于期望值与参考值的比率的均方根误差。如果均方根误差在期望误差容限内,则程序可以输出所识别出的组合并终止。
可替选地,在步骤608中,程序可以继而检查是否可以识别具有更小均方根误差的另一组组合,并识别具有最小均方根误差的一组组合。如上所述,这可通过检查所有可能组组合、或者通过对于序列中的每个期望值、在继续寻找用于下一期望值的组合之前寻找给出最小均方根误差的组合。
显而易见的是,这些步骤中的某些步骤可以以不同顺序布置,但不会改变处理结果。例如,接收相同电阻器的数目,确定该数目电阻器的所有组合、以及以单位电阻器计算每个组合的值,这些步骤全部可以在接收期望部件值以及确定相同电阻器的标称值之前完成。本领域技术人员在不改变处理结果的情况下能够确定这些步骤的其它顺序。
本领域技术人员应理解,该方法的其它实施例也是可能的。例如,如上面所指出的,当使用相同标称值的更多重复元件时,由这些元件制作的两个(或多个)组合彼此之间的比率不太可能由于制造过程中的变化而变化。由于这个原因,期望:甚至当期望值可以由更简单的组合表示时,也通常优选地具有包含相同数目的重复相同元件的组合。因此,尽管将一个具有期望值的部件构造为与另一部件相比具有更少相同元件的组合或者在某些情形中甚至构造为单个元件可能是可以的并且甚至由于空间考虑而是有利的,但是这带来如下风险:部件值之间的比率与如上所述那样在每个组合中使用相同数目的元件的情况相比更大地变化。
本文所描述的方法的一个可能用途是,在设计抽头延迟线滤波器时,可以使用一类有限冲激响应(FIR)滤波器,例如,以提供相对于输入信号的期望频率响应。这种滤波器的输出是从均匀间隔的抽头提取的加权电压组合,权重由在各个点连接到延迟线上的电阻器提供。这种滤波器的精度强烈依赖于权重即电阻器值的比率。本领域技术人员还将看到本发明的许多其它潜在应用。
上面已经参考几个实施例对本发明公开的系统和方法进行说明。根据本公开,其它实施例对本领域技术人员来说是显而易见的。所描述方法和装置的某些方面,可以使用不属于上述实施例所描述的配置或步骤的那些配置或步骤来容易地实施,或者可以结合或附加地使用上述元件之外的其它元件。
例如,尽管使用电阻器以为了便于说明,但是如上指出的,电感器、电容器也遵循对于串联和/或并联连接的相同或类似的值计算原则,并且只要如上所述那样调整用于计算串联和/或并联连接的值的公式,可以使用本文所述的技术来实施这些部件。
还应当理解,可以通过多种方式将所描述的方法和装置实施为(包括)工序、装置或者系统。本文描述的方法可以通过用于指示处理器执行该方法的程序指令来实施,并且该指令记录在计算机可读存储介质中,诸如,硬盘驱动器、软盘、光盘(诸如压缩盘(CD)或数字多功能盘(DVD))、闪存等。如果需要,该方法也可结合到硬连线逻辑中。应该指出,可以改变本文所述的方法的步骤顺序,但依然在本发明的范围之内。
基于实施例的这样和那样的变型将涵盖在本发明中,其仅由所附权利要求书限制。
Claims (19)
1.一种设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的方法,每个部件被构造为一定数目的重复相同元件的组合,所述方法包括:
接收用于第一部件的第一期望值和用于第二部件的第二期望值作为计算设备处的输入;
由所述计算设备计算用于所述第一部件和所述第二部件的所述期望值之间的比率;
接收待用在每个部件中的重复相同元件的所述数目作为所述计算设备处的输入;
由所述计算设备确定所接收到的所述数目的重复相同元件的串联和并联连接的可能组合;
由所述计算设备基于用于所述重复相同元件的单位值来计算用于每个组合的值;
由所述计算设备从所确定的所述组合中识别在所确定的值之间有所述期望比率的两个组合;并且
计算用于所述重复相同元件的实际值,所述实际值当与所计算出的所选择的所述两个组合的值相乘时得到所接收到的用于所述第一部件和所述第二部件的所述期望值。
2.根据权利要求1所述的方法,其中,由所述计算设备确定所选择的所述数目的重复相同元件的串联和并联连接的可能组合进一步包括:递归地确定从1个一直到所接收到的重复相同元件的所述数目这些数目的相同元件的串联和并联连接的可能组合。
3.根据权利要求1所述的方法,其中,所述重复相同元件是具有阻抗的元件。
4.根据权利要求3所述的方法,其中,所述重复相同元件是电阻器。
5.根据权利要求3所述的方法,其中,所述重复相同元件是电感器。
6.根据权利要求3所述的方法,其中,所述重复相同元件是电容器。
7.根据权利要求1所述的方法,进一步包括:从所述计算设备输出所识别出的所述两个组合以及所计算出的所述重复相同元件的所述实际值。
8.一种设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的方法,每个部件被构造为一定数目的重复相同元件的组合,所述方法包括:
接收用于第一部件的第一期望值和用于第二部件的第二期望值作为计算设备处的输入;
由所述计算设备计算用于所述第一部件和所述第二部件的所述期望值之间的比率;
接收指示待用在所述第一部件中的重复相同元件的数目的第一元件值以及指示待用在所述第二部件中的重复相同元件的数目的第二元件值作为所述计算设备处的输入;
由所述计算设备确定所述第一元件值的数目的重复相同元件以及所述第二元件值的数目的重复相同元件的串联和并联连接的可能组合;
由所述计算设备基于用于所述重复相同元件的单位值来计算用于每个组合的值;
由所述计算设备从所确定的所述第一元件值的组合中识别用于所述第一部件的组合并且从所确定的所述第二元件值的组合中识别用于所述第二部件的组合,使得所述用于所述第一部件的组合和所述用于所述第二部件的组合在所确定的值之间有所述期望比率;并且
计算用于所述重复相同元件的实际值,所述实际值当与所计算出的所选择的所述两个组合的值相乘时得到所接收到的用于所述第一部件和所述第二部件的所述期望值。
9.一种设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的方法,每个部件被构造为一定数目的重复相同元件的组合,所述方法包括:
接收用于所述多个电路部件的多个值n以及期望最大误差容限作为计算设备处的输入;
由所述计算设备根据所接收到的用于所述多个电路部件的所述多个值来确定用于所述重复相同元件的标称值;
接收待用在每个部件中的重复相同元件的所述数目作为所述计算设备处的输入;
由所述计算设备确定所接收到的所述数目的重复相同元件的串联和并联连接的可能组合;
由所述计算设备基于用于所述重复相同元件的单位值来计算用于每个组合的值;
由所述计算设备选择一组一个或多个组合作为待用于构造期望部件的组合的初始假设;
由所述计算设备计算所述组所选组合的值的比率与所述多个部件的期望值的比率之间的均方根误差;
由所述计算设备将所述所选组合中的一个或多个组合重复地替换为其它组合以产生新的一组所选组合、并计算所述新的一组所选组合的值与所述多个部件的所述期望值之间的均方根误差;并且
由所述计算设备识别这样的一组组合:该组组合的均方根误差在所述期望最大误差容限内或者是能被找到的最低误差。
10.一种用于设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的系统,每个部件被构造为一定数目的重复相同元件的组合,所述系统包括:
输入装置,所述输入装置用于接收用于第一部件的第一期望值和用于第二部件的第二期望值、并且接收待用在每个部件中的相同元件的所述数目作为输入;
处理器,所述处理器被配置成:
计算用于所述第一部件和所述第二部件的所述期望值之间的比率;
确定所选择的所述数目的重复相同元件的串联和并联连接的可能组合;
基于用于所述重复相同元件的单位值来计算用于每个组合的值;
从所确定的所述组合中识别在所确定的值之间有所述期望比率的两个组合;并且
计算用于所述重复相同元件的实际值,所述实际值当与所计算出的所选择的所述两个组合的值相乘时得到所接收到的用于所述第一部件和所述第二部件的所述期望值;
存储器,所述存储器用于存储表示重复相同元件的每个所确定的所述组合以及每个组合的值的数据;以及
输出装置,所述输出装置用于输出所识别出的所述两个组合以及所计算出的所述相同元件的实际值。
11.根据权利要求10所述的系统,其中,所述处理器被进一步配置成:通过递归地确定从1个一直到所接收到的重复相同元件的所述数目这些数目的重复相同元件的串联和并联连接的所有可能组合,来确定所选择的所述数目的重复相同元件的串联和并联连接的可能组合。
12.根据权利要求10所述的系统,其中,待用在所述第一部件中的重复相同元件的数目与待用在所述第二部件中的重复相同元件的数目相同。
13.根据权利要求10所述的系统,其中,待用在所述第一部件中的重复相同元件的数目与待用在所述第二部件中的重复相同元件的数目不同。
14.根据权利要求11所述的系统,其中,所述存储器进一步存储表示比所接收到的所述数目少的数目的重复相同元件的组合的数据。
15.根据权利要求10所述的系统,其中,所述重复相同元件是具有阻抗的元件。
16.根据权利要求15所述的系统,其中,所述重复相同元件是电阻器。
17.根据权利要求15所述的系统,其中,所述重复相同元件是电感器。
18.根据权利要求15所述的系统,其中,所述重复相同元件是电容器。
19.一种其上实施有用于使得计算设备执行一种设计彼此之间具有呈期望比率的标称值的多个半导体电路部件的方法的指令的非暂时性计算机可读存储介质,每个部件被构造为一定数目的重复相同元件的组合,所述方法包括:
接收用于第一部件的第一期望值和用于第二部件的第二期望值作为计算设备处的输入;
由所述计算设备计算用于所述第一部件和所述第二部件的所述期望值之间的比率;
接收待用在每个部件中的重复相同元件的所述数目作为所述计算设备处的输入;
由所述计算设备确定所接收到的所述数目的重复相同元件的串联和并联连接的可能组合;
由所述计算设备基于用于所述重复相同元件的单位值来计算用于每个组合的值;
由所述计算设备从所确定的所述组合中识别在所确定的值之间有所述期望比率的两个组合;并且
计算用于所述重复相同元件的实际值,所述实际值当与所计算出的所选择的所述两个组合的值相乘时得到所接收到的用于所述第一部件和所述第二部件的所述期望值。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161466421P | 2011-03-22 | 2011-03-22 | |
US61/466,421 | 2011-03-22 | ||
US13/414,522 US8453097B2 (en) | 2011-03-22 | 2012-03-07 | System and method for series and parallel combinations of electrical elements |
US13/414,522 | 2012-03-07 | ||
PCT/US2012/029911 WO2012129280A1 (en) | 2011-03-22 | 2012-03-21 | System and method for series and parallel combinations of electrical elements |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103608814A true CN103608814A (zh) | 2014-02-26 |
CN103608814B CN103608814B (zh) | 2016-05-11 |
Family
ID=46878407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280022942.9A Expired - Fee Related CN103608814B (zh) | 2011-03-22 | 2012-03-21 | 用于电元件的串联和并联组合的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8453097B2 (zh) |
EP (1) | EP2689357A4 (zh) |
CN (1) | CN103608814B (zh) |
WO (1) | WO2012129280A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110574200A (zh) * | 2017-04-28 | 2019-12-13 | Ess技术有限公司 | 用于再平衡氧化还原液流电池系统的电解质的方法和系统 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012129271A1 (en) | 2011-03-22 | 2012-09-27 | Ess Technology, Inc. | Finite impulse response filter for producing outputs having different phases |
EP3028194A2 (en) * | 2013-07-30 | 2016-06-08 | ESS Technology, Inc. | System and method for series and parallel combinations of electrical elements |
US9361419B2 (en) | 2013-08-06 | 2016-06-07 | Ess Technology, Inc. | Constrained placement of connected elements |
EP3591548A1 (en) * | 2018-07-06 | 2020-01-08 | Nokia Technologies Oy | Integrated circuits |
US20200410153A1 (en) * | 2019-05-30 | 2020-12-31 | Celera, Inc. | Automated circuit generation |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0990999A2 (en) * | 1998-09-29 | 2000-04-05 | Hitachi, Ltd. | A method and system for predicting a defect ratio of products |
JP2002172668A (ja) * | 2000-12-08 | 2002-06-18 | Toray Ind Inc | キャビティ内流体の解析方法および装置 |
CN101790836A (zh) * | 2007-08-29 | 2010-07-28 | 三菱电机株式会社 | 交流直流变换装置、使用该交流直流变换装置的压缩机驱动装置和空调机 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4586019A (en) * | 1982-09-24 | 1986-04-29 | Analog Devices, Incorporated | Matching of resistor sensitivities to process-induced variations in resistor widths |
US5790334A (en) | 1996-10-02 | 1998-08-04 | International Business Machines Corporation | Circuit and method for optimizing bias supply in a magnetoresistive head based on the thermal properties of the MR head itself |
US5946211A (en) | 1997-02-28 | 1999-08-31 | The Whitaker Corporation | Method for manufacturing a circuit on a circuit substrate |
US6848092B2 (en) | 2002-08-03 | 2005-01-25 | Texas Instruments Incorporated | Layout of networks using parallel and series elements |
US6751784B2 (en) | 2002-08-12 | 2004-06-15 | Texas Instruments Incorporated | Implementation of networks using parallel and series elements |
US7671770B2 (en) | 2008-06-26 | 2010-03-02 | Linear Technology Corporation | Single pass INL trim algorithm for networks |
-
2012
- 2012-03-07 US US13/414,522 patent/US8453097B2/en active Active
- 2012-03-21 WO PCT/US2012/029911 patent/WO2012129280A1/en active Application Filing
- 2012-03-21 CN CN201280022942.9A patent/CN103608814B/zh not_active Expired - Fee Related
- 2012-03-21 EP EP12760969.1A patent/EP2689357A4/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0990999A2 (en) * | 1998-09-29 | 2000-04-05 | Hitachi, Ltd. | A method and system for predicting a defect ratio of products |
JP2002172668A (ja) * | 2000-12-08 | 2002-06-18 | Toray Ind Inc | キャビティ内流体の解析方法および装置 |
CN101790836A (zh) * | 2007-08-29 | 2010-07-28 | 三菱电机株式会社 | 交流直流变换装置、使用该交流直流变换装置的压缩机驱动装置和空调机 |
Non-Patent Citations (3)
Title |
---|
周文胜: "多工器理论与实现", 《中国优秀博硕士学位论文全文数据库 (博士) 信息科技辑》, no. 1, 15 June 2002 (2002-06-15) * |
陈军: "从非线性电容角度考查DE类功率放大器的设计", 《第六届全国高等学校物理实验教学研讨会论文集(下册)》, 31 December 2010 (2010-12-31) * |
魏伟: "一种串联混合有源电力滤波器控制策略", 《高压电器》, vol. 45, no. 5, 31 October 2009 (2009-10-31) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110574200A (zh) * | 2017-04-28 | 2019-12-13 | Ess技术有限公司 | 用于再平衡氧化还原液流电池系统的电解质的方法和系统 |
CN110574200B (zh) * | 2017-04-28 | 2023-06-06 | Ess技术有限公司 | 用于再平衡氧化还原液流电池系统的电解质的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103608814B (zh) | 2016-05-11 |
EP2689357A1 (en) | 2014-01-29 |
WO2012129280A1 (en) | 2012-09-27 |
US8453097B2 (en) | 2013-05-28 |
US20120246607A1 (en) | 2012-09-27 |
EP2689357A4 (en) | 2014-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103608814A (zh) | 用于电元件的串联和并联组合的系统和方法 | |
Jung et al. | Personalized ranking in signed networks using signed random walk with restart | |
CN105631087B (zh) | 用于集成电路布局生成的方法、器件和计算机程序产品 | |
JP2007172258A (ja) | タイミング検証方法及びレイアウト最適化方法 | |
CN112560368A (zh) | 电路仿真方法、装置、电子设备和计算机可读存储介质 | |
US6550046B1 (en) | Method for automated placement of cells in an integrated circuit layout | |
Sanabria-Borbón et al. | Sizing analogue integrated circuits by integer encoding and NSGA-II | |
CN105677645B (zh) | 一种数据表比对方法和装置 | |
US6957400B2 (en) | Method and apparatus for quantifying tradeoffs for multiple competing goals in circuit design | |
US10755008B2 (en) | Circuit comparing method and electronic device | |
CN105593858A (zh) | 用于电气元件的串联和并联组合的系统和方法 | |
US6751784B2 (en) | Implementation of networks using parallel and series elements | |
US20190114381A1 (en) | Method for Parasitic-Aware Capacitor Sizing and Layout Generation | |
JP4673405B2 (ja) | 受動素子設計プログラム、設計装置、および設計方法 | |
Piotrowska | Analysis of fractional capacitor and coil by the use of the Conformable Fractional Derivative and Caputo definitions | |
US20240203655A1 (en) | Equivalent circuit model creation method for multi-terminal capacitors, non-transitory computer-readable medium including equivalent circuit model creation program, simulation method, and simulation device | |
Kim et al. | Efficient implementation of a planar clock routing with the treatment of obstacles | |
US20240202414A1 (en) | Equivalent circuit model creation method for multi-terminal capacitors, non-transitory computer-readable medium including equivalent circuit model creation program, simulation method, and simulation device | |
CN116341472A (zh) | 半导体集成电路的设计方法、电路设计系统及控制程序制品 | |
Armour et al. | Geometric classification of 4-dimensional superalgebras | |
US20130185401A1 (en) | Configuration management device, configuration management method, and configuration management program | |
Xu et al. | New theoretical bounds and constructions of permutation codes under block permutation metric | |
RU2534368C2 (ru) | Способ уплотнения структуры данных префиксного дерева | |
US20050183048A1 (en) | Method to simulate the influence of production-caused variations on electrical interconnect properties of semiconductor layouts | |
US20140285012A1 (en) | Electrically Programmable Electronic Load |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160511 Termination date: 20190321 |
|
CF01 | Termination of patent right due to non-payment of annual fee |