Fpga边界扫描系统的验证方法及装置的制造方法_2

文档序号:9725653阅读:来源:国知局
(10)模块的模拟特性进行验证,其中所述验证包括对10模块输入特性的验证和对10模块输出特性的验证;
[0063]S12、对边界扫描系统的指令处理进行验证,其中所述指令包括采样输入指令、输出测试指令、输出增强测试指令和输出训练测试指令;
[0064]S13、通过内部测试(INTEST)指令对边界扫描系统和FPGA的内部连接进行验证,其中FPGA的环回通路通过用户配置被选通。
[0065]边界扫描系统包括4个对外信号接口,分别是测试数据输入(TD1:TestDataInput)端口、测试模式选择(TMS: Test Model Select)端口、测试时钟(TCK: TestingClock)端口和测试数据输出(TDO:Test Data Output)端口。在边界扫描标准协议1149.1和1149.6中说明了边界扫描系统的设计思路和具体实现的电路模板,并提出为验证边界扫描系统而设计的几个测试指令。共有四个指令可用于边界扫描的测试:sample采样输入指令,主要用于测试芯片输入端口电路连接的正确性;extest输出测试指令,主要用于测试芯片输出端口电路连接的正确性;exteslpulse输出增强测试指令,主要用于测试芯片AC输出端口电路的正确性;extest_train输出训练测试指令,主要用于测试芯片AC输出端口电路的正确性。
[0066]本发明实施例提供的FPGA边界扫描系统的验证方法,从三个方面对FPGA的边界扫描系统进行验证,覆盖边界扫描及其相关的所有特性,从验证角度保证边界扫描系统验证的完备性,可以保证FPGA边界扫描系统功能的正确性,在实际芯片出现问题时,达到发挥边界扫描预期功能的效果,帮助定位芯片以及外接元器件连接错误和功能错误。
[0067]进一步地,如图2所示,FPGA的10模块的模拟特性验证流程如下:
[0068]S21、用户选择要测试10模块的模拟特性,根据用户选择的模拟特性筛选具有普通功能的10端口作为观察端口。
[0069]根据FPGA边界扫描系统分散存在于10模块中的特点,边界扫描在测试过程中需要通过10的模拟特性来体现。因此对于10存在的所有模拟特性,在验证边界扫描模块过程中均要覆盖到。模拟特性主要分为两类,一类是输入特性,另一类则是输出特性。其中,输入特性和输入特性包括电压特性、电流特性、差分特性和输入输出方向特性,例如表示输入特性的参数有lvds25、lvcmos25、vref 1、vref 2、vref、vref—internal,表不输出特性的参数有lVds25、lVcmos25。在FPGA当中,其10端口一部分用于特殊用途,一部分用于普通的输入输出。在对FPGA的10模块的模拟特性的验证的过程中需要选择具有普通功能的10端口作为观察端口。
[0070]S22、判断用户选择的模拟特性是否为输入特性;
[0071 ]如果用户所选特性为输入特性,则FPGA的10模块的模拟特性验证流程还包括:
[0072]S231、通过FPGA的配置端口将用户选择的输入特性配置到所述10模块上;
[0073]S232、向边界扫描系统输入采样输入指令及对应比特码,例如0和1 ;
[0074]S233、将TD0端口输出的所筛选10端口的采样结果与预期值进行比较;
[0075]S234、如果比较结果一致,即输出结果与输入的比特码相同,则确定所述10模块的输入特性正确,否则,给出错误报告,便于后续定位。
[0076]如果用户所选特性为输出特性,则FPGA的10模块的模拟特性验证流程还包括:
[0077]S241、通过FPGA的配置端口将用户选择的输出特性配置到所述10模块上;
[0078]S242、向边界扫描系统输入输出测试指令及对应比特码,例如0和1 ;
[0079]S243、将所筛选的10端口的输出结果与预期值进行比较;
[0080]S244、如果比较结果一致,即输出结果与输入的比特码相同,则确定所述10模块的输出特性正确,否则,给出错误报告,便于后续定位。
[0081]进一步地,如图3所示,对边界扫描系统的指令处理进行验证流程如下:
[0082]S31、将FPGA处于唤醒状态,将边界扫描系统的10模块初始化为默认配置。
[0083]S32、从采样输入指令、输出测试指令、输出增强测试指令、输出训练测试指令多个指令中选择。
[0084]在1149.1协议和1149.6协议中涉及到边界扫描的测试指令共有4个:采样输入指令,主要用于测试芯片输入端口电路连接的正确性;extest输出测试指令,主要用于测试芯片输出端口电路连接的正确性;exteslpulse输出增强测试指令,主要用于测试芯片AC输出端口电路的正确性;exteSt_train输出训练测试指令。在边界扫描验证中需要对这四个指令进行测试,并交替运行这4条指令来保证指令互相之间没有关联。
[0085]S33、从边界扫描系统输入端口输入选择的指令,并执行此指令。
[0086]S34、在10端口随机输入比特码;
[0087]S 3 5、将边界扫描系统的10端口和T D 0输出的结果与期望值进行比较,其中当执行采样输入指令时仅在TD0端口有输出,因此仅将TD0端口输出的结果与期望值进行比较;
[0088]S36、如果比较结果一致,则确定所述边界扫描系统的相应指令处理设计正确,否贝1J,给出错误点。如果比较结果不同,则要给出具体的错误点,方便后续问题定位。这个错误点可以通过确定输出端口和出错的周期数确定。
[0089]进一步地,如图4所示,边界扫描系统和FPGA内部连接的验证流程如下:
[0090]S41、将FPGA处于唤醒状态,将边界扫描系统的10模块初始化为默认配置。
[0091]S42、通过对可编程逻辑块中的通路开关进行配置,以选通FPGA每个10对上的环回通路。
[0092]由于10对是有两部分非常相似的输入输出通路逻辑组成,因此验证先要确定每个10对的A和B两个部分,从A输入端口环回到B的输出端口的通路,以及从B输入端口环回到A的输出端口的通路。这需要根据网表中10模块与可编程逻辑块的连接关系决定,在可编程逻辑块中配置出一条通路,这一特点可以在FPGA可编程逻辑器件中实现,根据之前预想FPGA中的环回通路配置可编程逻辑块。
[0093]S43、向边界扫描系统输入内部测试指令,并执行。
[0094]当第一次输入内部测试指令时,六端口和B端口的数据会发生互换。
[0095]S44、从边界扫描入口输入对应每个端口的激励数据序列,再次输入内部测试指令并执行;
[0096]在第一次将内部测试指令输入到边界扫描系统后,从边界扫描入口输入对应每个端口的激励数据序列,以0和1交替出现构成,再次输入内部测试指令。
[0097]S45、将边界扫描系统的TD0端口输出的结果与预期值进行比较;
[0098]在边界扫描输出端口依次串行输出每个10模块对应的结果。由于连接方式构成了pad_a和pad_b的对应值互换,所以从边界扫描输出端输出的结果与从边界扫描输入端输入的数据比较,预期结果中0和1的位置与输入数据比较产生了互换。
[0099]S46、如果比较结果符合预期,则确定边界扫描系统和FPGA的内部连接以及内部测试指令执行正确,否则确定边界扫描系统和FPGA的内部连接错误。
[0100]由于FPGA内部通路可以通过配置进行选择,则从边界扫描输出到内部的结果,再通过可编程逻辑块配置的环回通路,返回到边界扫描系统内部,因此不用添加任何电路,利用FPGA本身资源即可实现边界扫描系统内部连接测试。
[0101]本发明实施例还提供一种FPGA边界扫描系统的验证装置,用于在仿真平台上对FPGA边界扫描系统进行调试,如图5所示,所述装置包括:
[0102]第一验证模块11,用于通过输入指令/输出指令对FPGA的输入/输出(10)模块的模拟特性进行验证,其中所述模拟特性包括输入特性和输出特性;
[0103]第二验证模块12,用于对边界扫描系统的指令处理进行验证,其中所述指令包括采样输入指令、输出测试指令、输出增强测试指令和输出训练测试指令;
[0104]第三验证模块13,用于通过内部测试指令对边界扫描系统和FPGA的内部连接进行验证,其中FPGA的环回通路通过用户配置被选通。
[0105]本发明实施例提供的FPGA边界扫描系统的验证装置,从三个方面对FPGA的边界扫描系统进行验证,覆盖边界扫描及其相关的所有特性,从验证角度保证边界扫描系统验证的完备性,可以保证FPGA边界扫描系统功能的正确性,在实际芯片出现问题时,达到发挥边界扫描预期功能的效果,帮助定位芯片以及外接元器件连接错误和功能错误。
[0106]进一步地,所述10模块的输入特性包括电压特性、电流特性、差分特性以及输入输出方向特性,
[0107]所述第一验证模块进一步包括:
[0108]第一选择单元,用于筛选具有普通功能的10端口作为观察端口;
[0109]第一配置单元,用于通
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1