Introducción a la Arquitectura de Computadores28266
- Centro
- Facultad de Informática
- Titulación
- Grado en Inteligencia Artificial
- Curso académico
- 2023/24
- Curso
- 1
- Nº Créditos
- 6
- Idiomas
- Castellano
- Euskera
- Código
- 28266
DocenciaAlternar navegación
Guía docenteAlternar navegación
Descripción y Contextualización de la AsignaturaAlternar navegación
La asignatura Introducción a la Arquitectura de Computadores (IOC) es una de las materias básicas del primer curso del Grado en Inteligencia Artificial. Establece las bases de la arquitectura de los computadores y profundiza en aspectos que afectan directamente al rendimiento de un computador como la memoria caché o las arquitecturas segmentadas.
Posteriormente, la asignatura de Sistemas Paralelos y Distribuidos de 2º curso profundizará en arquitecturas más complejas y eficientes, comunes a todas las aplicaciones de Inteligencia Artificial. Además, se trabajarán los conceptos básicos del lenguaje de programación C, que servirán de base para programar aplicaciones paralelas en los próximos cursos.
Como es una asignatura básica, lo aprendido será necesario y útil en muchas asignaturas del grado, especialmente en las asignaturas que expongan el funcionamiento de una computadora y sus componentes (memoria, entrada/salida, etc.). Además, la materia servirá para comprender la influencia que puede tener la máquina en el desarrollo de aplicaciones de inteligencia artificial.
Al tratarse de un tema del 1º curso y del 1º cuatrimestre, no se requieren conocimientos previos en materia de arquitectura de computadores. Será la propia asignatura la que dé las primeras explicaciones sobre estos conceptos.
Una persona experta en Inteligencia Artificial debe ser capaz de identificar el hardware más adecuado y la forma de obtener el mejor rendimiento o la ejecución más eficaz en aplicaciones que requieren grandes volúmenes de datos o tiempos críticos de respuesta, por ejemplo. Esta materia aporta los conocimientos básicos para ello, que se complementarán en los próximos cursos con el resto de asignaturas del módulo de arquitectura, sistemas y redes.
Competencias/ Resultados de aprendizaje de la asignaturaAlternar navegación
RESULTADOS DE APRENDIZAJE
* Describir la organización y el funcionamiento básico de los componentes de una computadora.
* Describir la relación entre el lenguaje de programación de alto nivel y el lenguaje interno de la máquina.
* Explicar o hacer la traza de la ejecución de un programa simple escrito en lenguaje ensamblador.
* Desarrollar programas sencillos en lenguaje de programación C.
* Diferenciar los métodos de sincronización de E/S de la computadora y calcular la mejora en la transferencia de datos al utilizar DMA.
* Análizar aspectos que mejoran el rendimiento de los programas: jerarquía de memoria, ejecución segmentada y optimización del código.
* Seleccionar una plataforma de almacenamiento de datos adecuada al contexto de inteligencia artificial.
Contenidos teórico-prácticosAlternar navegación
1 .- Estructura básica de una computadora
1.1 Arquitectura Von Neumann
1.2 Lenguaje máquina
1.3 Jerarquía de memoria
1.4 Subsistema de entrada/salida
1.5 Conexión entre subsistemas: buses
2 .- Paralelismo a nivel de instrucción
2.1 Segmentación lineal
2.2 Procesadores multiciclo
2.3 Técnicas de optimización
2.4 Procesadores superescalares
2.5 Introducción al paralelismo
3 .- Sistemas de almacenamiento y arquitecturas para la IA.
3.1 Tecnologías de almacenamiento y Sistemas RAID
3.2 Sistemas de almacenamiento para inteligencia artificial
3.3 Arquitecturas para la IA
4 .- Lenguaje C
4.1 Linux y la terminal: conceptos básicos
4.2 Estructura general de un programa
4.3 Tipos de datos y operaciones básicas
4.4 Estructuras de control: if, switch, while, do… while, for
4.5 Funciones: paso de parámetros por valor y referencia
4.6 Estructuras de datos: struct
4.7 Entrada/salida: printf, scanf
4.8 Tiempo de ejecución
MetodologíaAlternar navegación
En esta asignatura se combinan diversas metodologías de enseñanza. Por una parte, se impartirán clases de exposición de los contenidos conceptuales de la materia, con participación del alumnado en debates sobre los mismos. La resolución de cuestiones y problemas en el aula se realizará de forma participativa, proponiendo problemas y ejercicios que desarrollarán individualmente o en grupo.
En un primer momento, los conceptos básicos se abordarán a través del juego y su interiorización se evaluará mediante la creación de materiales didácticos para educación primaria y secundaria (juegos, guías, vídeos...). De esta forma se trabaja el compromiso social y el objetivo 4 de desarrollo sostenible (educación de calidad).
Para tratar el tercer tema se deberá realizar un pequeño trabajo de investigación, redactar un informe y realizar una presentación del mismo en grupos.
A lo largo de la asignatura se fomentará tanto el trabajo autónomo como el trabajo en equipo a través de las actividades requeridas al alumnado. Se trabajará la comunicación escrita y oral a través de la presentación de trabajos e informes y la discusión y se fomentará en todo momento el uso del pensamiento computacional y crítico.
Sistemas de evaluaciónAlternar navegación
- Sistema de Evaluación Continua
- Sistema de Evaluación Final
- Herramientas y porcentajes de calificación:
- Los porcentajes y tipos de evaluación se especifican en los apartados posteriores. (%): 100
Convocatoria Ordinaria: Orientaciones y RenunciaAlternar navegación
La asignatura contempla dos sistemas de evaluación, el sistema de evaluación continua y el sistema de evaluación final. El sistema de evaluación continua es el que se utilizará de forma preferente, según se indica en la normativa actual de la UPV/EHU. El alumnado que, cumpliendo las condiciones para continuar en el sistema de evaluación continua que se describen a continuación, decidiese optar por la evaluación global, deberá informar al profesorado responsable de la asignatura mediante una encuesta de eGela diseñada para ello, como muy tarde al finalizar la segunda semana de horario agrupado.
EVALUACION CONTINUA
Es el modo de evaluación predeterminado, solamente válido para la convocatoria ordinaria. Exige la participación activa y continua por parte del alumnado: asistir a las clases y los laboratorios, entregar los ejercicios y trabajos (tanto grupales como individuales), realizar las pruebas de evaluación y demás actividades planteadas. En caso de no participar en cualquiera de estas actividades, se pasará a la evaluación global.
La asignatura se evaluará en base a estos elementos:
- Pruebas escritas individuales: 8 puntos (80%) [2 exámenes parciales, Tema 1 (35%) + Temas 2 y 3 (45%)]
- Trabajos grupales: 2 puntos (20%) [Trabajo tema 1 10% + Trabajo tema 3 10%
Para aprobar la asignatura, además de que la nota final sea superior a 5, habrá que obtener un mínimo de 4 puntos (sobre 10) en cada uno de los apartados de evaluación.
EVALUACIÓN FINAL O GLOBAL:
En evaluación global el 100% de la nota se obtendrá a través de un examen.
Para aprobar la asignatura, la nota final debe ser superior a 5.
Convocatoria Extraordinaria: Orientaciones y RenunciaAlternar navegación
En la convocatoria extraordinaria el 100% de la nota se obtendrá a través de un examen.
Para aprobar la asignatura, la nota final debe ser superior a 5.
Materiales de uso obligatorioAlternar navegación
El material disponible en el aula virtual (eGela) de la asignatura.
BibliografíaAlternar navegación
Bibliografía básica
Stallings W.
Computer Organization and Architecture. Designing for performance. (11. ed). Pearson, 2019
Tanenbaum A.S., Austin T.
Structured Computer Organization (6. ed), Pearson – Prentice Hall Ed., 2013
J.L. Hennessy, D.A. Patterson
Computer Architecture: A Quantitative Approach. (6. ed). Morgan Kaufmann, 2019
Iñaki Alegria eta Nestor Garay
C Programazio-lengoaia
https://www.elhuyar.eus/es/tienda/d/c-programazio-lengoaia
Félix García, Alejandro. Calderón, Jesús Carretero, Javier Fernández, José María Pérez
Problemas Resueltos de Programación en Lenguaje C, Thomson, 2002.
Bibliografía de profundización
Patterson D.A., Hennessy J.L.
Computer Organization and Design: The Hardware/Software Interface (5. ed). M. Kaufmann, 2013
Revistas
Hello World: https://helloworld.raspberrypi.org/ (indicando el número de revista directamente entra en ella).
Direcciones web
Computer Science For Fun: http://www.cs4fn.org/
Barefoot Computing: https://www.barefootcomputing.org/
Moon: https://compus.deusto.es/https://compus.deusto.es/
Touring Tumble simulagailua: https://edu.turingtumble.com/resources/index.html#simulator
CPUlator computer system simulator: https://cpulator.01xz.net/
GruposAlternar navegación
01 Teórico (Castellano - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-15 | 09:00-10:30 (1) | 10:30-12:00 (2) |
Profesorado
01 P. Laboratorio-1 (Castellano - Mañana)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-15 | 12:00-13:30 (1) |
Profesorado
46 Teórico (Euskera - Tarde)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-15 | 14:00-15:30 (1) | 15:30-17:00 (2) |
Profesorado
46 P. Laboratorio-1 (Euskera - Tarde)Mostrar/ocultar subpáginas
Semanas | Lunes | Martes | Miércoles | Jueves | Viernes |
---|---|---|---|---|---|
1-15 | 17:00-18:30 (1) |