Interconnect Testing in Cluster Based FPGA Architectures Research by Ian G.Harris and Russel Tessier University of Massachusetts. Presented by Alpha Oumar.

Slides:



Advertisements
Similar presentations
Survey of Detection, Diagnosis, and Fault Tolerance Methods in FPGAs
Advertisements

Digital Integrated Circuits© Prentice Hall 1995 Design Methodologies Design for Test.
FPGA (Field Programmable Gate Array)
MEMORY BIST by: Saeid Hashemi Mehrdad Falakparvaz
V. Vaithianathan, AP/ECE
Digital Design: Combinational Logic Blocks
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.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 31/22alt1 Lecture 31 System Test (Lecture 22alt in the Alternative Sequence) n Definition n Functional.
10/14/2005Caltech1 Reliable State Machines Dr. Gary R Burke California Institute of Technology Jet Propulsion Laboratory.
Apr. 20, 2001VLSI Test: Bushnell-Agrawal/Lecture 311 Lecture 31 System Test n Definition n Functional test n Diagnostic test  Fault dictionary  Diagnostic.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 261 Lecture 26 Logic BIST Architectures n Motivation n Built-in Logic Block Observer (BILBO) n Test.
CMP238: Projeto e Teste de Sistemas VLSI Marcelo Lubaszewski Aula 2 - Teste PPGC - UFRGS 2005/I.
Built-In Self-Test for Field Programmable Gate Arrays funded by National Security Agency Chuck Stroud Electrical & Computer Engineering Auburn University.
Leonardo da Vinci ALLEGRO © J. M. Martins Ferreira - University of Porto (FEUP / DEEC)1 Scan design techniques J. M. Martins Ferreira FEUP / DEEC - Rua.
LEONARDO INSIGHT II / TAP-MM ASTEP - Basic Test Concepts © J. M. Martins Ferreira - University of Porto (FEUP / DEEC)1 Basic test concepts J. M. Martins.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR SRAM-based FPGA n SRAM-based LE –Registers in logic elements –LUT-based logic element.
Architecture Design Methodology. 2 The effects of architecture design on metrics:  Area (cost)  Performance  Power Target market:  A set of application.
BIST for Logic and Memory Resources in Virtex-4 FPGAs Sachin Dhingra, Daniel Milton, and Charles Stroud Electrical and Computer Engineering Auburn University.
Logic Simulation 4 Outline –Fault Simulation –Fault Models –Parallel Fault Simulation –Concurrent Fault Simulation Goal –Understand fault simulation problem.
The Spartan 3e FPGA. CS/EE 3710 The Spartan 3e FPGA  What’s inside the chip? How does it implement random logic? What other features can you use?  What.
Build-In Self-Test of FPGA Interconnect Delay Faults Laboratory for Reliable Computing (LaRC) Electrical Engineering Department National Tsing Hua University.
Rewiring – Review, Quantitative Analysis and Applications Matthew Tang Wai Chung CUHK CSE MPhil 10/11/2003.
Testing of Logic Circuits. 2 Outline  Testing –Logic Verification –Silicon Debug –Manufacturing Test  Fault Models  Observability and Controllability.
CS294-6 Reconfigurable Computing Day 14 October 7/8, 1998 Computing with Lookup Tables.
ECE 7502 Class Discussion Seyi Ayorinde Tuesday, February 3rd, 2015
TOPIC : Introduction to BIST and types of BIST
Physical Implementation 1)Manufactured Integrated Circuit (IC) Technologies 2)Programmable IC Technology 3)Other Technologies Manufactured IC Technologies.
Techniques and Algorithms for Fault Grading of FPGA Interconnect Test Configurations Mehdi Baradaran Tahoori and Subhasish Mitra IEEE Transactions on Computer-Aided.
Programmable Array Logic (PAL) Fixed OR array programmable AND array Fixed OR array programmable AND array Easy to program Easy to program Poor flexibility.
General FPGA Architecture Field Programmable Gate Array.
EGRE 427 Advanced Digital Design Figures from Application-Specific Integrated Circuits, Michael John Sebastian Smith, Addison Wesley, 1997 Chapter 7 Programmable.
Lecture 2: Field Programmable Gate Arrays September 13, 2004 ECE 697F Reconfigurable Computing Lecture 2 Field Programmable Gate Arrays.
TOPIC : Types of fault simulation
Open Discussion of Design Flow Today’s task: Design an ASIC that will drive a TV cell phone Exercise objective: Importance of codesign.
J. Christiansen, CERN - EP/MIC
Programmable Logic Devices
THE TESTING APPROACH FOR FPGA LOGIC CELLS E. Bareiša, V. Jusas, K. Motiejūnas, R. Šeinauskas Kaunas University of Technology LITHUANIA EWDTW'04.
Design for Testability By Dr. Amin Danial Asham. References An Introduction to Logic Circuit Testing.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Basic Sequential Components CT101 – Computing Systems Organization.
Test and Test Equipment Joshua Lottich CMPE /23/05.
Introduction to FPGAs Dr. Philip Brisk Department of Computer Science and Engineering University of California, Riverside CS 223.
CprE / ComS 583 Reconfigurable Computing Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #4 – FPGA.
Anurag Dwivedi. Basic Block - Gates Gates -> Flip Flops.
Efficient On-line Interconnect BIST in FPGAs with Provable Detectability for Multiple Faults Vishal Suthar and Shantanu Dutt Dept. of ECE University of.
Section 1  Quickly identify faulty components  Design new, efficient testing methodologies to offset the complexity of FPGA testing as compared to.
1 Carnegie Mellon University Center for Silicon System Implementation An Architectural Exploration of Via Patterned Gate Arrays Chetan Patel, Anthony Cozzie,
In-Place Decomposition for Robustness in FPGA Ju-Yueh Lee, Zhe Feng, and Lei He Electrical Engineering Dept., UCLA Presented by Ju-Yueh Lee Address comments.
TOPIC : Introduction to Faults UNIT 2: Modeling and Simulation Module 1 : Logical faults due to physical faults.
Logic and Computer Design Fundamentals, Fifth Edition Mano | Kime | Martin Copyright ©2016, 2008, 2004 by Pearson Education, Inc. All rights reserved.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES Functional testing.
Robust Low Power VLSI R obust L ow P ower VLSI Using Module Compiler to build FPGA Structures Seyi Ayorinde ECE 6505.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n FPGA fabric architecture concepts.
A Survey of Fault Tolerant Methodologies for FPGA’s Gökhan Kabukcu
Field Programmable Gate Arrays
ETE Digital Electronics
Sequential Logic Design
Floating-Point FPGA (FPFPGA)
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
XILINX FPGAs Xilinx lunched first commercial FPGA XC2000 in 1985
Hardware Testing and Designing for Testability
Instructor: Dr. Phillip Jones
CPE/EE 428/528 VLSI Design II – Intro to Testing (Part 2)
CPE/EE 428/528 VLSI Design II – Intro to Testing (Part 3)
ECE 434 Advanced Digital System L18
We will be studying the architecture of XC3000.
Lecture 26 Logic BIST Architectures
FIGURE 5-1 MOS Transistor, Symbols, and Switch Models
Programmable logic and FPGA
Reconfigurable Computing (EN2911X, Fall07)
Presentation transcript:

Interconnect Testing in Cluster Based FPGA Architectures Research by Ian G.Harris and Russel Tessier University of Massachusetts. Presented by Alpha Oumar Barry McGill University MACS B March 2001

Motivation IC densities increase More complex FPGA Architectures Cluster-based architectures become an architecture of choice for a lot of FPGA manufacturers.

Definition / Challenge Several logic blocks are grouped together into a cluster. Clusters are connected to other clusters via Switch Matrices. High density local interconnect within clusters : - improves FPGA utilization BUT!!!- greatly complicates FPGA testing problem.

FPGA: composed of an array of identical tiles (Fig. 1a). Tile: composed of a cluster and surrounding interconnect (Fig 1b). Interconnect: set of lines which can be connected by a set of programmable interconnect points (PIP) which act as switches. Fig 1c: is a commonly used structure for PIPs. Each dashed line is a PIP. A PIP connects each line to one line on each side of the matrix. For testing purposes we need to make a difference between cluster I/O and tile I/O. Cluster I/O are internal to the tile while tile I/O connects to neighboring tiles.

Cluster: composed of a set of basic logic elements (BLE) BLE: composed of a set of programmable lookup tables (LUT), multiplexers and flip- flops. Each BLE input can connect to the output of any other BLE and to any cluster input. The output of each BLE is assumed to be connected directly to a cluster output.

Testing Methodology Hierarchical approach : defines several FPGA configurations that detect bridging faults involving intra-cluster and extra- cluster interconnects Hierarchical structure of a cluster-based tile is exploited in defining the different configurations (To facilitate test configuration generation process).

Testing Methodology In each configuration, FPGA circuitry dedicated as BIST logic will perform test generation and response analysis to test non-BIST FPGA circuitry Consequently, FPGA will be configured as many independent BISTers structure similar to the one in Fig. 3

BISTer: composed of a test pattern generator (TPG), an output response analyzer (ORA), and two blocks under test (BUT). TPG: simply a counter which applies an exhaustive test sequence to the BUT BUT: each BUT is a single tile in the FPGA which is being tested ORA: a comparator which sets the Pass/Fail flip-flop to 1 if the outputs of both BUTs do not agree (XOR). Each BISTer will be implemented as a rectangular block of tiles. The number of tiles in a BISTer will depend on the number of tiles needed to implement TPG and ORA. BISTers will be implemented to cover an entire tile array.

!!! Tiles dedicated to TPG and ORA !!! Are not completely tested. >> FPGA will be reconfigured to shift the BISTers across the entire array (Fig. 4) Tile is fully tested when it acts as a BUT. But BUT must be surrounded by TPG/ORA. !!! Perimeter tiles will not be fully tested (by this uniform repetitive reconfiguration procedure !!! >> BISTer layout must be modified to use I/O pads to access the tiles on the periphery

Interconnect Faults Permanent Connection (PC): Short between two lines Permanent Disconnection (PD): Line broken in two or more lines Stuck-At 0 (SA0): PC of a line and ground Stuck-At 1 (SA1): PC of a line and power

Observability/Controllability PC defect: Both lines separately controllable At least one line observable PIP configured off PD defect: Both lines controllable Both lines observable PIP configured on SA0/SA1: Line must be controllable+observable

Intra-Cluster Configuration LUT configured as 4-input XOR All BLE outputs are separately controllable from each other, and from all cluster inputs Each IMUX configured to select data from each of its inputs in at least one configuration There is a sensitized path from each cluster input stem to a cluster output in each conf.

Algorithm 1: Intra-cluster Configuration Algorithm label all intra-cluster faults as undetected repeat select a BLE which is not configured, b initialize IMUX configurations of b repeat enumerate next IMUX configuration compute BLE output function until BLE function is unique until all BLEs are configured identify detectable faults until all faults are detectable in some configuration

Extra-Cluster Configurations Goal: create current flow paths between tile I/O nodes which allow the detection criteria for each fault to be satisfied in at least one configuration

Algorithm 2: Extra-cluster Configuration Algorithm Create interconnect graph Repeat Label all nodes as untouched Repeat Select an untouched node n Identify an untouched path from n to a cluster I/O label all nodes on the path as touched Identify an untouched path from n to a tile I/O label all nodes on the path as touched Until paths connect all cluster I/O to tile I/O Repeat Select an untouched node n Identify an untouched path from n to a tile I/O label all nodes on the path as touched Identify an untouched path from n to a tile I/O label all nodes on the path as touched Until no more untouched paths can be created Identify detectable faults Until all faults are detectable in a configuration

Experimental Results N: Number of BLEsConfs: Number of FPGA configurations I: Number of Cluster InputsMin : Theoretical minimum number of configurations Fcov: Fault coverage (One additional configuration would give 100% fault coverage in all cases)

Advantages This BIST strategy decomposes testing problem of entire FPGA into many identical problems of a size which is fixed by the test requirements for a single tile (design of TPG and ORA is same for all tiles!) Size of smaller problem is fixed, so this approach is easily scalable to FPGA arrays of any size

Advantages / Disadvantages Many ASIC DFT approaches involve modifying the circuit functionality to incorporate test functionality FPGA reconfiguration avoids that circuit overhead BUT!!! Several configurations are needed and time to reconfigure FPGA is not negligible