La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1 ARQUITECTURA DE COMPUTADORES II ICI-223 Ing Civil Informática Depto de Computación e Informática.

Presentaciones similares


Presentación del tema: "1 ARQUITECTURA DE COMPUTADORES II ICI-223 Ing Civil Informática Depto de Computación e Informática."— Transcripción de la presentación:

1 1 ARQUITECTURA DE COMPUTADORES II ICI-223 Ing Civil Informática Depto de Computación e Informática

2 2 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.

3 3 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. 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.

4 4 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. 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. En conjunto con las clases expositivas, se realizarán clases de ejercitación Laboratorios y resolución de tareas grupales.

5 5 Temario Inicial 1 Introducción 1 Introducción 2 Organización del Computador 2 Organización del Computador 3 Sistemas de Memoria 3 Sistemas de Memoria 4 Interfaces y Comunicaciones 4 Interfaces y Comunicaciones 5 Organización Funcional 5 Organización Funcional 6 Multiprocesadores y Arquitecturas Alternativas 6 Multiprocesadores y Arquitecturas Alternativas 7 Aumento de Desempeño 7 Aumento de Desempeño 8 Arquitecturas Contemporáneas 8 Arquitecturas Contemporáneas

6 6 Metodología Autoaprendizaje - Lecturas Autoaprendizaje - Lecturas Clases Expositivas – Trabajos grupales Clases Expositivas – Trabajos grupales Laboratorios: Laboratorios: Ensamblador (6-7) + Circuitos Digitales (Proyecto-Etapas). Ensamblador (6-7) + Circuitos Digitales (Proyecto-Etapas). Hardware y configuración PC () Hardware y configuración PC () Trabajo Grupal de Investigación (grupos semestrales) Trabajo Grupal de Investigación (grupos semestrales) Página WEB: Página WEB:

7 7 Controles Prueba 1: 10 Octubre 2008 Prueba 1: 10 Octubre 2008 Prueba 2: 21 Noviembre 2008 Prueba 2: 21 Noviembre 2008 Prueba Acumulativa: 12 Diciembre 2008 Prueba Acumulativa: 12 Diciembre 2008

8 8 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

9 9 Laboratorio Ensamblador+Proyecto 27 Octubre al 07 Noviembre 2008 Lab: 27/ /10 – 31/ /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

10 10 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. 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. 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.

11 11 Bibliografía Mínima [Morris1991] Morris M, Ingeniería Computacional: Diseño del Hardware, prentice Hall, [Morris1991] Morris M, Ingeniería Computacional: Diseño del Hardware, prentice Hall, [Stalling2006] Stalling Williams, organización y arquitectura de Computadoras, 7ª Edición, Pearson Educación, 2006.(7 Ejemplares) [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, [Paterson1995] Paterson D, organización y diseño de computadores: La interfaz Hardware/Software, Mc Graw-Hill, 1995.

12 12 Bibliografía Mínima [Tanenbaum2000] Tanenbaum A, Organización de Computadores: Un enfoque Estructurado, 4ta Edición, Prentice-Hall, (10 Ejemplares) [Tanenbaum2000] Tanenbaum A, Organización de Computadores: Un enfoque Estructurado, 4ta Edición, Prentice-Hall, (10 Ejemplares) [Martínez2000] Martínez J, Organización y Arquitectura de Computadores, Prentice-Hall, [Martínez2000] Martínez J, Organización y Arquitectura de Computadores, Prentice-Hall, [Ujaldon2003] Ujaldon Martínez Manuel, Arquitectura del PC, Volumen I a IV, Editorial Ciencia-3, Madrid, [Ujaldon2003] Ujaldon Martínez Manuel, Arquitectura del PC, Volumen I a IV, Editorial Ciencia-3, Madrid, 2003.

13 13 Bibliografía Mínima [Hennessy2002] Patterson, Computer Architecture: A Quantitative Approach, 3era Edition, Morgan-Kaufmann, [Hennessy2002] Patterson, Computer Architecture: A Quantitative Approach, 3era Edition, Morgan-Kaufmann, 2002.

14 14 Bibliografía Complementaria [Ujaldon2005] Ujaldon Martínez Manuel, Procesadores Gráficos para PC, Editorial Ciencia-3, Madrid, [Ujaldon2005] Ujaldon Martínez Manuel, Procesadores Gráficos para PC, Editorial Ciencia-3, Madrid, [Ujaldon2007] Ujaldon Martínez Manuel, Arquitectura del PC: 1400 cuestiones y problemas resueltos, Editorial Ciencia-3, Madrid, [Ujaldon2007] Ujaldon Martínez Manuel, Arquitectura del PC: 1400 cuestiones y problemas resueltos, Editorial Ciencia-3, Madrid, 2007.

15 15Metodología Desarrollo de clases expositivas de parte del profesor. Desarrollo de clases expositivas de parte del profesor. Desarrollo de laboratorios (asistencia obligatoria). 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. 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.

16 16 [ Introducción ] Präsentat ion ¿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.

17 17 [ Introducción ] Präsentat ion ¿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.

18 18 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. 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.

19 19 Introducción La organización de Computadores se refiere a las unidades funcionales y sus interconexiones que dan lugar a especificaciones arquitectónicas. 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. 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.

20 20 [ Introducción ] Präsentat ion Funcionamiento Transferencia de datos Control Almacenamiento de datos Procesamiento de datos

21 21 [ Introducción ] Präsentat ion Funcionamiento Transferencia de datos Control Almacenamiento de datos Procesamiento de datos TRANSFERENCIA

22 22 [ Introducción ] Präsentat ion Funcionamiento Transferencia de datos Control Almacenamiento de datos Procesamiento de datos ALMACENAMIENTO

23 23 [ Introducción ] Präsentat ion Funcionamiento Transferencia de datos Control Almacenamiento de datos Procesamiento de datos PROCESAMIENTO CON USO DE MEMORIA

24 24 [ Introducción ] Präsentat ion Funcionamiento 24 Arquitectura de Computadores Transferencia de datos Control Almacenamiento de datos Procesamiento de datos PROCESAMIENTO CON USO DE MEMORIA Y TRANSFERENCIA

25 25 [ Introducción ] Präsentat ion Estructura 25 Arquitectura de Computadores Computer Main Memory Input Output Systems Interconnection Peripherals Communication lines Central Processing Unit Computer

26 26 [ Introducción ] Präsentat ion Estructura 26 Arquitectura de Computadores Computer Arithmetic and Login Unit Control Unit Internal CPU Interconnection Registers CPU I/O Memory System Bus CPU

27 27 [ Introducción ] Präsentat ion Estructura 27 Arquitectura de Computadores CPU Memoria De Control Registros y Decodificadores De la Unidad de Control Lógica Secuencia Control Unit ALU Registers Internal Bus Control Unit

28 28 [ Introducción ] Präsentat ion Historia GeneraciónAñosCaracterísticas 0hasta 1945Sistemas mecánicos y electro-mecánicos – 1955Tubos al vacío, tableros – 1965Transistores y sistemas por lotes – 1980Circuitos integrados y multiprogramación 4desde 1980Computadores personales 28 Arquitectura de Computadores

29 29 [ Introducción ] Präsentat ion Historia La generación 0 (hasta 1945) Ábacos Calculadoras mecánicas. Sistemas basados en relés. 29 Arquitectura de Computadores

30 30 [ Introducción ] Präsentat ion Historia Difference Engine (1822) 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. 30 Arquitectura de Computadores

31 31 [ Introducción ] Präsentat ion Historia Harvard Mark I (1930) Usada para computar tablas matemáticas y de navegación. 31 Arquitectura de Computadores

32 32 [ Introducción ] Präsentat ion Historia La primera generación ( ) Luego se utilizan tubos al vacío Eran enormes ( 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 Arquitectura de Computadores

33 33 [ Introducción ] Präsentat ion Historia Usada en la Segunda Guerra Mundial para decifrar los mensajes de los alemanes. Colossus (1945) 33 Arquitectura de Computadores

34 34 [ Introducción ] Präsentat ion Historia ENIAC (1946) 34 Arquitectura de Computadores

35 35 [ Introducción ] Präsentat ion Historia UNIVAC (1946) 35 Arquitectura de Computadores

36 36 [ Introducción ] Präsentat ion Historia Manchester Mark I (1948) Primera máquina que funcionó con un programa almacenado. John von Neumann, Princeton 36 Arquitectura de Computadores

37 37 [ Introducción ] Präsentat ion Historia La segunda generación ( ) 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 Arquitectura de Computadores

38 38 [ Introducción ] Präsentat ion Historia Transistor (1947) 38 Arquitectura de Computadores

39 39 [ Introducción ] Präsentat ion Historia JOHNNIAC (1954) Máquina que funcionaba con tarjetas. 39 Arquitectura de Computadores

40 40 [ Introducción ] Präsentat ion Historia Tarjeta sin perforar 40 Arquitectura de Computadores

41 41 [ Introducción ] Präsentat ion Historia A = Tarjeta perforada Línea de programa 41 Arquitectura de Computadores

42 42 [ Introducción ] Präsentat ion Historia IBM 704 (1955) Primera máquina comercial con hardware de punto flotante (5kFLOPS). 42 Arquitectura de Computadores

43 43 [ Introducción ] Präsentat ion Historia FORTRAN (1957) Primer compilador FORTRAN para IBM 704 (Formula Translator) 43 Arquitectura de Computadores

44 44 [ Introducción ] Präsentat ion Historia IBM 1401(1959) 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.) 44 Arquitectura de Computadores

45 45 [ Introducción ] Präsentat ion Historia IBM 1401: Centro de Cómputo 45 Arquitectura de Computadores

46 46 [ Introducción ] Präsentat ion Historia IBM 7094 Buena para hacer cómputos, se utilizaba con fines científicos. 46 Arquitectura de Computadores

47 47 [ Introducción ] Präsentat ion Historia IBM 1401 – IBM 7094: a)los programadores llevan tarjetas b)La 1401 lee un lote de tarjetas y los graba en la cinta c)Un operador lleva la cinta a la 7094 d)La 7094 realiza los cómputos e)Un operador lleva la cinta a una 1401 f)La 1401 imprime las salidas 47 Arquitectura de Computadores

48 48 [ Introducción ] Präsentat ion Historia Trabajo en FORTRAN Fortran Monitor System 48 Arquitectura de Computadores

49 49 [ Introducción ] Präsentat ion Historia ERMA, General Electric (1959) 49 Arquitectura de Computadores

50 50 [ Introducción ] Präsentat ion Historia Primer video-juego. Estudiantes de MIT (1962) 50 Arquitectura de Computadores

51 51 [ Introducción ] Präsentat ion Historia Invención del mouse (1964). 51 Arquitectura de Computadores

52 52 [ Introducción ] Präsentat ion Historia La tercera generación ( ) 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 Arquitectura de Computadores

53 53 [ Introducción ] Präsentat ion Historia IBM 360 (1964) Software compatible con IBM 7094, 1401 entre otros. 53 Arquitectura de Computadores

54 54 [ Introducción ] Präsentat ion Historia Circuitos integrados 54 Arquitectura de Computadores

55 55 [ Introducción ] Präsentat ion Historia IBM Arquitectura de Computadores

56 56 [ Introducción ] Präsentat ion Historia GE 625 (1965) 56 Arquitectura de Computadores

57 57 [ Introducción ] Präsentat ion Historia DEC PDP-1 (1961) 4K de palabras de 18 bits. US$ < 5% del precio de la IBM Arquitectura de Computadores

58 58 [ Introducción ] Präsentat ion Historia Fundación de Intel (1968) 58 Arquitectura de Computadores

59 59 [ Introducción ] Präsentat ion Historia Laboratorio Bell desarrolla el lenguaje C (1972) 59 Arquitectura de Computadores #include main() { for(;;) printf("Hello world..."\n); }

60 60 [ Introducción ] Präsentat ion Historia MULTICS (1976) 60 Arquitectura de Computadores

61 61 [ Introducción ] Präsentat ion Historia PDP-11/70 (1974) 61 Arquitectura de Computadores

62 62 [ Introducción ] Präsentat ion 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 Arquitectura de Computadores

63 63 [ Introducción ] Präsentat ion Historia Primer microprocesador en un chip Intel 4004 (1971)

64 64 [ Introducción ] Präsentat ion Historia Intel 4004 (1971)

65 65 [ Introducción ] Präsentat ion Historia Appel I (1976) 65 Arquitectura de Computadores Steve Jobs & Steve Wosniak

66 66 [ Introducción ] Präsentat ion Historia ALTAIR 8800 (1975) 66 Arquitectura de Computadores

67 67 [ Introducción ] Präsentat ion Historia Apple II (1978) US$ Arquitectura de Computadores

68 68 [ Introducción ] Präsentat ion Historia Microsoft (1978) 68 Arquitectura de Computadores

69 69 [ Introducción ] Präsentat ion Historia La cuarta generación (desde 1980) Usan LSI (large scale integration). Intel 8080 (8 bits) -> IBM PC (1980) con DOS. Intel (1983), (1985) y (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 Arquitectura de Computadores

70 70 [ Introducción ] Präsentat ion 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 Arquitectura de Computadores

71 71 [ Introducción ] Präsentat ion Historia IBM PC (1981) 71 Arquitectura de Computadores

72 72 [ Introducción ] Präsentat ion Historia Commodore 64 (1982) 72 Arquitectura de Computadores

73 73 [ Introducción ] Präsentat ion Historia Disco Duro Memorex 10MB (1983) 73 Arquitectura de Computadores

74 74 [ Introducción ] Präsentat ion Historia AT&T y Laboratorio Bell desarrollan C++ (1983) 74 Arquitectura de Computadores #include main() { char *s1, *s2; par{ s1 = "Hello"; s2 = "world\n"; } cout << s1 << s2 << endl; return(0); }

75 75 [ Introducción ] Präsentat ion Historia IBM PC/AT (1983) 75 Arquitectura de Computadores

76 76 [ Introducción ] Präsentat ion Historia Sony introduce el CD (1984) 76 Arquitectura de Computadores

77 77 [ Introducción ] Präsentat ion Historia Commodore Amiga (1985) 77 Arquitectura de Computadores

78 78 [ Introducción ] Präsentat ion Historia Macintosh (1984) 78 Arquitectura de Computadores

79 79 [ Introducción ] Präsentat ion Historia X Windows para UNIX (1984) 79 Arquitectura de Computadores

80 80 [ Introducción ] Präsentat ion Historia Sparcstation (1989) 80 Arquitectura de Computadores

81 81 [ Introducción ] Präsentat ion Historia 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 Arquitectura de Computadores

82 82 [ Introducción ] Präsentat ion Historia Intel Pentium (1993) 82 Arquitectura de Computadores

83 83 [ Introducción ] Präsentat ion Historia Appel Newton (1993) 83 Arquitectura de Computadores

84 84 [ Introducción ] Präsentat ion Historia Windows 95 (1995) 84 Arquitectura de Computadores

85 85 [ Introducción ] Präsentat ion Historia Power Macintosh (1994) 85 Arquitectura de Computadores

86 86 [ Introducción ] Präsentat ion Historia 86 Arquitectura de Computadores

87 87 [ Introducción ] LENGUAJES, NIVELES Y MÁQUINAS VIRTUALES. Modelo Básico y necesidad de Modelo Jerárquico [Tanenbaum2000]

88 88 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.

89 89 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.)

90 90 MÁQUINAS MULTINIVELES ACTUALES Nivel 0: N. de lógica digital. Nivel 0: N. de lógica digital. Nivel 1: N. de microprogramación o microarquitectura. Nivel 1: N. de microprogramación o microarquitectura. Nivel 2: N. de máquina convencional, de arquitectura del set de instrucciones. Nivel 2: N. de máquina convencional, de arquitectura del set de instrucciones. Nivel 3: N. de sistema operativo. Nivel 3: N. de sistema operativo. Nivel 4: N. de lenguaje ensamblador. Nivel 4: N. de lenguaje ensamblador. Nivel 5: N. de lenguajes orientados a problemas Nivel 5: N. de lenguajes orientados a problemas

91 91

92 92

93 93 Interpretes / Traductor (Tanenbaum2000) Interpete: Interpete: Traductor: Traductor:

94 94 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. 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.

95 95 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. 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.

96 96 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.

97 97 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.

98 98 Nivel 2: Nivel de máquina convencional. Este nivel se denomina también nivel de arquitectura del set de instrucciones. 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. 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.

99 99 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. 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.

100 100 Nivel 3: Nivel de sistema operativo. El nivel de SO está conformado por un programa denominado sistema operativo. El nivel de SO está conformado por un programa denominado sistema operativo. El sistema operativo puede visualizarse de dos formas: 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. 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.

101 101 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. 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.

102 102 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. 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.

103 103 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). 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).

104 104 Nivel 3: Nivel de sistema operativo. Las funciones del sistema operativo son básicamente 4: Las funciones del sistema operativo son básicamente 4: Administración de procesos, Administración de procesos, Sistema de archivos, Sistema de archivos, Administración de memoria, Administración de memoria, Administración de los dispositivos de E/S. Administración de los dispositivos de E/S.

105 105 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. 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. En general corresponde a una forma simbólica del lenguaje de máquina convencional o lenguaje de máquina que es un lenguaje binario.

106 106 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. 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. La tarea del ensamblador en una primera instancia es traducir el lenguaje simbólico a lenguaje de máquina.

107 107 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. 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.

108 108 Nivel 4: Nivel de lenguaje ensamblador. Cuando se ejecuta el programa objeto hay tres niveles presentes: Cuando se ejecuta el programa objeto hay tres niveles presentes: El nivel de microprogramación, El nivel de microprogramación, el nivel de máquina convencional y el nivel de máquina convencional y el nivel de sistema operativo. el nivel de sistema operativo.

109 109 Nivel 4: Nivel de lenguaje ensamblador. En tiempo de ejecución hay 3 programas presentes en memoria: En tiempo de ejecución hay 3 programas presentes en memoria: El programa objeto del usuario, El programa objeto del usuario, el sistema operativo y el sistema operativo y el microprograma. el microprograma.

110 110 Nivel 5 y 6 Nivel 5: Nivel de lenguajes orientados a problemas. Este nivel está constituido por programas traductores denominados compiladores. 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. 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.

111 111 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. 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.

112 112 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 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 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

113 113 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) 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 SIMD (Single Instruction – Multiple Data): Computadores vectoriales

114 114

115 115 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. 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.

116 116 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. 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. MISD (Multiple Instruction – Simple Data): Diversas instrucciones operan sobre un único Dato. Son las más alejadas de las arquitecturas convencionales.


Descargar ppt "1 ARQUITECTURA DE COMPUTADORES II ICI-223 Ing Civil Informática Depto de Computación e Informática."

Presentaciones similares


Anuncios Google