DIG222802 2017 1 AULA14

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar

Apresentação

Olá Alunos,

Nas semanas que passaram realizamos os laboratórios de Modelsim/Quartus. Hoje vamos mostrar algum conceitos sobre FPGA, o que são estes dispositivos integrados, suas principais características e como funcionam. Desta forma, finalizamos nossas atividades de aulas teóricas de novos conteúdos.

Preparem-se para as últimas avaliações!

Prof. Douglas A.

Objetivo

  • Apresentar o FPGA.

FPGA

O artigo que vocês verão a seguir, foi retirado na íntegra do site da National Instruments e que trata da tecnologia FPGA (Field-Programmable Gate Array).

Desde sua invenção em 1984 pela Xilinx, os FPGAs passaram de um simples chip de lógica personalizada até realmente substituir circuitos integrados de aplicações específicas (application-specific integrated circuits – ASIC) personalizadas para processamento de sinais e aplicações de controle. Por que essa tecnologia foi tão bem sucedida? Este artigo fornece uma introdução ao FPGA e destaca alguns dos benefícios que fazem FPGAs únicos.


O que é um FPGA?

FPGAs são chips de silício reprogramáveis que usa blocos lógicos programáveis pré-construídos que tem recursos de roteamento, você pode configurar esses chips para implementar funcionalidades personalizadas de hardware, sem nunca ter que pegar em uma placa de montagem ou ferro de solda. Você desenvolve tarefas de computação digital em software e as compila em um arquivo de configuração ou bitstream que contém informações sobre como os componentes devem ser ligados entre si. Além disso, os FPGAs são totalmente reconfiguráveis e imediatamente assumem uma nova "personalidade" quando você recompila uma nova configuração de circuito. No passado, a tecnologia FPGA só estava disponível para engenheiros com uma profunda compreensão do projeto de hardware digital. O surgimento de ferramentas de projeto de alto nível, no entanto, está mudando as regras da programação FPGA, com as novas tecnologias que convertem diagramas de blocos gráficos ou mesmo código em C em circuitos de hardware digital.

A adoção de chips FPGA em todos os setores é dirigida pelo fato dos FPGAs combinarem as melhores partes do ASIC a sistemas baseados em processador. Os FPGAs oferecem confiabilidade e velocidade na temporização por hardware, mas não exigem grandes volumes para justificar o grande gasto inicial de um projeto ASIC personalizado. O silício reprogramável também tem a mesma flexibilidade de um software rodando em um sistema baseado em processador, mas não é limitado pelo número de núcleos de processamento disponível. Ao contrário de processadores, os FPGAs são verdadeiramente paralelos por natureza, de modo que diferentes operações de processamento não têm que cosumir os mesmos recursos. Cada tarefa independente de processamento é atribuído a uma seção dedicada do chip, e pode funcionar de forma autônoma, sem qualquer influência de outros blocos lógicos. Como resultado, o desempenho de uma parte da aplicação não é afetada quando um processamento adicional é inserido.

Benefícios da tecnologia FPGA

Os benefícios da tecnologia FPGA podem, basicamente, ser divididos em cinco grupos: Desempenho, Tempo de mercado, Custo, Confiabilidade e Manutenção a longo prazo.


Desempenho

Aproveitando-se do paralelismo do hardware, os FPGAs excedem o poder dos processadores digitais de sinais (digital signal processors – DSPs) quebrando o paradigma de execução sequencial e realizando mais por um ciclo de clock. A BDTI, uma notável empresa de realização de benchmarks, lançou benchmarks mostrando como os FPGAs podem oferecer muitas vezes o poder de processamento por dólar de uma solução DSP em algumas aplicações. Controlar entradas e saídas (E/S) no nível do hardware fornece tempos de resposta muito mais rápidos devido à funcionalidades especializadas para aproximar aos requisitos da aplicação.


Tempo de mercado

A tecnologia FPGA oferece flexibilidade e rapidez na capacidade de prototipagem em face as crescentes preocupações sobre o tempo de mercado. Você pode testar uma idéia ou conceito e verificar no hardware sem passar pelo longo processo de fabricação de um projeto personalizado com ASIC. Você pode então implementar mudanças incrementais e interagir com o projeto de FPGA em poucas horas em vez de semanas. Os Hardware de mercado (Commercial off-the-shelf - COTS) também estão disponíveis com diferentes tipos de E/S já conectados a um chip FPGA. A crescente disponibilidade de ferramentas de software de alto nível, diminui a curva de aprendizado com as camadas de abstração e, frequentemente, incluem valiosos núcleos IP (funções pré-construidas) para o controle avançado e processamento de sinais.


Custo

A engenharia não recorrente (nonrecurring engineering – NRE) de despesas em projeto personalizados com ASIC excede em muito comparada às soluções de hardware baseado em FPGA. O grande investimento inicial em ASICs é fácil de justificar para os envios de milhares de chips OEMs por ano, mas muitos usuários finais precisam de funcionalidades personalizadas de hardware para as dezenas a centenas de sistemas em desenvolvimento. A própria natureza do silício programável significa que não há nenhum custo para a fabricação ou um longo prazo para a montagem. Como os requisitos do sistema mudam frequentemente ao longo do tempo, o custo de fazer mudanças incrementais para projetos FPGA é insignificante quando comparado com a grande despesa de reprogramar um ASIC.


Confiabilidade

Enquanto as ferramentas de software fornecem o ambiente de programação, os circuitos FPGA são fáceis de implementar para a execução do programa. Sistemas baseados em processador geralmente envolvem várias camadas de abstração para ajudar a agendar tarefas e compartilhar recursos entre vários processos. A camada de driver controla os recursos de hardware e o sistema operacional gerencia a memória e a largura de banda do processador. Para qualquer núcleo do processador, apenas uma instrução pode executar por vez, e os sistemas baseados em processadores estão continuamente em risco devido a tarefas de tempo crítico que antecipam umas as outras. Os FPGAs, que não utilizam sistemas operacionais, minimizam as preocupações com a confiabilidade da execução paralela e ao hardware determinístico dedicado a cada tarefa.


Manutenção a longo prazo

Como mencionado anteriormente, os chips FPGA são atualizáveis e não exigem tempo e dinheiro para reprojetar como no ASIC. Protocolos de comunicação digital, por exemplo, têm especificações que podem mudar ao longo do tempo, e interfaces baseadas em ASIC podem causar adiantamento de desafios de compatibilidade e manutenção. Por serem reconfiguráveis, os chips FPGA são capazes de acompanhar as modificações futuras que possam ser necessárias. Conforme um produto ou sistema amadurece, você pode fazer melhorias funcionais sem gastar tempo reprojetando hardware ou modificando o layout da placa.

Escolhendo um FPGA

Ao analisar as especificações de um chip FPGA, note que elas são divididas em blocos lógicos configuráveis, células lógicas, lógica de função fixa como multiplicadores e recursos de memória como bloco de RAM integrada. Há muitos outros componentes do chip FPGA, mas estes são normalmente os mais importantes para selecionar e comparar FPGAs para uma determinada aplicação.

Tabela 1 - Especificações de Recursos FPGA para Várias Famílias
Virtex-II

1000

Virtex-II

3000

Spartan-3

1000

Spartan-3

2000

Virtex-5

LX30

Virtex-5

LX50

Virtex-5

LX85

Virtex-5

LX110

Portas 1 milhão 3 milhões 1 milhão 2 milhões ----- ----- ----- -----
Flip-Flops 10,24 28,672 15,36 40,96 19,2 28,8 51,84 69,12
LUTs 10,24 28,672 15,36 40,96 19,2 28,8 51,84 69,12
Multiplicadores 40 96 24 40 32 48 48 64
Bloco de RAM (kb) 720 1,728 432 720 1,152 1,728 3,456 4,608

A Tabela 1 apresenta as especificações dos recursos utilizados para comparar chips FPGA Xilinx dentro de várias famílias. O número de portas lógicas tem sido tradicionalmente uma forma de comparar o tamanho dos chips FPGA e a tecnologia ASIC, mas não acaba descrevendo realmente o número de componentes individuais dentro de um FPGA. Esta é uma das razões para que a Xilinx não especifique o número de portas do sistema para a nova família Virtex-5.

Conclusão

A adoção da tecnologia FPGA vem aumentando assim como o nível das ferramentas que fornecem benefícios para engenheiros e cientistas de todas as áreas. Para mais informações sobre como o FPGA pode ser usado em variadas indústrias e aplicações , veja informações adicionais.

Programando DE2

http://labdegaragem.com/profiles/blogs/tutorial-introducao-a-fpga-101

Programando_o_FPGA_através_da_USB-Blaster

Projetos_Finais_CIL29003

Referências

[1] http://www.ni.com/white-paper/6984/pt/





Icone voltar.png Icone menu.png Icone prox.png