Sei sulla pagina 1di 69

Apuntes elaborados por el alumno de la Escuela Politcnica

Superior de Jan, S.Garca de las clases impartidas por el


profesor J. de la Casa
Jan, 2004

TEMA 1 FUNDAMENTOS DEL DISEO LGICO

LECCION 0 .- INTRODUCCION

SISTEMA.- Ente formado por un conjunto de elementos relacionados entre s que
sigue una relacin.
Todo sistema tiene una estructura que puede dividirse en bloques interrelacionados.
Aqu vemos el de un termmetro digital.





La estructura del sistema es un conjunto de entes o bloques, los cuales cada uno de ellos
realiza una funcin especfica. A su vez, cada bloque puede ser subdividido en tantos
bloques como se estime oportuno que realicen funciones mas simples, los cuales
tambin pueden considerarse sistemas que son subsistemas del primero.

Es importante conocer qu variables maneja cada sistema (vasriables de entrada) y los
resultados que produce (datos en la salida).

Un sistema puede estudiarse desde dos puntos de vista:
- El anlisis .- Se trata de, conociendo el sistema y dados unos determinados
valores para las variables de entrada, obtener los resultados que produce.
- La Sntesis.- Se trata de disear el sistema partiendo del conocimiento de las
variables de entrada y los resultados que deba producir.
Para nuestro termmetro digital en conjunto, la varable de entrada sera la temperatura y
los datos de salida los dgitos numricos que representan el valor de la misma.

Cada una de las variables con las que se trabaja representan informacin y hay que
conocer los mrgenes o rangos de cada una para poder tratarlas.
En electrnica hay dos tipos de variables tanto en el tiempo como en los valores que
puedan tomar:
- Variables Discretas.- Cuando cambian de un determinado valor a otro sin
pasar por valores intermedios. Por ejemplo N de alumnos matriculados
- Variables Contnuas.- Cambian progresivamente de un valor a otro de
forma que siempre se puede hallar un valor intermedio entre ambos. Por
ejemplo, la temperatura.
En Electrnica Digital, para trabajar con los valores de una variable contnua, la
discretizamos en el tiempo de forma que asumimos que tiene el valor anterior hasta que
alcanza el siguiente.
Aqu estn las grficas de una magnitud hipottica A continua y discrcreta tanto en los
valores como en el tiempo.

En la primera grfica la seal es discreta en valores porque stos cambian
escalonadamente sin pasar por estados intermendios y discreta en el tiempo porque se
toman los valores de los mismos en instantes concretos y no de forma continuada.
En la segunda grfica los valores varan de forma gradual y se toman de forma
continuada.

En la primera grfica la seal vara de forma escalonada pero la lectura se hace de forma
contnua.
En la segunda grfica, aunque la seal vara de forma gradual, los valores se recogen en
instantes determinados.
La Electrnica Digital trabaja con variables que son discretas en valores y en el tiempo
y adems la variable solo puede tomar dos valores o estados distintos.
El elemento bsico digital es la unin PN y en concreto el transistor que podemos
representarlo como un sistema que recibe una seal de entrada Vin y proporciona una
seal de salida Vout respecto a una referencia.
La curva caracterstica simplificada de la unin es la que presenta la figura.

Como vemos existen tres zonas diferenciadas de trabajo: la de saturacin, la zona lineal
y la de corte. Pues bien, el anlisis digital se refiere a las zonas de saturacin y de corte
procurando que la recta de la zona lineal tenga pendiente lo ms prximo a infinito
posible.

LECCION 1.- ALGEBRA DE BOOLE
Boole fue un matemtico que dedic hacia 1850 gran parte de su vida a estudiar la
forma matemtica del pensamiento del hombre aunque sus trabajos los resumira un
discpulo suyo sobre 1900 llamado Hungtington. A ellos y otros tales como Morgan,
Karnaugh, Veitech, McClusKey, etc. Les debemos el desarrollo de la lgica digital.

La estructura algebraica llamada Algebra de Boole en honor a su creador es una terna
formada por un conjunto de elementos {a,b,c,...} y dos operaciones a relizar con ellos
{S + } (la suma lgica y el producto lgico -anunque estr representadas con los smbolos que
utilizamos para la suma y el producto ordinarios, no tienen nada que ver con ellos-)que deben verificar las 6
propiedades siguientes como axiomas:

1) El conjunto tiene lmite (no tiene infinitos elementos).
2) Se debe de verificar la propiedad conmutativa para las dos operaciones.
(ab) = (ba)
(a+b) = (b+a)
3) Existencia de un elemento neutro x e y para cada operacin.
(ax) = a
(a+y) = a
4) Principio de dualidad o existencia de un elemento complementario de cada uno
de ellos de tal forma que un elemento operado con su complementario de cmo
resultado el neutro de la otra operacin.
(aa) = y
(a+a) = x
5) Distributividad de una operacin respecto a la otra tanto por la derecha como por
la izquierda.
a(b+c) = (ab) + (ac) ; (a+b)c = (ac) + (bc)
a+(bc) = (a+b) (a+c) ; (ab)+c = (a+c) (b+c) estas dos cuesta trabajo manejarlas porque
no las cumplen la suma y el producto ordinarios.

6) Cardinalidad acotada. Que al menos tenga 1 elemento el conjunto.


Hacia 1938 Shanon hizo un circuito con dos interruptores para verificar si cumpla la
estructura Algebra de Boole y comprob que un conjunto finito de interruptores con las
operaciones conectar en serie y conectar en paralelo cumple todas las propiedades
del Algebra de Boole. As comenz el Algebra de Conmutacin..
Tambin existe un isomorfismo (misma forma de operacin) entre las operaciones
bsicas con conjuntos (unin , interseccin , complementacin A , conjunto vaco
, y conjunto total U ) y las operaciones con las variables lgicas.

Definiciones:
VARIABLE LOGICA.- Variable que solo puede tomar 2 valores
ALGEBRA DE BOOLE BIVALUADA O DE CONMUTACION.- Conjunto de
variables lgicas con las operaciones producto lgico () y suma lgica (+) que cumplen
las propiedades del Algebra de Boole.

En lgebra de conmutacin:
- La operacin conectar en serie es el producto lgico () u operacin AND
- La operacin conectar en paralelo es la suma lgica (+) u operacin OR
- Las variables lgicas son interruptores y los posibles valores de las variables
lgicas son cerrado(1) y abierto.(0)
- El elemento neutro de la suma lgica es abierto(0)
- El elemento neutro del producto es cerrado(1)
- El valor complementario de una variable (variable negada) es el estado en el
que no se encuentra, de los dos posibles que tiene.

TEOREMAS DEL ALGEBRA DE BOOLE BIBALUADA.- En cualquier conjunto con
estructura de Algebra de Boole bibaluada ocurre lo siguiente:
1) Idempotencia.- Cualquier elemento operado con s mismo con cualesquiera de
las dos operaciones da como resultado el mismo elemento.
aa = a
a+a = a
2) Operaciones con el neutro.- Cualquier elemento operado con el neutro de esa
operacin da el propio elemento y si se opera con el neutro de la otra, da el
neutro de la otra.
a1 = a ; a 0 = 0
a+0 = a ; a + 1 = 1
3) Absorcin.- Si operamos un elemento con el resultado de aplicar la otra
operacin a l mismo y otro, obtenemos l mismo.
a ( a+b) = a
a + (a b) = a
4) Involucin.- Cada elemento tiene un solo complementario, es decir, el
complementario del complementario de un elemento es l mismo.
(a) = a
5) Asociatividad. Es una de las condiciones para que tenga la estructura.
a (b c) = (a b) c
a + (b + c) = (a + b) + c
6) Leyes de Morgan.- El complementario de la operacin de dos elementos es el
mismo que aplicar la otra operacin a los complementarios de dichos elementos.
(ab) = a+ b
(a+b) = a b
Las leyes de Morgan tambin se cumplen para n variables.

En el resto de la exposicin, las variables complementadas las vamos a notar con
una raya sobre ellas en lugar del apstrofe utilizado hasta ahora.

LECCION 2.- GENERACION Y SIMPLIFICACION DE FUNCIONES
LOGICAS

OPERACIONES BASICAS DEL ALGEBRA DE CONMUTACION.
UNIDADES BSICAS DE PROCESAMIENTO O PUERTAS LOGICAS.-
Con las dos operaciones bsicas del lgebra de Boole (+,) y la complementacin
pueden realizarse las siguientes operaciones que llamaremos puertas lgicas bsicas
aunque estn compuestas por la asociacin de una o varias de las citadas.
La funcin F de salida depende del valor que tengan las variables de entrada y
valdr 0 1 dependiendo de si en dicho terminal de la puerta existe o no un
determinado nivel de potencial (normalmente 0 significa 0V respecto al potencial de
referencia y 1 significa 5V, pero tambin puede ser cualquier otra tensin: 0V y -5V,
2,4V y 0V,... etc)

Producto lgico () , puerta AND, o conexin en serie.- Devuelve 1 si las dos
entraradas estn a 1 en caso contrario, devuelve 0.

B A

Suma lgica (+), puerta OR o conexin en paralelo.- Devuelve 0 si ambas
entradas estn a 0, en caso contrario, devuelve 1.

B A


Complementacin ( ) o INVERSOR.- Devuelve 1 si la entrada est a 0 y
viceversa.

A


Puerta NAND.- Es la complementacin o inversin de una puerta AND. Es decir,
una puerta AND a la que le colocamos un inversor en el terminal F.

B A

Puerta NOR.- Es la complementacin o inversin de una puerta OR. Es decir, una
puerta OR a la que le colocamos un inversor en el treminal F.

B A


Puerta XOR.- Devuelve 1 para un nmero impar de unos en la entrada.

B A

B A B A B A ) B A ( ) B A ( ) B A ( ) B A ( B A +

Puerta XNOR.- Devuelve 0 para un nmero impar de unos en la entrada. Es la
inversin de la XOR.
B A

B A B A B A B A B A ) B A )( B A ( B A + +

En realidad las nicas puertas lgicas imprescindibles son el inversor y una AND (o
bin OR), pues el resto son composiciones de las citadas:
Un ejemplo: Si tomamos el inversor y la AND (que significa interseccin o conexin en
serie) por ejemplo, todas las dems se consiguen as, aplicando las Leyes de Morgan:

B A B A B A B A B A ) B A ( ) B A ( B A
B A B A B A ) B A ( ) B A ( ) B A ( ) B A ( B A
B A B A B A B A





De todas formas, aqu se dan todas las posibilidades de resultados partiendo de dos
variables booleanas y como se llaman las funciones que devuelven tales resultados.


A 0 0 1 1 Variables con sus
posibles valores B 0 1 0 1
Operadores Funciones Resultados
0 CERO() 0 0 0 0
B A AND(A,B) 0 0 0 1
B A
AND(A,NOT(B)) 0 0 1 0
A SI(A) 0 0 1 1
B A
AND(NOT(A),B) 0 1 0 0
B SI(B) 0 1 0 1
B A = B A B A +
XOR(A,B) 0 1 1 0
B A B A +
OR(A,B) 0 1 1 1
Funciones inversas (simtricamente)
B A B A +
NOR(A,B) 1 0 0 0
) B A )( B A ( B A + +
XNOR(A,B) 1 0 0 1
B
NOT(B) 1 0 1 0
B A +
OR(A,NOT(B)) 1 0 1 1
A
NOT(A) 1 1 0 0
B A +
OR(NOT(A),B) 1 1 0 1
B A B A +
NAND(A,B) 1 1 1 0
1 UNO() 1 1 1 1

Algunas curiosidades en la simplificacion de funciones mediante el algebra de boole:
Aunque no lo prezca, esto es cierto: AB BC AC AB BC + + +
Donde est el ltimo trmino de la suma?
Demostracin:
{ { {
{
{ {
1 1
ABC ABC ABC ABC ABC ABC
Ordenando ABC
ABC
AB(C C) BC(A A)
F AB BC AC
F ABC ABC ABC ABC ABC ABC
F ABC ABC ABC ABC
F AB BC
+ + +
+ +
+ +
+ + + + +
+ + +
+
1442443 14243
1442443 14243

Esto, sorprendentemente, tambin es cierto:
(1) (2)
AB (A B)C AB (A B)C + + +
1442443 1442443

Da igual aplicar la funcin OR que la funcin XOR dentro del parntesis?
Demostracin:
{
{
1
1
A(B BC) (B B)(B C)
(2)
(A A)(A B) (1)
AB (A B)C AB (AB AB)C AB ABC ABC A( B BC ) ABC A(B C) ABC
AB AC ABC AB C( A AB) AB (A B)C
+ + +
+ +
+ + + + + + + + +
+ + + + + +
14243 123
1442443
14243
1442443
VARIABLES Y FUNCIONES.- Una funcin del lgebra de conmutacin es una
variable binaria cuyo valor depende de una expresin algebraica en la que se relacionan
entre s las variables de entrada por medio de operaciones bsicas.



SINTESIS DE CIRCUITOS LOGICOS.-

Es la obtencin del circuito elctrico partiendo de la funcin que debe realizar dicho
circuito. Tal funcin tomar un nmero derterminado de variables de entrada y para
cada combinacin de estados de dichas variables nos proporcionar un valor lgico a la
salida. Este comportamiento de la funcin (el trabajo que hace), deberemos tenerlo
previamente claro y representado en una tabla de verdad.


TABLA DE VERDAD.- Una funcin lgica queda perfectamente definida por
extensin si determinamos el valor de la variable de salida
para cada uno de los valores de entrada. A la
representacin tabulada de estos datos se le llama Tabla
de Verdad.
La tabla de verdad de una funcin de tres entradas tendr
2
3
= 8 estados distintos (dos estados elevado a tres
variables). Estos podran ser, por ejemplo los expuestos,
provenientes de la instalacin de un avisador en un
recinto en el que queremos que avise si est vaco, si est
lleno o si solo se encuentra el sujeto C, y teniendo en
cuenta que el avisador avisar cuando haya un 0 en la
variable de salida.

La funcin lgica f(A,B,C) que cumple esta tabla de verdad partiendo de las
operaciones bsicas, puede obtenerse considerando los trminos para los cuales la
variable de salida vale 1 como suma lgica de minterms o bin considerando los
trminos para los que la variable de salida vale 0 como producto lgico de maxterms.

Definiciones.-
MINTERM.- Es la relacin de las variables de entrada con la operacin producto lgico. Ej :(AB)
MAXTERM.- Es la relacin de las variables de entrada con la operacin suma lgica. Ej:(A+B+C)
TERMINO CANONICO.- Relacin de todas las variables de entrada con una operacin bsica.
Cuando en los trminos Maxterm o Minterm aparecen todas las variables de entrada.
TERMINOS SIMPLIFICADOS.- Cuando en los trminos Maxterm o Minterm NO aparecen todas las
variables de entrada.
TERMINOS REDUNDANTES.- Hay veces que ciertas combinaciones de las variables de entrada, que
aunque fsicamente puedan darse, no tienen sentido lgico para la aplicacin que estemos implementando.
A esas situaciones se les llaman indeterminaciones o trminos no importa o trminos redundantes.
Ejemplo:
Queremos un circuito lgico que cumpla con las siguientes premisas:
No ir a tu casa si llueve, ni tampoco si vienen tus padres y se quedan a cenar.
Definimos las variables de entrada:
- LLueve? =>L
- Vienen tus padres => P
- Cenarn aqu? => C
Y definimos la variable de salida:
- Voy a tu casa? =>V
Por supuesto, la lluvia es independiente de las dems situaciones, pero los padres no
podrn cenar aqu si no vienen. Si expresamos la tabla de verdad, encontraremos
trminos redundantes:
Los trminos marcados con una x, aunque las variables implicadas puedan tomar los
valores, jams los tomarn y por tanto no se evaluarn porque es imposible que se de tal situacin (los padres no
pueden cenar en casa si no vienen).

Aqu expresamos la funcin de salida de las dos formas:
- Como suma de minterms cannicos: Se cogen todos los estados que dan 1
a la salida de forma que si la variable de entrada vale 0, se escribe negada.
) C B A ( ) C B A ( ) C B A ( ) C B A ( ) C B A ( F + + + +
Si existieran trminos redundantes, en este caso se supondr que su valor de
salida es cero y no se tomarn.
- Como producto de maxterms cannicos : Se cogen todos los estados que
dan 0 a la salida de forma que si la variable de entrada vale 1, se escribe
negada.
) C B A )( C B A )( C B A ( F + + + + + +
Si existieran trminos redundantes, en este caso se supondr que su valor de
salida es 1 y no se tomarn.

Los sumandos de cada trmino de maxterm estn complementados porque se
estn considerando los valores para los que la salida es 0. Esto es as porque
si por ejemplo la combinacin de estados (A=0,B=0,C=1) representada por
el minterm ) C B A ( da a la salida 1, entonces la negacin de tal minterm,
) C B A ( obviamente dar 0, y aplicando De Morgan (la negacin del producto
lgico de variables es igual a la suma de las negaciones de cada una de ellas)
tenemos que ) C B A ( + da 0, y aplicando la involucin (la negacin de la
negacin de una variable es la propia variable), tenemos que ) C B A ( + + da 0
es decir ) C B A ( ) C B A ( + + .
Esta ltima igualdad obtenida obedece al siguiente teorema:

FUNCION INVERSA. TEOREMA DE SHANON.- El complementario de una
funcin (su funcin inversa) se obtiene reemplazando cada variable por su
complementaria (su negada) y cada suma lgica por producto lgico y viceversa.
Es una aplicacin directa del teorema de De Morgan.
Ejemplo:

) D B ( ) C B ( A F ) D B )( C B ( A F
) D , C , B , A ( ) D , C , B , A (
+ + + +

FUNCION INVERSA.- La funcin inversa de una funcin lgica dada es la funcin que, para cada combinacin de
estados de las variables de entrada, devuelve un 1 cuando la funcin original devuelve 0 y viceversa.

Las expresiones normalizadas de la funcin, (con trminos cannicos) nos sirven para
encontrar la simplificacin de la misma de una forma cmoda. Tambin nos permiten
L P C V
0 0 0 1
0 0 1 x
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 x
1 1 0 0
1 1 1 0
una forma fcil de implementar el circuito partiendo de circuitos integrados que
contienen un nmero determinado de puertas lgicas.

IMPLEMENTACION DE CIRCUITOS CON SOLO UN TIPO DE PUERTAS.

Considerando el teorema de De Morgan podemos observar lo siguiente:

- Cualquier sistema lgico se puede implementar con puertas NAND solamente.

Efectivamente, si consideramos la expresin normalizada de una funcin como suma
de mimterms cannicos y la negamos dos veces, la funcin no vara, por tanto:

) C B A ( ) C B A ( ) C B A ( ) C B A ( ) C B A ( F + + + +
) C B A ( ) C B A ( ) C B A ( ) C B A ( ) C B A ( F + + + +

y aplicando De Morgan sobre los sumandos, tenemos:

) C B A )( C B A )( C B A )( C B A )( C B A ( F

Cada trmino entre parntesis est representado por una puerta NAND de 3 entradas y
la complementacin total la representa una puerta NAND de 5 entradas que son las
salidas de las anteriores, segn el siguiente esquema elctrico:



- Cualquier sistema lgico se puede implementar con puertas NOR solamente.

De la misma forma, si consideramos la expresin normalizada de una funcin como
producto de maxterms cannicos y la negamos dos veces, la funcin no vara, por
tanto:

) C B A )( C B A )( C B A ( F + + + + + +
) C B A )( C B A )( C B A ( F + + + + + +

y aplicando De Morgan sobre los productos, tenemos:

) C B A ( ) C B A ( ) C B A ( F + + + + + + + +
Cada trmino entre parntesis est representado por una puerta NOR de 3 entradas y la
complementacin total la representa una puerta NOR de 3 entradas que son las salidas
de las anteriores, segn el siguiente esquema elctrico:



La implementacin de un circuito con un tipo de puertas u otro depender, por un lado,
de la simplicidad del circuito con cada implementacin, y por otro, del rendimiento que
obtengamos de los circuitos integrados que encapsulan un determinado nmero de
puertas lgicas. Por ejemplo, la implementacin del circuito requiere 5 puertas NAND
de 3 entradas, una NAND de 5 entradas y 3 inversores, o bien, 4 puertas NOR de 3
entradas y 3 inversores. en el segundo caso el circuito es mas simple pero tambin habr
que considerar cuantos CI son necesarios, el aprovechamiento de cada uno y el coste de
los mismos.

ANALISIS DE CIRCUITOS LOGICOS.-
Es la obtencin de la tabla de verdad o la funcin que representa un circuito lgico
partiendo del conocimiento del esquema elctrico de dicho circuito.

Obtencin de la tabla de verdad partiendo del circuito elctrico.- Se cogen las
variables de entrada y se va siguiendo las transformaciones que ocurren para cada
elemento del circuito. A la salida obtendrenos una funcin que podr simplificarse o
bien expresarse como suma de minterms o producto de maxterms.
Ejemplo:



Una vez obtenida la salida podemos simplificarla utilizando los teoremas del lgebra de
Boole y construir la tabla de verdad o bien construir la tabla directamente.

Se ha desglosado la funcin de salida
en el producto de las dos funciones
previas porque es mas fcil ver la
salida de stas que la de la funcin
final.

A partir de la tabla podremos
construir la funcin lgica del circuito
en trminos cannicos como suma de
minterms o como producto de maxterms, como se realiz en el apartado que describe la
sntesis de circuitos.

Como suma de minterms tendramos:
C B A C B A C B A C B A C B A F + + + +
que es la suma lgica del producto de todos los trminos cuya funcin de salida vale 1,
y como producto de maxterms, la misma funcin se representara:
) C B A )( C B A )( C B A ( F + + + + + +
que es el producto de las sumas de todos los trminos complementados cuya funcin
vale 0.

TRMINOS ADYACENTES.- Dos minterms (o dos maxterms) son adyacentes
cuando son exactamente iguales en todas sus variables excepto en una (que en uno est
complementada y en el otro no).
Ejemplo: Son adyacentes A B /C y A B C porque la nica variable que no comparten
es C que en el primero est negada y en el segundo no.

Los trminos adyacentes se pueden simplificar con el principio de dualidad y las
operaciones con el neutro:
F = AB/C+ABC = AB(C+/C) = AB(1) = AB


CIRCUITO ACTIVO A NIVEL BAJO.- Un circuito es activo a nivel bajo cuando un
1 lgico lo representa una tensin de 0 voltios respecto a la tensin de referencia.

CIRCUITO ACTIVO A NIVEL ALTO.- Un circuito es activo a nivel alto cuando un
1 lgico lo representa una tensin de +V voltios respecto al nivel de referencia.

SIMPLIFICACION DE FUNCIONES UTILIZANDO LAS PROPIEDADES DEL
ALGEBRA DE BOOLE. -

Algunas igualdades deducidas de los teoremas del algebra de Boole son las siguientes:

IGUALDAD IGUALDAD DUAL

) C A ( ) B A ( ) C B ( A + +

) C A )( B A ( ) C B ( A + + +
Esta cuesta trabajo manejar porque con las
A B C F
0
F
1
F
0
F
1
= F
0 0 0 1 1 1
0 0 1 1 0 0
0 1 0 0 1 0
0 1 1 1 0 0
1 0 0 1 1 1
1 0 1 1 1 1
1 1 0 1 1 1
1 1 1 1 1 1
operaciones suma y producto ordinarias no se
cumple
X A ) X A ( A + ( ) X A X A A + +
( ) X X A A + ( ) X X A A +
) C A ( ) B A ( )) C B ( B ( A + + ) C A )( B A ( )) C B ( B ( A + + + +
) C A ( ) C ) B B (( A + ) C A ( ) C ) B B (( A + + +

Ejemplo:

TABLAS DE KARNAUGH-VEITECH..- Se utilizan para representar grficamente
las adyacencias de maxterms o minterms cannicos.
Al igual que una tabla de verdad, muestra todos los posibles valores de las variables de
entrada y la salida para cada uno de ellos.
El nmero de celdas de la tabla es igual al nmero de posibles combinaciones de las
variables de entrada, es decir, 2
n
(2 estados elevado al n de variables).
Las celdas estn dispuestas de forma que cada combinacin de variables es adyacente
(solo cambia el valor de una variable) a la combinacin de la celda contigua, y si no
tiene celda contigua, es adyacente a la celda de su lnea (fila o columna) al extremo
opuesto de la tabla.
Para una tabla de tres variables,el nmero de estados es 2
3
= 8 (8 celdillas).
Cada celdilla albergara la siguiente combinacin de variables:

Supongamos que tenemos la tabla de verdad y su funcin asociada siguientes:
Como suma de minterms cannicos:

ABC C AB BC A C B A C B A F + + + +

y como producto de maxterms cannicos:

) C B A )( C B A )( C B A ( F + + + + + +

La representacin del valor de la funcin mediante la tabla de
Karnaugh-Veitech sera la siguiente:

Como suma de minterms:
A B C F
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1


y como producto de maxterms:

Como se ve, la tabla es idntica a la de suma de minterms si cambiamos las cabeceras
de forma que donde cada variable vala 1 ahora valga 0 y viceversa.

SIMPLIFICACION DE FUNCIONES MEDIANTE UNA TABLA DE
KARNAUGH.-
Tratamos de obtener una expresin de la funcin con el menor nmero de trminos
posibles y el menor nmero de variables en cada trmino.

Para una suma de minterms, despus de haber obtenido el mapa de Karnaugh, se deben
seguir tres pasos para obtener la mnima expresion:
- Agrupar los unos.
- Determinar el trmino correspondiente a cada grupo.
- Sumar los trminos obtenidos.

1 Agrupacin de unos.- Se trata de rodear las celdas adyacentes que contengan un 1 de
forma que obtengamos la menor cantidad de gupos, cada uno lo mas grande posible, de
acuerdo a las siguientes reglas:
Cada grupo contendr el mximo nmero de celdas posible sempre que sea
potencia de 2 (1,2,4,8,16,...)
Cada celda del grupo ser adyacente a una o mas celdas del mismo grupo, pero
no tienen porqu ser todas adyacentes entre s.
Cada 1 del mapa tiene que estar incluido en al menos un grupo. Los 1s que ya
pertenezcan a un grupo pueden ser incluidos en otro siempre que este ltimo
incluya 1s que no pertenezcan al primero.


Hay que hacer notar que las celdas opuestas en la tabla tambin son adyacentes, por
tanto, el grupo de cuatro 1s tambin podramos haberlo formado as:



2 Determinar el trmino correspondiente a cada grupo.-
Cada grupo rodeado representa un trmino de la suma de minterms, tal trmino estar
compuesto por las variables que contengan el grupo entero bien como variable directa o
como negada, desprecindose las variables que contengan la mitad del grupo como
directa y la otra mitad como negada. Para nuestro caso:
- El grupo de dos 1s lo representara el minterm: C A ya que la variable B lo
contiene la mitad como directa y la otra como negada.
- El grupo de cuatro 1s lo representara el minterm: B ya que las variables A y
B lo contiene la mitad como directa y la otra como negada.

3 Sumar los trminos obtenidos.-
Por tanto, la mnima expresin de la funcin como suma de minterms sera:
B C A F +



LECCION 3.- SISTSTEMAS DE NUMERACION.-

CONCEPTO DE SISTEMA DE NUMERACION.-
Un sistema de numeracin es un convenio mediante el cual se permite representar
cantidades de forma unvoca, mediante un conjunto limitado de smbolos.

Base de un sistema de numeracin.- Es la cantidad de smbolos que tiene el sistema.

Sea un sistema a en base B: <

B , i ) B a 0 ( ) a , a ,..., a , a ( a
i ) B 0 1 1 n n
.
Un nmero se puede representar como un polinomio de potencias de la base
multiplicadas por un smbolo perteneciente al sistema.
Por ejemplo, supongamos un nmero cualquiera del sistema genrico anterior en base
once (B=11) y llamemos a sus smbolos con las 11 primeras letras del abecedario
) K a ,..., B a , A a (
10 1 0
. Supongamos el nmero DIGA. Tal nmero se podra
expresar de la forma:
0 1 2 3
11 A 11 G 11 I 11 D DIGA + + +

Los exponentes a los que est elevada la base B en cada trmino del polinomio
representan el peso que tiene cada smbolo (dgito) dentro del nmero DIGA.

Y si queremos cuantificarlo (tener una idea de lo grande que es), bastar considerar el
valor que tiene cada smbolo (el lugar que ocupa en el sistema, o lo que es lo mismo,
el subndice i con el que lo hemos nombrado). As, para los mortales, fuertemente
arraigados a la base diez, el valor del nmero sera:

{{ {{
5027 0 66 968 3993 11 0 11 6 11 8 11 3 A G I D
0 1 2 3
0 6 8 3
+ + + + + +

Esa misma secuencia de smbolos, en base 9, ) I a ,..., B a , A a (
9 1 0
:

{{ {{
2709 0 54 648 2187 9 0 9 6 9 8 9 3 A G I D
0 1 2 3
0 6 8 3
+ + + + + +

Y, ni que decir tiene, que en base 10 el nmero es 3860.

{{ {{
3860 0 60 800 3000 10 0 10 6 10 8 10 3 A G I D
0 1 2 3
0 6 8 3
+ + + + + +

Resumiendo:
- El peso de un dgito en un nmero es el lugar que ocupa en el nmero.
Ej. peso(G,DIGA) =1
- El valor de un dgito en un sistema es el lugar que ocupa en el sistema.
Ej. valor(G,{A,B,C,D,E,F,G,H,I,J,K}) = 6

SITEMAS DECIMAL Y BINARIO. CONVERSION.-

Como se ha dicho antes, los humanos estamos tan arraigados al sistema de numeracin
en base diez llamado sistema decimal, con los smbolos {0,1,2,3,4,5,6,7,8,9} que es el
nico que nos da una idea cuantitativa de la cantidad de una magnitud simplemente con
ver el nmero que la representa en esta base. Y tambin estamos tan acostumbrados a
usar las operaciones suma y producto, con sus propiedades que le configura a los
nmeros reales la estructura algebraica de cuerpo, que incoscientemente, las utilizamos
al hacer operaciones mas complejas.

Pero las mquinas, en electrnica digital, trabajan con un sistema de numeracin en
base dos llamado sistema binario (con solo dos smbolos {0,1}), con tres operaciones
bsicas - dos binarias (unin, interseccin) que las representamos como suma lgica + y
producto lgico , y una unaria (complementacin) que aplicada a un smbolo, devuelve
el otro de los dos que tiene el sistema- y ese sistema con ese conjunto de operaciones
posee la estructura algebraica de Algebra de Boole Bivaluada.

Por tanto deberemos ser capaces de trasladar nuestro sistema de numeracin al binario y
viceversa con el fin de trasmitir e interpretar la informacin. Para ello tambin
utilizamos otros sitemas de numeracin en base potencia de dos (base 4, base 8 u octal,
base 16 o hexadecimal, etc) que nos permite una fcil conversion con el sistema binario
natural.

Paso de sistema binario a decimal:
Sin decimales:
Se resuelve planteando el polinomio, teniendo en cuenta que el valor del smbolo en
decimal coincide con la representacin del smbolo, lo cual lo hace mas fcil.
6 5 4 3 2 1 0
2) 10)
1011011 12 02 12 12 02 12 12 64 0 16 8 0 2 1 91 + + + + + + + + + + + +
Observese que los exponentes (el grado del monomio) indican el peso del dgito binario.

Con decimales:
{ { { { { { { { { { {
6 5 4 3 2 1 0 1 2 3 4
2)
64 16 8 2 1 1 1 1 0 0 0
2 8 16
1011011,1011 12 02 12 12 02 12 12 12 02 12 12
8 0 2 1 11
64 0 16 8 0 2 1 91 91 0,6875=91,6875
16 16

+ + + + + + + + + +
+ + +
+ + + + + + + + +

Paso de sistema decimal a binario:
Sin decimales:
Se va dividiendo el nmero sucesivamente entre 2 y extrayendo los restos que van
conformando el nmero, teniendo en cuenta que el primer resto es el dgito binario de
menor peso.


Con decimales:
La parte entera, se hace como se acaba de ver, y la parte decimal, se va multiplicando
por 2 y extrayendo la parte entera de los resultados.

Puede ser que un nmero en un sistema sea decimal peridico y en otro no, como acaba
de ocurrir aqu.
Dependiendo del nmero de bits con el que estemos trabajando, se podr dar una
precisin u otra, por ejemplo si disponemos de una anchura de 5 bits, el mayor nmero
que podremos representar en sistema binario natural es el 31 ( } 31 ... 0 { , 32 2
5
).

SISTEMA HEXADECIMAL (Sistema en base 16).-
El conjunto de smbolos que posee son } F , E , D , C , B , A , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 , 0 { S
16
, es
decir, se utilizan los mismos diez smbolos que en el sistema decimal, mas las seis
primeras letras del abecedario.
Como es un sistema que es potencia de 2 (
4
2 16 ), la conversin de nmeros entre el
sistema binario y l es inmediata, es decir, cada dgito hexadecimal ocupa 4 dgitos
binarios (4 bits).
Si nos aprendemos la forma binaria de cada dgito hexadecimal, la conversin de
binario a hexadecimal y viceversa es directa:


Pero tambin podemos hacerla utilizando la forma del polinomio:

E 14 0 2 4 8 2 2 2 2 1110
0 1 2 3
) 2
+ + + + + + 0 1 1 1

OTROS SISTEMAS DE NUMERACION.-
Otros sistemas de numeracin de potencia de dos y por tanto de conversin directa son:
Sistema en base 4: Para la conversin se cogen paquetes de 2 bits.
Sistema en base 8: Para la conversin se cogen paquetes de 3 bits.

EJERCICIO.-
Disear un sistema combinacional que detecte los mltiplos de 3 menores de 14.

Solucin:
Primero consideraremos si el cero es multiplo de 3. Tomaremos arbitrariamente
que no.

Si el circuito tiene que permitir a la entrada nmeros entre 0 y 13, necesitaremos 4
lneas de entrada que nos permiten 16 estados distintos ( 16 2
4
), de los que vamos a
utilizar 14 {0...13}. Los dos restantes sern estados no importa o trminos
redundantes es decir, que ser indiferente si contienen un 0 o un 1, por lo que
consideraremos que contienen 0 1 segn nos convenga para hacer el diseo del
circuito lo mas simple posible.

Construyamos ahora la tabla de verdad del circuito:

Tabla de verdad de 4 variables
Esta funcin puede expresarse de dos formas:

- Como suma lgica de minterms cannicos:
D C AB D C B A D BC A CD B A ) 12 , 9 , 6 , 3 ( F
) D , C , B , A (
+ + +



- Como producto lgico de maxterms cannicos:
) 13 , 11 , 10 , 8 , 7 , 5 , 4 , 2 , 1 , 0 ( F
) D , C , B , A (















N A B C D F
(A,B,C,D)

0 0 0 0 0 0
1 0 0 0 1 0
2 0 0 1 0 0
3 0 0 1 1 1
4 0 1 0 0 0
5 0 1 0 1 0
6 0 1 1 0 1
7 0 1 1 1 0
8 1 0 0 0 0
9 1 0 0 1 1
10 1 0 1 0 0
11 1 0 1 1 0
12 1 1 0 0 1
13 1 1 0 1 0
X 1 1 1 0 x
X 1 1 1 1 x
LECCION 4.- ARITMETICA BINARIA. -

OPERACIONES ARITMETICAS EN BINARIO.-
Podemos servirnos de las propiedades que posee el lgebra de Boole para disear
circuitos combinacionales que nos permitan realizar las operaciones matemticas
comunes que nosotros entendemos en base diez, simplemente trasladando tales
operaciones al sistema binario. Para ello, nuestro sitema dispondr de una serie de
entradas, donde le pondrenos la informacin en sistema binario y nos proporcionar una
serie de salidas con la informacin resultado, utilizando una serie de tcicas que
veremos a continuacin.

SUMA ARITMETICA. - Para comenzar, como mnima expresin de la suma
aritmtica, vamos a implementar un sistema que sea capaz de sumar dos nmeros
binarios de un solo dgito. Y lo vamos a hacer tal como nos ensearon a sumar en la
escuela: Cuando la suma de los sumandos es mayor que el dgito de mayor valor,
decamos nos llevamos uno que lo trasladabamos como sumando al dgito siguiente.
A ese nmero que nos llevamos le vamos a llamar acarreo (carry en ingls).
Nuestro sitema tendr dos entradas binarias A y B y dos salidas: una S para el resultado
y otra C indicando el acarreo.

La tabla de verdad indica los valores de S y C para las posibles entradas de A y B y las
puertas lgicas que cumplen la tabla son las expuestas en el grfico.
Nuestro circuito se llama semisumador porque no est preparado para procesar el
acarreo proveniente de otro semisumador, por tanto sabe llevarse una pero no sabe
agregarla si se la aporta otro dgito. El siguiente circuito se llama celda sumadora total
o sumador total ST y est preparado para procesar el acarreo:

Este circuito combinacional es capaz de hacer la suma aritmtica de dos nmeros
binarios de un dgito con acarreo. Si tenemos que procesar nmeros de ms dgitos,
bastar poner tantas celdas sumadoras totales como dgitos binarios precisemos,
dispuestas como indica el esquema siguiente:

El contenido de la entrada de acarreo inicial debe ser nula, puesto que en el primer
dgito nunca nos llevamos una por tanto se ha llevado al cero lgico (masa si el uno
significa Vcc o Vcc si el 1 significa masa) y el contenido de la salida del acarreo final se
llevar a un dgito adicional o bien a una salida que indique fuera de lmites.

Al igual que se ha elaborado una celda sumadora total, tambin se puede implementar
una celda restadora total. Su estructura sera:

Tiene como entradas el minuendo (M) el sustraendo (S) y el acarreo (C
-1
) y como
salidas el resultado (R) y el acarreo (C).

El resultado es el mismo que para el sumador total, pero el acarreo no lo es como se
aprecia en la funcin de salida y en el circuito.
El resultado y el acarreo se obtienen en la tabla de verdad con el setido comn, por
ejemplo, si
{

'

+ +

'

1 C
0 R
) 1 1 ( 0 ) C S ( M
1 C
1 S
0 M
1
1
uno
llevo me
y cero
, es decir, en bbinario,
1+1=10 y si a cero le restamos 10, como no se puede, tenemos que hacer 10-10=0 y me
llevo 1 (que la ponemos en el acarreo para sumarsela al sustraendo del dgito siguiente).
Las funciones y el circuito que confirman el resultado y el acarreo, se consiguen
expresando las salidas de la tabla como suma de minterms o producto de maxterms y
simplificando la funcin, ya sea con las propiedades del lgebra de Boole o con ayuda
de las tablas de Karnaugh-Veitech.

NOTACION Y OPERACIONES EN COMPLEMENTO A DOS. NUMEROS
BINARIOS CON SIGNO.
Hasta ahora tenemos dos circuitos combinacionales que nos permiten sumar y restar
naturales expresados en binario. Pero an no tenemos un mtodo para expresar en
binario nmeros enteros.
La primera forma que se nos ocurre para solucionar el problema, es aadir un dgito
binario que represente el signo de forma que si contiene un 1 se trate de nmeros
negativos y si contiene un cero de positivos (o al revs). Pero adems de eso vamos a
tomar un convenio que nos permitir efectuar restas sumando nmeros, de tal forma que
usando celdas sumadoras solamente podamos efectuar las dos operaciones:

Notacin de nmeros en complemento a dos.- El complemento a dos de un nmero se
obtiene segn la ecuacin:
a 2 a
n
2 c


donde a es el nmero que queremos representar y n es el nmero de bits que utilizamos
para hacer la representacin. Por tanto, no se puede hablar de la representacin en
complemento a dos de un nmero dado, si no sabemos de cuantos dgitos binarios
disponemos para representarlo.
Por ejemplo si disponemos de 4 bits, la representacin en complemento a dos del n 10
sera el nmero 6 ( 6 10 16 10 2 10
4
2 c
). En binario, sera 0110 1010
2 c
.
Convenio.- Se ha convenido representar los nmeros de la siguiente forma:
1 Quedando bien definida la longitud en bits utilizada para la representacin del
nmero.
2 Si el nmero es positivo, el bit de mayor peso ser 0 y el resto se utulizarn
para la representacin del nmero en sistema binario natural rellenando de
ceros a la izquierda los dgitos que no ocupe el nmero.
3 Si el nmero es negativo, el bit de mayor peso ser 1 y el resto se utilizarn
para la representacin en complemento a dos, del valor absoluto del nmero.

Esto, hecho as, tiene la ventaja de que al sumar un nmero y otro del mismo valor
absoluto y signo contrario, el resultado sea nulo. Por ejemplo si lo hacemos con el
nmero diez representado con 4 bits tenemos:

0 0 0 0 0
0 1 1 0 1
0 1 0 1 0
+

pues el sexto bit se pierde. En cambio, si no hubiesemos representado el diez negativo
como el complemento a dos del diez, es decir el seis, aunque el bit de mayor peso est
puesto a 1 no se lograra el resultado deseado:

0 0 1 0 0
0 1 0 1 1
0 1 0 1 0
+
De esta forma resultara que 4 ) 10 ( 10 + cosa totalmemnte falsa.

Hay dos reglillas muy tiles para obtener el complemento a dos de un nmero binario:

1.- Cambiamos los ceros por unos y los unos por ceros, y al resultado, le sumamos 1.
Ejemplo: El complemento a 2 del nmero 12 expresado con 8 bits sera:

{ 43 42 1 43 42 1
244
2 c
12
11110100 00000001 11110011 00001100 +

Esta regla se utiliza para poner a restar un sumador total de n bits, simplemente
invirtiendo los bits del segundo sumando (sustraendo) y poniendo el acarreo del
sumador de menor peso a Vcc.

2.- Conservamos los ceros de la derecha hasta el primer uno que encontremos, inclusive,
y a partir de ah cambiamos los ceros por unos y los unos por ceros restantes.

{
}
43 42 1 43 42 1
244
Intacto
2 c
12
100 11110 00001100

Hay otras notaciones para nmeros ( complemento a 1, a 6, a 9, signo y magnitud, etc)
pero no las veremos en este curso.

REPRESENTACION DE NUMEROS REALES.- Para la representacin de nmeros
reales se utilizan dos standards internacionales: uno de simple precisin con longitud de
32 bits y otro de doble precisin de 64 bits.
Estos estndares hacen una representacin del nmero en coma flotante en la forma:


Estndar IEEE 754 (Simple precisin). Utiliza 1 bit para el signo, 8 bits para el
exponente y 23 bits para la mantisa (parte fraccionaria) Ejemplo:

}
Exponente(E) Mantisa o parte fraccionaria (F)
Signo(S)
8bits 23bits
1 1001011011000100011010011101101
647486444447444448
142431444442444443


El nmero almacenado de esta forma se calcula segn la ecuacin:

S E 127
Nmero ( 1) (1 F)(2 )

+


Ejemplo:

Si tenemos el nmero
(16
N 93,231 y queremos representarlo en el estndar IEEE754
haramos lo siguiente:
Su representacin binaria es inmediata:
{{{{{
9 3 2 3 1
10010011,001000110001 pero para ponerlo
en forma de coma flotante hay que desplazar la coma 7 lugares a la izquierda para que
se quede la mantisa en la parte decimal, es decir, hay que multiplicar por
7
( 2
2 con lo que
nos queda:
{
{{{{
3 2 3 1
9
1,0010011001000110001 corriendo la coma al bit mas significativo. El
exponente a almacenar es: E 127 7 134 + y de esta forma el nmero queda como:
}
E M
S
01000011000100110010001100010000
647486444447444448
. Este es su formato de almacenamiento.

Se podra hacer una mquina que sumara en este formato? . Estudiarlo.

Veamos el problema inverso. Tenemos el nmero hexadecimal
16 (
9357041 A
almacenado en el estndar IEEE754 y queremos saber qu nmero es.

- Primero lo traducimos a binario :

(preguntar...)

Ejercicio: Cul es el nmero mas grande que se puede almacenar en IEE754? Y en
Hex?


Estndar IEEE 754 (Doble precisin). Utiliza 1 bit para el signo, 10 bits para el
exponente y 53 bits para la mantisa (parte fraccionaria) Ejemplo:

}
Exponente(E) Mantisa o parte fraccionaria(F)
Signo(S)
10bits 53bits
1 100101101011000100011010011101101100110100101101110101101101011
64748644444444444474444444444448
14243144444444444424444444444443



LECCION 5.- CODIGOS BINARIOS.-
CODIGO.- Es una correspondencia biunvoca entre dos conjuntos.

Desde el punto de vista del conjunto origen los podemos clasificar en :
- Cdigos numricos
- Cdigos Alfanunricos { Cd. ASCII
- Codigos simblicos

Desde el punto de vista del conjunto destino, nosotros codificaremos con ceros y unos.
Entre otros, estn:
- BCD Natural
- Aiken
- (5-4-2-1)
- (2-4-2-1)
- Exceso en tres XS3
- etc.

Propiedades de los cdigos:
Atendiendo a sus catactersticas de representacin, los cdigos los podemos clasificar en
ambiguos e instantneos:

- Cdigo ambiguo.- Un cdigo es ambiguo cuando, an siendo una correspondencia
biunvoca entre dos conjuntos, su lectura puede tener varias
interpretaciones. Por ejemplo, si tenemos la correspondencia
biunvoca expuesta y queremos decodificar (descifrar) la
secuencia 101110, no podemos saber si el primer color enviado
se trata del verde (1) o del azul (10), pues los paquetes de
informacin no tienen una longitud fija.

Estos cdigos no tienen utilidad.

- Cdigo Instantneo.- En contraposicin con los cdigos ambiguos, los instantneos
no poseen ambigedad en la lectura de sus datos, por ejemplo,
en el siguiente cdigo podemos enviar cualquier informacin
sin que exista ambigedad en su lectura.
En la secuencia 101110 ya si sabemos que nos envan la
informacin (azul,verde,azul). Si nos envan al principio un 0
sabemos que se trata del rojo, y si es un 1 sabemos que tenemos
que esperar otro dgito para conocer el color.

En electrnica digital siempre se trabaja con cdigos instantneos.
Los cdigos instantneos se pueden clasificar a su vez en ponderados y cclicos:

- Cdigo instantneo ponderado.- Son los cdigos en los que la posicin de los bits
tiene un peso especfico, es decir, forman un sistema de numeracin. Entre otros
tenemos: BCD Natural, BCD exceso 3, Aiken 2421, Aiken 5421, etc.

- Cdigo instantneo contnuo.- Son cdigos no ponderados en los que los trminos
consecutivos son adyacentes (difieren solo en un bit).
Los cdigos contnuos pueden ser cclicos y no cclicos. Ser cclico si adems de ser
sus trminos consecutovos adyacentes, el ltimo trmino es adyacente con el
primero.Por ejemplo el cdigo Gray.

En el siguiente esquema se presenta un resumen de los tipos de cdigos con lagunos
ejemplos:

'

'

'

'

'

cclicos No
Johnson
Gray
Cclicos
Contnuos
2421 Aiken BCD
5421 Aiken BCD
3 exceso BCD
natural BCD
Ponderados
os Instantne
Ambiguos
Cdigos
primero
el con adyacente
es trmino ultimo El
adyacentes son
os consecutiv trminos Los
peso tiene bits
los de posicin La
cin interpreta su en
ambiguedad existe NO
cin interpreta su en
ambiguedad Existe
43 42 1
43 42 1
43 42 1
4 43 4 42 1
43 42 1


CODIGO BCD (Decimal codificado en binario).- Esta familia de cdigos representa los
diez smbolos del sistema decimal como paquetes de 4 bits. Normalmente todos son
ponderados pero puede haberlos tambin que no lo sean.

BCD Natural o BCD 8421.- Es el mas normal de los cdigos BCD. Es un cdigo
ponderado en el que se representa la magnitud como
suma de polinomios de la base. Por ejemplo el
nmero (1011) equivale al nmero decimal
{ { { {
11 2 1 2 1 2 0 2 1
1
0
2
1
4
2
8
3
+ + + , pero el nmero 11 no es
un smbolo del sistema decimal, por lo tanto este
paquete de 4 bits no se encuentra en el BCD natural.
Los paquetes que representan del 0 al 9 se exponen
en la tabla adjunta.







BCD Natural o BCD 8421
Dig.decimal A
3
A
2
A
1
A
0
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
BCD Aiken 5421.- Es un cdigo ponderado en el que los 5 primeros smbolos tienen un
0 como bit de mayor peso y los 5 ltimos un 1. El
resto de los bits se representan como en SBN
(Sistema binario natural)
Para leer un nmero en este cdigo se hace:
1 A 2 A 4 A 5 A D
0 1 2 3
+ + +









BCD Aiken 2421.- Este cdigo tiene la propiedad de que es un cdigo
autocomplementario (el complemento a 9 de un
nmero es su complementario bit a bit). Tambin se
le llama cdigo espejo o cdigo reflejado.

Para leer un nmero en este cdigo se hace:
1 A 2 A 4 A 2 A D
0 1 2 3
+ + +








BCD XC3 (exceso 3).- Tiene la propiedad de que nunca se envan todo ceros o todo
unos. Es un cdigo espejo o cdigo reflejado. Su
representacin es la misma que en SBN sumando
tres (un 5 en BCD XC3 es un 8 en BCD natural).
Tambin es un cdigo autocomplementario (el
complemento a 9 de un nmero es su
complementario bit a bit).








Ejemplo de cdigos BCD.- Codifica el 493
(10
en los distintos cdigos BCD.
Decimal 4 9 3
BCD natural 0100 1001 0011
BCD Aiken 5421 0100 1100 0011
BCD Aiken 5421
Dig.decimal A
3
A
2
A
1
A
0
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 1 0 0 0
6 1 0 0 1
7 1 0 1 0
8 1 0 1 1
9 1 1 0 0
BCD Aiken 2421
Dig.decimal A
3
A
2
A
1
A
0
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 1 0 1 1
6 1 1 0 0
7 1 1 0 1
8 1 1 1 0
9 1 1 1 1
BCD XC3
Dig.decimal A
3
A
2
A
1
A
0
0 0 0 1 1
1 0 1 0 0
2 0 1 0 1
3 0 1 1 0
4 0 1 1 1
5 1 0 0 0
6 1 0 0 1
7 1 0 1 0
8 1 0 1 1
9 1 1 0 0
BCD Aiken 2421 0100 1111 0011
BCD XC3 0111 1100 0110


CODIGO GRAY.- Es contnuo, cclico y no ponderado. Al ser no ponderado hay que
considerar el nmero de bits que contiene el paquete que representa el nmero.
- Utiliza todas las combinaciones posibles de los bits.
- Se construye a partir del reflejo de la informacin.
- Un nmero y su consecutivo siempre son adyacentes y tambin lo son el primero y el
ltimo.
Se forma de la siguiente manera:
- Si el paquete tiene 1 bit, igual que en SBN. {0,1}

- Si el paquete tiene 2 bits, se hace el reflejo del paquete de 1 bits, y se le
ponen ceros a la izquierda al paquete original y unos a la izquierda al
paquete reflejado:




- Si el paquete tiene 3 bits, se hace el reflejo del paquete de 2 bits, y se le
ponen ceros a la izquierda al paquete original y unos a la izquierda al
paquete reflejado:








Si el paquete es de 4 bits, se hace el reflejo del paquete de 3 bits, y
se le ponen ceros a la izquierda al paquete original y unos a la
izquierda al paquete reflejado:

Y as sucesivamente.












Ejercicio.- Cuanto vale el 101101 en Gray? (En el libro Gil Padilla est)

0 0 0
1 0 1
2 1 1
3 1 0
0 0 0 0
1 0 0 1
2 0 1 1
3 0 1 0
4 1 1 0
5 1 1 1
6 1 0 1
7 1 0 0
0 0 0 0 0
1 0 0 0 1
2 0 0 1 1
3 0 0 1 0
4 0 1 1 0
5 0 1 1 1
6 0 1 0 1
7 0 1 0 0
8 1 1 0 0
9 1 1 0 1
10 1 1 1 1
11 1 1 1 0
12 1 0 1 0
13 1 0 1 1
14 1 0 0 1
15 1 0 0 0
PASO DE NUMEROS DE UN CODIGO A OTRO.-
- De SBN a Gray.- Se suman los dgitos dos a dos sin tener en cuenta los acarreos.

Gray 10 (
0 1 1
1 1 0
1 0 1
1 1 0
1 0 1
1 1
SBN
111110 43 101011
+
+
+
+
+

43 42 1


- De Gray a SBN.- Se coge el primer dgito como resultado, y se van sumando los
resultados al dgito siguiente sin acarreo.
Gray 10 (
1 0 1
1 0 1
1 0 1
1 1
SBN
1111 15 1000
+
+
+

43 42 1


CODIGO Johnson.- Puede representar 2*n nmeros distintos siendo n el nmero de
bits. Es contnuo y cclico. Tiene la ventaja de que se pueden
construir contadores a partir de biestables sin necesidad de aadir
puertas lgicas.
Un ejemplo de construccin para 5 bits es el siguiente:








CODIGOS ALFANUMERICOS.- Codifican nmeros, letras y caracteres ortogrficos.
Algunos son:

ASCII .- Codifica nmeros del 0 al 9, letras mayusculas y minsculas y caracteres
ortogrficos. Est compuesto por paquetes de 7 bits (128 smbolos).

EBCDIC.- Norma exclusiva de Francia. Utiliza 8 bits (256 smbolos). Lo llevan los
ordenadores Amiga y la programacin en Foltran

DETECCION Y CORRECCION DE ERRORES

Para empezar, en la transimisin de informacin existen tres elementos bsicos: un
emisor, un receptor, y un canal de transmisin. Por ejemplo, cuando se establece una
conversacin hablada, el emisor es el hablante, el receptor es el escuchante, la
informacin es la palabra, y el canal de transmisin es el aire que transporta las ondas
sonoras.
En el canal de transmisin, debido a parturbaciones en el medio, puede a veces
deformarse la informacin de tal manera que al receptor no le llega en su estado
original, sino con algunas variantes (errores) que impiden su correcta interpretacin.
En electrnica digital, se han ideado mtodos que permiten detectar y en algunos casos
corregir la informacin recibida, de forma que se pueda procesar adecuadamente.
0 0 0 0 0 0
1 0 0 0 0 1
2 0 0 0 1 1
3 0 0 1 1 1
4 0 1 1 1 1
5 1 1 1 1 1
6 1 1 1 1 0
7 1 1 1 0 0
8 1 1 0 0 0
9 1 0 0 0 0
La deteccin y correcin de errores en la transmisin de informacin se basa en el
concepto de bit de paridad.

SIMPLE PARIDAD.-
Se trata, simplemente de enviar junto con cada paquete de informacin un bit que nos
diga si el nmero de unos enviado en el paquete es par o impar. Previamente,
deberemos ponernos de acuerdo en si, al enviar un nmero par de unos, nuestro bit de
paridad ser cero o uno. Las dos formas pueden usarse:

Paridad PAR.- Si la cantidad de unos enviados mas el bit de paridad, forman un
nmero par de unos.

Paridad IMPAR.- Si la cantidad de unos enviados mas el bit de paridad, forman un
nmero impar de unos.

Por ejemplo, supongamos que tenemos un emisor que enva paquetes de 4 bits en
paralelo a un receptor. Si en el canal no hay perturbaciones se recibir la misma
informacin, pero si hay ruido (perturbaciones en la lnea) y se producen errores,
deberemos verificar que la informacin recibida no es correcta. Para ello deberemos
implementar un generador de paridad y un receptor de paridad.

Supongamos que la trasmisin la hacemos con paridad PAR y enviamos el n 3 en SBN
(0011). Como hay un nmero par de 1s en la lnea, el bit de paridad generado vale 0
(ver puerta XOR) por tanto el detector dar como resultado un 0 si la informacin es
correcta y un 1 si ha habido un cambio en un bit del canal (incluida la lnea P). Si se
producen 2 errores el sistema no los detecta, ni es capaz de informar de la lnea en la
que se ha producido.
Un canal se considera fiable cuando la probabilidad de que se produzca un error es
inferior al 7% de la informacin enviada.

CONCEPTO DE DOBLE PARIDAD.- El siguiente sistema permite detectar hasta 2
errores y corregir 1 si se produce.
Se trata de aadir a la informacin 1 bit de paridad y una palabra de paridad.
Supongamos que enviamos la informacin 1258 en SBN con doble paridad PAR.

Tenemos que ponernos de acuerdo si enviamos los bits de paridad al principio o al final.
En este caso lo hemos hecho al final. Los bits de paridad estarn de acuerdo con los
datos de cada fila y los bits de la palabra de paridad de acuerdo con los datos de cada
columna. Se tiene que cumplir que tienen que tener un nmero par de 1s (para paridad
PAR) tanto las filas como las columnas (de ah lo de doble paridad).
Supongamos que, debido a una mala trasmisin, el receptor recibe la secuencia
hexadecimal 125A:

La nica fila y columna que no verifica la paridad,
en su interseccin, sealan el bit erroneo con lo cual
podemos corregirlo (cambiar el 1 por un 0).

Si en lugar de uno, se
producen dos errores, por
ejemplo si se recibe la
secuencia 1252, entonces el
sistema es capaz de detectar que hay error en 2 columnas, o en 2
columnas y 2 filas pero existe ambigedad sobre que bits son los
errneos y por tanto no podemos corregirlos.

SISTEMA DE CODIGO HAMMING PARA LA DETECCION DE ERRORES.-
Este sistema de enviar informacin tiene la ventaja de que que el nmero de lneas
disponibles para enviar datos crece exponencialmente respecto al nmero de lneas
utilizadas para enviar la paridad. Tambin es capaz de detectar dos errores y corregir
uno si solo se produce ste.
Si llamamos:
N = nmero total de lneas del sistema.
n = nmero de lneas de datos.
i = nmero de lneas de paridad.
Tendremos que n i N +
En este sistema se verifica que i 1 2 i N n 1 2 N
i i
. Por tanto:
{ {
paridad
de lineas
i
datos de
lineas
i 2 ) 1 n ( +


Es decir, si necesitamos enviar nmeros decimales de 3 cifras en BCD por ejemplo,
como necesitamos 4 bits para cada dgito, harn falta
{ { {
lneas digitos
dgito
lineas
12 3 * 4 lneas de datos.
Y como tenemos que i 2 ) 1 n (
i
+ , probamos valores de i hasta que igualemos o
superemos 13 ( ) 27 5 2 ; 12 4 2
5 4
. Por tanto necesitaremos 5 lneas de paridad.
Aunque las 5 lneas de paridad nos permiten utilizar hasta 26 lneas de datos, son
necesarias porque con 4 no nos llega.

Utilizacin de las lneas.-
De las 17 lneas de trasmisin que tendr nuestro canal, 12 se utilizarn para enviar
datos y 5 para enviar bits de paridad. Pero las lneas de paridad debern tener una
posicin especfica dentro del canal, que sern todas las posiciones potencias de 2; Es
decir, las lneas ,... L , L , L , L , L , L , L , L , L , L
512 256 128 64 32 16 8 4 2 1
son utilizadas para enviar
bits de paridad. En el resto de las lneas, los datos podemos codificarlos como
queramos. Para nuestro caso, utilizaremos las lneas de la siguiente forma:

11 10 9 8 7 6 5 4 3 2 1 0
D
17
P
16
D
15
D
14
D
13
D
12
D
11
D
10
D
9
P
8
D
7
D
6
D
5
P
4
D
3
P
2
P
1
L , L , L , L , L , L , L , L , L , L , L , L , L , L , L , L , L

donde los subndices indican el nmero de lnea y los superndices el dato o bit de
paridad que se enva por ella.

Calculo de los bits de paridad.-
El bit de paridad de cada lnea (
16 8 4 2 1
L , L , L , L , L ) se obtiene comprobando si el
cmputo total de unos de las lneas que controla es par o impar. Pero veamos que lneas
controla cada lnea de paridad:
Si escribimos el subndice de cada lnea de paridad en forma binaria, observaremos que
tal nmero binario est compuesto por todo ceros excepto un 1 que est en una
determinada posicin dentro del nmero:

,
`

.
|

01000 8
00100 4
00010 2
00001 1
. Pues bien; cada lnea de paridad
controla todos los nmeros de lnea cuya forma binaria tenga un 1 en la posicin donde
lo tiene el nmero de lnea de paridad controladora, incluyendose ella misma.

Para saber qu lneas controla una determinada lnea de paridad se puede lograr
haciendo una operacin AND con el nmero de lnea de paridad y el nmero de cada
una de las lneas. Tal operacin devolver un 1 si la lnea en cuestin debe ser
controlada.

Supongamos que queremos enviar el nmero 483 con paridad PAR. El esquema ser el
siguiente:

Para la paridad PAR los generadores de paridad GP son puertas XOR con tantas
entradas como lneas controle, excluyendo la suya propia (si detecta un nmero impar
de unos a la entrada, devolver un 1, completandose la paridad par); y los
comprobadores de paridad CP son puertas XOR con tantas entradas como su
correspondiente generador mas una (la salida de aquel). Por tanto, si no hay error, el
comprobador detectar un nmero par de unos en sus entradas y devolver cero. Pero si
ocurre un error en una lnea, todos los comprobadores de paridad que la controlen
detectarn un nmero impar de unos en su entrada y generarn un 1 a su salida
configurando entre todos ellos el nmero binario que identifica la lnea donde est el
error.

En este sistema, si se produce el error en la lnea de paridad, solo afectar a un
comprobador de paridad y el nmero resusultante es el nmero de lnea en la que est el
error.
Si se producen 2 errores, informar de que existen pero el nmero resultante indicar
una lnea que no se corresponde con el error.

El envo de datos con paridad IMPAR utilizando el sistema de cdigo Hamming, no lo
hemos estudiado.


LECCION 6.- DISEO DE SISTEMAS DIGITALES COMBINACIONALES.-

PROCESO DE DISEO DE SISTEMAS DIGITALES COMBINACIONALES.-

Para disear un sistema combinacional que realice una tarea especfica, como mtodo
general, se realizarn los siguientes pasos:

1.- Definir las Entradas/Salidas del sistema.- En este punto se considerar con qu
variables vamos a trabajar definiendo para que condiciones cada una de ellas valdr 0
1 y el significado real que tendr cada situacin a la salida de nuestro sistema.

2.- Obtencin de la tabla de verdad del sistema.- Nos aseguraremos que las salidas de la
tabla de verdad cumplen con las exigencias del problema planteado para cada una de las
combinaciones de las variables de entrada.

3.- Simplificacin.- Obtendremos la funcin de salida de nuestra tabla y la
simplificaremos para utilizar el menor nmero de puertas lgicas posible con el fin de
optimizar el rendimiento del sistema.

4.- Sntesis con lgica NAND o NOR.- Adecuaremos nuestra funcin simplificada al
tipo de puertas lgicas disponibles o bien, si disponemos de ambas lgicas, al diseo
que nos proporcione una implementacin ms simplificada.




TEMA 2 SISTEMAS DIGITALES SECUENCIALES

DISEO DE MAQUINAS DE ESTADOS


LECCIN 7. INTRODUCCION.-

Como ya se ha visto, en los circuitos combinacionales, la salida en cualquier
instante del tiempo era exclusivamente funcin de las variables de entrada.

7. 1.- CIRCUITOS SIN HISTORIA FRENTE A CIRCUITOS CON HISTORIA.

Un circuito sin historia, analiza las seales de ent rada en un momento concreto, las
procesa, y devuelve unas salidas en funcin exclusivamente de las entradas procesadas.
Por ejemplo, un pulsador simplemente, enciende la luz cuando se pulsa. Se trata de un
circuito combinacional.

Un circuito con historia, analiza como han sido las entradas o las salidas en un tiempo
anterior y, en funcin de stas y de las entradas actuales, proporciona las salidas. Por
ejemplo, un interruptor, encender la luz si en tiempo anterior estaba abierto, o bin la
apagar si en tiempo anterior estaba cerrado. Se trata de un circuito secuencial.
Analicemos la tabla de verdad del interruptor en la que definimos las siguietes
variables:
A = 0 si no tocamos el interruptor
A = 1 si lo tocamos.
Y = 0 si esta la luz apagada
Y = 1 si la luz esta encendida.

Pero Y no puede tener dos valores para una misma combinacin de datos a la entrada.
Lo que ocurre es que la segunda columna Y es un futurable; es decir, representa lo que
ocurrir en un tiempo posterior a la accin de tocar el interruptor. Por tanto a la ltima
columna la llamaremos Y
*
o bien Y
t+1
.
En el ejemplo anterior se producen dos tipos de situaciones:

- Situacin estable.- Cuando la salida no se modifica con el transcurrir del tiempo (en
nuestro caso, las situaciones (0,0,0) y (0,1,1) ).

- Situacin metaestable.- Cuando la salida se modifica con el trascurrir del tiempo (las
situaciones (1,0,1) y (1,1,0) porque como A=1 quiere decir que se est interveniendo
sobre el interruptor y por tanto la luz va cambiando contnuamente de situacin).

7.2.- CIRCUITO COMBINACIONAL REALIMENTADO. CARACTERSTICAS
FUNDAMENTALES.

Las puertas lgicas, como elementos fsicos reales que son, no ideales, necesitan que
trascurra un tiempo determinado (del orden de l os nanosegundos) desde que se les
proporciona una seal a la entrada hasta que se refleja su resultado en la salida.

A Y Y
0 0 0
0 1 1
1 0 1
1 1 0
Ahora se va a estudiar una disposicin de las puertas lgicas tal, que se va a producir
una realimentacin de la salida en la entrada, de forma que el estado que observemos en
la salida al introducir unos determinados valores a la entrada, va a depender tanto de los
valores introducidos, como del estado que tena la salida en el instante anterior a
producir el cambio. A esta disposicin se le llama Circuito Secuencial.

CIRCUITO SECUENCIAL.- Es un circuito en el que la salida depende de:

- Los valores de la entrada
- Los valores de la salida
- El tiempo
-
) Salida , Entrada ( F Salida
) t ( ) 5 . 0 t ( ) 1 t ( + +


Es decir, partimos de que el circuito
tiene un estado a la salida en un
instante t, e inmediatamente despus, producimos un cambio a la entrada. Entonces el
circuito considera como entradas, tanto el estado que tena en el instante t a la salida,
como el cambio recientemente introducido a la entrada; los opera, y nos devuelve una
nueva salida.

Esta situacin puede producirse porque en las puertas lgicas existe un tiempo
transcurrido (del orden de los nanosegundos) desde que se le aplica una tensin a la
entrada hasta que aparece el resultado en la salida. A ese tiempo de respuesta de la
puerta se le llama tiempo de propagacin.

7.3.- DEFINICIN DE BIESTABLE. TIPOS. TABLAS DE ESTADO.

UNIDADES BASICAS DE MEMORIA. BIESTABLES.-

En una mquina secuencial o mquina de estados hay que mantener un estado
determinado. Para ello se utilizan los circuitos integrados llamados biestables (dos
estados) que es la unidad bsica de almacenamiento de informacin (1 bit) y que es
capaz de proporcionar a la salida el estado en el que se encuentre Q y el estado
complementario a ste /Q.
Tericamente, un biestable podra representarse
con dos inversores conectados como indica la
figura, de forma que el estado inicial de Q y Q
depender del inversor que tenga menor tiempo de
propagacin al suministrale la alimentacin, por
tanto, no podemos controlarlo porque no posee
variables de entrada.

EL BIESTABLE S-R (Set-Reset).-

Prcticamente, el circuito biestable S-R tambin llamado bscula S-R est
implementado con puertas NOR o puertas NAND de forma que tenemos dos entradas y
dos salidas:

- Entrada S de activacin de la salida (set).
- Entrada R de desactivacin de la salida (reset)
- Salida Q
- Inversin de la salida Q

Como el estado de la salida depende tanto del estado anterior de la misma, como de los
valores de S y R, en el momento de suministrarle alimentacin, es impredecible el valor
del estado inicial de Q.

BASCULA S-R CON PUERTAS NOR.-

Su circuito y tabla de verdad se representan en la figura y su funcionamiento es el
siguiente:
- Si ( S=0, R=0 ) entonces Q permanece constante con el valor que tuviera.
- Si ( S=0, R=1 ) entonces Q se desactivar (si estaba activada).
- Si ( S=1, R=0 ) entonces Q se activar (si estaba desactivada).
- Si ( S=1, R=1 ) es un estado no deseseado que nunca debera de producirse.
La bscula no funciona correctamente ya que se le est diciendo que active y
desactive la salida simultneamente (celdas sombreadas de la tabla de
verdad).











t ) 1 t (
t t ) 1 t (
Q S Q
Q S R Q R Q
+
+ + +
+
+


por tanto, en esta bscula, si queremos almacenar un 0 activaremos R, si queremos
almacenar un 1 activaremos S y si no queremos que se modifique no activaremos
ninguna. Y nunca deberamos activar R y S a la vez.

BASCULA S-R CON PUERTAS NAND.-

El funcionamiento es similar al anterior excepto en que en este caso las entradas set y
reset son activas a nivel bajo.
S R Q
(t)
Q
(t+1)
Situacin
0 0 0 0
0 0 1 1
No cambia
la salida
0 1 0 0
0 1 1 0
Reset
R = 1
1 0 0 1
1 0 1 1
Set
S = 1
1 1 0 ?
1 1 1 ?
Indeseable











Para controlar entradas no deseadas en estos circuitos, hay que discriminar el tiempo; es
decir, aadir una seal de control que determine cuando se puede actuar sobre S y R.
Para ello se aade una modificacin al circuito sacando un terminal de control a la
entrada.

BIESTABLE S-R CON ENTRADA DE CONTROL.-

Tambin llamado biestable activo por nivel, este circuito es similar a los anteriores,
pero se le ha aadido otras dos puertas a la entrada de forma que la informacin solo le
llegar a la celdilla S-R cuando la patilla de control C est activada, es decir:

) Q , S , R ( 1) (t
) t ( 1) (t
) t (
f Q 1 C Si
Q Q 0 C Si


+
+

Para las situaciones en las que
C =1 el comportamiento es el
mismo que una bscula S-R con
puertas NAND a la que se le
han colocado sendos inversores
en las entradas S y R.
Es activo por nivel, porque la
celda S-R solo recibe
informacin de entrada cuando la variable C adquiere un deremiando nivel (alto en este
caso).
El anlisis del funcionamiento de este circuito nos lleva a la elaboracin de una tabla de
verdad llamada Tabla de transicin del biestable.

TABLA DE TRANSICION DEL BIESTABLE.-

Es una tabla que refleja el valor de la salida en funcin de las variables de entrada y
de la situacin de la salida en el instante inmediatamente anterior a producirse el
cambio. Permite analizar el biestable como un circuito combinacional realimentado.

S R Q
(t)
Q
(t+1)
Situacin
0 0 0 ?
0 0 1 ?
Indeseable
0 1 0 1
0 1 1 1
Set
S = 0
1 0 0 0
1 0 1 0
Reset
R = 0
1 1 0 0
1 1 1 1
No cambia
la salida
C Seal de control o seal de reloj.
S,R Entrada de datos
Q
(t)
Estado o situacin actual
Q
(t+1)
Estado o situacin siguiente (despus
de producirse el evento).

En estos circuitos hay que distinguir entre dos
situaciones que pueden producirse:

Situacin estable.- Es el perodo de tiempo
en el que Q
(t)
= Q
(t+1)


Situacin inestable.- Es el perodo de tiempo
en el que Q
(t)
Q
(t+1)



SEAL DE CONTROL.-

Como hemos visto, los biestables S-R con seal de control reflejan en la salida los
cambios producidos en la entrada cuando C = 1.
Para controlar cuando debe activarse C se le suminestra una seal peridica
(normalmente cuadrada) de perodo T, como la de la figura siguiente:



Las seales en las que
OFF ON
T T se les llama seales astables.

BIESTABLE TIPO D (Delay-Retardo) CON ENTRADA DE CONTROL.-

Este circuito es similar al anterior pero asegurndonos que las patillas S y R no puedan
tener ambas el mismo estado simultneamente. Para ello se coloca un inversor entre las
mismas.
En esta configuracin
desaparecen las dos primeras y
las dos ltimas situaciones de la
tabla anterior con lo que nos
queda:



Tabla de transicin de un biestable
SR con seal de control

Control

Datos
Estado
Actual
Estado
Siguiente
C S R Q
(t)
Q
(t+1)

0 X X 0 0
0 X X 1 1
1 0 0 0 0
1 0 0 1 1
1 0 1 0 0
1 0 1 1 0
1 1 0 0 1
1 1 0 1 1
1 1 1 0 ?
1 1 1 1 ?
Tabla Tansic. Biestable D
C D Q
(t)
Q
(t+1)

1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 1
0 X X Q
(t)

Es decir, si la seal de control no est activada, los cambios a la entrada no se traducen a
la salida; y si lo est, entonces a la salida tenemos la informacin de la entrada. De ah
lo de retardo.

Estos circuitos an pueden presentar problemas en el control de la informacin, si el
tiempo en el que est activado C coincide con una situacin inestable del circuito, es
decir, si se producen cambios a la entrada cuando C est en T
ON
.
Para solucionarlo se recurre al siguiente montaje que permite que se procese la
informacin exclusivamente en el momento del flanco o cambio de estado de la seal
de control, tambin llamada seal de reloj.

ESTRUCTURA MASTER-SLAVE O SISTEMA DE BIESTABLES ACTIVOS
POR FLANCO.-

En este sistema, se montan dos biestables S-R en serie con las salidas de datos del
primero (master- maestro-) conectadas a las entradas de datos del segundo (slave-
esclavo-), y los dos terminales de control unidos por un inversor, de forma que no
puedan estar activos los dos
simultneamente. De esta forma
obligamos a que, de los distintos
cambios que se produzcan a la
entrada mientras el C del master
est activado, solo se transferir
al slave el estado de salida del
master que hubiera en el preciso
instante del flanco descendente,
pues los restantes, aunque queden
reflejados a la salida del master,
como el slave tiene C desactivado, no pasan a su salida hasta que se produce el flanco
descendente que es cuando el slave se activa, permaneciendo as la salida hasta que se
produzca otro flanco descendente.



Este sistema tambin se puede montar con biestables tipo D de forma que solo tenga
una entrada de datos, con lo que quedara:
Se pueden montar dos
configuraciones del sistema
master-slave:

Activo por flanco
descendente.- Si los cambios se
producen en los flancos de
bajada de la seal de reloj.

Activo por flanco ascendente.- Si los cambios se producen en los flancos de subida de
la seal de reloj.

En los dos dibujos anteriores se ha representado el sistema S-R activo al flanco
descendente y el sistema D activo al flanco ascendente, pero ambos sistemas pueden
presentarse activos a cualesquiera de los dos flancos, simplemente cambiando la
disposicin del inversor de la seal de control.

Un sistema biestables es:
Activo al flanco descendente.- Cuando el biestable master est activo en T
ON

Activo al flanco ascendente.- Cuando el biestable master est activo en T
OFF
.

Cuando los sistemas son activos por flanco, la seal de control suele representarse con
las letras Ck (Clock- o seal de reloj).

CRONOGRAMA.-

Es un diagrama en el que se representa en el eje de abcisas el tiempo transcurrido y en el
eje de ordenadas los distintos estados que presenta una seal en un punto determinado
de un circuito digital.
En el siguiente ejemplo se presenta un cronograma de un sistema de biestables tipo D
activo al flanco descendente de la seal de reloj. Se ha resaltado la seal de entrada D y
la seal de salida Q. Puede observarse el efecto del inversor en la seal de control del
segundo biestable (/Ck) invirtiendo la seal Ck.



Tambin puede apreciarse que la seal de salida presenta el estado de la de entrada en la
bajada del flanco y permanece as independientemente de los cambios a la entrada, hasta
que se produce el siguiente flanco de bajada en la senal Ck.

Por ltimo se observa la evolucin de la seal a la salida del primer biestable y la
entrada del segundo (Q
M
= D
S
). Como se ve, los cambios en la seal de entrada, solo se
reflejan en la etapa intermedia, cuando Ck est activo.

Los sistemas secuenciales controlados por una seal peridica de control de perodo T ,
con tiempos T
ON
y T
OFF
determinados (no tienen porqu ser iguales) se les llama
Sistemas Secuenciales Scronos, pues verdaderamente, sus cambios de estado estn
sincronizados con dicha seal (supeditados a los cambios peridicos de la seal).
Pero tambin el sistema puede controlarse de forma asncrona (independientemente de
los cambios de la seal de reloj), con lo cual sera un sistema secuencial asncrono. O
poner controles asncronos en un sistema secuencial sncrono.


SITUACIONES LOGICAS EN EL ALMACENAMIENTO DE UN DATO.-

La respuesta de un circuito secuencial ofrece cuatro situaciones posibles:
SITUACION ENTRADA SALIDA
Poner un 0 a la salida independientemente de la entrada X 0
Poner un 1 a la salida independientemente de la entrada X 1
Dejar la salida almacenada Q(t) Q(t)
Invertir la salida almacenada Q(t) /Q(t)

Importante: A partir de ahora, cuando hablemos de un biestable, en realidad nos
estaremos refiriendo a una estructura master-slave o sistema de biestables activos por
flanco con una seal de reloj peridica que ir cambiando y produciendo las
transformaciones pertinentes en el sistema en el momento del flanco.

La seal de reloj no ser considerada porque la suponemos absolutamente necesaria.
Siempre supondremos que en el biestable se producen cambios en la seal de reloj.

En las tablas no se pondr la seal de control (reloj) C porque ya sabemos que las
transformaciones de la entrada solo se traducen a la salida en el momento del flanco y el
resto del tiempo se sobreentiende que, al no producirse cambios en la salida, Q(t+1) =
Q(t) .


EL BIESTABLE J-K.-

Es una modificacin del biestable R-S de forma que se puedan cumplir las cuatro
situaciones lgicas posibles anteriores actuando sobre las
entradas J y K.
El comportamiento del biestable es el siguiente:
- Si J y K tienen distinto valor, la salida tendr el valor
de J.
- Si J y K tienen igual valor, la salida se invertir si el
valor en ambas es 1.
) t ( ) 1 t (
) 1 t (
) 1 t (
) t ( ) 1 t (
Q Q 1 K , 1 J
1 Q 0 K , 1 J
0 Q 1 K , 0 J
Q Q 0 K , 0 J




+
+
+
+

Su funcin de transicin, deducida de la tabla es :
t t 1 t
Q K Q J Q +
+

El nombre comercial del circuito integrado que lleva este tipo de biestable activo por
flanco descendente de la seal de reloj es 7473.

Tabla transic. J-K
J K Q(t) Q(t+1)
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 0
TABLA DE EXCITACIN DEL SISTEMA.-

En ella se presenta el valor a dar a las variables de
entrada en funcin de la situacin existente en la
salida y la situacin a la que queremos llegar en la
misma. La idea es Qu tengo que poner a la entrada
si a la salida quiero tener una situacin determinada.
Aqu se muestra la tabla de excitacin del biestable J-
K donde la X significa no importa qu valga y en el apartado siguiente se presenta la
de un biestable tipo D.

Las tablas de excitacin del sistema pueden obtenerse fcilmente de sus tablas de
transicin, observando los valores impuestos a las entradas para obtener cada una de sus
salidas. Por ejemplo, para el J-K observamos que el valor de la salida lo determina J si
tenemos en el instante anterior un 0 y /K si lo que haba era un 1, para cualesquiera
valores X (no importa) de la otra variable.


TRANSFORMACION DE UN BIESTABLE TIPO D A UN BIESTABLE J-K.-
Si obtenemos las tablas de excitacin de ambos biestables a partir de sus respectivas
tablas de transicin, tenemos:

Para obtener el biestable J-K deseado a partir del biestable
tipo D, bastar realizar un circuito combinacional que
partiendo de las entradas J y K que figuran como salidas en la
tabla de excitacin anterior, proporcione la salida D que figura
en la tabla de excitacin del tipo D.
El circuito combinacional sera: Q K Q J D +
Aqu se representa el esquema combinacional correspondiente a esa funcin:



TRANSFORMACION DE UN BIESTABLE J-K A UN BIESTABLE TIPO D.-

Bastar con poner un inversor a la entrada entre las patillas J
y K para hacer K = /J con lo cual se eliminan las dos
situaciones de la tabla de transicin del JK en las que las
variables tienen valores idnticos.




Tabla excitacin J-K
Q(t) Q(t+1) J K
0 0 0 X
0 1 1 X
1 0 X 1
1 1 X 0
Tabla excitacin D
Q(t) Q(t+1) D
0 0 0
0 1 1
1 0 0
1 1 1
BIESTABLE TIPO T (Toggled-intercambio).-

Se obtiene a partir del biestable JK uniendo sus dos terminales. Su funcionamiento es
como sigue:

Si T est inactiva, conserva el dato que tuviera y si est activa, lo invierte.






ENTRADA ASNCRONA DE UN BIESTABLE.-

Podemos necesitar poner la salida de un biestable en un estado determinado en un
momento concreto independientemente de la seal de reloj. Para ello se habilitan
entradas asncronas. Existen dos tipos de entradas asncronas:

- Entrada PRESET.- Almacena un 1 en Q independientemente de Ck
- Entrada CLEAR.- Almacena un 0 en Q independientemente de Ck.

En la figura se muestra el esquema de un biestable tipo D con entradas preset y clear..

Este sistema ya aparece integrado en una pastilla de silicio con nombre comercial 7474.

Los terminales preset y clear se obtienen de la tercera patilla de las puertas lgicas de
tres entradas de la celdilla S-R del sistema esclavo.

Si no deseamos utilizar las entradas asncronas, llevaremos ambas a Vcc.


Tabla Transic. TIPO T
T Q(t) Q(t+1)
0 0 0
0 1 1
1 0 1
1 1 0
Tabla Excit. TIPO T
Q(t) Q(t+1) T
0 0 0
0 1 1
1 0 1
1 1 0
REPRESENTACION SIMBOLICA DE BIESTABLES.-

Los sistemas biestables suelen representarse esquemticamente como en la siguiente
figura en la que se puede adivinar si el sitema es activo por flanco por el tringulo que
aparece en la entrada Ck o bin activo por nivel si no tiene tringulo.

Si tiene tringulo, un circulito pegado a l significa activo al flanco descendente y la
carencia del mismo, activo al flanco ascendente; y si no tiene trinagulo, el circulito
significa activo por nivel bajo, y la carencia de l, activo por nivel alto.

El circulito tambin puede aparecer en las entradas del biestable. En ese caso, significa
que la activacin de la entrada es con un 0 lgico. Hay autores que adems del circulo,
ponen un superrayado sobre el nombre de la variable de entrada indicando que es activa
por nivel bajo, aunque a mi no me parece correcto porque sera complementar dos veces
la misma variable y por tanto dejarla como estaba.

Lo dicho para las variables de entrada tambin es vlido para las de salida aunque en
stas, en la mayora de los casos, se prescinde del circulo y solo se superraya la variable.




En todos los biestables activos por flanco, si no hay cambio en la seal de reloj, no se
reflejan a la salida los cambios producidos a la entrada.

LECCIN 8.- MAQUINAS DE ESTADOS.

8. 1.- DEFINICIN Y CONCEPTO DE MQUINA DE ESTADOS.
Una mquina de estados es una estructura compuesta por circuitos combinacionales y
circuitos secuenciales que realiza una tarea especfica. Para relizar su tarea, ir pasando
por una serie de situaciones internas (estados) basadas en la informacin externa y en la
informacin previamente almacenada y proporcionar a su salida una serie de resultados
que sern aprovechados para realizar la tarea en cuestin.
Desde la mas simple hasta la mas compleja, toda mquina de estados est compuesta
por tres bloque perfectamente definidos: BLES, ME y BLS.



BLOQUE LOGICO DEL ESTADO SIGUIENTE (BLES).-
Se trata de un bloque con un circuito combinacional que recibe la informacin de
entrada y la prepara para el estado siguiente t+1 (por ejemplo incrementandola en una
unidad).

MEMORIA DE ESTADOS (ME).- Es un bloque secuencial compuesto por biestables
de los vistos anteriormente que se encarga de almacenar el estado actual de las variables
en proceso.

BLOQUE LOGICO DE SALIDA (BLS).- Es un bloque combinacional que procesa la
informacin de salida de la memoria de estados haciendola apta para ser utilizada por el
sistema de salida (display, actuador, rel, etc.).

Existen mquinas de estados asncronas que no se vern en este curso, cuya memoria de
estados tiene habilitadas para su utilizacin las entradas preset y clear. Nosotros
trabajaremos exclusivamente con mquinas de estados sncronas cuyos biestables son
activos por flanco.

8.2.- TIPOS DE MQUINAS DE ESTADOS (MEALY Y MOORE).
Bsicamente, existen dos tipos de mquinas de estados, dependiendo de la informacin
que reciba el BLS.

Mquina de Moore.- El BLS recibe informacin exclusivamente de la memoria de
estados.


Mquina de Mealy.- El BLS recibe informacin de la memoria de estados y puede
llegarle tambin informacin externa al la ME.



LECCIN 9.- DISEO DE SISTEMAS SECUENCALES.

9. 1.- INTRODUCCIN.

En el estudio de sistemas secuenciales (como en cualquier sistema) se nos puede
presentar la realizacin de un trabajo de sntesis (diseo de la mquina de estados
conociendo previamente el comportamiento que debe tener) o de anlisis (anlisis del
comportamiento de la mquina si conocemos la configuracin de la misma).

A la hora de disear (sntesis) un sistema secuencial o mquina de estados que realice
una funcin especfica, deberemos considerar los siguientes puntos:

1.- Obtencin del diagrama de estados y la tabla de estados primaria.
- Identificar el funcionamiento del sistema
- Saber cada estado actual, el siguiente a cada uno de ellos, y el nmero de estados
totales.
- Definir el CSS (Circuito secuencial sncrono).

2.- Realizar una asignacin de estados.
- Cada nemnico de la tabla de estados primaria tiene una correspondencia con un valor
de la memoria de estados.

3.- Implementar el BLS.

4.- Definir el tipo de biestable a utilizar y en base a l realizar el diseo del BLES.
- Cuantas salidas tiene el BLES
- Tabla de transicin del conjunto
- Tabla de excitacin a partir de la de transicin.
- Ecuaciones de excitacin a partir de la tabla de excitacin.

A la hora de analizar (anlisis) un sistema secuencial, deberemos considerar:

1.- Si se trata de una mquina de Moore o una mquina de Mealy.

2.- Realizar el diagrama de bloques nombrando las entradas y las salidas de cada uno de
los bloques.

3.- Realizar la tabla de transicin analizando los componentes del circuito.

4.- Realizar la tabla de excitacin partiendo de la de transicin.

5.- Con las tablas, obtener la tabla de estados primaria.

6.- Obtencin de la tabla de verdad del BLS siguiendo el circuito.

9.2.- ANLISIS Y DISEO DE UNA MAQUINA DE ESTADOS SNCRONA.

9.2.1.- DISEO (SINTESIS).-

Supongamos que queremos implementar un contador cclico de
mdulo 4 ascendente o descendente dependiendo del valor de una
entrada externa C, que cuente los nmeros pares del 0 al 6
iluminando un display de 7 segmentos.

1.- DIAGRAMA DE ESTADOS.-

Un diagrama de estados de un circuito secuencial, es un diagrama
en el que se representan los distintos estados que puede almacenar
la ME y como se modifican dichos estados con el tiempo. Los
estados se nombran como
n 1 0
S ,..., S , S encerrados en un crculo y el paso de un estado al
siguiente se representa con una flecha que parte de un estado y apunta al estado
siguiente.

Su realizacin es importante y debe obedecer al sentido comn. Partiendo de un estado
inicial, pensar en qu tiene que hacer la mquina en cada cambio en la seal de reloj e ir
definiendo nuevos estados, regreso a estados anteriores, o permanencia en el mismo
estado para cada combinacin de las variables de entrada.

Para nuestro ejemplo, tenemos 4 estados (
3 2 1 0
S , S , S , S ) pues el mdulo del contador es
4. Tales estados y la transicin entre los mismos obedece a un grafo que representamos
en el diagrama siguiente:


Como no se especifica nada al respecto, decidimos que si C=0 el contador es ascendente
y si C=1 es descendente.

TABLA DE ESTADOS PRIMARIA.-

Es una tabla en la que se definen cada estado actual y cada estado siguiente del sistema
en funcin de las variables de entrada.
Se realiza partiendo del diagrama de estados y es una representacin tabular de ste.
Adems se analiza el valor de las salidas para cada una de las combinaciones de entrada.
La columna Salida muestra el
significado de cada estado
actual. El BLS tendr que
servirse de las salidas que
proporcione la ME para cada
uno de los estados definidos, y
hacer las transformaciones
pertinentes para encender los
diodos necesarios de los 7
que posee el display.
Las salidas que tenga cada
biestable de la ME, se
definirn en la asignacin de estados.

DEFINICION DEL CSS.-

Como tenemos 4 estados, necesitaremos 2 variables binarias (A
0
,A
1
); es decir, 2
biestables.

2.- ASIGNACION DE ESTADOS.-

Le asignamos a cada estado, la combinacin que queremos tener a la salida de cada
biestable. La asignacin es arbitraria, con tal de que no se repita la misma asignacin a
dos estados distintos.
Es tarea del BLS el transformar las salidas de la ME en la combinacin real que necesito
para iluminar los diodos del display.
Por hacerlo mas intuitivo hemos asignado a cada estado su
subndice en SBN, pero podramos haberlo hecho de cualquier otra
forma con tal de no repetir la misma asignacin en dos estados.
As, el biestable A
0
tendr su salida Q a cero para los dos primeros
estados y a uno para los dos ltimos, y el biestable A
1
tendr su
salida Q a cero para los estados pares y a uno para los impares.

3.- IMPLEMENTACION DEL BLS.-

Como ya sabemos los valores que tendrn las variables de la ME para cada estado y
sabemos la codificacin del display, lo siguiente es hacer una correspondencia entre la
salida de la ME y la salida real.







Con esta tabla, elaboramos la funcin combinacional del BLS como se haca en el tema
primero con cualquier tabla de verdad:

Estado
Siguiente
Salida Display Estado
Actual
C=0 C=1 S

a b c d e f g
S
0
S
1
S
3


1 1 1 1 1 1 0
S
1
S
2
S
0


1 0 1 1 0 1 1
S
2
S
3
S
1


0 1 0 0 1 1 1
S
3
S
0
S
2


1 1 1 1 1 0 1
Estado Q
0
Q
1
S
0
0 0
S
1
0 1
S
2
1 0
S
3
1 1
Estado Q
0
Q
1
a b c d e f g
S
0
0 0 1 1 1 1 1 1 0
S
1
0 1 1 0 1 1 0 1 1
S
2
1 0 0 1 0 0 1 1 1
S
3
1 1 1 1 1 1 1 0 1
1 0 1 0 1 0
1 0 1 0 1 0
1 0 1 0 1 0
1 0 1 0 1 0
Q Q Q Q Q Q g
Q Q Q Q Q Q f
Q Q Q Q Q Q e b
Q Q Q Q Q Q d c a
+ +
+ +
+ +
+ +
y simplificando:
1 0 1 0
1 0 1 0
1 0 1 0
1 0 1 0
Q Q Q Q g
Q Q Q Q f
Q Q Q Q e b
Q Q Q Q d c a
+
+
+
+


por tanto, el circuito del BLS ser:



DEFINICION DE LOS BIESTABLES A UTILIZAR Y DISEO DEL BLES.-

Supongamos que para este diseo disponemos de biestables tipo D, por ejemplo los dos
que se encuentran en el CI DM7474.

TABLA DE TRANSICION DEL SISTEMA.-

Se trata de elaborar una tabla de transicin como la de un biestable, pero refiriendonos a
todo el sistema. Es decir, una tabla en la que, partiendo de una situacin a la salida en el
estado actual, y unas variables de entrada, especifiquemos el estado siguiente
basandonos en la asignacin de estados previamente hecha.

Estado actual Estado Siguiente C
Nemnico Q
0
t
Q
1
t
Nemnico Q
0
t+1
Q
1
t+1

0 S
0
0 0 S
1
0 1
0 S
1
0 1 S
2
1 0
0 S
2
1 0 S
3
1 1
0 S
3
1 1 S
0
0 0
1 S
0
0 0 S
3
1 1
1 S
1
0 1 S
0
0 0
1 S
2
1 0 S
1
0 1
1 S
3
1 1 S
2
1 0

TABLA DE EXCITACIN DEL SISTEMA.-

Al igual que la tabla de transicin, se elabora como la tabla de excitacin de un solo
biestable, pero para todo el conjunto, definiendo qu deben haber valido las variables de
entrada en el estado anterior en funcin de los valores del estado actual. Es una
ampliacin de la tabla anterior.

Estado actual Estado Siguiente Entradas en
Estado
Actual
C
Nemnico Q
0
t
Q
1
t
Nemnico Q
0
t+1
Q
1
t+1
D
0
D
1
0 S
0
0 0 S
1
0 1 0 1
0 S
1
0 1 S
2
1 0 1 0
0 S
2
1 0 S
3
1 1 1 1
0 S
3
1 1 S
0
0 0 0 0
1 S
0
0 0 S
3
1 1 1 1
1 S
1
0 1 S
0
0 0 0 0
1 S
2
1 0 S
1
0 1 0 1
1 S
3
1 1 S
2
1 0 1 0

El planteamiento es: Si en el estado anterior estado actual la salida del biestable tena
tal valor, y en el estado actual estado siguiente tiene tal otro, Qu valor tena la
entrada para que se haya producido ese cambio?.
En nuestro caso, como se trata de biestables tipo D, las entradas tenan el mismo valor
que se manifiesta en t+1 ya que el biestable D solo produce un retardo de la seal de
entrada cuando recibe el flanco. Pero si hubisemos implementado con otro biestable, el
resultado sera distinto.
Con esta tabla queda perfectamente definido el BLES. Veamos porqu:
Las salidas siguientes son funcin de la entrada externa y las salidas actuales:
) Q , Q , C ( f Q
) Q , Q , C ( f Q
t
1
t
0 1
1 t
1
t
1
t
0 0
1 t
0

+
+

Las funciones f
0
y f
1
son:
t
1
t
0
t
1
t
0
t
1
t
0
t
1
t
0
1 t
1
t
1
t
0
t
1
t
0
t
1
t
0
t
1
t
0
1 t
0
Q Q C Q Q C Q Q C Q Q C Q
Q Q C Q Q C Q Q C Q Q C Q
+ + +
+ + +
+
+

y simplificando:
t
1
1 t
1
t
1
t
0
t
1
t
0
t
1
t
0
t
1
t
0
1 t
0
Q Q
Q Q C Q Q C Q Q C Q Q C Q

+ + +
+
+

Y de la tabla tambin obtenemos las entradas en funcin de las salidas siguientes
verificandose que:
t
1
1 t
1 1
t
1
t
0
t
1
t
0
t
1
t
0
t
1
t
0
1 t
0 0
Q Q D
Q Q C Q Q C Q Q C Q Q C Q D

+ + +
+
+

Si disponenos de puertas NAND para realizarlo:
t
1 1
t
1
t
0
t
1
t
0
t
1
t
0
t
1
t
0 0
Q D
Q Q C Q Q C Q Q C Q Q C D



Por tanto, ya tenemos el circuito combinacional que identifica el BLES.
Con esto, el contador queda perfectamente definido para mltiples usos simplemente
haciendo la implementacin correcta del BLS para cada uso. Por ejemplo, en lugar de
contar nmeros pares, podra contar nmeros consecutivos entre el 100 y el 103, o
encender luces con cualesquiera 4 combinaciones distintas, etc.

El esquema completo se muestra en la figura siguiente:



9.2.2.- ANALISIS.-

1.- Si se trata de una mquina de Moore o una mquina de Mealy.

2.- Realizar el diagrama de bloques nombrando las entradas y las salidas de cada uno de
los bloques.

3.- Realizar la tabla de transicin analizando los componentes del circuito.

4.- Realizar la tabla de excitacin partiendo de la de transicin.

5.- Con las tablas, obtener la tabla de estados primaria.

6.- Obtencin de la tabla de verdad del BLS siguiendo el circuito.



GLOSARIO.-

Estado.- Situacin que se produce o est almacenada.

Circuito combinacional.- Circuito en el que la salida en cualquier instante t es
exclusivamente funcin de los valores de entrada.

Circuito Secuencial.- Circuito en el que la seal de salida en cualquier instante depende
de :
- Los valores de entrada.
- Los valores de la salida.
- El tiempo.

Seal de Control o seal de reloj.- Seal elctrica que marca la situacin en la que se
puede o no cambiar de estado.

Circuito Secuencial Sncrono.- Circuito secuencial en el que se interacta solo cuando
lo permite la seal de control.

Circuito Secuencial Asncrono.- Circuito secuencial en el que se puede interactuar
independientemente de la seal de control.

Entrada Sncrona de un circuito secuencial Asncrono.- Terminal de entrada controlado
por la seal de control.

Entrada Asncrona de un circuito secuencial Asncrono.- Terminal de entrada en el que
se puede actuar independientemente de la seal de control.

Biestable o unidad bsica de memoria.- Circuito que puede almacenar dos estados
posibles (1 bit).

Circuito Triestado.- Circuito que puede presentar tres estados: 1 lgico, 0 lgico y Alta
impedancia.

Tiempo de propagacin o de proceso.- Tiempo transcurrido entre la aplicacin de una
seal de entrada a un circuito, y la obtencin de la seal resultado que produce.

Seal Astable.- Seal perdica en la que el nivel alto y el nivel bajo valen un
semiperodo. Es decir, cuando
OFF ON
T T

TEMA 3 CIRCUITOS COMBINACIONALES TIPO O ESTANDAR MSI (Media
Escala de Integracin)


INTRODUCCION.-
Los fabricantes, ante la evidencia de ciertos tipos muy comunes de
implementaciones de diseos lgicos concretos, han optado por integrar los mismos en
pastillas de silicio de forma que ofrezcan soluciones a determinados problemas digitales
abaratando as el producto final. Tanto es as, que la cantidad de puertas lgicas por
centmetro cuadrado, se ha convertido en una medida del grado de capacidad de trabajo
de un circuito integrado.
As aparecen los componentes integrados clasificados en categoras segn el grado de
integracin (LSI, MSI, HSI, VHSI) (Baja escala de integracin, Media escala de
integracin, Alta escala de integracin, Muy Alta escala de integracin).

LECCIN 10.- CIRCUITOS COMBNACIONALES TIPO.

En funcin de su aplicacin, los circuitos combinacionales, pueden clasificarse en:
Aritmticos
Sumadores de Acarreo Anticipado
Comparadores
ALUs
Selectores de Datos
Multiplexores y Demultiplexores
Cambiadores de Cdigo
Codificadores y Decodificadores


10. 1.- C.C. ARITMETICOS:EL SEMISUMADOR Y EL SUMADOR.

El circuito combinacional semisumador y el sumador total se vieron en la leccin 4
Aritmtica Binaria. El primero tena el inconveniente de que aunque generaba un
acarreo, no era capaz de aceptar el acarreo proveniente de otro semisumador.

El sumador total s est preparado
para ello, pero tiene algunos
inconvenientes cuando se coloca
en cascada:
Por un lado, el tiempo de
propagacin de las puertas de
cada sumador no es nulo y como
cada sumador necesita los datos
correctos del anterior, resulta que
el tiempo de operacin total es n
veces el tiempo de operacin de
una celdilla sumadora total, siendo n el n de celdillas:
i
n
1 i
i op
Tp n Tp T


de forma que puede ser considerable si el nmero de celdillas es elevado.
Por otro lado y ms importante es que durante la operacin, al estar alimentadas
simultneamente, las celdillas sumadoras van pasando por una serie de estados
intermedios que producen resultados incorrectos a la salida hasta que se completa la
suma, con el consiguiente riesgo si se lee antes de que la opracin est completada.

Supongamos la suma binaria S=(A+B)=(1011+0101).

Al comienzo de la operacin, todos los acarreos C
-1
estn a 0. En le primer ciclo de
operacin, el resultado de la suma es (1110) ya que los acarreos son todos nulos; la
celdilla menos significativa genera un 1 en el acarreo C, y las dems un 0.

4 4 4 4 3 4 4 4 4 2 1 4 4 4 4 3 4 4 4 4 2 1 4 4 4 4 3 4 4 4 4 2 1 4 4 4 4 3 4 4 4 4 2 1
REALIZADA SUMA
1 1 1
1 1 1 0 1
3 CICLO
1 1 1 0
1 1 0 0 1
2 CICLO
1 1 0 0
1 0 0 0 1
1 CICLO
1 0 0 0
0 0 0 0 1
1 C
0 0 0 0 S
1 0 1 0 B
1 1 0 1 A
C
C
0 0 0 1 S
1 0 1 0 B
1 1 0 1 A
C
C
0 0 1 1 S
1 0 1 0 B
1 1 0 1 A
C
C
0 1 1 1 S
1 0 1 0 B
1 1 0 1 A
C



En el siguiente ciclo, los acarreos generados pasan a ser sumandos C
-1
, y por tanto la
suma es (1100) y as sucesivamente, hasta que en el 4 ciclo se completa la suma.

Para evitar este inconveniente se ide un circuito combinacional que proporcionara a las
celdillas sumadoras totales los acarreos antes de realizar la operacon, de forma que en
un nico ciclo se completa la suma. El tiempo de operacin no difiere mucho del
empleado en el montaje en cascada, pues el ahorrado en los ciclos de operacin se
emplea en el clculo de los acarreos, pero el riesgo de un resultado erroneo se elimina.
Este tipo de montaje se expone en el apartado siguiente.

SUMADOR DE ACARREO ANTICIPADO.- Se trata de n celdillas sumadoras totales
puestas en paralelo las cuales reciben el acarreo no de la celdilla previa, sino de un
circuito combinacional que, sirviendose de los sumandos, es capaz de proporcionarselo
a todas a la vez como se muestra en el grfico.



Efectivamente, los acarreos de una suma binaria pueden ser calculados conociendo los
sumandos sin necesidad de conocer el resultado de la suma.

Si nos fijamos en la tabla de verdad del sumador total, y consideramos n
) S , S ,..., S ,..., S , S (
0 1 i i n n
sumadores totales puestos en cascada, el acarreo generado por
un sumador cualquiera ser:
{
i 1 i i i
P
i i 1 i
G
i i i
i i 1 i
i
i 1 i i i i
1 i i i 1 i i i 1 i
i
i 1 i i
i
i
P C G C
B A C ) B A ( C
B A C B A C B A C
C B A C B A C B A C B A C
i i
+

'

+
+ +
+ + +



43 42 1

Por tanto, tenemos que:

n 1 n n n
2 1 0 1 0 1 2 2 1 2 2
1 0 1 0 1 1 0 1 1
0 1 0 0
P C G C
....
P ) P ) P C G ( G ( G P C G C
P ) P C G ( G P C G C
P C G C
+
+ + + +
+ + +
+



Y consecuentemente, la celda de procesamiento puede generar los acarreos antes de que
se realice la suma.

Curiosidad:

4 4 3 4 4 2 1 4 4 3 4 4 2 1
2 Expresin 1 Expresin
) B A ( C AB ) B A ( C AB + + +
Demostracin:
Expresin 1:
+ + + + CB CA AB ) B A ( C AB
BC AC AB ) B A ( C AB + + + +

+ + + + + + + +
+ + + + + + + + +
+ +
+ +
CA CB AB ) A B ( C AB ) A B B ( C AB B CA BC BA
B CA ) C A ( B B CA ) C A A ( B B CA B A C AB ) B A B A ( C AB ) B A ( C AB
A B ) A B B ( C
C A ) C A A ( B
3 2 1 43 42 1
3 2 1 43 42 1

BC AC AB ) B A ( C AB + + +
por tanto las dos expresiones son equivalentes. Y si esto es as, entonces, en el
generador de acarreos del sumador con acarreo anticipado, el elemento Gi da igual que
sea una puerta XOR que una puerta OR.


RESTA CON COMPLEMENTO
(Desarrolar)

COMPARADORES
Son dispositivos que comparan dos cifras de n bits y determinan cual de ellas es mayor
o si son iguales.
Estos dispositivos suelen tener salidas a nivel bajo.
Por ejemplo, si A y B son dos variables de 2 bits la tabla de verdad es la siguiente:













10.2.- SELECTORES DE DATOS: MULTIPLEXORES Y DEMULTIPLEXORES
Los selectores de datos se comportan como un conmutador, con la diferencia de que
estn controlados digitalmente.


MULTIPLEXORES
Son dispositivos que constan de varias entradas de datos, varias entradas de control y
una nica salida. Las entradas de control determinan cul de las entradas de datos se
conecta a la salida.
Si un multiplexor tiene n entradas de control, tendr 2
n
entradas de datos. En cada
momento se conectar a la salida la entrada cuyo ndice sea el nmero binario
introducido por las entradas de control.
Est compuesto por tantas puertas AND como entradas de datos tenga, conectadas todas
a una puerta OR que proporciona la salida.
A
1
A
0
B
1
B
0
A>B A=B A<B
0 0 0 0 1 0 1
0 0 0 1 1 1 0
0 0 1 0 1 1 0
0 0 1 1 1 1 0
0 1 0 0 0 1 1
0 1 0 1 1 0 1
0 1 1 0 1 1 0
0 1 1 1 1 1 0
1 0 0 0 0 1 1
1 0 0 1 0 1 1
1 0 1 0 1 0 1
1 0 1 1 1 1 0
1 1 0 0 0 1 1
1 1 0 1 0 1 1
1 1 1 0 0 1 1
1 1 1 1 1 0 1
Las puertas AND son de tantas entradas como entradas de control tenga el multiplexor
mas una. Las entradas de cada puerta AND estn conectadas cada una a una entrada de
control o a su negada de forma que las conexiones configuran el nmero binario que
identifica la puerta. La entrada sobrante de cada puerta es la correspondiente entrada de
datos como se muestra en la figura.

Tambin suelen tener los multiplexores una entrada de inhibicin que cuando se activa,
proporciona a la salida un 0 independientemente de qu entrada de datos est
seleccionada. Si existe, esta entrada est conectada a una entrada adicional de cada
puerta AND.

Como se adivina observando el equema, la funcin de salida del multiplexor de 4
entradas es:
1 0 3 1 0 2 1 0 1 1 0 0
S S I S S I S S I S S I S + + +

Es decir, cada sumando de la suma de minterms est compuesto por una entrada de
datos y todas las entradas de contol, negadas o no, de forma que configuren el nmero
binario que representa el subndice de la entrada de datos. As:

{{
{
{{
{
{{
{
{{
{
3 2 1 0
I 3
1
1
1
0 3
I 2
0
1
1
0 2
I 1
1
1
0
0 1
I 0
0
1
0
0 0
S S I S S I S S I S S I S

+ + +


La tabla de verdad del multiplexor de 4 entradas tiene 64 2
) 2 4 (

+
filas pero queda muy
reducida (a 8 filas), si tenemos en cuenta que los
datos de las entradas de datos no seleccionadas no
importan en la salida.

Existen gran variedad de multiplexores en el
mercado. No obstante, combinando multiplexores
podemos obtener un multiplexor de cualquier
nmero de entradas. Por ejemplo, en el esquema se
muestra como se consigue un multiplexor de 32
entradas de datos, con dos multiplexores de 16
entradas y uno de 2 entradas

I3 i2 i1 i0 S1 S0 S
x x x 0 0 0 0
x x x 1 0 0 1
x x 0 x 0 1 0
x x 1 x 0 1 1
x 0 x x 1 0 0
x 1 x x 1 0 1
0 x x x 1 1 0
1 x x x 1 1 1


IMPORTANTE:
Cualquier sistema de n variables puede implementarse con:
- Un multiplexor de n entradas de control.
- Un multiplexor de (n-1) entradas de control y un inversor.

Por ejemplo: Implementar la siguiente funcin usando un multiplexor con dos entradas
de control (7488).
C B A BC A C B A C B A F + + +

Como tenemos 3 variables y solo tenemos 2 entradas de contol, asignaremos 2 de las
variables a las entradas de control y la otra la pondremos en dos entradas de datos
(ahora veremos cuales), intercalando un inversor.
Primero, hagamos la tabla de verdad del multiplexor, asignandole 2 de las variables a
sus entradas de control:

Para cada una de las combinaciones A y B, la variable C solo puede
tomar uno de sus 2 valores posibles (0,1) y sabemos qu entrada de
datos se conecta a la salida para cada combinacin de A y B. Ahora se
trata de poner la variable C en las entradas de datos correspondientes de
forma que la salida S cumpla la funcin. Si ampliamos esta tabla de
forma que aparezca la variable C , y hacemos la salida igual a la
funcin, tenemos :

Comparando el valor de C on el de la
funcin de salida, observamos que para las
dos primeras filas est seleccionada la
entradad de datos I
0
y tanto C como la
salida tienen el mismo valor, por tanto
C I
0
. Para las dos siguientes
1 I
1
porque la funcin vale 1
independientemente del valor de C.
En las filas 5 y 6, C I
2
porque la funcin
toma valores complementarios a la
variable C y por ltimo 0 I
3
porque la funcin vale 0 independientemente del valor de
A B
S
1
S
0
S
0 0 I
0

0 1 I
1

1 0 I
2

1 1 I
3

A B C F
S
1
S
0

I
Sel. S
Valor de las
entradas de datos
0 0 0 0
0 0
I
0

I
0
1 1

I
0
= C
0 1 0 1
0 1
I
1

I
1
1 1

I
1
= 1
1 0 0 1
1 0
I
2

I
2
1 0

I
2
= /C
1 1 0 0
1 1
I
3

I
3
1 0

I
3
= 0
C. As pues, colocando la variable C en I
0
, un inversor entre I
0
e I
2
, y conectando I
1
a
Vcc e I
3
a masa, el multiplexor hace exactamente la misma funcin que el circuito
combinacional que la identifica.

Si el multiplexor tiene las mismas entradas de control que variables tiene nuestra
funcin, entonces obtendremos de la misma forma, que todas las entradas de datos
estarn puestas a masa o Vcc de forma que se cumpla la funcin (no tenemos que
asignar ninguna variable a las entradas de datos).


DEMULTIPLEXORES.

Son dispositivos que constan de una entrada de datos, varias entradas de control y varias
salidas. Su funcionamiento es similar al de un commutador:
Las entradas de control determinan a qu salida se conecta la entrada de datos en cada
momento.

10.3.- CAMBIADORES DE CODIGO: CODIFICADORES Y
DECODIFICADORES.
En el tratamiento de la informacin digital, tenemos que traducir una informacin de
entrada proveniente de una interfaz a un cdigo binario que podamos procesar. A ese
proceso se le denomina codificacin. Y una vez procesada la informacin tenemos que
traducirla nuevamente para que pueda interpretarla la interfaz de salida y mostrarnos el
resultado. A ese proceso se le denomina decodificacin.


CODIFICADORES.-
Son circuitos combinacionales con hasta
n
2 entradas y n salidas relizados de forma que
cuando una sola entrada adopta un estado lgico (0,1), a la salida aparece la
combinacin binaria correspondiente al nmero decimal asignado a dicha entrada.
Por ejemplo, un codificador de teclado decimal a SBN tendr 10 entradas (0 ... 9) y 4
salidas (4 bits para representar el nmero).
Normalmente todos los codificadores, cuando no se pulsa una tecla, tienen todas las
salidas puestas a 1.
Hay dos tipos de codificadores respecto a la pulsacin de varias teclas a la vez
(activacin de varias entradas):
- Codificadores con prioridad: Siempre dan a la salida el valor de la entrada mas alta
cuando se activan varias a la vez.
- Codificadores sin prioridad: El resto de las entradas son estados no importa ( Ver el
libro Floid).
Todos los codificadores tienen una entrada Enable y una entrada Strobe. Si aplicamos
un 0 a Enable o a Strobe, el circuito no funciona, es decir siempre proporciona la misma
salida (L,H Z; donde L=0,H=1,Z=Alta impedancia) independientemente de la entrada
que activemos.

DECODIFICADORES.-
Realizan el proceso inverso a los codificadores, es decir tienen n entradas y hasta
n
2
salidas de forma que dependiendo de las entradas que se activen, habilita las salidas
correspondientes que activan el interfaz de salida para el que est diseado.
Algunos tipos de decodificadores son:
- Base 4
- Base 8
- 7 Seggmentos
- Decimal
- Hexadecimal

Decodificador con 2 entradas y 4 salidas (Base 4).-
Su tabla de verdad sera:








Decodificador de 7 segmentos.-
La configuracin de un display de y segmentos puede ser en nodo comn o en ctodo
comn. En la de nodo comn, hace falta un decodificador con salidas activas a nivel
bajo (7448) y para la de ctodo comn un decodificador con salidas activas a nivel alto
(7447).

Tambin hay decodificadores en hexadecimal para 7 segmentos, ya que las letras
A,B,C,D,E,F tambin se pueden representar con este display.

Adems de las entradas de datos, tambin tienen las siguientes entradas de control,
activas a nivel bajo:
- LT (Lamp Test Chequeo de lmparas).- Cuando se activa, activa todas las salidas
simultneamente.
- RBI (-------B Input) .- Esta entrada de control determina si el pin BI/RBO funciona
como entrada (BI) o como salida (RBO).

'

'

'

'

e normalment funciona sistema El 1


salidas las ar todas Deshabilit 0
BI 1
otra es entrada de n informaci la Si 1
izquierda la a ceros los
quitar para enciende se No
cero es entrada de n informaci la Si 0
RBO 0
RBI


Decodificadores decimales.-
(desarrollar)



Entradas Salidas
E I1 I2 Y1 Y2 Y3 Y4
0 x x 0 0 0 0
1 0 0 1 0 0 0
1 0 1 0 1 0 0
1 1 0 0 0 1 0
1 1 1 0 0 0 1



10.4.- CIRCUITOS COMBINACIONALES INTEGRADOS COMERCIALES.

10.4. 1. ANLISIS DE LA FAMILIA 74. TABLA DE VERDAD MODELO DEL
CIRCUITO

Smbolos habituales. Conexin en cascada si es habitual su uso.
- Multiplexores: 74157
- Demultplexores: 74155 y 74156
- Codificadores con prioridad: 74157
- Decodificadores: a decimal, a siete segmentos (activos a nivel bajo).
- Comparadores Binarios: 7485.
- Detectores -generadores de paridad: 74180, 74280.

10.4.2. CONCEPTO DE UNIDAD ARITMTICO LGICA (ALU).
La unidades aritmtico-lgicas sn dispositivos que constan de dos entradas de n bits
como operandos y adems:
- Entradas de seleccin de la operacin a realizar
- Entrada de acarreo propagado
- Entrada de acarreo generado
- Salida de acarreo
Un modelo frecuentemente utilizado es el 74381.

- Descripcin y Incionamiento de una UAL bsica.


LECCIN 11.- DISEO CON CIRCUITOS MSI COMBINACIONALES.
11. 1. - DISEO DE CIRCUITOS CON MULTIPLEXORES.
11.2.- DISEO DE CIRCUITOS CON CODIFICADORES.

LECCIN 12.- DISEO CON CIRCUITOS MSI SECUENCIALES.
12. 1.- REGISTROS DE DESPLAZAMIENTO: DEFINICIN Y TIPOS.
Registros de Almacenamiento.- Se utilizan para almacenar informacin. Necesitamos n
biestables (tipo D normalmente) para lamacenar una palabra de tamao n bits.

Registros de desplazamiento.- Almacenamos informacin pero tambin podemos
desplazarla. Esto nos aporta una serie de ventajas:
- Transformar datos serie a paralelo y viceversa.
- Desplazando a la derecha el dato lo dividimos por base 2 y desplazndolo a la
izquierda lo multiplicamos por base 2.
Segn el tipo de entrada y salida, tenemos los siguientes tipos:

- Entrada serie, salida serie.
- Entrada serie, salida paralelo.
- Entrada paralelo, salida serie.
- Entrada paralelo, salida paralelo.

( completar desarrollo e incluir grficos)

12.2.- CONTADORES Y DIVISORES DE FRECUENCIA.

CONTADORES INTEGRADOS.- Los contadores integrados pueden ser:
Sincronos.- Si todo el sitema est conectado a la misma seal de reloj.
Asincronos.- Cada parte del sistema se conecta a una seal de reloj o incluso a ninguna.
Ejemplo.- Contador de mdulo 4. (desarrollar)

Los contadores que encontramos en el mercado tienen una gran variedad de formas,
pero en general constan de:

ENB.- Pone al sistema en estado de Alta impedancia.
Ck.- Seal de reloj
D/U (Down-Up) Permite al contador contar en modo ascendente (1) o descendente(0)
Load (Precarga).- Permite cargar un estado antes de comenzar la cuenta. Si vale (0)
inhibe el reloj y podemos precargar el nmero que queramos. Si vale (1) la precarga est
desactivada.
Clr (Clear).- Pone el contador en el estado mas bajo de la cuenta.
Preset.- Pone el contador en el estado mas alto de la cuenta.
RC (Ripple Carry).- Genera un impulso a nivel bajo cada vez que se alcanza el estado
mas last de la cuenta. El impulso dura un semiperodo.
Mx/Mn.- En los contadores con entrada D/U reliza una funcin similar a RC pero
adems, si contamos en modo descendente, tambin se genera un pulso al alcanzar el
estado mas bajo de la cuenta. Los pulsos duran un perodo completo.
Las salida RC y Mx/Mn nos permiten poner contadores en cascada de forma que
cuando el contador menos significativo alcanza el estado mas alto de lacuenta, el
siguiente avanza un estado.
Podemos aprovechar tambin las entradas Clear y Load para reducir el mdolo del
contador teniendo en cuenta que en la mayora de los contadores son entradas
asncronas, aunque tambin hay contadores con Clear sncronos, por ejemplo, el 74161
tiene el clear asncrono y el 74163 tiene el clear sncrono.


12.3.- CONVERTIDORES SERIE-PARALELO Y PARALELO SERIE.













SIENTO NO TENERLOS TERMINADOS. ESPERO QUE OS SEAN TILES.
PD.- Ruego me hagais llegar, tanto las rectificaciones de los posibles fallos, como el
desarrollo de los puntos que no he acabado. Muchas Gracias SGD 2004

Potrebbero piacerti anche