一种二值fprm电路面积最佳极性搜索方法

文档序号:9417574阅读:759来源:国知局
一种二值fprm电路面积最佳极性搜索方法
【技术领域】
[0001] 本发明涉及一种二值FPRM电路面积优化方法,尤其是涉及一种二值FPRM电路面 积最佳极性搜索方法。
【背景技术】
[0002] 任意逻辑函数均可以用布尔逻辑和Reed-Muller(RM)逻辑来表示,与传统的布尔 逻辑相比,基于RM逻辑的通信电路、奇偶校验电路、运算电路等具有更紧凑的结构和更好 的可测性。RM逻辑通常采用固定极性(Fixed-polarity Reed-Muller, FPRM)和混合极性 (Mixed-polarity Reed-Muller, MPRM)两种表达方式,RM逻辑的两种表达方式都可以用 X0R/AND和XN0R/0R这两种展开式表示。二值FPRM电路可以采用η变量FPRM逻辑函数 表示,该η变量FPRM逻辑函数中有2 η个固定极性,对应2 "个不同的FPRM表达式,其表达 式的简单与复杂程度由极性决定。因此,极性对FPRM电路的功耗、面积等性能指标产生很 大的影响。对较小规模的电路进行优化时,可以使用穷举法遍历每个极性;对较大规模电 路进行优化时,由于极性与变量存在指数关系使得搜索空间急剧增加,穷举法很难在有限 的时间内得到优化结果。因此,需要寻求一种高效智能算法提高搜索效率,以便尽快得到 FPRM电路的最优或近最优极性,实现二值FPRM电路面积或者功耗的优化。人口迀移算法 (Population Migration Algorithm,ΡΜΑ)是我国学者周永华等根据人口迀移规律提出的 一种新的全局优化搜索算法,其主要模拟了人口随着经济重心发生转移和随着压力增加而 扩散的机制。人口迀移算法是一种概率搜索算法,实现全局并行搜索,并在搜索过程中不断 地向可能包含最优解的空间转移,寻找最优或近最优解。人口迀移算法原理简单易操作,与 整体退火遗传算法相比,部分函数的优化效果明显提高,且收敛性和全局寻优能力较强。
[0003] 鉴此,提供一种二值FPRM电路面积最佳极性搜索方法来优化二值FPRM电路面积 具有重要意义。

【发明内容】

[0004] 本发明所要解决的技术问题是提一种二值FPRM电路面积最佳极性搜索方法,该 最佳极性搜索方法搜索效率高,可以快速的搜索到二值FPRM电路的面积最佳极性,面积优 化效果明显。
[0005] 本发明解决上述技术问题所采用的技术方案为:一种二值FPRM电路面积最佳极 性搜索方法,包括以下步骤:
[0006] ①建立二值FPRM电路面积估计模型:
[0007] ①-1采用快速列表技术得到p极性下的二值FPRM电路的XN0R/0R展开式:
[0008]
[0009] 其中,p为极性;X1, X2, X3,…,xn表示XN0R/0R展开式的η个输入变量;极性p用二 进制形式表示为Pn Pn 2···Ρ。,P_jE {0, 1},j = 0, 1,2, ···,η-1 ;ΘΠ 表示同或运算符;M ;表 示或项为或项系数,d i表示或项M i是否在XNOR/OR展开式中出现,且d i e {〇, 1},当d i =0时,表示或项%在XNOR/OR展开式中出现,当d 1时,表示或项M i不在XNOR/OR展 开式中出现;下标i用二进制形式表示为Li2…in,i = 0, 1,2,…,2n-l ;
[0010] ①-2p极性下的二值FPRM电路的XN0R/0R展开式包括多输入或项和多输入同或 项,多输入或项也称为多输入OR门,多输入同或项也称为多输入XNOR门,即p极性下的二 值FPRM电路的XN0R/0R展开式由多输入OR门和多输入XNOR门这两个多输入门组成;将p 极性下二值FPRM电路的XN0R/0R展开式中包含的两个多输入门分别分解为二输入门,得到 二输入OR门和二输入XNOR门,具体分解过程为:
[0011] 把多输入门的第一个输入变量和第二个输入变量作为第一个二输入门的输入变 量,得到第一个二输入门的输出变量;把第一个二输入门的输出变量和多输入门的第三个 输入变量作为第二个二输入门的输入变量,得到第二个二输入运算的输出变量;把第二个 二输入门的输出变量和多输入门的第四个输入变量作为第三个二输入门的输入变量,得到 第三个二输入运算的输出变量;依此类推,直到所有的多输入门的输入变量作为二输入运 算的输入变量。
[0012] 将p极性下的二值FPRM电路的XN0R/0R展开式中的多输入OR门分解后得到多个 二输入OR门,将P极性下二输入OR门的数量记为No. _of_0Rp;将p极性下的二值FPRM电 路的XN0R/0R展开式中的多输入XNOR门分解后得到多个二输入XNOR门,将p极性下二输 入XNOR门的数量记为No. _of_XN0Rp;
[0013] p极性下的二输入OR门和二输入XNOR门的数量分别按式(2)、式(3)计算:
[0014] (2)
[0015] (3)
[0016] 其中,Σ为累加符号,瓦为Cl1的互补变量,LSik的互补变量,k= 1,2, 3···,η;
[0017] ① -3将S = No. _of_0Rp+No. _of_XN0Rp作为ρ极性下的二值FPRM电路面积估计 模型,S表示p极性下的二值FPRM电路面积;
[0018] ②建立二值FPRM电路和人口迀移算法对应关系:
[0019] 人口迀移算法包含以下几个关键要素:人口所在地点、人口所在地点的吸引力、吸 引力最大地点、最大吸引力、人口可移动地表空间、优惠区域、人口流动、人口迀移和人口扩 散;二值FPRM电路面积优化包含以下几个关键要素:极性、相应极性的面积大小、最佳极 性、最小面积、可选择的极性空间、最佳极性所在区间、极性向最佳极性所在区间跳变和跳 出局部最佳极性;
[0020] 将人口所在地点映射到二值FPRM电路面积优化,表示为极性;将人口所在地点的 吸引力映射到二值FPRM电路面积优化,表示为相应极性的面积大小;将吸引力最大地点映 射到二值FPRM电路面积优化,表示为最佳极性;将最大吸引力映射到二值FPRM电路面积优 化,表示为最小面积;将人口可移动地表空间映射到二值FPRM电路面积优化,表示为可选 择的极性空间;将优惠区域映射到二值FPRM电路面积优化,表示为最佳极性所在区间;将 人口流动映射到二值FPRM电路面积优化,表示为极性变换;将人口迀移映射到二值FPRM电 路面积优化,表示为极性向最佳极性所在区间跳变;将人口扩散映射到二值FPRM电路面积 优化,表示为跳出局部最佳极性;
[0021] ③设定人口迀移算法中用于计算人口所在地点的吸引力的吸引力函数:
[0022] 根据二值FPRM电路面积估计模型,设定人口迀移算法计算人口所在地点的吸引 力的吸引力函数:在人口迀移算法中,吸引力越大表示人口所在地的经济水平越高,但面积 最佳极性要求面积越小越好,因此,为了便于两者结合,采用面积的倒数表示吸引力,得到 吸引力函数如下:
[0023] attraction = (1/S) Xa= (I/(No. _of_0Rp+No. _of_XN0Rp)) X a (4)
[0024] 其中,符号"/"表示除运算符号,attraction表示为吸引力大小,其值越大表示电 路面积优化效果越好;No. _of_0Rp表示p极性下二输入OR门的数量;No. _of_XN0R p表示p 极性下二输入XNOR门的数量;α为放大系数,取值为大于等于1000的自然数;
[0025] ④设置人口迀移算法相关参数:
[0026] 人口迀移算法需设置5个参数:人口规模s、人口流动次数1、人口压力参数q、收 缩系数c和人口扩散次数z ;令人口规模s = 25、人口流动次数1 = 10、人口压力参数q = 10、收缩系数c = 0. 1、人口扩散次数z = 10 ;将人口所在区域的半径记为At,At = 37 S2;
[0027] ⑤采用人口迀移算法计算得到吸引力最大地点和最大吸引力,其中吸引力最大地 点即为二值FPRM电路的面积最佳极性,最大吸引力即为二值FPRM电路的最小面积。
[0028] 所述的步骤⑤中采用人口迀移算法得到吸引力最大地点和最大吸引力的具体过 程为:
[0029] ⑤-1在人口可移动地表空间内用随机函数rand()产生s个人口所在地点,将s 个人口所在地点分别记为Pl,P2,…,Ps ;分别以Pl,P2,…,Ps为中点,按人口所在区域 的半径确定s个人口所在区域;
[0030] ⑤-2通过吸引力函数计算人口所在地点Pv的吸引力,V = 1,2,3,…,S,得到人 口所在地点Pl,P2,…,Ps的吸引力;
[0031] ⑤_3比较人口所在地点P1,P2,…,Ps的吸引力,筛选出吸引力最大的人口所在 地点作为吸引力最大地点,记录吸引力最大地点和最大吸引力;
[0032] ⑤-4进行人口流动:在人口所在地点Pv所对应的人口所在区域内采用随机 函数随机产生一个人口所在地点P' v,得到P' 1,P' 2,…,P's,采
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1