Universidad Pública de Navarra



Año Académico: 2015/2016 | Otros años:  2014/2015  |  2013/2014 
Graduado o Graduada en Ingeniería Informática por la Universidad Pública de Navarra
Código: 240306 Asignatura: ESTRUCTURA DE COMPUTADORES
Créditos: 6 Tipo: Básica Curso: 2 Periodo: 1º S
Departamento: Ingeniería Eléctrica y Electrónica
Profesorado:
ARAMBURU MAYOZ, CANDIDO (Resp)   [Tutorías ]

Partes de este texto:

 

Módulo/Materia

Módulo de Formación Básica
Materia Informática

Subir

Descripción/Contenidos

En esta asignatura se estudian los elementos esenciales de un computador ofreciendo al estudiante una visión general e independiente del tipo de aquitectura del funcionamiento de un computador. La representación de la información (datos e instrucciones), el procesador como unidad de procesamiento de dicha información, la jerarquía de memoria como unidad de almacenamiento de información y el sistema de entrada y salida como sistema de comunicación de información con el exterior son los puntos clave sobre los que se centra la asignatura.
En las sesiones prácticas se realizan proyectos de desarrollo software empleando las herramientas de edición, compilación, lincado, ensamblaje y depuración de programas informáticos en lenguajes de programación C y ensamblador x86 en el entorno del sistema operativo GNU/linux.

 La lista de contenidos es la siguiente:
- Arquitectura de Von Neumann. CPU, memoria y entrada / salida.
- Representación de datos. Bit, byte y palabra. Caracteres, enteros y reales.
- Aritmética y lógica sobre enteros en binario. Redondeo y propagación de error en números reales.
- Representación de instrucciones. Lenguaje máquina, lenguaje ensamblador y lenguajes de alto nivel. Registros. Formato de instrucción. Fases de ejecución de una instrucción. Tipos de instrucción y modos de direccionamiento.
- Programación en lenguaje ensamblador de construcciones básicas de los lenguajes de alto nivel y llamadas a subrutina.
- Arquitectura y organización de la CPU. Conjunto de instrucciones. Camino de datos. Arquitecturas CISC, RISC y VLIW.
Sistema de entrada / salida. Control de entrada / salida: por encuesta, por interrupción, DMA. Vector de interrupciones. Programación en lenguaje ensamblador de rutinas de atención a interrupciones.
- Organización de la memoria. Latencia y ancho de banda. Jerarquía de memoria. Memoria cache Memoria virtual.

Subir

Descriptores

Estructura de Computadores, Arquitectura de Von Neumann, Representación de datos, Lenguaje Ensamblador, Procesamiento de Instrucciones, Sistema de Entrada / Salida, Jerarquía de Memoria.

Subir

Competencias genéricas

Las competencias genéricas que un alumno debería adquirir en esta asignatura son:
CB3 - Que los estudiantes tengan la capacidad de reunir e interpretar datos relevantes (normalmente dentro de su área de estudio) para emitir juicios que incluyan una reflexión sobre temas relevantes de índole social, científica o ética.
CB4 - Que los estudiantes puedan transmitir información, ideas, problemas y soluciones a un público tanto especializado como no especializado.
G1 - Capacidad para concebir, redactar, organizar, planificar, desarrollar y firmar proyectos en el ámbito de la ingeniería en
informática que tengan por objeto la concepción, el desarrollo o la explotación de sistemas, servicios y aplicaciones informáticas.

G6 - Capacidad para concebir y desarrollar sistemas o arquitecturas informáticas centralizadas o distribuidas integrando hardware, software y redes.
G8 - Conocimiento de las materias básicas y tecnologías, que capaciten para el aprendizaje y desarrollo de nuevos métodos y tecnologías, así como las que les doten de una gran versatilidad para adaptarse a nuevas situaciones.
G9 - Capacidad para resolver problemas con iniciativa, toma de decisiones, autonomía y creatividad. Capacidad para saber comunicar y transmitir los conocimientos, habilidades y destrezas de la profesión de Ingeniero Técnico en Informática.
G10 - Conocimientos para la realización de mediciones, cálculos, valoraciones, tasaciones, peritaciones, estudios, informes, planificación de tareas y otros trabajos análogos de informática.
T1 - Capacidad de análisis y síntesis.
T3 - Comunicación oral y escrita.
T4 - Resolución de problemas.
T8 - Aprendizaje autónomo.

Subir

Competencias específicas

Las competencias específicas que un alumno debería adquirir en esta asignatura son:
FB4 - Conocimientos básicos sobre el uso y programación de los ordenadores, sistemas operativos, bases de datos y programas informáticos con aplicación en ingeniería.
FB5 - Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería.

Subir

Resultados aprendizaje

  1. Conocer la organización de la máquina de Von Neumann y sus principales unidades funcionales.
  2. Mencionar ventajas e inconvenientes de la arquitectura Von Neumann.
  3. Representar en binario números enteros y reales y evaluar su rango y la precisión.
  4. Realizar operaciones de aritmética y lógica sencillas sobre datos enteros en binario.
  5. Conocer la relación entre lenguaje máquina, lenguaje ensamblador y lenguajes de alto nivel.
  6. Conocer las ventajas e inconvenientes de un determinado formato de instrucción respecto a otros.
  7. Implementar en lenguaje ensamblador, construcciones básicas de los lenguajes de alto nivel y llamadas a subrutinas.
  8. Conocer la relación entre el conjunto de instrucciones y el diseño de una arquitectura.
  9. Describir las principales fases de ejecución de los diferentes tipos de instrucción en el camino de datos de la CPU.
  10. Describir las características principales de las arquitecturas CISC, RISC y VLIW.
  11. Conocer las diferentes técnicas de entrada / salida: programadas, mediante interrupciones y DMA.
  12. Conocer cómo utilizar interrupciones para implementar el control de entrada / salida y transferencias de datos.
  13. Escribir sencillas rutinas de interrupción en lenguaje ensamblador.
  14. Conocer el efecto de la latencia y el ancho de banda de memoria en el rendimiento de un computador.
  15. Conocer el concepto de memoria cache y como afecta su uso al rendimiento del computador.
  16. Conocer los conceptos de memoria virtual y paginación.

Subir

Metodología

 Metodología - Actividad
 Horas Presenciales
 Horas no presenciales
 A-1 Clases magistrales
 24
 
 A-2 Estudio autónomo
 
 30
 A-3 Sesiones prácticas
 16
 
 A-4 Programación / experimentación u otros trabajos en ordenador / laboratorio
 
 20
 A-5 Resolución de problemas, ejercicios y otras actividades de aplicación
 
 12
 A-6 Aprendizaje basado en problemas y/o casos
 14
 
 A-7 Elaboración de trabajos y/o proyectos y escritura de memorias
 
 11
 A-8 Preparación de presentaciones de trabajos, proyectos, etc...
 
 15
 A-9 Actividades de Evaluación
 6
 
 A-10 Tutorías  2  
     
 Total
 62
 88

Subir

Idiomas

Castellano

Subir

Evaluación

Aspecto Criterios Instrumento Peso
- Asistencia y participación activa en clase.
- Evaluación competencias: G8, G9, FB4, FB5

- Asistencia a las sesiones presenciales.
- Intervención y aportaciones tanto en el planteamiento de cuestiones como en la solución de ejercicios y problemas.
- Expresión oral correcta.

- Control de firmas y/o registro del profesor/a.
- No obligatorio para aprobar la asignatura.
- No recuperable.

10%

- Trabajos y supuestos prácticos.
- Evaluación competencias: CB3, CB4, G1, G6, G8, G9, G10, T3, T4, T8, FB4, FB5
- Resultados de aprendizaje: 4, 5, 7, 11

- Solución correcta a los problemas y/o casos prácticos en laboratorio.
- Entregas de trabajos y ejercicios en el plazo y formatos acordados.
- Expresión escrita correcta.

- Conjunto de ejercicios prácticos realizados durante el curso en grupo o individualmente en laboratorio y cuyos resultados se han de entregar mediante un informe escrito y/o programa informático.
- Control de laboratorio individual.
- Carácter Obligatorio: Nota media mínima 4.0 y nota mínima del control 4.0.
- Recuperable mediante una prueba práctica individual en laboratorio.
- Requisito para tener acceso a la prueba de recuperación: haber asistido al menos a 14 de las 16 horas prácticas (salvo casos debidamente justificados a criterio del profesor).

 30%

- Conceptos teóricos.
- Evaluación competencias: CB3, CB4, G-6, G-8, G-9, G-10, T1, T3, T4, T8, FB-4, FB-5
- Resultados de aprendizaje: 1, 2, 3, 6, 8, 9, 10, 12, 13, 14, 15, 16

- Solución correcta de ejercicios y/o preguntas teóricas por escrito.
- Expresión escrita correcta
- Controles individuales de evaluación continua mediante pruebas por escrito individuales.
- Carácter Obligatorio. Nota Mínima en esta parte para aprobar la asignatura: 4.0
- Recuperable mediante una prueba individual escrita.
- Requisito para tener acceso a la prueba de recuperación: haber realizado todos los controles de evaluación continua (salvo casos debidamente justificados a criterio del profesor).
60%

Subir

Temario

1 - Introducción
2 - Arquitectura de Von Neumann
     2.1 CPU
     2.2 Memoria
     2.3 Entrada / Salida
3 - Representación de datos
     3.1 Bit, Byte y Palabra
     3.2 Caracteres, enteros y reales
4 - Aritmética y lógica
     4.1 Operaciones aritméticas y lógicas sobre enteros en binario
     4.2 Redondeo y propagación de error en números reales
5 - Representación de instrucciones
     5.1 Lenguaje máquina, lenguaje ensamblador y lenguajes de alto nivel
     5.2 Formato de instrucción
     5.3 Tipos de instrucción y modos de direccionamiento
6 - Programación en lenguaje ensamblador de construcciones básicas de los lenguajes de alto nivel
     6.1 Sentencias de asignación
     6.2 Sentencias condicionales
     6.3 Bucles
     6.4 LLamadas y retorno de funcion o subrutina
7 - Arquitectura y organización de la CPU
     7.1 Conjunto de instrucciones
     7.2 Arquitecturas CISC, RISC y VLIW
     7.3 Fases de ejecución de una instrucción
     7.4 Camino de datos
8 - Sistema de entrada / salida
     8.1 Sincronización por encuesta
     8.2 Sincornización por interrupción
     8.3 Vector de interrupciones
     8.4 Acceso directo a memoria DMA
     8.5 Programación en lenguaje ensamblador de rutinas de entrada/salida
9 - Organización de la memoria
     9.1 Jerarquía de memoria
     9.2 Latencia y ancho de banda
     9.3 Memoria cache
     9.4 Memoria virtual

Subir

Bibliografía

Acceda a la bibliografía que el profesorado de la asignatura ha solicitado a la Biblioteca.


Basica

  1. William Stallings. Computer Organization and Architecture: Designing for Performance. Prentice Hall. 9th Edition. 2012.
  2. Paul Carter. PC Assembly Language. Acceso libre. 2006.
  3. Jonathan Bartlett. Programming from the Ground Up. Acceso Libre. 2004.

 Complementaria

  1. K.N.King. C programming, a Modern Approach W.W. Norton 2ªEd. 2008.
  2. David A. Patterson, John L. Hennessy. Computer Organizarion and Design. The Hardware / Software Interface. Morgan Kaufmann. 2009.
  3. Randal E. Bryant, David R. O'Hallaron. Computer Systems: A Programmer's Perspective. Addison-Wesley. 2nd Edition. 2010.
  4. Jeff Duntemann. Assembly Language Step-by-Step: Programming with Linux. Wiley Ed. 3rd Edition. 2009.
  5. Kip R. Irvine. Assembly Language for x86 Processors. Pearson. 6th Edition. 2014.

Subir

Lugar de impartición

Aulario

Subir