Unidad 6: Arquitectura y Organización de computadoras

Anuncio
Unidad 6: Arquitectura y Organización de
computadoras
•Subsistema de Memoria
•Organización de Memoria Principal
Bibliografía: William Stallings
Organización y Arquitectura de computadores
5ta. Edition. Editorial Pearson Educación.-
•Memorias
•Conceptualmente sencillas
•Presentan la mas amplia diversidad de tipos,
tecnología, estructura, prestaciones y coste
•Ninguna tecnología es óptima para satisfacer las
necesidades de memoria
•Un computador esta equipado con una jerarquía de
memorias:
•Algunas internas y otras externas ( accesibles por
módulos de entrada/salida)
1
Características de los sistemas de
memorias
Ubicación
Prestaciones
Procesador
Tiempo de acceso
Interna (principal)
Tiempo de ciclo
Externa (secundaria)
Velocidad de transferencia
Capacidad
Dispositivo físico
Tamaño de la palabra
Semiconductor
Numero de palabras
Soporte magnético
Unidad de transferencia
Soporte óptico
Palabra
Magneto-óptico
Bloque
Características físicas
Método de acceso
Volátil/no volátil
Acceso secuencial
Borrable/no borrable
Acceso directo
Organización
Acceso aleatorio
Acceso asociativo
Ubicación
• El termino ubicación indica si la memoria
es interna o externa al computador.
• La memoria interna generalmente se
relaciona con la memoria principal.
• Otras formas de memoria internas:
– Memoria del procesador.
– Memoria de la Unidad de Control.
– Memoria cachè
• Memorias externas. Discos, cintas, etc.
2
Capacidad
• Para memorias internas se expresa
normalmente en términos de bytes (1
bytes = 8 bits) o de palabras.
• Longitudes comunes son; 8, 16, 32 bits.
• La capacidad de las memorias externas
se suele expresar en bytes.
Unidad de transferencia
• Para memorias internas, la unidad de
transferencia es igual al numero de líneas de
entrada/salida de datos del módulo de memoria.
• Gralmente es igual a la palabra, pero suele ser
>, por ej. 64,128 o 256 bits.
• Conceptos relacionados con la memoria interna:
– Palabra: es la unidad “natural” de organización de la
memoria, suele coincidir con el numero de bits
utilizados para representar números y con la longitud
de las instrucciones. Existen numerosas
excepciones.
3
Unidad de transferencia (2)
– Unidades direccionables: en algunos sistemas la
unidad es la palabra. Sin embargo muchos de ellos
permiten direccionar a nivel de bytes.
– La relación entre la longitud A de una dirección y el
numero N de unidades direccionables es 2A = N
– Unidad de transferencia: para la memoria
principal, es el numero de bits que se leen o
escriben en memoria a la vez.
– No tiene porque coincidir con una palabra o con una
unidad direccionable.
– Para memoria externa, los datos se transfieren en
unidades mas grandes llamadas bloques.
Métodos de acceso (1)
• Acceso secuencial: la memoria se organiza en
unidades llamadas registros. El acceso debe
realizarse con una secuencia lineal especifica.
Ej. Cinta
• Acceso directo: Tiene asociado un mecanismo
de lectura-escritura.
• Los bloques individuales o registros tienen una
dirección única basada en su dirección física. Se
accede directamente a una vecindad dada,
seguido de una búsqueda secuencial, hasta
alcanzar la posición final. Ej. Discos.
4
Método de acceso (2)
• Acceso aleatorio (random): cada
posición direccionable de memoria tiene
un único mecanismo de acceso cableado
físicamente.
• El tiempo para acceder a una posición
dada es constante e independiente de la
secuencia de accesos previos.
• Cualquier dirección puede seleccionarse
aleatoriamente y ser direccionada y
accedida directamente.
• Ej. Memoria principal y cache
Método de acceso (3)
• Asociativa: es del tipo de acceso aleatorio que
permite hacer una comparación de ciertas posiciones
de bits dentro de una palabra buscando que coincidan
con unos valores dados y hacer esto para todas las
palabras simultáneamente.
• Una palabra es recuperada en base a una porción de
su contenido en lugar de su dirección.
• Ej. Memorias cache
– Desde el punto de vista del usuario: las dos características
mas importantes son: su capacidad y sus prestaciones.
5
Prestaciones (1)
• Se utilizan tres parámetros de medida para
evaluar las prestaciones.
– Tiempo de acceso (latencia): para memorias de
acceso aleatorio es el tiempo que tarda en realizarse
una operación de escritura o lectura.
– Tiempo que transcurre desde que se presenta una
dirección a la memoria hasta que el dato, o ha sido
memorizado o esta disponible para su uso.
– Para otro tipo de memorias, es el tiempo que se tarde
en situar el mecanismo de lectura/escritura en la
posición adecuada.
Prestaciones (2)
• Se utilizan tres parámetros de medida
para evaluar las prestaciones.
– Tiempo de ciclo de memoria: Se aplica a
memorias aleatorias. Consiste en el tiempo
de acceso y algún tiempo mas que se
requiere antes de que pueda iniciarse un
segundo acceso a memoria.
– Es necesario para finalizar las transiciones en
las líneas de señal o para regenerar datos en
lecturas destructivas.
– Depende de las características del bus del
sistema y no del procesador.
6
Prestaciones (3)
• Se utilizan tres parámetros de medida
para evaluar las prestaciones.
– Velocidad de transferencia: es la velocidad
a la que se pueden transferir datos a, o
desde, una unidad de memoria. Para
memorias de acceso aleatorio coincide con el
inverso del tiempo de ciclo.
Soportes Físicos
• Las mas comunes en la actualidad son las
memorias:
– Semiconductoras,
– Las memorias de superficies magnéticas,
utilizadas para discos y cintas,
– Y las memorias ópticas y magneto-ópticas.
7
Características físicas
• Memorias volátiles: la información se va perdiendo o
desaparece cuando se desconecta la alimentación.
• Memorias no Volátiles: la información permanece
hasta que se modifique intencionalmente. No necesita
fuente de alimentación para retener información. Ej.
Memorias de superficie magnética.
• Memorias no borrables: no pueden modificarse a
menos que se destruya la unidad. Las memorias
semiconductoras de este tipo, se las conoce como
memorias de solo lectura (ROM, Read Only Memory).
ORGANIZACION
– En memorias de acceso aleatorio, su
organización es un aspecto clave de diseño.
– Disposición o estructura física en bits para
formar palabras.
8
Memoria
• Velocidad del procesador: se duplica cada
18 meses (sin variar su precio) la cantidad
de instrucciones ejecutadas por segundo.
• Memoria: se cuadruplica su tamaño cada
36 meses (al mismo precio). Velocidad
aumenta a razón de un 10% anual.
• Para conseguir prestaciones óptimas, la
memoria debe seguir al procesador.
Memoria (2)
• A medida que aumenta la brecha entre las
velocidades del procesador y de la
memoria, las distintas arquitecturas
buscan tender un puente sobre esta
brecha.
• Una computadora típica suele tener
distintos tipos de memoria, desde una
rápida y cara (registros) hasta una barata
y lenta (discos).
9
Memoria (3)
• La interacción entre los diferentes tipos de
memoria se aprovecha de forma tal que
se logra un comportamiento, por parte de
la computadora, equivalente al que tendría
con una memoria única, grande y rápida,
cuando en realidad tiene distintos tipos de
memoria trabajando en forma coordinada.
Jerarquía de memorias (1)
• Las restricciones de diseño de un computador
se pueden resumir en tres cuestiones:
• Cuanta capacidad?
• Como de rápida?
• Cuando el procesador ejecuta instrucciones que
tenga que detenerse a esperar instrucciones y
operandos
• Con que costo? Debe ser razonable en relación
a los otros componentes.
10
Jerarquía de memorias(2)
• La forma en que se organizan los distintos
tipos de memoria es lo que se conoce
como jerarquía de memoria.
• En la cima de la jerarquía están los
registros. En la base, las memorias
secundarias (discos magnéticos) y de
almacenamiento “off line” (CD, DVD,
cintas).
Jerarquía de memorias (2)
11
Jerarquía de memorias (3)
• A medida que ascendemos tenemos
mayor rendimiento y más costo por bit.
Entre la memoria principal y la secundaria
hay otro tipo de memoria para salvar la
brecha.
• Cuando ascendemos, también aumenta la
frecuencia de accesos a ese tipo de
memoria.
Jerarquía de memorias (4)
• Memoria del computador :
– Tecnologías diferentes
– Fundamentos físicos distintos
– Localización en lugares distintos
Objetivo :
– Capacidad de almacenamiento
– Tiempo de acceso reducido
12
Jerarquía de memorias (4)
Jerarquía de memorias (5)
• Registros, Cache y Memoria principal:
– Normalmente volátiles y de tecnología semiconductora.
• Las formas de almacenamiento mas permanentes:
– Dispositivos de memoria masiva
– Memorias externas: son no volátiles y se utilizan para
almacenar ficheros de datos y programas.
– Suelen estar visibles al programador en términos de
registros y ficheros.
– Disco: se emplea para una ampliación de la memoria
principal conocida como memoria virtual
13
Memoria Principal semiconductora:
Organización (1)
•
•
El elemento básico de una memoria
semiconductora es la celda de memoria.
Todas las celdas de memoria de
semiconductor comparten 3 propiedades:
1. Dos estados estables: para representar al uno
(1) y al cero (0).
2. Se puede escribir en ellas, al menos una vez
3. Se pueden leer para conocer el estado.
Organización (2)
• En general la celda tiene 3 terminales
funcionales capaces de llevar una señal
eléctrica:
– 1. Selección: selecciona una celda de memoria
– 2. Control: especifica lectura ó escritura
– 3.1.Escritura: Proporciona la señal que fija el
estado de la celda a 0 o 1.
– 3.2 Lectura de datos: El tercer terminal se
utiliza como salida del estado de la celda.
14
Organización (3)
Funcionamiento de una celda de memoria
Memoria Principal semiconductora
• De acceso aleatorio: Las palabras individuales de
memoria son accedidas directamente mediante lógica
de direccionamiento cableada interna.
• RAM (Random Access Memory).
• Es volatil. Solo como almacenamiento temporal.
• Es posible leer datos como escribir rápidamente nuevos
datos en ellas. Estas operaciones se ejecutan mediante
señales eléctricas.
• Las dos formas tradicionales son:
– (SRAM) Basada en flip flops: memoria estática
– (DRAM) Basada en transistores: memoria dinámica
• Cargas almacenadas en transistores (capacitores)
– El acceso a las ROM también es de éste tipo
15
RAM dinámica
• DRAM:
• Almacenan los datos como cargas eléctricas en
condensadores.
• La presencia o ausencia de carga en un
condensador se interpreta como el uno o el cero
binario.
• Los condensadores tienden a descargarse
• DRAM hay que “refrescarla”
– Dinámica: refiere a esta tendencia a que la carga
almacenada se pierda incluso manteniéndola siempre
alimentada.
– Usada como memoria principal
RAM estática
• SRAM:
• Es un dispositivo digital, basado en los
mismos elementos que usa el procesador.
• Los valores binarios se almacenan utilizando
configuraciones de puertas que forman biestables
• En tanto se mantenga alimentada retendrá
sus datos.
• No necesita “refrescos”
16
Celda de memoria
Circuitos de memoria SRAM. Se representa como un flip-flop D.
Existe una línea de datos (bidireccional )
SRAM v DRAM
• Ambas son volatiles.
– Debe aplicarse continuamente tensión de alimentaciòn
para mantener los valores de los bits
• DRAM: Dynamic cell
– Mas simple de construir, mas pequeña
– Mas densas (celdas mas pequeñas = mas celdas por
unidad de superficie).
– Menos caras
– Necesita circuiteria para realizar el refresco.
– Son las preferidas para memorias grandes.
• Static ( SRAM)
– Un poco mas rapidas.
– Se utilizan como memorias Cache
17
ROM (1)
• Contiene un patrón permanente de datos que no
puede alterarse.
• No requiere fuente de alimentacion para
mantener memorizados los valores de los bits.
• Es posible leer de una ROM pero no escribir
datos en ella.
• Se utiliza en microprogramación.
• Subrutinas de biblioteca para funciones de uso
frecuente
• Programas del sistema
• Tablas de funciones
ROM (2)
• Para tamaños modestos: la ventaja es que
el programa o los datos estarian
permanente en memoria principal
• No seria necesario cargarlos desde
dispositivos secundarios.
• Una ROM se construye como cualquier
chip de circuito integrado, con los datos
cableados durante el proceso de
fabricación.
18
Tipos de ROM (1)
• PROM: ROM programable, es mas
económica
• Son no volátiles y pueden grabarse solo una
vez.
• El proceso de escritura se lleva a cabo
electricamente y puede realizarlo el
suministrador o el cliente luego de fabricado
el chip original.
• Proporcionan flexibilidad y comodidad
• Otra variante: EPROM y EEPROM y
memorias flash
Tipos de ROM (2)
• EPROM: memoria se solo lectura programable y borrable
opticamente.
• Se lee y escribe eléctricamente como la PROM.
• Antes de la escritura, todas las celdas deben borrarse a
la vez. Mediante la exposición del chip encapsulado a
radiación ultravioleta.
• Se puede realizar el borrado multiples veces.
• Cada operación de borrado puede durar hasta 20
minutos.
• Retiene su contenido teóricamente indefinidamente.
• En comparación con una PROM de igual capacidad es
mas costosa.
• Ventaja adicional: Es posible actualizar multiples veces
su contenido.
19
Tipos de ROM (3)
• EEPROM: Memoria de solo lectura programable y
borrable electricamente.
• Electrically Erasable Programmable Read-Only Memory.
• Se puede escribir en cualquier momento sin borrar su
contenido anterior.
• Solo se actualiza el byte o bytes direccionados.
• La operacion de lectura es mas ràpida que la de escritura
• Es no volátil y es mas flexible al permitir ser actualizable
in situ.
• Son mas costosas que las EPROM y menos densas,
admitiendo menos bits por chips.
Tipos de ROM (4)
• Memoria flash: ( denominada así por la
velocidad con que la puede
reprogramarse).
• Utilizan tecnologia de borrado electrico
• Puede entera en uno o varios
segundos,mucho mas rapido que la
EPROM.
• Se pueden borrar solo bloques en lugar de
todo el chip
20
Organización de la memoria
• Las memorias semiconductoras vienen en chips
encapsulados.
• Cada chip contiene una matriz de celdas de memoria.
• Aspecto fundamental de diseño: nro. de bits de datos
que pueden ser leídos/escritos a la vez.
• En un extremo esta la estructura en que la disposición
físicas de las celdas de la matriz es igual que la lógica.
de las palabras de memoria.
• La matriz esta organizada en W palabras de B bits cada
una.
• Otro extremo: estructura llamada un bit-por-chip, los
datos se leen/escriben por bits.
Organización típica de DRAM de 16 MB
RAS. Selección de dirección de fila
CAS. Selección de dirección de columna.
WE. Terminal de habilitación de escritura
OE: Terminal de habilitación de salida
D1 a D4, líneas
salida y entrada a
y desde buffer
En esta DRAM se escriben o leen solo 4 bits, debe haber varias DRAM conectadas al
controlador de memoria a fin de escribir/leer una palabra de datos en el bus.
21
Organización típica de DRAM de 16 MB
RAS. Selección de dirección de fila
CAS. Selección de dirección de columna.
WE. Terminal de habilitación de escritura
OE: Terminal de habilitación de salida
D1 a D4, líneas
salida y entrada a
y desde buffer
En esta DRAM se escriben o leen solo 4 bits, debe haber varias DRAM conectadas al
controlador de memoria a fin de escribir/leer una palabra de datos en el bus.
Organización típica de DRAM de 16 MB
•En la figura anterior el uso de direccionamiento multiplexado y
de matrices cuadradas da lugar a que el tamaño del memoria se
cuadriplique con cada nueva generación de chips.
•Se indica también la inclusión de circuitería de refresco.
•Una técnica simple es: inhabilitar el chip DRAM mientras se
refrescan todas las celdas. El contador de refresco recorre todos
los valores de fila.
•Para cada fila las salidas de dicho contador se conectan al
decodificador de filas y se activa la línea RAS.
•Los datos correspondientes se leen y escriben de nuevo en las
mismas posiciones. Así se refrescan todas las celdas de una fila
a la vez.
22
Organización avanzada de DRAM
•SDRAM: DRAM síncrona
•DDR_RAM: SDRAM de doble velocidad.
•RDRAM Rambus: Adoptada por Intel para sus procesadores
Pentium e Itanium.
•Ambas implican el uso del reloj del sistema para facilitar la
transferencia de bloques de datoss.
Synchronous DRAM (SDRAM)
•
•
•
•
Access is synchronized with an external clock
Address is presented to RAM
RAM finds data (CPU waits in conventional DRAM)
Since SDRAM moves data in time with system clock,
CPU knows when data will be ready
• CPU does not have to wait, it can do something else
• Burst mode allows SDRAM to set up stream of data
and fire it out in block
• DDR-SDRAM sends data twice per clock cycle
(leading & trailing edge)
23
RAMBUS
•
•
•
•
•
Adopted by Intel for Pentium & Itanium
Main competitor to SDRAM
Vertical package – all pins on one side
Data exchange over 28 wires < cm long
Bus addresses up to 320 RDRAM chips at
1.6Gbps
• Asynchronous block protocol
– 480ns access time
– Then 1.6 Gbps
24
Organización del chip
• Cada chip contiene un arreglo de celdas
de memoria.
• En las memorias de semiconductor se han
empleado dos enfoques organizacionales:
2D y 2½D.
Organización 2D
• El arreglo está organizado en 2W palabras
de B bits cada una. Cada línea horizontal
(una de 2W) se conecta a cada posición
de memoria, seleccionando un renglón.
• Las líneas verticales conectan cada bit a
la salida.
• El decodificador que está en el chip, tiene
2W salidas para W entradas (bits del bus
de direcciones).
25
Organización 2D (2)
Organización 2D (3)
26
Organización 2½D
• El arreglo es “cuadrado” y funciona igual
que 2D.
• Los bits de una misma palabra están
dispersos en distintos chips.
• La dirección se divide en dos partes: una
selección de renglón y una selección de
columna. Hay 2 decodificadores.
Organización 2½D (2)
27
28
Comparación
• En 2D todos los bits están en el mismo
chip.
• En 2½D los bits de una misma palabra
estarán en distintos chips.
• 2D es muy larga y estrecha, No grande de
palabras de pocos bits. Cada línea de
selección de palabra tiene que tener un
manejador y conectarse al decodificador.
Ocupan mucha superficie.
Comparación (2)
• 2D dificulta el uso eficaz de los circuitos
correctores de error. En 2½D al estar los
bits dispersos en distintos chips hay
menor probabilidad de error.
• En 2½D al usar decodificación separada
de filas y columnas, reduce la complejidad
de los decodificadores.
29
Problema 1
• Cada módulo de memoria cubre el
espacio de direccionamiento requerido,
pero sólo cubre una parte de la palabra.
• Solución: usar varios módulos “en
paralelo”.
• Ver figura siguiente.
Memoria: 4 palabras x 8 bits
30
Problema 2
• La longitud de la palabra es la deseada,
pero los módulos no tienen la capacidad
deseada.
• Solución: cubrir un cierto rango de
direcciones con módulos de memoria “en
serie”.
• Cada módulo “estará” en direcciones
distintas.
• Ver figura siguiente.
31
Nuevas tecnologías RAM
• La DRAM básica es la misma desde los
• primeros chips de RAM
• Enhanced DRAM
– Contiene pequeña SRAM
– La SRAM guarda la última línea leida (como una
Cache!)
• Cache DRAM
– Contiene una SRAM mas grande
– Se usa la SRAM como cache o como buffer serial
Nuevas tecnologías RAM (2)
• Synchronous DRAM (SDRAM)
– Actualmente en DIMMs
– Acceso sincronizado con un reloj externo
• Se presenta una dirección a la RAM
• RAM encuentra los datos (y CPU esperaría la DRAM)
• SDRAM mueve datos en tiempo del reloj del sistema,la CPU
conoce cuando los datos estarán listos
• CPU puede hacer otra cosa mientras tiene que esperar
• Modo Burst permite SDRAM trabajar en bloques
32
SDRAM
mas información …
• Capítulo 4: Memoria Interna
– Stallings. 5ta Ed.
• Links de interés
– http://www.pctechguide.com/14Memory.htm
33
Descargar