TY - GEN
T1 - A fault-tolerant programmable voter for software-based N-modular redundancy
AU - Yim, Keun Soo
AU - Sidea, Valentin
AU - Kalbarczyk, Zbigniew T
AU - Chen, Deming
AU - Iyer, Ravishankar K
PY - 2012
Y1 - 2012
N2 - This paper presents a fault-tolerant, programmable voter architecture for software-implemented N-tuple modular redundant (NMR) computer systems. Software NMR is a cost-efficient solution for high-performance, mission-critical computer systems because this can be built on top of commercial off-the-shelf (COTS) devices. Due to the large volume and randomness of voting data, software NMR system requires a programmable voter. Our experiment shows that voting software that executes on a processor has the time-of-check-to-time-of-use (TOCTTOU) vulnerabilities and is unable to tolerate long duration faults. In order to address these two problems, we present a special-purpose voter processor and its embedded software architecture. The processor has a set of new instructions and hardware modules that are used by the software in order to accelerate the voting software execution and address the identified two reliability problems. We have implemented the presented system on an FPGA platform. Our evaluation result shows that using the presented system reduces the execution time of error detection codes (commonly used in voting software) by 14% and their code size by 56%. Our fault injection experiments validate that the presented system removes the TOCTTOU vulnerabilities and recovers under both transient and long duration faults. This is achieved by using 0.7% extra hardware in a baseline processor.
AB - This paper presents a fault-tolerant, programmable voter architecture for software-implemented N-tuple modular redundant (NMR) computer systems. Software NMR is a cost-efficient solution for high-performance, mission-critical computer systems because this can be built on top of commercial off-the-shelf (COTS) devices. Due to the large volume and randomness of voting data, software NMR system requires a programmable voter. Our experiment shows that voting software that executes on a processor has the time-of-check-to-time-of-use (TOCTTOU) vulnerabilities and is unable to tolerate long duration faults. In order to address these two problems, we present a special-purpose voter processor and its embedded software architecture. The processor has a set of new instructions and hardware modules that are used by the software in order to accelerate the voting software execution and address the identified two reliability problems. We have implemented the presented system on an FPGA platform. Our evaluation result shows that using the presented system reduces the execution time of error detection codes (commonly used in voting software) by 14% and their code size by 56%. Our fault injection experiments validate that the presented system removes the TOCTTOU vulnerabilities and recovers under both transient and long duration faults. This is achieved by using 0.7% extra hardware in a baseline processor.
UR - http://www.scopus.com/inward/record.url?scp=84861146539&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84861146539&partnerID=8YFLogxK
U2 - 10.1109/AERO.2012.6187253
DO - 10.1109/AERO.2012.6187253
M3 - Conference contribution
AN - SCOPUS:84861146539
SN - 9781457705564
T3 - IEEE Aerospace Conference Proceedings
BT - 2012 IEEE Aerospace Conference
T2 - 2012 IEEE Aerospace Conference
Y2 - 3 March 2012 through 10 March 2012
ER -