Module 11 :Built in Self test (BIST)

Lecture 3 and 4:Memory Testing

3.  Testing of memory faults

Before we discuss the test procedures for different fault models we introduce the concept of “March Test” which is used widely for memory testing [1,7]. March testing basically involves applying (writing and reading) patterns to each cell in memory before proceeding to the next cell and if a specific pattern is applied to one cell, then it must be applied to all cells. This is either done in increasing memory address order or decreasing order. Match test basically involves the following steps:

    1. In increasing order of address of the memory cells, write 0s to the cells; illustrated in Figure 12.
    2. In decreasing order of address of the memory cells, read the cells (expected value 0) and write 1 to the cells; illustrated in Figure 13.
    3. In increasing order of address of the memory cells, read the cells (expected value 1) and write 0 to the cells; illustrated in Figure 13.
    4. In decreasing order of address of the memory cells, read the cells (expected value 0); illustrated in Figure 13.


Figure 12. Step 1 of March test

Figure 13. Step 2, Step 3 and Step 4 of March test

It may be noted that the steps of March test discussed above is only a guideline. One can start from highest address (9 in this case) and then go in decreasing order (in Step 1) to write 0s in the memory cells. Following that in Step-2, one needs to go from 0 to highest memory location. Similarly, we can start writing 1s in the cells in Step-1 and change the other steps accordingly.