Download Capitulo 2
Document related concepts
no text concepts found
Transcript
Fernando D. Monje 1 Libro: Estructura Interna de la PC. Capítulo 2: La Motherboard y el Microprocesador. - El Microprocesador: Constituye el cerebro de una computadora. Se encarga de tomar la información que recibe, efectuarle los procesos necesarios y enviar el resultado a destino. Al esquema anterior se lo conoce como EPS (Entrada, Proceso, Salida). Respeta las bases de la maquina de Von Neumann del año 1952. Características y Clasificaciones: El microprocesador puede dividirse en varios bloques: - La Unidad de Control. (UC – Control Unit) - La Unidad Aritmético Lógica. (ALU – Arithmetic and Logic Unit) - Los Registros. - Las Memorias Caché (Internas, L1, - Externas, L2) - Los Buses Internos y Externos · Bus de Control · Bus de Datos · Bus de Direcciones · Bus hacia la Caché: -L1 // -L2 Catalogar según características lógicas: Tamaño de Palabra (Ancho máximo de las instrucciones) Velocidad de reloj: · Interna: Dentro del Microprocesador. · Externa: Del bus local, del sistema (FSB). - La arquitectura Interna. - La cantidad y organización de las unidades de ejecución. - La cantidad y organización de canales de instrucciones. - Las capacidades y eficiencias del procesamiento. - El juego de instrucciones que soporta. - Las instrucciones adicionales y específicas. - La compatibilidad. - El ancho y la velocidad de los Buses: · Bus de Control · Bus de Datos · Bus de Direcciones · Bus hacia la Caché: -L1 // -L2 Catalogar según características físicas: - El embalaje y sus dimensiones físicas. - El zócalo (Slot, Socket). - La tecnología y el proceso de fabricación. - La tensión de trabajo. - Fernando D. Monje 2 Principios básicos de funcionamiento: El procesador posee pequeñas memorias temporales de rápido acceso (Registros). En ella almacena algunos datos necesarios y fundamentales para no perderse. La cantidad de registros que tiene el micro depende de su diseño. El tamaño de palabra o ancho máximo se mide en bits y puede ser de 2n bits. Uno de los ítems mas importantes para calificar a un procesador. A medida que fue aumentando el tamaño de palabra tuvieron que agregar nuevos registros. Uno de 32 bits posee el conjunto de registros de 16 bits para mantener la compatibilidad y agrega las de 32 bits. Estos tienen la capacidad de manejar una gran cantidad de instrucciones de longitud variable. Se los conocen como CFSC (Complex Instruction Set Code). Los procesadores RISC (Reduced Instruction Set Code) procesan instrucciones con longitud menor a 100. Los procesadores mas avanzados logran mayores velocidades combinando las dos tecnologías, transforma las instrucciones CISC en RISC y se ejecutan más rápidamente mediante múltiples unidades de ejecución RISC. La microarquitectura de estos procesadores es CISC con RISC. Funcionamiento básico del microprocesador: La unidad de control se encarga de recibir las instrucciones de la memoria a través del bus de datos, decodifica y ejecuta, enviando datos a cualquier dispositivo que la instrucción indique. Las ejecutara a medida que vallan llegando. - Unidad Aritmética Lógica: Se encaga de realizar operaciones lógicas y aritméticas con los datos recibidos. El microprocesador esta gobernado por el reloj del sistema (cristal de cuarzo regulado que cumple el papel de péndulo electrónico) A mayor velocidad del reloj, mas operaciones se pueden realizar en el mismo tiempo. Se mide en Hz; Se puede decir que un micro de 2Ghz puede ejecutar el doble de instrucciones que uno de 1Ghz siempre y cuando el resto de sus características sean idénticas. Evolución de los microprocesadores: Se fueron mejores tecnologías de fabricación, menor micrones, mayores transistores en el mismo espacio del procesador. - Transistores: Componente principal de los procesadores, a mayor cantidad de estos, mayores funcionalidades, mas complejos y mayores velocidades de trabajo. - Embalajes y Zócalos para el Microprocesador: Embalaje: El embalaje contiene el trozo de silicio que es el micro en si. Posee contactos suficientes para todas las señales que entran y salen. Provee la superficie para el mecanismo disipador de calor. Zócalos: Existen diferentes zócalos para distintos microprocesadores. - Socket o Super: Son los SPGA, CPGA, CSPGA (Grilla de pines cerámicos escalonados) o los PPGA (Pines en grilla escalonada de Plástico) - Slot: Son los SEC (Single Edge Contact – Contacto de Lado Único) Los SPGA o PPGA son del tipo ZIF, (Fuerza de Colocación Cero) que permiten cambiar el procesador fácilmente liberando una traba que los sostiene. Los SEC se insertan en una ranura. Fernando D. Monje - 3 Tamaño de Palabra, Buses de Direcciones y Datos: Bus de Direcciones: Determina la cantidad máxima de memoria a la cual se puede acceder (Direccionar). El número máximo de casilleros a los que se puede identificar. - Cantidad Máxima: Elevando el 2 al numero de bits que forman el ancho del bus, se obtiene el máximo en Bytes (8bits) = 1 Casillero. Ejemplos: 8086,8088(bus de 20 bits). Maximo de 220 =1.048.576 bytes(1Mb). 80286(24bits), 80386(32bits), Pentium Pro(36bits). Memoria Virtual: El Primer procesador en aplicar este concepto fue el 80386DX. Cualquier dispositivo puede tener asignado un rango de direcciones de memoria y trabajar como esta. Si hay memoria insuficiente se podría recurrir al disco usarlo como memoria, salvo, que sin las velocidades altas. La memoria Virtual es una capacidad propia del procesador, no del sistema. Depende del sistema aprovechar esta capacidad o no. - La Memoria Cache Incorporada: El objetivo es aumentar el rendimiento y solucionar el problema de lentitudes las memorias. Se integro una memoria cache y su controladora dentro del procesador Se lo conoce comúnmente como de Nivel 1 o L1. Todos los sucesores del 80486DZ, incluyéndolo, comenzaron a integrarlo. AMD y Cyrix también. En algunos casos están incorporadas en el mismo embalaje (con media velocidad). En otros forman parte del mismo trozo de silicio y están sincronizados con el núcleo a la misma velocidad dándole mejor rendimiento. Estas diferencias inciden mucho en el costo de fabricación. Los procesadores Celeron son una línea mas económica que los Pentium II, III y IV; La diferencia esta en el tamaño, velocidad y tecnología de la cache externa. - La Unidad de Punto Flotante: Los primeros micros no incluían instrucciones capaces de realizar operaciones con números de punto flotante (fracciones, decimales). En el 8088 la única unidad de ejecución de la UAL (solamente enteros). Los coprocesadores se solían conectar en un zócalo disponible de la mother para comunicarse con el procesador principal. (Incluían una UPF). Ofrecían instrucciones diseñadas para realizar operaciones con números de Punto Flotante. Con menos instrucciones se conseguía lo que la UAL ocupaba en muchas. Ejemplo: El 80387 era el coprocesador del 80386DX. Los que hacen uso mas intensivo de la UPF son los programas de tratamiento de imágenes de autoedición y dibujo vectorial, juegos, aplicaciones 2D y 3D en tiempo real y planillas de calculo. Requieren cálculos muy complejos. El primero en incluirlo en su arquitectura fue el 80486DX (Dentro del silicio) obteniendo un rendimiento muy superior al del coprocesador externo, al trabajar a la misma velocidad aprovecha todas las ventajas de su micro-arquitectura. Fernando D. Monje - 4 Procesadores Superescalares: Un superescalar puede ejecutar más de una instrucción por ciclo de reloj. Puede procesar dos instrucciones en un mismo ciclo, usando dos canales en paralelo. En adelante fueron aumentando la cantidad de instrucciones paralelas. - Pipelines: Los canales de los procesadores: Los procesadores recibían una instrucción por vez, ejecutaban y guardaban los resultados en los registros del procesador. Al esquema básico se lo llama DE UN CANAL. 5 Pasos de los Pipelines paralelos: Prebúsqueda: Toma la siguiente instrucción de la cache o memoria principal. Decodificación de la instrucción. Generación de direcciones de memoria: Busca donde se ubican los datos para ejecutarse - Ejecución. - Reescritura: Guarda los nuevos datos en los registros. - Pasos: La instrucción pasa de prebúsqueda a la Decodificación de instrucciones. De ahí esta libre para ejecutar este primer paso en una nueva instrucción. Cada pipelining tiene su propia Unidad Aritmético Lógica y propia generación de instrucciones. Mejoras: BTB (Branch Target Buffer – Buffer de Bifurcación): Memoria temporal inteligente que intenta predecir cuando se bifurcara un proceso ubicado en otra posición de memoria no consecutiva. La cantidad de entradas BTB aumentaron. A partir del Pentium Pro Incorporaron la tecnología de Ejecución Dinámica (DET). Permite predecir múltiples bifurcaciones en las instrucciones. Se acelera el flujo de proceso mediante un análisis del flujo de datos. Crea un plan optimizando la ejecución. Se puede cambiar el orden de ejecución sin alterar los resultados. Hace que le paralelismo sea mucho mas probable, especialmente en aquellas aplicaciones que no fueron bien programadas. Tiende a incrementar la cantidad de pasos de la cadena consiguiendo mayor división del trabajo total del pipelining y mayor paralelismo. Un gran avance para mayor paralelismo fue incorporar la ejecución de instrucciones fuera de orden (out-of-order). Ejemplo: Una instrucción ingresa a uno de los canales y espera por un dato. Los canales libres siguen procesando las instrucciones siguientes de la demorada ganando tiempo. Esto se incorpora en cada vez más unidades algunas a diferentes velocidades con respecto al procesador. En el Pentium 4 corren al doble de la velocidad del reloj. Fernando D. Monje - 5 El Bus Frontal (FSB) y los multiplicadores de reloj: 80486DX, primer procesador con dos velocidades diferentes, una interna y otra externa. El primero en multiplicar el reloj. - Velocidad Interna: Aquella a la cual trabajan todos los componentes del microprocesador para comunicarse con el exterior, como la memoria del sistema. - Velocidad Externa: Suele ser mucho menor que la interna. Dos velocidades de reloj permiten aumentar la velocidad de reloj sin diseñar otra mother. Permitió que un 80486DX de 66Mhz funcionara en una mother para 33Mhz multiplicando por un factor de 2 (33Mhzx2=66Mhz) El Pentium Pro comenzó con buses conocidos como el DIB (Doble Bus Independiente). Existen dos buses independientes: - El FSB. - La Caché externa incorporada. Todo en el mismo embalaje. La caché externa incorporada puede crecer libremente. Los procesadores de 64 bits incorporaron el controlador de memoria al micro mejorando ampliamente su rendimiento final. - Las Instrucciones Adicionales Específicas: Bits compatibles con los 80x86 brindan soporte completo al juego de instrucciones IA32 (Intel Architecture 32Bits). Para mejorar el rendimiento de aplicaciones ofrecen nuevos conjuntos de instrucciones en el procesador que realicen tareas a gran velocidad. Se consigue utilizar al máximo las nuevas bondades que ofrecen los micros. Están diseñadas para mejorar el rendimiento de los juegos y aplicaciones multimedia. Aparecen Instrucciones adicionales específicas agregadas al juego IA-32. Esto suele generar una gran carga de proceso al usar las IA-32, pero existen otras extensiones de Intel, AMD y Cyrix a partir del Pentium MMX y el Amd K6. Los nuevos son compatibles con el juego de instrucciones anteriores. - MMX: Extensiones Multimedia: Intel presento la tecnología MMX (MultiMedia eXtensions). Incorporando las siguientes características: 57 instrucciones nuevas (SIMD-Single Instruction Multiple Data) 8 Registros de 64bits nuevos, exclusivos para los MMX. 4 tipos de datos exclusivos de MMX. La técnica SIMD permite que una instrucción vaya acompañada por datos en los cuales se encuentren empaquetados grupos de menor tamaño, y mediante una única instrucción procesar varias porciones de información. Antes no formaban parte de la PC. - MMX presenta 4 nuevos tipos de datos (64bits): Packed Byte: 8 bytes en una unidad de 64bits (8x8=64) Packed Word: 4 unidades de 16bits en una de 64bits. Packed Double Word: 2 unidades de 32bits en una de 64bits. Quad Word: una unidad de 64bits. Fernando D. Monje SIMD aumentó el rendimiento, se requieren menos instrucciones y éstas además funcionan en paralelo. Para comparar un contenido de 8 pixeles necesitamos empaquetar la información en un Packed Byte y ejecutar una instrucción de comparación con ese único dato. Habría que hacerlo en 8 comparaciones. Rendimiento 800% superior. 57 instrucciones MMX cumplen las: - Operaciones Aritméticas Básicas. - Operaciones Lógicas. - Operaciones de comparación. - Operaciones de Arrastre de Bits. - Conversión de Datos (empaquetar, desempaquetar). - Transferencias de Datos de Registro (32 y 64 bits) - Internet SSE: De la mano del Pentium III Es la siguiente generación de la tecnología MMX, la Internet SSE (Streaming SIMD Extensions – Extensiones SIMD en flujos) para mejorar el rendimiento que hacen uso intensivo de los siguientes elementos: - Gráficos 3D. - Procesamiento de Imágenes de alta calidad. - Manejo de audio de alta calidad. - Decodificación de MPEG2 (video). - Reconocimiento de voz. Incorpora las siguientes características a la MMX: - 70 instrucciones nuevas para SIMD (50 para punto flotante). - 8 nuevos registros de 128bits, para valores de punto flotante. - Nuevo tipo de datos para uso de la unidad de 128bits. Permite empaquetar cuatro valores de punto flotante de 32bits y procesarlo con solo una instrucción nueva de las SIMD. - Varias mejoras a la MMX y eficiencia de las Internet SSE, eliminar cuellos de botella en la versión anterior. Se pueden ejecutar dos tipos de instrucciones en forma concurrente. Al permitir operaciones sobre valores de punto flotante, representa la transición de una ALU vectorial (MMX) a una UPF vectorial, la cual es más razonable y útil. 6