Metamorphic Testing and its Application on Hardware Fault-Tolerance - Liu, Jie (My University, 2011)
In testing, people normally use the ?golden model? to judge the correctness of the tested unit. However, in some cases the golden model is difficult to produce, and in some cases the outputs do not need to exactly match the golden model to be considered correct. Metamorphic testing was first introduced to software testing to target such problems in software. In this paper, we will explore the idea of applying metamorphic testing to hardware fault-tolerance. We discuss implementing it using two methods: hardware redundancy and time redundancy. During our case study, we will compare those implementations with a Double Modular Redundancy (DMR) implementation due to their similar functionalities, and discuss the differences in performance, area and fault detection. In addition, we will look at the disadvantages of metamorphic testing in hardware such as single-point of failure, and its inability to give a rational judgment of the correct output if the test fails. Last, we will discuss possible solutions to overcome those disadvantages.