片上网络FIFOs 的内建自测试方法研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第30卷第8期仪器仪表学报V ol.30 No. 8 2009年8月Chinese Journal of Scientific Instrument Aug. 2009片上网络FIFOs的内建自测试方法研究*
赵建武,师奕兵,王志刚
(电子科技大学自动化工程学院成都610054)
摘要:片上网络是对微系统芯片的传统片上互连结构的统一和发展,一种新的集成电路设计技术只有在它的测试技术发展完善后才能被广泛使用。

首先建立了片上网络路由器FIFOs的功能模型,在此基础上,提出了一种基于可测性设计技术并且具有线性计算复杂度O(n)的FIFOs测试算法,论述了一种新颖的复用片上网络、共享内建自测试(BIST)结构对片上网络路由器FIFOs并行测试的方法。

实验数据分析表明这种测试方法具有较高的故障覆盖率、较小的测试时间和片上资源开销。

关键词:微系统芯片; 片上网络; FIFOs; 内建自测试; 可测性设计
中图分类号:TN407文献标识码:A国家标准学科分类代码:510.1035
Research on BIST test method for network-on-chip FIFOs
Zhao Jianwu, Shi Yibing, Wang Zhigang
(School of Automation Engineering, University of Electronic Science and Technology of China, Chengdu 610054, China)
Abstract:Network-on-chip has recently emerged as a unification of current trends of on-chip data communication infrastructure for complex system-on-chip. Any new design methodology will only be widely adopted if it is com-plemented by efficient test mechanism. In this paper, we describe the functional model of FIFOs used in NoC rou-ters and propose a novel FIFOs test algorithm based on design for testing technique to reduce the test complexity to O(n). We discuss a method of progressive reuse of the on-chip network to transport test data and sharing built-in self-test circuit to test the router FIFOs under test. Experiment results show that the method has the advantage of high fault coverage, short test time and low chip area overhead.
Key words:system-on-chip; network-on-chip; FIFO; built-in self-test; design for testing
1引言
微系统芯片(system-on-chip)的设计技术在近几年得到了飞速的发展,片上网络(network-on-chip)在可复用性和可扩展性等方面都要优于总线等传统片上互连结构[1],基于片上网络的微系统芯片测试技术的研究正受到越来越多的重视。

片上网络路由器中的FIFOs在芯片面积开销中占相当大的比例,具有数量多、位置分散和测试数据存取困难的特点,如果每个FIFOs使用独立的内建自测试结构,芯片面积开销太大。

March测试算法是目前使用最为广泛的一种存储器测试算法,由于FIFOs特殊的读写控制,要用March测试算法对FIFOs进行测试必须满足2个约束条件:1)存储单元的单序读写操作,每个March元只能使用升序读写操作;2)一个March元最多包含一个读操作和一个写操作序列。

其他具有非线性复杂度的测试算法虽然具有理论研究意义,但测试时间太大无法在实际芯片测试中使用。

在以前对片上网络路由器FIFOs的测试研究中[2],通常使用基于SRAM的移位型FIFOs的功能模型和功能故障模型,采用分布式内建自测试结构,BIST 控制器、测试激励生成器和多输入特征分析器(MISR)被所有FIFOs共享,路由器中每个FIFO有独立的本地测试响应分析器,测试输入数据通过并串转换传送到被测FIFOs,测试响应压缩为单序列输入多输入特征分析器。

但是移位型FIFOs的存取速度慢,数据分组/数据包(Packets)的网络传输延迟较大,在片上网络设计中已经很少使用,测试数据采用串行传输的方式,测试时间较
收稿日期:2008-12Received Date:2008-12
*基金项目:中国教育部“新世纪优秀人才支持计划”(NCET-05-0804)、国家建设高水平大学公派研究生项目资助
第8期 赵建武 等:片上网络FIF0s 的内建自测试方法研究 1769
大,FIFOs 故障模型中的耦合故障CF id 和CF st 无法完全检测,测试响应压缩所引起的特征混叠会降低故障覆盖率。

本文将围绕片上网络路由器FIFOs 测试所存在的问题展开分析和讨论。

2 FIFOs 功能建模
本文使用VHDL 硬件描述语言实现了二维Mesh 拓扑结构的片上网络,路由器结构如图1所示。

图1 片上网络路由器结构(FC 表示流量控制模块) Fig.1 Architecture of NoC router (FC = Flow Controller)
内部/外部数据通道分别用于内嵌芯核与路由器以及相邻路由器之间的连接,只有输入数据通道使用FIFOs 对接收到的数据进行暂存。

路由器中FIFOs 的功能模型如图2所示。

图2 路由器FIFOs 功能模型 Fig.2 Functional model of a NoC FIFO s
存储器单元阵列为双端口静态R AM ,寻址逻辑主要由计数器和地址译码器组成,读操作如式(1)所示:
:();
:(1)m od ,|01;
D O RAR RAR i n i i n ==+∀≤≤- (1)
式中:DO 表示读端口,(RAR )表示以读地址寄存器内容作为寻址地址的FIFOs 单元的内容。

写操作如式(2)所示:
():;
:(1)mod ,|01;
W AR D I W AR i n i i n ==+∀≤≤- (2)
FIFOs 被n 个字写满后,FF 标志被置位,数据禁止写入存储器单元;数据全部被读出后,EF 标志置位。

其它情况下,EF 和FF 为低电平,当复位信号(RESET )有效时,无论FIFOs 当前处于何种状态,都被复位到初始状态,如式(3)所示,式中IA 表示FIFOs 地址寄存器的初始值。

():||():||:1||:0RAR IA WAR IA EF FF ==== (3)
存储器测试主要使用功能测试,故障模型和相应的测试算法建立在功能模型的基础上,对于路由器FIFOs 的AC 和DC 参数测试和读写时钟测试不在本文的讨论范围内。

3 FIFOs 故障模型与测试算法
FIFOs 的故障模型包括:固定型故障(SAF )、跳变故障(TF )、耦合故障(CFin ,CFid ,CFst )、固定开路故障(SOF )和数据保持故障(DRF )、多端口故障(MPF )。

寻址故障(AF )可归纳为以下4种:某个存储地址没有被映射到任一存储单元;某个存储地址被映射到多个存储单
元;某个存储单元不与任何存储地址关联;某个存储单元与多个存储地址关联。

控制信号FF 、EF 和RESET 的故障可用式(6)~(8)进行描述,式中:LO 表示最后一次FIFOs 的操作,WO 和RO 分别表示写操作和读操作。

1:w hile ()()or ();0:w hile ()()and ();=≠≠===FF W AR RAR LO W O FF W AR RAR LO W O (4) 1:w hile ()()or ();0:w hile ()()and ();
=≠≠===EF W AR RAR LO RO EF W AR RAR LO RO (5)
:()or ()or ();≠≠≠RS WAR IA RAR IA LO RO
(6)
由于FIFOs 测试的两个约束条件使测试算法的故障覆盖受到了很大限制,如果使用March 测试算法对FIFOs 进行测试,最多只能测试50%的CF id 故障,而CFst 不能被检测,并且测试复杂度是O (n 2)[3]。

本文使用可测性设计技术消除约束条件,提高故障覆盖率,读/写地址计数器采用带计数使能的加法计数器,利用计数使能功能,引
进2个新的读/写操作,对March 测试算法做适当修改后可以达到全部故障覆盖,为了进一步简化硬件结构,测试算法中不使用同时读/写操作,对读/写地址计数器使用1个使能控制信号即可。

基于可测试性设计技术的March 测试算法如图3所示,w s 和r s 表示加法计数器被禁止时的读/写操作,此时虽然准许读/写操作但计数器内容(地址)不改变。

del 表示为了测试DRF 故障所做的延时。

March 元M2和M4具有式(7)的形式:
1
0()n r x rx -⇑
(7)
1770 仪 器 仪 表 学 报 第30卷
图3 片上网络路由器FIFOs 测试算法 Fig.3 NoC router FIFOs test algorithm
因此可以测试全部寻址故障[4]。

M 0到M 4可以测试SAF 、TF 和CF 故障。

M 1和M 3测试MPF 故障。

M 5到M 7用于测试SOF 和DRF 故障,测试算法具有线性复杂度O (n )。

这里所论述的测试算法以文中的故障模型为基础,这些故障模型具有较高的发生概率。

4 BIST 测试结构
复用片上网络并行测试片上网络路由器FIFOs 的内建自测试结构如图4所示。

图4 路由器FIFOs 的内建自测试结构
Fig. 4 Architecture of BIST circuit for NoC router FIFOs
BIST 控制器的核心是一个有限状态机,用来实现测试算法以及输出控制信号,BIST 控制器还有与外部自动测试设备的接口,用于启动内建自测试和输出测试结果。

测试图形生成器生成FIFOs 的测试数据序列
[6]
(data
background pattern ),测试算法不变,用测试数据序列替换图3所示测试算法中的“1”,测试数据序列取反后替换“0”。

在内建自测试技术中,通常使用线性反馈移位寄存
器产生测试激励[5],而FIFOs 的测试数据序列数量较小并且具有规则性,测试图形生成器可用简单的状态机和移位寄存器实现,一个m =16位字宽的FIFOs 有2log 15m +=个测试数据序列如图5所示。

图5 测试数据序列(16位) Fig.5 The data background for 16-bits FIFOs
这些内建自测试模块的实现方案已有较多的相关文献进行了讨论[4-6],在此不再赘述。

测试响应空间压缩器使用压缩函数把FIFO 输出合并为单一序列,可以使用XOR-OR 网络实现,测试响应分析器主要由“1”探测器构成,由于每个路由器内部所有FIFO 结构完全相同,无故障FIFO 存储单元读出的数据也必定相同,通过输出比较就可以确定是否存在故障,不需要对输入测试数据进行锁存,简化了内建自测试控制结构。

对于片上网络的路由器可以按位置分布进行分组,实现多级合并压缩。

一旦发现故障,测试停止,进行故障定位和故障诊断等后续处理。

本文所提出的FIFOs 内建自测试方法需要片上网络路由器硬件和路由算法的支持。

路由器使用电路交换方式(circuit swi tching ),测试模式下,不需要对网络中插入路径探测分组(routing probe packet ),采用多点传输的方式,使用一个特殊的路由设置分组实现对路由器的路由表的设置,路由设置分组的格式定义如图6所示,每个路由设置分组由分组头部、数据和结束字段3部分组成,路由器收到路由设置分组后,将分组中目的节点地址和本地路由器地址比较,如果地址比较相同,设置路由表并提取测试数据长度,所有需要设置的路由器处理完毕,测试数据传输路径已经建立,开始传输测试数据,当所有测试数据传输完毕后,测试数据传输路径被拆除。

复用片上网络传输测试数据的本质是利用已经测试的无故障的片上网络部分对片上网络其他部分传输测试
数据。

在相同的路由算法下,网络拓扑结构和测试源节点的选取对测试时间有较大的影响,对于较大的片上网络结构,可以考虑选择多个内建自测试结构配置,在测试时间和芯片面积开销之间取得合理的折衷。

1
010
1
010
1
01
1
1
0:(1);
1:(1||0:0,0,1,0);2:(0,1,1,0);
3:(0||:1,1,0,1);4:(1,0,0,1);5:(0|1);
6:(0|1,1|0);
7:(1|0);
--------
⇑⇑=⇑⇑=⇑⇑⇑⇑n n s s n s s n s s n s s n n n M w M r D I w w w M r w r w M r D I w w w M r w r w M w del M r w del M r 1:00000000000000002:01010101010101013:00110011001100114:00001111000011115:0000000011111111
第8期赵建武等:片上网络FIF0s的内建自测试方法研究1771
图6路由设置分组格式
Fig.6 Formats of the routing setting packet
5实验结果与分析
本文所提出的FIFOs测试算法与SMarch和SAO-MATS++测试算法[7-8]故障覆盖和算法复杂度分析比较如表1所示,SMarch测试方法具有较高的算法复杂度以及较低的故障覆盖,但不需要对FIFOs做任何修改,内建自测试结构非常简单,测试数据串行传输,相对SAO-MATS++方法具有较低的芯片面积开销。

表1测试算法复杂度和故障覆盖
Table 1 T est algorithm complexity and fault coverage
故障模型本文测试算法SMarch SAO-MA TS++ SAF √√√
TF √√√
CF i n √√√
CF i d √不能检测部分可测
CF st
√不能检测不能检测SOF √√√
MPF √√√寻址故障√部分可测部分可测
控制功能故障√部分可测√
算法复杂度O(n)O(24bn)O(n2)使用Xilinx ISE在Virtex-II FPGA上对一个二维Mesh 拓扑结构的片上网络进行了综合实现。

FPGA型号是XC2V1000,LUTs为4输入查找表结构,每个Slice有2个LUTs和2个触发器,BRAMs容量是18K位RAM块。

表2表示使用V irtex-II FPGA (XC2V1000)实现二维Mesh拓扑结构的片上网络芯片资源使用情况,表3表示了对片上网络进行可测性设计修改后片上资源开销,芯片资源开销略微有所提高。

表2片上网络资源使用
Table 2 2D mesh NoC chip area overhead FPGA资源可用资源已用资源%LUTs 10 240 6 615 64
Slices 5 120 3 308 64
FF 11 212 3 720 33
BRAM 40 10 25
表3插入BIST结构后片上资源使用比较
Table 3 2D mesh NoC chip area overhead for testing FIFOs FPGA资源可用资源已用资源Δ%LUTs 10 240 6 953 +3
Slices 5 120 3 381 +1.5
FF 11 212 3 938 +2
BRAM 40 18 -
本文所提出的FIFOs测试算法与SMarch和SAO-MATS++测试算法的测试时间和片上网络传输延迟如图7所示。

图7二维Mesh片上网络路由器FIFOs测试时间
Fig.7 Test time for 2D mesh NoC router FIFOs 使用串行SMarch测试方法测试FIFOs时采用并行内建自测试结构配置,可以使用菊花链的方式将片上网络全部FIFOs串行连接起来,尽管芯片面积开销较小但是测试时间较大,SAO_MATS也有类似的问题,主要表现为过大芯片面积开销,因此对于串行SMarch与SAO_MATS这两种FIFOs
测试方法使用与本文所提出的测试算法相同的路由器分组划分,另外,对于本文所提出的复用片上网络的内建自测试结构,还需要考虑路由设置分组建立连接所消耗的时间[9],对于本文所提出的二维Mesh片上网络,可使用式(8)计算:
circuit
()
r w s
t t t t D k
=++⨯⨯(8) 式中:t r表示路由器做出路由决定所消耗的时间(10个时钟周期),t w表示路由器之间通道传输延时(1个时钟周期),t s 表示路由器内部传输延时(2个时钟周期),D表示源节点和目的节点之间的通道间隔,k表示每个分组的字段数。

1772 仪器仪表学报第30卷
6结论
本文建立了片上网络FIFOs的功能模型,给出了存储器阵列、寻址逻辑和读写控制的功能故障模型,使用可测性设计技术引进两种新的读写操作,实现了全部功能故障模型覆盖,测试算法计算复杂度从O(n2)降低到了O(n)。

本文提出了复用片上网络传输测试数据的并行内建自测试结构,使用路由设置分组实现路由器工作模式和测试模式之间的切换并对路由表进行设置,结合二维Mesh片上网络路由器的分组交换和路由方法对被测FIFOs提供了可靠的测试数据传输服务。

实验数据分析表明本文提出的方法与目前同类方法相比在测试时间、芯片面积开销、故障覆盖和测试结构的可扩展性方面具有明显的优势。

参考文献
[1]LFF H G, CHANG H, OGRAS U Y, et al. On-chip com-
munication architecture exploration: A quantitative evalu-
ation of point-to-point, bus, and network-on-chip ap-proaches[J]. ACM Transactions on Design Automation of Electronic Systems, 2007,12(3):ART23.
[2]GRECU C, PANDE P, WANG B SH. Methodologies and
algorithms for testing switch-Based NoC interconnects
[C]. Proceedings of the 2005 20th IEEE International
Symposium on Defect and Fault Tolerance in VLSI Sy s-tems (DFT’05), 2005:201-209.
[3]V AN DE GOOR, A J, ZORIAN Y. Faults models and tests
for ring address type FIFOs[J]. IEEE Design & Test of Computer, 1994,10(2):300-305.
[4]ADAMS R D. High performance memory test-
ing——design principles, fault modeling and self-test[M].
Kluwer Academic Publisher, 2003:127-149.
[5]谢永乐, 孙秀斌, 王玉文,等. 数字集成电路的混合模式
内建自测试方法[J]. 仪器仪表学报, 2006, 27(4): 30-34.
XIE Y L, SUN X B, WANG Y W, et al. A mixed mode BIST approach of digital integrated circuits[J]. Chinese Journal of Scientific Instrument, 2006,27(4):30-34.
[6]DEKKER R, BEENKER F, THIJSSEN L. A realistic
self-test machine for static random access memories[J].
IEEE Trans. On Computers, 1990,9(6):567-572. [7]NADEAU-DOSTIE B, SILBURT A, AGARWAL W K.
Serial interfacing for embedded-memory testing[J]. IEEE Design & Test of Computer, 1990,7(2):52-63.
[8]JONE W B, HUANG D C, WU S C. An efficient BIST
method for distributed small buffers[J]. IEEE Trans. On VLSI System, 2002,10(4):512-515.
[9]DUA TO J, Y ALAMANCHILI S, NI L. Interconnection
networks-An engineering approach[M]. Morgan Kluwer Publishers, 2003:49-52.
作者简介
赵建武,2004年于华东理工大学获得
硕士学位,现为电子科技大学测试计量技术
及仪器专业博士研究生,主要研究方向为
VLSI和电子系统(SoC)的测试理论与技术,
嵌入式系统设计。

E-mail: tojianwu@
Zhao Jianwu received MS degree from East China Univer-sity of Science and Technology in 2004. He is currently pur-suing PhD degree in measuring and testing technology and in-struments in University of Electronics Science and Technology of China (UESTC). His research interests are in the area of test theory and technology of VLSI and SoC, and embedded system design.
师奕兵,1985年于成都电讯工程学院
(现电子科技大学)获得学士学位,1988年于
电子科技大学获得硕士学位,2002年于电
子科技大学获得博士学位,现为电子科技大
学教授,主要研究方向为VLSI和电子系统
的测试理论与技术、电子测量仪器理论与设计技术、测井技术以及基于网络的测试。

E-mail: ybshi@
Shi Y ibing received BS, MS and PhD degrees all from Uni-versity of Electronics Science and Technology of China (UESTC) in 1985, 1988 and 2002, respectively. He is currently a professor in School of Automation Engineering, UESTC. His research interests are in the area of test theory and technology of VLSI and SoC, theory and design technology of electrical mea-suring instruments, logging technology and test technology
based on network.。

相关文档
最新文档