Built-In Self-Test Technique For Selective Detection of Neighbourhood Pattern Sensitive Faults in Memories
Built-In Self-Test Technique For Selective Detection of Neighbourhood Pattern Sensitive Faults in Memories
Built-In Self-Test Technique For Selective Detection of Neighbourhood Pattern Sensitive Faults in Memories
Abstract the neighbourhood size. Traditional March tests are not adequate
Traditional tests for memories are based on conventional for detection of such NPSFs [1,5]. Hence the proposed BIST
fault models, involving the address decoder, individual mechanism for detecting NPSFs is designed to correspondingly
memory cells and a limited coupling between them. The match the faults being considered. The salient features of this
algorithms used in these tests have been successively BIST implementation are: (a) It uses the well-known tiling
augmented to consider stronger coupling conditions. Built-in method and employs a parallel access mechanism to memories
self-test (BIST) solutions for testing memories today to reduce the cycle count. (b) It employs a bit-slice architecture
incorporate hardware for test pattern generation and for the test pattern generator to generate a Eulerian sequence for
application for a variety of these algorithms. This paper covering the cells in the neighbourhood. (c) The BIST
presents a BIST implementation for detection of implementation, based on the proposed address and test pattern
neighbourhood pattern sensitive faults (NPSFs) in random generation schemes, is scaleable for four different NPSF models,
access memories (RAMs). These faults are of different classes (based on distance 1 and 2, and types 1 and 2), for active,
and types. More specifically, active, passive and static faults passive and static faults. This implementation covers stuck-at
for distance 1 and 2 neighbourhoods, of types 1 and 2, are faults, transition faults, inversion coupling faults, idempotent
considered. It is shown how the proposed address generation coupling faults and static coupling faults, besides the NPSFs
and test pattern generation schemes can be made scaleable mentioned above. As complete rows of cells are accessed for
for the given fault type under consideration. read and write operations, this test is better suited for wider
memories. (According to the authors, this is the first time that
Keywords: Built-in self-test for memories, neighbourhood such a BIST implementation for NPSFs is being reported).
pattern sensitive faults, programmable BIST. This paper is organized into six sections. Section 2 provides
an overview of NPSFs, their classes and types, and challenges in
1. Introduction their detection. Section 3 describes the basic BIST technique for
Shrinking feature sizes and increase in the levels of detection for one class of NPSFs, together with its
integration have significantly impacted the design and test of implementation. This implementation is extended in Section 4 to
random access memories (RAMs). While memory cells and include other types of NPSFs. The overall BIST operation is
architectures have become increasingly compact, they are summarised in Section 5. Section 6 concludes the paper.
now also susceptible to increasingly diverse failure
mechanisms. This has rendered the traditional memory test 2. Overview of Neighbourhood Pattern Sensitive Faults
methods inadequate, either in terms of their defect coverage A pattern sensitive fault is a conditional coupling fault in
or in terms of the test application time. Built-in self-test which the content of a memory cell or the ability to change its
(BIST) methods for testing RAMs, based on conventional content is influenced by a certain bit pattern in other cells in the
March tests and their extensions, are becoming popular. These memory [1]. Here the data retention and transition of the victim
tests are easy to implement, have a cycle count complexity cell are affected by a set of aggressor cells. A neighbourhood
which is linear to the number of bits or words addressed, and pattern sensitive fault (NPSF) is a special case of pattern
provide good fault coverage for functional faults and some sensitive faults, wherein the influencing (coupling) cells are in
structural faults, covering the address decoder, individual the neighbourhood of the influenced (coupled) cell. The coupled
memory cells and a limited coupling between them [1]. BIST cell is called the base (or victim) cell and the coupling cells are
also offers other well-known advantages, which will not be called the deleted neighbourhood cells. (The neighbourhood
repeated here [2,3]). Existing BIST implementations for includes all the cells in the deleted neighbourhood as well as the
memories are, however, inadequate for some other fault base cell). Refer to Figure 1. Here the cell V represents the base
models like stronger and widespread coupling faults. Hence, or victim cell, while the cells B, W and C represent the deleted
to ensure the desired defect coverage in a memory core, it is neighbourhood.
necessary to consider these newer fault models and provide a
matching BIST implementation for effective test generation. 2.1. Classification of NPSFs
It is also important to make this implementation Different NPSFs can be grouped based on the nature of
programmable for the desired combination of fault coverage faults in the base cell and on the neighbourhood:
and test time so that BIST can be efficiently used. Active NPSF: The base cell changes its content due to a change
This paper describes a BIST technique for the detection in the deleted neighbourhood pattern. To test these faults, the
of neighbourhood pattern sensitive faults (NPSFs) in random base cell should be read in state 0 and state 1 for all possible
access memories. Although the NPSF model is not new, it is transitions in the deleted neighbourhood.
now becoming important in deep-submicron processes, Passive NPSF: The content of the base cell cannot be changed
especially for DRAMs [4]. Also, the fault model scales with due to a certain neighbourhood pattern. Every base cell has to be
W1
B1
V
C2
W2
B2 C5 C6 B2 C7 C8 C1 B2 C2
from the outputs of sense amplifiers. This enables writes and
W1 V W2 W1 W2 V W3 W4 W1 W2 V W3 W4 W1 W2 V W3 W4
B2 C3 B2 C4 B3 C9 C1 0 B3 C1 1 C1 2 C3 B3 C4
reads to the complete row of the memory cell array. The address
B4 C1 3 C1 4 B4 C1 5 C1 6 B4 generation and data application mechanism is shown in Figure 2.
(a) D 1 T 1 (b) D 1 T 2 (c) D 2 T 1 (d) D 2 T 2 (e) D 2 RT 2 Since there is only one transition between two consecutive
V= Vict im cell B1 -B4 = Bit lin e N eigh bo urh o o d cells W 1 -W 4 = W o rdlin e N eigh bo urh o o d cells C1 -C1 6 = Co rn er cells
patterns, the data in only one of the three rows of a tile changes.
Figure 1. NPSF models for BIST implementation. Hence a counter is used for generating the row address, such that
D1T1: Neighbourhood of Distance 1 and Type 1. The the next state is obtained by incrementing the present state by
neighbourhood includes five cells, namely the base cell and three. Two consecutive data patterns are compared and the
four cells physically adjacent to it. (Figure 1(a)). comparator output is used to derive the initial state of the
D1T2: Neighbourhood of Distance 1 and Type 2. Here eight counter through the combinational logic. Depending upon the
cells physically adjacent to the base cell are considered, to row of a tile in which the pattern changes, the initial state of the
have a neighbourhood with a total of nine cells. (Figure 1(b)). counter can either be zero, one or two. The counter then
D2T1: Neighbourhood of Distance 2 and Type 1. The generates the next set of addresses, three rows apart, until it
neighbourhood includes nine cells, namely the base cell and overflows.
eight cells physically adjacent to it. (Figure 1(c)). 0 1 2 0 1 2
D2T2: Neighbourhood of Distance 2 and Type 2. Here 3 4 5 C o m p a r a to r 3 4 5
P r e v io u s d a ta p a tte r n N e x t d a ta p a tte r n
considered, to have a neighbourhood with a total of twenty-
five cells. (Figure 1(d)). C o m b in a tio n a l lo g ic
fo r s e ttin g in itia l