dispositivos de lógica programável março 2011. evolução válvula no início de 1940 transistor...

27
Dispositivos de Lógica Programável Março 2011

Upload: internet

Post on 17-Apr-2015

108 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

Dispositivos de Lógica Programável

Março 2011

Page 2: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

Evolução

• Válvula no início de 1940• Transistor em 1947

– Não aquece como as válvulas– Fisicamente menor

• 1961 primeiro integrado TTL 74LSXX• Década de 1970

– surge SPLD – Simple PLD ( ROM, PLA, PAL, etc ) << 600 portas

– ASIC’s – applications specific integrated circuits

• Década de 1980 >> 600 portas– Multiple PLD – CPLD – FPGA – Field Programmable Gate Array

Page 3: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

O que escolher ?

Projetista tem o desafio de encontrar o balanço entre velocidade e generalidade do hardware

• Chip genérico– Microcontroladores Muitas funções Sacrifício de

desempenho

• Chip dedicado – ASICS Aplicação específica alta velocidade

baixo consumo só se justifica em grande quantidade, pois alterações do projeto não são possíveis

Page 4: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

PLA – Soma de Produtos

3 Entradas – X1, X2, X3

2 Saídas – Z1, Z2

Um bloco AND configurável com 6 entradas

Um Bloco OR Configurável com 6 entradas

Page 5: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

PLA – Soma de Produtos

Page 6: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

PAL – Soma de Produtos

3 Entradas – X1, X2, X3

2 Saídas – Z1, Z2

Apenas bloco AND configurável com 6 entradas

Bloco OR fixo

•Construção fácil e mais barata

•Melhor desempenho que PLA’s

Page 7: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

PAL – Soma de Produtos

Page 8: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

CPLD – Complex PLD ( Vários PAL’s em um Chip )

CPLDs são grupos de macrocélulas: geradores de produtos (product terms) + flip-flop

Page 9: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Field Programmable Gate Array

Não contém bloco AND ou OR

3 Elementos básicos:

Tudo configurado por software

Principais fabricantes:

Xilinx Actel, Altera, Plessey, Plus, AMD, QuickLogic

Page 10: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

CPLD X FPGA

CPLD- Programação armazenadaem FLASH- Célula lógica (Macrocell) commuitas entradas (até 90)- Número limitado deregistradores (até 512)- Não possui arranjos dememória- Atrasos de roteamentodeterminísticos- Projetos simples

-FPGA- Programação armazenada em SRAM- Célula lógica (Logic Element)com poucas entradas (4 à 6)- Grande número deregistradores (até 200K)- Blocos de memória (até 9.9Mbits) e memória distribuída (até1.3M bits)- Atrasos de roteamento variáveis- Projetos complexos

Page 11: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961
Page 12: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Elementos Básicos

- Blocos de entrada/saída configuráveis (I/O Blocks): são componentes de entrada/saída formados por estruturas bidirecionais que incluem buffer, flip-flop de entrada buffer tri-state e flip-flop de saída .

- Interconexões Programáveis (Programmable InterConnect): pode ser do tipo SRAM, Antifusível ou EPROM. São como interruptores programáveis, geram as pistas de ligação entre os blocos lógicos e blocos de entrada e saída .

- Blocos Lógicos Configuráveis (Logic Block): pode ser tão simples como um transistor ou tão complexo quanto um microprossessador. Este bloco é capaz de implementar várias funções combinacionais (através de look-up-table) e seqüenciais (através de flip-flops).

Page 13: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Field Programmable Gate Array

As famílias de FPGA’s diferem em :

-Formas de realizar a programação;

-Formas de organização dos condutores de interconexão

-Funcionalidades dos blocos lógicos

Porém, a diferença mais significativa é a forma de disponibilizar os blocos lógicos e as conexões.

Page 14: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Conexões

Baseada em fusível

-Não volátil

-Pequena dimensão

-Porém não reprogramável

Page 15: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Conexões

Baseada em latch

-Volátil

-Relativamente grande

-Reprogramável

Page 16: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – CLB ou Bloco Lógico

Bloco Lógico Ideal de uma FPGA:

Lógica combinatóriaFlip-flopsSaídas com registo ou apenas combinatórias

reproduzem qualquer operação combinatória de até 4 entradas

Page 17: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – CLB Altera Flex8000/10000

Page 18: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – CLB Xilinx XC4000

D QSD

RDEC

S/RControl

D QSD

RDEC

S/RControl

1

1

F'

G'

H'

DIN

F'

G'

H'

DIN

F'

G'

H'

H'

H1 DIN S/R EC

HFunction

Generator

GFunction

Generator

FFunction

Generator

G4

G3

G2

G1

F4

F3

F2

F1

C4C1 C2 C3

K

YQ

Y

XQ

X

• 13 "pinos" de entrada

• 4 "pinos" de saída

• 3 geradores de funções

• 2 flip-flops

• Funções “C” permutáveis

• Aritmética com lógica de

carry rápida (não visível)

Page 19: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – IOB’s

• Periferia de IOBs idênticos

– Entrada, saída, ou bidireccional

– Com registo ou apenas combinatório

– Saída tri-state

IOB Pad

Ligado ao PinoClocks

TSO

I

Page 20: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – IOB’s Xilinx 4000

IOB’sInterface entre uma FPGA e o resto do sistema;O FPGA XC 4000 Xilinx tem 80 IOB’sLocalizam na periferia do chip;

D Q

SlewRateControl

PassivePull-Up,Pull-Down

Delay

Vcc

OutputBuffer

InputBuffer

Q D

Pad

OutputClock

InputClock

I1

2I

O

OE

Page 21: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – SB’s

SB’s - Switch BoxFinalidade: Permite a interconexão entre os CLB’s através dos canais de roteamento;

Page 22: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Exemplo de Função

Page 23: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Módulo Básico MUX 4:1

Como obter um LATCH RS ????

Page 24: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Módulo Básico MUX 4:1 trabalhando com LATCH RS

Page 25: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Vantagens

• Rapidez de desenvolvimento• Sem custos de obtenção de protótipos (NRE)• Tecnologia de (re)programação SRAM

– Desenvolvimento com risco mínimo– Reutilização

• Testado 100% na fábrica– Dispensa testes de aceitação do componente

Page 26: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Exemplo de Função

Page 27: Dispositivos de Lógica Programável Março 2011. Evolução Válvula no início de 1940 Transistor em 1947 –Não aquece como as válvulas –Fisicamente menor 1961

FPGA – Característica de Projeto