CircuitosLogicos

version GitHub commit activity (branch) GitHub discussions GitHub issues Gitter GitHub License


Logo

Circuitos Lógicos (MIE.SD01.09)

Maestría en Ingeniería Eléctrica (200322)
Explorar la documentación »

Ver Demo · Reportar Bug · Comunidad y foro de discusión

Table of Contents

* [Introducción](#Introducción) * [Contenido](#Contenido) * [Objetivo de la Unidad de Aprendizaje](#Objetivo-de-la-Unidad-de-Aprendizaje) * [Evaluación](#Evaluación) * [Presentaciones](#Presentaciones) * [Listado de Códigos Desarrollados durante la UDA](#listado-de-códigos-desarrollados-durante-la-uda) * [Contacto](#Contacto) * [Bibliografía](#Bibliografía) * [Licencia](https://github.com/ibarram/CircuitosLogicos/blob/main/LICENSE)

Introducción

Competencia de la UDA

Diseñar, simular e implementar sistemas digitales combinacionales y secuenciales, utilizando circuitos discretos, programables y de aplicación específica, mediante el uso de herramientas de diseño asistido por computadora y lenguajes de descripción de hardware, con un enfoque analítico, ético y socialmente responsable, que contribuya a la solución de problemas en el ámbito de la instrumentación y el control digital.

Contribución de la UDA al Perfil de Egreso

Esta Unidad de Aprendizaje está dirigida a estudiantes de la Maestría en Ingeniería Eléctrica, con el propósito de desarrollar su capacidad para resolver problemas reales mediante la aplicación de conocimientos en electrónica digital y diseño lógico.

Se espera que los egresados de este programa:

  1. Contribuyan significativamente al desarrollo tecnológico del país a través de actividades docentes, profesionales y de investigación en instrumentación y control digital.
  2. Apliquen conocimientos teóricos y prácticos en el diseño e implementación de sistemas digitales utilizando circuitos discretos, programables y de aplicación específica.
  3. Utilicen herramientas de diseño asistido por computadora (CAD) y lenguajes de descripción de hardware (HDL) para modelar y simular sistemas digitales.
  4. Demuestren conciencia social y responsabilidad profesional, identificando y resolviendo problemas que mejoren tanto su entorno laboral como la comunidad en la que viven.

Contextualización

La Unidad de Aprendizaje Circuitos Lógicos se ubica en el segundo cuatrimestre del plan de estudios de la Maestría en Ingeniería Eléctrica, dentro del eje formativo de Sistemas Digitales. Su propósito es proporcionar a los estudiantes las bases teóricas y prácticas necesarias para el análisis, diseño y simulación de sistemas digitales, tanto combinacionales como secuenciales.

Esta UDA es fundamental en la formación del estudiante, ya que:

  1. Consolida los conocimientos básicos en electrónica digital adquiridos en el primer cuatrimestre.
  2. Prepara al estudiante para abordar con éxito unidades de aprendizaje más avanzadas como:
    • Sistemas Digitales
    • Diseño de Sistemas con Dispositivos Lógicos
    • Microprocesadores

A través de esta unidad, el estudiante desarrolla competencias clave en el uso de herramientas de diseño asistido por computadora (CAD), lenguajes de descripción de hardware (HDL), y plataformas de implementación como FPGAs, lo cual es esencial para su desempeño en actividades de docencia, investigación y desarrollo tecnológico.

Además, esta UDA fortalece la capacidad del estudiante para identificar y resolver problemas técnicos complejos con un enfoque ético, profesional y socialmente responsable, alineado con el perfil de egreso del programa.

Contenido

El contenido de la Unidad de Aprendizaje es el siguinte:

  1. Conceptos fundamentales de algoritmos
    • Conceptos y propuedades de los algoritmos
    • Solución de problemas usando algoritmos
    • Estrategias para construir algoritmos
  2. Recursividad
    • Definición
    • Procedimientos recursivos
    • Ejemplos de casos recursivos
  3. Estructuras de datos fundamentales
    • Estructuras de datos básicas
    • Estructuras de datos abstractas
  4. Algoritmos de ordenamiento
    • Ordenamiento por intercambio directo
    • Ordenamiento por inserción directa
    • Ordenamiento por selección directa
    • Otros métodos de ordenamiento
  5. Algoritmos de búsqueda
    • Búsqueda secuencial
    • Búsqueda binaria
    • Búsqueda por transformación de claves
  6. Análisis de algoritmos
    • Complejidad en el tiempo
    • Complejidad en el espacio
    • Eficiencia de algoritmos

Objetivo de la Unidad de Aprendizaje

Selecciona la combinación adecuada de estructuras de datos y algoritmos que sirva para optimizar los recursos de cómputo necesario. Aplica estas elecciones de diseño en el desarrollo de ingeniería de datos y sistemas inteligentes que contribuyen a la solución de problemas de ingeniería. Exhibe actitudes como el trabajo en equipos multi-disciplinarios.

La UDA de Algoritmos y Estructuras de Datos sirve para conocer los elementos estructurales de la programación así como el análisis de su interacción en los algoritmos. El análisis de la complejidad de los algoritmos y de los requerimientos de recursos asociados con las estructuras de datos permite optimizar el desempeño de los sistemas aplicados a la ingeniería de datos e inteligencia artificial.

Evaluación

La evaluación de la Unidad de Aprendizaje será desarrollada de acuerdo a la siguiente tabla:

Número Elemento Porcentaje
1 Primera evaluación 15%
2 Primer práctica 15%
3 Segunda evaluación 15%
4 Segunda práctica 15%
5 Tercera evaluación 15%
6 Proyecto final 15%
7 Presentación 10%

La evaluación de los códigos serán realizados mediante la siguiente rúbrica:

Número Medida Ponderación Criterio
1 Desemepeño 16.7% Valorado por el número de casos resueltos correctamente, medido por el porcentaje de casos correctos
2 Tiempo 16.7% Valorado por la tiempo de CPU utilizado en ms, medido por la diferencia entre el tiempo y el mínimo tiempo logrado por el grupo, la diferencia es multiplicada por la desviación absoluta media de los tiempos del grupo
3 Memoria 16.7% Valorado por la cantidad de memoria utilizada en KB, medido por la diferencia entre la memoria utilizada y la mínima memoria utilizada por el grupo, la diferencia es dividida por la desviación absoluta media de la memoria utilizada por el grupo
4 Código fuente 16.7% Valorado por el tamaño del código fuente en B, medido por la diferencia entre el tamaño del código fuente implementado y el tamaño menor de la implementación del grupo, la diferencia es dividida por la desviación absoluta media del tamaño de los códigos fuentes implementados por el grupo
5 Posición 16.6% Valorado por la posición en la que es sometida la solución al problema, mediada por el ordenamiento cronológico de las soluciones sometidas, se reduce en 1.5% por cada posición
6 Reporte 16.6% Valorado si el reporte contiene todos los elementos solicitados y el contenido refleja cuantitativa y cualitativamente los cinco puntos de valoración

Los elementos mínimos de los reportes son:

  1. Introducción
    • Fundamentación de la tarea, práctica o proyecto
  2. Objetivos
    • Objetivo general y específico
  3. Procedimiento (Algoritmo+Estrcutura de datos)
    • Diagrama de datos
    • Diagarama de flujo
    • Pseudo-código
    • Flujo de información y sinergía de datos
  4. Resultados y análisis
    • Gráfica o tablas de resultados con explicación
    • Análisis de desempeño, precisión, eficiencia, repetibilidad y complejidad
  5. Tabla comparativa
    • Análisis de eficiencia y desemeño
    • Comparativa con integrantes y entre el grupo
    • Comparativa con el estado del arte
  6. Conclusiones
    • Conclusiones generales y personales
  7. Bibliografía
    • Formato APA o IEEE
    • Verificar la confiabilidad, relevancia y actualización de la fuente de información

Presentaciones

Las presentaciones de la Unidad de Aprendizaje estan disponibles en formato PDF para su descarga.

Archivo Descripción Tamaño Enlace
0_Presentacion.pdf Presentación de la Unidad de Aprendizaje 389 KB Download
1_Cenceptos.pdf Conceptos fundamentales de algoritmos 1.01 MB Download
2_Recursividad.pdf Recursividad 1.43 MB Download
3_Estructuras.pdf Estructuras de datos fundamentales 2.70MB Download
4_AlgOrdenamiento.pdf Algoritmos de ordenamiento . .
5_AlgoBusqueda.pdf Algoritmos de Búsqueda . .
6_Analisis.pdf Análisis de algoritmos . .

Archivos de bases de datos

Los archivos usados en la Unidad de Aprendizaje estan disponible para su descarga.

Archivo Descripción Tamaño Enlace
edr_valor_00.csv Archivo CSV de datos del INEGI sobre defunciones registradas 69.4 MB Download

Listado de Códigos Desarrollados durante la UDA

A lo largo de esta UDA, hemos implementado diversos algoritmos y estructuras de datos fundamentales para resolver problemas relacionados con el análisis, manipulación y optimización de datos. Estos códigos cubren una variedad de temas clave, que incluyen:

En esta sección, encontrarás un listado completo de los códigos desarrollados, junto con una pequeña descripción de cada uno, su ubicación en el repositorio y ejemplos de cómo ejecutarlos.

Puedes consultar el listado completo de códigos y sus explicaciones en el siguiente archivo:

Consulta el listado completo de códigos aquí.

Contacto

Dr. M.-A. Ibarra-Manzano - DICIS-UG - ORCID: 0000-0003-4317-0248 - SCOPUS: 15837259000

Unidad de Aprendizaje Link: 20241AyE

Bibliografía