0% encontró este documento útil (0 votos)
60 vistas

Practice 02 CiLo 2019

Este documento describe cómo simular circuitos lógicos básicos como compuertas de 3 entradas usando el simulador ISim de Xilinx. Instruye al estudiante a simular compuertas lógicas como AND, OR y NOT usando archivos VHDL o Verilog de la práctica anterior y reportar la simulación con texto e imágenes. También describe cómo simular un sistema de alarma de casa habitación usando el simulador.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
60 vistas

Practice 02 CiLo 2019

Este documento describe cómo simular circuitos lógicos básicos como compuertas de 3 entradas usando el simulador ISim de Xilinx. Instruye al estudiante a simular compuertas lógicas como AND, OR y NOT usando archivos VHDL o Verilog de la práctica anterior y reportar la simulación con texto e imágenes. También describe cómo simular un sistema de alarma de casa habitación usando el simulador.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 11

Prácticas de Laboratorio de Circuitos Lógicos .

Práctica No. 2.
Ambiente de desarrollo y su simulador.
Development software and silulator.

¿Quieres algo?, ¡¡¡vé y lógralo, punto!!!


Unidad Temática: II

Duración: 3.0 hrs. (Revisión 1er. hora uso del simulador con VHDL, 2da. hora
uso del simulador con Verilog)

Unidad de Competencia Específica:


Desarrolla programas mediante un lenguaje descriptivo de hardware HDL (VHDL y/o
Verilog) en un ambiente de desarrollo.

Competencia Específica:
Implementa programas descritos con HDL para manejar el simulador del ambiente de
desarrollo en los CPLD o FPGA elegidos.

En ésta práctica usted aprenderá a simular en el ambiente de desarrollo lo siguiente:

• Compuertas lógicas de tres entradas con VHDL y Verilog.


• Una alarma 3 puertas y 4 ventanas con VHDL y Verilog y circuitos de alarma sonora
con enclavamiento externo.
• Un apagador de escalera a una distancia de 1m.
• Un sistema de timbrado activado por dos sensores.
• Un sistema de encendido de un ventilador por medio de la presencia de una persona
o por el aumento de la temperatura en una habitación.
• Un sistema de acceso a un banco de doble puerta, que solo permita abrir una puerta a
la vez.
• Reto 1: contador de 4 bits.
• Reto 2: modulador por ancho de pulso (PWM).

In this practice, you will learn to simulate the following points in the development
environment software:

• Three-input logic gateways with VHDL and Verilog.


• One alarm system with 3 doors and 4 windows using VHDL and Verilog, and audible
alarm circuits with external interlocking.
• A stair damper at a distance of 1m.
• A two-sensor activated ring system.
• A fan ignition system with the presence of a person or by the increase of the
temperature in a room.

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

• An access system for a double door bench, which allows only one door to be opened
at a time.
• Challenge 1: 4 bit counter.
• Challenge 2: PWM.

Pre-reporte dos.
(Previous work two).

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

1. Investigar las diferentes formas de cómo se simula en el ISE de Xilinx y en el Quartus II


de Altera, o en el programa que se utilizará.

2. Escribir los códigos de HDL (VHDL y Verilog) para simular o describir los pasos para
realizar la simulación en los programas que se utilizarán, considerando que se utilizarán los
mismos elementos de diseño de la práctica previa (Compuertas: AND, OR, NAND, NOR,
XOR, XNOR y NOT y un sistema de alarma). Ver figuras 2.1 y 2.2.

Figura 2.1. Entidad para el arreglo de compuertas de tres entradas para simular.

Figura 2.2. Sistema de alarma para casa habitación para simular.

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.

"No darse por vencido y ayudarse mutuamente en su aprendizaje es una


característica de los alumnos UPIITA-IPN".

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

Material y Equipo.
Components and equipment.

Programas (ISE de Xilinx, Vivado, Vivado, 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, además de
corroborar los componentes que se tengan en una tarjeta de desarrollo.

Introducción.
Introduction.

Un simulador, en particular un simulador lógico se utiliza para el proceso de verificación en


el diseño de cualquier sistema, teniendo como ventaja la de proporcionar información del
comportamiento del sistema antes de construirlo. Los simuladores permiten interactuar
directamente con los diseños creados y así obtener realimentación de sus comportamientos.

La simulación lógica se usa para predecir el comportamiento de los circuitos digitales y los
HDL. Tienen varios grados de abstracción física como a nivel transistor, nivel compuertas
(gate-level), nivel transferencia de registros (RTL Register Transfer Level), nivel de sistema
electrónico (ESL Electronic System Level) o nivel comportamental (behavioral level).

El simulador del ISE de Xilinx es el ISim, y provee completas características para simular
HDL. La simulación es ahora un paso fundamental dentro del flujo de diseño en el entorno.
El ISim se muestra en la figura 2.3 y tiene las siguientes características:
• Soporta mezcla de lenguajes
• Soporta VHDL-93 y Verilog 2001
• No requiere una licencia en especial
• Soporta bloques HardIP, PPC, MGT, PCIe, etc.
• Soporta AXI BFM (Bus Functional Model)
• Capacidad de Debugeo
• Fácil de usar - un clic para compilar y simular
• Capacidad de Post-procesamiento
• Análisis de potencia y optimización usando SAIF
• Editor de memoria para vista y debugeo de elementos de memoria
• Integrado con el ISE Design Suite y la aplicación PlanAhead
• Con un clic re-compila y re-lanza el simulador
• Se puede acelerar hasta 50x la simulación RTL
• Construcción de bibliotecas para simulación
• No requiere mapeo adicional o compilación
• Trazador y visualizador de formas de ondas, debugeo de la fuente de HDL
• Capacidad de visualizar las formas de onda
• Re-compilación multiproceso
• Capacidad de co-simulación de hardware

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

• Descarga de un diseño o parte del diseño


• Simulación por lotes, etc.

Figura 2.3. Ejemplo del simulador ISim de Xilinx.

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

Desarrollo.
Procedure.

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

1. A partir del programa de las compuertas lógicas básicas de tres entradas con HDL
(VHDL o Verilog) de la práctica anterior, realizar la simulación en el ISim de Xilinx o
similar. Reportar la simulación con texto explicativo y flechas o llaves que indiquen que
pasa en por lo menos 3 puntos de la simulación de estados contra tiempo.
Using the HDL (VHDL or Verilog) file that describe the 3 input basic gates, simulate
their behavioral using ISim of Xilinx or similar and report with edited pictures.

Solo para recordar, el archivo de VHDL utilizado se lista a continuación:

Library ieee; -- Declaración de la biblioteca


use ieee.std_logic_1164.all;

entity compu IS -- Declaración de la Entidad


port ( -- Declaración de los puertos o pines
a,b,c: IN std_logic; -- Entradas
sand,sor,sxor,snand,snor,sxnor,snotb: OUT std_logic); -- Salidas
END compu; -- Fin de la entidad

ARCHITECTURE a_compu OF compu IS --Declaración de la Arquitectura


BEGIN
-- PROCESS(a,b,c) --Inicia el proceso
-- BEGIN
SAND <= a AND b AND c; --AND
SOR <= a OR b OR c; --OR

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

SNAND <= NOT (a AND b AND c); --NAND


SNOR <= NOT (a OR b OR c); --NOR
SXOR <= a XOR b XOR c; --XOR
SXNOR <= NOT (a XOR b XOR c); --XNOR
SNOTB <= NOT b; --NOT B
-- END PROCESS; --Fin del proceso
END a_compu; --Fin de la Arquitectura

Y el archivo de Verilog es:

// Compuertas básicas de 3 entradas con Verilog


module compuertas (
input wire a,b,c, // Entradas a, b y c de las compuertas
output wire sand,snand,sor,snor,sxor,sxnor); // declaración de las 6 salidas
// Asignaciones de las compuertas básicas de 3 entradas
assign sand = a & b & c; //& con "Alt" + "38" o está arriba del número 6
assign snand = ~( a & b & c); //~ con "Alt" + "126" o con "AltGr" + "+"
assign sor = a | b | c; // | con "Alt" + "124" o la tecla al lado del 1
assign snor = ~( a | b | c);
assign sxor = a ^ b ^ c; // ^ sale con "AltGr"+ "{"
assign sxnor = ~( a ^ b ^ c);
endmodule

Existen diferentes pasos para simular, dependiendo de la versión del programa que se tenga.
En la versión 10 del ISE se podía declarar un archivo con el ayudante ‘Test Bench
Waveform’, el cual se ligaba al archivo de VHDL para realizar la simulación. En versiones
más actuales como la 12, 13 y 14 se asignan los valores en el simulador con la ayuda del
botón derecho del ratón. A continuación en la figura 2.4 se muestran los resultados de una
simulación utilizando el Active HDL-Sim y en la 2.5 se muestra la simulación utilizando el
ISim.

Figura 2.4. Simulación de las compuertas de tres entradas en el Active-HDL Sim.

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

Figura 2.5. Simulación de las compuertas de tres entradas en el ISim de Xilinx.

2. A partir del programa de la alarma de 7 entradas con HDL (VHDL o Verilog) de la


práctica anterior, realizar la simulación de dicho archivo con el ISim de Xilinx o similar.
Reportar la simulación con texto explicativo y flechas o llaves que indiquen que pasa en
por lo menos 3 puntos de la simulación de estados contra tiempo. Se tienen que proteger
tres puertas (P1, P2, P3) y cuatro ventanas (V1, V2, V3, V4).
Using the HDL (VHDL or Verilog) file that describe an alarm system to protect a house
with 3 doors and 4 windows, simulate their behavioral using ISim of Xilinx or similar
and report with edited pictures.

Solo para recordar, el archivo utilizado para la alarma que protege las 7 entradas de la casa
habitación es:

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


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: ventanas y puertas
Alarma: out std_logic); -- Salida alarma
end alarma; -- Fin de la entidad
--Declaración de la Arquitectura
architecture a_alarm of alarma is
begin
Alarma <= (V1 OR V2 OR V3 OR V4 OR P1 OR P2 OR P3);
end a_alarm; --Fin de la Arquitectura

// Alarma con 7 entradas para casa habitación con Verilog


module alarma (
input wire p1,p2,p3,v1,v2,v3,v4, // Entradas de puertas y ventanas
output wire alarma); // declaración de la salida

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

// Asignación de la alarma de 7 accesos


assign sor = p1 | p2 | p3 | v1 | v2 | v3 | v4; // | con "Alt" + "124" o debajo de “Esc”
endmodule

El resultado de la simulación del código se muestra en la figura 2.6, respetando los pasos
para simulación, según el programa empleado.

Figura 2.6. Simulación de la alarma.

Con cualquier señal activada, la alarma se activa, dado que está implementada en una arreglo
tipo compuerta OR de siete entradas.

Challenge 1 (this point substitute points 1).


Simulate a 4 bit counter with binary output.

Challenge 2 (this point substitute points 2).


Simulate a PWM to control four levels of a LED intensity.

3. Simular un circuito con HDL que:


Simulate a circuit using HDL to:

a) 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.
Allow to control the ignition and shutdown of a load (focus, motor, opening-closing
doors, etc.) from two points, similar to the staircases.
b) Por medio del cambio en una entrada hacia un ‘1’ (i.e. sensor de luz) y el cambio de
la otra entrada hacia un ‘0’ (i.e. sensor de peso), se habilite un led de aviso de que
hay alguien enfrente de la casa.
By means of the change in an input to a '1' (ie light sensor) and the change of the
other input to a '0' (ie weight sensor), a warning LED is enabled that there is someone
in front of the house.
c) Por medio de la presencia de una persona o por el aumento de la temperatura en una
habitación, se encienda un ventilador.

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

By means of the presence of a person or by the increase of the temperature in a


room, a fan is turned on.
d) Permita el acceso a un banco de doble puerta, que solo permita abrir una puerta a la
vez, nunca las dos al mismo tiempo.
Allow access to a double door bank, which only allows one door to open at a time,
never both at the same time.

Reportar el código utilizado y fotos de la simulación, editadas para ver la explicación en


distintos puntos de interés.
Report the code used and photos of the simulation, edited to see the explanation in different
points of interest.

4. Realizar sus comentarios y conclusiones. Todos los códigos van en una sola columna y
con comentarios.
Write your comments and conclutions. All the codes are presenten in only one column
with comments by line or blocks.

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

Proyectos opcionales utilizando PLDs y HDL.


Optional projects using PLDs and HDL.

Simular una alarma para autos de juguete.


Simulate an alarm for cars toys.

Simular un sistema para el control de cierre y apertura de las puertas de un elevador.


Simulate a control system of closing and opening for the doors of an elevator.

Simular 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.
Simulate a system to detect the level of filling of two tanks, so that it warns when the level of
any of the tanks is below the 10% of filling.

Simular un sistema para detectar la posición del tren de aterrizaje de un avión.


Simulate a system to detect the landing gear position of an airplane.

Simular 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.
Simulate a system to know the status of a ping pong ball feeder, showing whether or not it
has balls and if they are enough to fill a box that needs 3 balls.

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

Simular un detector: de objetos, de paso, de personas, señal de control remoto de TV, etc.
Simulate: an object detector, a pass object detector, a person detector, a TV remote control,
etc.

Simular un instrumento musical óptico (ej. Un piano óptico).


Simulate an optic musical instrument (example: an optic piano).

Simular un sistema automático para: el secado de las manos, el lavado de las manos, la
entrega de papel, para echar agua en los inodoros, el encendido y apagado de luces interiores
y exteriores, etc.
Simulate an automatic system to: dry hands, washing hands, towel paper dispenser, WC
water dispenser, on/off control exterior lights.

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


con tus compañeros".

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


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

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


laboratorio de la práctica 2, (TL= Trabajo de Laboratorio, R=Reporte, P=Práctica).
Next, a table is presented to record the points delivered in the laboratory of practice 2, (LW
= Laboratory Work, R = Report, P = Practice).

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

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


Laboratory work register (LW2)

Nombre de la práctica
Lab CiLo Ambiente de desarrollo y su
Grupo Punto 1 Punto 2 Punto 3 simulador
Simula. Simula
comp. alarma Comments LW2
Nombre mesa Empresa HDL HDL Aplic. Comentarios TL2 R2 P2
1
1
1
2
2
2
3
3
3
4
4
4
5
5
5
Fechas 3hr. 3pts 3pts
Challenge 1
Challenge 2
Challenge 1 counter. Challenge 2 PWM.
Simulación de las compuertas de 3 entradas con HDL
Simulate with HDL 3input basic gates.
Simulación de la alarma 3 puertas y 4 ventanas con HDL
Simulate with HDL 3 doors and 4 windows alarm system.
Simulación de:
a) apagador de escaleras
b) aviso de personas con sensores
c) encendido de ventilador con sensores
d) doble puerta para banco
encendido de una carga con sensores
Simulation of:
a) stair damper
b) notice of people with sensors
c) fan ignition with sensors
d) double door for bench
ignition of a load with sensors

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

Página dejada
en blanco

11

También podría gustarte