Prctica 11COMPUERTAS LGICAS (PLD)1.- OBJETIVO Ver el
funcionamiento de las distintas compuertas al ser programadas en un
PLD Observar el comportamiento del PLD y de sus distintas
salidas2.- TEORIAQUE ES UNA COMPUERTA LGICA?
Las compuertas lgicas son dispositivos que operan con aquellos
estados lgicos mencionados en la pgina anterior y funcionan igual
que una calculadora, de un lado ingresas los datos, sta realiza una
operacin, y finalmente, te muestra el resultado.
Cada una de las compuertas lgicas se las representa mediante
unSmbolo, y la operacin que realiza (Operacin lgica) se corresponde
con una tabla, llamadaTabla de Verdad, vamos con la
primera....:Compuerta NOTSe trata de un inversor, es decir,
invierte el dato de entrada, por ejemplo; si pones su entrada a 1
(nivel alto) obtendrs en su salida un 0 (o nivel bajo), y
viceversa. Esta compuerta dispone de una sola entrada. Su operacin
lgica essigual aa invertida
.:Compuerta ANDUna compuerta AND tiene dos entradas como mnimo y
su operacin lgica es un producto entre ambas, no es un producto
aritmtico, aunque en este caso coincidan.*Observa que su salida ser
alta si sus dos entradas estn a nivel alto*
.:Compuerta ORAl igual que la anterior posee dos entradas como
mnimo y la operacin lgica, ser una suma entre ambas...Bueno, todo
va bien hasta que 1 + 1 = 1, el tema es que se trata de una
compuertaO Inclusivaes comoa y/o b*Es decir, basta que una de ellas
sea1para que su salida sea tambin 1*
.:Compuerta OR-EX o XOREs OR EXclusiva en este caso con dos y lo
que har con ellas ser una suma lgica entreaporb invertidaya
invertidaporb.*Al serO Exclusivasu salida ser1si una yslo unade sus
entradas es 1*
3.- MATERIAL Y EQUIPO Fuente de alimentacin de CD. PLD ATF20V8B
2 DIP switch de 4 lneas 8 Resistencias de 1K 7 Resistencias de 330
7 Diodos LED Protoboard Cables de conexin
4.- PROCEDIMIENTO1.- Arme el siguiente circuito
4.- Carga apropiadamente el archivo JEDEC, previamente creado,
al PLD.
3.- Compruebe el funcionamiento de las compuertas en el PLD segn
el siguiente programa realizado en wincupl.Pin 1 = a;Pin 2 = b;
Pin 22 = inva;Pin 21 = invb;Pin 20 = and;Pin 19 = nand;Pin 18 =
or;Pin 17 = nor;Pin 16 = xor;Pin 15 = xnor;
inva = !a; /* inverters */invb = !b;and = a & b; /* and gate
*/nand = !(a & b); /* nand gate */or = a # b; /* or gate */nor
= !(a # b); /* nor gate */xor = a $ b; /* exclusive or gate */xnor
= !(a $ b); /* exclusive nor gate */
OBSERVACIONES:El PLD toma fcilmente cualquier funcin que se
requiera, puede configurarse cada pin de salida como una compuerta
diferente, lo que nos da muchas posibilidades de uso.
Prctica 12SUMADOR COMPLETO (PLD)1.- OBJETIVO Construir un
sumador completo utilizando un PLD Observar el comportamiento del
sumador2.- TEORIAQUE ES UN SUMADOR?Hasta aqu se ha logrado
implementar unasuma de dos nmeros de un bit, pero en una
computadoralas sumas de hacen con un nmero mayor de bits.Si cada
par de sumandos binarios puede producir unbit de acarreo, tambin
debe tener la capacidad de reconocer cuando viene un bit de acarreo
delsumadorde nivel inferior (digamos cuando en el sistema
decimalhay un "llevo" debido a la suma de las unidades y hay que
pasarla a las decenas)Para lograr este propsito se implementa el
siguientecircuitocon sutabla de verdad
Elcircuitoanterior es un poco complicado de graficar as que se
puede reemplazar por una caja negra con tres entradasy dos salidas
(ver latablade verdad)Con la anteriormente mencionado se puede
implementar unsumadorde "n" bits.Nota: Cin = acarreo entrante, Cout
= acarreo saliente
3.- MATERIAL Y EQUIPO Fuente de alimentacin de CD. C.I. ATF20V8B
2 DIP switch de 4 lneas 8 Resistencias de 10K 3 Resistencias de 330
3 Diodos LED Protoboard Cables de conexin
4.- PROCEDIMIENTO1.- Arme el siguiente circuito
2.- Carga apropiadamente el archivo JEDEC, previamente creado,
al PLD.3.- Compruebe el funcionamiento de las compuertas en el PLD
segn el siguiente programa realizado en wincupl./* ***************
INPUT PINS *********************/Pin 1 = a; /* */ Pin 2 = b; /* */
Pin 3 = c; /* */
/* *************** OUTPUT PINS *********************/Pin 22 =
suma ; /*Acarreo */ Pin 21 = acarreoS; /*Suma */
suma = ((a $ b) $ c);acarreoS = ((c & (a $ b)) # (a &
b));
OBSERVACIONES:
Evidentemente el PLD cumple con el mismo funcionamiento que el
circuito integrado utilizando en un principio, adems el PLD se
puede programar para agregar ms sumadores o aumentar el nmero de
bits a sumar.En cuanto a la programacin, se ingres la operacin
necesaria para determinar las salidas del PLD y hacerlo un sumador
completo.
Prctica 13COMPARADOR (PLD)1.- OBJETIVO Construir un comparador
utilizando el PLD Observar el comportamiento del comparador
2.- TEORIAQUE ES UN COMPARADOR?Los comparadores son circuitos
combinacinales capases de comparar dos combinaciones presentes en
sus entradas indicando si son iguales o diferentes; en caso de ser
diferentes, indican cual de las dos es mayor. Tienen tres salidas
que indican el resultado de la comparacin: A=B, AB.El
procedimiento para comparar dos datos binarios consiste primero en
comparar el bit ms significativo de cada uno de ellos, si estos son
iguales, se compara el siguiente bit ms significativo y as
sucesivamente hasta encontrar una desigualdad que indica cual de
los datos es mayor o menor. Si se comparan todos los bits de ambos
datos y no hay desigualdad entre ellos, entonces podemos concluir
que los datos comparados son iguales.Los circuitos integrados ms
utilizados son: el circuito integrado 74HC85 Este circuito
integrado contiene un comparador de dos datos de 4 bits cada uno.La
relacin de pines del integrado es la siguiente:A>B, AB, A
f, g, h
{'b'0000=>'b'010;'b'0001=>'b'100;'b'0010=>'b'100;'b'0011=>'b'100;'b'0100=>'b'001;'b'0101=>'b'010;'b'0110=>'b'100;'b'0111=>'b'100;'b'1000=>'b'001;'b'1001=>'b'001;'b'1010=>'b'010;'b'1011=>'b'100;'b'1100=>'b'001;'b'1101=>'b'001;'b'1110=>'b'001;'b'1111=>'b'010;}OBSERVACIONES:La
forma de programar fue distinta en esta prctica pues se aplic el
mtodo de agregar una tabla de verdad para determinar las salidas y
poder dar al PLD la funcin de comparador lgico.Prctica
15DECODIFICADOR DE 3 BITS (PLD)1.- OBJETIVO Construir un
decodificador de 3 bits usando el integrado ATF20V8B Observar el
comportamiento del decodificador2.- TEORIAQUE ES UN
DECODIFICADOR?Undecodificadoro descodificador es uncircuito
combinacional, cuya funcin es inversa a la delcodificador, esto es,
convierte un cdigo binario de entrada (natural,BCD, etc.) de N bits
de entrada y M lneas de salida (N puede ser cualquier entero y M es
un entero menor o igual a 2N), tales que cada lnea de salida ser
activada para una sola de las combinaciones posibles de entrada.
Estos circuitos, normalmente, se suelen encontrar comodecodificador
/demultiplexor.Esto es debido a que un demultiplexor puede
comportarse como un decodificador.En un sistema digital, como puede
ser nuestro PC, se pueden transmitir tanto instrucciones como
nmeros mediante niveles binarios o trenes de impulsos. Si, por
ejemplo, los cuatro bits de un mensaje se disponen para transmitir
rdenes, se pueden lograr 16 instrucciones diferentes, esto es lo
que denominbamos, informacin codificada en sistema binario. Otras
veces nos interesa que un conmutador de varias posiciones pueda
funcionar de acuerdo con este cdigo, es decir, para cada uno de los
diecisis cdigos debe ser excitada una sola lnea. A este proceso de
identificacin de un cdigo particular se le denomina
decodificacin.Dicho de otra manera, un decodificador realiza la
funcin opuesta a la de codificar, es decir, convierte un cdigo
binario de varias entradas en salidas exclusivas. Podemos
distinguir dos tipos bsicos de decodificadores: los excitadores y
los no excitadores. En el primero de los casos tenemos, por
ejemplo, aquellos cuya misin es convertir el cdigo BCD de sus
entradas al formato de salida necesario para excitar un
visualizador numrico o alfanumrico.3.- MATERIAL Y EQUIPO Fuente de
alimentacin de CD. C.I. ATF20V8B 1 DIP switch de 4 lneas 4
Resistencias de 10K 16 Resistencias de 330 16 Diodos LED Protoboard
Cables de conexin 4.- PROCEDIMIENTO1.- Arme el siguiente circuito
2.- Carga apropiadamente el archivo JEDEC, previamente creado, al
PLD.3.- Compruebe el funcionamiento de las compuertas en el PLD
segn el siguiente programa realizado en wincupl./** Definicion de
los pines de entrada **/Pin [2..4] = [A0..2];/** Definicion de los
pines de salida **/Pin [15..22] = [B7..0];/** Cuerpo del programa
**/TABLE [A0..2] =>
[B7..0]{'b'000=>'b'0000000;'b'001=>'b'0000001;'b'010=>'b'0000010;'b'011=>'b'0000100;'b'100=>'b'0001000;'b'101=>'b'0010000;'b'110=>'b'0100000;'b'111=>'b'1000000;}/**
Cada LED de la salida indica un nmero en decimal: 0 LEDS encendidos
indica un 0 decimal, el primer LED encendido indica un 1 decimal,
el segundo LED encendido indica el 2 decimal, continuando
sucesivamente de esta manera **/OBSERVACIONES:El decodificador se
arm de 3 bits debido a las limitaciones (cantidad de salidas) del
PLD utilizado, sin embargo, el funcionamiento fue bastante
apropiado y correcto, las especificaciones de funcionamiento se
indican en el programa correspondiente de esta prctica.Prctica
14CODIFICADOR DE 4 BITS (PLD)1.- OBJETIVO Construir un codificador
de 4 bits usando el integrado ATF20V8B Observar el comportamiento
del codificador2.- TEORIAQUE ES UN CODIFICADOR?Un codificador es
considerado como un traductor del lenguaje de la gente al lenguaje
de la maquina, es decir, traduce una entrada decimal a un numero
BCD 8421.Figura 1: Codificador BCDEl codificador tiene diez
entradas a la izquierda y cuatro salidas a la derecha, adems puede
tener una entrada activa, que produce una nica salida.Una
caracterstica poco habitual del codificador es que no hay entrada
0. Una entrada cero significa una salida 1111 (en D, C, B y A) que
es verdadera cuando todas las entradas del 1-9 estn desconectadas.
Cuando las entradas no estn conectadas, se dice que estn
flotando.En la figura se presenta el diagrama de bloques y la tabla
de verdad de un codificador comercial denominado de prioridad de
10-4 lneas.Figura 2: Smbolo lgico del codificador 74147La primera
lnea de la tabla de verdad indica que no hay entrada. Cuando todas
las entradas flotan el alto, las salidas flotan en alto, lo cual es
interpretado como 0000 por los indicadores de salidas. La segunda
lnea de la tabla muestra la entrada decimal 9 activada por un nivel
bajo, lo que produce LHHL en la salida. Esta salida la invierten
los cuatro inversores y en los indicadores BCD se lee 1001.En la
misma lnea se muestra las entradas del 1 al 8 marcadas con X
(irrelevante). Una entrada irrelevante puede estar alta o baja.
Este codificador tiene una caracterstica de prioridad, que activa l
nmero mayor que tenga una entrada en baja.Si por ejemplo tenemos un
nivel bajo en el 3 y en 8, el codificador dar una salida en binario
correspondiente al nmero mayor, en este caso el 8.En la figura se
presenta el diagrama lgico del codificador74147, donde se presentan
las 30 puertas lgicas que lo conforman.Figura 3: Diagrama lgico del
codificador 74147Si queremos activar el 9 decimal le colocamos un
nivel bajo. Esta entrada a 0 la invierte el inversor 1, y se aplica
a las puertas NOR 2 y 3, que se activan entonces, dando una salida
en baja. Las puertas NOR 4 y 5 se desactivan por la presencia de 0
en las entradas de las puertas AND (de la 7-18) desactivadas.Estas
puertas AND estn desactivadas por los 0 de sus entradas inferiores,
producidos por la puerta NOR 6. Las puertas AND de la (7-18)
aseguran que tenga prioridad sobre las dems, la entrada decimal
correspondiente al nmero mayor.3.- MATERIAL Y EQUIPO Fuente de
alimentacin de CD. C.I. ATF20V8B 1 DIP switch de 8 lneas 8
Resistencias de 10K 4 Resistencias de 330 4 Diodos LED Protoboard
Cables de conexin 4.- PROCEDIMIENTO1.- Arme el siguiente circuito
2.- Carga apropiadamente el archivo JEDEC, previamente creado, al
PLD.3.- Compruebe el funcionamiento de las compuertas en el PLD
segn el siguiente programa realizado en wincupl./** Definicion de
los pines de entrada **/Pin [2..10] = [A8..0];/** Definicion de los
pines de salida **/Pin [19..22] = [B3..0];/** Cuerpo del programa
**/TABLE [A8..0] =>
[B3..0]{'b'000000000=>'b'0000;'b'100000000=>'b'0001;'b'010000000=>'b'0010;'b'001000000=>'b'0011;'b'000100000=>'b'0100;'b'000010000=>'b'0101;'b'000001000=>'b'0110;'b'000000100=>'b'0111;'b'000000010=>'b'1000;'b'000000001=>'b'1001;}OBSERVACIONES:Cada
switch de los pines de entrada representa un nmero en decimal que
se CODIFICAR para obtener el mismo nmero cambiado a sistema binario
a la salida del PLD, representado por LEDs.Prctica 16MULTIPLEXOR
(PLD)1.- OBJETIVO Construir un multiplexor usando el integrado
ATF20V8B Observar el comportamiento del multiplexor2.- TEORIAQUE ES
UN MULTIPLEXOR?Elmultiplexor (MUX)es un circuito combinacionalque
tiene varios canales de datos de entrada y solamente un canal de
salida.Slo un canal de la entrada pasar a la salida y este ser el
que haya sido escogido mediante unas seales de control.Ejemplo:Si
utiliza unmultiplexorde 4 canales de entrada.Una de los cuatro
canales de entrada ser escogido para pasar a la salida y esto se
logra con ayuda de las seales de control o seleccin.La cantidad de
lneas de control que debe de tener elmultiplexordepende del nmero
de canales de entrada. En este caso, se utiliza la siguiente
frmula:Nmero de canales de entrada =2n.Donde n es el nmero de lneas
de seleccin.3.- MATERIAL Y EQUIPO Fuente de alimentacin de CD. C.I.
ATF20V8B 1 DIP switch de 9 lneas 8 Resistencias de 10K 4
Resistencias de 330 4 Diodos LED Protoboard Cables de conexin 4.-
PROCEDIMIENTO1.- Arme el siguiente circuito 2.- Carga
apropiadamente el archivo JEDEC, previamente creado, al PLD.3.-
Compruebe el funcionamiento de las compuertas en el PLD segn el
siguiente programa realizado en wincupl./** Definicion de los pines
de entrada **/Pin [2..5] = [A3..0]; /* Dato A */Pin [6..9] =
[B3..0]; /* Dato B */Pin 10 = select;/** Definicion de los pines de
salida **/Pin 22 = a; /* */Pin 21 = b;Pin 20 = c;pin 19 = d;/**
Cuerpo del programa **//* Descripcion del multiplexor utilizando
funciones logicas */a = (!select & A3) # (select & B3);b =
(!select & A2) # (select & B2);c = (!select & A1) #
(select & B1);d = (!select & A0) # (select &
B0);OBSERVACIONES:El multiplexor escoge uno de los dos conjuntos de
datos proporcionados al activar una de las entradas del PLD, en
cuyo caso 0 har mostrar el DATO A y un 1 en el pin de seleccin
mostrar el DATO B.