一种应用于对特定结构fpga进行测试的导航映射方法

文档序号:6025897阅读:142来源:国知局
专利名称:一种应用于对特定结构fpga进行测试的导航映射方法
技术领域
本发明涉及现场可编程门阵列及其配套电子设计自动化设计技术领域,特别涉及一种应用于对特定结构FPGA进行测试的导航映射方法。
背景技术
现场可编程门阵列(FPGA)自从面世以来,凭借它可配置重构这一特性,已经在各个领域得到了广泛的应用。今天的FPGA在结构上更得到了广泛的扩充,更像是一个片上系统(system on a chip),它可以包括混合信号l/0(mixed signal 10),千兆赫兹接收器(Gigahertz transceivers),以及大量可配置的逻辑等和用于辅助设计的软件工具。由于FPGA结构的日益复杂,规模越来越大,内部资源的种类日益丰富,致使对FPGA测试的难度也越来越高。FPGA生产商Xilinx公司的Shahin提出,FPGA测试方法的特殊挑战在于:1)、FPGA测试方法要与终端应用有相同相关性,同时也要独立于终端应用;2)、应该具有可扩展性,并且与阵列尺寸无关;3)、可重复使用并且可以自动化操作;4)、易于测量定位。由于FPGA芯片具有可编程的特点,所以即使FPGA芯片具有工艺缺陷,如果可以确定缺陷位置,在编程时绕过缺陷所在逻辑,那么这种缺陷是可以接受的。能够避开有缺陷的逻辑进行编程,这种能力需要借助设计软件工具来实现。同时,如果想达到100%的测试覆盖率,必须使软件工具中对逻辑块和连接的布局布线过程是完全可控的才能实现。可以定向且有针对性的确定测试目标,可以控制每个可配置逻辑块的使用情况,并且尽可能得增加测试覆盖率。上述对FPGA测试的要求必须通过一个辅助设计软件工具才能完成。目前对于FPGA的测试分为应用相关的测试和应用无关的测试:应用相关的测试是指,应用较大规模的电路设计,下载到FPGA芯片上,通过对电路设计的实现情况测试FPGA的硬件缺陷。这种测试方法的弊端在于,受到测试电路规模的限制,测试覆盖率不高,测试过程对被测FPGA的逻辑块没有针对性;应用无关的测试是指,通过一些有规则的测试向量,下载到FPGA中,通过输入输出的变化规律测试FPGA的硬件。这样的方法对硬件的逻辑结构的测试有一定的针对性,但受到EDA工具不能完全可控的限制,无法定位缺陷的位置所在。结合上述FPGA测试方法的特点和局限性,为了在应用无关的测试过程中达到较高的测试覆盖率,对FPGA逻辑结构中的每一个逻辑单元都能有针对性的进行测试,同时在应用FPGA设计时达到避开有缺陷的逻辑进行编程的目的,本发明提出了一种应用于对特定结构FPGA进行测试的导航映射方法。

发明内容
(一 )要解决的技术问题有鉴于此,本发明的主要目的在于提供一种应用于对特定结构FPGA进行测试的导航映射方法,以使每个可配置逻辑块的使用情况都是可控制的。(二)技术方案为达到上述目的,本发明提供了一种应用于对特定结构FPGA进行测试的导航映射方法,该方法包括:读取FPGA结构信息;读取综合结果网表文件;读取用于导航映射的用户约束文件;以及根据该用户约束文件,进行映射。上述方案中,所述综合结果网表文件和所述用于导航映射的用户约束文件均是结合FPGA结构并且根据测试要求而生成的。上述方案中,所述用于导航映射的用户约束文件包括:约束模块的类型;基本逻辑单位名称;基本逻辑单位所属可配置逻辑块信息;基本逻辑单位所属逻辑单元信息;以及基本逻辑单位附加信息。所述基本逻辑单位是FPGA结构中可映射的逻辑单位,包括查找表、分布式存储器和寄存器。所述基本逻辑单位所属可配置逻辑块信息包括:具有相同可配置逻辑块信息的基本逻辑单位将会在映射步骤被装箱在同一可配置逻辑块中;在映射步骤之后的布局布线步骤中该可配置逻辑块将被分配的位置信息。所述基本逻辑单位所属逻辑单元信息包括:具有相同逻辑单元信息的基本逻辑单位将会在映射步骤打包在同一逻辑单元中;在映射步骤的装箱阶段该逻辑单元在可配置逻辑块中的位置信息。所述基本逻辑单位附加信息包括:对在测试过程中有特殊要求的基本逻辑单位,是否按常规方法映射进行标注。上述方案中,所述根据该用户约束文件进行映射的步骤具体包括:根据该用户约束文件中基本逻辑单位的名称,在所述综合结果网表文件中找到该基本逻辑单位,同时将该基本逻辑单位所属可配置逻辑块信息、所属逻辑单元信息和附加信息加载到该基本逻辑单位的数据结构中;在所述综合结果网表文件中根据所属相同可配置逻辑块并且所属相同逻辑单元的法则,遍历所有基本逻辑单位,将筛选出的基本逻辑单位打包为一个逻辑单元;在所述综合结果网表文件中根据所属相同可配置逻辑块的原则,遍历所有逻辑单元,将筛选出的逻辑单元按照所属逻辑单元位置信息,装箱为一个可配置逻辑块;以及将以可配置逻辑块为单位的综合结果网表文件传递给布局布线工具,完成导航映射。(三)有益效果本发明提供的应用于对特定结构FPGA进行测试的导航映射方法,通过借助用户约束文件进行指导,对FPGA进行可测性的导航映射,可以有效确定测试目标,并且达到了可以控制每个可配置逻辑块使用情况的目的,同时可以大大提高对FPGA芯片的测试覆盖率。


图1是依照本发明实施例的特定结构FPGA的示意图;图2是图1所示特定结构FPGA中可配置逻辑块的示意图;图3是图1所示特定结构FPGA中逻辑单元的示意图;图4是依照本发明实施例应用于对特定结构FPGA进行测试的导航映射方法流程图;图5是依照本发明实施例映射过程各阶段逻辑块结构链示意图;图6是依照本发明实施例用户约束文件内容示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。本发明提供的是一种应用于对特定结构FPGA进行测试的导航映射方法,其中特定结构FPGA是指本发明所适用的FPGA结构为基于查找表的岛型结构,以区分于基于MUX的结构或树形结构。该特定结构FPGA的示意图如图1所示,其基本逻辑资源为可配置逻辑块(LB),一个LB包括两个逻辑单元(LC),一个LC由一个4-LUT (查找表)和一个D触发器构成。其中可配置逻辑块的示意图如图2所示,逻辑单元的示意图如图3所示。如图4、图5和图6所示,本发明实施例提出了一种应用于对特定结构FPGA进行测试的导航映射方法,具体包括以下步骤:步骤1:读取FPGA芯片结构信息。FPGA芯片结构信息通常包括可配置逻辑块的个数、排列方式、逻辑块内部的结构、逻辑与布线通道之间的连线方式,以及输入输出管脚信息等。步骤2:读取综合结果网表文件。综合结果通常以基本逻辑单位为主要成员,其包括1-4输入查找表、寄存器和分布式存储器等。通常综合结果网表文件为综合器直接输出。在测试过程中,便于导航映射的实现,综合结果网表文件可以与用户约束文件同步生成,以达到对网表中每一个基本逻辑单位起到约束的作用。步骤3:读取用户约束文件。用户约束文件逻辑描述部分如图6所示,它主要包括以下几部分:约束模块的类型;约束模块的类型;基本逻辑单位所属可配置逻辑块信息;基本逻辑单位所属逻辑单元信息;基本逻辑单位附加信息。其中,基本逻辑单位所属可配置逻辑块信息包括:具有相同可配置逻辑块信息的基本逻辑单位将会在映射步骤被装箱在同一可配置逻辑块中;在接下来的布局布线步骤中该可配置逻辑块将被分配的位置信息。基本逻辑单位所属逻辑单元信息包括:具有相同逻辑单元信息的基本逻辑单位将会在映射步骤打包在同一逻辑单元中;在映射步骤的装箱阶段该逻辑单元在可配置逻辑块中的位置信息。基本逻辑单位附加信息包括:对在测试过程中有特殊要求的基本逻辑单位,是否按常规方法映射进行标注。在测试用途中,有标注不按照常规方式进行映射的基本逻辑单位,在打包过程中,其连线不是直接映射到FPGA硬件结构中,而是通过布线通道连接,以此方法测试该布线通道。步骤4:根据该用户约束文件进行映射。在读取步骤1-3所有文件的同时,各项数据均记录在映射工具的数据结构中,映射步骤分为两个阶段实现:打包和装箱。在综合结果网表文件中根据所属相同可配置逻辑块并且所属相同逻辑单元的法贝1J,遍历所有基本逻辑单位,将筛选出的基本逻辑单位打包为一个逻辑单元。在综合结果网表文件中根据所属相同可配置逻辑块的原则,遍历所有逻辑单元,将筛选出的逻辑单元按照所属逻辑单元位置信息,装箱为一个可配置逻辑块。将以可配置逻辑块为单位的综合结果网表文件传递给布局布线工具,完成导航映射。
例如,如图6所示的用户约束文件,约束模块类型INST为逻辑模块。其中名称为Ibc2rl_lut0, Ibc2rl_ff0, lbc2rl_ffl的基本逻辑单位,他们的所属可配置逻辑块信息Ib均为x2yl。这说明他们将被装箱在同一个可配置逻辑块中,同时,在布局布线阶段,这个可配置逻辑块将被布局在x2yl的位置。他们的所属逻辑单元信息Ic显示,lbC2rl_fT0和lbc2rl_ffI 均为 O, Ibc2rl_lut0 的 Ic 为 I,并且,lbc2rl_ff I 的附加信息 packnet 为 O,说明在映射过程中这个基本逻辑单位的连线不直接映射到FPGA硬件结构中,而是通过布线通道连接。在映射过程中,首先将Ic信息相同的Ibc2rl_lut0和Ibc2rl_ff0两个基本逻辑单位打包成一个逻辑单元,这个逻辑单元的连线是通过布线通道实现的;lbc2rl_ffl自己打包为一个逻辑单元;然后,按照Ic值的约束,将这两个逻辑单元装箱为一个可配置逻辑块,其中Ibc2rl_lut0和Ibc2rl_ff0组成的逻辑单元占据可配置逻辑块IcO的位置,lbc2rl_ffl组成的逻辑单元占据可配置逻辑块Icl的位置。同样的方法处理网表文件中所有其他的基本逻辑单位,最终生成以可配置逻辑块为单位的网表文件,作为映射阶段的输出,提供给布局布线工具。本发明通过借助用户约束文件指导,从最初的综合网表就可以预知映射的结果,进而使每个可配置逻辑块的使用情况都可控制,提高了 FPGA芯片的可测性以及测试的覆盖率。以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种应用于对特定结构FPGA进行测试的导航映射方法,其特征在于,该方法包括: 读取FPGA结构信息; 读取综合结果网表文件; 读取用于导航映射的用户约束文件;以及 根据该用户约束文件,进行映射。
2.如权利要求1所述的应用于对特定结构FPGA进行测试的导航映射方法,其特征在于,所述综合结果网表文件和所述用于导航映射的用户约束文件均是结合FPGA结构并且根据测试要求而生成的。
3.如权利要求1所述的应用于对特定结构FPGA进行测试的导航映射方法,其特征在于,所述用于导航映射的用户约束文件包括: 约束模块的类型; 基本逻辑单位名称; 基本逻辑单位所属可配置逻辑块信息; 基本逻辑单位所属逻辑单元信息;以及 基本逻辑单位附加信息。
4.如权利要求3所述应用于对特定结构FPGA进行测试的导航映射方法,其特征在于,所述基本逻辑单位是FPGA结构中可映射的逻辑单位,包括查找表、分布式存储器和寄存器。
5.如权利要求3所述应用于对特定结构FPGA进行测试的导航映射方法,其特征在于,所述基本逻辑单位所属可配置逻辑块信息包括: 具有相同可配置逻辑块信息的基本逻辑单位将会在映射步骤被装箱在同一可配置逻辑块中;在映射步骤之后的布局布线步骤中该可配置逻辑块将被分配的位置信息。
6.如权利要求3所述应用于对特定结构FPGA进行测试的导航映射方法,其特征在于,所述基本逻辑单位所属逻辑单元信息包括: 具有相同逻辑单元信息的基本逻辑单位将会在映射步骤打包在同一逻辑单元中;在映射步骤的装箱阶段该逻辑单元在可配置逻辑块中的位置信息。
7.如权利要求3所述应用于对特定结构FPGA进行测试的导航映射方法,其特征在于,所述基本逻辑单位附加信息包括:对在测试过程中有特殊要求的基本逻辑单位,是否按常规方法映射进行标注。
8.如权利要求1-7中任一项所述的应用于对特定结构FPGA进行测试的导航映射方法,其特征在于,所述根据该用户约束文件进行映射的步骤具体包括: 根据该用户约束文件中基本逻辑单位的名称,在所述综合结果网表文件中找到该基本逻辑单位,同时将该基本逻辑单位所属可配置逻辑块信息、所属逻辑单元信息和附加信息加载到该基本逻辑单位的数据结构中; 在所述综合结果网表文件中根据所属相同可配置逻辑块并且所属相同逻辑单元的法贝1J,遍历所有基本逻辑单位,将筛选出的基本逻辑单位打包为一个逻辑单元; 在所述综合结果网表文件中根据所属相同可配置逻辑块的原则,遍历所有逻辑单元,将筛选出的逻辑单元按照所属逻辑单元位置信息,装箱为一个可配置逻辑块;以及 将以可配置逻辑块为单位的综合结果网表文件传递给布局布线工具,完成导航映射。
全文摘要
本发明公开了一种应用于对特定结构FPGA进行测试的导航映射方法,该方法包括读取FPGA结构信息;读取综合结果网表文件;读取用于导航映射的用户约束文件;以及根据该用户约束文件,进行映射。本发明通过借助用户约束文件进行指导,对FPGA进行可测性的导航映射,可以有效确定测试目标,并且达到了可以控制每个可配置逻辑块使用情况的目的,同时可以大大提高对FPGA芯片的测试覆盖率。
文档编号G01R31/3185GK103163450SQ201110421639
公开日2013年6月19日 申请日期2011年12月16日 优先权日2011年12月16日
发明者于芳, 张倩莉 申请人:中国科学院微电子研究所, 中国科学院半导体研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1