Digital Systems Testing and Testable Design - Abramovici (IEEE, 1990)