Arquitectura de Computadoras II

Embed Size (px)

Text of Arquitectura de Computadoras II

ARQUITECTURA DE COMPUTUTADORAS II

ARQUITECTURA DE COMPUTUTADORAS II

IRMA FLORES RIOS

RED TERCER MILENIO

AVISO LEGALDerechos Reservados 2012, por RED TERCER MILENIO S.C. Viveros de Ass 96, Col. Viveros de la Loma, Tlalnepantla, C.P. 54080, Estado de Mxico. Prohibida la reproduccin parcial o total por cualquier medio, sin la autorizacin por escrito del titular de los derechos. Datos para catalogacin bibliogrfica Irma Flores Ros Arquitectura de las computadoras II ISBN 978-607-733-119-3 Primera edicin: 2012 Revisin pedaggica: Aurora Leonor Avendao Barroeta Revisin editorial: Mnica Gabriela Ortega Reyna

DIRECTORIO

Brbara Jean Mair Rowberry Directora General Rafael Campos Hernndez Director Acadmico Corporativo

Jess Andrs Carranza Castellanos Director Corporativo de Administracin Hctor Ral Gutirrez Zamora Ferreira Director Corporativo de Finanzas Ximena Montes Edgar Directora Corporativo de Expansin y Proyectos

NDICEIntroduccin Objetivo general de aprendizaje Mapa conceptual 4 6 7

Unidad 1. Introduccin al procesamiento paralelo Introduccin Mapa conceptual 1.1 Paralelismo en sistemas monoprocesadores 1.2 Estructuras de computadores paralelas 1.3 Aplicaciones del procesamiento paralelo 1.4 Subsistemas de memoria de entrada-salida Autoevaluacin

8 9 10 11 14 16 17 20

Unidad 2. Segmentacin encauzada y procesamiento vectorial Mapa conceptual Introduccin 2.1 Principios de segmentacin encauzada lineal 2.2 Clasificacin de los procesadores encauzados 2.3 Cauces generales y tablas de reserva 2.4 Cauces de instrucciones y cauces aritmticos 2.5 Principios de diseo de los procesadores encauzados 2.6 Exigencias del procesamiento vectorial Autoevaluacin

25 26 27 28 29 31 33 35 36 38

Unidad 3. Computadores de segmentacin encauzada y mtodos de vectorizacin Mapa conceptual Introduccin 3.1 Los computadores de segmentacin encauzada 3.2 Procesadores vectoriales iniciales y actuales2

41 42 43 44 47

3.3 Mtodos de vectorizacin y optimizacin Autoevaluacin

51 53

Unidad 4. Estructuras y algoritmos para procesadores matriciales Mapa conceptual Introduccin 4.1 Procesadores SIMD 4.2 Redes de interconexin SIMD 4.3 Algoritmos paralelos para procesadores matriciales 4.4 Procesamiento matricial asociativo Autoevaluacin

57 58 59 60 62 64 67 71

Unidad 5. Multiprocesamiento Mapa conceptual Introduccin 5.1 Arquitectura y programacin de los multiprocesadores 5.2 Multiprocesamiento: control y algoritmos 5.3 Ejemplo de sistemas multiprocesador 5.4 Computadores de flujo de datos Autoevaluacin

75 76 77 78 84 87 89 94

Bibliografa Glosario

97 98

3

INTRODUCCINDa con da las computadoras se vuelven cada vez ms necesarias en nuestra vida cotidiana; de repente nos damos cuenta que sin un equipo de cmputo a nuestro lado es muy difcil realizar tareas que podemos hacer desde la comodidad de nuestro hogar y sobre todo a una velocidad impresionante. Hoy en da no tenemos la necesidad de viajar varios kilmetros de distancia para adquirir algn artculo, visitar algn museo, saludar algn amigo, estudiar y trabajar desde el mismo lugar, estas actividades son slo algunas de las que podemos ser testigos, sin embargo existen actividades de carcter industrial, acadmico, cientfico, hidrulico, mdico, etc., de las que no nos percatamos; pareciera que los procesos se realizaran automticamente. Todo en nuestra vida ha cambiado con los recursos que nos da la tecnologa. Estas caractersticas que encontramos en nuestras veloces mquinas se deben a un diseo arquitectnico sorprendente, un hardware preciso y una programacin hecha a la medida. Si bien es cierto que nuestra materia est enfocada completamente a la parte de arquitectura de los sistemas, es muy importante considerar que todo es parte de un todo interrelacionado. El presente libro de est constituido por cinco unidades que comprenden la introduccin del procesamiento paralelo, la clasificacin de los procesadores encauzados, las exigencias del procesamiento vectorial, as como sus mtodos de vectorizacin y optimizacin, la arquitectura y programacin de los sistemas multiprocesadores y algunos ejemplos de sistemas que usan el

multiprocesamiento. Sin duda alguna tenemos un gran reto que alcanzar; es importante tener presente el objetivo principal de todo sistema: hacer un diseo potente pero de costo razonable. Se espera que este libro sirva como gua para el alumno, que genere nuevo conocimiento y se logre una experiencia del aprendizaje enriquecedora con la finalidad de lograr los objetivos propuestos por l, de manera profesional. El objetivo general del libro es que el estudiante pueda describir, comprender y explicar el procesamiento4

paralelo,

los

principios

de

segmentacin encauzada y procesamiento vectorial, las estructuras de algoritmos para procesadores matriciales y la arquitectura y programacin de los multiprocesadores. En general, el libro est constituido por el objetivo general, mapas conceptuales, general y por unidad, que permiten darle un panorama al alumno, de lo que ver durante la unidad, lo cual le facilita la comprensin del contenido. Al final de cada unidad se encuentran actividades de aprendizaje y autoevaluaciones diseadas para que repase y se autoevale a partir del conocimiento adquirido; asimismo la bibliografa y el glosario, generado con trminos importantes para tener una mejor comprensin del tema.

5

OBJETIVO GENERALEl estudiante describir, comprender y explicar el procesamiento paralelo, los principios de segmentacin encauzada y procesamiento vectorial, las estructuras de algoritmos para procesadores matriciales y la arquitectura y programacin de los multiprocesadores.

6

MAPA CONCEPTUALAplicaciones Sistemas monoprocesadores Tipos Segmentacin encauzada Clasificacin Sistemas matriciales Arquitectura de computadoras Procesamiento paralelo Organizacin Procesadores SIMD Estructura Taxonoma de Flynn Uso Estructura

Dinmica Topologa Esttica

Dotan paralelismo

Sistemas vectoriales

Uso

Operaciones vectoriales

Optimizacin

Vectorizacin

Sistemas multiprocesadores

Arquitectura Programacin

7

UNIDAD 1

INTRODUCCIN AL PROCESAMIENTO PARALELOOBJETIVO El alumno comprender el funcionamiento y estructura del procesamiento paralelo y el paralelismo en sistemas monoprocesadores, asimismo describir la estructura de los subsistemas de memoria de entrada-salida.

TEMARIO 1.1 PARALELISMO EN SISTEMAS MONOPROCESADORES 1.2 ESTRUCTURAS DE COMPUTADORAS PARALELAS 1.3 APLICACIONES DEL PROCESAMIENTO PARALELO 1.4 SUBSISTEMAS DE MEMORIA DE ENTRADA-SALIDA

8

INTRODUCCINHoy en da, en nuestra vida cotidiana, tenemos la necesidad de realizar un sinfn de actividades en el menor tiempo posible. En la mayora de las ocasiones no nos percatamos cmo es que estas actividades poco a poco resultan ser ms rpidas y sencillas para el ser humano. Pues bien, lo que ocurre internamente en los procesadores de los sistemas, lo cual para el usuario final es totalmente transparente, tiene que ver en gran parte con el tema de esta unidad, el procesamiento paralelo. Esto no es otra cosa que realizar pequeas divisiones de procesos, los cuales estn compuestos por un fragmento de instrucciones, que son ejecutadas de forma simultnea en diferentes procesadores obteniendo as un tiempo de ejecucin ms corto. De hecho, sta es una de las principales metas que tiene el procesamiento paralelo. Trabajar y poder procesar grandes volmenes de informacin con el fin de obtener resultados en el menor tiempo posible es otra de sus ventajas, sin embargo tambin se enfrenta a algunas dificultades como son la falta de coordinacin al tratar de ejecutar los procesos al mismo tiempo, as como su control y monitoreo. Sin duda alguna, este tema es muy importante por lo que se pretende que el alumno comprenda el funcionamiento, la estructura y las aplicaciones del paralelismo en los sistemas.

9

MAPA CONCEPTUAL

PROCESAMIENTO PARALELO

dota el paralelismo usa

integra

Sistemas monoprocesadores

Subsistema de entrada-salida

Estructurapor medio de mecanismos tipos

controlan

aspectos de diseo

Aplicaciones

Comunicacin asncronade carcter

Multiplicidad de unidades funcionales Segmentacin del cauce

Sistemas multiprocesadores

Localizacin de datos

Segmentacin encauzadaSistemas matriciales

Transferencia de datos

Solapamiento de las operaciones de CPU

Sincronizacin

Sistemas jerrquicos

formas

Administrativo Cientfico Financiero E/S programada

Multiprogramacin y tiempo compartido

Equilibrado del ancho de banda en subsistemas

E/S por interrupcin Tcnico Acceso directo a la memoria 10

1.1 PARALELISMO EN SISTEMAS MONOPROCESADORES Un sistema monoprocesador es aquel que cuenta slo con un procesador para ejecutar todos los procesos a realizar, bajo este concepto podramos afirmar que en este tipo de sistemas no existe el paralelismo. En la siguiente figura se muestra un ejemplo de la diferencia que existe entre los sistemas monoprocesadores y los multiprocesadores, estos ltimos siendo los que cuentan con ms de un procesador para ejecutar los diferentes procesos de forma simultnea. Sistema monoprocesadorVariable compartida Escribe Proceso A Lee

Sistema multiprocesadorVariable compartida Escribe Lee

Memoria comn a todos los procesos Proceso C

Memoria comn a todos los procesos Proceso C

Proceso B

Proceso A

Proceso B

Sistema operativo

Sistema operativo

Procesador

Procesador

Procesador

Procesador

Figura 1.1 Sin embargo, haciendo uso de algunos mecan