Lección 15.V101. Función de resolución. Aplicación a un multiplexor con salida de alta impedancia.

En este video te explico que es la función de resolución y la aplico a un caso concreto de un multplexor de dos canales, con salida de alta impedancia, Z. Además cómo se modeliza una entrada con pull-up y otra con pull-down. También te cuento los posibles problemas que puedes encontrar con los compiladores y los simuladores. Te muestro la el package std_1164.vhdl y dónde puedes encontrar la tabla de doble entrada para analizar la función de reolución. También te explico cómo modelizar un pull-up y un pull-down y cómo funcionan.

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 https://susycursos.com/contactame/.

https://youtu.be/32hBfaDT5Kk

Lección 14.V99. Máquina de estado. Contador que cuenta en una determinada secuencia. Comparación de estilos de descripción.

En este video te explico cómo describir a través de una máquina de estados un contador que cuenta en una determinada secuencia y comparo esta descripción con otra en la cual no usé una máquina de estado. Así vemos cómo varía en forma importante la cantidad de recursos usados en cada caso y también los tiempos de propagación. Estos son dos factores importantes a tener en cuenta cuando se debe elegir un estilo para realizar una descripció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 https://susycursos.com/contactame/.

Lección 14. V95. Máquina de estado Moore, detector de secuencia, con solapamiento.

Te explico una máquinas de estado con salida Moore. Describo un detector de secuencia con solapamiento. Uso la sentencia case para modelizar la máquina de estados. Uso tipo de datos enumerados para definir los estados. Diseño la máquinas de estados usando dos procesos, uno secuencial y otro combinacional. Explico un diagrama de estados y luego lo traduzco a código VHDL. Uso la herramienta Tool del Quartus II, selecciono Netlist Viewer, RTL (para ver las características de la salida tipo Moore), Technology Map Viewer (vemos que el Quartus usa 4 flip-flop para generar 5 estados) y State Machine Viewer (vemos el diagrama de estados, la tabla de transiciones y la codificació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 https://susycursos.com/contactame/.

Lección 14.V89. Máquinas de estado, Mealy, detector de secuencia. Sentencia case.State Machine Viewer.

Te explico las máquinas de estado con salida Mealy y Moore. Describo un detector de secuencia. Uso la sentencia case. Tipo de datos enumerados. Diferencia entre salida tipo Mealy y tipo Moore. Máquinas de estados con dos procesos, uno secuencial y otro combinacional. Construyo y explico un diagrama de estados y luego lo traduzco a código VHDL. Uso la herramienta Tool del Quartus II, Netlist Viewer, RTL (para ver las características de la salida tipo Mealy), Technology Map Viewer (vemos que el Quartus usa 4 flip-flop para generar 4 estados) y State Machine Viewer (vemos el diagrama de estados, la tabla de transiciones y la codificación). Te explico la sentencia “case” comparándola con la correspondiente sentencia concurrente “when”. Para hacer la descripción VHDL uso datos enumerados para definir los estados.

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 https://susycursos.com/contactame/.

Lección 13. V88. Descripción, testbench y simulación,contador Johnson o Moebius, módulo impar, autoarranque.

Te muestro la descripción y el testbench de un contador Johnson o Moebius, de módulo impar, con arranque automático. Uso vs code, compilo desde la línea de comando usando git bash. Y finalmente simulo desde la línea de comando usando 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 https://susycursos.com/contactame/.

Lección 13.V86. Descripción de un contador Johnson o Moebius de módulo impar. Hardware generado.

En este video te explico la descripción de un contador Johnson o Moebius de módulo impar. Para lograrlo se debe saltear uno de los estados, por ejemplo, aquel que contiene todos sus bis en ‘1’. Uso Technology Map Viewer de la herramienta Tool para analizar el circuito esquemático del circuito sintetizado.

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 https://susycursos.com/contactame/.

Lección 13.V85. Verificación del funcionamiento del autocorrector del contador Johnson o Moebius.

En este video te muestro cómo funciona el proceso de autocorrección del contador Johnson o Moebius de 4 bits que vimos en los dos videos anteriores. Para generar errores que se podrían dar, por ejemplo por ruido, cambié el código de la descripción de manera que el testbench tuviera la oportunidad de “producir esos códigos prohibidos” y pudiéramos ver cómo el proceso de autocorrección los corrige en como máximo 3 ciclos de reloj. Realizo la simulación con el ModelSim generando las formas de onda. Tuve que adaptar el testbench para usar el ModelSim solo como graficador y agregar la nueva señal de selecció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 https://susycursos.com/contactame/.

Lección 13.V83. Contador Johnson o Moebius, módulo par, arranque automático. Hardware generado.

Descripción VHDL de un contador Johnson o Moebius, de módulo par con arranque automático. Uso el Quartus II. Tanto el reset como una determinada condición lo llevan al estado inicial que es el que tiene todos los bits en “0”. El arranque automático asegura que en no más de (N-1) ciclos de reloj el contador entra en secuencia. Vemos el circuito esquemático generado por Technology Map Viewer de la herramienta 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, entrá en https://susycursos.com/contactame/.

Lección 13.V80. Descripción: contador en anillo con arranque automático. Hardware generado.

Te describo un contador en anillo con arranque automático, o sea que contempla la posibilidad tanto de que todos sus bits erróneamente estén en ‘0’ como que el contenido tenga más de ‘1’. En el primer caso inmediatamente lo lleva a su estado inicial (el del reset) con el bit más significativo en ‘1’ y el resto en ‘0’. En el segundo caso, en cada ciclo de reloj va limpiando los ‘1’ que hubiera. Uso dos procesos, la señal generada por uno de ellos dispara el otro proceso. Defino una variable. Uso for loop.

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 https://susycursos.com/contactame/.

Lección 13.V78. Descripción de un generador de secuencia pseudo-aleatoria de 5 bits.

Descripción y explicación de un generador de una secuencia pseudo-aleatoria de 5 bits usando un registro de desplazamiento. Este generador cuenta con 32 estados ya que se fuerza el estado con todos los bits en cero. También tiene una señal de reset. Te muestro en una tabla la secuencia generada. Analizo con detalle los esquemáticos generados por RTL y 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, entrá en https://susycursos.com/contactame/.