Competencias de la titulación a las cuales contribuye la asignatura Otros: - Angel Olivé Duran ([email protected])
- Antonio Juan Hormigo ([email protected]) - Carles Hernandez Luz ([email protected]) - Carlos Alvarez Martinez ([email protected]) - Fermin Sánchez Carracedo ([email protected]) - Miquel Moretó Planas ([email protected]) - Ramon Canal Corretger ([email protected]) - Teresa Monreal Arnal ([email protected])
Responsable: - Josep Llosa Espuny ([email protected])
Unidad que imparte: Curso:
Créditos ECTS:
701 - AC - Departamento de Arquitectura de Computadores 2017
GRADO EN INGENIERÍA INFORMÁTICA (Plan 2010). (Unidad docente Obligatoria) GRADO EN INGENIERÍA FÍSICA (Plan 2011). (Unidad docente Optativa)
6 Idiomas docencia: Catalán, Castellano Unidad responsable: 270 - FIB - Facultad de Informática de Barcelona
Titulación:
Profesorado
Específicas:
CT2.3. Diseñar, desarrollar, seleccionar y evaluar aplicaciones, sistemas y servicios informáticos, y al mismo tiempo asegurar su fiabilidad, su seguridad y su calidad, conforme a principios éticos y a la legislación y la normativa vigente. CT2.4. Demostrar conocimiento y capacidad de aplicación de las herramientas necesarias para el almacenaje, el procesamiento y el acceso a los Sistemas de información, incluidos los basados en web.
CT3.6. Demostrar conocimiento de la dimensión ética en la empresa: la responsabilidad social y corporativa en general y, en particular, las responsabilidades civiles y profesionales del ingeniero en informática.
CT5.2. Conocer, diseñar y utilizar de forma eficiente los tipos y las estructuras de datos más adecuados para la resolución de un problema.
CT6.2. Demostrar conocimiento, comprensión y capacidad de evaluar la estructura y la arquitectura de los computadores, así como los componentes básicos que los conforman.
CT7.1. Demostrar conocimiento de las métricas de calidad y saber utilizarlas.
CT7.2. Evaluar sistemas hardware/software en función de un criterio de calidad determinado.
CT7.3. Determinar los factores que inciden negativamente en la seguridad y la fiabilidad de un sistema hardware/software, y minimizar sus efectos.
Capacidades previas
Conocimientos de estadística y probabilidad, sistemas operativos, circuitos digitales y estructura de computadores.
Requisitos
- Pre-requisito EC - Pre-Corequisito PE - Pre-requisito SO
1.El alumno debe ser capaz de traducir rutinas y fragmentos de código de alto nivel a ensamblador de una máquina real (IA32) y enlazar rutinas en ensamblador con un lenguaje de alto nivel (C) utilizando la Interfaz Binaria de Aplicaciones de Linux.
2.El alumno debe ser capaz de describir la estructura interna y funcionamiento de los principales componentes de la jerarquía de memoria y las técnicas para mejorar su rendimiento.
3.El alumno debe ser capaz de describir el funcionamiento y utilizar los principales mecanismos de detección y corrección de errores.
4.El alumno debe ser capaz de describir la estructura y funcionamiento de los sistemas de almacenamiento de datos y evaluar su fiabilidad.
5.El alumno debe ser capaz de describir la taxonomía de los lenguajes máquina (ISA) y los rasgos característicos de los diferentes paradigmas (como RISC-CISC).
6.El alumno debe de ser capaz de describir las técnicas empleadas en el diseño de computadores basadas en paralelismo (como: segmentación, procesadores superescalares, procesadores VLIW, extensiones vectoriales y SIMD, procesadores multihilo, multiprocesadores y multicomputadores) y sus principios de funcionamiento.
7.El alumno debe ser capaz de evaluar el rendimiento de fragmentos de código y / o aplicaciones (tanto en ensamblador como en alto nivel) teniendo en cuenta componentes como: la jerarquía de memoria, los sistemas de almacenamiento, el diseño del lenguaje máquina (ISA) y las principales técnicas de diseño de procesadores basadas en paralelismo.
8.El alumno debe ser capaz de evaluar el impacto en la potencia y el consumo energético de fragmentos de código y / o aplicaciones (tanto en ensamblador como en alto nivel) teniendo en cuenta componentes como: la jerarquía de memoria, los sistemas de almacenamiento, el diseño del lenguaje máquina (ISA) y las principales técnicas de diseño de
Genéricas:
CT8.4. Elaborar el pliego de condiciones técnicas de una instalación informática que cumpla los estándares y la normativa vigente.
G2. SOSTENIBILIDAD Y COMPROMISO SOCIAL: Conocer y comprender la complejidad de los fenómenos económicos y sociales típicos de la sociedad del bienestar. Ser capaz de analizar y valorar el impacto social y medioambiental
Objetivos de aprendizaje de la asignatura
Clases de teoría magistrales con algún problema pequeño intercalado. En las clases de teoría se pondrán problemas a los estudiantes para la siguiente clase de problemas.
En las clases de problemas se harán actividades en grupo. A partir de la resolución individual de los problemas hechos en casa, los estudiantes harán una puesta en común en grupo y resolverán las dudas que hayan podido surgir. Debido a la metodología empleada en las clases de problemas se recomienda que los estudiantes no se matriculen con solapamiento, ya que las actividades de grupo serán realizadas al grupo que están matriculados.
Las clases de laboratorio servirán de soporte a la teoría. Los alumnos dispondrán de la información de prácticas antes de cada sesión. Es fundamental que los alumnos preparen la práctica antes de realizarla (leer la documentación, estudiar los conceptos utilizados, etc). Igualmente es recomendable, una vez acabada la sesión, repasar los conceptos vistos. Los estudiantes deben preparar un trabajo previo que entregarán al principio de cada sesión. Las sesiones de laboratorio son presenciales y evaluables, y se realizan en el grupo que está matriculado el alumno, por tanto es imprescindible que no haya solapamientos con el laboratorio a la hora de hacer la matriculación.
Contenidos
Fundamentos de diseño y evaluación de computadores
Interfaz alto nivel-ensamblador
Jerarquía de memoria
Sistemas de almacenamiento
Diseño del juego de instrucciones
Segmentación y paralelismo en el diseño de computadores
Dedicación total: 150h Grupo grande/Teoría:Grupo mediano/Prácticas: Grupo pequeño/Laboratorio: Actividades dirigidas: Aprendizaje autónomo: 30h 15h 15h 6h 84h 20.00% 10.00% 10.00% 4.00% 56.00%
Horas totales de dedicación del estudiantado
Competencias de la titulación a las que contribuye el contenido:
Competencias de la titulación a las que contribuye el contenido:
Competencias de la titulación a las que contribuye el contenido:
Competencias de la titulación a las que contribuye el contenido:
Competencias de la titulación a las que contribuye el contenido:
Planificación de actividades
C1
Fundamentos de diseño y evaluación de
computadores
C2
Interfaz alto nivel-ensamblador
C3
Objetivos específicos: Objetivos específicos: Objetivos específicos: Objetivos específicos: 1, 7, 8, 9 7, 8 1, 2, 7, 8, 9 1, 7, 8, 9 Actividades dirigidas: 1h 30m Aprendizaje autónomo: 3h Grupo grande/Teoría: 2h Grupo mediano/Prácticas: 1h Grupo pequeño/Laboratorio: 1h Actividades dirigidas: 0h Aprendizaje autónomo: 6h Actividades dirigidas: 2h Aprendizaje autónomo: 3h Grupo grande/Teoría: 4h Grupo mediano/Prácticas: 3h Grupo pequeño/Laboratorio: 5h Actividades dirigidas: 0h Aprendizaje autónomo: 20h Actividades dirigidas: 3h Aprendizaje autónomo: 4h Dedicación: 4h 30m Dedicación: 10h Dedicación: 5h Dedicación: 32h Dedicación: 7hJerarquía de memoria
Sistemas de almacenamiento
Diseño del juego de instrucciones
Segmentación y paralelismo en el diseño de
computadores
Objetivos específicos: Objetivos específicos: Objetivos específicos: Objetivos específicos: 2, 3, 7, 8, 9 3, 4, 7, 8, 9 5, 7, 8, 9 6, 7, 8, 9 Grupo grande/Teoría: 10h Grupo mediano/Prácticas: 5h Grupo pequeño/Laboratorio: 4h Actividades dirigidas: 0h Aprendizaje autónomo: 28h Grupo grande/Teoría: 4h Grupo mediano/Prácticas: 2h Grupo pequeño/Laboratorio: 1h Actividades dirigidas: 0h Aprendizaje autónomo: 10h Grupo grande/Teoría: 2h Grupo mediano/Prácticas: 1h Grupo pequeño/Laboratorio: 1h Actividades dirigidas: 0h Aprendizaje autónomo: 6h Grupo grande/Teoría: 4h Grupo mediano/Prácticas: 1h Grupo pequeño/Laboratorio: 1h Actividades dirigidas: 0h Aprendizaje autónomo: 8h Dedicación: 47h Dedicación: 17h Dedicación: 10h Dedicación: 14hVisit to the Marenostrum Supercomputer
La evaluación se hace a partir de los tres controles (C1, C2 y C3) y la nota de laboratorio (L).
La nota final (NF) se calcula (con un solo decimal y redondeo al par) como: NF = 0,15 * C1 + 0,25 * C2 + 0,4 * C3 + 0,2 * L
Los estudiantes podrán optar a hasta un 10% de nota adicional en función de su participación y actividad en la clase de problemas. Sistema de calificación Bibliografía Objetivos específicos: 2, 3, 4, 5, 6 Grupo grande/Teoría: 2h Grupo mediano/Prácticas: 0h Grupo pequeño/Laboratorio: 0h Actividades dirigidas: 0h Aprendizaje autónomo: 0h Dedicación: 2h Básica: Complementaria:
Hennessy, John L.; Patterson, D. Computer architecture: a quantitative approach. 5th ed. Elsevier, Morgan Kaufmann, 2012. ISBN 9780123838728.
Bryant, R.E.; O'Hallaron, D.R. Computer systems: a programmer's perspective. 2nd. ed., int. ed. Pearson, 2011. ISBN 9780137133369.
Patterson, D.A.; Hennessy, J. L. Computer organization and design: the hardware/software interface. 5th ed. Elsevier Morgan Kaufmann, 2014. ISBN 9780124077263.