Arquitectura Computadoras ISC

  • Published on
    10-Dec-2014

  • View
    147

  • Download
    0

Embed Size (px)

Transcript

<p>Arquitectura de computadorasUnidad Temas 1 Modelo de arquitecturas de cmputo. Subtemas 1.1 Modelos de arquitecturas de cmputo. 1.1.1 Clsicas. 1.1.2 Segmentadas. 1.1.3 De multiprocesamiento. 1.2 Anlisis de los componentes. 1.2.1 CPU. 1.2.1.1 Arquitecturas. 1.2.1.2 Tipos. 1.2.1.3 Caractersticas. 1.2.1.4 Funcionamiento. 1.2.2 Memoria. 1.2.2.1 Arquitecturas. 1.2.2.2 Tipos. 1.2.2.3 Caractersticas. 1.2.2.4 Funcionamiento. 1.2.3 Dispositivos de I/O. 1.2.3.1 Arquitecturas. 1.2.3.2 Tipos. 1.2.3.3 Caractersticas. 1.2.3.4 Funcionamiento. 2.1 Buses. 2.1.1 Bus Local. 2.1.2 Bus de datos. 2.1.3 Bus de direcciones. 2.1.4 Bus de control. 2.1.5 Buses normalizados. 2.2 Direccionamiento. 2.2.1 Modo real. 2.2.2 Modo protegido. 2.2.3 Modo real virtual. 2.3 Temporizacin. 2.3.1 Reloj de sistema. 2.3.2 Reset del sistema. 2.3.3 Estados de espera. 2.4 Interrupciones de Hardware. 2.4.1 Enmascarable. 2.4.2 No-enmascarable. 2.5 Acceso Directo a memoria. 2.5.1 Sistema de video. 2.5.2 Sistema de discos. 2.5.3 Otras aplicaciones. 3 Seleccin de componentes para 3.1 Chip Set. 3.1.1 CPU.</p> <p>2</p> <p>Comunicacin interna en la computadora.</p> <p>ensamble de equipos de cmputo.</p> <p>3.1.2 Controlador del Bus. 3.1.3 Puertos de E/S. 3.1.4 Controlador de Interrupciones. 3.1.5 Controlador de DMA. 3.1.6 Circuitos de temporizacin y control. 3.1.7 Controladores de video. 3.2 Aplicaciones. 3.2.1 Entrada/ Salida. 3.2.2 Almacenamiento. 3.2.3 Fuente de alimentacin. 3.3 Ambientes de servicios. 3.3.1 Negocios. 3.3.2 Industria. 3.3.3 Comercio electrnico. 4.1 Arquitectura. 4.1.1 Terminales. 4.1.2 CPU. 4.1.3 Espacio de Memoria. 4.1.4 Entrada/ Salida. 4.1.5 Caractersticas especiales. 4.2 Programacin. 4.2.1 Modelo de programacin. 4.2.2 Conjunto de instrucciones. 4.2.3 Modos de direccionamiento. 4.2.4 Lenguaje ensamblador. 4.3 Aplicaciones. 4.3.1 Como sistema independiente. 4.3.2 Como subsistema de una computadora.</p> <p>4</p> <p>Microcontroladores.</p> <p>Unidad 1. Modelo de arquitecturas de cmputo.1.1 Modelos de arquitecturas de cmputo.2 3 Tecnologas RISC y CISC:</p> <p>RISC: (Reduced Instruction Set Computer) computadora de conjunto de instrucciones reducido Arquitectura de computadoras que ejecuta un nmero limitado de instrucciones. El concepto es que la mayora de los programas usan generalmente unas pocas instrucciones, y si se acelera la ejecucin de esas instrucciones bsicas, se mejora el rendimiento.</p> <p>La arquitectura RISC elimina una capa de carga operativa llamada "microcdigo", que se emplea normalmente para facilitar la agregacin de nuevas y complejas instrucciones a una computadora. Las computadoras RISC poseen un pequeo nmero de instrucciones montadas en los circuitos de nivel inferior, que trabajan a mxima velocidad. Aunque las mquinas RISC son slo de un 15% a un 50% ms veloces que sus contrapartidas CISC CISC: (Complex Instruction Set Computer) Computadora de conjunto de instrucciones complejo Computadoras que poseen un conjunto de instrucciones muy extenso. Las mquinas CISC tienen de doscientas a trescientas instrucciones, que estn grabadas en microcdigo. http://www.monografias.com/trabajos/refercomp/refercomp.shtml</p> <p>3.1.1 Clsicas.El Concepto de von Neumann.Los primeros computadores se programaban en realidad recablendolos. Esto prcticamente equivala a reconstruir todo el computador cuando se requera de un nuevo programa. La tarea era simplificada gracias a un panel de contactos (muy similar al de los primeros conmutadores telefnicos que eran atendidos por operadoras, y que hoy en da slo llegamos a ver en viajes pelculas en blanco y negro. Ver fig. 1) con el que era posible enlazar circuitos para crear secciones dedicadas a una actividad especficas. La programacin del computador se llevaba a cabo, literalmente, reconstruyndolo.</p> <p>Fig 1.- ENIAC, primer computador electrnico y su panel de conexiones Mientras que el recablear al computador estableca una clara distincin entre los datos (representados por los estados o seales elctricas que sern mantenidas por los relevadores o a travs de los bulbos que conformaban al computador) y el programa (las conexiones que seran establecidas entre estos componentes del hardware) la labor de "programacin" requera sino del propio creador del computador si a un verdadero experto y conocedor de electrnica, principios de lgica digital y del problema mismo. Esto vino a cambiar con el concepto del programa almacenado, un concepto terico muy importante que fue establecido por el matemtico John von Neumann el 30 de junio de 1945 en un borrador sobre el diseo de la EDVAC. A diferencia de los primeros</p> <p>computadores, von Neumann propona que tanto el programa como sus datos fueran almacenados en la memoria del computador. Esto no solo simplificaba la labor de programacin al no tener que llevar a cabo el recableado del computador sino que adems libraba y generalizaba el diseo del hardware para hacerlo independientede cualquier problema y enfocado al control y ejecucin del programa. Este concepto fue tan importante y decisivo que dio lugar al concepto de la arquitectura de von Neumann, an presente en nuestros das. La arquitectura de von Neumann se compone de tres elementos:1. La Unidad Central de Procesamiento (CPU, por sus siglas en ingls), que es considerada como el cerebro y corazn del computador. Internamente consiste de una Unidad Aritmtico-Lgica (ALU), un conjunto de registros y una Unidad de Control (CU). La ALU es donde se realizan todas las operaciones que involucran un procesamiento matemtico (particularmente aritmtico) o lgico (operaciones booleanas). Los registros permiten el almacenammiento de datos para estas operaciones y sus resultados. En la CU es donde se ejecutan todo el resto de las operaciones (decisin, control, movimiento de datos). Una CPU con todos estos elementos implementada en un solo chip recibe el nombre de microprocesador. 2. La memoria, que es donde datos y programa es almacenado. La memoria puede ser visto como un arreglo unidimensional finito en la que cada localidad es identificada por un valor asociado a su posicin y que es comunmente llamado direccin. Existen diversos tipos de memoria, identificados por el tipo de tecnologa usada, aunque para un computador son generalmente clasificadas en dos grandes grupos por tipo de uso al que de destina. La memoria RAM (Random Access Memory, Memoria de Acceso Aleatorio) y que es aquella destinada al almacenamiento de datos y programas (incluyendo al sistema operativo), es considerada temporal o de tipo voltil ya que pierde si contenido cuendo el computador es apagadoo reinicializado. La memoria ROM es aquella de tipo permanente, aun cuando el computador sea desenergizado mantendr su contenido. Es usada principalmente para el almacenamiento de pequeos programas destinados a la adminsitracin bsica de recursos, especialmente de entrada y salida. 3. Las interfaces de entrada y salida (I/O). destinadas a liberar de trabajo a la CPU en la comunidacin con dispositivos de entrada (teclados, ratones), salida (impresoras) y entrada-salidas (discos, cintas).</p> <p>Estos tres elementos estn interconectados a travs de un conjunto de lneas que llevan instrucciones (control bus), datos (data bus) y que permiten dar los valores de direcciones de memoria y dispositivos (memory bus).</p> <p>Fig 2.- Esquema de la arquitectura de von Neumann. http://homepage.mac.com/eravila/computerII.html La arquitectura von Neumann se refiere a las arquitecturas de computadoras que utilizan el mismo dispositivo de almacenamiento tanto para las intrucciones como para los datos (a diferencia de la arquitectura Harvard). El trmino se acu en el documento First Draft of a Report on the EDVAC (1945), escrito por el conocido matemtico John von Neumann, que propuso el concepto de programa almacenado. Dicho documento fue redactado en vistas a la construccin del sucesor de la computadora ENIAC, y su contenido fue desarrollado por Presper Eckert, John Mauchly, Arthur Burks, y otros durante varios meses antes de que Von Neumann redactara el borrador del informe. Los ordenadores con arquitectura Von Neumann constan de cinco partes: La unidad aritmtico-lgica o ALU, la unidad de control, la memoria, un dispositivo de entrada/salida y el bus de datos que proporciona un medio de transporte de los datos entre las distintas partes.</p> <p>Un ordenador con arquitectura von Neumann realiza o emula los siguientes pasos secuencialmente: 1. Obtiene la siguiente instruccin desde la memoria en la direccin indicada por el contador de programa y la guarda en el registro de instruccin. 2. Aumenta el contador de programa en la longitud de la instruccin para apuntar a la siguiente. 3. Descodifica la instruccin mediante la unidad de control. sta se encarga de coordinar el resto de componentes del ordenador para realizar una funcin determinada. 4. Se ejecuta la instruccin. sta puede cambiar el valor del contador del programa, permitiendo as operaciones repetitivas. El contador puede cambiar tambin cuando se cumpla una cierta condicin aritmtica, haciendo que el ordenador pueda 'tomar decisiones', que pueden alcanzar cualquier grado de complejidad, mediante la aritmtica y lgica anteriores. 5. Vuelve al paso 1. Hoy en da, la mayora de ordenadores estn basados en esta arquitectura, aunque pueden incluir otros dispositivos adicionales, (por ejemplo, para gestionar las interrupciones de dispositivos externos como ratn, teclado, etc). http://www.programacion.com/blogs/44_diario_de_un_profesor_de_informtica/a rchive/409_que_es_la_arquitectura_informtica.html</p> <p>Arquitectura HarvardEl trmino Arquitectura Harvard originalmente se refera a las arquitecturas de computadoras que utilizaban dispositivos de almacenamiento fsicamente separados para las instrucciones y para los datos (en oposicin a la Arquitectura von Neumann). El trmino proviene de la computadora Harvard Mark I, que almacenaba las instrucciones en cintas perforadas y los datos en interruptores.</p> <p>Todas las computadoras constan principalmente de dos partes, la CPU que procesa los datos, y la memoria que guarda los datos. Cuando hablamos de memoria manejamos dos parmetros, los datos en s, y el lugar donde se encuentran almacenados (o direccin). Los dos son importantes para la CPU, pues muchas instrucciones frecuentes se traducen a algo as como "coge los datos de sta direccin y adelos a los datos de sta otra direccin" , sin saber en realidad qu es lo que contienen los datos. En los ltimos aos la velocidad de las CPUs ha aumentado mucho en comparacin a la de las memorias con las que trabaja, as que se debe poner mucha atencin en reducir el nmero de veces que se accede a ella para mantener el rendimiento. Si, por ejemplo, cada instruccin ejecutada en la CPU requiere un acceso a la memoria, no se gana nada incrementando la velocidad de la CPU - este problema es conocido como 'limitacin de memoria'. Se puede fabricar memoria mucho ms rpida, pero a costa de un precio muy alto. La solucin, por tanto, es proporcionar una pequea cantidad de memoria muy rpida conocida con el nombre de cach. Mientras los datos que necesita el procesador estn en la cach, el rendimiento ser mucho mayor que si la cach tiene que obtener primero los datos de la memoria principal. La optimizacin de la cach es un tema muy importante de cara al diseo de computadoras. La arquitectura Harvard ofrece una solucin particular a este problema. Las instrucciones y los datos se almacenan en cachs separadas para mejorar el rendimiento. Por otro lado, tiene el inconveniente de tener que dividir la cantidad de cach entre los dos, por lo que funciona mejor slo cuando la frecuencia de lectura de instrucciones y de datos es aproximadamente la misma. Esta arquitectura suele utilizarse en DSPs, o procesador de seal digital, usados habitualmente en productos para procesamiento de audio y video. "http://es.wikipedia.org/wiki/Arquitectura_Harvard"Arquitectura Harvard El procesador de los modernos microcontroladores responde a la arquitectura RISC (Computadores de Juego de Instrucciones Reducido), que se identifica por poseer un repertorio de instrucciones mquina pequeo y simple, de forma que la mayor parte de las instrucciones se ejecutan en un ciclo de instruccin. Otra aportacin frecuente que aumenta el rendimiento del computador es el fomento del paralelismo implcito, que consiste en la segmentacin del procesador (pipe-line), descomponindolo en etapas para poder procesar una instruccin diferente en cada una de ellas y trabajar con varias a la vez.</p> <p>http://www.unicrom.com/Tut_PICs1.asp La arquitectura Harvard dispone de dos memorias independientes una, que contiene slo instrucciones y otra, slo datos. Ambas disponen de sus respectivos sistemas de buses de acceso y es posible realizar operaciones de acceso (lectura o escritura) simultneamente en ambas memorias. Figura 1.3.</p> <p>Figura 1.3. La arquitectura Harvard dispone de dos memorias independientes para datos y para instrucciones, permitiendo accesos simultneos. http://www.monografias.com/trabajos12/microco/microco.shtmlARQUITECTURA HARVARD Arquitectura Harvard, que utiliza antememorias de instrucciones y datos separadas. Esta tcnica, denominada Arquitectura Harvard, en cierto modo contrapuesta a la idea de Von Newmann, ya que utiliza memorias cach separadas para cdigo y datos. Esto tiene algunas ventajas . ARQUITECTURA VECTORIAL El encadenamiento aumenta la velocidad de proceso, pero an se puede mejorar aadiendo tcnicas como el supersescalado. Esta tcnica permite hacer paralelas las mismas etapas sobre instrucciones diferentes. Un procesador superescalar puede ejecutar ms de una instruccin a la vez. Para sto es necesario que existan varias unidades aritmtico-lgicas, de punto flotante y de control. El proceso que sigue el micro es transparente al programa, aunque el compilador puede ayudar analizando el cdigo y generando un flujo de instrucciones optimizado. Veamos cmo se ejecutaran las instrucciones en un procesador superescalar de que tiene duplicadas las subunidades que lo componen:</p> <p>Aunque esto mejora la velocidad global del sistema, los conflictos de datos crecen. Si antes las instrucciones se encontraban muy prximas, ahora se ejecutan simultaneamente. Esto hace necesario un chequeo dinmico para detectar y resolver los posibles conflictos.</p> <p>ARQUITECTURA PIPE-LINE Paralelismo Temporal: Pipe-Line Lineal La arquitectura pipe-line se aplica en dos lugares de la maquina, en la CPU y en la UAL. Veamos en que consiste el pipe-line y tratemos de entender porque el pipe-line mejora el rendimiento de todo el sistema.</p> <p>Veamos una CPU no organizada en pipe-line:</p> <p>Si se trata de una instruccin a ser ejecutada por la ALU podemos decir que la CPU realiza a lo largo del ciclo de maquina estas 5 tareas. Una vez que termina de ejecutar una instruccin va a buscar otra y tarda en ejecutarla un tiempo T, es decir cada T segundos ejecuta una instruccin. Qu sucede si dividimos en 5 unidades segn las 5 cosas que realiza la CPU?</p> <p>Supongamos la CPU dividida en 5 unidades, de tal forma que c/u tarde lo mismo en realizar...</p>