S2 5 MODELADO COMBINACIONAL
descripción hardware
Modelado combinacional
© 2006 A.G.O. All Rights Reserved
Modelado combinacional
El modelado de sistemas combinacionales es muy sencillo,
puesto que en todo momento las salidas sólo dependen del
estado actual de las entradas, es decir, el circuito no tiene
memoria.
input
output = f (input )
S2_5. Modelado de Sistemas Digitales con VHDL
output
© 2006A.G.O. All Rights Reserved
2 de 35
Modelado combinacional
Un circuito combinacional puede tener multitud de entradas y
salidas, por lo tanto:
Necesitar miles o millones de términos canónicos para describirlo
matemáticamente.
Tablas de verdad que resultan inmanejables.
La clave para el desarrollo de estos sistemas es el pensamiento
estructurado
Un sistema complejo se concibe como unconjunto de subsistemas
más pequeños, cada uno de los cuales tiene una descripción más
sencilla.
Estos bloque combinacionales constituyen las estructuras básicas
con las que se construyen los sistemas procesadores
Multiplexores, decodificadores, comparadores, sumadores, etc…
S2_5. Modelado de Sistemas Digitales con VHDL
© 2006 A.G.O. All Rights Reserved
3 de 35
Descripción VHDL
de sistemascombinacionales (1/3)
Para describir circuitos combinacionales utilizaremos
sentencias de asignación concurrentes y procesos.
Sentencias de asignación concurrentes. Van fuera del
proceso. Esto se debe a que en una declaración
concurrente no importa el orden en el que se escriban
las señales, ya que el resultado para una determinada
función sería el mismo. Se utilizarán tres tipos de
sentencias deasignación concurrentes:
S2_5. Modelado de Sistemas Digitales con VHDL
© 2006 A.G.O. All Rights Reserved
4 de 35
Descripción VHDL
de sistemas combinacionales (2/3)
Sentencias de asignación simples, por ejemplo:
salida1 <= A and B;
Sentencias de asignación condicionales, por ejemplo:
salida2 <= A when S = ‘1’ else B;
Sentencias de selección, por ejemplo:
with S select
salida3 <= ‘1’when “00”;
‘0’ when others;
Siempre hay que evitar la realimentación combinacional, ya que
esto modela elementos de memoria asíncronos. Es decir, hay que
evitar que una misma señal aparezca en el lado izquierdo y en el
lado derecho de la sentencia de asignación:
Y <= Y nand X;
S2_5. Modelado de Sistemas Digitales con VHDL
© 2006 A.G.O. All Rights Reserved
5 de 35
Descripción VHDL
desistemas combinacionales (3/3)
Procesos. Se debe respetar las siguientes reglas:
Si una señal es leída en el interior de un proceso, es
decir, aparece en el lado derecho de una sentencia de
asignación o en una condición, debe aparecer en su
lista de sensibilidad.
Si a una señal se le asigna un valor de forma
condicional (con sentencias if o case) nos debemos
asegurar que no existen condiciones para lascuales el
valor de la señal no se ha definido en el código.
En VHDL las señales mantienen su valor hasta que se
les asigna uno nuevo; por lo tanto, si para una señal
dada, su valor está indefinido, el compilador sintetiza
un latch (biestable) que almacena la señal.
S2_5. Modelado de Sistemas Digitales con VHDL
© 2006 A.G.O. All Rights Reserved
6 de 35
Multiplexores
Circuitos que tienenn
entradas de datos y una
salida de datos, por lo
tanto necesitan m entradas
de selección, donde
m es
n = 2m ⇒ m =
log n
log 2
Habitualmente también
poseen una entrada de
habilitación
S2_5. Modelado de Sistemas Digitales con VHDL
mx4a1
e0
e1
y
e2
e3
s0
s1
enable
© 2006 A.G.O. All Rights Reserved
7 de 35
Multiplexores
tabla 1
La función f que describe el
comportamiento de unmultiplexor
de dos entradas (I0 , I1) , una salida
y una entrada de selección (S), se
puede describir mediante la tabla 1.
Aplicando Karnaugh se obtiene:
S I1 I0 f
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 0
f = SI 0 + SI1
1 1 0 1
1 1 1 1
S2_5. Modelado de Sistemas Digitales con VHDL
© 2006 A.G.O. All Rights Reserved
8 de 35
Multiplexores
La función f que describe el
comportamiento de un...
Regístrate para leer el documento completo.