1.
Ones-Count Compression
How It Works:
1. Collect the test output data.
2. Count the number of 1s in the output.
3. Store this count instead of the full data.
Example:
Test Output: 101110
• Count the 1s → 4.
• Store the value 4 instead of storing 101110.
Why Use It?
Simple and easy to implement.
Reduces the amount of stored test data.
Can be used in built-in self-test (BIST) systems.
2. Signature Analysis (LFSR - Linear Feedback Shift Register)
How It Works:
1. Instead of storing full test data, use a shift register to process and compress the output.
2. The LFSR (Linear Feedback Shift Register) applies a mathematical function to generate a
compressed signature.
3. The signature is compared with a known expected value to check if the circuit is faulty.
Example:
Test Output: 1101011101
• Instead of storing 10 bits, we pass it through an LFSR circuit.
• The LFSR generates a 4-bit signature (e.g., 1010).
• If the circuit is fault-free, the signature matches the expected signature.
• If there's a fault, the signature does not match, indicating an error.
Why Use It?
Highly compresses test data.
Detects faults efficiently.
Commonly used in Built-In Self-Test (BIST) circuits.
3. XOR-Based Compaction
How It Works:
1. Take multiple test outputs.
2. Apply bitwise XOR (exclusive OR) to compress the data.
3. The result is a smaller set of bits that still represents the original test information.
Example:
Test Outputs:
yaml
CopyEdit
1101
1011
• XOR operation:
markdown
CopyEdit
1101
⊕ 1011
--------
0110
• Instead of storing two 4-bit values, we store just one 4-bit value (0110).
Why Use It?
Compresses test data efficiently.
Reduces storage and testing time.
Good fault detection capability.
4. Parity Compression
How It Works:
1. Count how many 1s are in the test output.
2. If the number of 1s is even, store a parity bit = 0.
3. If the number of 1s is odd, store a parity bit = 1.
4. Compare the stored parity bit with the expected parity to detect faults.
Example:
Test Output: 1011
• Number of 1s = 3 (odd)
• Store parity bit: 1
Test Output: 1100
• Number of 1s = 2 (even)
• Store parity bit: 0
Why Use It?
Reduces storage to just one bit.
Quick error detection.
Used in simple fault detection applications.
Final Summary:
Compression
How It Works Example Advantage
Method
Ones-Count Counts the number of 1s
101110 → 4 Simple and effective.
Compression in test data.
Uses a shift register to
Signature 1101011101 → High compression and
create a compressed test
Analysis (LFSR) 1010 (signature) good fault detection.
signature.
Uses XOR to combine Reduces storage while
XOR-Based 1101 ⊕ 1011 =
multiple test outputs into keeping fault
Compaction 0110
fewer bits. information.
Stores only one parity bit
Parity 1011 → 1 (odd),
based on even/odd count Very simple and fast.
Compression 1100 → 0 (even)
of 1s.