Máquinas de Estado Finito en VHDL

16,178 views

Published on

Diseño de Máquinas de estado Finito (FSM) usando VHDL sintetizable.

Published in: Education
2 Comments
7 Likes
Statistics
Notes
No Downloads
Views
Total views
16,178
On SlideShare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
0
Comments
2
Likes
7
Embeds 0
No embeds

No notes for slide

Máquinas de Estado Finito en VHDL

  1. 1. CIRCUITOS DIGITALES II MÁQUINAS DE ESTADO EN VHDL FSM (FINITE STATE MACHINE)Ing. Fernando Aparicio Urbano Molano 1
  2. 2. MÁQUINAS DE ESTADO EN VHDL FLIP- FLIP-FLOP TIPO DIng. Fernando A. Urbano M. 2
  3. 3. MÁQUINAS DE ESTADO EN VHDL MAQUINAS DE ESTADO Entrada Lógica Salida combinacional pr_state nx_state Lógica Clock secuencial ResetIng. Fernando A. Urbano M. 3
  4. 4. MÁQUINAS DE ESTADO EN VHDL DISEÑO DE LA SECCIÓN SECUENCIALLos FF están en la sección inferior, así que lasseñales clock y reset están conectadas aellos. La entrada es el estado siguiente(nx_state), mientras que su única salida esel estado actual (pr_state). Como el circuitoes secuencial, requiere un PROCESSIng. Fernando A. Urbano M. 4
  5. 5. MÁQUINAS DE ESTADO EN VHDL DISEÑO DE LA SECCIÓN SECUENCIAL (2)Consiste de un reset asíncrono, el cuáldetermina el estado inicial del sistema (state0),seguido por el almacenamiento síncrono denx_state (flanco positivo del reloj), el cuálgenerará pr_state.Ing. Fernando A. Urbano M. 5
  6. 6. MÁQUINAS DE ESTADO EN VHDL DISEÑO DE LA SECCIÓN SECUENCIAL (2)Consiste de un reset asíncrono, el cuáldetermina el estado inicial del sistema (state0),seguido por el almacenamiento síncrono denx_state (flanco positivo del reloj), el cuálgenerará pr_state.Ing. Fernando A. Urbano M. 6
  7. 7. MÁQUINAS DE ESTADO EN VHDL DISEÑO DE LA SECCIÓN SECUENCIAL (3) Ventajas: el estilo de la sección secuencial es estándar, genera un mínimo de registros, el número de FF generados es igual al número de bits necesitados para codificar todos los estados de la FSM. n  = log2   Nro. de registros n es el número de estadosIng. Fernando A. Urbano M. 7
  8. 8. MÁQUINAS DE ESTADO EN VHDL DISEÑO SECCIÓN COMBINACIONAL (1)Esta etapa es completamente combinacional,también puede usarse código concurrente.Este código también es bien simple, hace doscosas: (a) asigna el valor de salida y (b)establece el estado siguiente.Ing. Fernando A. Urbano M. 8
  9. 9. MÁQUINAS DE ESTADO EN VHDL TEMPLATE PARA LA FSM (1)Ing. Fernando A. Urbano M. 9
  10. 10. MÁQUINAS DE ESTADO EN VHDL EJEMPLO: CONTADOR BCD (1) Un contador es un ejemplo de una máquina de Moore, la salida depende solamente del estado almacenado. Ya se ha implementado este circuito de manera combinacional, ahora se implementara usando máquinas de estado.Ing. Fernando A. Urbano M. 10
  11. 11. MÁQUINAS DE ESTADO EN VHDL EJEMPLO: CONTADOR BCD (2)Ing. Fernando A. Urbano M. 11
  12. 12. MÁQUINAS DE ESTADO EN VHDL EJEMPLO: CONTADOR BCD (3)Ing. Fernando A. Urbano M. 12
  13. 13. MÁQUINAS DE ESTADO EN VHDL EJEMPLO: CONTADOR BCD (4)Ing. Fernando A. Urbano M. 13
  14. 14. MÁQUINAS DE ESTADO EN VHDL EJEMPLO: CONTADOR BCD (5)Ing. Fernando A. Urbano M. 14
  15. 15. MÁQUINAS DE ESTADO EN VHDL EJEMPLO: CONTADOR BCD (7)Ing. Fernando A. Urbano M. 15
  16. 16. MÁQUINAS DE ESTADO EN VHDL EJEMPLO: CONTADOR BCD (8)Ing. Fernando A. Urbano M. 16
  17. 17. MÁQUINAS DE ESTADO EN VHDL DISEÑO 2: SALIDA ALMACENADA Esta es una máquina de Mealy, ya que la salida depende de la entrada actual. La salida debe cambiar cuando la entrada cambie (salida asíncrona). Realicemos un diseño basado en el diagrama de estados. Sin embargo, hagamos que la salida sea síncrona (cambie únicamente con el flanco ascendente del reloj)Ing. Fernando A. Urbano M. 17
  18. 18. MÁQUINAS DE ESTADO EN VHDL DISEÑO 2: SALIDA ALMACENADA (1)Ing. Fernando A. Urbano M. 18
  19. 19. MÁQUINAS DE ESTADO EN VHDL DISEÑO 2: SALIDA ALMACENADA (2)Ing. Fernando A. Urbano M. 19
  20. 20. MÁQUINAS DE ESTADO EN VHDL DISEÑO 2: SALIDA ALMACENADA (3)Ing. Fernando A. Urbano M. 20
  21. 21. MÁQUINAS DE ESTADO EN VHDL DISEÑO 2: SALIDA ALMACENADA (4)Ing. Fernando A. Urbano M. 21

×