SISTEMAS DIGITAIS II
SISTEMAS DIGITAIS II Prof. TITO MARINI
DISPOSITIVOS
LÓGICOS
PROGRAMÁVEIS
(PLDs)
SISTEMAS DIGITAIS II Prof. TITO MARINI
DISPOSITIVOS PROGRAMÁVEIS
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.
SISTEMAS DIGITAIS II Prof. TITO MARINI
DISPOSITIVOS PROGRAMÁVEIS
Em 1973, a National Semiconductor introduziu
um dispositivo PLA programável por máscara
(DM7575) com 14 entradas e 8 saídas sem
registradores de memória.
Foi mais popular que o da Texas, mas o custo de
fazer a máscara de metal limitou seu uso.
Este dispositivo foi significativo porque era a
base para o array lógico programável em campo
(field programmable logic array) produzido pela
Signetics em 1975, o 82S100.
A Intersil na realidade adiantou-se à Signetics
mas o baixo aproveitamento arruinou seu
dispositivo.
SISTEMAS DIGITAIS II Prof. TITO MARINI
DISPOSITIVOS PROGRAMÁVEIS
Em 1971, a General Electric (GE) estava
desenvolvendo um dispositivo lógico programável
baseado na nova tecnologia PROM .
Este dispositivo experimental era melhor em relação
ao ROM da IBM por permitir lógica multiníveis.
A Intel tinha acabado de introduzir a PROM apagável
por ultravioleta com gate flutuante (EPROM) e os
pesquisadores da GE incorporaram esta tecnologia.
O dispositivo da GE foi o primeiro PLD regravável,
precedendo a EPLD da Altera por mais de uma
década.
A GE obteve muitas das primeiras patentes em
dispositivos lógicos programáveis.
SISTEMAS DIGITAIS II Prof. TITO MARINI
DISPOSITIVOS PROGRAMÁVEIS
Em 1974 a GE fez um acordo com a Monolithic
Memories para desenvolver um dispositivo lógico
programável por máscara incorporando as
inovações da GE.
O dispositivo foi chamado 'Programmable
Associative Logic Array' or PALA. O MMI5760 foi
finalizado em 1976 e podia implementar circuitos
multiníveis ou sequenciais de mais de 100 portas
lógicas.
O dispositivo era apoiado por ambiente de projeto da
GE onde as equações booleanas eram convertidas
em padrões para a máscara do dispositivo.
Este componente nunca chegou a ser
comercializado.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Dispositivos Lógicos Programáveis (PLD)
Os dispositivos lógicos programáveis
(PLD – Programmable Logic Device) são
circuitos integrados programáveis pelo
usuário, que possuem um grande
número de portas lógicas (AND, OR,
NOT), flip-flops e registradores que estão
ligados em um mesmo CI.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Dispositivos Lógicos Programáveis (PLD)
SISTEMAS DIGITAIS II Prof. TITO MARINI
Arranjos Lógicos Programáveis (GALs)
Um arranjo lógico programável (Generic
Array Logic - GAL) consiste de um
circuito que possui uma estrutura interna
baseada em um conjunto de portas AND-
OR (o conjunto de portas AND e OR são
chamados de arranjos).
SISTEMAS DIGITAIS II Prof. TITO MARINI
Arranjos Lógicos Programáveis
As entradas desse circuito são
ligadas às entradas das portas AND e
as saídas das portas AND são
ligadas às entradas das portas OR e
suas saídas representam as saídas
do circuito.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Arranjos Lógicos Programáveis
SISTEMAS DIGITAIS II Prof. TITO MARINI
Memória PROM (Programmable ROM)
A memória ROM programável (PROM) é uma
memória apenas de leitura que pode ser
gravada uma vez pelo usuário através da
queima dos fusíveis internos.
Na memória PROM o arranjo AND é pré-
definido em fábrica (arranjo fixo) e somente o
arranjo OR é programável.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Memória PROM (Programmable ROM)
Na memória PROM o
arranjo AND é pré-
definido em fábrica
(arranjo fixo) e somente
o arranjo OR é
programável.
SISTEMAS DIGITAIS II Prof. TITO MARINI
PAL - Programmable Array Logic
X – ligações fixas
- ligações programáveis
Arranjos OR fixos
• O PAL tem as a portas AND
programáveis, ou seja, enquanto
as portas OR são pré-conectadas
em fábrica, então todas as portas
AND podem ser programadas.
Arranjos AND programáveis
SISTEMAS DIGITAIS II Prof. TITO MARINI
PLA - Programmable Logic Arrays
X – ligações programáveis
- ligações programáveis
• Um PLA possui tanto a matriz de
Arranjos OR programáveis
portas AND quanto a matriz de
portas OR programáveis
combinando as características de
uma PROM e de um PAL
Arranjos AND programáveis
SISTEMAS DIGITAIS II Prof. TITO MARINI
Arranjos de Portas Programáveis
Os arranjos de portas programáveis são
estruturas mais genéricas e versáteis que as
baseadas na estrutura tradicional AND-OR dos
arranjos lógicos programáveis.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Arranjos de Portas Programáveis
A principal vantagem deste tipo de circuito é a
possibilidade de reprogramação do
comportamento de um circuito quantas vezes
for necessária, ao contrário dos arranjos
lógicos programáveis que só podem ser
programados uma vez, ou seja, definida sua
função lógica ela não poderá ser mudada.
SISTEMAS DIGITAIS II Prof. TITO MARINI
SPLDs - Simple Programmable Logic Devices
SPLDs são Dispositivos Lógicos
Programáveis (PLDs) de baixa complexidade,
tais como:
- Arranjos Lógicos Programáveis
- PROM
- PAL
- PLA
SISTEMAS DIGITAIS II Prof. TITO MARINI
CPLDs - Complex Programmable Logic Devices
As PALs e GALs estão disponíveis somente
em tamanhos pequenos, equivalentes a
algumas centenas de portas lógicas.
Para circuitos lógicos maiores pode-se usar
Complex PLD ou CPLDs.
Este contém o equivalente a muitas PALs
ligadas por interconexões programadas, tudo
num circuito integrado.
Os CPLDs podem substituir milhares ou até
centenas de milhares portas lógicas.
SISTEMAS DIGITAIS II Prof. TITO MARINI
CPLDs - Complex Programmable Logic Devices
Algumas CPLDs são programadas usando o
programador PAL, mas este método torna-se
inconveniente para dispositivos com centenas
de pinos.
O segundo método de programação é soldar o
componente à sua placa de circuito impresso,
e depois ligar um cabo de dados ao PC.
O CPLD contém um circuito que decodifica os
dados e configura-o para realizar a função
lógica específica.
SISTEMAS DIGITAIS II Prof. TITO MARINI
CPLDs - Complex Programmable Logic Devices
Cada fabricante tem um nome proprietário
para este sistema de programação.
Por exemplo, a Lattice Semicondutor chama
de "programação in-system".
No entanto este sistema proprietário começa a
abrir caminho para uma normalização através
da Joint Test Action Group (JTAG).
SISTEMAS DIGITAIS II Prof. TITO MARINI
CPLDs - Complex Programmable Logic Devices
Os CPLDs podem ser vistos como
dispositivos que utilizam em sua estrutura
vários PLD´s (PLA ou PAL).
Cada PLA ou PAL formam células que são
interligadas através de conexões
programáveis.
SISTEMAS DIGITAIS II Prof. TITO MARINI
CPLDs - Complex Programmable Logic Devices
Os CPLDs podem ser vistos como dispositivos que utilizam em sua
estrutura vários PLD´s (PLA ou PAL). Cada PLA ou PAL formam
células que são interligadas através de conexões programáveis.
SISTEMAS DIGITAIS II Prof. TITO MARINI
FPGA (Field Programmable Gate Array)
Enqunto as PAL's foram se desenvolvendo para
GAL's e CPLD's, uma linha de desenvolvimento
separado ocorreu.
Este tipo de componente é baseado na tecnologia
gate array (porta matriz) e é chamado de field
programmable gate array (FPGA).
Os primeiros exemplos de FPGA's foram a matriz
82S100 e o 82S105 produzidos pela Signetics no
final de 1970.
O 82S100 foi uma matriz de portas AND.
O 82S105 também tinha funções flip-flop.
SISTEMAS DIGITAIS II Prof. TITO MARINI
FPGA (Field Programmable Gate Array)
O FPGA usa uma rede de portas lógicas,
semelhante a uma matriz gate ordinária, mas cuja
programação é feita pelo cliente e não pelo
fabricante.
O termo "campo programável" (field
programmable) pode ser estranho para alguns,
mas "campo" (field) é apenas um termo da
engenharia utilizada para indicar que é executado
fora da fábrica, pelos clientes.
SISTEMAS DIGITAIS II Prof. TITO MARINI
FPGA (Field Programmable Gate Array)
FPGA's são normalmente programadas depois de
terem sido soldadas na placa de circuito, de
forma semelhante aos CPLD's maiores.
Nos FPGA's grandes a configuração é volátil, e
tem que ser recarregada no componente quando
lhe é aplicada energia elétrica ou diferentes
funcionalidades são requeridas.
A configuração é normalmente guardada numa
configuração PROM / EEPROM.
SISTEMAS DIGITAIS II Prof. TITO MARINI
FPGA (Field Programmable Gate Array)
FPGA's e CPLD's oferecem boas escolhas para
tarefas particulares.
Algumas vezes a decisão é mais econômica do
que técnica, ou pode depender da experiência ou
preferência pessoal do engenheiro/projetista.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Outros tipos de PLDs
Atualmente há muito interesse nos sistemas
reconfiguráveis.
Há circuitos microprocessados que contêm
algumas funções predefinidas e outras funções
que podem ser alteradas pelo código que corre
no processador.
Projetar sistemas autoconfiguráveis exige uma
aprendizagem por parte dos engenheiros de
novos métodos, e provavelmente requererá o
desenvolvimento de novas ferramentas de
software.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Outros tipos de PLDs
As PLDs vendidas atualmente contêm um
microprocessador com uma função fixa,
(chamada core) envolvida por lógica
programável.
Estes componentes permitem ao projetista
concentrar-se em novas funcionalidades do seu
projeto, sem se preocupar como funciona o
microprocessador.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Como a PLD guarda a Configuração
Um PLD é uma combinação de dispositivos
lógicos e de memória.
A memória é usada para guardar o padrão que é
dado ao chip durante a programação.
Muitos dos métodos para armazenar dados no
circuito integrado foram adaptados para serem
usados em PLDs.
Isto inclui:
l
Antifusíveis de Silício
l
SRAM
l
Células EPROM, EEPROM
l
Memória Flash
SISTEMAS DIGITAIS II Prof. TITO MARINI
Como a PLD guarda a Configuração
Antifusíveis de Silicio são elementos de
armazenamento na PAL, o 1º tipo de PLD.
Estas conexões são criadas aplicando uma
tensão elétrica ao longo da área de silício
modificada, dentro do chip.
São chamados antifusíveis porque trabalham de
forma contrária aos fusíveis normais que
começam a funcionar até serem quebrados pela
corrente elétrica.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Como a PLD guarda a Configuração
SRAM ou Static RAM é um tipo de memória volátil,
ou seja o seu conteúdo perde-se quando se desliga a
energia elétrica.
PLDs baseadas em SRAM têm que ser programadas
cada vez que a energia é ligada isto normalmente é
feito por outra parte do circuito.
Uma célula EPROM é um transistor MOS
(semicondutor de óxido metálico) que pode ser
comutada por uma carga elétrica permanente
aplicada no seu eletrodo 'gate'.
Isto é feito por um programador PAL expondo o chip
a fortes doses de raios ultravioleta por um
dispositivo chamado apagador de EPROM.
SISTEMAS DIGITAIS II Prof. TITO MARINI
Como a PLD guarda a Configuração
Uma memória FLASH é não-volátil, retendo a
informação mesmo que a energia elétrica seja
desligada.
Pode ser apagada e reprogramada sempre que
quisermos. Isto torna-se útil para memória PLD.
As memórias das CPLD'S são eletricamente
programáveis, apagáveis e não voláteis.
As células EPROM são mais caras devido ao seu
invólucro de cerâmica com uma janela de quartzo
para reprogramação com luz ultravioleta.
SISTEMAS DIGITAIS II Prof. TITO MARINI
TRABALHOS EM LABORATÓRIO
1. Estudar MANUAL CIRCUITOS INTEGRADOS
2. Formar Grupos (até 3 alunos) para apresentação
dos trabalhos em Laboratório
3. TRABALHO 1: 30% da Nota da PROVA 1
4. TRABALHO 2: 30% da Nota da PROVA 2
SISTEMAS DIGITAIS II Prof. TITO MARINI