Ministerio de Cultura y Educación
Universidad Nacional de San Luis
Facultad de Ciencias Físico Matemáticas y Naturales
Departamento: Fisica
Área: Area V: Electronica y Microprocesadores
(Programa del año 2016)
(Programa en trámite de aprobación)
(Programa presentado el 20/09/2016 10:46:43)
I - Oferta Académica
Materia Carrera Plan Año Periodo
PROCESADORES I ING.ELECT.O.S.D 13/08 2016 2° cuatrimestre
PROCESADORES I TEC.UNIV.ELECT. 15/13-CD 2016 2° cuatrimestre
PROCESADORES I PROF.TECN.ELECT 005/09 2016 2° cuatrimestre
PROCESADORES I TEC.UNIV.TELEC. 16/13 2016 2° cuatrimestre
II - Equipo Docente
Docente Función Cargo Dedicación
PASINETTI, PEDRO MARCELO Prof. Responsable P.Adj Exc 40 Hs
GABUTTI, DIEGO ORLANDO Responsable de Práctico JTP Simp 10 Hs
GARRO MARTINEZ, FELIX LEONARDO Auxiliar de Práctico A.1ra Simp 10 Hs
III - Características del Curso
Credito Horario Semanal Tipificación Duración
Teórico/Práctico Teóricas Prácticas de Aula Práct. de lab/ camp/ Resid/ PIP, etc. Total B - Teoria con prácticas de aula y laboratorio Desde Hasta Cantidad de Semanas Cantidad en Horas
Periodo
0 Hs. 4 Hs. 1 Hs. 1 Hs. 6 Hs. 2º Cuatrimestre 10/08/2016 18/11/2016 15 90
IV - Fundamentación
Este curso se dicta en el 2do. cuatrimestre del 2do. año de la carrera y está fuertemente relacionado con el curso previo de Electrónica Digital que se dicta en el primer cuatrimestre del mismo año. Los conocimientos aquí adquiridos serán fundamentales en muchos cursos posteriores de la carrera. Por otra parte, es el primer contacto que los alumnos tienen con un microprocesador.
V - Objetivos / Resultados de Aprendizaje
El objetivo del curso es que los alumnos, al terminarlo, tengan una idea general de la arquitectura y funcionamiento de un microprocesador. Por otra parte, que adquieran un conocimiento profundo de un microprocesador actual. Para lograr esto se dedica mucho tiempo de laboratorio donde se realizan prácticas con distintos microprocesadores y microcontroladores, como así también prácticos de simulación en PCs. Se trabaja para que el alumno se familiarice con los diseños de hardware (microprocesador conectado con memorias y distintos periféricos) y del software para determinada aplicación. Deberán estar familiarizados con distintos tipos de memorias implementadas en circuitos integrados: ROM, SRAM, DRAM, EPROM, EEPROM, FLASH.
La última parte del curso estará dedicada al estudio de un microcontrolador comercial. Se estudiarán los elementos que los componen como así también las diferentes arquitecturas y la oferta disponible en el mercado. Finalmente, se llevarán a cabo algunas prácticas con un microcontrolador actual, donde el alumno podrá fijar conceptos, teniendo un primer contacto con estos dispositivos.
VI - Contenidos
Bolilla 1
Memorias. Memorias semiconductoras. Memorias no volátiles ROM, PROM, EPROM, EEPROM. Memorias de lectura/escritura. Tipos. Características principales. Acceso aleatorio. Arquitecturas. Memorias sincrónicas. Sistema de grabación y borrado. Líneas de control, diagramas de tiempo. Ciclo de lectura y ciclo de escritura. Expansión de memorias.

Bolilla 2
Breve descripción histórica de las computadoras: desde las primeras maquinas automáticas hasta la computadora actual. Organización de una computadora actual y descripción de sus partes principales: CPU, Entradas/Salidas, Memoria de Programa y Memoria de Datos. Definición de Unidad de Cómputo y operación elemental. Funciones de cada bloque de la unidad de cómputo: unidad de control, ALU, bus de direcciones, bus de datos y bus de control. Arquitecturas de buses: von Newmann y Harvard. Decodificación de direcciones. Selección de diferentes bloques (chips) de memoria y de E/S y mapas de memoria correspondientes. Implementación de unidades de cómputo con microprocesador (micro-P), memoria de programa, memoria de datos y dispositivos de entrada/salida.

Bolilla 3
Breve descripción histórica del desarrollo de los micro-P desde los ’70 hasta la actualidad. Los primeros micro-P de 8 bits. Organización interna. Funciones de sus registros principales: acumulador, contador de programa, registro de instrucción, registros de uso general, flags de la ALU, punteros, etc. Descripción de un micro-P típico de 8 bits (CISC). Algunos detalles de su funcionamiento. Flujo de información por los buses. Ciclo de búsqueda de instrucción, lectura y escritura. Tipos de instrucciones: transferencia, aritmético/lógicas, control. Algunos ejemplos de instrucciones básicas. Ejercicios de programación con un set limitado de instrucciones. Concepto de subrutina: llamada y retorno.

Bolilla 4
Descripción del Intel 8085. Bloques principales. Registros. Set de instrucciones. Modos de direccionamiento. Ciclos de instrucción y ciclos de máquina. Diagrama de tiempo de algunas instrucciones. Calculo de tiempos de ejecución. Descripción del set de instrucciones. Características del lenguaje assembler. Ensamblador y simulador. Interrupciones en el 8085: Máscaras. Descripción de los pines del 8085. Atención a periféricos de E/S. Ejemplos de uso de interrupciones. Circuitos integrados de la familia del 8085: 8155, 8254, etc. Descripción del timer 8254. Ejemplos de aplicación del 8085 con el 8155 y el 8254.

Bolilla 5
Filosofía RISC. Características generales. Arquitectura load-store. Segmentación y paralelismo (pipelining). Ortogonalidad. Comparación entre CISC y RISC. Algunos procesadores RISC modernos: PowerPC, DEC Alpha, MIPS, ARM. El procesador DLX (MIPS). Descripción del DLX. Arquitectura. Registros de propósitos generales y registro especiales. Modos de direccionamiento. Tipos y formatos de instrucciones. Segmentación de 5 etapas. Lenguaje assembler DLX: sintaxis y pseudo operaciones. Ejemplos de programas en el lenguaje del DLX. Llamados a subrutina y retornos de subrutina. Uso de la pila. Pasaje de parámetros a las subrutinas. Ejemplos de programación del procesador DLX.

Bolilla 6
Definición de microcontrolador (micro-C): generalidades. Aplicaciones de los micro-C (control, adquisición, computación, etc.). Definición de sistema embebido. Elementos que constituyen un micro-C (memorias, EPROM, OTP, FLASH, puertos, timers, etc.). Breve descripción de diferentes familias de micro-C actuales.

Bolilla 7
Los PICs de Microchip: arquitectura Harvard, RISC y pipeline. Descripción de las diferentes gamas: baja, media y alta. El PIC de gama media 16F84 y los más actuales 16F628, 16F88, 16F887. Descripción general. Set de instrucciones. Modos de direccionamiento. Registros internos. Registros de uso general y de funciones especiales. Herramientas de desarrollo. Grabación InCircuit. Particularidades del assembler. Programas de ejemplo en assembler.

Bolilla 8
Descripción de los recursos internos de un PIC de gama media. Opciones de generación del clock. Puertos de E/S, características y registros relacionados. Interrupciones y registros relacionados. Watchdog y reset. Programación y uso del temporizador.

VII - Plan de Trabajos Prácticos
T.P.N°1:
Memorias. Análisis de las hojas de datos de algunas memorias comerciales. Práctica de laboratorio usando memorias EPROM. Lectura del contenido de la misma y comprobación de su característica de no volátil. Práctica de laboratorio usando una memoria RAM estática . Lectura y escritura de la misma y comprobación de su característica volátil.

T.P.N°2:
Expansión de memorias, expansión del número de bits, de la cantidad de direcciones y de ambas. Decodificación de direcciones, evitar el solapamiento de dispositivos. Realizar el mapa de memoria correspondiente.

T.P.N°3:
Elementos de una computadora elemental. Ejercicios básicos en assembler usando un set limitado de instrucciones del 8085.

T.P.N°4:
Programación en assembler complejidad creciente. Uso del ensamblador y simulador del micro-P 8085.
Ejercicios complementarios de interrupciones.

T.P.N°5:
Conceptos de procesadores CISC y RISC: preguntas conceptuales. El procesador DLX: ejercicios básicos de programación.

T.P.N°6:
Demostración del proceso de compilación y grabación de un PIC. Analizar y responder por parte del alumno preguntas sobre programas de ejemplo dados. Trabajar en el tablero de experimentación (EXLOG) con un PIC ya programado con el mismo código analizado anteriormente, conectándole leds y pulsadores.

T.P.N°7:
Familiarizarse con el entorno de desarrollo, ensamblador y simulador para PIC y con las particularidades de su lenguaje assembler. Realizar ejercicios guiados de programación/simulación y una experiencia de laboratorio sobre el uso de interrupciones y timer.

T.P.N°8:
Asignar al alumno un ejercicio de programación de PICs de forma individual. Realizar en las PCs el proceso de ensamblado, depuración, simulación y grabación. Finalmente, hacer el conexionado necesario del PIC en el EXLOG utilizando un cristal para el reloj, y demás elementos para lograr su funcionamiento.
VIII - Regimen de Aprobación
La materia se aprueba con un examen final. Para rendir este examen, el alumno deberá obtener previamente la regularidad en la materia.
Para obtener la regularidad será necesario:
• Haber aprobado la totalidad de los exámenes parciales.
• Los exámenes parciales se consideran aprobados cuando se realiza correctamente al menos el 66% del mismo.
• Tener al menos el 80 % de asistencias a las clases prácticas.
• Tener aprobados el 100% de los trabajos prácticos.
• Se podrán recuperar hasta dos trabajos prácticos.
• Ingresar a las clases prácticas con los conocimientos necesarios para realizar los trabajos de laboratorio.
• No se aceptan alumnos que no estén en condiciones regulares.
• La materia no podrá rendirse en forma libre.
IX - Bibliografía Básica
[1] Fundamentos de los Microprocesadores. R. Tokheim, 2° De. Mc Graw Hill.
[2] Diseño Digital Principios y Prácticas. John Wakerly.
[3] Valdez Fernando E., Areny Ramón P., Microcontroladores: Fundamentos y aplicaciones con PIC, España, Marcombo Ediciones Técnicas, 2007, 344 p.
[4] Microcontroladores PIC: la clave del diseño. E. Martin Cuenca, J. M. Angulo Usategui y I. Angulo Martínez.
[5] JOHN F. WAKERLEY. Microcomputer Architecture and Programming. Ed. JOHN WILEY AND SONS [1981].
[6] P.M. Sailer & D.R. Kaeli. The DLX Instruction Set Architecture Handbook. Morgan Kaufmann, 1996.
X - Bibliografia Complementaria
[1] Bates Martin, Interfacing PIC Microcontrollers: Embedded Design by Interactive Simulation, Gran Bretaña, Elsevier, 2006, 298p.
[2] Saravia Andrés R. Bruno, Coria Ariel, Arquitectura y Programación de Microcontroladores PIC – Buenos Aires, MC Electronics, 2010, 312p.
[3] Roland N. Ibbett. HASE DLX Simulation Model. IEEE Micro, Vol 20, no 3, p 57-65, 2000.
[4] John L. Hennessy & David Patterson. Computer Architecture: A Quantitative Approach. 2nd Edition. Ed. Morgan and Kaufmann [1990].
XI - Resumen de Objetivos
El objetivo de este curso es que el alumno al terminarlo, conozca los elementos que constituyen una unidad de cómputo, sepa las características generales de un microprocesador, como así también los distintos tipos de memoria con las que se conecta el procesador, además tenga un conocimiento detallado del funcionamiento de un microprocesador actual, su arquitectura, assembler y algunas herramientas de simulación. Finalmente, se busca introducir el concepto de microcontrolador y realizar prácticas básicas sobre uno de estos dispositivos.
XII - Resumen del Programa
Organización de una computadora. CPU, Entrada/salida, Memoria de Programa y Memoria de Datos. Dispositivos de entrada/salida. Bus de direcciones, bus de datos y bus de control. Memorias RAM, ROM, EPROM, EEPROM. Expansión de memorias. Ciclo de lectura y ciclo de escritura. Decodificadores de direcciones. Mapas de memoria.
Descripción del funcionamiento de un microprocesador general. Arquitecturas de buses. Set de instrucciones. Registros principales, etc. Lenguaje de programación assembler y código de máquina.
Estudio de un diseño actual de P RISC. Arquitectura del chip. Uso de ensamblador y simulador en la PC. Ejercicios de programación de complejidad creciente.
Descripción general de un microcontrolador, aplicaciones, arquitectura y elementos que lo componen. PICs de gama media de Microchip: arquitectura, set de instrucciones, registros, etc. Descripción de los diferentes recursos, puertos, timers, etc. Herramientas de desarrollo.
XIII - Imprevistos
---
XIV - Otros