登录
|
注册会员
开启辅助访问
设为首页
收藏本站
扫一扫关注官方微信
论坛
BBS
M币充值
M currency prepaid phone
M币获取
附件中心
搜索
search
全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
MCU资讯论坛
»
论坛
›
单片机论坛
›
单片机应用于方案
›
基于BIST的FPGA逻辑单元测试方法
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版
基于BIST的FPGA逻辑单元测试方法
[复制链接]
1781
0
ad***
管理员
发表在
FPGA/PLD
2013-6-12 04:52:21
|
查看全部
|
阅读模式
本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要
登录
才可以下载或查看,没有帐号?
注册会员
x
摘 要:给出了一种基于内建自测(BIST)的测试现场可编程门阵列(
FPGA
)逻辑单元的方法,讨论了测试的配置结构、故障覆盖率和测试中出现的问题及解决办法。实验表明,该测试方法具有所需测试向量少、故障覆盖率高、简便适用等优点。
关键词:现场可编程门阵列;内建自测;响应检验电路;测试
引 言
现场可编程门阵列FPGA(Field ProgrammableGate Array)是一种新型器件,它将门阵列的通用结构与现场可编程的特性结合于一体,因而受到广泛关注。FPGA 测试中,测试激励的多种测试生成方法,都有其一定局限性,不能求出所有故障,而且随着集成电路规模的迅速膨胀,电路结构也越来越复杂,大量的故障变得不可测。所以,人们把视线转向了电路系统的设计过程。如果设计的电路容易测试,容易找到测试码,对测试和测试码的生成问题就大大简化,这就是可测性设计问题。可测性设计问题的一个主要解决方法就是内建自测法BIST(Built-in self-Test)。
利用FPGA可重复编程的特性,通过脱机配置,建立BIST逻辑,即使由于线路被操作系统的重新配置而令BIST结构消失,可测性也可实现。本文给出一种基于BIST利用ORCA(Optimized Reconfigurable Cell Array)结构测试FPGA逻辑单元PLB(Programmable Logic Block)的方法,该方法对逻辑单元PLB 进行了分类、分阶段的测试,同时进行电路模拟实验。
BIST测试结构
这种基于BIST的测试方法是一系列测试阶段顺序进行的结果,每一阶段都包括以下几步:1)对电路进行配置;2)测试初始化;3)生成测试图形;4)对响应进行分析;5)读出测试结果。
图1 给出了利用ORCA测试方法过程中FPGA的配置结构。在用于完全测试BUT (Block Under Test)的绝大部分配置中,TPG以二进制计数器的模式工作,为BUT的m个输入端提供随机的测试模式。由于PLB的输入要多于输出,所以需要将一些PLB通过编程构造成m位的计数器,在存储器的操作模式中,存储器被配置为随机存储器。TPG作为p字节(p<m)的状态机产生标准的RAM测试序列。
图1 测试FPGA的ORCA结构
不同的TPG一定要满足BUT的需求,BUT的输出要与ORA相符合,因此,TPG的数目要求为c,c同时也是与一个ORA相符合的PLB的输出管脚数。ORA由一个LUT和一个触发器组成,其中LUT用于从c 组BUT 相应的输出作比较,触发器记录第一次不匹配的情况。从触发器输出到LUT 输入的反馈信息会在ORA第一次错误记录之后进一步做比较。通常,一些ORA会在同一个PLB中实施,这依赖于PLB中相互独立的LUT的个数。这里,如果LUT的输入序列至少与一个PLB 是分离的,则认为此LUT是独立的。每一个TPG驱动一组共n个BUT,每个BUT有m个输入和k个输出,则BUT中共有c*n*k个输出与k 组n个ORA作比较,每个ORA监控c个输出,ORA的第i组接收n个BUT的第i个输出。
例如,在ORCA结构的PLB中,存在2个独立的LUT,每个LUT 有5个输入,由于反馈的存在,需令c=4。又由于每个PLB有18个输入,TPG生成随机测试向量所要求的触发器的数量也是18。因为一个PLB中有f=4个触发器,所以需要5个PLB来构成随机TPG,其中只有4个PLB是用于产生RAM模式测试进而构成TPG状态机的。最后,每个必须与ORA作比较的PLB中有k=5个输出。表1对以上数据进行了概括,并将Xilinx 4000与Altera Flex 8000系列中的FPGA各项参数进行了对比,对FPGA这些结构参数、TPG输出信号计数n以及BIST所需步骤的数目进行了分析。多数商业用途的FPGA进行完全测试需两个测试步骤,而一些其他规模的FPGA则需要三个步骤。
测试实施
在测试实施阶段利用故障模拟来评价不同BIST步骤中的故障覆盖率。为ORCA结构的PLB建立了一个完全的门级电路模型,包括代表基本输入值的PLB配置,那些输入值在每一阶段是“固定”的。允许模拟影响配置位的stuck-at故障。LUT、FF和Output Mux三个模组中每一个的随机测试用于检测无法探查的故障(LUT中为3个故障,FF中为4 个故障),这些故障从故障目录表中被移除。PLB中共2224个stuck-at门级故障,其中1538个在LUT中,440个在FF 中,224个在输出MUX中,完全测试每个PLB共需9次这样的配置结构。对3个模组中每一阶段所检测出的新故障数目、检测故障累积的总数及故障覆盖率等故障模拟结果见表2。
表1 FPGA结构参数对比
表2 PLB故障模拟测试结果
从表2中可以看出,第一阶段为LUT提供了一个完全的测试,而接着的5个阶段检测了FF中所有的故障,对输出MUX所有的故障检测需要9步。这9次配置结构可以根据为三个模组中每一个而设定的模式来描述。一个ORCA输出利用9*1 MUX来选择4个LUT输出中的任一个,或者4个FF输出的任一个,也就是LUT在以快速加法器操作方式进行工作。这9*1MUX证实了完全测试输出MUX 块的配置数量。
ORCA结构的LUT有4个不同的操作模式:RAM、fast adder 、5 变量的LUT-based逻辑功能、4变量的LUT-based逻辑功能。它们在PLBBIST前4步中进行测试,如表3所示。在RAM模式中,TPG被配置为产生标准RAM 测试序列,而在其他步骤中被配置为二进制计数器。一旦LUT已经在RAM模式下测试,余下的BIST步骤中,依靠LUT中的棋盘模式来确定LUT输出的所有可能模式。FF有以下操作模式供选择:1)FF/Latch;2)Set/Reset;3)falling edge/rising edge ofclock等,与这些选择相关的数据太大,不易考虑。因此,可根据对PLB 门级电路模型的故障模拟来选择。5 次配置对完全测试FF 模组是足够的。
表3 PLB BIST配置
从表3的后半部分可知FF 模组各种操作模式的不同选择情况。在这9次BIST配置中,ORCA的典型应用包括54%的连线资源可编程线段以及87%的PLB和LUT。尽管多数ORCA只需要2个测试阶段,还需18次的配置结构来测试所有的PLB。这18次配置结构与通常应用ORCA结构测试的32次配置相比,结果比较令人满意。
测试中遇到的问题
路线资源的限制
作为伪随机测试,PLB的测试包括PLB大多数的I/0管脚,但IC系列ORCA路由于资源有限,不能支持所有TPG输出到BUT以及所有的BUT输出到ORA。为解决这个问题,基于伪随机测试的准则允许对每一次配置有一点“偏差”,只对在该阶段确实用到的输入采用随机测试,并观察其输出。表3给出了每一步BIST所用到的PLB管脚数目,路线资源可以满足系统要求。
缺少详细的配置控制
在一般的应用中,用户只需要将FF的输出与PLB的输出相连,而不管是具体哪个输出,这是特定的布线算法和路由算法决定的。在本方法中,为了得到完全的测试,必须保证每一个输出矩阵依次与它的9个输入(4个FF输出,4个LUT输出,1个加法器进位)相连,因此有一种与这9次配置都不同的选择。但是CAD工具不允许用户控制输出的多路复用器(用户模式下没有输出多路开关),因此,解决方法是修改中间的设计文件或者配置位流,来控制输出的多路输出选择。
结 语
本文方法的最大优点是不需专用测试仪器,只需要观察测试响应检验电路ORA的输出即可,因此所需输入、输出单元少,故障覆盖率高,不可测故障较其他方法大大降低。实验数据表明,本方法的测试结果令人满意。
举报
回复
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖后跳转到最后一页
回复
转播
评分
分享
打开支付宝扫一扫,最高立得1212元红包
搜索
本版
帖子
用户
热搜:
传感器
51串口程序
电子管放大器
夾式電表
夾式電流
Mentor论坛
打印机
版块推荐
百宝箱
My 布拉格
无边框Z9
Z9Max
Z9mini
nubia动态
问题 & 建议
资源分享
爱拍
同城会
牛仔生活
查看论坛所有版块>>
每日签到
论坛任务
摄影技巧
跳蚤市场
互助问答
论坛导读
申请内测
红包中心
每日摇一摇
活动中心
网站地图
官方旗舰店
图文热点
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
可支持14×4的点阵LED显示面板数码管LED驱
VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁 存
数显驱动器原厂-数显LED显示驱动芯片VK1620
VK1620B是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、 数据锁
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
产品品牌:永嘉微电/VINKA 产品型号:VK1618 封装形式:SOP18/DIP18 概述 VK161
更多
精华推荐
抗干扰LED数码管显示屏驱动芯片/3线串行接
抗干扰能力强/点阵数显LED屏驱动/数码管驱
可支持14×4的点阵LED显示面板数码管LED驱
数显驱动器原厂-数显LED显示驱动芯片VK1620
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
VK1616 SOP16/DIP16点阵LED数显驱动芯片/数
点阵数显驱动芯片/LED数码管显示屏驱动VK16
数显驱动电路LED显示驱动芯片VK1650 SOP16/
更多
社区学堂
抗干扰LED数码管显示屏驱动芯片/3线串
抗干扰能力强/点阵数显LED屏驱动/数码
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
可支持14×4的点阵LED显示面板数码管LED驱
VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁 存
更多
客服中心
QQ:187196467
服务时间:周一至周日 8:30-20:30
在线客服
客服微博
产品咨询
售后中心
关注我们
关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
QQ:187196467
周一到周日 8:30-22:00 (全年无休)
7 x 24小时在线客服
手机版
Powered by
MCUZX!
X3.4 © 2008-2015
MCU资讯论坛
版权所有
京ICP备18035221号-2
客服QQ: 187196467
技术支持:
MCU资讯论坛
|
网站地图
快速回复
返回顶部
返回列表