CN103020331A - 一种混合极性同或/或电路的功耗优化方法 - Google Patents

一种混合极性同或/或电路的功耗优化方法 Download PDF

Info

Publication number
CN103020331A
CN103020331A CN2012103886890A CN201210388689A CN103020331A CN 103020331 A CN103020331 A CN 103020331A CN 2012103886890 A CN2012103886890 A CN 2012103886890A CN 201210388689 A CN201210388689 A CN 201210388689A CN 103020331 A CN103020331 A CN 103020331A
Authority
CN
China
Prior art keywords
polarity
particle
circuit
power consumption
xnor
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
Application number
CN2012103886890A
Other languages
English (en)
Other versions
CN103020331B (zh
Inventor
俞海珍
汪鹏君
史旭华
汪迪生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ningbo University
Original Assignee
Ningbo University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ningbo University filed Critical Ningbo University
Priority to CN201210388689.0A priority Critical patent/CN103020331B/zh
Publication of CN103020331A publication Critical patent/CN103020331A/zh
Application granted granted Critical
Publication of CN103020331B publication Critical patent/CN103020331B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明公开了一种混合极性同或/或电路的功耗优化方法,根据混合极性同或/或电路表达式的特点,改进快速列表技术以实现同或/或电路的混合极性转换;再基于功耗估计模型,利用霍夫曼算法实现或门的低功耗分解,根据二输入同或门输入信号概率和输出信号概率的分布特点,将多输入同或门的输入信号分成三组:输入信号概率大于0.5、输入信号小于0.5和输入信号等于0.5,然后在各组中进行综合,实现多输入同或门的低功耗分解,综合两者得到混合极性适应度函数;然后建立混合极性与粒子群对应关系,采用粒子群优化算法对同或/或电路进行功耗最优的混合极性搜索;优点是通过对MCNC Benchmark电路进行测试表明:其对应的电路功耗平均节省53.98%,搜索速度得到明显提高。

Description

一种混合极性同或/或电路的功耗优化方法
技术领域
本发明涉及一种集成电路设计中电路的功耗优化方法,尤其是涉及一种混合极性同或/或电路的功耗优化方法。 
背景技术
集成电路工作频率和集成度的不断提高,导致电路的总功耗越来越高,急剧上升的功耗增加了系统的生产、封装成本以及散热成本,也对系统的可靠性造成很大的影响。低功耗已成为超大规模集成电路(VLSI)设计的重要目标之一,特别是在便携式设备中,低功耗已超越面积和性能成为首要设计约束。当前低功耗技术的研究,大多是针对与/或(AND/OR)和与非/异或(NAND/NOR)电路进行的,典型的实现方式是产生一个逻辑函数的多级AND/OR表达式或者NAND/NOR表达式,然后对其进行功耗优化。研究表明,较之传统的布尔逻辑电路,基于同或/或(XNOR/OR)运算的里德穆勒(Reed-Muller;RM)逻辑不仅有更好的可测试性,而且用其实现的算术逻辑部件、通信系统和错误校验等功能电路在功耗、面积等方面具有显著优势。因此,研究里德穆勒电路低功耗优化技术对发展和完善集成电路低功耗设计方法有重要意义。 
固定极性RM(Fixed-Polarity Reed-Muller;FPRM)表达式和混合极性RM(Mixed-Polarity Reed-Muller;MPRM)表达式是两种重要的RM逻辑展开式。对于n输入RM逻辑电路,FPRM表达式的极性个数是MPRM表达式的极性个数的(2/3)n,且MPRM表达式的极性包括FPRM表达式的所有极性,所以功耗优化时,MPRM电路相比FPRM电路更可能获得功耗最小RM电路。对于多输入门的低功耗分解,已提出三种典型的算法:Min-Huffman算法、Narayanan and Liu算法和Zhou and Wong算法。P.Wang,J.Lu,J.Xu,et al.Power optimization algorithm based on XNOR/OR logic[J].Journal ofElectronics(China).2009,26(1):138-144(汪鹏君,陆金刚,徐建.基于XNOR/OR逻辑的功耗优化算法.电子科学学刊(英文版).2009,26(1):138-144。)(以下简称文献1) 中将这些算法应用于XNOR/OR门的低功耗分解,从而提出针对FPRM电路的功耗优化算法,但这些算法只局限于对FPRM电路进行优化。MPRM电路的巨大极性搜索空间也导致其电路性能优化的时间和空间复杂度都高于FPRM电路,因此,在MPRM逻辑电路的优化理论和求解方法上急需新的突破。 
发明内容
本发明所要解决的技术问题是提供一种可以使同或/或电路的功耗最优化的混合极性同或/或电路的功耗优化方法。 
本发明解决上述技术问题所采用的技术方案为:一种混合极性同或/或电路的功耗优化方法,首先根据混合极性同或/或电路表达式的特点,改进快速列表技术对同或/或电路的混合极性进行转换;再基于混合极性同或/或电路功耗估计模型,利用霍夫曼算法实现或门的低功耗分解;然后根据二输入同或门输入信号概率和输出信号概率的分布特点,将多输入同或门的输入信号分成三组:输入信号概率大于0.5、输入信号小于0.5和输入信号等于0.5,在各组中进行综合,实现多输入同或门的低功耗分解,综合两者得到混合极性适应度函数;最后建立混合极性与粒子群算法中的粒子之间的对应关系,采用粒子群优化算法对同或/或电路进行功耗最优的混合极性搜索,具体包括以下步骤: 
①读入电路,将电路表示为函数 f ( x n - 1 , x n - 2 , · · · , x k , · · · , x 0 ) = Π i = 0 2 n - 1 ( a i + M i ) , n为函数f(xn-1,xn-2,…,xk,…,x0)的变量数,(xn-1,xn-2,…,xk,…,x0)为函数f(xn-1,xn-2,…,xk,…,x0)的n个输入变量,∏为与运算符,ai是最大项系数,且ai∈{0,1},i为最大项序数,用二进制表示为in-1in-2…ik…i0,Mi是最大项,表示n个变量相或,k为正整数,且0≤k≤n-1;利用快速列表技术将函数转换为P极性的混合极性同或/或表达式: 
Figure BDA00002254660200022
P为混合极性同或/或表达式的极性值,P用三进制形式表示为pn-1pn-2…pg…p0,⊙∏为同或运算符,Sj表示或项,di为或项系数,di表示或项是否在混合极性同或/或表达式中出现,且di∈{0,1},当di=0时,表示Sj项在同或/或表达式中出现,当di=1时,表示Sj项不在同或/或表达式中出现,j为或项序数, j用二进制表示为jn-1jn-2…jg…j0,其中xg与pg和jg的关系为:当pg=0和jg=0时,xg以原变量出现;当pg=1和jg=0时,xg以反变量出现;当pg=2时,xg同时以原变量和反变量的形式出现,当jg=0时,xg以原变量出现,当jg=1时,xg以反变量出现,其中g为正整数,且0≤g≤n-1; 
②初始化粒子群:将输入变量数n定义成粒子群的搜索空间维数,将混合极性定义为粒子群的粒子,将极性值P定义为粒子群的粒子位置,设定粒子的数量为M,M为正整数,粒子群的总进化代数为tmax,随机初始化粒子群中各粒子的速度、位置、粒子的当前个体最优位置、粒子群的当前全局最优位置和适应度值; 
③选择粒子的当前位置作为混合极性同或/或表达式的极性值,改进快速列表技术对XNOR/OR电路的混合极性进行转换,得到同或/或项; 
④将混合极性转换后的同或/或项分解为一系列二输入同或项和二输入或项,将第m个粒子位置对应的混合极性同或/或电路的总开关活动性定义为Etotal,将第m个粒子位置对应的混合极性同或/或电路的同或门的总开关活动性定义为EXNOR,将第m个粒子位置对应的混合极性同或/或电路的或门的总开关活动性定义为EOR,其中Etotal=EXNOR+EOR,定义第m个粒子位置对应的适应度函数  fitness ( x m ) = 1 E total * coefficient , 式中coefficient为大于零的正常数。 
⑤更新粒子的当前位置和当前速度,将粒子的最新速度作为该粒子的当前速度,将粒子的最新位置作为该粒子的当前位置,根据适应度函数计算当前各个粒子的适应度值,将该粒子的当前位置与该粒子的当前个体最优位置进行比较,选择适应度值较大的作为该粒子新的当前个体最优位置,再比较所有粒子新的当前全局最优位置,将具有最大适应度值的粒子的当前位置作为粒子群新的当前全局最优位置; 
⑥判断当前代数是否为最大进化代数,若不是,转到步骤③,否则进入步骤⑦; 
⑦将粒子群新的当前全局最优位置所对应的混合极性同或/或表达式的极性作为最优极性输出,将该最优极性对应的混合极性同或/或电路的总开关活动性作为最优总开关活动性输出。 
改进快速列表技术对XNOR/OR电路的混合极性进行转换,获得同或/或项的具体 步骤为: 
③-1将f(xn-1,xn-2,…,xk,…,x0)中的最大项以二进制形式表示; 
③-2将所需转换的混合极性值P用三进制形式表示; 
③-3若混合极性的第g位为1,则选择第g位为1的最大项,对该位进行异或操作,得到新项,若第g位为0或2,则不操作; 
③-4若混合极性的第g位为0或1时,则选择q个位的取值为1的新项,以这些位为无关项,再产生所有2q-1个新项,并更新索引表中的项数,若混合极性的第g位为2时,则保持不变,0≤q≤n; 
③-5重复步骤③-4,直至操作完所有新项,得到索引表中项序数为奇数的项即为该混合极性对应的同或/或项。 
混合极性同或/或电路的适应度函数fitness(xm)的计算步骤为: 
④-1用随机函数产生同或/或电路的输入信号概率,采用霍夫曼算法实现或门的低功耗分解,得到或门的总开关活动性结果EOR,根据二输入同或门输入信号概率和输出信号概率的分布特点,将多输入同或门的输入信号分成三组:输入信号概率大于0.5、输入信号小于0.5和输入信号等于0.5,然后在各组中进行综合,实现多输入同或门的低功耗分解,得到同或门的总开关活动性结果EXNOR; 
④-2将或门的总开关活动性结果EOR和同或门的总开关活动性结果EXNOR带入公式Etotal=EXNOR+EOR中得到同或/或电路的总的开关活动性结果Etotal,将同或/或电路的总的开关活动性结果Etotal带入中,得到同或/或电路的适应度值; 
确定粒子的最新位置和最新速度的具体步骤为:定义t为粒子群的当前进化代数,D为搜索空间维数,0≤D≤n-1,当前进化代第m个粒子在第t次迭代的位置为
Figure BDA00002254660200042
第m个粒子在第t次迭代的速度为
Figure BDA00002254660200043
第m个粒子在第t-1次迭代的位置 第m个粒子在第t-1次迭代的速度  v m t - 1 = ( v m 1 t - 1 , v m 2 t - 1 , . . . , v md t - 1 , . . . , v mD t - 1 ) T , x md t - 1 ∈ [ R d , S d ] , Rd表示搜索空间的下限,表示搜索 空间的上限,vmin代表第m个粒子的最小速度、vmax代表第m个粒子的最大速度,1≤d≤D,1≤m≤M,1≤t≤tmax;第m个粒子的运动方程式为:  v md t = wv md t - 1 + c 1 r 1 ( p md t - 1 - x md t - 1 ) + c 2 r 2 ( p gbestd t - 1 - x md t - 1 ) , x md t = round ( S md + ( N - 1 ) × σ × randn ( 1 ) ) 和 
Figure BDA00002254660200054
其中,c1和c2为学习因子,分别表示自我调整能力和向粒子群最优粒子学习的能力,其中0<c1≤2,0<c2≤2,0<r1≤1,0<r2≤1,w为惯性权重,且 wstart为初始惯性权重且0.3≤wstart≤0.5,wend为终止惯性权重且0.8≤wend≤1.0,t为当前进化代数,tmax为最大进化代数,
Figure BDA00002254660200056
表示当前进化代第m个粒子进化前的当前个体最优位置,
Figure BDA00002254660200057
表示当前进化代粒子群进化前的当前全局最优位置,N取值为3,σ为权值且0<σ≤1,randn()表示标准正态分布函数,e表示自然对数的底。 
与现有技术相比,本发明的优点在于改进快速列表技术对XNOR/OR电路的混合极性进行转换;利用霍夫曼算法实现或门的低功耗分解,根据二输入同或门输入信号概率和输出信号概率的分布特点,将多输入同或门的输入信号分成三组:输入信号概率大于0.5、输入信号小于0.5和输入信号等于0.5,然后在各组中进行综合,实现多输入同或门的低功耗分解,,再结合粒子群优化算法对同或/或电路进行功耗最优的混合极性搜索,实现了同或/或电路功耗的优化,通过对MCNC Benchmark电路进行测试表明:其对应的电路功耗平均节省53.98%,搜索速度得到明显提高。 
具体实施方式
以下结合实施例对本发明作进一步详细描述。 
实施例:一种混合极性同或/或电路的功耗优化方法,首先根据混合极性同或/或电路表达式的特点,改进快速列表技术对XNOR/OR电路的混合极性进行转换;由于静态逻辑在CMOS电路中更为常见,因此本发明根据电路的静态逻辑实现形式,建立混合极性同或/或电路功耗估计模型,利用霍夫曼算法实现或门的低功耗分解;然后根据二输入同或门输入信号概率和输出信号概率的分布特点,将多输入同或门的输入信号分成三 组:输入信号概率大于0.5、输入信号小于0.5和输入信号等于0.5,在各组中进行综合,实现多输入同或门的低功耗分解,最后建立混合极性与粒子群算法中的粒子之间的对应关系,采用粒子群优化算法对同或/或电路进行功耗最优的混合极性搜索,具体包括以下步骤: 
①读入电路,将电路表示为函数 f ( x n - 1 , x n - 2 , &CenterDot; &CenterDot; &CenterDot; , x k , &CenterDot; &CenterDot; &CenterDot; , x 0 ) = &Pi; i = 0 2 n - 1 ( a i + M i ) , n为函数f(xn-1,xn-2,…,xk,…,x0)的变量数,(xn-1,xn-2,…,xk,…,x0)为函数f(xn-1,xn-2,…,xk,…,x0)的n个输入变量,∏为与运算符,ai是最大项系数,且ai∈{0,1},i为最大项序数,用二进制表示为in-1in-2…ik…i0,Mi是最大项,表示n个变量相或,k为正整数,且0≤k≤n-1;利用快速列表技术将函数转换为P极性的混合极性同或/或表达式: 
Figure BDA00002254660200062
P为混合极性同或/或表达式的极性值,P用三进制形式表示为pn-1pn-2…pg…p0,⊙∏为同或运算符,Sj表示或项,di为或项系数,di表示或项是否在混合极性同或/或表达式中出现,且di∈{0,1},当di=0时,表示Sj项在同或/或表达式中出现,当di=1时,表示Sj项不在同或/或表达式中出现,j为或项序数,j用二进制表示为jn-1jn-2…jg…j0,其中xg与pg和jg的关系为:当pg=0和jg=0时,xg以原变量出现;当pg=1和jg=0时,xg以反变量出现;当pg=2时,xg同时以原变量和反变量的形式出现,当jg=0时,xg以原变量出现,当jg=1时,xg以反变量出现,其中g为正整数,且0≤g≤n-1; 
②初始化粒子群:将输入变量数n定义成粒子群的搜索空间维数,将混合极性定义为粒子群的粒子,将极性值P定义为粒子群的粒子位置,设定粒子的数量为M,M为20,粒子群的总进化代数tmax为100代,随机初始化粒子群中各粒子的速度、位置、粒子的当前个体最优位置、粒子群的当前全局最优位置和适应度值; 
③选择粒子的当前位置作为混合极性同或/或表达式的极性值,改进快速列表技术对XNOR/OR电路的混合极性进行转换,得到同或/或项;改进快速列表技术对XNOR/OR电路的混合极性进行转换,获得同或/或项的具体步骤为: 
③-1将f(xn-1,xn-2,…,xk,…,x0)中的最大项以二进制形式表示; 
③-2将所需转换的混合极性值P用三进制形式表示; 
③-3若混合极性的第g位为1,则选择第g位为1的最大项,对该位进行异或操作,得到新项,若第g位为0或2,则不操作; 
③-4若混合极性的第g位为0或1时,则选择q个位的取值为1的新项,以这些位为无关项,再产生所有2q-1个新项,并更新索引表中的项数,若混合极性的第g位为2时,则保持不变,0≤q≤n; 
③-5重复步骤③-4,直至操作完所有新项,得到索引表中项序数为奇数的项即为该混合极性对应的同或/或项; 
④将混合极性转换后的同或/或项分解为一系列二输入同或项和二输入或项,将第m个粒子位置对应的混合极性同或/或电路的总开关活动性定义为Etotal,将第m个粒子位置对应的混合极性同或/或电路的同或门的总开关活动性定义为EXNOR,将第m个粒子位置对应的混合极性同或/或电路的或门的总开关活动性定义为EOR,其中Etotal=EXNOR+EOR,定义第m个粒子位置对应的适应度函数 
Figure BDA00002254660200071
其中coeffcient为1000,1≤m≤50;混合极性同或/或电路的适应度函数fitness(xm)的计算步骤为: 
④-1用随机函数产生同或/或电路的输入信号概率,采用霍夫曼算法实现或门的低功耗分解,得到或门的总开关活动性结果EOR,根据二输入同或门输入信号概率和输出信号概率的分布特点,将多输入同或门的输入信号分成三组:输入信号概率大于0.5、输入信号小于0.5和输入信号等于0.5,然后在各组中进行综合,实现多输入同或门的低功耗分解,得到同或门的总开关活动性结果EXNOR; 
其中,步骤④-1中具体综合步骤为:一、当多输入同或门的所有输入信号概率都大于0.5时,每次都取概率值最大的两个信号进行综合,输出概率必最接近于1,开关活动必最小;二、当多输入同或门的输入信号中既有概率值大于0.5的信号,又有概率值小于0.5的信号:此时,若所取信号的概率值都小于0.5或都大于0.5,其综合结果将大于0.5,且有可能达到接近1的最大值;若所取信号的概率一个大于0.5,另一个小于0.5, 则其综合结果将小于0.5,且有可能达到接近0的最小值,由于输出概率接近0或1都有可能使开关活动性最小,因此为使功耗最低,每次都需要判断这两个综合结果;此外,由于其综合结果的不确定性,在综合过程中将有可能出现全部概率值都变成大于0.5(或都小于0.5)的情况,因此在综合之前需判断每个信号的概率值;当多输入同或门的所有输入信号概率都小于0.5,第一次综合时,取概率值最小的两个信号进行结合,输出概率必最接近1,开关活动性必最小,但由于第一次综合将产生一个概率大于0.5的信号,然后再按照步骤二中的方法继续进行综合,直到将多输入同或门前部分解为多个二输入同或门; 
④-2将或门的总开关活动性结果EOR和同或门的总开关活动性结果EXNOR带入公式Etotal=EXNOR+EOR中得到同或/或电路的总的开关活动性结果Etotal,将同或/或电路的总的开关活动性结果Etotal带入
Figure BDA00002254660200081
中,得到同或/或电路的适应度值; 
⑤更新粒子的当前位置和当前速度,将粒子的最新速度作为该粒子的当前速度,将粒子的最新位置作为该粒子的当前位置,根据适应度函数计算当前各个粒子的适应度值,将该粒子的当前位置与该粒子的当前个体最优位置进行比较,选择适应度值较大的作为该粒子新的当前个体最优位置,再比较所有粒子新的当前全局最优位置,将具有最大适应度值的粒子的当前位置作为粒子群新的当前全局最优位置; 
⑥判断当前代数是否为最大进化代数,若不是,转到步骤③,否则进入步骤⑦; 
⑦将粒子群新的当前全局最优位置所对应的混合极性同或/或表达式的极性作为最优极性输出,将该最优极性对应的混合极性同或/或电路的总开关活动性作为最优总开关活动性输出。 
本实施例的内容用C语言编程加以实现,在Windows XP操作系统下,通过VC6.0编译,程序的硬件环境为Intel Pentium(R)Dual-Core CPU(2.70GHZ)2G RAM,测试电路均采用PLA格式MCNC基准电路,为使功耗估计模型所计算的开关活动性接近实际情况,在测试前,用随机函数产生如下20个初始输入信号概率:0.14,0.82,0.31,0.03,0.30,0.72,0.59,0.95,0.42,0.93,0.63,0.32,0.68,0.22,0.42,0.57,0.69,0.75,0.19,0.18。 
为了验证基于混合极性同或/或电路功耗优化的有效性,将文献1中的功耗优化方法 与本发明方法进行比较。选取上述文献1采用的14个测试电路,在实验中,本方法的参数设置为:初始惯性权重wstart=1.0,终止惯性权重wend=0.4(采用线性递减策略),学习因子c1=c2=1.8,σ=0.2,vmax=6.0,总粒子数为20-30,最大进化代数为200。文献1中的功耗优化方法与本发明方法对相应电路进行功耗优化的结果如下表1所示,其中“benchmark circuits”和“inputs”分别为测试电路的名称和输入变量个数;ref.【1】一栏为采用文献1中的功耗优化方法的对应结果,DTPSO一栏为采用本发明的方法进行低功耗分解的对应结果“power”和“CPU time”分别表示电路的功耗和优化算法CPU运行时间。 
表1实验数据结果比较 
Figure BDA00002254660200091
从表1实验数据可知,本发明的方法在混合极性XNOR/OR电路功耗优化上是相当有效的。本发明方法相对于文献1中的功耗优化方法,平均节省电路功耗为53.98%,低功耗效果较优;另外由于XNOR/OR电路优化的搜索空间随电路输入变量增加呈指数倍增长,对于输入变量数大于14的电路使用文献1中的功耗优化方法所用时间超过2.5小时,在运行时间上不可行;而采用本发明的方法能在有限时间内实现XNOR/OR电路功耗优化。 

Claims (4)

1.一种混合极性同或/或电路的功耗优化方法,其特征在于首先根据混合极性同或/或电路表达式的特点,改进快速列表技术对同或/或电路的混合极性进行转换;再基于混合极性同或/或电路功耗估计模型,利用霍夫曼算法实现或门的低功耗分解;然后根据二输入同或门输入信号概率和输出信号概率的分布特点,将多输入同或门的输入信号分成三组:输入信号概率大于0.5、输入信号小于0.5和输入信号等于0.5,在各组中进行综合,实现多输入同或门的低功耗分解,综合两者得到混合极性适应度函数;最后建立混合极性与粒子群算法中的粒子之间的对应关系,采用粒子群优化算法对同或/或电路进行功耗最优的混合极性搜索,具体包括以下步骤:
①读入电路,将电路表示为函数 f ( x n - 1 , x n - 2 , &CenterDot; &CenterDot; &CenterDot; , x k , &CenterDot; &CenterDot; &CenterDot; , x 0 ) = &Pi; i = 0 2 n - 1 ( a i + M i ) , n为函数f(xn-1,xn-2,…,xk,…,x0)的变量数,(xn-1,xn-2,…,xk,…,x0)为函数f(xn-1,xn-2,…,xk,…,x0)的n个输入变量,∏为与运算符,ai是最大项系数,且ai∈{0,1},i为最大项序数,用二进制表示为in-1in-2…ik…i0,Mi是最大项,表示n个变量相或,k为正整数,且0≤k≤n-1;利用快速列表技术将函数转换为P极性的混合极性同或/或表达式:
Figure FDA00002254660100012
P为混合极性同或/或表达式的极性值,P用三进制形式表示为pn-1pn-2…pg…p0,⊙∏为同或运算符,Sj表示或项,di为或项系数,di表示或项是否在混合极性同或/或表达式中出现,且di∈{0,1},当di=0时,表示Sj项在同或/或表达式中出现,当di=1时,表示Sj项不在同或/或表达式中出现,j为或项序数,j用二进制表示为jn-1jn-2…jg…j0,其中xg与pg和jg的关系为:当pg=0和jg=0时,xg以原变量出现;当pg=1和jg=0时,xg以反变量出现;当pg=2时,xg同时以原变量和反变量的形式出现,当jg=0时,xg以原变量出现,当jg=1时,xg以反变量出现,其中g为正整数,且0≤g≤n-1;
②初始化粒子群:将输入变量数n定义成粒子群的搜索空间维数,将混合极性定义为粒子群的粒子,将极性值P定义为粒子群的粒子位置,设定粒子的数量为M,M为正整数,粒子群的总进化代数为tmax,随机初始化粒子群中各粒子的速度、位置、粒子的当前个体最优位置、粒子群的当前全局最优位置和适应度值;
③选择粒子的当前位置作为混合极性同或/或表达式的极性值,改进快速列表技术对XNOR/OR电路的混合极性进行转换,得到同或/或项;
④将混合极性转换后的同或/或项分解为一系列二输入同或项和二输入或项,将第m个粒子位置对应的混合极性同或/或电路的总开关活动性定义为Etotal,将第m个粒子位置对应的混合极性同或/或电路的同或门的总开关活动性定义为EXNOR,将第m个粒子位置对应的混合极性同或/或电路的或门的总开关活动性定义为EOR,其中Etotal=EXNOR+EOR,定义第m个粒子位置对应的适应度函数 fitness ( x m ) = 1 E total * coefficient , 式中coefficient为大于零的正常数;
⑤更新粒子的当前位置和当前速度,将粒子的最新速度作为该粒子的当前速度,将粒子的最新位置作为该粒子的当前位置,根据适应度函数计算当前各个粒子的适应度值,将该粒子的当前位置与该粒子的当前个体最优位置进行比较,选择适应度值较大的作为该粒子新的当前个体最优位置,再比较所有粒子新的当前全局最优位置,将具有最大适应度值的粒子的当前位置作为粒子群新的当前全局最优位置;
⑥判断当前代数是否为最大进化代数,若不是,转到步骤③,否则进入步骤⑦;
⑦将粒子群新的当前全局最优位置所对应的混合极性同或/或表达式的极性作为最优极性输出,将该最优极性对应的混合极性同或/或电路的总开关活动性作为最优总开关活动性输出。
2.根据权利要求1所述的一种混合极性同或/或电路的功耗优化方法,其特征在于改进快速列表技术对XNOR/OR电路的混合极性进行转换,获得同或/或项的具体步骤为:
③-1将f(xn-1,xn-2,…,xk,…,x0)中的最大项以二进制形式表示;
③-2将所需转换的混合极性值P用三进制形式表示;
③-3若混合极性的第g位为1,则选择第g位为1的最大项,对该位进行异或操作,得到新项,若第g位为0或2,则不操作;
③-4若混合极性的第g位为0或1时,则选择q个位的取值为1的新项,以这些位为无关项,再产生所有2q-1个新项,并更新索引表中的项数,若混合极性的第g位为2时,则保持不变,0≤q≤n;
③-5重复步骤③-4,直至操作完所有新项,得到索引表中项序数为奇数的项即为该混合极性对应的同或/或项。
3.根据权利要求2所述的一种混合极性同或/或电路的功耗优化方法,其特征在于混合极性同或/或电路的适应度函数fitness(xm)的计算步骤为:
④-1用随机函数产生同或/或电路的输入信号概率,采用霍夫曼算法实现或门的低功耗分解,得到或门的总开关活动性结果EOR,根据二输入同或门输入信号概率和输出信号概率的分布特点,将多输入同或门的输入信号分成三组:输入信号概率大于0.5、输入信号小于0.5和输入信号等于0.5,然后在各组中进行综合,实现多输入同或门的低功耗分解,得到同或门的总开关活动性结果EXNOR
④-2将或门的总开关活动性结果EOR和同或门的总开关活动性结果EXNOR带入公式Etotal=EXNOR+EOR中得到同或/或电路的总的开关活动性结果Etotal,将同或/或电路的总的开关活动性结果Etotal带入中,得到同或/或电路的适应度值。
4.根据权利要求1所述的一种混合极性同或/或电路的功耗优化方法,其特征在于确定粒子的最新位置和最新速度的具体步骤为:定义t为粒子群的当前进化代数,D为搜索空间维数,0≤D≤n-1,当前进化代第m个粒子在第t次迭代的位置为
Figure FDA00002254660100032
第m个粒子在第t次迭代的速度为
Figure FDA00002254660100033
第m个粒子在第t-1次迭代的位置第m个粒子在第t-1次迭代的速度 v m t - 1 = ( v m 1 t - 1 , v m 2 t - 1 , . . . , v md t - 1 , . . . , v mD t - 1 ) T , x md t - 1 &Element; [ R d , S d ] , Rd表示搜索空间的下限,表示搜索空间的上限,
Figure FDA00002254660100037
vmin代表第m个粒子的最小速度、vmax代表第m个粒子的最大速度,1≤d≤D,1≤m≤M,1≤t≤tmax;第m个粒子的运动方程式为: v md t = wv md t - 1 + c 1 r 1 ( p md t - 1 - x md t - 1 ) + c 2 r 2 ( p gbestd t - 1 - x md t - 1 ) , x md t = round ( S md + ( N - 1 ) &times; &sigma; &times; randn ( 1 ) )
Figure FDA00002254660100043
其中,c1和c2为学习因子,分别表示自我调整能力和向粒子群最优粒子学习的能力,其中0<c1≤2,0<c2≤2,0<r1≤1,0<r2≤1,w为惯性权重,且
Figure FDA00002254660100044
wstart为初始惯性权重且0.3≤wstart≤0.5,wend为终止惯性权重且0.8≤wend≤1.0,t为当前进化代数,tmax为最大进化代数,
Figure FDA00002254660100045
表示当前进化代第m个粒子进化前的当前个体最优位置,
Figure FDA00002254660100046
表示当前进化代粒子群进化前的当前全局最优位置,N取值为3,σ为权值且0<σ≤1,randn()表示标准正态分布函数,e表示自然对数的底。
CN201210388689.0A 2012-10-15 2012-10-15 一种混合极性同或/或电路的功耗优化方法 Expired - Fee Related CN103020331B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210388689.0A CN103020331B (zh) 2012-10-15 2012-10-15 一种混合极性同或/或电路的功耗优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210388689.0A CN103020331B (zh) 2012-10-15 2012-10-15 一种混合极性同或/或电路的功耗优化方法

Publications (2)

Publication Number Publication Date
CN103020331A true CN103020331A (zh) 2013-04-03
CN103020331B CN103020331B (zh) 2015-07-22

Family

ID=47968934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210388689.0A Expired - Fee Related CN103020331B (zh) 2012-10-15 2012-10-15 一种混合极性同或/或电路的功耗优化方法

Country Status (1)

Country Link
CN (1) CN103020331B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104881549A (zh) * 2015-06-11 2015-09-02 北京航空航天大学 一种包含无关项的Reed-Muller逻辑电路的功耗优化方法
CN107220463A (zh) * 2017-06-28 2017-09-29 宁波大学 一种混合极性xnor/or电路面积优化方法
CN107515964A (zh) * 2017-07-27 2017-12-26 宁波大学 一种固定极性rm电路的面积优化方法
CN111400982A (zh) * 2020-02-28 2020-07-10 宁波大学 一种mprm电路面积与功耗的优化方法
CN111400996A (zh) * 2020-02-28 2020-07-10 宁波大学 一种基于帕雷托支配的mprm电路多目标优化方法
CN113885511A (zh) * 2021-10-22 2022-01-04 温州大学乐清工业研究院 一种断路器柔性装配机器人的轨迹优化方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216865A (zh) * 2008-01-09 2008-07-09 宁波大学 用于数字集成电路设计的最佳极性搜索方法
CN102054102A (zh) * 2010-12-27 2011-05-11 宁波大学 一种与/异或电路的最佳混合极性搜索方法
CN102592013A (zh) * 2011-12-31 2012-07-18 宁波大学 一种固定极性里德穆勒电路延时和面积的优化方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216865A (zh) * 2008-01-09 2008-07-09 宁波大学 用于数字集成电路设计的最佳极性搜索方法
CN102054102A (zh) * 2010-12-27 2011-05-11 宁波大学 一种与/异或电路的最佳混合极性搜索方法
CN102592013A (zh) * 2011-12-31 2012-07-18 宁波大学 一种固定极性里德穆勒电路延时和面积的优化方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
张会红: "《中国博士学位论文全文数据库 信息科技辑》", 15 July 2011 *
张会红等: "基于新型极性转换技术的XNOR/OR电路面积优化", 《电子与信息学报》 *
汪鹏君等: "基于多值开关—信号理论的三值低功耗动态异或/同或电路设计", 《电路与系统学报》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104881549A (zh) * 2015-06-11 2015-09-02 北京航空航天大学 一种包含无关项的Reed-Muller逻辑电路的功耗优化方法
CN104881549B (zh) * 2015-06-11 2017-12-05 北京航空航天大学 一种包含无关项的Reed‑Muller逻辑电路的功耗优化方法
CN107220463A (zh) * 2017-06-28 2017-09-29 宁波大学 一种混合极性xnor/or电路面积优化方法
CN107220463B (zh) * 2017-06-28 2019-07-09 宁波大学 一种混合极性xnor/or电路面积优化方法
CN107515964A (zh) * 2017-07-27 2017-12-26 宁波大学 一种固定极性rm电路的面积优化方法
CN107515964B (zh) * 2017-07-27 2019-07-12 宁波大学 一种固定极性rm电路的面积优化方法
CN111400982A (zh) * 2020-02-28 2020-07-10 宁波大学 一种mprm电路面积与功耗的优化方法
CN111400996A (zh) * 2020-02-28 2020-07-10 宁波大学 一种基于帕雷托支配的mprm电路多目标优化方法
CN111400996B (zh) * 2020-02-28 2023-06-06 宁波大学 一种基于帕雷托支配的mprm电路多目标优化方法
CN111400982B (zh) * 2020-02-28 2023-06-06 宁波大学 一种mprm电路面积与功耗的优化方法
CN113885511A (zh) * 2021-10-22 2022-01-04 温州大学乐清工业研究院 一种断路器柔性装配机器人的轨迹优化方法
CN113885511B (zh) * 2021-10-22 2023-12-12 温州大学乐清工业研究院 一种断路器柔性装配机器人的轨迹优化方法

Also Published As

Publication number Publication date
CN103020331B (zh) 2015-07-22

Similar Documents

Publication Publication Date Title
CN103020331B (zh) 一种混合极性同或/或电路的功耗优化方法
Liu et al. A low-power, high-performance approximate multiplier with configurable partial error recovery
CN102592013B (zh) 一种固定极性里德穆勒电路延时和面积的优化方法
CN102054102B (zh) 一种与/异或电路的最佳混合极性搜索方法
Qiqieh et al. Significance-driven logic compression for energy-efficient multiplier design
Heng et al. Probabilistic and deterministic wind speed forecasting based on non-parametric approaches and wind characteristics information
CN101216865B (zh) 用于数字集成电路设计的最佳极性搜索方法
CN102601881B (zh) 一种橡胶硬度的在线质量监控和预测模型更新的方法
CN112836394B (zh) 基于相关性和高斯过程回归的设计空间参数迁移学习方法
CN102982205A (zh) 一种用于数字电路设计的固定极性转换方法
Sun et al. A self-evolving fuzzy system online prediction-based dynamic multi-objective evolutionary algorithm
Wang et al. Power optimization in logic synthesis for mixed polarity Reed-Muller logic circuits
CN107220463A (zh) 一种混合极性xnor/or电路面积优化方法
Malik et al. Revisiting central limit theorem: Accurate Gaussian random number generation in VLSI
CN106202865A (zh) 一种计算中子输运离散节块法中任意阶系数的方法
CN102043910B (zh) 一种基于Top-n-gram的蛋白质远程同源性检测和折叠识别方法
CN115796327A (zh) 一种基于vmd和iwoa-f-gru模型的风电功率区间预测方法
CN107679326A (zh) 一种二值fprm电路面积与延时综合优化方法
Zhu et al. Error flatten logarithm approximation for graphics processing unit
Tao et al. MPGA: an evolutionary state assignment for dynamic and leakage power reduction in FSM synthesis
Harada Mathematical model of asynchronous parallel evolutionary algorithm to analyze influence of evaluation time bias
Liu et al. Computing radial basis function support vector machine using DNA via fractional coding
Xie et al. Research on an incremental attribute reduction based on relative positive region
Sharma et al. Implementation of BDDs by various techniques in Low power VLSI design
Lu et al. FPRM circuit area optimization based on MRFOtent Algorithm

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into 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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150722

Termination date: 20181015