1 |
Exploration d'architecture d'accélérateurs à mémoire distribuée / Design space exploration of distributed-memory acceleratorsBusseuil, Rémi 04 December 2012 (has links)
Bien que le développement actuel d'accélérateurs se concentre principalement sur la création de puces Multiprocesseurs (MPSoC) hétérogènes, c'est-à-dire composés de processeurs spécialisées, de nombreux acteurs de la microélectronique s'intéressent au développement d'un autre type de MPSoC, constitué d'une grille de processeurs identiques. Ces MPSoC homogènes, bien que composés de processeurs énergétiquement moins efficaces, possèdent une programmabilité et une flexibilité plus importante que les MPSoC hétérogènes, ce qui favorise notamment l'adaptation du système à la charge demandée, et offre un espace de solutions de configuration potentiellement plus vaste et plus simple à contrôler. C'est dans ce contexte que s'inscrit cette thèse, en exposant la création d'une architecture MPSoC homogène scalable (c'est-à-dire dont la mise à l'échelle des performances est linéaire), ainsi que le développement de différents systèmes d'adaptation et de programmation sur celle-ci.Cette architecture, constituée d'une grille de processeurs de type MicroBlaze, possédant chacun sa propre mémoire, au sein d'un Réseau sur Puce 2D, a été développée conjointement avec un système d'exploitation temps réel (RTOS) spécialisé et modulaire. Grâce à la création d'une pile de communication complexe, plusieurs mécanismes d'adaptation ont été mis en œuvre : une migration de tâche « avec redirection de données », permettant de diminuer l'impact de cette migration avec des applications de type flux de données, ainsi qu'un mécanisme dit « d'exécution distante ». Ce dernier consiste non plus à migrer le code instruction d'une mémoire à une autre, mais de conserver le code dans sa mémoire initiale et de le faire exécuter par un processeur distinct. Les différentes expériences réalisées avec ce mécanisme ont permis de souligner la meilleure réactivité de celui-ci face à la migration de tâche, tout en possédant des performances d'adaptation plus faible.Ce dernier mécanisme a conduit naturellement à la création d'un modèle de programmation de type « mémoire partagée » au sein de l'architecture. La mise en place de ce dernier nécessitait la création d'un mécanisme de cohérence mémoire, qui a été réalisé de façon matérielle/logicielle et scalable par l'intermédiaire du développement de la librairie PThread. Les performances ainsi obtenues mettent en évidence les avantages d'un MPSoC homogène tout en utilisant une programmation « classique » de type multiprocesseur. / Although the accelerators market is dominated by heterogeneous MultiProcessor Systems-on-Chip (MPSoC), i.e. with different specialized processors, a growing interest is put on another type of MPSoC, composed by an array of identical processors. Even if these processors achieved lower performance to power ratio, the better flexibility and programmability of these homogeneous MPSoC allow an easier adaptation to the load, and offer a wider space of configurations. In this context, this thesis exposes the development of a scalable homogeneous MPSoC – i.e. with linear performance scaling – and different kind of adaptive mechanisms and programming model on it.This architecture is based on an array of MicroBlaze-like processors, each having its own memory, and connected through a 2D NoC. A modular RTOS was build on top of it. Thanks to a complex communication stack, different adaptive mechanisms were made: a “redirected data” task migration mechanism, reducing the impact of the migration mechanism for data-flow applications, and a “remote execution” mechanism. Instead of migrate the instruction code from a memory to another, this last consists in only migrate the execution, keeping the code in its initial memory. The different experiments shows faster reactivity but lower performance of this mechanism compared to migration.This development naturally led to the creation of a shared memory programming model. To achieve this, a scalable hardware/software memory consistency and cache coherency mechanism has been made, through the PThread library development. Experiments show the advantage of using NoC based homogeneous MPSoC with a brand programming model.
|
2 |
Optimisation des performances et de la complexité dans les architectures multiprocesseurs hétérogènes sur puce / Performance and complexity optimization in heterogeneous multiprocessors system on chipDammak Masmoudi, Bouthaina 06 November 2015 (has links)
Les travaux présentés dans cette thèse visent le développement d'une méthodologie capable d’estimer rapidement les performances d’une architecture MPSoC avec des instructions spécialisées. Pour ces architectures, l’outil proposé intègre une méthodologie de partage des accélérateurs hardwares pour les mêmes motifs de calcul. L’idée est donc de trouver dans les différentes applications parallèles exécutées par les différents processeurs des motifs de calcul communs. Ces motifs seront alors implantés sur le FPGA par un nombre réduit d’accélérateurs partagés entre les processeurs. Grâce à des modèles de programmation mixte, la méthodologie développée est capable de trouver, pour des performances exigés par le concepteur, le nombre optimal d’accélérateurs privés et/ou partagés pour les différents motifs. / No summary in english
|
3 |
Uma abordagem meta-heurística para o mapeamento de tarefas em uma plataforma MPSoC baseada em NoCFARIAS, Max Santana Rolemberg 31 January 2014 (has links)
Submitted by Nayara Passos (nayara.passos@ufpe.br) on 2015-03-13T12:04:17Z
No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
TESE Max Santana Rolemberg Farias.pdf: 3331146 bytes, checksum: aafe22682c1e4d4144f19615252785b9 (MD5) / Approved for entry into archive by Daniella Sodre (daniella.sodre@ufpe.br) on 2015-03-13T13:23:12Z (GMT) No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
TESE Max Santana Rolemberg Farias.pdf: 3331146 bytes, checksum: aafe22682c1e4d4144f19615252785b9 (MD5) / Made available in DSpace on 2015-03-13T13:23:12Z (GMT). No. of bitstreams: 2
license_rdf: 1232 bytes, checksum: 66e71c371cc565284e70f40736c94386 (MD5)
TESE Max Santana Rolemberg Farias.pdf: 3331146 bytes, checksum: aafe22682c1e4d4144f19615252785b9 (MD5)
Previous issue date: 2014 / CNPq, FACEPE / O crescente número de tarefas em execução em plataformas Multiprocessor Systemson-
Chips (MPSoC) exige mais e mais processadores e as plataformas MPSoC que utilizam o
meio de comunicação tradicional (barramento) possui uma largura de banda limitada e não são
escaláveis para projetos de alta performance. Nesse sentido, os MPSoC baseados em Networkon-
Chip (NoC) foram propostos para resolver estas limitações. Um dos principais problemas em
plataformas MPSoC baseado em NoC é o custo de comunicação, pois esse custo de comunicação
depende do mapeamento de tarefas nos processadores. Este trabalho apresenta uma abordagem
que utiliza uma meta-heurística para atribuir um conjunto de tarefas a um conjunto de Processing
Element (PE) em um MPSoC baseado em NoC. Esta abordagem proposta avalia e otimiza o
mapeamento de tarefas de aplicações e, em alguns experimentos, os resultados foram comparados
com o pior e o melhor mapeamento do espaço de projeto. Os resultados encontrados durante os
experimentos mostram uma redução média de energia de 47% quando é utilizado o mecanismo
de agrupamento de tarefas e 44% quando o mecanismo de agrupamento é desligado.
|
4 |
Ladicí nástroj pro víceprocesorový systém na čipu / Debugger for Multiprocessor System on a ChipŠpaček, Michal January 2011 (has links)
The Lissom project deals with the hardware-software co-design methodology. In this project, an integrated desktop environment for a design of multiprocessor systems on chip was developed. This environment can be used also for developing applications for multiprocessor systems. One part of the environment is a debugger that can be used to debug single core systems. In this thesis, a single processor debugger tool is described in detail and an extension to this tool is proposed and implemented based on the Nexus standard. The extended debugger allows debugging of multiprocessor systems.
|
5 |
Réseaux embarqués sur puce reconfigurable dynamiquement et sûrs de fonctionnement / Reliable and dynamically reconfigurable network-on-chipKillian, Cédric 05 December 2012 (has links)
Les besoins de performance des systèmes sur puce embarqués augmentant sans cesse pour satisfaire des applications de plus en plus complexes, de nouvelles architectures de traitement et de nouveaux paradigmes de calcul sont apparus. L'intégration au sein d'une même puce électronique de plusieurs dizaines, voire centaines d'éléments de calcul a donné naissance aux systèmes sur puce multiprocesseur (MultiProcessor Systems on Chip - MPSoC). Cette évolution permet d'obtenir une puissance de traitement parallèle considérable. Actuellement, les performances de tels systèmes reposent sur le support de communication et d'échange des données entre les blocs de calcul intégrés. La problématique du support de communication est de fournir une bande passante et une adaptabilité élevées, afin de pouvoir bénéficier efficacement du parallélisme potentiel de la puissance de calcul disponible des MPSoC. C'est dans ce contexte du besoin primordial de flexibilité et de bande passante que sont apparus les réseaux embarqués sur puce (Network-on-Chip - NoC) dont l'objectif est de permettre l'interconnexion optimisée d'un grand nombre d'éléments de calcul au sein d'une même puce électronique, tout en assurant l'exigence d'un compromis entre les performances de communication et les ressources d'interconnexion. De plus, l'apparition de la technologie FPGA reconfigurable dynamiquement a ouvert de nouvelles approches permettant aux MPSoC d'adapter leurs constituants en cours de fonctionnement et de répondre aux besoins croissant d'adaptabilité, de flexibilité et de la diversité des ressources des systèmes embarqués. Étant donnée cette évolution de complexité des systèmes électroniques et la diminution de la finesse de gravure, et donc du nombre croissant de transistors au sein d'une même puce, la sensibilité des circuits face aux phénomènes générant des fautes n'a de cesse d'augmenter. Ainsi, dans le but d'obtenir des systèmes sur puces performants et fiables, des techniques de détection, de localisation et de correction d'erreurs doivent être proposées au sein des NoC reconfigurables ou adaptatifs, où la principale difficulté réside dans l'identification et la distinction entre des erreurs réelles et des fonctionnements variables ou adaptatifs des éléments constituants ces types de NoC C'est dans ce contexte que nous proposons de nouveaux mécanismes et solutions architecturales permettant de contrôler le fonctionnement d'un NoC adaptatif supportant les communications d'une structure MPSOC, et afin de d'identifier et localiser avec précision les éléments défaillants d'une telle structure dans le but de les corriger ou de les isoler pour prévenir toutes défaillances du système / The need of performance of embedded Syxtena-on-Chlps (Socs) are increasing constantly to meet the requirements of applications becoming more and more complexes, and new processing architectures and new computing paradigms have emerged. The integration within a single chip of dozens, or hundreds of computing and processing elements has given birth to Mukt1 Pmcesmr Systena-on-Chp (MPSoC) allowing to feature a high level of parallel processing. Nowaday s, the performance of these systems rely on the communication medium between the interconnected processing elements. The problematic of the communication medium to feature a high bandwidth and flexibility is primordial in order to efficiently use the parallel processing capacity of the MPSoC In this context, Network-on-Chlps (NoCs) are developed where the aim is to allow the interconnection of a large number of elements in the same device while maintaining a tradeoff between performance and logical resources. Moreover, the emergence of the partial reconfigurable FPGA technology allows to the MPSoC to adapt their elements during its operation in order to meet the system requirements. Given this increasing complexity of the electronic systems and the shrinking size of the devices, the sensibility of the chip against phenomena generating fault has increased. Thereby, to design efficient and reliable Socs, new error detection and localization techniques must be proposed for the dynamic NoCs where the main difficulty is the identification and the distinction between real errors and adaptive behavior of the NoCs. In this context, we present new mechanisms and architectural solutions allowing to check during the system operation the correctness of dynamic NoCs in order to locate and isolate efficiently the faulty components avoiding a failure of the system
|
6 |
Méthodologies de conception pour multiprocesseurs sur circuits logiques programmablesBenmouhoub, Riad 07 May 2007 (has links) (PDF)
L'augmentation continue de la capacité d'intégration d'une part, la complexité croissante des applications embarquées d'autre part, ont conduit aux systèmes sur puce (SoC) puis aux systèmes multiprocesseurs sur puce (MPSoC). Le problème fondamental associé à ces systèmes sur puces de grande taille est celui des méthodologies de conception et de la crise de productivité en résultant ne permettant pas d'exploiter de manière efficace ces circuits. Cette crise de productivité est le résultat d'approches ad-hoc et manuelle de la conception alors que le problème doit être posé comme un problème d'optimisation multi-objectif dont la résolution doit faire appel à des techniques d'optimisation automatique. Dans cette thèse, nous présentons une méthodologie de conception pour les systèmes multiprocesseurs sur circuits logiques programmables, dont l'originalité porte sur trois aspects : (1) l'exploration évolutionnaire multi objectif de l'espace de conception afin de mener une recherche intelligente, (2) l'utilisation des circuits logiques programmables de grande taille pour l'évaluation rapide par émulation largement supérieure à la simulation, et enfin (3) l'utilisation de la synthèse MPSoC depuis un langage de programmation parallèle haut niveau (Occam) et de la prise en compte du monitoring sur puce. Des cas d'études sur circuits ont démontré l'efficacité d'une telle méthodologie pour résoudre le problème de la crise de productivité de la conception.
|
7 |
Integration and Evaluation of Cache Coherence Protocols for Multiprocessor SoCsSuh, Taeweon 20 November 2006 (has links)
System-on-a-chip (SoC) designs is characterized by heavy reuse of IP blocks to satisfy specific computing needs for target applications, reduce overall design cost, and expedite time-to-market. To meet their performance goal and cost constraint, SoC designers integrate multiple, sometimes heterogeneous, processor IPs to perform particular functions. This design approach is called Multiprocessor SoC (MPSoC). In this thesis, I investigated generic methodologies for enabling efficient communication among heterogeneous processors and quantified the efficiency of coherence traffic. Hardware techniques for two main MPSoC architectures were studied: Integration of cache coherence protocols for shared-bus-based MPSoCs and Cache coherence support for non-shared-bus-based MPSoCs.
In the shared-bus-based MPSoCs, the integration techniques guarantee data consistency among incompatible coherence protocols. An integrated protocol will contain common states from these coherence protocols. A snoop-hit buffer and region-based cache coherence were also proposed to further enhance the coherence performance. For the non-shared-bus-based MPSoCs, bypass and bookkeeping approaches were proposed to maintain coherence in a new cache coherence-enforced memory controller. The simulations based on micro-benchmark and RTOS kernel showed the benefits of my methodologies over a generic software solution.
This thesis also evaluated and quantified the efficiency of coherence traffic based on a novel emulation platform using FPGA. The proposed technique can completely isolate the intrinsic delay of the coherence traffic to demonstrate the impact of coherence traffic on system performance. Unlike previous evaluation methods, this technique eliminated non-deterministic factors in measurements such as bus arbitration delay and stall in the pipelined bus. The experimental results showed that the cache-to-cache transfer in the Intel server system is less efficient than the main memory access.
|
8 |
Software Design of Communication Performance Estimation for System SynthesisLee, Chung-Lin 28 March 2008 (has links)
In a multiprocessor system-on-chip (MPSOC), parallel processors are utilized to enhance overall performance. However, the communication between processors and memory modules can affect overall performance significantly. We proposed a software design of communication performance estimation for system synthesis. We designed a hardware simulator of mesh communication architecture of MPSOC. We implemented the simulator of router nodes in SystemC language. An analytical communication performance estimation model can be trained with data measured from communication simulation. It can then be utilized for estimating inter-processor communication performance in an MPSOC.
|
9 |
Conception de haut niveau des MPSoCs à partir d'une spécification Simulink: Passerelle entre la conception d'algorithmes et la conception d'architecturesAtat, Y. 21 May 2007 (has links) (PDF)
La technologie de fabrication actuelle permet l'intégration d'un système multiprocesseur complexe sur une seule pièce de silicium (MPSoC pour Multiprocessor System-on-Chip). Une façon de maîtriser la complexité croissante de ces systèmes est d'augmenter le niveau d'abstraction et d'aborder la conception au niveau système. Cependant, l'augmentation du niveau d'abstraction peut engendrer un fossé entre les concepts au niveau système et ceux utilisés pour l'implémentation de l'architecture Matériel/Logiciel du MPSoC. L'objectif de cette thèse est de combler le gap entre les deux niveaux d'abstractions utilisés en proposant une passerelle efficace entre les outils d'aide au développement d'algorithmes (Matlab\Simulink) et les outils de conception des architectures (ROSES et macro-Cell builder). Ceci est accompli : - En définissant un modèle intermédiaire transactionnel dans l'environnement Simulink. Ce modèle intermédiaire combine l'algorithme et l'architecture. Il permet la définition précoce de la plateforme d'implémentation et établit une continuité entre le modèle fonctionnel et le modèle architectural. - En automatisant le passage entre le niveau système et le niveau architectural, dans le but d'accélérer la procédure de la conception des MPSoCs et de réduire la quantité des erreurs provoquées par le travail manuel dans un environnement unifié. La pertinence de ce travail a été évaluée par son application à la conception du décodeur MP3 présenté dans ce mémoire.
|
10 |
Mecanismos de suporte a modelagem e análise de comunicação em plataformas multiprocessadorasESMERALDO, Guilherme Álvaro Rodrigues Maia January 2007 (has links)
Made available in DSpace on 2014-06-12T15:59:55Z (GMT). No. of bitstreams: 2
arquivo5763_1.pdf: 5730689 bytes, checksum: cdf2df03b12295ce0ff187891b9fdc3a (MD5)
license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5)
Previous issue date: 2007 / Conselho Nacional de Desenvolvimento Científico e Tecnológico / A demanda por novas aplicações e o desenvolvimento das tecnologias de integração de circuitos
integrados deram origem aos Multi-Processors Systems-on-Chip (MPSoC). MPSoC é
um circuito integrado complexo, composto de microprocessadores, barramentos, memórias,
interfaces com periféricos, etc.
Por sua variedade e quantidade de componentes, a estrutura de comunicação é um fator
limitante no desempenho da aplicação e no consumo de energia de uma plataforma MPSoC.
Assim, foram criadas técnicas para explorar o espaço de opções de projeto para tentar customizar
a arquitetura de comunicação para uma aplicação. Porém, muitas destas técnicas ou
são bastante imprecisas, pois fazem estimativas estáticas, descartando efeitos dinâmicos da arquitetura,
como contenção de barramento, ou são bastante lentas, pois têm que simular cada
configuração de arquitetura para uma dada aplicação
O objetivo deste trabalho foi o desenvolvimento de mecanismo para modelagem e de captura
do custo de comunicação em modelos de simulação de plataformas multiprocessadoras.
Este mecanismo tem como objetivo disponibilizar ao projetista métricas para análise e comparação,
visando reduzir o tempo na exploração do espaço de alternativas no projeto. Para tanto
foi proposto um modelo de implementação de barramentos, em SystemC, que além de fornecer
uma API que uniformiza e modulariza a estrutura dos barramentos, simplifica a integração dos
módulos monitores.
Tais módulos permitem a captura de informações detalhadas da comunicação durante a
simulação de forma a orientar o projetista na escolha da melhor arquitetura de comunicação
|
Page generated in 0.0367 seconds