Informe Práctica II

36
INFORME PRÁCTICA II: TANQUES Y MULTIPLICADOR GINA MARCELA CRUZ RICARDO ANDRES VEJARANO PRESENTADO A: ING. FERNANDO A. URBANO M.

description

Digitales

Transcript of Informe Práctica II

INFORME PRÁCTICA II: TANQUES Y MULTIPLICADOR

GINA MARCELA CRUZRICARDO ANDRES VEJARANO

PRESENTADO A:ING. FERNANDO A. URBANO M.

CIRCUITOS DIGITALES IINGENIERÍA ELECTRÓNICA Y TELECOMUNICACIONES

FIETUNIVERSIDAD DEL CAUCA

2014

2. RESUMEN

El presente informe presenta en análisis, diseño y construcción de cada circuito (control de tanques y multiplicador), cada uno teniendo en cuenta sus respectivos requerimientos y usando los temas aprendidos en la segunda parte del curso Digitales I, como los Módulos Combinacionales y los Circuitos Secuenciales, con el fin de facilitar los procesos.

3. TABLA DE CONTENIDO

2. RESUMEN..........................................................................................................................3 TABLA DE CONTENIDO................................................................................................. 4. INTRODUCCIÓN.............................................................................................................. 5. Marco teórico........................................................................................................... 5.1 Módulos combinacionales........................................................................................ 5.1.1 Multiplexor...................................................................................................... 5.1.2 Decodificador................................................................................................. 5.1.3 Codificador.................................................................................................. 5.2 Sumador Completo - FA............................................................................................. 5.3 Circuitos Secuenciales................................................................................................ 5.3.1 Flip - Flop Tipo D........................................................................................... 5.3.2 Registro....................................................................................................... 6. OBJETIVOS...................................................................................................................... 7. DISCUSIÓN DE RESULTADOS................................................................................... 7.1 Control de Tanques...................................................................................................... 7.2 Multiplicador secuencial de 8 Bits............................................................................. 8. CONCLUSIONES...................................................................................................... 9. REFERENCIAS............................................................................................................

4. INTRODUCCIÓN

Para la implementación, desarrollo y obtención de resultados además de realizar los circuitos y sus respectivos bloques funcionales se da paso al uso del display de siete segmentos, hecho en la primera práctica de este curso, he incluso se usan las dos líneas de selección de dicho display (BCD – HEXADECIMAL), en el primer punto, con código BCD y en el segundo como HEXADECIMAL, puesto que los números a mostrar son bastante grandes.

Esta práctica consta de dos puntos en específico que se describirán a profundidad más adelante en este mismo documento, el primero de ellos, a groso modo, consiste en un sistema de sensores puestos en dos tanques de agua, cada uno con siete niveles. En él, debemos diseñar un circuito que nos muestre la diferencia de niveles de agua entre los tanques y además el número del nivel menor entre ellos. Para el segundo punto, el requerimiento fue diseñar un multiplicador secuencial de ocho bits.

5. MARCO TEÓRICO

Para la realización de esta práctica es importante, tener en cuenta que se tienen que tener conceptos claros, vistos en la clase de Circuitos Digitales l, para esto es necesario afianzar un poco la temática [1].

5.1 Módulos combinacionales

Los módulos combinacionales básicos MSI son bloques funcionales que realizan una tarea específica, y pueden implementar funciones booleanas. MSI (Medium Size of Integration) con un número de compuertas entre 10 y 100.

Existen varios circuitos como: Multiplexores Decodificadores Codificadores Demultiplexores Sumadores

5.1.1MULTIPLEXORES

Funciona como un circuito selector de datos. Dirige la información digital procedente de diversas fuentes a una única línea de salida, por medio de líneas de selección.

Figura 1. Multiplexor.

5.1.2 DECODIFICADORES

Detecta un código en la entrada e indica la presencia de este código mediante un cierto nivel de salida. Dentro de sus aplicaciones están:

Codificar datos Convertir código Direccionar datos Implementar funciones lógicas

Figura 2. Decodificador.

5.1.3CODIFICADOR

Un codificador realiza la función inversa al Decodificador, asigna un código único de salida a cada señal de entrada. El número de entradas es mayor que el de salidas.

Existen cuna clase de Codificadores llamados “Codificadores de Prioridad” que son los encargados de asignar un orden (prioridad) a las entradas. En caso de que más de una entrada sea uno (1), el código de salida corresponderá a la entrada con mas alta prioridad.

Figura 3. Codificador

5.2 SUMADOR COMPLETO

[2]Este circuito presente en la segunda parte de la practica (Multiplicador) se construyó teniendo en cuenta el modelo que presenta M. Morris Mano en la Tercera Edición de su libro “Diseño Digital” , en el capítulo 4 “Lógica Combinacional” visto el clase.

A B CinCou

t S0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1

Tabla 1. Sumador Completo

En la Tabla 1, las salidas S y Cout corresponden al resultado de la suma y el acarreo respectivamente, con lo cual se construye el circuito de la Figura 4 apoyado de la siguiente algebra Booleana:

S=C X Y +C X Y +CXY +C X Y

S=C(XY +XY )+C ¿

S=C(X XNORY )+C (X XOR Y )

S=C XOR X XORY

Cout=XY +CY+CX

Figura 4

5.3CIRCUITOS SECUENCIALES

5.3.1FLIP – FLOP TIPO D

Un biestable, es un multivibrador capaz de permanecer en uno de dos estados posibles durante un tiempo indefinido en ausencia de perturbaciones. Latch con habilitación (CLK – Reloj) modificada para reducir el efecto de interferencias que puedan afectar los datos almacenados. La modificación consiste en agregar un circuito de detección de flanco de subida o de bajada que produzco un pulso de corta duración.

Figura 5. Flip - Flop tipo D

Figura 6. Diagrama de tiempos Flip – Flop tipo D

5.3.2 REGISTRO

Un registro es un conjunto de n Latch o Flip – Flops asociados que permiten almacenar temporalmente un grupo de n bits. En la siguiente figura, ilustraremos un ejemplo de manera muy sencilla con FF tipo D.

Figura 7. Ejemplo de un registro con Flip-Flops tipo D

6. OBJETIVOS

Diseñar los respectivos circuitos teniendo en cuenta sus respectivos requerimientos.

Manejar adecuadamente Quartus II y verificar el correcto funcionamiento de los diseños tanto en las simulaciones como en la tarjeta Altera DE0.

Investigar, conocer y comprender diseños propuestos por distintos autores e implementarlos para poder llevar a cabo la implementación del segundo requerimiento de esta práctica.

7. DISCUCIÓN DE RESULTADOS

7.3 CONTROL DE TANQUES

Se tienen dos tanques de agua y se requiere mantener un control del nivel de agua del que esté más vacío, y la diferencia de nivel respecto al mayor (en valor absoluto). Para conocer el nivel, cada depósito tiene 7 sensores distribuidos a lo alto del tanque. Cada sensor dará un '1' lógico si está cubierto de agua, y un '0' lógico si está al aire. Se deben utilizar dos displays de 7 segmentos, uno para indicar el nivel del más vacío, y otro para indicar la diferencia. Como se tienen 7 sensores para conocer el nivel, el rango de valores va desde 0 a 7. Se asume que ningún sensor va a fallar, por lo tanto, si un sensor indica un '1' lógico, todos los sensores que estén debajo de él darán un '1' lógico (debido a que el agua los cubrirá también).

Para empezar con el diseño, el primer paso es codificar las señales de entrada que provienen de los sensores, donde se tiene 7 señales, como el rango va de 0 a 7 se puede codificar en 3 bits. Haciendo uso de un codificador con prioridad de 8 a 3 para cada tanque.

Teniendo en cuenta el requerimiento de que si un sensor está activo sus inferiores deben estarlo se llega a la siguiente tabla de verdad:

Debido a la aclaración que se hizo el día del laboratorio, decidimos observar la tabla de verdad de un circuito codificador de prioridad, que es la siguiente:

En este caso el codificador de prioridad tiene entradas y salidas activas en bajo y se puede observar que cumple con el requerimiento puesto que todos los sensores bajo la diagonal principal del cuadro de las entradas están en „1‟ lógico (H). A continuación, la implementación:

Posteriormente se procede a hacer la simulación en Altera U.P Simulator, obteniendo:

En la simulación de uno de los codificadores de prioridad de 7 a 3 se puede apreciar que se tienen las entradas activas en alto tal y como salen después de por el decodificador, sin embargo se aprecia que las salidas están activas en bajo (negadas) teniendo en cuenta la tabla de verdad del codificador de prioridad anteriormente presentada, un ejemplo de esto es : la entrada 0000000 que tiene como salida 111 que negada es 000 tal y como se muestra en la tabla de verdad del codificador donde entrada es XXXXXXXL (L=LOW=0) y tiene como salida LLL que negado es HHH (H =HIGH) = 111 lo que verifica el correcto funcionamiento.

Bloque funcional

Comparador

Después de tener codificadas las señales de entrada de cada uno de los tanques se crea un comparador de 3 bits, el cual compara bit a bit desde el más significativo al menos significativo, este circuito lo creamos puesto que para el análisis que se hizo, es necesario conocer cuando el numero A es mayor, menor o igual al número B.

En un comparador de 3 bits Es necesario tener en cuenta para cada caso lo siguiente:

Iguales cada uno de sus bits: A=B

Se recorren todos los bits de A y B desde el más significativo hasta que A sea 1 y B sea 0.

A>B

Recorremos todos los bits de A y B desde el más significativo hasta que A sea 0 y B sea 1.

A<B

Recorremos todos los bits de A y B desde el más significativo hasta que A sea 0 y B sea 1. Teniendo en cuenta los anteriores aspectos para cada comparación se tiene las siguientes expresiones booleanas

Siendo A = A2, A1,A0 Y B = B2, B1,B0

A=B

A>B

A<B

A continuación, mostraremos el circuito comparador:

Bloque funcional:

Después de haber comparado los dos números que nos da cada nivel del tanque, hacemos uso de 3 multiplexores 2 a 1 (Disponibles en Quartus ll de Altera) que nos permiten seleccionar uno de los datos que entran, en nuestro caso seleccionan los bits del número menor, con una línea selectora que se une a una de las respuestas del comparador, en este caso a la opción A>B, si es 1 solo escoge los bits del menor , en caso contrario escogería los del otro número.

Con este análisis, ya tenemos la mitad del primer requerimiento, puesto que estamos mostrando en el primer display, el número menor de nivel entre los dos tanques.

BLOQUE FUNCIONAL

En la entrada I0 se coloca el bit del tanque B y en la entrada I1 el bit del tanque A y para seleccionar en la entrada SEL se coloca lo que arroje el comparador en la salida A>B, de la siguiente manera:

Ahora necesitamos enfrentarnos al problema de efectuar la resta, para esto al diseñar el restador se tuvo presente el circuito de un sumador restador, que tiene una línea selectora y 3 full-adder, teniendo en cuenta que si la línea selectora es cero suma y si es 1 resta, por esta razón se coloca siempre en 1, además de eso se crea una línea habilitadora que permite anular el resultado convirtiéndolo todo en cero, esto es necesario en la implementación de nuestro circuito para facilitar la operación de la resta entre dos números, para ello se usan dos bloques funcionales de este tipo para realizar la operación A-B si A>B, o B-A si A<b; para esto se conecta a la línea habilitadora a una de las salidas del comparador , en nuestro caso a la salida de A<B, por lo tanto al bloque de A-B entra negada y al bloque de B-A entra en 1, y de esta forma anula la operación que no se necesita y permitiendo mostrar el valor absoluto de la resta. Es decir, al final de hacer el procedimiento que acabamos de describir, tendremos un resultado como el siguiente:

Para la construcción de los Full-adder:

Posteriormente se realizó la implementación del full adder, para esto se realizó algebra booleana para encontrar la mínima expresión de CarryOut y Sum:

CarryOut=AB+CARRYLN B+CARRYLN A

∑ ¿CARRYLN A B+CARRYLN A B+CARRYLN AB+CARRYLN A B

∑ ¿CARRYLN (A B+A B)+CARRYLN /(A B+A B)∑ ¿CARRYLN (A XNOR B)+CARRYLN /(A XORB)

∑ ¿CARRYLN XOR A XORB ¿

Teniendo las mínimas expresiones para CarryOut= Cout y Sum = S ya se puede hacer la implementación:

Ahora, haciendo una simulación general, vamos a tener u resultado como el que sigue:

En la simulación se puede observar como variables de entradas al tanque 1 y el tanque 2, también como salidas se observa al nivel menor entre los dos tanques y la diferencia entre los niveles, en la parte inferior. Para verificar el funcionamiento del control de nivel de agua se realizarán los siguientes ejemplos que se pueden verificar en la simulación:

Nivel tanque 1 = 6 y nivel de tanque 2 = 3 : 6 – 3 = 3 110 - 011 = 011; Nivel menor = 3 011

Nivel tanque 1 = 6 y nivel de tanque 2 =7 : 6 – 7 = 1 110 -111 = 001 (con magnitud); Nivel menor = 6 110

Nivel tanque 1 = 5 y nivel de tanque 2 = 0: 5 - 0 = 5 101 -000 = 101; Nivel menor =0000

Por tanto queda comprobado el correcto funcionamiento del control de nivel de agua.

7.2

REQUERIMIENTO II

MULTIPLICADOR DE 8 BITS

Existen varias maneras de implementar la multiplicación en un circuito, investigue, diseñe e implemente en la tarjeta Altera DE0, un multiplicador secuencial de 8 bits utilizando sumadores completos. Fundamente su selección mediante un artículo o libro debidamente referenciado y colóquelo como anexo a su informe. La no presentación del artículo o el libro, automáticamente anulará el punto por completo (práctica, sustentación, diseño e informe). No se aceptarán como referencias, páginas Web.

Con el fin de realizar la multiplicación de dos números binarios cada uno de 8 bits se procede a aplicar el algoritmo cuya base son las sumatorias y desplazamientos a la derecha.

El algoritmo básicamente consiste en realizar una serie de sumas parciales y desplazamientos iterativamente que sirve de referencia para la siguiente iteración , cabe destacar que la última suma efectuada será el resultado final de la multiplicación terminando el algoritmo.

A continuación se muestra paso a paso el funcionamiento de la multiplicación secuencial tomando para ello, el ejemplo de dos números binarios a y b ,de cuatro bits cada uno .

El primer paso a realizar consiste en darle un valor inicial al resultado parcial compuesto por 8 bits , para ellos los primeros 4 bits se les asignan ceros mientras los últimos cuatro son los bits que forman el numero b.

Como se puede observar , el numero b tiene dos posibilidades :

Si el bit menos significativo que compone el numero b es 1 , se sumara el número a al resultado parcial compuesto por 16 bits y se situan en las primeras 4 posiciones de este , finalizando esta operación se obtendrán 17 bits , donde el mas significativo es considerado el bit de acarreo de la suma parcial.

El segundo caso , es cuando el bit menos significativo del numero b es cero : se le sumara 00000000 a los 8 primeros bits que componen los 16 bits del resultado, puesto que la multiplicación sin importar el multiplicando siempre arrojara como resultado cero siempre y el bit a multiplicar del multiplicador tenga el valor de cero, cabe mencionar que en la suma parcial no se obtendrá un bit extra , puesto que la suma no generara un acarreo, pero se tendrá en cuenta como si fuese un noveno bit cuyo valor es cero y se sitúa a la izquierda el numero compuesto por 8 bits para el resultado de las sumas parciales.

Por ultimo lo que se hace es realizar el desplazamiento hacia la derecha de un bit de los 17 que compone el resultado ,esto hace que se pierda el bit menos significativo del numero b a operar, obteniendo el numero de 16 bits requerido , claro está , dicho valor se obtendrá siempre y cuento se haya realizado la operación 8 veces respectivamente.

Con base a la explicación previamente vista acerca del algoritmo de la multiplicación , se procede a ejercerla para los 8 bits que en el caso anterior conforman el número a y los 8 bits que componen el numero b.

Un registro de un bit : puesto que es el encargado de guardar el acarreo de la suma , es decir se considerara el 17avo bit que compone el resultado total,

Dos registros de desplazamiento , cada uno conformado con 8 bits , los cuales se encargaran de almacenar el resultado final de la operación

Finalmente los 3 registros permitirán el desplazamiento del bit menos significativo del numero b.

Adicionalmente se requiere un registro de 8 bits , el cual se encargara de almacenar el número a , y un sumador de 8 bits encargado de realizar las sumas parciales nombradas en el algoritmo.

Finalmente, se hace uso de un contador módulo 8 , que me permita contar el numero de iteraciones que se realizan en el desarrollo de la multiplicación.

Ahora se procederá a realizar los respectivos circuitos según los componentes necesarios para realizar la multiplicacion de 2 numeros de 8 bits cada uno.

Lo primero a realizar son los dos registros de desplazamiento de 8 bits cada uno.

Este registro se encargara de almacenar los primeros 8 ceros enunciados durante el algoritmo.

El segundo registro es el encargado de contener el numero b , el cual se ira desplazando según sea el número de iteraciones del proceso

A continuación se solicita un cortador de módulo 8 , con el fin de llevar una cuenta respecto al número re repeticiones que se hará la operación , como los números son compuestos por 8 bits , se necesitaran 8 iteraciones para completar la operación en su totalidad.

Para realizar el contador propuesto , se requiere inicialmente hacer la tabla de estados con el fin de conocer el estado siguiente de cada uno de los Flip Flops.

Para la implementación de este se tomaron Flip Flops tipo D y compuertas lógicas.

A continuación se muestra la tabla de verdad del contador módulo 8

ESTADO ACTUAL ESTADO SIGUIENTE

Q2 Q1 Q0 D2 D1 D0

0 0 0 0 0 1

0 0 1 0 1 0

0 1 0 0 1 1

0 1 1 1 0 0

1 0 0 1 0 1

1 0 1 1 1 0

1 1 0 1 1 1

1 1 1 0 0 0

Con el fin de encontrar las funciones de entrada de cada Flip Flop tipo D , se hizo uso de los mapas de kernaugh , como se observa a continuación:

MAPAS DE KERNAUGH

Para D2

Q1Q0Q2

00 01 11 10

0 0 0 1 0

1 1 1 0 1

D 2=Q 2Q1+Q 2Q0+Q2Q 1Q 0

D 2=Q 2 (Q1Q 0 )+Q 2(Q1Q 0)

D 2=Q 2⊕ (Q1Q 0 )

Para D1

Q1Q0Q2

00 01 11 10

0 0 1 0 1

1 0 1 0 1

D 1=Q 1Q 0+Q 1Q 0

D 1=Q 1⊕Q 0

Para D0

Q1Q0Q2

00 01 11 10

0 1 0 0 1

1 1 0 0 1

D 0=Q 1QO+Q 0Q 1

D 0=Q 0 (Q1+Q 1)

D 0=Q 0

Teniendo las funciones de cada uno de los Flip Flops se procede a implementar el circuito requerido, como se observa en la siguiente figura.

Circuito contador módulo 8 en el software libre TyniCAD

Posteriormente se presenta a simulación realizada en Altera U.P Simulator

Como se puede observar en la simulación el contador comienza en su estado inicial es decir en 000 y va hasta 111 que en número decimal es el 7 , pero debido a que el contador tiene su inicio en el valor cero , cuenta 8 iteración hasta reiniciarse , que es lo que se requiere para realizar las 8 multiplicación componente a componente de los dos números binarios a multiplicar.

Teniendo tanto el contador como los registros de desplazamiento del resultado y del numero multiplicando se procede a realizar el sumador de 8 bits , para ello se tomó como base un sumador completo (Full adder) es decir que tiene como entradas dos números (A, B ) de un bit y como variable as significativa un acarreo de entrada (CIN) , mientras la salida corresponde al valor de la suma y un acarreo de salida (COUT)

La tabla de verdad para la implementación del Full adder se presenta a continuación:

TABLA DE VERDAD SUMADOR COMPLETO DE 1 BIT

CIN A B S COUT

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

0 1 1 0 1

1 0 0 1 0

1 0 1 0 1

1 1 0 0 1

1 1 1 1 1

Posteriormente se determinan las funciones de la suma y el acarreo de salida respectivamente

EXPRESION PARA LA SUMA:

S=CIN A B+CIN A B+CIN A B+CINAB

S=CIN ( A B+A B )+CIN (A B+AB)

S=CIN⊕ A⊕B

EXPRESION PARA EL ACARREO DE SALIDA

COUT=CIN AB+CIN A B+CINAB+CINAB

COUT=AB (CIN+CIN )+CIN (AB+B A)

COUT=AB+CIN (A⊕B)

Adicionalmente se muestra la simulación del Full adder en Altera U.P Simulator

Es importante destacar en la anterior simulación que , el acarreo de salida será uno siempre y cuando dos de las entradas se encuentren en “1” lógico , si las 3 entradas se encuentran todas en “1” se tendrá un acarreo de salida y una suma equivalente a “1” , en caso de las otras combinaciones el COUT tomara un valor de cero , mientras la suma será “1” o “0” dependiendo de las combinaciones de las entradas.

Para formar un sumador de 8 bits que es el requerido en la práctica a desarrollar , se conectan 8 sumadores completos en paralelo , conectando el acarreo de salida del sumador anterior a la entrada del siguiente , así sucesivamente , a excepción del sumador menos significativo , puesto que este no contiene un acarreo de entrada , por ende simplemente se conectara a tierra , como se observa en el siguiente circuito.

Sumador de 8 bits

Para la simulación del circuito sumador de 8 bits , se utilizó Altera U.P Simulator como se muestra en la siguiente gráfica:

En la simulación de la figura se le asignaron valores binarios a cada uno de los números A y B , obteniendo la salida equivalente a la suma ejercida y el acarreo de salida que genera la suma de cada uno de los bits que componen los números , para comprobar lo dicho , se probaron 7 combinaciones entre el numero A y B que permiten verificar el comportamiento adecuado del sumador.

Finalmente para completar los componentes del circuito multiplicador de dos números de 8 bits , se creo un registro de desplazamiento de un bit , que será el encargado de manejar el acarreo de las sumas parciales.

El multiplicador requiere una unidad de control , que permita asociar los pulsos de reloj con los desplazamientos de los registros diseñados, para ello es básico conocer el funcionamiento de esta unidad , el cual se explica en seguida.

En primera instancia se debe poner los 8 ceros en el registro , inicializar el contador y cargar los números de 8 bits en paralelo , como lo indicar los registros de desplazamiento.

Posteriormente se procede a evaluar el bit menos significativo que compone el numero de 8 bits , y dependiendo de su valor es decir “1” o “0” lógico se tendrá :

Si el bit menos significativo del multiplicador es cero , implicara sumar en el registro dispuesto para el resultado el valor de 00000000 , mientras en el registro de un bit se tendrá un cero , ya que se debe recordar que este bit se considera el acarreo de la suma.

Pero , si el ultimo bit del multiplicador es 1 , se adiciona el numero multiplicando y se guarda en el registro , mientras el valor del acarreo será guardado en el registro dispuesto para ello .

En seguida se desplaza un bit a la derecha , el equivalente a los 17 bits del resultado contenido tanto en el registro destinado para acarreo como en el registro determinado para el resultado de la operación. Finalizado este paso , el contador procede a efectuar su operación , recibe una orden para que vaya incrementando su valor según el numero de iteraciones realizadas.

Terminando el proceso se tendrá el resultado de 16 bits cuyo resultado se obtuvo gracias a la multiplicación de los registros de 8 y 16 bits dispuestos previamente para ello.

CONCLUSIONES

Al diseñar los circuitos fue necesario tener claro y manejar hábilmente los temas vistos en la segunda parte del curso, como lo son los módulos Combinacionales, los circuitos aritméticos y secuenciales, al igual que desarrollar la destreza o habilidad de crear elementos propios, con funcionamientos específicos.

Es importante tener especial cuidado en el momento del diseño de nuestros circuitos, pues por ejemplo aunque en el primer requerimiento, cumplimos con lo que se pedía, teníamos una leve falla al principio en cuanto al codificador, esto nos deja la enseñanza que siempre tenemos que trabajar por un diseño óptimo de funcionamiento y calidad, no solamente regirnos por cumplir cerradamente con los requerimientos.

Se pudo observar además que existen distintas formas de estructurar un multiplicador, aunque nos dimos cuenta por qué no funcionó nuestro secuencial en l laboratorio, entendimos que uno de los inconvenientes más grandes fue el realizar la búsqueda de circuitos que no describían a profundidad el bloque de control y cuyos diseños se basan en máquinas de estado.

La anterior experiencia además propició el entendimiento e implementación de dispositivos de almacenamiento como lo son los flip flops, el tipo D

Quartus II y la tarjeta Altera DE0 juegan nuevamente un papel importante e interesante a la hora de implementar el circuito en ellos y verificar el funcionamiento, son herramientas que llevan experimentar los diseños o montajes de una forma diferente, permite “sacar” del papel el circuito y hacerlo realidad en poco tiempo.

9. REFERENCIAS

[1] Urbano M., Fernando A. Notas de clase. Circuitos Digitales I. Departamento de Telemática, FIET. Ingeniería Electrónica y Telecomunicaciones. Universidad del Cauca. Popayán, Colombia. Noviembre de 2014.

[2] M. Morris Mano. Diseño Digital. Tercera Edicion. California State University, Los Angeles. PEARSON EDUCACION Mexico(2003).

Disponible en internet http://personales.unican.es/manzanom/Planantiguo/EDigitalI/CompG4_09.pdf