1 |
Mapeamento e posicionamento de módulos processantes em sistemas dinamicamente reconfiguráveis baseados em redes intrachip. / Mapping and positioning modules processantes systems dynamically reconfigurable based networks intrachip.Gomes Filho, Jonas 02 December 2014 (has links)
Sistemas Dinamicamente Reconfiguráveis (SDRs) tem sido aceitos como alternativa importante para diminuir os custos de circuitos digitais. Porém, eles adicionam novas dimensões no projeto de Sistemas sobre Silício (System-On-Chip, SoC). Apesar de novas metodologias terem sido propostas por fabricantes de FPGA para lidar com a complexidade deste tipo de circuitos, as soluções ainda são muito específicas. Considerando-se que o uso de recursos de comunicação robustos em SoCs complexos atuais é generalizado, os meios de comunicação estruturados, como rede Intrachips (Network-On-Chip, NoCs), foram incluídas em sistemas dinamicamente reconfiguráveis, gerando-se arquiteturas de SDRs baseadas em NoCs, ou de SDR-NoCs. Arquiteturas de SDR-NoCs podem ser simples ou complexas. As arquiteturas de SDR-NoCs simples são aquelas com topogias regulares e diretas e Módulos Processantes (MPs) homogêneos. As arquiteturas de SDR-NoCs complexas são aquelas com topologias irregulares e indiretas com MPs heterogêneos. O mapeamento é a fase no fluxo de projeto do SoC que visa encontrar a melhor localização das unidades de processamento da aplicação junto à topologia da NoC, de tal forma que as métricas de interesse podem ser otimizadas. O problema do posicionamento lida com a alocação otimizada de recursos (cores) dentro do dispositivo reconfigurável. No mapeamento de SDR-NoCs, a capacidade de reconfiguração no tempo acrescenta uma nova dimensão ao problema de mapeamento, uma vez que diferentes cores são atribuídos ao mesmo roteador, mas estão presentes no dispositivo em momentos distintos. Para arquiteturas de SDR-NoCs complexas, o problema de mapeamento está fortemente associado ao problema do posicionamento e convém tratá-los em conjunto. Até o presente momento, o problema de mapeamento e posicionamento para SDR-NoCs não tem sido tratados adequadamente. Neste trabalho são apresentadas soluções para o mapeamento e/ou posicionamento de MPs para arquiteturas SDR-NoCs tanto simples quanto complexas. Primeiramente, uma estratégia de mapeamento é proposta para arquiteturas simples, de uma forma que torna possível a utilização de estratégias de mapeamento clássicas anteriores (sem reconfiguração) para SDRs. Os resultados mostram a redução de até 38%, no atraso médio da NoC e de até 41% de economia de energia comparando a melhor solução com a média de soluções aleatórias. Em uma segunda fase, o problema de mapeamento e posicionamento são tratados em conjunto para arquiteturas SDR-NoCs complexas: uma formalização do problema é proposta e um algoritmo exato, semi-exaustivo, é implementado e utilizado para a a sua análise. Devido à alta complexidade do problema, um segundo algoritmo genético (Genetic Algorithm, GA) foi implementado para que casos maiores possam ser resolvidos. Vários tipos de crossover e metodologias de GAs são comparadas para se obter a melhor solução. Os resultados mostram que a melhor solução GA obteve, em média, custos de comunicação com 4% de penalidade quando comparada com a melhor solução, sendo que o algoritmo apresenta bons tempos de execução. / Dynamic Reconfigurable Systems (DRSs) have been accepted as an important alternative for lowering costs of digital circuits. However, they add new dimensions to the system-on-chip (SoC) design space. Although new methodologies have been proposed by Field Programmable Gate Arrays (FPGAs) manufacturers to deal with the increased design complexity in this class of circuits, solutions to the algorithmic and block level design are still very ad-hoc. Considering the generalized use of robust communication resources in current complex SoCs, structured communication means, as network-on-chips (NoCs), have been included in dynamic reconfigurable systems generating DRSs based on NoCs, or DRS-NoCs, under different architectures. DRS-NoC architectures can be simple or complex. Simple DRS-NoCs architectures refer to regular and direct NoC topologies, with homogeneous Processing Modules (PMs). Complex DRS-NoCs architectures refer to irregular and undirected NoC topologies, with heterogeneous MPs. Mapping is the step in the SoC design flow which aims to find the best topological location for the application processing units onto the NoC topology, such that the metrics of interest can be greatly optimized. The placement problem deals with the optimized allocation of resources (cores) inside the reconfigurable device. In DRS-NoCs mapping, the on-going reconfiguration capability adds a new dimension to the mapping problem, since different cores are assigned to the same router, but being present in the in the logic fabric in separate moments. Furthermore, in complex DRS-NoC architectures the mapping problem is strongly associated with the placement one, and they should be dealt concurrently. To the date, the mapping and placement problems have not been properly addressed for those kind of architectures. In this work solutions are presented for hardware core placement and/or mapping for both simple and complex DRS-NoC architectures. Firstly, a mapping strategy is proposed for simple architectures, in a way that makes it possible to use previous classic mapping strategies (without reconfiguration) for DRSs. Results show reductions up to 38% on the average NoC delay and up to 41% of energy saving when comparing the best solution with average random solutions. In the second phase, the mapping and placement problems are dealt concurrently for DRS-NoC complex architectures: the problem formalization is proposed and for its analysis, an exact, and semi-exaustive, algorithm is implemented and applied. Due to the high complexity associated to the problem, an Genetic Algorithm (GA) was implemented to deal with larger cases. Several GAs crossovers and methodologies are compared for obtaining the best solution. Results show that best GA solution obtained, in average, communication costs with 4% of penalty when compared with best solution. In addition, the algorithm presents low execution times.
|
2 |
Mapeamento e posicionamento de módulos processantes em sistemas dinamicamente reconfiguráveis baseados em redes intrachip. / Mapping and positioning modules processantes systems dynamically reconfigurable based networks intrachip.Jonas Gomes Filho 02 December 2014 (has links)
Sistemas Dinamicamente Reconfiguráveis (SDRs) tem sido aceitos como alternativa importante para diminuir os custos de circuitos digitais. Porém, eles adicionam novas dimensões no projeto de Sistemas sobre Silício (System-On-Chip, SoC). Apesar de novas metodologias terem sido propostas por fabricantes de FPGA para lidar com a complexidade deste tipo de circuitos, as soluções ainda são muito específicas. Considerando-se que o uso de recursos de comunicação robustos em SoCs complexos atuais é generalizado, os meios de comunicação estruturados, como rede Intrachips (Network-On-Chip, NoCs), foram incluídas em sistemas dinamicamente reconfiguráveis, gerando-se arquiteturas de SDRs baseadas em NoCs, ou de SDR-NoCs. Arquiteturas de SDR-NoCs podem ser simples ou complexas. As arquiteturas de SDR-NoCs simples são aquelas com topogias regulares e diretas e Módulos Processantes (MPs) homogêneos. As arquiteturas de SDR-NoCs complexas são aquelas com topologias irregulares e indiretas com MPs heterogêneos. O mapeamento é a fase no fluxo de projeto do SoC que visa encontrar a melhor localização das unidades de processamento da aplicação junto à topologia da NoC, de tal forma que as métricas de interesse podem ser otimizadas. O problema do posicionamento lida com a alocação otimizada de recursos (cores) dentro do dispositivo reconfigurável. No mapeamento de SDR-NoCs, a capacidade de reconfiguração no tempo acrescenta uma nova dimensão ao problema de mapeamento, uma vez que diferentes cores são atribuídos ao mesmo roteador, mas estão presentes no dispositivo em momentos distintos. Para arquiteturas de SDR-NoCs complexas, o problema de mapeamento está fortemente associado ao problema do posicionamento e convém tratá-los em conjunto. Até o presente momento, o problema de mapeamento e posicionamento para SDR-NoCs não tem sido tratados adequadamente. Neste trabalho são apresentadas soluções para o mapeamento e/ou posicionamento de MPs para arquiteturas SDR-NoCs tanto simples quanto complexas. Primeiramente, uma estratégia de mapeamento é proposta para arquiteturas simples, de uma forma que torna possível a utilização de estratégias de mapeamento clássicas anteriores (sem reconfiguração) para SDRs. Os resultados mostram a redução de até 38%, no atraso médio da NoC e de até 41% de economia de energia comparando a melhor solução com a média de soluções aleatórias. Em uma segunda fase, o problema de mapeamento e posicionamento são tratados em conjunto para arquiteturas SDR-NoCs complexas: uma formalização do problema é proposta e um algoritmo exato, semi-exaustivo, é implementado e utilizado para a a sua análise. Devido à alta complexidade do problema, um segundo algoritmo genético (Genetic Algorithm, GA) foi implementado para que casos maiores possam ser resolvidos. Vários tipos de crossover e metodologias de GAs são comparadas para se obter a melhor solução. Os resultados mostram que a melhor solução GA obteve, em média, custos de comunicação com 4% de penalidade quando comparada com a melhor solução, sendo que o algoritmo apresenta bons tempos de execução. / Dynamic Reconfigurable Systems (DRSs) have been accepted as an important alternative for lowering costs of digital circuits. However, they add new dimensions to the system-on-chip (SoC) design space. Although new methodologies have been proposed by Field Programmable Gate Arrays (FPGAs) manufacturers to deal with the increased design complexity in this class of circuits, solutions to the algorithmic and block level design are still very ad-hoc. Considering the generalized use of robust communication resources in current complex SoCs, structured communication means, as network-on-chips (NoCs), have been included in dynamic reconfigurable systems generating DRSs based on NoCs, or DRS-NoCs, under different architectures. DRS-NoC architectures can be simple or complex. Simple DRS-NoCs architectures refer to regular and direct NoC topologies, with homogeneous Processing Modules (PMs). Complex DRS-NoCs architectures refer to irregular and undirected NoC topologies, with heterogeneous MPs. Mapping is the step in the SoC design flow which aims to find the best topological location for the application processing units onto the NoC topology, such that the metrics of interest can be greatly optimized. The placement problem deals with the optimized allocation of resources (cores) inside the reconfigurable device. In DRS-NoCs mapping, the on-going reconfiguration capability adds a new dimension to the mapping problem, since different cores are assigned to the same router, but being present in the in the logic fabric in separate moments. Furthermore, in complex DRS-NoC architectures the mapping problem is strongly associated with the placement one, and they should be dealt concurrently. To the date, the mapping and placement problems have not been properly addressed for those kind of architectures. In this work solutions are presented for hardware core placement and/or mapping for both simple and complex DRS-NoC architectures. Firstly, a mapping strategy is proposed for simple architectures, in a way that makes it possible to use previous classic mapping strategies (without reconfiguration) for DRSs. Results show reductions up to 38% on the average NoC delay and up to 41% of energy saving when comparing the best solution with average random solutions. In the second phase, the mapping and placement problems are dealt concurrently for DRS-NoC complex architectures: the problem formalization is proposed and for its analysis, an exact, and semi-exaustive, algorithm is implemented and applied. Due to the high complexity associated to the problem, an Genetic Algorithm (GA) was implemented to deal with larger cases. Several GAs crossovers and methodologies are compared for obtaining the best solution. Results show that best GA solution obtained, in average, communication costs with 4% of penalty when compared with best solution. In addition, the algorithm presents low execution times.
|
3 |
Une architecture évolutive flexible et reconfigurable dynamiquement pour les systèmes embarqués haute performance / A scalable flexible and dynamic reconfigurable architecture for high performance embedded computingViswanathan, Venkatasubramanian 12 October 2015 (has links)
Dans cette thèse, nous proposons une architecture reconfigurable scalable et flexible, avec un réseau de communication parallèle « full-duplex switched » ainsi que le modèle d’exécution approprié ce qui nous a permis de redéfinir les paradigmes de calcul, de communication et de reconfiguration dans les systèmes embarqués à haute performance (HPEC). Ces systèmes sont devenus très sophistiqués et consommant des ressources pour trois raisons. Premièrement, ils doivent capturer et traiter des données en temps réel à partir de plusieurs sources d’E/S parallèles. Deuxièmement, ils devraient adapter leurs fonctionnalités selon l’application ou l’environnement. Troisièmement, à cause du parallélisme potentiel des applications, multiples instances de calcul réparties sur plusieurs nœuds sont nécessaires, ce qui rend ces systèmes massivement parallèles. Grace au parallélisme matériel offert par les FPGAs, la logique d’une fonction peut être reproduite plusieurs fois pour traiter des E/S parallèles, faisant du modèle d’exécution « Single Program Multiple Data » (SPMD) un modèle préféré pour les concepteurs d’architectures parallèles sur FPGA. En plus, la fonctionnalité de reconfiguration dynamique est un autre attrait des composants FPGA permettant la réutilisation efficace des ressources matérielles limitées. Le défi avec les systèmes HPEC actuels est qu’ils sont généralement conçus pour répondre à des besoins spécifiques d’une application engendrant l’obsolescence rapide du matériel. Dans cette thèse, nous proposons une architecture qui permet la personnalisation des nœuds de calcul (FPGA), la diffusion des données (E/S, bitstreams) et la reconfiguration de plusieurs nœuds de calcul en parallèle. L’environnement logiciel exploite les attraits du réseau de communication pour implémenter le modèle d’exécution SPMD.Enfin, afin de démontrer les avantages de notre architecture, nous avons mis en place une application d’encodage H.264 sécurisé distribué évolutif avec plusieurs protocoles de communication avioniques pour les données et le contrôle. Nous avons utilisé le protocole « serial Front Panel Data Port (sFPDP) » d’acquisition de données à haute vitesse basé sur le standard FMC pour capturer, encoder et de crypter le flux vidéo. Le système mis en œuvre s’appuie sur 3 FPGA différents, en respectant le modèle d’exécution SPMD. En outre, nous avons également mis en place un système d’E/S modulaire en échangeant des protocoles dynamiquement selon les besoins du système. Nous avons ainsi conçu une architecture évolutive et flexible et un modèle d’exécution parallèle afin de gérer plusieurs sources vidéo d’entrée parallèles. / In this thesis, we propose a scalable and customizable reconfigurable computing platform, with a parallel full-duplex switched communication network, and a software execution model to redefine the computation, communication and reconfiguration paradigms in High Performance Embedded Systems. High Performance Embedded Computing (HPEC) applications are becoming highly sophisticated and resource consuming for three reasons. First, they should capture and process real-time data from several I/O sources in parallel. Second, they should adapt their functionalities according to the application or environment variations within given Size Weight and Power (SWaP) constraints. Third, since they process several parallel I/O sources, applications are often distributed on multiple computing nodes making them highly parallel. Due to the hardware parallelism and I/O bandwidth offered by Field Programmable Gate Arrays (FPGAs), application can be duplicated several times to process parallel I/Os, making Single Program Multiple Data (SPMD) the favorite execution model for designers implementing parallel architectures on FPGAs. Furthermore Dynamic Partial Reconfiguration (DPR) feature allows efficient reuse of limited hardware resources, making FPGA a highly attractive solution for such applications. The problem with current HPEC systems is that, they are usually built to meet the needs of a specific application, i.e., lacks flexibility to upgrade the system or reuse existing hardware resources. On the other hand, applications that run on such hardware architectures are constantly being upgraded. Thus there is a real need for flexible and scalable hardware architectures and parallel execution models in order to easily upgrade the system and reuse hardware resources within acceptable time bounds. Thus these applications face challenges such as obsolescence, hardware redesign cost, sequential and slow reconfiguration, and wastage of computing power.Addressing the challenges described above, we propose an architecture that allows the customization of computing nodes (FPGAs), broadcast of data (I/O, bitstreams) and reconfiguration several or a subset of computing nodes in parallel. The software environment leverages the potential of the hardware switch, to provide support for the SPMD execution model. Finally, in order to demonstrate the benefits of our architecture, we have implemented a scalable distributed secure H.264 encoding application along with several avionic communication protocols for data and control transfers between the nodes. We have used a FMC based high-speed serial Front Panel Data Port (sFPDP) data acquisition protocol to capture, encode and encrypt RAW video streams. The system has been implemented on 3 different FPGAs, respecting the SPMD execution model. In addition, we have also implemented modular I/Os by swapping I/O protocols dynamically when required by the system. We have thus demonstrated a scalable and flexible architecture and a parallel runtime reconfiguration model in order to manage several parallel input video sources. These results represent a conceptual proof of a massively parallel dynamically reconfigurable next generation embedded computers.
|
Page generated in 0.0673 seconds