domingo, 22 de septiembre de 2013

Sumador restador binario


Introducción

Cuando se trabaja con números binarios se debe formalizar un modo de trabajar con estos tipos de datos, así nace la necesidad de tratar las operaciones matemáticas para esos sistemas especiales (binarios), por lo tanto se debe extrapolar lo aprendido de las operaciones hechas en el sistema que comúnmente se usa, osea base 10, para hacer operaciones en base 2, ahí es donde se necesita entre otros, el sumador binario.


Suma de números binarios

Para aprender a sumar, con cinco o seis años de edad, tuviste que memorizar las 100 combinaciones posibles que pueden darse al sumar dos dígitos decimales. La tabla de sumar, en binario, es mucho más sencilla que en decimal. Sólo hay que recordar cuatro combinaciones posibles:
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1= 0 ("y se lleva 1")

ejemplo:
010 + 101 = 111 -------es lo mismo que --------210 + 510 = 710
001101 + 100101 = 110010--- lo mismo que---1310 + 3710 = 5010

Resta en binario:

La técnica de la resta en binario es, nuevamente, igual que la misma operación en el sistema decimal. Pero conviene repasar la operación de restar en decimal para comprender la operación binaria, que es más sencilla. Los términos que intervienen en la resta se llaman minuendo, sustraendo y diferencia.
0 – 0 = 0
1 – 0 = 1
1 – 1 = 0

La resta 0 - 1 se resuelve, igual que en el sistema decimal, tomando una unidad prestada de la posición siguiente: 10 - 1, es decir, 210 – 110 = 1. Esa unidad prestada debe devolverse, sumándola, a la posición siguiente.

ejemplo:
111 – 101 = 010 --- en base 10 es--- l710 – 510 = 210
10001 – 01010 = 00111 ---en base 10 igual a ---- 1710 – 1010 = 710

Planteamiento del problema:

Se necesita hacer un circuito Sumador- Restador usando un circuito integrado sumador (ADDER) y la lógica necesaria.

Primero se definen las variables del problema que son dos entradas de números compuestos en esta ocasión de 4 bits, además de un selector que indique si se va a resolver la suma o la resta. Para lograr ese efecto se ha considerado el hacer un arreglo de compuertas XOR con el propósito de hacer el complemento a 1 (primer paso del complemento a 2) además de alimentar un carry de entrada con dicha selección para de paso, hacer el 2do paso de la conversión del complemento a 2.

Y asi queda un circuito relativamente sencillo de armar pero con el detalle de que la alimentación en modo resta provoca un carry de salida que solo se apaga cuando el resultado de la resta es un número negativo, lo cual significa que en este modo, el bit mas significativo seria un bit de signo, trayendo como consecuencia un menor rango de resultados.

En la simulación quedaría armada como en las imagenes posteriores:


Lista de materiales:

->5 LEDS
->1 lm7805(para regular el voltage y asegurar niveles ttl) ...........(datasheet)
->1 protoboar
->cables para protoboard
->1 78ls283 (sumador binario)............. (datasheet)
->2 dip switch de 4 bits (puedes evitarte estos si usas 8 cables de proto)
->1 74ls86 (cuatro compuertas XOR de dos entradas )...............(datasheet)
->1 fuente de corriente continua de 5 volts (o almenos que no pase de 7.5 volts para no dañar tus circuitos)

En los "datas" encontrarás como se conectan los C-integrados y otros datos importantes

Nota: la imagen pertenece al programa de simulacion de lógica digital LOGISIM (del que hablé en otra entrada)



viernes, 20 de septiembre de 2013

Logisim, un programa pequeño pero excelente

En estudio del diseño digital, como en casi toda la vida, se necesitan herramientas que auxilien en el desarrollo y aprendizaje. Estos apoyos se deben escojer de acuerdo a la capacidad, nivel y gusto de la gente, sin que signifique algo así como "yo uso lo mas dificil porque puedo", si eres novato empieza poco a poco.

En el mundo actual, el internet nos ofrece acceso a distintos contenidos como software libre, comercial (a veces crackeado para nuestro disfrute), tutoriales, libros electrónicos, etc. En esta pagina solo aparecerá un programa muy sencillo intuitivo, practico y, lo más importante, didactico...

LOGISIM es un programa multiplataforma (trabaja bajo cualquier sistema operativo) que le ofrece al principiante del Diseño Digital, (o diseño lógico, como quieras nombrarlo) un manera muy práctica y clara de lo que pasa en un circuito digital dado, tal y como lo aprende en la escuela, osea, puedes ver exactamente el comportamiento de cada compuerta al darle un valor lógico a cada entrada...  no tiene modelos de CI's, solo figuras de compuertas, entradas, dispositivos de salida, etc.

Este programa no necesita un tutorial porque es de muy facil uso.

El unico requisito es que la máquina en que se tiene que ocupar debe contar con java JRE (Runtime Enviroment) el cual puede ser conseguido aquí en el enlace


Pro's:
-Intuitivo
-"lo que vez en la escuela es con lo que trabajas aquí"
-Portatil (lo puedes llevar contigo en una memoria flash (USB), a cuaquier maquina)
-Ligero
-Simula leds Matriz de leds y displays 7 segmentos

Contras:
- No tiene modelos de CI's, comerciales
- No puedes simular decodificadores o MUX/DEMUX


¿Te interesó el programa? es una grán herramienta que ha sido usada por millones de estudiantes alrededor del globo

descaga: ---- LOGISIM en su ultima versión
es un archivo ".jar"

para ejecutar el archivo desde consola (linux), o msdos (windows) primero abre en modo administrador (para mas seguro), dirigete a la carpeta donde está el archivo  y escribe el siguiente comando:


java -jar <nombre completo del archivo>.jar

ejemplo:

java -jar logisim-generic-1.xx.xx.jar

Dejo algunas capturas de pantalla:


¿dudas?
¿Sugerencias?
¿Comentarios?




java -jar .jar
java -jar .jar
java -jar .jar