Buscar

Circuitos Sequenciais4

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Circuitos sequênciais
Exemplo: X
Forma de onda
1
Circuitos sequênciais
Exemplo: X
Forma de onda
2
Circuitos sequênciais
Exemplo: X
Forma de onda
3
Circuitos sequênciais
Exemplo: X
Forma de onda
Condição de transição não satisfeita
4
Circuitos sequênciais
Memórias
Registradores têm capacidade limitada de armazenamento
Apenas uma palavra (word)
Para realizar o armazenamento de várias palavras, utilizam-se memórias
5
Circuitos sequênciais
Memórias
São organizadas em 2n posições 
Cada posição armazena uma palavra de m bits
Exemplos
1100
0001
1011
0111
1110
0000
1111
1011
Memória de 8 posições (23) com palavras de 4 bits (memória 8x4)
Capacidade de armazenamento: 32 bits (4 Bytes)
11010010
00100101
10111010
01001000
Memória de 4 posições (22) com palavras de 8 bits (memória 4x8)
Capacidade de armazenamento: 32 bits (4 Bytes)
Capacidade de armazenamento: 
Número de posições * tamanho da palavra
6
Circuitos sequênciais
Memórias
Capacidade é tipicamente expressa em Bytes, mesmo que a largura da palavra seja diferente de 1 Byte (8 bits)
Kilo Byte (KB)
1.024 Bytes (210)
512 KB = 512 * 1024 Bytes (524.288 Bytes)
Mega Byte (MB)
1.048.576 Bytes (220)
128 MB = 128 * 1.048.576 Bytes (134.217.728 Bytes)
Giga Byte (GB)
1.073.741.824 Bytes (230)
4GB = 4 * 1.073.741.824 Bytes (4.294.967.296 Bytes)
7
Circuitos sequênciais
Memórias
Foram criados em 1998 prefixos binários para expressar grandesas binárias
Ki (kibi) = 210 (1.024)
512 KiB = 512 * 1024 Bytes (524.288 Bytes)
Mi (mebi) = 220 (1.048.576)
128 MiB = 128 * 1.048.576 Bytes (134.217.728 Bytes)
Gi (gibi) = 230 (1.073.741.824)
4GiB = 4 * 1.073.741.824 Bytes (4.294.967.296 Bytes)
8
Circuitos sequênciais
Memórias
As posições são numeradas de 0 a 2n-1
Comumente chamadas de endereços
1100
0001
1011
0111
1110
0000
1111
1011
Memória de 8 posições (23) com palavras de 4 bits (memória 8x4)
Capacidade de armazenamento: 32 bits (4 Bytes)
11010010
00100101
10111010
01001000
Memória de 4 posições (22) com palavras de 8 bits (memória 4x8)
Capacidade de armazenamento: 32 bits (4 Bytes)
Capacidade de armazenamento: 
Número de posições * tamanho da palavra
7
6
5
4
3
2
1
0
3
2
1
0
9
Circuitos sequênciais
Memórias
Embora exista uma variedade grande de memórias, certos princípios básicos de operação são comuns a todas
O conjunto de entradas de controle (leitura/escrita) varia de memória para memória
No entanto, barramentos de dados e endereços estão presentes em qualquer memória
Memória
n
address
m
data out
m
data in
10
Circuitos sequênciais
Memórias
Barramento de endereços (address)
Entrada de n bits, a qual possibilita endereçar uma palavra
Barramento de dados de escrita (data in)
Entrada de m bits para o armazenamento de uma palavra 
Barramento de dados de leitura (data out)
Saída de dados com m bits para a leitura de uma palavra 
Memória
n
address
m
data out
m
data in
2n posições de m bits
Exemplo: se n = 10, a memória tem 1024 posições de m bits (210)
Exemplo: se n = 10, e m = 16, a memória tem capacidade de armazenamento de 2048 bytes (1024 * 2 byes)
11
Circuitos sequênciais
Memórias
Barramento bidirecional
Algumas memórias podem ter um único barramento de dados, o qual serve tanto para leitura quanto para escrita
Memória
n
address
m
data
Barramento bidirecional (entrada e saída)
2n posições de m bits
12
Circuitos sequênciais
Memórias
A escrita tipicamente ocorre em bordas do clock
Já a leitura é tipicamente assíncrona
Não depende do clock
Memória
n
address
m
data out
m
data in
clk
rw
enable
Sinal de controle que especifica a operação a ser realizada: leiura (1) ou escrita (0)
13
Circuitos sequênciais
Memórias
Leitura
Habilitar a memória: enable = 1
Ativar a leitura: rw = 1
Endereçar: address = endereço
A palavra armazenada no endereço especificado (dado) é colocada no barramento de dados de leitura (data out) independente do clock
Memória
n
address
m
data out
m
data in
clk
rw
enable
14
Circuitos sequênciais
Memórias
Escrita
Habilitar a memória: enable = 1
Ativar a escrita: rw = 0
Endereçar: address = endereço
Colocar a palavra a ser escrita (dado) no barramento de dados de escrita (data in)
O dado será armazenado na borda de subida do clock
Memória
n
address
m
data out
m
data in
clk
rw
enable
15
Circuitos sequênciais
Memórias
Leitura
Habilitar a memória: enable = 1
Ativar a leitura: rw = 1
Endereçar: address = endereço
data out ← Memória[address]
2
address
8
data out
8
data in
clk
rw
110100002
001001012
101110102
010010002
Endereço 0 (002)
Endereço 3 (112)
Memória 4x8
1
Leitura ativada
enable
1
Memória habilitada
16
Circuitos sequênciais
Memórias
Leitura
Habilitar a memória: enable = 1
Ativar a leitura: rw = 1
Endereçar: address = endereço
data out ← Memória[address]
2
address
8
data out
8
data in
clk
rw
110100002
001001012
101110102
010010002
Endereço 0 (002)
Endereço 3 (112)
Memória 4x8
0 (002)
010010002 (72)
1
enable
1
17
Circuitos sequênciais
Memórias
Leitura
Habilitar a memória: enable = 1
Ativar a leitura: rw = 1
Endereçar: address = endereço
data out ← Memória[address]
2
address
8
data out
8
data in
clk
rw
110100002
001001012
101110102
010010002
Endereço 0 (002)
Endereço 3 (112)
Memória 4x8
1 (012)
101110102 (186)
1
enable
1
18
Circuitos sequênciais
Memórias
Leitura
Habilitar a memória: enable = 1
Ativar a leitura: rw = 1
Endereçar: address = endereço
data out ← Memória[address]
2
address
8
data out
8
data in
clk
rw
110100002
001001012
101110102
010010002
Endereço 0 (002)
Endereço 3 (112)
Memória 4x8
2 (102)
001001012 (37)
1
enable
1
19
Circuitos sequênciais
Memórias
Leitura
Habilitar a memória: enable = 1
Ativar a leitura: rw = 1
Endereçar: address = endereço
data out ← Memória[address]
2
address
8
data out
8
data in
clk
rw
110100002
001001012
101110102
010010002
Endereço 0 (002)
Endereço 3 (112)
Memória 4x8
3 (112)
110100002 (208)
1
enable
1
20
Circuitos sequênciais
Memórias
Escrita
Habilitar a memória: enable = 1
Ativar a escrita: rw = 0
Endereçar: address = endereço
Colocar a palavra a ser escrita (dado) no barramento de dados de escrita (data in)
O dado será armazenado na borda de subida do clock
2
address
8
data out
8
data in
clk
rw
110100002
001001012
101110102
010010002
Endereço 0 (002)
Endereço 3 (112)
Memória 4x8
0
Escrita ativada
enable
1
Memória habilitada
21
Circuitos sequênciais
Memórias
Escrita
Habilitar a memória: enable = 1
Ativar a escrita: rw = 0
Endereçar: address = endereço
Colocar a palavra a ser escrita (dado) no barramento de dados de escrita (data in)
O dado será armazenado na borda de subida do clock
2
address
8
data out
8
data in
clk
rw
110100002
001001012
101110102
010010002
Endereço 0 (002)
Endereço 3 (112)
Memória 4x8
2 (102)
111111112 (255)
0
enable
1
22
Circuitos sequênciais
Memórias
Escrita
Habilitar a memória: enable = 1
Ativar a escrita: rw = 0
Endereçar: address = endereço
Colocar a palavra a ser escrita (dado) no barramento de dados de escrita (data in)
O dado será armazenado na borda de subida do clock
2
address
8
data out
8
data in
clk
rw
110100002
111111112
101110102
010010002
Endereço 0 (002)
Endereço 3 (112)
Memória 4x8
2 (102)
111111112 (255)
0
↑
enable
1
23
Circuitos sequênciais
Memórias
Logisim
24
Circuitos sequênciais
Processador MIPS
Organização/Arquitetura de computadores
Circuitos sequênciais
Memórias
Podem ser classificadas em dois tipos quanto a volatilidade
RAMs (Random Access Memories)
O conteúdo é perdido quando o circuito é desligado (volátil)
Exemplo: Memória principal dos computadores
Conteúdo muda constantemente (muitas leituras/escritas)
ROMs (Read Only Memories)
O conteúdo armazenado não é perdido quando o circuito é desligado
(não-volátil)
Exemplo: BIOS dos computadores
Conteúdo muda poucas vezes ou nunca (muitas leituras/poucas escritas)
26
Circuitos sequênciais
Memórias
RAM (Random Access Memories)
SRAM (Static RAM)
Acesso rápido tanto para leitura quanto para escrita
Tipicamente armazenam poucos MBs e são utilizadas como memória cache em computadores
Possuem preço elevado se considerarmos o custo por MB
DRAM (Dynamic RAM)
Acesso bem mais lento que a SRAM 
Possuem alta capacidade de armazenamento (GBs) e baixo custo por MB em comparação a SRAM
Utilizada como memória principal de computadores 
27
Circuitos sequênciais
Memórias
ROM (Read Only Memory)
PROM (Programmable ROM)
Um dos primeiros tipos de memória ROM
Dados gravados no processo de fabricação
Os dados não podem ser apagados ou alterados
EPROM (Erasable Programmable ROM)
Têm como principal característica a capacidade de permitir que dados sejam apagados e regravados
O apagamento é feito com o auxílio de uma luz ultravioleta
Antes de gravar novos dados, a memória precisa ser apagada por completo
A gravação é feita com um gravador/programador de EPROM
Eram utilizada para armazenar a BIOS nos PCs
28
Circuitos sequênciais
Memórias
ROM
EEPROM/E2PROM (Electrically-Erasable Programmable ROM)
Este tipo de memória ROM também permite a regravação de dados
Ao contrário do que acontece com as memórias EPROM, o processo para apagar e gravar dados é feito eletricamente e pode-se apagar/gravar palavras individualmente
Visto que esta é uma memória não-volatil, o tempo para alterar uma palavra da memória é bem alto se comparado a uma memória RAM
Mesmo que possam ser escritas eletricamente como as RAMs, são utilizadas em aplicações onde na maior parte do tempo os acessos são de leitura
São utilizadas em computadores para armazenar a BIOS (substituindo as EPROMs)
29
Circuitos sequênciais
Memórias
ROM
Flash
Podem ser vistas como uma evolução da EEPROM com um tempo de acesso (leitura/escrita) muito mais rápido
Possuem alta capacidade de armazenamento (GBs)
São utilizadas na fabricação de cartões de memória, pendrives e HDs de estado sólido (SSD – Solid State Drive)
30
Circuitos sequênciais
Cronograma
30/11 (segunda-feira) – Prova 3
Conteúdo a partir de mapas de Karnaugh
3/12 (quinta-feira) – Resolução/Devolução da prova 3
14/12 (segunda-feira) - Exame
31

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais

Outros materiais