This document discusses Field Programmable Gate Arrays (FPGAs). It introduces FPGAs, describing their basic architecture which consists of programmable logic blocks, I/O blocks and configurable interconnects. It also covers FPGA applications, configuration technologies and examples of common FPGA brands like Xilinx and Altera.
1. Motivação
Introdução
Referências
Field Programmable Gate Array (FPGA)
Gabriel Bovi Lorandi 1633511
Daniel Cardozo Salum 1748793
Uildson Santos dos Santos 1748858
Vanessa da Rocha Alves 1749471
Universidade Tecnológica Federal do Paraná
13 de Junho de 2017
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 1 / 45
6. Motivação
Introdução
Referências
Introdução
Os circuitos integrados digitais implementados em pastilha de
silício podem ser classificados em dois grupos de integração:
a) Circuitos integrados padrões
b) Circuitos integrados de aplicação específica (ASIC)
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 6 / 45
7. Motivação
Introdução
Referências
Circuitos Integrados Padrões
Os circuitos integrados padrões são compostos pelos circuitos
de funções fixas, que correspondem aos componentes digitais
básicos: AND, OR, NAND, NOR„ NOT, FLIP-FLOPS, etc.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 7 / 45
8. Motivação
Introdução
Referências
Exemplos:
Circuitos integrados digitais SSI.
CI 7400 (4 portas NAND)
CI 7408 (4 portas AND)
Circuitos integrados digitais MSI.
CI 74151 (1 Multiplexador 8x1)
CI 74LS90 (1 contador BCD)
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 8 / 45
9. Motivação
Introdução
Referências
Circuitos Integrados de Aplicações Específicas (ASICs)
Os circuitos integrados de aplicações específicas - ASICs são
aqueles que precisam de um processo de fabricação especial,
que requer máscaras específicas para cada projeto.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 9 / 45
12. Motivação
Introdução
Referências
Microprocessadores são componentes extremamente flexíveis
devido a sua programabilidade.
A programação do componente torna-o flexível para
implementação de vários tipos de aplicação, entretanto, a
implementação de um algoritmos por software será mais lenta
que quando implementada por um hardware equivalente.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 12 / 45
15. Motivação
Introdução
Referências
Em ambos os casos apresentados, os circuitos integrados
digitais possuem suas funções internas fixas, predefinidas,
implementadas na construção do CI no processo de fabricação.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 15 / 45
16. Motivação
Introdução
Referências
Conceito de Lógica Programável
Nos últimos 30 anos a tecnologia de projeto de sistemas
digitais se moveu na direção da Lógica Programável.
A maioria dos circuitos de controles digitais modernos estão
contidos em um único dispositivo de Lógica Programável:
FPGS ou CPLD.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 16 / 45
17. Motivação
Introdução
Referências
A ideia básica desses dispositivos é permitir ao projetista
configurar o circuito eletrônico digital desejado dentro do
próprio "chip".
Os recursos de hardware serão configurados para implementar
a funcionalidade requerida.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 17 / 45
18. Motivação
Introdução
Referências
Dispositivos Lógicos Programáveis - PLDs
Os PLDs são circuitos integrados que podem ser configurados
pelo próprio usuário. Não apresentam uma função lógica
definida, até que sejam configurados.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 18 / 45
19. Motivação
Introdução
Referências
Uma função lógica, seja combinacional ou sequencial poderá
ser representada na forma de soma de produtos, através do uso
do Teorema de DeMorgan ou as leis da Álgebra de Boole.
Uma função lógica complexa de multi - níveis poderá
facilmente ser reduzida a uma configuração de dois níveis
usando portas ANDs e portas ORs.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 19 / 45
20. Motivação
Introdução
Referências
HCPLDs (High Complex Programmable Logic Devices)
São dispositivos simples de alta capacidade, que tipicamente
contêm mais do que 600 portas lógicas, os mais modernos
podem atingir cerca de 1.000.000 portas lógicas, fabricados
com tecnologia CMOS.
Exemplos de dispositivos HCPLDs:
a) CPLDs (Complex Programmable Lógic Devices);
b) FPGAs (Field Programmable Logic Devices).
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 20 / 45
21. Motivação
Introdução
Referências
CPLDs (Complex Programmable Logic Devices)
Foram introduzidos no mercado internacional pela empresa
ALTERA, inicialmente como EPLDs.
São dispositivos programáveis e reprogramáveis pelo usuário,
com alto desempenho, baixo custo por função e alta
capacidade de integração.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 21 / 45
22. Motivação
Introdução
Referências
CPLDs (Complex Programmable Logic Devices)
Famílias de CPLDs fornecidos pela ALTERA: MAX II, MAX
300A e MAX7000.
Famílias de CPLDs fornecidos pela XILINX: XA9500XL,
XC95144.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 22 / 45
23. Motivação
Introdução
Referências
FPGA
O FPGA consiste de uma matriz de blocos lógicos ou células
lógicas independentes, cercada de blocos de enttrada e saída,
também independentes e por um conjunto de recursos de
interconexão programáveis, que permitem a interligação
arbitrária dos blocos uns aos outros.
Cada bloco lógico pode ser programado individualmente para
desempenhar uma função específica. Cada bloco de entrada e
saída pode ser programado para ser uma entrada, uma saída
ou um pino bidirecional global.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 23 / 45
26. Motivação
Introdução
Referências
FPGA
Novas arquiteturas de FPGAs têm sido desenvolvidas desde
1985, com variações significativas na composição dos blocos e
das tecnologias de implementação, mas sempre mantendo a
mesma estrutura básica de LCA (Logic Cell Array) inicial:
Blocos lógicos;
Blocos de entrada e saída; Recursos de interligação
programáveis.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 26 / 45
29. Motivação
Introdução
Referências
Arquitetura de roteamento
A arquitetura de roteamento de um FPGA é a forma pela qual
os seus barramentos e as chaves de interconexão são
posicionadas para permitir a interconexão entre as células
lógicas.
Essa arquitetura permite que se obtenha um roteamento
completo e, ao mesmo tempo, alta densidade de portas lógicas.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 29 / 45
32. Motivação
Introdução
Referências
Conceitos básicos da arquitetura de um FPGA
Pinos: entradas e saídas dos blocos lógicos;
Conexão: ligação elétrica de um par de pinos;
Rede: conjunto de pinos que estão conectados;
Bloco de comutação: utilizado para conectar dois segmentos
de trilha;
Segmento de trilha: segmento não interrompido por chaves
programáveis;
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 32 / 45
33. Motivação
Introdução
Referências
Conceitos básicos da arquitetura de um FPGA
Canal de roteamento: grupo de duas ou mais trilhas
paralelas;
Bloco de Conexão: permite a conectividade das entradas e
saídas de um bloco lógico com os segmentos de trilhas nos
canais;
Chaves programáveis: afetam a velocidade, tempo de
propagação dos sinais e definem caractarísticas de
volatibilidade e reprogramação.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 33 / 45
34. Motivação
Introdução
Referências
Conceitos básicos da arquitetura de um FPGA
Gate Flutuante: nessa tecnologia a chave de interconexão é
um transístor MOS, especificamente construídos com dois
gates flutuantes semelhantes aos usados nas memórias
EPROM e EEPROM. A maior vantagem dessa tecnologia é a
sua capacidade de programação e a retenção dos dados.
Obs: Com a tecnologia Gate Flutuante os dados podem ser
programados com o circuito integrado instalado na placa,
característica denominada ISP (In System Programmability).
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 34 / 45
35. Motivação
Introdução
Referências
Tecnologia de programação das chaves de roteamento
SRAM: nessa tecnologia a chave de interconexão é uma
memória estática RAM de um bit.
Antifuse: nessa tecnologia a chave de interconexão é um
dispositivo semicondutor de dois terminais, que no estado não
programado apresenta alta impedância (aberto) e que no
estado programado apresenta baixa impedância (fechado).
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 35 / 45
37. Motivação
Introdução
Referências
FPGA (Field Programmable Gate Arrays)
Famílias de FPGAs fornecidos pela XILINX:
Artix-7, Kintex-7, Vintex-7, Spartan-6 e Virtex-6.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 37 / 45
38. Motivação
Introdução
Referências
FPGA (Field Programmable Gate Arrays)
Famílias de FPGAs fornecidos pela ALTERA:
Startix V, IV, III, II e I;
Arria V, II e I;
Cyclone V, IV, III, II e I.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 38 / 45
39. Motivação
Introdução
Referências
FPGA
APLICAÇÕES DE FPGA.
Radio Digital (Wireless);
Equipamentos em Medicina: Ultra som, etec;
Processamento de som;
Processamento de imagem;
Aplicações de Vídeos;
Controle Industrial: Autônomos, Motion Control;
DSP (Processamento Digital de Sinais).
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 39 / 45
43. Motivação
Introdução
Referências
Referências I
MA Barros.
Uma metodologia de projeto e implementação de operadores
para processamento digital de imagens em tempo real usando
field programmable gate arrays (fpga).
IX Simpósio Brasileiro de Computação Gráfica e Processamento
de Imagens. Caxambu, MG:[sn], pages 297–304, 1996.
Ederson Cichaczewski, Eduardo Theiss Przysiezny, V Pilla Jr,
and Edson Pedro Ferlin.
Microprocessador risc implementado em lógica programável.
PIBIC 2003-VIII Seminário de Iniciação Científica e
Tecnológica, 2003, Curitiba, 2003.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 43 / 45
44. Motivação
Introdução
Referências
Referências II
Ricardo Ferreira and José Augusto Miranda Nacif.
Computação heterogênea com gpus e fpgas.
Livro dos Minicursos do WSCAD 2016.
Vitor CF Gomes, Andrea S Charao, and Haroldo FC Velho.
Field programmable gate array-fpga, 2009.
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 44 / 45
45. Motivação
Introdução
Referências
Dúvidas?
Field Programmable Gate Array (FPGA)
Gabriel Bovi Lorandi 1633511
Daniel Cardozo Salum 1748793
Uildson Santos dos Santos 1748858
Vanessa da Rocha Alves 1749471
Universidade Tecnológica Federal do Paraná
13 de Junho de 2017
Arquitetura de Computadores Field Programmable Gate Array (FPGA) 45 / 45