Practica 6 Sumador Restador con Comparadores
Sumador y Restador con circuitos comparadores
Antes de iniciar es importante conocer:
Introducción
Este circuito tiene el objetivo de saber si un número es mayor, menor o igual a otro número y ser usado para complementar el circuito sumador-restador.Materiales
- Psoc.
- Protoboard.
- Cables.
- Dip switch de 20 posiciones.
- Varias resistencias de 1 KOhm.
- 4 Display's de 7 segmentos.
- 4 resistencias de 330 Ohm
Antes de iniciar es importante conocer:
Un circuito comparador es un circuito capaz de diferenciar, entre dos números, y así saber cuál de ellos es mayor, cuál es menor o si los dos números son iguales.
Para iniciar, se hace la comparación entre los números A y B, cada uno de ellos con 1 bit.
La tabla de verdad y su circuito equivalente se encuentran a continuación.
Tabla de verdad 1, comparador de un bit. |
Circuito comparador de 1 bit. |
Para trabajar mas fácilmente con este comparador se va a crear un componente que internamente hace la misma tarea.
Componente creado. |
Para hacer la comparación entre varios bits, es necesario diseñar un segundo circuito que sea capaz de comparar entre los resultados de cada comparador de 1 bit.
Se va a empezar por un comparador donde los números A y B tienen 2 bits cada uno, para esto, se crea la tabla de verdad que sea necesaria.
Tabla de verdad 2, comparador de dos bits. |
Para el diseño del circuito, no se tiene en cuenta las entradas A1, A0 B1 y B0 porque se usaron en el comparador de 1 bit, en este caso, se van a usar las salidas de dos comparadores de 1 bit que se han marcado como las entradas al sistema M, N, O, P, Q y R.
Primero lo más fácil, cuando A1 es igual a B1 y A0 es igual a B0; esto quiere decir que los números A y B son iguales en sus dos bits, dichas igualdades están indicadas en la tabla de verdad 2 como las entradas N y Q, para el circuito es necesario usar una puerta AND entre las entradas N y Q que representa A=B.
Para A>B existen dos opciones:
- A1 sea mayor a B1.
- A1 sea igual a B1 y que A0 sea mayor a B0.
Siendo A1 y B1 los bits más significativos.
Al simplificar:
Para A<B existen dos opciones:
Para A<B existen dos opciones:
- A1 sea menor a B1.
- A1 sea igual a B1 y que A0 sea menor a B0.
Siendo A1 y B1 los bits más significativos.
Al usar el álgebra de Boole para determinar el circuito se obtiene:
Al simplificar:
Con esto, el circuito comparador de 2 bits es:
Una vez obtenido el circuito necesario para la comparación de los dos bits, se usa este mismo circuito para comparar los valores obtenidos con un tercer bit, A2 y B2, es decir, para comparar A2 y B2 con el resultado anterior, éstos se deben conectar al comparador de 1 bit para tener las tres salidas necesarias y una vez hecho eso, se usa otro comparador de dos bits para comparar el resultado obtenido entre A1A0-B1B0 con A2 y B2, y así en forma de cadena para más bits.
La salida A<B se conecta al Led horizontal en el display de siete segmentos para indicar que el resultado de la resta es un número negativo.
Al momento de agregarlo al circuito sumador-restador, las entradas de los comparadores se deben conectar directamente a los bits a operar, pero se debe poner un elemento habilitador que se encargue de que la comparación se haga únicamente al hacer la resta (basta con una puerta AND entre la salida A<B y el selector Suma-Resta), de no hacerse, cuando se sume por ejemplo 345 y 200 el resultado sería -545 porque está haciendo la comparación y 200 es menor a 345.
Al simplificar:
Con esto, el circuito comparador de 2 bits es:
Circuito comparador de 2 bits. |
La salida A<B se conecta al Led horizontal en el display de siete segmentos para indicar que el resultado de la resta es un número negativo.
Al momento de agregarlo al circuito sumador-restador, las entradas de los comparadores se deben conectar directamente a los bits a operar, pero se debe poner un elemento habilitador que se encargue de que la comparación se haga únicamente al hacer la resta (basta con una puerta AND entre la salida A<B y el selector Suma-Resta), de no hacerse, cuando se sume por ejemplo 345 y 200 el resultado sería -545 porque está haciendo la comparación y 200 es menor a 345.
Conclusiones
- Es necesario prestar mucha atención a la creación de la tabla de verdad en el comparador de dos bits, puesto que puede ser confusa al momento de implementarla.
- Se recomienda el programar el componente en verilog, ya que la manipulación de tantas puertas y cables puede generar errores más fácilmente.
Comments
Post a Comment