<  Retour au portail Polytechnique Montréal

Méthode de reconfiguration dynamique pour un réseau-sur-puce tolérant aux fautes

Jessica Allard Bernier

Mémoire de maîtrise (2011)

[img]
Affichage préliminaire
Télécharger (890kB)
Citer ce document: Allard Bernier, J. (2011). Méthode de reconfiguration dynamique pour un réseau-sur-puce tolérant aux fautes (Mémoire de maîtrise, École Polytechnique de Montréal). Tiré de https://publications.polymtl.ca/745/
Afficher le résumé Cacher le résumé

Résumé

RÉSUMÉ Avec l’avancement des technologies, les systèmes intégrés ne cessent de gagner en complexité dans le but de remplir toujours plus de fonctionnalités. Pour augmenter les performances et permettre de connecter plus de ressources ensemble pour répondre aux nouveaux besoins sans dégrader les communications, l’utilisation des réseaux sur puce a fait son apparition. Beaucoup d’architectures de réseaux sur puce ont été proposées lors des dernières années. Elles diffèrent selon leur topologie, leur technique de commutation, leurs interconnexions, l’implémentation de leurs nœuds, etc. Parmi les nouvelles architectures de réseaux sur puce, nous comptons notamment le Rotator-on-Chip (RoC) qui a été développé en partenariat par l’École Polytechnique de Montréal et STMicroelectronics. La constante miniaturisation des transistors a mené les réseaux sur puce, et même tous les systèmes, à devenir de plus en plus vulnérables aux fautes. Il est devenu essentiel pour rencontrer un certain niveau de fiabilité d’intégrer des méthodes de tolérance aux fautes dans les systèmes. Les fautes peuvent affecter les circuits de différentes façons. Elles peuvent avoir des effets permanents comme des défauts de fabrication par exemple. Elles peuvent également engendrer de mauvais fonctionnements ayant un comportement transitoire comme dans le cas d’interférences magnétiques. L’objectif est que les systèmes remplissent leurs fonctionnalités même en présence de fautes. Dans le cas des réseaux sur puce, la fonctionnalité principale est de transmettre des messages entre les ressources. Alors, le but est de s’assurer qu’aucun bit ne soit altéré lors du transfert. Pour ce faire, plusieurs recherches ont déjà été menées à ce sujet, exploitant des concepts de détection, de redondance, de retransmission, de correction, etc. Ce mémoire met tout d’abord en lumière le concept de réseau sur puce. Il définit les différentes bases de leur implémentation, notamment leurs composants, leurs techniques de commutation et de routage et leurs topologies. Puisque la tolérance aux fautes est un aspect central de ce travail, une explication de la provenance et de la classification des fautes pouvant survenir à l’intérieur des réseaux sur puce est également détaillée. Pour parvenir à contrer l’effet de ces fautes, plusieurs techniques de tolérance aux fautes ont été développées, que ce soit par l’industrie ou suite à des recherches universitaires. Ce travail présente quelques-unes d’entre elles. L’essentiel de ce mémoire repose sur l’élaboration d’une technique de tolérance aux fautes adaptée aux caractéristiques du RoC. La technique proposée est de type prévention plutôt que de type correction. Lorsqu’une faute est détectée sur le chemin de données, la méthode s’assure que la faute n’affectera pas d’autres paquets en reconfigurant les canaux du RoC. Pour parvenir à définir la technique de prévention la plus efficace, plusieurs implémentations sont comparées. La couche où la technique de prévention est gérée, que ce soit au niveau logiciel ou matériel, le mécanisme de détection utilisé et la méthode de reconfiguration des canaux font notamment partie de celles-ci. Pour déterminer quelle technique de prévention s’avère être la plus efficace pour le RoC, ces dernières sont évaluées en termes du nombre d’erreurs évitées, du délai moyen des paquets, du temps de vérification nécessaire et du nombre de ressources utilisées. Les simulations effectuées démontrent qu’une technique intégrée au niveau matériel nécessite beaucoup plus de ressources qu’une technique gérée au niveau logiciel, mais qu’elle permet d’éviter beaucoup plus d’erreurs. Entre autres, les fautes causées par des effets transitoires et une partie des fautes présentes sur l’en-tête des paquets ne sont pas prises en charge dans le cas de la gestion logicielle. De plus, la technique au niveau matériel se démarque par son temps de vérification nul étant donné que la vérification et l’exécution de l’application sont effectuées de façon simultanée. Pour obtenir le rapport de performance le plus élevé, ce sont le bit de parité, comme mécanisme de détection, et la reconfiguration instantanée des canaux qui sont utilisés. La technique de prévention présentée, bien qu’elle soit développée sur le RoC, pourrait être implémentée sur d’autres réseaux sur puce multidimensionnels. Cette méthode permet de gérer autant les fautes permanentes que transitoires. Cela signifie que les circuits présentant des défauts de fabrication pourraient quand même être utilisés. D’autres circuits pourraient en tirer des bénéfices en étant plus robustes pour répondre à des applications critiques.----------ABSTRACT With the advancement in technology, embedded systems are continuously asked to support more functionalities and that brings them in becoming more and more complex. The networks on chip (NoCs) appeared in embedded systems to help managing this new complexity. A lot of NoC architectures have been proposed in the last few years, each differentiating from one another by their topology, switching technique, routing technique and so on. The Rotator on Chip (RoC), a NoC architecture developed by Polytechnique and STMicroelectronics, is one of them. The technology scaling caused NoCs to become more vulnerable to faults. These faults can affect the system permanently, like in the case of manufacturing defects, or transiently, with magnetic interferences for instance. In order to attain a certain reliability level, fault tolerance methods must be implemented in systems. The objective is that the systems are able to achieve their functionalities even in the presence of faults. In the case of NoCs, the purpose is to make sure that no bit of the transferred packets will be corrupted. That can be done using different concepts like detection, redundancy, retransmission, correction and so on. This thesis highlights the use of fault tolerance mechanisms in NoCs by describing the main concepts involved in NoC implementation, the faults which can occur in NoCs and the fault tolerance methods used in some specific cases. The elaboration of a fault tolerance method adapted to the RoC characteristics is the main focus of this thesis. The proposed technique is a preventive method, rather than a corrective method. When a fault is detected on the data path, the channel reconfiguration prevents this fault from affecting other packets. Among the different implementations being compared are the layer where the preventive method is managed, the detecting mechanisms and the reconfiguration methods. Those implementations are evaluated in terms of residual packet error rate, average latency, verification time and cost in resources. Simulations show that a method managing at the hardware level, although more expensive than one managing at the software level, is more effective. This hardware method prevents many more errors and requires no verification time. The best performing rate is obtained with parity bit as the detecting mechanism and with instant channel reconfiguration. This preventing technique could be integrated in others multidimensional NoCs. Furthermore, it could be used to allow circuits with manufacturing defects to be used in some cases and to allow NoCs to execute critical applications.

Document en libre accès dans PolyPublie
Département: Département de génie informatique et génie logiciel
Directeur de mémoire/thèse: Guy Bois
Date du dépôt: 26 mars 2012 14:58
Dernière modification: 01 sept. 2017 17:33
Adresse URL de PolyPublie: https://publications.polymtl.ca/745/

Statistiques

Total des téléchargements à partir de PolyPublie

Téléchargements par année

Provenance des téléchargements

Actions réservées au personnel