Práctica 10: Sumador serie
Introducción
Registros de desplazamiento
Un
registro capaz de desplazar su información binaria en una dirección o en la
otra se llama registro de desplazamiento. La configuración lógica de un
registro de desplazamiento consiste en una cadena de flip-flops en cascada, con
la salida de un flip-flop conectada a la entrada del siguiente flip-flop. Todos
los flip-flops reciben pulsos de reloj comunes, que activan el desplazamiento de
una etapa a la siguiente.
El
registro de desplazamiento más sencillo posible usa sólo flip-flops, como se
indica en la siguiente figura:
La salida de un flip-flop dado se conecta a la
entrada D del flip-flop que está a su derecha. Cada pulso de reloj
desplaza el contenido del registro una posición de bit a la derecha. La entrada
en serie determina qué sucede en el flip-flop de la extrema izquierda
durante el desplazamiento. La salida en serie se toma de la salida del
flip-flop de la extrema derecha.
Procedimiento
Para
esta práctica se desea implementar un sistema secuencial capaz de sumar en
serie dos números de 8 bits máximo, para
lograr esto se procede a diseñar un bloque de memoria que permita
almacenar el numero ingresado por
teclado, haciendo una pequeña restricción que solo ingresen números en su
representación BCD y que se carguen a este bloque de memoria solo en dado caso
de lo contrario no habrá información presente en el bloque.
En
este bloque de memoria donde se almacena el número habrá arreglo de bancos más pequeño de entrada serie y salida
paralelo, este banco más pequeño se muestra en la siguiente figura:
A
partir de este bloque se diseña el banco de memoria más grande como se muestra
enseguida:
De
esta forma ya se tiene el número ingresado por teclado guardado en un banco de
memoria, teniendo en cuenta que el reloj de este sistema secuencial será la
multiplicación entre la salida del led del teclado y el detector de número de
0-9.
Al
tener el numero guardado se hace la conversión de 3BCD a 8BIN con el bloque
expuesto en anteriores entradas, al tener el numero en BIN se podrá cargar en
un bloque de memoria de entrada paralelo salida serie, se tienen dos bloques de
estos para guardar los dos números con los que se desea realizar la suma en
serie, este bloque consta de un arreglo de flip-flops y de muxs 2-1 los últimos
capaces de permitir un corrimiento a la derecha con cada flanco del reloj
siempre y cuando el selector este en 0 de lo contrario solo permitirá la carga
de datos al banco de memoria.
El
esquema del banco de memoria con entrada paralelo salida serie es el siguiente:
Luego
de tener los dos números guardados en las memorias se procede a realizar la
suma de forma serie mediante un sumador completo de un bit y un flip flop,
conectados de forma que la salida de los bancos
donde se guardan los dos números irán a las dos entradas del sumador, el
carry de salida del sumador ira a la entrada del flip flop y la salida del flip
flop ira conectada al carry de entrada del sumador de la siguiente forma:
Al
tener esto ya solo queda generar 8 pulsos de reloj que son los 8 BITS a sumar estos
8 pulsos irán conectados al reloj de los bancos donde se guardan los números,
al flip flop del sumador y al banco donde se guardara la suma.
El
esquema del generador de 8 pulsos es el siguiente:
Al
generar los 8 pulsos se genera el corrimiento a la derecha de los dos bancos de
memoria ingresando esto al sumador tomando en cuenta que el carry de salida
anterior será el carry de entrada siguiente,
de esta forma se va guardando bit
a bit en el banco de memoria serie-paralelo final.
El
esquema del banco de memoria serie paralelo es el siguiente:
Por
último se tiene el número resultante de la suma en 9 BITS y se lleva a la
visualización dinámica expuesta en entradas anteriores.








Comentarios
Publicar un comentario