Temmel, L. (2019). Evaluation of fault tolerance in network on chip : fault injection and performance analysis between different fault protection schemes [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2019.28743
Fehlertoleranz; Network on Chip; Digitale integrierte Schaltungen
de
Fault tolerance; Network on Chip; Digital integrated circuit
en
Abstract:
Network on Chip ist neben klassischen Bussystemen ein alternatives Kommunikationssystem für integrierte Schaltungen. Anstatt dass alle Chip-Elemente ihre Daten direkt oder über einen Bus austauschen, werden Pakete mit den Informationen über verschiedene Netzwerktopologien versendet. Fehlertoleranz ist für solche Systeme von besonderer Relevanz, da sie das zentrale Kommunikationselement schützt und es durch die steigende Dichte an Transistoren und deren Komplexität mehr Möglichkeiten für fehlerhafte Elemente gibt. Ein gängiger Weg um die Fehlertoleranz zu erhöhen ist zusätzliche Mechanismen zu installieren wie Error Correction Codes, adaptive Routing Algorithmen oder das erneute Senden von Paketen. Jedoch stellt sich die Frage wie sehr das System in Mitleidenschaft gerissen wird, wenn auch diese Maßnahmen fehlerhaft werden? In dieser Arbeit wird gezeigt wie wichtig die Wirkung von Fehlern auf Fehlertoleranzmechanismen in Network on Chip und die Evaluierung dieser während des Designprozesses ist. Ein Testnetzwerk wird durch das Einfügen von Fehlermodulen evaluiert, welche nach bestimmten Fehlermustern Störungen erzeugen. Es zeigt sich, dass die Fehlertoleranzmechanismen auf unterschiedliche Art die Zuverlässigkeit des Systems beeinflussen und in manchen Kombinationen sogar schlechter als ein System ohne jegliche Fehlertoleranzmechanismen arbeiten. Diese Arbeit wird als Ausgangspunkt gesehen, um zu Evaluieren ob das Einfügen von Fehlermodulen es erlaubt die Robustheit von solchen Systemen zu verbessern. Weiters ist der vorgestellte Prozess der Fehlerinjizierung nicht auf dieses Projekt limitiert und daher eine gute Methode andere Systeme unter dem Effekt von Fehlern zu testen, wenn diese auf Verilog Gate Level Code synthetisiert werden können.
de
Network on Chip is a communication system used in integrated circuits as an alternative to bus systems. Instead of all chip elements exchanging their data directly or via a bus, packets containing the information are sent over different topologies between source and destination, which can be for example a storage element or a processing unit. Fault tolerance of such systems is of critical importance due to its role as communication backbone. Additionally, the increasing number of elements on a chip and its complexity introduce more possibilities for faults in the circuits. A common way to improve the fault tolerance is to implement additional mechanisms like error correction code, adaptive routing algorithms, or re-transmission of packets. However, how do these measures perform if they themselves become faulty? Furthermore, how does this affect the performance of the Network on Chip? Here it is shown that the impact of faults on fault tolerance in Network on Chips needs to be evaluated during the design process. The network was evaluated by adding fault modules into the source code and triggering them to represent certain fault patterns. The results show that the fault tolerance measurements affect the reliability differently for certain faults and partly let the network perform worse than without any tolerance measurements activated. This emphasizes the importance of this evaluation and that it should be considered and applied for designing such systems. This work is seen as a starting point to investigate if the fault injection process can be used to improve the sturdiness of such systems. Furthermore, it is seen as a convenient way, also for other research groups, to evaluate the behavior of a system under the effects of faults. The fault injection methods are not bound to this project and can be used for other Verilog Code based systems as well.