Anda di halaman 1dari 174

Arquitectura de Computadores y Sistema Operativo

Basado principalmente en los libros Organizacin y Arquitectura de Computadores, William Stallings. Arquitectura de Microcontroladores, Jos Mara Usategui, Jos Luis Gutirrez Temio, Ignacio Angulo Martnez Microcontroladores, Jos M. Angulo, Ignacio Angulo

Arquitectura de Computadores y Sistema Operativo

Sitios Recomendados http://www.zator.com/Hardware/H2_3.htm http://wwwdi.ujaen.es/~lina/TemasSO/glosario/GLOSARIO.htm#DMA http://www.intel.com/espanol/products/server/processors/server/itanium2/ http://www.tau.org.ar/base/lara.pue.udlap.mx/sistoper/capitulo6.html http://usuarios.lycos.es/cursosimm/capitulo5.htm http://www.intec.edu.do/~yberges/ocurre7.htm http://html.rincondelvago.com/arquitecturas-avanzadas.html http://atc2.aut.uah.es/~frutos/arqINF/tema6.pdf http://www.micropic.arrakis.es/marcos.htm

Arquitectura de Computadores y Sistema Operativo

Sitios Recomendados http://www.duiops.net/hardware/micros/micros.htm http://www.duiops.net/hardware/articulo/64bitscpu.htm http://www.pc.com.mx/Procesadores/procesadores.html http://www.zator.com http://www.isde-ing.com/Qedom.htm http://users.erols.com/chare/sockets.htm http://www.amd.com/la-es/Processors/ProductInformation/0,,30_118_8826_8805,00.html http://www.mastermagazine.info/informes/amd_intel_2004_f.htm http://www.pc.com.mx/Procesadores/procesadores.html ttp://dc.inictel.gob.pe/telecom/Pap/ProgAplic_PicMicrochip/pap_curso_11.htm

Arquitectura de Computadores y Sistema Operativo

Lecturas Recomendadas

Implementacin de un sistema de desarrollo microcontroladores PIC Microchip Technology, Manuel Fernando Campos Cerda Ramiro Castaeda Prez Arturo Csar Contreras Torres Ingeniera en Comunicaciones y Electrnica.

utilizando

los

Arquitectura de Computadores y Sistema Operativo

1. Historia y Evolucin de los

Computadores

Arquitectura de Computadores y Sistema Operativo

1.Historia y Evolucin de los Computadores

Eras 9 Era Pre-electrnica.

baco.

Mquina de Pascal.

Arquitectura de Computadores y Sistema Operativo

La historia se inicia en la antigedad con el baco inventado por los chinos. En 1642 Blaise Pascal invent un sistema mecnico que sumaba y restaba. Esta calculadora estaba basada en una serie de engranajes y ruedas dentadas. La base de las operaciones consista en contar los dientes de un engranaje, al igual que un cuentakilmetros.

1.Historia y Evolucin de los Computadores 9 Era Pre-electrnica.

Mquina diferencial de Babbage.

Arquitectura de Computadores y Sistema Operativo

En 1822 Charles Babbage ide una mquina capaz de hacer operaciones mediante tarjetas perforadas. Esta mquina se proyect con los tres componentes bsicos de un ordenador actual: Una memoria Una unidad de clculo Una unidad de control de las operaciones a travs de tarjetas perforadas. Era capaz de realizar cualquier clculo y de almacenar programas, pero la mquina qued incompleta debido a la tecnologa de la poca.

1.Historia y Evolucin de los Computadores 9 Era Pre-electrnica.

Calculadora de Leibniz.

Arquitectura de Computadores y Sistema Operativo

La aparicin de la tecnologa elctrica permite la incorporacin de rels, que son interruptores binarios con dos posiciones, encendido y apagado. Cmo es posible representar los nmeros si los interruptores slo tienen dos posiciones? En china antiguamente ya se haba utilizado un sistema binario de numeracin que fue descrito por Leibniz en el siglo XVII. Este sistema consiste en utilizar dos dgitos para representar las cifras, comnmente 1 y 0. As 0 = Cero, 1= Uno, 10= dos, 11= Tres, 100= Cuatro, 101= Cinco. Es aqu importante destacar la aportacin de la Lgica Algebraica de Boole, que reduce la lgica, y en consecuencia las operaciones matemticas, a combinaciones de elementos binarios (Boole utiliza Verdadero y Falso, que corresponden a 1 y 0).

1.Historia y Evolucin de los Computadores 9 Era Electrnica.


Primera Generacin (1946-1957) Tubos de Vaco

Segunda Generacin (1958-1964)

Transistores

Tercera Generacin (1965-1971)

Circuitos Integrados (Pequea y Media Integracin)

ltimas Generaciones (1972-)

Circuitos Integrados (Gran y Alta integracin)


Arquitectura de Computadores y Sistema Operativo

La utilizacin de Tubos de Vaco define la Primera Generacin. Hacia 1946 aparecieron las computadoras electrnicas utilizando vlvulas o tubos al vaco (dispositivo que hizo posible la radio, la telefona, telegrafa inalmbrica y que impuls el desarrollo comercial e industrial de la electrnica). La primera computadora de propsito general fue llamada ENIAC. El uso del Transistor define la Segunda Generacin. El primer cambio importante en los computadores electrnicos vino con la sustitucin de los tubos de vaco por transistores. El transistor, inventado en los laboratorios Bell Telephone en el ao 1947, es ms pequeo, barato, disipa menos calor y fue usado a nivel comercial e industrial a partir de 1950 con aplicaciones en todo tipo de sistemas de radio, sonido, televisin, comunicaciones, computadoras y en la industria militar, espacial. Sin embargo es importante sealar que los computadores completamente transistorizados no estuvieron disponibles comercialmente hasta fines de los 50. Tambin en la Segunda Generacin se introdujeron unidades lgicas y aritmticas y unidades de control ms complejas, lenguajes de programacin de alto nivel y se proporcion un software del sistema con el computador. Aunque IBM no fue la primera en lanzar la nueva tecnologa pronto sigui con la serie 7000. En 1958 la invencin del Circuito Integrado define la Tercera Generacin. Los circuitos integrados, utilizaron el hecho de que componentes tales como transistores, resistencias y conductores podan ser fabricados a partir de un semiconductor como el silicio. Este logro, reunir en una sola pastilla semiconductora o chip varios transistores, inaugur la era de la microelectrnica. En un comienzo slo podan encapsularse juntas con fiabilidad unas pocas componentes, con el paso del tiempo fue posible encapsular ms y ms en un mismo chip. Gordon Moore (cofundador de Intel) observ que el nmero de transistores que se podran integrar en un solo chip se duplicaba cada ao y se predeca, que esto continuara en un futuro cercano. ltimas Generaciones. La cuarta y quinta generacin estn basadas en los avances de la tecnologa de los circuitos integrados con respecto a la integracin a gran escala en la que poda haber ms de 1000 componentes en un chip de circuito y la integracin a muy gran escala en la que se logra ms de 10.000 componentes por chip. Los chips actuales pueden contener ms de 100.000. Con el gran avance de la tecnologa, rpida introduccin de nuevos productos, la importancia del software, las comunicaciones y hardware, la clasificacin en generaciones se vuelve cada vez menos clara y menos significativa.

10

1.Historia y Evolucin de los Computadores

E.N.I.A.C.

Arquitectura de Computadores y Sistema Operativo

ENIAC era de gran tamao, usaba un alto nmero de tubos por lo cual requera todo un sistema de aire acondicionado. Era capaz de efectuar 5.000 sumas por segundo. Era una mquina decimal, no era binaria. Uno de sus mayores inconvenientes era que deba ser programada manualmente mediante conmutadores y conectando y desconectando cables, operacin que poda durar varios das de trabajo. Como la tarea de cargar y modificar programas para el ENIAC era tediosa, el hngaro John von Neumann, asesor del proyecto ENIAC junto a sus colegas, ide una forma de facilitar el proceso. Result tan fundamentales para el desarrollo posterior que es considerado el padre de las computadoras.

11

1.Historia y Evolucin de los Computadores


Unidad Aritmtico-Lgica

Memoria Principal

Equipos de E/S

Unidad de Control de Programa

Estructura del computador IAS.


Arquitectura de Computadores y Sistema Operativo

La idea fundamental de Neumann fue permitir que en la memoria coexistieran datos con instrucciones, para que la computadora pudiera ser programada a travs de esos datos y no por medio de alambre que elctricamente programaban las operaciones de la computadora. Esta idea fue conocida como Concepto del Programa-Almacenado. La primera publicacin de la idea para un nuevo computador, el EDVAC, fue en 1945. En 1946 Neumann y sus colegas comenzaron el diseo de un nuevo computador de programa-almacenado, el IAS. La figura muestra la estructura general del computador IAS. Que consta de: Una Memoria Principal, que almacena datos e instrucciones. Una Unidad Aritmtico-Lgica (ALU) capaz de hacer operaciones con datos binarios. Una Unidad de Control, que interpreta las instrucciones en memoriay provoca su ejecucin. Un Equipo de Entrada-Salida (E/S) dirigido por la unidad de control. Salvo excepciones, todos los computadores de hoy en da tienen la misma estructura general y funcionamiento que la indicada en las mquinas de von Neumann.

12

1.Historia y Evolucin de los Computadores 9 Ley de Moore

Arquitectura de Computadores y Sistema Operativo

Las consecuencias de la ley de Moore son profundas: El precio de un chip ha permanecido invariable a travs de este periodo de rpido crecimiento en densidad. Lo que significa que el costo de la lgica del computador y de la circuitera de la memoria han cado a una velocidad drstica. Ya que los elementos de la lgica y la memoria estn ms prximos en chips ms densamente encapsulados, la longitud de las interconexiones elctricas ha disminuido, incrementndose as la velocidad operativa. El computador es ahora ms pequeo, lo que lo hace ms adecuado para ms entornos. Hay una reduccin de las necesidades de potencia y refrigeracin. Las interconexiones de los circuitos integrados son mucho ms fiables que las conexiones soldadas. Con ms circuitos en cada chip, hay menos conexiones entre chips.

13

1.Historia y Evolucin de los Computadores 9 Memoria. 9 Microprocesadores (4004).


Fue el primer chip que contena todos los componentes de la CPU en un solo chip.

Arquitectura de Computadores y Sistema Operativo

Memoria: La tecnologa de los circuitos integrados tambin sirvi para construir memorias. En los 50 y 60, la mayora de las memorias de los computadores se hacan con pequeos anillos de material ferromagntico dispuestos de tal forma que se magnetizaban en un sentido para representar un 0 y en el otro sentido para representar un 1. Si bien eran memorias rpidas, eran caras, voluminosas y usaba lectura destructiva. En 1970, Fairchild produjo la primera memoria semiconductora, chip que poda tener 256 bits de memoria. No era destructiva. La tendencia ha sido desde 1974 de disminucin del precio de la memoria acompaado de un correspondiente aumento de la densidad de memoria. A partir de 1970 , la memoria semiconductora ha tenido ocho generaciones: 1K, 4K, 16K, 64K, 256K, 1M, 4M, ahora 16M bits en un solo chip. Microprocesadores: Igual que la densidad de elementos en los chips de memoria ha continuado creciendo, tambin lo ha hecho la densidad de elementos de procesamiento. La evolucin se puede ver ms fcilmente considerando el nmero de bits que el procesador trata a la vez. No hay una medida clara de esto, pero la mejor medida es la anchura del bus de datos: el nmero de bits de un dato que puede venir o ir al procesador a la vez. En 1969, Silicon Valley, en el estado de California (EEUU) era el centro de la industria de los semiconductores. Por ello, gente de la empresa Busicom, una joven empresa japonesa, fue a la compaa Intel (fundada el ao anterior) para que hicieran un conjunto de doce chips para el corazn de su nueva calculadora de mesa de bajo costo. En 1971 Intel desarroll el 4004 que fue el primer chip que contena todos los componentes de la CPU en un solo chip. Poda sumar dos nmeros de 4 bits y multiplicar slo con sumas sucesivas. Primitivo, pero con l se marc el comienzo de la evolucin continua en capacidad y potencia de los microprocesadores. Posteriormente se dise el 8008, microprocesador de 8 bits (en la anchura del bus), dos veces ms complejo que el 4004.

14

1.Historia y Evolucin de los Computadores 9 Dos familias de computadores de las que


se tratarn ejemplos son:
PENTIUM

POWERPC

Arquitectura de Computadores y Sistema Operativo

Pentium: incorpora los sofisticado principios de diseo que se encontraban en ordenadores grandes y supercomputadoras, la tecnologa CISC. CISC: es una abreviacin de "Complex Instrution set computer". Se refiere a los microprocesadores tradicionales que operan con grupos grandes de instrucciones de procesador (lenguaje de mquina). Todos los microprocesadores de la serie X86 de Intel y sus clones como los K5, K6 de AMD y el 6x86 (M-II) de Cyrix, estn construidos bajo esta tecnologa. Los procesadores CISC tienen un Set de instrucciones complejas por naturaleza que requieren varios a muchos ciclos para completarse. PowerPC: es descendiente directo del primer sistema RISC, el IBM 801, que es uno de los sistemas ms potentes y mejor diseados del mercado. RISC: es una abreviacin de "Reduced Instruction Set Code", a diferencia de los CISC, los procesadores RISC tienen un pequeo conjunto de instrucciones bsicas requiriendo unos o pocos ciclos de ejecucin. Estas instrucciones pueden ser utilizadas ms eficientemente que la de los procesadores CISC con el diseo de software apropiado, resultando en operaciones ms rpidas en funciones intensivas en tiempo como son las grficas, el video, sonido.

15

1.Historia y Evolucin de los Computadores Computador Computador Familia 386 Familia 486
tipo PC-XT Microprocesador usado 8088 de Intel o de otras empresas con licencia 16 bits / 8 bits tipo PC-AT 80286 de Intel y otras marcas autorizadas 16 bits / 16 bits i386 de Intel y clones de AMD, Cyrix, C&T, etc. 32 bits / 32 bits i486 de Intel, y clones de AMD, Cyrix, IBM, ST, UMC y TI 32 bits / 32 bits

Bus interno / externo

RAM Tpica instalada

Hasta 640 KB

Alrededor de 1-2 MB

Entre 2 y 4 MB

Entre 8 y 16 MB

Dispositivo de Almac. de datos (capacidad)

1 2 unidades de disquetes de 360 kB (5 1/4) HD opcional de 10 MB

HD de 40 MB unidad de disquete de 5 1/4 y 1.2 MB de capacidad

HD de 120 y 300 MB, unidad de disquete de 3 y 1.44 MB

HD de entre 528 y 1GB, lector de CD-ROM

Arquitectura de Computadores y Sistema Operativo

16

1.Historia y Evolucin de los Computadores


Quinta Generacin Microprocesador usado Pentium y Pentium MMX de Intel; K5 y K6 de AMD, 6x86 y M-II de Cyrix e IBM 32 bits / 64 bits Sexta Generacin Pentium Pro, Pentium II, Pentium-III y Celeron de Intel; K6-II y K6-III de AMD 32 bits / 64 bits Sptima Generacin Athlon y Duron de AMD, Pentium-4 y Celeron de Intel 32 bits / 64 bits

Bus interno / externo RAM Tpica instalada

Entre 32 y 64 MB

Entre 64 y 128 MB

Entre 128 y 512 MB

Dispositivo de Almac. de datos (capacidad)

HD de 2-4 GB de capacidad, unidades removibles tipo ZIP y JAZ

HD de entre 8 y 15 GB; grabador de CDs

HD de entre 20 y 60 GB, lector de DVDROM, grabador de DVD

Arquitectura de Computadores y Sistema Operativo

17

1.Historia y Evolucin de los Computadores Computador Computador tipo Familia 386 Familia 486
tipo PC-XT Tipo de Monitor TTL monocromtico (letras, nmeros, smbolos) DOS 1.0 a DOS 3.3 PC-AT CGA manejaba grficos sencillos, 4 colores mximo o EGA con 16 colores DOS 4.0 VGA con 256 colores (resolucin de 640x480 pixeles) DOS 5.0 + Windows 3.1, Aparece Linux Se populariza el ratn y el sonido, impresoras lser, mdems de 9600 bps Se habla de Internet, pero es slo dominio de expertos SVGA de 800x600 pixeles y hasta 64.000 colores DOS 6.22 + Windows 3.11 Workstation Mdems de 14.400 bps, comienza a populari-zarse Internet Bocinas externas y lector de CD-ROM equipo estndar

Sistema Operativo tpico Accesorios

Mdems primitivos de 300 bps, impresora matriz de punto Ancestro ms remoto de las PC

Aparecen las primeras tarjetas de sonido e incluso ratn Se fijan muchos de los estndares que se siguen respetando

Ms Informacin

Arquitectura de Computadores y Sistema Operativo

18

1.Historia y Evolucin de los Computadores


Quinta Generacin Sexta Generacin Sptima Generacin Tipo de Monitor UVGA de 1024x768 pixeles con 16 millones de colores Windows 95 Windows 98 XGA de 1200x1024 pixeles, 16 millones de colores, primeras pantallas planas Windows 98, Windows 2000 y Windows ME Mdem de 56 kbps, cmara digital. Se popularizan las pantallas planas tipo LCD o de plasma Windows ME, Windows 2000, Windows XP Hardware para captura y edicin de video

Sistema Operativo tpico

Accesorios

Escner, impresoras de inyeccin de tinta. Mdems de 33.6 kbps

Ms Informacin

Masificacin de Internet, correo electrnico

Internet es parte de la vida, el correo electrnico y chat.

El PC es centro de entretencin, tv, equipo de sonido, etc.

Arquitectura de Computadores y Sistema Operativo

19

1.Historia y Evolucin de los Computadores


8080: primer microprocesador de propsito general. Tena 8 bits, ms rpido, mayor capacidad de direccionamiento. 8086: microprocesador de 16 bits de propsito general, ms potente. Tena un cach de instruccin, o cola, que precaptaba algunas instrucciones antes de ser ejecutadas. 80286: permita direccionar una memoria de 16MBytes. 80386: primera mquina Intel con 32 bits. 80486: introduce el uso de tecnologa de cach mucho ms sofisticada y potente. 80486 DX: posee el doble de la velocidad que el 80386 y mantiene la compatibilidad con los procesadores precedentes. 80486 SX: es una solucin de menor coste que no incluye coprocesador matemtico. 80486 DX2: posee duplicador de frecuencia interno, y el procesador funciona al doble de velocidad. 80486 SL: reduce la tensin de trabajo del procesador para conseguir un ahorro de energa.
Arquitectura de Computadores y Sistema Operativo

20

1.Historia y Evolucin de los Computadores


80486 DX4: triplica la frecuencia de reloj y aumenta el tamao de la memoria cach interna a 16 Kbytes. Pentium: con ste Intel introduce tcnicas que permiten que varias instrucciones se ejecuten en paralelo. Pentium Pro: variante del pentium con mejoras en velocidad y paralelismo. Pentium MMX: incluy un juego de instrucciones especializadas, llamadas MMX. Pentium II: contiene todos los ltimos avances de la familia de microprocesadores de Intel con la potencia del Pentium Pro, ms la tecnologa Intel MMX, para procesar datos de video, audio y grficos. Pentium III: incorpora instrucciones para procesar software 3D, para transmisin ms rpida de sonido y video de alta calidad.

Arquitectura de Computadores y Sistema Operativo

En el ao 1992 la empresa Intel anunci la prxima generacin de su lnea de procesadores que se llamara Pentium en vez de 586 u 80586. De esta manera pudo diferenciar el nombre de su procesadores de los de sus competidores. Dentro de los pentium aparecieron distintas versionescon caractersticas mejoradas: Pentium, Pentium Pro, Pentium MMX, Pentium II, Pentium III y Pentium IV.

21

1.Historia y Evolucin de los Computadores


Pentium IV: ofrece una nueva generacin de recursos para procesar y ejecutar con mayor rapidez muchas aplicaciones populares de imgenes, msica, vdeo y juegos digitales, optimizando el rendimiento para las tecnologas modernas de Internet y visualizacin de grficos en tres dimensiones. Pentium IV HT: la Tecnologa Hyper-Threading (HT) es una tecnologa innovadora que permite al procesador pentium 4 ejecutar encadenamientos de instrucciones en paralelo, y permite que los usuarios hagan ms en menos tiempo. Itanium2: este es el primer procesador con arquitectura completa de 64 bits. Est basado en la arquitectura EPIC, que le permite ejecutar hasta 6 instrucciones en paralelo por ciclo de reloj. Permite trabajar con Aplicaciones de servidor y multiprocesador enfocadas a las bases de datos, inteligencia empresarial (BI), gestin de la cadena de suministros (SCM), planificacin de recursos empresariales (ERP) e informtica de alto rendimiento (HPC).

Arquitectura de Computadores y Sistema Operativo

Hasta el momento hay dos procesadores de 64 bits conocidos Itanium y AMD64. Itanium2: Este procesador es arquitectura EPIC, explicit parallel instruccion computing o proceso de intrucciones explicitamente paralelo, arquitectura a la que no se est acostumbrado como usuarios finales pues no est orientado al mercado domstico. Bsicamente se distingue de la arquitectura CICS (la que usan los sistemas de sobremesa actuales), en que sus instrucciones ensambladoras son mucho ms elementales, tienen decenas de registros de propsito general y particulares. El cdigo a ejecutar, su optimizacin, se basa en lo optimizado que est el compilador. Extraordinariamente rpidos, pero difcil de ajustar los compiladores para un rendimiento ptimo. El Itanium tiene memoria cach de tres niveles (L1, L2 dentro del procesador y L3 de 2 o 4 MB en el propio encapsulado) El Itanium e Itanium 2 estn pensados para servidores. Existe un XP Profesional de 64 bits para ellos. Los procesadores Itanium 2 son compatibles sistema de soluciones de 64 bits, altamente escalables y de estndares abiertos, de ms de 40 fabricantes de software lderes, ms de cinco sistemas operativos, que incluyen Windows* Server 2003, HP-UX y Linux-64, y centenares de aplicaciones y herramientas.

22

2. Funcionamiento y Organizacin del Computador

Arquitectura de Computadores y Sistema Operativo

23

2. Funcionamiento y Organizacin del Computador

Las funciones bsicas que un computador puede realizar

9 Procesamiento de Datos. 9 Almacenamiento de Datos. 9 Transferencia de Datos. 9 Control.

Arquitectura de Computadores y Sistema Operativo

Procesamiento de Datos: El computador debe ser capaz de procesar datos, que pueden ser de una gran variedad de formas. Almacenamiento de Datos: Tambin debe ser capaz de almacenar datos, incluso si el computador est procesando datos al vuelo (si los datos se introducen y procesan, y los resultados se obtienen inmediatamente), el computador tiene que guardar temporalmente, al menos aquellos datos con los que est trabajando en un momento dado. Esto es una funcin de almacenamiento de a corto plazo. Tambin el computador almacena ficheros de datos para que se recuperen y actualicen en un futuro. Esto es una funcin de almacenamiento de datos a largo plazo. Transferencia de Datos: El computador, debe ser capaz de transferir datos entre l mismo y el mundo exterior. El entorno de operacin del computador se compone de dispositivos que sirven bien como fuente o como destino de datos. Cuando se reciben o se llevan datos a un dispositivo que est directamente conectado con el computador, el proceso se conoce como entrada-salida (E/S), y ste dispositivo se llama perifrico. Control: Dentro del computador, una unidad de control gestiona los recursos del computador y dirige las prestaciones de sus partes funcionales en respuesta a estas instrucciones.

24

2. Funcionamiento y Organizacin del Computador

Componentes de un computador 9 Unidad Central de Procesamiento 9 Memoria Principal 9 E/S 9 Sistema de Interconexin (Bus del Sistema)

Arquitectura de Computadores y Sistema Operativo

Compoenetes estructurales principales de un computador. Unidad Central de Procesamiento: Controla el funcionamiento del computador y lleva a cabo sus funciones de procesamiento de datos. Se le llama frecuentemente procesador. Memoria Principal: Almacena datos. E/S: Transfiere datos entre el computador y el entorno externo. Sistema de Interconexin: Proporciona la comunicacin entre la CPU, la memoria principal y la E/S. Puede que haya ms de uno de estos componente. Tradicionalmente ha habido una CPU. En la actualidad se pueden ver computadoras con ms de un procesador.

25

2. Funcionamiento y Organizacin del Computador


Computador CPU

E/S Registros Bus de Sistema ALU

CPU

Interconexin Interna

Memoria Unidad de Control

Esquema resumen.
Arquitectura de Computadores y Sistema Operativo

26

2. Funcionamiento y Organizacin del Computador 9 Unidad Central de Procesamiento (CPU)


Unidad de Control ALU (Unidad Aritmtico Lgica) Registros Interconexiones CPU

Arquitectura de Computadores y Sistema Operativo

El componente ms interesante y complejo es la CPU. Sus principales componentes estructurales son: Unidad de Control: Controla el funcionamiento de la CPU. ALU: Realiza las funciones de procesamiento de datos del computador. Registros: Proporciona almacenamiento interno a la CPU Interconexiones CPU: Son mecanismo que proporcionan comunicacin entre la unidad de control, la ALU y los registros.

27

2. Funcionamiento y Organizacin del Computador


CPU PC IR MAR MBR E/S AR E/S BR Mdulo de E/S Memoria
. . . Instruccin Instruccin Instruccin . . . Datos Datos Datos . . .

Registros

Componentes del computador: esquema de dos niveles.


Arquitectura de Computadores y Sistema Operativo

La figura muestra los componentes de alto nivel y la interaccin entre ellos. A continuacin se describirn en forma breve. La CPU se encarga del control, intercambia datos con la memoria para lo cual utiliza por lo general sus registros internos: Registro de Direccin de Memoria (MAR) que especifica la direccin de memoria de la prxima lectura o escritura. Registro para Datos de Memoria (MBR) que contiene el dato que se va a escribir en memoria o donde se escribe el dato que se va a leer de memoria. Registro de Direcciones de E/S (E/S AR) que especifica un dispositivo de E/S. Registro para Datos de E/S (E/S BR) que se utiliza para intercambiar datos entre un mdulo de E/S y la CPU. Tambin es necesario mencionar los registros Contador de Programa (PC) y el Registro de Instruccin (IR), que se vern ms adelante, cuando se explique la forma en que un computador ejecuta sus programas. Un Mdulo de Memoria consta de un conjunto de posiciones, designadas por direcciones numerada secuencialmente. Cada posicin contiene un nmero binario que puede ser interpretado como una instruccin o como un dato. Un Mdulo de E/S transfiere datos desde los dispositivos externos a la CPU y a la memoria, y viceversa. Contiene los registros internos para almacenar los datos temporalmente, hasta que puedan enviarse.

28

2. Funcionamiento y Organizacin del Computador


Cmo

lo hace el computador para ejecutar un programa ?

Ciclo de Captacin

Ciclo de Ejecucin

INICIO

Captar la Siguiente Instruccin

Ejecutar la Instruccin

PARADA

Ciclo de Instruccin Bsico.

Arquitectura de Computadores y Sistema Operativo

Cmo lo hace el computador para ejecutar un programa ? Un programa es un conjunto de pasos o instrucciones almacenadas en memoria y el procesador es el encargado de ejecutar las instrucciones especificadas en el programa. El procesador realiza esto en dos pasos: Lee o capta la instruccin de memoria y Ejecuta la instruccin. Entonces la ejecucin del programa no es ms que la repeticin del proceso de captacin de instruccin y ejecucin de instruccin. Estos pasos se denominan Ciclo de Captacin y Ciclo de Ejecucin. Y todo este procesamiento se llama Ciclo de Instruccin. Esta ejecucin puede verse afectada y por lo tanto verse obligada a parar por las siguientes razones: Desconexin del computador, Si se produce algn error, O si se ejecuta una instruccin del programa que detiene al computador.

29

2. Funcionamiento y Organizacin del Computador


1. La CPU capta una instruccin de memoria. 2. La CPU incrementa el Contador de Programa. 3. La instruccin captada se almacena en el Registro
de Instruccin en cdigo binario (la instruccin especifica la accin que debe realizar la CPU). 4. La CPU interpreta la instruccin y realiza la accin especificada.

Arquitectura de Computadores y Sistema Operativo

Durante los ciclos de captacin y ejecucin la CPU se vale de sus registros Contador de Programa y Registro de Instruccin (PC e IR). Al comienzo de cada ciclo de instruccin la CPU capta una instruccin de memoria y usa el registro PC para seguir la pista de la instruccin que deber captar a continuacin. La CPU siempre incrementa el PC despus de cada captacin para continuar con la instruccin situada en la siguiente direccin de memoria. Una vez captada la instruccin se almacena en el IR y se escribe en cdigo binario, y especifica la accin que debe realizar la CPU. Luego sta la interpreta y lleva a cabo la accin requerida.

30

2. Funcionamiento y Organizacin del Computador


Tipos de accin especificadas en la instruccin:

a. Procesador-Memoria. b. Procesador-E/S. c. Procesamiento de Datos. d. Control.

Arquitectura de Computadores y Sistema Operativo

La accin que est especificada en la instruccin puede ser de 4 tipos generalmente: 1. Procesador-Memoria: deben transferirse datos desde la CPU a la memoria, o desde la memoria a la CPU. 2. Procesador-E/S: deben transferirse datos a o desde el exterior mediante transferencias entre la CPU y un Mdulo de E/S. 3. Procesamiento de Datos: la CPU ha de realizar alguna operacin aritmtica o lgica con los datos. 4. Control: una instruccin puede especificar que la secuencia de ejecucin se altere. Un ejemplo claro, la CPU capta una instruccin de la posicin 149 que especifica que la siguiente instruccin debe captarse de la posicin 182. La CPU lo registra poniendo en el PC 182, lo que provoca que en el prximo ciclo de captacin, la instruccin se cargar desde la posicin 182 en vez de la posicin 150. La ejecucin de una instruccin puede implicar una combinacin de estas acciones.

31

2. Funcionamiento y Organizacin del Computador


0 Codop 34 Direccin (a) Formato de Instruccin. 0 S 1 Magnitud (b) Formato de Enteros. PC = Direccin de Instruccin IR = Instruccin en Ejecucin AC = Almacenamiento Temporal 15 15

(c) Registros Internos de la CPU. Caractersticas de una Mquina Hipottica.


Arquitectura de Computadores y Sistema Operativo

Ejemplo. Considrese una mquina hipottica, cuyo procesador tiene un nico registro de datos (AC) y las caractersticas indicadas en la figura. Las instrucciones y los datos son de 16 bits. El formato de instruccin indica que pueden haber 24 = 16 cdigos de operacin (codop) diferentes. Se pueden direccionar directamente hasta 212 = 4096 (4K) palabras de memoria. Lo que va a hacer a mquina hipottica es la ejecucin de una parte de un programa. Utiliza notacin hexadecimal. La parte de programa suma el contenido de la palabra de memoria en la direccin 94016 con el contenido de la palabra de memoria en la direccin 94116 Almacena el resultado en la direccin 94116. Se requieren tres instrucciones, que consumen tres ciclos de captacin y tres de ejecucin.

32

2. Funcionamiento y Organizacin del Computador


Memoria 300 301 302 1940 5941 2941 1940 Registros de la CPU 300 PC AC IR 300 301 302 Memoria 1940 5941 2941 Registros de la CPU 300 0003 1940 PC AC IR

940 941

0003 0002

940 941

0003 0002

I.

II.

Arquitectura de Computadores y Sistema Operativo

1. El PC contiene el valor 300, que es la direccin donde se encuentra la primera instruccin a ejecutarse. Esta instruccin se carga en el IR. 2. Los primeros cuatro bits de IR indican que el acumulador AC se va a cargar. Los restantes 12 bits especifican la direccin, que es 940.

33

2. Funcionamiento y Organizacin del Computador


Memoria 300 301 302 1940 5941 2941 Registros de la CPU 301 0003 5941 PC AC IR 300 301 302 Memoria 1940 5941 2941 Registros de la CPU 301 0005 5941 PC AC IR

940 941

0003 0002

940 941

0003 0002 316 + 216 = 516

III.

IV.
Arquitectura de Computadores y Sistema Operativo

3. El registro PC se incrementa, y se capta la siguiente instruccin. 4. El contenido anterior de AC y el de la posicin de memoria 941 se suman, y el resultado se almacena en AC.

34

2. Funcionamiento y Organizacin del Computador


Memoria 300 301 302 1940 5941 2941 Registros de la CPU 302 0005 2941 PC AC IR 300 301 302 Memoria 1940 5941 2941 Registros de la CPU 302 0005 2941 PC AC IR

940 941

0003 0002

940 941

0003 0005

V.

VI.
Arquitectura de Computadores y Sistema Operativo

5. El registro PC se incrementa, y se capta la siguiente instruccin. 6. El contenido de AC se almacena en la posicin 941.

35

2. Funcionamiento y Organizacin del Computador


Captacin de instruccin Captacin de operando Almacenamiento de operando

Varios operandos

Varios Resultados

Clculo de la direccin de instruccin

Decodificacin de la operacin de la instruccin

Clculo de la direccin de operando

Operacin con datos

Clculo de la direccin de operando

Instruccin completada, captar siguiente instruccin

Cadena o vector de datos

Diagrama de estados del ciclo de instruccin.


Arquitectura de Computadores y Sistema Operativo

Con un conjunto de instrucciones ms complejo se hubieran necesitado menos ciclos. Los procesadores actuales incluyen instrucciones que contienen ms de una direccin. As, el ciclo de ejecucin de una instruccin puede incluir ms de una referencia a memoria. Una instruccin puede especificar una operacin de E/S tambin. La figura, que tiene la forma de un diagrama de estados, proporciona una visin ms detallada del ciclo de instruccin bsico presentado con anterioridad. Estos estados son: Clculo de la direccin de la instruccin: determina la direccin de la siguiente instruccin a ejecutar. Captacin de instruccin: la CPU lee la instruccin desde su posicin en memoria Decodificacin de la operacin indicada en la instruccin: analiza la instruccin para determinar el tipo de operacin a realizar y el/los operando(s) a utilizar. Clculo de la direccin del operando: si la instruccin implica una referencia a un operando en memoria o disponible mediante E/S, determina la direccin del operando. Captacin de operando: capta el operando desde memoria o se lee desde el dispositivo de E/S. Operacin con los datos: realiza la operacin indicada en la instruccin. Almacenamiento de operando: escribe el resultado en memoria o lo saca a travs de un dispositivo de E/S. Los estados en la parte superior de la figura ocasionan intercambios entre la CPU y la memoria o un mdulo de E/S. Los de abajo ocasionan operaciones internas a la CPU.

36

2. Funcionamiento y Organizacin del Computador


Clases de interrupciones
Programa
9Desbordamiento 9Divisin

aritmtico. por cero. 9Ejecutar una instruccin mquina inexistente. 9Intento de acceder fuera del espacio de memoria permitido para el usuario.
9Generadas

Temporizacin E/S Fallo de Hardware

por un temporizador interno al procesador.

9Generadas

por un controlador de E/S.

9Generadas

por un fallo tal como la falta de potencia de alimentacin o un error de paridad en la memoria.

Arquitectura de Computadores y Sistema Operativo

Interrupciones Casi todos los computadores disponen de un mecanismo mediante el que otros mdulos, por ejemplo E/S, memoria, pueden interrumpir el procesamiento normal de la CPU. En la tabla se ven las clases ms comunes de interrupciones. Propsito de las Interrupciones: Las interrupciones tienen el propsito de mejorar la eficiencia del procesador. Como la mayora de los dispositivos externos son ms lentos que el procesador mediante las interrupciones se evita que ste se detenga y permanezca ocioso. Con el uso de interrupciones el procesador puede dedicarse a la ejecucin de otras instrucciones mientras una operacin de E/S est en curso.

37

2. Funcionamiento y Organizacin del Computador 9 Buses


Un bus es un camino de comunicacin entre dos o ms dispositivos. Es un medio de transmisin compartido. Al bus se conectan varios dispositivos. Un bus est constituido por varios caminos de comunicacin, por lneas.

Arquitectura de Computadores y Sistema Operativo

Un BUS es un canal en el que fluye la informacin entre dos o mas dispositivos, es decir, es un canal de comunicacin entre dispositivos. Teniendo siempre el microprocesador como centro neurlgico donde se procesa la informacin. Un BUS en el que slo se pueden comunicar dos dispositivos es un PUERTO. El ejemplo ms utilizado para entender este concepto es la comparacin de un bus con una autopista, la informacin que fluye por el bus son los coches que circulan por la autopista y el ancho del bus son los carriles que tiene esa autopista, cuantos ms carriles (ancho) mas coches (informacin) pueden circular al mismo tiempo por la autopista (bus). Teniendo en cuenta este concepto hablamos de un bus de 16 bits, de 32 bits, etc. La velocidad del bus viene expresada en MHz y se pueden encontrar buses de 33 MHz, de 66 MHz, etc. En el ejemplo anterior de la autopista la velocidad del bus sera la velocidad mxima a la que los coches pueden circular por los carriles. El "ancho de banda" de un bus es la cantidad mxima de informacin que puede fluir por l en una unidad de tiempo determinado (en el ejemplo utilizado el ancho de banda es la cantidad mxima de coches que pueden circular por la autopista en un tiempo determinado, que depende del nmero de carriles de la autopista y de la velocidad mxima a la que pueden circular los mismos por cada carril). Se expresa en bytes por segundo, as por ejemplo un bus de 32 bits y con una velocidad mxima de 33,33 MHz tiene un ancho de banda de 32 bits por ciclo de reloj x 33.333.333 ciclos de reloj por segundo = 1.066.666.656 bits por segundo, es decir, 133,33 Mbytes/segundo. Otro ejemplo, el bus local del Pentium tiene una anchura de 64 lneas y una frecuencia de 66 MHz, lo que proporciona un ancho de banda de 528 Mbytes/s. Al bus se conectan varios dispositivos, y cualquier seal transmitida por uno de estos dispositivos est disponible para que los otros dispositivos conectados al bus puedan acceder a ella. Si dos dispositivos van y transmiten al mismo tiempo, sus seales pueden solaparse y distorsionarse. Por lo tanto slo un dispositivo puede lograr su transmisin con xito. Cada lnea es capaz de transmitir seales binarias representadas por 1 y 0. En un intervalo de tiempo, se puede transmitir una secuencia de dgitos binarios a travs de una nica lnea. Se pueden usar varias lneas del bus para transmitir dgitos binarios simultneamente, o en paralelo. Un ejemplo, un dato de 8 bits puede transmitirse mediante ocho lneas del bus. Los computadores tienen distintos tipos de buses que proporcionan comunicacin entre su componentes a distintos niveles dentro de la jerarqua del sistema. El bus que conecta los componentes principales del computador (procesador, memoria y E/S) se denomina bus del sistema (system bus).

38

2. Funcionamiento y Organizacin del Computador 9 Buses


CPU Memoria

Memoria

E/S

E/S

Lneas de Control Lneas de Direccin Lneas de Datos Bus

Estructura del Bus.


Arquitectura de Computadores y Sistema Operativo

El bus del sistema est formado por entre 50 y 100 lneas. A cada lnea se le asigna una funcin especial. Las lneas se pueden clasificar en tres grupos funcionales. Lneas de datos, lneas de direcciones, lneas de control. Lneas de Datos: proporcionan un camino para transmitir datos entre los mdulos del sistema. El conjunto constituido por estas lneas se denomina bus de datos. El bus de datos por lo general consta de 8, 16 32 lneas distintas, cuyo nmero se conoce como anchura del bus de datos. Puesto que una lnea slo puede transmitir un bit cada vez, el nmero de lneas determina cuntos bits se pueden transferir al mismo tiempo. La anchura del bus es un factor clave para determinar las prestaciones del conjunto del sistema. Por ejemplo si el bus de datos tiene una anchura de 8 bits, y las instrucciones son de 16 bits, entonces el procesador debe acceder al mdulo de memoria dos veces por cada ciclo de instruccin. Cuanto ms ancho es el bus de datos, mayor es el nmero de bits que se transmiten a la vez. Lneas de Direcciones: se utilizan para designar la fuente o el destino del dato situado en el bus de datos. Si por ejemplo el procesador desea leer una palabra de (8,16, 32 bits) de datos de la memoria, sita la direccin de la palabra deseada en las lneas de direcciones. La anchura del bus de direcciones determina la mxima capacidad de memoria posible en el sistema. Cuanto ms ancho es el bus de direcciones, mayor es el rango de posiciones a las que se puede hacer referencia. Las lneas de direcciones se usan tambin para direccionar los puertos de E/S. Los bits de orden ms alto se usan para seleccionar una posicin de memoria o un puerto de E/S dentro de un mdulo. Por ejemplo, en un bus de 8 bits, la direccin 01111111 e inferiores haran referencia a posiciones dentro de un mdulo de memoria (el mdulo 0) con 128 palabras de memoria, y las direcciones 10000000 y superiores designaran dispositivos conectados a un modulo de E/S (mdulo 1). Lneas de Control: Se usan para controlar el acceso y el uso de las lneas de datos y direcciones, como estas lneas son compartidas por todos los componentes, debe existir una forma de controlar su uso. Las seales de control transmiten tanto rdenes como informacin de temporizacin entre los mdulos el sistema.

39

2. Funcionamiento y Organizacin del Computador 9 Buses


Lneas de control tpicas Escritura en memoria (Memory Write). Lectura de memoria (Memory Read). Escritura de E/S (I/O Write). Lectura de E/S (I/O Read). Transferencia reconocida (Transfer ACK). Peticin de bus (Bus Request). Cesin de bus (Bus Grant).

Arquitectura de Computadores y Sistema Operativo

Las seales de temporizacin indican la validez de los datos y las direcciones. Las seales de rdenes especifican las operaciones a realizar. Algunas lneas de control tpicas son: Escritura en memoria (Memory Write): hace que el dato del bus se escriba en la posicin direccionada. Lectura de memoria (Memory Read): hace que el dato de la posicin direccionada se site en el bus. Escritura de E/S (I/O Write): hace que el dato del bus se transfiera a travs del puerto de E/S direccionado. Lectura de E/S (I/O Read): hace que el dato del puerto de E/S direccionado se site en el bus. Transferencia reconocida (Transfer ACK): indica que el dato se ha aceptado o se ha situado en el bus. Peticin de bus (Bus Request): indica que un mdulo necesita disponer Cesin de bus (Bus Grant): indica que se cede el control del bus a un mdulo que lo haba solicitado. Peticin de interrupcin (Interrupt Request): indica si hay una interrupcin pendiente. Interrupcin reconocida (Interrupt ACK): seala que la interrupcin pendiente se ha aceptado. Reloj (Clock): se utiliza para sincronizar las operaciones. Inicio (Reset): pone los mdulos conectados en su estado inicial.

40

2. Funcionamiento y Organizacin del Computador 9 Buses


Lneas de control tpicas Peticin de interrupcin (Interrupt Request). Interrupcin reconocida (Interrupt ACK). Reloj (Clock). Inicio (Reset).

Arquitectura de Computadores y Sistema Operativo

41

2. Funcionamiento y Organizacin del Computador 9 Buses


Bus

CPU Memoria

Tarjetas

. . .
E/S

Implementacin fsica de una arquitectura de bus.


Arquitectura de Computadores y Sistema Operativo

Cmo funciona el bus? 1. Si un mdulo desea enviar un dato a otro debe: a) obtener el uso del bus b) transferir el dato a travs del bus 2. Si un mdulo desea pedir un dato a otro mdulo debe: a) obtener el uso del bus b) transferir la peticin al otro mdulo mediante las lneas de control y debe esperar a que el segundo mdulo enve el dato. direccin apropiadas. Despus

Fsicamente el bus de sistema es de hecho un conjunto de conductores elctricos paralelos, que son lneas de metal grabadas en una tarjeta (tarjeta de circuito impreso). El bus se conecta a travs de todos los componentes del sistema, cada uno de los cuales se conecta a algunas o a todas las lneas del bus. Una disposicin fsica muy comn se muestra en la figura. All se muestra que el bus consta de dos columnas verticales de conductores. A lo largo de estas columnas a intervalos regulares hay puntos de conexin en forma de ranuras (slots) dispuestas en sentido horizontal para sostener las tarjetas de circuito impreso. Cada uno de los componentes principales del sistema ocupa una o ms tarjetas y se conecta al bus a travs de esas ranuras. Esto en definitiva permite que al adquirir un computador pequeo luego se pueda expandirlo (ampliar la memoria, disco duro, cd-rom, grabador) aadiendo ms tarjetas o bien si se daa poder quitarla y poner una nueva. En general, la principal consigna a recordar para maximizar el rendimiento de una jerarqua de buses es la siguiente: cuanto ms rpido sea un dispositivo, ms cerca del procesador debemos conectarlo. Por ello, las memorias se ubican en la parte ms alta de las jerarquas, mientras que los perifricos van descendiendo a niveles inferiores a medida que su lentitud se va haciendo ms palpable, y as, encontraremos a la tarjeta grfica bajo bus AGP en primera lnea de combate, a la tarjeta de sonido bajo bus PCI en segunda lnea, y a toda una legin de discos (flexibles, duros y compactos) en la retaguardia que supone el bus EIDE o SCSI.

42

2. Funcionamiento y Organizacin del Computador 9 Buses


Bus Local
Conecta el microprocesador con la memoria cach y la memoria principal. Conecta el procesador con los dispositivos perifricos. (tarjetas, discos, impresoras) Destinados al dilogo con un tipo concreto de dispositivo.
(EIDE o SCSI o bus AGP)

Bus de Expansin

Buses Dedicados

Arquitectura de Computadores y Sistema Operativo

En la actualidad, la jerarqua de buses del PC engloba una taxonoma de tres estratos o niveles bsicos en funcin de su cercana al microprocesador: El bus local: conecta el microprocesador con la memoria cach y la memoria principal. Es el primer camino por el que circula la informacin del microprocesador cuando sale al exterior, y el nico que est fsicamente conectado al patillaje de su zcalo. Es el bus ms importante del sistema desde el punto de vista del rendimiento, ya que todos los dems buses desembocarn all en su camino hacia el microprocesador. Esto ha provocado tambin que el bus local sea el que ms metamorfosis haya experimentado con el paso del tiempo, obligado tambin por el paso tan acelerado que ha llevado el microprocesador. A pesar de estar tan cercano al procesador, la diferencia de velocidad con respecto a ste es muy apreciable. El bus de expansin: conecta el procesador con los dispositivos perifricos, cuyas tarjetas se instalan en los zcalos de expansin del sistema. ste bus es la columna vertebral del PC. Por ella fluye la informacin que generan / reciben todos los dispositivos del sistema (tarjetas, discos, impresoras, etctera). Actualmente este bus engloba a una segunda jerarqua de dos niveles, con una parte implementada mediante bus PCI a la que se conectan los dispositivos ms rpidos, y otra mediante bus ISA, donde se enganchan los ms lentos. Los buses dedicados: buses de propsito especfico, destinados al dilogo con un tipo concreto de dispositivo. Por ejemplo, los buses EIDE o SCSI para los dispositivos de almacenamiento masivo, o el bus AGP para la tarjeta grfica. Esta comunicacin se realiza siempre pasando primero por el bus local, y en muchas ocasiones tambin por el bus de expansin, hasta finalmente alcanzar el correspondiente bus dedicado.

43

2. Funcionamiento y Organizacin del Computador


Tarjeta Madre Plataforma fsica sobre la que se conectan los distintos dispositivos que integran un computador. Es un medio de comunicacin entre dos componentes. Es muy importante una correcta eleccin de Tarjeta Madre en la configuracin global de un equipo! Rendimiento. Interoperabilidad del equipo.
Arquitectura de Computadores y Sistema Operativo

Tarjeta Madre: Es el esqueleto del computador. La tarjeta madre tambin es llamada Placa Base, Placa Madre, Placa Principal, Mainboard, Motherboard. Es una Tarjeta de circuito impreso PCB donde estn montados todos los subsistemas crticos tales como el procesador, el chipset, la memoria, ranuras de expansin, etc. La Tarjeta Madre es el segundo componente a seleccionar despus del tipo de Microprocesador para el computador. Su funcin principal es la de servir como medio de comunicacin entre dos componentes mencionados, proporcionando las lneas elctricas y las seales de control necesarias para que todas las transferencias de datos se realicen de forma fiable y eficiente. La corriente fluye sobre cada capa a travs de varias lneas conductoras que conectan los chips, zcalos y dems componentes ubicados en la superficie de la placa base. El corte de alguna de estas lneas conductoras, ya sea debido a daos fsicos o a cortocircuitos, suele provocar que toda la placa base e incluso los componentes que en ella se conectan queden totalmente inutilizados. La CPU ha sido el elemento que ms ha determinado el rendimiento de un sistema, por eso su protagonismo es mucho ms notorio que el de la placa base, pero fallar en la eleccin de la placa va a ser mucho peor que fallar en la eleccin del microprocesador, pues es la que definir la capacidad de su sistema sus funciones y limitaciones. Rendimiento: la tarjeta madre define la velocidad de los componentes que integra y determina a su vez las caractersticas de los subsistemas que se conectan a ella. La forma ms eficiente de acelerar un sistema consiste en mejorar los subsistemas comparativamente ms lentos (denominados cuellos de botella). Pues bien, el microprocesador es hoy en da el dispositivo ms rpido del computador, mientras que la placa funciona a una velocidad mucho menor. Interoperabilidad del equipo: la tarjeta madre determina qu dispositivo puede formar parte de l, en qu nmero y cules pueden ser sus caractersticas. Aqu la tarjeta toma un papel regulador para los movimientos: siempre que se decida cambiar un componente del equipo e insertar uno nuevo, hay que asegurarse antes de que la tarjeta madre suministra su conexin y se entiende con l.

44

2. Funcionamiento y Organizacin del Computador


Tarjeta madre y sus mdulos bsicos
Conectores para unidades de disco Ranuras de expansin

Ranuras para mdulos de memoria (RAM)

Chipset Puertos de entradasalida

Zcalo para el

microprocesador
Arquitectura de Computadores y Sistema Operativo

Todas las Tarjetas Madres estn constituidas por los mdulos bsicos que presenta la figura. 9Conectores para unidades de disco 9Ranuras para mdulos de memoria RAM 9Zcalo para el procesador 9Ranuras de expansin 9Chipset 9Puertos de entrada-salida.

45

2. Funcionamiento y Organizacin del Computador


Tarjeta madre y sus componentes
9 9 9 9 9 9 9 9 9 9 9

Zcalo del procesador. Reloj. Buses. El juego de chips (chipset). Regulador de Voltaje. La BIOS, LA CMOS, y la pila del sistema. Los zcalos de la RAM. Los conmutadores manuales o jumpers. Disipador de calor. Conectores internos. Conectores externos.
Arquitectura de Computadores y Sistema Operativo

Componentes que se integran en la Tarjeta Madre. Zcalo del procesador: espacio fsico de la placa reservado para insertar el microprocesador. Las placas con mltiples zcalos tienen especial inters en el segmento de PC dedicado a sistemas de tipo servidor. Estos modelos permiten albergar a varios procesadores. El rendimiento de estas placas est fuertemente condicionado por aspectos software, fundamentalmente por el sistema operativo utilizado y por la aplicacin a ejecutar en el equipo. Reloj: diminuto dispositivo de cuarzo que proporciona una seal de onda cuadrada digital y peridica. Se caracteriza por su frecuencia en Megahercios, parmetro inverso al perodo de la seal. o Este reloj ostenta la funcin de sincronizar las distintas operaciones que se realizan en el computador (clculos, transferencias de informacin, etc.). La frecuencia de funcionamiento de la placa base de los PCs oscila hoy en da en el rango 66-100 MHz. Esta frecuencia se aplica directamente al bus local de la placa, a travs de divisores de frecuencia a los subsistemas ms lentos, y a travs de multiplicadores de frecuencia a los dispositivos ms rpidos, como el microprocesador. Buses: otro de los elementos importantes que vienen implementados en la placa base y que hemos desarrollado con mayor amplitud anteriormente. El juego de chips (chipset): conjunto de circuitos que implementan gran parte de la funcionalidad de comunicacin y control asignada la placa base. Su lgica determina tambin buena parte del rendimiento de la placa, as como la versatilidad en cuanto a la variedad de dispositivos que a ella pueden conectarse. Existe hoy en da tendencia a minimizar el nmero de chips que componen el juego de chips y a integrar en l cada vez ms funciones. Regulador de voltaje: elemento ms voluminoso de la placa base en comparacin con la funcin tan simple que desarrolla, que es la de regular el voltaje de entrada al microprocesador. La BIOS, LA CMOS, y la pila del sistema: programa donde existen las opciones sobre la configuracin del sistema. La CMOS es en donde se almacena la informacin sobre el sistema, y posee una pila que la alimenta cuando se apaga el equipo. Los zcalos de la RAM: Son los conectores donde se introducen los mdulos RAM. Los conmutadores manuales o jumpers: interruptores fsicos cuya posicin se altera manualmente para codificar un estado que determina ciertos aspectos de la configuracin del hardware. Disipador de calor: lmina de aluminio que absorbe el calor que el microprocesador genera. Conectores internos: tomas de corriente continua desde la fuente de alimentacin. Conectores externos: tomas que alimentan a perifricos.

46

2. Funcionamiento y Organizacin del Computador

Tarjeta Madre y su distribucin.


Arquitectura de Computadores y Sistema Operativo

Tarjetas Madres Integradas Las placas incluyen un nmero muy variable de tarjetas integradas: tarjeta grfica, mdem, tarjeta de red, tarjeta de sonido Disponer de una tarjeta integrada significa que no tendremos que adquirirla por separado: tendremos menos lo de cables dentro de la caja, segn casos nos quedarn ms ranuras de expansin libres y el coste total ser menor. No obstante podemos estar interesados en una tarjeta de ms prestaciones que las que nos puedan ofrecer los fabricantes de placas (por ejemplo, un msico que necesite una tarjeta de sonido profesional): en tal caso nos servir una placa que no disponga de tal tarjeta. Tambin es posible habitualmente desactivar una tarjeta integrada (eso se hace entrando en los mens de la BIOS) para utilizar una que hayamos instalado nosotros.

47

2. Funcionamiento y Organizacin del Computador


Tarjeta madre y sus componentes
9 9 9 9 9

Full AT Baby AT LPX ATX NLX

Arquitectura de Computadores y Sistema Operativo

Las Tarjetas Madres vienen en varios formatos: Full AT, Baby AT, LPX, ATX, NLX. Full AT:Es llamada as porque es igual al diseo de la tarjeta madre IBM AT original. Esto permite a tarjetas de hasta 12 pulgadas de ancho y 13.8 pulgadas de profundidad. El conector de teclado y los conectores de los slots deben estar colocados en los lugares especificados por los requerimientos para que correspondan con los agujeros en el case o gabinete. Baby AT: Es una versin mas pequea de los AT, generalmente de 9 pulgadas de ancho y 10 pulgadas de alto, que apareci en 1989. En este tipo de tarjeta madre el microprocesador est colocado en la parte de enfrente de la tarjeta madre, de tal manera que si se quiere quitar el microprocesador es necesario quitar algunas tarjetas, otro de los inconvenientes que posee es que para enfriar el microprocesador se necesita un ventilador en el microprocesador. Otra diferencia es que incluye un conector para voltajes de solo 12v y 5 v. Algunos diseos baby AT permiten instalar tarjetas madre AT o ATX. No todos los AT y los Baby AT usan el estndar del conector DIN de 5 pines para el teclado. Este es el formato mas popular y que se encuentra en la mayora de computadoras ya que es muy flexible. LPX:Este formato fue muy utilizado y es una variante especializada de un baby AT con un bajo perfil, fue desarrollado por Western Digital para computadoras de escritorio para que no ocupen mucho espacio. Este tipo de factor generalmente se encuentra en las computadoras Compaq, Hewlett Packard, Digital, Packard Bell, y algunos fabricantes de tarjetas madre. Se encuentra en computadoras con case Slim, que es un gabinete de escritorio delgado, lo que caracteriza este tipo de formato es que las tarjetas estn montadas en un rise card en el centro de la tarjeta. Los inconvenientes que presenta este tipo de tarjetas madre es que al estar el rise card al centro de la tarjeta evita el flujo de aire y requiere mayor ventilacin, es difcil quitar la tarjeta madre y en algunos casos es necesario comprar solo del fabricante ya que cada quien soluciona el problema a su manera.

48

2. Funcionamiento y Organizacin del Computador

Tarjeta Madre para Pentium 4.


Arquitectura de Computadores y Sistema Operativo

ATX: La especificacin oficial ATX fue presentada por Intel en Julio de 1995 pero aparece en 1996 es una reciente evolucin en lo que a tarjetas madre se refiere y se espera que sea el estndar el tamao y la forma son completamente diferentes al AT. El tamao es generalmente 12 pulgadas de ancho y 9.6 pulgadas de alto, esto deja colocar 1 slot AGP, 2 PCI, 1 PCI o ISA y 3 slots ISA, tambin existe la versin mini-ATX que tiene un tamao de pulgadas por 9.6 de largo lo que permite colocar 1 slot AGP, 2 PCI, 1 PCI o ISA. Debido a que una ATX es esencialmente una baby AT girada 90 grados, este giro permite actualizar fcilmente el microprocesador, sin tener que quitar ninguna tarjeta, el ventilador de la fuente de alimentacin queda cerca del microprocesador y permite un mejor enfriamiento. Entre sus caractersticas y beneficios principales se puede mencionar. Doble alto flexible panel de entrada/salida que permite alta integracin. Sistemas de bajo costo, Pocos cables, Mejora la confiabilidad, Menor tiempo de ensamblado, Soporte para conectividad y estndar I/O, tal como USB, TV in/out, ISDN, etc. ,Permite integrar grficos y uso de frame buffer architecture. NLX: Aparece en1997 diseado por Intel en colaboracin por IBM, es un diseo nuevo de tarjeta madre que incluye: Soporte para las nuevas tecnologas tales como AGP, USB Las mejoras y ventajas del ATX los conectores del puerto serie, paralelo, teclado, ratn etc. estn colocados en la parte posterior de la tarjeta madre. Permitir fcil acceso a los componentes. Est diseado para facilitar el mantenimiento tpicamente de 8.8 por 13 pulgadas. Tiene un conector tipo Riser en el lateral de la Placa Base donde se conecta una tarjeta con los slots de expansin. De esta forma las tarjetas quedan paralelas a la Placa Base

49

2. Funcionamiento y Organizacin del Computador

Tarjeta Madre KT8 Neo.


Arquitectura de Computadores y Sistema Operativo

Entre los principales fabricantes de Placas Madre se cuenta: Soyo, Intel, Asus, Pcchips

50

2. Funcionamiento y Organizacin del Computador

Placa madre para Athlon64 con sistema OTES.


Arquitectura de Computadores y Sistema Operativo

51

2. Funcionamiento y Organizacin del Computador


Conector PS/2 ratn Puerto Paralelo Puerto de Juegos

Conectores de Audio

Conector PS/2 Teclado

Puerto USB Puertos Seriales Conectores y puertos.


Arquitectura de Computadores y Sistema Operativo

52

2. Funcionamiento y Organizacin del Computador


Conector para CDROM o DVD Conector para Disco Duro

Conector para Disquete

Conectores y puertos.
Arquitectura de Computadores y Sistema Operativo

53

2. Funcionamiento y Organizacin del Computador


Chipset de VIA

Chipset Intel

Chipset de Sis

Chipset.
Arquitectura de Computadores y Sistema Operativo

54

2. Funcionamiento y Organizacin del Computador

Ranura AGP Ranura CNR

Ranura PCI Ranuras de expansin.


Arquitectura de Computadores y Sistema Operativo

Ranuras de Expansin PCI y AGP: las tarjetas madres permiten que el computador pueda ampliarse si es as lo requerido en un momento, ya que contienen slots o ranuras de expansin. Hay que fijarse en cuatro tipos de ranuras de expansin en las tarjetas: AGP, PCI, ISA-16 y CNR.

55

2. Funcionamiento y Organizacin del Computador

Conectores Sata

Tarjeta Madre Intel para doble microprocesador de la Familia Xeon

Arquitectura de Computadores y Sistema Operativo

Otras caractersticas especiales de las tarjetas madres modernas tienen que ver con otras prestaciones que hacen de los computadores mquinas mucho ms poderosas y flexibles. A algunas se les puede conectar ms de un procesador, como se ve en la figura la placa posee dos zcalos y se puede conectar en ella dos microprocesadores. Estas placas madres son destinadas a servidores para red. Hay otras Tajetas madre que possen puertos FireWire. Es comn tambin que los fabricantes coloquen conectores para discos duros tipo S-ATA (IDE serial) y existen tarjetas capaces de manejar sus discos duros en configuraciones redundantes, conocidas como RAID (comn en servidores empresariales). Todas estas caractersticas es de esperarse que los haga mucho ms costosos, ya que es tecnologa que aumentan notablemente el rendimiento de los equipos.

56

2. Funcionamiento y Organizacin del Computador

Procesadores y su capacidad de bus.


Arquitectura de Computadores y Sistema Operativo

La tabla muestra alguno de los diferentes procesadores que ha habido hasta y su capacidad de bus

57

2. Funcionamiento y Organizacin del Computador


Bus PCI Interconexin de componente perifrico Ancho de banda elevado. Independiente del procesador. Se puede utilizar como bus de perifricos o bus Para arquitectura de entreplanta. Proporciona mejores prestaciones para los subsistemas de E/S de alta velocidad(adaptadores de pantalla grfica, los controladores de interfaz de red, los controladores de disco).

Arquitectura de Computadores y Sistema Operativo

Este modelo que hoy en da rige en los ordenadores convencionales, y es el ms extendido de todos, lo invent Intel y significa: interconexin de los componentes perifricos. Con la llegada de este nuevo bus automatizado en todos sus procesos el usuario ya no se tendr que preocupar ms de controlar las direcciones de las tarjetas o de otorgar interrupciones. Integra control propio de todo el relacionado con l: DMA, interrupciones, direccionamiento de datos. Es independiente de la CPU, puesto que entre estos dos dispositivos siempre habr un controlador del bus PCI, y da la posibilidad de poder instalarlo a sistemas no basados en procesadores Intel. Las tarjetas de expansin se pueden acoplar a cualquier sistema, y pueden ser intercambiadas como se quiera, tan solo los controladores de los dispositivos tienen que ser ajustados al sistema anfitrin (host), es decir a la correspondiente CPU. PCI es la eliminacin de un paso al microprocesador; en vez de disponer de su propio reloj, el bus se adapta al empleado por el microprocesador y su circuitera, por lo tanto los componentes del PCI estn sincronizados con el procesador. El actual PCI opera con una frecuencia de 20 a 33.3MHz. www.hardware12v.com/conocimientospc/42.php

58

2. Funcionamiento y Organizacin del Computador

Ranura AGP Ranura CNR

Ranura PCI Ranuras PCI.


Arquitectura de Computadores y Sistema Operativo

59

2. Funcionamiento y Organizacin del Computador


Elementos para el funcionamiento bsico de la tarjeta madre.

Tarjeta Madre

Arquitectura de Computadores y Sistema Operativo

Importancia de la Memoria Desde los primeros computadores personales que se usa memoria interna. Son elementos indispensables para que funcione el sistema y se produzca el procesamiento de datos. Un PC puede funcionar aunque no tenga tarjeta de sonido, lector de CD-ROM, incluso sin disco duro. Para que la tarjeta madre pueda trabajar en forma bsica (adems de los voltajes de alimentacin) requiere de procesador, memoria, tarjeta de video y teclado. Haciendo un poco de historia, cuando IBM lanz al mercado su PC-XT utiliz memoria que consista en numerosos circuitos integrados, cada uno de los cuales se pona en un zcalo insertdo en la tarjeta madre con una capacidad cada chip de entre 16 y 256 kilobits ( de 2 a 32 KB) para reunir la mxima cantidad de RAM que manejaba el PC-XT (640 KB), era necesario colocar aprox. 24 chips individuales. Con la plataforma AT, surgi la opcin de colocar hasta 16 MB de RAM. Entonces en vez de usar chip individuales se unieron todos y se pusieron en mdulos de memoria, los SIP empaque de hilera sencilla. Con el uso de estos mdulos de memoria, los chips de RAM se soldaron en una pequea tarjeta de circuito impreso con un peine de 30 terminales. Estos mdulos slo podan manejar una palabra de 8 bits. Como el 286 ya tena un bus externo de 16 bits, era necesario colocar los mdulos en parejas idnticas.

60

3. Memoria

Chips individuales.

SIMM de 30 terminales.

Arquitectura de Computadores y Sistema Operativo

Qu son los SIMMs y los DIMMs? Se trata de la forma en que se juntan los chips de memoria, del tipo que sean, para conectarse a la placa base del computador. Son unas plaquitas alargadas con conectores en un extremo; al conjunto se le llama mdulo. El nmero de conectores depende del bus de datos del microprocesador. SIMMs Con los procesadores tipo 386, que manejaba palabras de 32 bits, la cantidad de memoria RAM tpica era de entre 4 y 8 MB. Ya no era razonable utilizar mdulos de 256 KB de RAM. Debido a que los SIP se daaban fcilmente al insertarlos en los zcalos, en los equipos nuevos se utiliz otro tipo de mdulo: el SIMM, idntico al SIP, manejaba palabras de 8 bits, pero no tena la hilera de terminales. Se cre un nuevo conector que lo aceptara. Vea la segunda figura. Miden unos 8,5 cm (30 c.) 10,5 cm (72 c.) y sus zcalos suelen ser de color blanco. El SIMM tena una capacidad de entre 1 y 4 MB. Un sistema tipico de computadores tipo 386, traa 4 MB de RAM, por ello, era necesario colocar cuatro mdulos de 1 MB. Luego surgi otro mdulo de memoria RAM, el SIMM de 72 terminales o pines, poda manejar palabras de 32 bits. Entonces era posible colocar un solo mdulo de RAM. Venan con capacidad de 4, 8, 16 y hasta 32 MB. Como a las tarjetas madres se colocaban normalmente cuatro ranuras para la memoria RAM, a un sistema 486 se le poda colocar un mximo de 128 MB.

61

3. Memoria

DIMM 168 pines.

Arquitectura de Computadores y Sistema Operativo

DIMMs Con la aparicin de los buses externos de 64 bits, la memoria tuvo que transformarse para poder manejar tal cantidad de bits, aparecen los mdulos tipo DIMM, o mdulos de memoria de hilera doble. Estos mdulos cuentan con 168 terminales y trabajan directamente con palabras de 64 bits. La forma ms comn de instalar memoria en un sistema es un DIMM. Los DIMMs son ms alargados (unos 13 cm), y se insertan en zcalos generalmente negros; llevan dos muescas para facilitar su correcta colocacin. Ppueden usarse de 1 en 1 en los Pentium, K6 y superiores. Existen para voltaje estndar (5 voltios) o reducido (3.3 V).

62

3. Memoria

Concepto lgico de la memoria.

Arquitectura de Computadores y Sistema Operativo

Adaptado desde www.uca.es/dept/leng_sist_informaticos/preal/23013/apuntes/introinf/introinf Sabemos que la Unidad Central de Procesos, se compone de la Memoria o registros, la Unidad de Control y la Unidad Aritmtico/Lgica. La Memoria Principal est formada por circuitos integrados (chips), en ellos la informacin se almacena en estados de tensin (+5 V) al que hacemos corresponder un uno, y no tensin (0 V) al que le corresponde un cero, por tanto el sistema de almacenamiento slo posee dos posibles valores y por ello se denomina binario. sta es por lo tanto la menor cantidad de informacin que podemos almacenar en un ordenador, y se denomina bit (o cero o uno), y al conjunto de ocho bits se le denomina Byte u Octeto. Podemos imaginar la memoria como un conjunto de casillas, cada una con una direccin que la identifica, donde se almacenan los datos y las instrucciones correspondientes a los programas. Para conocer la ubicacin de cada dato estas casillas deben estar convenientemente numeradas, es lo que se denomina direccin de memoria. En cada casilla podremos almacenar una determinada cantidad de bits segn el ordenador, 8bits (1 Byte), 16 bits, 32 bits, El nmero de bits que almacena un computador en cada casilla de la memoria y que puede manipular en cada ciclo se la denomina longitud de palabra. La tabla de la figura muestra, a modo de ejemplo, varias posiciones de memoria en un ordenador cuya longitud de palabra es de 8 bits, por tanto en cada direccin de memoria se almacena 1 Byte. La cantidad de Bytes que se pueden almacenar en la memoria de un ordenador es bastante elevada y por ello se utilizan prefijos, as 1 KiloByte o KB corresponde a 210 = 1024 Bytes (y no 1000 KB), 1 MegaByte o MB = 1024 KB, 1 GigaByte o GB = 1024 MB, 1 TeraByte o TB = 1024 GB.

63

3. Memoria

Arquitectura de Computadores y Sistema Operativo

La memoria se comunica con el resto de la CPU mediante los Buses. Ya se han visto las tres categoras de buses: Bus de datos por donde circulan los datos, el Bus de direcciones encargado de indicar la posicin de un dato concreto almacenado en memoria, y el Bus de control por donde circulan las instrucciones de los procesos que lleva a cabo el computador. Para localizar un dato en la memoria principal, la direccin que ocupa ste debe circular por el bus de direcciones. Segn cual sea la amplitud del bus de direcciones y la longitud de palabra, as ser el tamao de la memoria que puede gestionar el computador. Es decir, el nmero de casillas o direcciones de memoria que pueden ser indicadas y el tamao de la informacin que contienen. Para un bus de direcciones de 8 bits el computador podr gestionar 28 = 256 posiciones de memoria y en cada una de ellas podremos almacenar 8 bits si esta es la longitud de palabra de ese computador. La figura muestra la memoria de un ordenador con una longitud de palabra de 8 bits y un bus de direcciones tambin de 8 bits. Deberan existir 28 = 256 casillas - desde la 00000000 hasta la 11111111 (en lenguaje binario), cada una conteniendo un dato de 8 bits de tamao, en total 256 x 8 = 2048 bits o 256 Bytes. Los datos contenidos en las casillas de memoria no tienen evidentemente ninguna relacin con la direccin de estas, ya que van variando conforme se ejecuta el programa o se producen entradas de nuevos datos. Se puede escribir M = 2 D * P , siendo D la amplitud del bus de direcciones, P la longitud de palabra del ordenador y M la memoria en bits.

64

3. Memoria

Tipos de memorias
RAM
Memoria de Acceso Aleatorio

ROM
Memoria de Slo Lectura

Permiten lectura y escritura Memoria Voltil Memoria de Trabajo

Permiten slo lectura y escritura Memoria no Voltil Memoria programada de fbrica

Arquitectura de Computadores y Sistema Operativo

Existen dos tipos de memoria en el computador. RAM (Random Access Memory, Memoria de Acceso Aleatorio): que es la encargada de almacenar los datos y los programas que la CPU est procesando de manera temporal. El trmino acceso aleatorio significa que no es necesario leer una serie de datos para acceder al que interesa, sino que se puede acceder directamente al dato deseado. El microprocesador o CPU de la computadora, hace uso de esta memoria para cargar los programas que se van a ejecutar al igual que los datos que se van a procesar. Por medio de la RAM, las operaciones se hacen ms rpidas ya que su velocidad de trabajo es alta, as se logra que el computador tenga un mejor desempeo. En esta memoria tambin se carga o almacena el sistema operativo durante la inicializacin de la mquina y permanece all hasta que el computador se desenergiza, por este motivo se le llama tambin memoria de trabajo. Con esto queda claro que esta memoria depende del suministro de tensin elctrica para mantener la informacin y por tanto al apagar el computador o reiniciarlo los datos almacenados en l se perdern completamente. De all que se le dice memoria voltil, o sea de almacenamiento temporal. Fsicamente, estn constituidas por un conjunto de chips o mdulos de chips normalmente conectados a la tarjeta madre. Los chips de memoria son rectngulos negros que suelen ir soldados en grupos a unas plaquitas con "pines" o contactos. Las tecnologas de RAM se dividen en dos variantes: estticas y dinmicas. ROM (Read Only Memory, Memoria de Slo Lectura): la memoria ROM es un tipo de memoria en la que sus datos slo pueden leerse, ya que no permite la escritura de nueva informacin por los mtodos tradicionales usados por el computador. Se utiliza en aquellos sistemas donde los datos son siempre los mismos durante las veces que se tenga acceso a la memoria. El trmino memoria de slo lectura, significa que no puede ser modificada y aun cuando se apague el computador la informacin permanecer inalterada en la ROM. Los circuitos de memoria ROM de los computadores suelen venir en forma de DIP (Dual In-line Package) o empaquetamiento de doble lnea, generalmente vienen programados de fbrica. En los computadores, la BIOS (Basic Input and Output System) o programa bsico de entradas y salidas viene almacenado en memoria ROM. Tambin se encuentran en esta memoria el test de fiabilidad del computador (POST: Power on Self Test), las rutinas de inicializacin y arranque, que proporcionan los servicios fundamentales para que el computador sea operativo, en su mayor parte controla perifricos como la pantalla, el teclado y las unidades de disco. Existe otra porcin de memoria denominada CMOS que contiene datos bsicos de ste, como pueden ser el nmero de unidades de disquetes y su tipo, de discos duros y su tipo, la fecha, la hora y otros datos respecto al comportamiento fundamental del computador. Esta memoria no es de tipo permanente, ya que se puede variar la configuracin de nuestro equipo y para ser mantenida necesita de la tensin que le suministra una pequea pila o batera.

65

3. Memoria

BIOS
Arquitectura de Computadores y Sistema Operativo

BIOS: Tradicionalmente la BIOS vena en una memoria de solo lectura; por eso era muy difcil modificarla, en caso de que apareciera una actualizacin. Pero en tarjetas madres ms modernas, la BIOS viene en una memoria tipo Flash y sta puede actualizarse. Los dos principales fabricantes de BIOS son AMI (American Megatrends Inc.) y Phoenix (que tambin maneja las BIOS Award). En la BIOS se aloja el SETUP, utilera que permite configurar y optimizar el sistema.

66

3. Memoria
Tipos de Memorias RAM

RAM Esttica o SRAM

RAM dinmica o DRAM


Condensador

Flip-flop

Arquitectura de Computadores y Sistema Operativo

RAM Esttica o SRAM: esta clase de memoria no necesita refresco de datos como la RAM dinmica. Cada una de las celdas est constituida por un flip-flop, que permanece indefinidamente en un estado, mientras no se elimine su alimentacin. Esto permite que los datos permanezcan almacenados mientras el circuito tenga alimentacin de voltaje. Debido a que no necesita refresco, la SRAM es mucho ms rpida ya que el microprocesador siempre la encuentra disponible para lectura o escritura de datos. Por su rapidez es ampliamente utilizada en los computadores como memoria intermedia (memoria cach) entre las unidades de almacenamiento y el microprocesador. Por su tecnologa, la memoria esttica es de alto costo por lo que generalmente no es utilizada en grandes cantidades dentro del computador, adems consume ms potencia. RAM Dinmica o DRAM: este tipo de memoria exije que cada cierta cantidad de tiempo se haga refresco de los datos, es decir, peridicamente se le debe recordar o regrabar la informacin que est almacenada. Esta operacin la ejecuta automticamente el controlador de memoria de la tarjeta principal. El refresco se hace necesario debido a que cada bit de informacin est guardado en un pequeo condensador o capacitor, que indica el estado lgico almacenado (1 0) a travs de la carga de voltaje que posea. En este tipo de memorias la carga del condensador, lo cual indica que el bit de informacin corresponde a un 1 lgico, tiende a desaparecer, si se deja pasar cierto tiempo sin renovarla. Para evitar esto, el controlador de memoria de la tarjeta principal est programado para hacer una recarga o refresco del voltaje de los condensadores justo antes de que la informacin se pierda por completo, con lo cual, el dato permanecer almacenado en la memoria durante otro pequeo perodo de tiempo hasta el siguiente ciclo de refresco. Mientras el sistema se encuentra haciendo el refresco a la memoria, el microprocesador no tiene acceso a los datos y debe esperar a que termine la operacin. Por esto, este tipo de memoria es ms lenta que la RAM esttica, pero consume menos potencia. Las RAM dinmicas son ms densas(celdas ms pequeas, es decir, ms celdas por unidad de superficie). Usada hasta la poca del 386, su velocidad tpica es de 80 70 nanosegundos (ns), tiempo ste que tarda en vaciarse para poder dar entrada a la siguiente serie de datos. Por ello, es ms rpida la de 70 ns que la de 80 ns. Fsicamente, aparece en forma de DIMMs o de SIMMs, siendo estos ltimos de 30 contactos.

67

3. Memoria
Tipo RAM EDO-RAM Tipo Computadora Pentium MMX y AMD K6 Cantidad de contactos 72 y 168 pines

SDRAM

Pentium II de menos de 350 168 pines MHz y en los Celeron Pentium II a 350 168 pines

PC100 o SDRAM AMD K6-2, de 100 MHz. MHz PC133 o SDRAM de 133 MHz.

Tipos de Memoria RAM.


Arquitectura de Computadores y Sistema Operativo

EDO RAM (Extended Data Output-RAM: es otro tipo de RAM dinmica. Tiene menor tiempo de acceso debido a que los datos permanecen almacenados durante mayor tiempo antes del nuevo ciclo de refresco. Con esta memoria se puede empezar a introducir nuevos datos mientras los anteriores estn saliendo (haciendo su Output), lo que la hace algo ms rpida (un 5%, ms o menos). Es muy comn en los Pentium MMX y AMD K6, con velocidad de 70, 60 50 ns. Se instala sobre todo en SIMMs de 72 contactos, aunque existe en forma de DIMMs de 168. SDRAM (Syncronous DRAM): Con la salida al mercado de procesadores de gran velocidad, las memorias DRAM y EDO, se volvieron un cuello de botella". La memoria ms eficiente es la que funciona a la misma velocidad que el microprocesador. Las memorias EDO DRAM funcionan a 60, 70 y 80 ns (nano segundos) y eran suficientemente rpidas para alcanzar a los procesadores de 66 MHz, pero stos procesadores ya son obsoletos. Por ste motivo se desarroll el estndar Syncronous DRAM o DRAM Sncrona. SDRAM recibe y emite informacin sincronizada a un reloj externo. El uso de un reloj permite que las SDRAM sean extremadamente ms rpidas para leer y escribir. Funciona de manera sincronizada con la velocidad de la placa (de 50 a 66 MHz), para lo que debe ser rapidsima, de unos 25 a 10 ns. Las memorias SDRAM se miden de acuerdo a la velocidad del reloj externo, por eso se mide su velocidad en MHz. Slo se presenta en forma de DIMMs de 168 contactos; es usada en los Pentium II de menos de 350 MHz y en los Celeron Las PC100 o SDRAM de 100 MHz son memorias capaces de funcionar a esos 100 MHz, que utilizan los AMD K6-2, Pentium II a 350 MHz y computadores ms modernos; tericamente se trata de unas especificaciones mnimas que se deben cumplir para funcionar correctamente a dicha velocidad, aunque no todas las memorias vendidas como "de 100 MHz" las cumplen. Las PC133: o SDRAM de 133 MHz. La ms moderna (y recomendable).

68

3. Memoria
Tipo RAM DDR-SDRAM: Tipo Computadora Cantidad de contactos

Pentium MMX y AMD K6 184 pines AMD Athlon y Duron cuyo bus de 200 MHz realmente es de "100 x 2", "100 MHz 184 pines

-PC2700, DDR SDRAM a 333 Mhz. Mhz. -PC3200, DDR SDRAM a 400 Mhz. Mhz. PC3700, corresponde a la DDR SDRAM a 466 Mhz. Mhz. - PC4000, corresponde a la DDR SDRAM a 500 Mhz. Mhz.
Tipos de Memoria RAM.

Arquitectura de Computadores y Sistema Operativo

DDR-SDRAM: (Doble Data Rate): son una evolucin de los SDRAM, la tecnologa avanza, y la SDRAM, incluso en su versin PC133, ya no est a la altura de micros cuya velocidad se mide ya en GHz. La DDR-SDRAM, puede realizar dos operaciones de lectura o escritura por cada pulso de reloj, ya que enva los datos 2 veces por cada seal de reloj, una vez en cada extremo de la seal (el ascendente y el descendente), en lugar de enviar datos slo en la parte ascendente de la seal, y a diferencia de la SDRAM, trabaja a doble velocidad de transferencia de datos. Se utilizaba en tarjetas grficas y la estandarizacin ha permitido que numerosos fabricantes de Placas Base y de procesadores la hayan elegido en lugar de la ms cara RIMM. Sus velocidades estndar varan entre 200 y 400 Mhz. Segn esta velocidad existen diferentes denominaciones para la DDR SDRAM: -PC1600, corresponde a la DDR SDRAM a 200 Mhz. -PC2100, corresponde a la DDR SDRAM a 266 Mhz. -PC2700, corresponde a la DDR SDRAM a 333 Mhz. -PC3200, corresponde a la DDR SDRAM a 400 Mhz. Dependiendo del fabricante existen DDR SDRAM con denominaciones y velocidades superiores, entre las que destacan: -PC3500, corresponde a la DDR SDRAM a 433 Mhz. - PC3700, corresponde a la DDR SDRAM a 466 Mhz. - PC4000, corresponde a la DDR SDRAM a 500 Mhz. -Los mdulos de las DDR-SDRAM son del mismo tamao que los DIMM de SDRAM, pero con ms conectores, tiene 184 pines en lugar de los 168 de la SDRAM normal. As, un aparato con tecnologa DDR que funcione con una seal de reloj "real", "fsica", de por ejemplo 100 MHz, enviar tantos datos como otro sin tecnologa DDR que funcione a 200 MHz. Por ello, las velocidades de reloj de los aparatos DDR se suelen dar en lo que podramos llamar MHz efectivos o equivalentes (en nuestro ejemplo, 200 MHz, "100 MHz x 2"). La tecnologa DDR est de moda ltimamente. Adems de las numerossimas tarjetas grficas con memoria de vdeo DDR-SDRAM, se tiene por ejemplo los microprocesadores AMD Athlon y Duron, cuyo bus de 200 MHz realmente es de "100 x 2", "100 MHz con doble aprovechamiento de seal"

69

3. Memoria
Tipo RAM RIMM, RDRAM o RAMBUS
-PC800 RDRAM a 800 Mhz. Mhz. -PC1066 RDRAM a 1066 Mhz

Tipo Computadora Pentium IV

Cantidad de contactos 184 pines 184 pines

Tipos de Memoria RAM.

Arquitectura de Computadores y Sistema Operativo

Resumiendo, la DDR-SDRAM es el concepto DDR aplicado a la memoria SDRAM, la SDRAM no es otra que nuestra conocida PC66, PC100 y PC133, la memoria que se utiliza actualmente en casi la totalidad de los PCs normales; los 133 MHz de la PC133 son ya una cosa difcil de superar sin subir mucho los precios, y por ello la introduccin del DDR. Hay memoria DDR de diferentes clases, categoras y precios. Puede funcionar a 100 o 133 MHz (de nuevo, "fsicos"); algo lgico, ya que se trata de SDRAM con DDR, y la SDRAM funciona a 66, 100 133 MHz (no existe DDR a 66 MHz). Si consideramos los MHz "equivalentes", estaramos ante memorias de 200 266 MHz. En el primer caso es capaz de transmitir 1,6 GB/s (1600 MB/s), y en el segundo 2,1 GB/s (2133 MB/s). Se las conoca como PC200 y PC266, siguiendo el sistema de clasificacin por MHz utilizado con la SDRAM. RIMM, RDRAM o RAMBUS: Rambus desarroll la RDRAM. Esta memoria tiene un bus especial que entrega direcciones e informacin de control, utilizando un protocolo asncrono orientado a bloques. Tras un tiempo de acceso inicial de 480ns, se consigue la velociddad de datos de 500 Mbps. Lo que hace posible esta velocidad es el bus en s, que define muy precisamente las impedancias, la temporizacin y las seales. Rambus decidi que sus memorias se llamaran PC600, PC700 y PC800, tambin segn el sistema de los MHz. Como esto hara que parecieran muchsimo ms rpidas que la DDR (algo que no sucede, porque funcionan de una forma completamente distinta), se decidi denominarlas segn su capacidad de transferencia en MB/s: PC1600 y PC2100. Su uso es exclusivo para ordenadores con procesador Pentium IV. Tiene 184 contactos y trabaja a velocidades entre 800 y 1066 MHz. -PC800, corresponde a la RDRAM a 800 Mhz. -PC1066, corresponde a la RDRAM a 1066 Mhz.

70

3. Memoria

Memoria DDR-SDRAM

Arquitectura de Computadores y Sistema Operativo

71

3. Memoria

Los mdulos de Memoria SDRAM, RIMM y DDR no son intercambiables.

Arquitectura de Computadores y Sistema Operativo

72

3. Memoria
Tipos de Memorias ROM

EPROM

EAROM o EEPROM

Arquitectura de Computadores y Sistema Operativo

EPROM (Erasable PROM) o RPROM (Reprogramable ROM): son memorias ROM borrables y programables. Disponen de una ventana en el encapsulado que permite su borrado mediante la aplicacin de luz ultravioleta. El proceso de lectura/escritura est limitado a un determinado nmero de veces. EAROM (Electrically Alterable ROM) o EEROM (Electrically Erasable ROM), son la frontera entre las RAM y las ROM, su contenido puede ser regrabado elctricamente, se diferencian de las RAM en que no son voltiles.

73

3. Memoria

Memoria cach 9 Caractersticas


Dispositivo pequeo de memoria de alta velocidad que interviene entre el procesador y la DRAM. La cach tiene como propsito suministrarle al procesador las instrucciones y datos solicitados con mayor frecuencia. Su objetivo es lograr que la velocidad de la memoria sea lo ms rpida posible. Est ubicada muy cerca del CPU. Su tamao tpico es de 8 KB y 512 KB.
Arquitectura de Computadores y Sistema Operativo

Memoria Cach: La arquitectura de los ltimos microprocesadores est orientada a mejorar el rendimiento, de manera que se ejecuten ms instrucciones por unidad de tiempo. Para llevarlo a cabo los nuevos microprocesadores se apoyan en tres recursos. Arquitectura superescalar: caractersticas de la arquitectura RISC, paralelismo explcito. Supersegmentacin: segmentacin con elevado nmero de etapas. Potenciacin del subsistema de la memoria cach: para aumentar la velocidad de la memoria. Una limitacin en el diseo de computadores es la velocidad de los distintos dispositivos conectados al procesador, en particular la velocidad de la memoria fsica. El procesador puede tener una frecuencia de reloj muy elevada, que le permite ejecutar gran nmero de instrucciones por ciclo, las velocidades de las memorias, de los buses de datos, de los perifricos, etc. hace que el procesador tenga que esperar a tener disponibles los datos necesarios para seguir operando. Memoria cach o conocida como RAM cach. Es un dispositivo pequeo de memoria de alta velocidad que interviene entre la CPU y la DRAM. La memoria cach tiene como propsito suministrarle al procesador las instrucciones y datos solicitados con mayor frecuencia. La memoria cach puede ser de tres a cinco veces ms veloz que la DRAM. La memoria Cach tiene como objetivo lograr que la velocidad de la memoria sea lo ms rpida posible, consiguiendo al mismo tiempo un tamao grande al precio de memorias semiconductoras menos costosas. La emoria cach reside muy cerca de la CPU y tiene un tamao tpico entre 8 KB y 512 KB. Los tiempos de acceso de las memorias cach se encuentran entre los 3 y 10 ns aprox..

74

3. Memoria

Tranferencia de bloques Tranferencia de palabras

CPU

Cach

Memoria Principal

Memoria Cach.

Arquitectura de Computadores y Sistema Operativo

El concepto se ilustra en la figura. Hay una memoria principal relativamente grande y ms lenta, junto con una memoria cach ms pequea y rpida. La cach contiene una copia de partes de la memoria principal. Cuando el procesador intenta leer una palabra de memoria, se hace una comprobacin para determinar si la palabra est en la cach. Si es as, se entrega dicha palabra al procesador. Si no, un bloque de memoria principal, consistente en un cierto nmero de palabras, se transfiere a la cach y, despus, la palabra es entregada al procesador. Debido al fenmeno de localidad de las referencias, cuando un bloque de datos es captado por la cach para satisfacer una referencia a memoria simple, es probable que se hagan referencias futuras a otras palabras del mismo bloque.

75

3. Memoria 9 Niveles de Jerarqua


Cach de nivel 1, cach L1 o cach primaria Cach integrada en la CPU. Es la memoria ms rpida de un computador, suele funcionar a la misma velocidad que el microprocesador, Es de poco tamao.

Arquitectura de Computadores y Sistema Operativo

Niveles de jerarqua: Para mejorar el rendimiento se emplea la jerarqua de memoria, utilizando cachs de primer nivel, segundo nivel que se denominan cach L1, cach L2, etc., respectivamente. Cach de nivel 1, cach L1, cach primaria: Es una memoria cach integrada en la CPU. Es la memoria ms rpida de un computador, suele funcionar a la misma velocidad que el microprocesador, por lo general es de poco tamao. Se utiliza desde el microprocesador Intel 80846, que incorporaba 8 KB.

76

3. Memoria 9 Niveles de Jerarqua


Cach de nivel 2, cach L2 o cach secundaria Ms lenta que la L1 y de mayor tamao. Almacenar los datos e instrucciones muy usados recientemente, pero que no han sido guardados por la cach L1. Est integrada tanto en la placa madre como en la CPU.

Arquitectura de Computadores y Sistema Operativo

Cach de nivel 2, cach L2, cach secundaria: Es un poco ms lenta que la L1 y de mayor tamao. Se encarga, generalmente de almacenar los datos e instrucciones muy usados recientemente, pero que no han sido guardados por la cach L1. Se encuentra integrada tanto en la placa madre como en la CPU. En este caso, se la sigue considerando diferente a la L1, ya que permanecen separadas. Contiene todo lo de la L1 ms los datos propios de sus algoritmos de carga especficos.

77

3. Memoria 9 Niveles de Jerarqua


Cach de nivel 3, cach L3 En el Itanium, la jerarqua de niveles ya llega a tres, para lo cual se destinan 300 millones de transistores para los niveles de cach y 25 millones de transistores para la CPU.

Arquitectura de Computadores y Sistema Operativo

Cach de nivel 3, cach L3: Como muchos microprocesadores integran parte de la cach L2 en la CPU, a la parte que permanece en la placa base a menudo se la llama as. En la actualidad, en el Itanium, la jerarqua de niveles ya llega a tres, para lo cual se destinan 300 millones de transistores para los niveles de cach y 25 millones de transistores para la CPU.

78

4. Entrada/Salida

Arquitectura de Computadores y Sistema Operativo

79

4. Entrada/Salida

Mdulos de Entrada/Salida
Funciones M Mdulo E/S

Interfaz entre la CPU y la Memoria.

Interfaz entre uno o m s dispositivos perif perifricos.

Arquitectura de Computadores y Sistema Operativo

Junto con el procesador y el conjunto de mdulos de memoria, el tercer elemento clave de un computador es un conjunto de Mdulos de E/S. Cada mdulo se conecta al bus del sistema o a un conmutador central, y controla uno o ms dispositivos perifricos. Un mdulo de E/S tiene cierta inteligencia, lo que quiere decir que tiene la lgica necesaria para permitir la comunicacin entre el perifrico y el bus. La arquitectura de E/S del computador es su interfaz con el exterior. Esta arquitectura se disea de manera que permita una forma sistemtica de controlar las interacciones con el mundo exterior y proporcione al sistema operativo la informacin que necesita para gestionar eficazmente la actividad de E/S. Este Mdulo de E/S tiene dos Funciones: Realizar la Interfaz entre el procesador y la memoria a travs del bus del sistema o un conmutador central. Realizar la Interfaz entre uno o ms dispositivos perifricos mediante enlaces de datos especficos.

80

4. Entrada/Salida

Problemas con Entrada/Salida 9 Amplia variedad de perifricos.


Entregan distintas volmenes de datos. A velocidades de transferencia diferentes. En diferentes formatos.

9 Son ms lentos que la CPU y la Memoria. 9 Necesitan mdulos.

Arquitectura de Computadores y Sistema Operativo

Por qu los perifricos no se conectan directamente al bus del sistema? Hay una amplia variedad de perifricos y su funcionamiento es diferente entre s. Entregan distintas volmenes de datos, a velocidades de transferencia diferentes, en diferentes formatos. Podra ser imposible incorporar la lgica necesaria dentro del procesador para controlar tal diversidad de dispositivos. Estos perifricos son ms lentos que la CPU y la Memoria, no es prctico utilizar un bus del sistema de alta velocidad para comunicarse directamente con un perifrico. Debido a esto se necesita un Mdulos de E/S

81

4. Entrada/Salida

Modelo genrico de un mdulo E/S


Lneas de direccin Lneas de Control Lneas de Datos Bus del Sistema

Mdulo de E/S

Enlaces con dispositivos perifricos


Arquitectura de Computadores y Sistema Operativo

82

4. Entrada/Salida

Dispositivos externos 9 Interaccin con humanos.


Pantalla, Impresora, teclado.

9 Interaccin con mquinas.


Monitoreo y control.

9 Comunicacin.
Mdem Tarjeta de red, Network Interface card (NIC)
Arquitectura de Computadores y Sistema Operativo

Las operaciones de E/S se realizan a travs de una amplia gama de dispositivos, que permiten intercambiar datos entre el exterior y el computador. Un dispositivo externo se conecta al computador mediante un enlace a un mdulo de E/S. El enlace se utiliza para intercambiar seales de control, estado y datos entre el mdulo de E/S y el dispositivo externo. Un dispositivo externo conectado a un mdulo de E/S se denomina dispositivo perifrico, o simplemente perifrico. Los dispositivos externos se pueden clasificar en tres categoras. De interaccin con humanos: permiten la comunicacin con el usuario del computador. De interaccin con mquinas: permiten la comunicacin con elementos del equipo. De Comunicacin: permiten la comunicacin con dispositivos remotos.

83

4. Entrada/Salida

Pasos de mdulo E/S

9 CPU chequea el estado del dispositivo


conectado al mdulo E/S. 9 El mdulo E/S retorna el estado. 9 Si est listo, CPU solicita la transferencia de datos. 9 El mdulo E/S obtiene el dato del dispositivo. 9 El mdulo E/S transfiere los datos a la CPU.

Arquitectura de Computadores y Sistema Operativo

1. 2. 3. 4. 5.

Pasos del Mdulo E/S: El procesador interroga al mdulo E/S para comprobar el estado del dispositivo conectado al mismo. El mdulo de E/S devuelve el estado del dispoitivo. Si el dispositivo est operativo y preparado para transmtir, el procesador solicita transferencia del dato mediante una orden al mdulo de E/S. El mdulo de E/S obtiene un dato del dispositivo externo. Los datos se transfieren desde el mdulo de E/S al procesador.

84

4. Entrada/Salida

Funcin del mdulo E/S 9 Control y Temporizacin. 9 Comunicacin con la CPU. 9 Comunicacin con los dispositivos. 9 Almacenamiento temporal de datos. 9 Deteccin de errores.

Arquitectura de Computadores y Sistema Operativo

Las principales funciones y requisitos de un mdulo de E/S se encuentran dentro de las siguientes categoras: Control y Temporizacin: En cualquier momento el procesador puede comunicarse con uno o ms dispositivos externos en cualquier orden, segn la necesidad de E/S del programa. Los recursos internos, memoria principal y el bus del sistema, deben compartirse entre distintas actividades, incluyendo la E/S de datos. As, la funcin de E/S incluye ciertos requisitos de control y temporizacin, para coordinar el trfico entre los recursos internos y los dispositivos externos. Comunicacin con la CPU: El mdulo de E/S debe tener la capacidad de entablar comunicacin con el procesador. La comunicacin con el procesador implica: decodificacin de rdenes, datos, informacin de estado, reconocimiento de direccin (igual que cada palabra de memoria tiene una direccin, cada dispositivo tiene otra, as un mdulo de E/S reconoce una nica direccin para cada uno de los perifricos que controla). Comunicacin con los dispositivos: Esta comunicacin implica intecambiar rdenes, informacin del estado y datos. Almacenamiento temporal de datos: Esta es una tarea esencial para un mdulo de E/S... Deteccin de errores: A menudo un Mdulo de E/S es responsable de la deteccin de errores y de informar estos errores al procesador, por ejemplo los defectos mecnicos y elctricos en el funcionamiento del dispositivo (papel atascado, pista de disco en mal estado) o los errores producidos por los cambios accidentales en los bits al transmitirse desde el dispositivo al mdulo de E/S. Para detectar este tipo de errores, frecuentemente se usa algn tipo de cdigo de deteccin de errores.

85

4. Entrada/Salida

Interfaz al Bus del Sistema

Diagrama de bloque de un mdulo de E/S


Interfaz a Disp. Externo

Registro de datos Lneas de Datos

Registro de Estado/Control

Lgica de interfaz a dispositivo externo

Datos Estado Control

Datos Lneas de Direccin Lneas de Control . Lgica de E/S Lgica de interfaz a dispositivo externo Estado Control

Arquitectura de Computadores y Sistema Operativo

El mdulo se conecta al resto del computador a travs de un conjunto de lneas. Los datos que se transfieren a y desde el mdulo se almacenan temporalmente en uno o ms registros de datos. Puede haber uno o ms registros de estado que proporcionan informacin del estado presente. Un registro de estado tambin puede funcionar como un registro de control, para recibir informacin de control del procesador. La lgica que hay en el mdulo interacta con el procesador a travs de una serie de lneas de control. Estas lneas son las que usa el procesador para proporcionar las rdenes al mdulo de E/S. Algunas de las lneas de control pueden ser utilizadas por el mdulo de E/S (para seales de arbitraje y estado). El mdulo debe ser capaz de reconocer y generar las direcciones asociadas a los dispositivos que controla. Cada mdulo de E/S tiene una direcin nica o, si controla ms de un dispositivo externo, un conjunto nico de direcciones. El mdulo de E/S posee la lgica especfica para la interfaz con cada uno de los dispositivos que controla. El funcionamiento de un mdulo de E/S permite que el procesador vea a una amplia gama de dispositivos de una forma simplificada y que ante un espectro de posibilidades que pueden darse, el mdulo de E/S debe ocultar los detalles de temporizacin, formatos y electromecnica de los dispositivos externos, para que el procesador funcione en trminos de rdenes de lectura y escritura.

86

4. Entrada/Salida

Tcnicas de Entrada/Salida 9 Programada. 9 Mediante Interrupciones. 9 Acceso Directo a Memoria (DMA).

Arquitectura de Computadores y Sistema Operativo

Hay tres tcnicas de E/S principales: E/S Programada: la E/S se produce bajo el control directo y continuo del programa que solicita la operacin de E/S. E/S Mediante Interrupciones: el programa genera una orden de E/S y despus cotina ejecutndose hasta que el hardware de E/S lo interrumpe para indicar que la operacin de E/S ha concluido. Acceso Directo a Memoria (DMA): un procesador de E/S especfico toma el control de la operacin de E/S para transferir un gran bloque de datos.

87

4. Entrada/Salida

E/S programada 9 CPU tiene control directo sobre E/S.


Chequea los estados. Controla Lectura/Escritura. Transferencia de datos.

9 CPU espera hasta que el mdulo de E/S


complete su operacin. 9 Existe desperdicio de tiempo de CPU.

Arquitectura de Computadores y Sistema Operativo

Los datos se intercambian entre el CPU y el mdulo de E/S. El CPU ejecuta un programa que controla directamente la operacin de E/S, incluyendo la comprobacin del estado del dispositivo, el envo de la orden de lectura o escritura y la transferencia del dato. Cuando el CPU enva la orden debe esperar hasta que la operacin de E/S concluya. Si el CPU es ms rpido, ste estar ocioso. El CPU es el responsable de comprobar peridicamente el estado del mdulo de E/S hasta que encuentre que la operacin ha finalizado.

88

4. Entrada/Salida

E/S programada

Mandar orden de lectura al Mdulo de E/S

CPU

E/S

.
Leer el estado del Mdulo E/S No preparado Comprobar el estado Preparado Leer una palabra del Mdulo E/S E/S CPU Condicin de error E/S CPU

Escribir una palabra en memoria

CPU

Memoria

No

Final? S

Instruccin siguiente

Arquitectura de Computadores y Sistema Operativo

89

4. Entrada/Salida

E/S programada detalle 9 CPU solicita una operacin de E/S. 9 El mdulo de E/S realiza la operacin. 9 El mdulo de E/S setea los bits de status. 9 CPU chequea los bits de estado peridicamente.

Arquitectura de Computadores y Sistema Operativo

90

4. Entrada/Salida

E/S programada detalle 9 El mdulo de E/S no informa a CPU directamente. 9 El mdulo de E/S no interrumpe a la CPU. 9 CPU puede esperar o solicitar ms tarde.

Arquitectura de Computadores y Sistema Operativo

91

4. Entrada/Salida

E/S programada rdenes de E/S 9 CPU proporciona una direccin


Especifica el mdulo.

9 CPU especifica rdenes.


Control- indican al mdulo qu debe hacer. Test-chequea el estado. Lectura/Escritura.

Arquitectura de Computadores y Sistema Operativo

Como normalmente habr muchos dispositivos de E/S conectados al sistema a travs de los mdulos de E/S, cada dispositivo tendr asociado un identificador o direccin. Al ejecutar una instruccin relacionada con una E/S, el procesador proporciona una direccin, especificando el mdulo de E/S particular y el dispositivo externo, y una orden de E/S. Hay cuatro tipo de rdenes de E/S que puede recibir un mdulo de E/S cuando es direccionado por el procesador: Control: se utiliza para activar el perifrico e indicarle qu hacer. Test: se utiliza para comprobar diversas condiciones de estado asociadas con el mdulo de E/S y sus perifricos. El procesador podr comprobar si el perifrico en cuestin est conectado y disponible para su uso. Tambin podr saber si la operacin de E/S ms reciente ha terminado si se ha producido algn error. Lectura: hace que el mdulo de E/S capte un dato de un perifrico y lo site en un buffer interno. Despus el procesador puede obtener el dato solicitando que el mdulo de E/S lo ponga en el bus de datos. Escritura: hace que el mdulo de E/S capte un dato (byte o palabra) del bus de datos y posteriormente lo transmita al perifrico.

92

4. Entrada/Salida

E/S programada correspondencia E/S 9 E/S asignado en memoria.


Dispositivos y la memoria comparten un espacio de direcciones. E/S se asemeja a una operacin de Lectura/Escritura de memoria. No existen rdenes especiales para E/S. Hay disponible una gran cantidad de comandos de acceso a memoria.

Arquitectura de Computadores y Sistema Operativo

En la E/S programada, hay una estrecha correspondencia entre las instrucciones de E/S que el procesador capta de memoria y las rdenes de E/S que la CPU enva a un mdulo de E/S al ejecutar las instrucciones. Es decir, las instrucciones se pueden hacer corresponder fcilmente con las rdenes de E/S, y a menudo hay una simple relacin uno a uno. La forma de la instruccin depende de la manera de direccionar los dispositivos externos. Cuando el procesador, la memoria principal y las E/S comparten un bus comn, son posibles dos modos de direccionamiento: asignado en memoria y aislado. Con las E/S asignadas en memoria, existe un nico espacio de direcciones para las posiciones de memoria y los dispositivos de E/S. La CPU considera los registros de estado y de datos de los mdulos de E/S como posiciones de memoria, y usa las mismas instrucciones mquina para acceder tanto a memoria como a los dispositivos de E/S. Ejemplo, con 10 lneas de direccin se puede acceder a un total de 1024 posiciones de memoria y direcciones de E/S, en cualquier combinacin. Con las E/S asignadas en memoria, se necesita una sola lnea de lectura y una sola lnea de escritura en el bus. Aternativamente, el bus puede disponer de lneas de lectura y escritura en memoria junto con lneas para rdenes de entrada y salida. En este caso, las lneas de rdenes especifican si la direccin se refiere a una posicin de memoria o a un dispositivo de E/S. El rango completo de direcciones est disponible para ambos. De nuevo, con 10 lneas de direccin, el sistema puede soportar ahora 1024 posiciones de memoria y 1024 direcciones de E/S. Puesto que el espacio de direcciones de E/S est aislado del de memoria, ste se conoce con el nombre de E/S aislada.

93

4. Entrada/Salida

E/S programada correspondencia E/S 9 E/S aislada


Espacios de direcciones separadas. Necesidad de E/S o de lneas de memoria. Existen comandos especiales para E/S. Conjunto limitado.

Arquitectura de Computadores y Sistema Operativo

Con E/S aislada, los puertos de E/S slo son accesibles mediante una orden especfica de E/S, que activa las lneas de rdenes de E/S del bus. La mayor parte de los procesadores disponen de un conjunto relativamente grande de instrucciones distintas para acceder a memoria. Si se utiliza E/S aislada, slo existen unas pocas instrucciones de E/S. Por eso, una ventaja de la E/S asignada en memoria es que se puede utilizar este amplio repertorio de instrucciones, permitiendo una programacin ms efieciente. Una desventaja es que se usa parte del valioso espacio de direcciones de memoria. Tanto la E/S asignada en memoria como la aislada se usan comnmente.

94

4. Entrada/Salida

E/S mediante interrupcin 9 Evita las esperas realizadas por la CPU. 9 La CPU no realiza chequeos repetitivos del estado de cada dispositivo. 9 Un mdulo de E/S realiza una interrupcin cuando est listo.

Arquitectura de Computadores y Sistema Operativo

El problema con la E/S programada es que el procesador tiene que esperar un tiempo considerable a que el mdulo de E/S en cuestin est preparado para recibir o transmitir los datos. El procesador, mientras tiene que esperar, debe comprobar repetidamente el estado del mdulo de E/S, esto degrada el nivel de prestaciones de todo el sistema. Una alternativa consiste en que el procesador, tras enviar una orden de E/S a un mdulo, contine realizando algn trabajo til. Despus el mdulo de E/S interrumpir al procesador para solicitar su servicio cuando est preparado para intercambiar datos con l. El procesador ejecuta la transferencia de datos como antes, y despus contina con el trabajo que estaba realizando previamente.

95

4. Entrada/Salida

E/S mediante interrupciones

Mandar orden de lectura al Mdulo de E/S

CPU

I/O Hacer otra cosa

.
Leer el estado del Mdulo E/S Interrupcin E/S CPU

Comprobar el estado Preparado Leer una palabra del Mdulo E/S E/S

Condicin de error

CPU

Escribir una palabra en memoria

CPU

Memoria

No

Final? S

Instruccin siguiente

Arquitectura de Computadores y Sistema Operativo

96

4. Entrada/Salida

E/S mediante interrupciones operacin bsica 9 CPU enva una orden de E/S. 9 El mdulo E/S obtiene datos desde un perifrico mientras la CPU realiza otro trabajo. 9 El mdulo E/S interrumpe a la CPU. 9 CPU solicita los datos. 9 El mdulo E/S transfiere los datos.

Arquitectura de Computadores y Sistema Operativo

Cmo funciona?

Desde el punto de vista del mdulo de E/S. Para una entrada, el mdulo de E/S recibe una orden READ del procesador. El mdulo de E/S, procede a leer el dato desde el perifrico asociado. Una vez que el dato est en el registro de datos del mdulo, ste enva una interrupcn al procesador a travs de una lnea de control. Despus el mdulo espera hasta que el procesador solicite su dato. Cuando ha recibido la solicitud, el mdulo sita su dato en el bus de datos y pasa a estar preparado para otra operacin de E/S.

97

4. Entrada/Salida

E/S Mediante interrupciones perspectiva de la CPU

9 CPU enva una orden READ de lectura. 9 Pasa a realizar otro trabajo. 9 Chequea en busca de interrupciones al
final de cada ciclo de instruccin. 9 Si es interrumpida:
Guarda el contexto (registros) Procesa la interrupcin, capta datos y los almacena.
Arquitectura de Computadores y Sistema Operativo

Desde el punto de vista del procesador, las acciones para una entrada son las siguientes: El procesador enva una orden READ de lectura. Luego pasa a realizar otro trabajo. Al final de cada ciclo de instruccin, el procesador comprueba las interrupciones. Cuando se pide la interrupcin desde el mdulo de E/S, el procesador guarda el contexto del programa en curso, y procesa la interrupcin. En este caso, el procesador lee la palabra de datos del mdulo de E/S y la almacena en memoria. Despus, recupera el contexto del programa que estaba ejecutando y contina su ejecucin. La E/S con interrupciones es ms eficiente que la E/S programada, porque elimina las esperas innecesarias. Pero, las E/S con interrupciones consumen gran cantidad del tiempo del procesador, puesto que cada palabra de datos que va desde la memoria al mdulo de E/S, o viceversa, debe pasar a travs del procesador.

98

4. Entrada/Salida

E/S mediante interrupciones identificacin del mdulo que realiza la interrupcin(1)

9 Mltiples lneas de interrupcin.


PC Limitado al nmero de dispositivos

9 Consulta software (Software polling).


CPU consulta o pregunta a cada mdulo Lento

Arquitectura de Computadores y Sistema Operativo

En la implementacin de la E/S mediante interrupciones, aparecen dos cuestiones. Puesto que invariablemente habr mltiples mdulos de E/S cmo determina el procesador qu dispositivo ha provocado la interrupcin? Y si se han producido varias interrupciones cmo decide el procesador a cul debe atender? Para identificar el dispositivo hay cuatro tipos de tcnicas que se utilizan comnmente: Mltiples lneas de interrupcin, Consulta software, Conexin en cadena, Arbitraje de bus. La tcnica de mltiples lneas de interrupcin, proporciona varias lneas de interrupcin entre el procesador y los mdulos de E/S. Pero, no es prctico dedicar ms de unas pocas lneas del bus o terminales del procesador a lneas de interrupcin. Por tanto, incluso si se utilizan varias lneas, es probable que a cada una se conecten varios mdulos de E/S. Por eso, se debe usar alguna de las otras tres tcnicas en cada lnea. Una alternativa es la consulta software (software poolling). Cuando el procesador detecta una interrupcin, se produce una bifurcacin a una rutina de servicio de interrupcin que se encarga de consultar a cada mdulo de E/S para determinar el mdulo que ha provocado la interrupcin. Una vez identificado el mdulo, se produce una bifurcacin para que el procesador ejecute la rutina de servicio especfica para ese dispositivo. La desventaja de la consulta software est en el tiempo que consume.

99

4. Entrada/Salida

E/S mediante interrupciones identificacin del mdulo que realiza la interrupcin(2)

9 Conexin en cadena o Hardware


polling.
Reconocimiento de interrupcin es enviado al final de la cadena. El mdulo es responsable de colocar un vector en el bus CPU usa un vector para identificar la rutina de servicio

Arquitectura de Computadores y Sistema Operativo

Una tcnica ms eficiente es la conexin en cadena (consulta hardware, vectorizada) de los mdulos de E/S, que proporciona, una consulta hardware. Todos los mdulos de E/S comparten una lnea comn para solicitar interrupciones. La lnea de reconocimiento de interrupcin se conecta encadenando los mdulos uno tras otro. Cuando el procesador recibe una interrupcin, activa el reconocimiento de interrupcin. Esta seal se propaga a travs de la secuencia de mdulos de E/S hasta que alcanza un mdulo que solicit interrupcin. Normalmente este mdulo responde colocando una palabra en las lneas de datos. Esta palabra se denomina vector y es la direccin del mdulo de E/S o algn otro tipo de identificador especfico. El procesador usa el vector como un puntero a la rutina de servicio de dispositivo apropiada. As se evita ejecutar una rutina de servicio general en primer lugar. Esta tcnica se conoce con el nombre de interrupciones vectorizadas. Otra tcnica que usa las interrupciones vectorizadas es la de arbitraje de bus (vectorizada). Con el arbitraje de bus, un mdulo de E/S debe, disponer del control del bus antes de poder activar la lnea de peticin de interrupcin. As, slo un mdulo puede activar la lnea en un instante. Cuando el procesador detecta la interrupcin, responde mediante la lnea de reconocimiento de interrupcin. Despus, el mdulo que solicit la interrupcin sita su vector en las lneas de datos. Las tcnicas vistas sirven para identificar el mdulo de E/S que solicita interrupcin. Proporcionan una forma de asignar prioridades cuando ms de un dispositivo est pidiendo que se sirva su interrupcin. Con varias lneas de interrupcin, el procesador selecciona la lnea con ms prioridad. Con la consulta software, el orden en el que se cosultan los mdulos determina su prioridad. De igual forma, el orden de los mdulos en la conexin en cadena determina su prioridad.

100

4. Entrada/Salida

E/S mediante interrupciones identificacin del mdulo que realiza la interrupcin(2)

9 Arbitraje de Bus
El mdulo debe pedir el bus antes de que pueda liberar la interrupcin Ejemplo PCI&SCSI

Arquitectura de Computadores y Sistema Operativo

101

4. Entrada/Salida

Acceso directo a memoria (DMA) 9 Tanto la E/S Programada como la E/S Mediante Interrupciones requieren la intervencin activa de la CPU.
La transferencia de datos est limitada. CPU est atada.

9 DMA ofrece una respuesta.

Arquitectura de Computadores y Sistema Operativo

La E/S con interrupciones, aunque ms eficiente que la E/S programada, tambin requiere la intervencin activa del procesador para transferir datos entre la memoria y el mdulo de E/S, y cualquier transferencia de datos debe seguir un camino a travs del procesador. Qu sucede con la E/S con interrupciones cuando se trabaja con dispositivos de E/S ms veloces? Habra una ocurrencia muy seguida de interrupciones y se estara desperdiciando mucho tiempo. Para evitar esto, se utiliza DMA para dispositivos de E/S de alta velocidad. Transfiere un bloque de datos desde o para sus buffers de almacenamiento a memoria directamente sin intervencin del CPU. Slo se produce una interrupcin por bloque en lugar de tener una interrupcin por cada byte (o palabra). El DMA requiere un mdulo adicional en el bus del sistema. El mdulo de DMA es capaz de imitar al procesador, y de hecho, es capaz de recibir el control del sistema cedido por el procesador. Necesita dicho control para transferir datos a, y desde, memoria a travs del bus del sistema. Para hacerlo, el mdulo DMA debe usar el bus slo cuando el procesador no lo necesita, o debe forzar al procesador a que suspenda temporalmente su funcionamiento. Esta tcnica es la ms comn y se denomina robo de ciclo, puesto que el mdulo de DMA roba un ciclo de bus.

102

4. Entrada/Salida

Acceso directo a memoria


Mandar orden de lectura De bloque al Mdulo DMA CPU DMA

Hacer otra cosa

Interrupcin Leer el estado del Mdulo DMA DMA CPU

Instruccin siguiente

Arquitectura de Computadores y Sistema Operativo

103

4. Entrada/Salida

Acceso directo a memoria operacin DMA 9 CPU indica al mdulo de DMA:


Lectura/Escritura. Direccin del dispositivo. Posicin inicial de memoria a partir de donde se lee o escribe. Cantidad de datos a ser transferidos.

Arquitectura de Computadores y Sistema Operativo

Cuando el procesador desea leer o escribir un bloque de datos, enva una orden al mdulo de DMA, incluyendo la siguiente informacin. Si se solicita una lectura o una escritura, utilizando la lnea de control de lectura o escritura entre el procesador y el mdulo de DMA. La direccin del dispositivo de E/S en cuestin, indicada a travs de las lneas de datos. La posicin inicial de memoria a partir de donde se lee o se escribe, indicada a travs de las lneas de datos y almacenada por el mdulo de DMA en su registro de direcciones. El nmero de palabras a leer o escribir, tambin indicado a travs de las lneas de datos y almacenado en el registro de cuenta de datos. Despus el procesador contina con otro trabajo. Ha delegado la operacin de E/S al mdulo de DMA, que se encargar de ella. El mdulo de DMA transfiere el bloque completo de datos, palabra a palabra, directamente desde, o hacia, la memoria, sin que tenga que pasar a travs del procesador. Cuando la transferencia se ha terminado, el mdulo de DMA enva una seal de interrupcin al procesador. As el procesador slo interviene al comienzo y al final de la transferencia.

104

4. Entrada/Salida

Acceso directo a memoria operacin DMA 9 CPU contina con otro trabajo. 9 El mdulo de DMA contina con la transferencia. 9 El mdulo de DMA enva interrumpe al terminar.

Arquitectura de Computadores y Sistema Operativo

105

4. Entrada/Salida

Acceso directo a memoria transferencia de DMA Robo de Ciclo

9 El mdulo DMA controla al bus durante un


ciclo. 9 Ocurre la transferencia de una palabra de datos. 9 No ocurre una interrupcin.
CPU no altera el contexto

Arquitectura de Computadores y Sistema Operativo

El procesador se detiene justo antes de necesitar el bus. Despus, el mdulo de DMA transfiere una palabra y devuelve el control al procesador. No ocurre interrupcin, el procesador no guarda el contexto ni hace nada ms. En cambio, el procesador espera durante un ciclo de bus. El efecto resultante es que el procesador es ms lento ejecutando los programas. No obstante, para una transferencia de E/S de varias palabras el DMA es mucho ms eficiente que la E/S mediante interrupciones o la programada. El controlador de DMA es un circuito integrado dedicado que puede enviar y recibir datos ms rpido que el microprocesador. Luego, dispositivos como discos pticos y magnticos utilizan este integrado para acceder a la memoria del sistema.

106

4. Entrada/Salida

Acceso directo a memoria transferencia de DMA Robo de Ciclo

9 La CPU es suspendida antes de acceder al


bus.
Antes de captar de un dato u operando o de alguna escritura.

9 Disminuye el desempeo de la CPU, pero


no mucho ms que cuando la CPU efecta una transferencia.

Arquitectura de Computadores y Sistema Operativo

107

5.1 Mquina de Princeton y Mquina de Harvard 5.2 Procesadores y Controladores

Arquitectura de Computadores y Sistema Operativo

108

5.1 Mquina de Princeton y Mquina de Harvard

Mquina de Von Neumann


Bus Comn de Direcciones CPU 8 Bus de Datos e Instrucciones

MEMORIA

Instrucciones + datos

Visin general de la Arquitectura de Von Neumann.


Arquitectura de Computadores y Sistema Operativo

Mquinas de Princeton o de Von Neumann La idea fundamental de Neumann, como ya se vi en la primera presentacin, es que en la memoria coexistieran datos con instrucciones, para que la computadora pudiera ser programada a travs de esos datos y no por medio de alambre que elctricamente programaban las operaciones de la computadora. Idea conocida como concepto del programa-almacenado. En efecto, en la arquitectura de Von Neumann la CPU se conecta con una nica memoria donde se almacenan datos e instrucciones a travs de un sistema de buses. Este es el modelo de la estructura de los computadores actuales. Los elementos esenciales son memoria y un procesador. La memoria es el lugar de almacenamiento donde se guardan instrucciones y datos de los programas que se estn ejecutando en un momento dado; esto significa que una palabra puede ser un dato o una instruccin. El procesador es un intrprete de un juego de instrucciones, sus funciones son: A) Extraer la instruccin de memoria y decodificarla. B) Ejecutar la instruccin. C) Localizar la siguiente instruccin para volver al primer paso. Este proceso continuar constantemente y de esta forma el ordenador podr ejecutar cualquier tipo de programa por grande que fuese su complejidad. Evidentemente el procesador debera llevar algn tipo de memoria interna con el fin de contener la informacin sobre los sucesivos estados por los que tiene que pasar para ejecutar cada una de las instrucciones (tambin contendr informacin sobre la siguiente instruccin a ejecutar). Recuerde el El Ciclo de Instruccin Bsico, visto con anterioridad. En la prctica esa memoria interna se materializa en los registros de la CPU, y as pues la mayora de los computadores actuales siguen los mismos patrones que Von Neumann aunque se ha progresado mucho ms en todos los aspectos.

109

5.1 Mquina de Princeton y Mquina de Harvard

Mquina de Von Neumann


CPU Mdulo de E/S

Unidad de Control

Entrada
Memoria RAM

Salida

ALU

Bloques Funcionales.
Arquitectura de Computadores y Sistema Operativo

Las unidades funcionales de los computadores actuales tienen los mismos bloques que los diseados por Neumann; a esos bloques ahora se les llama BLOQUES FUNCIONALES tal como se esquematiza en la figura

110

5.1 Mquina de Princeton y Mquina de Harvard

Mquina de Von Neumann


Unidad de Control Seales de control
MAR Memoria E/S

Circuito de control IR

Control E/S

Perifrco Perifrco
. . .

Clculos de Memoria
MB

Perifrco

ALU Registros Circuito Aritmticos y lgicos


Detalle de las Unidades Funcionales.
Arquitectura de Computadores y Sistema Operativo

La figura presenta con ms detalle la estructura interna de cada una de las unidades funcionales: Los registros ms importantes son: Contador de Programa (PC). Registro de Instruccin (IR). Los registros para el uso del programador: que se han ubicado en la ALU y que puede tener diferentes estructuras segn cual sea la organizacin interna del procesador. El registro de direccin de memoria (MAR). El Buffer de memoria MB o MDR.

111

5.1 Mquina de Princeton y Mquina de Harvard

Mquina de Harvard
Bus de Direccin de Instrucciones Bus Direccin de Datos

MEMORIA DE INSTRUCCIONES

10 CPU 14
Bus de Instrucciones

MEMORIA DE DATOS

1 K x 14

8
Bus de Datos

512 x 8

Visin general de la Arquitectura Harvard.


Arquitectura de Computadores y Sistema Operativo

Mquinas de Harvard En la arquitectura de Harvard son independientes la memoria de instrucciones y la memoria de datos. Teniendo cada una de estas memorias su propio sistema de buses para el acceso. El disponer de dos memorias independientes propicia el paralelismo, lo cual permite que se acceda en forma simultnea a datos y a instruciones, permite adems la adecuacin del tamao de las palabras y los buses a los requerimientos especficos de las instrucciones y de los datos. Adems la capacidad de las memorias es diferente. La figura muestra un procesador conectado a dos memoria, la memoria de instrucciones de 1 K posiciones de 14 bits cada una, la memoria de datos slo dispone de 512 posiciones de un byte. El alto rendimiento y elevada velocidad que alcanzan los procesadores modernos, como es el caso de los microcontroladores PIC, se debe a la utilizacin en conjunto de Arquitectura Harvard Arquitectura RISC y Segmentacin.

112

5.1 Mquina de Princeton y Mquina de Harvard


Arquitectura Von Neumann
Los datos e instrucciones en una sola memoria de lectura/escritura. La memoria se direcciona indicando su posicin. La ejecucin se hace instruccin tras instruccin.

V/S

Arquitectura Harvard
Datos e instrucciones se en memorias separadas.

Se acceden simultneamente datos e instrucciones. Es ms costosa porque se necesitan dos memorias.

Arquitectura de Computadores y Sistema Operativo

Arquitectura de Von Neumann: Los datos y las instrucciones se almacenan en una sola memoria de lectura/escritura. Los contenidos de esta memoria se direccionan indicando su posicin, sin considerar el tipo de dato contenido en la misma. La ejecucin se produce siguiendo una secuencia de instruccin tras instruccin (a no ser que dicha secuencia se modifique explcitamente) Arquitectura de Harvard: Datos e instrucciones se encuentran almacenadas en memorias separadas Permite mayor rendimiento, porque se pueden acceder simultneamente datos e instrucciones. Es mucho ms costosa porque se necesitan dos memorias

113

5.2 Procesadores y Controladores

Arquitectura de Computadores y Sistema Operativo

Procesadores Bsicamente existen dos tipos de estructura de procesador, que constituyen hoy en da la diversidad de chips en el mercado (el caso ms claro y con ms xito es el de AMD e Intel). De una parte tenemos microprocesadores RISC los cuales se basan en instrucciones simples y por lo tanto la complejidad total de la CPU es menor. Algunos ejemplos son: Power PC Motorola SPARC, la mayora son utilizados en empresas por su rendimiento y fiabilidad. Por otro lado, los microprocesadores CISC (Complex-Instruction-Set-Computing) contienen instrucciones complejas, ocupan ms tamao, dedicando ms tiempo por instruccin con menos instrucciones. Algunos ejemplos son: Pentium, Cyrix y AMD. Comparacin Cuando se ejecuta un programa difcil, o extenso, los CISC son ms rpidos y eficaces que los RISC. En cambio cuando tenemos en ejecucin un conjunto de instrucciones sencillas, cortas y simples, tenemos que los RISC son ms rpidos. Estas desigualdades tambin se dan entre los diferentes modelos y marcas de los dos tipos de procesadores.

114

5.2 Procesadores y Controladores

Evolucin tecnolgica de los procesadores

Arquitectura de Computadores y Sistema Operativo

Evolucin tecnolgica de los procesadores El microprocesador es el cerebro del computador. Es el encargado de realizar todos los clculos y procesamientos del sistema. Como se ha visto anteriormente, la tecnologa fsica del procesador ha avanzado paralelamente con la de construccin de circuitos integrados (IC) lo que ha significado unas dimensiones fsicas cada vez ms pequeas y un menor consumo. La evolucin de ambos parmetros no solo ha permitido incrementar la densidad de integracin, tambin la velocidad (frecuencia de funcionamiento). Si nos referimos a la familia Intel, de los 2.100 transistores del 4004 en 1970, que con solo 46 instrucciones funcionaba a unos 800 KHz, se pas a los 29.000 transistores del 8086 en 1979 a 14 MHz; y en 1999 a los 8.200.000 transistores del Pentium III a 2 GHz. Actualmente se trabaja en el lmite de la resolucin ptica de los dispositivos utilizados en su construccin (se usan tcnicas fotogrficas con longitudes de onda cada vez menores para la luz utilizada), y debido a la altsima frecuencia de funcionamiento, los conductores internos funcionan ms como guas de onda que como conductores elctricos convencionales. Adems, las dimensiones fsicas del propio dispositivo estn tericamente limitadas si se desea que todos sus elementos funcionen segn un mismo patrn de tiempo (cosa que es imprescindible). Para dar una idea de las formidables dificultades tcnicas que han debido resolver los diseos actuales, considere que a la velocidad del Pentium III, las seales elctricas solo recorren 15 centmetros en cada ciclo de reloj.

115

5.2 Procesadores y Controladores

Evolucin tecnolgica de los procesadores

Arquitectura de Computadores y Sistema Operativo

116

5.2 Procesadores y Controladores

Estructura de los procesadores 9 Unidad de Control. 9 ALU (Unidad Aritmtico Lgica). 9 Registros. 9 Interconexiones CPU.

Arquitectura de Computadores y Sistema Operativo

La estructura del procesador Unidad de Control ALU Registros Interconexiones

117

5.2 Procesadores y Controladores

Arquitectura bsica de los procesadores


Microprocesadores

Arquitectura Von Neumann

Arquitectura Harvard

Arquitectura de Computadores y Sistema Operativo

Arquitectura bsica Segn la arquitectura bsica el procesador puede seguir las especificaciones de Von Neumann o Harvard.

118

5.2 Procesadores y Controladores

Tipos de arquitectura

Microprocesadores

CISC

RISC

Arquitectura de Computadores y Sistema Operativo

Tipos de arquitectura Una de las primeras decisiones a la hora de disear un procesador es decidir cual ser su juego de instrucciones. (rdenes) Este conjunto de instrucciones

es el lenguaje que realmente entiende el procesador, y constituye lo que se conoce como lenguaje ensamblador o lenguaje-mquina. La decisin es trascendente, por dos razones. 1. 2. El juego de instrucciones decide el diseo fsico del conjunto. Cualquier operacin que deba ejecutarse con el procesador deber poder ser descrita en trminos de este "lenguaje" elemental (los compiladores e intrpretes son en realidad traductores desde el lenguaje de alto nivel (fuente) a este lenguaje-mquina). Frente a esto hay dos filosofas de diseo. La primera conduce a mquinas denominadas CISC ("Complex Instruction Set Computer"); las mquinas construidas segn el otro criterio se denominan RISC ("Reduced Instruction Set Computer").

119

5.2 Procesadores y Controladores

Tipos de arquitectura
CISC
Utiliza instrucciones muy complejas El lenguaje debe contener un amplio surtido de ellas. Son instrucciones complejas, por tanto de ejecucin lenta. Para un trabajo especfico se requieren pocas instrucciones.

RISC
Utiliza instrucciones muy simples El lenguaje contiene un conjunto pequeo de instrucciones. Las instrucciones son muy simples, por tanto de ejecucin rpida. Para cualquier operacin se requieren varias instrucciones elementales.
Arquitectura de Computadores y Sistema Operativo

Las mquinas CISC utilizan instrucciones muy complejas, muy descriptivas y especficas, lo que se traduce en varias consecuencias: El lenguaje debe contener un amplio surtido de ellas (una para cada circunstancia distinta). Son instrucciones complejas, por tanto de ejecucin lenta. La circuitera del procesador tambin es compleja. Para un trabajo especfico se requieren pocas instrucciones (siempre hay una que resuelve el problema). Las mquinas RISC representan el enfoque opuesto. Utilizan instrucciones muy simples, que deben ser cuidadosamente escogidas, porque cualquier operacin debe ser expresada como una secuencia de estas pocas instrucciones. Las consecuencias son justamente opuestas a las anteriores: El lenguaje contiene un conjunto pequeo de instrucciones. Las instrucciones son muy simples, por tanto de ejecucin rpida. La circuitera es ms simple que en los procesadores CISC. Para cualquier operacin se requieren varias instrucciones elementales. Cada criterio tiene sus pros y sus contra en lo que a rendimiento se refiere. En las mquinas CISC, lentitud de cada instruccin frente a poca cantidad de ellas; en las RISC, rapidez individual aunque hay que ejecutar un mayor nmero. La diferencia prctica entre CISC y RISC es que los procesadores CISCx86 corren a DOS, Windows 3.1 y Windows 95 en el modo nativo, es decir, sin la traduccin de software que disminuya el desempeo

120

5.2 Procesadores y Controladores

Caractersticas distintivas entre procesadores 9 Tamao o Anchura de los Buses

Arquitectura de Computadores y Sistema Operativo

Caractersticas distintivas
Existen varias caractersticas diferenciadoras de los procesadores. Dos de los parmetros importantes en cuanto a especificacin son la anchura y velocidad.

9 Tamao o anchura de los buses.


La forma ms comn de describir un microprocesador es indicando la velocidad y el ancho de su bus externo de datos. Esto determina la capacidad que tiene el procesador de enviar y recibir informacin. Volviendo al ejemplo de las autopistas, si una autopista tiene un carril por cada sentido, un auto puede pasar en una direccin. Suponiendo que un chip de 8 bits es una autopista de un solo carril, un solo byte circula por ella a la vez, en un chip de 16 bits dos bytes pueden circular, en una de 32 bits, 4 y una de 64, 8 bytes de una sola pasada. -Los registros internos (bus de datos interno): El tamao de los registros internos indica la cantidad de informacin sobre la cual puede operar el procesador al mismo tiempo, adems determina cmo transfiere los datos dentro del chip. (8088 16; 80386 y siguientes 32 bits). Vea la figura. Anchura del bus de datos (8088 8; 80286 16; 80486 32; Pentium 64 bits) Vea la figura. -Bus de direcciones: determina la capacidad de manejar memoria, como ya se ha visto en clases anteriores, ste bus es el que transporta la informacin de direccionamiento usada para describir la ubicacin de memoria a la cual se est enviando informacin, o aquella de donde se est obteniendo. Anchura del bus de direcciones: (8088 20; 80286 24; 80486 32 y Pentium 32 bits).

121

5.2 Procesadores y Controladores 9 Tamao o anchura de los buses

Arquitectura de Computadores y Sistema Operativo

122

5.2 Procesadores y Controladores 9 Velocidad


Procesador
8086 y 8088 80286 y 80386 80486 Pentium y AMD serie K6

Ciclos por Instruccin


12 4.5 2 12

Pentium Pro, Pentium II en adelante, Por Por encima de 3 Celer Celern, Athlon y Duron: Duron: Pueden ejecutar por por encima de 3

Arquitectura de Computadores y Sistema Operativo

9Velocidad
No Hay un estndar para medirla, uno de los pocos datos objetivos es la frecuencia a que funciona y se mide en megaherz, mientras ms rpido mejor, aunque existen otros muchos factores, tales como el nmero de instrucciones que es capaz de ejecutar en cada ciclo (arquitectura sper escalar), los juegos de instrucciones para aplicaciones especficas como la tecnologas MMX, las extensiones SIMD o 3DNow, la ejecucin dinmica, arquitectura de bus independiente, etc. -Tiempos medios por instruccin 8086 y 8088: Les toma un promedio de 12 ciclos para ejecutar una instruccin. 80286 y 80386: Un promedio de 4.5 ciclos por instruccin (el 80386 fue el primer de ordenador personal en implementar arquitectura de ejecucin paralela). 80486: Media de 2 ciclos por instruccin. Pentium y AMD serie K6: Incluyen canales dobles para instrucciones y otras mejoras que les permiten una o 2 instrucciones por ciclo. Pentium Pro, Pentium II en adelante, Celeron, Athlon y Duron: Pueden ejecutar por encima de 3 instrucciones por ciclo de reloj. A partir del Intel 80486 los procesadores funcionan a una velocidad mayor que lo que pueden hacer los circuitos y buses de la tarjeta madre (bus externo). La situacin actual es que las velocidades tpicas de las tarjeta madre son de 60- 66100- 133 MHz mientras que los procesadores funcionan a frecuencias mltiplos de aquellas; tpicamente de 1x hasta 10x, es decir, desde 60 a 1330 MHz. Dado que el procesador est conectado con el bus externo, es fcil comprender que en su interior existan buses que trabajan a distintas velocidades. Para distinguirlos es frecuente referirse a la velocidad del bus ms rpido como velocidad del ncleo y a la del bus que conecta con el bus externo como velocidad del bus frontal ("Front-side bus"). procesador

123

5.2 Procesadores y Controladores 9 Tecnologa del procesador

MMX (MultiMedia Extensions) : Introducida por Intel. Mejora la manipulacin de imgenes y tratamiento de codecs de audio/video. Extensiones SIMD (Streaming Extensions): Introducida por Decodificacin de MPEG2. SIMD Intel.

3DNow: Introducida por AMD. Mejoran las capacidades multimedia.

Arquitectura de Computadores y Sistema Operativo

Durante la fabricacin del procesador se prueba a diferentes velocidades, temperaturas y presiones. Despus de esa fase se le pone el sello con la velocidad mxima a la cual puede funcionar de forma segura. El multiplicador de un procesador se puede cambiar por medio de jumpers en la tarjeta madre, en los ms modernos en la propia BIOS. 9Tecnologa del Procesador MMX La tecnologa MMX ("MultiMedia eXtensions") fue introducida en 1.996 por Intel en sus procesadores Pentium. MMX comprende instrucciones muy optimizadas orientadas a la programacin multimedia. Mejora la manipulacin de imgenes y tratamiento de codecs de audio/video, mediante un conjunto de 57 nuevas instrucciones, as como una nueva capacidad denominada SIMD ("Single Instrucction Multiple Data"). -Extensiones SIMD Con la aparicin del Pentium III en 1.999 se introdujeron nuevas mejoras en la tecnologa MMX, introduciendo 70 nuevas instrucciones denominadas SSE ("Streaming SIMD Extensions") o KNI ("Katmai News Instrucctions") puesto que Katmai que era el nombre clave del Pentium III antes de su lanzamiento. Las instrucciones SSE son especialmente adecuadas para decodificacin de MPEG2, que es el codec utilizado normalmente en los DVDs, procesamiento de grficos tridimensionales y software de reconocimiento de voz. -3DNow La tecnologa 3DNow es la respuesta AMD a las SSE de Intel. Se introdujo por primera vez en 1.998 en la serie K6 de procesadores, y son un conjunto de 21 instrucciones que mejoran las capacidades multimedia de estos procesadores. Enhanced 3DNow aade otras 24 nuevas instrucciones a las anteriores.

124

5.2 Procesadores y Controladores 9 Tecnologa del procesador

Arquitectura DIB: El procesador dispone de dos buses exteriores que pueden funcionar en forma simultnea e independientemente.El principal es el que comunica con el bus de la tarjeta madre (bus del sistema); el segundo (bus de apoyo), comunica el procesador con la cache L-2.

Arquitectura de Computadores y Sistema Operativo

-Arquitectura DIB La arquitectura de bus dual independiente DIB ("Dual Independent Bus") consiste en que el procesador dispone de dos buses exteriores que pueden funcionar simultanea e independientemente. El principal es el que comunica con el bus de la tarjeta madre (bus del sistema); el segundo (bus de apoyo), comunica el procesador con la cache L-2. Para sacar pleno rendimiento de este segundo bus, se sac esta cach de la tarjeta madre y se la acerc al procesador, permitiendo que funcionase a la misma velocidad que el ncleo (la cach L-1 siempre ha estado incluida en el procesador). -Sobrecarga La Sobrecarga ("Overclocking") consiste en aumentar la eficiencia del procesador aumentando su velocidad de trabajo (frecuencia) por encima de la prevista por el fabricante. Aspectos relativos al marcaje de la velocidad de los procesadores por los fabricantes; remarcado y mercado negro de procesadores; limitacin de la velocidad por el fabricante. Nota: La compaa Intel proporciona gratuitamente un software especial, denominado Processor Frequency ID Utility http://support.intel.com/support/processors/tools/frequencyid/ que permite a los usuarios determinar si un determinado procesador Intel est operando a la frecuencia correcta. Adems permite identificar el tipo de procesador utilizado en el sistema y algunas de sus caractersticas como tipo y tamao de cach; encapsulado y tecnologa (MMX y SMID). El programa existe en dos versiones. Una de ellas corre bajo Windows, la otra, denominada "bootable", no necesita un Sistema Operativo instalado para correr; puede instalarse en un disquete y arranca antes que el SO.

125

5.2 Procesadores y Controladores 9 Encapsulado del procesador


Existen varios tipos de encapsulado:
DIP "Dual In-line Package". El 8088 40 pines. PGA Pin Grid Array". A partir de la introduccin del 80286. Existen muchas versiones: Socket 1, 169 pines; Socket 2, 238 p; Socket 3, etc. SE "Single Edge". Ranura 1 cartuchos SEC (Single Edge Card) y SEP (Single Edge Connector) de 242 pines. Ranura 2 con 330 pines. Servidores y sistemas de altas prestaciones con Pentium Xeon.
Arquitectura de Computadores y Sistema Operativo

9Encapsulados
Concepto: Relacin con el tipo de zcalo. Existen varios tipos de encapsulado: -DIP "Dual In-line Package". El 8088 estaba encapsulado en un DIP de 40 pines. -PGA Pin Grid Array". Se utiliza a partir de la introduccin de 80286 en 1.982. Existen muchas versiones: Socket 1 169 (LIF, ZIF) pines; Socket 2, 238 (LIF, ZIF) p; Socket 3, 237 (LIF, ZIF) p; Socket 4, 273 (LIF, ZIF) p; Socket 5, 296 (LIF, ZIF), 320 (LIF, ZIF) p; Socket 6, 235 (ZIF) p ; Socket 7, 296 (LIF) , 321 (ZIF) p y Socket 8, 387 (LIF, ZIF) p. -SE "Single Edge".
Ranura 1(slot 1) cartuchos SEC (Single Edge Card) y SEP (Single Edge Connector) de 242 pines. Ranura 2 (slot 2) con 330 pines. Servidores y sistemas de altas prestaciones con Pentium Xeon Los Zcalos de patillas planas y torneadas; origen de los zcalos LIF y ZIF. Se requieren unas 100 libras de fuerza para insertar un procesador de 169 pines en un zcalo estndar (unos 45 Kg). Se disearon los zcalos LIF ("Low Insertion Force, fuerza de insercin baja) que limitaban a 60 libras (unos 27 Kg), y los ZIF ("Zero Insertion Force) que no requieren ninguna fuerza para su insercin o retirada. Los zcalos VLIF (Very Low Insertion Force) requieren una muy baja fuerza de insercin, por ejemplo elzcalo del microprocesador Itanium2 . Celeron: este circuito Intel viene en un encapsulado de 478 pines. Pentium 4: utiliza un encapsulado de 478 pines, que se conecta a un socket 478. Duron: microprocesador de AMD viene en un encapsulado de 462 pines, para colocarse en un conector llamado Socket-A. Athlon: microprocesador de AMD cuyo esempeo ha llegado a superar al Pentium 4, y a un precio bastante menor. Viene en un encapsulado de 462 pines, requiere un Socket-A. Athlon 64: utiliza un nuevo encapsulado de 754 terminales, requiere un Socket-754. Opteron y Athlon 64FX usan un encapsulado de 940 terminales, requiere un Socket-940. C3: Es el nico microprocesador que VIA-Cyrix produce, por ahora, utiliza un encapsulado de 370 terminales que se conecta a un Socket 370.

126

5.2 Procesadores y Controladores


Tipos de Sockets
SOCKET 370

SOCKET A

SOCKET 478

SOCKET 754

Arquitectura de Computadores y Sistema Operativo

Socket 370, 370 pines, Socket 478, 478 pines, Socket 754, 754 pines, Socket A 462 pines

127

5.2 Procesadores y Controladores


PENTIUM PRO PENTIUM II para computador de escritorio y porttil

PENTIUM III

CELERON

Arquitectura de Computadores y Sistema Operativo

El Pentium HT, considerado como una variante del Pentium 4, es un circuito ideal para aplicaciones que requieren de muchos recursos, animaciones en tercera diemensin, edicin de video en tiempo real, manejo de bases de datos gigantescas. Viene en un encapsulado de 478 terminales y debe colocarse en tarjetas madres especiales, por el consumo de grandes cantidades de energa.

128

5.2 Procesadores y Controladores

Microprocesador INTEL ITANIUM2


Arquitectura de Computadores y Sistema Operativo

Itanium2:este procesador cuyas caractersticas ofrece gran potencia tiene Socket 611 VLIF, 611 pines.

129

5.2 Procesadores y Controladores


MICROPROCESADOR ATHLON 64, PARA MQUINAS DE ESCRITORIO Y PORTTILES.

MICROPROCESADOR ATHLON 64FX.


Arquitectura de Computadores y Sistema Operativo

130

5.2 Procesadores y Controladores

MICROPROCESADOR AMD SEMPRON.

Arquitectura de Computadores y Sistema Operativo

AMD Sempron: es de la gama baja de AMD Streaming SIMD Extensions 2, Socket A ZIF, 462 pines.

131

5.2 Procesadores y Controladores

MICROPROCESADOR C3.

Arquitectura de Computadores y Sistema Operativo

C3: tiene socket 370 ZIF, 370 pines.

132

5.2 Procesadores y Controladores


Comparacin Rendimiento Pentium 4 vs ATHLON XP

Arquitectura de Computadores y Sistema Operativo

En la figura se muestra un cuadro compartivo sobre el rendimiento entre el Pentium 4 usando placa con chipset Intel 850E con memoria RAMBUS PC1066 y el Athlon XP usando placa con nForce2 y memoria DDR PC3200 Lo que hay en los parntesis viene a significar: (Velocidad real en MHz del micro / Velocidad en Mhz del FSB, es decir, de la memoria RAM y otros componentes de la placa mediante la aplicacin de divisores / Velocidad externa del micro, con la que se comunica el chipset de la placa base)

Extrado de Tomshardware.com

133

5.2 Procesadores y Controladores

Microcontrolador Es capaz de integrar inteligencia casi a cualquier artefacto. Es un computador dentro de un solo chip.

MICROCONTROLADOR.
Arquitectura de Computadores y Sistema Operativo

Controlador Recibe el nombre de controlador, el dispositivo que se emplea para el gobierno de uno o varios procesos. Un controlador consta de un programa ms o menos complejo que da las pautas para realizar un trabajo ayudado por unos sensores y actuadores que recogen la informacin y transmiten las instrucciones. El concepto de controlador ha permanecido invariable a travs de los tiempos, pero su implementacin fsica ha variado frecuentemente. Tres dcadas atrs, los controladores se construan exclusivamente con componentes de lgica discreta; posteriormente se emplearon los microprocesadores, que se rodeaban con chips de memoria y E/S sobre una tarjeta de circuito impreso. En los 70, los fabricantes de circuitos integrados iniciaron la difusin de un nuevo circuito para control, medicin e instrumentacin al que llamaron microcomputador en un slo chip o de manera ms exacta microcontrolador. El microcontrolador es uno de los logros ms sobresalientes del siglo XX. Este dispositivo ha evolucionado a mayor velocidad que ningn otro invento en la historia, la capacidad del microcontrolador ha aumentado 10.000 veces en los ltimos 25 aos. En la imagen se ve el diminuto tamao de un microcontrolador comparado con una aguja. El mayor atributo del microcontrolador es que puede integrar inteligencia casi a cualquier artefacto. Es un computador dentro de un solo chip. Se le puede entrenar para adaptarse a su entorno, responder a condiciones cambiantes y volverse ms eficiente y que responda a las necesidades nicas de sus usuarios. El nmero de productos que funcionan en base a uno o varios microcontroladores aumenta de forma exponencial.

134

5.2 Procesadores y Controladores

Caractersticas del microcontrolador 9 Circuito integrado programable y contiene todos los componentes de un computador. 9 Tamao reducido. 9 Controla el funcionamiento de una tarea determinada. 9 Va incorporado en el dispositivo al que gobierna (controlador incrustado). 9 Es un dispositivo dedicado.

Arquitectura de Computadores y Sistema Operativo

Caractersticas del Microcontrolador Un microcontrolador es un circuito integrado programable que contiene todos los componentes de un computador aunque de limitadas prestaciones. Se emplea para controlar el funcionamiento de una tarea determinada Tiene tamao reducido. Va incorporado en el propio dispositivo al que gobierna, por su tamao reducido. Esta ltima caracterstica es la que le confiere la denominacin de controlador incrustado (Embedded controller). El microcontrolador es un dispositivo dedicado. En su memoria slo reside un programa destinado a gobernar una aplicacin determinada; sus lneas de entrada/salida soportan el conexionado de sensores y actuadores del dispositivo a controlar y todos los recursos complementarios disponibles tienen como nica finalidad atender sus requerimientos. Una vez programado y configurado el microcontrolador solamente sirve para gobernar la tarea asignada.

135

5.2 Procesadores y Controladores

Caractersticas del microcontrolador

Estructura del microcontrolador.

Arquitectura de Computadores y Sistema Operativo

Un microcontrolador contiene toda la estructura (arquitectura) de un sencillo pero completo computador contenidos en el corazn (chip) de un circuito integrado. Se trata de un circuito integrado de alta escala de integracin que incorpora la mayor parte de los elementos que configuran un controlador. Se dice que es la solucin en un chip porque su reducido tamao minimiza el nmero de componentes y el coste. Los componentes de los que dispone normalmente un microcontrolador son: Procesador o CPU (Unidad central de proceso). Memoria RAM para contener los datos. Memoria para el programa tipo ROM/PROM/EPROM. Lneas de E/S para comunicarse con el exterior. Diversos mdulos para el control de perifricos (Temporizadores, puertas serie y paralelo, CAD, etc.) Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema. Segn el modelo de microcontrolador que se trate, el tamao y el tipo de memoria pueden diferir, as como el nmero de lneas de E/S y los mdulos de control de perifricos. La diversificacin de modelos, permite seleccionar el ms adecuado segn la aplicacin de que se trate.

136

5.2 Procesadores y Controladores

Campos en los que se utiliza microcontroladores


Automatizacin industrial Medida y control de procesos Perifricos y dispositivos auxiliares de las computadoras Electrodomsticos Termorregulacin Industria de la automocin Electromedicina

Robtica

Sistemas de seguridad y alarma

Sistemas de navegacin

Arquitectura de Computadores y Sistema Operativo

Campos en los que se utilizan Microcontroladores Los campos ms destacados en los que se emplean microcontroladores son los siguientes: Automatizacin industrial, Medida y control de procesos, Enseanza e investigacin, Perifricos y dispositivos auxiliares de las computadoras, Electrodomsticos, Aparatos porttiles y de bolsillo, Mquinas expendedoras y juguetera, Instrumentacin, Industria de la automocin, Electromedicina, Robtica, Sistemas de navegacin, Sistemas de seguridad y alarma, Domtica (Vase http://www.isde-ing.com/Qedom.htm) Termorregulacin. La informtica acapara gran parte de los microcontroladores que se fabrican. Casi todos los perifricos de un ordenador, desde el ratn hasta la impresora o el teclado, son regulados por el programa de un microcontrolador. Los electrodomsticos de lnea blanca (lavadoras, hornos, lavavajillas, etc.) y de lnea marrn (televisores, vdeos, aparatos musicales, etc.) incorporan numerosos microcontroladores. Igualmente los sistemas de supervisin, vigilancia y alarma en los edificios utilizan estos chips para optimizar el rendimiento de ascensores, calefaccin, aire acondicionado, alarmas de incendio, robo, etc. Las comunicaciones y sus sistemas de transferencia de informacin utilizan bastante estos pequeos computadores, incorporndolos en los grandes automatismos y en los modernos telfonos. La instrumentacin y la electromedicina son dos campos idneos para la implantacin de estos circuitos integrados. La industria automotriz es gran consumidora de microcontroladores, que los aplica en el control de aspectos como la climatizacin o los frenos ABS.

137

5.2 Procesadores y Controladores

Clasificacin de los microcontroladores 9 Tamao de los datos


Microcontroladores de 4 bits Microcontroladores de 8 bits Microcontroladores de 16 bits Microcontroladores de 32 bits Microcontroladores de 64 bits

Arquitectura de Computadores y Sistema Operativo

Clasificacin de los microcontroladores Hay diferentes criterios microcontroladores. segn los cuales se pueden clasificar los

9Tamao de los datos: que procesa el microcontrolador se puede distinguir entre Microcontroladores de 4 bits. Microcontroladores de 8 bits. Microcontroladores de 16 bits. Microcontroladores de 32 bits. Microcontroladores de 64 bits. El ms representativo de esta clasificacin es el microcontrolador de 8 bits porque resulta el ms flexible y eficaz para la mayora de los diseos tpicos. Aunque en los ltimos aos, los microcontroladores de 16 bits estn aumentado significativamente su cuota de mercado.

138

5.2 Procesadores y Controladores 9 Arquitectura bsica


Microcontroladores

Arquitectura Von Neumann

Arquitectura Harvard

Arquitectura de Computadores y Sistema Operativo

9Arquitectura bsica. Segn la arquitectura interna de la memoria del microcontrolador se puede distinguir entre: Microcontroladores con arquitectura Von Neumann. Microcontroladores con arquitectura Harvard. Inicialmente, todos los microcontroladores adoptaron la arquitectura clsica de Von Neumann. Actualmente, muchos microcontroladores utilizan esta arquitectura, pero poco a poco se impone la arquitectura Harvard.

139

5.2 Procesadores y Controladores 9 Arquitectura del procesador


Microcontroladores

CISC

RISC

SISC

Arquitectura de Computadores y Sistema Operativo

9 Arquitectura del Procesador o CPU. Segn la filosofa de la arquitectura del procesador se puede distinguir entre: Microcontroladores CISC. Microcontroladores RISC. Microcontroladores SISC. Un microcontrolador basado en la filosofa CISC (Computadores de Juego de Instrucciones Complejo) dispone de ms de 80 instrucciones mquina en su repertorio, algunas de las cuales son muy sofisticadas y potentes, requiriendo muchos ciclos para su ejecucin. Una ventaja de los procesadores CISC es que ofrecen al programador instrucciones complejas que acta como macros. Tanto la industria de los computadores comerciales como los de los microcontroladores estn decantndose hacia la filosofa RISC (Computadores de Juego de Instrucciones Reducido). En estos procesadores el repertorio de instrucciones mquina es muy reducido y las instrucciones son simples y, generalmente, se ejecuta en un solo ciclo. La sencillez y rapidez de las instrucciones permiten optimizar el hardware y el software del procesador. En los microcontroladores destinados a aplicaciones muy concretas, el juego de instrucciones, adems de ser reducido, es especfico, o sea, las instrucciones se adaptan a las necesidades de la aplicacin prevista. Esta filosofa se ha bautizado con el nombre de SISC (Computadores de Juego de Instrucciones Especfico).

140

5.2 Procesadores y Controladores 9 Tipo de memoria de programa


Microcontroladores
Memoria ROM con mscara

Memoria Flash

Memoria OTP Memoria EPROM

Memoria EEPROM

Arquitectura de Computadores y Sistema Operativo

9Tipo de memoria de programa. En los microcontroladores la memoria de instrucciones y datos est integrada en el propio chip. Una parte debe ser no voltil, tipo ROM, que se destina a contener el programa de instrucciones que gobierna la aplicacin. Otra parte de memoria debe ser voltil, tipo RAM, y se destina a guardar las variables y los datos. Existen principalmente cinco versiones de memoria no voltil que se pueden encontrar en los microcontroladores del mercado Memoria ROM con mscara. El elevado coste del diseo de la mscara slo hace aconsejable el empleo de los microcontroladores con este tipo de memoria cuando se precisan cantidades superiores a varios miles de unidades. Memoria OTP(One Time Programmable) es no voltil, de slo lectura y programable una sola vez por el usuario. La versin OTP es recomendable cuando es muy corto el ciclo de diseo del producto, o bien, en la construccin de prototipos o serie muy pequeas. Memoria EPROM(Erasable Programmable Read Only Memory), pueden borrarse y grabarse muchas veces. La grabacin se realiza, como en el caso de la memoria OTP. Si, posteriormente, se desea borrar el contenido, disponen de una ventana de cristal en su superficie por la que se somete a le EPROM a rayos ultravioleta durante varios minutos. Memoria EEPROM(Electrical EPROM) es de slo lectura, programable y borrable elctricamente. Tanto la programacin como el borrado, se realizan elctricamente desde el propio grabador y bajo el control programado de un PC Memoria Flash. La memoria Flash es no voltil, de bajo consumo y puede grabarse y borrarse elctricamente. Funciona como una ROM y una RAM pero consume menos energa y es ms pequea. La memoria Flash tambin puede programarse en circuito, adems, es ms rpida, tiene mayor densidad y tolera ms ciclos de escritura/borrado que la EEPROM.

141

5.2 Procesadores y Controladores

Microcontroladores PIC Caractersticas Relevantes de los PICs 9 La arquitectura del procesador sigue el modelo Harvard. 9 Se aplica la tcnica de segmentacin (pipeline). 9 El formato instrucciones tiene la misma longitud.

Arquitectura de Computadores y Sistema Operativo

Microcontroladores PIC El primer escollo al que se enfrenta un ingeniero a la hora de materializar una idea usando un microcontrolador, es la eleccin de una familia de microcontroladores y dentro de esta, un modelo en concreto que se ajuste lo mejor posible a las necesidades del diseo. En el mercado existen multitud de fabricantes. Todos los microcontroladores que se fabrican hoy en da son buenos, y el mejor no siempre es el mismo. Cambian el modelo y el fabricante segn la aplicacin y las circunstancias que lo envuelven. Los PIC Peripheral Interface Controller) son muy apetecidos ante cualquier otro ya sea de Intel, Motorola, Altair. Influye en esto su velocidad, el bajo precio, la facilidad de uso, reducido consumo, la informacin, pequeo tamao, fcil programabilidad o la abundancia de informacin y de herramientas econmicas de soporte. Dentro de las caractersticas ms relevantes del microcontolador PIC (estn las siguientes.
9La

arquitectura del procesador sigue el modelo Harvard, donde el CPU se conecta de forma independiente y con buses distintos con la memoria de instrucciones y con la de datos. aplica la tcnica de segmentacin (pipe-line) en la ejecucin de las instrucciones. La segmentacin permite al procesador realizar al mismo tiempo la ejecucin de una instruccin y la bsqueda del cdigo de la siguiente. formato de instrucciones tiene la misma longitud. Todas las instrucciones de los microcontroladores de la gama baja tienen una longitud de 12 bits. Las de la gama media tienen 14 bits y ms las de la gama alta. Esta caracterstica es muy ventajosa en la optimizacin de la memoria de instrucciones y facilita enormemente la construccin de ensambladores y compiladores.

9Se

9El

142

5.2 Procesadores y Controladores


Caractersticas relevantes de los PICs

9 Procesador RISC . 9 Instrucciones ortogonales. 9 Arquitectura basada en un banco de


registros.

Arquitectura de Computadores y Sistema Operativo

9Procesador

RISC. Los modelos de la gama baja disponen de un repertorio de 33 instrucciones, 35 los de la gama media y casi 60 los de la alta. ortogonales. Que todas las instrucciones sean ortogonales permite que cualquier instruccin puede manejar cualquier elemento de la arquitectura como fuente o como destino. basada en un banco de registros. Esto significa que todos los objetos del sistema (puertos de E/S, temporizadores, posiciones de memoria, etc.) estn implementados fsicamente como registros.

9Instrucciones

9Arquitectura

143

5.2 Procesadores y Controladores

Diferencias principales entre controladores y procesadores

9 Tipo de Sistema
Los controladores son sistemas cerrados. Los procesadores son sistemas abiertos.

9 Propsito
Los controladores especfico. Los procesadores general. son son de de propsito propsito

Arquitectura de Computadores y Sistema Operativo

Diferencias entre controladores y procesadores Tipo de sistema - Los controladores son sisistemas cerrados que contienen todas las partes de un computador en un solo chip. Todos los elementos electrnicos que se utilizaban para hacer funcionar un sistema basado con un microprocesador: Unidad de Proceso, la memoria RAM, memoria ROM , puertos de entrada, salidas y otros perifricos, con la consiguiente reduccin de espacio. -Los procesadores son sistemas abiertos que sacan las lneas datos, direccin, control al exterior para la conexin de memoria, interfaces de E/S. Propsito -Los controladores son sistemas de propsito especfico. Son programados para llevar a cabo una tarea. Esta tarea es programada en lenguaje ensamblador por el usuario, y son introducidos en este a travs de un programador. -Los procesadores son sistemas se propsito general.

144

6.1 Taxonoma de Flynn 6.2 Multiprocesadores

Arquitectura de Computadores y Sistema Operativo

145

6.1 Taxonoma de Flynn

Se basa en el flujo que siguen los datos dentro de la mquina y de las instrucciones sobre esos datos.

Arquitectura de Computadores y Sistema Operativo

Taxonoma de Flynn. En 1972 Michael Flynn, profesor de ingeniera elctrica en la de la Universidad de Stanford, public un documento en donde escogi dos caractersticas de las computadoras y prob con las 4 combinaciones posibles. Dos estaban en la mente de todos, y las otras no. Esta taxonoma (organizacin) es ampliamente conocida y aceptada. Describe las computadoras por como los flujos de instrucciones interactan con los flujos de informacin. Clasificacin clsica de arquitectura de computadores que hace alusin a sistemas con uno o varios procesadores. Flynn la public por primera vez en 1966 y por segunda vez en 1970. Esta taxonoma se basa en el flujo que siguen los datos dentro de la mquina y de las instrucciones sobre esos datos. :

146

6.1 Taxonoma de Flynn


Flujo de Instrucciones

9 Conjunto de instrucciones secuenciales


que son ejecutadas por un nico procesador. Flujo de Datos

9 Flujo secuencial de datos requeridos por


el flujo de instrucciones.

Arquitectura de Computadores y Sistema Operativo

Se define como flujo de instrucciones al conjunto de instrucciones secuenciales que son ejecutadas por un nico procesador y como flujo de datos al flujo secuencial de datos requeridos por el flujo de instrucciones.

147

6.1 Taxonoma de Flynn

Clasificacin de los sistemas segn FLYNN


SISD SIMD

Sistemas

MISD

MIMD

Arquitectura de Computadores y Sistema Operativo

Con estas consideraciones, Flynn clasifica los sistemas en cuatro categoras: SISD (Single Instruction stream, Single Data stream). SIMD (Single Instruction stream, Multiple Data stream). MISD (Multiple Instruction stream, Single Data stream). MIMD (Multiple Instruction stream, Multiple Data stream).

148

6.1 Taxonoma de Flynn 9 SISD (Single Instruction stream, Single


Data stream)
Un nico flujo de instrucciones nico flujo de datos. sobre un

Se ejecuta una instruccin detrs de otra. Tienen un nico procesador. No hay ningn paralelismo
-Mquinas Secuenciales PCs Convencionales, es decir

Arquitectura de Computadores y Sistema Operativo

SISD (Single Instruction stream, Single Data stream) Los sistemas de este tipo se caracterizan por tener un nico flujo de instrucciones sobre un nico flujo de datos, es decir, se ejecuta una instruccin detrs de otra. Consisten en una nica Unidad de Proceso. Este es el concepto de arquitectura serie de Von Neumann que ms se usa donde, en cualquier momento, slo se ejecuta una nica instruccin.

149

6.1 Taxonoma de Flynn

Flujo de Instrucciones

Secuencia de

Secuencia de

Control

Instrucciones

Procesador

Datos

Memoria

Estructura bsica de los computadores SISD.

Arquitectura de Computadores y Sistema Operativo

Ejemplo: Para procesar la suma de N nmeros a1, a2, ... aN, el procesador necesita accesar a memoria N veces consecutivas (para recibir un nmero). Tambin son ejecutadas en secuencia N-1 adiciones. Es decir los algoritmos para las computadoras SISD no contienen ningn paralelismo.

150

6.1 Taxonoma de Flynn 9 SIMD (Single Instruction stream, Multiple


Data stream)
Tienen un nico flujo de instrucciones que operan sobre mltiples flujos de datos. Ejecucin de instrucciones es secuencial, todos los elementos realizan una misma instruccin pero sobre una gran cantidad de datos, hay concurrencia.
-Thinking Machines -CM-2 -MassPar computers -Procesador MMX
Arquitectura de Computadores y Sistema Operativo

SIMD (Single Instruction stream, Multiple Data stream)


Estos sistemas tienen un nico flujo de instrucciones que operan sobre mltiples flujos de datos. Ejemplos de estos sistemas los tenemos en las mquinas vectoriales con hardware escalar y vectorial. El procesamiento es sncrono, la ejecucin de las instrucciones tambin secuencial como en el caso anterior, todos los elementos realizan una misma instruccin pero sobre una gran cantidad de datos. Por ello existir concurrencia de operacin, es decir, esta clasificacin es el origen de la mquina paralela. Son utilizadas en redes neuronales. Ejemplos Thinking Machines CM-2, MassPar computers, Procesador MMX Cmo funciona este tipo de sistema?

Slo hay una Unidad de Control la cual manda una misma instruccin a todas las unidades de proceso (ALUs). Las unidades de proceso operan sobre datos diferentes pero con la misma instruccin recibida.

151

6.1 Taxonoma de Flynn


Flujo de Datos 1 Unidad

Memoria 1
Flujo de Datos 2

de Proceso 1
Flujo de Instrucciones

Memoria 2
. . .

Unidad de Proceso 2 de Proceso n

Unidad de Control

Flujo de Datos n Unidad

Memoria n

Flujo de Datos Arquitectura de los computadores SIMD.

Arquitectura de Computadores y Sistema Operativo

En este modelo hay n secuencias de datos, una por procesador, as que diferentes datos pueden ser utilizados en cada procesador. Los procesadores operan sincronizadamente y hay un reloj global que se utiliza para asegurar esta operacin. Es decir, en cada paso todos lo procesadores ejecutan la misma instruccin, cada uno en diferente dato. La operacin con matrices se puede realizar con este sistema. Ejemplo: Sumando dos matrices A + B = C. Siendo A y B de orden 2 y con 4 procesadores:

A+B=C

A11 + B11 = C11 A21 + B21 = C21

A12 + B12 = C12 A22 + B22 = C22

La misma instruccin es ejecutada en los 4 procesadores. La suma de las dos matrices se realiza en un ciclo, mientras que en los sistemas secuenciales tardara cuatro.

152

6.1 Taxonoma de Flynn 9 SIMD con CPU Particionada


La CPU se disea como un conjunto de unidades funcionales independientes que ejecutan simultneamente varias operaciones aritmtico/lgicas. La CPU contiene un nico procesador con instrucciones que procesa un nico flujo de estas liberando cada instante una.

Arquitectura de Computadores y Sistema Operativo

Existen dos alternativas distintas que aparecen despus de realizarse esta clasificacin: 1. Arquitectura Vectorial con segmentacin: Una CPU nica particionada en unidades funcionales independientes trabajando sobre flujos de datos concretos Arquitectura Matricial (matriz de procesadores): Varias ALUs idnticas a las que el procesador de instrucciones asigna una nica instruccin pero trabajando sobre diferentes partes del programa.

2.

153

6.1 Taxonoma de Flynn 9 SIMD con CPU Particionada


Debido a que las unidades funcionales operan independientemente, es posible liberar nuevas instrucciones antes de que finalice la ejecucin de las instrucciones previas.
- CRAY monoprocesador - IBM 390 VF - IBM 9000 VF -CONVEX C-1

Arquitectura de Computadores y Sistema Operativo

Debido a que las unidades funcionales operan independientemente, es posible liberar nuevas instrucciones antes de que finalice la ejecucin de las instrucciones previas. Ejemplos de este tipo de sistemas los encontramos en los computadores CRAY monoprocesador, CYBER 205, FUJITSU, HITACHE, NEC SUPERCOMPUTERS, IBM 390 VF, IBM 9000 VF, ALLIANT FX/1 Y CONVEX C-1.

154

6.1 Taxonoma de Flynn 9 SIMD con Mltiples ALUs


Sistemas que trabajan ejecutando o ignorando una misma instruccin para todas las ALUs. Existe un nico procesador que maneja el flujo de instrucciones del programa y que transfiere todas las instrucciones a las diferentes unidades aritmtico/lgicas. Cada ALU opera en un segmento diferente de datos del programa.

Arquitectura de Computadores y Sistema Operativo

SIMD CON MULTIPLES ALUS Estos sistemas trabajan en modo lock step, ejecutando o ignorando una misma instruccin para todas las ALUs. Existe un nico procesador que maneja el flujo de instrucciones del programa y que transfiere todas las instrucciones a las diferentes unidades aritmtico/lgicas. Cada ALU opera sobre un segmento diferente de datos del programa. Ejemplo de funcionamiento del sistema con el siguiente bucle: DO 2000 I=1,N A(I) = B(I) + C(I) 2000 CONTINUE El procesador asigna a cada ALU la operacin de suma de B(I) con C(I) y siendo el almacenamiento del resultado en A(I) pero pasando a cada ALU un valor diferente de I. En el caso de que haya menos ALUs que iteraciones del bucle, el procesador ordenar la ejecucin hasta que estn procesados todos los valores de I. En el caso de que haya ms ALUs que iteraciones, existir un nmero de estas que no estn operativas durante la ejecucin de las instrucciones del bucle. Una ALU inactiva o en OFF significa que: La ALU recibe instrucciones pero las ignora La ALU ejecuta clculos pero no almacena ningn resultado.

155

6.1 Taxonoma de Flynn 9 MISD (Multiple Instruction stream, Single


Data stream)
Sistemas con mltiples instrucciones y que operan sobre un nico flujo de datos. Hay n unidades de proceso, cada cual con su propia unidad de control y sus propias instrucciones, operando simultneamente sobre el mismo flujo de datos.

Arquitectura de Computadores y Sistema Operativo

MISD (Multiple Instruction stream, Single Data stream) Son sistemas con mltiples instrucciones que operan sobre un nico flujo de datos. Este tipo de sistemas no ha tenido implementacin hasta hace poco tiempo. Hay n unidades de proceso cada cual con su propia unidad de control y sus propias instrucciones, pero operando simultneamente sobre el mismo flujo de datos. De esta forma la salida de un procesador pasa a ser la entrada (operandos) del siguiente en el macrocauce de los datos. Los sistemas MISD se contemplan de dos maneras distintas: Varias instrucciones operando simultneamente sobre un nico dato.

156

6.1 Taxonoma de Flynn 9 MISD (Multiple Instruction stream, Single


Data stream)
Varias instrucciones operando sobre un dato que se va convirtiendo en un resultado que ser la entrada para la siguiente etapa. Se trabaja de forma segmentada.
-Arrays sistlicos o arrays de`procesadores

Arquitectura de Computadores y Sistema Operativo

Varias instrucciones operando sobre un dato que se va convirtiendo en un resultado que ser la entrada para la siguiente etapa. Se trabaja de forma segmentada, todas las unidades de proceso pueden trabajar de forma concurrente. Ejemplos de estos tipos de sistemas son los arrays sistlicos o arrays de procesadores. Tambin podemos encontrar aplicaciones de redes neuronales en mquinas masivamente paralelas.

157

6.1 Taxonoma de Flynn


Flujo de Flujo de Instrucciones 1 Unidad de Instrucciones 1

Memoria 1

Control 1

Unidad de Proceso 1
Flujo de Datos

Memoria 2

Flujo de Flujo de Instrucciones 2 Unidad de Instrucciones 2

Control 2

Unidad de Proceso 2
Flujo de Datos

Memoria n

Flujo de Instrucciones n

Unidad de Control n

Flujo de Instrucciones n

Unidad de Proceso n

Flujo de Datos

Arquitectura de los computadores MISD.

Arquitectura de Computadores y Sistema Operativo

MISD (Multiple Instrucion Single Data). En este modelo, secuencias de instrucciones pasan a travs de mltiples procesadores. Diferentes operaciones son realizadas en diversos procesadores. N procesadores, cada uno con su propia unidad de control comparten una memoria comn. La figura muestra N secuencias de instrucciones (algoritmos/programas) y una secuencia de datos. El paralelismo es alcanzado dejando que los procesadores realicen diferentes cosas al mismo tiempo en el mismo dato. Las mquinas MISD son tiles en cmputos donde la misma entrada est sujeta a diferentes operaciones.

158

6.1 Taxonoma de Flynn 9 MIMD (Multiple Instruction stream, Multiple


Data stream)
Sistema con un flujo de mltiples instrucciones que operan sobre mltiples datos. Existe una agrupacin de monoprocesadores convencionales, cada uno con su unidad de control, su unidad de proceso y su memoria local. Permiten ejecutar varios procesos simultneamente (sistema multiprocesador), es asncrono.
-Mquinas paralelas actuales
Arquitectura de Computadores y Sistema Operativo

MIMD (Multiple Instruction stream, Multiple Data stream) Sistemas con un flujo de mltiples instrucciones que operan sobre mltiples datos. Estos sistemas empezaron a utilizarse a principios de los 80. Se trata de una agrupacin de monoprocesadores convencionales, cada uno con su unidad de control, su unidad de proceso y su memoria local. Cada uno dispone de su propio flujo de instrucciones y de datos. Trabajan en paralelo y de forma asncrona, y estn comunicados entre ellos igual que los SIMD. Los procesadores pueden ejecutar la misma instruccin o diferentes instrucciones. Se puede decir que MIMD es un super conjunto de SIMD. Este tipo de computadora es paralela al igual que las SIMD, la diferencia con estos sistemas es que MIMD es asncrono. No tiene un reloj central. Cada procesador MIMD corre casi independientemente de los otros. Las computadoras MIMD pueden ser utilizadas en aplicaciones con informacin en paralelo o con tareas en paralelo. Ejemplos SGI/Cray Power Challenge Array, SGI/Cray Origin-2000, HP/Convex SPP-2000.

159

6.1 Taxonoma de Flynn


Flujo de Instrucciones 1

Memoria 1

Flujo de Datos 1 Flujo de Instrucciones 2 Flujo de Datos 2 Flujo de Instrucciones n

Unidad de Control 1

Flujo de Instrucciones 1

Unidad de Proceso 1

Flujo de

Memoria 2

Unidad de Instrucciones 2 Control 2

Unidad de Proceso 2

Flujo de

Memoria n

Flujo de Datos n

Unidad de Instrucciones n Control n

Unidad de Proceso n

Arquitectura de los computadores MIMD.

Arquitectura de Computadores y Sistema Operativo

Como se puede ver en la figura cada procesador en un sistema MIMD puede ejecutar su propia secuencia de instrucciones y tener sus propios datos. Esta caracterstica es la ms general y poderosa de esta clasificacin. Se tienen N procesadores, N secuencias de instrucciones y N secuencias de datos. Cada procesador opera bajo el control de una secuencia de instrucciones, ejecutada por su propia unidad de control, es decir cada procesador es capaz de ejecutar su propio programa con diferentes datos. Esto significa que los procesadores operan asncronamente, o en trminos simples, los procesadores pueden estar haciendo diferentes cosas en diferentes datos al mismo tiempo. Los sistemas MIMD se clasifican en: Sistemas de Memoria Compartida. Sistemas de Memoria Distribuida. Sistemas de Memoria Compartida Distribuida.

160

6.1 Taxonoma de Flynn 9 Modelo MIMD con Memoria Compartida


Desventajas El acceso problema. simultneo a memoria es un

Poca escalabilidad de procesadores. Todos los CPUs tienen un camino libre a la memoria. Ventajas Fcil programacin.
Arquitectura de Computadores y Sistema Operativo

Desventajas: El acceso simultneo a memoria es un problema. Poca escabilidad de procesadores, debido a que se puede generar un cuello de botella al incrementar el numero de CPU's. Todos los CPUs tienen un camino libre a la memoria. No hay interferencia entre CPUs. La razn principal por el alto precio de Cray es la memoria. Ventaja: La facilidad de la programacin. Es mucho ms fcil programar en estos sistemas que en sistemas de memoria. Las computadoras MIMD con memoria compartida son sistemas conocidos como de multiprocesamiento simtrico (SMP) donde mltiples procesadores comparten un mismo sistema operativo y memoria. Otro trmino con que se le conoce es mquinas firmemente juntas o de multiprocesadores.

161

6.1 Taxonoma de Flynn


Memoria Compartida

Red

Procesador 1

Procesador 2

Procesador n

Modelo MIMD con Memoria Compartida.

Arquitectura de Computadores y Sistema Operativo

Sistemas MIMD de Memoria Compartida. En este tipo de sistemas cada procesador tiene acceso a toda la memoria, es decir hay un espacio de direccionamiento compartido. Se tienen tiempos de acceso a memoria uniformes ya que todos los procesadores se encuentran igualmente comunicados con la memoria principal y las lecturas y escrituras de todos los procesadores tienen exactamente las mismas latencias; y adems el acceso a memoria es por medio de un ducto comn. En esta configuracin, debe asegurarse que los procesadores no tengan acceso simultneamente a regiones de memoria de una manera en la que pueda ocurrir algn error.

162

6.1 Taxonoma de Flynn 9 Modelo MIMD con Memoria Distribuida


Desventajas El acceso remoto a memoria es lento. La programacin puede ser complicada. Ventajas Escalabilidad. Mientras que la demanda de los recursos crece, se puede agregar ms memoria y procesadores.

Arquitectura de Computadores y Sistema Operativo

Desventajas: El acceso remoto a memoria es lento. La programacin puede ser complicada. Las computadoras MIMD de memoria distribuida son conocidas como sistemas de procesamiento en paralelo masivo (MPP) donde mltiples procesadores trabajan en diferentes partes de un programa, usando su propio Ventajas: La escalabilidad. Las computadoras con sistemas de memoria distribuida son fciles de escalar, mientras que la demanda de los recursos crece, se puede agregar ms memoria y procesadores.

163

6.1 Taxonoma de Flynn

Memoria 1

Memoria 2

Memoria n

Procesador 1

Procesador 2

Procesador n

Red

Modelo MIMD con Memoria Distribuida.

Arquitectura de Computadores y Sistema Operativo

Sistemas MIMD de Memoria Distribuida. Estos sistemas tienen su propia memoria local. Los procesadores pueden compartir informacin solamente enviando mensajes, es decir, si un procesador requiere los datos contenidos en la memoria de otro procesador, deber enviar un mensaje solicitndolos. Esta comunicacin se le conoce como Paso de Mensajes.

164

6.1 Taxonoma de Flynn 9 Modelo MIMD con Memoria Compartida


Distribuida
Ventajas Escalabilidad como en los sistemas de memoria distribuida. Fcil de programar. No existe el cuello de botella.

Arquitectura de Computadores y Sistema Operativo

Ventajas: Presenta escalabilidad como en los sistemas de memoria distribuida. Es fcil de programar como en los sistemas de memoria compartida. No existe el cuello de botella que se puede dar en mquinas de slo memoria compartida.

165

6.1 Taxonoma de Flynn

Memoria 1

Memoria 2

Memoria n

Red

Procesador 1

Procesador 2

Procesador n

Modelo MIMD con Memoria Compartida Distribuida.

Arquitectura de Computadores y Sistema Operativo

Sistemas MIMD de Memoria Compartida Distribuida Es un cluster o una particin de procesadores que tienen acceso a una memoria compartida comn pero sin un canal compartido. Esto es, fsicamente cada procesador posee su memoria local y se interconecta con otros procesadores por medio de un dispositivo de alta velocidad, y todos ven las memorias de cada uno como un espacio de direcciones globales. El acceso a la memoria de diferentes clusters se realiza bajo el esquema de Acceso a Memoria No Uniforme (NUMA), la cual toma menos tiempo en accesar a la memoria local de un procesador que accesar a memoria remota de otro procesador.

166

6.1 Taxonoma de Flynn 9 MIMD (Multiple Instruction stream, Multiple


Data stream)
Cuando las unidades de proceso reciben datos de una memoria no compartida estos sistemas reciben el nombre de Multiple SISD (MSISD). En arquitecturas con varias unidades de control (MISD y MIMD), existe otro nivel superior con una unidad de control que controla todas las unidades de control del sistema.
-SGI/Cray Power Challenge Array, -SGI/Cray Origin-2000 -HP/Convex SPP-2000
Arquitectura de Computadores y Sistema Operativo

. Cuando las unidades de proceso reciben datos de una memoria no compartida estos sistemas reciben el nombre de MULTIPLE SISD (MSISD). En arquitecturas con varias unidades de control (MISD Y MIMD), existe otro nivel superior con una unidad de control que se encarga de controlar todas las unidades de control del sistema. Ejemplo de estos sistemas son las mquinas paralelas actuales. Categoras de Ordenadores Paralelos. Clasificacin moderna que hace alusin nica y exclusivamente a los sistemas que tienen ms de un procesador (i.e mquinas paralelas). Existen dos tipos de sistemas teniendo en cuenta su acoplamiento. Los sistemas fuertemente acoplados son aquellos en los que los procesadores dependen unos de otros. Los sistemas dbilmente acoplados son aquellos en los que existe poca interaccin entre los diferentes procesadores que forman el sistema. Atendiendo a esta y a otras caractersticas, la clasificacin moderna divide a los sistemas en dos tipos: Sistemas multiprocesador (fuertemente acoplados) y sistemas multicomputador (dbilmente acoplados).

167

6.2 Multiprocesadores

Un multiprocesador puede verse como un computador paralelo compuesto por varios procesadores interconectados que comparten un mismo sistema de memoria.

Arquitectura de Computadores y Sistema Operativo

MULTIPROCESADORES Un multiprocesador puede verse como un computador paralelo compuesto por varios procesadores interconectados que comparten un mismo sistema de memoria. Los sistemas multiprocesadores son arquitecturas MIMD con memoria compartida. Tienen un nico espacio de direcciones para todos los procesadores y los mecanismos de comunicacin se basan en el paso de mensajes desde el punto de vista del programador. Dado que los multiprocesadores comparten diferentes mdulos de memoria, pudiendo acceder a un mismo mdulo varios procesadores, a los multiprocesadores tambin se les llama sistemas de memoria compartida. Multiprocesadores y Multicomputadores Existen similitudes entre los sistemas multiprocesadores y multicomputadores debido a que ambos fueron pensados con un mismo objetivo: dar soporte a operaciones concurrentes en el sistema. Sin embargo, existen diferencias importantes basadas en el alcance de los recursos compartidos y la cooperacin en la solucin de un problema. Un sistema multicomputador consiste de diversas computadoras autnomas que pueden o no comunicarse entre s. Un sistema multiprocesador est controlado por un sistema operativo que provee la interaccin entre los procesadores y sus programas a nivel de dato, proceso y archivo.

168

6.2 Multiprocesadores

Multiprocesador Dbilmente Acoplado.


Arquitectura de Computadores y Sistema Operativo

Los sistemas multiprocesador pueden clasificarse en Agrupacin o multiprocesador dbilmente acoplado o distribuido: consiste en una coleccin de sistemas relativamente autnomos, cada procesador tiene su propia memoria principal y canales de E/S. Procesadores funcionalmente especializados: en este caso hay un procesador principal de propsitos generales y procesadores especializados que son controlados por el procesador principal y le proveen servicios a l. Un ejemplo es el procesador de E/S. Multiprocesamiento fuertemente acoplado: consiste en un grupo de procesadores que comparten una memoria principal en comn y estn bajo el control integrado de un sistema operativo.

169

6.2 Multiprocesadores

Multiprocesador Fuertemente Acoplado.


Arquitectura de Computadores y Sistema Operativo

170

6.2 Multiprocesadores

Clasificacin de los Multiprocesadores 9 Por la Forma de Compartir la Memoria

Sistemas Multiprocesador

NUMA

UMA

COMA
Arquitectura de Computadores y Sistema Operativo

Dependiendo de la forma en que los procesadores comparten la memoria, se clasifican en sistemas multiprocesador: UMA (Uniform memory access) Acceso uniforme a memoria: Todos los procesadores pueden acceder a toda la memoria principal utilizando instrucciones de carga y almacenamiento. El tiempo de acceso de un procesador a cualquier regin de la memoria es el mismo. El tiempo de acceso a memoria por parte de todos los procesadores es el mismo NUMA (Nonuniform memory access) Acceso no uniforme a memoria: Todos los procesadores tienen acceso a todas las partes de memoria principal utilizando instrucciones de carga y almacenamiento. El tiempo de acceso a memoria de un procesador depende de la regin a la que se acceda. La ltima frase es cierta para todos los procesadores; no obstante, para procesadores distintos, las regiones de memoria que son ms lentas o ms rpidas son diferentes. COMA (Cache only memory access) Acceso slo a memoria cach: Estos modelos utilizan slo memorias cach. Son un caso particular de la NUMA en el cual la memoria distribuida se convierte en memorias cach. No existen jerarquas de memoria en cada nodo procesador. Todas las caches forman un espacio de direccionamiento global. El acceso a una cach remota se facilita a travs de los directorios distribuidos de cach los cuales en ciertas arquitecturas pueden estructurarse en forma jerrquica.

171

6.2 Multiprocesadores
Sistemas Multiprocesador UMA

NUMA

COMA
Son un caso especial de los sistemas NUMA. No ha tenido mucha transcendencia, al igual que los sistemas SIMD. Las memorias distribuidas son memorias cachs, por esto es un sistema muy restringido en cuanto a la capacidad de memoria global. No hay jerarqua de memoria en cada mdulo procesador. Todas las cachs forman un mismo espacio global de direcciones.
Arquitectura de Computadores y Sistema Operativo

COMA (Cache Only Memory Access) Los sistemas COMA son un caso especial de los sistemas NUMA. Este tipo de sistemas no ha tenido mucha transcendencia, al igual que los sistemas SIMD. Las memorias distribuidas son memorias cachs, por este motivo es un sistema muy restringido en cuanto a la capacidad de memoria global. No hay jerarqua de memoria en cada mdulo procesador. Todas las cachs forman un mismo espacio global de direcciones. El acceso a las cachs remotas se realiza a travs de los directorios distribuidos de las cachs. Dependiendo de la red de interconexin utilizada, se pueden utilizar jerarquas en los directorios para ayudar a la localizacin de copias de bloques de cach. Multicomputadores Los sistemas multicomputadores se pueden ver como un computador paralelo en el cual cada procesador tiene su propia memoria local. En estos sistemas la memoria se encuentra distribuida y no compartida como en los sistemas multiprocesador. Los computadores se comunican a travs de paso de mensajes, ya que stos slo tienen acceso directo a su memoria local y no a las memorias del resto de procesadores. El diagrama de bloques de un sistema multicomputador coincide con el visto para los sistemas UMA, la diferencia viene dada porque la red de interconexin no permite un acceso directo entre memorias, sino que la comunicacin se realiza por paso de mensajes. La transferencia de los datos se realiza a travs de la red de interconexin que conecta un subconjunto de procesadores con otro subconjunto. La transferencia de unos procesadores a otros se realiza por tanto por mltiples transferencias entre procesadores conectados dependiendo del establecimiento de dicha red. Dado que la memoria est distribuida entre los diferentes elementos de proceso, estos sistemas reciben el nombre de distribuidos. Por otra parte, estos sistemas son dbilmente acoplados, ya que los mdulos funcionan de forma casi independiente unos de otros.

172

6.2 Multiprocesadores
Sistemas Multiprocesador UMA COMA NUMA
Son sistemas de memoria compartida. El tiempo de acceso vara segn donde se encuentre localizado el acceso. El acceso a memoria no es uniforme para diferentes procesadores. Existen memorias locales asociadas a cada procesador y estos pueden acceder a datos de su memoria local de una manera ms rpida que a las memorias de otros procesadores.
Arquitectura de Computadores y Sistema Operativo

NUMA (Non Uniform Memory Access)


Un sistema multiprocesador NUMA es un sistema de memoria compartida donde el tiempo de acceso vara segn donde se encuentre localizado el acceso. El acceso a memoria, por tanto, no es uniforme para diferentes procesadores. Existen memorias locales asociadas a cada procesador y estos pueden acceder a datos de su memoria local de una manera ms rpida que a las memorias de otros procesadores, debido a que primero debe aceptarse dicho acceso por el procesador del que depende el mdulo de memoria local. Todas las memorias locales conforman la memoria global compartida y fsicamente distribuida y accesible por todos los procesadores. Cluster Jerrquico Otro modelo NUMA que nace como la mezcla del modelo UMA explicado anteriormente y el modelo NUMA anterior, es el cluster jerrquico en el que se combinan las memorias locales y las globales obteniendo una cierta escalabilidad del sistema. Los procesadores aparecen distribuidos en clusters (1 sistema UMA o un 1 sistema NUMA). Estos clusters estn conectados a la memoria global compartida. El sistema en su totalidad es un sistema NUMA, ya que el acceso a memoria es no uniforme por parte de los clusters. La ventaja de estos sistemas con respecto a los sistemas UMA, es que el acceso a memoria local es mucho ms rpido.

173

6.2 Multiprocesadores
Sistemas Multiprocesador NUMA COMA UMA
Sistema multiprocesador con acceso uniforme a memoria. La memoria fsica es uniformemente compartida por todos los procesadores. Cada procesador tiene su propia cach privada y tambin se comparten los perifricos.
Arquitectura de Computadores y Sistema Operativo

UMA (Uniform Memory Access) Sistema multiprocesador con acceso uniforme a memoria. La memoria fsica es uniformemente compartida por todos los procesadores, esto quiere decir que todos los procesadores tienen el mismo tiempo de acceso a todas las palabras de la memoria. Cada procesador tiene su propia cach privada y tambin se comparten los perifricos. Los multiprocesadores son sistemas fuertemente acoplados (tightly-coupled), dado el alto grado de comparticin de los recursos (hardware o software) y el alto nivel de interaccin entre procesadores, lo que hace que un procesador dependa de lo que hace otro. El sistema de interconexin debe ser rpido y puede ser de uno de los siguientes tipos: Bus comn Red crossbar Red multietapa Este modelo es conveniente para aplicaciones de propsito general y de tiempo compartido por varios usuarios. Existen varias categoras de sistemas UMA. Sistema Simtrico Cuando todos los procesadores tienen el mismo tiempo de acceso a todos los componentes del sistema (incluidos los perifricos), reciben el nombre de sistemas multiprocesador simtrico. Los procesadores tienen el mismo dominio (prioridad) sobre los perifricos y cada procesador tienen la misma capacidad para procesar. Sistema Asimtrico Los sistemas multiprocesador asimtrico, son sistemas con procesadores maestros y procesadores esclavos, en donde slo los primeros pueden ejecutar aplicaciones y dnde en tiempo de acceso para diferentes procesadores no es el mismo. Los procesadores esclavos (attached) ejecutan cdigo usuario bajo la supervisin del maestro, por lo tanto cuando una aplicacin es ejecutada en un procesador maestro dispondr de una cierta prioridad.

174

Anda mungkin juga menyukai