MEMORIAS
Fundamentos de Informática
Ingeniería Técnica Diseño Industrial
1
Memorias
Introducción
• Una memoria es un dispositivo capaz de almacenar
información.
• Operaciones:
– Escritura: Introducir información en una posición determinada de la
memoria
– Lectura: Obtener información existente en una posición
determinada de la memoria
• Palabra de memoria
– Unidad de almacenamiento típica. Contienen números binarios.
– La capacidad es el número de palabras: C
– El tamaño el número de bytes.
• Direcciones de memoria
– Cada palabra se identifica por un número que llamamos dirección.
– El tamaño de las direcciones el número de bits de las direcciones:B
– El espacio direccionable es D=2B. Se ha de cumplir D>=C.
2
Memorias
Parámetros básicos de las memorias
• Capacidad
• Velocidad
– Tiempo de acceso: tiempo que pasa desde que empieza un
operación de lectura o de escritura hasta que concluye.
– Tiempo de ciclo: tiempo que pasa desde que comienza una
operación de lectura o de escritura hasta que se pueda empezar
con la siguiente.
– Velocidad de ciclo: número de palabras que se pueden leer o
escribir por unidad de tiempo
• Coste
– Medido en euros/bit o euros/byte
• Ideal: memorias grandes, muy rápidas y muy baratas.
3
Memorias
Tipos de memoria
• En función de la persistencia de datos: persistentes y
volátiles.
• En función de la naturaleza del medio: electrónicas,
magnéticas y ópticas.
• En función del tipo de memoria semiconductora:
RAM, ROM y PROM.
4
Memorias
La memoria en un PC ( JERARQUÍA )
• El PC utiliza la memoria para acceder rápido a la
información.
• El disco es más lento, pero es necesario porque
la información en la RAM del sistema no es
permanente.
– Los datos vienen de los dispositivos de
entrada (ej. teclado), o del disco.
– Siempre van a parar a la RAM del sistema.
– La CPU almacena en la caché los
fragmentos de información a los que
accede.
– La CPU mantiene en los registros
información para las instrucciones que
ejecuta.
5
Memorias
La memoria en un PC ( USO )
•
El ordenador utiliza la memoria constantemente:
–
–
–
–
–
–
•
Al arrancar la CPU lee una ROM con instrucciones para hacer un test de memoria y
asegurarse de que funciona correctamente.
En la ROM está también la BIOS (basic input/output system) que contiene
información básica sobre los discos, la secuencia de arranque, seguridad, Plug and
Play (reconocimiento automático de dispositivos) etc...
A continuación la CPU carga el sistema operativo en la RAM desde el disco.
Cuando se ejecuta una aplicación, ésta se carga en memoria RAM.
Los ficheros que se abran desde la aplicación, se cargan en memoria.
Cuando se graba un fichero o cuando se cierra una aplicación, se libera espacio de la
memoria.
Cada vez que algo en el ordenador es abierto, se carga en memoria. Esto
significa que el ordenador lo pone en un área de almacenamiento temporal
para que la CPU acceda a ello más rápido.
–
–
La CPU pide los datos a la RAM, los procesa, y escribe nuevos datos en la RAM en
un ciclo continuo. (millones de veces por segundo)
Si los cambios no se guardan en un área de almacenamiento persistente antes de ser
liberados, se pierden.
6
Memorias
La memoria en un PC ( TIPOS )
•
Las CPU son rápidas y necesitan acceder rápidamente a mucha
información.
– Si no tiene los datos que necesita se para y espera.
• No se explotaría su rendimiento al máximo.
– Actualmente la velocidad de una CPU puede ser de 1 gigaherzio,
potencialmente podría procesar billones de bytes por segundo.
•
•
Las memorias tan rápidas son muy caras.
El problema se resuelve diversificando el tipo de memorias: pequeñas
memorias muy caras, y grandes memorias baratas.
7
Memorias
La memoria en un PC
•
La memoria virtual está en el disco, pero se utiliza para simular RAM.
– Cuando la información no cabe en la memoria (p.e porque ejecutamos
muchos programas a la vez) parte de la información se guarda
temporalmente en la memoria virtual.
•
Necesidades de un procesador:
– El tamaño en bits de la CPU indica a cuantos bytes de información puede
acceder desde la RAM simultáneamente. Por ejemplo, una CPU de 16-bits
puede procesar 2 bytes a la vez y una CPU de 64-bits puede procesar 8
bytes a la vez.
– Megahertz (MHz) es una medida de la velocidad de procesamiento de la
CPU's o ciclo de reloj, en millones por segundo. Así, un 32-bit 800-MHz
Pentium III podría procesar 4 bytes simultáneamente, 800 millones de
veces por segundo
8
Memorias
La memoria en un PC
•
•
•
•
•
La caché es necesaria porque la RAM del sistema no puede llegar a
esas velocidades.
Cuanto más rápida sea la RAM mejor.
La mayoría de chips de RAM trabajan a tasas de ciclo de 50 a 70
nanosegundos.
La velocidad está acotada por la velocidad del bus: no se puede poner
cualquier memoria.
La velocidad de lectura/escritura depende del tipo de RAM empleada:
DRAM, SDRAM, RAMBUS.
9
Memorias
La memoria en un PC
•
CACHE:
– Incluso con un bus muy ancho y muy rápido, la CPU procesa los datos
más rápido que lo que tardan en llegar desde memoria a CPU.
– Las cachés alivian este problema haciendo que los datos que se utilizan
con mayor frecuencia sean accesibles inmediatamente por la CPU.
– Esto se consigue porque una pequeña cantidad de memoria llamada
caché primaria o de nivel 1, está dentro de la CPU.
– La caché de nivel 1 es muy pequeña, normalmente entre 2 kilobytes (KB) y
64 KB.
– La caché secundaria o de nivel 2 está en un chip fuera de la CPU, con
conexión directa con la CPU.
– El tamaño de la caché de nivel 2 está entre 256 KB to 2 megabytes (MB).
– En la mayoría de los sistemas, los datos necesarios por la CPU están en
la caché (95%), lo que recude mucho el tiempo perdido por la CPU.
– SRAM (static random access memory) es el tipo de chips empleados
para las cachés. Son peculiares porque no necesitan refresco.
10
EL PROCESADOR
Fundamentos de Informática
Ingeniería Técnica Diseño Industrial
11
El Procesador
Introducción
• Un ordenador es una máquina capaz de
ejecutar programas formados por
instrucciones.
• El procesador lee una a una las
instrucciones de memoria y las ejecuta.
• El procesador lee las instrucciones y lee o
escribe los datos de la memoria.
• La CPU se compone de UC, ALU y
registros (uno de ellos el PC).
Instrucciones
CPU
Datos
12
El Procesador
La unidad aritmética lógica (ALU)
• Unidad encargada de realizar las
operaciones aritméticas y lógicas.
• Opera con datos de los registros y el
resultado va a otro registro.
• La UC controla la ALU.
• Se realizan operaciones muy simples.
• Se modifica el registro de estado
Registros
Operandos
ALU
Estado
Resultado
13
El Procesador
La unidad de control (UC)
UC
– Toma instrucción indicada por el PC
– La decodifica y toma los operandos
– La ejecuta
• Utiliza para ello el PC, la instrucción
leída, el registro de estado y un reloj
interno.
Instrucciones
Memoria
• Unidad encargada de leer
instrucciones de memoria,
interpretarlas controlando el
funcionamiento de las otras unidades. Reloj
• Secuencia:
ALU
PC
Registros
Datos
14
El Procesador
Instrucciones y ejecución de programas
• El juego de instrucciones es muy limitado:
– Movimiento de datos
– Bifurcación
– Operaciones aritméticas
• Las instrucciones de un programa se almacenan en memoria
de forma consecutiva.
• La UC lee la instrucción indicada por el PC, incrementa el PC
y realiza la operación indicada.
• Si es una bifurcación modifica el valor del PC.
15
El Procesador
Procesadores Pentium
N am e
D ate Tran sisto rs
M icro n s
C lo ck
sp e ed
D ata
w id th
M IP S
8080
1974
6,000
6
2 MHz
8 bits
0.64
8088
1979
29,000
3
5 MHz
16 bits
8 -bit
bus
0.33
80286
1982
134,000
1.5
6 MHz
16 bits
1
80386
1985
275,000
1.5
16 M H z
32 bits
5
80486
1989
1,200,0 00
1
25 M H z
32 bits
20
P entium
1993
3,100,0 00
0.8
60 M H z
32 bits
6 4 -bit
bus
100
P entium II
1997
7,500,0 00
0.35
233
MHz
32 bits
6 4 -bit
bus
~300
P entium III
1999
9,500,0 00
0.25
450
MHz
32 bits
6 4 -bit
bus
~510
P entium 4
2000
42,000,000
0.18
1.5 G H z
32 bits
6 4 -bit
bus
~ 1,700
P entium 4
"P res c ott"
2 0 0 4 125,000,000
0.09
3.6 G H z
32 bits
6 4 -bit
bus
~ 7,000
16