Subscribe
Issue No.09 - September (2000 vol.49)
pp: 865-885
ABSTRACT
<p><b>Abstract</b>—This paper addresses the problem of synthesizing fault-secure controller/data path circuits from behavioral specifications. These circuits are guaranteed to either produce the correct output, or to flag an error. We use an iterative improvement-based behavioral synthesis framework that performs functional unit selection, clock selection, scheduling, and resource sharing with the aim of minimizing the area of the synthesized circuit, while allowing multicycling, chaining, and functional unit pipelining. We present a dynamic comparison selection algorithm that can be used <it>during</it> behavioral synthesis to determine which intermediate results in the computation need to be secured in order to enable maximal resource sharing. Previous work on synthesizing fault-secure data paths has focused on <it>ensuring</it> that <it>aliasing</it> (a condition when the circuit produces an incorrect output and does not flag an error) cannot occur in any part of the design. We demonstrate that such an approach can lead to unnecessarily large overheads. In order to alleviate the overheads incurred for fault security, our behavioral synthesis framework uses <it>ALiasing Probability analysiS</it> (<scp>ALPS</scp>) in order to identify resource sharing configurations that reduce area while introducing a very low probability of aliasing (of the order of <tmath>$10^{-10}$</tmath> for a bit-width of 32) in the resultant data path. Experimental results performed for several behavioral descriptions demonstrate that our techniques synthesize more compact circuits than techniques available in the literature, e.g., double moIdular redundancy or zero-aliasing techniques.</p>
INDEX TERMS
Behavioral synthesis, concurrent error detection, fault security, fault-tolerant microarchitectures.
CITATION
Ganesh Lakshminarayana, Anand Raghunathan, Niraj K. Jha, "Behavioral Synthesis of Fault Secure Controller/Datapaths Based on Aliasing Probability Analysis", IEEE Transactions on Computers, vol.49, no. 9, pp. 865-885, September 2000, doi:10.1109/12.869319