Tolerância a falhas em Sistemas Baseados em FPGAs Reconfiguráveis

Slides:



Advertisements
Apresentações semelhantes
Desenvolvimento de Sistemas
Advertisements

Sistemas Distribuídos
MATRIZES DE PORTAS PROGRAMÁVEIS NO CAMPO (FPGA)
Algoritmos distribuídos para ambientes virtuais de larga escala
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
Objetivos do Capítulo Utilizar o processo de desenvolvimento de sistemas delineado neste capítulo e o modelo de componentes de SI, do Capítulo 1, como.
Gestão e Governança de TI Parte 06
SISTEMAS DE INFORMAÇÃO
Engenharia de Software
Prototipação de Software
ARQUITETURA DE COMPUTADORES II
Viviane Torres da Silva
Aspectos de Confiabilidade na Seminário de Andamento - SA
Carolina Fonseca Neumar Ribeiro
MOSTRA DE TRABALHOS DE CONCLUSÃO FACULDADE DE INFORMÁTICA PUCRS
Fabio Notare Martins Pontifícia Universidade Católica do Rio Grande do Sul Programa de Pós-Graduação em Ciências da Computação.
On-line Testing of Globally Asynchronous Circuits D. Shang, A
PSEUDO-ONLINE TESTING METHODOLOGIES FOR VARIOUS COMPONENTS OF FIELD PROGRAMMABLE GATE ARRAYS L. Kalyan Kumar, Aditya S. Ramani, Amol J. Mupid, V. Kamakoti*
Dispositivos de Lógica Programável
Dispositivos Lógicos Programáveis (PLD)
ESTRUTURA DE COMUNICAÇÃO DE DADOS
RAID (Matrizes Redundantes de Discos Independentes)
Projeto Final - APGS Adriana P. de Medeiros
Sistemas Operacionais I
Da Biblioteca Virtual para a Biblioteca Real
REDUNDÂNCIA POR SOFTWARE
Carlos Eduardo Calvente Ribeiro Universidade Federal do Rio de Janeiro
FPGA e CPLD.
Universidade São Marcos Curso: Gestão de Negócios Internacionais
SISTEMAS OPERACIONAIS
Dispositivos Lógicos Programáveis (DLP) Ideia e Arquiteturas
Ethos: Sistema Distribuído para Suporte ao Comitê de Ética em Pesquisa Autor: Rodrigo Stefani Domingues Orientador: Prof. Dr. Carlos M. T. Toledo Faculdade.
Engenharia Elétrica Sistemas Digitais
Sistemas Distribuídos
Carlos Oberdan Rolim Ciência da Computação
Carlos Oberdan Rolim Ciência da Computação
Integrantes Gisely C. Oliveira Marcelo C. Ribeiro Maria Ap. Ferreira Rafael Vaz Walisson Junior Wesley C. Gomes.
SISTEMAS OPERACIONAIS
CCNA 1 – Comutação Ethernet
Gerencia de Redes Redes de Computadores II
Tolerância a Falhas em Sistemas Distribuídos
Desenvolvimento de um Controle Reconfigurável para Sistemas de Tempo Real Crítico Sistema para aplicações em Mecatrônica e Automobilística.
BD Distribuído Conceitos Iniciais.
Sistemas Operacionais
SISTEMAS OPERACIONAIS I
Sistemas Operacionais
Sistemas Operacionais
Sistemas Operacionais
Desde o atendimento de cabeamento estruturado, gerenciamento de redes, atendimento ao usuário e estrutura de rede local, manutenção em impressoras.
Sistemas Tolerantes a Falhas: Conceitos e Técnicas
Processos.
Sistemas Espaciais de Computadores. Introdução Definindo o Sistema –Requisitos, Arquitetura, Elementos do Sistema Estimação dos Recursos –Processamento.
Sistemas Operacionais
Subsistema de Entrada e Saída do Kernel
ITIL - Introdução Prof. Fabiano Sabha.
Desenvolvimento de Software Dirigido a Modelos
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE AULA 5
Abr-17 Projetar Processos Projetar distribuição.
Engenharia de Sistemas Embarcados Aula 5: Um Conjunto Básico de Ferramentas.
Computação Autônoma no InteGrade Raphael Y. de Camargo (IME-USP) Janeiro de 2004.
Logística Integrada Engenharia de Produção
Arquitetura de Software Projetos de Interface
Bancos de Dados Fundamentos Prof. Marcos R. Cardoso.
UCSal – Bacharelado em Informática Banco de Dados Profa. Semíramis Assis
Projetar Processos. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar distribuição | 2 Descrição do Projeto.
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Copyright © 2011 Ramez Elmasri and Shamkant Navathe slide 1 Tópicos  Introdução  Um exemplo  Características da abordagem de banco de dados  Vantagens.
Escalonamento de Operações de Reconfiguração Dinâmica Mestrado Integrado em Engenharia Eletrotécnica e de Computadores Aluno: Ricardo Ferreira Orientador:
Transcrição da apresentação:

Tolerância a falhas em Sistemas Baseados em FPGAs Reconfiguráveis Pontifícia Universidade Católica do Rio Grande do Sul PPGCC - Faculdade de Informática Tolerância a falhas em Sistemas Baseados em FPGAs Reconfiguráveis Luciano Rigelo Azevedo Confiabilidade de Sistemas Prof. Eduardo Bezerra

Sumário Introdução Particionamento do Projeto Físico Exemplo Benefícios Funcionamento da técnica Synthesis Methods Ilustração dos Tiles Conclusão

Introdução FPGAs: prototipação, emulação lógica e aplicações de baxíssimo volume Atualmente são utilizadas em aplicações comerciais Aplicações espaciais (Mars Pathfinder 1996, Phoenix Mars 2007) Requerimentos de confiabilidade altíssimos Avanço tecnológico reduz a confiabilidade das FPGAs Menores componentes internos sucetiveis a radiação Chips maiores introduzem maiores oportunidades de falha Tradicionalmente as soluções aplicadas são: Redundância, replicação de componentes (ASICs, processadores e etc) Replicação da lógica interna dos chips (BISR)

Introdução Replicação não é muito utilizado no FPGA (reduz o número de portas lógicas) Possível solução seria utilizar os recursos disponíveis no FPGA Conceitualmente se um bloco lógico falha é possível encontrar um circuito alternativo Ferramentas de “Place and Route” refazem o mapeamento Alto tempo de execução do procedimento Não atende aos requisitos de sistemas de tempo real Usuário final teria que possuir as ferramentas e o conhecimento Inviável na prática

Particionamento do Projeto Fisico A idéia é aumentar a confiabilidade mantendo um baixo overhead no sistema Arquitetura alvo utiliza FPGAs composta por CLBs (configuration Logic Blocks) Particionar o projeto físico em tiles Cada bloco é composto por: Recursos físicos (CLBs e interconexões) Especificação de interface com os blocos vizinhos Netlist Confiabilidade é alcançada através de configurações multiplas de cada tile A interface de cada tile é fixa, ou seja, alterar um tile internamente não afetas os tiles vizinhos

Exemplo Considerando a função: Sendo um tile com 4 CLBs Y = (A ˅ B) ˅ (C ˄ D) Sendo um tile com 4 CLBs 3 CLBs ocupados e 1 de reserva Alteração na configuração interna do tile não afeta a interface com os tiles vizinhos

Exemplo

Benefícios Três benefícios principais Baixíssimo overhead Gerenciamento em tempo de execução Totalmente flexivel O custo de implementação da técnica é menor que o custo de um sistema redundante Execução on line, maior disponibilidade Técnica genérica compatível com soluções específicas da aplicação Grau de confiabilidade depende do requisitos de tempo, disponibilidade de recursos e da confiabilidade do CLB

Funcionamento Objetivo: Parcialmente reconfigurar o FPGA para uma alternativa sem falha Se a nova configuração implementa a mesma função sem utilizar o bloco em falha, o sistema pode ser reiniciado Desafio: encontrar a configuração alternativa eficientemente Tiles Conjunto de CLBs e recursos interconectados Netlist utilizada nos CLBs e as configurações de roteamento das conexões Especificação da interface com os tiles adjacentes Atomic Fault Tolerant Block – AFTB É um tile com no mínimo um CLB reserva

Funcionamento Tile esta associado a recursos físicos do FPGA e a um porção da netlist completa do projeto O Projeto só pode ser particionado em tiles depois que toda a netlist passou pelo processo de place-and-route Tolerância a falhas é alcançada através de recursos reservas em cadas AFTB Cada tile tem um conjunto de AFTBs Vantagem do particionamento Armazenar o conjunto de AFTBs ocupa menos memória do que armazenar um conjunto de configurações completas

Funcionamento Exemplo: Um sistema deve tolerar falhas em qualquer CLB em um sistem composto por uma matriz de 6 x 6 CLBs. Sem tiles seriam necessários 36 configurações É possível dividir o sistema em 4 tiles de 3 x 3 CLBs Cada tile possui 9 ATFBs Redução na área de armazenamento de 75% Sem tile sistema suporta apenas um CLB em falha Com tile sistema suporta 1 CLB em falha para cada tile

Funcionamento Exemplo:

Synthesis Methods Tipo Top Down Inicia-se com um projeto não tolerante a falhas Recursivamente o projeto é dividido em tiles e AFTBs Análise de aplicabilidade de todas as possíveis falhas Remover as soluçõas não aplicaveis ao projeto

Synthesis Methods

Ilustração dos Tiles

Ilustração dos Tiles

Conclusão Aumento da confiabilidade Redundância com recursos internos Sistema on line Baixo overhead Problema: A detecção de falhas deve ser capaz de detectar falhas no mapa de arquitetura do sistema