应用于fpga测试的导航布局布线方法

文档序号:6423680阅读:226来源:国知局
专利名称:应用于fpga测试的导航布局布线方法
技术领域
本发明涉及微电子领域中的集成电路设计和电子设计自动化领域,特别涉及一种应用于FPGA测试的导航布局布线方法。
背景技术
FPGA是目前市场上广泛使用的可编程器件,具有开发周期短和成本低等优点。FPGA可以实现各种各样的应用,在FPGA设计的CAD软件流程中,布局布线是至关重要的一歩。布局算法确定了实现电路功能需要的各逻辑单元块在FPGA中的位置,它的优化目标是把相连的逻辑单元块靠近放置以最大限度地減少所需要的布线资源,但有时也要平衡FPGA 中所需要的布线密度或者最大限度提高电路速度。一旦确定了电路中所有逻辑单元块的位置,布线器就可打通合适的可编程开关以连接电路需要的所有逻辑单元块的输入和输出引脚。绝大多数FPGA的布线器有一套避免拥挤的策略以解决布线资源竞争问题。然而,用户不能轻易的控制以上传统布局布线算法的具体执行过程,这导致了布局布线结果具有一定的不可控性和不可预知性。为了测试抗辐射的基于0.5微米SOI的FPGA芯片,应用于验证与测试的码流文件需要由CAD软件生成。然而现有的FPGA CADエ具,比如Xilinx ISE和Altera Quartus II,不能满足需求。这些FPGA CAD工具不仅不能应用于我们的FPGA芯片,而且不能生成用于验证与测试的码流文件。执行布局布线之前,用户不知道FPGA芯片结构中的哪些逻辑单元块和布线资源将会被使用。为了测试基于SOI的FPGA芯片,用户必须在布局布线执行之前指定将要使用逻辑单元块和布线资源,以达到测试FPGA芯片结构中这些逻辑资源块和布线资源的目的。

发明内容
本发明的目的之ー是提供ー种为抗辐射的基于0. 5微米SOI的FPGA芯片产生用于验证与测试的布局布线结果的导航布局布线方法。根据本发明提供的ー种应用于FPGA测试的导航布局布线方法包括
读取FPGA芯片结构信息;
读取打包之后生成的网表信息;
读取逻辑单元块位置及线网位置的用户约束条件;
根据描述用户约束文件进行布局及布线。本发明提供的应用于FPGA测试的导航布局布线方法可以使用户决定使用哪些布局布线资源,从而产生用于验证和测试FPGA芯片的布局布线結果。


图I是本发明实施例提供的应用于FPGA测试的导航布局布线方法的流程示意 图2是本发明实施例提供的指定位置的线网描述示意图;图3是本发明实施例提供的一开关盒布线规则示意 图4是本发明实施例提供的另一开关盒布线规则示意 图5是本发明实施例提供的另一开关盒布线规则示意 图6是本发明实施例提供的另一开关盒布线规则示意 图7是本发明实施例提供的一种指定路径线网示意 图8是本发明实施例提供的另一种指定路径线网示意 图9是本发明实施例提供的另一种指定路径线网示意图;
图10本发明实施例提供的测试长度为I的互连线段的布局布线结果。
具体实施例方式如图I所示,本发明实施例提供的一种应用于FPGA测试的导航布局布线方法包括
步骤SI、读取FPGA芯片结构信息。FPGA芯片结构信息通常包括芯片中各种类型的逻辑单元块的位置、逻辑单元块的引脚名称、引脚位置、逻辑单元块输入引脚到输出引脚的延时、布线通道的宽度、互连线段的分布和延时及布线开关的位置、类型、延时等等。步骤S2、读取打包之后生成的网表信息。网表信息包括打包之后生成的逻辑单元块的名称和类型,使用到的逻辑单元块的引脚,所有线网的源端和漏端。步骤S3、读取逻辑单元块位置及线网位置的用户约束条件。网表信息是即将要布局布线到FPGA中的逻辑单元块和线网。用户约束条件是具体约束对逻辑单元块的布局和对线网的布线。导航布局布线可以根据用户的约束进行布局布线。这些布局布线的约束是由用户写在用户约束文件中。导航布局布线工具读取用户约束文件获得约束信息,然后根据约束执行布局布线。用户约束文件包含两部分布局约束和布线约束。其中,布局约束描述逻辑单元块的位置,也就是打包过程输出的网表文件中指定的逻辑单元块应该放置在FPGA结构中的位置坐标(列号,行号)。这些指定的位置坐标(列号,行号)必须合法,位置坐标不能超过FPGA结构的范围。同时,网表文件中被指定的逻辑单元块的类型必须与FPGA结构中指定位置处的逻辑单元块类型相匹配。如果用户指定的位置坐标不合法,该程序会报错,并且终止程序,提示用户重新指定位置坐标。布线约束描述线网的位置。如图I所示,每个指定位置的线网是按照信号的走向依次描述每一个经过的结点。每个线网上的信号都是从源端(source node)出发,依次经过逻辑单元块输出引脚结点,互连线段结点,逻辑单元块输入引脚结点,最终到达漏端(sinknode)。这些结点必须事先已经被建立在布线资源图中。每个结点的信息包括该结点的列号、行号、类型及序号部分。然而,用户列出所有指定路径线网上的所有结点是非常困难的。开关盒布线规则可以解决这个问题。用户只需要写出开关盒布线规则,导航布局布线工具就可以根据开关盒布线规则自动地选择互连线段结点。图2-图5列举了一些开关盒布线规则的例子,但不限于此。如图2所示,根据信号的方向,如果信号从左边进入开关盒,那么信号从开关盒上边穿出(图2);如果信号从右边进入开关盒,那么信号从开关盒左边穿出(图3);如果信号从上边进入开关盒,那么信号从开关盒右边穿出(图4);如果信号从下边进入开关盒,那么信号从开关盒右边穿出(图5)。用户可以根据自己的需要指定开关盒布线规则。根据开关盒布线规则,大量的互连线段结点不用罗列在用户约束文件中。结点与结点之间的选择要符合FPGA结构的约束,如源端与逻辑单元块输出引脚结点的选择要符合局部布线结构,互连线段结点之间的选择要符合开关盒结构等等。读取用户约束文件具体包括
(I)、把布局约束中描述的逻辑单元块的位置信息存储在数据结构中,并且检查位置坐标是否合法。如果不合法,则程序停止并提示用户修改。(2)、把布线约束中描述的线网的位置信息存储在数据结构中,并且检查结点的信息是否合法。如果不合法,则程序停止并提示用户修改。(3)、如果约束文件中含有开关盒布线规则,则该规则信息存储在数据结构中。
步骤S4、根据用户约束文件进行布局及布线。其中,执行布局是对于布局约束中指定的逻辑单元块,按照用户约束文件的要求把他们放置在约束的位置。其余没有被指定的逻辑单元块应用现有的布局算法进行布局。其中,执行布线是对于布线约束中指定的线网,按照用户约束文件的要求把线网放置在约束的位置。其余没有被指定的线网应用现有的布线算法进行布线。打包之后输出网表文件中的所有的线网都需要布线。一个线网只有ー个源端,但是漏端的数量可能是ー个,也可能是多个。在用户约束文件中,用户可以指定一个线网中一个源端到该线网的所有或者部分漏端的路径。因此,网表中的线网可以分为3类无指定路径的线网,全部指定路径的线网,部分指定路径的线网。对于无指定路径线网这种线网的源端到其所有漏端的路径都是没有被用户约束文件指定的。如图6所示,该线网有3个漏端,源端到这3个漏端的路径都没有被指定。这种线网由布线算法来布线。对于全部指定路径线网这种线网的源端到其所有漏端的路径都是被用户约束文件指定的。如图7所示,该线网有3个漏端,源端到这3个漏端的路径都是被指定的。这种线网不需要由布线算法来布线。但是如果用户需要,这种线网的时序分析还是需要执行。对于部分指定路径线网这种线网的源端到其一部分漏端的路径是被用户约束文件指定的,到另一部分漏端的路径是没有被指定的。如图8所示,该线网有3个漏端,源端到其中ー个漏端的路径是被指定的,到另外两个漏端的路径没有被指定。被指定的路径不需要由算法来布线,没有被指定的路径由布线算法来布线。在对这种路径布线时,需要考虑固定路径的时序,以达到布线的最优結果。步骤S5、生成布局布线結果。配置码流生成工具读取该结果后生成的码流文件即可应用于FPGA测试。图9是为了测试FPGA芯片中长度为I的互连线段的布局布线結果。本发明实施例提供的应用于FPGA测试的导航布局布线方法具有以下有益效果(I)为FPGA芯片测试码流的生成提供布局布线結果,使用户可以达到测试FPGA芯片中指定结构的目的。(2)可以由用户来指定布局过程中使用的逻辑单元块,以达到测试这些逻辑単元块的目的。(3)可以由用户来指定布线过程中使用的布线资源,以达到测试这些布线资源的目的。(4)通过应用导航布局布线方法来测试FPGA芯片,可以达到比较高的测试覆盖率。( 5)可以通过写出开关盒布线规则的方法来减少用户写入约束文件结点的数量。(6)可以对无指定路径线网,全部指定路径线网和部分指定路径线网三种类型的线网进行布线。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
权利要求
1.一种应用于FPGA测试的导航布局布线方法,其特征在于,包括 读取FPGA芯片结构信息; 读取打包之后生成的网表信息; 读取逻辑单元块位置及线网位置的用户约束条件; 根据用户约束文件进行布局及布线。
2.根据权利要求I所述的布线方法,其特征在于,所述读取逻辑单元块位置及线网位置的用户约束条件包括 将描述逻辑单元块的位置信息存储在数据结构中,并且检查位置坐标是否合法; 将描述线网的位置信息存储在数据结构中,并且检查结点的信息是否合法; 当用户约束文件中含有开关盒布线规则,则该规则信息存储在数据结构中。
3.根据权利要求2所述的布线方法,其特征在于,所述检查位置坐标是否合法包括 检查所述逻辑单元块的位置在FPGA结构中的位置坐标是否在FPGA结构的范围; 检查所述逻辑单元块的类型是否与FPGA结构中指定位置处的逻辑单元块类型相匹配。
4.根据权利要求2所述的布线方法,其特征在于,所述开关盒布线规则包括 根据信号的方向,当信号从左边进入开关盒,则信号从开关盒上边穿出; 当信号从右边进入开关盒,则信号从开关盒左边穿出; 当信号从上边进入开关盒,则信号从开关盒右边穿出; 当信号从下边进入开关盒,则信号从开关盒右边穿出。
5.根据权利要求1-4任一项所述的布线方法,其特征在于 所述逻辑单元块位置是打包过程输出的网表信息中指定的逻辑单元块放置在FPGA结构中的位置坐标。
6.根据权利要求1-4任一项所述的布线方法,其特征在于 所述线网是按照信号的走向依次描述每一个经过的结点;所述结点的信息包括该结点的列号、行号、类型及序号。
7.根据权利要求1-4任一项所述的布线方法,其特征在于 所述线网包括无指定路径的线网、全部指定路径的线网及部分指定路径的线网。
8.根据权利要求7所述的布线方法,其特征在于 所述无指定路径的线网是源端到其所有漏端的路径都是没有被用户约束文件指定的。
9.根据权利要求7所述的布线方法,其特征在于 所述全部指定路径的线网是源端到其所有漏端的路径都是被用户约束文件指定的。
10.根据权利要求7所述的布线方法,其特征在于 所述部分指定路径的线网是源端到其一部分漏端的路径是被用户约束文件指定的,到另一部分漏端的路径是没有被指定的。
全文摘要
本发明公开了一种应用于FPGA测试的导航布局布线方法包括读取FPGA芯片结构信息;读取打包之后生成的网表信息;读取逻辑单元块位置及线网位置的用户约束条件;及根据用户约束文件进行布局及布线。本发明提供的应用于FPGA测试的导航布局布线方法可以使用户决定使用哪些布局布线资源,从而产生用于验证和测试FPGA芯片的布局布线结果。
文档编号G06F17/50GK102768692SQ201110116730
公开日2012年11月7日 申请日期2011年5月6日 优先权日2011年5月6日
发明者于芳, 李艳, 陈亮 申请人:中国科学院微电子研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1