当前位置: 首页 > 专利查询>宁波大学专利>正文

一种二值FPRM电路面积与延时综合优化方法技术

技术编号:17248976 阅读:65 留言:0更新日期:2018-02-11 07:16
本发明专利技术公开了一种二值FPRM电路面积与延时综合优化方法,该方法首先构建p极性下二值FPRM电路的面积估算模型与延时估算模型,然后将最优极性搜索与粒子群寻优相关联,通过粒子群寻优来搜索最优极性,在粒子群寻优过程中,将粒子种群分为第一个粒子子种群和第二个粒子子种群,第一个粒子子种群和第二个粒子子种群分别采用不同的学习策略进行寻优操作,第一个粒子子种群和第二个粒子子种群之间存在相互竞争与学习关系,增强了寻优的多样性,在寻优的过程中,引入变异机制能够有效地避免算法陷入局部最优解,提高了寻优能力,优点是在具有较高的优化效率基础上,优化效果好。

【技术实现步骤摘要】
一种二值FPRM电路面积与延时综合优化方法
本专利技术涉及一种面积与延时综合优化方法,尤其是涉及一种二值FPRM电路面积与延时综合优化方法。
技术介绍
以AND/OR/NOT运算为主的布尔逻辑和以XOR/AND或XNOR/OR为主的RM逻辑是逻辑电路的两种主要表现形式。以往,基于布尔逻辑的集成电路优化技术居多,并且已经建立了一套系统的方案。然而,大量研究表明,基于RM逻辑的电路(如算术逻辑电路、奇偶校验电路等)比布尔逻辑在功耗、面积、速度和可测性等方面具有更多明显的优势。因此,以RM逻辑为主的电路面积、延时和功耗优化技术受到了普遍重视。固定极性RM展开式是RM逻辑中一种常见的逻辑展开式。n变量的RM逻辑函数共有2n个FPRM极性,每个极性对应一种FPRM展开式。每一种展开式繁简不一,其对应电路的面积与延时也不尽相同,目前主要通过搜索最佳极性来时实现电路面积与延时的优化。在小规模的电路中,穷举法是一种有效的极性搜索算法,它可以搜索到最佳极性的FPRM展开式。但是,在中、大规模电路中,穷举法的搜索时间会过于冗长,在时间方面具有不可行性。因此,需要寻找有效的智能算法来搜索电路的最佳极性。粒子群算法,遗传算法,免疫算法均是用来解决组合优化问题较为有效的智能算法,被广泛应用于实际工程中。其中,粒子群算法相比其他智能算法,具有收敛速度快、鲁棒性较好等特点。因此,该算法在解决电路优化问题中受到了越来越多的关注。然而,该算法由于种群全局最优粒子的牵引作用过强,导致算法容易过早收敛,陷入局部最优解,使得算法搜索到的最佳极性与穷举法搜索到最佳极性相比,电路优化效果会差。专利技术内容本专利技术所要解决的技术问题是提供一种在具有较高的优化效率基础上,优化效果好的二值FPRM电路面积与延时综合优化方法。本专利技术解决上述技术问题所采用的技术方案为:一种二值FPRM电路面积与延时综合优化方法,包括以下步骤:①建立p极性下二值FPRM电路的面积估算模型与延时估算模型:①-1将p极性下二值FPRM电路采用二值FPRM逻辑表达式表示为:其中,n为函数fp(xn-1,xn-2,…,x0)输入变量的个数;xn-1,xn-2,…,x0为函数fp(xn-1,xn-2,…,x0)的n个输入变量,为XOR运算符号,bj为与项系数,且bj∈{0,1};j为与项序数,j为大于等于0且小于等于2n-1的整数,用二进制可表示为jn-1jn-2…j0;p为二值FPRM电路的极性,用二进制可表示为pn-1pn-2…p0;πj为与项展开式,表示为i为大于等于0且小于等于n-1的整数,变量在与项展开式中的表示形式如下所示:在pi=0且ji=1时,xi在与项展开式中以原输入变量的形式出现,在ji=0时,xi在与项展开式中以1的形式出现,在pi=1且ji=1时,xi在与项展开式中以原输入变量的反变量形式出现;①-2p极性下二值FPRM电路的由多输入异或项和多输入与项组成,将多输入异或项看作多输入XOR门,多输入与项看作多输入AND门,首先采用类Huffman算法将p极性下二值FPRM电路内包含的所有多输入XOR门分解为二输入XOR门,将分解得到的二输入XOR门的数量记为No.XOR,然后再采用类Huffman算法将p极性下二值FPRM电路内包含的所有多输入AND门分解为二输入AND门,将分解得到的二输入AND门的数量记为No.AND;①-3在分解完的p极性下二值FPRM电路中,从输入变量到输出信号经过二输入AND门和二输入XOR门的数量最少的路径作为关键路径,将该关键路径中包含的二输入AND门和二输入XOR门的数量记为num(key);①-4将p极性下二值FPRM电路的面积记为area(p),延时记为delay(p),得到p极性下二值FPRM电路的面积估算模型为:area(p)=No.XOR+No.AND(3)延时估算模型为:delay(p)=num(key)(4)②构建粒子群算法与二值FPRM电路面积与延时优化的关联:将粒子的位置表示为极性,粒子的搜索空间表示为可选择极性的空间,种群全局最优粒子的位置表示为最佳极性,个体最优粒子的位置表示为近似最佳极性;③采用粒子群算法搜索种群全局最优粒子位置,具体过程为:Step1:设粒子种群大小为M,M取值范围为大于等于20并小于等于100的整数,粒子种群中每个粒子的位置和个体最优粒子位置分别为极性取值范围内的n位二进制数,粒子种群中第m个粒子速度表示为vmnvm(n-1)…vmd…vm2vm1,d为大于等于1且小于等于n的整数,vmd表示粒子种群中第m个粒子速度的第d位,m=1,2,…,M,vmd取值范围在[-vmax,vmax]之间,vmax表示粒子的速度每一位的最大取值,其值为大于等于1并小于等于8的随机数;初始化粒子种群中每个粒子的速度、位置和个体最优粒子位置;通过列表技术得到当前粒子种群中各粒子的位置对应极性下二值FPRM电路的二值FPRM逻辑表达式,按照步骤①-2~步骤①-4的方法得到各极性下二值FPRM电路的面积和延时;设置粒子群算法的迭代总次数为T,T为大于等于100的整数且小于等于500的整数,设定当代迭代次数为变量t,初始化变量t,令变量t=0;Step2:根据公式(5)计算当前粒子种群中每个粒子的位置的适应度:其中,sm表示当前粒子种群中第m个粒子的位置,m=1,2,…,M,fitness(sm)表示当前粒子种群中第m个粒子位置的适应度,area(sm)表示当前粒子种群中第m个粒子的位置对应极性下二值FPRM电路的面积,total_area表示当前粒子种群中所有粒子的位置对应极性下二值FPRM电路的面积之和,delay(sm)表示当前粒子种群中第m个粒子的位置对应极性下二值FPRM电路的延时,total_delay表示当前粒子种群中所有粒子的位置对应极性下二值FPRM电路的延时之和,α为面积权重值,取大于等于0且小于等于1的任意常数;根据公式(6)计算当前粒子种群中每个粒子的个体最优粒子位置的适应度:其中,pbestm表示粒子种群中第m个粒子的个体最优粒子位置,fitness(pbestm)表示粒子种群中第m个粒子的个体最优粒子位置的适应度,area(pbestm)表示粒子种群中第m个粒子的个体最优粒子位置对应极性下二值FPRM电路的面积;delay(pbestm)表示当前粒子种群中第m个粒子的个体最优粒子位置对应极性下二值FPRM电路的延时;Step3:将当前粒子种群中,对应的适应度最小的粒子的个体最优粒子位置作为当前粒子种群的全局最优粒子位置。Step4:采用变量t的当前值加1后的值去更新变量t,得到更新后的t,将更新后的t作为当代迭代次数,对粒子群进行第t次迭代,具体迭代过程为:A.将当前粒子种群中所有粒子按照其粒子位置对应的适应度从小到大的顺序进行排序,选择其中粒子位置对应的适应度较小的数量为|0.3*M|的粒子作为第一个粒子子种群,剩余的粒子作为第二个粒子子种群,其中符号“*”表示乘运算符号,符号||表示对0.3*M的值进行四舍五入,取为整数;B.对第一个粒子子种群中每个粒子的速度进行更新,具体过程为:B-1.设置一大于等于0且小于等于1的概率常数Pls,并采用随机函数为第一个粒子子种群中每个本文档来自技高网...

【技术保护点】
一种二值FPRM电路面积与延时综合优化方法,其特征在于包括以下步骤:①建立p极性下二值FPRM电路的面积估算模型与延时估算模型:①‑1将p极性下二值FPRM电路采用二值FPRM逻辑表达式表示为:

【技术特征摘要】
1.一种二值FPRM电路面积与延时综合优化方法,其特征在于包括以下步骤:①建立p极性下二值FPRM电路的面积估算模型与延时估算模型:①-1将p极性下二值FPRM电路采用二值FPRM逻辑表达式表示为:其中,n为函数fp(xn-1,xn-2,…,x0)输入变量的个数;xn-1,xn-2,…,x0为函数fp(xn-1,xn-2,…,x0)的n个输入变量,为XOR运算符号,bj为与项系数,且bj∈{0,1};j为与项序数,j为大于等于0且小于等于2n-1的整数,用二进制可表示为jn-1jn-2…j0;p为二值FPRM电路的极性,用二进制可表示为pn-1pn-2…p0;πj为与项展开式,表示为i为大于等于0且小于等于n-1的整数,变量在与项展开式中的表示形式如下所示:在pi=0且ji=1时,xi在与项展开式中以原输入变量的形式出现,在ji=0时,xi在与项展开式中以1的形式出现,在pi=1且ji=1时,xi在与项展开式中以原输入变量的反变量形式出现;①-2p极性下二值FPRM电路的由多输入异或项和多输入与项组成,将多输入异或项看作多输入XOR门,多输入与项看作多输入AND门,首先采用类Huffman算法将p极性下二值FPRM电路内包含的所有多输入XOR门分解为二输入XOR门,将分解得到的二输入XOR门的数量记为No.XOR,然后再采用类Huffman算法将p极性下二值FPRM电路内包含的所有多输入AND门分解为二输入AND门,将分解得到的二输入AND门的数量记为No.AND;①-3在分解完的p极性下二值FPRM电路中,从输入变量到输出信号经过二输入AND门和二输入XOR门的数量最少的路径作为关键路径,将该关键路径中包含的二输入AND门和二输入XOR门的数量记为num(key);①-4将p极性下二值FPRM电路的面积记为area(p),延时记为delay(p),得到p极性下二值FPRM电路的面积估算模型为:area(p)=No.XOR+No.AND(3)延时估算模型为:delay(p)=num(key)(4)②构建粒子群算法与二值FPRM电路面积与延时优化的关联:将粒子的位置表示为极性,粒子的搜索空间表示为可选择极性的空间,种群全局最优粒子的位置表示为最佳极性,个体最优粒子的位置表示为近似最佳极性;③采用粒子群算法搜索种群全局最优粒子位置,具体过程为:Step1:设粒子种群大小为M,M取值范围为大于等于20并小于等于100的整数,粒子种群中每个粒子的位置和个体最优粒子位置分别为极性取值范围内的n位二进制数,粒子种群中第m个粒子速度表示为vmnvm(n-1)…vmd…vm2vm1,d为大于等于1且小于等于n的整数,vmd表示粒子种群中第m个粒子速度的第d位,m=1,2,…,M,vmd取值范围在[-vmax,vmax]之间,vmax表示粒子的速度每一位的最大取值,其值为大于等于1并小于等于8的随机数;初始化粒子种群中每个粒子的速度、位置和个体最优粒子位置;通过列表技术得到当前粒子种群中各粒子的位置对应极性下二值FPRM电路的二值FPRM逻辑表达式,按照步骤①-2~步骤①-4的方法得到各极性下二值FPRM电路的面积和延时;设置粒子群算法的迭代总次数为T,T为大于等于100的整数且小于等于500的整数,设定当代迭代次数为变量t,初始化变量t,令变量t=0;Step2:根据公式(5)计算当前粒子种群中每个粒子的位置的适应度:其中,sm表示当前粒子种群中第m个粒子的位置,m=1,2,…,M,fitness(sm)表示当前粒子种群中第m个粒子位置的适应度,area(sm)表示当前粒子种群中第m个粒子的位置对应极性下二值FPRM电路的面积,total_area表示当前粒子种群中所有粒子的位置对应极性下二值FPRM电路的面积之和,delay(sm)表示当前粒子种群中第m个粒子的位置对应极性下二值FPRM电路的延时,total_delay表示当前粒子种群中所有粒子的位置对应极性下二值FPRM电路的延时之和,α为面积权重值,取大于等于0且小于等于1的任意常数;根据公式(6)计算当前粒子种群中每个粒子的个体最优粒子位置的适应度:其中,pbestm表示粒子种群中第m个粒子的个体最优粒子位置,fitness(pbestm)表示粒子种群中第m个粒子的个体最优粒子位置的适应度,area(pbestm)表示粒子种群中第m个粒子的个体最优粒子位置对应极性下二值FPRM电路的面积;delay(pbestm)表示当前粒子种群中第m个粒子的个体最优粒子位置对应极性下二值FPRM电路的延时;Step3:将当前粒子种群中,对应的适应度最小的粒子的个体最优粒子位置作为当前粒子种群的全局最优粒子位置。Step4:采用变量t的当前值加1后的值去更新变量t,得到更新后的t,将更新后的t作为当代迭代次数,对粒子群进行第t次迭代,具体迭代过程为:A.将当前粒子种群中所有粒子按照其粒子位置对应的适应度从小到大的顺序进行排序,选择其中粒子位置对应的适应度较小的数量为|0.3*M|的粒子作为第一个粒子子种群,剩余的粒子作为第二个粒子子种群,其中符号“*”表示乘运算符号,符号||表示对0.3*M的值进行四舍五入,取为整数;B.对第一个粒子子种群中每个粒子的速度进行更新,具体过程为:B-1.设置一大于等于0且小于等于1的概率常数Pls,并采用随机函数为第一个粒子子种群中每个粒子产生一个对应的随机数,该随机数大于等于0且小于等于1,将第一个粒子子种群中第h个粒子...

【专利技术属性】
技术研发人员:汪鹏君王铭波符强张会红
申请(专利权)人:宁波大学
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1