Organización y arquitectura de sistemas de memoria
SubObjetivos: 1 Jerarquía de sistemas de memoria:
registros, caché, principal, secundaria, capacidades y
velocidades 2 Clasificación de memoria: RAM y ROM 3
Concepto de Celda Binaria
Características de los sistemas de memoria
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización
Registros En CPU Memoria interna o principal Puede incluir uno o
más niveles de caché “RAM” Memoria
externa Memoria de respaldo
Características de los sistemas de memoria …
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización
Tamaño de la palabra Número de bits utilizados para
representar números o longitud de instrucciónes.
Excepciones: CRAY-1, VAX. Número de palabras
Características de los sistemas de memoria …
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización Para la
memoria principal, número de bits que se leen o se
escriben en memoria a la vez. Para la memoria externa, unidades
más grandes denominadas bloques.
Características de los sistemas de memoria …
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización Acceso
secuencial Acceso directo Acceso aleatorio Acceso
asociativo
Características de los sistemas de memoria …
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización Tiempo
de acceso Memoria de acceso aleatorio: Tiempo en realizar una
lectura o escritura Memoria de otro tipo: Tiempo en situar el
mecanismo de escritura/lectura en la posicicón deseada.
Tiempo de ciclo Se aplica principalmente a las memorias de acceso
aleatorio, se define como el tiempo de acceso más el
tiempo que se requiere para poder iniciarse un segundo acceso a
la memoria.
Características de los sistemas de memoria …
Velocidad de transferencia Velocidad a la que se puede transferir
datos a, o desde, una unidad de memoria. Acceso aleatorio:
inverso del tiempo de ciclo. Otro tipo de acceso:
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización Tiempo
medio de escritura o de lectura de N bits Tiempo de acceso
aleatorio Número de bits Velocidad de transferencia en
bits por segundo (bps)
Características de los sistemas de memoria …
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización
Semiconductor Dispositivos de estado sólido como los
chips. Ej: RAM Soporte magnético Floppies, cintas, etc.
Soporte óptico DVD, CD, mini disk, etc. Magneto
óptico Mitad magnetico, mitad óptico.
Características de los sistemas de memoria …
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización
Volátil / no volátil Memoria de superficié
magnética: no volátil Memoria semiconductora:
volátil o no volátil Borrable / no borrable RAM /
ROM
Características de los sistemas de memoria …
Ubicación Capacidad Unidad de transferencia Método
de acceso Prestaciones Dispositivo Físico
Características físicas Organización
Disposición o estructura física en bits para formar
palabras.
Jerarquía de sistemas de memoria En el diseño de la
memoria de una computadora existe un compromiso entre las
características de capacidad, coste y velocidad. A menor
tiempo de acceso, mayor coste por bit. A mayor capacidad, menor
coste por bit. A mayor capacidad, mayor tiempo de acceso.
Memoria ideal Infinitamente grande y con tiempo de acceso muy
corto. Sin embargo Muy cara Tecnológicamente no factible
Solución: Jerarquía de memoria Unidades grandes y
lentas, y Unidades pequeñas y rápidas Meta de la
jerarquía de memoria: Ilusión de una memoria
grande, rápida y barata.
µProc 60%/año. (2X/1.5 año) DRAM
9%/año. (2X/10 años) 1 10 100 1000 1980 1981 1983
1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996
1997 1998 1999 2000 DRAM CPU 1982 Separación de
rendimiento Procesador-memoria (crece 50% / año)
Rendimiento Tiempo “Moore’s Law” ¿Por
qué es importante el uso de la jerarquía de
memoria? “Less’ Law?”
Jerarquía de sistemas de memoria (Gp:) Almacenamiento
fuera de línea (Gp:) Cinta magnética Medio
Óptico (Gp:) Disco magnético CD-ROM CD-RW DVD+RW
DVD-RAM (Gp:) Almacenamiento fuera de la tarjeta (Gp:) Memoria en
tarjeta impresa (Gp:) Regis- tros caché memoria principal
Cuando se desciende la jerarquía ocurre: Menor costo por
bit Mayor capacidad Menor velocidad Disminución de la
frecuencia de acceso a la memoria por parte del procesador
Principio de localidad
¿Por qué funciona la jerarquía de memoria?
Principio de localidad Los programas accede una porción
relativamente pequeña del espacio de direcciones en
algún instante de tiempo. Espacio de direcciones 0
Probabilidad De referencia
Jerarquía de memoria: ¿Cómo trabaja?
Localidad temporal Si un dato es referenciado, se tiende a ser
referenciado de nuevo en un tiempo próximo (bucles o
subrutinas) Localidad espacial Si un dato es referenciado, los
datos con direcciones cercanas tienden a ser referenciados pronto
(tablas o matrices)
Jerarquía de memoria: Terminología Hit: el dato
está en algún bloque en el nivel superior (ejemplo:
Bloque X) Hit Rate: Fracción de acceso a memoria en el
nivel superior Hit Time: Tiempo para accesar el nivel superior
que consiste en: tiempo de acceso de RAM + Tiempo para determinar
hit/miss Miss: el dato necesita ser traído de un bloque en
el nivel bajo (Bloque Y) Miss Rate = 1 – (Hit Rate) Miss Penalty:
Tiempo para reemplazar un bloque en el nivel superior + Tiempo
para llevar el bloque al procesador Hit Time << Miss
Penalty (Gp:) Nivel de memoria inferior (Gp:) Nivel memoria
superior (Gp:) Al procesador (Gp:) Del procesador (Gp:) Bloque X
(Gp:) Bloque Y
Ejemplo Acceder a dos niveles de memoria Nivel 1: 1,000 palabras,
tiempo acceso: 0.1 ?s Nivel 2: 100,000 palabras, tiempo acceso: 1
?s
Jerarquía de memoria de una computadora moderna Haciendo
uso del principio de localidad: Presenta al usuario tanta memoria
como esté disponible con la tecnología más
económica. Provee acceso con la velocidad disponible con
la tecnología más rápida. Control Datapath
Secondary Storage (Disk) Processor Registers Main Memory (DRAM)
Second Level Cache (SRAM) On-Chip Cache 1’s
10,000,000’s (10’s ms) Velocidad (ns): 10’s
100’s 100B GB Tamaño (bytes): KB MB (Gp:) Tertiary
Storage (Tape) 10,000,000,000’s (10s sec) TB
¿Cómo es manejada la jerarquía de memoria?
Registros Por el compilador (¿programador?) Cache Por el
hardware Memoria principal Por el hardware Por el sistema
operativo (caché de disco & memoria virtual) Por el
programador (archivos)
Clasificación de memoria Memoria RAM (Random-Access
Memory) Todas las memoria mostradas son de acceso aleatorio Leer
y escribir datos rápidamente en ellas Volátil.
Almacenamiento temporal Tipos de memoria RAM Dinámica.
Está hecha con celdas que almacenan los datos como cargas
en los condensadores. Estática. Almacenan los datos
utilizando configuraciones de puertas que forman biestables
(flip-flops)
Memoria RAM dinámica y estática Acceso aleatorio:
el tiempo de acceso es el mismo para todas las locaciones DRAM:
Memoria de acceso aleatorio dinámica Alta densidad low
power Económica Lenta Dinámica: Necesita ser
“refrescada” regularmente (1-2% de ciclos) SRAM:
Memoria de acceso aleatoria estática Baja densidad high
power Cara Rápida Estática: El contenido
durará mientras esté alimentada
Memoria ROM Memoria ROM (Read-Only Memory) Contiene un
padrón permanente de datos que no puede alterarse.
Aplicaciones: microprogramación, subrutinas de biblioteca
para funciones de uso frecuente, programas del sistema, tablas de
funciones.
Tipos de memoria ROM PROM. Es volátil y sólo se
puede escribir en ella una sola vez. El proceso de escritura se
lleva a cabo eléctricamente y puede realizarlo el
suministrados o el cliente con posterioridad. Memorias de
sobre-todo-lectura: EPROM: Memoria de sólo lectura
programable borrable Antes de escribir una operación,
todas las celdas de almacenamiento deben ser borradas al estado
inicial exponiendo el chip a radiación ultravioleta. Puede
ser alterada múltiples veces. Más cara que la PROM,
pero tiene la ventaja de que puede ser actualizada
múltiples veces.
Tipos de memoria ROM EEPROM: Memoria de sólo lectura
programable borrable eléctricamente Puede ser escrita sin
borrar contenido anterior. Sólo el o los bytes
direccionados son actualizados. La operación de escritura
toma mucho más tiempo que la de lectura. Combina la
ventaja de no-volativilidad con la flexibilidad de ser
actualizable usando controles de bus ordinarios, direcciones y
línea de datos. Es más cara que la EPROM y puede
almacenar menos bits por chip. Flash Nombrada así por la
velocidad a la cual puede ser reprogramada. Es intermedia entre
la EPROM y la EEPROM en costo y funcionalidad. Mucho más
rápida que la EPROM. Puede borrar bloques
específicos de memoria. No provee borrado a nivel de
bytes. Tiene la densidad alta de las EPROM.
Memorias no aleatorias Tecnología de acceso a
“memoria-no tan-aleatoria”: El tiempo de acceso
varía de locación a locación y de tiempo a
tiempo Ejemplos: Disco, CDROM Tecnología de Acceso
Secuencial: tiempo de acceso linear en locación
(e.g.,Cinta)
Celda Binaria Es el elemento básico de una memoria
semiconductora . Presentan dos estados estables (o semiestables)
que pueden utilizarse para representar el 1 y 0 binarios Puede
escribirse en ellas (al menos una vez) para fijar su contenido
Pueden leerse para detectar su estado
Funcionamiento y estructura de una celda binaria Tres terminales
capaces de llevar una señal eléctrica. El selector
selecciona una celda. El control indica el tipo de
operación: lectura o escritura. Escribir, la otra terminal
provee una señal que pone a la celda en 1 o 0. Para leer,
es usada como salida de la celda
Construcción de palabras de memoria a partir de celdas
binarias Palabras Longitud de palabra Dirección (0 a n-1 ?
n localidades) m líneas de dirección ? 2m
localidades
Ejemplo
Construcción memorias de semiconductores a partir de
palabras La memoria se forma a partir de palabras La capacidad se
expresa en términos de # palabras x longitud de palabra
Las memorias del ejemplo anterior son: 12×8, 8×12 y 6×16 Chip
memoria incluye mecanismos para Decodificar las direcciones
Detección/Escritura.
Memoria de 16×8 Palabra de memoria (renglon – línea de
palabra) Líneas de bit al circuito de lectura/escritura
Lineas de entrada/salida (bidireccional)
Diseño de sistemas de memoria de mayor capacidad, a partir
de memorias de menor capacidad. Tecnología de CI adecuada
para memorias Aumenta #bits que se pueden almacenar 1Kbit a 16M
bits Organización de las celdas de memoria 2D 21/2D
Organización 2D Disposición física =
lógica. El arreglo de memoria está organizado en W
palabras de B bits Todos los bits de una palabra en el mismo
chip
Organización 2D … En esta organización : #
líneas de dirección # celdas de la memoria
(capacidad) # palabras (# unidades direccionables) # bits por
palabra (longitud de palabra)
Organización 2D … Ejemplos: Ej: Diseñe una
memoria de 2D de 1Kb con palabras de 16 bits. Ej: Si se sabe que
una memoria 2D tiene 5 líneas de dirección y 2048
celdas de capacidad, entonces: ¿Cuántas palabras
tiene? ¿Cuántos bits por palabra? Ej:
¿Cuál es el efecto en la capacidad de una memoria
2D si se agrega una línea de dirección?
Ejemplos: Organización 2D 1. Dado un MAR de 8 bits y un
MDR de 64 bits: ¿Cuántas palabras puedo
direccionar? ¿Cuál es la longitud de la palabra?
¿Cuál es la capacidad de la memoria en bits?
¿Cuál es la capacidad de la memoria en bytes? 2.
Realice un diagrama de bloque para una memoria de 1MByte en 2D,
con longitud de palabra de 16 bits, coloca todos los
componentes.
Organización 21/2 D Un bit por chip Los bits de una
palabra repartidos en varios chips El chip contiene un arreglo de
bits cuadrado
ESTA PRESENTACIÓN CONTIENE MAS DIAPOSITIVAS DISPONIBLES EN
LA VERSIÓN DE DESCARGA