Lección 19.V129. Testbench memoria SRAM estática, sincrónica, bus bidireccional. Usa procedimientos.

Te explico el testbench para una memoria SRAM, sincrónica y con bus de datos bidireccional. Me base en los diagramas temporales de una memoria comercial y los modifiqué para convertirla en sincrónica. Para hacer más legible el testbench, definí procedimientos para escribir, leer y verificar la memoria. Los ubiqué en un “package” propio. Te explico detalladamente los procedimientos siguiendo la hoja de datos. Este video continúa en el siguiente que es donde realizo 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/.

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

Hoja de datos, Fujitsu: MB8464A-10-X/-10LL-X.

Hoja de datos, Fujitsu: MB8464A-10-X/-10LL-X.

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 8.V39. Testbench del decodificador genérico con habilitación.

En este video te muestro la descripción de un testbench para un decodificador genérico de N bits con entrada de habilitación. Uso dos simples for…loop, uno para el decodificador habilitado y otro para cuando está inhabilitado, verificando así todos los casos posibles. En el assert uso la expresión: “2**i” o sea, 2 elevado al índice del for, para generar las salidas esperadas. Uso el atributo ‘image. Incluyo el package numeric_std para poder usar las funciones: to_integer, to_unsigned.
Para finalizar uso el testbench para simular y te muestro el resultado.
A través de “contactame” http://susycursos.com/contactame/ puedes pedirme que te envíe los archivos de texto con las descripciones y testbenchs para que los puedas probar y el tutorial del Quartus II, que hice.

Primera parte del código del testbench de un decodificador genérico.
Última parte del código del testbench de un decodificador genérico.

Lección 8.V30.3. Testbench de un multiplexor genérico con entrada de habilitación.

En este video te muestro el testbench de un multiplexor genérico, de N canales, con entrada de habilitación. El testbench se realiza para un caso en particular. Uso “others” para dar el valor inicial a las señales del testbench. Sentencia for…loop. Uso generic map dado que la descripción era genérica. Uso port map. Uso el package numeric_std que necesita la función to_unsigned.
Para finalizar uso el testbench para simular y te muestro el resultado.
A través de “contactame” http://susycursos.com/contactame/ puedes pedirme que te envíe los archivos de texto con las descripciones y testbenchs para que los puedas probar y el tutorial del Quartus II, que hice.

Primera parte del código del testbench del multiplexor genérico.
Segunda parte del código del testbench del multiplexor genérico.
Última parte del código del testbench del multiplexor genérico.

Lección 7.V32. Testbench para el conversor BCD binario natural a Aiken.

En este video te explico cómo usar una tabla (un arreglo) para verificar si las salidas son las esperadas. Uso for…loop y el atributo ‘range. Uso el atributo ‘image. Incluyo el package numeric_std para poder usar las funciones: to_unsigned y to_integer.
Para finalizar uso el testbench para simular y te muestro el resultado.
A través de “contactame” http://susycursos.com/contactame/ puedes pedirme que te envíe los archivos de texto con las descripciones y testbenchs para que los puedas probar y el tutorial del Quartus II, que hice.

Formas de onda del conversor de códigos BCD, de binario natural a Aiken,