CN102116840B - 一种基于贪心策略的fpga局部互联测试方法 - Google Patents

一种基于贪心策略的fpga局部互联测试方法 Download PDF

Info

Publication number
CN102116840B
CN102116840B CN 200910248934 CN200910248934A CN102116840B CN 102116840 B CN102116840 B CN 102116840B CN 200910248934 CN200910248934 CN 200910248934 CN 200910248934 A CN200910248934 A CN 200910248934A CN 102116840 B CN102116840 B CN 102116840B
Authority
CN
China
Prior art keywords
matrix
fpga
value
local
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
CN 200910248934
Other languages
English (en)
Other versions
CN102116840A (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.)
Shenyang Institute of Automation of CAS
Original Assignee
Shenyang Institute of Automation of CAS
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 Shenyang Institute of Automation of CAS filed Critical Shenyang Institute of Automation of CAS
Priority to CN 200910248934 priority Critical patent/CN102116840B/zh
Publication of CN102116840A publication Critical patent/CN102116840A/zh
Application granted granted Critical
Publication of CN102116840B publication Critical patent/CN102116840B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Logic Circuits (AREA)

Abstract

本发明公开一种基于贪心策略的FPGA局部互联测试方法,基于FPGA实际结构模型化,采用基于“影响因数”的贪心策略算法对这些连接关系进行分组,最终的分组结果反映到目标FPGA上即是一个完备的局部互联测试配置集。在进行分组的过程中,为了更加体现实用性,本发明还提供了可以根据目标器件的局部互联本身,或全局互联的结构特点进行分组条件约束的机制。本发明方法能够自动生成FPGA局部测试配置,且不依赖具体某一FPGA的结构,具有普适性,能够被广泛的推广;本发明采取了基于“影响因数”的贪心策略,实现了测试配置集的最小化和对局部互联资源的全覆盖;本发明充分考虑了FPGA器件本身的结构约束,确保生成的配置能够在实际器件中实现。

Description

一种基于贪心策略的FPGA局部互联测试方法
技术领域
本发明涉及FPGA的应用测试技术,具体的说是一种基于贪心策略的FPGA局部互联测试方法。
背景技术
随着FPGA现场可编程门阵列技术的发展,其应用范围也越来越广泛。在FPGA功能日益强大的同时,对FPGA的生产和应用测试的要求也越来越高。
FPGA的结构可以被描述为一个二维网络,其内部的各种可配置资源可以被分为两大类:可配置逻辑结构和互联结构。其中互联结构占整个FPGA的80%以上,按照互联结构的功能不同,还被分为全局互联结构和局部互联结构。传统的测试方法是利用FPGA的可配置特性,针对某种FPGA的结构特点,手工将其配置成一些电路结构,即测试配置。通过分析这些测试配置对各种测试向量的响应,来实现对FPGA故障的测试。对测试配置设计优劣的主要评价指标是能否实现测试配置的最小集,以及覆盖资源故障的最大集。
需要注意的是,功能越强大的FPGA,其内部资源也越复杂,所述现有产生测试配置的方法实现的难度越大,所以如何实现对被测FPGA进行高效率的自动配置尚未见报道。
发明内容
本发明针对上述不足,本发明的目的是在FPGA结构中的局部互联结构提出一种基于贪心策略的FPGA局部互联测试方法。
为实现上述目的本发明采用的技术方案为:本发明的具体实施步骤如下:
步骤1)将FPGA实际结构模型化;步骤2)建立局部互联矩阵,其描述配置逻辑单元的各个端口和全局互联结构中各互联线之间连接关系的矩阵;步骤3)在实现步骤2)后,实行配置分组算法,该算法采用的是基于“影响因数”的贪心策略。步骤4)所述配置分组算法,首先,建立两个与局部互联矩阵结构相同,但元素初始值为0的“配置矩阵”和“‘影响因数’矩阵”;然后,在局部互联矩阵中选取任意一个值为1的元素,将“配置矩阵”中与其对应的元素值设置为1;即将这个可配置开关分配到了第一组测试配置中;再然后,开始对局部互联矩阵中所有值为1的元素求“影响因子”,并将结果赋给“影响因数”矩阵中相应位置的元素;步骤5)所述“影响因数”矩阵,在“影响因数”矩阵中选取值最大的元素,并在配置矩阵中为其对应元素进行分组。步骤6)所述分组的原则是,除去该元素所在的行和列中已经存在的组编号,将所能使用的最小编号,作为该元素的编号,并将这一编号值赋给该元素;在每次产生新的编组赋值之后,“影响因数”矩阵都将随之进行更新,以选出进行下一次编组的元素,直到所有在局部互联矩阵中值为1的元素,其所对应的配置矩阵元素都被分组,即值不为0。步骤7)所述分组进行中FPGA自动配置分组过程中某些线或端口不能被分配在同一组配置中;分组具体的方法是,在对每一个元素的进行分组编号的时候,要排除掉该元素所在的行和列中已经存在的组编号,还要排除掉于其所对应的端口或线存在约束关系的端口或线所对应的行或列中已经存在的组编号。步骤8)将最终的分组结果反映到目标FPGA上,即一个完备的局部互联测试配置集。
所述局部互联矩阵中元素的行坐标和列坐标分别对应可配置逻辑单元的端口和全局互联结构中的互联线;如元素值为1,则表示其所对应的可配置逻辑单元端口和全局互联结构互联线之间存在可配置的开关;如元素值为0,则两者之间不存在可配置的连接关系。
所述“影响因数”,描述的是在配置分组进行过程中,某一时刻某一个还未被分组可配置开关受与其存在相关性的,且已被分组的其他开关的影响情况。具体的说,就是局部互联矩阵中的某个元素,如果该元素值为1,且配置矩阵中与其相对应的元素值为0,那么在配置矩阵中该元素所在的行和列中值不为0的元素的个数,就是该元素的“影响因数”。
本发明的优点
1.本发明方法能够自动生成FPGA局部测试配置,且不依赖具体某一FPGA的结构,具有普适性,能够被广泛的推广。
2.本发明采取了基于“影响因数”的贪心策略,实现了测试配置集的最小化和对局部互联资源的全覆盖。
3.本发明充分考虑了FPGA器件本身的结构约束,确保生成的配置能够在实际器件中实现。
附图说明
图1为本发明具体实施流程图。
具体实施方式
如图1所示,一种基于贪心策略的FPGA局部互联测试方法,具体实施步骤如下:
步骤1)将FPGA实际结构模型化;步骤2)建立局部互联矩阵,其描述配置逻辑单元的各个端口和全局互联结构中各互联线之间连接关系的矩阵;步骤3)在实现步骤2)后,实行配置分组算法,该算法采用的是基于“影响因数”的贪心策略。步骤4)所述配置分组算法,首先,建立两个与局部互联矩阵结构相同,但元素初始值为0的“配置矩阵”和“‘影响因数’矩阵”;然后,在局部互联矩阵中选取任意一个值为1的元素,将“配置矩阵”中与其对应的元素值设置为1;即将这个可配置开关分配到了第一组测试配置中;再然后,开始对局部互联矩阵中所有值为1的元素求“影响因子”,并将结果赋给“影响因数”矩阵中相应位置的元素;步骤5)所述“影响因数”矩阵,在“影响因数”矩阵中选取值最大的元素,并在配置矩阵中为其对应元素进行分组。步骤6)所述分组的原则是,除去该元素所在的行和列中已经存在的组编号,将所能使用的最小编号,作为该元素的编号,并将这一编号值赋给该元素;在每次产生新的编组赋值之后,“影响因数”矩阵都将随之进行更新,以选出进行下一次编组的元素,直到所有在局部互联矩阵中值为1的元素,其所对应的配置矩阵元素都被分组,即值不为0。步骤7)所述分组进行中FPGA自动配置分组过程中某些线或端口不能被分配在同一组配置中;分组具体的方法是,在对每一个元素的进行分组编号的时候,要排除掉该元素所在的行和列中已经存在的组编号,还要排除掉于其所对应的端口或线存在约束关系的端口或线所对应的行或列中已经存在的组编号。步骤8)将最终的分组结果反映到目标FPGA上,即一个完备的局部互联测试配置集。
所述局部互联矩阵中元素的行坐标和列坐标分别对应可配置逻辑单元的端口和全局互联结构中的互联线;如元素值为1,则表示其所对应的可配置逻辑单元端口和全局互联结构互联线之间存在可配置的开关;如元素值为0,则两者之间不存在可配置的连接关系。
所述“影响因数”,描述的是在配置分组进行过程中,某一时刻某一个还未被分组可配置开关受与其存在相关性的,且已被分组的其他开关的影响情况。具体的说,就是局部互联矩阵中的某个元素,如果该元素值为1,且配置矩阵中与其相对应的元素值为0,那么在配置矩阵中该元素所在的行和列中值不为0的元素的个数,就是该元素的“影响因数”。进行FPGA局部互联自动测试配置生成的基础是将FGPA的实际结构模型化,本发明的采取的方法是建立一个描述可配置逻辑单元的各个端口和全局互联结构中各互联线之间连接关系的矩阵,称为“局部互联矩阵”。局部互联矩阵中元素的行坐标和列坐标分别对应可配置逻辑单元的端口和全局互联结构中的互联线。如元素值为1,则表示其所对应的可配置逻辑单元端口和全局互联结构互联线之间存在可配置的开关;如元素值为0,则两者之间不存在可配置的连接关系。
在建立描述局部互联的矩阵模型之后,将施行配置分组算法,该算法采用的是基于“影响因数”的贪心策略。首先,需要建立两个个与局部互联矩阵结构相同,但所有元素的初始值都为0的矩阵,分别称为“配置矩阵”和“‘影响因数’矩阵”。然后,在局部互联矩阵中选取任意一个值为1的元素,将配置矩阵中与其对应的元素值设置为1,即将这个可配置开关分配到了第一组测试配置中。接下来,开始对局部互联矩阵中所有值为1的元素求“影响因子”,并将结果赋给“影响因数”矩阵中相应位置的元素。所谓“影响因数”,描述的是在配置分组进行过程中,某一时刻某一个还未被分组可配置开关受与其存在相关性的,且已被分组的其他开关的影响情况。具体的说,就是局部互联矩阵中的某个元素,如果该元素值为1,且配置矩阵中与其相对应的元素值为0,那么在配置矩阵中该元素所在的行和列中值不为0的元素的个数,就是该元素的“影响因数”。在“影响因数”矩阵中选取值最大的元素,并在配置矩阵中为其对应元素进行分组。分组的原则是,除去该元素所在的行和列中已经存在的组编号,将所能使用的最小编号,作为该元素的编号,并将这一编号值赋给该元素。在每次产生新的编组赋值之后,“影响因数”矩阵都将随之进行更新,以选出进行下一次编组的元素,直到所有在局部互联矩阵中值为1的元素,其所对应的配置矩阵元素都被分组,即值不为0。
在以上分组进行中,还需要考虑由于FPGA器件本身的结构特点而对自动配置分组工作产生的约束,即某些线或端口不能被分配在同一组配置当中。具体的方法是,在对每一个元素的进行分组编号的时候,除了要排除掉该元素所在的行和列中已经存在的组编号之外,还要排除掉于其所对应的端口或线存在约束关系的端口或线所对应的行或列中已经存在的组编号。这样,就能够确保通过本发明的方法产生的测试配置都能够有效的部署在FPGA器件上。

Claims (3)

1.一种基于贪心策略的FPGA局部互联测试方法,其特征在于,包括如下步骤:
步骤1)将FPGA实际结构模型化;
步骤2)建立局部互联矩阵,该矩阵为描述配置逻辑单元的各个端口和全局互联结构中各互联线之间连接关系的矩阵;
步骤3)在实现步骤2)后,实行配置分组算法,该算法采用的是基于“影响因数”的贪心策略;
步骤4)所述配置分组算法,首先,建立两个与局部互联矩阵结构相同,但元素初始值为0的“配置矩阵”和“‘影响因数’矩阵”;然后,在局部互联矩阵中选取任意一个值为1的元素,将“配置矩阵”中与其对应的元素值设置为1;即将这个可配置开关分配到了第一组测试配置中;再然后,开始对局部互联矩阵中所有值为1的元素求“影响因子”,并将结果赋给“影响因数”矩阵中相应位置的元素;
步骤5)所述“影响因数”矩阵,在“影响因数”矩阵中选取值最大的元素,并在“配置矩阵”中为其对应元素进行分组;
步骤6)所述分组的原则是,除去该元素所在的行和列中已经存在的组编号,将所能使用的最小编号,作为该元素的编号,并将这一编号值赋给该元素;在每次产生新的编组赋值之后,“影响因数”矩阵都将随之进行更新,以选出进行下一次编组的元素,直到所有在局部互联矩阵中值为1的元素,其所对应的配置矩阵元素都被分组,即值不为0;
步骤7)所述分组进行中FPGA自动配置分组过程中某些线或端口不能被分配在同一组配置中;分组具体的方法是,在对每一个元素的进行分组编号的时候,要排除掉该元素所在的行和列中已经存在的组编号,还要排除掉于其所对应的端口或线存在约束关系的端口或线所对应的行或列中已经存在的组编号;
步骤8)将最终的分组结果反映到目标FPGA上,即一个完备的局部互联测试配置集。
2.按照权利要求1所述的一种基于贪心策略的FPGA局部互联测试方法,其特征在于,所述局部互联矩阵中元素的行坐标和列坐标分别对应可配置逻辑单元的端口和全局互联结构中的互联线;如元素值为1,则表示其所对应的可配置逻辑单元端口和全局互联结构互联线之间存在可配置的开关;如元素值为0,则两者之间不存在可配置的连接关系。
3.按照权利要求1所述的一种基于贪心策略的FPGA局部互联测试方法,其特征在于,所述“影响因数”,描述的是在配置分组进行过程中,某一时刻某一个还未被分组可配置开关受与其存在相关性的,且已被分组的其他开关的影响情况;具体的说,就是局部互联矩阵中的某个元素,如果该元素值为1,且配置矩阵中与其相对应的元素值为0,那么在配置矩阵中该元素所在的行和列中值不为0的元素的个数,就是该元素的“影响因数”。
CN 200910248934 2009-12-30 2009-12-30 一种基于贪心策略的fpga局部互联测试方法 Active CN102116840B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910248934 CN102116840B (zh) 2009-12-30 2009-12-30 一种基于贪心策略的fpga局部互联测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910248934 CN102116840B (zh) 2009-12-30 2009-12-30 一种基于贪心策略的fpga局部互联测试方法

Publications (2)

Publication Number Publication Date
CN102116840A CN102116840A (zh) 2011-07-06
CN102116840B true CN102116840B (zh) 2012-12-05

Family

ID=44215697

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910248934 Active CN102116840B (zh) 2009-12-30 2009-12-30 一种基于贪心策略的fpga局部互联测试方法

Country Status (1)

Country Link
CN (1) CN102116840B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103412253B (zh) * 2013-08-05 2016-01-20 电子科技大学 互联结构模型化方法和互联资源配置向量自动生成方法
CN105677525B (zh) * 2016-01-12 2019-05-03 复旦大学 基于可重复配置单元的fpga局部互联资源自动化测试方法
CN118585386A (zh) * 2024-05-17 2024-09-03 苏州异格技术有限公司 Fpga互联资源的量产测试方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5633813A (en) * 1994-05-04 1997-05-27 Srinivasan; Seshan R. Apparatus and method for automatic test generation and fault simulation of electronic circuits, based on programmable logic circuits
CN101135717A (zh) * 2007-10-12 2008-03-05 电子科技大学 现场可编程门阵列多路选择器验证方法
CN101140314A (zh) * 2007-10-12 2008-03-12 电子科技大学 现场可编程门阵列布线信道验证方法及系统
CN101363900A (zh) * 2007-09-30 2009-02-11 北京华大泰思特半导体检测技术有限公司 一种对fpga器件进行测试的方法
CN101413990A (zh) * 2008-12-03 2009-04-22 北京大学 一种现场可编程门阵列的测试方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6272655B1 (en) * 1998-06-11 2001-08-07 Actel Corporation Method of reducing test time for NVM cell-based FPGA

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5633813A (en) * 1994-05-04 1997-05-27 Srinivasan; Seshan R. Apparatus and method for automatic test generation and fault simulation of electronic circuits, based on programmable logic circuits
CN101363900A (zh) * 2007-09-30 2009-02-11 北京华大泰思特半导体检测技术有限公司 一种对fpga器件进行测试的方法
CN101135717A (zh) * 2007-10-12 2008-03-05 电子科技大学 现场可编程门阵列多路选择器验证方法
CN101140314A (zh) * 2007-10-12 2008-03-12 电子科技大学 现场可编程门阵列布线信道验证方法及系统
CN101413990A (zh) * 2008-12-03 2009-04-22 北京大学 一种现场可编程门阵列的测试方法及系统

Also Published As

Publication number Publication date
CN102116840A (zh) 2011-07-06

Similar Documents

Publication Publication Date Title
Georg et al. INSPIRE: Integrated co-simulation of power and ICT systems for real-time evaluation
Jiang et al. On effective through-silicon via repair for 3-D-stacked ICs
CN102116840B (zh) 一种基于贪心策略的fpga局部互联测试方法
CN102116839B (zh) 一种基于最大流方法的fpga测试方法
CN104077138A (zh) 一种集成网络路由器的众核处理器系统及其集成方法和实现方法
CN103105577B (zh) 一种继电器多通道信号选通装置及其自检方法
CN105677525B (zh) 基于可重复配置单元的fpga局部互联资源自动化测试方法
CN105021943B (zh) Mmc‑hvdc交流侧故障的过电流检测方法和系统
CN103699455B (zh) 一种多核实时容错系统中获取准确的最晚截止时间的方法
KR20150060913A (ko) 네트워크 토폴로지 구조 확정 방법 및 장치
CN109658002B (zh) 考虑控保系统竞争失效的电力电子装置可靠性建模方法
CN105337796A (zh) 一种wifi路由器性能测试方法及系统
CN105445591B (zh) 变流器故障诊断方法以及变流器故障诊断装置
CN104468316A (zh) 一种快速检测智能变电站虚拟局域网配置的方法及装置
CN109740247B (zh) 一种ip与efpga端口连接方法及其优选方法
Liu et al. Heuristics for sdn controller deployment using community detection algorithm
CN111157842B (zh) 一种基于电网拓扑的配电线路配变停电故障研判方法
CN102164040B (zh) 基于带抑制弧的Petri网模拟HB系统状态转换的方法
CN102809711B (zh) 一种测试fpga单长线及连接开关的扩展布线方法
CN109635315B (zh) 面向胚胎硬件细胞重用策略的可靠性建模和设计指导方法
CN101340695A (zh) 一种模拟网元上报性能测量数据的方法及系统
CN106844193B (zh) 一种嵌入式模块交叉测试的系统化设计方法
CN104899364B (zh) 一种用于器件建模的标准单元选择方法
WO2022052146A1 (zh) 用于开环电网负荷转供决策中的重过载校验方法
CN104657462B (zh) 一种海量测量数据准实时入库方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant