Spelling suggestions: "subject:"embedded systems"" "subject:"imbedded systems""
501 |
Métodos de Exploração de Espaço de Projeto em Tempo de Execução em Sistemas Embarcados de Tempo Real Soft baseados em Redes-Em-Chip. / Methods of Run-time Design Space Exploration in NoC-based Soft Real Time Embedded SystemsBriao, Eduardo Wenzel January 2008 (has links)
A complexidade no projeto de sistemas eletrônicos tem aumentado devido à evolução tecnológica e permite a concepção de sistemas inteiros em um único chip (SoCs – do inglês, Systems-on-Chip). Com o objetivo de reduzir a alta complexidade de projeto, custos de projeto e o tempo de lançamento do produto no mercado, os sistemas são desenvolvidos em módulos funcionais, pré-verificados e pré-projetados, denominados de núcleos de propriedade intelectual (IP – do inglês, Intellectual Property). Esses núcleos IP podem ser reutilizados de outros projetos ou adquiridos de terceiros. Entretanto, é necessário prover uma estrutura de comunicação para interligar esses núcleos e as estruturas atuais (barramentos) são inadequadas para atender as necessidades dos futuros SoCs (compartilhamento de banda, falta de escalabilidade). As redes-em-chip (NoCs{ XE "NoCs" } – do inglês, Networks-on-Chip) vêm sendo apresentadas como uma solução para atender essas restrições. No desenvolvimento de sistemas embarcados baseados em redes-em-chip, deve-se personalizar a rede para atendimento de restrições. Essa exploração de espaço de projeto (EEP), segundo uma infinidade de trabalhos, é realizada em tempo de projeto, supondo-se que é conhecido o perfil das aplicações que devem ser executadas pelo sistema. No entanto, cada vez mais sistemas embarcados aproximam-se de dispositivos genéricos de processamento (como palmtops), onde as tarefas a serem executadas não são inteiramente conhecidas a priori. Com a mudança dinâmica da carga de trabalho de um sistema embarcado, a busca pelo atendimento de requisitos pode então ser enfrentada por mecanismos adaptativos, que implementam dinamicamente a EEP. No âmbito deste trabalho, a EEP em tempo de execução provê mecanismos adaptativos que deverão realizar suas funções para atendimento de restrições de projeto. Consequentemente, EEP em tempo de execução pode permitir resultados ainda melhores, no que diz respeito a sistemas embarcados com restrições de projetos rígidas. É possível maximizar o tempo de duração da energia da bateria que alimenta um sistema embarcado ou, até mesmo, diminuir a taxa de perda de deadlines em um sistema de tempo real soft, realocando em tempo de execução tarefas de modo a gerar menor taxa de comunicação entre os processadores, desde que o sistema seja executado em um tempo suficiente para amortizar os custos de migração. Neste trabalho, foi utilizada a combinação de heurísticas de alocação da área dos Sistemas Computacionais Distribuídos como, por exemplo, algoritmos bin-packing e linear clustering. Resultados mostraram que a realocação de tarefas, utilizando uma combinação Worst-Fit e Linear Clustering, reduziu o consumo de energia e a taxa de perda de deadlines em 17% e 37%, respectivamente, utilizando o modelo de migração por cópia. / The complexity of electronic systems design has been increasing due to the technological evolution, which now allows the inclusion of a complete system on a single chip (SoC – System-on-Chip). In order to cope with the corresponding design complexity and reduce design costs and time-to-market, systems are built by assembling pre-designed and pre-verificated functional modules, called IP (Intellectual Property) cores. IP cores can be reused from previous designs or acquired from third-party vendors. However, an adequate communication architecture is required to interconnect these IP cores. Current communication architectures (busses) are unsuitable for the communication requirements of future SoCs (sharing of bandwidth, lack of scalability). Networks-on-Chip (NoC) arise as one of the solutions to fulfill these requirements. While developing NoC-based embedded systems, the NoC customization is mandatory to fulfill design constraints. This design space exploration (DSE), according to most approaches in the literature, is achieved at compile-time (off-line DSE), assuming the profiles of the tasks that will be executed in the embedded system are known a priori. However, nowadays, embedded systems are becoming more and more similar to generic processing devices (such as palmtops), where the tasks to be executed are not completely known a priori. Due to the dynamic modification of the workload of the embedded system, the fulfillment of requirements can be accomplished by using adaptive mechanisms that implement dynamically the DSE (run-time DSE or on-line DSE). In the scope of this work, DSE is on-line. In other words, when the system is running, adaptive mechanisms will be executed to fulfill the requirements of the system. Consequently, on-line DSE can achieve better results than off-line DSE alone, especially considering embedded systems with tight constraints. It is thus possible to maximize the lifetime of the battery that feeds an embedded system, or even to decrease the deadline miss ratio in a soft real-time system, for example by relocating tasks dynamically in order to generate less communication among the processors, provided that the system runs for enough execution time in order to amortize the migration overhead.In this work, a combination of allocation heuristics from the domain of Distributed Computing Systems is applied, for instance bin-packing and linear clustering algorithms. Results shows that applying task reallocation using the Worst-Fit and Linear Clustering combination reduces the energy consumption and deadline miss ratio by 17% and 37%, respectively, using the copy task migration model.
|
502 |
Uso da técnica VLIW para aumento de performance e redução do consumo de potência em sistemas embarcados baseados em Java / Using the VLIW technique to increase performance and to reduce power comsumption in embedded systems based on JavaBeck Filho, Antonio Carlos Schneider January 2004 (has links)
A contribuição deste trabalho foi orientada principalmente ao desenvolvimento de alternativas de hardware para a execução nativa de bytecodes Java em sistemas embarcados que naturalmente possuem restrições quanto à potência consumida, ao desempenho e à área ocupada. Primeiramente, o desenvolvimento do Femtojava Low- Power demonstra que a utilização de um pipeline e de um banco de registradores interno em arquiteturas de pilha resultam em uma redução significativa no consumo de potência. Após, a técnica de folding, que basicamente transforma várias operações de pilha em uma operação tipo RISC, é avaliada. A análise de uma segunda solução arquitetural, baseada em VLIW (Very Long Instruction Word), também traz resultados satisfatórios na redução do consumo de potência, sendo que a paralelização do código, feita por um analisador desenvolvido, é facilitada devido à utilização de uma arquitetura de pilha. O desempenho e a potência consumida de todas as arquiteturas propostas neste trabalho foram validadas utilizando-se o simulador CACO-PS, também desenvolvido no contexto desta dissertação. Os estudos de caso adotados para a validação das alternativas arquiteturais compreenderam algoritmos matemáticos, de ordenação, busca e processamento de sinais, bastante utilizados no domínio de sistemas embarcados. Resultados promissores principalmente em termos de energia consumida são alcançados, assim como na disponibilização de diferentes arquiteturas para a execução nativa de Java, principal proposta deste trabalho. / The main contribution of this work was the development of hardware alternatives for native execution of Java bytecodes for embedded systems that have power, performance and area constraints. Firstly, the development of the Femtojava Low- Power shows that the use of a pipeline and an internal register bank in stack architectures brings a significant reduction in the power consumption. After that, the folding technique, that basically changes a set of stack operations into a simple RISC one, is evaluated. Then, the analysis of a second architectural solution, based on VLIW (Very Long Instruction Word), demonstrates also good results concerning power consumption. Moreover, it is shown that the parallelization of the code is facilitated due to the specific stack architecture. The power consumption and performance of all architectures here proposed were evaluated using the CACO-PS simulator, which was also developed in this work. The case studies adopted for the validation of the architectures were mathematic, sort, search and DSP algorithms, widely used in the embedded system domain. Promising results mainly in energy consumption were achieved, as well as the disponibilization of different architectures for native execution of Java, the main objective of this work.
|
503 |
Design space exploration of SW and HW IP based on object oriented methodology for embedded system applications / Exploração do espaço de projeto de IPs de SW e HW em uma metodologia orientada a objetos para aplicações embarcadasMattos, Julio Carlos Balzano de January 2007 (has links)
O software vem se tornando cada vez mais o principal fator de custo no desenvolvimento de dispositivos embarcados. Atualmente, com o aumento aumentando da complexidade dos sistemas embarcados, se faz necessário o uso de técnicas e metodologias que, ao mesmo tempo, permitam o aumento da produtividade do desenvolvimento de software e permitam manipular as restrições dos sistemas embarcados como tamanho de memória, comportamento de tempo real, desempenho e energia. A análise e projeto orientado a objetos são altamente conhecidos e utilizados na comunidade de engenharia de software. Este paradigma auxilia no desenvolvimento e manutenção do software, porém apresenta uma signi cativa sobrecarga em termos de memória, desempenho e tamanho do código. Esta tese introduz uma metodologia e um conjunto de ferramentas que permitem o uso concomitante de orientação a objetos e os diferentes requisitos dos sistemas embarcados. Para atingir este objetivo, esta tese apresenta uma metodologia para exploração de software embarcado orientado a objetos que permite melhoria em diferentes níveis do processo de desenvolvimento do software baseado em diferentes implementações do mesmo processador. Os resultados da metodologia são apresentados baseados na aplicação de um tocador de MP3. / Software is increasingly becoming the major cost factor for embedded devices. Nowadays, with the growing complexity of embedded systems, it is necessary to use techniques and methodologies that can, at the same time, increase software productivity and manipulate embedded systems constraints - like memory footprint, real-time behavior, performance and energy. Object-oriented modeling and design is a widely known methodology in software engineering. This paradigm may satisfy software portability and maintainability requirements, but it presents overhead in terms of memory, performance and code size. This thesis introduces a methodology and a set of tools that can deal, at the same time, with object orientation and di erent embedded systems requirements. To achieve this goal, the thesis presents a methodology to explore object-oriented embedded software improving di erent levels in the software design based on di erent implementations with the same processor. The results of the methodology are presented based on an MP3 player application.
|
504 |
Redes-em-chip para sistemas embarcados visando a otimização de medidas de qualidade de serviço para aplicações de tempo real / Networks on chip in embedded systems for optimization of quality of service measurement for real time applicationsCorrêa, Edgard de Faria January 2007 (has links)
O avanço da tecnologia, com a possibilidade de inclusão de um número cada vez maior de transistores em uma única pastilha de silício, tem permitido integração de diversos blocos, formando sistemas completos em um único chip. Esses sistemas em chip possuem uma maior capacidade, mas também uma maior complexidade de projeto. Um dos aspectos a ser resolvido no projeto é que infra-estrutura de comunicação será utilizada na interconexão dos diversos blocos do sistema. Nos últimos anos, as propostas têm apontado para a utilização de redes em chip (NoC – do inglês, Network on Chip) para solucionar este problema de comunicação. Essas redes possuem capacidade de reuso de componentes, escalabilidade, paralelismo, embora apresentem maiores custos e latência que outras soluções. Entretanto, a latência pode ser atenuada, em alguns casos, através de ajustes na configuração da rede, tais como: topologia, arbitragem, mecanismos de controle de fluxo, política de roteamento, tamanho dos buffers. Por outro lado, os sistemas embarcados apresentam, geralmente, requisitos cada vez mais rígidos em relação à qualidade de serviço (QoS – do inglês, Quality of Service) e a restrições temporais. Dessa forma, esses requisitos temporais e de QoS aumentam ainda mais a complexidade do projeto de sistemas embarcados. Em virtude desse aumento da complexidade, o ideal é que a exploração do espaço de projeto seja feita no nível de abstração mais alto possível. Com isso, espera-se manter o tempo de projeto dentro dos níveis adequados, além de permitir uma exploração de espaço de projeto mais ampla e rápida. Nessa exploração, a configuração da rede têm impacto direto sobre os requisitos temporais e de QoS. Esta tese situa-se no contexto de investigar a influência da estrutura de comunicação no atendimento aos requisitos de QoS das aplicações de tempo real. Frente aos requisitos dessas aplicações, especificamente em relação ao atendimento dos deadlines das tarefas e a latência das comunicações, este trabalho apresenta mecanismos de ajustes no planejamento e configuração da NoC em sistemas embarcados, objetivando a garantia desses requisitos. As estratégias utilizadas nos ajustes das características da NoC objetivam permitir o uso mínimo de recursos para atender os requisitos das aplicações de tempo real, dentro das exigências de QoS. Os resultados apresentados comprovam que o ajuste correto nos parâmetros da estrutura de comunicação tem impacto direto no desempenho do sistema, especificamente em relação ao atendimento dos deadlines das mensagens e na redução da latência das comunicações. / With the technology advancing, a huge number of transistors can be included in a single chip. As a consequence, it is possible to integrate many blocks to build a complete system on a chip (SoC). These SoCs have more capacity, but their designs are more complex. One of the problems to solve is the design of the communication infrastructure to interconnect the systems blocks. In the last years, the utilization of networks as a solution for the communication problem has been proposed. These Networks-on-Chip (NoCs) have some interesting characteristics, such as reuse of components, scalability, and parallelism. On the other side, NoCs have higher costs and latency if compared to others solutions. The latency can be reduced, in some cases, by the adaptation of the network configuration, for instance adjusting topology, arbitration, flow control mechanisms, routing policy, size of buffers, etc. However, in general, embedded systems have increasingly rigid requirements regarding quality of service (QoS) and timing constraints. These timing and QoS requirements increase the complexity of embedded systems design. Due to this increased complexity, it is better that the design space exploration is performed at the highest possible abstraction level. With this, it is expected that the design time can be kept within adequate values, besides allowing a faster and broader design space exploration. In this exploration, the network configuration has direct impact upon timing and QoS requirements. The context of this thesis is the investigation of the influence of the communication structure on meeting QoS requirements in real time applications, in particular with respect to the fulfillment of task deadlines and latencies. This work shows mechanisms for adaptation of the NoC configuration for embedded systems, in order to meet the application requirements. The strategies used in the adjustment of the NoC characteristics allow the minimum use of resources to meet the real time application constraints, among the QoS requirements. The presented results demonstrate that the correct adjustment in the communication structure parameters has direct impact on the system performance, specifically with respect to the fulfillment of message deadlines and to the reduction of the communication latencies.
|
505 |
Javarray : uma arquitetura reconfigurável para o aumento de performance e economia de energia de aplicações embarcadas baseadas em Java / Javarray : a reconfigurable architecture for performance speedup and energy saving of embedded Java applicationsOtero, João Cláudio Soares January 2006 (has links)
A popularidade da linguagem Java no mercado de sistemas embarcados está aumentando como uma alternativa à necessidade de compatibilidade de software e ao crescimento da complexidade das aplicações, notadamente em eletrônica de consumo e automação industrial, mercado que também está se expandindo. Apesar de um melhor gerenciamento da complexidade do software permitido pela linguagem Java, as restrições de necessidade de economia de energia, baixo consumo de potência e necessidade de desempenho impostas aos sistemas embarcados, com especial ênfase aos sistemas portáteis, são potencializadas. Entretanto, as características da Java Virtual Machine, baseada em uma máquina de pilha, abrem possibilidades de otimização do processamento de aplicações embarcadas inerentes às máquinas de pilha e ainda não devidamente exploradas pelos processadores Java atuais. Com a aplicação de tradução binária ao código Java e utilização de técnicas de reconfiguração, consegue-se obter aumento de performance com simultânea economia de energia, permitindo-se uma melhor adequação da execução das aplicações Java para o domínio dos sistemas embarcados. Este trabalho apresenta uma unidade reconfigurável de granularidade grossa, o Javarray, a ser acoplada a um processador de execução Java nativa, destinada à execução otimizada dos blocos básicos mais representativos das aplicações embarcadas Java. Dessa forma, conseguimos explorar ILP de uma maneira simples e com a reconfiguração de poucos blocos básicos obtivemos uma redução no número de instruções executadas em até 42%, aumentamos o desempenho das aplicações em até 2,6 vezes e obtivemos economias de energia de até 64%, ao mesmo tempo em que mantivemos compatibilidade de software com as aplicações Java, e em muitos casos obtivemos simultânea redução na potência consumida. Esses dados referem-se a um conjunto de 3 aplicações específicas utilizadas por nosso grupo. A topologia básica do Javarray é desenvolvida a partir da análise de profiles de aplicações embarcadas, a partir da qual algumas variações organizacionais são exploradas. Em especial, desenvolveu-se uma arquitetura seqüencial, que habilita a utilização de técnicas de pipeline no Javarray, permitindo a exploração de paralelismo de mais alto nível. Como produto secundário dos esforços pela busca de economia de energia através do aumento de desempenho – foco deste trabalho – apresenta-se então os primeiros estudos acerca da possibilidade de execução de processamento do tipo stream em um pipeline de instruções reconfiguráveis no Javarray, aumentando dessa forma o IPC e reduzindo o impacto do consumo estático de energia. / Althought with a better management of the softwares’ complexity, allowed by the Java language, the restrictions of energy saving, low power consumption and the need of performance imposed to the embedded systems, with special emphasis to the mobile systems, are potentialized The popularity of the Java language in the embedded systems market is increasing as an alternative to the software compatibility necessity and the applications’ complexity growth, notably at consumption electronic and industrial automation, market which is also expanding. However, the characteristics of Java Virtual Machine, based upon a stack machine, open new possibilities to the optimization of embedded systems processing inherent to the stack machines and not yet properly explored by the actual Java processors. With the exploitation of binary translation to the Java code and the use of reconfiguration techniques, we can improve the performance with simultaneous energy savings, achieving achieving a better fit of Java applications execution to the embedded systems domain. This work presents a coarse grain reconfigurable unit, the Javarray, to be coupled to a native execution Java microcontroller, designed to the optimized execution of the embedded systems applications more representative basic blocks. With this, we can explore ILP in a simple way and reduce the number of the executed instructions up to 42%, improving the performance up to 2.6 times and saving energy up to 64%, at the same time in which allowing for Java compatibility and, in many cases, still having less power consumption. This data refer to a set of 3 specific applications used by our research group. The basic Javarray topology is developed from the analysis of the embedded application profiles, form which some organizational variations are explored. In special, it was designed a sequential architecture, which enables the use of pipeline techniques on the Javarray, allowing for the exploitation of coarser grains parallelism. As a secondary product of the search for the energy savings through the performance speedup – focus of this work – it is presented the first studies about the possibility of stream-based processing execution in a pipeline of reconfigurable instructions on the Javarray, this way increasing the IPC and reducing the static energy consumption impact.
|
506 |
Modelo de migração de tarefas para MPSoCs baseados em redes-em-chip / Task migration model for NoC-based MPSoCsBarcelos, Daniel January 2008 (has links)
Em relação a sistemas multiprocessados integrados em uma única pastilha (MPSoC), tanto a alocação dinâmica quanto a migração de tarefas são áreas de pesquisa recentes e abertas. Este artigo propõe uma organização de memória híbrida para sistemas com comunicação baseados em redes-em-chip, como maneira de minimizar a energia gasta durante a transferência de código decorrente de uma alocação ou migração de tarefa. É também introduzido um novo mecanismo de migração de tarefas, que, por sua vez, pode utilizar check-pointing ou outra técnica mais transparente. O aumento do uso de sistemas multiprocessados na computação embarcada torna importante a avaliação de diferentes organizações de memória. Enquanto memórias distribuídas proporcionam acessos mais rápidos, memórias compartilhadas tornam possível o compartilhamento de dados sem a interferência dos processadores. Nos experimentos realizados, foi focada a redução da energia gasta na comunicação em um contexto onde uma migração de tarefas ou uma alocação dinâmica fosse necessária. Os resultados indicam que, considerando a migração do código, a solução proposta apresenta melhor eficiência do que soluções unicamente distribuídas ou compartilhadas. Foi também verificado que, em alguns casos, a estratégia híbrida reduz os tempos de migração. Na solução apresentada, o código pode ser transferido do nó onde a tarefa era originalmente executada ou de uma memória posicionada no centro da rede. A escolha entre as duas opções é feita em tempo de execução de uma maneira intuitiva, sendo a escolha baseada na distância entre os nós envolvidos na transferência. Os resultados indicam que a organização proposta reduz a energia de transferência de código em 24% e 10% em média, se comparada, respectivamente, a soluções utilizando somente memória global ou distribuída. O modelo de migração de tarefas proposto é baseado na linguagem Java e na comunicação por troca de mensagens. Todo seu desenvolvimento se deu em software, não requerendo nenhuma modificação no sistema. O custo energético da migração foi então avaliado. Entende-se por custo energético a energia gasta nos processadores para envio e recebimento das mensagens e na estrutura de comunicação, uma rede-em-chip. Trabalhos já existentes não consideram o custo de migração, comparando apenas o arranjo inicial e final das tarefas no sistema. Este trabalho, entretanto, avalia todo o processo de migração. Através de experimentos, é estimado o tempo mínimo de execução da plataforma, como função do tamanho da tarefa e da distância entre os nós da rede, necessário para amortizar a energia gasta no processo de migração, considerando que os processadores utilizam a técnica de DVS para reduzir o consumo de acordo com suas cargas de processamento. / Regarding embedded Multi-processor Systems-on-Chip (MPSoCs), dynamic task allocation and task migration are still open research areas. This work proposes a hybrid memory organization for NoC-based systems as the way to minimize the energy spent during the code transfer when task migration or dynamic task allocation needs to be performed. It is also introduced a new flexible task migration mechanism, which can use check-pointing or a more transparent technique. The increasing use of multi-processor architectures in embedded computing makes it important to evaluate different options for memory organization. While distributed memory allows faster accesses, a global memory makes possible the sharing of data without processor interference. In the experiments, it is targeted the communication energy reduction in a context where task migration or dynamic task allocation is required. Results indicate that the proposed hybrid memory organization presents better efficiency than distributed- or global-only organizations regarding code migration. It is also noticed that, in some cases, the hybrid strategy reduces the task migration times. In the hybrid approach, the code can be transferred from the node where the task was originally running or from a memory positioned at the center of the system. The choice between the two options is done at runtime in a very intuitive way, based on the distance between the nodes involved on the transfer. Results are very encouraging and indicate that the proposed hybrid organization reduces the code transfer energy by 24% and 10% on average, as compared to global- and distributed-only memory organizations, respectively. The proposed migration model is based on the Java language and on message passing communication method. It is mainly software-based, and does not require any system modification. The energy cost of the migration process is then evaluated, i.e., the energy spent on the sending and receiving cores and on the communication structure, a wormhole-based Network-on-Chip (NoC). Previous works have compared system figures before and after task migration, while this study evaluates the whole migration process. Finally, it is derived the minimum execution time of the embedded system, as a function of the task size and of the distance between the cores on the NoC, that is required to amortize the energy spent on the migration process, considering that processors use Dynamic Voltage Scaling to reduce power consumption according to their current workloads.
|
507 |
Gerenciamento automático de recursos reconfiguráveis visando a redução de área e do consumo de potência em dispositivos embarcados / Automatic reconfigurable resources management aim to reduce area and power consumption on embedded systemsRutzig, Mateus Beck January 2008 (has links)
A complexidade dos sistemas embarcados está crescendo devido à agregação de funcionalidades em um único dispositivo eletrônico e a heterogeneidade de comportamento das aplicações que compõe estas funcionalidades agrava este cenário. Atualmente, os projetistas de processadores estão buscando outro paradigma de computação para ser empregado neste tipo de dispositivo. A aceleração da execução dos processadores Superescalares está estagnada, a extração do paralelismo no modelo Von- Neumann está chegando ao limite teórico. Arquiteturas Dataflow são uma possível solução para este problema, entretanto a área disponível em silício da tecnologia atual não comporta a implementação deste tipo de arquitetura. Arquiteturas reconfiguráveis aparecem como uma solução viável para a exploração de um alto nível de paralelismo, sendo factível a implementação deste tipo de arquitetura nas atuais tecnologias CMOS. Entretanto, a inserção do hardware reconfigurável ocasiona uma elevação na área ocupada e, conseqüentemente, na potência consumida. É neste cenário que este trabalho se insere. Uma arquitetura reconfigurável foi escolhida como estudo de caso, sendo acoplada a um processador MIPS R3000. Além disto, foi desenvolvida uma ferramenta que, automaticamente, constrói um hardware otimizado através da exploração de recursos necessários para obter o máximo grau de paralelismo da execução de um conjunto de aplicações. O acoplamento desta ferramenta com a técnica de tradução binária utilizada nesta arquitetura reconfigurável provê uma exploração estática/dinâmica. Estática pelo ponto de vista de construção de uma nova unidade reconfigurável otimizada em área antes da fabricação do chip. Dinâmica devido a adaptabilidade da execução do tradutor binário, após a fabricação da unidade otimizada gerada pela ferramenta, a unidade otimizada alcança as mesmas acelerações demonstradas na unidade não otimizada com uma menor área ocupada e potência consumida. Além disto, neste trabalho é demonstrado o impacto na potência consumida pelo sistema fornecido por uma técnica de desligamento de blocos da unidade funcional reconfigurável. Assim, as explorações da área e do consumo de potência demonstraram ser factível a inserção da arquitetura reconfigurável proposta em um dispositivo embarcado. / Nowadays, the large amount of complex and heterogeneous functionalities that are found on a single embedded device has driven designers to create novel solutions to increase the performance of embedded processors and, at the same time, maintain power dissipation as low as possible. While the instruction level parallelism exploitation is reaching the theoretical limit, Dataflow architectures are seen as a reasonable proposal to solve this problem. However, even for near future CMOS technologies, the price to pay for using such architectures is still too high. Reconfigurable architectures could be a possible solution to explore higher-levels of parallelism, and their deployment on current CMOS technologies is feasible. However, the fusion of a reconfigurable hardware with a general-purpose processor still implies in a high area overhead, besides the elevated power consumption. The proposal of this work is to couple static and dynamic techniques to achieve a low-power, high performance reconfigurable architecture that can show speed ups for several heterogeneous applications with the minimum possible area overhead. At design time, the static exploitation produces a new reconfigurable unit optimized in area. Thanks to the proposed dynamic reconfiguration mechanism, the optimized reconfigurable unit provides acceleration and low power dissipation, adapting to the different degrees of parallelism available in the application, and accelerating applications not foreseen at design time.
|
508 |
Femtonode : arquitetura de nó-sensor reconfigurável e customizável para rede de sensores sem fioAllgayer, Rodrigo Schmidt January 2009 (has links)
Com o crescimento e o desenvolvimento de aplicações para Redes de Sensores sem Fio (RSSF), os nós-sensores passaram a realizar o tratamento de eventos mais complexos, exigindo um maior desempenho de processamento e flexibilidade do hardware. Estas novas características visam atender os requisitos de diversas aplicações, assim como, apresentarem plataformas customizáveis que possuem somente os recursos necessários para atender estes requisitos. As RSSF, muitas vezes, necessitam de uma arquitetura flexível e que estejam aptas a adaptar-se a alterações de projeto ou do próprio ambiente em que se encontram inserido. A utilização de arquiteturas reconfiguráveis é uma solução que introduz esta flexibilidade e uma grande capacidade de processamento ao nó-sensor. Comparando com as arquiteturas ASICs (Application Specific Integrated Circuit), as arquiteturas reconfiguráveis apresentam um custo reduzido no desenvolvimento de aplicações, visto que a plataforma não fica fixa a somente uma aplicação. A reconfigurabilidade permite um ganho no custo e tempo de projeto, além de possibilitar o desenvolvimento de plataformas genéricas para atender um número maior de aplicações. A proposta destas plataformas é, não apenas oferecer uma plataforma eficiente e flexível, mas também potencializar a aplicação em sistemas mais complexos que necessitem de uma maior capacidade de processamento. Este trabalho apresenta o desenvolvimento de um nó-sensor reconfigurável e customizável para RSSF denominado FemtoNode. O FemtoNode possui em sua plataforma reconfigurável um processador especificado a partir de uma linguagem orientada a objetos Java e um módulo de comunicação sem fio para suportar comunicação entre os nós da rede. A arquitetura proposta foi validada com o estudo de caso de uma rede de sensores heterogênea composta por nós-sensores com plataformas distintas, sendo a análise realizada na presente dissertação. / With the growth and the development of new applications for Wireless Sensor Networks (WSN), sensors nodes are able to handle more complex events that require higher processing performance and hardware flexibility. These new features are intended to meet the requirements of various applications, as well to provide customized platforms that have only the resources needed to meet these requirements. WSNs often need a flexible architecture able to adapt to design and environment changes. The use of reconfigurable architectures is an alternative to bring more flexibility and more processing capability for the sensor-node. Compared with ASICs (Application Specific Integrated Circuit) architectures, which have a high cost in production setup, reconfigurable architectures enable a reduction in these costs because its architecture is not fixed to a single application. Reconfigurability allows a gain in the project costs and time development, and it enables the development of generic platforms to deal with a greater number of applications. Therefore, the proposal target architecture that aims to provide a flexible and efficient platform that require greater processing capacity which support the development of applications. In this work a reconfigurable and customizable sensor-node called FemtoNode is proposed. The FemtoNode has a reconfigurable platform and a wireless module to support applications for WSNs, using an object-oriented language Java as specification language of its architecture. The proposed concepts were validated with a case study of an heterogeneous wireless sensor composed of sensors nodes with different platforms, whose results are described in this work.
|
509 |
Avaliação do desempenho e consumo energético de diferentes interfaces de programação paralela em sistemas embarcados e de propósito geralLorenzon, Arthur Francisco January 2014 (has links)
Nos sistemas computacionais atuais, enquanto é necessário explorar a disponibilidade de múltiplos núcleos, também é obrigatório consumir menos energia. Para acelerar o processo de desenvolvimento de aplicações paralelas e o tornar mais transparente ao programador, Interfaces de Programação Paralela (IPPs) são largamente utilizadas. Entretanto, cada IPP implementa diferentes formas para trocar dados usando regiões compartilhadas da memória. Estas regiões são, geralmente, mais distantes do processador do que regiões privadas da memória e, por consequência, possuem maior tempo de acesso e consumo de energia. Ademais, o sistema de memória dos processadores embarcados é diferente em hierarquia, tamanho, tempo de acesso, consumo de energia, etc., quando comparado aos processadores de propósito geral. Assim, considerando o cenário supracitado, com diferentes IPPs sendo utilizadas em sistemas multicore com diferentes requisitos, neste trabalho será mostrado que cada interface possui comportamento diferente em termos de desempenho, consumo de energia e Energy-Delay Product (EDP), e que este comportamento varia de acordo com a característica da aplicação e o processador utilizado (propósito geral ou embarcado). Por exemplo, Pthreads consome 8% menos energia que o melhor caso de OpenMP; 12% menos que MPI-1; e 8% menos que MPI-2, considerando todos os benchmarks no processador Intel Core i7 (propósito geral). Em contrapartida, no processador ARM Cortex-A9 (sistema embarcado), o melhor caso com OpenMP consumiu 2% menos energia que Pthreads; 6% menos que MPI-1; e 15% menos que MPI-2, para o mesmo conjunto de benchmarks. / In current computer systems, while it is necessary to exploit the availability of multiple cores, it is also mandatory to consume less energy. To accelerate the development of parallel applications and to make it more transparent to the programmer, Parallel APIs (Application Programming Interfaces) are widely used. However, each Parallel API implements different ways to exchange data using shared memory regions. These regions are generally more remote than the private ones, and therefore have greater access time and energy consumption. Furthermore, the memory system of embedded processors is different with regard to hierarchy, size, access time, energy consumption, etc., when compared to general purpose processors. Thus, considering the above scenario, with different Parallel APIs being used in multicore systems with different requirements, this work will show that each interface has different behavior in terms of performance, energy consumption and Energy-Delay Product (EDP), and that this behavior varies according to the characteristic of the application and the processor employed (general purpose or embedded). For example, as a result of this work, we have observed that Pthreads consumes 8% less energy than the best case of OpenMP; 12% less than MPI-1; and 8% less than MPI-2, considering all benchmarks on the Intel Core i7 (general purpose). In contrast, in the ARM Cortex-A9 processor (embedded system), the best case with OpenMP consumed 2% less energy than Pthreads; 6% less than MPI-1; and 15% less than MPI-2 for the same benchmarks set.
|
510 |
Avaliação de desempenho de implementações em hardware e software de algoritmos para aplicações de manutenção inteligenteLazzaretti, Elisandra Pavoni January 2012 (has links)
No mercado altamente globalizado de hoje, a manutenção dos equipamentos tem se tornado um fator crucial para as empresas dos mais diversos segmentos. Técnicas de manutenção baseadas no nível de degradação dos equipamentos estão sendo preferidas em detrimento das técnicas tradicionais como manutenção corretiva e preventiva, e trazem benefícios como tempos de paradas reduzidos, tarefas de manutenção facilitadas e melhor gerenciamento de ativos. Com o desenvolvimento das técnicas de manutenção inteligente, os sistemas embarcados que comportarão estes algoritmos necessitarão cada vez mais de alta flexibilidade, combinada com alta velocidade de processamento e baixo consumo. Em outras palavras, eles tornam-se cada vez mais complexos, o que tem impacto direto no projeto destes sistemas. Neste contexto, a programação baseada em modelos em conjunto com a capacidade de geração automática de código para uma dada plataforma tem despertado grande interesse. O presente trabalho tem como objetivo realizar a análise dos espaços de projeto e também do desempenho de diferentes implementações para algoritmos de manutenção inteligente quando executados em hardware e software. A partir de implementações disponíveis nos ambientes MATLAB e LabVIEW™ de um sistema de manutenção inteligente chamado Watchdog Agent™, e utilizando ferramentas de geração automática de código, o desempenho dos sistemas de manutenção gerados é comparado usando-se parâmetros como tempo de execução e ocupação de memória ou da área do FPGA. Para os testes são utilizados dados de vibração coletados de uma bancada de testes composta por um atuador eletromecânico para válvulas. / In today’s highly globalized market, equipment maintenance has become a crucial factor for companies from several segments. Maintenance strategies based on equipment’s condition level are being preferred in place of traditional techniques such as corrective and preventive maintenance, and incur in benefits such as reduced downtime, facilitated maintenance tasks and better assets management. With the development of intelligent maintenance techniques, the embedded systems that will be used with such algorithms will need increasingly more flexibility, combined with high processing speed and low power consumption. In other words, they became increasingly more complex, what directly impact in their project. Within this context, model based engineering associated with automatic platform-specific code generation capabilities are of great interest. This work has as objective to perform a design space exploration by analyzing the performance of different implementations for intelligent maintenance algorithms when executed in hardware and software. Based on implementations available in MATLAB™ and LabVIEW™ environments of an intelligent maintenance system called Watchdog Agent, and using automatic code generation tools, the performance of the generated systems are compared using parameters such as execution time and memory or FPGA area occupation. For the validation tests, vibration data collected from a test bench composed by an electric mechanical actuator will be used.
|
Page generated in 0.0562 seconds