Lección 11.V61. Explicación y testbench sobre las limitaciones del contador sin una señal de reset.

En este video te explico el testbench para el contador elemental del video anterior. Se trataba de un contador con solo señal de pulsos a contar y la salida del estado de la cuenta. Te explico los problemas que se generan al no partir de un estado inicial conocido. Te muestro el testbench interactuando con la descripción. También analizo qué sucede en el hardware cuando no hay un estado inicial mirando el circuito generado por la herramienta “Technology Map Viewer” del Quartus II.

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, entra en /contactame/ .

Salida de la ventana “transcript” luego de la simulación en el ModelSim.

Lección 11. V60. Contador sincrónico binario de módulo potencia de dos.

En este video te explico la descripción VHDL de un contador binario de módulo potencia de 2, también llamado cíclico. Como primer ejemplo elegí un contador que tiene solamente la entrada de pulsos a contar (reloj) y como salida el estado de la cuenta. Como uso una señal de tipo unsigned incluyo el package numeric_std. Uso la función rising_edge. Compilo y controlo los “warnings”. Luego recurro a la herramienta “Tool” y selecciono “Technology Map Viewer” del Quartus II para ver y analizar el circuito esquemático generado.

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, entra en /contactame/ .


Lección 10.V53. Descripción de un flip-flop D, clear asincrónico, habilitación del reloj.

En este video te explico la descripción VHDL de un flip-flop D, con clear asincrónico y habilitación del reloj. Te muestro la tabla de verdad a fin de realizar la arquitectura y ver porqué la habilitación se denomina “habilitación del reloj”. Uso un “process” con dos señales en la lista de sensibilidad. Para generar prioridades entre las señales de entrada y analizar condiciones uso la sentencia condicionada “if…then” con la opción “elsif” y con un “if…then” anidado. Uso la función “rising_edge” para detectar el flanco creciente. Especifico incompletamente el “if” para inferir memoria. Analizo un “warning”. Con la herramienta “Tool” del Quartus II y la opción “Technology Map Viewer (post Mapping)” te muestro el esquemático generado y te lo explico. 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, entra en /contactame/ .

Lección 9.V48. Descripción de un latch SR con reset prioritario.

En este video te muestro la descripción de un latch SR con reset prioritario. Uso la sentencia condicionada “when…else” para generar la prioridad y al usarla incompletamente especificada infiero memoria. Compilo. Analizo los “warnings” y te muestro el esquemático generado con la herramienta “Technology Map Viewer” del “Tool” del Quartus II. 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, entra en /contactame/

Descripción VHDL de un latch SR con reset prioritario.
Tabla de verdad del latch SR con reset prioritario.

Lección 9.V46. Descripción de un biestable (latch) D.

Con este video inicio la segunda parte del curso que consta de las descripciones y los testbenchs de circuitos lógicos secuenciales. Para empezar describo el más sencillos de todos los circuitos que es un biestable (latch) D. Uso la sentencia when…else incompletamente especificada para inferir memoria. Te muestro el esquemático generado por el Technology Map Viewer del Quartus II y te lo explico. Analizo los “warnings” y te muestro y explico los distintos tiempos de propagación del informe producido por la herramienta “timing analyzer”. 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 entra en /contactame/.

Esquema del latch D.
Tabla de verdad del latch D.
Descripción VHDL de un latch D.
Circuito esquemático generado por el Technology Map Viewer del Quartus II.
Warnings generados por el compilador del Quartus II.
Informe de los peores tiempos dado por el Timing Analyzer del Quartus II.

Lección 5.V25.2. Hardware sintetizado y efectos de eliminación de una señal de la descripción.

En este video analizo el RTL y el Technology Map Viewers comparándolos con la descripción VHDL y explicando que son los LE (Logic Element) y la LUT ( look-up-table) y cómo verlos en el Technology Map. Modifico la descripción eliminando una señal y muestro los efectos sobre el hardware sintetizado y los tiempos de propagación de las señales. Muestro las etapas del diseño CAD. Muestro como se asignan las patas. Explico la diferencia entre programar y configurar. Muestro cómo se usa el programador del Quartus II, para configurar la FPGA. Archivo de extensión SOF para bajar a la SRAM del Cyclone II.
Puedes ver el código en mi post Lección 5. VHDL descripción estructural.  /blog/page/3/ A través de “contactame” puedes pedirme que te envíe los archivos de texto con las descripciones para que los puedas probar y el tutorial del Quartus II, que hice. /contactame/


Análisis el RTL y el Technology Map Viewers

Lección 4.V23. Descripción NAND genérica.

Puedes ver el código en mi post Lección 4. VHDL descripción algorítmica. /2018/09/03/leccion-4-arquitectura-algoritmica/ . A través de “contactame” puedes pedirme que te envíe los archivos de texto con las descripciones para que los puedas probar y el tutorial del Quartus II, que hice. /contactame/

Lección 4.V22. Descripción NOR genérica.

Descripción VHDL, usando arquitectura algorítmica de una compuerta NOR genérica, de N bits. este tipo de arquitectura por ser secuencial ncesita del uso de procesos explícitos, process. El proceso contiene solamente sentencias secuenciales y procesos implícitos de asignación simple.  En este ejemplo uso las sentencias for…loop e if. Defino una variable auxiliar. Muestro el RTL Viewer y el Technology Map Viewer, generados. Simulo para comprobar el correcto funcionamiento. Como introducción sintetizo lo visto hasta el momento: arquitecturas por comportamiento y los diferentes estilos. Puedes ver el código en mi post Lección 4. VHDL descripción algorítmica. /2018/09/03/leccion-4-arquitectura-algoritmica/ . A través de “contactame” puedes pedirme que te envíe los archivos de texto con las descripciones para que los puedas probar y el tutorial del Quartus II, que hice. /contactame/

Lección 3.V19. ROM: binario a Gray.

Descripción VHDL de una memoria ROM genérica usada para convertir de código binario natural de 4 bits a código Gray. Incluyo el package numeric_std para usar datos unsigned y la función to_integer para el casting. Defino un nuevo tipo de datos con type y arreglos con array. Escribo una tabla con el código Gray que será el contenido de la memoria ROM. Analizo el hardware sintetizado con la herramienta Technology Map Viewer del Quartus II. Y finalmente realizo la simulación para comprobar el correcto funcionamiento. Puedes ver el código en mi post Lección 3. VHDL por comportamiento. /blog/page/6/. A través de “contactame” puedes pedirme que te envíe los archivos de texto con las descripciones para que los puedas probar y el tutorial del Quartus II, que hice.  /contactame/