DESIGN FOR TESTABILITY
Introduction to Design for Testability
What is Design for Testability?
Quality As a Function of Yield and Test Coverage
Fault Models
Effect of Time-to-Market On Profits
Technical Goals of Testable Designs
Considerations for Testability
Approaches to Design for Testability
- Ad Hoc Design for Testability
- Structured Design for Testability
- Extended Design for Testability Or Built-In Self Test (BIST)
Design for Testability Attributes
- Controllability
- Observability
- Others
Basic Ad Hoc Design for Testability Rules
Controllability
- Controlling Buses
- Control of Large Fan-In
- Control Long Counters and Shift Registers
Observability
Partitioning to Functionally Independent Sub-Systems
- Power Level Partitioning
- System Level Partitioning
- Mechanical Partitioning
- Partitioning Using Degating Circuits
Methods for Breaking Feedback Loops
Breaking Long Counters and Shift Registers
Methods for Breaking Free Running Clocks
Application of Testability Guidelines
Analog Testability
- Low Frequency (Under 50 kHz)
- High Frequency (50kHz - 100 MHz)
- RF
Testability for Memories
Design for Inspection (Inspectability)
Mechanical Design for Testability
Documentation for Testability
Other Testability Techniques
IDDQ Testing
- What is IDDQ Testing?
- External Current Sensor
- Built-In Current Sensor
- Effectiveness of IDDQ , Scan & Functional Tests
Evaluating Designs for Testability
- Dependency Models
- Testability Checklists
- Other Testability Analysis tools
Structured Design for Testability
Technical Goals of Testable Designs
General Structure of Scan
Scan Design Mode of Operation
- Level Sensitive Scan Design
- Scan/Set
- Random Access Scan
- Scan Features vs. Cost
- Full Scan vs. Partial Scan
Boundary Scan Structure
The Boundary Scan Cell and JTAG/IEEE-1149.1
Construction Of The Test Access Port (TAP)
- TAP Control Lines
- TAP Controller States
- Controller State Operation
Boundary-Scan Registers
Boundary-Scan Operational Modes
- Non-Invasive Operational Modes
- Pin Permission Operational Modes
Boundary-Scan Description Language (BSDL)
Boundary-Scan Tests
- Test Access Port (TAP) Integrity Test
- Wrong Component Test
- Boundary-Scan In-Circuit Test
- Virtual Interconnect Test
- Virtual Component or Cluster Test
- Boundary Functional Test
Mixed Signal Boundary Scan Using the IEEE-1149.4
AC EXTEST Using the IEEE-1149.6
Other Testability Guidelines
- IEEE 1532
- IEEE P1687 (IJTAG)
- IEEE P1581
- IEEE 1500
- SJTAG
Evaluating Designs for Testability
Built-In Self Test
Technical Approach to BIST
Forms Of Built-In Self Test
- Continuous Monitoring (CM)
- Initiated Bit (I-BIT)
- Operational Readiness Test (ORT)
Elements of a BIST Architecture
Types of BIST
BIST Classification
BIST Using Error Detection Codes
Error-Correcting Codes
BIST Using Set/Scan Logic
- Signature Analyzer
- Pseudo-Random Signal Generator
- Linear Feedback Shift Register from Scan Cells
- Built-In Logic Block Observer (BILBO)
BIST Signal Generation tools
Test Generation Methods for BIST
BIST Response Collection tools
BIST Architectures
- Random Test Socket (RTS)
- Self-Testing Using MISR and Parallel SRSG (STUMPS)
- Centralized and Separate Board-Level BIST
- Built-In Evaluation & Self Test (BEST)
- Concurrent BIST Architecture
- Simultaneous Self Test (SST)
- Cyclic Analysis Testing Systems (CATS)
- Circular Self Test Path (CSTP)
BIST and BITE Architectures
- Redundancy BIT
- Wrap-around BIT
- Voltage Summing BIT
- Built-In Test Exerciser and Sensor (BITES)
- Exercisers and Sensors (EASs)
General Structure Of Non-Concurrent BIST
Built-in Test (BIT) Software
Why use BIT Software?
BIT Software Considerations
- Guidelines for Software BIT
- Selecting a Software Language
- Performance Monitoring Software
Failure Analysis Software
- Fault Filtering
- Heuristics in BIT
Evaluating BIT
Basic BIT and BITE Requirements
Self Checking BIT and BIST
BIT False Alarms
- Concerns of False Alarm
- BIT False Alarm Rate (BFAR)
- Causes of BIT False Alarms
- Overcoming False Alarms
BIT Specification
Manufacturing Test Strategies with Hierarchical BIT
Maintenance Test and Repair Strategies with Hierarchical BIT
What happens to ATE?