智能优化算法在集成电路设计中的应用研究

2015-10-17 20:52:29方惠蓉
科技创新导报 2015年22期
关键词:优化算法集成电路优化

方惠蓉

摘 要:随着科技的进步,集成电路方面的工艺也在持续发展,使得集成电路进行相关设计变得更加具有难度,而实现人工方法来进行相关集成电路的设计,需要投入更多的经历和成本。该文对智能优化的多种算法进行分析,结合各自的特点,将其引入到集成电路的设计中,对电路的性能进行优化分析,提高了电路设计效率,较好地解决了集成电路中存在的多指标冲突问题。

关键词:优化算法 集成电路 优化 设计

中图分类号:G71 文献标识码:A 文章编号:1674-098X(2015)08(a)-0044-04

由于大量芯片制造技术变革,使得集成电路具有更加庞大的规模,在片上系统有更多复杂性的设计,要求芯片在进行设计时,不光有相应的集成电路知识,还要能够进行更加快捷的电路设计。在进行相应的电路设计时,需要权衡各个性能指标,将其最优性能发挥出来,使用更多目标化的领域进行电路优化,还需要权衡各个目标,保证达到最优化的同时,不会消耗各自的性能,保证各个目标间不存在恶劣影响,并互相保证最优化功能[1]。

对于系统复杂性的设计,通过对设计过程的加速,来进行相应计算机的辅助综合性分析,包括对电路进行模拟、射频等办法。数字电路能够更加简单的将不同逻辑层次进行抽离,提高电路的自动分布。模拟电路设计过程,因为种类繁多,结构差异巨大,设计需要大量的人力物力和技术指导。在一个小的芯片中,射频电路虽然占用面积小,但是设计成本和设计时间却要超出想象,其内产生的相应寄生效应,会导致电路的失真,无疑对电路优化增加阻碍。智能优化算法通过自然界的生物群体进行相关智能表现的一系列现象,并能够设计出较为基础的优化算法,并同生物一样,能够将集成电路进行更加优化的智能设计,极好的调整自我,来适应周围环境变化。有效地将智能算法在各种大范围的电路设计中进行应用,可以更好地增加电路设计效率,解决集成电路中存在的多冲突指标。还能够发挥出自身潜在特点,提供设计者相应的数据库进行电路方面的设计工作。

1 智能优化算法

人们利用自然界来认识更多的事物,并通过事物的来源进行想象和创造。智能优化算法也就是基于自然界,进行适应性启发,从而模拟进化出来的利用计算机进行表达的方法。智能优化算法具体可以包括模拟退火、禁忌搜索、群智能优化等,能够通过各种模拟自然界的相关程序,扩大搜索范围,具有较强的全局搜索特点,可以得到更为优化的解决传统问题的办法,从任何研究角度,都能提供较为新颖的解决办法。

1.1 禁忌搜索

禁忌搜索算法是通过对人类的大脑进行记忆启发的算法,具有更加广阔的搜索范围,有全局搜索的功能[2]。利用十二表法来锁住搜索区域,通过相应的禁忌准则来减少重复搜索的工作量,释放禁忌中的优良个体,具有多样性的搜索功能,减少系统陷入僵局,寻找到最适合的全局最优。

1.1.1 流程

禁忌搜索算法需要寻找到一个较为可行的点作为当前的初始解,再通过对其所在结构的函数邻域解来进行相关邻域的创建工作,随后选出一定的邻域解作为候选[3]。如果选出的候选是最优目标,测得结果比搜索出来的最优还好,就成为“超过预想状态”,可以忽略其禁忌特点,用其作为当前解,填入禁忌中,修改每任禁忌对象;如果选出的候选不是最优目标,那么这一结果就不能够出现在禁忌中,忽略禁忌中的最优解和当前解间的差异,将其填入禁忌中,改动每任紧急对象,反复搜索,直至找到“超过预想状态”。具体的禁忌算法流程见图1。

1.1.2 关键要素

完整的最优算法通常包括多种要素,当然禁忌算法也如此,这些要素都会影响紧急搜索是否能够找到最优解。十二表法主要包括禁忌表、移动与邻域、适配值函数、对象、长度、初始解、候选解、藐视、终止准则等[4]。

(1)初始解,也就是进行搜索时的最初状态,初始解是通过随机办法生成的,遇到复杂约束时,随机生成的初始解就不一定可行,因此具有很大的局限性。对于初始解的选取,在一个集成电路的设计中,占据较为重要的地位,选定合适的初始解,能够有效降低工作量,增加搜索效率和搜索质量。

(2)移动与邻域。一个生成新的最优解的过程就是所谓的移动。移动通常需要依据具体情况进行针对性的分析[5]。邻域就是利用当前所解,通过一些列的移动产生的新的最优解,领域主要视具体情况而定,而邻域结构能够高质量的保证其搜索产生的最优解,从而增加算法的效率。

(3)候选解作为当前领域解中的最优解,其范围大小通过搜索速度来确定。遇到较大规模的问题时,候选解的范围则会变大,结合邻域搜索的速度,通常只用当前解作为候选集。

(4)适配值函数类似于遗传算法中的适应度函数,主要是为了评价单个个体的优劣情况。通常适配值函数都会改变目标函数来选择,当遇到的目标函数具有较大的计算量时,需要简单的改进适应算法,只要能够将两者保持在一定范围内,就可以当做适配值函数。

(5)禁忌表作为设计禁忌对象时的特有结构,能够有效防止搜索陷入重复的死循环僵局,也能够保证算法不会拘泥在局部最优解之内[6]。而禁忌对象和长度作为紧急表中的两个主要因素,前者影响表内的变化,通常改变这些元素能够有效避免其搜索到的结果是局部最优解,可以使用状态本身,后者是适配值,当做禁忌对象;而后者则表示了禁忌表的范围。

(6)藐视准则,代表的是一种渴望与破禁的水平[7],当移动后的解要优于最优解时,就可以进行移动,不论该结果是否存在于禁忌表之中。满足这个条件,就是藐视准则。通常情况下,这一准则就是为了预防遗失最优解而设立的。

(7)终止准则,当使用禁忌法进行搜索时,找不到最优解,也就是说搜索到的结果不能够保证是全局最优解,也不能够利用目前已知的数据进行判断,所以需要使用终止准则进行停止搜索的工作。

1.1.3 特点和应用

同智能优化的其他算法比较,禁忌优化算法能够更好的跳出思维的局限,利用全局进行搜索,并且该算法可以接受一定的差解,可以很好的进行局部搜索,又兼顾全局搜索[8]。而禁忌优化算法的缺点则是对于初始解和邻域的依赖程度较大,不能够很好的进行串行算法,降低了全局搜索的能力,多个关键性参数导致其并行算法的影响小,一旦出现不当的设置,很容易降低整体算法的计算能力。由于禁忌优化算法能够更好的解决小规模问题的优化,所以对于最短时间内解决在设计超大规模的集成电路芯片问题时,具有较多的应用,在生产、组合、电路设计、神经网络等领域应用较为广泛,并有很多函数方面的全局最优解研究,通过不断改进禁忌算法,能够拥有更加广泛的适用范围。近年来,对于模拟退火算法同禁忌优化算法结合的方案也有一定程度的研究,利用二者配合使用的混合式搜索算法,能够较好的解决相关问题,并进行算法的优化工作。

1.2 模拟退火算法

模拟退火算法是一种利用概率来接收新事物的Metropolis准则[9]。进行组合间最优解的寻找工作,主要的思想是根据固体物质在退火时,依据温度的变化,选出的最高熵值(即内部无序状态),熵值下降(即粒子逐渐出现一定的规律),通过这一过程进行温度的平衡状态,从而达到基本温度状态,也就是最低熵值(即固体内部最低内能),这一过程同寻求最优解的过程极为相似,概率论上利用退火过程进行模拟来解释相关模型。

1.2.1 流程

模拟退火算法开始于一个较高温度,随着温度的降低,呈现一种跳跃的征象,利用目标函数搜索全局,寻找全局最优解[10]。模拟退火算法可以说是一种能够进行多问题解决的优化办法,基本上能够进行全局优化。

(1)Metropolis准则,假设一个系统的自由能等于系统内能与系统温度的差值,用公式(1)代表,s是系统的熵。假设恒温系统的两个状态是i和l,使用公式(2)和(3)表示。

F=E-Ts (1)

Fi=Ei-Tsi (2)

Fl=El-Tsl (3)

通过计算可以得出,△F=Fl-Fi=Ei- El-(Tsi+Tsl)=△E-T△s。当系统从状态l变成状态i时,△F则会小于正常,说明能量明显减少,熵值明显增加,对自身变化较大。因此,温度恒定,系统会把自身的非平衡状态转变为平衡状态,由温度决定两因素的地位。假设微粒的原始状态l是固体物质当前所处的状态,使用能量状态Ei来表示,随后利用一个抗干扰装置,随机改变微粒位置,产生了一个新的能量状态El,如果Ei

R=Exp[-(Ei- El)/kT] (4)

T代表绝对温度,k是常数,R<1。在[0,1]区间内,随机产生的数s,如果出现sR,则不采用。当新状态i是一个比较重要的状态,则i能够取代l作为当前状态,否则l仍是当前状态,遇到微粒的大幅度变化时,系统的能量逐渐降低至一个较为平稳的状态,固体概率分布可以用公式(5)表示。

Pl=1/z*exp(-El/kT) (5)

Pl代表系统处于微观l的概率,而exp(-El/kT)是分布因子。当处于较高温度时,系统能够接收能量差距极大的新状态,所以,当温度处于一个较低的水平时,系统接收的新状态要求仅有极小幅度的变化,所以对于不同温度而言,具有相同的热运动原理,但是温度是零摄氏度时,任何的Ei>El均是不成立的。

(2)流程,假定初始温度是T0,初始点是X0,计算初始点的函数值是f(X0),随机产生的扰动为△X,新点则变为公式(6)。计算该函数f(X1)和该函数同初始值之间存在的差异,即公式(7)。

X1=X+△X (6)

△f=f(X1)-f(X0) (7)

如果差异函数△f低于正常,则下一次进行退火的模拟初始点可以使用新的点来代替;如果差异函数△f高于正常,则需要计算新点接收的概率,即公式(8)。

P(△f)=exp(-△f/kT) (8)

在[0,1]区间内,伪随机产生的数s,如果P(△f)低于s,则下一次进行退火的模拟初始点可以使用新的点来代替,否则需要重复Metropolis准则,直到选出合适的数值为止。

1.2.2 关键要素

(1)状态空间和邻域函数。状态空间也就是搜索空间,包括所有编码后产生的可行解。在进行候选解的创建时,需要尽可能使用原始状态函数进行创建,从而充满整个空间[11]。

(2)状态转移概率,也就是接受概率,使用Metropolis准则,在进行可行解的转化过程时,也受到T(温度参数)的影响。

(3)冷却进度表T,是从高温T0到低温冷却时进行相应管理的一个进度表。如果使用T(t)来表示温度,经典的模拟退火算法进行冷却的方式使用公式(9)表示。快速冷却法则可以用公式(10)表示。

T(t)=T0/lg(1+t) (9)

T(t)=T0/(1+t) (10)

以上两种办法都能够降低模拟退火点至全局最小。冷却进度表也说明该算法的效率,并且要想得到最佳组合,需要进行大量实验才能够得到。

(4)初始温度,如果具有较高的初始温度,那么会有较高的概率搜到高质量解,但需要更长的运算时间。对于初始温度的给定时,需要结合算法优化所消耗的时间和效率,通常有两种办法,一是利用均匀办法产生的一种状态,将每一个目标函数都设定为初始温度。另一个办法是使用任意产生的状态,利用最大目标函数进行确认,记录其差值,即△max,根据差值使用某一函数作为初始温度。

(5)外循环终止准则,又叫做终止算法准则,常用准则包括设置温度终止阈值,外循环的迭代,系统熵稳定程度的判定。

(6)内循环终止准则,也就是Metropol

is准则,利用不同温度选出不同候选解,又被称为是抽样稳定性质准则,主要包含以下内容:目标函数均值是否稳定,连续若干个目标函数变化幅度,采样办法。

1.2.3 特点和应用

模拟退火算法通过概率的办法寻求全局最优解,不受初始值的影响,能够缓慢进行收敛,能够较好的进行多数据的并行、扩展和通用,使用极高的效率进行有关最优化组合问题的解。不足之处是在一定程度上,虽然能够降低程序陷入优化僵局的可能性,但在进行大范围搜索时,需要多次进行计算,从而寻找到最优解,在实际的应用中,这一缺点极大地增加了工作量,不利于优化计算效率。

作为一种较为通用的使用随机办法进行搜索的计算方法,模拟退火算法已经广泛的在机器学习、神经、生产、图象等领域进行应用,对自动设计的模拟集成电路,应用模拟退火算法进行设计,多目标进行优化设计等。

1.3 遗传算法

遗传算法是基于达尔文生物进化论有关自然选择同生物进化过程进行相关的计算所制作出来的模型,足以满足适者生存与优胜劣汰的生物界遗传机制。

1.3.1 流程

遗传算法优化问题解叫做个体,通常使用变量序列来表示,叫做染色体或基因串。利用简单的字符或数字表示染色体,通常使用0和1的二进制进行表示,或利用其他特殊问题进行表示,叫做编码。

遗传算法开始于种群,依据适者生存与优胜劣汰的生物界遗传机制,不断进行迭代进化,通过选择、交叉和变异生成新种群,从而产生最优解。遗传算法流程图如图2所示。

1.3.2 优点及应用

遗传算法依据适者生存与优胜劣汰的生物界遗传机制,主要优点包括以下几点。第一,不需要使用函数,就能够直接对结构对象进行有关求导的操作;第二,遗传算法整体优化不受梯度和辅助的影响,只受目标和适应度的影响;第三,使用一定概率进行变迁,不需要固定在某一区域,很好的对搜索方向进行校正和适应,从而自动获得结果;第四,遗传算法具有较强的全局搜索力。以上这些优点很好地为相对较为复杂的问题进行有关系统求解时提供了相应的框架,因此被广泛地应用在人们各个领域的生活中。

2 基于遗传算法的二级运放电路优化

利用遗传算法进行有关系统优化能够使用更少的资源来设计自动化电路优化,既降低硬件的成本又缩短设计的使用时间。利用仿真软件进行有关电路设计的优化,能够使用更加精确的模型进行优化,但是其缺点在于巨大的求解空间导致耗费时间长。所以目前有一种提法是根据电路性能进行相关遗传算法的解析,具有用时短、操作性能有所改善的优点。对于不是要求很严格的设计条件,可以使用二级运放进行电路设计,更加缩短设计时间。

2.1 二级运放的电路分析

进行有关集成电路的模拟中,使用运算放大器,能够很好的将单元模块进行高倍放大,通常情况下,使用反馈网络进行有关电路模块功能的重组。运算放大器作为一种较为重要的模拟和数模信号的系统电路模块,已经被应用到各种系统的电路设计之中,运算放大器主要包括输入差分、增益中间、缓冲输出以及电路偏置和补偿四种。基本结构如图3所示。

2.2 二级运算放大器性能指标

下面通过二级运算放大器的交流小信号模型对运放的重要性能进行分析。第一级运放为M1-5的差分运放构成,第二级运放为M6-7的共源放大器构成。二级运放等效模型如图4所示。

转换速率,又叫做压摆率,也就是说在运算放大器进行电压输出时候产生的转换速率,很好的提示运放速度。在输入端连接一个比较活跃的信号,通过运放输出测得最大上升速率。

2.3 遗传算法对电路进行优化设计

目前一种较为新颖的优化电路生成办法是在小环境范围进行有关二级运放的优化。具体编码方式包括集合染色体内的各种未知参数,使用0和1的二进制代码,代表不同的设计电路的方案。使用每个指标的性能函数相乘,得到适应度函数,从而显示出最大化目标函数和最小化目标函数。

自适应免疫遗传算法是目前较为新颖的智能优化改进算法,求解模拟相关生物学中的免疫系统,利用抗体的产生来排除抗原。自适应免疫遗传算法使用一种较为高质量的节约资源进行有关机制的克隆,对于优化解即抗体进行高概率的选择,同适应度函数有一个正比例关系。选定个体后将其复制传代,放弃本身的亲和力,也就是抗原抗体的匹配度,将优化的目标函数作为个体抗原。利用自适应免疫遗传算法,提出相应电路图的设计图案,如图5。

自适应免疫遗传算法引入生物界内免疫系统相关概念与免疫系统方法,有效提升遗传算法进行全局搜索方面的能力,并有效进行相关速度的收敛。改进后算法能够有效的克服传统算法中过早收敛的问题,以及盲目进行交叉和变异的操作,进行自适应免疫遗传算法电路的优化,如图6所示。

2.4 电路优化及仿真结果

运算放大器作为在进行电路的集成模拟过程中应用最为广泛的电路,也具有较大的功耗和时间模块,所以不同的方法设计显示出不同的电路性能。比较具有代表性的二级运算放大器的电路图如图7所示。

从图7可以看出,对于具有特定结构的功能电路,如果拥有较为合理的尺寸设计,可以得到一个较为固定的电路指标,某一性能改变会导致其他性能的变化。依据自身的电路设计经验和实际电路的设计要求,来选择合理的电路设计,虽然使用优化算法可以在设计电路时进行一定的优化,但是有关电路性能方面的解析,有关目标函数准确性模型的建立,具有一定的限制条件,需要进行更加深入的研究。

3 结语

智能优化算法在当今的很多领域内,都是重点的研究项目,该文主要针对智能优化算法的产生和发展进行阐述,并详细分析了几种较为典型的智能优化算法,其中,最具有代表性的集中算法是粒子群优化、遗传算法等。虽然该文分析和研究的是集成电路进行智能设计的更为优化的方法,但是今后对于集成电路的智能设计,还有很多问题值得进行深入研究。

参考文献

[1]郭文忠,陈国龙,陈振.离散粒子群优化算法研究综述[J].福州大学学报(自然科学版),2011,39(5):631-638.

[2]胡小婷,田泽.基于DO-254的航空集成电路设计保障研究[J].计算机技术与发展,2012,22(8):189-191,195.

[3]张志伟.模数混合信号集成电路自动设计技术研究[J].陕西理工学院学报(自然科学版),2013,29(4):25-29.

[4]张孟娟.张江高科技园区集成电路设计企业发展之研究[J].经济研究导刊,2013(12):26-28,79.

[5]冼志勇,徐洁.战略性新兴产业知识产权保护的协同合作机制研究—— 以集成电路设计公司为例[J].科学管理研究,2013,31(4):57-60.

[6]刘俐,赵杰.针对职业岗位需求探索集成电路设计技术课程教学新模式[J].中国职业技术教育,2012(2):5-8.

[7]王高峰,赵文生.三维集成电路中的关键技术问题综述[J].杭州电子科技大学学报,2014,34(2):1-7.

[8]武玉华,路而红,梁巨辉,等.数字密码锁专用集成电路的设计[J].计算机测量与控制,2010,18(12):2842-2845.

[9]岳亚杰,杨慧晶,张宏国.集成电路设计与集成系统专业人才培养模式的探究[J].黑龙江教育(高教研究与评估),2013(3):62-63.

[10]钱诚,沈海华,陈天石,等.超大规模集成电路可调试性设计综述[J].计算机研究与发展,2012,49(1):21-34.

[11]王豪,常胜,黄启俊,等.工程硕士“模拟集成电路设计”课程探索[J].电气电子教学学报,2013,35(6):1-3.

猜你喜欢
优化算法集成电路优化
首个原子级量子集成电路诞生
科学(2022年4期)2022-10-25 02:43:18
超限高层建筑结构设计与优化思考
房地产导刊(2022年5期)2022-06-01 06:20:14
民用建筑防烟排烟设计优化探讨
关于优化消防安全告知承诺的一些思考
一道优化题的几何解法
人工智能与集成电路的关系探讨
电子制作(2018年2期)2018-04-18 07:13:47
故障树计算机辅助分析优化算法研究与应用
科技与创新(2017年1期)2017-02-16 19:36:23
混沌优化算法在TSP问题的应用
再制造闭环供应链研究现状分析
故障树计算机辅助分析优化算法的实践应用
科技传播(2016年3期)2016-03-25 00:23:31