CN108051729B - Fpga布线覆盖率测试方法 - Google Patents

Fpga布线覆盖率测试方法 Download PDF

Info

Publication number
CN108051729B
CN108051729B CN201711278984.XA CN201711278984A CN108051729B CN 108051729 B CN108051729 B CN 108051729B CN 201711278984 A CN201711278984 A CN 201711278984A CN 108051729 B CN108051729 B CN 108051729B
Authority
CN
China
Prior art keywords
wiring
basic logic
preset path
fpga
row
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711278984.XA
Other languages
English (en)
Other versions
CN108051729A (zh
Inventor
褚惠芬
孙浩涛
贾红
程显志
陈维新
韦嶔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
XI'AN INTELLIGENCE SILICON TECHNOLOGY Inc
Original Assignee
XI'AN INTELLIGENCE SILICON TECHNOLOGY Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by XI'AN INTELLIGENCE SILICON TECHNOLOGY Inc filed Critical XI'AN INTELLIGENCE SILICON TECHNOLOGY Inc
Priority to CN201711278984.XA priority Critical patent/CN108051729B/zh
Publication of CN108051729A publication Critical patent/CN108051729A/zh
Application granted granted Critical
Publication of CN108051729B publication Critical patent/CN108051729B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2851Testing of integrated circuits [IC]
    • G01R31/2853Electrical testing of internal connections or -isolation, e.g. latch-up or chip-to-lead connections
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318516Test of programmable logic devices [PLDs]
    • G01R31/318519Test of field programmable gate arrays [FPGA]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明涉及一种FPGA布线覆盖率测试方法。该测试方法包括在FPGA的IO接口输入测试信号;根据不同的布线方式选取对应的预设路径;根据所述布线方式以及所述预设路径分别将FPGA中的每行和每列基本逻辑单元进行布线;读取IO接口的输出结果完成布线覆盖率测试。本发明提供的测试方法,测试用例数量少,布线方法易于理解,可以节省大量时间以及成本。

Description

FPGA布线覆盖率测试方法
技术领域
本发明属于FPGA数据测试技术领域,具体涉及一种FPGA布线覆盖率测试方法。
背景技术
FPGA(Field Programmable Gate Array,简称FPGA),即现场可编程门阵列。FPGA集成度高、体积小,具有通过用户编程实现专门应用的功能。FPGA既可以解决定制电路的不足,又可以克服原有可编程器件门电路数有限的缺点,是电子设计领域中最具有活力以及发展前途的技术之一。可编程互连线是FPGA器件中至关重要的一部分资源。FPGA器件通过互连线将器件内部的可编程资源、时钟控制资源等连接成一个整体。互连线与互连线之间存在着可编程开关阵列,这些可编程开关阵列使得FPGA器件内部的互连线可以根据用户的指定,进行线与线之间的连接和绝缘,从而实现设计的功能。
互连线的完整性是整个FPGA器件内部资源可测性的基础。任何互连线中存在的故障,都有可能导致电路设计的配置失效。为了能够减少甚至排除FPGA器件内部的互连线故障,保证产品具有较高的编程可靠性,需要设计出配置次数少、连线覆盖率高的测试向量。图1为现有技术中的一种图层分解式互联线模型的示意图,图1所示为完整的开关矩阵外部互连线分布。以二长线为例,图1中开关矩阵的上边、下边以及左三边存在需要测试的互连线,上、下两边的二长线都有十条左向(即向左)二长线和十条右向(即向右)二长线,左边的二长线有二十条上向(即向上)二长线和二十条下向(即向下)二长线。建立图层分解式模型时,将开关矩阵十条上向二长线和十条下向二长线转移到右侧,这样开关矩阵的每条边上都有二十条互连线,形成了规则互连线图形。然后分解连线图层,每个方向都刚好有十条互连线,因此将互连线图形划分为10层,每一个方向的连线都是一条,图层分解式模型就建好了。然后将分解后的图层进行数字化,给定连线和连线的连接方程,利用流算法进行每个图层的处理,在寻找到每个图层的测试路径之后,将测试路径优化合并,编写位流文件进行测试。以上图层分解式模型是现有的用于互连线测试的经典模型,但应用这种模型测试互连线的效率很低,以二长线为例就需要划分为10层,导致单独对二长线的测试需要配置FPGA器件36次,再加上FPGA器件的其他类型互连线的测试到对需要对FPGA器件进行高达百次以上的测试。
因此现有布线方式复杂,完成100%覆盖时最终生成测试向量数量较多,不但导致时间成本上升,而且测试向量难以维护。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种FPGA布线覆盖率测试方法,能够测试每颗FPGA布线的连通性,并实现100%的覆盖率。
本发明的一个实施例提供了一种FPGA布线覆盖率测试方法,包括:
在FPGA的IO接口输入测试信号;
根据不同的布线方式选取对应的预设路径;
根据所述布线方式以及所述预设路径分别将FPGA中的每行和每列基本逻辑单元进行布线;
读取FPGA IO接口的输出结果完成布线覆盖率测试。
在本发明的一个实施例中,所述布线方式为6倍线布线或2倍线布线;相应地,所述6倍线布线方式的预设路径包括四条不同的所述预设路径,所述2倍线布线方式的预设路径包括八条不同的所述预设路径;其中,所述预设路径为FPGA的布线路径。
在本发明的一个实施例中,所述基本逻辑单元包括查找表单元和路径选择单元。
在本发明的一个实施例中,所述查找表单元和所述路径选择单元中均设置有布线开关矩阵。
在本发明的一个实施例中,所述根据所述布线方式以及所述预设路径分别将FPGA中的每行和每列基本逻辑单元进行布线,包括:
根据所述布线方式确定布线间隔;
根据所述预设路径确定第一预设路径和第二预设路径;
根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每行基本逻辑单元进行布线;
根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每列基本逻辑单元进行布线。
在本发明的一个实施例中,根据所述布线方式确定布线间隔,包括:
6倍线布线方式确定的布线间隔为间隔5个所述基本逻辑单元;
2倍线布线方式确定的布线间隔为间隔1个所述基本逻辑单元。
在本发明的一个实施例中,根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每行基本逻辑单元进行布线,包括:
从第X行第N列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,X的取值顺序为1~M依次执行;
从第X行第N-1列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,X的取值顺序为1~M依次执行;
其中,M为所述基本逻辑单元的行数,N为所述基本逻辑单元的列数。
在本发明的一个实施例中,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,包括:
根据所述第一预设路径,从选取的首个所述基本逻辑单元开始,在水平方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回;
根据所述第二预设路径,从选取的首个所述基本逻辑单元开始,在水平方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回,完成所述第X行基本逻辑单元进行布线。
在本发明的一个实施例中,根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每列基本逻辑单元进行布线,包括:
从第1行第P列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,P的取值顺序为1~N依次执行;
从第2行第P列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,P的取值顺序为1~N依次执行;
其中,N为所述基本逻辑单元的列数。
在本发明的一个实施例中,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,包括:根据所述第一预设路径,从选取的首个所述基本逻辑单元开始,在垂直方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回;
根据所述第二预设路径,从选取的首个所述基本逻辑单元开始,在垂直方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回,完成所述第X行基本逻辑单元进行布线。
与现有技术相比,本发明具有如下有益效果:
1)最终测试向量数量较少,且布线方法易于理解,完成了6倍线和2倍线的100%覆盖测试。
2)由于测试主要是用于工厂终测功能测试(Functional Test),可以节省大量时间,从而节省成本。
附图说明
图1为现有技术中的一种图层分解式互联线模型的示意图;
图2为本发明实施例提供的一种FPGA布线覆盖率测试方法的流程图;
图3为本发明实施例提供的一种FPGA 2倍线布线方向示意图;
图4为本发明实施例提供的一种FPGA 2倍线边界布线回环示意图;
图5为本发明实施例提供的一种FPGA 6倍线布线方向示意图;
图6为本发明实施例提供的一种FPGA 6倍线边界布线回环示意图;
图7为本发明实施例提供的一种水平布线覆盖率测试流程示意图;
图8为本发明实施例提供的一种FPGA 6倍线水平布线示意图;
图9为本发明实施例提供的一种FPGA 6倍线垂直布线示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
实施例一
请参见图2,图2为本发明实施例提供的一种FPGA布线覆盖率测试方法的流程图。
本发明实施例提供的一种FPGA布线覆盖率测试方法的流程图。具体地,该测试方法可以包括:
步骤1、在FPGA的IO接口输入测试信号;
步骤2、根据不同的布线方式选取对应的预设路径;
步骤3、根据所述布线方式以及所述预设路径分别将FPGA中的每行和每列基本逻辑单元进行布线;
步骤4、读取FPGA IO接口的输出结果完成布线覆盖率测试。
进一步地,步骤2可以包括步骤21或者步骤22:
步骤21、6倍线布线方式选取四条不同的所述预设路径;
步骤22、2倍线布线方式选取八条不同的所述预设路径。
进一步地,步骤3中基本所述基本逻辑单元可以包括查找表单元和路径选择单元。
进一步地,查找表单元和路径选择单元中均设置有开关矩阵。
进一步地,步骤3可以包括:
步骤31、根据所述布线方式确定布线间隔;
步骤32、根据所述预设路径确定第一预设路径和第二预设路径;
步骤33、根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每行基本逻辑单元进行布线;
步骤34、根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每列基本逻辑单元进行布线。
进一步地,步骤31可以包括:
步骤311、6倍线布线方式确定的布线间隔为间隔5个所述基本逻辑单元;
步骤312、2倍线布线方式确定的布线间隔为间隔1个所述基本逻辑单元。
步骤313、A倍线布线方式确定的布线间隔为间隔(A-1)个所述基本逻辑单元。
进一步地,步骤33可以包括:
步骤331、从第X行第N列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,X的取值顺序为1~M依次执行;
步骤332、从第X行第N-1列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,X的取值顺序为1~M依次执行;
其中,M为所述基本逻辑单元的行数,N为所述基本逻辑单元的列数。
进一步地,步骤331和步骤332中根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,可以包括:
步骤33X1、根据所述第一预设路径,从选取的首个所述基本逻辑单元开始,在水平方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回;
步骤33X2、根据所述第二预设路径,从选取的首个所述基本逻辑单元开始,在水平方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回,完成所述第X行基本逻辑单元进行布线。
进一步地,步骤34可以包括:
步骤341、从第1行第P列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,P的取值顺序为1~N依次执行;
步骤342、从第2行第P列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,P的取值顺序为1~N依次执行;
其中,N为所述基本逻辑单元的列数。
进一步地,步骤341和步骤342中根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,可以包括:
步骤34X1、根据所述第一预设路径,从选取的首个所述基本逻辑单元开始,在垂直方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回;
步骤34X2、根据所述第二预设路径,从选取的首个所述基本逻辑单元开始,在垂直方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回,完成所述第X行基本逻辑单元进行布线。
本实施例,提出的FPGA基本逻辑单元布线方式,最终测试用例数量较少,且布线方法易于理解,完成了6倍线和2倍线的100%覆盖测试,由于测试主要是用于工厂终测功能测试(Functional Test),可以节省大量时间,从而节省成本。
实施例二
本实施例在上述实施例的基础上,对FPGA布线覆盖率测试方法进行详细描述。
FPGA内部有丰富的布线资源,约占FPGA芯片80%左右的资源。布线资源主要包括Segment-0(0倍线)、Segment-1(1倍线)、Segment–2(2倍线)、Segment-6(6倍线)以及一些直连线,Segment–2又分有8条track(路径),分别为路径01,路径02,路径03,路径04,路径05,路径06,路径07,Segment-6又分有4条track,分别为路径00,路径01,路径02以及路径03。如图1所示,每个开关矩阵都有丰富的布线资源,就体现在6倍线和2倍线又分有不同的路径,布线时可以选择不同的路径完成布线,在布线资源紧张的时候这点体现的尤为明显。以6倍线为例,从第2行第1列查找表单元到第2行第7列查找表单元可以有4条路径可选,这样在布线紧张的时候可以选择不同的路径使布线成功;2倍线以此类推。
如图3~图6所述,图3为本发明实施例提供的一种FPGA 2倍线布线方向示意图;图4为本发明实施例提供的一种FPGA 2倍线边界布线回环示意图;图5为本发明实施例提供的一种FPGA 6倍线布线方向示意图;图6为本发明实施例提供的一种FPGA 6倍线边界布线回环示意图。
在图3中从初始基本逻辑单元开始,经过中间基本逻辑单元,到边界基本逻辑单元,布线方向如箭头所示,可以为上方向、下方向、左方向、右方向四个方向。同理,在图5中从初始基本逻辑单元开始,经过中间基本逻辑单元,到边界基本逻辑单元,布线方向如箭头所示,可以为上方向、下方向、左方向、右方向四个方向。在图4中,从基本逻辑单元51开始向右间隔布线间隔(1个基本逻辑单元)后到边界基本逻辑单元53布线一次;从基本逻辑单元52开始向右经过边界基本逻辑单元53后向左环回到基本逻辑单元53布线一次,即从基本逻辑单元52环回到边界基本逻辑单元53的间隔刚好为布线间隔;从边界基本逻辑单元53开始向左环回到基本逻辑单元52布线一次,即从边界基本逻辑单元53环回到基本逻辑单元52的间隔刚好为布线间隔。在图6中,从基本逻辑单元61开始向右间隔布线间隔(5个基本逻辑单元)后到边界基本逻辑单元67布线一次;从基本逻辑单元62开始向右经过边界基本逻辑单元67后向左环回到边界基本逻辑单元67布线一次,即从基本逻辑单元62环回到边界基本逻辑单元67的间隔刚好为布线间隔;从基本逻辑单元63开始向右经过边界基本逻辑单元67后向左环回到基本逻辑单元66布线一次,即从基本逻辑单元63环回到基本逻辑单元66的间隔刚好为布线间隔;同理,基本逻辑单元64~66边界布线回环与前述步骤一致,此处不再赘述;从边界基本逻辑单元67开始向左环回到基本逻辑单元62布线一次,即从边界基本逻辑单元67环回到基本逻辑单元62的间隔刚好为布线间隔。
FPGA布线覆盖率测试方法具体如下步骤所示:
步骤1、从FPGA的右上方IO接口输入测试信号;
步骤2、确定布线方式和对应的预设路径,6倍线布线方式对应的预设路径为路径00,路径01,路径02以及路径03;2倍线布线方式对应的预设路径为路径00,路径01,路径02,路径03,路径04,路径05,路径06,路径07;
步骤3、根据所述布线方式以及所述预设路径分别将FPGA中的每行基本逻辑单元进行布线,具体为:确定6倍线布线方式的布线间隔为间隔5个所述基本逻辑单元,2倍线布线方式的布线间隔为间隔1个所述基本逻辑单元。6倍线的预设路径路径00,路径02设定为第一预设路径,6倍线的预设路径路径01,路径03设定为第二预设路径,2倍线布线的预设路径路径00,路径01,路径02,路径03设定为第一预设路径,2倍线布线的预设路径路径04,路径05,路径06,路径07设定为第二预设路径。以下内容以6倍线布线方式为例说明FPGA中的每行基本逻辑单元进行布线。
步骤301、从FPGA右上方第1行第N列基本逻辑单元开始布线,利用第一预设路径路径00,路径02并行输入第1行第N列基本逻辑单元,向左间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向左在水平方向依次布线,直到向左经过边界基本逻辑单元时进行回环,按照边界布线回环方式进行布线,继续向右间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向右在水平方向依次布线,直到向右布线到边界基本逻辑单元;
步骤302、按照步骤301的布线方式将第1行基本逻辑单元循环三次布线;
步骤303、从FPGA右上方第1行第N列基本逻辑单元开始继续布线,利用第二预设路径路径01,路径03并行输入第1行第N列基本逻辑单元,向左间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向左在水平方向依次布线,直到向左经过边界基本逻辑单元时进行回环,按照边界布线回环方式进行布线,继续向右间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向右在水平方向依次布线,直到向右布线到边界基本逻辑单元;
步骤304、按照步骤303的布线方式将第1行基本逻辑单元循环三次布线,此时,完成第1行基本逻辑单元50%的布线;
步骤305、依次将第2行、第3行到第M行的基本逻辑单元执行第1行基本逻辑单元布线步骤,完成M行基本逻辑单元50%的布线;
步骤306、从FPGA右上方第1行第N-1列基本逻辑单元开始布线,利用第一预设路径路径00,路径02并行输入第1行第N列基本逻辑单元,向左间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向左在水平方向依次布线,直到向左经过边界基本逻辑单元时进行回环,按照边界布线回环方式进行布线,继续向右间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向右在水平方向依次布线,直到向右布线到边界基本逻辑单元;
步骤307、按照步骤306的布线方式将第1行基本逻辑单元循环三次布线;
步骤308、从FPGA右上方第1行第N-1列基本逻辑单元开始继续布线,利用第二预设路径路径01,路径03并行输入第1行第N列基本逻辑单元,向左间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向左在水平方向依次布线,直到向左经过边界基本逻辑单元时进行回环,按照边界布线回环方式进行布线,继续向右间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向右在水平方向依次布线,直到向右布线到边界基本逻辑单元;
步骤309、按照步骤308的布线方式将第1行基本逻辑单元循环三次布线,此时,完成第1行基本逻辑单元另外50%的布线;
步骤310、依次将第2行、第3行到第M行的基本逻辑单元执行第1行基本逻辑单元布线步骤,完成M行基本逻辑单元另外50%的布线,此时,完成M行基本逻辑单元100%的布线。
步骤4、根据所述布线方式以及所述预设路径分别将FPGA中的每列基本逻辑单元进行布线,以下内容以6倍线布线方式为例;
步骤401、从FPGA右上方第1行第1列基本逻辑单元开始布线,利用第一预设路径路径00,路径02并行输入第1行第1列基本逻辑单元,向下间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向下在垂直方向依次布线,直到向下经过边界基本逻辑单元时进行回环,按照边界布线回环方式进行布线,继续向上间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向上在垂直方向依次布线,直到向上布线到边界基本逻辑单元;
步骤402、按照步骤301的布线方式将第一列基本逻辑单元循环三次布线;
步骤403、从FPGA右上方第1行第1列基本逻辑单元开始继续布线,利用第二预设路径路径01,路径03并行输入第1行第1列基本逻辑单元,向下间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向下在垂直方向依次布线,直到向下经过边界基本逻辑单元时进行回环,按照边界布线回环方式进行布线,继续向上间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向上在垂直方向依次布线,直到向上布线到边界基本逻辑单元;
步骤404、按照步骤303的布线方式将第1列基本逻辑单元循环三次布线,此时,完成第1列基本逻辑单元50%的布线;
步骤405、依次将第2列、第3列到第N行列的基本逻辑单元执行第1列基本逻辑单元布线步骤,完成N列基本逻辑单元50%的布线;
步骤406、从FPGA右上方第2行第1列基本逻辑单元开始布线,利用第一预设路径路径00,路径02并行输入第1行第1列基本逻辑单元,向下间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向下在垂直方向依次布线,直到向下经过边界基本逻辑单元时进行回环,按照边界布线回环方式进行布线,继续向上间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向上在垂直方向依次布线,直到向上布线到边界基本逻辑单元;
步骤407、按照步骤406的布线方式将第1列基本逻辑单元循环三次布线;
步骤408、从FPGA右上方第2行第1列基本逻辑单元开始继续布线,利用第二预设路径路径01,路径03并行输入第1行第1列基本逻辑单元,向下间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向下在垂直方向依次布线,直到向下经过边界基本逻辑单元时进行回环,按照边界布线回环方式进行布线,继续向上间隔布线间隔(间隔5个所述基本逻辑单元)后进行一次布线,按同样的方法向上在垂直方向依次布线,直到向上布线到边界基本逻辑单元;
步骤409、按照步骤408的布线方式将第1列基本逻辑单元循环三次布线,此时,完成第1列基本逻辑单元另外50%的布线;
步骤410、依次将第2列、第3列到第N行列的基本逻辑单元执行第1列基本逻辑单元布线步骤,完成N列基本逻辑单元另外50%的布线,此时,完成N列基本逻辑单元100%的布线。
步骤5、读取FPGA IO接口的输出结果完成布线覆盖率测试。
实施例三
本实施例在上述实施例的基础上,对FPGA布线覆盖率测试方法进行概括描述。如图7所述,图7为。设定FPGA的基本逻辑单元共M行N列;布线方式为Segment-j(j倍线);R表示行;C表示列;i表示循环次数;行的初始值为1,列的初始值为N,即从FPGA的右上方的基本逻辑单元开始布线。水平布线覆盖率测试流程如下所述:
步骤1、K的取值为1,i的取值为1,即从第1行第N列开始,水平向左开始布线;
步骤2、当布线到中间第1行第A列某节点后,判断A-j的值,若A-j大于0,则继续水平向左布线,若A-j小于等于0,则环回;
步骤3、从第1行第j+1-A列开始,水平向右开始布线;
步骤4、当布线到中间第1行第B列某节点后,判断B+j的值,若B+j大于0,则继续水平向右布线,若B+j小于0,则环回;
步骤5、从第1行第2N-j+1-B列开始,水平向左开始布线;
步骤6、将i加1后,判断此时i的值与3的大小,当i小于3,跳转到步骤1继续顺序执行,当i大于3,将K的值加1;其中,i循环三次表示表示每行进行3次布线,覆盖奇数列或偶数列。
步骤7、判断此时K的值与M的大小,当K小于M,跳转到步骤1继续顺序执行,当K大于M,则结束流程;其中,K循环M次,表示循环M行开关矩阵,完成50%的覆盖。
垂直布线覆盖率测试流程可以从水平布线覆盖率测试流程中类推,此处不再赘述。
实施例四
请参见图8和图9,图8为本发明实施例提供的一种FPGA 6倍线水平布线示意图;图9为本发明实施例提供的一种FPGA 6倍线垂直布线示意图,本实施例在上述实施例的基础上,对FPGA布线方法举例进行描述。
设定FPGA中的基本逻辑单元为M行N列。
每行布线方法如图8所示,从某一行N列开始,输入路径为路径00,路径02,依次向左在水平方向间隔6个基本逻辑单元进行布线,直到向左在水平方向布线到第1列,从第1列开始环回,向右在水平方向的第6列布线,依次向右在水平方向间隔6个基本逻辑单元进行布线,直到向右在水平方向布线到第N-1列开始环回,向左在水平方向的第N-4列布线,按照此规则在该行水平方向循环3次后,从某一行N列开始,路径更换为路径01,路径03,其它方式不变,继续在该行布线。
每列布线方法如图9所示,从第1行第X列开始,输入路径为路径00,路径02,依次向下在垂直方向间隔6个基本逻辑单元进行布线,直到向左在水平方向布线到第M-1行,从第M-1行开始环回,向上在垂直方向的第M-4行布线,依次向上在垂直方向间隔6个基本逻辑单元进行布线,直到向上在垂直方向布线到第4行开始环回,向下在垂直方向的第3行布线,按照此规则在该列垂直方向循环3次后,从第1行第X列开始,路径更换为路径01,路径03,其它方式不变,继续在该列布线。
以上内容是结合具体的优选实施方式对本发明提供的一种FPGA布线覆盖率测试方法所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (8)

1.一种FPGA布线覆盖率测试方法,其特征在于,包括:
在FPGA的IO接口输入测试信号;
根据不同的布线方式选取对应的预设路径;
根据所述布线方式以及所述预设路径分别将FPGA中的每行和每列基本逻辑单元进行布线;包括:
根据所述布线方式确定布线间隔;
根据所述预设路径确定第一预设路径和第二预设路径;
根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每行基本逻辑单元进行布线;具体包括:
从第X行第N列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,X的取值顺序为1~M依次执行;
从第X行第N-1列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,X的取值顺序为1~M依次执行;
其中,M为所述基本逻辑单元的行数,N为所述基本逻辑单元的列数;
根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每列基本逻辑单元进行布线;
读取所述IO接口的输出结果完成布线覆盖率测试。
2.根据权利要求1所述的测试方法,其特征在于,所述布线方式为6倍线布线或2倍线布线;相应地,所述6倍线布线方式的预设路径包括四条不同的所述预设路径,所述2倍线布线方式的预设路径包括八条不同的所述预设路径;其中,所述预设路径为FPGA的布线路径。
3.根据权利要求1所述的测试方法,其特征在于,所述基本逻辑单元包括查找表单元和路径选择单元。
4.根据权利要求3所述的测试方法,其特征在于,所述查找表单元和所述路径选择单元中均设置有布线开关矩阵。
5.根据权利要求1所述的测试方法,其特征在于,根据所述布线方式确定布线间隔,包括:
6倍线布线方式确定的布线间隔为间隔5个所述基本逻辑单元;或者
2倍线布线方式确定的布线间隔为间隔1个所述基本逻辑单元;
其中,M为所述基本逻辑单元的行数,N为所述基本逻辑单元的列数。
6.根据权利要求1所述的测试方法,其特征在于,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第X行基本逻辑单元进行布线,包括:
根据所述第一预设路径,从选取的首个所述基本逻辑单元开始,在水平方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回;
根据所述第二预设路径,从选取的首个所述基本逻辑单元开始,在水平方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回,完成所述第X行基本逻辑单元进行布线。
7.根据权利要求1所述的测试方法,其特征在于,根据所述第一预设路径、所述第二预设路径和所述布线间隔将FPGA中的每列基本逻辑单元进行布线,包括:
从第1行第P列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,P的取值顺序为1~N依次执行;
从第2行第P列基本逻辑单元开始,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,P的取值顺序为1~N依次执行;
其中,N为所述基本逻辑单元的列数。
8.根据权利要求7所述的测试方法,其特征在于,根据所述第一预设路径和所述第二预设路径按照所述布线间隔将FPGA中的第P列基本逻辑单元进行布线,包括:
根据所述第一预设路径,从选取的首个所述基本逻辑单元开始,在垂直方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回;
根据所述第二预设路径,从选取的首个所述基本逻辑单元开始,在垂直方向依次间隔所述布线间隔后进行一次布线,到边界的所述基本逻辑单元后环回,完成所述第X行基本逻辑单元进行布线。
CN201711278984.XA 2017-12-06 2017-12-06 Fpga布线覆盖率测试方法 Active CN108051729B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711278984.XA CN108051729B (zh) 2017-12-06 2017-12-06 Fpga布线覆盖率测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711278984.XA CN108051729B (zh) 2017-12-06 2017-12-06 Fpga布线覆盖率测试方法

Publications (2)

Publication Number Publication Date
CN108051729A CN108051729A (zh) 2018-05-18
CN108051729B true CN108051729B (zh) 2020-03-24

Family

ID=62122769

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711278984.XA Active CN108051729B (zh) 2017-12-06 2017-12-06 Fpga布线覆盖率测试方法

Country Status (1)

Country Link
CN (1) CN108051729B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109444630B (zh) * 2018-11-05 2020-12-01 西安智多晶微电子有限公司 Fpga布线单元测试结构及方法
CN109800534B (zh) * 2019-02-14 2020-03-10 广东高云半导体科技股份有限公司 Fpga设计电路图生成方法、装置、计算机设备及存储介质
CN113295990B (zh) * 2021-07-26 2021-10-01 中科亿海微电子科技(苏州)有限公司 一种生成fpga可行性测试路径的方法、系统、介质及设备
CN117783841A (zh) * 2023-12-27 2024-03-29 苏州异格技术有限公司 一种fpga布线覆盖率测试方法、装置、设备及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6651238B1 (en) * 2001-04-17 2003-11-18 Xilinx, Inc. Providing fault coverage of interconnect in an FPGA
CN101881811A (zh) * 2009-05-08 2010-11-10 复旦大学 一种可编程逻辑器件互连资源的故障测试方法
CN102768692A (zh) * 2011-05-06 2012-11-07 中国科学院微电子研究所 应用于fpga测试的导航布局布线方法
CN104281508A (zh) * 2013-07-11 2015-01-14 京微雅格(北京)科技有限公司 现场可编程逻辑门阵列互连线固定故障的测试方法
CN105866665A (zh) * 2016-03-31 2016-08-17 复旦大学 面向高性能SoC FPGA的功能遍历测试方法
CN106841894A (zh) * 2016-12-23 2017-06-13 深圳市国微电子有限公司 Fpga互连线测试方法及装置
CN106909728A (zh) * 2017-02-21 2017-06-30 电子科技大学 一种基于增强学习的fpga互联资源配置生成方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6651238B1 (en) * 2001-04-17 2003-11-18 Xilinx, Inc. Providing fault coverage of interconnect in an FPGA
CN101881811A (zh) * 2009-05-08 2010-11-10 复旦大学 一种可编程逻辑器件互连资源的故障测试方法
CN102768692A (zh) * 2011-05-06 2012-11-07 中国科学院微电子研究所 应用于fpga测试的导航布局布线方法
CN104281508A (zh) * 2013-07-11 2015-01-14 京微雅格(北京)科技有限公司 现场可编程逻辑门阵列互连线固定故障的测试方法
CN105866665A (zh) * 2016-03-31 2016-08-17 复旦大学 面向高性能SoC FPGA的功能遍历测试方法
CN106841894A (zh) * 2016-12-23 2017-06-13 深圳市国微电子有限公司 Fpga互连线测试方法及装置
CN106909728A (zh) * 2017-02-21 2017-06-30 电子科技大学 一种基于增强学习的fpga互联资源配置生成方法

Also Published As

Publication number Publication date
CN108051729A (zh) 2018-05-18

Similar Documents

Publication Publication Date Title
CN108051729B (zh) Fpga布线覆盖率测试方法
Kautz Testing for faults in combinational cellular logic arrays
Hashimoto et al. Wire routing by optimizing channel assignment within large apertures
CN108028654A (zh) 用于 fpga 的测试和配置的系统和方法
US20210133384A1 (en) Cell layout of semiconductor device
US8775881B2 (en) Embedded processor
US8867286B2 (en) Repairable multi-layer memory chip stack and method thereof
CN106252331B (zh) 使用解码器/编码器的硅通孔冗余方案及结构
CN106841894B (zh) Fpga互连线测试方法及装置
Ni et al. A cost-effective TSV repair architecture for clustered faults in 3-D IC
JPS63137A (ja) 配線領域決定処理装置
CN103155414B (zh) 硬化的可编程器件
CN114065694A (zh) 一种fpga布线资源图压缩方法和全局布线模块
CN104182556B (zh) 芯片的布局方法
US7673196B2 (en) Methods and apparatus for communicating with a target circuit
CN102176440B (zh) 一种放置在划片槽内的改进型可寻址测试芯片及制作方法
USRE42264E1 (en) Field programmable device
CN105677525B (zh) 基于可重复配置单元的fpga局部互联资源自动化测试方法
US9621159B2 (en) Reconfigurable semiconductor integrated circuit and electronic device
US7954020B2 (en) Method and apparatus for testing a circuit
CN112684327A (zh) 扫描链及其设计方法和基于扫描链的串行扫描复位方法
JP2006234512A (ja) 半導体集積回路および半導体集積回路のテスト方法
CN109815583B (zh) Fpga的布线资源的布线方法和测试方法
CN117110851A (zh) 一种三维封装芯片扫描链快捷配置的测试装置
US7194717B2 (en) Compact custom layout for RRAM column controller

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: FPGA wiring coverage test method

Effective date of registration: 20220329

Granted publication date: 20200324

Pledgee: Pudong Development Bank of Shanghai Limited by Share Ltd. Xi'an branch

Pledgor: XI'AN INTELLIGENCE SILICON TECHNOLOGY, Inc.

Registration number: Y2022610000115

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20230328

Granted publication date: 20200324

Pledgee: Pudong Development Bank of Shanghai Limited by Share Ltd. Xi'an branch

Pledgor: XI'AN INTELLIGENCE SILICON TECHNOLOGY, Inc.

Registration number: Y2022610000115

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Testing method for FPGA wiring coverage

Effective date of registration: 20230331

Granted publication date: 20200324

Pledgee: Pudong Development Bank of Shanghai Limited by Share Ltd. Xi'an branch

Pledgor: XI'AN INTELLIGENCE SILICON TECHNOLOGY, Inc.

Registration number: Y2023610000233

PE01 Entry into force of the registration of the contract for pledge of patent right