141 research outputs found
Synthèse des unités mémoire pour le traitement du signal
Les études concernant la synthèse automatique de systèmes numériques ont donné naissance à de nombreux outils synthèse architecturale s'appliquant à différents domaines d'application. Ainsi, les méthodes d'ordonnancement permettent de concevoir les unités de traitement (UT). Les unités de contrôle (UC) sont décrites sous forme d'une machine d'états qui peuvent être, dans la plupart des cas, matérialisées par un outil de synthèse logique du commerce. Les unités de mémorisation (UM) et de communication (UCom) restent, quand à elles, à la charge du concepteur. Cette étude propose une formalisation des problèmes liés à la synthèse des UM en vue d'une intégration dans un outil de synthèse d'architecture. Après une introduction de la synthèse d'architecture et des problèmes spécifiques au TS, nous examinerons l'état de la recherche concernant la synthèse des UM. Nous proposerons une démarche visant à générer ces unités de façon automatique, puis nous présenterons une première série de résultats. Enfin, nous concluerons et nous évoquerons les perspectives afin d'optimiser cette synthèse
Modélisation, exploration et estimation de la consommation pour les architectures hétérogènes reconfigurables dynamiquement
L'utilisation des accélérateurs reconfigurables, pour la conception de system-on-chip hétérogènes, offre des possibilités intéressantes d'augmentation des performances et de réduction de la consommation d'énergie. En effet, ces accélérateurs sont couramment utilisés en complément d'un (ou de plusieurs) processeur(s) pour permettre de décharger celui-ci (ceux-ci) des calculs intensifs et des traitements de flots de données. Le concept de reconfiguration dynamique, supporté par certains constructeurs de FPGA, permet d'envisager des systèmes beaucoup plus flexibles en offrant notamment la possibilité de séquencer temporellement l'exécution de blocs de calcul sur la même surface de silicium, réduisant alors les besoins en ressources d'exécution. Cependant, la reconfiguration dynamique n'est pas sans impact sur les performances globales du système et il est difficile d'estimer la répercussion des décisions de configuration sur la consommation d'énergie. L'objectif principal de cette thèse consiste à proposer une méthodologie d'exploration permettant d'évaluer l'impact des choix d'implémentation des différentes tâches d'une application sur un system-on-chip contenant une ressource reconfigurable dynamiquement, en vue d'optimiser la consommation d'énergie ou le temps d'exécution. Pour cela, nous avons établi des modèles de consommation des composants reconfigurables, en particulier les FPGAs, qui permettent d'aider le concepteur dans son design. À l'aide d'une méthodologie de mesure sur Virtex-5, nous montrons dans un premier temps qu'il est possible de générer des accélérateurs matériels de tailles variées ayant des performances temporelles et énergétiques diverses. Puis, afin de quantifier les coûts d'implémentation de ces accélérateurs, nous construisons trois modèles de consommation de la reconfiguration dynamique partielle. Finalement, à partir des modèles définis et des accélérateurs produits, nous développons un algorithme d'exploration des solutions d'implémentation pour un système complet. En s'appuyant sur une plate-forme de modélisation à haut niveau, celui-ci analyse les coûts d'implémentation des tâches et leur exécution sur les différentes ressources disponibles (processeur ou région configurable). Les solutions offrant les meilleures performances en fonction des contraintes de conception sont retenues pour être exploitées.The use of reconfigurable accelerators when designing heterogeneous system-on-chip has the potential to increase performance and reduce energy consumption. Indeed, these accelerators are commonly a adjunct to one (or more) processor(s) and unload intensive computations and treatments. The concept of dynamic reconfiguration, supported by some FPGA vendors, allows to consider more flexible systems including the ability to sequence the execution of accelerators on the same silicon area, while reducing resource requirements. However, dynamic reconfiguration may impact overall system performance and it is hard to estimate the impact of configuration decisions on energy consumption.. The main objective of this thesis is to provide an exploration methodology to assess the impact of implementation choices of tasks of an application on a system-on-chip containing a dynamically reconfigurable resource, to optimize the energy consumption or the processing time. Therefore, we have established consumption models of reconfigurable components, particularly FPGAs, which assists the designer. Using a measurement methodology on Virtex-5, we first show the possibility to generate hardware accelerators of various sizes, execution time and energy consumption. Then, in order to quantify the implementation costs of these accelerators, we build three power models of the dynamic and partial reconfiguration. Finally, from these models, we develop an algorithm for the exploration of implementation and allocation possibilities for a complete system. Based on a high-level modeling platform, the implementation costs of the tasks and their performance on various resources (CPU or reconfigurable region) are analyzed. The solutions with the best characteristics, based on design constraints, are extracted.RENNES1-Bibl. électronique (352382106) / SudocSudocFranceF
Real-Time Scheduling on Heterogeneous SoC Architectures Using A Neural Network
Introduction
Several scheduling algorithms have been developed for constraint satisfaction in real-time systems. Optimality is difficult
to reach, and the problem becomes NP-hard when a large set of constraints must be satisfied. To solve this type of
problem, approximate methods are used, such as Artificial Neural Networks (ANNs). Neural networks have demonstrated
their efficiency in optimization problems. They converge in a reasonable time if the number of neurons and connections
between neurons can be limited. Another limitation concerns the need to regularly re-initialize the
network when it converges towards a stable state which does not belong to the set of valid solutions. On the other hand,
embedded applications are usually implemented on complex System-on-Chip (SoC) which are built around
heterogeneous processing units. On such platform, task instantiation on execution resources is realized by using the
scheduling service of an OS. As each task can be defined for several targets, this service must decide, on-line, on which
resource the task should be instantiated.
In this work, we propose an on-line scheduling based on a neural network for heterogeneous system-on-chip (SoC)
architectures with a limited number of neurons...Les technologies de conception de circuits intégrés permettent aujourd’hui de concevoir des systèmes
complets et complexes sur une seule et même puce. On parle alors de systèmes sur puce, ou encore de
System-on-Chip (SoC). Ces systèmes ont en charge l’exécution d’applications complexes, composées de
nombreuses tâches, le tout étant orchestré par un système d’exploitation dont l’un des rôles principaux
consiste à ordonnancer les tâches et à les allouer aux ressources de calcul.
L’une des particularités de ces architectures concerne l’hétérogénéité des cibles d’exécution qui rend le
problème de l’ordonnancement particulièrement délicat et complexe. Notons de plus que le critère temps réel
des applications s’exécutant sur ce type de plate forme nécessite l’étude de solutions d’ordonnancement
efficaces, notamment en terme de temps de calcul.
Dans ce papier, nous présentons nos travaux de modélisation du problème de l’ordonnancement pour
architectures multi-processeurs hétérogènes par utilisation de réseaux de neurones. Des travaux précédents
ont montré qu’une structure de réseaux de neurones suivant le modèle de Hopfield peut être définie pour
ordonnancer des tâches sur une architecture homogène. Une extension à ces travaux a montré qu’il était
possible de prendre en compte l’hétérogénéité de l’architecture mais au prix d’un grand nombre de neurones
supplémentaires. De plus, ces solutions posent un problème de convergence important qui se traduit par un
temps de convergence assez long et le besoin de ré-initialiser le réseau de neurones lorsque celui-ci se
stabilise dans un état qui n’est pas une solution valide.
Pour contrer ces principaux inconvénients, nous proposons une nouvelle structure basée sur la mise en place
de neurones inhibiteurs. Ces neurones particuliers permettent de limiter le nombre de neurones nĂ©cessaires Ă
la modélisation et permettent surtout de se passer de ré-initialisations pour atteindre la convergence.
Nous illustrons l’apport de notre proposition en comparant les solutions classiques à base de réseaux de
neurones de Hopfield avec notre proposition. Nous montrons que le nombre de neurones est assez largement
réduit et surtout qu’il n’est plus nécessaire de ré-initialiser le réseau pour assurer sa convergence, ce qui
laisse envisager une implémentation efficace de ce type de structure
Synthèse architecturale des systèmes asynchrones
Grâce aux nombreux avantages qu'ils possèdent, notamment : absence de dock skew, performances moyennes, capacité à avoir une faible consommation etc..., les circuits asynchrones sont présentés comme une alternative aux circuits synchrones. Aussi, le développement de méthodologies de conception et d'outils de CAO deviennent une nécessité. Dans cet article, nous présentons une méthodologie de synthèse de haut niveau dédiée aux circuits asynchrones. Pour cela, nous redéfinissons les concepts classiques de la synthèse de haut niveau tout en conservant les différentes étapes de celle-ci. En effet, avec un fonctionnement du type événementiel, et des délais dépendant des données, cette redéfinition s'avérait nécessaire
Conception de circuits dédiés à une classe d'applications (ASIP) : compromis consommation - performances - flexibilité
Devant la croissance des niveaux d'intégration et l'émergence récente des systèmes embarqués, les circuits intégrés VLSI1 dédiés aux applications de traitement du signal et d'image, doivent être performants et consommer peu. Aussi, une exploration efficace de l'espace temps-surface-consommation paraît nécessaire, demandant l'utilisation d'outils de conception haut-niveau à rétroaction rapide. Dans ce papier, nous présentons succinctement une classe de processeurs programmables performants, les ASIPS2 VLIW3, ainsi qu'une méthode haut-niveau d'estimation de la consommation électrique qui leur est appliquée
Min/max time limits and energy penalty of communication scheduling in ring-based ONoC
International audienceRecent advances in the photonics devices integration bring ONoC as a bridge future for communication media in the MPSoC domain. As ONoC can support Wavelength Division Multiplexing (WDM) technique, communications between cores can be improved through allocation of one or several wavelengths for each communication. However, WDM introduces wavelength crosstalk, requiring to increase the laser power to provide accurate communication between cores. Thus, for the designer, exploring this design space (execution time vs power consumption) is not an easy task due to a large number of wavelength allocation combinations. The contribution presented in this paper proposes to evaluate the two extreme bounds of this design space considering the different communication scenario. To address this problem, we model the wavelength allocation by two different objective functions to compute the bounds in terms of execution times. Furthermore, from an accurate model of crosstalk between the wavelengths, we compute the energy penalty for each communication scenario. The results presented in this paper highlight the execution time and energy consumption tradeoff, and the opportunity for communication optimisation thanks to an efficient use of WDM technique
Atténuation des Défauts dans les Réseaux sur Puce avec une Approche de Brassage de Bits Basée sur des Régions
National audienceThe technological evolution based on the reduction of the transistor size leads to a greater sensitivity leading to faults. Moreover, in a system-on-chip, a faulty interconnect network can largely impact the operation of an application since it carries a large amount of data. Given these two elements, data protection techniques must be developed to mitigate fault impacts on the application. Some works propose to shuffle the bits inside a flit, transferring the fault impacts on the least significant bits. However, these approaches are applied at a fine-grained level, providing effective fault mitigation, but with significant hardware costs. To address this limitation, this work proposes a region-based bit-shuffling technique which sacrifices efficiency in order to reduce hardware costs.L'évolution technologique s'appuyant sur la réduction de la taille des transistors conduit à une plus grande sensibilité pouvant conduire à des fautes. De plus, au sein d'un système sur puce, un réseaux d'interconnexion fautif peut largement impacter le fonctionnement d'une application puisqu'il transporte une grande quantité de données. Compte tenu des ces deux éléments, des techniques de protection des données doivent être développées pour atténuer l'impact des fautes sur l'application. Des travaux proposent de mélanger les bits à l'intérieur d'un flit, transférant l'impact des fautes sur les bits les moins significatifs. Cependant, ces approches sont appliquées à un niveau de grain fin, fournissant une atténuation des défauts efficace, mais avec des coûts matériels importants. Pour remédier à cette limitation, ce travail propose une technique de brassage de bit par région, qui sacrifie l'efficacité afin de réduire les coûts matériels
Multiple Permanent Faults Mitigation Through Bit-Shuffling for Network-on-Chip Architecture
International audienceSince several decades, fault tolerance has become a major research field, due to transistor shrinking and core number increasing in System-on-Chip (SoC). Especially, faults occurring at the Network-on-Chips (NoCs) of those systems have a significant impact, since NoCs are the key component of on-chip communication. Several fault tolerant approaches have been proposed, which are, however, limited against multiple permanent faults. To reduce the impact of these faults on the data communications, we propose a bit-shuffling method for fault tolerant NoCs. The proposed approach exploits, at runtime, the position of the permanent faults and changes the order of bits inside a flit. Our bit-shuffling method reduces as much as possible the fault impact, by transferring the faults from Most Significant Bits (MSBs) towards Least Significant Bits (LSBs). With this technique, we show that, in presence of multiple permanent faults, the Mean Square Error (MSE) on the payload transmission is reduce from 10 17 to 10 5 under three permanent fault for 32-bit unsigned integers. This technique also ensures the correct transmission of headers under multiple permanent faults
- …