Logo Studenta

MIT - TED - APUNTE

¡Este material tiene más páginas!

Vista previa del material en texto

2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
2 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
Contenido 
1. SISTEMA DE PUNTO FLOTANTE .................................................................................................................................................................................. 3 
SISTEMAS DE PUNTO FLOTANTE NORMALIZADO ....................................................................................................................................................... 3 
REPRESENTACION EN SISTEMAS DE PUNTO FLOTANTE NORMALIZADOS .................................................................................................................. 4 
2. INTRODUCCION A LAS COMPUTADORAS.................................................................................................................................................................... 6 
CONCEPTO DE COMPUTADORA: ................................................................................................................................................................................ 6 
LAS INSTRUCCIONES ................................................................................................................................................................................................... 8 
FASES DE LA EJECUCION DE UNA INSTRUCCIÓN ......................................................................................................................................................... 8 
TIPOS DE INSTRUCCION. ............................................................................................................................................................................................. 9 
3. MEDIDAS DE RENDIMIENTO ..................................................................................................................................................................................... 11 
MIPS Y MFLOPS ........................................................................................................................................................................................................ 11 
4. MEMORIAS ............................................................................................................................................................................................................... 12 
CLASIFICACION DE LAS MEMORIAS .......................................................................................................................................................................... 13 
TIPO DE MEMORIAS CON SEMICONDUCTORES ........................................................................................................................................................ 14 
MEMORIA PROM ...................................................................................................................................................................................................... 15 
ORGANIZACION DE LA MEMORIA ............................................................................................................................................................................ 16 
ORGANIZACIÓN INTERNA DE UNA MEMORIA SRAM ................................................................................................................................................ 19 
LA MEMORIA EN UN SISTEMA DE COMPUTACION ................................................................................................................................................... 20 
MAPA DE DIRECCIONAMIENTO. ............................................................................................................................................................................... 21 
PLANIFICACION DE LA UBICACIÓN DE MEMORIA ..................................................................................................................................................... 23 
MEMORIA FANTASMA .............................................................................................................................................................................................. 23 
5. JERARQUIA DE MEMORIA ......................................................................................................................................................................................... 25 
MEMORIA CACHE ..................................................................................................................................................................................................... 26 
CACHE DE CORRESPONDENCIA DIRECTA .................................................................................................................................................................. 26 
CACHE ASOCIATIVA DE “n” BITS. .............................................................................................................................................................................. 27 
ACTUALIZACION DE LA MEMORIA PRINCIPAL .......................................................................................................................................................... 28 
PROTOCOLO MESI .................................................................................................................................................................................................... 28 
MEMORIA VIRTUAL .................................................................................................................................................................................................. 29 
TIPOS DE MEMORIA VIRTUAL ................................................................................................................................................................................... 30 
6. UNIDAD DE E/S (Entrada y salida) ............................................................................................................................................................................. 33 
LOS CONTROLADORES .............................................................................................................................................................................................. 34 
MODOS DE DESARROLLAR LAS OPERACIONES DE E/S. ............................................................................................................................................. 36 
E/S CONTROLADAS POR PROGRAMA ....................................................................................................................................................................... 36 
E/S CONTROLADA POR INTERRUPCIONES ................................................................................................................................................................ 38 
ACCESO DIRECTO A MEMORIA (DMA) ...................................................................................................................................................................... 39 
CONTROLADOR DE DMA (CDMA) ............................................................................................................................................................................. 40 
Modos de transferencia DMA ................................................................................................................................................................................... 41 
PROCESADOR DE E/S ................................................................................................................................................................................................ 42 
7. MICROPROCESADORES ............................................................................................................................................................................................. 43 
BUSES DE COMPUTADORAS .....................................................................................................................................................................................44 
MANEJO DE INTERRUPCIONES ................................................................................................................................................................................. 47 
8. MICROPROCESADOR 6800 ........................................................................................................................................................................................ 48 
ARQUITECTURA ........................................................................................................................................................................................................ 48 
DESCRIPCION DE LAS TERMINALES DEL µP 6800. ..................................................................................................................................................... 49 
MODOS DE DIRECCIONAMIENTO (Formas de acceder a los datos). ......................................................................................................................... 51 
MANEJO DE INTERRUPCIONES DEL 6800 .................................................................................................................................................................. 53 
PIA (Interfaz adaptador de periférico) ...................................................................................................................................................................... 55 
ACIA (Adaptador de Interfaz de comunicación asincrónica) ..................................................................................................................................... 57 
9. ARQUITERCTURA X86 .............................................................................................................................................................................................. 58 
REGISTROS ................................................................................................................................................................................................................ 60 
MODOS DE DIRECCIONAMIENTO ............................................................................................................................................................................. 62 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 3 
 
1. SISTEMA DE PUNTO FLOTANTE 
Los sistemas de punto fijo presentan el inconveniente de estar acotados por un máximo y un mínimo lo que 
ocasiona que cuando un resultado sale del rango, es necesario cambiar de sistema para representarlo los 
sistemas de punto flotante establecen una nueva alternativa de representación, aunque también se trata de 
sistemas acotados, su conformación permite ampliar considerablemente el rango de validez del sistema, 
manteniendo un formato similar para todos los números de un mismo sistema. 
Un sistema de punto flotante generalizado para números fraccionarios se identifica como (b,k,f)FL , donde el 
número presenta la siguiente estructura general: 
 
La mantisa M pertenece a un sistema (b,1,f-1) de punto fijo y se representa generalmente como 
 M = (M0 , M-1 M-2 ………….M-(f-1))b 
El exponente E pertenece a un sistema (b,k) entero y se representa como 
 E = (Ek-1………..E0)b 
Los sistemas pueden ser a su vez: 
 Con signo: la mantisa y el exponente se expresan en sistemas con notación de signo. 
 Con notación complemento: la mantisa y el exponente se expresan en sistemas con notación 
complemento. 
 Mixtos: cualquier combinación en las notaciones de signo o complemento en los sistemas de 
representación de la mantisa y el exponente. 
SISTEMAS DE PUNTO FLOTANTE NORMALIZADO 
La representación de un número en un sistema de punto flotante no es única pues es posible establecer 
diferentes combinaciones entre la cantidad de cifras fraccionarias y el valor y el signo del exponente. 
Ejemplo: 2,510 en un sistema (10,3,4)FL , puede representarse como 
 2,500x10000 o 0,250x10001 o 0,002x10002 
Para unificar la representación y lograr la presentación de la mayor cantidad de cifras significativas que 
permita el sistema empleado (ventaja de los sistemas normalizados). Se considera que el sistema esta 
normalizado cuando: 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
4 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
 En una mantisa con signo es M-1 = 0 
 En una mantisa con notación complemento es : M-1 =0 si M0 = 0 
 M-1 = (b-1) si M0 = 1 
En todos los casos en que la representación de la mantisa necesite ser aproximado siguen siendo válidos los 
procedimientos de aproximación por truncamiento y redondeo. 
REPRESENTACION EN SISTEMAS DE PUNTO FLOTANTE NORMALIZADOS 
La escritura de un número en un sistema (b,k,f)FLN, a partir de un número en base b puede efectuarse con el 
siguiente procedimiento: 
 Partiendo de un número con signo explicito. Representarlo en un sistema de punto fijo con una 
cantidad de por lo menos f posiciones fraccionarias, con la notación que requiera la mantisa (con 
signo, notación complemento o mixto). 
 Minimizar la representación del sistema tal que a la derecha del bit de signo: 
Dk-z = 0 si el número es positivo o negativo en sistemas con signo. 
Dk-z = 0 si el número es positivo en sistemas con notación complemento. 
Dk-z = (b-1) si el número es negativo en sistemas con notación complemento. 
 Desplazar el separador fraccionario a la derecha o izquierda de modo que el número quede 
representado con el bit de signo como única cifra entera. Esta estructura constituirá la mantisa del 
número en el formato de punto flotante. 
N=Dk-1 Dk-2…..D0 , D-1 D-2…….→ N = Dk-1 , Dk-2…..D0 D-1 D-2……= M = M0 , M-1 M-2…… 
 Aproximar la mantisa obtenida a (f-1) posiciones fraccionarias, con el criterio requerido (truncamiento 
o redondeo) se completa con ceros si la cantidad original de cifras fraccionarias es menor que (f-1). 
 La cantidad de posiciones desplazadas del separador fraccionario constituirá el valor del exponente a 
representar en el sistema entero que establezca el formato de punto flotante. 
 Un desplazamiento de n posiciones hacia la derecha genera un exponente –n expresado en el sistema 
entero que corresponda. Similarmente un desplazamiento de n posiciones hacia la izquierda genera 
un exponente +n expresado en el sistema entero que corresponda. 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 5 
 
NORMA 754 DE IEEE (organismo que establece normas para fabricación de productos electrónicos) 
Estandariza el trabajo con n° en punto flotante. Establece 3 formatos: 
 Precisión sencilla (32 bits) 
 Doble precisión (64 bits) 
 Precisión extendida (80 bits) 
La IEEE estableció un comité para estandarizar la aritmética de punto flotante no solo para aumentar el 
intercambio entre las diferentes computadoras sino para proporcionar a los diseñadores de hardware de un 
modelo que supiera que es correcto. 
 
 1 8 23 
 
Mantisa Exponente 
Signo 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
6 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
2. INTRODUCCION A LAS COMPUTADORAS 
CONCEPTO DE COMPUTADORA: 
Es una máquina que procesa información para obtener resultados. 
Instrucciones: tratamiento de la información. 
Programa: conjunto de instrucciones que ejecuta la computadora sobre los datos para resolver un problema. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Memoria Principal: en ella se guarda los datos a procesar los que han sido procesados y los conjuntos 
de instrucciones o programas con los que se procesa la información de entrada según la aplicación 
que se destine. 
 Unidad de control: La función principal de la unidadde control es dirigir la secuencia de pasos de 
modo que la computadora lleve a cabo un ciclo completo de ejecución de una instrucción, y hacer 
esto con todas las instrucciones de que conste el programa. 
 Camino de datos: es una unidad operativa y está compuesta de una serie de operaciones aritmético-
lógica que manipula la información de entrada percibida de la unidad de control. 
 Periférico: son los dispositivo necesarios para introducir y sacar información al conjunto de la unidad 
de control y el camino de datos se denomina U.C.P. con el objeto de facilitar el intercambio de 
información en los diferentes bloques existe un camino de comunicación entre ellos. 
 
Periférico 
de 
entrada 
Procesador 
Periférico 
de 
salida 
 BLOQUES FUNDAMENTALES 
Periférico 
de 
entrada 
Periférico 
de 
salida 
Memoria 
principal 
 
Almacenamiento 
de datos 
e 
instrucciones 
Unidad 
de 
control 
Camino 
de 
datos 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 7 
 
 
Se puede observar que la unidad de control y camino de datos conforma la CPU. Que también recibe el 
nombre de procesador. La unidad de control se encarga de ir recibiendo ordenadamente las instrucciones de 
la memoria principal para ir interpretándolas y generando las señales de gobierno que se aplica sobre los 
componentes del sistema para ejecutar dichas instrucciones. Estas señales determina la operación lógico-
aritmética que desarrollara el camino de datos sobre los operando que recibe desde la memoria principal o de 
la unidad de entrada. Los resultados obtenidos se guardan en la memoria o bien se proporciona al exterior 
por las unidades de salida. En consecuencia la misión de la unidad de E/S es la de mostrar el formato de la 
información entre la maquina y los programas exteriores. 
El generador de pulso de reloj es el encargado de generar las operaciones que se llevan a cabo en diversos 
componentes que intervienen en el tratamiento. 
La memoria principal almacena junto con los datos el conjunto ordenado de instrucciones que al ser 
ejecutado proporciona los resultados deseado, dicho conjunto ordenado de instrucciones recibe el nombre 
de programa. Pero esta máquina no repite la misma secuencia de instrucciones siempre tiene la capacidad 
romper las secuencias ordenada según los resultados parciales que se van obteniendo a lo largo de la 
ejecución. 
 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
8 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
LAS INSTRUCCIONES 
Las instrucciones y los datos que se guardan en la memoria principal en un conjunto de bits semejantes. 
Las instrucciones se envían desde la memoria a la unidad de control donde se interpreta y se genera las 
señales de gobierno sobre los restantes bloques del sistema. Los datos intervienen como operandos o son los 
resultados de las instrucciones. Si son operandos se envían desde la memoria al camino de datos para realizar 
sobre ellos la operación. Los resultados que se obtienen tras el procesamiento se envían a la memoria según 
la estructura de la computadora existen un tamaño en bits con el que arbitrariamente trabaja a dicho tamaño 
se denomina palabra y suele ser de 8, 16, 32 o 64 bits, tanto las instrucciones como los datos consta de una o 
más palabras. 
Las instrucciones están almacenadas en la memoria principal de forma ordenada para ser ejecutadas una tras 
otra, de acuerdo con el orden establecido, únicamente las instrucciones de salto rompen dicha secuencia. Los 
bits que componen las instrucciones constan de varios campos c/u de los cuales especifica un parámetro de la 
instrucción a la que corresponde. 
FORMATO DE INSTRUCCIÓN 
 
 
 
La unidad de control es el bloque de la computadora encargada de analizar e interpretar los bits de los 
diversos campos de una instrucción. Tras la interpretación se procede a generar las señales de gobierno 
adecuadas para especificar el camino de datos. 
 Las operaciones que debe llevar a cabo. 
 Las operaciones de entrada. 
 El lugar donde debe guardar el resultado. 
Una labor que también corresponde a la unidad de control es determinar la dirección de la próxima 
instrucción que hay que ejecutar. 
FASES DE LA EJECUCION DE UNA INSTRUCCIÓN 
Una instrucción típica puede descomponerse en 5 fases: 
1. FASE DE BUSQUEDA DE INSTRUCCIÓN: En esta etapa se localiza el código binario de la instrucción en 
la memoria principal. 
2. FASE DE DECODIFICACION: La Unidad de Control interpreta el código binario de la instrucción en 
curso que se ha recibido de la memoria principal. 
3. BUSQUEDA DE OPERANDO: Tras el oportuno tratamiento de los campos dedicados a los operando 
fuente de la U.C. determina el valor o la situación donde se encuentra dicho operando y ordena la 
búsqueda. 
4. FASE DE EJECUCION: LA U.C. comienza las señales de gobierno precisa para que le camino de datos 
efectúe la operación correspondiente a la instrucción en curso. La operación lógico-aritmética que se 
realiza sobre el camino de datos, sobre los operando origina un resultado llamado operando destino. 
OPCODE OPERANDO1 OPERANDO2 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 9 
 
5. ESCRITURA DE RESULTADO: El resultado obtenido tras la ejecución de los operando de la instrucción 
mas los operando fuentes se guarda generalmente en la memoria principal. 
TIPOS DE INSTRUCCION. 
Cuantas más instrucciones sea capaz de admitir un procesador más complicado será su control para poderlas 
interpretar respecto a la cantidad de instrucciones que debe soportar un procesador. 
Una de ellas se caracteriza por recomendar un reducido número de instrucciones. Estos procesadores se 
denominan del tipo RISC o computadores de juego de instrucción reducida. Las instrucciones en este caso 
además de ser pocas son sencillas y la mayoría se ejecuta en un ciclo de reloj. En contraposición los 
procesadores del tipo CISC o los computadores de juegos de instrucciones complejo, dispone de un número 
elevado de instrucciones siendo algunas complejas por lo que se precisa muchos ciclos de reloj para su 
implementación. 
En general se puede clasificar en las siguientes categorías: 
1. Instrucciones de transferencia: envían información de los registros y la memoria. 
2. Instrucciones aritméticas: suma y resta binaria. 
3. Instrucciones lógicas: and, or, nor, xnor. 
4. Instrucciones de salto: rompen la secuencia natural. 
LENGUAJES DE PROGRAMACION. 
Confeccionar un programa además de ser muy laborioso es muy propenso a errores. Para evitar 
inconvenientes surgieron los lenguajes de programación en los cuales las instrucciones se representan con 
letras o combinaciones de ellas, a veces son palabras usuales y en ocasiones abreviaturas fácilmente 
adivinables. Por ejemplo en vez de instrucciones que representa la suma binaria de 2 operando se utiliza la 
palabra ADD. Este camino supone una gran facilidad de escribir un programa e interpretarlo posteriormente. 
La solución consiste en utilizar la misma máquina para traducir el lenguaje expresivo en lenguaje binario de 
esta forma la instrucción es con letras, son introducidas en la maquina y mediante un traductor se va 
convirtiendo en las instrucciones máquina, esta labor es muy fácil para la computadora. 
Los lenguajes se clasifican en 2 categorías: 
1. LENGUAJE DE BAJO NIVEL (ENSAMBLADORES): Para editar los programas en la actualidad se hace 
referencia al lenguaje ensamblador como el más parecido al lenguaje maquina, cada instrucción 
maquina se corresponde con una instrucción en lenguaje ensamblador. 
2. LENGUAJE DE ALTO NIVEL: Estos dispone deinstrucciones diferentes a las que es capaz de interpretar 
la maquina. En general dichas instrucciones son más potentes, se expresa en una forma más cómoda 
y comprensible, por ejemplo en un lenguaje de alto nivel se puede implementar la instrucción dividir, 
mientras que la maquina dispone solo de instrucciones aritméticas elementales como la suma y 
quizás la resta, los lenguajes de alto nivel son más cómodo para usar en el diseño de programa y 
admiten la portabilidad lo que significa que usando el traductor adecuado en mismo programa escrito 
en Lenguaje de Alto Nivel, puede ejecutarse en diferentes procesadores con repertorio de 
instrucciones de máquina distintos. 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
10 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
 
LOS DATOS. 
Un dato es una expresión binaria almacenada en la Memoria Principal que es utilizado por una instrucción 
como un operando de entrada o bien es un resultado después de la ejecución de una instrucción. También la 
longitud de los datos se expresa en palabras que es el tamaño básico que utiliza la computadora y que es 
normalmente una función directa del tamaño del bus de datos. Los tipos de datos que admite un procesador 
son en función de los operando que admite sus instrucciones. 
Los tipos de datos más usuales son: 
1. Enteros y Ordinales. 
2. BCD. 
3. Cadena de caracteres. 
4. Campo de bit. 
5. Puntero de direcciones. 
6. Coma flotante. 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 11 
 
3. MEDIDAS DE RENDIMIENTO 
MIPS Y MFLOPS 
MIPS: Millones de instrucciones que ejecuta un procesador en un segundo. 
 
 
 
Los MIPS permiten calcular el tiempo en que tarda en realizar un programa con determinado n° de 
instrucciones. (Patrón de comparación entre 2 sistemas). 
 
 
 (
 
 
) 
 (
 
 
) 
 
CPI: es el número de ciclos que dura una instrucción. 
 (
 
 
) 
 
( )
 
 
 (
 
 
) 
MFLOPS: millones de operaciones en coma flotante por segundo. 
Con ello se trata de cuantificar el n° de sumas, restas multiplicaciones etc. Con operando en coma flotante 
que es capaz de realizar un procesador en un segundo, sin embargo los MFLOPS son muy dependientes del 
programa concreto que se ejecute no es lo mismo realizar 100 sumas que 100 divisiones en coma flotante. 
Para evitar este problema surgieron los MFLOPS normalizados en cuya valoración se cuantifica o pondera la 
complejidad de las operaciones en coma flotante. De esta forma una división en coma flotante equivale a 4 
sumas y una exponenciación equivale a 8 sumas por ejemplo en n° de MFLOPS normalizado siempre es muy 
superior al MFLOPS nativo. 
 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
12 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
4. MEMORIAS 
Definición: es un dispositivo electrónico diseñado para almacenar información, actualmente son capaces de 
almacenar millones de bits en pocos mm2 de superficie y ponerlos a disposición del sistema en unas decenas 
de nanosegundos. 
Parámetros: 
 Capacidad: es la más representativa de la memoria y hace referencia a la cantidad de datos que 
puede almacenar. 
Los lugares que dispone la memoria para albergar las palabras binarias se llama posiciones o direcciones de 
memoria. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Densidad de almacenamiento: Se mide en bit por unidad de superficie y está en relación directa con 
el avance tecnológico. El significado de este parámetro es simple ¿Cuántos bits se puede almacenar 
en un mm2? A mayor valor significa que el dispositivo puede guardar en la misma superficie una 
mayor cantidad de bits, es decir presenta una mayor densidad de almacenamiento. 
 Tiempo de acceso: su unidad de medida es de (tiempo). Las actuales condiciones tecnológicas se 
encuentran en los nanosegundos [ns]. En otras palabras se refiere al tiempo que se necesita para 
escribir o extraer datos de la unidad de memoria. Habría que hacer referencia a 2 tiempos de acceso: 
Tiempo acceso de lectura: 
1. Llegar a la ubicación del dato. 
2. Activar a la unidad para que sea leída. 
3. Extraer el dato. 
 
 
 
 
 
 
 
 Estructura de una memoria 
Direcciones de 
memoria 
 
 
 
 
 
 
 
 
oria 
1 0 0 0 
0 1 
1 0 1 0 
0 0 
1 0 
1 1 
0 1 
0 0 1 
1 
1 
0 
0 
1 
0 0 1 
1 
0 1 
000 
001 
002 
003 
004 
005 
007 
008 
Longitud 
Bit 
Palabra 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 13 
 
Tiempo acceso de escritura: 
1. Demora que necesita el sistema para ser activado para escritura. 
2. Ubicación del lugar donde va a ser almacenado. 
3. Grabación del dato. 
Para unificar y manejar un parámetro único que permite la comparación entre sistemas, suele 
utilizarse un promedio de ambos bajo la denominación de tiempo de acceso. 
 Costo de almacenamiento: su unidad de medición será $/bit. 
 Confiabilidad: cualquier sistema por mas rápido y económico que sea si no es confiable no resulta útil. 
Este parámetro se refiere a la cantidad de errores que pueden producirse en el sistema. 
CLASIFICACION DE LAS MEMORIAS 
SEGÚN SU EVOLUCION: 
 Tarjetas y cintas perforadas. 
 Cintas magnéticas. 
 Tambores magnéticos (acceso directo, limitado). 
 Núcleos magnéticos (lectura destructiva). 
 Discos magnéticos. 
 Memorias de burbujas. 
 Memorias laser. 
 Memorias con semiconductores (mayor velocidad, mayor densidad, menor costo). 
 Memorias ópticas (CD-DVD). 
SEGÚN SU UBICACIÓN: 
 MEMORIAS INTERNAS: Son del tipo semiconductores y se encuentran dentro y bajo el control directo 
del microprocesador. 
 MEMORIAS EXTERNAS: Se encuentran ubicadas fuera de la unidad central de proceso y también bajo 
su control, aunque no tan directo como en el caso anterior. 
MEMORIAS CON SEMICONDUCTORES (Un semiconductor es un material especial construido a base de silicio y 
otros componentes que tiene la propiedad de comportarse eléctricamente como un conductor o un aislante. 
Según como sea polarizado externamente). 
CLASIFICACION: 
 Según la tecnología de fabricación: 
 Bipolares (estáticas). 
 MOS (Metal-Oxido Semiconductor): estáticas y dinámicas. 
 Según la permanencia de los datos: 
 Memorias no volátiles: ROM. 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
14 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
 Memorias volátiles: RAM. 
 Según la jerarquía en el sistema: 
 Memoria convencional: se ubica en el área del mapa de direcciones comprendida entre 0KB 
(0000h) 640KB (0280h) es utilizada por el sistema operativo, controladores de dispositivo y 
programas de usuario. Era usado por los primeros sistemas de computación. 
 Memoria superior: va desde el límite de la memoria convencional (0280h) y 1024KB (0400H) 
generalmente se reserva para uso del sistema. 
 Memoria expandida. 
 Memoria extendida: supera los 1024KB. Se divide en : 
1. Memoria alta: es un segmento de 64KB de la memoria extendida es utilizada 
básicamente por el sistema operativo y algunos programas muy específicos. 
2. Memoria Shadow: memoria sombra, es un área reservada de la memoria RAM 
extendida para la ejecución de algunas rutinas del BIOS contenidas en ROM. 
3. Memoria Setup: memoria de pequeñacapacidad se almacena la configuración básica 
del sistema que requiere al iniciarse tal como fecha y hora actual etc. 
4. Memoria caché: memoria ultra rápida de capacidad limitada. En esta se almacenan 
temporalmente los datos que el sistema accede con más frecuencia desde un 
dispositivo más lento. 
 
 Memoria virtual: es una técnica que permite al software usar más memoria principal que la 
que realmente posee el ordenador…. 
 Según el encapsulado: 
 Modulo DIPn (Dual in Line Package) n indica las terminales. 
 Módulos SIMM:(single in-line Memory Module) no dispone de pines de conexión. Utiliza 
regiones de contacto de modo que requiere de un zócalo para su conexión. 
 Módulos DIMM: (Dual in-line Memory Module). 
TIPO DE MEMORIAS CON SEMICONDUCTORES 
 ROM 
 ROM PROM (ROM Programable). 
 EPROM (ROM Programables y borrables). 
 EEPROM (Técnicas eléctricas para borrado). 
 SRAM (Static RAM) son rápidas, baja escala de integración y costosas 
 RAM 
DRAM (Dinamic RAM) gran escala de integración, son lentas y baratas. Hecho en base 
a transistores. 
 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 15 
 
 
MEMORIA PROM: Son las que el 
usuario puede determinar su 
contenido por única vez, pero una 
vez grabado son inalterables. La 
programación de esta memoria es 
sencilla. Cada unidad está formada 
por un conjunto de celdas 
conteniendo un diodo o un fusible 
(dispositivo eléctrico que permite el 
paso de corriente eléctrica en 
cualquier dirección. Cuando el valor 
de la corriente supera el valor el 
valor prefijado para el dispositivo se 
rompe e impide el paso de la 
corriente) que operativamente 
representa un 1 lógico. Durante la 
programación de la memoria cuando el bit correspondiente debe ser 0 lógico por esa celda se hace pasar una 
corriente excesiva y el diodo se rompe. 
 
 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
16 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
MEMORIA DE LECTURA/ESCRITURA. 
Constituye la unidad principal de almacenamiento temporal de datos en todo sistema de computación donde 
el sistema efectivamente trabaja. Para ello la memoria de este tipo están sufriendo una amplia y constante 
evolución tratando de optimizar al máximo sus prestaciones. 
Se clasifican en memoria RAM Estáticas y RAM 
Dinámicas. 
 SRAM (Static RAM): Se construyen en 
base a celdas de Flip Flop tipo D cuya 
organización y distribución depende 
de la longitud de palabra y la cantidad 
de direcciones con que hayan sido 
diseñadas. 
 
 DRAM (Dinamic RAM): No es el tipo 
de memoria más eficiente pero son 
las que más se utilizan dada su elevada 
capacidad de integración, bajo consumo 
de energía y bajo costo. 
Para este esquema, en el proceso de 
escritura se activa la línea 
correspondiente con lo del transistor T1 
se pone en conducción y el dato 
presente en línea en ENTRADA DE 
DATOS ingresa a la celda y se almacena 
en el capacitor ficticio representado por 
el transistor T2. En el proceso de lectura, 
se activa la LINEA DE LECTURA que pone 
en conducción al transistor T3 quien 
deja salir el dato almacenado en T2. Un circuito adicional representado por el dispositivo A. 
denominado amplificador de Refresco, se encarga de regenerar constantemente el dato almacenado 
antes que se disipe, actuando a impulsos de una señal ingresada por la línea de CONTROL DE 
REFRESCO. 
ORGANIZACION DE LA MEMORIA 
La memoria convencional consta de muchas posiciones que deben seleccionarse unilateralmente para 
almacenar o leer un dato además esas posiciones que son en general un grupo de bit denominado palabra 
que se accede simultáneamente. Se debe lograr que al aumentar la cantidad de registros, las líneas de datos y 
selección no aumenten en forma lineal. Esto se logra a través de una indicación codificada de direcciones de 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 17 
 
memoria, luego un circuito decodificador interno se encarga de seleccionar específicamente el registro 
requerido. 
 
 
 
 
 
 
 
 
 
 
 
 
Según como se realice el proceso de decodificación de la dirección pueden establecerse 2 tipos de 
organización interna de una memoria de lectura/escritura. 
 ORGANIZACIÓN 1D (lineal): En este caso existe un solo decodificador y debe disponerse tantas líneas 
de salida de decodificador como registro tenga la memoria. 
 
 
 ORGANIZACIÓN 2D (Bidimensional): Requiere de 2 circuitos decodificadores lo que reduce 
apreciablemente la cantidad de líneas de conexión en relación al conjunto de registro de memoria 
 
DE
CO
DI
FI
CA
DO
R 
LECTURA O 
ESCRITURA 
DI
RE
CC
IO
N 
 
CO
DI
FI
CA
DA
 
REGISTROS 
REGISTRO 
SELECCIONADO 
DA
TO
S 
ORGANIZACIÓN GENERAL DE UNA MEMORIA DE LECTURA/ESCRITURA 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
18 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
puede considerarse que es de tipo matricial, filas y columnas donde una parte de los bits de dirección 
se utiliza para decodificar los registros en fila y la otra parte restante para decodificar las columnas. 
 
TOPOLOGIA GENERAL 
 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 19 
 
ORGANIZACIÓN INTERNA DE 
UNA MEMORIA SRAM 
Tenemos una memoria SRAM de 
4X2, (4 palabras de 2 bits). Tiene 7 
entradas 2 de las cuales son de 
datos (I0 , I1), 2 son de dirección 
(D0, D1) y 3 de control: CS para 
seleccionar la pastilla, R/ ̅ señal de 
lectura/escritura, OE para permitir 
la salida. Las líneas de salida son 
para los datos (S0, S1). Se necesita 
una lógica externa que ponga CS en 
alto para seleccionar la pastilla, así 
como para poner R/ ̅ a alto (1 
lógico) para leer, o abajo (0 lógico) 
para escribir, las dos líneas de 
selección deben ajustarse para que 
indiquen cual de las 4 palabras de 2 
bits ha de leerse o escribirse. En 
una operación de lectura no se usan 
las líneas de datos de entrada, pero 
en la salida aparece la palabra 
seleccionada. En una escritura no se 
usan las líneas de datos de salida, 
pero se recoge el dato de las de 
entrada y se guarda en la posición 
de memoria seleccionada. 
Cada compuerta AND del decodificador de direcciones tiene salida en alto cada una con una dirección 
diferente. Esto nos permite la selección de palabra. Para el caso de la escritura la línea CS debe estar en alto 
(1 lógico) y R/ ̅ deben estar en bajo (0 lógico) para que la salida de la compuerta AND (CS. R/ ̅) este en alto, 
habilitando a una de las cuatro compuertas de escritura, según la línea de selección de palabra que este en 
alto. La salida de la compuerta de escritura mueve todas las señales CLK de la palabra seleccionada, cargando 
los datos de entrada en los Flip-Flops de las mismas. Para la lectura la salida de la compuerta (CS. R/ ̅) debe 
estar en bajo, por lo que deshabilita todas las compuertas de escritura y no modifica ningún Flip-Flops, en 
cambio la línea de selección de palabra elegida habilita las compuertas AND conectadas a las salidas Q de la 
palabra seleccionada, por lo tanto una palabra pasa sus datos a las compuertas OR de 4 entradas de la parte 
inferior de la figura, mientras las otras 3 palabras le pasan ceros. En consecuencia las salidas de las 
compuertas OR es idéntica al valor guardado en la palabra seleccionada. Las 3 palabras no seleccionadas no 
contribuyen a la salida. En una memoria real las líneas de entrada y salida son las mismas. Por esta razón es 
deseable tener un modo de conectar las compuertas OR con las líneas de datos de salida en las lecturas, 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDADNACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
20 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
pero desconectarlas por completo en las escrituras. Por este motivo hay una compuerta tri-state en cada 
salida. Cuando CS, R/ ̅ y OE estén en alto, la señal de habilitación de salida también estará en alto, 
habilitando las compuertas tri-state y poniendo una palabra en la línea de salida. Cuando cualquiera de las 
señales CS, R/ ̅, o OE estén en bajo, las salidas de datos se desconectaran del resto del circuito. 
LA MEMORIA EN UN SISTEMA DE COMPUTACION 
 
UNIDAD CENTRAL DE PROCESO (CPU): Es la parte principal del sistema por ser la unidad que contiene al 
circuito principal del sistema llamado microprocesador. Su misión es el procesamiento específico de datos, 
control del flujo de la información, comunicación entre las distintas unidades y organización general del 
sistema. 
Interconexión: Los canales de interconexión entre el sistema de computación se conocen como buses, y son 
las vías a través de las cuales se comunican las distintas unidades integradas del sistema. Podemos diferenciar 
3 tipos básicos: 
 BUS DE DATOS (DB): son las líneas encargadas de transportar los datos desde y hacia las distintas 
unidades. Es bidireccional y contendrá tantas líneas como longitud de palabra tenga el 
microprocesador del sistema. 
 BUS DE DIRECCIONES (AB): Conduce los códigos de ubicación o direcciones de los datos. Se utiliza 
para identificar o activar cada unidad o dispositivo conectado al sistema (memoria, periféricos, etc.) y 
la posición especifica dentro de ellos. También es bidireccional. 
 BUS DE CONTROL (CB): Transportan las señales de control desde y hacia la CPU. Es un bus 
bidireccional a través del cual la CPU activa específicamente una unidad para ser utilizada o 
consultada, o bien conducen pedidos de interrupción de una unidad para ser atendidas por el 
microprocesador. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 21 
 
MAPA DE DIRECCIONAMIENTO. 
 
La memoria como los otros dispositivos del sistema se posicionan en una ubicación del mapa según criterios 
del diseñador o requerimientos del sistema, por lo general la memoria ROM se instala en la parte superior del 
mapa y la RAM en la parte inferior del mapa. Cada línea de dirección tiene inferencia en determinadas 
posiciones del mapa según su posición significativa en el código de la dirección. 
 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
22 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
Utilizando el criterio visto para A14, A15 es posible asignar un lugar específico a cada chip de memoria en el 
mapa. 
Para ello recordar que las memorias comerciales disponen de uno a más terminales Chip Select que al ser 
activados con los niveles de señal correspondiente habilita el circuito para su acceso. 
Ejemplo: si el terminal de selección de chip de la memoria fuese activado por la línea A15 en estado directo 
esta memoria estaría posicionada en el sector de la mitad superior del mapa de direcciones es decir que el 
chip de memoria seria seleccionado por cualquier dirección que corresponda al siguiente patrón: 
 
La unidad de memoria se posiciona en un determinado sector del mapa de direcciones según la línea de 
direccionamiento usado. 
En conclusión para poder precisar exactamente la ubicación del chip de memoria es necesario aplicar a sus 
terminales de CS todas las líneas de direccionamiento del sistema que no sean utilizadas para el 
direccionamiento interno de la memoria. 
Una memoria con CS habilitado significa que el chip de memoria se conecta al bus del sistema por el contrario 
con el CS deshabilitado se produce una desconexión virtual. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 23 
 
PLANIFICACION DE LA UBICACIÓN DE MEMORIA 
Es necesario tener en claro de antemano las características del sistema y de la memoria que se quiera instalar. 
Con toda esa información se puede establecer un plan de ubicación de la memoria en un sector específico del 
mapa de direccionamiento del sistema. 
Ejemplo: Posicionar una RAM 1KB x 4 que dispone de una línea de ̅̅̅̅ a partir de la dirección 4000h de un 
sistema anfitrión de 16 líneas de direccionamiento. 
RAM a 1KB x 4 entonces tengo 10 líneas dedicadas para el direccionamiento interno 
1KB= 1024 bytes=400h 
Dirección interna desde 000h hasta 3FFh. 
IDENTIFICACION A15 A15 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 
DIRECCION 
INICIAL 
4 0 0 0 
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
 Selección de chip Direccionamiento interno 
DIRECCION 
FINAL 
0 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 
4 3 F F 
 
 
MEMORIA FANTASMA 
Cuando las líneas de bus de direcciones de se utilizan en su totalidad para activar la selección del chip de 
memoria, aquellas que quedan sin conexión pueden asumir cualquier valor produciéndose igualmente la 
selección de la unidad de memoria. Esto significa que el mismo bloque de memoria se representara 2n veces, 
siendo n la cantidad de líneas no conectadas en el mapa de memoria, produciéndose el afecto denominado 
memoria fantasma. 
 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
24 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
 1100 0011 1111 1111 = B3FFh 
 Segmento fantasma 
 1100 0000 0000 0000 = B000h 
 X100 00XX XXXX XXXX 
 0100 0011 1111 1111 = 43FFh 
 Segmento original 
 0100 0000 0000 0000 = 4000h 
Para el mismo caso si se deja de conectar A15 y A14 las que pueden asumir cualquier valor sin afectar la 
selección del chip. Se producirían 3 segmentos fantasmas más el original. Mientras más líneas de 
direccionamiento sean desestimadas para la selección del chip, más veces se repetirá el bloque de memoria 
en el mapa. Cuando sean las líneas más significativas, los segmentos fantasmas se distribuyen por todo el 
mapa; cuando sean las líneas menos significativas se concentran en sectores próximos. El microprocesador no 
tiene en cuenta que se trata de los mismos registros, por lo tanto, podría acceder a un registro fantasma para 
almacenar un nuevo dato, destruyendo el dato anterior almacenado en la dirección original. 
AMPLIACION DE LA CANTIDAD DE REGISTROS. 
 Tanto la RAM como la ROM se puede ampliar de acuerdo a las posibilidades de manejo de memoria 
de la CPU. 
 La ampliación de la cantidad de registros de cada tipo de memoria debe configurarse en segmentos 
adyacentes sin dejar direcciones intermedias vacías. 
 Deben evitarse producir segmentos de memoria fantasma. 
 Los circuitos de memoria a utilizar deben seleccionarse y prioritariamente los de mayor capacidad 
posible para evitar trazados y conexiones complicadas. 
AMPLIACION DE LA LONGITUD DE REGISTROS. 
 En este caso se amplía cuando las unidades de memoria tiene longitud de registro menor que la 
longitud del bus de datos del sistema. 
 Siempre es mejor utilizar unidades de memoria cuya longitud de registro sea coincidente con el ancho 
del bus de dato del sistema. 
 Las unidades deben configurarse en bloques adyacentes sin dejar intermedios vacios. 
 Se deben utilizar memorias de máxima longitud posible para evitar problemas y conexiones 
complicadas. 
 A todos los circuitos de memoria asociados y que conforman en mismo registro se los aplica las 
mismas condiciones de direccionamiento. 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 25 
 
5. JERARQUIA DE MEMORIA 
Se conoce como jerarquía de memoria a la organización piramidal de la memoria en niveles, que tienenlos 
ordenadores. Su objetivo es conseguir el rendimiento de una memoria de gran velocidad al coste de una 
memoria de baja velocidad, basándose en el principio de cercanía de referencias. 
Los puntos básicos relacionados con la memoria pueden resumirse en: 
 Cantidad 
 Velocidad 
 Coste 
La cuestión de la cantidad es simple, cuanto más memoria haya disponible, más podrá utilizarse. La velocidad 
óptima para la memoria es la velocidad a la que el procesador puede trabajar, de modo que no haya tiempos 
de espera entre cálculo y cálculo, utilizados para traer operandos o guardar resultados. En suma, el costo de la 
memoria no debe ser excesivo, para que sea factible construir un equipo accesible. 
Como puede esperarse los tres factores compiten entre sí, por lo que hay que encontrar un equilibrio. Las 
siguientes afirmaciones son válidas: 
 A menor tiempo de acceso mayor coste 
 A mayor capacidad mayor coste 
 A mayor capacidad menor velocidad. 
Se busca entonces contar con capacidad suficiente de memoria, con una velocidad que sirva para satisfacer la 
demanda de rendimiento y con un coste que no sea excesivo. Gracias a un principio llamado cercanía de 
referencias, es factible utilizar una mezcla de los distintos tipos y lograr un rendimiento cercano al de la 
memoria más rápida. 
Los niveles que componen la jerarquía de memoria habitualmente son: 
 Nivel 0: Registros 
 Nivel 1: Memoria caché 
 Nivel 2: Memoria principal 
 Nivel 3: Disco duro (con el mecanismo de memoria virtual). 
 
 
 
http://es.wikipedia.org/wiki/Memoria_de_ordenador
http://es.wikipedia.org/wiki/Cercan%C3%ADa_de_referencias
http://es.wikipedia.org/wiki/Cercan%C3%ADa_de_referencias
http://es.wikipedia.org/wiki/Cercan%C3%ADa_de_referencias
http://es.wikipedia.org/wiki/Registro_(hardware)
http://es.wikipedia.org/wiki/Memoria_cach%C3%A9
http://es.wikipedia.org/wiki/Memoria_principal
http://es.wikipedia.org/wiki/Disco_duro
http://es.wikipedia.org/wiki/Memoria_virtual
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
26 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
MEMORIA CACHE 
Memoria de capacidad 
limitada, pero muy 
rápida, son costosas. 
Esta entre el procesador 
y la memoria principal 
son construidas con 
celdas SRAM. 
Es un subsistema de 
memoria intermedia 
situada entre el µP y la 
memoria principal. El 
rendimiento del sistema 
es notable con una memoria caché. 
 
En principio su subsistema caché consta de 3 elementos básicos. 
1. Una RAM de datos: Se almacena las instrucciones o datos que se o se supone que van a ser usados 
más frecuentemente por el µP. 
2. Una RAM de etiquetas: Contiene las direcciones de memoria que están almacenada en la caché mas 
una palabra de estado. Y consultando las direcciones de memoria en estas etiquetas se puede saber si 
el dato esta o no en la caché. 
3. Una lógica de control de la caché: cada acceso a memoria es interpretada por el controlador de la 
caché, si el dato está disponible el dato se lo envía al µP. sino se lo busca en la memoria principal una 
vez que el dato de la memoria principal pasa a la cache está listo para usarse por el µP. esta es la 
principal habilidad de la cache para almacenar datos. Anticiparse las peticiones del µP almacenando 
en su memoria tanto el dato como el código para de este modo brindarle esta información al µP sin 
pérdidas de tiempo. 
CACHE DE CORRESPONDENCIA DIRECTA 
¿Dónde puede ubicarse en bloque de datos en la caché? Si cada bloque debe ir solamente en un lugar dentro 
de la caché, esta se dice que es de correspondencia directa (direct mapped). ….. 
Sobre las decisiones de reemplazo: en el caso de la correspondencia directa las decisiones se simplifican 
puesto que cada bloque puede ir solamente en un lugar, así la única tarea que hay que realizar es calcular la 
ubicación del bloque en la cache (dirección de la estructura del bloque) y colocarlo allí. 
La caché como la memoria principal está dividida también en bancos o paginas. Almacenar el dato en la caché 
se toma el valor del desplazamiento de memoria respecto al comienzo de su página respectiva. El 
desplazamiento así calculado identifica unívocamente el lugar de la caché donde el dato debe ser 
almacenado. Las celdas de memoria con igual desplazamiento respecto con el comienzo de la pagina en las 
diferentes paginas de la memoria principal se ubica con el mismo desplazamiento en la memoria caché. 
Ventajas y desventajas de este tipo de organización. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 27 
 
La ventaja es que las etiquetas son muy simples, si se sobrepasa repetidamente el límite de página este tipo 
de organización se vendrá abajo rápidamente en cuanto a su eficacia. En entornos Multitarea o Multiusuario 
es muy común que esto ocurra la memoria caché de correspondencia directa no son aconsejable. La mejora 
de rendimiento de esta organización es la mejor de todas, pero la más simple. Necesita una única 
comparación del contenido de la etiqueta correspondiente con el N° de pagina solicitado si coincide hay una 
presencia. 
CACHE ASOCIATIVA DE “n” BITS. 
También conocida como asociativa en “n” grupos. Tiene dividida la memoria en “n” bancos de que trabaja en 
paralelo. Se puede decir que trabaja con “n” caché de correspondencia directa. Se llama “n” vías porque se 
accede en “n” grupos en paralelo por “n” vías o caminos a una posición de memoria. Puede ir a cualquier 
grupo sin embargo cuantas más vías existen más complicadas será la lógica de control de la caché, tendrá que 
hacer más comparaciones para saber si el dato esta o no. La caché asociativa de “n” vías trabaja con la 
memoria principal dividida en páginas y cada página son del tamaño de la vía de la caché. El tamaño de cada 
vía es igual al tamaño de la cache dividida por el N° de vías. Una dirección de la memoria principal con cierto 
desplazamiento con respecto a su comienzo de página se sitúa en la caché en la caché en la posición 
correspondiente al mismo desplazamiento en cualquiera de las vías o grupos que esté compuesto. Para saber 
si una información esta almacenada en la caché se compara tantas etiquetas correspondiente al 
desplazamiento dado como vías tenga. Para evitar periodos inactivos en los accesos al µP se realiza las 
comparaciones en todas las vías simultáneamente aunque es más simple que la caché totalmente asociativa. 
La caché de “n” es compleja sobre todo si el N° de vías es superior a 2. Estas cachés son bastantes robustas 
frente al límite de páginas. 
La actualización de la caché se lleva a cabo cuando hay una ausencia. Por regla general la caché tiene datos 
validos almacenados por lo que la ausencia implica la sustitución de una información por otra nueva traída de 
la memoria principal. En caso de correspondencia directa las decisiones se simplifican puesto que cada bloque 
puede ir solamente en un lugar. Lo único que hay que hacer es calcular la ubicación del bloque en la caché y 
colocarlo allí. En las caché con nivel de asociatividad mayor que uno incluida las totalmente asociativa existen 
varios posibles bloques a elegir cuando se produce una ausencia. Existen 2 estrategias empleadas para 
seleccionar el bloque a reemplazar: 
 Aleatoria: mecanismo de hardware para seleccionar uniformemente los bloques candidatos. Puede 
dar lugar a la sustitución de una posición que acaba de ser actualizada por lo que disminuye la 
eficacia. 
 Menos Recientemente Usada (LRU): se usa para disminuir la posibilidad de desechar información que 
se necesitara pronto. Bajo este esquema se registran los accesos a los bloques de manera que el 
bloque sustituido es aquel que hace más tiempo no se usa, si los bloques recientemente usados se 
usan probablemente de nuevo, entonces el mejor candidato es aquel que haya sido menos usado 
recientemente. 
 
2009 ESTRUCTURA Y TECNOLOGIADE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
28 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
ACTUALIZACION DE LA MEMORIA PRINCIPAL 
La memoria principal también debe ser actualizada como el µP trabaja con el subsistema caché las escrituras 
se realiza en las variables de la caché. El problema nace debido a que esta no es la memoria principal, el 
problema sería crítico cuando un maestro del bus accesa a ese dato de la memoria principal y no esta 
actualizada. 
El mismo problema se plantea si el sistema es multiprocesador, y otro procesador quiere acceder a ese dato. 
Como consecuencia es importante mantener una política de actualización de memoria principal para evitar el 
acceso a datos incorrectos. Existen 3 métodos: 
 Escritura inmediata: En este método todas las escrituras sobre la caché son traspasadas a la memoria 
principal con el objeto de actualizarla. Por lo que siempre obtiene datos actualizados, el mecanismo 
es simple pero el rendimiento se reduce mucho en escribir los datos en memoria principal además la 
utilización del bus es elevado lo cual puede representar un problema en sistemas multiprocesadores. 
 Escritura diferida: la cache incorpora una serie de registros denominados registros intermedios de 
escritura(duda), para de este modo evitar que el µP trabaje constantemente o espere a que el dato se 
escriba en memoria principal, la escritura en caché se envían a estos registro librándose 
inmediatamente al µP. el numero de estos registros depende de cada subsistema de cache pero 
generalmente se ubica entre 1 y 5 a medida que el sistema de Bus queda ocioso el controlador de 
caché va actualizando los datos en memoria principal. Las actualizaciones se hacen secuencialmente. 
El 1er. Dato escrito sobre el µP es el 1ro. Que se envía a la memoria principal con este método el µP 
no disminuye sus prestaciones debido a que es menos tiempo de escritura en memoria principal 
siendo menor el tiempo de utilización del bus. 
 Escritura obligada: La escritura del µP se hace en la memoria caché y solo se hace en la memoria 
principal si solo es necesario puede darse 2 situaciones. La primera se produce cuando un maestro del 
bus va a leer dato de la memoria principal, en este caso se define el ciclo del bus del otro maestro y se 
actualiza la memoria principal en la posición que va a ser leído por la caché a continuación se permite 
que continúe con el acceso del bus determinado. La 2da. Situación que obliga a la caché a actualizar la 
memoria principal tiene lugar cuando se reemplazara una determinada posición de la caché que ha 
sido provisionalmente modificada, en este caso 1ro. Se marcara la información en la memoria y luego 
se sustituye por los nuevos datos para detectar cuando se producen la ultima situación cada etiqueta 
de la caché tiene unos bits que indica si la posición de la caché a actualizar ha sido modificada o no, 
de esta forma si un dato de la caché no ha sido modificado no necesita escribir en la memoria 
principal, este método reduce las escrituras en memoria principal a las estrictamente necesarias. Son 
aptos para sistemas multiprocesador. 
PROTOCOLO MESI 
Cuando hay varias copias de un mismo dato puede estar en la misma caché o memoria principal, o incluso el 
valor del dato almacenado en la caché puede diferir del dato de la memoria principal. Esto plantea el 
problema de asegurar que la memoria vea el dato más actualizado. Un método eficiente es el que usa un 
protocolo de consistencia hardware denominado MESI. Para poder implantarlo los controladores de caché 
del bus compartido. Deben compartir: 1ro. Todos deben tener el mismo tamaño de línea, observar toda 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 29 
 
activación del bus de memoria, tomar información de estado de todas las líneas, activar adecuadamente para 
mantener la consistencia. El protocolo MESI asigna 4 estado diferentes a cada línea dependiendo de la 
actividad de cada línea. 
El modelo asegura una mínima utilización del bus del sistema. Los 4 estados aseguran si una línea es válida. 
[M]: Modificado: la caché tiene en exclusiva una línea que ha sido modificada por el µP se escribirá en 
memoria principal solo si es necesario. 
[E]: Exclusivo: la caché tiene en Exclusivo una línea que no ha sido modificada (la memoria esta actualizada). 
[S]: Simultaneo: la línea en cuestión puede estar compartida con otras caché. Escribiendo una línea en este 
estado genera un ciclo de actualización de la memoria principal. 
[I]: Invalido: la línea no está disponible. La lectura por parte de posición genera una ausencia, por lo tanto un 
llamado por parte de la memoria principal. Si un µP escribe se pasa a actualizar la memoria principal. 
El protocolo MESI presupone la utilización de una caché ce escritura obligada, si se tratara de una escritura 
inmediata solo tendría 2 estados [S] y [I]. 
MEMORIA VIRTUAL 
Es un mecanismo para la transferencia de información que gestiona automáticamente el S.O. entre estos 2 
dispositivos, la memoria principal y la memoria secundaria (disco), el programador tiene la sensación de 
disponer de mucha más memoria de la que físicamente existe. El procesador sin embargo en todo momento 
puede acceder a la información que tiene en la memoria principal. Son recursos físicos y lógicos lo que 
configura la memoria virtual de manera que permita trabajar del disco a la memoria principal de este modo se 
puede disponer de una memoria principal más 
pequeña conectada a una memoria secundaria en 
donde recibe toda la información que se necesita. El 
programador trabaja con la capacidad y 
direccionamiento del disco dicha dirección se llama 
virtual por no ser la que puede usar el procesador, su 
bus de dirección es en función del la memoria que es 
más pequeña que la del disco. 
Se necesita un dispositivo para gestionar la memoria 
virtual llamada (MMU) para traducir las direcciones virtuales del disco en direcciones físicas de la memoria 
principal (la dirección del disco es mucho más grande que la de la memoria principal). 
 Modo real: todos los datos están en memoria principal. 
 Modo protegido: parte de los datos están en memoria virtual. 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
30 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
Cuando se gestiona una dirección 
virtual de un objeto se la envía a la 
MMU la cual consulta las tablas que 
posee para comprobar si dicho objeto 
está en la memoria principal, en caso 
afirmativo se procede a su acceso 
directo por lo cual se obtiene su 
dirección física que se obtiene de su 
traducción física y se deposita en el bus 
de dirección. En caso negativo la MMU 
comunica al sistema operativo el cual 
pone en marcha una rutina cuya misión 
es localizar el objeto en disco y 
transportar el bloque que lo contiene a 
la memoria principal debiendo actualizar las tablas de la MMU para poder efectuar el acceso directo. 
Las tres funciones principales que deben soportar la memoria principal mediante la MMU y el S.O. son: 
1. Poseen una lista completa (tabla) para la descripción de todos los objetos residentes en el disco y 
memoria principal. 
2. Cargar en la memoria principal un objeto en tiempo de ejecución. 
3. Manejar los espacios libres de la memoria física y cuando no haya determinar que objeto se prevé no 
usar posteriormente para devolverlo al disco y poder disponer del espacio que ocupaba cuando los 
objetos que se quitan no han sido modificado durante la permanencia en ella se reemplaza 
inmediatamente por los nuevos objetos sin tener que actualizarlas en el disco porque ya hay copia del 
mismo. 
TIPOS DE MEMORIA VIRTUAL 
Tanto la memoria virtual como la memoria 
principal se dividen en bloques, cada vez que se 
hace una transferencia se mueve un bloque 
entero. Existen tres modelosde memoria virtual: 
1. Memoria Paginada: en este modelo se 
divide la memoria en bloques de tamaño fijo 
llamados página y el tamaño de cada página 
depende del sistema en que se implementa. 
En un momento determinado la memoria 
principal tendrá un cierto número de páginas del total que se guarda en el disco. Como las distintas 
posiciones de una memoria virtual y la correspondiente física están ordenadas de idéntica forma y tiene 
igual contenido, basta traducir el número de 
página virtual a físico porque el desplazamiento dentro de la página es el mismo. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 31 
 
 
Las tablas de página que 
maneja la MMU para 
traducir la dirección virtual a 
física contienen las 
direcciones virtuales y físicas 
de las páginas presentes en 
los dos tipos de memoria, las 
rutinas de transferencia de 
bloques a memoria virtual 
paginada es muy sencilla 
porque los algoritmos que la 
controla son sencillas porque 
manejan bloques de igual 
tamaño. 
 
2. Memoria Segmentada: explotan la técnica de la modularidad de los programas escritos de forma 
estructurada. Los modulo son bloques de información semejante que están agrupados, se pueden 
manejar de manera independiente. Hay segmentos de código, de datos y de pila. (las arquitecturas 386 y 
486 implementa la segmentación). 
Aplicación: 
 Código: instrucción del programa. 
 Datos: almacena datos (variables y constantes). 
 Pila: área de memoria temporal (dirección de rutina). 
La segmentación organiza el 
espacio virtual y físico en bloques 
de tamaño variable. El sistema 
operativo trata a los segmentos 
completos entre la memoria 
principal y memoria secundaria, 
pudiendo depositar en cualquier 
lugar, como los tamaños son 
variables y puede ocupar cualquier 
posición la rutina de transferencia 
es más compleja que las de 
memoria paginada. La MMU 
maneja una tabla de segmentos. 
Cada entrada de esta tabla 
mantiene, información de protección, dirección inicial de segmento (virtual y físico) y limite de segmento 
(tamaño máximo de segmento). 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
32 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
3. Memoria de segmento 
paginado: combina las 2 
anteriores. La memoria se 
descompone en segmentos 
de un longitud variable, 
pero los segmentos se 
divide en páginas de 
tamaño fijo, para acceder 
se consulta a la tabla de 
segmento, tal entrada de la 
tabla apunta a una tabla de 
páginas. 
 
 
 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 33 
 
6. UNIDAD DE E/S (Entrada y salida) 
Una unidad de E/S es aquella que permite intercambiar información con los usuarios de la maquina. En 
realidad, los usuarios a través de los periféricos intercambian información con el mundo exterior y los 
registros internos del procesador o la memoria. 
En comparación entre procesador y la memoria los avances en velocidad de la unidad de E/S han sido poco 
significativos. Esto se debe a la gran variedad y complejidad de los periféricos que se conectan al computador. 
Para evitar el retraso en la manipulación de la información ocasionada por la unidad de E/S se ha intentado 
solapar el tiempo que esta funciona con el procesador. 
La importancia de los periféricos que se conectan a la computadora es prioritaria en cuanto a la configuración 
y categoría del sistema. Según los periféricos que disponga un computador se distinguen sus aplicaciones, su 
rendimiento y su coste. Por lo tanto las principales diferencias entre una supercomputadora, una 
computadora, una minicomputadora, una estación de trabajo y una microcomputadora se basan 
principalmente en los periféricos que tienen incorporados y en la característica de memoria. En muchos 
casos, las diferentes maquinas soportan el mismo tipo de procesador. 
Una unidad de E/S es una memoria especial y contiene la información que envía o recibe los periféricos. Como 
los periféricos manejan muy lentamente la información es frecuente que la unidad de E/S disponga de una 
memoria auxiliar donde 
guarda la información del 
periférico. Por ejemplo 
una impresora para 
realizar la impresión de 
caracteres sobre papel, 
tiene que controlar la 
velocidad de motores, 
regular el movimiento de 
rodillos y otros 
dispositivos, por lo que la 
impresión de un carácter 
le lleva mucho más 
tiempo que procesar 
cualquier tipo de 
operación al procesador. 
La memoria intermedia 
guarda la información 
pendiente de imprimir 
hasta que quede libre la 
impresora. 
 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
34 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
LOS CONTROLADORES 
La extensa variedad de 
periféricos existentes y sus 
diferentes modos de 
funcionamiento exigen un 
dispositivo intermedio que 
adapte sus características a las 
de los buses del sistema. Dicho 
dispositivos reciben el nombre 
de controladores y evitan al 
procesador la tarea de 
controlar los periféricos para 
efectuar el intercambio de 
información con el mismo o 
con la memoria. También son 
indispensables para adaptar la 
velocidad de transferencia y los 
formatos de la información 
propios de los periféricos con los que maneja la UCP. 
 
Los buses del sistema están compartidos por la Memoria Principal y los controladores de E/S. de acuerdo con 
los requerimientos de E/S que precisa el programa en curso, el procesador se comunica por los buses con los 
controladores, los cuales para realizar su labor deben soportar las siguientes funciones: 
1. Control y sincronización en la transferencia de datos entre el procesador y la Memoria Principal con 
los periféricos. 
2. Establecimiento del camino de comunicación entre los recursos internos y los periféricos. 
3. Detección y manipulación de errores. 
4. Almacenamiento temporal de datos. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 35 
 
 
 Lógica de Control: se encarga de activar y controlar la función que debe desarrollar el controlador. 
 Registro de Estado: guarda la información relevante sobre la forma en que ha realizado la 
transferencia de información y los posibles fallos. 
 Registro de Datos: almacena los datos que se maneja entre cada transferencia elemental. 
 Interfaz de Periférico: soporta el intercambio de datos con el transductor de periférico y la generación 
y detección de señales de control y estado. 
El trabajo consiste en: 
1. Si el microprocesador necesita comunicarse con el periférico, coloca la dirección en el bus de 
direcciones. 
2. El controlador comunica al procesador el estado del dispositivo, es decir libre, ocupado, desocupado, 
etc. 
3. Si el dispositivo está disponible el microprocesador solicita transferencia mediante una orden al 
controlador. 
4. Si el periférico es de entrada (teclado) la tecla que se ingresa se almacena en el registro de dato del 
controlador y de allí se envía al procesador. 
5. Si el dispositivo es de salida (impresora) el carácter a imprimir lo envía por el bus de datos al registro 
de datos del controlador y de allí a la impresora. 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
36 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
MODOS DE DESARROLLAR LAS OPERACIONES DE E/S. 
Unas de las clasificaciones más utilizadas para las operaciones de E/S tienen en cuenta el grado de 
participación de la CPU. Cuanta menos implicación tenga la CPU en la operación de E/S mayor grado de 
solapamiento o simultaneidad se puede conseguir entre el trabajo del procesador y los dispositivos de E/S. 
 E/S controladaspor programa: la CPU controla íntegramente la operación de E/S, impidiendo 
cualquier tipo de solapamiento en el trabajo de ambos componentes. 
 E/S controladas por interrupciones: parte del proceso de E/S corre a cargo del controlador, pudiendo 
trabajar en paralelo el procesador durante dicho tiempo. 
 E/S controlada por Acceso Directo a Memoria (DMA): la mayor parte de la operación de E/S la soporta 
el controlador. Puede existir un alto grado de simultaneidad. (canal especial por ejemplo 
comunicación directa entre la memoria y el disco sin usar el procesador). 
 Procesador de E/S especializado: todo el peso de la operación de E/S corre a cargo de controlador, 
que alcanza tal grado de complejidad que actúa como un procesador dedicado. El paralelismo entre el 
procesador y la operación de E/S es total. El método basado en los procesadores de E/S convierte en 
un procesador especializado en ejecutar un número reducido de instrucciones de E/S, siendo el 
mismo el que busca y ejecuta el programa de E/S interrumpiendo al procesador principal cuando 
termina la operación que se le ha encargado. Estos procesadores de E/S se comunican con los 
controladores mediante un bus independiente dejando al microprocesador la posibilidad de continuar 
su actividad normal durante la operación de E/S. 
 
E/S CONTROLADAS POR PROGRAMA 
El microprocesador controla el desarrollo integro de las operaciones de E/S enviando al controlador las 
órdenes pertinentes derivadas de las instrucciones del programa en ejecución, son las instrucciones del 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 37 
 
programa en curso la que soportan 
las operaciones de E/S, de su 
interpretación de dicha instrucciones, 
el microprocesador envía las órdenes 
de control, lectura y escritura al 
controlador. 
Las instrucciones de E/S que 
interpreta y ejecuta el procesador se 
convierten en órdenes para el 
controlador de periférico. Cada 
controlador dispone de una serie de 
registros internos, que se seleccionan 
con diferentes direcciones. La orden 
que genera el procesador debe 
contener la dirección del registro del 
controlador y la acción de lectura o 
escritura sobre él. 
El control de operaciones de E/S por 
programa tiene el grave 
inconveniente de derivado de la 
lentitud de los periféricos. Los 
mismos disponen de motores, 
transmisores mecánicos etc. Lo que 
hace que el tiempo para manipular 
un dato sea bastante. 
Para direccionar los elementos de E/S (registros de los controladores) hay dos procedimientos: 
1. E/S con mapa de 
Memoria Común: los 
Procesadores que 
utilizan este sistema 
manejan un único 
espacio de memoria 
para los dispositivos de 
E/S, para los datos y 
para las instrucciones 
de los programas. 
 
 
 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
38 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
2. E/S que utilizan un mapa de direcciones Independiente: existen microprocesadores que utilizan un 
mapa de memoria para guardar instrucciones y datos y otro mapa para guardar E/S, registros de los 
controladores de los periféricos del sistema. El procesador utiliza el bus de direcciones para acceder a 
los mapas y el bus de datos para realizar transferencia de información, también dispone de una señal 
adicional en el bus de control que indica si la señal generada pertenece al mapa de memoria o de E/S. 
Dicha señal se denomina IO/ ̅, cuando vale 1 se accede al mapa de E/S, si vale 0 se accede al mapa 
de memoria. Cuando se maneja la E/S independiente de la CPU debe poseer instrucciones especiales 
que maneja dicho mapa. 
 
En este esquema se muestra un sistema computador que dispone de Mapa de E/S independiente. La 
señal IO/ ̅ discrimina los accesos entre los dos mapas, controlando la activación de la patita de 
selección de Chip (CS) de los dispositivos de memoria y de los controladores de E/S. 
E/S CONTROLADA POR INTERRUPCIONES 
La técnica de atención de las operaciones de E/S mediante interrupciones evita el bucle de espera en el que 
permanece el procesador explorando el Registro de Estado de controlador para conocer el momento en que 
queda disponible el periférico. 
Cuando a un procesador se le provoca una interrupción, detiene la ejecución de las instrucciones en curso, 
guarda en la pila que es una reservada de la Memoria Principal la dirección en la que se ha interrumpido el 
programa, y pasa a ejecutar un programa especial que atiende la causa que ha originado la interrupción. 
Cuando finaliza la rutina de interrupción, se recupera de la pila la dirección donde se abandonó el programa y 
se reanuda su ejecución. La interrupción puede considerarse como una llamada a una subrutina y se puede 
solicitar por software o por hardware (activando una patita específica del procesador). Esta última es la que se 
utiliza para atender las E/S por interrupción. 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 2009 
 
INGENIERIA INFORMATICA FARFÁN SEBASTIÁN JORGE 39 
 
 
Para poder atender a muchos controladores de periféricos con una sola línea de petición de interrupción en el 
procesador, existen unos circuitos integrados, programables, específicos para soportar esta tarea. El 
Controlador Programable de Interrupciones (PIC), es capaz de atender un máximo de ocho controladores 
diferentes, manejando la prioridad de los mismos en caso de peticiones simultáneas, y encargándose de la 
petición al procesador, reconocimiento a la asignación de la interrupción al periférico correspondiente. 
Cada vez que se asigna una interrupción al controlador de un periférico, el PIC introduce por el bus de datos al 
procesador los parámetros que le permite encontrar la rutina de interrupción que hay que ejecutar (vector de 
interrupciones). 
 
ACCESO DIRECTO A MEMORIA (DMA) 
En las dos técnicas anteriores la CPU debía encargarse de realizar la transferencia de información entre la 
Memoria Principal y el periférico, a través del controlador. 
La técnica de Acceso Directo a Memoria (DMA) utiliza el controlador para realizar las transferencias de 
información entre periférico y la Memoria Principal, sin requerir la intervención del procesador. 
La forma de implementar el DMA es mediante una Memoria Principal Multipuerta que se caracteriza por 
tener varias puertas de acceso, unas de las cuales se dedica a la CPU y las restantes para los controladores de 
periféricos. 
2009 ESTRUCTURA Y TECNOLOGIA DE COMPUTADORAS 
 
UNIVERSIDAD NACIONAL DE JUJUY 
 FACULTAD DE INGENIERIA 
 
40 FARFÁN SEBASTIÁN JORGE INGENIERIA INFORMATICA 
 
La memoria Multipuerta está 
organizada internamente en 
varios bloques de información, 
para permitir el acceso en 
paralelo. Solo se produce 
conflicto cuando hay que 
acceder al mismo bloque por 
parte de varias puertas, en 
cuyo caso hay que 
implementar un mecanismo de 
tratamiento de la prioridad. 
 
 
 
CONTROLADOR DE DMA (CDMA): Los controladores capaces de realizar transferencias DMA son 
especiales y deben disponer de una compleja lógica auxiliar, que le permita asumir las funciones que en las 
técnicas anteriores soportaba el procesador para transferir información entre la Memoria Principal y los 
periféricos. Este sofisticado controlador (CDMA) tiene que encargarse de controlar los buses de direcciones, 
datos y control para poder realizar los accesos a la Memoria Principal. Cuando un periférico trabaja con DMA 
y tiene que realizar una transferencia en la Memoria, comienza la operación solicitando el CDMA al 
procesador la liberación de los buses. Cuando el procesador se desconecta de los buses dejándolos en 
triestado, toma su gobierno el CDMA. Por el bus de direcciones va apuntando las direcciones de las Memoria 
a acceder. Por el bus 
de datos se 
transfiere la 
información y por el 
bus de control indica

Continuar navegando

Preguntas relacionadas