Download informática seccion 1 - Bienvenidos al Departamento de
Document related concepts
no text concepts found
Transcript
ARQUITECTURA DE COMPUTADORES II ICI-223 Ing Civil Informática Depto de Computación e Informática 1 Preliminares Ing. Rodrigo Cofré Loyola Profesor Auxiliar Departamento de Computación e Informática Clases Lunes 16:50 – 17:55 Hrs – Sala 28 Viernes 10:50 – 12:55 Hrs – Sala 35 Tutorias: Miércoles 10:50 – 12:50 Hrs Viernes 14:30 – 16:30 Hrs. 2 Descripción y Objetivo El curso está orientado a que el alumno obtenga una visión técnica de la organización y arquitectura de los computadores modernos mediante el análisis, diseño y evaluación de los niveles de abstracción en la cual están organizados los sistemas computacionales modernos. 3 Descripción y Objetivo Se diseñan y simulan en computador arquitecturas básicas dedicadas y generalizadas, y se resuelven problemas de programación utilizando lenguajes de bajo nivel de las arquitecturas estudiadas. En conjunto con las clases expositivas, se realizarán clases de ejercitación Laboratorios y resolución de tareas grupales. 4 Temario Inicial 1 Introducción 2 Organización del Computador 3 Sistemas de Memoria 4 Interfaces y Comunicaciones 5 Organización Funcional 6 Multiprocesadores y Arquitecturas Alternativas 7 Aumento de Desempeño 8 Arquitecturas Contemporáneas 5 Metodología Autoaprendizaje - Lecturas Clases Expositivas – Trabajos grupales Laboratorios: Ensamblador (6-7) + Circuitos Digitales (Proyecto-Etapas). Hardware y configuración PC () Trabajo Grupal de Investigación (grupos semestrales) Página WEB: http://www.eici.ucm.cl/ rcofre@ucm.cl 6 Controles Prueba 1: 10 Octubre 2008 Prueba 2: 21 Noviembre 2008 Prueba Acumulativa: 12 Diciembre 2008 7 Ayudantías: Ensamblador Cupos 25 Alumnos por Sección 2 Secciones Inscripciones con Profesor Horarios: Sección 1: Miércoles 15:30 – 16:30 Sección 2: Miércoles 16:55 – 17:50 8 Laboratorio Ensamblador+Proyecto 27 Octubre al 07 Noviembre 2008 Lab: 27/10 - 29/10 – 31/10 - 03/11 -05/11 + Consultas 07/11 Horario 15:35 Hrs – 17:50 Hrs Cupo 3 Grupos Por Laboratorio Máximo 4 alumnos por Grupo Inscribirse con el Profesor 9 Observaciones La inasistencia a un test será evaluada con un 1 y no se recuperará. Los tests pueden o no ser avisados con anticipación. Se exige el 80% de asistencia a clases, y el 100% a los laboratorios, en caso contrario reprobará la asignatura con la nota mínima. 10 Bibliografía Mínima [Morris1991] Morris M, “Ingeniería Computacional: Diseño del Hardware”, prentice Hall, 1991. [Stalling2006] Stalling Williams, “organización y arquitectura de Computadoras”, 7ª Edición, Pearson Educación, 2006.(7 Ejemplares) [Paterson1995] Paterson D, “organización y diseño de computadores: La interfaz Hardware/Software”, Mc Graw-Hill, 1995. 11 Bibliografía Mínima [Tanenbaum2000] Tanenbaum A, “Organización de Computadores: Un enfoque Estructurado”, 4ta Edición, Prentice-Hall, 2000. (10 Ejemplares) [Martínez2000] Martínez J, “Organización y Arquitectura de Computadores”, Prentice-Hall, 2000. [Ujaldon2003] Ujaldon Martínez Manuel, “Arquitectura del PC”, Volumen I a IV, Editorial Ciencia-3, Madrid, 2003. 12 Bibliografía Mínima [Hennessy2002] Patterson, “Computer Architecture: A Quantitative Approach”, 3era Edition, Morgan-Kaufmann, 2002. 13 Bibliografía Complementaria [Ujaldon2005] Ujaldon Martínez Manuel, “Procesadores Gráficos para PC”, Editorial Ciencia-3, Madrid, 2005. [Ujaldon2007] Ujaldon Martínez Manuel, “Arquitectura del PC: 1400 cuestiones y problemas resueltos”, Editorial Ciencia-3, Madrid, 2007. 14 Metodología Desarrollo de clases expositivas de parte del profesor. Desarrollo de laboratorios (asistencia obligatoria). Los alumnos deberán participar activamente en clases mediante la proposición de soluciones a problemas planteados por el profesor u otros alumnos.Se propiciará el trabajo en grupo, de manera que los alumnos colaboren entre sí, tanto en clases teóricas como prácticas. 15 [ Introducción ]¿Qué es un computador? DEFINICIÓN DE LA RAE: Máquina electrónica, analógica o digital, dotada de una memoria de gran capacidad y de métodos de tratamiento de información, capaz de resolver problemas matemáticos y lógicos mediante la utilización automática de programas informáticos. Se acepta computador o computadora. 16 Präsentat ion [ Introducción ]¿Qué es un computador? DEFINICIÓN DE Stallings: Máquina digital electrónica programable para el tratamiento automático de la información, capaz de recibirla, operar sobre ella mediante procesos determinados y suministrar los resultados de tales operaciones. 17 Präsentat ion Introducción “Distinguir entre Arquitectura y organización” Arquitectura se refiere a los atributos de un sistema que son visibles para un programador – Impacto Directo en la ejecución lógica de un programa: Conjunto de instrucciones, número de bits usados en la representación de Datos (números, caracteres, etc), los mecanismos de entrada Salida, y las técnicas para direccionamiento de memoria. 18 Introducción La organización de Computadores se refiere a las unidades funcionales y sus interconexiones que dan lugar a especificaciones arquitectónicas. Detalles Hardware transparentes al programador tales como señales de control, interfaces entre el computador y los periféricos y la tecnología de Memoria usada. 19 Funcionamiento [ Introducción ] Transferencia de datos Control Almacenamiento de datos Procesamiento de datos 20 Präsentat ion Funcionamiento [ Introducción ] TRANSFERENCIA Transferencia de datos Control Almacenamiento de datos Procesamiento de datos 21 Präsentat ion Funcionamiento [ Introducción ] ALMACENAMIENTO Transferencia de datos Control Almacenamiento de datos Procesamiento de datos 22 Präsentat ion Funcionamiento [ Introducción ] PROCESAMIENTO CON USO DE MEMORIA Transferencia de datos Control Almacenamiento de datos Procesamiento de datos 23 Präsentat ion Funcionamiento [ Introducción ] PROCESAMIENTO CON USO DE MEMORIA Y TRANSFERENCIA Transferencia de datos Control Almacenamiento de datos Procesamiento de datos 24 24 Arquitectura de Computadores Präsentat ion Estructura [ Introducción ] Computer Peripherals Central Processing Unit Computer Main Memory Systems Interconnection Input Output Communication lines 25 25 Arquitectura de Computadores Präsentat ion Estructura [ Introducción ] CPU Computer Arithmetic and Login Unit Registers I/O System Bus CPU Internal CPU Interconnection Memory Control Unit 26 26 Arquitectura de Computadores Präsentat ion Estructura [ Introducción ] Control Unit CPU Lógica Secuencia ALU Internal Bus Control Unit Registros y Decodificadores De la Unidad de Control Registers Memoria De Control 27 27 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Generación Años 0 hasta 1945 Características Sistemas mecánicos y electro-mecánicos 1 1945 – 1955 Tubos al vacío, tableros 2 1955 – 1965 Transistores y sistemas por lotes 3 1965 – 1980 Circuitos integrados y multiprogramación 4 desde 1980 Computadores personales 28 28 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia La generación 0 (hasta 1945) • Ábacos • Calculadoras mecánicas. • Sistemas basados en relés. 29 29 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Primera Computadora Digital (mecánica) Usada para calcular tablas numéricas, calculaba cualquier función algebraica y almacenaba números. Se programaba con tarjetas. Charles Babbage y Ada Lovelace. Difference Engine (1822) 30 30 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Usada para computar tablas matemáticas y de navegación. Harvard Mark I (1930) 31 31 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia La primera generación (1940-1955) • Luego se utilizan tubos al vacío • Eran enormes (20.000 tubos) y lentas (un ciclo 1 seg.) • Un solo grupo diseñaba, construía, programaba, operaba y mantenía cada máquina. • Toda la programación se hacía en lenguaje máquina (alambrando tableros por ejemplo). • No existían los sistemas operativos. • En 1950 se introducen las tarjetas perforadas. 32 32 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia Usada en la Segunda Guerra Mundial para decifrar los mensajes de los alemanes. Colossus (1945) 33 33 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] ENIAC (1946) 34 34 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] UNIVAC (1946) 35 35 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Primera máquina que funcionó con un programa almacenado. John von Neumann, Princeton Manchester Mark I (1948) 36 36 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia La segunda generación (1955-1965) • Se introducen los transistores. • Distinción entre diseñadores, constructores, programadores, operadores y personal de mantenimiento. • Mainframes en salas acondicionadas. • Se escribían los programas en papel, luego se perforaban las tarjetas, cuarto de entrada, café, esperar la salida. • Los operadores toman las tarjetas del programa y colocan también los del compilador. • Se crea el proceso por lotes que agrupa trabajos. 37 37 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Transistor (1947) 38 38 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Máquina que funcionaba con tarjetas. JOHNNIAC (1954) 39 39 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Tarjeta sin perforar 40 40 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Línea de programa A = 1 5 6 Tarjeta perforada 41 41 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Primera máquina comercial con hardware de punto flotante (5kFLOPS). IBM 704 (1955) 42 42 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Primer compilador FORTRAN para IBM 704 (Formula Translator) FORTRAN (1957) 43 43 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] 4KB de memoria expandible a 16KB. Buena para leer tarjetas, copiar cintas e imprimir resultados, pero mala para cáclulos numéricos. Se utilizaba con fines comerciales (bancos, etc.) IBM 1401(1959) 44 44 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia IBM 1401: Centro de Cómputo 45 45 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Buena para hacer cómputos, se utilizaba con fines científicos. IBM 7094 46 46 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] a) b) c) d) e) f) IBM 1401 – IBM 7094: los programadores llevan tarjetas La 1401 lee un lote de tarjetas y los graba en la cinta Un operador lleva la cinta a la 7094 La 7094 realiza los cómputos Un operador lleva la cinta a una 1401 La 1401 imprime las salidas 47 47 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Fortran Monitor System Trabajo en FORTRAN 48 48 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia ERMA, General Electric (1959) 49 49 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia Primer video-juego. Estudiantes de MIT (1962) 50 50 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia Invención del mouse (1964). 51 51 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia La tercera generación (1965-1980) • Se introducen los circuitos integrados, lo cual es una gran ventaja en el precio y desempeño del computador. • Se introduce el sistema IBM 360 altamente compatible. • Se introduce la multiprogramación • Se introducen los discos duros. • Se introduce el tiempo compartido entre usuarios. 52 52 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Software compatible con IBM 7094, 1401 entre otros. IBM 360 (1964) 53 53 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Circuitos integrados 54 54 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] IBM 360 55 55 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia GE 625 (1965) 56 56 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia 4K de palabras de 18 bits. US$ 120.000 < 5% del precio de la IBM 7094 DEC PDP-1 (1961) 57 57 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia Fundación de Intel (1968) 58 58 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia #include main() { for(;;) printf("Hello world..."\n); } Laboratorio Bell desarrolla el lenguaje C (1972) 59 59 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia MULTICS (1976) 60 60 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia PDP-11/70 (1974) 61 61 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia De MULTICS nace UNICS (UNiplexed Information and Computing Service) luego se cambió a UNIX. Era un sistema abierto lo que generó un caos. IEEE generó un estándar llamado POSIX. 62 62 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia Primer microprocesador en un chip Intel 4004 (1971) 63 Präsentat ion [ Introducción ] Historia Intel 4004 (1971) 64 Präsentat ion Historia [ Introducción ] Steve Jobs & Steve Wosniak Appel I (1976) 65 65 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] ALTAIR 8800 (1975) 66 66 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Apple II (1978) US$ 1930 67 67 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Microsoft (1978) 68 68 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia La cuarta generación (desde 1980) • Usan LSI (large scale integration). • Intel 8080 (8 bits) -> IBM PC (1980) con DOS. • Intel 80286 (1983), 80386 (1985) y 80486 (1989). • GUI (graphical User Interface) -> Macintosh • Microsoft adopta GUI y desarrolla Windows (sobre DOS) • Microsoft saca Windows 95 como sistema operativo, luego Windows 98 (basado en 16 bits), Windows NT (32 bits) con ideas de VAX VMS. • Windows NT 5.0 se transformó en Windows 2000 • Windows 98 se transformó en Windows Me. • Windows XP 69 69 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia La cuarta generación (desde 1980) • UNIX se mantiene más fuerte en computadores potentes • Se basa en chips RISC de alto desempeño. • Pentium Liunx es una alternativa a Windows • Unix saca X Windows basado en GUI • Se introducen sistemas operativos en red (varios computadores conectados) y sistemas operativos distribuidos (múltiples procesadores). • continuará… 70 70 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] IBM PC (1981) 71 71 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Commodore 64 (1982) 72 72 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Disco Duro Memorex 10MB (1983) 73 73 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia #include main() { char *s1, *s2; par{ s1 = "Hello"; s2 = "world\n"; } cout << s1 << s2 << endl; return(0); } AT&T y Laboratorio Bell desarrollan C++ (1983) 74 74 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] IBM PC/AT (1983) 75 75 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Sony introduce el CD (1984) 76 76 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Commodore Amiga (1985) 77 77 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Macintosh (1984) 78 78 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] X Windows para UNIX (1984) 79 79 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Sparcstation (1989) 80 80 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] “Estoy construyendo un sistema operativo gratuito (no es más que un hobby, no será una cosa grande y profesional como GNU) para clónicos AT (con un 386 o 346).” Linus Torvalds, Helsinki, Oct. 91 Nace LINUX 81 81 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Intel Pentium (1993) 82 82 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Appel Newton (1993) 83 83 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Windows 95 (1995) 84 84 Arquitectura de Computadores Präsentat ion Historia [ Introducción ] Power Macintosh (1994) 85 85 Arquitectura de Computadores Präsentat ion [ Introducción ] Historia 86 86 Arquitectura de Computadores Präsentat ion [ Introducción ] LENGUAJES, NIVELES Y MÁQUINAS VIRTUALES. Modelo Básico y necesidad de Modelo Jerárquico [Tanenbaum2000] 87 LENGUAJES, NIVELES Y MÁQUINAS VIRTUALES Controlador de disco flexible. 16 comandos, c/u se especifica cargando entre 1 y 9 bytes en un registro del dispositivo. Comandos de lectura, escritura, movimiento del brazo, formateo de pistas. Inicialización, detección, reestablecimiento, recalibración del controlador y las unidades de disco. 88 LENGUAJES, NIVELES Y MÁQUINAS VIRTUALES Comandos básicos son READ y WRITE: requieren 13 parámetros empacados en 9 bytes. Los parámetros especifican: Dirección del bloque de disco, número de sectores por pista, modo de grabación empleado, etc. (Evitar la programación del HW, a través de máquinas virtuales con lenguajes de programación más cercanos a las personas.) 89 MÁQUINAS MULTINIVELES ACTUALES Nivel 0: N. de lógica digital. Nivel 1: N. de microprogramación o microarquitectura. Nivel 2: N. de máquina convencional, de arquitectura del set de instrucciones. Nivel 3: N. de sistema operativo. Nivel 4: N. de lenguaje ensamblador. Nivel 5: N. de lenguajes orientados a problemas 90 91 92 Interpretes / Traductor (Tanenbaum2000) Interpete: Traductor: 93 Nivel 0: Nivel de lógica digital. Corresponde al HW de la máquina. Está conformado por memorias RAM, memorias ROM, registros, unidades aritmético lógicas, unidad de control, buses de datos, buses de direcciones, bus de control, compuertas lógicas, fuentes de poder, etc. 94 Nivel 0: Nivel de lógica digital. Bajo este nivel existe un nivel denominado nivel de dispositivo, conformado por los elementos básicos con los cuales están construidos las compuertas lógicas, a saber, los transistores. El funcionamiento de los transistores, o de los semiconductores en general cae en el campo de la física de estado sólido. 95 Nivel 1: Nivel de microarquitectura (ó microprogramación). El nivel de microarquitectura está conformado por una máquina virtual denominada microprograma. El microprograma es un programa interprete de las instrucciones de salida del nivel de máquina convencional, que generalmente se implementa en firmware. 96 Nivel 1: Nivel de microarquitectura (ó microprogramación). La función del microprograma es generar los valores lógicos (0 y 1) de las líneas de control del HW de la máquina, que junto con un secuenciamiento adecuado ejecutan sobre el Hardware (Hw) las instrucciones del nivel anterior. 97 Nivel 2: Nivel de máquina convencional. Este nivel se denomina también nivel de arquitectura del set de instrucciones. En este nivel se definen cuestiones como el set de instrucciones de lenguaje de máquina, el formato de las instrucciones, las formas de direccionamiento, el largo y funcionalidad de los registros (de propósito general y específico), etc. 98 Nivel 2: Nivel de máquina convencional. Los manuales de referencia de lenguaje de máquina de los fabricantes de un computador, tratan de la máquina virtual de nivel 2. El set de instrucciones de lenguaje de máquina describe las instrucciones que el microprograma lleva a cabo sobre el Hw. 99 Nivel 3: Nivel de sistema operativo. El nivel de SO está conformado por un programa denominado sistema operativo. El sistema operativo puede visualizarse de dos formas: SO como máquina extendida: Presenta al programador una máquina extendida o máquina virtual, con un conjunto de instrucciones de alto nivel, con lo cual se configura una abstracción sencilla de los elementos de una computadora. 100 Nivel 3: Nivel de sistema operativo. SO como administrador de recursos: Los recursos de una computadora son: Procesadores, memoria, dispositivos de E/S. El SO asegura el correcto uso de los recursos de la computadora entre programas que piden el acceso a estos recursos que son compartidos. 101 Nivel 3: Nivel de sistema operativo. Ejemplo: Un SO de red, ordena el uso de un recurso compartido como una impresora por los diferentes usuarios. El nivel de sistema operativo es un nivel híbrido. La mayoría de las instrucciones de este nivel están presente en el nivel 2, por lo que son ejecutadas directamente por el microprograma. 102 Nivel 3: Nivel de sistema operativo. Además existen otras instrucciones que tiene que ver con cuestiones como la creación, ejecución y comunicación de procesos (programa en ejecución). 103 Nivel 3: Nivel de sistema operativo. Las funciones del sistema operativo son básicamente 4: Administración de procesos, Sistema de archivos, Administración de memoria, Administración de los dispositivos de E/S. 104 Nivel 4: Nivel de lenguaje ensamblador. Este nivel está conformado por un programa traductor denominado ensamblador. El lenguaje ensamblador es una forma simbólica de los lenguajes subyacentes. En general corresponde a una forma simbólica del lenguaje de máquina convencional o lenguaje de máquina que es un lenguaje binario. 105 Nivel 4: Nivel de lenguaje ensamblador. Los símbolos del lenguaje ensamblador son típicamente ADD, SUB, MUL, DIV, que representan operaciones como sumar, restar, multiplicar y dividir. La tarea del ensamblador en una primera instancia es traducir el lenguaje simbólico a lenguaje de máquina. 106 Nivel 4: Nivel de lenguaje ensamblador. El programa ensamblador como traductor toma el programa fuente (programa con instrucciones en símbolos) y lo convierte a un programa objeto, que es el programa que realmente se ejecuta. 107 Nivel 4: Nivel de lenguaje ensamblador. Cuando se ejecuta el programa objeto hay tres niveles presentes: El nivel de microprogramación, el nivel de máquina convencional y el nivel de sistema operativo. 108 Nivel 4: Nivel de lenguaje ensamblador. En tiempo de ejecución hay 3 programas presentes en memoria: El programa objeto del usuario, el sistema operativo y el microprograma. 109 Nivel 5 y 6 Nivel 5: Nivel de lenguajes orientados a problemas. Este nivel está constituido por programas traductores denominados compiladores. Los lenguajes de nivel 5 son denominados de alto nivel dado que son muy cercanos a las personas. Ejemplos de estos lenguajes son el Pascal, el Fortran, C, Cobol, entre otros. 110 Nivel 5 y 6 Nivel 6 y superiores: Aplicaciones. Este nivel provee de máquinas virtuales orientadas a aplicaciones específicas. Entre las máquinas virtuales presentes en este nivel están las planillas de cálculo, procesadores de texto, etc. 111 Otras Clasificaciones La arquitectura Von Newman sigue el ciclo de ejecución secuencial de instrucciones (una a una) que opera sobre datos escalares. No obstante hay otros modelos de arquitectura. La clasificación más aceptada desde el punto de vista de la estructura del Computador, es la de “Flynn”, la cual se realiza según el número de Instrucciones o datos implicados en cada ciclo de reloj 112 Clasificaciones Arquitecturas SISD (Single Instruction – Single Data) construccion de procesadores Superescalares, que arrancan varias instrucciones simultaneamente, aunque se siguen considerando SISD, como los PowerPC y los Intel. (Von Newman) SIMD (Single Instruction – Multiple Data): Computadores vectoriales 113 114 Taxonomía de Flynn MIMD (Multiple Instruction – Multiple Data): Multiprocesadores con Memorias Compartidas y los Multicomputadores con Memoria Independiente. Procesadores Multinucleo, que son Chip con múltiples procesadores en su interior. Máquinas MIMD son Core Duo (dos procesadores) y los Core Quad (cuatro procesadores), también de Intel, donde cada procesador es a su vez superescalar. 115 Taxonomía de Flynn SISD (Single Instruction – Single Data) construccion de procesadores Superescalares, que arrancan varias instrucciones simultaneamente, aunque se siguen considerando SISD, como los PowerPC y los Intel. MISD (Multiple Instruction – Simple Data): Diversas instrucciones operan sobre un único Dato. Son las más alejadas de las arquitecturas convencionales. 116