A design methodology for fault-tolerant computing using astrocyte neural networks