Lección 20.V137. Optimización del hardware de la UART RS-232 a 115200 bps. Simulación y prueba en la plaqueta.

En este video te muestro cómo economizar recursos del hardware hasta llegar a la optimización del circuito sintetizado del receptor de la UART RS-232. La velocidad de la comunicación serie es de 115200 bps. Uso la descripción con un único reloj. Te muestro los informes que emite el compilador del Quartus II para las distintas modificaciones de la descripción y también uso la herramienta Netlist Viewers del Quartus para analizar RTL Viewer y Technology Map Viewer para los distintos casos de optimizaciones. Realizo la simulación con el GTKWave. Luego pruebo el correcto funcionamiento usando la plaqueta de Altera DE1, conectada a la computadora a través de la línea RS-232.

Si te parece útil la explicación te agradezco mucho si además de de darle un clic a “me gusta” y suscribirte puedes contribuir al sostenimiento de mi sitio:

https://www.patreon.com/susanacanel

¡Gracias!

Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Puedes ver y descargar mis códigos fuente de: https://github.com/susanacanel/proyectos-vhdl.

Lección 20.V135. Testbench: receptor de la UART RS-232. Relación entre el baud-rate y el muestreo. Solución. Simulación.

En este video te explico el testbench para probar el receptor de la UART RS-232. Realizo la simulación y te explico las formas de onda de las señales. Analizo el problema que se genera cuando no se elije bien la relación entre el baud-rate y la señal de muestreo de mayor frecuencia. Explico una de las soluciones dejando la otra para un video sucesivo.

Si te parece útil la explicación te agradezco mucho si además de de darle un clic a “me gusta” y suscribirte puedes contribuir al sostenimiento de mi sitio:

https://www.patreon.com/susanacanel

¡Gracias!

Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Puedes ver y descargar mis códigos fuente de: https://github.com/susanacanel/proyectos-vhdl.

Lección 20.V133. Testbench del transmisor de la UART RS-232 enviando un mensaje. Simulación con GTKWave.

En este video te explico el testbench del transmisor de la UART RS-232. Luego simulo con GTKWave y te explico detalladamente las formas de onda. Te muestro un script hecho especialmente para este testbench.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Puedes ver y descargar mis códigos fuente de: https://github.com/susanacanel/proyectos-vhdl.

Lección 19.V130. Simulación de la memoria SRAM estática, sincrónica, con bus bidireccional. Script.

Simulo la memoria SRAM estática, sincrónica, con bus de datos bidireccional, usando el GTKWave. Muestro el contenido interno de la memoria. Explico el funcionamiento del bus bidireccional y de los ciclos de escritura y de lectura. Verifico si se cumplen los tiempos especificados en la hoja de datos de la memoria que usé como referencia. Luego muestro el “script” que realicé para esta simulación y cómo guardar una simulación y recuperar las selecciones con los valores actualizados usando el GTKWave.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Puedes ver y descargar mis códigos fuente de: https://github.com/susanacanel/proyectos-vhdl.

Lección 18.V124. Descripción como máquina de estado, testbench y simulación de un sumador serie.

En este video realizo una nueva descripción de un sumador serie, esta vez como máquina de estado. Uso la sentencia “case”. Porqué necesité usar reset asincrónico. Te explico las dificultades que tuve para solucionar un comportamiento muy particular que descubrí al sintetizar el circuito en la plaqueta DE1 y que también obtuve en el testbench. Te explico la solución. Luego explico el testbench y la simulación con GTKwave.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Puedes ver y descargar mis códigos fuente de: https://github.com/susanacanel/proyectos-vhdl.

Lección 17.V118. Declarando una función en un package y compilando todo con GHDL y con ModelSim.

En este video te muestro cómo definir una función en un package de manera que pueda ser compartida por varios proyectos. Te explico cuáles son las partes del package. Luego compilo y ejecuto usando GHDL y repito esos pasos pero para ModelSim.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Puedes ver y descargar mis códigos fuente de: https://github.com/susanacanel/proyectos-vhdl.

Lección 16.V116. Testbench: que usa archivos y datos string y std_logic_vector. Conversión de datos.

En este video te explico el testbench para el conversor de BCD binario natural a código BCD Aiken (contempla la posibilidad de que haya valores que no correspondan a un BCD binario natural válido). Uso archivos para la lectura de los datos y la escritura de los resultados. Los datos serán leídos desde el archivo de entrada, usando el tipo de datos “string” para posteriormente convertirlos al tipo “std_logic_vector”. Te muestro el archivo de entrada, con los datos que incluyen valores que no corresponden a un BCD binario natural válido. Convierto los subíndices que varían e n forma creciente (1 a 4) en otros en forma decreciente (de 3 a 0). Te comento porqué no uso el package de Synopsys. Puedes consultar sobre el problema de compatibilidad en:

http://ghdl.free.fr/ghdl/IEEE-library-pitfalls.html

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Puedes ver y descargar mis códigos fuente de: https://github.com/susanacanel/proyectos-vhdl.

Lección 15.V110. Descripción, testbench y simulación: sumador serie de los N primeros números naturales.

Te muestro una aplicación del sumador serie para sumar los N primeros números naturales. Hice pequeñas modificaciones al sumador serie que habíamos analizado para que fuera más flexible. Te muestro las diferencias con el código anterior. Luego te explico el testbench. Uso un ciclo for…loop para generar los operandos que sucesivamente le introduzco a la señal b_i. Para finalizar mostrándote la simulación en el GTKWave.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Lección 15. V109. En la plaqueta muestro qué pasa cuando se elimina el estado “espera_liberación”. Testbench antirrebote y simulación.

Te muestro en la plaqueta qué sucede cuando no se tiene en cuenta el estado que llamé “espera_liberación”. Y luego el testbench y la simulación. Para hacer más clara la simulación con el GTKWave, cambié en la descripción los valores máximos de las cuentas de manera de obtener una demora del orden de los ns, compatible con el periodo de la señal de clock. También agregué un contador3 que cuenta los pulsos de la señal de clock. Te explico el testbench y lanzo la simulación utilizando el GTKWave. Analizo el resultado de la simulación.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.

Lección 15.V106. Divisor de frecuencia, con 2 contadores anidados. Descripción, testbench y simulación.

En este video te muestro un divisor de frecuencia realizado con dos contadores anidados a fin de poder obtener una frecuencia muy pequeña, Hz, por ejemplo, a partir de frecuencias de decenas de MHz. Realizo la simulación con relaciones de frecuencia pequeñas, 1/24, para poder analizar las formas de las ondas.

Si te parece útil la explicación no te olvides de darle un clic a “me gusta” ¡Gracias! Para contactarme y solicitarme los manuales del Quartus II que escribí en español en lenguaje amigable (no son una traducción) y también los archivos de las descripciones y testbenchs en formato texto para que los puedas probar, entrá en http://susycursos.com/contactame/.