[发明专利]一种面向FPGA芯片的网表环路识别方法有效
申请号: | 202010167733.X | 申请日: | 2020-03-11 |
公开(公告)号: | CN111353182B | 公开(公告)日: | 2023-05-05 |
发明(设计)人: | 王坚;李桓;杨鍊;陈哲;郭世泽 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F21/76 | 分类号: | G06F21/76 |
代理公司: | 北京正华智诚专利代理事务所(普通合伙) 11870 | 代理人: | 李梦蝶 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 fpga 芯片 环路 识别 方法 | ||
1.一种面向FPGA芯片的网表环路识别方法,其特征在于,包括以下步骤:
S1:提取FPGA芯片的网表文件;
S2:建立网表文件的有向图模型;
S3:结合栈结构对有向图模型进行深度优先遍历,识别有向图模型的环路;
S4:识别环路中的嵌套环路;
所述步骤S4包括以下子步骤:
S41:设定嵌套环路的集合为Q,设定环路集合C=(c1,c2,…cn)中的标志集合为F={fij|(f11,f12,…,f1n,f21,f22,…fnn)},设定标志集合F中的标志序列为fij,其中i≤n,j≤m,n和m分别为环路集合C的两个子集大小;
S42:初始化标志集合F,使得标志序列fij=0;
S43:任选ci,cj∈C,根据ci∩cj的运算结果输出嵌套环路集合Q;
所述步骤S43包括以下子步骤:
S431:任选ci,cj∈C使得令嵌套环qij=(ci,cj);
S432:将嵌套环qij加入到嵌套环路集合Q中,使得cj∈c都有标志序列fij=1;
S433:根据嵌套环路集合Q的运算结果输出嵌套环路集合;
S5:基于嵌套环路,利用分步循环聚合策略提取环路中的聚合环路,得到FPGA芯片的网表环路识别结果;
所述步骤S5包括以下子步骤:
S51:向网表文件输入嵌套环路集合Q和环路集合C,设置聚合环路集合J;
S52:初始化标志集合F,使得标志序列fij=0;
S53:将标志序列fij加入标志集合F,利用标志集合F判断初步聚合是否结束,若是则初步聚合结束,进入步骤S54,否则结束循环;
S54:任选嵌套环路集合Q中的嵌套环路序列qij∈Q,令j=ci∪cj,将j加入到聚合环路集合J中,进入步骤S55;
S55:判断标志集合F是否应该清空,若是进入步骤S56,否则返回步骤S54;
S56:判断聚合环路集合J是否应该输出,若是则输出聚合环路,结束循环,否则进入S57;
S57:初始化标志集合F,使得标志序列fij=0;
S58:将标志序列fij加入标志集合F,利用标志集合F判断本步聚合是否结束,若是则进入步骤S59,否则结束循环;
S59:任选ji,jj∈J,令j=ci∪cj,将j加入到聚合环路集合J中;
S510:将ji和jj从聚合环路集合J移除,进入S511;
S511:判断标志集合F是否应该清空,若是返回步骤S56,否则返回步骤S59,完成聚合环路提取;
所述步骤S53中,若对于都有标志序列fij=1则初步聚合结束,进入步骤S54;
所述步骤S55中,若对于都有标志序列fij=1,则清空标志集合F;
所述步骤S56中,若使得则进入S57,否则输出聚合环路,结束循环;
所述步骤S58中,若对于都有标志序列fij=1则初步聚合结束,进入步骤S59。
2.根据权利要求1所述的面向FPGA芯片的网表环路识别方法,其特征在于,所述步骤S2包括以下子步骤:
S21:设定网表文件的寄存器集合为R;
S22:根据寄存器集合构建网表文件的顶点集合为V;
S23:根据寄存器集合构建网表文件的有向边集合为E,得到有向图模型G=(V,E),完成有向图模型的建立。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010167733.X/1.html,转载请声明来源钻瓜专利网。