• Nenhum resultado encontrado

Memorias

N/A
N/A
Protected

Academic year: 2021

Share "Memorias"

Copied!
19
0
0

Texto

(1)
(2)

Memórias Semicondutoras

1 Introdução

Um circuito que permite o armazenamento de um ou mais bits por tempo indeterminado é denominado memória. Tais bits podem ser acessados (procedimento de leitura) ou substituídos (procedimento de escrita ou armazenamento).

2 Tipos de Memória

O desenvolvimento e expansão da tecnologia de fabricação de circuitos integrados para armazenamento de dados determinaram o grande avanço dos computadores digitais.

Até 1970, as memórias de núcleo de ferrite eram de uso corrente. Entretanto, por causa do seu alto custo, grande consumo e limitações em velocidade forma substituídas pelas memórias semicondutoras que lideram o mercado até hoje.

3 Características gerais

A seguir apresentamos algumas características que podem ser usadas quando queremos avaliar o desempenho de um determinado dispositivo de memória.

3.1 Densidade:

Número de bits armazenados por área física. Está relacionado à capacidade total de armazenamento.

3.2 Velocidade:

Se refere à rapidez com que os dados podem ser acessados (lidos) ou armazenados (escritos).

3.3 Potência:

Potência consumida ou dissipada pela memória.

3.4 Custo:

Custo para armazenamento por bit, ou seja, o valor do semicondutor dividido pelo número de bits que pode armazenar.

(3)

Outras características são fornecidas especificamente por cada fabricante de circuito integrado, tais como os sinais de comandos, parâmetros elétricos e imunidade a ruídos.

4 Definições

No manuseio com memórias a semicondutor é comum o uso de expressões referentes aos modos de operação, aos terminais de entrada/saída, à capacidade de armazenamento e a sinais de controle.

Escrita (Write): Termo usado para o procedimento de armazenamento de uma informação binária na memória. Em uma operação de escrita, a informação colocada nas entradas de dados é copiada para uma posição ou endereço da memória.

Leitura(Read): Termo usado para o procedimento de obtenção, ou busca, de uma informação armazenada em uma memória. Em uma operação de leitura, a informação é armazenada na posição correspondente às entradas de endereço e copiada nos bits de saída.

Conteúdo ou palavra: Corresponde à informação – grupo de bits – armazenada em uma determinada posição da memória.

Entradas de endereço (Address): Correspondem aos terminais do circuito integrado usados para identificar um certa posição de memória.

Entradas de dados (Datas): Correspondem aos terminais do circuito integrado usados para introdução dos dados a serem armazenados.

Saída de dados (Outputs): Correspondem aos terminais do circuito integrado onde serão colocados os dados armazenados em uma dada posição da memória, em uma operação de leitura.

Nibble: Termo usado para uma informação binária com 4 bits.

Byte: Termo usado para uma informação binária com 8 bits.

Kilobyte: Termo usado para um conjunto de 1024 bytes

Memória volátil: É aquela que perde o seu conteúdo na ausência de alimentação.

(4)

Habilitação de chip (Chip enable): Uma entrada do chip que, quando polarizada convenientemente, habilita ou inibe a operação do chip provocando uma redução na potência dissipada e impedindo a operação escrita/leitura. Normalmente tais entradas são designadas por

CE

(quando a habilitação é com nível 1) ou

CE

(quando a habilitação é com nível 0). Nem todos os chips possuem este tipo de entrada.

Seleção do chip (Chip select): Uma entrada do chip usada para conectar ou desconectar – colocar as saídas em alta impedância – as entradas/saídas a um barramento. Normalmente

tais entradas são designadas por

CS

(quando a habilitação é com nível 1) ou

CS

(quando a habilitação é com nível 0). A maioria dos chips possue este tipo de entrada. Em alguns circuitos as entradas CE e CS são combinadas em uma única entrada.

5 Classificação

O critério para a escolha das memórias disponíveis no mercado é descrito a seguir:

5.1 Quanto à forma de acesso

As principais formas de acesso à uma posição de memória podem ser do tipo aleatório ou seqüencial.

Nas memórias do tipo aleatório, qualquer posição pode ser acessada aleatoriamente, ou seja, pode ser lida diretamente sem a necessidade da leitura das demais posições. Caso, por exemplo, das memórias RAM e ROM, descritas a seguir.

Nas memórias seqüenciais, uma posição não pode ser feita diretamente. Neste caso, várias posições da memória são acessadas até a informação desejada, é o caso das fitas magnéticas, dos registradores de deslocamento e das memórias de bolha magnética.

O tempo para ler uma informação em uma memória seqüencial depende da posição de armazenamento.

5.2 Quanto à tecnologia

Normalmente as memórias são do tipo bipolar, MOS (semicondutor de óxido metálico) ou CMOS (semicondutor de óxido metálico complementar).

(5)

No caso das memórias bipolares, encontramos com facilidade circuitos TTL padrão, Schottky e ECL. No caso dos circuitos MOS, os de canal N são os mais usados por favorecerem grande densidade a custo baixo. As memórias CMOS são mais lentas do que as NMOS e bipolares, contudo são de menor consumo e maior imunidade ao ruído.

5.3 Quanto a capacidade de armazenamento

Este parâmetro está relacionado ao número total de bits ou palavras que a memória pode armazenar. Por exemplo, uma memória com 1024 X 8 corresponde a uma capacidade de 1024 palavras, cada uma com 8 bits, ou seja, com capacidade para 8192 bits.

5.4 Quanto ao tipo de saída

As saídas das memórias podem ser do tipo Totem-polem, Open collector ou Tree-state.

As memórias do tipo Three-state são as mais usadas por permitirem, de forma eficiente, a criação de bancos de memória descritos adiante.

6 Memórias RAM

As memórias RAM (Random Access Memory) são do tipo volátil e permitem o acesso aleatório – para escrita ou leitura – a qualquer uma das suas posições.

São usadas para armazenar temporariamente as informações, tais como os programas corrente do usuário. Também são conhecidas como memórias read/write porque permitem a leitura e escrita.

O tempo de acesso para cada posição das memórias RAM é aproximadamente igual.

(6)

6.1 RAM

estática

Um dispositivo de armazenamento volátil com tecnologia bipolar ou MOS (NMOS e CMOS) onde os bits são armazenados em uma estrutura tipo flip-flop.

6.2 RAM

dinâmica

Um dispositivo de armazenamento volátil com transistores MOS, onde a estrutura de armazenamento é capacitiva.

Neste caso, a informação se perde com o tempo, independentemente da manutenção da alimentação – razão do nome dinâmica. Por esta razão, precisa passar periodicamente por um processo de refrescamento (refreshing), onde as informações são lidas e regravadas (recarga dos capacitores).

Isto implica na necessidade de circuitos externos específicos. Normalmente a operação de refrescamento é feita durante uma operação de leitura, através de um circuito projetado especificamente para este fim.

Apesar de a necessidade de refrescamento, a grande vantagem das memórias dinâmicas sobre as estáticas é permitir uma grande densidade de fabricação dos chips – quatro vezes maior que as estáticas – com baixo consumo que é da ordem de três a cinco vezes menor do que as estáticas.

6.3 Arquitetura

Normalmente as memórias RAM são organizadas (Figuras 1 e 2) em forma de matriz nXm – n palavras, cada uma com m bits, com os seguintes tipos de entradas:

1) m bits para saídas de dados;

2) m bits para entradas de dados;

3) p bits para entradas de endereços, tal que 2P = n;

4) Entrada R W para comando leitura/escrita;

5) Entrada tipo CS para comando Tree-state.

Basicamente os mesmos terminais existem nas memórias ROM – descritas adiante – exceto o pino de leitura/escrita.

(7)

A Figura 2 apresenta uma forma matricial semelhante a um edifício com oito andares e oito apartamentos por andar. Observe que a informação 10111011 está armazenada no endereço 0, 01100110 no endereço 1 e assim sucessivamente.

Figura 1 – Memória RAM

(a) (b)

Figura 2 – Memória RAM – a)Memória 8X8 e b)Forma Matricial

6.4 Procedimento para leitura/escrita

Em operação normal, a memória deve permanecer na forma de leitura, onde devemos ter:

1) A entrada R W , correspondente ao comando de leitura/escrita, em

(8)

2) Níveis lógicos estáveis nas entradas de endereço e correspondentes à locação de memória a ser lida.

3) As saídas apresentam uma cópia da informação armazenada na locação desejada.

Para procedermos ao armazenamento (escrita) de uma informação em uma dada posição devemos seguir os passos abaixo:

1) Colocar a entrada R W em nível 0;

2) Colocar CS em 1, ou seja, ativar o terceiro estado das saídas;

3) Colocar os dados a serem armazenados nas entradas de dados;

4) Colocar níveis lógicos estáveis nas entradas de endereço, correspondentes à locação de memória onde queremos armazenar os dados;

5) Colocar a entrada R W em nível 0, durante um intervalo de tempo

mínimo igual ao tempo de escrita da memória. Enquanto esta entrada estiver em nível 0, as linhas de dados e de endereço devem permanecer inalteradas;

6) Colocar a entrada R W em nível 1, retornando à posição de leitura;

7) Repetir os passos anteriores para o armazenamento nas demais posições da memória.

Todos esses procedimentos devem ser executados de forma a garantir os parâmetros no tempo especificados para cada memória.

7 Memórias ROM

As memórias ROM (Read Only Memory) são do tipo fixa e permitem o acesso aleatório a qualquer uma das suas posições. Permite apenas leitura do conteúdo e é destinada a guardar uma informação de forma permanente.

A informação é gravada pelo fabricante através da queima de diodos em uma matriz (Figura 3) conforme solicitação do usuário. Podem ser do tipo bipolar ou MOS.

(9)

Quando a matriz é manufaturada, diodos são colocados em todos os cruzamentos. Através de um processo próprio, os diodos são queimados convenientemente. Se, a cada instante, apenas uma das linhas x,y,z ou w assume nível 1, os diodos destas linhas são polarizados diretamente através dos resistores R.

Por exemplo, se XYZW = 1000, somente os diodos D1, D2, D3 e D4 serão polarizados diretamente. As saídas S1, S2, S3 e S4 são iguais, respectivamente, às tensões nos diodos diodos D1, D2, D3 e D4 menos 0,6V.

Para garantir que apenas uma das linhas X, Y, Z ou W assuma nível 1, podemos usar um decodificador conforme a figura 4, onde A0 e A1 operam como linha de endereço.

Figura 3 – Matriz ROM 4X4

(10)

7.1 PROM – ROM programável pelo usuário

Uma memória bipolar onde o armazenamento é feito pelo usuário – agilizando os processos industriais – através da queima de diodo ou de um fusível colocado em série com o diodo, ou seja, o armazenamento não ocorre durante a fabricação do chip.

O procedimento para a queima dos diodos é fornecido pelos fabricantes e específico para cada circuito.

Note que, uma vez programada, a memória não pode ser apagada para correções ou nova utilização.

7.2 ROM

alterável

Memórias que podem ser programadas e reprogramadas pelo usuário, ou seja, em casos de erros de programação o chip não precisa ser descartado, como nas memórias PROM. A programação é feita pela aplicação de sinais elétricos convenientes em pinos do chip e indicados pelos fabricantes.

7.2.1 EPROM – Erasable PROM

Um dispositivo com arquitetura similar às PROM, mas do tipo MOS, onde o conjunto inteiro das informações armazenadas pode ser apagado através da aplicação de raios ultravioletas em uma janela de quartzo localizada em uma das faces do chip.

É implementada usando o princípio de armazenamento do tipo Floating-gate Avalanche Injection MOS (FMOS). Em um transistor PMOS, um potencial negativo aplicado ao gate produz um canal de condução de cargas positivas (buracos) entre a fonte e o dreno. No transistor FMOS, para causar a condução da fonte para o dreno e o conseqüente armazenamento de cargas negativas no gate, devemos aplicar um pulso da ordem de 25 a 50 volts na junção p-n (dreno/fonte). Cerca de 20 a 30% da carga armazenada se perde depois de 20 anos.

E2PROM – Electrically Erasable ROM

Neste tipo de memória, tanto a gravação como a desgravação é feita por sinais elétricos. O principal meio de implementação é o Metal Oxide Semicondutor NMOS. Na

(11)

verdade é um MOS modificado onde é usado um capacitor de carga que alcança um tempo de armazenamento entre 20 a 30 anos.

Uma tensão elevada e da ordem de 20V entre porta e dreno provoca a indução de cargas nas portas flutuantes que ali permanecem quando a tensão é retirada.

Uma tensão inversa apaga a carga armazenada. Desta forma, tanto a programação como o apagamento pode ser feito por posições de memória. Não é preciso apagar toda a memória para corrigir algum dado ou usar a memória com novos valores.

Parâmetros de tempos das memórias

Os tempos de chaveamento em uma memória são complicados. Tais tempos são devido aos atrasos nas portas internas, às restrições impostas pelos tempos de manutenção e preparação de flip-flops e ao grande número de terminais.

A Figura 5 apresenta os sinais em uma operação de escrita em memória RAM. Note

que a entrada CS garante a seleção do chip para nível 0, intervalo entre t0 e t7.

Como normalmente as linhas de endereço (Ai’s) e dados (Di’s) são múltiplas, não podem ser representadas por um sinal em nível 0 ou 1. Por esta razão, quando válidas são representadas por linhas cruzadas. Caso, por exemplo, dos dados válidos entre os instantes t2 e t5.

(12)

Normalmente os tempos são medidos à partir do instante em que um sinal ascendente atinge 90% do nível 1 ou do instante em que um sinal descendente atinge 10% do nível 0.

Os tempos da Figura 5 são assim definidos:

1) Tempo hold para dados (Thd = t5-t4)

Tempo mínimo de permanência das linhas de dados após pulso de escrita.

2) Tempo hold para endereços (The = t6-t4)

Tempo mínimo de permanência das linhas de endereço após pulso de escrita

3) Tempo hold para seleção (Ths = t7-t4)

Tempo mínimo de permanência das linhas de seleção após pulso de escrita

4) Largura do pulso de escrita (Te = t4-t3)

Duração mínima do pulso de escrita

5) Tempo de set-up para dados (Tsd = t3-t2)

Tempo transcorrido desde a estabilidade das linhas de dados e o início de armazenamento.

6) Tempo de set-up para endereços (Tse = t3-t1)

Tempo transcorrido desde a estabilidade das linhas de endereços e o início de armazenamento.

7) Tempo de set-up para seleção (Tss = t3-t0)

Tempo transcorrido desde a seleção do chip até o início de armazenamento.

8) Tempo de escrita

Intervalo de tempo decorrido desde o instante no qual as entradas de endereço e de dados se estabilizam até o instante em que os dados são efetivamente armazenados.

Na operação de leitura, tanto para as RAM como para as ROM, os sinais envolvidos são como os da Figura 6.

(13)

Figura 6 – Sinais em uma operação de leitura

Os tempos da figura anterior são assim definidos:

1) Tempo hold para dados (Thd = t4-t3)

Intervalo de tempo em que os dados permanecem válidos na saída após uma mudança de endereço.

2) Tempo de acesso (Tac = t2-t0)

Intervalo de tempo decorrido desde o instante em que as entradas de endereço se estabilizam até o instante em que a informação fica disponível nas saídas da memória, ou seja, tempo necessário para transferir uma informação de uma locação da memória para as suas saídas.

3) Tempo de habilitação do chip (Tce = t2 – t1)

Tempo de resposta do circuito após a seleção do circuito.

8 Associação de Memórias

Podemos organizar vários chips de memória para obtermos um circuito equivalente a uma memória com maior capacidade.

(14)

Tomando por base a memória 2114 (memória RAM estática com 1024 X 4 bits), vamos obter associações com 2048 X 4 (associação vertical), 1024 X 8 (associação horizontal) e 2048 X 8 (associação híbrida).

8.1 Associação Vertical: 2048 X 4

Como um chip 2114 possui 1024 X 4, o circuito com 2048 X 4 pode ser obtido da associação de dois chips.

Os seguintes passos devem ser seguidos:

1) Interligação de entradas

Devem ser interligadas: as entradas de endereço e os pinos entrada/saída afins, e os sinais de controle para escrita/leitura.

2) Novas linhas de endereço

O circuito equivalente vai precisar de 11 linhas de endereço para permitir o acesso às 2048 (que é igual a 211) posições. Além disso, como os pinos de entrada/saída são interligados, para não causar danos nos chips devemos garantir que só um deles está ativo, enquanto o outro em terceiro estado (alta impedância). Isto pode ser obtido garantindo que a cada instante só uma das entradas assume 0, ou seja chip ativo. Um circuito decodificador executa esta tarefa, conforme a Figura 7.

Decodificador

1

CS

2

CS

X X CS1 CS2 0 0 1 1 1 0 Figura 7

Da tabela da Figura 7, temos CS1= X e CS2=X . Ou seja, o circuito decodificador é uma porta inversora.

(15)

3) Circuito Equivalente

Agora podemos usar os resultados dos passos anteriores, resultando na Figura 8.

Figura 8 – Memória 2048 X 4

8.2 Associação Horizontal: 1024 X 8

Como cada chip 2114 possui 1024, um circuito com 1024 X 8 também pode ser obtido com dois chips, conforme Figura 9.

Neste tipo de associação, devemos interligar as entradas de endereço afins e os sinais de controle de terceiro estado (alta impedância) e de escrita/leitura. Os pinos entradas/saídas devem permanecer separados conforme a Figura 9.

(16)

Figura 9 – Memória 1024 X 8

8.3 Associação Híbrida: 2048 X 8

Como cada chip 2114 possui 1024 X 4, um circuito com 2048 X 8 será obtido da associação de 4 chips.

Em primeiro lugar fazemos uma associação horizontal para 1024 X 8, conforme a Figura 9. A seguir, usamos dois blocos 1024 X 8 em uma expansão vertical (Figura 8). A Figura 10 apresenta o resultado da expansão.

(17)

Note que em uma expansão vertical sempre haverá a necessidade da criação de um ou mais bits de endereços.

Nos exemplos anteriores, por ser necessário apenas 1 bit, um circuito inversor é suficiente para controlar os CS’s e fornecer o bit A10. Contundo, quando há necessidade de mais bits de endereço, em uma expansão vertical maior, um circuito decodificador pode ser usado para fornecer os bits desejados.

Por exemplo, na Figura 11 é feita uma expansão para 4096 X 8. Usamos as quatro

primeiras saídas de um decodificador para comandar os CS 's. As duas entradas significativas foram usadas como bits A10 e A11.

(18)

8.4 Decodificando

Endereço

As memórias precisam ser decodificadas para adequar suas linhas de endereço com as do microprocessador. Um endereço de memória não pode endereçar dois dispositivos de memória ao mesmo tempo. Como o número de vias de endereçamento de memória do microprocessador é maior que dos dispositivos de memória é necessária a decodificação.

Porta AND: A primeira forma de se decodificar um endereço é usando portas and. Por

exemplo, para decodificar uma memória com 11 vias de endereço (2k) para um

microprocessador com 20 vias de endereço, sendo que a memória será endereçada entre FF800h e FFFFFh. Para isso coloca-se os 9 bits mais significativos do endereço em uma porta and e a saída invertida no CS, e os 11 restantes na própria memória. Assim enquanto o endereço não estiver entre FF800h e FFFFh o dispositivo ficará em tri-state. Esse sistema é muito pouco usado, pois para cada dispositivo de memória será necessário uma porta.

Decodificação por porta AND.

Decodificador de 3 para 8: O 74LS138 já foi usado em grande quantidade em

computadores. Esse dispositivo possui três entradas onde se coloca uma combinação binária que irá ativar em nível baixo uma única saída. No caso do dispositivo estudado há 3 entradas para 8 saídas. Esse dispositivo, para facilitar o endereçamento, tem ainda mais três pinos de habilitação (enables - E1, E2, e E3) . Só é habilitada a saída quando E1 e E2 estão em baixo nível e E3 em alto nível.

A grande vantagem desse dispositivo é que com um único deles é possível endereçar 8 dispositivos diferentes.

(19)

Referências

Documentos relacionados

Quero ir com o avô Markus buscar a Boneca-Mais-Linda-do-Mundo, quero andar de trenó, comer maçãs assadas e pão escuro com geleia (17) de framboesa (18).... – Porque é tão

No entanto, para aperfeiçoar uma equipe de trabalho comprometida com a qualidade e produtividade é necessário motivação, e, satisfação, através de incentivos e política de

As principais indicações para a realização foram a suspeita de tuberculose (458 pacientes) e uso de imunobiológicos (380 pacientes).. A maior prevalência de resultado positivo

4 RESULTADOS E DISCUSSÃO 4.1 Caracterização da cobertura florestal e da biodiversidade vegetal no entorno dos cultivos de tomate na região de Apiaí-SP a Módulos

Foram objetivos deste estudo, avaliar os efeitos da adubação nitrogenada sobre: a freqüência de ocorrência de plantas, a altura do dossel, o crescimento foliar e o desenvolvimento

Este presente artigo é o resultado de um estudo de caso que buscou apresentar o surgimento da atividade turística dentro da favela de Paraisópolis, uma

Changes in the gut microbiota appears to be a key element in the pathogenesis of hepatic and gastrointestinal disorders, including non-alcoholic fatty liver disease, alcoholic

 Numéricos das das Propriedades Propriedades do do Ar Ar Úmido, Úmido, Cartas Cartas Psicrométricas, Psicrométricas, Processos Processos Psicrométricos, Psicrométricos,