Está en la página 1de 15

INSTITUTO POLITÉCNICO NACIONAL

UNIDAD PROFESIONAL
INTERDISCIPLINARIA EN INGENIERÍA Y
TECNOLOGÍAS AVANZADAS

PRÁCTICAS DE LABORATORIO DE
CIRCUITOS LÓGICOS

Juan Antonio Jaramillo Gómez

PRIMERA VERSIÓN

2017
Prácticas de Laboratorio de Circuitos Lógicos .

Práctica No. 1.
Compuertas básicas con elementos discretos y práctica guiada.
Basic gates with discrete elements and a guide practice.

Unidad Temática: I

Duración: 3.0 hrs. (Revisión 1er. hora práctica guiada de implementación de las
compueras básicas con VHDL y Verilog, 2da. hora implementación de aplicaciones)

Unidad de Competencia Específica:


Diseña circuitos combinacionales de bajo nivel de integración mediante el álgebra de Boole.

Competencia Específica:
Implementa los circuitos con compuertas básicas en los CPLD o FPGA.

Pre-reporte uno.

Desarrollar los siguientes puntos como trabajo previo para el buen progreso de la práctica
[máximo 3 cuartillas si se entrega impreso (Letra Times New Roman de 12ptos, interlineado
sencillo)]:

1. Investigar las características del PLD, CPLD o FPGA que se utilizará, así como los
terminales de conección del dispositivo o tarjeta de desarrollo hacia los componentes y
conectores (tener a la mano los manuales de referencia y/o datasheets).

2. Escribir los códigos de VHDL y Verilog para programar las compuertas: AND, OR,
NAND, NOR, XOR, XNOR y NOT (según la entidad mostrada en la figura 1.1), que cumpla
con la tabla 1.1. Compilar o sintetizar para tener los archivos que se programarán en el
dispositivo lógico programable que contiene su sistema de desarrollo.

Figura 1.1. Entidad para el arreglo de compuertas de tres entradas.

2
Prácticas de Laboratorio de Circuitos Lógicos .

Tabla 1.1. Tabla de verdad de las compuertas básicas de 3 entradas y la NOT.


AND NAND OR NOR XOR XNOR NOT(B)
ABC ABC (ABC)’ A+B+C (A+B+C)’ ABC (ABC)’ B’
000 0 1 0 1 0 1 1
001 0 1 1 0 1 0 1
010 0 1 1 0 1 0 0
011 0 1 1 0 0 1 0
100 0 1 1 0 1 0 1
101 0 1 1 0 0 1 1
110 0 1 1 0 0 1 0
111 1 0 1 0 1 0 0

3. Escribir en VHDL el código para programar una alarma contra robo para casa habitación,
que proteja 7 accesos (tres puertas y cuatro ventanas), como se muestra en la figura 1.2.
Diseñar y construir un circuito de alarma con enclavamiento utilizando un SCR y un Buzzer.

Figura 1.2. Sistema de alarma para casa habitación.

NOTA: En caso de no entregar el pre-reporte y/o de no traer el material (con los circuitos
armados), los alumnos NO TENDRÁN derecho a entrar al laboratorio. Los circuitos deben
de armarse de acuerdo con la indicación del archivo de restricciones. Coloque las preguntas
con su numeración en los pre-reportes y reportes.

"Coloca la parte UPIITA-IPN a tu trabajo, comparte la información adicional que


buscaste".

Material y Equipo.

Dispositivos discretos (i.e. SPLD, CPLD o FPGA, con hojas de datos, especificaciones y
programador).
Elementos discretos: resistencias 330  a ½ W, Leds de diferentes colores (rojo, verde,
amarillo, naranja, ámbar, azul, etc.), interruptores SPST y dip switch de 8 interruptores, SCR
C106D (con hojas de datos y especificaciones), buzer o alarma, push botón NC o NO para
apagar la alarma.
Tarjeta de desarrollo: Cool Runner II, Basys 2, Nexys 2 ó 3 ó 4, DE2, etc.
Pinzas de punta y de corte.
Protoboard necesarios para tener armados los circuitos.

3
Prácticas de Laboratorio de Circuitos Lógicos .

Cables para conexión.


Cables con conectores (header macho, header hembra, caimán, etc.).
Termofit.
Fuente de alimentación regulada si se conecta de forma externa algún circuito.
Punta lógica o analizador de estados lógicos.
Multímetro con puntas.
Osciloscopio con puntas.
Programas (ISE de Xilinx, Quartus II de Altera, etc.).
Computadora con software instalado y puertos para conectar la tarjeta o programador.

Nota: las cantidades de componentes depende de los diseños que se realicen.

Introducción.

Nos encontramos rodeados de dispositivos electrónicos de muchos tipos, la invasión de estos


en el hogar, en el trabajo y hasta en los lugares que visitamos es para satisfacer la necesidad
de bienestar así como la ayuda para realizar el trabajo. Los celulares, pantallas, Smart TV,
videojuegos, videojuegos, semáforos, juguetes, relojes, instrumentos de medición, robots,
aparatos médicos, entre otros, son algunos ejemplos de los desarrollos tecnológicos con los
que convivimos a diario. Estos tienen algo en común, sus circuitos integrados se construyen
con elementos electrónicos de dimensiones muy pequeñas, y cuya tendencia es realizar todo
lo más integrado posible junto con grandes cantidades de recursos.

El primer circuito integrado se desarrolló a principios de 1960 conteniendo menos de 100


transistores en el chip, y fue llamado circuito integrado de pequeña escala de integración (SSI
small scale integrated). Los circuitos de mediana escala de integración MSI (Medium Scale
Integrated) se desarrollaron a finales de 1960 y contenían varios cientos de transistores. A
mediados de 1970 los circuitos de gran escala de integración (LSI Large Scale Integrated)
contenían varios miles de transistores. Los circuitos de muy grande escala de integración,
VLSI (Very Large Scale Integrated) contenían arriba de 100,000 transistores, a principios de
1980. Esta tendencia ha continuado hasta nuestros días, para finales de 1980 se tenían
1,000,000 de transistores dentro de un chip, 10,000,000 transistores a mediados de 1990,
arriba de 100,000,000 transistores en el 2004, y más de 1,000,000,000 de transistores hoy en
día. Un ejemplo de un circuito se muestra en la figura 1.3.

Figura 1.3. Fotografía de un circuito integrado.

Este crecimiento exponencial en la cantidad de dispositivos lógicos o sistemas dentro de un


circuito integrado permite desarrollar múltiples aplicaciones para las distintas áreas.

4
Prácticas de Laboratorio de Circuitos Lógicos .

La gente encargada del desarrollo de esta tecnología logra el diseño de dispositivos más
potentes en espacios muy pequeños, lo cual se realiza por medio de algunas de las siguientes
técnicas: diseño totalmente a la medida (Full Custom Design), al diseñar transistor por
transistor hasta su implementación final en el circuito integrado (CI); diseño de los ASIC
(Application Specific Integrated Circuit), que propone la implementación de los diseños
sobre celdas programables. Dentro de ésta última se encuentra la familia de los Dispositivos
Lógicos Programables (PLD), tanto pequeños como los complejos (CPLD), cuyo nivel de
integración histórico se puede representar primeramente por los arreglos lógicos
programables (PAL), arreglos lógicos genéricos (GAL Generic Array Logic) hasta llegar a
los CPLD y los FPGA (arreglos lógicos programables en campo). Debido a su conectividad
han hecho posible la facilidad y factibilidad de disminuir los costos.

Los elementos mínimos necesarios para poder utilizar estas tecnologías se restringen a la
existencia y uso de una computadora con el software apropiado (por ejemplo: ISE o Vivado
de Xilinx), la interfaz, el programador externo (por ejemplo TopMax de eetools) o la
tarjeta de desarrollo (Nexys 2, Nexys 3, Nexys 4DDR), como lo mostrado en la figura 1.4.

Figura 1.4. Programador universal de eetools (Izquierda), Tarjeta de desarrollo Nexys 2


(derecha).

Un objetivo de estas prácticas del laboratorio y del curso es el de manejar y aplicar el lenguaje
de programación VHDL (lenguaje de descripción en hardware) y Verilog, los cuales son
considerados como las herramientas de diseño por las industrias y las universidades de todo
el mundo, pues presenta grandes ventajas en la planeación y diseño de los sistemas
electrónicos digitales.

Por último, es bueno saber que el manejo de bits en HDL (Verilog y VHDL) se realiza por
medio de operadores, los cuales se muestran a continuación:

5
Prácticas de Laboratorio de Circuitos Lógicos .

Operadores VHDL Verilog


Lógicos AND, NAND, & and, ~& nand
OR, NOR, | or, ~| nor,
XOR, XNOR, ^ xor, ~^ xnor
NOT ~ not,
En condicionales:
“!” negación lógica
“&&“ AND lógica
“||” OR lógica
Aritméticos + signo positivo o suma dos números, + signo o suma, a = b + c;
a <= b + c; - signo o resta, a = b – c;
- signo negativo o resta dos números, * multiplicación, a = b * c;
a <= b - c; / división, a = b / c; (entero)
* multiplicación, a <= b * c; % módulo, a = b % c;
/ división, a <= b / c;
** exponencial
ABS() valor absoluto
MOD módulo
REM resto de la división
Relacionales ==, /=, igualdad, desigualdad == igual, != diferente
Entregan un >, >=, mayor que, mayor o igual que, incluyendo “x” y “z”:
valor booleano <, <=, menor que, menor o igual que === igual,
(true o false) !== diferente
< menor que, <= menor o igual
que
> mayor que, >= mayor o igual
que
Desplazamientos SLL (Shift Left Logic) y SRL (Shift << Desplazamiento a
Right Logic) izquierda
SLA (Shift Left Arithmetic) y SRA >> Desplazamiento a derecha
(Shift Right Arithmetic)
ROL (ROtate Left) y ROR (ROtate
Right)
Otros & concatenación de vectores, A & B, {} Concatenación de
‘0’ & A. operandos, {a,b[3:0],c},
{3{a}} = {a,a,a}

? Condicional,
(condición) ? true_expr :
false_expr

“Si tienes alguna duda, apóyate con tu profesor”

6
Prácticas de Laboratorio de Circuitos Lógicos .

Desarrollo.
Práctica Guiada

Recuerde MOSTRAR sus circuitos funcionando a su profesor para la valoración del trabajo
de laboratorio (TL1).

1. Descripción de las compuertas lógicas básicas con VHDL.

(a) Abrir el programa “ISE Project Navigator” y crear un nuevo proyecto seleccionando
HDL (VHDL) y las características del componente a utilizar, por ejemplo para la Nexys
2: Spartan 3E, XC3S500E, FG320, XST (VHDL/Verilog), ISim (VHDL/Verilog).
Escribir el código en VHDL para declarar las compuertas de 3 entradas: AND, OR,
NAND, NOR, XOR, XNOR y además la NOT.

A continuación se muestra una forma de realizar el programa de las compuertas lógicas


de tres entradas en VHDL. Para mayor información sobre las convenciones, estilos,
sentencias y estructuras, revisar el Apéndice A así como la bibliografía recomendada, al
final de este practicario. Todos los comentarios empiezan con dos guiones ‘--’ y pueden
ir en cualquier parte del código. VHDL es insensible a las mayúsculas y minúsculas,
todas las palabras reservadas (listadas en el Apéndice B) se pondrán en negritas para su
mejor visualización. En el Apéndice C se muestran las operaciones, operadores, puertos
y tipos de datos.

Nota: En el listado, los números del lado izquierdo no pertenecen al código en VHDL, solo
se utilizan para hacer una referencia a los renglones.

1 -- Declaración de Compuertas Básicas de tres entradas


2 -- Autor: Juan Antonio Jaramillo Gómez
3 LIBRARY ieee; -- Declaración de la biblioteca
4 USE ieee.std_logic_1164.ALL;
5 ENTITY compu IS -- Declaración de la Entidad
6 PORT ( -- Declaración de los puertos o pines
7 a,b,c: IN std_logic; -- Entradas
8 sand,sor,sxor,snand, -- Salidas
9 snor,sxnor,snotb: OUT std_logic -- Salidas
10 );
11 -- La asignación de los pines se realiza con el programa PlanAhead o
12 -- con un archivo de restricciones de usuario *.ucf, con el siguiente formato:
13 -- net “nombre_pin” loc = “pin_FPGA” ;#comentario
14 END compu; -- Fin de la entidad
15 ARCHITECTURE a_compu OF compu IS --Declaración de la Arquitectura
16 BEGIN
17 -- PROCESS(a,b,c) --Inicia el proceso

7
Prácticas de Laboratorio de Circuitos Lógicos .

18 -- BEGIN
19 SAND <= a AND b and c; --AND
20 SOR <= a or b OR c; --OR
21 SNAND <= not (a AND b AND c); --NAND
22 SNOR <= NOT (a OR b OR c); --NOR
23 SXOR <= a XOR b xor c; --XOR
24 SXNOR <= NOT (a xor b XOR c); --XNOR
25 SNOTB <= NoT b; --NOT B
26 -- End PROCess; --Fin del proceso
27 enD a_compu; --Fin de la Arquitectura

El renglón 1 y 2 son de comentarios, y en casi todos los renglones existen comentarios.


Los renglones 3 y 4 se utilizan para declarar la biblioteca ‘library’ a utilizarse, y no
siempre tiene que escribirse, solo cuando se necesiten datos de estas, como por ejemplo
las operaciones lógicas y aritméticas.
De la línea 5 a la 14 se declara la entidad ‘entity’ y de la 15 a la 27 se declara la
arquitectura ‘architecture’.

En la ENTIDAD: La línea 6 ‘port’ se utiliza para iniciar la declaración de los puertos o


señales físicas que irán conectadas al circuito. Posteriormente se declaran los nombres
de las señales (a, b, c, sand, sor, etc.) separados por comas y seguidos por dos puntos. A
continuación se colocan los modos de las señales (in, out, inout y buffer) y los tipos de
datos (bit, bolean, bit_vector, integer, std_logic, std_logic_vector, etc.). La línea 10
muestra cómo se cierra la declaración de los puertos.
En las líneas 11 a 13 se comenta como se declaran los pines con un archivo de
restricciones de usuario para el ISE de Xilinx, y se utiliza QuartusII de Altera se escribe
un archivo *.csv (valores separados por comas) que se puede crear en Excell.

En la ARQUITECTURA: En la línea 15 se inicia la arquitectura, dándole un nombre y


se haciendo referencia a la entidad. En la línea 16 comienza ‘begin’ toda la arquitectura.
Las líneas 17 a 26 se declara un proceso, que para este caso no es necesario ponerse,
porque es una asignación con ecuaciones booleanas. En las líneas 19 a la 25 se declaran
dichas ecuaciones, haciendo notar el uso de asignación ‘<=’hacia la izquierda y
terminándola con punto y coma ‘;’. Y finalmente se termina con el comando ‘end
nombre_arquitectura’.

(b) Generar el archivo de programación de las compuertas de tres entradas, después de


asignar los elementos que se conectarán al FPGA. Programar el dispositivo con el
archivo *.bit para un FPGA o un archivo *.jed para un CPLD, ya sea desde el ISE de
Xilinx o bien desde el programa Adept de Digilent y probar el funcionamiento.

(c) Asignar por lo menos una salida a los conectores externos y medir los niveles lógicos
con un multímetro VL [V]= . VH [V]= . Completar la tabla 1.2. . Reportar con
fotos editadas con texto, flechas y recuadros.
Tabla 1.2. Niveles lógicos a las salidas de las compuertas.

8
Prácticas de Laboratorio de Circuitos Lógicos .

A B C AND OR NAND NOR OREX NOREX NOT B


0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1

2. Escribir el código en VHDL para declarar un sistema de alarma para casa habitación que
tenga sensores de apertura activos en alto, que detectarán la apertura de tres puertas (P1,
P2, P3) y cuatro ventanas (V1, V2, V3, V4).

(a) Abrir el programa “ISE Project Navigator” y crear un nuevo proyecto seleccionando
HDL (VHDL) y las características del componente a utilizar, por ejemplo para la Nexys
2: Spartan 3E, XC3S500E, FG320, XST (VHDL/Verilog), ISim (VHDL/Verilog).
Generar el archivo de programación para la alarma, después de asignar los elementos
que se conectarán al FPGA. Programar el dispositivo con el archivo *.bit para un FPGA
o un archivo *.jed para un CPLD, ya sea desde el ISE de Xilinx o bien desde el programa
Adept de Digilent y probar el funcionamiento. Reportar el código y el funcionamiento
con fotos que tengan texto, flechas y recuadros.

Ahora se muestra a continuación una forma de realizar el programa de la alarma para casa
habitación con 7 entradas. Ya no se muestran las líneas numeradas.

-- Alarma para Casa Habitación (también puede ser para un carro)


-- Autor: Juan Antonio Jaramillo Gómez
LIBRARY ieee; -- Declaración de la biblioteca
USE ieee.std_logic_1164.ALL;

-- Declaración de la Entidad
ENTITY alarma IS PORT (
V1, V2, V3, V4, P1, P2, P3: std_logic; -- Entradas
Alarma: OUT std_logic); -- Salidas
END alarma; -- Fin de la entidad

--Declaración de la Arquitectura
ARCHITECTURE a_alarm OF alarma IS
BEGIN
--PROCESS(V1,V2,V3,V4,P1,P2,P3) BEGIN
Alarma <= (V1 OR V2 OR V3 OR V4 OR P1 OR P2 OR P3);
--END PROCESS; --Fin del proceso, para este código se implementó por DataFlow
END a_alarm; --Fin de la Arquitectura

9
Prácticas de Laboratorio de Circuitos Lógicos .

(b) Para enclavar la alarma conectada al FPGA, colocar la salida en uno de los terminales
del FPGA o a un puerto de expansión de la tarjeta de desarrollo y de ahí al circuito con
un buzer activado por un SCR, como se muestra en la figura 1.5). Reporte su
funcionamiento así como las posibles mejoras al circuito para hacerlo más eficiente.

Figura 1.5. Sistema de alarma.

3. Describir las compuertas lógicas básicas empleando Verilog. Abrir el programa “ISE
Project Navigator” y crear un nuevo proyecto seleccionando HDL (Verilog) y las
características del componente a utilizar, por ejemplo para la Nexys 2: Spartan 3E,
XC3S500E, FG320, XST (VHDL/Verilog), ISim (VHDL/Verilog). Escribir el código
en VHDL para declarar las compuertas de 3 entradas: AND, OR, NAND, NOR, XOR,
XNOR y además la NOT. Probar su funcionamiento después de generar el archivo de
programación (*.bit o *.jed). Reportar con fotos editadas con texto, recuadros y flechas.

Se muestra a continuación una forma de realizar el programa de las compuertas


empleando Verilog. Para mayor información sobre las convenciones, estilos, sentencias
y estructuras, revisar el Apéndice D así como la bibliografía recomendada, al final de
este practicario. Todos los comentarios empiezan con dos diagonales ‘//’ para la línea y
también con “/* se abren los comentarios y con “*/” se cierran los comentarios, pudiendo
ir en cualquier parte del código. Verilog si es sensible a las mayúsculas y minúsculas.
En el Apéndice E se da una lista de todas estas palabras, se muestran en negritas en el
código para su mejor visualización. En el Apéndice F se muestran las operaciones,
operadores, puertos y tipos de datos para Verilog.

Nota: En el listado, los números del lado izquierdo no pertenecen al código en Verilog, solo
se utilizan para hacer una referencia a los renglones.

1 // Declaración de las compuertas básicas


2 // Autor: Juan Antonio Jaramillo Gómez
3 module compuertas (
4 input wire a, // Entradas a, b y c de las compuertas
5 input wire b,
6 input wire c,
7 output wire sand, // declaración de las 6 salidas and, nand, or, nor, xor, xnor
8 output wire snand,
9 output wire snor,

10
Prácticas de Laboratorio de Circuitos Lógicos .

10 output wire sor,


11 output wire sxnor,
12 output wire sxor
13 );
14 assign sand = a & b & c; //& con “Alt” + “38” o está arriba del número 6
15 assign snand = ~( a & b & c); //~ con “Alt” + “126” o con “AltGr” + “+”
16 assign sor = a | b | c; // | con “Alt” + “124” o la tecla al lado izquierdo del 1
17 assign snor = ~( a | b | c);
18 assign sxor = a ^ b ^ c; // ^ sale con “AltGr”+ “{”
19 assign sxnor = ~( a ^ b ^ c);
20 endmodule

El renglón 1 y 2 se ponen comentarios, empiezan con doble diagonal “//”. Aunque


también se pueden colocar dentro de los símbolos diagonal “/” y asterisco “*” como se
muestra enseguida: /* comentarios */.

En el renglón 3 se abre el módulo “module” seguido del nombre del módulo. En los
renglones 4 al 6 se declaran las entradas “input” y van alambradas “wire”, enseguida
del renglón 7 al 12 se declaran las salidas “output”, también alambradas, y se cierra el
módulo en el renglón 13. Todas las entradas y salidas van separadas por comas dentro
de los paréntesis del módulo y se cierra con punto y coma.

De la 14 a la 19 se declaran las asignaciones con “assign” “variable_salida = función” y


se termina con punto y coma.

Y por último en la línea 20 se cierra el módulo con “endmodule”.

4. Describir un sistema de alarma para casa habitación utilizando Verilog. Abrir el


programa “ISE Project Navigator” y crear un nuevo proyecto seleccionando HDL
(Verilog) y las características del componente a utilizar (i.e. para la Nexys 2: Spartan
3E, XC3S500E, FG320, XST (VHDL/Verilog), ISim (VHDL/Verilog)). Escribir el
código en Verilog para declarar un sistema de alarma que tenga sensores de apertura,
activos en alto, en tres puertas (P1, P2, P3) y cuatro ventanas (V1, V2, V3, V4). Probar
su funcionamiento después de generar el archivo de programación *.bit junto con el
circuito de alarma. Reportar con fotos editadas con texto, recuadros y flechas.

5. Implementar un circuito con HDL que permita controlar el encendido y apagado de una
carga (foco, motor, apertura-cierre de puertas, etc.) desde dos puntos, similar a los
apagadores de escaleras. El cableado de los controles debe de estar por lo menos
separado a un metro. Reportar el código utilizado y fotos de su funcionamiento editadas
con texto.

11
Prácticas de Laboratorio de Circuitos Lógicos .

6. Implementar un circuito (utilizando circuitos lógicos programables con HDL) que por
medio del paso de una mano sobre un sensor de luz (i. e. LDR), que impida la incidencia
de la luz sobre el sensor, y la presencia de una persona (con otro sensor), suene el timbre
de una casa. Reportar el código utilizado y fotos de su funcionamiento con texto.

7. Diseñar un circuito (utilizando HDL) que por medio de la presencia de una persona o
por el aumento de la temperatura en una habitación, se encienda un ventilador. Si utiliza
algún dispositivo programable escriba su listado.

8. Utilizando HDL diseñar un circuito que permita el acceso a un banco de doble puerta,
que solo permita abrir una puerta a la vez, nunca las dos al mismo tiempo. Si utiliza
algún dispositivo programable escriba su listado.

9. Realizar sus comentarios y conclusiones. Todos los códigos van en una sola columna
con comentarios.

NOTA: Respetar la numeración de cada punto de este formato en el reporte escrito [máximo
10 cuartillas si se entrega impreso (Letra Times New Roman de 12ptos, interlineado
sencillo)].

Proyectos opcionales utilizando PLDs y HDL.

Diseñar y construir una alarma para autos de juguete.

Diseñar y construir un sistema para el control de cierre y apertura de las puertas de un


elevador.

Diseñar y construir un sistema para detectar el nivel de llenado de dos tanques, tal que avise
cuando el nivel de cualquiera de los tanques esté por debajo del 10% de llenado.

Diseñar y construir un sistema para detectar la posición del tren de aterrizaje de un avión.

Diseñar y construir un sistema para conocer el estado de un alimentador de pelotas de ping


pong, donde se muestre si tiene o no pelotas y si son las suficientes para llenar una caja que
necesita 3 pelotas.

Diseñar y construir un sistema para el control de encendido y apagado de luces exteriores.

Diseñar y construir un detector de objetos.

Diseñar y construir un detector de paso.

Diseñar y construir un instrumento musical óptico (ej. Un piano óptico).

12
Prácticas de Laboratorio de Circuitos Lógicos .

Diseñar y construir un sistema automático para el secado de las manos.

Diseñar y construir un sistema automático para el lavado de las manos.

Diseñar y construir un sistema automático para los inodoros.

Diseñar y construir un sistema para detectar la señal infrarroja de un control de TV.

Se desea diseñar un circuito lógico, empleando compuertas básicas, para realizar todas las
operaciones lógicas dentro de una ALU (unidad aritmética lógica) manejando datos de
tamaño de nibbles. (Ver figura 1.6).

Figura 1.6. Ejemplo de una ALU.

Se desea diseñar un circuito lógico que pueda realizar todas las operaciones lógicas dentro
de una ALU (unidad aritmética lógica) manejando datos de tamaño de bytes.

Se desea diseñar un circuito lógico que pueda realizar todas las operaciones lógicas dentro
de una ALU (unidad aritmética lógica) manejando datos de tamaño de words (2 Bytes).

"Imprime la parte UPIITA a tu trabajo, busca información en la red y compártela


con tus compañeros".

Recuerda que:
"La práctica hace al maestro"

¡Si tienes alguna duda apóyate en tu profesor!

“Intercambia opiniones y experiencias con tus compañeros de grupo, acerca del


conocimiento que has adquirido después de haber finalizado la práctica.”

13
Prácticas de Laboratorio de Circuitos Lógicos .

A continuación se presenta una tabla para el registro de los puntos entregados en el


laboratorio de la práctica 1, (TL= Trabajo de Laboratorio, R=Reporte, P=Práctica).

Tabla de registro para el trabajo de laboratorio (TL1).

Lab CiLo Nombre de la práctica


Grupo Punto 1 Punto 2 Punto 3 Punto 4 Punto 5 Punto 6 Práctica guiada
Comp. Alarma Comp. Alarma Apag. Timbre-
Nombre mesa Empresa VHDL VHDL Verilog Verilog Escal. sensor comentarios TL1 R1 P1
1
1
1
2
2
2
3
3
3
4
4
4
5
5
5
Fechas 3hr. 6pts 8pts
Compuertas de tres entradas con VHDL
Alarma 3 puertas y 4 ventanas con VHDL y circuito de alarma
Compuertas de 3 entradas con Verilog
Alarma 3 puertas y 4 ventanas con Verilog y circuito de alarma
Implementar un apagador de escalera, dist.1m
Timbre activado con 2 sensores
7. D. encender ventilador por la
presencia de una persona o por el
aumento de la temperatura en una
habitación
8. D. acceso a un banco de doble puerta,
que solo permita abrir una puerta a la
vez.

14
Prácticas de Laboratorio de Circuitos Lógicos .

Página
Dejada
En
Blanco

Page
Left
In
Blank

15

También podría gustarte