[发明专利]一种带有slice空洞的进位链构造及测试方法在审
申请号: | 201911081079.4 | 申请日: | 2019-11-07 |
公开(公告)号: | CN111104101A | 公开(公告)日: | 2020-05-05 |
发明(设计)人: | 项宗杰;王立恒;楼建设;孔泽斌 | 申请(专利权)人: | 上海精密计量测试研究所 |
主分类号: | G06F8/30 | 分类号: | G06F8/30 |
代理公司: | 上海航天局专利中心 31107 | 代理人: | 余岢 |
地址: | 201109 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 带有 slice 空洞 进位 构造 测试 方法 | ||
本发明实施例提供了一种存在slice空洞的FPGA进位链的构造方法,其特征在于,包括步骤:判断当前位置为slice或空洞;判断前一个位置为slice或空洞;根据当前位置与前一个位置的情况,执行新建进位链或级联或者既不新建也不级联;根据上述方法遍历所有位置;以及一种采用上述方法构造的进位链的测试方法,包括:进位链贯穿多个slice,每个slice各包含一个片段,每个片段包含多个基元,其中,步骤1,判断基元的正确性;步骤2,判断相邻的每两个基元的连接关系的正确性;其中步骤1和步骤2采用测试用例进行正确性的判断。
技术领域
本发明属于FPGA测试领域,尤其涉及一种带有slice空洞的进位链构造及测试方法。
背景技术
Xilinx FPGA内部含有可配置逻辑由大量slice构成,每个slice内含有一个进位链片段,图1为进位链片段与其外围相关电路的示意图,每个进位链片段含多个进位基元,每个基元对为一个位的进位逻辑,在图1中所示的进位片段,一共有两个进位基元,进位片段中含有的进位基元的数量取决于FPGA的具体型号。多个slice中的进位链可连接在一起组成一条较长的进位链满足多位加法运算的需求,见图2。对进位链测试是FPGA测试的一项内容。Xilinx公司一部分FPGA的Slice是连续排布的,如图2所示。另一部分FPGA的slice是非连续排布的,含有若干“空洞”,如图3所示。这里连续和非连续指的是坐标是否连续。
发明内容
本发明的目的在于提供了一种存在slice空洞的FPGA进位链的构造方法,其特征在于,包括步骤:
判断当前位置为slice或空洞;
判断前一个位置为slice或空洞;
根据当前位置与前一个位置的情况,执行新建进位链或级联或者既不新建也不级联;
根据上述方法遍历所有位置。
优选地,当前位置为slice、前一个位置为空洞时,执行新建进位链。
优选地,当前位置为slice、前一个位置为slice时,执行级联。
优选地,当前位置为空洞、前一个位置为slice或空洞时,执行既不新建也不级联。
本发明还提供了一种进位链的测试方法,所述的带有slice空洞的进位链构造方法,其特征在于,进位链贯穿多个slice,每个slice各包含一个片段,每个片段包含多个基元,其中,步骤1,判断基元的正确性;步骤2,判断相邻的每两个基元的连接关系的正确性;其中步骤1和步骤2采用测试用例进行正确性的判断。
优选地,所述步骤1中判断基元的正确性的方法为:基元与LUT组成带进位的一位加法器,其中,LUT为异或逻辑的真值表,按照真值表给输入值,判断加法器的实际输出是否符合一位带进位加法器真值表的期望输出;若符合,则基元正确。
优选地,所述步骤2中判断相邻的每两个基元的连接关系的正确性的方法为:若前一个基元的进位输出与后一个基元的进位输入实时相等,符合两个一位加法器的连接线段真值表,则相邻的每两个基元的连接关系正确。
优选地,采用一个或多个测试用例覆盖一位带进位加法器真值表以及两个一位加法器的连接线段真值表。
优选地,当加法器的加法端输入同为1且进位端输入为0或当加法器的加法端输入同为0且进位端输入为1时,配置FPGA使基元不连接,采用单基元测试,需要多个测试用例。
优选地,配置FPGA使进位链上彼此相邻的两个基元连接,并且当前基元的加法输入端同为0,且进位端为1,与其相邻的基元的加法输入端同为1,且进位端为0,则采用一个测试用例对进位链进行测试。
本发明的有益效果包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海精密计量测试研究所,未经上海精密计量测试研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911081079.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电介质状态分析方法、系统、计算机及存储介质
- 下一篇:棒材防锈除雾装置