Advertisement • In this work we presents novel and efficient methods for on-line CLB testing in FPGA’s. We use a ROving Tester (ROTE) which unlike any prior work has has provable diagnosability. • The ROTE consists of multiple Built-In-Self-Testers (BISTers). We present 1- and 2- diagnosable BISTer designs. • We also introduce a functionality-based testing technique, Fast-Test-and-Diagnosis (Fast-TAD) which tests each CLB in only two configurations compared to exhaustive CLB testing of previous work. • All these techniques combined lead to more accurate and faster test and diagnosis of FPGAs than any previous method.
Spare column Spare column Circuit Circuit ROTE ROTE BISTer Roving Testing Using New Built-in-Self-Tester Designs for FPGA’s Roving Tester (ROTE) with Built-in-Self-Testers (BISTers) Vinay Verma (Xilinx Inc. ) Shantanu Dutt (Univ.of Illinois at Chicago)
Salient Features of our Methodology • Two columns of FPGA left spare for the ROTE; and 1 column as spare for the fault reconfiguration. • Fault detections consists of output response of two identically configured CLB’s. A mismatch indicates fault in BISTer tile. • Bister designs with provable diagnosabilities, not adaptive as in some prior works. • Methodology for fast and 1-diagnosable functional testing.
Cycling of CLBs in BISTer B BUT A D TPG ORA BUT Our BISTer-1 Architecture Sess CLB S1 S2 S3 S4 A TPG ORA BUT BUT B BUT TPG ORA BUT C C BUT BUT TPG ORA D ORA BUT BUT TPG A B BUT TPG TPG: Test Pattern Generator BUT: Block(CLB) Under Test C BUT ORA D ORA: Output Response Analyser
Gross PASS-FAIL Syndromes of BISTer-1 CLB A is configured as BUT is S3, S4 and as TPG in S1. When faulty CLB is TPG then the output is PASS and whenever it is a BUT, the output is FAIL. Theorem 1:BISTer-1 is 1-diagnosable, i.e., it can detect and locate one faulty CLB among its four CLB’s.
B A BUT TPG D F C ORA ORA Y1 Y2 E BUT TPG BISTer-2 One full BISTer cycle through 6 session Its 6 CLB architecture. 2 CLB’s as TPG and 2 CLB’s as ORA. First ORA(Y1) compares outputs of 2-BUTs and second ORA(Y2) compares outputs of 2-TPG’s
BISTEer-2 Gross Pass/Fail syndromes at both ORA’s Theorem 2: BISTer-2 is 2-diagnosable with very high probability
Fast-TAD: Fast Functional Testing and Diagnosis • In this methodology a CLB is tested only for specific configurations/functions it will assume as the ROTE moves across the FPGA. • A CLB X isfunctionally-faulty (f-faulty) if faults in X produce incorrect outputs, when X implements any of its operational functions. • Property: While roving the ROTE in an FPGA either without f-faults or with reconfigured f-faults, a CLB needs to implement at most two functions: its original function (when ROTE is in its initial position) and the function of the CLB two f-fault-free CLBs in the same row in the direction of ROTE movement.
c2 c2 c2 c4 c4 c4 c2 c4 c1 c1 c1 c3 c3 c3 c5 c5 c5 c1 c3 c5 fx1 fx1 fx2 fx2 fx3 fx3 ROTE ROTE (a) (d) fx1 fx2 fx3 ROTE (b) fx1 fx2 fx3 ROTE (c) CLB-functionality with ROTE movement CLB in column c3 implements function fx1 in (a) and function fx3 in (d) as the ROTE moves across the FPGA.
Diagnosis in Fast-TAD • Each CLB is tested with 2 sets of configurations only. • When the f-faulty CLB is configured as a TPG, the gross syndrome is pass and when it is • configured as a BUT and implements its operational functions, then the gross syndrome is • fail. In all other cases it is either a pass or a fail. • The second test set is used to distinguish between the possible f-fault being in either of A,C • or in either of B,D. Theorem 3: Fast-TAD using Bister-1 can diagnose 1 f-faulty PLB in each Bister-1 tile of 2x2 CLBs.