Scan Test vs BIST: Key Differences Explained
Scan test connects the flip-flops in a chip into shift registers (scan chains), shifts test patterns in from an external tester, and shifts out the circuit's responses to compare them with expected values. The patterns are generated from the netlist by ATPG tools. BIST builds a circuit that generates patterns and a circuit that checks results into the chip, so that the chip tests itself. In production test, it is common to combine scan test for logic with memory BIST for embedded memories, and BIST can also be used for self-diagnosis after shipment.
| Aspect | Scan test | BIST (built-in self-test) |
|---|---|---|
| Basic idea | Flip-flops are connected into scan chains; a pattern is shifted in, the circuit is clocked once, and the result is shifted out and compared | Circuits that generate patterns and check responses are built into the chip, which tests itself and reports pass or fail |
| How test patterns are generated | ATPG creates deterministic patterns from the netlist that target stuck-at and transition delay faults | Logic BIST generates pseudo-random patterns with an LFSR. Memory BIST generates addresses and data using fixed procedures such as March tests |
| Response checking | The tester compares responses with expected values (with test compression, responses compressed on chip are compared) | Logic BIST compresses responses with a MISR into a signature that is compared with an expected value. Memory BIST checks read values directly with comparators |
| Dependence on the tester | Patterns and expected values are held in tester memory. Requires scan pins plus tester performance and memory capacity | Only starting the test and reading the result (via JTAG, etc.) are needed, so a simple tester suffices |
| Main targets | Logic circuits (combinational logic and flip-flops) | Memory BIST: embedded memories such as SRAM. Logic BIST: logic circuits |
| Fault coverage | Easy to make high because patterns are generated for the targeted faults | Logic BIST tends to leave faults that are hard to detect with pseudo-random patterns, which test point insertion compensates for. Memory BIST achieves high coverage with procedures tailored to memory fault models |
| Added circuitry | Flip-flops are replaced with scan flip-flops (with a selection multiplexer), and chain wiring is added | Requires a pattern generator, a response compactor and a control circuit. Logic BIST also requires preparing the design so that no unknown values (X) occur |
| Test time | Long chains take time to shift, and speed is also limited by the tester. Test compression shortens it | Many patterns can run quickly with on-chip clocks. Logic BIST needs a large number of patterns |
| When it is used | Mainly in production wafer test and final test. Also used for failure diagnosis of defective parts | In addition to production test, it can also be used for inspection after board mounting and for self-diagnosis after shipment, such as at power-on |
Figures are typical orders of magnitude and vary by process generation and product.