Arquitectura y diseño de sistemas digitales con FPGA usando VHDL, HDL Coder y comunicaciones seriales
¿Qué aprenderás en este curso?
Dominarás los fundamentos del diseño digital con FPGA, comprendiendo la arquitectura de sistemas embebidos y el funcionamiento interno de las FPGA modernas.
Aprenderás VHDL, diseño combinacional y secuencial, máquinas de estados, protocolos SPI, I2C y UART aplicados a proyectos reales.
Utilizarás la tarjeta FPGA INIT de Cápsula Electrónica, junto con herramientas profesionales como Quartus y MATLAB HDL Coder.
ARQUITECTURA EN SISTEMAS EMBEBIDOS
- Sistemas embebidos clásicos
- Arquitectura de 8,16 y 32 bits
- FPGA familia Terasic
- FPGA familia xilinx
- ¿Ques es una GAL,PLD,CPLD?
- Diferencias entre VHDL y Verilog
- ¿Por qué usar HDL?
- Arquitectura en la FPGA
- Conociendo la tarjeta FPGA Init Max 10
- Descarga e instalación de Quartus
ELEMENTOS LÉXICOS Y FORMATO DEL PROGRAMA
- Uso del Block Diagram/Esquematic File
- Uso del Universal Program VWF
- VHDL en flujo de desarrollo y descripción estructural
- Declaración de entidad y cuerpo de la arquitectura
- Diseño VHDL con compuertas lógicas básicas, AND,OR,NOT,NAND,etc.
- Elementos léxicos
- Formato de programa VHDL
- Tipos de datos predefinidos VHDL
- Tipos de datos en el paquete IEEE std_logic_1164
- Operadores sobre un tipo de dato vector
- Tipo de datos IEEE numeric_std
- Paquete std_logic_arith
- Tipos de datos hdl code
- Compuertas primitvas HDL coder
DECLARACIONES DE ASIGNACIÓN DE SEÑALES SIMULTÁNEAS
- Tratamiento de cadenas hdl coder.
- Operaciones matemáticas enteras hdl coder
- Circuitos combinacionales vs Circuitos secuenciales
- Declaración de asignación de señal simple
- Declaración de asignación de señal condicional
- Declaración de asignación de señal condicional versus asignación de señal seleccionada
- Circuito sumador y restador de n bits
- Circuito multiplicador
- Simple ALU
- Circuito comparador completo
- Comparador de modo dual con signo y sin signo
- Multiplicador combinado basado en sumador
- Codificadores
- Decodificadores 7 segmentos y 16 segmentos
- Multiplexores y demultiplexores
- Elaboración de un voltímetro con el ads1115
DISEÑO DE CIRCUITOS SECUENCIALES
- Descripción general de circuitos secuenciales
- Elementos básicos de la memoria
- Circuitos síncronos vs asíncronos
- Flip Flop RS y SR
- Flip Flop D
- Divisores de frecuencia
- Contadores con Display de 7 segmentos y cuatro dígitos
- Modulación por ancho de pulso (PWM)
- Manejos de Servomotores
- Temporización de un circuito secuencial síncrono
- Uso del hc-sr04 mediante temporizadores
- Condicional y bucles hdl coder
- Subsitemas y encapsulamientos con hdl coder
MÁQUINA DE ESTADOS FINITOS
- Representación FSM
- Diagrama de estado
- Operación de un FSM síncrono
- Máquina Moore versus máquina Mealy
- Estilo de codificación multisegmento
- Descripción general de la asignación de estados
- Manejo de los estados no utilizados
- Almacenamiento en búfer mediante asignación de estado inteligente
- Almacenamiento en búfer de salida de Moore
- Contador binario basado en FSM
- Implementaciones con stateflow de simulink
- Generación de código hdl con maquinas de estados
PACKAGE, FUNCIONES Y PROCEDIMIENTOS
- Creacion de funciones y diseño de paquete lcd 16x2,20x4
- Creación de caracteres personalizados
- Tipos de Registros en Sistemas Digitales
- Representación de Registros y Transferencias
- Operaciones de Transferencia
- Diseño y Aplicaciones de Registros de Transferencia
PROTOCOLO I2C
- Introducción a la Comunicación Serial
- Fundamentos de I2C
- Arquitectura de Comunicación I2C (Maestro/Esclavo)
- Señales y Líneas de Comunicación I2C: SDA y SCL
- Protocolo de Transmisión I2C: Inicio, Dirección, ACK/NACK, Parada
- Direcciones y Asignación de Direcciones en I2C
- Diseño de Circuitos con I2C
- Herramientas de Simulación y Depuración para I2C
- I2C en Sensores, Actuadores y Dispositivos Periféricos
- Manejo de la eeprom RTC DS3231
- Uso del sensor de temperatura y humedad SHT31
- Uso del sensor de temperatura y humedad DHT20
- Uso del dac mcp4725
PROTOCOLO DE COMUNICACIÓN SPI
- Principios Básicos de la Comunicación SPI
- Arquitectura y Topología de SPI (Maestro/Esclavo)
- Líneas de Comunicación SPI: MISO, MOSI, SCK, SS
- Formato de los Datos y Protocolo de Transmisión
- Diseño de Interfaces SPI en Dispositivos Periféricos
- Herramientas y Técnicas de Depuración para SPI
- Aplicaciones con el acelerómetro adxl345
- Aplicaciones con la termocupla k y el max6675
PROTOCOLO DE COMUNICACIÓN UART
- Introducción a la Comunicación Serial
- Características y Parámetros de la Transmisión UART
- Formato de un Paquete de Datos UART (Start bit, Data bits, Parity bit, Stop bits)
- Rutinas de UART: Transmisión y Recepción
- Nextion con i2c y spi y uart
- Envío de datos a thingspeak
Proyectos de alumnos
Dirigido a
Estudiantes, técnicos y profesionales interesados en el diseño de sistemas digitales, electrónica embebida y desarrollo de hardware con FPGA.
Requisitos
Conocimientos básicos de electrónica.
Duración
El curso tiene una duración de 40 horas (15 sesiones).
