Memórias e periféricos de
entrada / saída
• Organização:
–
–
–
–
Tipos de memórias
Periféricos de E/S digital
Periféricos de E/S analógica
Outros tipos de E/S
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 1
Tipos de memórias
• Consideraremos neste âmbito dois tipos principais de
memórias semicondutoras:
– Memórias de leitura / escrita, a que é frequentemente
dada a designação de RAM (Random Access Memories),
para realçar o facto de que se pode aceder directamente a
qualquer posição
– Memórias só de leitura, a que é frequentemente dada a
designação de ROM (Read Only Memories), dispondo
também estas de acesso aleatório
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 2
Tipos de memórias: RAM
• As RAM dividem-se em dois grandes grupos :
– As RAM dinâmicas, com maior densidade (número de bits
por mm2 de silício), que requerem operações periódicas
de refrescamento para não perderem o conteúdo
– As RAM estáticas, podendo estas ser ainda do tipo
volátil ou não volátil (estas dispõem de
uma pequena bateria incorporada,
que conserva o conteúdo durante a
ausência da tensão de alimentação)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 3
Tipos de memórias: ROM
• De acordo com o tipo de programação, este tipo de
memórias divide-se nos seguintes grupos principais:
– ROM: Não programáveis (vêm já gravadas de fábrica)
– PROM: Programáveis (programmable) uma vez
– EPROM: Também programáveis, sendo desgraváveis
(erasable) por exposição a luz ultra-violeta
• As EPROM, devido à forma como são desgravadas,
possuem uma janela no encapsulamento
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 4
Tipos de memórias:
ROM (cont.)
• As EPROM estão entre as memórias só de leitura
mais comuns, tendo sido a tecnologia principal deste
tipo durante muitos anos
• O conteúdo é desgravado por exposição a luz ultravioleta durante cerca de 15 a 20
minutos, tantas vezes quantas as
necessárias (embora em número
limitado)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 5
Tipos de memórias:
ROM (cont.)
• A programação das EPROM faz-se através de
programadores com diversos tipos de complexidade
e custo (o modelo aqui ilustrado está entre os mais
caros):
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 6
Tipos de memórias:
ROM (cont.)
• Em relação ao modelo anterior, o interface da
aplicação de
programação
(Windows) é o
seguinte:
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 7
Memórias:
Encapsulamentos
• Os encapsulamentos mais comuns são os dos tipos
DIP (Dual In-line Package), SOIC (Small Outline
Integrated Circuit) e LCC (Leaded Chip Carrier):
DIP plástico
SOIC
DIP cerâmico com janela
RAM estática de 512 Kbytes
RAM estática de 128 Kbytes
EPROM 64 Kbytes
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 8
Memórias: Configuração de
pinos
• As configurações de pinos mais comuns são as
seguintes:
#
Pino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
DS
1230
A14
A12
A7
A6
A5
A4
A3
A2
A1
A0
D0
D1
D2
Gnd
27
128
Vpp
A12
A7
A6
A5
A4
A3
A2
A1
A0
D0
D1
D2
Gnd
27
256
Vpp
A12
A7
A6
A5
A4
A3
A2
A1
A0
D0
D1
D2
Gnd
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 9
27
512
A15
A12
A7
A6
A5
A4
A3
A2
A1
A0
D0
D1
D2
Gnd
1
28
14
15
27
512
Vcc
A14
A13
A8
A9
A11
/OE/Vpp
A10
/CE
D7
D6
D5
D4
D3
27
256
Vcc
A14
A13
A8
A9
A11
/OE
A10
/CE
D7
D6
D5
D4
D3
27
DS
128 1230
Vcc
Vcc
/PGM /WE
A13
A13
A8
A8
A9
A9
A11
A11
/OE
/OE
A10
A10
/CE
/CE
D7
D7
D6
D6
D5
D5
D4
D4
D3
D3
#
Pino
28
27
26
25
24
23
22
21
20
19
18
17
16
15
Memórias: Diagramas
temporais
• É necessário compreender bem quais são os
principais parâmetros envolvidos nos dois tipos de
acesso à memória (leitura, escrita):
– Na leitura, o importante é garantir que a memória é
suficientemente rápida a colocar os dados no barramento,
após a activação do sinal de leitura
– Na escrita, o importante é garantir que os dados presentes
no barramento estão activos durante um tempo mínimo
em torno da desactivação do sinal de escrita
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 10
Memórias: Diagramas
temporais (leitura)
• Exemplo da especificação dos parâmetros principais
para a operação de leitura com a DS1230 (RAM não
volátil)
A0:A..
/CS
/RD
D0:D7
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 11
máx. 100 ns
Dados
válidos
Memórias: Diagramas
temporais (escrita)
• Exemplo da especificação dos parâmetros principais
para a operação de escrita com a DS1230 (RAM não
volátil)
A0:A..
/CS
mín. 100 ns
/WR
D0:D7
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 12
Dados
estáveis
mín. 80 ns
mín. 15 ns
Outros tipos de memórias
• Para além dos tipos anteriormente referidos, e pela
sua crescente vulgarização, merecem ainda
referência especial os seguintes:
– As EEPROM, apagáveis electricamente (electrically
erasable), que por isso dispensam a luz ultra-violeta
– As memórias do tipo Flash, que são também não voláteis
e reprogramáveis electricamente, apresentando em
relação às EEPROM vantagens em relação à densidade
de integração e ao custo
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 13
Periféricos de E/S digital
• Consideraremos neste âmbito os seguintes tipos
principais de E/S:
–
–
–
–
Comunicação série via RS-232C
Comunicação série via I2C
Comunicação série via CAN
E/S paralela
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 14
E/S digital: RS 232C
• Publicada pela EIA desde 1969, esta norma de
comunicação tornou-se na mais comum e está
generalizadamente disponível
• Existem dois tipos de conectores para comunicação
série: 9 pinos e 25 pinos (repare-se que o facto de a
comunicação ser série não significa necessariamente
que envolva um reduzido número de ligações)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 15
E/S digital: RS 232C (cont.)
• O protocolo de comunicação RS 232C pode
apresentar-se através do seguinte exemplo,
correspondente à transmissão do byte 7BH (são
usados os valores de +12 V e -12 V para a
transmissão dos valores lógicos)
0
0
1
Start bit
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 16
1
1
1
0
1
1
Bit de paridade
(paridade ímpar)
Stop bit
E/S digital: RS 232C (cont.)
• O LT1181 é frequentemente usado para a adaptação
de níveis de tensão na comunicação RS 232C:
1

16
+5 V
LT1181A
+
2
3
+V OUT
+

+

4
6

5
11
14
10
7
12
13
Entradas
lógicas
Saídas
lógicas
Saídas
RS232
Entradas
RS232
9
8
15
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 17
-V OUT
+
E/S digital:
2
IC
• Lançado pela Philips no início dos anos 80, o I2C
atingiu uma grande popularidade em equipamentos
de electrónica de consumo (HI-FI, TV, VCR, etc.)
• A principal vantagem do I2C consiste em permitir uma
ligação série rápida (100 Kbps ou 400 Kbps) e fiável,
com base apenas em duas ligações (dados e relógio)
• Cada componente tem um endereço próprio,
codificado em 7 ou 10 bits
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 18
E/S digital:
2
IC
(cont.)
• Existem actualmente muitos componentes que
suportam a especificação I2C, como relógios de
tempo real, conversores, amplificadores, etc.
• O protocolo I2C pode ilustrar-se como se segue:
SDA
SDA
SCL
SCL
Dados
estáveis
Dados
Podem
mudar
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 19
Início de
comunicação
Fim de
comunicação
Exemplo
2
I C:
O PCF8574
PCF8574
/INT
A0
A1
A2
SCL
SDA
13
Interrupt
logic
Low-pass
filter
1
2
3
4
5
14
15
Input
filter
I2C-bus
control
Shift
register
8 bit
I/O
port
6
7
9
10
11
12
VDD
VSS
16
8
WRITE pulse
Power-on
reset
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 20
READ pulse
P0
P1
P2
P3
P4
P5
P6
P7
E/S digital: CAN
• Originalmente concebido pela Bosch para a indústria
automóvel, isso conferiu-lhe logo duas vantagens:
– Elevado volume de fabrico (i.e. baixo preço)
– Elevada imunidade ao ruído (uma vez que se destinava a
aplicação num ambiente tradicionalmente hostil)
• O CAN tem características próprias, que o
vocacionam para aplicações em áreas onde nem o
RS 232C nem o I2C são boas soluções
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 21
E/S digital: CAN (cont.)
• Podendo atingir velocidades e distâncias até Mbps e
Km (uma ou outra), o CAN usa apenas dois
condutores como meio físico de comunicação
• Códigos CRC, implementados em hardware pelos
periféricos dedicados, garantem excelentes
características de fiabilidade na comunicação
• Existe um grande número de fabricantes de
componentes e sistemas de apoio ao projecto
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 22
Exemplo CAN: O SJA1000
ALE-AS, /CS,
/RD-E, /WR,
CLKOUT,
MODE, /INT
AD7 to AD0
3-7, 11, 16
Control
22
7
2, 1, 28-23
Address / data
8
8
Interface management logic
VDD1
VSS1
Internal bus
12
15
Message buffer
Transmit
buffer
Bit
stream
processor
Bit
timing
logic
13
14
19
20
21
18
Receive
FIFO
Receive
buffer
XTAL1
Acceptance
filter
Oscillator
XTAL2
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 23
SJA1000
VSS3
TX0
TX1
RX0
RX1
VSS2
VDD2
Error
management
logic
9
10
VDD3
Reset
17
/RST
E/S paralela
• No contexto que mais nos interessa, a E/S paralela
diz respeito aos “portos” de E/S de um
microprocessador ou microcontrolador, com o
objectivo de efectuar a leitura ou o controlo ao bit:
–
–
–
–
Integrados no próprio microcontrolador
Disponíveis como periféricos dedicados (vários tipos)
Implementados através de latches ou buffers (SSI)
Implementados em dispositivos lógicos programáveis
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 24
E/S analógica (conversores
A/D e D/A)
• A discretização (A/D) e a sua operação inversa (D/A)
dão origem a erros intrínsecos
A
D
111
8/8
110
7/8
101
6/8
100
5/8
011
010
Fim de
Escala
001
Fim de
Escala
4/8
3/8
2/4
000
1/8 2/8 3/8 4/8 5/8 6/8 7/8 8/8 A
Erro
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 25
1/8
000 001 010 011 100 101 110 111 D
Conversores D/A
• Conversão D/A por comutação de fontes de corrente:
Entrada mais
significativa Entrada
N bits de entrada
+ V
R
R
2R
Entrada
4R
Entrada
menos
significativa
...
Saída (em corrente
Conversor de
corrente para tensão
-
-
- Vref
+
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 26
+
Conversores D/A (cont.)
• Conversão D/A por malha R-2R
-
+
Vref
N bits de entrada
nó
R
2R
nó
R
2R
nó
R
2R
Mais
sign.
nó
2R
2R
Menos
sign.
+
Saída (em
corrente)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 27
Conversor de
corrente
para tensão
Conversores D/A (cont.)
• Especificações mais importantes :
– Resolução (importância do bit menos significativo)
– Erro de não linearidade (desvio máximo na saída em
relação à característica em linha recta)
– Monotonicidade (quando a um aumento na entrada não
corresponder um aumento na saída)
– Tempo de estabelecimento (para a saída estabilizar em
torno de um valor pretendido, dentro de um dado limite,
em consequência de uma variação na entrada)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 28
Conversores A/D
• Convém começar por esclarecer que:
– O preço dos A/D depende essencialmente da resolução
(número de bits) e da rapidez (conversões por segundo)
– Os conversores do tipo paralelo, por aproximações
sucessivas e integradores, decorrem de soluções de
compromisso entre os dois factores referidos acima
• Os conversores do tipo sigma-delta não serão
considerados nesta breve introdução
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 29
Conversores A/D (cont.)
• Conversores A/D do tipo
paralelo:
• Quantos comparadores
são necessários para uma
saída com N bits?
• Que tipo de lógica estará
contida no bloco
“codificador”?
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 30
+ Vref
Entrada
analógica
Codificador
+
-
R
+
-
R
+
-
Código
digital
na saída
+
-
Conversores A/D (cont.)
• Conversores A/D por aproximações sucessivas:
É superior, fica em 0
+ Vref
Entrada
analógica
Entrada
analógica
É superior, fica em 0
Conversor D/A
Valor analógico
exterior
É inferior, fica em 1
+
-
Código
digital
na saída
Registo de
aproximações
sucessivas
Meio de escala
(valor inicial)
É inferior, fica em 1
Relógio
1
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 31
2
3
4
5
6
7
8
Ciclo de
relógio
Conversores A/D (cont.)
• Conversores A/D do tipo integrador:
Declive imposto pela
tensão de entrada
Entrada
analógica
Comparador
+
+
+ Vref
V
Tensão à saída
do integrador
Declive imposto
por Vref (sempre
o mesmo)
Integrador
Relógio
Bloco de controlo
Contador
Código digital
na saída
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 32
Tempo constante
Tempo medido
t
Conversores A/D (cont.)
• Especificações mais importantes:
– Taxa de conversão (conversões por segundo)
– Não linearidade diferencial (em relação à gama de
valores na entrada, para códigos de saída adjacentes)
– Códigos ausentes (missing codes) (quando nem todos
os códigos existem na saída do conversor)
– Não linearidade (desvio máximo em relação à recta ideal)
– Resolução (valor do LSB)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 33
Outros tipos de E/S
• Englobámos neste último grupo os seguintes tipos:
– Contadores / temporizadores (counters / timers), que
contabilizam um dado número de impulsos de relógio
– Relógios de tempo real (real time clocks), que efectuam
medidas relativas (intervalos) e absolutas de tempo
– Moduladores de largura de
impulso, para a variação
do duty cycle de um sinal
T = 1/f
1
DC = 25%
2
DC = 50%
DC (duty cycle) =  / T (varia entre 0 e 100%)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 34
Conclusão
• Objectivo principal do capítulo: Apresentar os
principais componentes que complementam a
funcionalidade de microprocessadores /
microcontroladores
• Pistas para a continuação do estudo:
– Dispositivos de memória (aprofundar o estudo)
– Periféricos: Protocolos de comunicação e conversão A/D e
D/A (outras alternativas não abordadas)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Memórias e periféricos de entrada / saída - 35
Download

Memórias e Periféricos de Entrada / Saída