Comparador de 1 Bit

10
Teoría Relacionada Circuito comparador Un circuito comparador combinatorio compara dos entradas binarias (A y B de n bits) para indicar la relación de igualdad o desigualdad entre ellas por medio de "tres banderas lógicas" que corresponden a las relaciones A igual B, A mayor que B y A menor que B. Cada una de estas banderas se activara solo cuando la relación a la que corresponde sea verdadera, es decir, su salida será 1 y las otras dos producirán una salida igual a cero. Dentro de la familia de circuitos TTL se les denomina a estos circuitos con el número 7485 y manejan entradas de 4 bits, además de que también se les puede conectar en cascada para manejar entradas más grandes. Diseño de un circuito comparador de n bits. Antes de construir un comparador binario en cascada se va mostrar como a partir de las expresiones obtenidas en el apartado anterior es posible construir cualquier comparador de n bits utilizando lógica y álgebra booleana. Así se definirá el razonamiento que lleva a la formulación de un caso general para n bits. Sean A y B dos vectores de n bits. [De aquí en adelante] Circuito A=B de n bits. Aquí es evidente que dos entradas de n bits A y B, son iguales si solo si, son iguales bit a bit, es decir: A = B si y solo si Q(An-1,Bn-1)*Q(An-2,Bn-2)*...*Q(A1,B1)*Q(A0, B0) = 1 Por lo tanto, si n=4, tenemos que: A = B si y solo si Q(A3,B3)*Q(A3, B3)*Q(A2 B2)*Q(A1,B1)*Q(A0,B0) = 1 En adelante, A=B se denominara como F(A,B) Circuito A>B de n bits. Para este caso se va crear una expresión general similar, cuyo enunciado seria: A > B si y solo si Z(An-1,Bn-1) + Q(An-1,Bn-1)*Z(An-2,Bn-2) + Q(An- 1,Bn-1)*Q(An-2,Bn-2)*Z(An-3,Bn-3) +... + Q(An-1,Bn-1)*Q(An-2,Bn- 2)*...*Q(A1,B1)*Z(A0,B0) = 1

Transcript of Comparador de 1 Bit

Page 1: Comparador de 1 Bit

Teoría Relacionada

Circuito comparador

Un circuito comparador combinatorio compara dos entradas binarias (A y B de n bits) para indicar la relación de igualdad o desigualdad entre ellas por medio de "tres banderas lógicas" que corresponden a las relaciones A igual B, A mayor que B y A menor que B. Cada una de estas banderas se activara solo cuando la relación a la que corresponde sea verdadera, es decir, su salida será 1 y las otras dos producirán una salida igual a cero.

Dentro de la familia de circuitos TTL se les denomina a estos circuitos con el número 7485 y manejan entradas de 4 bits, además de que también se les puede conectar en cascada para manejar entradas más grandes.

Diseño de un circuito comparador de n bits.

Antes de construir un comparador binario en cascada se va mostrar como a partir de las expresiones obtenidas en el apartado anterior es posible construir cualquier comparador de n bits utilizando lógica y álgebra booleana. Así se definirá el razonamiento que lleva a la formulación de un caso general para n bits. Sean A y B dos vectores de n bits. [De aquí en adelante]

Circuito A=B de n bits.

Aquí es evidente que dos entradas de n bits A y B, son iguales si solo si, son iguales bit a bit, es decir:

A = B si y solo si Q(An-1,Bn-1)*Q(An-2,Bn-2)*...*Q(A1,B1)*Q(A0, B0) = 1

Por lo tanto, si n=4, tenemos que:

A = B si y solo si Q(A3,B3)*Q(A3, B3)*Q(A2 B2)*Q(A1,B1)*Q(A0,B0) = 1

En adelante, A=B se denominara como F(A,B)

Circuito A>B de n bits.

Para este caso se va crear una expresión general similar, cuyo enunciado seria:

A > B si y solo si Z(An-1,Bn-1) + Q(An-1,Bn-1)*Z(An-2,Bn-2) + Q(An-1,Bn-1)*Q(An-2,Bn-2)*Z(An-3,Bn-3) +... + Q(An-1,Bn-1)*Q(An-2,Bn-2)*...*Q(A1,B1)*Z(A0,B0) = 1

Por lo tanto, si n=4, tenemos que:

A > B si y solo si Z(A3,B3) + Q(A3,B3)*Z(A2,B2) + Q(A3,B3)*Q(A2,B2)*Z(A1,B1) + Q(A3,B3)*Q(A2,B2)*Q(A1,B1)*Z(A0,B0) = 1

En adelante, A>B se denominara como G(A,B)

Circuito A<B de n bits.

Formalmente este caso define como:

A < B si y solo si X(An-1,Bn-1) + Q(An-1,Bn-1)*X(An-2,Bn-2) + Q(An-1,Bn-1)*Q(An-2,Bn-2)*X(An-3,Bn-3) +... + Q(An-1,Bn-1)*Q(An-2,Bn-2)*...*Q(A1,B1)*X(A0,B0) = 1

Page 2: Comparador de 1 Bit

Por lo tanto, si n=4, tenemos que:

A < B si y solo si X(A3,B3) + Q(A3,B3)*X(A2,B2) + Q(A3,B3)*Q(A2,B2)*X(A1,B1) + Q(A3,B3)*Q(A2,B2)*Q(A1,B1)*X(A0,B0) = 1

En adelante, A<B se denominara como H(A,B)

Pero por deducción, se puede concluir que: si A=B es FALSO y A>B es FALSO, entonces A<B es VERDADERO lo que seria igual a H(A,B)= [F(A,B)]‘[G(A,B)]‘. Si se implementa la conclusión anterior mediante compuertas lógicas entonces se habría un gran ahorro de trabajo en el diseño y construcción del circuito.

También cabe señalar que la función "Q" puede ser reemplazada por una compuerta NXOR.

Esquemas de los circuitos y reutilización de compuertas

Al construir el diagrama o esquema del circuito comparador se debe comenzar alambrando la salida de F(A,B) para reducir la cantidad de compuertas que se van a requerir ya que ello permitirá obtener el resultado de las operaciones NXOR necesarias para construir la función G(A,B), también se usara la expresión H(A,B)= [F(A,B)]‘[G(A,B)]‘ para simplificar aún más el diseño.

Figura 1. Mediante compuertas NXOR unidas por más compuertas AND, se obtiene la función F(A,B) a la vez que se usa la salida de cada AND y el primer NXOR para formar un vector de salida adicional que se denominara S de 3 bits de longitud.

Page 3: Comparador de 1 Bit

Figura 2. Luego utilizando a cada línea del nuevo vector S se construye la función G(A,B), véase "Circuito A>B de n bits." para saber por que.

Diseño de las salidas del comparador binario.

Por ultimo el siguiente diagrama muestra como se juntan las salidas de F(A,B) y G(A,B), A=B y A>B respectivamente, para crear la salida de H(A,B) o mejor dicho A<B, y por fin tener las tres banderas lógicas que indicaran cual es la relación de igualdad o desigualdad entre los vectores de entrada A y B de n bits de largo (que en el caso de este ejemplo seria 4).

Figura 3. Salidas del circuito comparador.

Diseño de un circuito comparador de n bits con signo.

El circuito comparador de n bits con signo que se va a implementar se basa en el circuito comparador que se diseñó antes e incluye varias características adicionales.

- todas las entradas se expresan como enteros binarios en la notación signo-magnitud- el bit de signo corresponde a la posición n-1 (el bit más significativo del vector)- las magnitudes y los signos se procesan por separado

De las anteriores características, la única que se va examinar a fondo es la ultima, ya que en el circuito comparador con signo que se va a implementar compara primero las magnitudes de las entradas, el resultado de esa comparación (en adelante conocido como premisa) junto con el signo de cada entrada permite determinar la salida definitiva de este nuevo circuito.

Page 4: Comparador de 1 Bit

En total hay tres premisas que se verán a continuación y cada una de ellas produce tres salidas que corresponderán a las banderas A=B, A>B o A<B; cuyo valor será verdadero si y solo si la premisa asociada es verdadera.

Sea J el bit de signo correspondiente a la entrada A, y...

Sea K el bit de signo correspondiente a la entrada B.

Premisa 1

El resultado de la función F(A,B) = 1; osea A es igual que B

Si la premisa 1 es cierta, entonces la siguiente tabla de verdad también es cierta:

J K A=B A>B A<B

0 0 1 0 0

0 1 0 1 0

1 0 0 0 1

1 1 1 0 0

De manera tal que:

A=B es igual a NXOR(J,K) * F(A,B)

A>B es igual a J‘K * F(A,B)

A<B es igual a JK‘ * F(A,B)

Premisa 2.

Page 5: Comparador de 1 Bit

El resultado de la función G(A,B) = 1; osea A es mayor que B

Si la premisa 2 es cierta, entonces la siguiente tabla de verdad también es cierta:

J K A=B A>B A<B

0 0 0 1 0

0 1 0 1 0

1 0 0 0 1

1 1 0 0 1

A=B es 0; por lo tanto no se toma en cuenta.

A>B es igual a J‘*G(A,B)

A<B es igual a J*G(A,B)

Premisa 3.

El resultado de la función H(A,B) = 1; osea A es menor que B

Si la premisa 2 es cierta, entonces la siguiente tabla de verdad también es cierta:

J K A=B A>B A<B

0 0 0 0 1

0 1 0 1 0

1 0 0 0 1

1 1 0 1 0

A=B es 0; por lo tanto no se toma en cuenta.

A>B es igual a K*H(A,B)

A<B es igual a K‘*H(A,B)

Page 6: Comparador de 1 Bit

Diseño de las salidas del comparador binario con signo.

En el siguiente diagrama se muestra como se integran las premisas 1,2 y 3 que en total generan 7 salidas para obtener solo 3 que indicaran cual es la relación entre las entradas A y B de n bits con signo, sabiendo que solo hay una premisa cierta y que las otras son falsas.

Figura 4.

Consideraciones.

Se debe señalar que un modo de refinar los diagramas mostrados sería usar buffers para compensar la velocidad de cada bit de salida; por ejemplo en la figura 1 se puede apreciar que para generar el vector de salida S cada bit pasa por una cantidad distinta de compuertas, al respecto de puede decir que el tiempo que requiere el vector S para producir su salida es igual al tiempo que tarda en salir bit que requiere de más compuertas para para dar su valor correcto, el bit más lento por decirlo de otra forma; sin embargo el uso de los buffers y el calculo de los tiempos de un circuito están más allá del ámbito que cubre esta página.

Page 7: Comparador de 1 Bit

Materiales:

- 1 compuerta or- 2 compuertas and- Fuente- 3 leds- 1 resistencia de 120 ohmios.

Montaje y procedimiento:

Se define la tabla de verdad siguiente:

A B S> S< S=0 0 0 0 10 1 0 1 01 0 1 0 01 1 0 0 1

De la cual se pueden deducir las salidas:

(S>) =(S<)= (S=)=

El circuito correspondiente elaborado en el workbench es el siguiente:

Page 8: Comparador de 1 Bit

CIRCUITO COMPARADOR DE 1 BIT

VICTORIA SOFÍA PEREZSTEPHANY GREY SUAREZ

CAMILO CERVANTES

ELECTRONICA DIGITAL

PROFESORALVARO ALARCON

UNIVERSIDAD DE CORDOBAFACULTAD DE CIENCIAS BÁSICAS E INGENIERÍAS

PROGRAMA DE INGENIERÍA DE SISTEMASMONTERÍA – CÓRDOBA

2008