Electrónica‎ > ‎

Arquitectura de datos y sistemas digitales


Simplificación.

Compuertas NAND, NOR, XOR.

Además de las compuertas bien conocidas, como son AND, y OR (y NOT), existen algunas otras, derivadas de estas, llamadas NAND, NOR, XOR y XNOR


Es importante tener en cuenta estas funciones, debido a que al momento de diseñar un circuito, podrían simplificar las ecuaciones.


NAND



La compuerta NAND, es el complemento de la compuerta AND, y funciona negando la salida de esta compuerta.


Por lo tanto.


NOT (A AND B) es equivalente a A NAND B.


Por leyes de D’Morgan, tenemos también que:

(AB)’=A’+B’


NOR


La compuerta NOR, es el complemento de la compuerta OR, y funciona negando la salida de esta compuerta.


Por lo tanto.


NOT (A OR B) es equivalente a A NOR B.


Por leyes de D’Morgan, tenemos también que:

(A+B)’=A’B’


XOR


La compuerta XOR, (O exclusivo), es un operador que da como salida verdadero, cuando sus entradas son distintas.


Por lo tanto.


A XOR B es equivalente a (A’AND B) OR (A AND B’).


Mapas de Karnaugh.


Los mapas de Karnaugh son una herramienta utilizada para facilitar la simplificación de funciones algebraicas booleanas.


Estas por medio de una tabla, agrupan los valores de una función algebraica que podrían ser eliminados de estar colocados de forma contigua.


Estos se pueden usar en funciones desde 2 hasta 6 variables.


Ejemplo 2 variables.


Suponiendo que tenemos una función:


AB=1

AB’=1

A’B=0

A’B’=1


Estos datos se colocan en una tabla:



B’

B

A’

1

0

A

1

1


Una vez llena esta tabla, se marcan las filas o columnas contiguas que contengan unos continuos (con una cantidad de 2n elementos, es decir la cantidad de elementos seleccionados siempre debe ser exactamente una potencia de 2).



B’

B

A’

1

0

A

1

1



B’

B

A’

1

0

A

1

1


De esta forma podemos ver que las funciones en cada tabla son:


A’B’+AB’

que es igual a

(A’+A)B

que es igual a

B


Esto se puede apreciar en la tabla al momento de ver que el hecho de que dos 1s estén colocados de forma contigua, eliminan a la variable que cambia entre ellos (en este caso la A).


Así aplicado esto a la segunda tabla, la variable eliminada sería la B (debido a que entre los 2 unos agrupados, la B es la que cambia).


Así quedamos que la función simplificada de esta función es la sumatoria de las agrupaciones, las cuales son:


A+B


Ejemplo 3 variables


Para los casos de 3 o 4 variables, se agrupan 2 variables en una subfunción, y se ordenan en orden GRAY (código gray), ya que en este código entre valor y valor, solo cambia una variable, lo que nos ayuda al momento de simplificar, ya que cuando hay dos 1s seguidos, podemos eliminar la variable que cambió entre ellos.


Para el ejemplo de 3 variables se usará la siguiente función:


ABC=0

ABC’=1

AB’C=1

AB’C’=0

A’BC=0

A’BC’=1

A’B’C=1

A’B’C’=1


Se coloca en una tabla de 2x4, agrupando AB en las columnas y C en las filas.



A’B’

A’B

AB

AB’

C’

1

1

0

1

C

1

0

1

0


En este caso se pueden agrupar: A’B’C’ con A’B’C y A’B’C’ con A’BC’.


Quedando así:



A’B’

A’B

AB

AB’

C’

1

1

0

1

C

1

0

1

0

Queda como: A’B’




A’B’

A’B

AB

AB’

C’

1

1

0

1

C

1

0

1

0

Queda como: A’C’


A esto además hay que agregar que los 2 términos restantes, se agrupan consigo mismos.



A’B’

A’B

AB

AB’

C’

1

1

0

1

C

1

0

1

0

Queda como: ABC



A’B’

A’B

AB

AB’

C’

1

1

0

1

C

1

0

1

0

Quedan como: AB’C’


Por tanto la ecuación queda así:


A’B’+A’C’+ABC+AB’C’



Circuitos lógicos combinatorios.

Aritméticos.


Ahora se empezará a diseñar circuitos.


En este casó se programará un sumador completo de 1 bit.


Su entradas son A y B, los bits que se van a sumar, y Ci un acarreo extra a sumar, y sus salidas son S y Co, que corresponden a su suma y al acarreo, en caso de existir uno.


A

B

Ci

S

Co

0

0

0

0

0

0

0

1

1

0

0

1

0

1

0

0

1

1

0

1

1

0

0

1

0

1

0

1

0

1

1

1

0

0

1

1

1

1

1

1


Así la tabla de Karnaugh de S es:



A’B’

A’B

AB

AB’

Ci’

0

1

0

1

Ci

1

0

1

0


Que da como resultado:


A’B’Ci+A’BCi’+ABCi+AB’Ci’


Que es equivalente a


A’(B xor Ci)+A(B xnor Ci)


Que es equivalente a


S=A xor B xor Ci


Y la tabla de Karnaugh de Co es:



A’B’

A’B

AB

AB’

Ci’

0

0

1

0

Ci

0

1

1

1


Las agrupaciones son:


A’B’

A’B

AB

AB’

Ci’

0

0

1

0

Ci

0

1

1

1

Que queda: BCi



A’B’

A’B

AB

AB’

Ci’

0

0

1

0

Ci

0

1

1

1

Que queda: ACi



A’B’

A’B

AB

AB’

Ci’

0

0

1

0

Ci

0

1

1

1

Que queda: AB


Por lo tanto la ecuación es:


Co=AB+ACi+BCi


Y el diagrama queda así:




Una vez que se tiene un sumador de 1 bit, se pueden conectar varios en cascada, y así hacer operaciones de mas bits.



El procedimiento para conectar varios sumadores de un bit en cascada, para armar un sumador de 2 bits es:





Para hacer multiplicadores, restadores, etcétera se sigue el mismo procedimiento.


Codificadores y decodificadores.


Los codificadores son los dispositivos que codifican una entrada binaria a una salida en otro código. Los decodificadores son los dispositivos que reciben una entrada en cualquier código y la convierten en binario.


Ambos se diseñan de la misma forma.


Su diseño es muy sencillo, como ejemplo se colocará un conversor de código binario (4 bits) a BCD (8 bits) de 0 a 15.


Las entradas son ABCD y las salidas son STUVWXYZ

ENTRADAS

SALIDAS

A

B

C

D

S

T

U

V

W

X

Y

Z

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

0

0

0

0

0

0

1

0

0

1

0

0

0

0

0

0

0

1

0

0

0

1

1

0

0

0

0

0

0

1

1

0

1

0

0

0

0

0

0

0

1

0

0

0

1

0

1

0

0

0

0

0

1

0

1

0

1

1

0

0

0

0

0

0

1

1

0

0

1

1

1

0

0

0

0

0

1

1

1

1

0

0

0

0

0

0

0

1

0

0

0

1

0

0

1

0

0

0

0

1

0

0

1

1

0

1

0

0

0

0

1

0

0

0

0

1

0

1

1

0

0

0

1

0

0

0

1

1

1

0

0

0

0

0

1

0

0

1

0

1

1

0

1

0

0

0

1

0

0

1

1

1

1

1

0

0

0

0

1

0

1

0

0

1

1

1

1

0

0

0

1

0

1

0

1


Los mapas de Karnaugh de las salidas son:


Mapa de S


A’B’

A’B

AB

AB’

C’D’

0

0

0

0

C’D

0

0

0

0

CD

0

0

0

0

CD’

0

0

0

0

Ecuación de S: 0


Mapa de T


A’B’

A’B

AB

AB’

C’D’

0

0

0

0

C’D

0

0

0

0

CD

0

0

0

0

CD’

0

0

0

0

Ecuación de T: 0


Mapa de U


A’B’

A’B

AB

AB’

C’D’

0

0

0

0

C’D

0

0

0

0

CD

0

0

0

0

CD’

0

0

0

0

Ecuación de U: 0


Mapa de V


A’B’

A’B

AB

AB’

C’D’

0

0

0

0

C’D

0

0

0

0

CD

0

0

1

1

CD’

0

0

1

1



A’B’

A’B

AB

AB’

C’D’

0

0

1

0

C’D

0

0

1

0

CD

0

0

1

1

CD’

0

0

1

1


Ecuación de V: AC+AB


Mapa de W


A’B’

A’B

AB

AB’

C’D’

0

0

0

1

C’D

0

0

0

1

CD

0

0

0

0

CD’

0

0

0

0

Ecuación de W: AB’C’


Mapa de X


A’B’

A’B

AB

AB’

C’D’

0

1

0

0

C’D

0

1

0

0

CD

0

1

1

0

CD’

0

1

1

0



A’B’

A’B

AB

AB’

C’D’

0

1

0

0

C’D

0

1

0

0

CD

0

1

1

0

CD’

0

1

1

0


Ecuación de X: A’B+BC


Mapa de Y


A’B’

A’B

AB

AB’

C’D’

0

0

1

0

C’D

0

0

1

0

CD

1

1

0

0

CD’

1

1

0

0

Ecuación de Y: ABC’+A’C



Mapa de Z


A’B’

A’B

AB

AB’

C’D’

0

0

0

0

C’D

1

1

1

1

CD

1

1

1

1

CD’

0

0

0

0

Ecuación de Z: D


De esta forma, con las ecuaciones:


S=0

T=0

U=0

V= AC+AB

W= AB’C’

X= A’B+BC

Y= AB’C’+A’C

Z= D


Se puede diseñar un circuito de forma trivial.


Así, estas ecuaciones nos podrían servir para pasar la salida de: STUV a un codificador binario-7segmentos, y este conectarlo a un display de 7 segmentos, para mostrar las decenas, y las salidas WXYZ a otro para mostrar las unidades. Sin embargo, debido a que esta conversión ya esta implementada en el circuito integrado 74 LS 47, su conexión queda así:



Multiplexores y demultiplexores.


Los multiplexores son dispositivos cuyo objetivo es usando una salida y líneas de dirección, elegir una entrada por la cual pase por una salida.


Es decir, si se tienen 4 canales, y solo un canal para mandar uno de estos, se usa un multiplexor para seleccionar cierto canal, para que salga por este.


Así, para diseñar un multiplexor se colocan todas las entradas, y N cantidad de líneas de dirección


N se calcula como el logaritmo base 2 de la cantidad de entradas. (N=ln(total)/ln(2))


En este ejemplo se pondrá un multiplexor de 4 canales.


Este tendrá por lo tanto 2 líneas de dirección, para seleccionar al dato de salida.


A,B = Líneas de dirección

d0,d1,d2,d3 = Entradas

s = salida


A

B

d0

d1

d2

d3

s

0

0

0

X

X

X

0

0

0

1

X

X

X

1

0

1

X

0

X

X

0

0

1

X

1

X

X

1

1

0

X

X

0

X

0

1

0

X

X

1

X

1

1

1

X

X

X

0

0

1

1

X

X

X

1

1


El caso de los multiplexores es igual, (con la misma tabla incluso, pero con las d como salidas).






Circuitos lógicos secuenciales.

Flipflops (SR,JK,D,T).


Circuitos monoestables y astables.


Contadores y registros.


Máquinas de estado (Mealey, Moore).







Memorias.

Compuertas de 3er estado. Buses.


Memorias ROM y RAM, bancos de memoria.


Ciclos de lectura y escritura en una memoria.


Comments