Tema 2 Definiciones y conceptos básicos



Descargar 424.76 Kb.
Página1/8
Fecha de conversión12.11.2017
Tamaño424.76 Kb.
  1   2   3   4   5   6   7   8


Tema 2 - Definiciones y conceptos básicos

El objetivo de cualquier diseño de una unidad de memoria es proporcionar la capacidad de almacenamiento necesaria a un coste razonable y con un nivel de velocidad aceptable.


2.1.1 Localización

Uno de los aspectos más destacables de la memoria de un computador es su localización y desde este punto de vista se pueden clasificar en tres grandes grupos:

a) Memoria interna del procesador: Esta memoria está constituida, normalmente, por un pequeño conjunto de registros de alta velocidad que son internos a la CPU (ver Figura 1.3). Estos registros los utiliza la CPU como elementos de almacenamiento temporal de instrucciones y de datos, y su estudio será el objeto de temas posteriores.

b) Memoria principal (llamada también memoria central o memoria primaria): Es una memoria, relativamente grande y rápida, utilizada para el almacenamiento de las instrucciones de los programas (que están en ejecución en el computador) y sus correspondientes datos. Se caracteriza por el hecho de que se puede acceder a cualquier información almacenada en ella mediante instrucciones del repertorio de la máquina. La tecnología más empleada es la de los circuitos integrados (CI) tipo semiconductor. En los primeros años se utilizaban también memorias principales de soporte magnético (núcleos de ferritas).

c) Memoria externa o secundaria (llamada también memoria auxiliar): Son dispositivos periféricos de almacenamiento accesibles a la CPU a través de controladores de E/S. En los dispositivos externos se distingue entre controlador y soporte de la información. El controlador se encarga de dirigir los componentes mecánicos y electrónicos del dispositivo, de esta forma se libera a la CPU de gran parte de la gestión de E/S. El soporte es el medio físico (disco magnético u óptico, cinta magnética, CD ROM, cinta de papel, tarjeta perforada, etc.) donde se almacena la información. Esta separación facilita el intercambio de información entre dispositivos de almacenamiento que tienen un mismo tipo de controlador. La memoria secundaria suele ser varios órdenes de magnitud más grande y más lenta que la memoria central. Se utiliza fundamentalmente para el almacenamiento de programas y conjuntos de datos que no están siendo utilizados continuamente por la CPU (por ejemplo un compilador de Pascal, programas fuentes, etc.). Para que la CPU pueda acceder a la información contenida en la memoria secundaria es preciso que previamente se cargue esta información, por medio de programas especializados (por ejemplo cargadores), en la memoria principal. Las memorias secundarias que se emplean normalmente son, entre otras, los discos y las cintas magnéticas.
2.1.2 Capacidad

Otra característica importante de la memoria es su capacidad, es decir, la cantidad de información que puede almacenar. Ésta se mide en palabras. Así por ejemplo, la capacidad de los registros de la CPU es de una palabra y la de la memoria principal en los computadores actuales es del orden de millones de palabras. Cuando hay grandes necesidades de almacenamiento se recurre a las memorias secundarias.

Es frecuente el uso de dos múltiplos de la unidad de capacidad, éstos son: la kilopalabra (1 K palabra = 210 palabras = 1.024 palabras) y la megapalabra (1 M palabra = 220 palabras = 1.048.576 palabras).

La palabra de un elemento de almacenamiento puede constar de varias unidades indivisibles conocidas como bits (contracción de las palabras inglesas binary digit). El número de bits por palabra es, la mayoría de las veces, una potencia baja de dos, por ejemplo 3 (en este caso se habla de octetos o bytes). La capacidad de una memoria de p palabras con n bits cada palabra se suele representar como: p × n bits.


2.1.3 Unidad de transferencia

Un tema relacionado con la capacidad de la memoria es el de la unidad de transferencia. En una memoria interna la unidad de transferencia es igual al número de líneas de datos de entrada y salida al módulo de memoria. Este número a menudo coincide con la longitud de palabra, pero puede no hacerlo. Para clarificar este punto se consideran los tres conceptos siguientes que están conectados entre sí en el caso de la memoria interna:


a) Palabra: Es la unidad natural de organización de la memoria. El tamaño de la palabra es generalmente igual al número de bits utilizados para representar un número entero y la longitud de una instrucción.
b) Unidades direccionables: En muchos sistemas la unidad direccionable es la palabra. Sin embargo, otros permiten un direccionamiento a nivel inferior como por ejemplo un byte. En cualquier caso, la relación entre el número n de bits necesarios para especificar una dirección y el número N de unidades direccionables es: 2n = N.
c) Unidad de transferencia: Para la memoria principal, la unidad de transferencia es el número de bits leídos de o escritos en la memoria simultáneamente y no tiene por qué ser igual a una palabra o a una unidad direccionable. Para las memorias externas, los datos se transfieren con frecuencia en unidades mucho más grandes que una palabra denominadas bloques (aunque no simultáneamente).
2.1.4 Método de acceso

En cualquier operación de lectura o escritura es necesario, en primer lugar, localizar la posición del elemento de almacenamiento donde la CPU debe colocar o extraer la información. Una propiedad muy importante de un dispositivo de memoria es el orden o método de acceso en que debe ser localizada o accedida la información. Se distinguen cuatro tipos:


a) Acceso aleatorio: Se dice que una memoria tiene acceso aleatorio cuando puede accederse a las informaciones almacenadas en ella en cualquier orden, siendo el tiempo de acceso independiente de la posición donde está localizada la información.

Estas memorias se denominan con el acrónimo de RAM (Random Access Memory). De esta forma cada posición direccionable de una memoria RAM tiene asignada una única dirección de localización. El tiempo de acceso a cualquier posición es constante e independiente de la secuencia de accesos que haya habido anteriormente. En la Figura 2.1 se muestra en forma de esquema el modelo conceptual de una memoria RAM. La memoria principal de un computador es siempre de acceso aleatorio.





Figura 2.1: Modelo conceptual de una memoria RAM

b) Acceso secuencial: Son memorias en las que solamente se puede acceder a la información almacenada en ellas mediante una secuencia lineal.

Por lo tanto, el tiempo necesario para acceder a una información concreta es variable y depende de la posición donde está almacenada. Se denominan con el acrónimo SAM (Sequential Access Memory).

Las unidades de datos elementales de una memoria SAM se llaman registros. En la Figura 2.2 se representa el diagrama conceptual de una memoria SAM. Un ejemplo típico de esta clase de memorias son las unidades de cinta magnética.



Figura 2.2: Modelo conceptual de una memoria SAM

c) Acceso directo: A1 igual que en el acceso secuencial, el acceso directo incorpora un mecanismo de lectura escritura compartido. Sin embargo los bloques o registros individuales tienen una dirección única que se basa en su posición física. El acceso se efectúa mediante un mecanismo de acceso aleatorio para alcanzar la zona más próxima (registro) donde se encuentra la información a la que se desea acceder, y a continuación se realiza una búsqueda de tipo secuencial dentro del registro. En este caso el tiempo de acceso también es variable. Las unidades de disco son el ejemplo clásico de memoria de acceso directo.
d) Acceso asociativo: Son también memorias de acceso aleatorio. Lo que diferencia a este tipo de memorias de las tradicionales, es que en las memorias asociativas no se pregunta por el contenido de una determinada dirección de memoria, ahora se pregunta si existe una posición de memoria que contiene una palabra determinada. Es decir, se selecciona la posición de memoria con la que se desea comunicar, sobre el principio de lo que contiene y no sobre la base de donde está.

A primera vista puede parecer que esta clase de memoria no tiene demasiada utilidad ya que se conoce lo que se quiere buscar. Ahora bien, si se considera que cada palabra de memoria está constituida por dos campos y se pregunta por el contenido de la parte izquierda, la memoria asociativa responde inmediatamente con el contenido de los dos campos (izquierdo y derecho). De esta forma se obtiene una traducción "instantánea" de una zona (izquierda) en la otra (derecha). La ventaja fundamental es que se explora toda la memoria al mismo tiempo y sólo se obtienen las palabras cuyo lado izquierdo es igual al valor buscado. Análogamente se puede preguntar por la zona de la derecha con lo que es igualmente rápida la traducción inversa.

Se puede ver que al igual que la memoria de acceso aleatorio ordinaria, cada posición tiene su propio mecanismo de direccionamiento y el tiempo de recuperación de la información es constante e independiente de la localización y configuración del acceso previo.
2.1.5 Tipos físicos

El sistema de memoria de un computador utiliza diferentes tipos físicos. Los tres tipos más usados en la actualidad son:



a) Memorias de semiconductor, del tipo LSI (Large Scale Integration) o VLSI (Very Large Scale Integration) utilizadas como memoria principal del computador y donde se incluyen un gran número de distintas tecnologías con diferentes características.

b) Memorias magnéticas, utilizadas como memorias secundarias (discos, cintas,...).

c) Memorias ópticas, utilizadas también como memorias secundarias.

d) Memorias magneto-ópticas, utilizadas también como memorias secundarias.

Características_físicas'>2.1.6 Características físicas

Resultan particularmente interesantes algunas características físicas del almacenamiento de datos. Entre las más sobresalientes están:


a) Alterabilidad. Esta propiedad hace referencia a la posibilidad de alterar el contenido de una memoria. Así por ejemplo, una tarjeta perforada puede considerarse como un elemento de almacenamiento de información no alterable. Las memorias cuyo contenido no puede ser modificado se denominan memorias de sólo lectura o memorias ROM (Read Only Memory). Las diferentes tecnologías proporcionan diversos tipos de memorias ROM de acceso aleatorio, utilizadas fundamentalmente para el almacenamiento de programas en sistemas dedicados a una aplicación específica. Las memorias sobre las que se pueden realizar indistintamente operaciones de lectura o escritura se conocen como memorias de lectura-escritura o memorias RWM (Read Write Memory). En la terminología de estructura de computadores es habitual utilizar las siglas RAM para referirse a una memoria de acceso aleatorio y de lectura-escritura.

Algunos tipos de memorias ROM son programables por el usuario, en cuyo caso se las denomina mediante las siglas PROM (Programmable ROM). Otras memorias PROM pueden ser borradas y vueltas a programar con otros contenidos, estas memorias se denominan EPROM (Erasable PROM). El contenido de una memoria EPROM puede borrarse eléctricamente en cuyo caso se conoce como memoria EEPROM (Electrically EPROM), o bien haciendo incidir rayos ultravioletas sobre el circuito de memoria (UVEPROM).

Conviene señalar que el tiempo necesario para escribir una palabra de información en una PROM es muy superior al tiempo necesario para leerla y se requiere de un dispositivo de borrado y grabación específico, lo que obliga a retirarla del sistema para reprogramarla y volverla a instalar después. Este hecho marca la diferencia fundamental con respecto a la ya mencionada memoria RAM.
b) Permanencia de la información. Existen tres características de los dispositivos de memoria que pueden redundar en la destrucción de la información que almacenan:
1) Lectura destructiva. Hay memorias, como las de núcleos de ferritas, en las que una operación de lectura ocasiona la destrucción de la información leída. Para evitar la pérdida de información en las memorias de lectura destructiva o memorias DRO (Destructive Readout), hay que volver a reescribirlas inmediatamente después de haberlas leído. A las memorias de lectura no destructiva se las designa por las siglas NDRO (No Destructive Readout).
2) Volatilidad. Esta característica hace referencia a la posible destrucción de la información almacenada en un cierto dispositivo de memoria cuando se produce un corte en el suministro eléctrico. Las memorias que pierden su información al cesar la tensión de alimentación se denominan volátiles, mientras que las que conservan la información se llaman no volátiles. Las memorias RAM de semiconductores son volátiles, mientras que las memorias RAM de ferritas y las memorias ROM son no volátiles. Por este motivo, las memorias ROM se utilizan como dispositivo de almacenamiento para los programas de máquinas controladas por computador que, de manera eventual, se pueden desconectar de la fuente de alimentación. De forma análoga, todos los computadores modernos incluyen una pequeña memoria ROM que les permite reinicializar el sistema, cargar el correspondiente sistema operativo y transferirle a éste el control.
3) Almacenamiento estático/dinámico. Una memoria es estática si la información que contiene no varía con el tiempo; en el caso contrario, la información almacenada se va perdiendo con el tiempo por lo que hay que refrescarla y se habla en este caso de memoria dinámica. El refresco es una dificultad inherente al diseño con memorias dinámicas. Sin embargo, las memorias dinámicas suelen tener una mayor densidad de almacenamiento y un menor consumo de energía que sus equivalentes estáticas por requerir menos elementos electrónicos.
2.1.7 Velocidad

Desde el punto de vista de usuario velocidad y capacidad son las características fundamentales de la memoria. Para medir el rendimiento en velocidad de una memoria se utilizan los tres parámetros siguientes:


a) Tiempo de acceso (tA). En el caso de lectura de memoria se define como el tiempo medio necesario para leer una cantidad fija de información, por ejemplo una palabra. Para la escritura en memoria se define de forma análoga y en la mayor parte de los dispositivos es igual al tiempo de acceso para lectura. En otros términos: el tA de lectura representa el tiempo que ha de pasar desde que se solicita una información a un dispositivo de memoria hasta que está disponible. En memorias de acceso no aleatorio tA es el tiempo empleado en colocar en su posición la cabeza de lectura-escritura. La Tabla 2.1 muestra valores de algunas clases de memorias.

Tipo de memoria

tA

Semiconductor bipolar

10-8 seg

Semiconductor MOS

10-7 seg

Ferritas

10-6 seg

Discos magnéticos

10-3 seg

Cintas magnéticas

10-2 seg

Tabla 2.1: Valores típicos de tA
b) Tiempo de ciclo de memoria (tC). En las memorias DRO (de lectura destructiva) no es posible iniciar una segunda lectura inmediatamente después de terminada la primera, hay que efectuar antes la restauración de la información leída. Esto significa que el intervalo de tiempo mínimo entre dos lecturas consecutivas puede ser mayor que tA. Este intervalo se denomina tiempo de ciclo de memoria (ver Figura 2.3).



Figura 2.3: Relación entre tA y tC
c) Velocidad de transferencia o frecuencia de acceso (fA). En un dispositivo de memoria la velocidad de transferencia se mide como el número de palabras/segundo que pueden ser accedidas. En el caso de memorias de acceso aleatorio, fA es:

Para memorias de acceso no aleatorio, se verifica la siguiente relación:



donde:


tn = Tiempo medio para leer o escribir n bits

tA = Tiempo de acceso medio

n = Número de bits que se están transmitiendo

P = Velocidad de transferencia (en bits/seg)


2.1.8 Organización

Se entiende por organización la disposición física de los bits para formar palabras. En las memorias de acceso aleatorio la organización es un tema clave de diseño y se estudia posteriormente con mayor extensión.


2.1.9 Resumen de características y propiedades de la memoria
En la Tabla 2.2 se dan las propiedades más importantes de los circuitos integrados de memoria.

Característica

ROM

RAM estática

RAM dinámica

Alterable

No

si

si

Capacidad

Muy alta

Alta

Muy alta

Tiempo de acceso

Muy bajo

Muy bajo

Bajo

Refresco

No

No

si

Volátil

No

si

si

Tabla 2.2: Características de los circuitos integrados de memoria
Las características más importantes de los tipos de memoria que se han ido exponiendo en esta sección se resumen en la Tabla 2.3.

Localización

Memoria interna de la CPU

Memoria principal

Memoria secundaria


Tipo físico

Memoria de semiconductor

Memoria magnética

Memoria óptica


Capacidad

Número de palabras

Tamaño de la palabra



Características Físicas

Alterabilidad (ROM, RAM)

Permanencia de la información

- DRO/NDRO

- Volátil/No volátil

- Estática/Dinámica


Unidad de transferencia

Palabra

Bloque


Velocidad

Tiempo de acceso tA

Tiempo de ciclo tC

Frecuencia de acceso fA


Método de acceso

Acceso aleatorio

Acceso secuencial

Acceso directo

Acceso asociativo



Organización

2D

2½D


Tabla 2.3: Características básicas de las memorias
Jerarquía de memorias

La unidad de memoria de un computador se puede ver como una jerarquía de componentes. Desde el punto de vista del diseñador, esta jerarquía impone una serie de ligaduras que se pueden resumir en los tres parámetros siguientes (ver Figura 2.4):

• Capacidad de la memoria

• Velocidad

• Coste



Figura 2.4: Parámetros que hay que considerar en una jerarquía de memorias
La capacidad que se requiere en una memoria es siempre un tema abierto que depende de las necesidades de cada usuario y de las aplicaciones que utiliza. Si la capacidad se aumenta es seguro que finalmente se desarrollarán aplicaciones que la utilizan.

La cuestión de la velocidad es más fácil de comprender. Para conseguir un rendimiento óptimo del computador la memoria debe ser capaz de seguir el ritmo impuesto por la CPU. Es decir, si la CPU está ejecutando un programa no debería esperar por las instrucciones y los operandos, cuando éstos se le transfieran desde la memoria.

En un computador el coste de la memoria suele estar en consonancia con el de las otras unidades del sistema. Cada elemento de almacenamiento diferente tiene un coste asociado. Esta característica puede venir dada en términos absolutos referida al coste del dispositivo de almacenamiento en sí, o en términos relativos referida al coste por unidad de información. Por ejemplo, el coste de una unidad de disco de gran capacidad puede ser superior al de un circuito integrado de memoria, sin embargo, el coste por bit de información almacenado es siempre menor en el caso del disco.

Los tres parámetros antes mencionados están íntimamente ligados. Existe un compromiso entre coste, capacidad y tiempo de acceso. Así, una mayor velocidad suele ir acompañada de un mayor coste y de una menor capacidad, mientras que por el contrario, una gran capacidad implica un menor coste por unidad de información y una velocidad moderada. La Tabla 2.4 resume estas características.



Menor tiempo de acceso => Mayor coste por bit

Mayor capacidad => Menor coste por bit

Mayor capacidad => Mayor tiempo de acceso

Tabla 2.4: Relación entre capacidad, tiempo de acceso y coste
Teniendo en cuenta las consideraciones anteriores, resulta obvio el dilema que se le presenta al diseñador. Su objetivo será utilizar aquellas tecnologías de memoria que proporcionan una mayor capacidad, ya que ello implica que se tiene tanto la capacidad que se necesita como un coste bajo por unidad de información. No obstante, para poder cumplir los requisitos impuestos por el diseño se ve obligado a utilizar memorias rápidas (con tiempos de acceso pequeños), de baja capacidad y de alto coste. La solución a este conflicto aparente está en emplear una jerarquía de memorias en lugar de utilizar una única tecnología o componente de memoria. La Figura 2.5 muestra una jerarquía típica de memorias.



Figura 2.5: Jerarquía de memorias

Cuando se va hacia los niveles inferiores de la jerarquía ocurre que:

a) El coste por unidad de información (bit) disminuye.

b) La capacidad aumenta.

c) El tiempo de acceso aumenta.

d) La frecuencia de acceso a la memoria por parte de la CPU disminuye.


Como consecuencia de esto se deduce que las memorias rápidas, de baja capacidad y de alto coste, se complementan con las memorias lentas, de gran capacidad y de bajo coste. La clave del éxito de esta organización jerárquica está en la característica d). Esta idea se verá posteriormente, con más detalle, cuando se estudie el concepto de "memorias cachés". Una explicación intuitiva de por qué ocurre así es la siguiente:

Si se organiza la memoria de acuerdo con las características anteriores a), b) y c) y si tanto los datos como las instrucciones se pueden distribuir a través de esta memoria de acuerdo con la característica d), es decir, situando en los niveles superiores de la jerarquía los que se necesitan más frecuentemente, y en los niveles inferiores los menos utilizados, resulta evidente que este esquema reducirá el coste total, manteniendo al mismo tiempo un nivel dado de prestaciones. El objetivo final de un sistema de jerarquía de memorias se puede resumir en las dos características siguientes:


1) Ofrecer al usuario tanta capacidad de memoria como sea posible al menor coste.
2) Con una velocidad de acceso cercana a la más rápida necesaria.

A continuación se da un ejemplo sencillo que ilustra este punto.



Compartir con tus amigos:
  1   2   3   4   5   6   7   8


La base de datos está protegida por derechos de autor ©composi.info 2017
enviar mensaje

    Página principal