Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Digitales I
Curso 2021/2022
Objetivo del trabajo
El personal de limpieza de la Escuela Universitaria Politécnica, ha encontrado en el laboratorio
de Electrónica II una antigua memoria USB de 4 MB. Ésta fue en su día propiedad de un
profesor ya retirado y contiene, entre otras cosas, un audio con información privilegiada
sobre dónde se encuentra el dinero de su herencia. El contenido del dispositivo se puede ver
a continuación:
• mensaje_importante.mat: contiene todas las muestras del mensaje de audio que hay
que descifrar para encontrar el dinero.
• script_envio_mensaje.m: script de matlab que sirve para enviar desde el PC a la FPGA,
a través del puerto RS232, mediante el protocolo UART, la señal contenida en
mensaje_importante.mat.
• modelo_UART.vhd: circuito que se puede instanciar en un Test Bench para simular el
envío de datos a través del protocolo UART y el puerto RS232. Puedes modificarlo a
tu gusto para simular distintos escenarios.
• modelo_MT45W.vhd: modelo que se comporta como la memoria MT45W8MW16BGX
para operaciones de lectura y escritura asíncronas.
• UART_recepcion.vhd: módulo que se encarga de que la FPGA reciba los datos por el
puerto RS232 desde el ordenador.
Además, en el pendrive aparece un boceto con los componentes que habría que utilizar para
resolverlo:
Spartan3E Artix7
RS232 RAM
UART Agrupa2 Controlador Controlador
MT45W8M Filtro
Recepcion Bytes Memoria PWM
W16BGX
NEXYS2 NEXYS4
El fin de este trabajo es claro, debes conseguir escuchar el archivo de audio que el antiguo
profesor tenía almacenado, todo ello mediante la ayuda de circuitos en VHDL en la placa
Nexys2 y Nexys4, siguiendo su esquema.
Etapas de diseño del circuito
En base al contenido del boceto y al material disponible, se plantean las distintas etapas para
llegar al objetivo.
Recepción de datos
Las muestras que forman parte del archivo de audio se van a enviar desde el PC a la FPGA
Spartan3E mediante el protocolo UART y el puerto RS232. Este protocolo sirve para enviar en
serie tramas de datos de 8 bits siguiendo la secuencia indicada a continuación:
1. Inicialmente, ha de esperarse a que la entrada RXD se ponga a nivel bajo (bit de Start),
lo cual indica que comienza la transmisión.
2. A partir de ese instante, aparecen bit a bit, los 8 bits del dato a recibir, empezando por
el menos significativo. Es importante guardar el nuevo bit en la mitad del ciclo, como
se muestra en la Figura 3.
3. Finalmente, se recibe un ‘1’ a través de RXD, lo que indica que la comunicación ha
finalizado (Bit de Stop).
Salida Salida2B
RXD UART Agrupa2
Recepcion Fin_Recepcion Bytes Fin_Recepcion2B
Tareas a realizar
a) Instancia únicamente el bloque UART Recepción, compruébalo en un TB(*) y verifica
su funcionamiento mediante el display 7 segmentos.
b) Diseña el bloque Agrupa2 Bytes, que debe constar de unidad de control y operativa,
compruébalo en un TB(*) y verifica su funcionamiento mediante el display de 7
segmentos.
(*) Puedes simular el envío de datos instanciando en el TB el módulo modelo_UART.vhd.
Controlador de memoria RAM
Ya estarías en una situación en la que dispones de un dato de 16 bits en “Salida2B”, junto con
un flag “Fin_Recepcion2B”, que indica la aparición de una nueva muestra. Ahora necesitas
realizar la siguiente secuencia de operación: tendrás guardar en una memoria RAM, muestra
a muestra, toda la información recibida mediante el bloque del apartado anterior y,
posteriormente, tendrás que leerla para poder reproducirla a la velocidad adecuada. Una
posible propuesta sobre el funcionamiento de este bloque sería la siguiente, en el que se
omiten las señales que comunican la Unidad de Control y la Unidad Operativa:
Escribiendo
Leyendo
AudioDisp
Fin_Recepcion2B UC NuevaMuestra
Controlador
ControlRAM
AltaImp
Salida2B DQ
MT45W8MW16BGX
A
UO
InicioRec Controlador
InicioRep Muestra
Generic:
frec
n_muestra
Controlador_memoria_RAM
Spartan3E Artix7
RAM
MT45W8M
W16BGX
UART Agrupa2 Controlador Controlador
Recepcion Bytes Memoria Filtro
NuevaMuestra PWM
Muestra
NEXYS2 NEXYS4
Figura 6 – Conexionado entre Nexys 2 y Nexys 4DDR
Para ejemplificar el funcionamiento de este circuito, supongamos una señal digital que se
muestrea a 1 kHz, la cual se quiere convertir en analógica mediante una PWM de 10 kHz,
como se ve en la Figura 7. La aparición de una nueva muestra se produce cada ms (señal a
trazos), mientras que el ciclo de trabajo de la PWM (período de 0.1 ms) debe ser proporcional
al valor de la muestra a convertir a analógico.
1 ms 1 ms
0.1 ms
El contenido en frecuencia de esa señal PWM, que será necesario filtrar, se aprecia en la
Figura 8.
Mensaje ♫
Presentación oral
La presentación estará limitada a un máximo de 10 minutos de exposición (se pueden usar las
mismas figuras de la memoria siempre que se vean con claridad al proyectarlas).
Criterios de corrección presentación oral:
▪ La estructura de la presentación es correcta (se explican los apartados en el orden
indicado en el enunciado de la tarea, las explicaciones van de lo general a los detalles
particulares y son claras, se resume adecuadamente la información...).
▪ Los recursos visuales son pertinentes y eficaces (todo lo que se proyecta es perfectamente
visible para toda la clase, y es información relevante).
▪ Se presentan conclusiones.
▪ Se respeta estrictamente el tiempo establecido (se penalizará el exceso).
▪ Se establece contacto visual con la audiencia.
▪ Se varía la entonación para resaltar puntos importantes.
Defensa de la práctica
El profesor tendrá la opción descargar el programa a la FPGA para comprobar el
funcionamiento del circuito, preguntando a los alumnos sobre diversos aspectos de su
trabajo, tales como criterios de diseño, conexionado de los circuitos integrados, etc.
Entrega y puntuación
Entrega
La entrega de trabajos tiene como fecha límite el domingo 1 de mayo a las 23:55, no
aceptándose ninguna demora respecto a la misma. La entrega constará un único archivo zip
que incluirá los siguientes archivos:
▪ Un documento PDF con la memoria.
▪ Un proyecto ISE para el apartado de recepción de datos con sus correspondientes TB.
▪ Un proyecto ISE para el apartado del controlador de memoria y sus correspondientes TB.
▪ Un proyecto ISE con el circuito PWM y sus correspondientes TB.
▪ Un proyecto ISE para el circuito final que hayas empleado para escuchar el audio.
El archivo de entrega ha de seguir la siguiente nomenclatura:
“NombreAlumno1_Apellido1Alumno1_NombreAlumno2_Apellido1Alumno2.zip”.
Funcionalidad y Controlador
30 %
de Memoria
corrección del diseño
PWM 15 %
Circuito Final 5%
Documentación 10 %
Presentación 5%
Presentación
Defensa 25 %
Total 100 %
Tabla 1 – Distribución de la puntuación