05/08/2016 Prof. Alexandre - ELP1DLP1 1
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 2
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 3
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
INTRODUÇÃO A LÓGICA DIGITAL
Circuitos Integrados (CI):
Fonte: Brown, S., Vranesic, Z., Fundamentals of Digital Logic with VHDL. McGraw-Hill, 2009.
05/08/2016 Prof. Alexandre - ELP1DLP1 4
1.1. Família Lógica TTL 1.2. Família Lógica MOS/CMOS
1. FAMILIAS DE CIRCUITOS LÓGICOS DIGITAIS
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 5
1.1. Família Lógica TTL
• Dissipação ~10mW/porta
• Níveis lógicos definidos por faixas: 0V a 0,8V nível lógico “0”, de 2V a Vcc (entre 4,75V e 5,25V) nível lógico “1”.
• Maior consumo em repouso.
1.2. Família Lógica MOS/CMOS
• Baixa dissipação ~10nW/porta
• Melhor imunidade à ruído
• Alta impedância define níveis lógicos equivalentes à fonte de alimentação.
• Mais susceptível à descarga eletroestática
1. FAMILIAS DE CIRCUITOS LÓGICOS DIGITAIS
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
Fonte: National Instruments
05/08/2016 Prof. Alexandre - ELP1DLP1 6
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
INTRODUÇÃO A LÓGICA DIGITAL
Lógicas AND, OR, XOR:
05/08/2016 Prof. Alexandre - ELP1DLP1 7
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
INTRODUÇÃO A LÓGICA DIGITAL
A B Y
0 0 0
0 1 0
1 0 0
1 1 1
A Y
0 1
1 0
A B Y
0 0 1
0 1 1
1 0 1
1 1 0
05/08/2016 Prof. Alexandre - ELP1DLP1 8
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
INTRODUÇÃO A LÓGICA DIGITAL
A B Y
0 0 0
0 1 1
1 0 1
1 1 1
A B Y
0 0 0
0 1 1
1 0 1
1 1 0
A B Y
0 0 1
0 1 0
1 0 0
1 1 0
05/08/2016 Prof. Alexandre - ELP1DLP1 9
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
1. FAMILIAS DE CIRCUITOS LÓGICOS DIGITAIS
1.1. Família Lógica TTL
1.2. Família Lógica MOS/CMOS
05/08/2016 Prof. Alexandre - ELP1DLP1 10
EVOLUÇÃO NA ESCALA DE INTEGRAÇÃO: • SSI – Small Scale Integration (<12 portas) • MSI – Medium Scale Integration (>12 <99) • LSI – Large Scale Integration (milhares) • VLSI – Very Large Scale Integration (dezenas de milhares) • ULSI – Ultra Large Scale Integration (> 100.000) • GSI – Giga Scale Integration (>1.000.000)
VANTAGENS DA MAIOR INTEGRAÇÃO: • Menor área de placa • Menor consumo • Menor calor dissipado • Maior confiabilidade • Maior imunidade a ruído (EMI)
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 11
CARACTERÍSTICAS DOS CIRCUITOS INTEGRADOS DIGITAIS • Fan-out • Atrasos de propagação • Margem de ruído • Níveis de tensão inválida • Correntes absorvida e fornecida pelas I/O´s • Encapsulamentos (DIP, SOIC, PLCC, QFP, TQFP, LFBGA,...) • Saídas Coletor-Aberto (ou Dreno-aberto) e Totem-pole • Saídas Three-state • Tensão de alimentação • Entradas não usadas (problemas) • Compatibilidade elétrica e de pino-a-pino • Potência x Freqüência
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 12
REVISÃO DOS PROCEDIMENTOS DE PROJETO DE CIRCUITOS DIGITAIS (Ver Exemplo 4-7)
1. Definição da Tabela-verdade 2. Obtenção da expressão soma-de-produtos 3. Simplificação da expressão usando operações
matemáticas (lógica aritmética) ou através do Mapa de Karnaugh
4. Implementação do circuito lógico combinacional
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
Obs: Estes exemplos apresentados não estão
relacionados entre si.
1.
2.
3. 4.
05/08/2016 Prof. Alexandre - ELP1DLP1 13
EVOLUÇÃO DA ELETRÔNICA DIGITAL Válvula no início de 1940 Transistor em 1947 Primeiro integrado TTL em 1964 Década de 1970: << 600 portas
• surge SPLD – Simple PLD ( ROM, PLA, PAL, etc ) • ASIC’s – applications specific integrated circuits
Década de 1980: >> 600 portas • Multiple PLD – CPLD (Complex PLD) • FPGA – Field Programmable Gate Array
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 14
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
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 15
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
Em 1970, a Texas Instruments desenvolveu um circuito integrado programável
por máscara baseado na memória associativa da IBM.
Este componente, o TMS2000 era programado alterando-se a camada de
metal durante a fabricação.
O TMS2000 tinha até 17 entradas e 18 saídas com 8 flip-flops JK como
memória.
A Texas criou o termo Programmable Logic Array (PLA) para este dispositivo.
PLA
05/08/2016 Prof. Alexandre - ELP1DLP1 16
PLA – Soma de Produtos • Anti-fusíveis de conexão de
entrada
• Anti-fusíveis de conexão de
saída
• Resistores pull-up nas
entradas das AND
• Resistores pull-down nas
entradas das OR
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 17
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
PAL
“A expressão Programmable Array Logic (PAL) é usada para descrever uma
família de dispositivos lógicos programáveis semicondutores usada para
implementar funções lógicas emcircuitos elétricos, criada pela Monolithic
Memories, Inc. (MMI) em meados de 1978.”
“A arquitetura era mais simples que o FPLA Signetics porque omitia a matriz
programável OR. Isto tornava os componentes mais rápidos, menores e mais
baratos.” Fonte: http://pt.wikipedia.org/wiki/Dispositivo_lógico_programável
05/08/2016 Prof. Alexandre - ELP1DLP1 18
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 menor e mais
barata
Maior velocidade do que os
PLA’s
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
PAL
05/08/2016 Prof. Alexandre - ELP1DLP1 19
CPLD – Soma de produtos +
Flip-flop
CPLDs são grupos de
macrocélulas: geradores de
produtos (product terms) + flip-
flop
Vários PAL’s em um Chip
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
CPLD – Complex PLD
05/08/2016 Prof. Alexandre - ELP1DLP1 20
Não contém bloco AND ou OR
3 Elementos básicos:
• Blocos I/O,
• Conexões programáveis,
• Blocos lógicos.
Tudo configurado por software
Principais fabricantes:
• Xilinx Actel,
• Altera,
• Plessey,
• Plus,
• AMD,
• QuickLogic
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – Field Programmable Gate Array
05/08/2016 Prof. Alexandre - ELP1DLP1 21
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
CPLD x FPGA
CPLD
Programação armazenada em
FLASH
Célula lógica (Macrocell) com
muitas entradas (até 90)
Número limitado de
registradores (até 512)
Não possui arranjos de memória
Atrasos de roteamento
determinísticos
Projetos simples
FPGA
Programação armazenada em
SRAM (Static Random Access Memory)
Célula lógica (Logic Element) com
poucas entradas (4 à 6)
Grande número de registradores
(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
05/08/2016 Prof. Alexandre - ELP1DLP1 22
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
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 three-state e flip-flop de saída .
- Interconexões Programáveis (Programmable InterConnect): pode ser
do tipo SRAM, Anti-fusí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).
05/08/2016 Prof. Alexandre - ELP1DLP1 23
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
05/08/2016 Prof. Alexandre - ELP1DLP1 24
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – Famílias
AS FAMÍLIAS DE FPGA SE 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.
05/08/2016 Prof. Alexandre - ELP1DLP1 25
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
Conexões Permanentes
Baseada em antifusível
-Não volátil
-Pequena dimensão
-Porém não reprogramável
05/08/2016 Prof. Alexandre - ELP1DLP1 26
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – Conexões Reprogramáveis
Baseada em latch
-Volátil
-Relativamente grande
-Reprogramável
05/08/2016 Prof. Alexandre - ELP1DLP1 27
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – CLB ou Bloco Lógico
Bloco Lógico de uma FPGA: • Lógica combinatória
• Flip-flops
• Saídas com registro ou apenas combinatórias
reproduzem qualquer operação combinatória de até 4 entradas
05/08/2016 Prof. Alexandre - ELP1DLP1 28
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – CLB Altera Flex8000/10000
05/08/2016 Prof. Alexandre - ELP1DLP1 29
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – CLB Xilinx XC4000
D Q
SD
RD
EC
S/R
Control
D Q
SD
RD
EC
S/R
Control
1
1
F'
G'
H'
DIN
F'
G'
H'
DIN
F'
G'
H'
H'
H1 DIN S/R EC
H
Function
Generator
G
Function
Generator
F
Function
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)
05/08/2016 Prof. Alexandre - ELP1DLP1 30
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – Input/Output Blocks
• Periferia de IOBs idênticos
– Entrada (I), saída (O), ou
bidireccional (I/O);
– Com registo (Clock) ou apenas
combinatório;
– Saída three-state (TS)
IOB Pad
Ligado ao
Pino Clock
TS
O
I
05/08/2016 Prof. Alexandre - ELP1DLP1 31
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – IOB Xilinx 4000
IOB’s
-Interface entre uma
FPGA e o resto do
sistema
-O FPGA XC 4000
Xilinx tem 80 IOB’s
- Se localizam na
periferia do chip
D Q
Slew
Rate
Control
Passive
Pull-Up,
Pull-Down
Delay
Vcc
Output
Buffer
Input
Buffer
Q D
Pad
Output
Clock
Input
Clock
I1
2I
O
OE
05/08/2016 Prof. Alexandre - ELP1DLP1 32
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – Switch Box
SB’s - Switch Box
Finalidade: Permite a interconexão entre os
CLB’s através dos canais de roteamento (linhas);
05/08/2016 Prof. Alexandre - ELP1DLP1 33
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – Exemplo de Função x1 x2 f1
0 0 0
0 1 0
1 0 0
1 1 1
f1 f2 f2
0 0 0
0 1 1
1 0 1
1 1 1
05/08/2016 Prof. Alexandre - ELP1DLP1 34
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – Vantagens
• Menor área de placa
• Menor consumo
• Menor calor dissipado
• Maior confiabilidade
• Maior imunidade a ruído (EMI)
• Flexibilidade de alteração funcional
• Rapidez de desenvolvimento (time to market)
• Redução dos custos de obtenção de protótipos
• Tecnologia de (re)programação SRAM (reutilização)
05/08/2016 Prof. Alexandre - ELP1DLP1 35
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
CPLDs e FPGAs Comerciais
05/08/2016 Prof. Alexandre - ELP1DLP1 36
DISPOSITIVOS LÓGICOS PROGRAMÁVEIS - DLP
FPGA – Característica de Projeto