practicalide.pdf

6
BENEMERITA Facultad Licenciatura en I Sis Nombre Víctor Hugo Gabriela Yanely Cate A UNIVERSIDAD AUTONO PUEBLA. de Ciencias de la Computació Ingeniería en Ciencias de la Comp stemas Digitales (ICCM-254) Otoño 2015. Practica No. 5 edrático: Dr. Gabriel Juárez Díaz. Fecha. 24/Septiembre/2015. OMA DE ón. putación.

Upload: gabriela-guzman

Post on 06-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: practicalide.pdf

BENEMERITA UNIVERSIDAD AUTONOMA DEPUEBLA.Facultad de Ciencias de la Computación.

Licenciatura en Ingeniería en Ciencias de la Computación.

Sistemas Digitales (ICCM-254)

Otoño 2015.

Practica No. 5

NombreVíctor HugoGabrielaYanely

Catedrático: Dr. Gabriel Juárez Díaz.

Fecha. 24/Septiembre/2015.

BENEMERITA UNIVERSIDAD AUTONOMA DEPUEBLA.Facultad de Ciencias de la Computación.

Licenciatura en Ingeniería en Ciencias de la Computación.

Sistemas Digitales (ICCM-254)

Otoño 2015.

Practica No. 5

NombreVíctor HugoGabrielaYanely

Catedrático: Dr. Gabriel Juárez Díaz.

Fecha. 24/Septiembre/2015.

BENEMERITA UNIVERSIDAD AUTONOMA DEPUEBLA.Facultad de Ciencias de la Computación.

Licenciatura en Ingeniería en Ciencias de la Computación.

Sistemas Digitales (ICCM-254)

Otoño 2015.

Practica No. 5

NombreVíctor HugoGabrielaYanely

Catedrático: Dr. Gabriel Juárez Díaz.

Fecha. 24/Septiembre/2015.

Page 2: practicalide.pdf

Introducción.

Los circuitos lógicos se clasifican en dos tipos:

Combinacionales: Es aquel cuyas salidas solo dependen de sus entradasactuales.

Secuencial: Es aquel cuyas salidas no solo dependen de sus entradasactuales, sino también de una secuencia de la entrada anterior.

Para esta práctica de laboratorio utilizáramos VHDL implementar un sistemasecuencial que al recibir 4 unos lógicos en la entrada ponga su salida, la salidadeberá

Ser mostrada en un display (ánodo) que se encuentra integrado en la tarjeta

CPLD que estamos usando.

La salida serán los números del 0-4

Objetivos.

Implementar en una tarjeta CPLD usando VHDL e ISE el siguiente diagramade estados:

Marco teórico.

Diagrama de estados

Se denomina diagrama de estados a una representación gráfica de la matriz detransiciones, en la cual los estados se representan como círculos (orectángulos) y las transiciones como líneas orientadas, que conectan losestados, y que representan los eventos de entrada.

Si puede describirse un sistema mediante un diagrama de estados o a travésde las matrices de transiciones y de salida se dice que el sistema essecuencial. En un sistema secuencial las salidas dependen de las entradaspresentes y de los valores de las entradas anteriores, mientras que en unsistema combinacional las salidas sólo dependen de las entradas presentes.

Page 3: practicalide.pdf

Las flechas que conectan un círculo con otro muestran cómo cambia un estadoa otro cuando se aplica un pulso de reloj. Se emplean diagramas de transiciónpara ayudar a describir, analizar y diseñar contadores y otros circuitossecuenciales.

Material.

Tarjeta CPLD. Cable. (UTP opcional) Software para programar en VHDL.

Desarrollo de la practica.

1. El problema a resolver es el siguiente: implementar un sistemasecuencial que al recibir 4 unos lógicos en la entrada ponga su salida yque muestre los números del 0 al 4

2. Se crea un proyecto en el software de ISE (Xilinx) con los siguientesrequisitos.

Family: CoolRunner2Device: XC2C64APackage: VQ44

Speed: -7

3. La solución que nosotros proponemos es:

library IEEE;use IEEE.STD_LOGIC_1164.ALL;

entity diagrama is port(clk,x: in std_logic;

z: out std_logic;LED:out STD_LOGIC_VECTOR (6 downto 0));

end diagrama;

architecture Behavioral of diagrama istype estados is (d0,d1,d2,d3);

signal edo_presente, edo_futuro: estados;begin

proceso1: process (edo_presente, x) begincase edo_presente is

when d0 => z <= '0';if x='1' then

edo_futuro <= d1;else

edo_futuro <= d0;end if;

when d1 => z <= '0';

Page 4: practicalide.pdf

if x='1' thenedo_futuro <= d2;

elseedo_futuro <= d0;

end if;when d2 => Z <= '0';

if x='1' thenedo_futuro <= d3;

elseedo_futuro <= d0;

end if;when d3 => z <= '0';

if x='1' thenedo_futuro <= d0;z<='1';

elseedo_futuro <= d0;z<='0';

end if;end case;case edo_presente iswhen d0 => LED <= "0000001";--0when d1 => LED <= "1001111";--1when d2 => LED <= "0010010";--2when d3 => LED <= "0000110";--3end case;

end process proceso1;proceso2: process(clk) begin

if (clk'event and clk='1') thenedo_presente <= edo_futuro;

end if;end process proceso2;end Behavioral;

4. Asignar los pines a las entradas y salidas.5. Compilamos y se genera el archivo .jed6. Se carga el .jed a la tarjeta CPLD mediante el programa (desarrollado en

java)Nota: Para este paso es necesario tener instalado la maquinavirtual de java. De lo contrario no se puede programar la tarjeta.

7. Se conectan los cables a los pines que destinamos para las entradas ysalidas.

8. Se realizan pruebas para observar el comportamiento y checar posibleserrores.

Page 5: practicalide.pdf

Resultados.

Page 6: practicalide.pdf

Conclusiones.

Como podemos observar, el propósito es un contador del 0 al 3, cuando elcontador esta en 3 pasa a 0. En el diagrama de estados nos muestra que si elreloj nos da un uno, este se suma en caso contrario (es decir si nos da un cero)el cantador se reinicia en 0.

Además hay un botón que nos permite pausar el proceso de contar. Ademásde que los diagramas de transición son muy útiles para describir y analizarcontadores.

Bibliografía.

Mano Morris M. (2003). Diseño digital. Ciudad de México: Pearsoneducación.

Notas de sistemas digitales. Otoño 2015, Dr Gabriel Juárez Díaz. Tocci R. Widner N. (2003). Flip-Flops y dispositivos relacionados. En

Sistemas digitales, principios y aplicaciones (886). México: Pearson.