![Page 1: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/1.jpg)
Análisis y Síntesis
Introducción a los Sistemas Lógicos y Digitales
Sergio Noriega 2020
![Page 2: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/2.jpg)
Métodos de análisis:
Tabla de verdad.
Ecuaciones lógicas.
Diagramas de estado.
Simulación.
Test del hardware.
etc.....
Análisis
Análisis:Es el procedimiento por el cualmediante alguna técnica de inspección se trata de:- Conocer qué hace ó cómo funciona un sistema ó circuito.
- Verificar su performance ó encontrar la causa de su malfuncionamiento.
![Page 3: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/3.jpg)
AnálisisANÁLISIS mediante el desarrollo de ecuaciones
y1
y2
![Page 4: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/4.jpg)
AnálisisANÁLISIS mediante el desarrollo de ecuaciones
" "
![Page 5: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/5.jpg)
AnálisisANÁLISIS mediante el desarrollo de ecuaciones
![Page 6: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/6.jpg)
AnálisisANÁLISIS mediante el desarrollo de ecuaciones
CLKX=0CLEAR
Z1Z2
CLKX=1CLEAR
Z1Z2
Se puede concluir que el circuito representa un contador binariode dos bits Z2 Z1, con entrada de reset asincrónico (CLEAR) y una entrada de control "X" que define el sentido de conteo en forma ascendente (X=1) ó descendente (X=0).
![Page 7: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/7.jpg)
Análisis ANÁLISIS mediante herramientas de software(ejemplo empleando Quartus II y Modelsim)
y1
y2
z1
z2x
El mismo circuito anterior se lo analizará empleando herramientas de capturay simulación.
![Page 8: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/8.jpg)
AnálisisUso de Quartus II y Modelsim
Generación de esquemático y posterior conversión a formato HDL
![Page 9: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/9.jpg)
Análisis
Generación de esquemático y posterior conversión a formato HDL
![Page 10: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/10.jpg)
Análisis
Archivo VHDL generado por Quartus II en base al esquemático"analisis_de_circuitos_1.bdf"
![Page 11: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/11.jpg)
Análisis
Archivo VHDL generado por Quartus II en base al esquemático"analisis_de_circuitos_1.bdf"
![Page 12: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/12.jpg)
Análisis
Archivo VHDL creado para hacer el test bench junto con el descripto en"analisis_de_circuitos_1.vhd".
Con ambos archivos se entra a Modelsim y se observa después el resultado de la simulación en los diagramas de tiempo.
Se genera un reloj de 200 ns de período.En paralelo se genera una entrada para CLEAR, generandoun pulso negativo de 500 ns de duración.La señal X, en t=0 ns se pone en "0" y luego en 5,6 us sepasa a "1".
![Page 13: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/13.jpg)
Análisis Respuesta de Modelsim a "analisis_de_circuitos_1"
![Page 14: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/14.jpg)
Análisis
Por inspección de los diagramas de tiempo, el circuito parece ser un contador binario de 2 bits que cuenta los flancos de subida de una señal de reloj CLK y los refleja en las salidas Z2 Z1, siendo Z2 el bit MSB (más significativo).Tiene una entrada de CLEAR que borra las salidas en estado bajo, en forma asincrónica y otra entrada X que controla el sentido de conteo: si X=0 cuenta en forma regresiva y si X=1 en forma progresiva.
Respuesta de Modelsim a "analisis_de_circuitos_1"
![Page 15: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/15.jpg)
Máquinas de estado
Modelo de Mealy
La(s) salida(s) depende(n) de la(s)
entrada(s) y del estado actual.
Modelo de Moore
La(s) salida(s) depende(n) del
del estado actual.
Bloque
combinatorio
Bloque de
memoria
salidas=función (entradas, estado actual)entradas
salidas del
bloque de
memoria
Bloque
combinatorio
Bloque de
memoria
salidas=función (estado actual)entradas
salidas del
bloque de
memoria
Análisis
![Page 16: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/16.jpg)
Ejemplo de análisis por diagrama de estados
Se debe aplicar el modelo de Moore
Análisis
![Page 17: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/17.jpg)
Análisis
![Page 18: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/18.jpg)
Análisis
Tabla de Estados
S3/011
S2/010
S0/000
S1/001
S4/100
S5/101
S6/110
S7/111
Se trata de un contador binario progresivo de 3 bits sincrónico con entrada de RESETasincrónico.
Diagrama de Estados
MODELOMOORE
![Page 19: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/19.jpg)
Ejemplo de análisis por diagramas de estados
Partimos del siguiente
circuito:
Análisis
Se debe aplicar el modelo de Mealy
![Page 20: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/20.jpg)
Este circuito puede ser un detector de secuencia cíclico (se repite contínuamente) de una
entrada serie "Y" tal que si la secuencia es "100", durante un ciclo de reloj la salida "Z"
valdrá "1", caso contrario quedará siempre en 0.
Además, el siguiente bit después de detectar la secuencia correcta es descartado.........
S3
S2
S0
S1
1/0
1/0
1/0
0/0
X/0
0/1
0/0Y=0
Y =1
TABLA DE ESTADOS
DIAGRAMA DE ESTADOS
DON'T CARE Y/Z
Análisis
1
0
![Page 21: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/21.jpg)
Simulación del circuito anterior
Análisis
1 0 0Y
Z
![Page 22: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/22.jpg)
Herramienta empleada cuando es necesario realizar una verificación funcional del diseño empleando el hardware sintetizado en la FPGA. Funciona como un analizador lógico donde es posible seleccionar las señales que servirán para disparar el análisis y las que se desean testear.Las señales de trigger pueden ser internas ó externas de entrada a la FPGAbajo estudio (lo mismo que las señales bajo análisis).Dado que la información se almacena en memoria se requieren recursos tanto de lógica como de memoria dedicada de la propia FPGA en estudio.Los resultados pueden verse en el mismo ambiente de diseño en el Quartus yalmacenados luego en un archivo para posterior tratamiento.
Ventajas:Permite realizar un análisis de la respuesta del hardware empleando eventos de disparo provenientes de señales internas ó externas al dispositivo.
Desventajas:No permite realizar una verificación rigurosa del TIMING. Para ello existen otras herramientas de análisis como por ej. TimeQuest Timing Analyzer.
Análisis SignalTap II Logic Analyzer
![Page 23: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/23.jpg)
SIGNAL TAP II
En el siguiente ejemplo se analizará la respuesta de los bits de salida de un contador binario sincrónico de 8 bits, el cual es sintetizado en la FPGA Cyclone IV de la placa DE0-Nano basada el el chip EP4CE22F17C6.Todo el proceso de análisis se realiza con la placa conectada a la PC.Se utiliza como trigger la señal de RESET la cual es externa y asignada al pulsadorKEY0.Los 8 bits de salida del contador serán almacenadas en memoria de la FPGAy posteriormente grabados en un archivo.
Al iniciar el análisis en el mismo ambiente del Quartus, es posible ver el diagrama temporal con la evolución de las señales a testear.
La cantidad de muestras se puede ajustar y depende de los recursos de la FPGA.En este caso se eligen 16 Kmuestras.
Para definir el tiempo de muestreo se usa el reloj de 50 MHz de la entrada.
![Page 24: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/24.jpg)
SIGNAL TAP II
reset
enablecount
clk_50mhz
cou
nt
clk
cue
nta
enableKEY1
resetKEY0
(TRIGGER)
(SAMPLE)
clk_50mhz
divisor_clock_p
![Page 25: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/25.jpg)
SIGNAL TAP II
A este contador se le hacenlas siguientes asignacionesen la placa DE0-Nano:
RESET a pulsador KEY0.ENABLE a pulsador KEY1.CLK_50MHZ a oscilador 50MHz.Las 8 Salidas a los 8 LED´s.
KEY0 y KEY1 están siempre en«1» cuando NO se presionan(son pulsadores sin retención).
![Page 26: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/26.jpg)
SIGNAL TAP II
RESULTADO DE LA COMPILACIÓN SIN USAR LA HERRAMIENTA «SignalTap II»
![Page 27: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/27.jpg)
SIGNAL TAP II
Se configura la entrada de relojclk_50mhz como referencia parael período de muestreo.Se definen 16Kmuestras para eltamaño del buffer de almacena-miento de las señales.
Se definen lasseñales usadas para su análisque son las 8salidas del contador count
![Page 28: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/28.jpg)
SIGNAL TAP II
Se configura el disparo comopretrigger.La señal de disparo es RESET y elmuestreo empieza al detectarseun flanco de subida en esa señal(al soltar el pulsador KEY0).
Requerimiento del analizador
![Page 29: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/29.jpg)
SIGNAL TAP II
Si bien el circuito contador no emplea memoria dedicada, las 16 Kmuestras solicitadas para hacer el análisis, utiliza el 22% de los recursos disponibles con el modelo de la Cyclone IV que viene en la DE0-Nano.Por otro lado, el proyecto requiere un total de 11 Elementos Lógicos para implementarel contador, mientras que el SignalTap, necesita 656.
RESULTADO DE LA COMPILACIÓN AL USAR LA HERRAMIENTA «SignalTap II»
![Page 30: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/30.jpg)
SIGNAL TAP II
PASOS A REALIZAR:
1) El análisis se inicia al presionar el botón de Analysis de la ventana del SignalTap.
2)Como la entrada de RESET es la que origina el comienzo de la adquisición demuestras, se debe presionar KEY0.Al soltar KEY0 (flanco de subida) comienza el proceso el cual se detendrá al llenar el buffer.
3)Al termino de la captura, aparecerá una ventana con un diagrama temporal con las señales configuradas para su análisis.Se puede operar sobre ese diagrama o posteriormente dado que la información sealmacena en un archivo de datos.
![Page 31: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/31.jpg)
SIGNAL TAP II
Diagrama temporal con las 16Kmuestras adquiridas de las 8 salidas del contador
![Page 32: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/32.jpg)
SIGNAL TAP II
Diagrama temporal con las 16Kmuestras adquiridas de las 8 salidas del contador
Zoom
![Page 33: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/33.jpg)
Métodos de desprición:
Tabla de verdad.
Ecuaciones lógicas.
Diagramas de estado.
Algoritmos de síntesis.
Diseño basado en HDL.
etc.....
Síntesis:Es el procedimiento por el cualmediante alguna técnica de fabricación se trata de generar hardware a través de la descripción de un sistema ó circuito.Las posibles vías de desarrollo son al menos dos: -Empleo de lógica standard.-Empleo de lógica programable.
Síntesis
Descripción + Simulación + Producción de hardware
![Page 34: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/34.jpg)
SíntesisDiseño de un circuito en base a entrada por esquemático(ejemplo un contador sincrónico de 2 bits con entrada de RESET asincrónico y control de conteo progresivo-regresivo)
Se retoma el ejercicio visto en la sección de análisis
![Page 35: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/35.jpg)
Síntesis Resultado de compilar en Quartus II la entrada delcircuito como esquemático previa conversión adescripción como VHDL.
Habiendo elegido la FPGA Cyclone IV modelo EP4CE22F17C6, se utilizaronsólo dos Elementos Lógicos para construir el circuito
![Page 36: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/36.jpg)
Síntesis
El dispositivo FPGA tipo Cyclone IV modelo EP4CE22Fxxxx dispone de 22.320 LEs.Para este diseño sólo requiere de 2 LEs
Esquemático de un Elemento Lógico (LE) de la FPGA Cyclone IV "E"
Zona de generación de Lógica combinatoria
Zona de generación de Lógica secuencial
![Page 37: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/37.jpg)
Síntesis
Entrada de diseño por esquemático Ejemplo 2
![Page 38: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/38.jpg)
SíntesisConversión a VHDL desde archivo BDF
![Page 39: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/39.jpg)
SíntesisConversión a VHDL desde archivo BDF
![Page 40: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/40.jpg)
Síntesis
Resultado de la compilación
Se emplean sólo 3 LEs para la síntesis del contador de 3 bits
![Page 41: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/41.jpg)
Síntesis Test Bench para la verificación del contador
Generación de RELOJ.
Generación de RESET.
![Page 42: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/42.jpg)
Síntesis
Resultado de la simulación con Modelsim del contador
![Page 43: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/43.jpg)
S0/0 S1/1
S2/0
S3/01
1
1x
0
0
0
S0 S1
0/0 1/1
0/0
1/0
Modelo de descripciónpor MEALY
Modelo de descripciónpor MOORE
Se define estado a una dada combinaciónentre las salidas de los elementos de memoria (FFs) que conforman el circuito.
En Moore una salida NO puede cambiar su valor mientras esté en un dadoestado.
En Mealy, en cambio, puede hacerlo.
En estos dos ejemplos hay una entradaentonces de cada estado hay dos posibilidadesde acción.Si hay dos entradas serán 4 y así sucesivamente.
La referencia temporal en estosdiagramas está implícita:Para pasar de un estado a otroDEBE llegar un flanco activo de RELOJ.
CIRCUITO CON 2 FFs (4 estados)
CIRCUITO CON 1 FF (2 estados)
Síntesis Máquinas de estado
![Page 44: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/44.jpg)
Síntesis por Mealy
S0 S1
S2S3 1/0
1/0
1/1x/0
0/0
0/0
0/0
ESTADO REDUNDANTE
S0 S1
0/0 1/1
0/0
1/0
SE NECESITAN 2 FF
AHORA ....SE NECESITA 1 FF
REDUNDANCIA
REORDENANDO .....
Síntesis Máquinas de estado
![Page 45: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/45.jpg)
Síntesis por Mealy
Contador binario progresivo-regresivo de 2 bits
Síntesis
S3
S2
S0
S1
1/00 1/01
1/101/11
0/11
0/10
0/01
0/00
X=0 conteo regresivo y viceversa. DIAGRAMA DE ESTADOS
TABLA DE EXCITACIÓN
Método para lógica standard
Máquinas de estado
![Page 46: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/46.jpg)
Tablas de transición para generar el siguiente estado
Síntesis
TABLA DE TRANSICIÓNFLIP-FLOP TIPO "D"
TABLA DE TRANSICIÓNFLIP-FLOP TIPO "JK"
Si quiero usar FFs tipo "D", simplemente debo copiar en "D" el valor futuro que espero de Q.
Si quiero usar FFs tipo "JK", tengo más opciones:Por ejemplo si el Q actual es 0 (Qn=0) y quiero pasar a un Q de 0 (Qn+1=1).entonces tengo dos opciones:Pongo directamente JK=10 ó elijo la opción de negar el estado anterior de Q (JK=11), es decir queda JK=1X (don't care en la entrada "K").
Método para lógica standard
Síntesis por MealyMáquinas de estado
![Page 47: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/47.jpg)
Síntesis por Mealy
11
00 01 11 10
0
1
0 1 3 2
4 5 7 6
00 01 11 10
0
1
0 1 3 2
4 5 7 6
1 0
1
01
0
1
0 1
0
01
1
1
0
0
D1 D0
X
Q1Q0
X
Q1Q0
Método para lógica standard
Síntesis Máquinas de estado
![Page 48: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/48.jpg)
Síntesis por Mealy
Contador binario progresivo-regresivo de 2 bits
Síntesis
Bloque Combinatorio
Bloque Memoria
Máquinas de estado
![Page 49: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/49.jpg)
Síntesis por MealySíntesis
Diseño de circuito monoestable disparado por flanco ascendente
Y
CLK
Z
S0 S1
0/0 1/1
0/0
1/0Y/Z
El circuito está a la espera de detectar un flanco de subida por la entrada Y.Cuando ello ocurra, la salida Z se pondrá en "1" durante un ciclo de reloj CLK.
Máquinas de estado
![Page 50: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/50.jpg)
Síntesis por Mealy
Método para lógica standard
SíntesisTABLA DE EXCITACIÓN
11
0 1
0
1
0 1
2 3
X X
01
Q0Y
11
0 1
0
1
0 1
2 3
0 1
00
Q0Y
11
0 1
0
1
0 1
2 3
0 1
XX
Q0Y
J0 K0 Z
J
K
Q
/Q
Y
Z
CLK
00
![Page 51: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/51.jpg)
Síntesis por Moore
Diseño de circuito monoestable disparado por flanco ascendente
S0/0 S1/1
S2/0
S3/01
1
1x
0
0
0
y
z
clk
t
t
t
DIAGRAMA DE ESTADOS
Síntesis Máquinas de estado
![Page 52: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/52.jpg)
Síntesis por Moore
Por Moore el mismo problema generó un hardware un poco mas complejo pero
con la salida sin depender de la entrada.
Síntesis
![Page 53: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/53.jpg)
Síntesis por Moore
Diseñar en base a un flip-flop JK un circuito que responda
con el siguiente diagrama de estados:
S0/0 S1/1
AB=10/11
AB=01/11
AB=00/01 AB=00/10
Síntesis Máquinas de estado
![Page 54: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/54.jpg)
El diagrama de estados corresponde a un flip-flop "JK“..!!
Síntesis por Moore
Método para lógica standard
Síntesis
![Page 55: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/55.jpg)
Síntesis por Moore
El diagrama de estadosera el de un FF “D”
Método para lógica standard
Diseñar en base a un flip-flop D un circuito que responda
con el siguiente diagrama de estados:
S0/0 S1/1
1
0
y=0 1
Síntesis Máquinas de estado
![Page 56: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/56.jpg)
Síntesis por Moore
DISEÑO DE UN FF "JK" EN BASE A UNO TIPO "D" Método para lógica standard
Síntesis Máquinas de estado
![Page 57: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/57.jpg)
Síntesis por Moore
Detector de paridad par en
formato serie de 2 bits de
magnitud
S0/00
S1/00S2/00
S6/00S5/00
S3/01S4/10
S7/00
XX
X
0
00
0
0
1
1
1
1
1
Síntesis Máquinas de estado
![Page 58: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/58.jpg)
Diseño de comparador de magnitud serie de dos números sin
signo (A y B) donde se transmite el bit mas significativo primero
Las salidas Z1Z0 deben cumplir con la
siguiente tabla:
Si A>B => Z1Z0=10
Si A<B => Z1Z0=01
Si A=B => Z1Z0=11
Si se está comparando => Z1Z0=00
A1..A0
B1..B0
CLK
Z1
Z0
Síntesis por Moore
S0/00
S1/00S2/00
S6/11
S5/00
S3/01S4/10
0110
XXXX
00/11
0110
00/11
Síntesis Máquinas de estado
![Page 59: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/59.jpg)
Síntesis por Moore
Comando de un motor con dos pulsadores A y B Método para lógica standard
S0/0 S1/1
AB=10
AB=01
AB=00/11/01 AB= 00/11/10
Síntesis Máquinas de estado
![Page 60: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/60.jpg)
Síntesis por Moore
Comando de un motor con dos pulsadores A y B
Síntesis Máquinas de estado
![Page 61: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/61.jpg)
Síntesis por Moore
Detector de número impar en formato serie cíclico, siendo el
primer bit de entrada de cada secuencia, el MSB.
impar => b0=1
Síntesis Máquinas de estado
![Page 62: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/62.jpg)
Síntesis por Moore
Qué hacemos
con esta combinación??
SINTETIZAR UN GENERADOR DE SEÑALES QUE GENERE LASIGUIENTE SECUENCIA EN FORMA CÍCLICA:
Las entradas se evalúan en el primer ciclo de cada nueva secuencia de entrada.
Síntesis Máquinas de estado
![Page 63: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/63.jpg)
Síntesis por Moore
Sintetizar un circuito comparador de magnitud de dos númerosbinarios sin signo de 3 bits en formato serie donde se manda primeroel bit mas significativo MSB.
Z1 Z0 CONDICIÓN0 0 en proceso0 1 X < Y1 0 X > Y1 1 X = Y
Z1Z0
XY
Síntesis Máquinas de estado
![Page 64: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/64.jpg)
Síntesis por Mealy en VHDL
1/01
1/11
Síntesis de contador up-down con máquina de Mealy. Descripción en VHDL
s0 s1
s3 s2
1/101/00 0/11
0/10
0/01
0/00
Síntesis Máquinas de estado
![Page 65: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/65.jpg)
Síntesis por Mealy en VHDLTEST BENCH DESCRIPTO EN VHDL del contador sintetizado con Mealy
Síntesis
![Page 66: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/66.jpg)
Síntesis por Mealy en VHDL
Simulación del contador implementado con máquina de Mealy
Síntesis
![Page 67: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/67.jpg)
Síntesis por Moore en VHDL
s0/00 s1/01
s3/11 s2/10
1
11 0
0
0
0
1
Síntesis de contador up-down con máquina de Moore. Descripción en VHDL
Síntesis Máquinas de estado
![Page 68: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/68.jpg)
Síntesis por Moore en VHDLTEST BENCH DESCRIPTO EN VHDL del contador sintetizado con Moore
Síntesis
![Page 69: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/69.jpg)
Síntesis por Moore en VHDL
Simulación del contador implementado con máquina de Moore
Síntesis
![Page 70: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/70.jpg)
Síntesis por Moore en VHDL
Síntesis de un control de dos semáforos implementado con máquina de estados Moore y ciclo de reloj variable. Descripción en VHDL
R2
A2
V2
R1
A1
V1
s0/000000
1 10
0
0
1
s1/001001
s2/001100
s3/001010
s4/001001
s5/100001
s7/010010
s6/010001
0
0
X
0
0
1
1
1
‘V2’ ’A2’ ’R2’ ’V1’ ’A1’ ’R1’
1
Síntesis Máquinas de estado
![Page 71: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/71.jpg)
Síntesis por Moore en VHDLSíntesis
![Page 72: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/72.jpg)
Síntesis por Moore en VHDL
Este proceso genera unreloj de 1KHz y 50% de ciclode trabajo.
Este proceso genera un reloj de período variable en base alreloj anterior. En ‘0’ estará ‘count_max’ x 1ms y en ‘1’ 1ms.
Este proceso junto al siguienteforman la máquina de estado Moore que responde a la entrada‘modo’.
Síntesis
![Page 73: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/73.jpg)
Síntesis por Moore en VHDL
En este segundo proceso de la máquina de estados, se definen los valores de ‘salida’, y los valores de precarga (count_max) del proceso ‘clock_var’ que sirve para generar el reloj de período variable de dicha máquina de estados.Ejemplo: Para el estado V2R1 el valor en hexa es ‘9C40’ ó 40.000, es decir, elperíodo de ‘clock_div’ será 1 ms x 40.000 = 40 segundos. Ese es el tiempo en que estarán las lámparas V2 y R1 encendidas.
Síntesis
![Page 74: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/74.jpg)
Síntesis por Moore en VHDLSíntesis
![Page 75: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/75.jpg)
Síntesis por Moore en VHDL
Simulación del semáforo implementado con máquina de Moore
Esta simulación se hizo en otro proyecto donde solo se agregó la salida dereloj de 1KHz para test y modificando los valores de ‘count_max’ a finde disminuir los tiempos de simulación
modo = ‘0’ (diurno)
- - R2R1 R2V1 R2A1 R2R1 V2R1 A2R1 R2R1 R2V1 A2R1
Síntesis
![Page 76: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/76.jpg)
Síntesis por Moore en VHDL
Simulación del semáforo implementado con máquina de Moore
modo = ‘1’ (nocturno)
R2R1 ------- A2A1 ------ A2A1
Síntesis
![Page 77: Introducción a los Sistemas Lógicos y Digitales...Análisis Archivo VHDL creado para hacer el test bench junto con el descripto en "analisis_de_circuitos_1.vhd". Con ambos archivos](https://reader036.vdocuments.co/reader036/viewer/2022071000/5fbc5537c5c5a360420d776c/html5/thumbnails/77.jpg)
Bibliografía:Apuntes de teoría:• “Análisis y Síntesis”. S. Noriega.
Libros:• VHDL for Logic Synthesis.Andrew Rushton.3RD.Ed. Wiley. 2011.
• The Guide to VHDL. Peter Ashenden–Jim Lewis.3RD. Ed. 2008.
• Finite State Machines in Hardware: Theory and Design (with VHDL and
SystemVerilog) Volnei A. Pedroni, 2013.
• Rapid Prototyping of Digital Systems with Quartus II. JAMES O. HAMBLEN. Ed.
Springer. 2005.• “Sistemas Digitales”. R. Tocci, N. Widmer, G. Moss. Ed. Prentice Hall.• “Diseño Digital”. M. Morris Mano. Ed. Prentice Hall. 3ra edición. • “Diseño de Sistemas Digitales”. John Vyemura. Ed. Thomson.• “Diseño Lógico”. Antonio Ruiz, Alberto Espinosa. Ed. McGraw-Hill.• “Digital Design:Principles & Practices”. John Wakerly. Ed. Prentice Hall.• “Diseño Digital”. Alan Marcovitz. Ed. McGraw-Hill.• “Electrónica Digital”. James Bignell, R. Donovan. Ed. CECSA.• “Técnicas Digitales con Circuitos Integrados”. M. Ginzburg. • “Fundamentos de Diseño Lógico y Computadoras”. M. Mano, C. Kime.
Ed. Prentice Hall.• “Teoría de conmutación y Diseño lógico”. F. Hill, G. Peterson. Ed. Limusa
Análisis y Síntesis