Memoria interna

Anuncio
Tema 4: Memoria interna. Tipos. Direccionamiento.
Características y funciones
1. Introducción _____________________________________________________________ 1
2. Memoria Interna __________________________________________________________ 2
2.1 Definición ____________________________________________________________ 2
2.2 Fundamentos __________________________________________________________ 2
2.3 Evolución histórica _____________________________________________________ 2
3. Características y funciones __________________________________________________ 3
4. Tipos de memoria _________________________________________________________ 4
4.1. Tipos________________________________________________________________ 4
4.2. Encapsulamiento ______________________________________________________ 5
5. Direccionamiento _________________________________________________________ 6
6. Bibliografía ______________________________________________________________ 8
1. Introducción
La memoria es un dispositivo capaz de:
8 almacenar o retener una información (datos e instrucciones)
8 suministrarla ante cualquier solicitud y en cualquier momento
Las operaciones básicas que puede realizar son:
8 lectura, por la cual el dispositivo de memoria suministra una información previamente
almacenada. Necesita saber la dirección
8 escritura, por la cual el dispositivo de memoria alacena la información en un lugar
disponible. Necesita saber la dirección
En un ordenador convencional podemos estructurar la memoria en varios niveles, al
conjunto de los cuales denominaremos jerarquía de memoria de un ordenador. Esta tiene la
siguiente característica, el nivel superior estará constituido por memorias muy rápidas por
tanto de pequeña capacidad y coste alto y conforme bajamos de nivel las memorias serán más
lentas, con mayor capacidad y de menor coste
En cuanto a su funcionamiento, de forma general decimos que la información se ubicará
dentro de la jerarquía según la probabilidad de uso, la información más utilizada estará más
arriba en la jerarquía. Como el interés de la información va variando según las necesidades de
los usuarios se producirá un flujo continuo de información ascendente y descendente en la
jerarquía
Niveles
1. Registros de la CPU
2. Caché
3. Principal
4. Secundaria por disco
5. Auxiliar
+
-
Velocidad
Coste
Frecuencia de acceso
Capacidad
-
+
2. Memoria Interna
2.1 Definición
En función de la jerarquía de memoria podemos definir a la memoria interna a la formada
por los niveles 1-3 (registros de CPU, caché y principal) y definimos memoria externa a la
formada por los niveles 4-5 (secundaria por disco y auxiliar)
Registros: el nivel 1, es el más rápido y el de menor capacidad
Caché: el nivel 2 más lentas y de mayor capacidad que los registros. Se define como una
memoria de apoyo que se emplea para acelerar los accesos de la CPU a la memoria principal.
Su funcionamiento es transparente al usuario. Podemos distinguir dos subniveles dependiendo
de las arquitecturas denominados L1 y L2, ordenados de mayor a menor cercanía de la CPU y
velocidad y de menor a mayor tamaño (una L1 típica tiene de 32-64Kb y funciona a la misma
velocidad del procesador donde se aloja, mientras que la L2 suele funcionar a velocidades
inferiores al procesador fuera del que se suele colocar, suele tener 256-1024Kb).
Recientemente se habla del subnivel L3
Principal o Central: es la memoria donde residen los programas para ser ejecutados por
la CPU y los datos que están en uso. Es más lenta y de mayor capacidad que la caché y suele
estar compuesta de chips de RAM dinámica
2.2 Fundamentos
Para que un dispositivo pueda ser usado como elemento de memoria, debe contar con
los siguientes elementos:
Medio o soporte, elemento físico que actúa como contenedor de la memoria, debe cumplir
tres condiciones:
9 Debe presentar al menos, dos estados estables, que se puedan medir
9 Se de poder pasar de un estado a otro mediante la aplicación de una energía
externa
9 Se debe poder detectar el estado existente en cualquier momento
Transductores son los dispositivos capaces de generar la energía necesaria para la
grabación, así como para la detección del estado en la lectura.
9 memorias estáticas, los transductores están unidos físicamente al medio
9 memorias dinámicas, los transductores no están unidos al medio (transductor
o el punto de memoria o ambos se desplazan)
Mecanismos de direccionamiento permiten leer y escribir la información en el lugar y
tiempo deseado
9 En memorias estáticas, el mecanismo de direccionamiento está implícito en su
propia construcción (memorias con direccionamiento cableado)
9 En memorias dinámicas, no existe relación entre el punto de memoria y
transductor, realizándose la selección a través de la CPU, que debe interpretar
la información de direccionamiento que se almacena junto con los datos
2.3 Evolución histórica
Para obtener una perspectiva histórica, haremos referencia a la tecnología empleada en
los primeros dispositivos:
Dispositivos iniciales
8 Memorias de ferritas, en desuso, usan núcleos de ferrita en forma toroidal que son
capaces de almacenar información según el flujo magnético que las atraviese
8 Memorias de película magnética, uso en memorias secundarias, reconocen una
dirección preferente de magnetización
8 Memorias de líneas de retardo,
Dispositivos actuales
8 Memorias de semiconductores, las más utilizadas hoy en día, se usa para la memoria
principal, son componentes electrónicos de material semiconductor que son capaces
de diferenciar dos estados según la presencia o ausencia de corriente. Los elementos
constitutivos pueden ser condensadores o transistores
8 Memorias ópticas, en memorias secundarias, sobre un material sensible al calor se
graban muescas con un rayo láser, para la lectura se hace incidir el láser pero a menor
potencia y midiendo el ángulo de reflexión reconoce las muescas o ausencia de estas
8 Memorias magnético-ópticas, en memorias secundarias, se leen mediante un láser y se
escribe magnéticamente o usando una combinación de ambos
8 Memorias de burbujas,
3. Características y funciones
8 Duración de la información, está característica viene impuesta por el medio o
soporte en el que se implemente. Es el tiempo que la información permanece en el
medio sin degradarse desde que se grabó. Distinguimos:
ƒ Volatilidad
9 No volátil, la información de los puntos de memoria se mantiene de
forma permanente, es característico de los medios magnéticos
9 Volátil, si la información registrada en los puntos de memoria
desaparece si lo hace el suministro de energía, característico de los
medios semiconductores
ƒ Con refresco, aquellas que aunque los puntos de memoria estén
alimentados, su información se va degradando paulatinamente. Deben
refrescarse periódicamente, son característicos de los medios
condensadores
ƒ De lectura destructiva, es cuando la lectura implica el borrado de la
información, característico de los núcleos de ferrita
8 Modo de acceso, es la forma en la que se puede disponer de una determinada
información contenida en la memoria. Distinguimos:
ƒ Acceso aleatorio, también denominado por palabra, directo o selectivo. Se
caracteriza porque cualquier información esta disponible de forma
individualizada conociendo su dirección y el tiempo para su localización es
fijo
ƒ Acceso secuencial, también denominado por bloques. Se caracteriza por
que las memorias que los utilizan poseen transductores independientes de
los puntos de memoria por lo que la información ha de moverse hacia ellos.
El tiempo de localización es variable, dependiendo de donde se encuentre
la información. La información se almacena en bloques
8 Velocidad, viene definido por el tiempo en que la memoria tarda en realizar una
operación de lectura o escritura. Definimos:
ƒ Tiempo de acceso (ta),
8
8
8
8
9 ta en lectura (tal): tiempo que tarda la memoria desde que se
suministra una dirección hasta que la información esta disponible
en los transductores
9 ta en escritura(tae): tiempo que tarda la memoria en grabar una
información desde que se suministra la dirección, la información y
la señal de escritura
ƒ Tiempo de ciclo de memoria (tc), intervalo de tiempo que hay entre dos
operaciones consecutivas
ƒ Velocidad de transferencia o frecuencia de acceso (fa), número de
palabras por segundo que pueden ser accedidas
Capacidad o tamaño, cantidad de información que puede almacenar. La capacidad de
la memoria se suele expresar en bits, o byte (palabra)
Número de puertas,
ƒ Monopuerta,
ƒ Multipuerta,
Unidad de transferencia, número de bits que se pueden transferir de una vez a o
desde la memoria. Será igual al número de líneas de datos de E/S al modulo de
memoria
Alterabilidad, posibilidad de alterar el contenido de la memoria
ƒ ROM (Read Only Memory)
ƒ RWM (Read Write Memory)
4. Tipos de memoria
4.1. Tipos
ƒ
De lectura y escritura
) SRAM (Memoria de acceso aleatorio estática), se implementan con biestables,
mantienen los datos mientras se les suministra corriente. Sus principales
características son:
9 permiten operaciones de lectura y escritura
9 direccionamiento aleatorio
9 volátiles pero no necesitan refresco
9 más caras y de mayor tamaño que las DRAM
Actualmente presentan tres configuraciones:
9 Asynchronous Static RAM
9 Synchronous Burst Static RAM
9 Pipelined Bursa Static RAM
) DRAM (Memoria de acceso aleatorio dinámica), usa tecnología MOS y CMOS
haciendo uso de condensadores, necesitan refresco para que conserven la
información. Sus principales características son:
9 permiten operaciones de lectura y escritura
9 direccionamiento aleatorio
9 volátiles y requieren refresco
9 más económicas y de menor tamaño que las SRAM
Presentan una velocidad de evolución vertiginosa en el mercado, dando lugar a
muchas configuraciones:
9 FPM (Fast Page Mode, Modo de búsqueda rápida), obsoleta, acelera la
búsqueda de los datos en memoria, elimina la búsqueda del RAS en
lecturas múltiples de la misma fila de datos
ƒ
9 EDO (Extended Data Output, Salida de datos extendida), un acceso a
memoria se puede solapar con el anterior, mejora entre 5-20% con respecto
a la DRAM
9 SDRAM (DRAM Sincronizada), se producen cambios en el diseño con
respecto a FPM o EDO, trabajan a la misma velocidad que el bus del
procesador, ya que utilizan una entrada de reloj para sincronizarse con el
bus de datos
9 VRAM (RAM Video), diseñadas para construir memorias de refresco de
terminales gráficos. Pueden ser accedidas simultáneamente por el monitor
y el hardware de la placa gráfica (RAMDAC).
9 SGRAM (sycronous graphics RAM, RAM síncrona para gráficos), basada
en SDRAM, acelera algunas funciones, no dispone de doble puerta
De solo lectura
) Puras (ROM), solo permiten la operación de lectura, la información que poseen
se graba en el proceso de fabricación. Su uso principal es el de almacenar el
programa de arranque de los ordenadores. Sus características principales son:
9 sólo permiten lectura
9 de acceso aleatorio
9 permanentes
) Programables (PROM), iguales características que las ROM, pero pueden
grabarse sólo una vez por el usuario
) Borrables y programables (EPROM), iguales características que las anteriores
pero se puede borrar en su totalidad más de una vez, mediante radiación
ultravioleta
) Borrables y programables eléctricamente (EEPROM), iguales características
que las anteriores pero se puede modificar sin modificar el contenido anterior,
mediante elevadas corrientes eléctricas
) FLASH, permiten ser borradas y programadas por bloques
4.2. Encapsulamiento
La forma en que los fabricantes han ido encapsulando la memoria ha cambiado con los
años. Las CPUs acceden cada vez a conjuntos mayores de datos y a mayor velocidad por lo
tanto se mejora en el diseño de las memorias y en la instalación de los módulos
OJO: Hay que distinguir entre el tipo de encapsulado y el tipo de memoria
DIPP (dual inline package, encapsulado de doble línea)
9 La memoria se instalaba de circuito en circuito
9 1 byte 8 DIPP + 1 control de paridad = banco
9 Limitación a un único circuito de DRAM, popularización de las tarjetas de
expansión
SIPP (single inline pin package, encapsulado con contactos en una sola línea)
9 Primer intento de encapsular varios circuitos DRAM en un solo módulo
9 Instalación difícil, era muy fácil romper o doblar un contacto
9 Vida corta
SIMM (single inline memory module, módulo de memoria en una sola línea)
9 Eran como tarjetas de expansión
9 Dos variedades los de 30 y 72 pines
9 Incorporaron varios tipos de RAM:
ƒ FPM (Fast page mode , modo de búqueda rápida)
ƒ EDO (extended data out, salida de datos extendida
ƒ ECC (error correction code, código de corrección de error)
9 Físicamente contienen una muesca en el borde inferior del módulo
DIMM (dual inline memory module, módulo de memoria en doble línea)
9 Con el Pentium los SIMM se estaban convirtiendo en cuello de botella
9 Se montan en zócalos de forma distinta que los SIMM
9 En la base tienen dos muescas, en los laterales disponen de dos ranuras
9 168 pines
SO-DIMM (small outline dual in line memory module, módulo de memoria de doble línea
y de perfil pequeño)
9 DIMM diseñados principalmente para agendas electrónicas
9 Más pequeños y consumen menos energía
9 Zócalos diseñados para soportar movimientos y golpes
9 Dos veces y media más caros que los SIMM
DDR (doble data rate)
9 Más utilizado en la actualidad
9 Es un tipo es pecial de memoria SDRAM
RIMM (rambus inline memory module, módulo de memoria en una única línea
RAMBUS)
9 Sólo admite memoria Rambus
9 Tiene su propio bus con el chipset
9 184 pines, con dos muecas situadas hacia el centro
9 Todos los módulos RIMM deberán estar ocupados
9 Módulo de continuidad permite que se utilice solo un módulo (coste)
5. Direccionamiento
El mecanismo de direccionamiento tiene la función de seleccionar el punto de
memoria deseado con el que operar. Se llama mapa de memoria a todo el espacio
direccionable por el mecanismo de direccionamiento.
Definimos:
Objeto, como una instrucción, operando o resultado que se desea direccional. Puede residir
en la propia instrucción, en un registro o en la memoria principal
Objeto alineado, un objeto de tamaño N bytes está alineado en el byte de dirección A, si se
cumple que A mod N = 0
Objeto no alineado, requiere más de un acceso a memoria
Tipos de direccionamiento:
ƒ
D. Implícito, direccionamiento donde el propio código de la operación indica la
dirección del operando.
Ej: operaciones con el acumulador
ƒ D. Inmediato, el objeto diseccionado es una constante contenida en la propia
instrucción
Ej: ADD R2, 3 representa: R2 Å R2 + 3
ƒ D. Directo, dos tipos:
) D. Directo a registro, el objeto se encuentra almacenado en uno de los registros
programables
Ej: ADD R2, R3 representa: R2 Å R2 + R3
ƒ
ƒ
) D. Directo a memoria, el objeto está contenido en una posición de memoria
principal
Ej: ADD R2, (1002)
representa: R1 Å R1 + M[1002]
D. Indirecto, dos tipos:
) D. Indirecto a través de registro, en lugar de que el campo de direccionamiento
especifique la dirección (registro) donde está el operando, especifica la
dirección de un registro intermedio que contiene la dirección de memoria del
operando deseado
Ej: ADD R2, (R3)
representa: R2 Å R2 + M[R3]
) D. Indirecto a través de memoria, en lugar de especificar un registro
intermedio, la dirección efectiva está contenida en una posición de memoria
intermedia
Ej: ADD R1, @(1002)
D. Relativo, seis clasificaciones:
) D. Relativo a registro base, un operando se especifica utilizando un registro
base (B) y un desplazamiento constante (D). La dirección efectiva se calcula
como la base más el desplazamiento, EA = B + D
Ej: ADD R2, (R1)24
representa: R2 Å R2 + M[R1 + 24]
) D. Relativo a registro índice, un operando se especifica utilizando una
dirección de memoria (L) y un registro índice (RI). La dirección efectiva se
calcula como EA = L + RI
Ej: ADD R2, 100(R1) representa: R2 Å R2 + M[100 + R1]
) D. Relativo indexado respecto a base, es una combinación del
direccionamiento relativo respecto registro base y respecto a registro índice
Ej: ADD R2, 100(R3)(R4)
representa: R2 Å R2 + M[100 + R3 +R4]
) D Relativo indexado con autoincremento/autodecremento,
Preautoincremento
Preautodecremento
Postautoincremento
Postautodecremento
RI Å RI + incremento
EA = RI + L
RI Å RI – incremento
EA = RI + L
EA = RI + L
RI Å RI + incremento
EA = RI + L
RI Å RI – incremento
) D Relativo al contador del programa, se usa el contador de programa (PC)
como puntero base. Es un direccionamiento adecuado para alcanzar
instrucciones próximas a la que se esta ejecutando
) D Relativo a la pila, se usa el registro SP, que es el contiene la dirección de la
cabecera de la pila. La pila puede crecer según sean las direcciones de
memoria:
ƒ Si las direcciones de memoria son crecientes:
9 Insertar elemento, preautoincremento
9 Extraer elemento, postautodecremento
ƒ Si las direcciones de memoria son decrecientes:
9 Insertar elemento, preautodecremento
9 Extraer elemento, postautodecremento
6. Bibliografía
M. Tischer. “PC interno”. Marcombo, 1993
M. Tischer, B. Jennrich. “PC Interno 5”. Marcombo, 1996
W. Stalling. “Organización y arquitectura de computadores”
ƒ
Zacker y Rourke: “Manual de referencia PC Hardware”. Ed. Mc Graw Hill
Descargar