35 resultados para Arquiteturas recon


Relevância:

10.00% 10.00%

Publicador:

Resumo:

O sucesso da Internet como plataforma de distribuição de sistemas de informação encoraja organizações a disponibilizar serviços presentes em seus sistemas legados nesse ambiente. Uma parte desses sistemas foi desenvolvida na fase inicial do desenvolvimento das aplicações cliente/servidor para banco de dados, usando ambientes visuais com interfaces gráficas tipo WIMP, implementadas sob o paradigma procedimental/estruturado, baseado em objetos e eventos. Como conseqüência, produziu-se sistemas legados difíceis de manter, evoluir e adaptar a novas tecnologias e arquiteturas, pois os projetos desenvolvidos não seguiam, na maioria das vezes, os bons preceitos e práticas modernas defendidas na Engenharia de Software. O objetivo deste trabalho é propor uma metodologia para migrar sistemas legados com as características citadas acima para a plataforma Web. O processo de migração proposto destaca duas estratégias: a elaboração de modelos de classes conceituais da aplicação e o tratamento dado à interface do usuário, para serem utilizados na reconstrução de uma nova aplicação. O processo é baseado em técnicas e métodos de engenharia reversa, que visa obter abstrações por meio de análise estática e dinâmica da aplicação. Na análise dinâmica, destaca-se o mecanismo para recuperar aspectos dos requisitos funcionais do sistema legado e representá-los na ferramenta denominada UC/Re (Use Case para Reengenharia). Todos os artefatos gerados durante o processo podem ser armazenados em um repositório, representando os metamodelos construídos na metodologia. Para delimitar e exemplificar o processo, escolheu-se como domínio de linguagem de programação do software legado, o ambiente Delphi (sob a linguagem Object Pascal). É proposto também um ambiente CASE, no qual é descrito o funcionamento de um protótipo que automatiza grande parte das funcionalidades discutidas nas etapas do processo. Algumas ferramentas desenvolvidas por terceiros são empregadas na redocumentação do sistema legado e na elaboração dos modelos UML do novo sistema. Um estudo de caso, apresentando uma funcionalidade específica de um sistema desenvolvido em Delphi, no paradigma procedimental, é usado para demonstrar o protótipo e serve de exemplo para a validação do processo. Como resultado do processo usando o protótipo, obtém-se o modelo de classes conceituais da nova aplicação no formato XMI (formato padrão para exportação de modelos UML), e gabaritos de páginas em HTML, representando os componentes visuais da interface original na plataforma Web.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

As tarefas de visão computacional incentivam uma significativa parte da pesquisa em todas as áreas científicas e industriais, entre as quais, cita-se a área voltada para o desenvolvimento de arquiteturas de computadores. A visão computacional é considerada um dos problemas mais desafiadores para a computação de alto desempenho, pois esta requer um grande desempenho, bem como um alto grau de flexibilidade. A flexibilidade é necessária pois a visão computacional abrange aplicações em que há diferentes tarefas a serem realizadas com diferentes necessidades de desempenho. Esta flexibilidade é particularmente importante em sistemas destinados a atuar como ambientes experimentais para novas técnicas de processamento visual ou para a prototipação de novas aplicações. Computação configurável tem demonstrado, por meio de exemplos implementados pela comunidade científica, fornecer uma boa relação entre alto desempenho e flexibilidade necessária para a implementação de diferentes técnicas utilizadas na área de visão computacional. Contudo, poucos esforços de pesquisa têm sido realizados na concepção de sistemas completos visando a solução de um problema de visão computacional, incluindo ambos os requisitos de software e de hardware. O principal objetivo deste trabalho é mostrar que as técnicas e tecnologias disponíveis na área de computação configurável podem ser empregadas para a concepção de um sistema capaz de implementar um grande número de aplicações da área de visão computacional na pesquisa e no ambiente industrial. Entretanto, não é escopo deste trabalho implementar um sistema de computação que seja suficiente para abordar os requerimentos necessários para todas as aplicações em visão computacional, mas os métodos aqui introduzidos podem ser utilizados como uma base geral de implementação de várias tarefas de visão computacional. Este trabalho utiliza ambientes que permitem implementações conjuntas de hardware e software, pois os mesmos facilitam a validação das técnicas aqui apresentadas, por meio da implementação de um estudo de caso, sendo parte deste estudo de caso implementado em software e outra parte em hardware.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O presente trabalho tem por objetivo o estudo da arquitetura da Refinaria Alberto Pasqualini, que apresenta composição e linguagem modernas e é um dos edifícios pioneiros no uso de pré-moldados no Brasil. Primeiramente, analisa a Arquitetura Moderna européia, identificando suas características gerais, através dos exemplos dos grandes mestres (Gropius, Le Corbusier e Mies van der Rohe), enfocando principalmente a obra de Mies. A seguir, estuda a influência que estas arquiteturas tiveram no Brasil. Finalmente, demonstra o reflexo destas idéias no conjunto de edifícios da Refinaria Alberto Pasqualini, que mostra forte influência da arquitetura de Mies van der Rohe.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Neste estudo investigam-se as possibilidades de Cenários Educacionais Informatizados como alternativas estratégicas de uso de produtos da tecnologia informática para o desenvolvimento de processos cognitivos. São propostos indicadores de aprendizagem na forma de Pegadas Cognitivas. Tais Pegadas são o resultado gráfico de uma distribuição espacial de pontos correspondentes aos indicadores de aprendizagem e suas dimensões nos cenários pesquisados. Em cada caso, a “pegada” resulta da ligação entre tais pontos, formando um diagrama onde a disposição dos indicadores, comparando-se as situações ideal e real, permitiu avaliar o desvio em que se encontra a situação real, comparativamente à situação ideal. Sua construção permitiu simbolizar a provisoriedade de cada situação de aprendizagem e inspirar ações para as correções que se fizerem necessárias. Utilizaram-se: software de modelagem computacional – Modellus; espaços virtuais de comunicação – chat, e-mail, listas de discussão, whiteboard, forms, entre outros; Mapas Conceituais/Mentais; imagens e representações; ações ligadas às atividades endógenas permanentes dos aprendizes em função de seu imaginário e dos espaços virtuais e recursos da telemática em atividades de aprendizagem, na área de físico-química, visando ao estudo de como ocorrem as reações químicas. A partir dos resultados obtidos realizou-se o confronto entre as possibilidades reais do ambiente com o imaginado, sobre o tema, por alunos do ensino médio que integram o grupo denominado Grupo Imagem. O caminho que representa a linha mestra deste referencial teórico encontra-se nas Ciências Cognitivas no que se refere às questões relativas às formas de representação, às estratégias cognitivas utilizadas pelo sistema humano de processamento de informação e às aplicações de modelagem computacional em situações de aprendizagem. Considerou-se uma abordagem que leva em conta arquiteturas cognitivas e influências do meio ambiente sobre a capacidade humana de aprender. Aprender no sentido de assimilar novas informações, armazená-las e, ao acessá-las, desenvolver estratégias cognitivas que promovam a evolução das estruturas do conhecimento, numa dinâmica caracterizada pela inovação, pela capacidade humana de estar constantemente em mudança, através de ações situadas, contextualizadas, na Sociedade da Informação, geradora da Sociedade do Conhecimento. Tal sociedade impõe desafios a ser enfrentados com estratégias que permitam a todos, independente de sua situação na escala social, a acessibilidade e a mobilidade informacional e de tecnologias cada vez mais especializadas em todas as áreas, sejam acadêmicas, econômicas ou de bem-estar pessoal que produzam não apenas a mundialização de recursos materiais e físicos, mas que incluam as diferenças de pensamentos e ações que permitem aos seres humanos serem individuais e únicos em sua essência. A Aprendizagem à Distância – AAD – utilizada neste fazer investigatório evidenciou competência para solucionar as dificuldades relativas à flexibilidade dos programas disponíveis para compor cenários educacionais que privilegiem a aprendizagem significativa, em escolas de ensino médio, por exigirem novos posicionamentos e novas habilidades de educandos e de educadores. Entre as habilidades de aprendizagem individual e coletiva que os aprendizes devem possuir ou desenvolver para cooperar com o grupo em AAD, destacam-se: autonomia, responsabilidade, liderança, capacidade para negociação e decisão, capacidade de inferência, dedução, possibilidade de realização de análise e síntese, regras de conduta que permitam a convivência e as trocas de conhecimentos.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

A criptografia assumiu papel de destaque no cotidiano das pessoas, em virtude da necessidade de segurança em inúmeras transações eletrônicas. Em determinadas áreas, a utilização de hardware dedicado à tarefa de criptografia apresenta vantagens em relação à implementação em software, devido principalmente ao ganho de desempenho. Recentemente, o National Institute of Standards and Technology (NIST) publicou o novo padrão norte-americano de criptografia simétrica, chamado de Advanced Encryption Standard (AES). Após um período de aproximadamente 3 anos, no qual várias alternativas foram analisadas, adotou-se o algoritmo Rijndael. Assim, este trabalho apresenta um Soft IP do padrão AES, codificado em VHDL, visando a implementação em FPGA Altera. Todo o projeto foi construído com funções e bibliotecas genéricas, a fim de permitir a posterior implementação sobre outras tecnologias. Foram geradas duas versões: uma priorizando desempenho e outra priorizando a área ocupada nos componentes. Para cada uma das versões, produziu-se um circuito para encriptar e outro para decriptar. O desempenho alcançado em termos de velocidade de processamento superou todos os outros trabalhos publicados na área, sobre a mesma tecnologia. São apresentados os detalhes de implementação, arquiteturas envolvidas e decisões de projeto, bem como todos os resultados. A dissertação contém ainda conceitos básicos de criptografia e uma descrição do algoritmo Rijndael.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O presente trabalho expõe uma análise sobre duas arquiteturas disponíveis para o desenvolvimento de sistemas que utilizam a tecnologia de workflow. Estas arquiteturas são: a Arquitetura Baseada em Modelagem e Execução em um ùnico Ambiente e a Arquitetura Baseada em Modelagem e Execução e Ambientes Distintos. São expostas: características, vantagens e desvantagens destas arquiteturas. A Aquitetura Baseada em Modelagem e Expressões em Ambientes Distintos é analisada em seu principal ponto negativo: a falta de independência existente entre as apliciações e os processos modelados, bem como são discutidos os problemas que esta falta de independência gera no desenvolvimemto e manutenção das aplicações. Uma alternativa à dependência entre o motor de workflow (engine) e as aplicações é proposta para a Arquitetura Baseada na Modelagem e Execução em Ambientes Distintos. Esta proposta é baseada em um modelo que consiste de uma Camada Intermediária, armazenada em um banco de dados relacional, capaz de extender as funcionalidades do motor de workflow. Este banco de dados armazena toda a estrrutura dos processos modelados, sendo responsável pela função que atualmente é repassada às aplicações: o controle da lógica dos processos. Estes trabalho produziu de uma Camada Intermediária, dividida em Camada de Independência (suportando a independência) e Camada de Integrgação (responsável pela comunicação com o motor de workflow). O estudo apresentada as estruturas do banco de dados, as funções disponibilizadas pela API da Camada Intermediária e um pequeno protótipo para dedmonstrar a arquitetura proposta.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Muitos aplicativos atuais, envolvendo diversos domínios de conhecimento, são estruturados como arquiteturas de software que incorporam, além dos requisitos funcionais, requisitos não funcionais, como segurança, por exemplo. Tais requisitos podem constituir um domínio próprio, e, portanto, serem comuns a várias outras arquiteturas de software. Tecnologias como Programação Orientada a Aspectos, Reflexão Computacional e Padrões de Projeto colaboram no desenvolvimento de arquiteturas que provêem a separação de requisitos não funcionais. Porém, sua experimentação e adoção no domínio da segurança computacional ainda é incipiente. O foco deste trabalho é a elaboração de um padrão de projeto voltado à segurança, utilizando como arquitetura conceitual programação orientada a aspectos, e como arquitetura de implementação, reflexão computacional. A composição destas tecnologias resulta em um middleware orientado à segurança, voltado a aplicações desenvolvidas em Java. Estuda-se as tecnologias, seus relacionamentos com a área de segurança, seguido da proposta de uma arquitetura de referência, a partir da qual é extraído um protótipo do middleware de segurança. Este, por sua vez, provê mecanismos de segurança tão transparentes quanto possível para as aplicações que suporta. Com o objetivo de realizar a implementação do middleware de segurança, também são estudadas os mecanismos de segurança da plataforma Java, porém limitado ao escopo deste trabalho. Segue-se o estudo da base conceitual das tecnologias de Reflexão Computacional, o modelo de implementação, seguido de Programação Orientada a Aspectos, o modelo conceitual, e, por fim, têm-se os Padrões de Projeto, a arquitetura de referência. Integrando as três tecnologias apresentadas, propõe-se um modelo, que estabelece a composição de um Padrão Proxy, estruturado de acordo com a arquitetura reflexiva. Este modelo de arquitetura objetiva implementar o aspecto de segurança de acesso a componentes Java, de forma não intrusiva,. Baseado no modelo, descreve-se a implementação dos diversos elementos do middleware, estruturados de forma a ilustrar os conceitos propostos. Ao final, apresenta-se resultados obtidos durante a elaboração deste trabalho, bem como críticas e sugestões de trabalhos futuros.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O objetivo deste trabalho é a definição de um conjunto de roteiros para o ensino de arquitetura de computadores com enfoque em arquiteturas superescalares. O procedimento é baseado em simulação e verificação da influência dos parâmetros arquiteturais dos processadores, em termos funcionais e de desempenho. É dada ênfase a conceitos como memória cache, predição de desvio, execução fora de ordem, unidades funcionais e etc. Através do estudo e avaliação dos parâmetros que constituem estes conceitos, procurava-se através dos roteiros identificar as configurações com melhor desempenho. Para a implementação destes roteiros é dotado o conjunto de ferramentas de simulação SimpleScalar. Este conjunto, além de estar disponibilizado em código aberto na página oficial das ferramentas, traz como vantagem a possibilidade de alteração do código para fins de pesquisa. Este trabalho e os roteiros que o compõem têm como objetivos auxiliar professores e estimular os alunos através de simulações, como forma didática de testar conceitos vistos em sala de aula. Os roteiros são apresentados com os respectivos resultados de simulação e incrementados com comentários e sugestões de um conjunto de perguntas e respostas para que o trabalho possa ter continuidade necessária, partindo da sala de aula para a simulação, busca de respostas e culminando com um relatório final a ser avaliado.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

O fornecimento de facilidades de QoS em redes de computadores tem por objetivo introduzir níveis das garantias que são ausentes, por exemplo, no paradigma de melhor-esforço das redes IP. Diferentes arquiteturas de QoS possuem padrões diferentes para os serviços fornecidos, que conduzem a um cenário em que a QoS prevista não possa ser sempre fornecida corretamente pela arquitetura utilizada. Neste contexto, uma monitoração da QoS é necessária para verificar a QoS observada e para compará-la com a QoS esperada/ contratada. Em uma rede que utilize gerenciamento baseado em políticas, a QoS esperada é definido pelas políticas que regem o comportamento da rede. O Internet Engineering Task Force (IETF) tem padronizado vários elementos para um sistema de gerenciamento de redes baseado em políticas (PBNM), no qual políticas são definidas utilizando-se linguagem de alto nível, armazenadas em repositórios para políticas, aplicadas com o auxilio de Policy Decision Points (PDPs) e mantidas por Enforcement Points (PEPs). Pela definição do IETF, uma vez que uma política é aplicada com sucesso, o sistema de PBNM não mais checará o comportamento desta, e a QoS definida é assumida com a fornecida pela rede. De fato, isso nem sempre é verdade. A arquitetura da qual provém a QoS pode apresentar-se instável ou mediante problemas, logo a QoS esperada não seria atingida. Para verificar a degradação na QoS em ambientes de gerenciamento reais, atualmente, o administrador da rede monitora a rede e determina a QoS fornecida. Tal QoS é, por sua vez, manualmente comparada com a QoS definida pelas políticas de rede. Finalmente, se diferenças são encontradas, o administrador procede com medidas que levem a arquitetura a um estado consistente Nos dias de hoje, as definições e aplicações de políticas e monitoração de QoS são tarefas executadas separadamente pelas soluções disponíveis. Além disso, como demonstrado anteriormente, a verificação da QoS fornecida contra a QoS definida pelas políticas da rede é deixada a cargo do administrador da rede. Nesse contexto, a automação da monitoração das políticas de QoS e a integração entre as tarefas citadas são necessárias do ponto de vista do administrador da rede. Nesta dissertação, é proposta uma definição (e um sistema) para a monitoração de QoS em que as definições de políticas são dados de entrada utilizados para checar a QoS observada. No momento em que uma degradação na QoS é detectada, o sistema de monitoração notifica um gerente com suporte a SNMP utilizando mensagens do tipo InformRequest. A arquitetura do sistema é dividida internamente em monitores de QoS e controladores de monitores de QoS. Cada controlador de monitor de QoS controla vários monitores de QoS, os quais coletam dados da rede. Tais dados são comparados com as políticas traduzidas pelo controlador, e, caso sejam detectadas degradações, o controlador de monitor de QoS notifica o gerente. A comunicação entre controlador de monitores de QoS e monitores de QoS também é baseada em SNMP. O principal objetivo do trabalho é fornecer uma solução que integre monitoração de QoS e PBNM em um único ambiente de gerenciamento.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The rapid growth of urban areas has a significant impact on traffic and transportation systems. New management policies and planning strategies are clearly necessary to cope with the more than ever limited capacity of existing road networks. The concept of Intelligent Transportation System (ITS) arises in this scenario; rather than attempting to increase road capacity by means of physical modifications to the infrastructure, the premise of ITS relies on the use of advanced communication and computer technologies to handle today’s traffic and transportation facilities. Influencing users’ behaviour patterns is a challenge that has stimulated much research in the ITS field, where human factors start gaining great importance to modelling, simulating, and assessing such an innovative approach. This work is aimed at using Multi-agent Systems (MAS) to represent the traffic and transportation systems in the light of the new performance measures brought about by ITS technologies. Agent features have good potentialities to represent those components of a system that are geographically and functionally distributed, such as most components in traffic and transportation. A BDI (beliefs, desires, and intentions) architecture is presented as an alternative to traditional models used to represent the driver behaviour within microscopic simulation allowing for an explicit representation of users’ mental states. Basic concepts of ITS and MAS are presented, as well as some application examples related to the subject. This has motivated the extension of an existing microscopic simulation framework to incorporate MAS features to enhance the representation of drivers. This way demand is generated from a population of agents as the result of their decisions on route and departure time, on a daily basis. The extended simulation model that now supports the interaction of BDI driver agents was effectively implemented, and different experiments were performed to test this approach in commuter scenarios. MAS provides a process-driven approach that fosters the easy construction of modular, robust, and scalable models, characteristics that lack in former result-driven approaches. Its abstraction premises allow for a closer association between the model and its practical implementation. Uncertainty and variability are addressed in a straightforward manner, as an easier representation of humanlike behaviours within the driver structure is provided by cognitive architectures, such as the BDI approach used in this work. This way MAS extends microscopic simulation of traffic to better address the complexity inherent in ITS technologies.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

This thesis presents DCE, or Dynamic Conditional Execution, as an alternative to reduce the cost of mispredicted branches. The basic idea is to fetch all paths produced by a branch that obey certain restrictions regarding complexity and size. As a result, a smaller number of predictions is performed, and therefore, a lesser number of branches are mispredicted. DCE fetches through selected branches avoiding disruptions in the fetch flow when these branches are fetched. Both paths of selected branches are executed but only the correct path commits. In this thesis we propose an architecture to execute multiple paths of selected branches. Branches are selected based on the size and other conditions. Simple and complex branches can be dynamically predicated without requiring a special instruction set nor special compiler optimizations. Furthermore, a technique to reduce part of the overhead generated by the execution of multiple paths is proposed. The performance achieved reaches levels of up to 12% when comparing a Local predictor used in DCE against a Global predictor used in the reference machine. When both machines use a Local predictor, the speedup is increased by an average of 3-3.5%.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

In this thesis, we present a novel approach to combine both reuse and prediction of dynamic sequences of instructions called Reuse through Speculation on Traces (RST). Our technique allows the dynamic identification of instruction traces that are redundant or predictable, and the reuse (speculative or not) of these traces. RST addresses the issue, present on Dynamic Trace Memoization (DTM), of traces not being reused because some of their inputs are not ready for the reuse test. These traces were measured to be 69% of all reusable traces in previous studies. One of the main advantages of RST over just combining a value prediction technique with an unrelated reuse technique is that RST does not require extra tables to store the values to be predicted. Applying reuse and value prediction in unrelated mechanisms but at the same time may require a prohibitive amount of storage in tables. In RST, the values are already stored in the Trace Memoization Table, and there is no extra cost in reading them if compared with a non-speculative trace reuse technique. . The input context of each trace (the input values of all instructions in the trace) already stores the values for the reuse test, which may also be used for prediction. Our main contributions include: (i) a speculative trace reuse framework that can be adapted to different processor architectures; (ii) specification of the modifications in a superscalar, superpipelined processor in order to implement our mechanism; (iii) study of implementation issues related to this architecture; (iv) study of the performance limits of our technique; (v) a performance study of a realistic, constrained implementation of RST; and (vi) simulation tools that can be used in other studies which represent a superscalar, superpipelined processor in detail. In a constrained architecture with realistic confidence, our RST technique is able to achieve average speedups (harmonic means) of 1.29 over the baseline architecture without reuse and 1.09 over a non-speculative trace reuse technique (DTM).

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Atualmente, um dos grandes desafios para qualquer desenvolvedor de software é projetar um sistema que reutilize ao máximo elementos de código e de projeto existentes, visando diminuir o tempo e o esforço exigidos na produção do software. Entre as inúmeras formas de possibilitar reuso no contexto do desenvolvimento segundo o paradigma da orientação a objetos, destaca-se a abordagem de frameworks. A grande importância da documentação de software utilizada no processo de desenvolvimento aliada às características de frameworks serviram como motivação para este trabalho. A documentação dentro do processo de desenvolvimento de software não faz parte de uma fase definida, mas ocorre durante toda sua existência, em paralelo com outras fases do ciclo de vida. A abordagem de frameworks dentro deste contexto enfoca o tratamento de templates e definições das características dos artefatos de software (incluindo não somente código mas também produtos de análise, projeto, frameworks, componentes, diagramas, entre outros), facilitando e acelerando o processo de documentação. Um framework, devido a suas características peculiares que serão examinadas e explicitadas no trabalho, contém uma série de informações que podem, além de apoiar a documentação, ser úteis para produção de outros artefatos (por exemplo, planejamentos de teste, scripts de bancos de dados, padrões de codificação, entre outros) do processo de desenvolvimento. Assim, em um processo de desenvolvimento evolutivo, que utiliza a geração de artefatos como recurso, a manutenção pode ser integralmente realizada somente na especificação e não diluída nos artefatos gerados. O objetivo deste trabalho é investigar, propor e desenvolver uma ferramenta de documentação e geração de artefatos de software, denominado FrameworkDoc. O termo documentação de software aqui utilizado se refere a documentação de desenvolvimento de software, incluindo artefatos, arquiteturas, ferramentas entre outros. Serão abordados dois principais aspectos: primeiramente, a geração automática de documentação dentro do processo de desenvolvimento de software e depois a geração de outros artefatos deste processo, a partir das definições de alto nível disponíveis através do framework. Exemplos de aplicações do FrameworkDoc em projetos reais são apresentados. No entanto, os documentos e artefatos de software considerados foram definidos de forma suficientemente genérica para serem aproveitados em outros contextos.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

Com as recentes tecnologias de fabricação é possível integrar milhões de transistores em um único chip, permitindo a criação dos chamados System-on-Chip (SoCs), que integram em um único chip um grande número de componentes (tipicamente blocos reutilizáveis conhecidos por núcleos). Quanto mais complexos forem estes sistemas, melhores técnicas de projeto serão necessárias para também reduzir o tempo e custo do projeto. Uma destas técnicas, chamada de Network-on-Chip (NoC), permite melhorar a performance da comunicação entre os núcleos e, ao mesmo tempo, fornecer uma plataforma de comunicação escalável e que pode ser reutilizada para um grande número de sistemas. Uma NoC pode ser definida como uma estrutura de roteadores e canais ponto-a-ponto que interconectam os núcleos de um sistema, provendo o suporte de comunicação entre eles. Os dados são transmitidos pela rede na forma de mensagens, que podem ser divididas em unidades menores chamadas de pacote. Uma das desvantagens desta plataforma de comunicação é o impacto na área do sistema causado pelos roteadores. Dentro deste contexto, este trabalho apresenta uma arquitetura de roteador de baixo custo, com o objetivo de permitir o uso de NoCs em sistemas onde a área do roteador representará um grande impacto no custo do sistema. A arquitetura deste roteador, chamado de Tonga, é baseada em um roteador chamado RASoC, um soft-core para SoCs. Nesta dissertação será apresentada também uma rede heterogênea, baseada na rede SoCIN, e composta por dois tipos de roteadores – RASoC e Tonga. Estes roteadores visam diferentes objetivos: Rasoc alcança uma maior performance comparada ao Tonga, mas ocupa área consideravelmente maior. Potencialmente, uma NoC heterogênea otimizada pode ser desenvolvida combinando estes roteadores, procurando o melhor compromisso entre área e latência. Os modelos desenvolvidos permitem a estimativa de área e do desempenho das arquiteturas de comunicação propostas e são apresentados resultados de performance para algumas aplicações.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

The work described in this thesis aims to support the distributed design of integrated systems and considers specifically the need for collaborative interaction among designers. Particular emphasis was given to issues which were only marginally considered in previous approaches, such as the abstraction of the distribution of design automation resources over the network, the possibility of both synchronous and asynchronous interaction among designers and the support for extensible design data models. Such issues demand a rather complex software infrastructure, as possible solutions must encompass a wide range of software modules: from user interfaces to middleware to databases. To build such structure, several engineering techniques were employed and some original solutions were devised. The core of the proposed solution is based in the joint application of two homonymic technologies: CAD Frameworks and object-oriented frameworks. The former concept was coined in the late 80's within the electronic design automation community and comprehends a layered software environment which aims to support CAD tool developers, CAD administrators/integrators and designers. The latter, developed during the last decade by the software engineering community, is a software architecture model to build extensible and reusable object-oriented software subsystems. In this work, we proposed to create an object-oriented framework which includes extensible sets of design data primitives and design tool building blocks. Such object-oriented framework is included within a CAD Framework, where it plays important roles on typical CAD Framework services such as design data representation and management, versioning, user interfaces, design management and tool integration. The implemented CAD Framework - named Cave2 - followed the classical layered architecture presented by Barnes, Harrison, Newton and Spickelmier, but the possibilities granted by the use of the object-oriented framework foundations allowed a series of improvements which were not available in previous approaches: - object-oriented frameworks are extensible by design, thus this should be also true regarding the implemented sets of design data primitives and design tool building blocks. This means that both the design representation model and the software modules dealing with it can be upgraded or adapted to a particular design methodology, and that such extensions and adaptations will still inherit the architectural and functional aspects implemented in the object-oriented framework foundation; - the design semantics and the design visualization are both part of the object-oriented framework, but in clearly separated models. This allows for different visualization strategies for a given design data set, which gives collaborating parties the flexibility to choose individual visualization settings; - the control of the consistency between semantics and visualization - a particularly important issue in a design environment with multiple views of a single design - is also included in the foundations of the object-oriented framework. Such mechanism is generic enough to be also used by further extensions of the design data model, as it is based on the inversion of control between view and semantics. The view receives the user input and propagates such event to the semantic model, which evaluates if a state change is possible. If positive, it triggers the change of state of both semantics and view. Our approach took advantage of such inversion of control and included an layer between semantics and view to take into account the possibility of multi-view consistency; - to optimize the consistency control mechanism between views and semantics, we propose an event-based approach that captures each discrete interaction of a designer with his/her respective design views. The information about each interaction is encapsulated inside an event object, which may be propagated to the design semantics - and thus to other possible views - according to the consistency policy which is being used. Furthermore, the use of event pools allows for a late synchronization between view and semantics in case of unavailability of a network connection between them; - the use of proxy objects raised significantly the abstraction of the integration of design automation resources, as either remote or local tools and services are accessed through method calls in a local object. The connection to remote tools and services using a look-up protocol also abstracted completely the network location of such resources, allowing for resource addition and removal during runtime; - the implemented CAD Framework is completely based on Java technology, so it relies on the Java Virtual Machine as the layer which grants the independence between the CAD Framework and the operating system. All such improvements contributed to a higher abstraction on the distribution of design automation resources and also introduced a new paradigm for the remote interaction between designers. The resulting CAD Framework is able to support fine-grained collaboration based on events, so every single design update performed by a designer can be propagated to the rest of the design team regardless of their location in the distributed environment. This can increase the group awareness and allow a richer transfer of experiences among them, improving significantly the collaboration potential when compared to previously proposed file-based or record-based approaches. Three different case studies were conducted to validate the proposed approach, each one focusing one a subset of the contributions of this thesis. The first one uses the proxy-based resource distribution architecture to implement a prototyping platform using reconfigurable hardware modules. The second one extends the foundations of the implemented object-oriented framework to support interface-based design. Such extensions - design representation primitives and tool blocks - are used to implement a design entry tool named IBlaDe, which allows the collaborative creation of functional and structural models of integrated systems. The third case study regards the possibility of integration of multimedia metadata to the design data model. Such possibility is explored in the frame of an online educational and training platform.