Unidad de Memoria
Punto de Memoria: Se denomina así a la celda capaz de almacenar un bit. También se la conoce
como Celda de bit. Este es el elemento básico de cualquier unidad semiconductora de memoria, las
cuales presentan ciertas propiedades:
➢ Presentan dos estados estables, que pueden emplearse para representar el 1 o 0 binario.
➢ Puede escribirse en ellas (al menos una vez) para fijar su estado.
➢ Pueden leerse para detectar su estado.
Celda de Memoria: También conocida como Posición de Memoria, es el grupo de celdas de bit
capaces de almacenar una palabra, siendo la palabra una tira de bits de una longitud prefijada, que
puede manejar la máquina como entidad única. En general corresponde a la longitud de los registros
de la ALU.
Lo más común es que la celda tenga 3
terminales para transportar señales
eléctricas. El de selección, selecciona la
celda para que pueda realizarse una
operación, el de control indica si se trata de
una lectura o de escritura, el tercer terminal
proporciona; para la escritura una entrada de
datos, y para el de lectura un detección, una
salida de datos.
Dirección de memoria: Si bien a veces se confunde con el término celda de memoria, en
realidad, es la dirección de memoria es el rótulo que permite identificar a cada una de aquellas, y está
formado generalmente por una lista de bits que representan un código hexadecimal.
Lectura/Escritura: Denominamos lectura al efecto de transferir el contenido de una celda de
memoria a un registro cualquiera de la máquina, generalmente el registro de salida de la memoria. Del
mismo modo, denominamos escritura al proceso inverso, o sea el de almacenar una información en
una celda.
En ambos casos es necesario primero direccionar la celda y luego producir la transferencia de la
información en el sentido deseado.
Acceso a Memoria: Se conoce con esta denominación al proceso genérico de lectura/escritura
en memoria.
Ciclo de Memoria
Cada vez que se produce un acceso a memoria, se desarrolla el llamado ciclo de memoria, que
parte de la orden de efectuar el proceso, hasta que él mismo ha sido completado. En la siguiente
figura, se muestra gráficamente cómo sería el mismo en un caso general.
A partir del momento que se aplica la señal de efectuar una búsqueda, hay un breve retardo
debido tanto a los tiempos de transmisión de los circuitos, como a las demoras introducidas por el
acomodamiento de los mismos al estado necesario. Solo después de este breve lapso, comienza
efectivamente la búsqueda del lugar donde está guardada la información, o sea de la posición de
memoria que debe ser accedida.
Este tiempo, que es llamado Latencia, depende de varios factores, el principal de ellos es del tipo
de memoria;
➢ Cinta magnética, la latencia media puede llegar a valer tanto como la mitad del tiempo total de
lectura de toda la cinta.
➢ Disco, se trata de disponer la cabeza en la pista indicada y luego esperar como promedio
media vuelta del disco.
Una vez encontrada la ubicación, debe comenzar el proceso de lectura o escritura, lo cual
también lleva su tiempo, y finalmente, se debe realizar la transferencia al registro de destino desde el
registro fuente.
Métodos de acceso: Se utilizan tres parámetros de medida de Prestaciones:
➢ Tiempo de Acceso: Para efectuar una lectura o una escritura en memoria, se demora un
cierto tiempo. Por eso, para no citar dichos tiempos independientemente, se acostumbra a
definir el Tiempo de Acceso, como el tiempo promedio de ambos. (RAM)
➢ El Tiempo de Ciclo de Memoria consiste en el tiempo de acceso más el tiempo que se
requiere antes de que pueda iniciarse un segundo acceso a memoria, necesario para finalizar
distintos procesos.
➢ La Velocidad de Transferencia es la velocidad en la que se pueden transferir datos.
Dimensiones de la memoria
❖ Capacidad: Es la cantidad de información que puede almacenar, y se mide en bits, bytes o
palabras. Ej: 64 Megabytes (64MB).
❖ Caudal: Es la cantidad de información que puede transferir por unidad de tiempo, medida en
bits o bytes. Ej: 134 GB/s.
❖ Densidad: Puede ser lineal, superficial o volumétrica, y permite determinar la cantidad de
información, en bits o bytes, que puede ser almacenada por unidad de longitud, de superficie, o
de volumen. Ej: 82 bits/cm, 300 KB/cm2, 250 MB/cm3
Rendimiento de una memoria
➢ Tiempo Medio de Acceso: es aquel que tiene en cuenta los posibles errores que se producen
en los procedimientos, tanto de direccionamiento como de transferencia de información.
Tiempo Medio de Acceso = Tiempo de Acierto + ( Frecuencia de Fallas . Demora por Falla)
➢ Tiempo de Acierto: Es el tiempo necesario para un acceso correcto.
➢ Demora por Fallas: Es el tiempo necesario para buscar la información en otro bloque de
memoria o en el almacén externo, y que se debe agregar cuando el dato no se encuentra en la
memoria principal.
➢ Frecuencia de Fallas: Es la cantidad de veces por unidad de tiempo, que ocurre una falla de
acceso a la memoria.
Unidad de transferencia: Es el número de bits que se leen o escriben en memoria a la vez, esta
no tiene porque coincidir con una palabra o unidad direccionable. Para la memoria externa, los datos
se transfieren normalmente en unidades más grandes de palabras llamadas bloques.
❖ Una Palabra es la unidad natural de organización de la memoria. El tamaño suele coincidir con
el número de bits utilizados para representar números y la longitud con las instrucciones.
❖ La Unidad Direccionable en algunos sistemas es la palabra, sin embargo, en muchos
permiten direccionar a nivel de bytes.
Clasificación de memorias
Esto funciona a forma de introducción a la clasificación de memoria, haciendo mención a los Tipos
de Memoria principales que podemos encontrar, dependiendo del mecanismo usado para almacenar y
distribuir datos, un sistema de memoria puede clasificarse en uno de los siguientes 4 tipos:
❖ Random-Access Memory (RAM)
➢ Read/Write Memory (RWM)
➢ Read-Only Memory (ROM)
❖ Content-Addressable Memory (CAM)
❖ Sequential-Access Memory (SAM)
❖ Direct-Access Memory (DAM)
Por su aplicación:
Memoria Central: Es utilizada exclusivamente para el almacenamiento de programas y datos que
se están ejecutando en ese momento. También se denomina Memoria Interna o Memoria Física.
Memoria Periférica: Almacena programas y datos, pero que no están en ejecución, sino que para
su utilización, la unidad de control deberá proceder a transferirlos a la memoria central. También se
denomina Memoria Externa o Memoria de Virtual.
Por su jerarquía:
Se entiende por jerarquía de memoria al grado de proximidad de la
misma con la Unidad Lógica Aritmética, es decir, en la cima de la
jerarquía, los registros son los de velocidad similar a la de una unidad de
proceso.
La utilización de un sistema de memoria jerárquico, tiende al
equilibrado de los anchos de banda, denominando así a la capacidad de
transferencia de información.
A fin de obtener el máximo rendimiento conjunto, es necesario tratar
que todo funcione con caudales parecidos, para ello, se usan diversos
tipos de memorias, ubicados en cascada entre los circuitos de cálculo y el
almacén externo, quedando una pirámide jerárquica tal como lo indican
las siguientes figuras:
➢ Registros: son los de mayor velocidad, equiparandose con la de
una unidad de procesos, pero son grandes y consumen una gran cantidad de energía. En un
procesador encontramos habitualmente unos pocos registros, del orden de algunos cientos o
miles.
➢ Memoria Caché: en general la memoria CACHÉ es del tipo SRAM o sea RAM estática, es una
memoria intermedia entre la memoria central y la unidad de cálculo, utilizada para almacenar la
información de próxima utilización.
Normalmente la transferencia de la
caché a la CPU, es por palabras,
mientras que entre la memoria central y
la caché lo es por bloques o conjuntos
de palabras.
➢ Memoria Central: suele ser, junto a la
caché de disco, tipo RAM dinámica,
aunque actualmente se tiende a la
utilización total de SRAM.
➢ Caché de Disco: Se ubica entre la memoria central y los discos magnéticos, ópticos y cinta
magnética
➢ Discos magnéticos, ópticos y cinta magnética: Su finalidad es la de permitir efectuar
transferencias en modo multiprocesamiento, o sea solapado con otras funciones de la CPU.
Estos se encuentran al fondo de la jerarquía y se denominan elementos de almacenamiento
“offline”, en estos, el costo por bit almacenado y energía consumida es bajo, pero su velocidad
es lenta.
Los registros utilizados por la CPU, a veces se agrupan en la denominada Memoria Borrador
denominada así por cuanto soporta los datos intermedios de las operaciones. Por otra parte, cuando
la memoria externa es de gran
capacidad y por lo tanto de
transferencia lenta, es conocida como
Memoria Fichero.
En la segunda figura se agregan
otras consideraciones a la jerarquía de
las memorias, si se encuentran en la
placa base (Inboard memory) o no
(Outboard storage) o el momento en el
que se utilizan (Off- line storage)
Por su tipo de acceso:
❖ Secuencial: Cuando la lectura se realiza recorriendo todas las posiciones en forma secuencial,
tal como sucede en las cintas magnéticas. CINTAS, CD-ROM
❖ Cíclico: Cuando la información es accesible en intervalos regulares de tiempo. DISCOS
❖ Coordinado: El acceso es independiente de cada una de las posiciones, un sistema de
direccionamiento por coordenadas. ROM, RAM, DRAM
Por su funcionamiento:
❖ Estáticas: Cuando no es necesario ningún tipo de movimiento, ni de cargas eléctricas, ni de
campos magnéticos, el contenido de cada posición de la memoria se mantiene en tanto se
mantenga la alimentación eléctrica del circuito integrado. Es más rápida, costosa y menos
densa que la DRAM, se usa en caché.
❖ Dinámicas: Cuando es necesario el continuo refresco para reponer cargas perdidas. Se usa en
memoria principal. Una celda de memoria de DRAM es más simple que una estática y en
consecuencia, más pequeña, por ello, las DRAM son más densas y económicas.
Por la permanencia de la información:
❖ Volátiles: Cuando la información almacenada se pierde al cabo de cierto tiempo, debe
mantenerse continuamente tensión de alimentación a la memoria para mantener los valores de
los bits. Ej; DRAM
❖ No Volátiles: Cuando la información perdura indefinidamente, o por lo menos un tiempo muy
largo. Ej; DISCOS
Por su forma de lectura:
❖ Destructiva: Cuando es necesario modificar la información almacenada para leerla. DRAM
❖ No Destructiva: Cuando no es necesario alterar su contenido para leerlo. RAM, ROM
Memorias especializadas
Memorias de pilas:
➢ FIFO (first in first out) : Primera en entrar
- primero en salir, es decir, es lo que se
llama una fila de espera. No son de
acceso aleatorio, es escasa su
incidencia en sistemas de
microordenadores.
➢ LIFO (last in first out): la última
información introducida en la memoria
es la primera en extraerse, es lo que se
llama una pila o apilamiento. Estas
memorias especiales se crearon para librar a la CPU de gran parte de la labor de supervisión y
control al realizar algunas operaciones del tipo de manipulación de datos memorizándolos y
extrayéndose a una secuencia establecida.
Memorias asociativas: direccionadas por contenido.
❖ Direccionamiento por número de celdas
❖ Direccionamiento por filas y columnas
Memorias de semiconductor
Organización de las memorias de Semiconductor:
Los multivibradores o las celdas DRAM se disponen según matrices. Se agregan en el chip los
circuitos de selección, de lectura y de escritura. En el caso de las DRAM se agregan los circuitos de
refresco.
Señales de control:
❖ RAS: Row Address Select
❖ CAS: Column Address Select
❖ WE: Write Enable
❖ OE: Output Enable
Memoria Virtual
Así se designan todos los almacenes conectados al computador mediante los terminales de E/S.
Se define a la Memoria Virtual como un conjunto de programas que dispone el sistema
operativo que hace creer a la CPU (y por consiguiente a los usuarios /programadores) que puede
manejar directamente la memoria de virtual aunque en realidad sólo pueda acceder a la memoria
electrónica de mucho menor tamaño (DRAM). Para utilizar la memoria virtual el procesador deberá
realizar una serie de comprobaciones y pasos:
1) Genera la dirección correspondiente a la memoria virtual del objeto que necesita. Un
mecanismo de gestión de memoria, denominado Unidad de Gestión de Memoria (MMU)
comprueba si el objeto se encuentra en memoria principal.
a) Si está en memoria principal, accederá a él normalmente.
b) En caso contrario, comunica el hecho al sistema operativo para localizar el objeto en
memoria virtual y transferirlo a la memoria principal, para que la CPU acceda
normalmente a él.
Discos rígidos o HDD
Es un plato circular construido con un material no magnético, llamado sustrato, cubierto por un
material magnetizable. Tradicionalmente, el sustrato es aluminio o una aleación de aluminio.
Recientemente, se han utilizado sustratos de cristal.
Los datos se graban y después se recuperan del disco a través de una bobina, llamada cabeza;
en muchos sistemas, hay dos cabezas, una de lectura y otra de escritura. La cabeza es un dispositivo
relativamente pequeño, capaz de leer o escribir en una zona del plato que rota bajo ella. Esto da lugar
a que los datos se organizan en un conjunto de anillos concéntricos en el plato, llamados pistas. Cada
pista es del mismo ancho que la cabeza. Usualmente hay cientos de pistas por superficie.
En la Figura se puede ver la disposición de los datos. Las pistas adyacentes están separadas por
GAP entre grabaciones. Esto previene los errores debidos a desalineamientos de la cabeza o a
simplemente interferencias del campo magnético.
Los datos se transfieren al y desde el disco
en sectores. Normalmente hay cientos de
sectores por pista, y estos pueden tener una
longitud variable o fija. En la mayoría de los
sistemas de hoy se utilizan sectores de longitud
fija, siendo 512 bytes el tamaño casi universal de
un sector. Para evitar imposiciones de precisión
lógica del sistema, los sectores adyacentes se
separan con GAP entre pistas.
Brazo Soporte
para las Cabezas
Mediante los datos de control grabados en el disco se identifica el principio y el fin de cada sector.
Por lo tanto, el disco se graba con un formato que contiene algunos datos extra usados solo por el
controlador del disco y no accesibles al usuario.
En este caso, cada pista contiene treinta sectores de longitud fija de 600 bytes cada uno. Cada
sector contiene 512 bytes de datos más información de control útil al controlador del disco.
El campo ID es un identificador único o dirección usado para localizar un sector particular. El byte
SINCRO es un patrón de bits especial que delimita el comienzo del campo. El número de pista
identifica una pista en una superficie. El número de cabeza identifica una cabeza, si el disco tiene
varias superficies. El ID y los campos de datos contienen, cada uno, un código de detección de
errores. El Control de Redundancia Cíclica (CRC) consiste en un método de verificación de datos que
nuestro ordenador utiliza para verificar la precisión de los datos presente en los discos.
Funcionamiento de los Sistemas Magnéticos:
Mecanismo de Escritura; Un flujo eléctrico atravesando una bobina crea un campo magnético. Se
envían pulsos eléctricos a la cabeza de escritura, y se graban los patrones magnéticos en la superficie
bajo ella, con patrones diferentes para corrientes positivas y negativas. La cabeza está hecha de un
material fácilmente magnetizable y tiene forma de donut rectangular con un agujero a lo largo de un
lado y varias vueltas de cable conductor a lo largo del lado opuesto. Una corriente eléctrica en el cable
induce un campo magnético a lo largo del agujero, que magnetiza una pequeña área del medio
grabable. Cambiando la dirección de la corriente,
cambia el sentido de magnetización del medio de
grabación.
Mecanismo de Lectura; Un campo magnético
en movimiento respecto a una bobina, induce una
corriente eléctrica en la bobina. Cuando la
superficie del disco pasa bajo la cabeza, en esta
se genera una corriente de la misma polaridad
que la que produjo la grabación magnética. La
estructura de la cabeza de lectura antiguamente
era esencialmente la misma que la de escritura.
Actualmente se usa un mecanismo diferente
para la lectura, siendo necesaria una cabeza de
lectura separada posicionada cerca de la cabeza
de escritura. La cabeza de lectura consiste en un
Sensor MagnetorResistivo (MR) parcialmente
blindado. El MR tiene una resistencia eléctrica que depende de la dirección de la magnetización del
medio que se mueve bajo él. Haciendo pasar una corriente a través del sensor MR, los cambios de la
resistencia se detectan como señales de tensión. El diseño del MR permite operar a altas frecuencias,
lo que equivale a grandes densidades de almacenamiento y de velocidad de funcionamiento.
SSD
Una unidad de estado sólido o SSD es un dispositivo de almacenamiento de datos que usa una
memoria no volátil, como la memoria flash. Son menos sensibles a los golpes, son prácticamente
inaudibles, tienen un menor tiempo de acceso y de latencia.
Hacen uso de la misma interfaz que los discos duros (HDD) -SATA- por lo que son fácilmente
intercambiables. Los más actuales usan el formato M.2, siendo más rápidos, y de tamaño más
reducido.
HHD
Se han desarrollado dispositivos que combinan ambas tecnologías, es decir, discos duros y
memorias flash, y se denominan discos duros híbridos (HHD), que intentan aunar capacidad y
velocidad a un precio inferior a un SSD.
Cinta magnética
Se utilizaban carretes abiertos de ½ a 1 de ancho y longitudes de hasta 300 metros. Las
grabaciones se hacían hasta 9 bits en paralelo, 8 del dato y uno de paridad. La grabación del paquete
de datos es precedida por un gap y un byte de sincronismo.
Actualmente se usan magazines o cassettes especiales, con hasta 36 pistas paralelas en el
ancho. Se sigue utilizando por economía para almacenes históricos.
Disco óptico CD
Presentado en 1983, fue el mayor éxito de todos los tiempos. Era el inicio de los sistemas
digitales de audio, de allí nació el disco óptico de datos. Variantes de CD:
➢ WORD (Writable Once – Read Many)
➢ EOD (Erasable Optic Disk)
CD-ROM
La grabación consiste en una serie de puntos deprimidos. La lectura se hace por medio de un haz
de láser, el cual al reflejarse en la superficie normal tiene una polarización. Cuando se refleja en una
depresión la polarización cambia, lo cual es
detectado por un fotodiodo. En consecuencia, la
presencia o ausencia de luz es la forma de leer los
datos.
Técnicas de grabación:
Debido a que la velocidad tangencial es mayor
en el centro que en la periferia del disco, se usan
dos técnicas para la grabación:
a) CAV (Constant Angular Velocity)
b) CLV (Constant Linear Velocity)
Formato de grabación; ⇒
DVD (Digital Versatile Disk)
Esencialmente es igual al cd, pero tiene mayor capacidad, lograda por un mayor acercamiento de
las pistas y de los puntos de quemado, así como por la inclusión de una capa más de material
grabable. Comparación CD - DVD - Blu-ray
Memoria Caché
Cuando la CPU necesita hacer una lectura en memoria:
➢ Verifica que el dato o la instrucción esté en la caché.
➢ Si esto ocurre, es entregado/a inmediatamente.
➢ Si no está, se debe cargar un bloque de la memoria central
Esto quiere decir que debemos asegurarnos que en la caché haya una porción lo más completa
posible de un programa y sus datos.
Direccionamiento de la Caché:
Debe usarse la misma dirección que la de una
palabra en la memoria central. Para ello debe haber
un correcto mapeo. Para esto se utiliza una política
de asignación de espacios.
Organización MC
Cache Totalmente Asociativo:
Cada posición de la memoria principal puede
almacenarse en cualquier posición de la MC. Estas
memorias no pueden ser muy grandes porque
cuando el procesador solicita un dato en la caché se
debe comparar cada una de las etiquetas con la
dirección de la memoria principal.
Cache de Correspondencia Directa:
La caché es un solo banco de memoria y ve a la memoria principal como dividida en páginas del
mismo tamaño que la RAM de la caché. La eficacia de la caché disminuye si la aplicación requiere
cambios de páginas reiteradamente. Esto suele ocurrir en entornos multitarea y/o multiusuario.
Caché Asociativa de “n” Vías:
Está dividida en n bancos que operan en paralelo. Se puede decir que funcionan como un
conjunto de n caches de correspondencia directa. Se divide la caché en grupos o vías y la memoria
principal en páginas de tamaño de un grupo de la caché. Cómo se accede simultáneamente a las n
vías, si no se encuentra el dato en un grupo, puede encontrarse en alguno de los otros grupos. Esto
mejora la eficacia de la caché.
Todas las etiquetas (Tags) son almacenadas en una memoria especial para etiquetas donde
pueden ser buscadas en paralelo, Memoria Asociativa.
Cuando un nuevo bloque es almacenado en la memoria de datos de la caché su etiqueta es
almacenada en la correspondiente locación de memoria de etiquetas.
Si un programa es cargado en la Memoria Principal, la caché es limpiada mientras ese programa
se está ejecutando y el bit Valid indica cuando un Slot de la caché contiene un bloque de ese
programa al colocarse en 1.
El bit Dirty indica que ese bloque ha sido modificado mientras se encuentra en la caché, por lo
que deberá ser vuelto a escribir en la Memoria Principal antes que el mismo Slot sea usado por otro
bloque.
Cuando se hace referencia a una dirección de Memoria Principal, el hardware de la caché
intercepta la referencia y busca en la memoria de etiquetas para ver si el bloque solicitado está en la
caché.
Si el bit Valid es 1, el campo Tag de la dirección es comparado con la etiqueta del Slot;
➢ Si existe coincidencia, la palabra es tomada desde la posición en el Slot especificada por el
campo palabra (Word).
➢ Si no hay coincidencia, el correspondiente bloque de Memoria Principal que contiene a la
palabra referenciada es llevado a la caché y la palabra es tomada desde la caché,
actualizándose la etiqueta y los bits Valid y Dirty.
En el tercer modelo, se combina la simplicidad del mapeo directo con la flexibilidad del mapeo
asociativo. La porción asociativa es limitada a unos pocos Slots que conforman el conjunto, en este
caso como dos bloques (Blocks) forman el conjunto se trata de una caché asociativa de conjunto de
dos vías. Se necesitan buscar sólo dos etiquetas para cada referencia a memoria.
Tipos de conexión de MC
Serie: Todas las peticiones a memoria se realizan a través de la caché. Se disminuye el número
de accesos a la memoria principal. Sólo en ausencia, la petición se transfiere a la memoria principal,
se realiza como si no existiera la caché. Esta configuración permite que el procesador trabaje en la
caché y otro procesador pueda acceder a la memoria principal.
Paralelo: Todas las peticiones llegan simultáneamente a la caché y a la memoria principal. Si el
dato está en la caché, se lo entrega al procesador y envía una señal a la memoria principal para que
aborte el ciclo. La ventaja es que la caché se puede quitar del sistema sin modificación alguna. Esta
configuración no es buena en sistemas multiprocesador.
Actualización de la Caché
Esto implica sustituir cierta información que está en la caché por otra nueva transferida de la
memoria principal. La actualización implica elegir qué posición de la caché se va a sustituir.
En las de correspondencia directa sólo puede almacenarse en una posición determinada de la
caché. En las otras organizaciones se puede hacer la sustitución según distintos algoritmos. Los más
usados son el RANDOM y el LRU, Least Recently Used. El primero actualiza en forma aleatoria
cualquier vía o grupo. El segundo sustituye a aquella que lleva más tiempo sin ser accedida.
Actualización de la Memoria Principal
Como el procesador trabaja en la caché, los datos actualizados se encuentran en la caché. Si otro
dispositivo accede a la memoria principal obtendrá datos obsoletos. Por lo tanto es importante fijar
políticas de actualización de la memoria principal. Hay tres métodos:
➢ Write Through (Escritura inmediata): Todas las escrituras del procesador en la caché son
traspasadas inmediatamente a la memoria principal. Baja la performance del sistema porque
se usa mucho el bus de memoria principal.
➢ Posted Write Through (Escritura diferida): Incorpora registros intermedios (3 a 5), que permiten
que el controlador de la caché actualice cuando el bus está ocioso.
➢ Write Back (Escritura obligada): Las escrituras del procesador en la caché solamente se hacen
en la memoria principal si son estrictamente necesarias.
Movimiento de datos en jerarquía de memorias;
Coherencia de la caché
A la relación de contenidos entre la caché y la memoria central, es denominada "Coherencia de la
Caché". Es necesario que el contenido de la caché siempre sea coherente con el contenido de la
memoria central para evitar errores. Este tema es uno de los más estudiados en la actualidad.
Elementos para el diseño de cachés
❖ Capacidad de la caché: Para que sea rápida debe ser pequeña, pero si es muy pequeña
también la tasa de acierto es baja. Por tanto se aconseja un tamaño comprendido entre 256 y
512 KB
❖ Tamaño de los bloques: Tiene también dos aspectos límite:
➢ Bloque grandes, mejora la probabilidad de encontrar lo buscado en él, pero la
transferencia también es grande.
➢ Bloques chicos, baja la probabilidad de encontrar lo buscado, pero mejora la velocidad
de transferencia.
Moraleja: se necesita solución de 4 - 8 palabras o bytes
❖ Niveles de caché: Si se incluye una caché primaria en el integrado del procesador, hace falta
una externa, la secundaria. Los procesadores actuales poseen una organización de caché de
tres niveles (l1, l2 y l3) en el mismo integrado.
❖ Uso unificado o distribuido: En el nivel 1 se prefiere una caché dividida en dos partes: una para
datos y la otra para instrucciones, en cambio, en los niveles 2 y 3 se usa caché compartida
para datos e instrucciones.
Direccionamiento Físico y Lógico: La memoria puede direccionarse en forma:
Memoria lineal:
En este caso la dirección lógica es igual a la dirección física. La dirección lógica es la dirección
que está presente en la palabra instrucción. Ej; si en la instrucción, la dirección lógica es 0 2 A 7, la
dirección física será 0 2 A 7.
Memoria segmentada:
En este caso en la memoria pueden almacenarse segmentos de distintas longitudes. Cada
segmento está definido por un descriptor que indica la base del segmento, el límite y los atributos del
segmento (si es de código, si de sólo lectura, etc.). Esto permite que algunos segmentos esten
presentes en la memoria principal y otros segmentos se encuentren en una memoria virtual. Este
sistema permite que se intercambien segmentos según los requerimientos de la aplicación.
La dirección lógica no es igual a la dirección física. Se debe aplicar un mecanismo que traduce la
dirección lógica a la dirección física: tomando la base del segmento que se encuentra en el descriptor
y sumándole el desplazamiento se obtiene una dirección física de 32 bits. Esos 32 bits serán los que
estarán presentes en el bus de direcciones.
Podemos observar también que el límite del direccionamiento físico está dado por los 32 bits del
bus de direcciones, mientras que el límite del direccionamiento virtual está dado por los 48 bits de la
dirección lógica.
Memoria paginada:
Este caso es similar al anterior, salvo que las páginas tienen todas la misma cantidad de bytes.
Memoria segmentada – paginada:
Este caso es la combinación de los dos anteriores. En las siguientes
figuras se representan los mecanismos de traducción de dirección lógica a
dirección física que se implementan.
Otros terminales del chip:
Once líneas de direcciones. Cuatro líneas de datos. Más las cuatro
líneas de control. Se debe agregar alimentación y tierra. En total 24
terminales, de los cuales uno no se usa.
Lógica de chips:
Cada chip integrado tiene una cierta capacidad. Para aumentarla se
combinan diversos chips. Para ello tienen todos una entrada denominada
chip select. (selección del chip)