论文部分内容阅读
摘 要:模拟集成电路的设计可以转化为多目标优化问题,电路的性能指标就是多目标优化时的目标函数,而实现这一方法的关键是多目标优化算法。文中采用自适应加权和算法,该算法可准确、高效地求出Pareto最优前沿。采用该算法,以一个两级运算放大器为例,给出了自适应加权和算法的优化结果。
关键词:模拟集成电路;自适应加权;多目标优化;Pareto最优前沿
中图分类号:TM352 文献标识码:A 文章编号:2095-1302(2016)10-00-02
0 引 言
一直以来,人们都想实现模拟集成电路设计的自动化,但考虑到模拟集成电路性能指标多,各性能指标间互相影响等因素,使得模拟集成电路的自动化进程远远落后于数字集成电路,模拟集成电路已经成为制约集成电路发展的瓶颈。随着技术的发展,片上系统将模拟集成电路与数字集成电路整合到一块芯片上。但人们对模拟集成电路的自动化研究却从未中断过,同时也取得了一些成果,其中基于优化的设计方法因适用范围广而受到了人们的青睐。
基于优化的设计方法将模拟集成电路的设计看作是多目标优化问题,电路设计时的性能指标如增益、带宽、相位裕度等就是多目标优化的目标函数。通过多目标优化算法求解出电路目标空间的Pareto前沿,该前沿就是电路各种性能指标折衷后的最优前沿,允许电路设计者从一组相互冲突的设计指标中做出最佳选择。
基于优化的设计方法的核心是多目标优化算法,解决多目标优化问题的常用算法是加权和算法[1],该算法容易理解、操作简单,但是该算法不能求出Pareto前沿上位于凹区间内的解,而当权值均匀分布时,Pareto前沿上凸区间内的解分布不均匀[2]。本文采用了自适应加权和算法,该算法在加权和算法的基础上改进而来,克服了加权和算法的上述缺点。
1 自适应加权和算法原理
自适应加权和算法[3]的权值系数没有预先确定,而是通过所要求解问题的Pareto前沿曲线获得。首先用传统加权和算法产生一组起始解,然后在目标空间确定需要细化的区域。将待细化区域看作可行域并且对该区域施加不等式约束条件,最后用传统加权和方法对这些需要细化的子区域进行优化。当Pareto前沿上的所有子区域长度达到预定值时,优化工作完成。
图1所示的自适应加权算法与传统加权和算法进行了对比,说明了自适应加权和算法的基本概念。真正的Pareto前沿用实线表示,通过多目标优化算法获得的解用黑圆点表示。在该例中,整个Pareto前沿由相对平坦的凸区域和明显凹的区域组成。解决这类问题的典型方法就是加权和算法,该算法可以描述成如下形式:
上式中描述的是两个优化目标的情形,J1(x)和J2(x)分别为两个目标函数,sf1,0(x)和sf2,0(x)分别为对应的归一化因子,h(x)和g(x)分别为等式约束条件和不等式约束条件。
图1(a)为采用加权和算法后解的分布,可以看出大部分解都分布在anchor points和inflection point,凹区间内没有求出解。该图反映了加权和算法的两个典型缺点:
(1)解在Pareto前沿曲线上分布不均匀;
(2)在Pareto前沿曲线为凹区间的部分不能求出解。
因此尽管加权和算法具有简单、易操作的优点,但上述缺点却限制了其应用,这些固有缺陷在实际多目标优化设计问题中频繁出现。图1描述了本文所提出的自适应加权和算法的总体流程以及基本概念。首先根据加权和算法得到一组起始解,如图1(a)所示,通过计算目标前沿空间上相邻解的距离来确定需要进行细化的区域,如图1(b)所示,该图中确定了两个需要进行细化的区域。在确定需要进行细化的区域分别在平行于两个目标方向上添加额外的约束,如图1(c)所示,在该图中向减小方向J1添加的约束为1,J2减小方向添加的约束为2。对细化后添加完约束的区域用加权和算法优化,得出新解,如图1(d)所示,其中加权和算法求解最优解时采用Matlab中的fmincon函数。从该图中可看出,细化区域内产生了新解,Pareto前沿上解的分布较之前更加均匀,且求出了凹区域内的解,继续细化能够找出更多的解,Pareto前沿上的解也将分布地更加均匀。自适应加权和算法的流程图如图2所示。
2 两级运放设计实例
以一个带米勒补偿的两级运放[4]为例,说明自适应加权和算法的多目标优化设计。两级运放电路图如图3所示。
电路的各项性能指标如表1所列。
电路优化过程中采用工作点驱动[5,6]的设计方法,电路的设计变量为电路直流工作点上一组独立的电压、电流。电路性能通过方程获得,但方程中的小信号参数通过对工艺库进行模糊逻辑建模[7,8]得到,使得计算速度提高的同时保证了计算精度。两级运放电路的优化结果如图4所示。
图为算法迭代五代后的优化结果,由图可以发现,经过五代的优化迭代,求出的最优解在Pareto前沿上分布均匀。在同一电路中,单位增益带宽的增加与摆率的增加都会使功耗增加,而电路功耗降低导致的结果是电路的面积增加,或通过牺牲面积来换取低功耗,牺牲面积换取电路的带宽增加。这些结果与电路理论相吻合,同时也再次说明了模拟电路设计过程中的折衷以及模拟集成电路设计的复杂性。
3 结 语
自适应加权和算法能求出位于凹区间内的最优解,并且最优解分布均匀。本文通过两级运放电路验证了算法的优化效果,最终得到了满意的优化结果。
参考文献
[1]阳明盛,罗长童.最优化原理、方法及求解软件[M].北京:科学出版社,2010:92-94.
[2]I.Das, J.E. Dennis. A closer look at drawbacks of minimizing weighte dsums of objectives for Pareto set generation in multicriteria optimization problems [J]. Structral Optimization, 1997(14):63-69.
[3]I. Y. Kim, O. L. de Weck. Adaptive weighted-summethod forbi-objective optimization:Paretofrontgeneration [J]. Struct Multidisc Optim, 2005(29):149-158.
[4]Razavi B. Design of analog CMOS integrated circuits [M]. New York: Mc Graw-Hill, 2001.
[5]陈晓,郭裕顺.工作点驱动的模拟集成电路优化设计[J].杭州电子科技大学学报,35(6):18-22.
[6]Guerra-Gomez I, McConaghy T, Tlelo-Cuautle E. Operating-point driven formulation for analog computer-aided design [J]. Analog Integrated Circuits and Signal Processing, 2013, 74(2):345-353.
[7]陈晓.工作点驱动的模拟集成电路优化设计[D].杭州:杭州电子科技大学,2015.
[8]Yen J, Wang L, Gillespie C W. Improving the interpretability of TSK fuzzy models by combining global learning and local learning [J].Fuzzy Systems, IEEE Transactionson, 1998, 6(4):530-537.
关键词:模拟集成电路;自适应加权;多目标优化;Pareto最优前沿
中图分类号:TM352 文献标识码:A 文章编号:2095-1302(2016)10-00-02
0 引 言
一直以来,人们都想实现模拟集成电路设计的自动化,但考虑到模拟集成电路性能指标多,各性能指标间互相影响等因素,使得模拟集成电路的自动化进程远远落后于数字集成电路,模拟集成电路已经成为制约集成电路发展的瓶颈。随着技术的发展,片上系统将模拟集成电路与数字集成电路整合到一块芯片上。但人们对模拟集成电路的自动化研究却从未中断过,同时也取得了一些成果,其中基于优化的设计方法因适用范围广而受到了人们的青睐。
基于优化的设计方法将模拟集成电路的设计看作是多目标优化问题,电路设计时的性能指标如增益、带宽、相位裕度等就是多目标优化的目标函数。通过多目标优化算法求解出电路目标空间的Pareto前沿,该前沿就是电路各种性能指标折衷后的最优前沿,允许电路设计者从一组相互冲突的设计指标中做出最佳选择。
基于优化的设计方法的核心是多目标优化算法,解决多目标优化问题的常用算法是加权和算法[1],该算法容易理解、操作简单,但是该算法不能求出Pareto前沿上位于凹区间内的解,而当权值均匀分布时,Pareto前沿上凸区间内的解分布不均匀[2]。本文采用了自适应加权和算法,该算法在加权和算法的基础上改进而来,克服了加权和算法的上述缺点。
1 自适应加权和算法原理
自适应加权和算法[3]的权值系数没有预先确定,而是通过所要求解问题的Pareto前沿曲线获得。首先用传统加权和算法产生一组起始解,然后在目标空间确定需要细化的区域。将待细化区域看作可行域并且对该区域施加不等式约束条件,最后用传统加权和方法对这些需要细化的子区域进行优化。当Pareto前沿上的所有子区域长度达到预定值时,优化工作完成。
图1所示的自适应加权算法与传统加权和算法进行了对比,说明了自适应加权和算法的基本概念。真正的Pareto前沿用实线表示,通过多目标优化算法获得的解用黑圆点表示。在该例中,整个Pareto前沿由相对平坦的凸区域和明显凹的区域组成。解决这类问题的典型方法就是加权和算法,该算法可以描述成如下形式:
上式中描述的是两个优化目标的情形,J1(x)和J2(x)分别为两个目标函数,sf1,0(x)和sf2,0(x)分别为对应的归一化因子,h(x)和g(x)分别为等式约束条件和不等式约束条件。
图1(a)为采用加权和算法后解的分布,可以看出大部分解都分布在anchor points和inflection point,凹区间内没有求出解。该图反映了加权和算法的两个典型缺点:
(1)解在Pareto前沿曲线上分布不均匀;
(2)在Pareto前沿曲线为凹区间的部分不能求出解。
因此尽管加权和算法具有简单、易操作的优点,但上述缺点却限制了其应用,这些固有缺陷在实际多目标优化设计问题中频繁出现。图1描述了本文所提出的自适应加权和算法的总体流程以及基本概念。首先根据加权和算法得到一组起始解,如图1(a)所示,通过计算目标前沿空间上相邻解的距离来确定需要进行细化的区域,如图1(b)所示,该图中确定了两个需要进行细化的区域。在确定需要进行细化的区域分别在平行于两个目标方向上添加额外的约束,如图1(c)所示,在该图中向减小方向J1添加的约束为1,J2减小方向添加的约束为2。对细化后添加完约束的区域用加权和算法优化,得出新解,如图1(d)所示,其中加权和算法求解最优解时采用Matlab中的fmincon函数。从该图中可看出,细化区域内产生了新解,Pareto前沿上解的分布较之前更加均匀,且求出了凹区域内的解,继续细化能够找出更多的解,Pareto前沿上的解也将分布地更加均匀。自适应加权和算法的流程图如图2所示。
2 两级运放设计实例
以一个带米勒补偿的两级运放[4]为例,说明自适应加权和算法的多目标优化设计。两级运放电路图如图3所示。
电路的各项性能指标如表1所列。
电路优化过程中采用工作点驱动[5,6]的设计方法,电路的设计变量为电路直流工作点上一组独立的电压、电流。电路性能通过方程获得,但方程中的小信号参数通过对工艺库进行模糊逻辑建模[7,8]得到,使得计算速度提高的同时保证了计算精度。两级运放电路的优化结果如图4所示。
图为算法迭代五代后的优化结果,由图可以发现,经过五代的优化迭代,求出的最优解在Pareto前沿上分布均匀。在同一电路中,单位增益带宽的增加与摆率的增加都会使功耗增加,而电路功耗降低导致的结果是电路的面积增加,或通过牺牲面积来换取低功耗,牺牲面积换取电路的带宽增加。这些结果与电路理论相吻合,同时也再次说明了模拟电路设计过程中的折衷以及模拟集成电路设计的复杂性。
3 结 语
自适应加权和算法能求出位于凹区间内的最优解,并且最优解分布均匀。本文通过两级运放电路验证了算法的优化效果,最终得到了满意的优化结果。
参考文献
[1]阳明盛,罗长童.最优化原理、方法及求解软件[M].北京:科学出版社,2010:92-94.
[2]I.Das, J.E. Dennis. A closer look at drawbacks of minimizing weighte dsums of objectives for Pareto set generation in multicriteria optimization problems [J]. Structral Optimization, 1997(14):63-69.
[3]I. Y. Kim, O. L. de Weck. Adaptive weighted-summethod forbi-objective optimization:Paretofrontgeneration [J]. Struct Multidisc Optim, 2005(29):149-158.
[4]Razavi B. Design of analog CMOS integrated circuits [M]. New York: Mc Graw-Hill, 2001.
[5]陈晓,郭裕顺.工作点驱动的模拟集成电路优化设计[J].杭州电子科技大学学报,35(6):18-22.
[6]Guerra-Gomez I, McConaghy T, Tlelo-Cuautle E. Operating-point driven formulation for analog computer-aided design [J]. Analog Integrated Circuits and Signal Processing, 2013, 74(2):345-353.
[7]陈晓.工作点驱动的模拟集成电路优化设计[D].杭州:杭州电子科技大学,2015.
[8]Yen J, Wang L, Gillespie C W. Improving the interpretability of TSK fuzzy models by combining global learning and local learning [J].Fuzzy Systems, IEEE Transactionson, 1998, 6(4):530-537.