Design for Testability, Debug and Reliability