Electivo I – Diseño e Implementación de Sistemas en Micro y Macro

Anuncio
Universidad de Santiago de Chile
Facultad de Ciencia
Departamento de Matemática y Ciencia de la Computación.
LICENCIATURA EN CIENCIA DE LA COMPUTACIÓN
PROGRAMA DE ASIGNATURA
Electivo I – Diseño e Implementación de Sistemas en Micro y Macro escala.
Autor: Oscar Rojas D.
oscar.rojas.d@usach.cl
I.
Objetivos
El objetivo de este curso es proporcionar los conocimientos teóricos y prácticos para el
diseño de hardware y software en micro y macro escala, donde el campo de aplicación
abarca desde la construcción y programación de hardware a nivel de chips como de la
implementación de soluciones en máquinas paralelas y distribuidas. A nivel micro la
aplicación directa es la construcción y programación de artefactos y maquinas,
específicamente en el campo de la robótica, domótica y control automático. A nivel macro,
en la programación de soluciones paralelas y distribuidas, donde actualmente el campo de
aplicación directa es computo científico de gran escala, motores de búsqueda y sistemas
que requieren comunicación de procesos. La fusión de ambas escalas es requerida
principalmente por que el hardware micro actual, tiene disponible unidades de cómputo
multiprocesador, por lo cual el tener conocimiento de técnicas de cómputo paralelo
colabora en la programación y diseño del hardware actual, como a su vez ya es un
requerimiento necesario para el desarrollo de aplicaciones escalables.
Contenidos
Unidad I: Diseño e implementación de software en Micro-Controladores.





Introducción a la programación de Chips – EEprom
Tipos de EEprom
Lenguajes de programación de EEprom
Diseño de Hardware con EEprom
Implementación (Robótica, domótica y control automático)
Unidad II: Diseño e implementación de software en máquinas paralelas y distribuidas





Introducción a la computación paralela
Modelo de programación multi-hebra (Multicore Intel & AMD)
Modelo de programación OpenMP, BSP y MPI (Cluster de computadoras)
Modelo de programación Gpu-Nvidia (tecnología tarjetas de video)
Modelo de programación distribuida en .net y RMI (Microsoft & Java)
Universidad de Santiago de Chile
Facultad de Ciencia
Departamento de Matemática y Ciencia de la Computación.
 Implementación (Computo científico, motores de búsqueda web y sistemas de
gran escala)
Unidad III: Proyecto de curso
El alumno desarrollara un proyecto de investigación, donde pondrá en práctica los
conocimientos proporcionados en clase. Dicho proyecto será propuesto por el alumno,
donde podrá elegir un problema a resolver ya este a nivel Micro como Macro. El
desarrollo del proyecto será guiado íntegramente por el profesor, ya sea a nivel de
diseño, programación e implementación.
Metodología y resultados esperados
Clases teóricas complementadas con la práctica: a medida que se avanza en teoría, se
mostraran ejemplos de lo visto en clase, donde al término de cada unidad se realizara una
actividad de laboratorio donde pueda observar y analizar las ventajas y debilidades de las
tecnologías vistas en clases.
Resultado esperado: que el alumno, además de tener una base de conocimientos que le
permita en un futuro poder diseñar u/o implementar un sistema Micro o Macro, sea capaz
de proponer soluciones ya sean a nivel de diseño como de implementación en un mercado
altamente competitivo, como lo es el área de la computación e informática y los
conocimientos adquiridos en este curso le permitan acercarse mucho más al uso de las
tecnologías disponibles en la actualidad, ya sean estas a un nivel de programación de bajo
nivel, como de alto nivel.
II.
Evaluación
2 Pruebas 20% c/u
Laboratorio 60%
III.
Web-Bibliografía



Parallel Scientific Computation: A structured approach using BSP and MPI, Rob H.
Bisseling, Oxford University Press.
OpenMP C and C++ Application Program Interface, online version 2.0. 2000
http://cedicyt.usach.cl/microcomputadores/
Descargar