Memory Built In Self Test (MBIST)

At first, we should know what is BIST (Built in Self-Test). It basically adds an additional test circuitry to the memory or logic itself and provides an acceptable yield. From the diagram we can see there is a BIST controller and data from the controller goes into 3 segments, one is the address generator, others are data generator which is the input of the memory or logic and comparator which determines if the memory or logic has passed or failed by comparing the golden response and the output of the memory or logic.


Now, there are number of reasons why the output can differ from the golden response. It’s because there are some faults induced. Stuck at 0 or 1, transition delays, coupling and address decoder faults are most common of faults.

MBIST is a self-testing mechanism which tests the memories through an effective set of algorithms to detect possibly all the faults that could be present inside a typical memory cell. It uses an inbuilt clock, address and data generators and also read/write controller logic, to generate the test patterns for the test. MBIST makes the pattern generation and compare with golden response easy by placing all these functions within a test circuitry surrounding the memory on the chip itself. It implements a finite state machine (FSM) to generate stimulus and analyze the response coming out of memories. 

There are different types of algorithms to detect these faults,

  • Classical Algorithms
    • MSCAN
    • Checkerboard
  • March Algorithm

Discussing these algorithms are out of scope for this post. Now, let’s look at the pros and cons of inserting an MBIST. Insertion of MBIST causes increase in area which is its only disadvantage. However, this increase in area is very small in comparison to the benefits it provides such as reduced test time by testing all memories in parallel, lesser test cost and robust testing of memories.


Post a Comment

0 Comments