The increasing complexity of digital systems has made testing and validation a crucial step in the design flow. With the advent of nanometer technologies, the number of transistors on a chip has grown exponentially, making it challenging to ensure that the design functions correctly. Testing and testable design are essential to ensure that digital systems meet their specifications, are reliable, and can be manufactured with high yield.