FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior...

30
Arquitetura de Computadores FPGA Field Programmable Gate Array Alex Vidigal Bastos

Transcript of FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior...

Page 1: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Arquitetura de Computadores

FPGAField Programmable Gate Array

Alex Vidigal Bastos

Page 2: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Sumário

Dispositivos Reconfiguráveis

Field Programmable Gate ArraysFuncionamentoDesenvolvimentoFerramentas

Page 3: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Dispositivos Reconfiguráveis

São dispositivos que podem ser programados para ter o comportamento de um circuito lógico;

Podem ser reconfigurados diversas vezes para terem diferentes comportamentos lógicos;

Page 4: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Dispositivos Reconfiguráveis

São dispositivos que podem ser programados para ter o comportamento de um circuito ló́gico;

Podem ser reconfigurados diversas vezes para terem diferentes comportamentos lógicos;

Page 5: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Dispositivos Reconfiguráveis

Fazem parte desta categoria:– Dispositivos como Programmable Array Logic

(PAL)– Generic Array Logic (GAL), – Complex Programmable Logic Device (CPLD) – Field Programmable Gate Array (FPGA).

Page 6: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Dispositivos Reconfiguráveis

FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que permite a configuração de sistemas complexos;

Page 7: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

São os dispositivos lógicos programáveis capazes de serem configurados para reproduzir o comportamento de um hardware.

Estes dispositivos são formados por blocos lógicos programáveis que são conectados por interligações programáveis.

Page 8: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Permitem a criação de circuitos lógicos em FPGA, sendo limitados pela área e a memória disponíveis.

O uso de FPGAs visa obter o desempenho de aplicações em dispositivos dedicados (ASIC) com a flexibilidade de aplicações em software.

Page 9: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Flexibilidade dada pela facilidade de configuração através de uma descrição de hardware escrita em Verilo ou VHDL.

Essas linguagens permitem a descrição do comportamento de um circuito lógico e facilita a criação de novas aplicações de hardware devido ao alto nível de abstração que fornece ao programador.

Page 10: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Os FPGAs são compostos basicamente por três tipos de componentes:

– CLB (Configuration Logical Blocks) – São blocos lógicos configuráveis construídos com flip-flops e lógica combinacional que permitem a construção de elementos lógicos funcionais;

Page 11: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

– IOB (Input/Output Blocks) – Fazem a interface entre CLBs, funcionando como buffers de entrada e saída;

– Switch Matrix – Representam a conexão entre os blocos lógicos. Permitem a conexão de CLBse IOBs usando trilhas com as conexões programáveis;

Page 12: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Page 13: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Funcionamento

Podemos considerar nossa aplicação para o FPGA como um circuito lógico que pode ser descrito como uma combinação de portas conectadas;

Um arranjo complexo de portas lógicas e unidades de memória podem executar operações complexas;

Page 14: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Funcionamento

Page 15: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Funcionamento

Page 16: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Funcionamento

Podemos considerar que ao invés de uma tabela verdade, a tabela acima representa uma memória que armazena 1 bit (S) e é endereçada por 3 bits (A, B, C);

Desta forma, podemos ter o comportamento do circuito acima endereçando a memória representada pela tabela acima com os sinais de entrada do circuito.

Page 17: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Funcionamento

Page 18: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Funcionamento

Para permitir a configuração de arranjos complexos de portas lógicas, são utilizados milhares de CLBs conectados por comutadores programáveis que definem as conexões de fluxos de sinais durante a execução de uma configuração no FPGA.

Page 19: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Funcionamento

Page 20: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Desenvolvimento

Page 21: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Ferramentas

Para a implementação é necessário que a ferramenta dê suporte ao dispositivo reconfigurável alvo, visto que é necessário conhecer a arquitetura do FPGA.

Ex: Xiling – Ise WebPACK

Altera – QuartusII Web Edition

Page 22: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Ferramentas Altera Quartus II – Windows/Linux

Page 23: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Desempenho

O ganho de velocidade com o uso de FPGAs vem do fato que o hardware programado é personalizado para um algoritmo em particular;

Page 24: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Spartan3 FPGA

Page 25: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Spartan3 FPGA

Page 26: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Four-Digit, Seven-Segment LED Display

Page 27: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Four-Digit, Seven-Segment LED Display

Page 28: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Four-Digit, Seven-Segment LED Display

Page 29: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Field Programmable Gate Arrays

Four-Digit, Seven-Segment LED Display

Page 30: FPGA Field Programmable Gate Array - DECOM-UFOP · FPGA é o dispositivo que possui maior flexibilidade devido a abundância e o tamanho reduzido de suas unidades básicas, o que

Perguntas

?