introducción a vhdl - sistemas digitales...
TRANSCRIPT
Introducción a VHDLCircuitos Secuenciales
Sistemas Digitales (23357)
Profesor:
Carlos A. Fajardo
Actualizado Agosto 2013
Proceso
• Un proceso en VHDL es una construcción quecontiene una serie de acciones que sonejecutadas secuencialmente.
• Puede ser visto como un circuito cuyocomportamiento puede ser descrito por unaserie de instrucciones secuenciales.
• Su contraparte en hardware muchas veces NOes sencilla de sintetizar.
Carlos FajardoSistemas Digitales 2
Proceso
• Un proceso en VHDL es una construcción quecontiene una serie de acciones que sonejecutadas secuencialmente.
• Puede ser visto como un circuito cuyocomportamiento puede ser descrito por unaserie de instrucciones secuenciales.
• Su contraparte en hardware muchas veces NOes sencilla de sintetizar.
Carlos FajardoSistemas Digitales 3
Proceso
• Un proceso en VHDL es una construcción quecontiene una serie de acciones que sonejecutadas secuencialmente.
• Puede ser visto como un circuito cuyocomportamiento puede ser descrito por unaserie de instrucciones secuenciales.
• Su contraparte en hardware muchas veces NOes sencilla de sintetizar.
Carlos FajardoSistemas Digitales 4
Formas básicas de los procesos
• Lista sensible (Sensitivity list).
• Instrucción de espera (Wait statements).
Carlos FajardoSistemas Digitales 5
Formas básicas de los procesos
• Lista sensible (Sensitivity list).
• Instrucción de espera (Wait statements).
Carlos FajardoSistemas Digitales 6
Proceso con lista sensible
Carlos FajardoSistemas Digitales 7
Proceso con lista sensible
Carlos FajardoSistemas Digitales 8
Proceso con lista sensible
• Se activa cuando una señal en la lista sensible secambia.
• Las instrucciones se ejecutan secuencialmente
• El proceso se suspende hasta que cambie otraseñal dentro de la lista sensible.
Carlos FajardoSistemas Digitales 9
Proceso con lista sensible
Carlos FajardoSistemas Digitales 10
Carlos Fajardo
Las sentencias se ejecutan secuencialmente
Esta descripción: Equivale a:
Sistemas Digitales 11
Carlos Fajardo
Las sentencias se ejecutan secuencialmente
Esta descripción: Equivale a:
Sistemas Digitales 12
Las dos sentencias secuenciales
•IF
•CASE
Sistemas Digitales Carlos Fajardo 13
Sentencia IF
Carlos FajardoSistemas Digitales 14
Sentencia CASE
Sistemas Digitales Carlos Fajardo 15
En resumen:
• Sentencias para circuitos combinacionales:
– With Select
– When Else
• Sentencias para circuitos secuenciales (ycombinacionales):
– IF
– CASE
Sistemas Digitales Carlos Fajardo 16
Un primer ejemplo:
Sistemas Digitales Carlos Fajardo 17
Multiplexor 4 a 1
Sistemas Digitales Carlos Fajardo 18
E1
E2
E3
E4
Salida
2
seleccion
Mux – Sentencia IF
Sistemas Digitales Carlos Fajardo 19
Mux – Sentencia CASE
Sistemas Digitales Carlos Fajardo 20
Sistemas Digitales Carlos Fajardo 21
Dos errores comunes
Sistemas Digitales Carlos Fajardo 22
Errores en la lista sensible
Un circuito combinacional debe tener todassus entradas en la lista sensible.
Carlos FajardoSistemas Digitales 23
Faltan señales en la lista sensible
Un circuito combinacional debe tener todassus entradas en la lista sensible.
Carlos FajardoSistemas Digitales 24
Lazos incompletos
Sistemas Digitales Carlos Fajardo 25
Comparador
A
B
Igual
Mayor
Menor
8
8
Asignación incompleta de señales
Sistemas Digitales Carlos Fajardo 26
Asignación incompleta de señales
Sistemas Digitales Carlos Fajardo 27
RTL: Todas las salidas conectados a VCC
Sistemas Digitales Carlos Fajardo 28
El comparador no hace nada!!!
Asignación incompleta de señales
Sistemas Digitales Carlos Fajardo 29
Solución – Todas la salidas son asignadas
Sistemas Digitales Carlos Fajardo 30
Solución – Todas la salidas son asignadas
Sistemas Digitales Carlos Fajardo 31
Solución – Todas la salidas son asignadas
Sistemas Digitales Carlos Fajardo 32
Solución – Todas la salidas son asignadas
Sistemas Digitales Carlos Fajardo 33
Solución – Todas la salidas son asignadas
Sistemas Digitales Carlos Fajardo 34
Solución – Todas la salidas son asignadas
Sistemas Digitales Carlos Fajardo 35
FIN
Sistemas Digitales Carlos Fajardo 36