Non-blocking N-version programming for message passing systems

Behzad Chitsaz, Mohammadreza Razzazi · International Convention on Information and Communication Technology, Electronics and Microelectronics · 2012

N-version programming (NVP) employs masking redundancy: N equivalent modules (called versions) are implemented independently and run concurrently. The results of their execution are adjudicated by a special component that defines the correct majority result and eliminates the results of the versions in which design faults have been triggered. The disadvantage of using these schemes is that they need to block the receiver process until each received message is confirmed by the other version, which results in high time overhead. In the case of variant response latencies, consisting of processing time and message transmission delay, these techniques would not be efficient. In this paper a new non-blocking NVP approach based on capturing the causality between requests and response is proposed. This approach does not need to block the versions to confirm the output. The simulations result show that for acceptable values for probability of failure per demand (pfd) and simultaneous active requests, our approach has lower execution time.

Read the paper · More papers on PaperTik