Download - Introduccion al VHDL Parte 2
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
1
Tcnicas Digitales I
V D LH
Introduccin al VHDL 2da. parte
Docente: Ing. Juan E. Collazo
2Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
Lgica combinacional discreta y Descripciones VHDL
En lo que sigue se presentarn algunos circuitos que surgen como aplicaciones de lgica combinacional y que se disponen integrados en forma comercial.De manera simultnea se vern algunos ejemplos de obtencin de circuitos similares a partir de descripciones en VHDL.
Una caracterstica de muchos circuitos especiales que se integran para dar funciones dedicadas, es la posibilidad de interconexin entre ellos para lo cual es necesario disponer de seales que acten como habilitacin.Respecto de esta, existen formas alternativas y en funcin de ellas el nombre que toma la seal que la produce puede ser distinto.
3
Lgica combinacional discreta
As, una seal que se activa y habilita el ingreso de informacinse la denomina Enable(habilitacin).
Otro caso es cuando los procesos internos de los circuitos se habilitan para que aparezcan a la salida, en cuyo caso se habla de una seal de habilitacin de puerta G (gate). La salida inhabilitada permanecer inactiva (en alto o bajo)
Una variante de esto es cuando la etapa de salida al deshabilitarse permanece en alta impedancia. La habilitacin se llama de salida OE (output enable)
IEn
Oi
Oj
On
G
OE
Tipos de habilitacin
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 4
Lgica combinacional discreta
En cuanto a la forma de representar entradas y salidas desde el punto de vista de su nivel de actividad, se presentan las siguientes:
si las seales son activas en alto, se identifican con el nombre de la variable escrita en forma normal.si son activas en bajo, hay dos alternativas: una es escribir las respectivas seales en forma negada o bien escribirlas en su forma normal e incorporar un circulito en el puerto (entrada o salida) para dar la idea de inversin del nivel de actividad.
MUX
Y
S1 S0
I3I2I1I0
MUX
Y
S1 S0
I3I2I1I0
MUX
Y
S1 S0
I3I2I1I0
Entradas activasen alto
Entradas activas en bajo
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
2
C
B
A
Ii
n . Ii
Ii
a ncompuertas
a)
Iin.Ii
(n+1).Ii b)C
5
Lgica combinacional discretaUn aspecto tecnolgico de inters se puede apreciar en las hojas de datos de los diversos circuitos integrados.En algunos de ellos se podr encontrar que las variables de entrada que deben disponerse tanto en su forma directa como en su forma negada tienen un esquema como se ilustra abajo. En l se aprecia que la seal que ingresa se niega dos veces y para disponer de la negada, se la toma a la salida del primer negador. Por qu poner dos negadores y no uno slo?Como las etapas internas de un circuito que van conectadas a una dada entrada pueden estar formadas por varias compuertas que requerirn tantas porciones de corriente de entrada por cada una de ellas, esto generara una carga elevada para el circuito externo que se conecte. Por esto y para que cada entrada maneje similares niveles de corriente se coloca una compuerta ala entrada que consuma hacia afuera lo queconsume una sola y se encargue de cubrir el consumo interno. Es lo que pasa en el caso a). El 2do. inversor se pone para tener la seal normal. En el caso b) si la seal normal (C) tuviera que alimentar varias entradas, la cantidad de corriente debera ser provista por el circuito exterior que restara energa para alimentar otros circuitos
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
I7
I5
I2
I0
C
B
A
I6
I4
I1
I3
)7654 IIIIC +++=76)54.(32 IIIIIIB ++++=
76.5)64.(3)642.(1 IIIIIIIIIIA ++++++=
B
I7
I5
I2
I0
I6
I4
I1
I3
C
A
B
A
Ei
I0
I1
I2
I3
I4
I5
I6
I7 C
GS
Eo0 1 2 3 4 5 6 7 E i
7I.Ei6I.5I.Ei)6I4I.(3I.Ei)6I4I2I.(1I.EiA ++++++=7I.Ei6I.Ei)5I4I.(3I.Ei2I.EiB ++++=
)I7I6I5I4.(EiC +++=
)7I6I5I4I3I2I1I0I.(EiGS +++++++=GSEiEo +=
6
Codificadores
a) Codificador elemental de 8 entradas
b) Codificador de prioridadc) Codificador de prioridad mejorado
incluye habilitacin de entrada, propagacin de habilitacin a la salida y seal de grupo (ayuda a diferenciar el cdigo cero de salida entre entrada I0 activa y ausencia de entradas activas)
a)
b)
c)
Las seales de salida se puedendenominar A, B, C alternativamente o bien con una variable y un subndice numrico
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
7
Expansin de Codificadores
Se aprecia que las dos salidas ms significativas se repiten 4 veces seguidas, cambia una variable y nuevamente se repite 4 veces seguidas mientras que las menos significativas toman sus cuatro valores por cada valor de las ms significativas.
Se pretende armar un codificador de tamao mayor a partir del uso de codificadores ms pequeos. Por ejemplo, disear un coder de 16 entradas usando coders de 4 entradas
I15 I14 I13 I12 I11 I10 I9 I8 I7 I6 I5 I4 I3 I2 I1 I0 A3 A2 A1 A01 X X X X X X X X X X X X X X X 1 1 1 1
1 X X X X X X X X X X X X X X 1 1 1 01 X X X X X X X X X X X X X 1 1 0 1
1 X X X X X X X X X X X X 1 1 0 01 X X X X X X X X X X X 1 0 1 1
1 X X X X X X X X X X 1 0 1 01 X X X X X X X X X 1 0 0 1
1 X X X X X X X X 1 0 0 01 X X X X X X X 0 1 1 1
1 X X X X X X 0 1 1 01 X X X X X 0 1 0 1
1 X X X X 0 1 0 01 X X X 0 0 1 1
1 X X 0 0 1 01 X 0 0 0 1
1 0 0 0 0
I3 I2 I1 I0 O1 O00 0 0 1 0 00 0 1 0 0 10 1 0 0 1 01 0 0 0 1 1
Se marcaron 4 bloques de color que, unidos, forman la TV de un codific. de 4 entr.Esto da la pauta de que con al menos 4 de stos se formar uno de 16 entradas.
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 8
Expansin de Codificadores
Expansin en rbol de Codificadores
CODAR
A1
A0
GSEo
I3I2I1I0
Ei
CODAR
A1
A0
GSEo
I3I2I1I0
Ei
CODAR
A1
A0
GSEo
I3I2I1I0
Ei
CODAR
A1
A0
GSEo
I3I2I1I0
Ei
CODAR
A1
A0
GSEo
I3I2I1I0
Ei
A1
A0
A3
A2
3
2
1
0
GS
Eo
Ei
I2
I0I1
I3
I7
I5I6
I4
I10
I8I9
I11
I15
I13I14
I12
Por ejemplo: Si se activan I9 e I7 a la vez, el codigo de salida debe ser 1001 (el de I9). Al activar Ei (Ei=1) en el Coder(3) y no estar I15 a I12 activas se pone Eo(3) = 1. Luego Ei(2) = 1 pero al ser I9 = 1 queda inactiva Eo(E0(2) = 0) y se hace Ei(1) = 0.
De esta manera queda inactiva la etapa 1 y consecuentemente la etapa 0. Las A1(2)A0(2) = 01 (a travs de la OR forman A1A0 de salida). Se activa tambin la seal de grupo GS de la etapa dos y sta se conecta a la entrada I2 de un codificador que acta como salida y genera el cdigo A3A2 = 10.O sea, resulta A3-0 = 1001, lo esperado.
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
3
9
Decodificadores (o Decoders)
Un decoder es un dispositivo lgico de n entradas que activa una de sus 2 salidas cuya numeracin decimal coincide con el cdigo binario de las seales de entrada
n
Como cada salida en la TV presenta un nico 1, se concluye que un Decoder es un generador de minitrminos
001122 AAAAAA
O7
O5
O2
O0
O6
O4
O1
O3
A2A1A0
A2A1A0
01
01244 AAAOP ==01255 AAAOP ==01266 AAAOP ==01277 AAAOP ==
01200 AAAOP ==01211 AAAOP ==01222 AAAOP ==
01233 AAAOP ==a)
En O7
O5
O2
O0
O6
O4
O1
O3
A2A1A0
O3O2O1O0
O7O6O5O4
A0
A1
A2
EN
Decodificador conentrada habilitacin
b)
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 10
1 - - Decodificador de 8 salidas con habilitacin2 library ieee;3 use ieee.std_logic_1164.all; 4 entity deco_x8 is5 port (ent : in std_logic_vector (2 downto 0); 6 hab : in std_logic;7 sal : out std_logic_vector (7 downto 0)); 8 end deco_x8 ; 9 architecture tabla of deco_x8 is10 signal ssal: std_logic_vector (7 downto 0);11 begin12 with ent select13 ssal
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
4
D C B A Y0 0 0 0 0 01 0 0 0 1 12 0 0 1 0 03 0 0 1 1 14 0 1 0 0 05 0 1 0 1 16 0 1 1 0 07 0 1 1 1 18 1 0 0 0 09 1 0 0 1 1
10 1 0 1 0 111 1 0 1 1 012 1 1 0 0 113 1 1 0 1 014 1 1 1 0 015 1 1 1 1 1
O3O2O1O0
O7O6O5O4
O8O9
O10O11O12O13O14O15
A
B
C
D
A0
A1
A2
A3
Y
= 10,12,15)1,3,4,7,9,(PY
O3O2O1O0
O7O6O5O4
A
B
C
D
A0
A1
A2
A3 O8O9
O10O11O12O13O14O15
Y
11,13,14)0,2,5,6,8,(SY =
13
Decodificadores: uso para implementar funciones lgicas
Siendo un decodificador un generador de minitrminos, incorporando una OR a sus salidas se pueden obtener funciones lgicas como suma de productos (fig. b). En este caso de la funcin mostrada en la tabla a)Tambin se puede generar como Producto de sumas cannicas o producto de maxitrminos, es decir tomando los valores que hacen cero a la funcin. Se deja al lector verificar que es el caso de la figura c)
a)
b) c)
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 14
Decodificadores: uso para implementar funciones lgicas
Aiken
N D C B A D' C' B' A'0 0 0 0 0 0 0 0 01 0 0 0 1 0 0 0 12 0 0 1 0 0 0 1 03 0 0 1 1 0 0 1 14 0 1 0 0 0 1 0 05 0 1 0 1 1 0 1 16 0 1 1 0 1 1 0 07 0 1 1 1 1 1 0 18 1 0 0 0 1 1 1 09 1 0 0 1 1 1 1 1
1 0 1 0 X X X X1 0 1 1 X X X X1 1 0 0 X X X X1 1 0 1 X X X X1 1 1 0 X X X X1 1 1 1 X X X X
Natural
O3O2O1O0
O7O6O5O4
A
B
C
D
A0
A1
A2
A3 O8O9
O10O11O12O13O14O15
ABCD' ' ' '
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
15
Decodificadores: uso para implementar memorias
ABCD
O3O2O1O0
O7O6O5O4
A
B
C
D
A0
A1
A2
A3 O8O9
O10O11O12O13O14O15
' ' ' '
Decod
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 16
Decodificadores: uso para implementar memorias
D
O3O2O1O0
O7O6O5O4
A
B
C
D
A0
A1
A2
A3 O8O9
O10O11O12O13O14O15
'
Decod
Cada lnea del decoder va conectada a una entrada de cada una de las cptas OR de salida a travs de una conexin programada, esto es, puede establecerse si se produce o no conexin elctrica.En el esquema se simboliza dicho tipo de conexin con cruces que simbolizan lo que originariamente fueron fusibles y luego llaves electrnicas (transistores de paso).Cada salida originariamente tiene todas sus entradas conectadas via los fusibles a cada salida del decoder y como ste es un generador de todos los minitrminosde n variables, se concluye que la salida de este dispositivo antes de programarse, estar en 1.
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
5
ABCD
O3O2O1O0
O7O6O5O4
A
B
C
D
A0
A1
A2
A3 O8O9
O10O11O12O13O14O15
' ' ' '
Decod
D'= 5+6+7+8+9C'= 4+6+7+8+9B'= 2+3+5+8+9A'= 1+3+5+7+9
17
Decodificadores: uso para implementar memorias
En este ejemplo se muestran los fusibles que se dejaron intactos luego de programar, y las expresiones lgicas de cada una de las salidas.
Alguien se anima a decir qu funcin cumple el
circuito?
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 18
En esta figura se ve una forma de representar las salidas con una Or de una entrada conectada a las 16 lineas del decoder con fusibles, lo cual simboliza 16 entradas.Si se leen los fusibles intactos como 1 y los restantes como 0, el esquema de conexiones se asemeja a la T. de Verdad del Cdigo Aiken.
Analizado de otra forma, se puede decir que segn el valor binario de las seales A3-0 se elije una palabra que ser la misma cada vez que se seleccionen los mismos valores de A3-0, esto es, el circuito almacena la misma palabra para cada combinacin de entradas
ABCD
O3O2O1O0
O7O6O5O4
A
B
C
D
A0
A1
A2
A3 O8O9
O10O11O12O13O14O15
' ' ' '
Decod
ROM /PROM
AikenD' C' B' A'0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1X X X XX X X XX X X XX X X XX X X XX X X X
N D C B A0 0 0 0 01 0 0 0 12 0 0 1 03 0 0 1 14 0 1 0 05 0 1 0 16 0 1 1 07 0 1 1 18 1 0 0 09 1 0 0 1
1 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1
Natural
Conexin intacta luegode la programacinSin conexin luego dela programacin
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
19
Conversores de cdigo
Con los circuitos vistos hasta ac, estn en condiciones de plantear cules y cmo conectarlos para armar un
conversor de cdigo, p.ej. de Binario a Gray?
In ?n?
I3I2I1I0
Onn
?
O3O2O1O0
Ac les dejo una ayudita ...
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
A.B.CB.CD'D ++=
ACB.CD'C ++=
A.B.CB.CD'B ++=
D C B A
D C B A
A.B.C
B.C
A'=D
20
Conversores de codigo con lgica combinacionalCmo se podran implementar algunos de los conversores de cdigo descriptos en VHDL en lgica discreta?
Se vi en su momento un conversor de BCD natural a Aiken a partir de las Tabla de Verdad de A a D y se lleg a:
BCD 2AIKEN
DCBA
D'C'B'A'
Aiken
N D C B A D' C' B' A'0 0 0 0 0 0 0 0 01 0 0 0 1 0 0 0 12 0 0 1 0 0 0 1 03 0 0 1 1 0 0 1 14 0 1 0 0 0 1 0 05 0 1 0 1 1 0 1 16 0 1 1 0 1 1 0 07 0 1 1 1 1 1 0 18 1 0 0 0 1 1 1 09 1 0 0 1 1 1 1 1
1 0 1 0 X X X X1 0 1 1 X X X X1 1 0 0 X X X X1 1 0 1 X X X X1 1 1 0 X X X X1 1 1 1 X X X X
Natural
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
6
Considerando que el vector de salida tiene un nico 1, una forma ms simple es detectar en qu salida debe estar (segn la ent) y escribirlo.
Si no est habilitado, la salida es cero.
1 - - Decodificador de 8 salidas con doble habilitacin E1,/E02 library ieee;3 use ieee.std_logic_1164.all;4 use ieee.numeric_std.all;5 6 entity comod is -- com_deco_8c_2e7 port (ent : in std_logic_vector (2 downto 0);8 hab : in std_logic_vector (1 downto 0); 9 sal : out std_logic_vector (7 downto 0)); 10 end comod; 11 architecture tabla of comod is12 signal ssal : std_logic_vector (7 downto 0);13 begin14 process (ent, hab)15 variable i : integer range 0 to 7;16 begin17 ssal
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
7
1 --Decodificador 8 salidas, dos habilitaciones usando Numeric_std2 library ieee;3 use ieee.std_logic_1164.all;4 use ieee.numeric_std.all;5 entity deco is6 port (ent : in std_logic_vector (2 downto 0);7 hab : in std_logic_vector (1 downto 0); 8 sal : out std_logic_vector (7 downto 0)); 9 end deco; 10 architecture tabla of deco is11 signal ssal : std_logic_vector (7 downto 0);12 begin13 process (ent, hab)14 variable i : integer range 0 to 7;15 begin16 ssal
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
8
Mux_16ent
A1 A0
Mux4pref
I3I2I1I0
OA1 A0
I3I2I1I0
O
A1 A0
Mux4pref
I3I2I1I0
O
A1 A0
I3I2I1I0
O
A1 A0
I3I2I1I0
O
Out2
Out3
Out1
Out0
sal
ent(11)
ent(15)
ent(0)
ent(4)
ent(7) Mux4pref
Mux4pref
Mux4pref
2
2
A3 A2 A1 A0
2
1
3
4
0
Mux de 16 entradas porexpansin de Mux de 4 entr.
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 29
16 entradas implican 4 Muxpero 4 Mux tienen 4 salidas y se necesita una sola, por ello se toma un quinto Mux que multiplexa esas 4 salidas por sus 4 entradas y su salida serla salida deseada del Mux x 16.
Los entradas de los 4 primeros sern seleccionadas por las seales de direccin menos significativas, en cambio la seleccin de cul mux de entrada ser el que pase su seal a la salida, la hacen las seales de direccin mssignificativas
30
Demultiplexores
Otro tipo de circuito dedicado es el que hace la operacin inversa del Multiplexor, esto es, aqul que toma informacin por su nica entrada y la distribuye en una de varias salidas, que se escogen mediante entradas llamadas de seleccin.
Demux
I
O3O2O1O0 I
O0
O1
O2
O3
En0
En1
En2
En3a) b)
I
O3
O2
O1
O0
En2
En0
En1
En3
S1 S0
I
O3
O2
O1
O0
c) d)
a) esquema con llave selectora b) esquema con pulsadores individuales; ambos son Demux analgicosc) demux lgico, hace lo mismo que b sin pulsadores. Como el Demux debe distribuir seal en una nica salida, los pulsadores no deben activarse simultneamente. En un circuito lgico se implementa con compuertas que se activan de a una por vez, mediante una adecuada combinacin de dos variables. Se ve en d). d) Demux con entradas de seleccin codificadas. El arreglo de compuertas marcadas en azul representa un decodificador. El smbolo del Demux se presenta en e). Comparando d) con los decoders vistos se verifica cierta analoga entre la habilitacin de un Decoder y la entrada de datos del Demux. Se concluye que ambos circuitos pueden funcionar como el otro conectando adecuadamente sus entradas
DEMUX
I
O3O2O1O0
S1 S0
e)
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
31
Demultiplexores
S1 S0
I
E
O3
O2
O1
O0 DEMUX
O3
O2
O1
O0
S0E0E1
S1
I
O3
O2
O1
O0
I
S1 S0 E1 E0
f) Demux con entrada de habilitacin activa en bajo. g) Idem f) con doble entrada de habilitacin (una activa en alto otra en bajo). Circuito y representacin en bloque.
Expansin de Demultiplexores
Se puede ampliar un Demux usando ms de uno y conectando adecuadamente sus seales. En h) se ve un Demux de 8 salidas hecho con dos de 4. Demanda 3 seales de seleccin: utiliza las dos de los demux de 4 (S1,S0) como menos significativas y usa la habilitacin como tercer seal de seleccin S2. Con S2 en bajo se habilita el superior y con S2=1 el inferior que tiene las salidas ms significativas. Por esto S2 se conecta a la Enable de uno de ellos y va un inversor, a la En del otro.
S0
S1 E
O7
O6
O5
O4I
S1S0
I
ES1
S2
S0
O3
O2
O1
O0I
O3
O2
O1
O0
O3
O2
O1
O0
f) g)
h)
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 32
I
O3
O2
O1
O0
S1 S0E0E1
I
O3
O2
O1
O0
S1 S0E0E1
I
O3
O2
O1
O0
S1 S0E0E1
DEMUX0
I
O3
O2
O1
O0
S1 S0E0E1
DEMUX2
DEMUX1
DEMUX3
S1S2S3
S0
O3O2O1
O0
O10O9
O8
O11
O7O6O5O4
O14O15
O13O12
I DEMUX1
I
O3
O2
O1
O0
S1
S0E
DEMUX2
I
O3
O2
O1
O0
S1 S0
DEMUX3
I
O3
O2
O1
O0
S1 S0
DEMUX4
I
O3
O2
O1
O0
S1 S0
S1
S2
S3
S0
O3O2O1
O0
O10O9
O8
O11
O7O6O5O4
O14O15
O13O12
E
E
EDECOD
O3
O2
O1
O0S1
S0
Demultiplexores: Expansin a 16 salidas con Demux de 4
i) j)
j) Expansin en rbol: condemux de 4 salidas y una sola habilitacin (seleccionable con un Decoder)
El primero usa demux con 2 Enables con dos niveles activos, luego con el auxilio de un inversor logra una seleccinadecuada. El segundo esquema usa demux con una E, luego requiere el auxilio de un Deco para la seleccin.
i) Con Demux de 4 salidas y doble habilitacinactivas en alto y bajo: usa las habilitaciones como seales de seleccin ms significativas
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
-
Introduccin al VHDL- 2da.parte - Ing. Juan E. Collazo
9
33
I
O3
O2
O1
O0
S1 S0E0E1
I
O3
O2
O1
O0
S1 S0E0E1
I
O3
O2
O1
O0
S1 S0E0E1
DEMUX0
I
O3
O2
O1
O0
S1 S0E0E1
DEMUX2
DEMUX1
DEMUX3
S1S2S3
S0
O3O2O1
O0
O10O9
O8
O11
O7O6O5O4
O14O15
O13O12
IDemultiplexores en VHDL
En funcin de los distintos ejemplos VHDL
vistos y las dos diapositivas anteriores,Se animan a plantear
una descripcin VHDL de un Demultiplexor?
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 34
Multiplexores y Demultiplexores: Algunos usos
a) Uso de un Mux y un Demux para conectar varios transmisores con distintos receptores.b) Implementacin de una funcin lgica de 3 variables con un Mux de 3 variables de seleccin: se trata de poner en las entradas los valores de la funcin en el rengln de la TV cuyo nmero coincida con la entrada del Mux.c) Idem, con un Mux de 2 variables de seleccin y un inversor. En rigor no siempre sernecesario el uso del inversor segn sea la funcin a generar, pero s es seguro que con un Mux de n variables de seleccin y a lo sumo un inversor, se puede generar una funcin lgica (como suma de productos) de n+1 variables. Para ello se procede a obtener una tabla reducida en una variable (queda con una variable menos). La que se sac puede (o no) aparecer en la tabla en la columna de la funcin. De hacerlo, la variable se conecta a la(s) entrada(s) que coincidan con los renglones donde aparece. Se deja para el estudiante, pensar cmo se podran implementar funciones de n+2 variables con un Mux de n variables de seleccin
DEMUX
I
S1 S0
O7
O5
O2
O0
O6
O4
O1
O3
S2
MUXI3I2I1I0
Y
S1 S0
C B A X0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 01 0 1 11 1 0 11 1 1 0
B A X0 0 00 1 11 0 C1 1 /C
a)
c)b)
MUX
X
S1 S0S2
B AC
I7
I5
I2
I0
I6
I4
I1
I3
01010110
MUX
X
S1 S0B A
01C I2
I0I1
I3
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
35
Perif.1 Perif.
2
Perif.3
Bus 1
En1 En2
En3a
En3b
En4
En5a
En5bBus 2
Bus 3
El esquema de la fig. a) anterior corresponde al caso de distribucinde informacin entre dispositivos que se encuentran prximosfsicamente. Para el caso en que esas unidades estuvieran alejadas entre ellas, se recurre a otro esquema de distribucin. Se presenta esto en el esquema de la figura el cual simboliza distintas posibilidades de distribucin de informacin vabuses de datos.Todos los dispositivos que accedan a los buses tendrn salida 3-state de modo de gobernar que slo uno quede habilitado a enviar una seal a dicho bus y evitar superposicin
Multiplexacin y Demultiplexacin distribudas
de seales en una misma lnea (p.ej. el perifrico 1). Los que reciban datos del bus no necesitan una interfaz 3-state de entrada, pero se necesita una puerta que habilite el momentode dejar pasar la informacin y eso con una And de 2 entradas (una de ellas habilitacin) lo logra (p.ej. el perifrico 2). Casos combinados de ambos se dan en el perifrico 3. Se muestra otro caso de acceso unidireccional de un bus a otro en la conexin al bus 2 y otro bidireccional, via dos buffer 3-state en contrafase, entre Bus 1 y 3.
(Esquema tomado del libro del Ing. Jorge E. Sinderman)
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo 36
El Multiplexor componente elemental de Circuitos Lgicos Programables
valor que toma A. sta seleccionar entre I1 e I0, pero f a la vez depender de los valores que se programen en esas entradas. O sea f puede tomar 2 exp (2 exp 1) = 4 valores posibles.b) Encadenando tres de esos Mux elementales se arma uno de dos variables de seleccin de 1 de 4 entradas posibles. La funcin de salida f1 ser una sobre 2 exp (2 exp 2) = 16 valores posibles. Esa f1 se puede representar por medio de una Tabla de Verdad. En este caso se muestra como ejemplo la funcin A1 xor A0.c) Esa tabla se la denomina Tabla de Inspeccin (Look up table) y es el componente bsico de los bloques lgicos elementales que forman parte de la estructura de algunos circuitos programables que se utilizarn para el diseo que se implementa a partir de descripciones hechas en VHDL como son las FPGA.
Aplicaciones de Lgica combinacionalIng. Juan E. Collazo
a) b)
A1 A0 f10 0 00 1 11 0 11 1 0
f1A1
A0c)
a) Si a un Mux elemental de dos entradas se le conectan dos celdas lgicas, cada una almacenando uno de dos posibles valores lgicos, que pueden ser programables o seleccionables por el usuario, se tiene a la salida f una funcin lgica dependiente del
01
01
A
fI0
I1
01
01
01
01
A0A1
f1
0.10.11 AAAAf +=
01.00.01 AAAx =+=
00.01.02 AAAx =+=