ParteV.ppt [Modo de Compatibilidade] - ipb.ptjpcoelho/SD/ParteV.pdf · Coel Quantos pinos deveria...
Transcript of ParteV.ppt [Modo de Compatibilidade] - ipb.ptjpcoelho/SD/ParteV.pdf · Coel Quantos pinos deveria...
Mem
órias.P
1MEMÓRIAS
PLD.PLA
.FP
Até ao momento ...MEMÓRIA =FLIP-
FLOP
07/0
8PG
A.
ais
: Y20
mas
Dig
ita
como armazenar mais do que um bit?
@ S
iste
mho
, J.P
. @C
oelh
Mem
órias.P
2como armazenar mais do que uma palavra? PLD
.PLA.FP
07/0
8PG
A.
ais
: Y20
mas
Dig
ita@
Sis
tem
ho, J
.P. @
Coe
lh
Quantos pinos deveria ter um CI capaz de armazenar 1024 Bytes (W=1B)
Mem
órias.P
3 Conceito de linhas de ENDEREÇO...PLD
.PLA.FP
07/0
8PG
A.
ais
: Y20
mas
Dig
ita@
Sis
tem
ho, J
.P. @
exemplo...
Coe
lh
Mem
órias.P
4 Para reduzir o número de pinos do CI frequentemente os terminais de I/O são comuns...
PLD.PLA
.FP07
/08
PGA
.ai
s : Y
20m
as D
igita
@ S
iste
m
- Será possível num dado instante alterar o bit k da palavra w?
ho, J
.P. @ - Será possível, num dado instante, alterar o bit k da palavra w?
- Esta é uma memória de leitura/escrita (RWM) mas não é uma RAM!
Coe
lh
Mem
órias.P
5 Memória RAM (Random Access Memeory)
- Memória de Acesso Aleatório PLD.PLA
.FP
- Nome atribuído a RWM com a capacidade de indexar célula a célula
ORGANIZAÇÃO INTERNA:
07/0
8PG
A.
ORGANIZAÇÃO INTERNA:
1-D 2-D
ais
: Y20
mas
Dig
ita@
Sis
tem
ho, J
.P. @
A versão 2 D requer menos “hardware”
Coe
lh A versão 2-D requer menos hardware
Mem
órias.P
6- Para além das memórias RAM existem muitos outros tipos de memórias...
PLD.PLA
.FP07
/08
PGA
.ai
s : Y
20m
as D
igita
MEMÓRIAS RAM
É R li t ã t t d
@ S
iste
m É possível ler/escrever em qualquer célula de
memória
Requer alimentação constante de contrário a informação é perdida
ho, J
.P. @
RAM(Random Access Memory)
Utilizada em arquitecturas de computadores para o
armazenamento temporário de iá i
Coe
lh variáveis
Mem
órias.P
7Baseadas em
multivibradores biestáveis
Maior Velocidade (4X) PLD.PLA
.FP
biestáveis
Maior €/bit
07/0
8PG
A.
SRAM
Maior €/bit
ais
: Y20
família RAMDistingem-se no tempo-de-vida dos dados
mas
Dig
ita
g pDe implementação
simples
@ S
iste
m DRAM
ho, J
.P. @
Mais complexas
Coe
lh Permitem maior densidade de integração
Maior capacidade de armazenamento
Mem
órias.P
8 MEMÓRIAS DRAM
-Armazena os bits individuais em “condensadores” PLD.PLA
.FP
Armazena os bits individuais em condensadores
-A carga nos condensadores não é mantida indefinidamente
-Requer um circuito de “refresh”
07/0
8PG
A.
eque u c cu o de e es
cada célula é visitada periodicamente l ló i é t
ais
: Y20
e o seu valor lógico é reposto
mas
Dig
ita@
Sis
tem
ho, J
.P. @
Coe
lh
Mem
órias.P
9 MEMÓRIAS ROMROM
A t á i d RAM ã PLD.PLA
.FP
O conteúdo das células é fixo
Ao contrário das RAM não requer fornecimento constante de energia
07/0
8PG
A.
É também uma memória de acesso aleatório
ais
: Y20
Disponível sob diversas tecnologias: PROM, EPROM, etc.
ROM(Read Only Memory)
mas
Dig
ita
Primeiro tipo de ROMUtilizadas para PROM (OTP)
@ S
iste
m -Primeiro tipo de ROM programada no fabrico
(masked ROM’s)
Utilizadas para armazenar o
conteúdo da BIOS em PC’s
PROM (OTP)Adquirida ‘virgem’ e programada, apenas uma vez, pelo utilizador.
ho, J
.P. @
p
EPROMPassível de ser reprogramada:
Processo de desenvolvimento de
Coe
lh reprogramada: Escrever – sinal eléctricoApagar – U.V.
desenvolvimento de “firmware”
Mem
órias.P
10 MEMÓRIAS HÍBRIDASHÍBRIDAS
O avanço da tecnologia fez esbater a fronteira entre ROM e RAM PLD.PLA
.FP
O avanço da tecnologia fez esbater a fronteira entre ROM e RAM
Reúnem o melhor dos dois mundos...Reúnem o melhor dos dois mundos...
07/0
8PG
A.-Podem ser lidas e escritas diversas vezes (como as RAM)
-Mantém o conteúdo armazenado mesmo na ausência de alimentação (como as ROM)
ais
: Y20
Híbrido EEPROM
FLASH
mas
Dig
ita FLASH
NVRAM
@ S
iste
m
- Alta densidade- Baixo custo- Electricamente
- Internamente semelhantes às EPROM- Apagam com sinal
ho, J
.P. @ programável
- Ao contrário das EEPROM não pode apagar Byte a Byte
- Apagam com sinal eléctrico.- Custo elevado e ciclos de escrita longos.
- SRAM+Bateria- Estratégia + onerosa
Coe
lh apagar Byte a Byte apenas sectores.
Mem
órias.P
11 MEMÓRIAS ROM: ROM: Tópicos de Hardware
-Função booleana qualquer pode ser escrita como uma “soma de produtos” ou PLD.PLA
.FP
Função booleana qualquer pode ser escrita como uma soma de produtos ou como um “produto de somas”
-Uma memória ROM consiste numa função que executa um mapeamento ENDEREÇO/DADO
07/0
8PG
A.
ENDEREÇO/DADO
-Uma memória ROM pode ser criada como SdP ou PdS
ais
: Y20 Ex. Criar uma memória ROM capaz de armazenar 8 palavras de 1 nibble
Endereço != para cada palavra => 8 endereços
N á i 3 bit di ti i 8 d
mas
Dig
ita Necessários 3 bits para distinguir 8 endereços
RO
M
ENDEREÇO DADOS
A2 A1 A0 D3 D2 D1 D0
@ S
iste
m
cont
eúdo
da 0 0 0 1 1 1 0
0 0 1 0 0 1 0
0 1 0 1 1 0 0
ho, J
.P. @ c 0 1 1 0 1 1 1
1 0 0 1 1 0 0
1 0 1 1 1 0 0
Coe
lh 1 1 0 0 0 1 0
1 1 1 0 0 0 1
Mem
órias.P
12Da ROM para a PROM...
PLD.PLA
.FP07
/08
PGA
.ai
s : Y
20m
as D
igita
@ S
iste
mho
, J.P
. @C
oelh
Mem
órias.P
13Sistema embebido com uP...
PLD.PLA
.FP07
/08
PGA
.ai
s : Y
20m
as D
igita
@ S
iste
mho
, J.P
. @C
oelh
Mem
órias.P
14LÓGICA PROGRAMÁVEL
PLD.PLA
.FP
-Multiplexer como forma versátil de implementar funções booleanas arbitrárias
-ROM’s também podem ser usadas para esse fim
O t t té i d l lé d ló i bi tó i ló i
07/0
8PG
A.
-Outras estratégias que podem envolver, além de lógica combinatória, lógica sequencial
Família de IC que possuem um
ais
: Y20
Família de IC que possuem um conjunto de elementos lógicos (ex. portas lógicas) que podem ser configuradas arbitrariamente
Lógica Programável
mas
Dig
ita
ASIC’s PLD’sPossuem uma arquitectura pré-determinada
@ S
iste
m
Um ou mais conjuntos de circuitos com portas AND e OR configuráveis
PLAPALGAL
SPLD
ho, J
.P. @ - Funções Analógicas e/ou
Digitais- Configurado pelo fabricante a partir de um projecto
OR configuráveis
Outros dispositivos mais complexos possuem flip-flop’s
él l tCPLD FPGA
Coe
lh macrocélulas etc.C G
Mem
órias.P
15Ao contrário dos CI digitais clássicos, em que a sua função era rígida, nos PLD’s o mesmo CI pode executar um sem número de funções!
PLD.PLA
.FP07
/08
PGA
.ai
s : Y
20m
as D
igita
@ S
iste
m SPLD
Em forte declínio, são já poucos os fabricantes que ainda produzem SPLDs-Lattice
ho, J
.P. @
Lattice-Cypress-AMD-PHILIPS
Coe
lh
15
PHILIPS-TI
Mem
órias.P
16PAL’s
PAL... PLD.PLA
.FPPAL...
-Programmable Array Logic
-Implementação da forma disjuntiva
07/0
8PG
A.-Apenas a matriz de AND é programável
-Tipo de Arquitectura PLD mais popular
-Apenas as variáveis de cada termo
ais
: Y20
pmínimo podem ser programadas
mas
Dig
ita@
Sis
tem
ho, J
.P. @
Coe
lh
Mem
órias.P
17PLA’s
PLA... PLD.PLA
.FPPLA...
-Programmable Logic Array
-Possui tanto termos programáveis AND como OR
07/0
8PG
A.
como OR
-Maior Flexibilidade
-Normalmente possuem realimentação entre a saída de cada OR e a entrada do L
Win
CU
PL
ais
: Y20
entre a saída de cada OR e a entrada do conjunto de AND
-Permite implementar máquinas de estado assíncronas da
ptad
o de
: ATM
EL
mas
Dig
ita
exemplos
ad
@ S
iste
m
trôni
ca D
igita
l
ho, J
.P. @
de: L
uís
Laus
, Ele
ct
Coe
lh
adap
tado
d
Mem
órias.P
182ª Geração de PAL’s: GAL’s
GAL (Generic Array Logic)... PLD.PLA
.FPGAL (Generic Array Logic)...
-Desenvolvido pela LATTICE
-Capazes de implementar tanto funções combinatórias como sequenciais
07/0
8PG
A.
combinatórias como sequenciais (contadores, registadores, etc.)
-A sua velocidade compete com a da série 74XX da TTL
ais
: Y20 -Podem ser reprogramadas (~100X)
-Utilização de “macro-células” à saída
mas
Dig
ita
AR –RESET assíncronoSP – PRESET síncrono
S0 e S1 são “fuses”
@ S
iste
m
O-C
ÉLU
LAS0 e S1 são fuses
REGISTERED MODE
S1=0 S0=X
ho, J
.P. @
MA
CR
OS1 0 S0 X
COMBINATIONAL MODE
S1=1 S0=X
Coe
lh
NOTA: As saídas também podem ser entradas (como?)
Mem
órias.P
19Exemplo de Aplicação: PAL 16L8
x(A B C D) = Σ(7 8 9 10 11 12 13 14 15) x(A B C D) = A + BCD PLD.PLA
.FP
x(A,B,C,D) Σ(7,8,9,10,11,12,13,14,15) y(A,B,C,D) = Σ(0,2,3,4,5,6,7,8,10,11,15) z(A,B,C,D) = Σ(1,2,8,12,13) w(A,B,C,D) = Σ(2,12,13)
x(A,B,C,D) A + BCDy (A,B,C,D) = A'B + CD + B'D'z(A,B,C,D) = w + AC'D' + A'B'C'Dw (A,B,C,D) = ABC' + A'B'CD‘após simplificação…
07/0
8PG
A.
ais
: Y20
mas
Dig
ita@
Sis
tem
ho, J
.P. @
Coe
lh
Mem
órias.P
20
( )= ⋅ + ⋅ + ⋅
= ⋅ ⋅ + ⋅ ⋅ + ⋅ ⋅ + ⋅ ⋅
x(A,B,C,D) A B A C A D
y(A,B,C,D) A C B A D B A C D B C D PLD.PLA
.FP( )( )= ⋅ ⋅ + ⋅ ⋅ + ⋅ ⋅ + ⋅ + ⋅ ⋅
= ⋅ + ⋅ + ⋅ + ⋅ + ⋅ + ⋅ + ⋅ + ⋅ + ⋅
z(A,B,C,D) w D A w A B w D B w C w A D
w(A,B,C,D) B A C A A B C B A C B C A D B D C D
07/0
8PG
A.
ais
: Y20
mas
Dig
ita@
Sis
tem
ho, J
.P. @
Coe
lh
Mem
órias.P
21
Num PLD a memória é usada para guardar o padrão que é dado ao IC durante a
Como ‘e que as PLD’s armazenam a informação?PLD
.PLA.FP
Num PLD a memória é usada para guardar o padrão que é dado ao IC durante a programação. Os métodos usados para a programação podem ser do seguinte tipo
- Anti-fusíveis Silício (PROM)- SRAM
C O O
07/0
8PG
A.- Células EPROM, EEPROM - Memória Flash
CPLD’s
ais
: Y20
CPLD s
As PALs e GALs estão disponíveis somente em tamanhos pequenos, equivalentes a algumas centenas de portas lógicas.
mas
Dig
ita
Para circuitos lógicos maiores pode-se usar Complex PLD ou CPLDs.
Este contém o equivalente a algumas PALs ligadas por interconexões programadas.
@ S
iste
m
CPLDCPLD
(Complex PLD)
ho, J
.P. @
(Complex PLD)
“rouba” portas AND
Capacidade para aumentar os termos AND para cada termo OR fixo
Coe
lh adjacentes ou utiliza uma matriz adicional
Mem
órias.P
22 As PLD’s internas são designadas por FB’s ou CFB’s (Configurable PLD.PLA
.FPCFB s (ConfigurableFunctional Bocks)
XILINX ‘9500
07/0
8PG
A.- Cada CFB possui 36
entradas e 18 macro-células
ais
: Y20 - O número de pinos I/O
é menor do que o número total de macro-él l
mas
Dig
ita células
@ S
iste
mho
, J.P
. @C
oelh
Mem
órias.P
23FPGA’s
FPGAFPGADispositivo constituído por um conjunto de células lógicas PLD.PLA
.FP
FPGAFPGA(Field Prog. Gate Arrays)
Dispositivo constituído por um conjunto de células lógicas ou blocos lógicos alocados em forma de uma matriz
-Elevada densidade de portasEl d d h
07/0
8PG
A.
-Elevado desempenho-Elevado número de I/O-Esquema de interligação flexível
Surgiram em 1985 com XilinxOutras companhias:Actel, Altera, Plessey, Plus, AMD, etc.
ais
: Y20 Estrutura Interna
– CLB’s (Configurable Logic Block)– IOB’s (In/Out Block)
mas
Dig
ita – SB’s (Switch Box)
Switch Box (SB)
@ S
iste
m
Cada CLB possui lógica combinatória
Cada IOB pode ser configurado como entrada, saída, I/O.(Bufferizadas).
ho, J
.P. @
Possui uma matriz de CLB’s
Cada CLB possui lógica combinatória programável e registos de memória.
Coe
lh Possui uma matriz de CLB s [configurable logic blocks] circundada por um anel de blocos de I/O (IOB’s)
Mem
órias.P
24CLB’s
Xilinx XC3000 PLD.PLA
.FP
Xilinx XC300007
/08
PGA
.ai
s : Y
20m
as D
igita
@ S
iste
mho
, J.P
. @C
oelh
Mem
órias.P
26Switch Box
Permite a interconexão entre os CLB’s através dos canais de routeamento PLD.PLA
.FP
Permite a interconexão entre os CLB s através dos canais de routeamento07
/08
PGA
.ai
s : Y
20
Routeamento
mas
Dig
ita
A interligação entre os blocos é feita através de uma rede de duas camadas de metal
@ S
iste
m camadas de metal. As ligações físicas entre os fios são feitas:.Com transistores de passagem
ho, J
.P. @
p gcontrolados por bits de memória (PIP), .Com chaves de interconexão
Coe
lh
(Switch Matrix).
Mem
órias.P
27Programação de SPLD’s, CPLD’s e FPGA’s
PLD.PLA
.FP
Se bem que seja possível projectar um PLD simples manualmente, no caso de dispositivos mais complexos como é o caso dos CPLD’s e FPGA’s é obrigatório o uso de ferramentas CAD para o seu projecto.
07/0
8PG
A.
PAL’s:Aceitam na entrada um formato de ficheiro conhecido por ficheiro “JEDEC“ [Joint
ais
: Y20
conhecido por ficheiro JEDEC [Joint Electron Device Engineering Council].
Diversas linguagens para compiladores
mas
Dig
ita Diversas linguagens para compiladores lógicos:•CUPL, ABEL, HDL e VHDL, etc.
@ S
iste
m •Nos CPLD’s e FPGA’s, devido ao tipo de encapsulamento utilizado, a programação deve ser “em circuito”.
•Cada fabricante tem um nome proprietário para este sistema de
ho, J
.P. @ •Cada fabricante tem um nome proprietário para este sistema de
programação.
•A Lattice Semicondutor chama-lhe programação “in-system“ (ISP).
Coe
lh
•Normalização através da Joint Test Action Group (JTAG).