FICHA DE ASIGNATURAS DE INGENIERÍA TÉCNICA INDUSTRIAL ESP. EN ELECTRÓNICA INDUSTRIAL PARA GUÍA DOCENTE. EXPERIENCIA PILOTO DE CRÉDITOS EUROPEOS. UNIVERSIDADES ANDALUZAS DATOS BÁSICOS DE LA ASIGNATURA NOMBRE: ARQUITECTURA DE COMPUTADORES CÓDIGO: 9033026 AÑO DE PLAN DE ESTUDIO: 1999 TIPO (troncal/obligatoria/optativa) : OPTATIVA Créditos totales (LRU / Créditos LRU/ECTS Créditos LRU/ECTS ECTS): 4,5 / 3,5 teóricos: 3 / 2,5 prácticos: 1,5 / 1 CURSO: 3º CUATRIMESTRE: 1er CICLO: 1º DATOS BÁSICOS DE LOS PROFESORES NOMBRE: Carlos Diego Moreno Moreno CENTRO/DEPARTAMENTO: ESCUELA POLITÉCNICA SUPERIOR / ARQUITECTURA DE COMPUTADORES, ELECTRÓNICA Y TECNOLOGÍA ELECTRÓNICA ÁREA: ARQUITECTURA Y TECNOLOGÍA DE COMPUTADORES Nº DESPACHO: LV6B150 E-MAIL [email protected] TF: 957 21 20 62 URL WEB: www.uco.es/~el1momoc DATOS ESPECÍFICOS DE LA ASIGNATURA 1. DESCRIPTOR Introducción a la arquitectura de computadores. Arquitectura Von Neumann. Unidades funcionales: de cálculo, de control, de memoria, de E/S. 2. SITUACIÓN El presente documento recoge información referente a la asignatura optativa “Arquitectura de Computadores”, de la titulación de Ingeniero Técnico Industrial especialidad de Electrónica Industrial. 2.1. PRERREQUISITOS: Ninguno. 2.2. CONTEXTO DENTRO DE LA TITULACIÓN: Esta asignatura es la continuación temática de “Electrónica Digital” (troncal de segundo curso) y “Estructura de Computadores”(obligatoria de segundo curso). En ella se amplían los conocimientos de la unidad de control; se desarrollan conceptos nuevos referentes a la unidad de cálculo y de entrada/salida; y se aplican los sistemas de memorias estudiados en segundo curso con el estudio de la unidad de memoria. 2.3. RECOMENDACIONES: Haber cursado las dos asignaturas antes mencionadas y la de Informática Industrial de tercer curso. También es recomendable haber estudiado la asignatura optativa “Arquitecturas Basadas en Microprocesadores” para aplicar los conceptos generales de la asignatura a los sistemas de computación actuales. Así mismo, se recomienda cursar la asignatura optativa “Interfaces y Periféricos” para estudiar con más profundidad el tema de unidad de entrada y salida que se trata en esta asignatura. 3. COMPETENCIAS 3.1. COMPETENCIAS TRANSVERSALES/GENÉRICAS: · Capacidad de análisis y síntesis. · Resolución de problemas. · Aprendizaje autónomo. · Capacidad de aplicar los conocimientos en la práctica. · Conocimientos básicos de la profesión. 3.2. COMPETENCIAS ESPECÍFICAS: • Cognitivas (Saber): · Tecnología. · Conocimientos de informática. · Conocimiento de la tecnología, componentes y materiales. • Procedimentales/Instrumentales (Saber hacer): · Redacción e interpretación de documentación técnica. · Resolución de problemas. · Capacidad de aplicar los conocimientos en la práctica. • Actitudinales (Ser): · Autoaprendizaje. · Toma de decisiones. 4. OBJETIVOS El objetivo de esta asignatura, basándonos en los conocimientos adquiridos por los alumnos en las asignaturas de Electrónica Digital y Estructura de Computadores, impartida en el primer y segundo cuatrimestre de segundo curso respectivamente, es dotar a los alumnos de los conocimientos estructurados y avanzados de las distintas unidades que componen un computador. 5. METODOLOGÍA NÚMERO DE HORAS DE TRABAJO DEL ALUMNO: PRIMER SEMESTRE: Nº de Horas: • Clases Teóricas*: 21 • Clases Prácticas*: 10,5 • Exposiciones y Seminarios*: 3,5 • Tutorías Especializadas (presenciales o virtuales): A) Colectivas*: 5 • Realización de Actividades Académicas Dirigidas: A) Con presencia del profesor*: 5 • Otro Trabajo Personal Autónomo: A) Horas de estudio: 37 B) Preparación de Trabajo Personal: 8 • Realización de Exámenes: A) Examen escrito: 3 6. TÉCNICAS DOCENTES (señale con una X las técnicas que va a utilizar en el desarrollo de su asignatura. Puede señalar más de una. También puede sustituirlas por otras): Sesiones académicas teóricas X Sesiones académicas prácticas X Exposición y debate: X Visitas y excursiones: Tutorías especializadas: X Controles de lecturas obligatorias: DESARROLLO Y JUSTIFICACIÓN: · Sesiones académicas de teoría. · Sesiones académicas de problemas (prácticas de aula). · Sesiones académicas prácticas en laboratorio. · Realización de un trabajo personal por parte del alumno (AAD). 7. BLOQUES TEMÁTICOS I.- Unidad de Cálculo del Procesador. II.- Unidad de Control del Procesador. III.- Unidad de Memoria del Procesador. IV.- Unidad de Entrada/Salida del Procesador. 8. BIBLIOGRAFÍA 8.1 GENERAL 1.- "Organización y Diseño de Computadores". D.A. Patterson y J.L. Hennessy. Mc Graw-Hill. 2.- "Arquitectura de Computadores y Procesamiento Paralelo". K. Hwang y F.A. Briggs. Mc Graw-Hill. 3.- "Arquitectura de Computadores: Un enfoque cuantitativo". J.L. Hennesy y D.A. Patterson. Mc Graw-Hill. 4.- "Organización y Arquitectura de Computadores. Principios de estructura y funcionamiento". William Stallings. Ed. Megabyte. 5.- "Organización y Arquitectura de Computadores. Diseño para optimizar prestaciones". William Stallings. Prentice Hall. 8.2 ESPECÍFICA 1.- Handy, Jim. The cache memory book. 2ª ed. Reino Unido. ACADEMIC PRESS LIMITED 1998. 229 p. ISBN 0-12-322980-4. 2.- Kennedy, Ken and Allen, Randy. Optimizing compilers for modern architectures. Morgan Kaufmann. 1st edition (October 22, 2001). 816 pág. ISBN 1558602860 3.- Munchnick, Steven. Advanced compiler design and implementation. Morgan Kaufmann. 1st edition (August 1, 1997). 856 p. ISBN 1558603204. 9. TÉCNICAS DE EVALUACIÓN • Exámenes escritos de teoría y de prácticas de aula (problemas). • Control personal de las prácticas de laboratorio realizadas. • Revisión de las actividades académicas dirigidas: Criterios de evaluación y calificación (referidos a las competencias trabajadas durante el curso): • El 70% de la calificación final de la asignatura será la nota del examen que incluye teoría y problemas. • Un 20% de la calificación final de la asignatura será la nota del examen de prácticas. • El 10% de la calificación final dependerá del trabajo propuesto en las actividades académicas dirigidas (AAD). o La realización del trabajo propuesto en las Actividades Académicas Dirigidas tendrá carácter voluntario, entendiendo que el alumno que no realice dicha actividad solamente puede optar al 90% de la calificación final de la asignatura. Para aprobar la asignatura es necesario: a) Superar el examen de prácticas. b) Superar el examen de teoría. c) Obtener una calificación final superior a 5. PRIMER CUATRIMESTRE SEMANA HORAS DE CLASE Clases de teoría Exposiciones y seminarios Tutorías colectivas de teoría Encuesta de evaluación del profesorado Nº de horas Nº de horas problemas/ sesiones prácticas practicas en aula laboratorio PERIODO DE CLASES Tutorías colectivas de prácticas Actividades académicas dirigidas Examen Actividad docente 1ª semana 1 Tema 1 2ª semana 2 Tema 2 3ª semana 2 Tema 2 4ª semana 2 Tema 3 5ª semana 2 Tema 4 6ª semana 2 Tema 4 7ª semana 2 Tema 4 8ª semana 2 Tema 5 9ª semana Relacionado con el Tema 4 1 1 10ª semana 2 0,5 Tema 5 / Práctica 1 11ª semana 2 2 Tema 6 / Práctica 1 12ª semana 2 2 Tema 7 / Práctica 2 2 Relacionado con el Tema 5 / Práctica 3 Relacionado con el viaje / Viaje Relacionado con el Tema 6 / Práctica 4 Relacionado con el Tema 6 / Práctica 4 13ª semana 1 1 14ª semana 1 15ª semana 1 16ª semana TOTAL TOTAL 1,5 21 3,5 1 5 TEORÍA = 29,5 5 2 2 10,5 PRÁCTICAS = 10,5 5 3 11. TEMARIO DESARROLLADO TEMA 1: ESTRUCTURA VON NEWMAN. COMPUTADORA SECUENCIAL. 1.1.- Componentes y funciones de los bloques de una computadora secuencial. 1.2.- Clasificación atendiendo al programa. 1.3.- Organización de una computadora básica. 1.4.- Conjunto de instrucciones: Secuencia de microinstrucciones. 1.5.- Diseño de la Unidad de Control. 1.6.- Organización de una computadora mejorada. 1.7.- Conjunto de instrucciones y secuencias de microinstrucciones. 1.8.- Computadora Mejorada. Competencias: Capacidad de análisis y síntesis. Capacidad de aplicar los conocimientos en la práctica. Conocimientos básicos de la profesión. Tecnología. Conocimiento de la tecnología, componentes y materiales. TEMA 2: UNIDAD DE CÁLCULO DE UN COMPUTADOR. 2.1.- Introducción: Funciones de la Unidad de Cálculo. Organización del procesador. 2.2.- Unidad Aritmética y Lógica. 2.3.- Procesador aritmético: Componentes Hardware y algoritmos. Operaciones de números binarios sin signo (suma, resta, producto y división). Operaciones de nº binarios en complemento a 2 con signo (suma, resta, producto y división). Operaciones de números en representación de punto flotante. 2.4.- Coprocesadores. Competencias: Conocimientos básicos de la profesión. Tecnología. Conocimiento de la tecnología, componentes y materiales. Resolución de problemas. Conocimientos de informática. TEMA 3: UNIDAD DE CONTROL DE UN COMPUTADOR. 3.1.- Introducción: Función de la Unidad de Control. 3.2.- Técnicas de diseño de la U. de Control. 3.3.- Unidad de Control cableada: Computadora con procesador aritmético. 3.4.- Unidad de Control microprogramada: Computadora mejorada. Computadora microprogramada. Competencias: Conocimientos básicos de la profesión. Tecnología. Conocimiento de la tecnología, componentes y materiales. Resolución de problemas. Conocimientos de informática. Capacidad de aplicar los conocimientos en la práctica. Capacidad de análisis y síntesis. TEMA 4: UNIDAD DE MEMORIA DE UN COMPUTADOR. 4.1.- Introducción: Sistema de memoria de la computadora. 4.2.- Memoria principal semiconductora. 4.3.- Jerarquía de la memoria. 4.4.- Memoria asociativa. 4.5.- Memoria Virtual. 4.6.- Memoria Caché o de reserva. 4.7.- Hardware de administración de la memoria. Competencias: Conocimientos básicos de la profesión. Tecnología. Conocimiento de la tecnología, componentes y materiales. Resolución de problemas. Conocimientos de informática. Capacidad de aplicar los conocimientos en la práctica. Capacidad de análisis y síntesis. Toma de decisiones. TEMA 5: ORGANIZACIÓN ENTRADA/SALIDA. 5.1.- Introducción: Dispositivos periféricos. 5.2.- Interfaz E/S. 5.3.- Transferencia asíncrona de datos. 5.4.- Interrupción prioritaria. 5.5.- Procesador de E/S. 5.6.- Procesador de comunicación de datos. Competencias: Conocimientos básicos de la profesión. Tecnología. Conocimiento de la tecnología, componentes y materiales. Conocimientos de informática. Capacidad de aplicar los conocimientos en la práctica. Capacidad de análisis y síntesis. Toma de decisiones. Redacción e interpretación de documentación técnica. Autoaprendizaje. PRÁCTICAS PRÁCTICA 1: INTRODUCCIÓN AL SIMULADOR DE LA COMPUTADORA MEJORADA. Ejercicio 1: Realizar un programa que calcule la resta de dos números almacenados en memoria. Implementar la resta como suma del complemento a dos del substraendo al minuendo. Almacenar el resultado en una posición de memoria. Ejercicio 2: Realizar un programa que calcule la suma de los valores absolutos de dos números almacenados en memoria. El resultado de la suma debe quedar, asimismo, almacenado en una posición de memoria. Ejercicio 3: Realizar un programa que calcule la suma de todos los números almacenados en una tabla de memoria. El tamaño de la tabla debe ser conocido de antemano e indicado en una posición de memoria. El resultado debe quedar en el acumulador. PRÁCTICA 2: GENERACIÓN DE NUEVAS INSTRUCCIONES EN LA COMPUTADORA MEJORADA. Ejercicio 1: Utilizando las características de microprogramación del simulador de la Computadora Mejorada, implementar las siguientes instrucciones: • PSH: Introduce el contenido del acumulador en la pila. Sustituirla por CRF. • POP: Extrae un valor de la pila y lo coloca en al acumulador. Sustituirla por CTF. • M3I m: Multiplica por 3 el contenido de una posición de memoria direccionada mediante el operando m de forma indirecta (m especifica una posición de memoria a la que hay que acceder para obtener la posición de memoria donde se encuentra el dato que debe ser multiplicado por 3). El dato multiplicado debe quedar en la misma posición de memoria. Sustituirla por ADI. Ejercicio 2: Realizar un programa que multiplique por 3 el contenido de todos los elementos de una tabla almacenada en memoria. La multiplicación debe realizarse en una rutina ubicada en la posición de memoria 10. A dicha rutina se le debe pasar mediante la pila tanto el número de elementos en la tabla como la dirección de comienzo de la misma. El programa debe emplear todas las instrucciones implementadas en el ejercicio 1. La definición de datos en el programa ha de ser la siguiente: ; Numero de elementos en la tabla #DEFINE N_ELEM 80 ; Puntero al comienzo de la tabla #DEFINE TABLA 81 ; Numero de elementos en la tabla (rutina) #DEFINE R_N_ELEM 90 ; Puntero al comienzo de la tabla (rutina) #DEFINE R_TABLA 91 ; Direccion de retorno (rutina) #DEFINE R_DIR_RET 92 #LINE 80 #DATA 005 #DATA 0A0 ; Tabla #LINE A0 #DATA 001 #DATA 002 #DATA 003 #DATA 004 #DATA 005 ; Programa principal #LINE 00 ... ... ... CAL 10 HLT ; Rutina de multiplicacion de los elementos de la tabla #LINE 10 ... ... ... PRÁCTICA 3: IMPLEMENTACIÓN DE UN CONTROLADOR MICROPROGRAMADO BAJO ORCAD. Diseñar una unidad de control microprogramada para la Computadora Mejorada en versión reducida PRÁCTICA 4: IMPLEMENTACIÓN DE UN CONTROLADOR CABLEADO BAJO ORCAD Diseñar una unidad de control cableada para la Computadora Mejorada en versión reducida 12. MECANISMOS DE CONTROL Y SEGUIMIENTO (al margen de los contemplados a nivel general para toda la experiencia piloto, se recogerán aquí los mecanismos concretos que los docentes propongan para el seguimiento de cada asignatura): Encuestas al alumnado (mediante test escritos o herramientas web, como encuestas Moodle) en las que se detecte la carga semanal de trabajo del alumno para esta asignatura, así como un control del grado de cumplimiento del esquema temporal de la asignatura.