Describir: Fault Tolerant and Fault Testable Hardware Design /