数十年来,微波设计人员在设计中一直运用优化方法来提高和集中电路的性能。得益于过去十年间开发出的一些新技术,现在模拟IC设计人员也能够很容易地建立并高效地在其设计上进行优化。
不同于以往的电路优化器必需主要在批模式 (batch mode)下进行单调冗长的设置和运行,这些更新颖的解决方案是专门设计用来使电路设计创建阶段的设置和交互式使用更加便捷轻松。虽然许多解决方案只包含一种算法,但有些工具现在可提供许多的优化算法和方法,可根据问题的实际情况和设计空间宽度来予以具体运用。其中许多算法是从一个用户定义初始点开始,在设计空间进行搜索寻找局部最优点。另外还有一些方法则能够搜索整个设计空间寻找全局最优点。
让我们来分析一个应用实例,该例中模拟IC的要求是把中间宽带信号放大到2GHz。作为一个运算放大器,这个IC总是用于闭环结构,在这些频率下,实乃一个真正的挑战。因此,信号通过放大器后的相移必须保持在最小。由于这种高频要求,该放大器将采用60GHz硅锗技术来实现。
这种放大器旨在满足或超越带宽和增益要求,同时把功率减至最小,并保持稳定性。的确,这些要求彼此间非常矛盾。单单满足这些规格要求,设计人员就可能需要耗费数小时甚至数日的时间,更不用说寻找最佳解决方案了。通常,为节省时间起见,设计人员不得不勉强接受一种没有发挥设计最大潜力的勉强可接收的解决方案。而这正是优化能真正发挥优势的地方。
除带宽以外,还必须考虑到增益、功率和稳定性等其它要求。在本例中,电源抑制比和优先直流偏移也都是优化中的权衡因素。这些目标大部分为不均等约束条件,须小于或大于某一目标值或线段。
定义了测量参数之后,设定优化目标就很容易了。用户只需简单地挑选优化进程(optimization session)中需要的测量参数,并选择是使其小于、大于还是等于某个值即可(适用的话,也可以是在某个频率或时间范围上的某个取值范围)。
一旦这些目标、权值、设计参数和约束被定义好,优化器就准备运行了。由于该放大器具有离散设计参数,故可以应用指针算法或随机算法。本例中指针算法更适合,因为这种算法一般对仿真运行时间代价高昂的非线性问题更有效。优化器运行50次迭代后分析结果将发现,代价函数(cost function)得到充分改善。进行最终调节之后,优化器耗时30分钟左右共运行100次迭代以进一步优化那些参数。
在这一点上,可通过细化目标权值来提高性能,代价是牺牲其它一些要求。而且,随优化进程的继续,某些设计参数的重要性降低,然后不再有用。再增加100次迭代运行/迭代加细,继续优化过程,最终得到总体权衡后的选项。这种交互作用对最大限度地实现优化是至关重要的。该优化进程共需好几个小时,但设计者确信能够实现全面的权衡,使放大器的性能达到极限。