Soft errors are a major concern in aerospace applications. Software-based fault-tolerance techniques offer several advantages to increase the reliability of these applications if a microprocessor or microcontroller is utilized. However, the protection of the data-flow implies data and instruction redundancy which brings significant increment in execution time and memory transfers and consequently increases the power consumption. Hence, for those systems that combines high reliability with severe time and power constraints, the application of software-based techniques may be unfeasible. In this work, we propose several variations of data-flow protection techniques aiming to find different tradeoffs between reliability and power consumption. The proposed techniques are evaluated in terms of performance degradation, memory usage and error detection rate. Results show significant improvement in overheads and small differences in the error detection rates.