[发明专利]通过部分重绕线解决资源冲突的FPGA布线方法在审
| 申请号: | 202111469893.0 | 申请日: | 2021-12-03 |
| 公开(公告)号: | CN114169277A | 公开(公告)日: | 2022-03-11 |
| 发明(设计)人: | 惠锋;刘佩;周洋洋;王新晨 | 申请(专利权)人: | 无锡中微亿芯有限公司 |
| 主分类号: | G06F30/347 | 分类号: | G06F30/347;G06F30/392;G06F30/394 |
| 代理公司: | 无锡华源专利商标事务所(普通合伙) 32228 | 代理人: | 过顾佳 |
| 地址: | 214000 江苏省无*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 通过 部分 重绕线 解决 资源 冲突 fpga 布线 方法 | ||
本申请公开了一种通过部分重绕线解决资源冲突的FPGA布线方法,涉及FPGA技术,该方法基于每个待处理线网中存在资源冲突的布线资源节点的布局位置确定对应的待重绕区域,仅基于待重绕区域对部分布线节点拆除重绕、而保留其他部分的布线树不变,可以减少重绕线时的漏端搜寻数量和搜寻空间,在解决资源冲突的前提下减少布线运行时间和内存占用,尤其是针对漏端数量较多的和/或存在漏端与源端距离较远的线网可节省大量的运行时间。
技术领域
本发明涉及FPGA领域,尤其是一种通过部分重绕线解决资源冲突的FPGA布线方法。
背景技术
FPGA布线是在芯片布局以后,利用器件的可编程互连资源把已经占用的逻辑单元连接起来的过程,在FPGA布线时,一般需要将FPGA上的包含互连资源在内的可编程逻辑资源抽象成一个布线图G=(V,E),布线图上具有全部的底层模块、架构及互连资源的表示,V中的每个点n代表FPGA内的布线资源或资源模块的端口,E中的每个有向边e=(n1,n2)代表由n1点到n2点所经的开关。用户设计网表中的线网Ni映射到FPGA时,对应线网Ni是其线网端点的组合,包括源端si以及若干个漏端tij,线网Ni可以看成是V的子集合。利用诸如拥挤协商算法之类的布线算法对线网Ni实施布线,也即在G上找到一个由布线资源(线段)组成的布线树(Routing Tree)RTi能将si与所有的tij全部连通。重复上述过程直到全部线网都有对应的布线树。
在对每个线网实施布线的过程中,理想情况是找到完全未被占用资源的路径,但实际上很容易出现找不到完全未被占用资源的路径的情况,此时可以强行使用已被其它线网占用的资源得到此线网的绕线路径,这样会导致同一个资源被多个线网重复占用而形成冲突。因此在对所有线网完成布线后,通常还需要解决资源冲突问题,具体操作是对存在重复或有冲突存在的线网全部拆除进行重布线,如此迭代多次直到布线图中没有一个布线资源被共享或被多于一个线网占用,也即不存在布线冲突。
在对一个线网进行重绕线时,需要拆除该线网已有的整个布线树,但实际上,一个线网中可能只有部分漏端的局部连线有资源冲突,其余大部分都是连线正确且无冲突的,但仍然需要拆除重绕线,导致大量时间浪费,重绕线效率较低。
发明内容
本发明人针对上述问题及技术需求,提出了一种通过部分重绕线解决资源冲突的FPGA布线方法,本发明的技术方案如下:
一种通过部分重绕线解决资源冲突的FPGA布线方法,该方法包括:
基于FPGA内部的布线资源节点利用预设布线算法对用户输入网表中的各个线网实施布线;
遍历已有的布线树中涉及到资源冲突的布线资源节点的各个待处理线网;
基于每个待处理线网中存在资源冲突的布线资源节点的布局位置确定对应的待重绕区域;
对于每个待处理线网,基于对应的待重绕区域拆除待处理线网的已有的布线树的部分布线节点、保留其余的布线树,并利用预设布线算法对拆除的部分进行重绕线,得到待处理线网的更新后的布线树。
本发明的有益技术效果是:
本申请公开了一种通过部分重绕线解决资源冲突的FPGA布线方法,该方法基于每个待处理线网中存在资源冲突的布线资源节点的布局位置确定对应的待重绕区域,仅基于待重绕区域对部分布线节点拆除重绕、而保留其他部分不变,可以减少重绕线时的漏端搜寻数量和搜寻空间,在解决资源冲突的基础上减少布线耗时和占用内存,尤其是针对漏端数量较多的和/或存在漏端与源端距离较远的线网可节省大量的运行时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡中微亿芯有限公司,未经无锡中微亿芯有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111469893.0/2.html,转载请声明来源钻瓜专利网。





