Étude d'une architecture parallèle de processeur pour la transmission de données à haut débit
Résumé
The work presented here is part of a general project within the LICM laboratory, concerning the architectural design of a high data rate transmission system. The main objective is to design a specialized processor for fast processing of the lower layer protocols in the reference models (OSI, Internet, ITU-T/ATM). The technology evolution and increasing of the bandwidth of the physical transmission media have transferred the bottleneck concerning the available data rates of the communication networks towards the network active node equipments. Managing the protocol diversity, the data heterogeneity, and high data rates requires a substantial improvement of the processing power in these equipments. Although this problem has been largely addressed concerning routers and switches, end-user equipments (e.g : modems and network interface cards) are still far from matching the requirement of high data rates. The design of a specialized processor architecture depends strongly on the characteristics of applications to which the processor is dedicated. The architecture selected for the processor is a set of interconnected general processing units (mini processor cores) or specialized modules (auxiliary modules). The goal is to offer a high level of parallel processing capacity. The development of such an architecture requires a suitable design methodology to be defined, which starts by a study of representative network protocols. First of all, the goal is to identify among the principal tasks (operations of the protocols) the most common and the most critical. The critical tasks (from the realtime point of view) are processed by specialized modules (whose study is not our goal). The remaining tasks are performed by the general processing units, whose study is the main subject of this work. Potential performance of these general units is evaluated for various target architectures (CISC, RISC, superscalair, VLIW). The time performance evaluation of architectures is based on the algorithm modelling using Markov chains which was used to implement the simulation tools. In order not to favour a particular architecture, we introduced a virtual processor model to encode the algorithms without introducing any constrains related to actual architectures. The analysis of the simulation results allowed us to find good architectures/algorithms adequacy. The performance of the overall processor architecture (parallel operation of the processing units) was evaluated under various traffic conditions. A simplified interconnection model (compared to the final model) was used which allowed to connect the processing units in a pseudo-pipeline (linear or not) chain. Lastly, two types of general processing units (mini processor cores) have been designed in VHDL at the RTL level and validated on FPGA.
Le travail de cette thèse s'intègre dans un projet général au sein du laboratoire LICM concernant la conception architecturale d'une chaîne de transmission à haut débit. L'objectif global est de concevoir un processeur spécialisé pour le traitement rapide des algorithmes des divers protocoles présents dans les couches basses des modèles références (OSI, Internet, ITU-T/ATM). L'évolution des technologies et l'élargissement des bandes passantes des réseaux de transmission ont transféré le goulot d'étranglement concernant les débits autorisés vers les équipements constituant les n?uds actifs des réseaux. La prise en charge de la diversité des protocoles employés, de l'hétérogénéité des données et des très forts débits requis, n'est possible que par une forte montée en puissance de la capacité de traitement de ces équipements. Si ce problème est déjà en bonne partie traité en ce qui concerne les routeurs et les commutateurs, beaucoup de chemin reste encore à faire concernant les équipements terminaux de circuits de données (ex : modem, carte réseau) dans le domaine du haut débit. La conception d'une architecture de processeur spécialisée dépend fortement des caractéristiques des applications auxquelles le processeur est dédié. L'architecture globale choisie pour le processeur est celle d'un ensemble d'unités de traitement généralistes (mini coeurs de processeur) ou spécialisées (modules auxiliaires) interconnectées. Le but est d'offrir une capacité de traitement parallèle élevée. Le développement d'une telle architecture nous impose de définir une démarche méthodologique appropriée. Cette démarche commence par une étude de protocoles de réseaux représentatifs. Il s'agit tout d'abord d'identifier parmi les principales tâches (opérations) des protocoles, les plus communes et les plus critiques d'entre elles. Les tâches critiques (du point de vue temporel) sont traitées par des modules spécialisés (dont l'étude fait l'objet d'autres travaux). Les tâches restantes sont prises en charge par les unités de traitement généralistes dont l'étude constitue l'essentiel de ce travail. Les performances potentielles de ces unités généralistes sont évaluées en fonction de différentes architectures cibles (CISC, RISC, superscalaire, VLIW). La technique mise en place, pour l'évaluation des performances temporelles des architectures, repose sur une modélisation des algorithmes par chaînes de Markov. Un banc de simulation a été réalisé implantant la technique. Afin de ne pas favoriser indûment une architecture, nous avons introduit un modèle de processeur virtuel pour coder les algorithmes sans introduire de contrainte lié à l'une des architectures. L'analyse des résultats obtenus avec le banc de simulation, nous a permis de déterminer les architectures les plus appropriés par type d'algorithme. La performance de l'architecture globale du processeur (fonctionnement parallèle de l'ensemble des unités de traitement) a été évaluée pour différentes conditions de trafic. Un modèle d'interconnexion simplifié (par rapport au modèle final) a été utilisé, reliant les unités de traitement sous forme d'un pseudo-pipeline (linéaire ou non). Enfin, deux types d'unités de traitement généralistes (mini c?urs de processeur) ont été modélisées en VHDL au niveau RTL et alidées sur FPGA.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...