{'fraction_non_alphanumeric': 0.0169061707523246, 'fraction_numerical': 0.0, 'mean_word_length': 5.297872340425532, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Design and implementation of a redundancy manager for triple redundant CAN controllers

There is a growing interest in using the controller area network (CAN) protocol for critical control applications. In many articles studying this possibility, it is assumed that CAN controllers, which are the circuits that implement most of the protocol specification, never present faults. In this paper we present the architecture of a fault-tolerant CAN controller subsystem that allows substantiation of this assumption. Our subsystem is made up of three standard CAN controllers and a specifically designed circuit, called redundancy manager (RM), which guarantees the coordinated operation of the introduced redundancy. Said circuit his been designed to adapt to the specific characteristics of the CAN protocol and is totally compatible with other fault tolerance mechanisms that have been designed in the past for other parts of the system. After presenting the behaviour and architecture for the fault-tolerant CAN controller subsystem, we present a complete design for the RM. This design has been implemented and simulated using a VHDL tool. Results of this simulation are also shown.