Periféricos e interfaces
Tipos de Transmissão
•
Transmissão serial: a transferência de dados é feita um bit de
cada vez, embora o controlador possa ser conectado à CPU
através de um barramento paralelo.
Barramento
paralelo
CPU
•
Interface
buffer
Interface
serial
periférico
Antigamente a comunicação serial era mais lenta que a transmissão
paralela, e era usada em periféricos lentos, no entanto, atualmente a
transmissão serial é usada para transmissão de alta velocidade.
Transmissão serial
•
•
•
Como a transmissão é realizada bit a bit, é necessário que o receptor e o
transmissor estejam sincronizados, e os bits devem ter sempre a mesma
duração..
Se a velocidade de transmissão é de 1000 bits por segundo (1000 bps),
cada bit tem duração de 1/1000 s, ou 1 ms.
O nível de tensão alto pode significar o bit 1 e o nível de tensão zero, o bit 0.
O receptor deve medir o nível de tensão recebido no meio do período de
duração do bit, de 1 ms, para que seja feita a leitura correta.
1ms
medição
transmissor
receptor
Transmissão serial assíncrona
•
•
•
Além de medir os bits corretamente, o receptor deve identificar os grupos
de bits, por exemplo, na recepção de um caractere. Assim, o receptor deve
saber qual o método de transmissão usado.
Há dois métodos para se realizar a transmissão serial: assíncrona e
síncrona.
Transmissão assíncrona: o receptor se sincroniza a cada novo caractere
recebido usando o bit start (valor 0). Os bits seguintes são do caractere e
paridade. Ao terminar são recebidos dois bits stop (valor 1). Antes e após
a recepção do caractere a linha de transmissão fica no estado de repouso.
repouso
repouso
0 0 1 0 0
stop
2 bits
0 0 1
0
start
1 bit
UART (Universal Assynchronous Receiver/Transmitter)
É o circuito usado para a transmissão serial. A função da UART é:
1) decomposição de caracteres em bits para a transmissão e
2) composição de caracteres na recepção.
Caractere
em forma
paralela
Caractere
em forma
paralela
transmissor
receptor
Diagrama interno de uma UART
Dado a transmitir
controle
dado serial
transmissão
dado serial
recepção
controle
Dado recebido
Transmissão síncrona
Os dados são transmitidos em bloco com as características seguintes:
a) não há intervalo entre os caracteres de um bloco
b) o transmissor monta um bloco, usualmente de 128 a 256 caracteres,
e o transmite bit a bit sem intervalo entre o primeiro e o último bit;
c) o receptor deve fazer a leitura bit a bit, portanto deve estar sincronizado
com o transmissor.
d) para a identificação do início e o fim de um bloco, deve existir um grupo
de bits no início do bloco e outro no final do bloco.
CC – caracteres especiais
C1, C2, CN – caracteres de dados
Transmissão paralela
•
•
Na transmissão paralela, um grupo de de bits é transmitido de cada vez, cada
um sendo transmitido por uma linha separada.
Exemplos: chip 8255 (Programmable Peripheral Interface – PPI) da Intel,
interface paralela de impressora, CENTRONICS e
interface SCSI.
Serial x Paralela
• Aparentemente a transmissão paralela deveria ser mais rápida que
a serial, permitindo maiores taxas de transmissão de dados.
• No entanto, quando a velocidade de transmissão dos bits aumenta,
começa a surgir diferenças de tempo de recepção entre os bits
paralelos, denominadas desvio (skew em inglês).
• A solução para evitar o problema de skew é o retorno à transmissão
serial, que elimina o problema pois só existe uma linha de
transmissão.
• Assim usando a transmissão serial pode-se obter velocidades
maiores, em conseqüência surgiu o padrão USB, FireWire e SATA.
Interface sem fio usando
radiofreqüência
BLUE-TOOTH
ESPECTRO DE FREQÜÊNCIAS
Faixa
Som audível
ultrasom
LF
MF
HF
VHF
UHF
SHF
EHF
Ondas Milimétricas
Raios infravermelhos
Luz visível
Raios Ultravioletas
Raios "X“
Raios "Gama“
Raios "Cósmicos“
Desde
20Hz
20 KHz
30 KHz
300 KHz
3 MHz
30 MHz
300 MHz
3 GHz
30GHz
acima de
10 11 Hz
10 15 Hz
10 15 Hz
10 17 Hz
10 19 Hz
10 22 Hz
Até
20.000Hz
30 KHz
300 KHz
3 MHz
30 MHz
300 MHz
3 GHz
30 GHz
300 GHz
300 GHz
10 15 Hz
10 15 Hz
10 16 Hz
10 20 Hz
-----
comprimento da onda
10 7 a 10 5 metros
10 5 metros
10 4 metros
10 3 metros
10 2 metros
10 metros
1 metro
10 - 1 metros
10 - 2 metros
10 - 4 metros
0,7 - 6 metros
0,4 - 6 metros
10 - 8 metros
10 - 9 metros
10 - 13 metros
10 - 14 metros
Rádio AM
RádioTaxi,TV
Fone sem fio
Radio amador
Fone celular
BLUETOOTH
Atribuições internacionais para uso
Faixa de
até
Serviço
530 KHz
1600 KHz
Rádio AM(107 em. 10KHz de banda)
34,48 MHz 34,82MHz
Rádio taxi
38 MHz
40,6 MHz
Telemedição biomédica
40,6 MHz
40,7 MHz
Telemedição de materiais
40,7 MHz
41,0 MHz
Telemedição biomédica
49,6 MHz
49,9 MHz
Telefone sem fio
54 MHz
60 MHz
Televisão VHF – canal 2
60 MHz
66 MHz
Televisão VHF – canal 3
66 MHz
70 MHz
Televisão VHF – canal 4
76 MHz
82 MHz
Televisão VHF – canal 5
82 MHz
88 MHz
Televisão VHF – canal 6
88 MHz
108 MHz
Radio FM (99 CANAIS de 200 KHz)
Microfone sem fio, alcance restrito
108 MHz
117,975 MHz Rádio navegação para aeronáutica
117,975
121,5 MHz
Comunicação móvel para aeronáutica
Atribuições internacionais (cont.)
Faixa de
até
serviço
121,5 MHz
121,5 MHz
Comunicação de socorro
121,5 MHz
136 MHz
Comunicação móvel para aeronáutica
136 MHz
138 MHz
Satélites meteorológicos internacionais
143,65 MHz 148 MHz
Rádio amador
174 MHz
216 MHz
Televisão VHF- canal 7 a 13
470 MHz
806 MHz
Televisão UHF canais 14 a 69
824 MHz
834,4 MHz
Telefonia celular banda “A”
834,4 MHz
845 MHz
Telefonia celular banda “B”
869 MHz
880 MHz
Telefonia celular banda “A”
880,6 MHz
896 MHz
Telefonia celular bandas “A” e “B”
896 MHz
3000 MHz
Outros serviços (BLUE TOOTH)
3 GHz
3,1 GHz
Rádio navegação e rádio localização
Bluetooth (Interface de radiofreqüência)
• Bluetooth é uma tecnologia de baixo custo para a comunicação
sem fio entre dispositivos eletrônicos a pequenas distâncias.
• Começou a ser desenvolvida em 1994, pela Ericsson, e a partir de
1988 pelo Bluetooth Special Interest Group (SIG), consórcio
inicialmente estabelecido pela Sony, Ericsson, IBM, Intel, Toshiba e
Nokia, hoje este consórcio inclui mais de 2000 empresas.
• O nome Bluetooth é uma homenagem ao rei da Dinamarca e
Noruega Harald Blätand - em inglês Harold Bluetooth (traduzido
como dente azul, embora em dinamarquês signifique de tez
escura). Blåtand é conhecido por unificar as tribos norueguesas,
suecas e dinamarquesas. Da mesma forma, o protocolo procura
unir diferentes tecnologias, como telefones móveis e computadores.
Utilização
• É usado para comunicação entre pequenos dispositivos:
PDAs, telefones celulares (telemóveis) de nova geração,
auriculares (headsets), computadores portáteis, comandos das
consoles (Play-Station 3)
• Também é utilizado para a comunicação de periféricos, como
impressoras, scanners, ratos (mouse) e teclados, comandos
remotos, e qualquer dispositivo dotado de um chip Bluetooth.
Freqüência e potência
• Dispositivos Bluetooth operam na faixa ISM (Industrial, Scientific,
Medical) centrada em 2,45 GHz que era formalmente reservada
para alguns grupos de usuários profissionais.
• Nos Estados Unidos, a faixa ISM varia de 2400 a 2483,5 MHz. Na
maioria da Europa a mesma banda também está disponível. No
Japão a faixa varia de 2400 a 2500 MHz.
• Os dispositivos são classificados de acordo com a potência e
alcance, em três níveis:
– classe 1 (100 mW, com alcance de até 100 m),
– classe 2 (2,5 mW e alcance até 10 m) e
– classe 3, (1 mW e alcance de 1 m, uma variante muito rara).
• Cada dispositivo é dotado de um número único de 48 bits que serve
de identificação.
Versões
• Bluetooth 1.0 e 1.0B
Primeira versão do Bluetooth, apresentou problemas técnicos,
principalmente de interdisponibilidade entre dispositivos.
•
Bluetooth 1.2
Muitos erros encontrados na especificação 1.0B foram resolvidos.
Adicionado suporte para canais não encriptados.
Received Signal Strength Indicator RSSI.
• Bluetooth 2.0 + EDR (Enhanced Data Rate)
Detecção e conexão agilizadas.
Adaptação de frequências no espectro (Adaptive frequency-hopping spread
spectrum (AFH)), que melhora a resistência às interferencias.
Maiores velocidades de transmissão na pratica, acima de 721kbit/s, em
relação a especificação 1.1.
• Bluetooth 2.1 + EDR (Enhanced Data Rate)
Forma de comunicação
• Dispositivos Bluetooth comunicam-se entre si e formam uma rede
denominada "piconet", na qual podem existir até oito dispositivos
interligados, sendo um deles o mestre e os outros dispositivos
escravos .
• Múltiplos piconets com áreas sobrepostas formam um scatternet.
• Cada piconet pode ter somente um mestre, mas os escravos
podem participar em diferentes piconets na base de multiplexação
com divisão no tempo (time-division multiplex).
• Um dispositivo pode ser um mestre num piconet e um escravo em
um outro ou um escravo em mais que um.
Protocolo
Protocolo
• Fator comum que permite a interoperabilidade: camada física e a
camada de enlace de dados (BlueTooth Core Protocols).
• Uma aplicação pode usar todos os protocolos mostrados contudo
nem todas as aplicações usam todos os protocolos mostrados.
• Ao invés disso, as aplicações rodam sobre uma ou mais dessas
partes verticais da pilha.
Camadas do protocolo
Camada
física
e enlace
Orientados
às aplicações
Protocol Layer
Protocols in the stack
Bluetooth Core
Protocols
Baseband, LMP, L2CAP, SDP
Cable Replacement
Protocol
RFCOMM
Telephony Control
Protocol
TCS Binary, AT-Commands
Adopted Protocols
PPP, UDP/TCP/IP, OBEX, WAP,
vCard, vCal, IrMC, WAE
• O Bluetooth Core protocols (e o Bluetooth radio) são requeridos
pela maioria dos dispositivos Bluetooth enquanto os demais
protocolos são usados somente quando necessários.
• A combinação da camada de Cable Replacement, camada de
Telephony Control e camada de adopted protocol forma os
protocolos orientados às aplicações que permitem aplicações
rodarem sobre o Bluetooth.
• Maiores detalhes:
http://www.tutorial-reports.com/wireless/bluetooth/tutorial.php
Comparação IrDA x BlueTooth
IrDA 1.0: comunicações até 115.200 bps (~100Kbps)
IrDA 1.1: comunicações até 4.194.304 bps (4Mbps)
alcance ~ alguns metros
BlueTooth – 721 Kbps
– classe 1 (100 mW, com alcance de até 100 m),
– classe 2 (2,5 mW e alcance até 10 m) e
– classe 3, (1 mW e alcance de 1 m, uma variante muito
rara).
Adaptadores de Vídeo
RAM de vídeo
• Ambos os monitores, CRTs e TFTs são renovados de 60 a 100
vezes por segundo por uma memória especial denominada RAM de
vídeo.
• Essa memória tem um ou mais mapas de bits que representam a
tela.
• Em uma tela, p. ex., com 1600x1200 elementos de imagem (pixels)
uma RAM de vídeo teria 1600x1200 valores, um em cada pixel.
• Na verdade, pode conter muitos desses mapas de bits para permitir
a passagem rápida de uma imagem de tela para outra.
• Geralmente em um monitor tem em cada pixel três bytes, um para
cada intensidade dos componentes vermelho, verde e azul da cor
do pixel.
PALETA DE CORES
• Uma RAM de vídeo de 1600x1200 pixels a 3 bytes/pixel requer
quase 5,5 MB para armazenar a imagem e uma boa quantidade
de tempo de CPU para fazer qualquer processamento.
• Por essa razão, alguns computadores adotam uma solução de
conciliação usando um número de 8 bits para indicar a cor
desejada.
• Então esse número é usado como um índice para uma tabela
denominada paleta de cores, que contem 256 entradas, cada
uma com um valor de 24 bits.
• Esse esquema reduz o tamanho da memória, porém permite
somente 256 cores na tela num determinado instante.
Adaptadores de vídeo modo texto
A primeira interface de vídeo criada pela IBM para os PCs foi
chamada de MDA (Monochrome Display Adapter).
CPU
MUX
MEMÓRIA
REFRESH RAM
ASCII
LINHA
CRTC
ROM
GERADORA
CARACTERES
a memória contem o código
ASCII de todos os caracteres
a serem mostrados na tela.
Contem a configuração de pixels
de todos os caracteres visíveis
REG.DESL.
SINAL
DE VÍDEO
MONITOR
SINC. HORIZONTAL
SINC.VERTICAL
Timing
CRTC = Controladora de CRT (chip do tipo 6845)
Modo texto (IBM PC)
•
•
•
•
A tela do monitor de vídeo é dividida em
80 colunas por 25 linhas, total de 2000
posições.
Caractere 7x9
Linha 1
CARACTERE
Linha 9
A caixa de caracteres do MDA foi definida
para 9 x 14 pixels sendo que um caractere
típico ocupa uma matriz de 7x9 dentro da
caixa
ASCII = 31h
É usada a ROM geradora de caracteres,
que recebe como entrada o código ASCII
do caractere a ser mostrado e a linha
correspondente à visualização.
O sinal de vídeo é obtido fazendo o
deslocamento bit a bit do padrão de bits
gerado, e é mostrado na tela sincronizado
horizontalmente e verticalmente na tela.
Caractere 7x9
Linha 1
LINHA = 2
Linha 9
ROM GERADORA DE CARACTERES
Adaptadores modo gráfico colorido
• CGA (Color Graphics Adapter)
– O primeiro adaptador de vídeo
com tecnologia bit-map criado
pela IBM para o PC.
– Exibição de 16 cores puras, vários
modos gráficos, com resoluções
diferentes.
– Memória de 16 KBs, acessível
diretamente pelo processador
principal.
– Opera dentro dos limites da faixa
horizontal de 15,525 KHz e faixa
vertical de 60 Hz (compatível com
TV) e divide a tela na matriz de
pixels: 640 na horizontal e 200 na
vertical.
terra
intensidade
terra
reservado
vermelho
Sinc. horizontal
verde
Sinc. vertical
azul
Conector CGA
(delta de 9 pinos)
Adaptador modo
gráfico colorido
CPU
MUX
MEMÓRIA
REFRESH RAM
A memória contem
os valores de pixels
para toda a tela
A paleta é
uma tabela
que fornece
as cores dos
pixels
Paleta
de
cores
REG.DESL.
REG.DESL.
REG.DESL.
SINAL
SINAL
DE VÍDEO
SINAL
DE VÍDEO
DE VÍDEO
CRTC
SINC. HORIZONTAL
SINC.VERTICAL
TIMING
vermelho
verde
azul
Conector
CGA
EGA (Enhanced Graphics Adapter)
• Em 1984, as deficiências do CGA se tornaram evidentes:
– A dificuldade de leitura de textos e gráficos de má qualidade
• Melhoramentos do EGA:
– Aumento da resolução da tela;
– Possibilidade de uso de gráficos em vídeos monocromáticos; e
– Acrescentava novas rotinas ao BIOS.
• Resolução do EGA: 640 X 350 pixels.
• A freqüência horizontal mudou para 22,1 KHz, e a freqüência
vertical foi mantida em 60 Hz. Com essas freqüências de varredura
ficou incompatível com os aparelhos de TV.
• A paleta de cores foi ampliada para 64 tons diferentes, e na
configuração mínima tinha 64 KBs de memória RAM.
Conector EGA
Cada canhão de cor
foi associado a dois
sinais (primário e
secundário).
A combinação desses
dois sinais pode gerar
4 intensidades de cores.
terra
Vermelho
secundário
Vermelho
primário
Verde secundário/
intensidade
Azul secundário/
vídeo mono
Sinc. horizontal
A combinação de 3 canhões
cada um com 4 intensidades
de cores, resulta em
64 cores.
Verde
primário
Sinc. vertical
Azul
primário
VGA (Vídeo Graphics Array)
• O modo gráfico atinge a resolução de 640x480 pixels, com 16 cores
simultâneas selecionadas em uma paleta de 256 K tons.
• No seu modo mais colorido, com resolução de 320x200 pixels,
suporta até 256 tons ao mesmo tempo na tela, sendo as cores
selecionadas numa paleta de 262.144 tons.
• A freqüência de varredura horizontal é de 31,5 KHz, e a velocidade
de quadro ou varredura vertical foi aumentado para 70 Hz, na
maioria dos modos de vídeo.
• O armazenamento de gráficos de 640x480 pixels em 16 cores exige
muita memória, aproximadamente 230KBs.
Conector VGA
SVGA (Super VGA)
• Originalmente foi uma extensão do padrão VGA.
• Diferente de VGA, padrão definido pela IBM, o Super VGA foi
definido pela Video Electronics Standards Association (VESA), um
consórcio estabelecido para promover a interoperabilidade e definir
padrões.
• Quando usado como uma especificação de resolução, o termo
SVGA normalmente se refere à resolução de 800x600 pixels.
• O Super VGA foi definido primeiramente em 1989. Na primeira
versão, tinha uma resolução de 800x600 e pixels de 4 bits.
• Cada pixel poderia ter portanto 16 cores distintas.
• Rapidamente foi estendido para 1024x768 e 8 bits por pixel.
XGA (eXtended Graphics Array)
• XGA é um padrão de visualização introduzido pela IBM em 1990.
• Atualmente é o nome dado à visualização de 1024x768 pixels, mas a
definição oficial é maior.
• A versão inicial do XGA expandia sobre o VGA adicionando suportes a
duas resoluções:
– 800 × 600 pixels com alta coloração (16 bits por pixel, i.e. 65,536
colors).
– 1024 × 768 pixels com uma paleta de 256 cores (8 bits por pixel)
• Como o seu predecessor (IBM 8514), XGA oferece aceleração em
hardware de funções fixas de processamento 2D, como de traçar linhas,
copiar bitmaps, e preencher cores.
• A aceleração do XGA é mais rápida que o 8514, e suporta mais
primitivas gráficas e possui o modo de 16 bits por pixel (65,536 cores).
Aceleradores gráficos
(Graphics Processing Units- GPUs)
• Os aceleradores gráficos incorporam chips que contem operações
matemáticas especiais usados em renderização gráfica.
• A eficiência desses chips determina a eficiência do acelerador
gráfico, que são usados principalmente para jogos 3D ou
renderização 3D.
• Implementa um número de operações de primitivas gráficas de tal
forma que o traçado gráfico seja mais rápido que o traçado direto
usando a CPU hospedeira.
• As operações mais comuns para computação gráfica 2D incluem a
BitBLT (transferência de blocos de bits), e operações de traçados
de retângulos, triângulos, círculos e arcos.
• Chips modernos suportam também a computação gráfica 3D, e
tipicamente incluem funções relativas a vídeo digital.
Anos 1980.
• Commodore Amiga foi o primeiro computador produzido
maciçamente incluindo a função gráfica em hardware e o sistema
gráfico IBM 8514 foi um dos primeiros cartões de vídeo a
implementar as primitivas 2D em hardware..
• O Amiga foi o único na época que incorporava o fator que hoje
seria reconhecido como um acelerador gráfico, tendo um
coprocessador gráfico que, independentemente da CPU, realizava
praticamente todas as funções de geração de vídeo por hardware,
incluindo o traçado de linhas, preenchimento de áreas, transferência
de imagens por blocos.
• Antes disso, e até muito tempo após, uma CPU de propósito geral
tinha que manipular todos os aspectos de visualização.
Anos 1990
• No início da década de 1990, com o desenvolvimento do Microsoft
Windows surgiu o interesse pelos gráficos 2D de alta velocidade e
alta resolução, interesse que anteriormente só existia para
workstations UNIX e Apple Macintosh.
• Para o mercado do PC, o interesse era focalizar agora o
desenvolvimento numa interface de programação, Graphics Device
Interface (GDI).
• Em 1991, S3 Graphics introduziu o primeiro chip acelerador 2D, o
S3 86C911 (denominado Porsche 911 para indicar a velocidade
que prometia).
• Em 1995, todos os grandes fabricantes de chips gráficos tinham
adicionado o suporte de aceleração 2D nos seus chips.
• Assim os aceleradores gráficos ultrapassaram os coprocessadores
gráficos de uso geral de custo elevado, que desapareceram do
mercado.
• Nessa época os gráficos 3D tornaram-se comuns em
computadores e jogos, que levaram a um aumento na demanda aos
aceleradores de gráficos 3D.
2000 em diante
• Com o advento do DirectX 8.0 API e funcionalidade similar em OpenGL,
GPUs adicionaram o sombreamento (shading).
• Cada pixel pode agora ser processado por um pequeno programa que
pode incluir textura de imagem adicional como entrada, e cada vértice
geométrico pode ser processado por um pequeno programa antes de
ser projetado na tela.
• NVIDIA foi o primeiro a produzir um chip capaz de programar
sombreamentos, o GeForce 3 (também chamado NV20).
• Em outubro de 2002, com a introdução do ATI Radeon 9700 (também
conhecido como R300), o primeiro acelerador Direct3D 9.0, as
operações de pixel shading e vertex shading tornaram-se mas rápidas.
• Pixel shading é usado muitas vezes em mapeamento de “batidas”, que
adiciona texturas, para fazer um objeto ficar mais brilhante, rústico, ou
mesmo arredondado.
GPUs usados para melhorar o
desempenho de processamento
• GPUs modernos são muito eficientes na manipulação e
visualização de gráficos, e sua estrutura altamente paralela os torna
mais efetivos que os CPUs de propósito geral, para uma larga faixa
de algoritmos complexos.
• Um GPU pode se situar no topo de um cartão de vídeo, ou pode
ser integrado diretamente na placa mãe.
• Em mais que 90% dos computadores desktop e notebook os GPUs
integrados são usualmente muito mais poderosos que os seus
hospedeiros.
GPUs usados para melhorar o desempenho
de processamento (cont.)
• Atualmente, os GPUs paralelos tornaram os transgressores para os
CPUs, abrindo um campo de pesquisa denotado GPGPU(General
Purpose Computing on GPU).
• Assim GPUs são usados para processamentos em diversos
campos como em exploração de petróleo, processamento de
imagens científicas.
• Existe uma pressão crescente sobre os fabricantes de GPUs pelos
usuários GPGPU para melhorar o projeto do hardware, focalizando
a adição de maior flexibilidade ao modelo de programação.
MONITORES COM PROJEÇÃO POSTERIOR
• DLP (Digital Light Processing), foi desenvolvida pela Texas Instruments,
em 1987 pelo Dr. Larry Hornbeck:
– No projetor DLP uma luz é dirigida à superfície de um circuito
integrado, cuja superfície refletora se compõe de milhares de
microespelhos, cada um modulando o comportamento de cada pixel
que é projetado na tela.
– Sistemas DLP de chip único são capazes de projetar 16,7 milhões de
cores (24 bits de níveis de cor), enquanto os sistemas DLP de 3 chips
podem projetar até 35 milhões de cores.
• A matriz de microespelhos é denominado Dispositivo Microespelhado
Digital ou Digital Micromirror Device (DMD).
• O número de microespelhos corresponde à resolução da imagem
projetada. As matrizes 800x600, 1024x768, 1280x720 e 1920x1080
(HDTV) são os tamanhos DMD mais comuns.
LCoS (Liquid Crystal on Silicon)
• A tecnologia LCoS cria imagens usando um espelho fixo montado
sobre a superfície de um chip, e usa uma matriz de cristal líquido
para controlar a quantidade de luz refletida.
• A produção de chips LCoS é complexa, o que torna o sistema mais
dispendioso que o DLP.
Memória FLASH
As memórias Flash foram inventadadas por Fujio Masuoka quando
trabalhavam na empresa Toshiba em 1984.
O nome foi sugerido pelo seu colega Shoji Ariizumi, devido ao
processo de apagamento parecido com o flash de uma câmera.
Masuoka apresentou a invenção no IEEE 1984 International Electron
Devices Meeting (IEDM) em San Francisco, California. Intel viu o
potencial da invenção e introduziu o primeiro chip comercial tipo NOR
em 1988.
FLASH MEMORY
• Memória Flash é uma memória regravável não volátil.
• Começa a ser chamado de disco sólido, é mais resistente que
os discos rígidos atuais, apresenta menor consumo, maiores
taxas de transferência, e menores latências e pesos.
• Chega a consumir apenas 5% da energia em relação aos
discos rígidos.
• Já é utilizado em notebooks, o que será expandido para a
versão desktop nos próximos 5 anos
Single-Level Cell e Multi-Level Cell
• Memória Flash armazena informação num arranjo
de transistores de gate flutuante, chamadas
células (cells).
• Em dispositivos tradicionais single-level cell
(SLC), cada célula armazena apenas um bit de
informação.
• Algumas memórias flash mais recentes,
conhecidas como multi-level cell (MLC), podem
armazenar mais que um bit por célula escolhendo
entre múltiplos níveis de cargas elétricas a serem
aplicadas nos gates flutuantes das células.
Uma célula de memória flash
Cada célula parece
um MOSFET, com
duas portas ao
invés de uma.
No topo fica a porta
de controle, e
abaixo fica a porta
flutuante isolado ao
redor por uma
camada de óxido.
CG – porta
de controle
Porta flutuante
Substrato
de silício
• Quaisquer elétrons inseridos no FG, são mantidos de tal forma que, sob
condições normais, não será descarregado por um período de muitos anos.
• Quando o FG mantem uma carga, ele influencia no campo elétrico do CG,
que modifica a voltagem de limiar (VT) da célula.
• Durante a leitura, uma voltagem é aplicada ao CG, e o canal MOSFET torna
condutor, dependente do VT da célula, controlado pela carga no FG.
• Nos dispositivos single-level cell, a presença ou ausência de corrente
através do canal MOSFET é lida para verificar o dado armazenado.
• Num dispositivo multi-level cell, que armazena mais que um bit por célula, é
lida a intensidade de corrente (ao invés da presença ou ausência da
mesma), para determinar precisamente o nível de carga no FG.
Escrita
• Uma célula flash NOR está no seu estado default no valor lógico
equivalente ao valor “1” binário, pois a corrente flui através do canal
sob aplicação de uma voltagem apropriada ao CG.
• A célula pode ser programada, passando para o valor “0” binário,
pelo seguinte procedimento:
– Aplicando uma voltagem (tipicamente >5 V) ao CG o canal torna-se
agora ligado, tal que os elétrons fluem do dreno para a fonte
– A corrente dreno-fonte é suficientemente alta que causa alguns elétrons
de alta energia saltarem pela camada isolante para o FG, por um
processo chamado de hot-electron injection
Programação de uma célula de memória
NOR( 0 lógico), via injeção de elétron
Corrente
elétrica
Apagamento
• Para apagar uma célula NOR (reset para "1"), uma voltagem grande de
polaridade oposta é aplicada entre o CG e o dreno, puxando os elétrons
fora do FG através de quantum tunneling.
• Modernos chips de memória flash NOR são divididos em segmentos de
apagamento (muitas vezes chamados de blocos ou setores).
• A operação de apagamento pode ser realizada somente por blocos; todas
as células no segmento de apagamento são apagadas simultaneamente.
•
• A programação no entanto pode ser realizada um byte ou uma palavra por
vez.
• Apesar da necessidade de alta voltagem de programação e apagamento,
virtualmente todos os chips atuais requerem somente uma fonte de
tensão, e produzem as altas voltagens on-chip via bombeamento (charge
pumps).
Apagando uma célula de memória NOR (1 lógico),
via tunelamento quântico
corrente
Fiação e estrutura de uma
memória flash NOR.
Memórias flash (NOR)
• A memória flash tipo NOR tem tempo de apagamento e escrita
muito longo, mas provê barramento completo de endereçamento e
de dados, permitindo o acesso aleatório a qualquer posição da
memória.
• Isso torna possível a substituição dos chips ROMs, usados para o
armazenamento de códigos de programas que raramente precisam
de atualização, como de BIOS.
• Suporta de 10,000 a 1,000,000 ciclos de apagamento.
MEMÓRIA FLASH NAND
• Toshiba anunciou a memória flash tipo NAND em 1989.
• Ela tem velocidade de apagamento e escrita mais rápida, e requer
menor área de chip por célula, permitindo maior densidade e custo
menor por bit que a memória tipo NOR.
• Contudo, a interface de E/S da memória tipo NAND não provê um
barramento externo de endereçamento completo.
• Os dados devem ser lidos em blocos, com tamanho típico de centenas
a milhares de bits. Isso torna a memória NAND inadequada para
substituir os ROMs de programa.
• Contudo a memória flash NAND é similar a outros dispositivos secundários
de armazenamento tais como discos rígidos e discos ópticos, e portanto
adequados para o uso como dispositivos de armazenamento maciço como
cartões de memória.
O primeiro formato de meio removível tipo NAND foi o
SmartMedia, e muitos outros foram seguidos,
incluindo MultiMediaCard, Secure Digital, Memory
Stick e xD-Picture Card.
Uma nova geração de formatos de cartões de memória,
incluindo RS-MMC, miniSD e microSD, e intelligent Stick,
tem fatores de forma extremamente pequenos. O cartão
microSD tem uma área de 1.5 cm², com uma espessura
menor que 1 mm.
Apagamento por bloco
• Uma limitação de memória flash é que apesar da leitura ela seja lida
ou programada por byte ou palavra por vez, aleatoriamente, ela deve
ser apagada em bloco, que coloca todos os bits do bloco em 1.
• Começando com um bloco recentemente apagado, qualquer posição
dentro do bloco pode ser programado. Contudo, uma vez que um bit 0
é escrito, esse bit só pode ser reescrito para 1, apagando o bloco
inteiro.
• Em outras palavras, a memória flash (especificamente NOR) apesar
de oferecer acesso aleatório para leitura e escrita, não pode oferecer
operações arbitrárias de reescrita e apagamento.
• Uma posição pode ser reescrita enquanto o novo valor seja de bit 0.
Por exemplo o valor 1111, pode ser reescrito para 1110. Sucessivas
escritas podem mudar para 1010, então 0010, e finalmente 0000.
• Essa técnica pode ser modificada por dispositivos multi-níveis, onde
uma célula de memória pode conter mais que um bit.
Número finito de ciclos de apagamento
• Uma outra limitação de memórias flash é o número finito de ciclos
de apagamento-escrita (a maioria dos produtos comercialmente
disponíveis são garantidos até 100.000 ciclos de apagamentoescrita para o bloco 0, e nenhuma garantia para outros blocos.
• Esse efeito é parcialmente resolvido em alguns casos contando as
escritas fazendo o remapeamento dinâmico de blocos para distribuir
as operações de escrita entre os setores. Essa técnica é chamada
de wear levelling.
• Um outro mecanismo é realizar uma verificação de escrita e
remapeamento para setores substitutos (spare sectors) no caso de
falhas, chamado de gerenciamento de blocos ruins (bad block
management - BBM).
• Com esses mecanismos, alguns analistas calculam que as
memórias flash podem ser escritas a velocidade máxima
continuamente por 51 anos.
USB flash disk (pendrive)
• Existe normalmente quatro partes num flash disk:
– Conector USB macho do tipo A – Interface com o computador.
– Controlador USB Mass Storage – Implementa o controlador
USB e disponibiliza uma interface linear e padronizada (pelo
próprio padrão USB). O controlador contém um
microprocessador RISC e uma quantidade (em geral reduzida)
de memória ROM e RAM embutida.
– NAND flash – Armazena a informação, o mesmo tipo de
memória é usado em câmeras digitais
– Oscilador de cristal – Produz um sinal de relógio com 12 MHz,
que é usado para ler ou enviar dados a cada pulso.
Flash disk
1 Conector USB
2 Dispositivo de controle de
armazenamento USB
3 Pontos de teste
4 Chip de memória flash
5 Oscilador de cristal
6 LED
7 Chave de proteção
contra gravação
8 Espaço para um chip de
memória flash adicional
Download

BlueTooth