PRÁCTICA # 4

"RESTADOR"
En esta práctica, se realizará un circuito el cual tenga la capacidad de restar dos números de 4 dígitos, dond e los datos serán dadaos por medio del teclado matricial y serán plasmados en LCD. Para esto es necesario utilizar registros de corrimiento, un restador, decodificadores, LCD y Gal (para la realización del circuito de control). Su funcionamiento será el siguiente:

Se iniciará con introducir el primer número, el cual entrará a un decodificador de teclado (74922), obteniendo una salida, la cual será la entrada de otro decodificador , el cual nos ayudará a que cuando presionemos el número 1 en el teclado, obtengamos 1 en código bianrio y así con las demás teclas. Las salidas de este decodificador entrará a dos registros de corrimiento (74194) los cuales serán controlados para darles un orden de cuando deben cargar. Al presionar el primer número, el registro de corrimiento # 1 recibe el número y carga el número. Al darle el segundo número, el registro de corrimiento # 2 cargará el segundo número. Las salidas de estos dos registros irán a alas entradas del restador. Este restador tiene un pin muy importante el cual es el HABILITADOR, el cual nos ayudará a que cuando presionemos la tecla ( # ) habilite el restador y realice la resta de los 2 números. Las salidas del restador irán a un decodificador 4543 la cual nos ayudará a mostrar en el LCD el resultado de la resta.

NOTA: Este restador tiene la capacidad de restar cualquier número del 0-9 pero solo mostrará en el LCD números positivos, es decir, que el restador solo trabaja con números positivos y no con números negativos.

EL CIRCUITO DE CONTROL

El circuito de control se realizó basandose en el siguiente diagram de estados:



En base al diagrama de estados anterior obtenemos la siguiente tabla:



Pasando los datos de la tabla a mapas de Karnaugh:



Para realizar el circuito de control basados en los datos anteriores, realizamos el siguiente programa en PALASM.

;PALASM Design Description

;---------------------------------- Declaration Segment ------------

TITLE: Circuito de Control del Restador
PATTERN:
REVISION: Veronica Quintero
AUTHOR: Luis "Shikis" Noriega
COMPANY: Solidus
DATE: 04/22/02
CHIP _CC PALCE20V8

;---------------------------------- PIN Declarations ---------------

PIN 1 CLK COMBINATORIAL ; INPUT
PIN 2 X COMBINATORIAL ; INPUT
PIN 19 Z1 COMBINATORIAL ; OUTPUT
PIN 18 Z2 COMBINATORIAL ; OUTPUT
PIN 22 A REGISTERED ; IO
PIN 21 B REGISTERED ; IO
PIN 20 C REGISTERED ; IO

;----------------------------------- Boolean Equation Segment ------

EQUATIONS
A:=A*/C+A*X+B*C*/X
B:=B*X+B*/C+/A*/B*C*/X
C:=X
Z1=/A*/B*X
Z2=B*X
;----------------------------------- Simulation Segment ------------

SIMULATION

;-------------------------------------------------------------------


Al igual, realizamos el restador por medio de celdas iterativas, las cuales fueron grabadas en una GAL 20V8, teniendo como programa el siguiente listado:

;PALASM Design Description

;---------------------------------- Declaration Segment ------------

TITLE : Restador
PATTERN :
REVISION :Veronica Quintero
AUTHOR :Luis "Shikis" Noriega
COMPANY :Solidus
DATE :04/23/02
CHIP _restador PALCE20V8
;---------------------------------- PIN Declarations ---------------

PIN 1 a COMBINATORIAL ; INPUT
PIN 2 b COMBINATORIAL ; INPUT
PIN 3 c COMBINATORIAL ; INPUT
PIN 4 a1 COMBINATORIAL ; INPUT
PIN 5 b1 COMBINATORIAL ; INPUT
PIN 6 c1 COMBINATORIAL ; INPUT
PIN 7 a2 COMBINATORIAL ; INPUT
PIN 8 b2 COMBINATORIAL ; INPUT
PIN 9 c2 COMBINATORIAL ; INPUT
PIN 10 a3 COMBINATORIAL ; INPUT
PIN 11 b3 COMBINATORIAL ; INPUT
PIN 13 c3 COMBINATORIAL ; INPUT
PIN 23 s COMBINATORIAL ; INPUT
PIN 22 z COMBINATORIAL ; OUTPUT
PIN 21 z1 COMBINATORIAL ; OUTPUT
PIN 20 z2 COMBINATORIAL ; OUTPUT
PIN 19 z3 COMBINATORIAL ; OUTPUT
PIN 18 ci COMBINATORIAL ; OUTPUT
PIN 17 ci1 COMBINATORIAL ; OUTPUT
PIN 16 ci2 COMBINATORIAL ; OUTPUT
PIN 15 ci3 COMBINATORIAL ; OUTPUT
;----------------------------------- Boolean Equation Segment ------

EQUATIONS
z=s*(/a*/b*c+/a*b*/c+a*/b*/c+a*b*c)
ci=s*(/a*b+/a*c+b*c)
z1=s*(/a1*/b1*c1+/a1*b1*/c1+a1*/b1*/c1+a1*b1*c1)
ci1=s*(/a1*b1+/a1*c1+b1*c1)
z2=s*(/a2*/b2*c2+/a2*b2*/c2+a2*/b2*/c2+a2*b2*c2)
ci2=s*(/a2*b2+/a2*c2+b2*c2)
z3=s*(/a3*/b3*c3+/a3*b3*/c3+a3*/b3*/c3+a3*b3*c3)
ci3=s*(/a3*b3+/a3*c3+b3*c3)
;----------------------------------- Simulation Segment ------------

SIMULATION
;-------------------------------------------------------------------


A través de estos datos obtenidos, se concluye con el siguiente diagrama del circuito su estructura final.





CONCLUSIONES

Gracias a este circuito, se manejó otro tipo de circuito el cual es el restador, el cual esta compuesto por una serie de redes iterativas, las cuales estan interconectadas entre si. En este circuito utilizamos 4 celdas (4 bits), las cuales fueron grabadas en una pastilla GAL 20V8, y la cual cuenta con un PIN HABILITADOR, que permite decidir cuando debe iniciar a trabajar el restador mediante un pulso.

Además se diseñó un circuito de control el cual ( como su nombre lo indica) nos ayuda a controlar ciertas pastillas. Estas pastillas son los registros de corrimiento, los cuales debian ser controlados para indicarles cuando tenian que cargar o mantener un número determinado; de aquí la importancia de dicho circuito.

PRACTICA # 3