Ministerio de Cultura y Educación
Universidad Nacional de San Luis
Facultad de Ciencias Físico Matemáticas y Naturales
Departamento: Electrónica
Área: Electrónica
(Programa del año 2023)
I - Oferta Académica
Materia Carrera Plan Año Periodo
PROCESADORES I ING.ELECT.O.S.D 13/08 2023 2° cuatrimestre
PROCESADORES I PROF.TECN.ELECT 005/09 2023 2° cuatrimestre
PROCESADORES I TEC.UNIV.ELECT. 15/13-CD 2023 2° cuatrimestre
PROCESADORES I TEC.UNIV.TELEC. 16/13 2023 2° cuatrimestre
II - Equipo Docente
Docente Función Cargo Dedicación
DONDO GAZZANO, JULIO DANIEL Prof. Responsable P.Asoc Exc 40 Hs
ANDRADA TIVANI, ASTRI EDITH Responsable de Práctico JTP Exc 40 Hs
GABUTTI, DIEGO ORLANDO Responsable de Práctico JTP 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
 Hs. 2 Hs. 1 Hs. 3 Hs. 6 Hs. 2º Cuatrimestre 09/08/2023 17/09/2023 15 90
IV - Fundamentación
El profesional en Ingeniería electrónica debe ser capaz de resolver problemas que incluyen sistemas computacionales. Todo sistema de cómputo posee uno o más microprocesadores o microcontroladores. Este curso es el primer contacto que los alumnos tienen con un microprocesador y su arquitectura interna, y representa por lo tanto, un desafío pedagógico importante para la enseñanza de conceptos que serán aplicados en materias posteriores.
V - Objetivos / Resultados de Aprendizaje
El objetivo del curso es que los alumnos tengan una idea general de la arquitectura y funcionamiento de un microprocesador básico. 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.
Al finalizar el curso, los alumnos deberán poder identificar los distintos elementos de un sistema de cómputo, la importancia de cada uno de ellos y la forma en la que interactúan estos elementos con el procesador.
VI - Contenidos
Unidad 1: Microprocesadores
Histórica de los Microprocesadores desde los ’70 hasta la actualidad. Tipos de microprocesadores y principales usos. Los primeros microprocesadores de 8 bits. Microcontroladores. Tipos de arquitectura (Harvard y Von-Neumann).

Unidad 2: Memorias
Memorias. Memorias semiconductoras. Memorias no volátiles ROM, PROM, EPROM, EEPROM, FLASH. Memorias de lectura/escritura. Tipos. Características principales. Acceso aleatorio. Arquitecturas. Memorias sincrónicas. Sistema de grabación y borrado. Direccionamiento, datos y líneas de control. Diagramas de tiempo. Ciclo de lectura y ciclo de escritura. Memorias seriales. Mapa de memoria. Expansión de memorias.

Unidad 3: Introducción a la organización de un microprocesador.
Breve descripción de un CPU, Entradas/Salidas, Memoria de Programa y Memoria de Datos. Definición de Unidad de Cómputo. Funciones de cada bloque de la unidad de cómputo: unidad de control, ALU, bus de direcciones, bus de datos y bus de control. Decodificación de direcciones. Uso de un decodificador para seleccionar diferentes chips de memoria y GPIO. Ciclo de ejecución. Reloj y osciladores. Secuencia de ejecución de una instrucción. Datapath simple (ATMega y Cortex-M).

Unidad 4: Microcontroladores RISC simples
Concepto de CISC y RISC. Estudio del procesador Cortex M0. Descripción, bloques principales y registros internos. Modos de direccionamiento. Lenguaje assembly: conceptos generales, sintaxis y pseudo-instrucciones. Set de instrucciones y ejecución de instrucciones típicas. Ejemplos de programas en C y Assembly Cortex M0. Compilación de programas y linker. Llamados y retornos de subrutina. Implementación de una pila. Bootloader.

Unidad 5: Periféricos: Atención a periféricos: polling, uso de flags o interrupciones. Interrupciones enmascarables y no-enmascarables. Prioridades. Temporizadores: RTC, timer y watchdog timer. Programación y uso con interrupciones.


Unidad 6: Microprocesadores RISC MIPS, ARM, RISC-V y tendencias actuales. Estudio del Microprocesador RISC-V. Descripción, bloques principales y registros internos. Modos de direccionamiento. Lenguaje assembly: conceptos generales, sintaxis. Set de instrucciones y ejecución de instrucciones típicas. Ejemplos de programas en C y Assembly para RISC-V. Llamados y retornos de subrutina. Implementación de una pila. Datapath del procesador y pipeline. Datapath del RISC-V para el conjunto de instrucciones estudiado. Conexión de memorias. Ejecución de instrucciones a lo largo del Datapath. Pipeline. Riesgos en el Pipeline. Técnicas para evitar riesgos.


Unidad 7: Tecnología de los circuitos digitales. Familias CMOS. Inversor. Otras compuertas. Niveles lógicos y márgenes de ruido, consumo de energía. Uso del transistor bipolar como llave. Inversor lógico. Familia TTL, niveles lógicos, margen de ruido y fan-out. Salida totem-pole y con colector abierto. Salidas tri-estado. Sub-Familias TTL. Interfaces TTL-CMOS. Otras tecnologías.


VII - Plan de Trabajos Prácticos
Laboratorio 1- Ambiente de desarrollo, Placa, herramientas y Demo

Laboratorio 2- Puertos de entrada y salida

Laboratorio 3- Uso de librerías (periféricos, comunicación serie, etc)

Laboratorio 4- Timers y contadores

Laboratorio 5- Interrupciones, rutinas de interrupcion, interrupciones anidadas

Laboratorio 6- Simulacion de Risc V

Laboratorio 7- Proyecto integrador
VIII - Regimen de Aprobación
La materia se promociona si el alumno aprueba los exámenes parciales de la misma con un mínimo de 70% de estos exámenes realizados correctamente, y tiene el 100% de las practicas aprobadas, y tener al menos el 80% de asistencia a las clases teóricas y practicas de la materia.
Aquellos alumnos que presenten las mismas condiciones anteriores, pero que aprueban los parciales con menos del 70% deberán rendir un examen final integrador.
Habra un examen recuperatorio por cada uno de los parciales. Aquellos alumnos que recuperan los parciales no podran acceder a la promocion de la materia.
De las practicas:
- Se podrán recuperar hasta dos trabajos prácticos.
- Se deberá 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] D. Patterson, J. Hennessy - Computer Organization and Design - The hardware and Software Interface. RISC-V edition. Morgan Kaufmann.
[2] Diseño Digital Principios y Prácticas. John Wakerly.
[3] Arduino, un enfoque practico e incremental. J. De la Torre, J. Dondo Gazzano
[4] Apuntes de la materia.
[5] CortexMO- Reference Manual - ARM Developer
X - Bibliografia Complementaria
[1] Roland N. Ibbett. HASE DLX Simulation Model. IEEE Micro, Vol 20, no 3, p 57-65, 2000.
[2] John L. Hennessy & David Patterson. Computer Architecture: A Quantitative Approach. 2nd Edition. Ed. Morgan and Kaufmann [1990].
XI - Resumen de Objetivos
Obtener una idea general de la arquitectura y funcionamiento de un microprocesador básico. Obtener conocimiento profundo de procesadores tipo AVR, ARM Cortex M0 y microprocesador RISC-V.
Microprocesador conectado con memorias y distintos periféricos y software para determinada aplicación. Distintos tipos de memorias implementadas en circuitos integrados: ROM, SRAM, DRAM, EPROM, EEPROM, FLASH.
Identificar los distintos elementos de un sistema de cómputo, la importancia de cada uno de ellos y la forma en la que interactúan estos elementos con el procesador.
XII - Resumen del Programa
Memorias, no volátiles ROM, PROM, EPROM, EEPROM. Memorias de lectura/escritura. Acceso aleatorio. Sistema de grabación y borrado. Líneas de control, diagramas de tiempo. Expansión y mapa de memorias.

Breve descripción de un CPU, Entradas/Salidas, Memoria de Programa y Memoria de Datos. Arquitecturas de buses: von Newmann y Harvard. Decodificación de direcciones. Tipos de instrucciones: transferencia, aritmético/lógicas, control. Modos de direccionamiento. Subrutinas y uso de la Pila. Datapath simples, ejemplos

Concepto de CISC y RISC. La filosofía RISC, primeros diseños, MIPS, ARM, RISC-V y tendencias actuales. Estudio de los procesadores ATMega328, CortexM0. Lenguaje assembly. Set de instrucciones y ejecución de instrucciones típicas.

Microprocesador RISC-V. Lenguaje assembly. Set de instrucciones y ejecución de instrucciones típicas. Datapath, Conceptos de pipeline.

Atención a periféricos: polling, uso de flags o interrupciones. Interrupciones enmascarables y no-enmascarables. Prioridades. Temporizadores: RTC, timer y watchdog timer. Programación y uso con interrupciones.

Tecnología de los circuitos digitales.
XIII - Imprevistos
 
XIV - Otros