Sunteți pe pagina 1din 14

Benemrita Universidad Autnoma De Puebla

FACULTAD DE CIENCIAS DE LA ELECTRNICA


REPORTE DE LA PRCTICA No. 4 Aplicacin de cartas ASM

Nombre de la Asignatura: SISTEMAS DIGITALES SECUENCIALES Profesora:


M.C. Ana Ma. Rodrguez Domnguez

Integrantes del Equipo:


Michelle Chaires Villalba Silvia Rosales Hernndez Javier Ruiz Hernndez Magali Valdivieso Morales Mayo 2013

1. Introduccin
El diagrama de ASM (Algorithm State Machine / Algoritmo de la Mquina de Estados) es como un diagrama de estado, pero menos formal y por tanto ms fcil de entender. Un grfico de ASM es un mtodo para describir las operaciones por orden de un sistema digital. Componentes bsicos de un diagrama de estado

Caja de estado

Caja de decisin

Caja de accin condicional

Las cartas ASM brindan una manera de representar el comportamiento de una mquina secuencial en la forma de un algoritmo. Sus smbolos nos recuerdan a los diagramas de flujo pero difieren esencialmente, ya que las cartas ASM describen hardware y no software. [4] pp 165 -188 Con esta prctica se pretende desarrollar la capacidad de visualizar y concretar la solucin de un problema real mediante un algoritmo, sintetizando luego un sistema digital secuencial mediante la descripcin de la mquina secuencial en VHDL y su sntesis en un elemento programable (FPGA Spartan 3E XC3S250E.). .

2. Objetivos
Objetivo General: Disee una mquina secuencial para el control de un sistema de semforos en el cruce de una carretera con trfico intenso y un camino de trfico regular que incluye sensores.

Objetivos Especficos:
Obtenga un diagrama de bloques que describa la parte que realizar el

control y la parte de arquitectura externa agregando todos los elementos que sean necesarios
Indique todas las seales de entrada y salida a cada uno de los elementos del

diagrama de bloques
Realice una carta ASM para el control Sintetice la carta mediante la descripcin en VHDL y la sntesis en GAL o FPGA Pruebe su circuito y haga las correcciones necesarias

Realice su reporte segn el formato indicado

3. Especificaciones del Sistema


Un camino rural cruza una carretera como muestra la figura 1.

Figura 1. Esquema del Sistema de Semforos

El camino contiene sensores que causan que una seal C se haga verdadera cuando uno o ms autos estn sobre el camino en las posiciones llamadas C. Se desea controlar los semforos en sta interseccin de manera que, en ausencia de coches esperando en el camino rural, la luz de la carretera sea verde. Si un carro activa el sensor en la posicin C,

la luz de la carretera debe pasar a amarillo y luego a rojo y la luz del camino rural pasa a verde. La luz del camino permanecer en verde solamente mientras los sensores indiquen presencia de uno o ms carros, pero nunca ms de un tiempo t, despus del cual debe pasar a amarillo y luego a rojo y la luz de la carretera pasar a verde. El trfico de la carretera no podr ser interrumpido nuevamente por el trfico del camino hasta que haya pasado al menos un tiempo T.

Se deben especificar claramente los elementos que conforman la arquitectura (figura 2) del sistema y sus conexiones con el elemento de control (carta ASM).

Arquitectura

Control

Figura 2. Diagrama de bloques del Sistema

Estas son las especificaciones MNIMAS que debe cumplir el circuito, si ustedes quieren, pueden aadir ms caractersticas o hacer un prototipo, pero es opcional.

4. Marco terico
Las cartas ASM son formas de descripcin de tipo grfico especialmente enfocadas, como indica su nombre, a representar algoritmos secuenciales fue creado por Chris Clare. Este algoritmo especifica mediante un diagrama de flujo los pasos del procedimiento y los caminos de decisin. Al ser un diagrama de flujo para un algoritmo hardware debe tener unas caractersticas especiales que liguen de cerca el desarrollo hardware del algoritmo. Una carta ASM contiene necesariamente una entrada de comienzo (tipo XCiclo, XS o XStart). Una carta ASM puede contener un solo bloque ASM junto con un reloj que controle su paso por l. Una carta ASM puede contener varios bloques ASM, cada uno de ellos con una caja de estado, siempre que forme un grafo cerrado, otros pueden contener cajas de decisin con cajas de accin condicional y otros pueden contener cajas de decisin sin cajas de accin condicional.

El desarrollo de macro operaciones en micro operaciones es un proceso algortmico secuencial, por lo que la descripcin de Sistemas Digitales a nivel RT (los cuales no son ms que una manera diferente de dibujar un diagrama de estado clsico) cae plenamente dentro de la materia representada con cartas ASM. Es una herramienta que da informacin sobre la estructura y sobre el comportamiento dinmico del sistema que se describe con ella, aspectos ambos de sumo inters. Adems la carta ASM proporciona informacin tanto del algoritmo con los datos como de la secuencia de control, por lo que la propia herramienta est muy prxima a las implementaciones hardware de las Unidades de Datos y de Control. Tambin existen otros tipos descripciones que se usan para las maquinas secuenciales como la descripcin de alto nivel y descripcin formal.

5. Hiptesis
Para empezar la a realizar la prctica lo primero que se harn los cdigos en vhdl de los siguientes puntos: Contador Discrecin del semforo Divisor de frecuencia Y despus juntarlos en un mismo archivo. (Esto se har para que se mas fcil ya que si hay un error lo podamos detectar con mayor facilidad.)

6. Procedimiento
Las partes digitales del sistema es el programa en el lenguaje de VHDL. Mientras que la FPGA. El sistema se dividi en tres mdulos la parte de la descripcin del semforo, el contador y el divisor de frecuencia. La discrecin de del control es una manera fcil de y se entiende con su diagrama. Una seal es signo de medio que informa, avisa o advierte algo, en este caso las seales de ausencia y presencia de un coche (sensor) y sus salidas estn dadas por el cambio de luces del semforo. Cuando una seal llega al sensor, esta es una orden que recibe el control, en pocas palabras, la deteccin de un coche hace que se active o desactive. Las seales que entran y salen del control son compatibles con las que entran y salen de los elementos a controlar, ya que cuando un semforo se activa el otro tiene que hace de igual forma cambios. Las cartas ASM es una tcnica que nos ayudara a concretar la solucin de este problema real mediante un algoritmo, sintetizando luego un sistema digital secuencial mediante la descripcin de la mquina secuencial en VHDL y su sntesis en un elemento programable ( FPGA,).

7. Metodologa de diseo del experimento o sistema

Este es la carta ASM de nuestro semforo .

8. Implementacin del experimento o sistema


Simulacin
Se muestran lo stres mofudlos: Contador Discrecin del semforo Divisor de frecuencia

Es el primer modulo
-- File: contador.vhd -- created by Design Wizard: 05/01/13 21:31:51 ---{{ Section below this comment is automatically maintained -- and may be overwritten --{entity {conta} architecture {comp}} library IEEE; use IEEE.std_logic_1164.all; entity conta is port ( CLK: in STD_LOGIC; reset: in STD_LOGIC; t10: out STD_LOGIC; t15: out STD_LOGIC); end conta; --}} End of automatically maintained section architecture comp of conta is signal Q: integer range 0 to 15; begin process (CLK, reset) begin if reset = '0' then Q<=0; elsif (CLK'event and CLK='1') then Q<= Q+1; end if; end process; t10<= '1' when Q=10 else '0'; t15<= '1' when Q=15 else '0'; end comp;

Cdigo en vhdl.

El segundo modulo
----{{ Section below this comment is automatically maintained ---- and may be overwritten ----{entity {semaf} architecture {arq}} -library IEEE; use IEEE.std_logic_1164.all; entity semaf is port ( CLK, t10, t15, C: in STD_LOGIC; SR1, SA1, SV1, SR2, SA2, SV2, RESET: out STD_LOGIC ); end semaf; --}} End of automatically maintained section architecture arq of semaf is type estado is (E0, E1, E2, E3); signal edo_pres: estado; begin process (CLK) begin if CLK'event and CLK='1' then case edo_pres is when E0 => if C='1' and t10='1' then edo_pres <= E1; else edo_pres <= E0; end if; when E1 => if t10='1' then edo_pres <= E2; else edo_pres <= E1; end if; when E2 => if (C='1' and t15='1') then edo_pres <= E3; else edo_pres <= E2; end if; when E3 => if t10='1' then edo_pres <= E0; else edo_pres <= E3; end if; end case; end if; end process;

process (t10, t15, c) begin case edo_pres is when E0 => SV1 <= '1'; SR2 <= '1'; SA1 <='0'; SR1<= '0'; SA2<= '0'; SV2<= '0'; if t10= '1' and c='1' then RESET <='0'; else RESET <='1'; end if; when E1 => SA1 <= '1'; SR2 <= '1'; SV1 <='0'; SR1<= '0'; SA2<= '0'; SV2<= '0'; if t10= '1' then RESET <='0'; else RESET <='1'; end if; when E2 => SR1 <= '1'; SV2 <= '1'; SA1 <='0'; SV1<= '0'; SA2<= '0'; SR2<= '0'; if t15= '1' and c='1' then RESET <='0'; else RESET <='1'; end if; when E3 => SR1 <= '1'; SA2 <= '1'; SA1 <='0'; SV1<= '0'; SR2<= '0'; SV2<= '0'; if t10= '1' then RESET <='0'; else RESET <='1'; end if; end case; end process; end arq;

El tercer modulo
--{{ Section below this comment is automatically maintained -- and may be overwritten --{entity {divi} architecture {divi}}

-- enter your statements here -library IEEE; use IEEE.STD_LOGIC_1164.ALL; -- Uncomment the following library declaration if using -- arithmetic functions with Signed or Unsigned values --use IEEE.NUMERIC_STD.ALL; -- Uncomment the following library declaration if instantiating -- any Xilinx primitives in this code. --library UNISIM; --use UNISIM.VComponents.all; entity div_frecu is Port(clk50mhz: in std_logic; clk: out std_logic); end div_frecu; architecture Behavioral of div_frecu is constant max: integer:=50000000; constant half: integer:=max/2; signal count: integer range 0 to max; begin process begin wait until clk50mhz' event and clk50mhz='1'; if count<max then count<=count+1; else count<=0; end if; if count<half then clk<='0'; else clk<='1'; end if; end process; end Behavioral;

Simulaciones de cada cdigo en Vhdl.

Simulacin de contador.

Simulacin del semforo.

Simulacin del divisor de frecuencia.

Instrumentacin
Para la creacin de un archivo en VHDL se utilizo el Active HDL8.1 ente programa nicamente se estructuraron los cdigos (contador, semforo y un divisor de frecuencia) y en el mismo programa se compilando cada uno por separado para checar que no hubiera errores. Despus tambin se utilizo XILINX para la elaborar la prctica del semforo. Tambin creando un archivo punto bit (este archivo en punto bit es el que se utiliza para el control del semforo en una PFGA.)

9. Resultados
Pueden incluirse imgenes, diagramas de tiempos obtenidos de las pruebas, videos y/o tablas de datos obtenidas experimentalmente.

10. Discusin e interpretacin de Resultados


Para la elaboracin de la estructura de esta prctica fue un poco ms independiente ya que cada integrante del equipo creo su propios cdigos en VHDL para la respectiva prctica, presentado cada quien su diagrama de bloques. Tomando la mejor esquematizacin que describiera el procedimiento de nuestro semforo. Y despus la creacin del archivo en VHDL.

11. Conclusiones
En practica utilizando las cartas ASM fue algo complicado para cada integrante del equipo, puesto que nunca habamos trabajado una FPGA pero en realidad ese no fue el problema si no que cuando juntamos los tres bloques este no hacia lo que tena que hacer, mientras que si lo compilbamos bloque por bloque no surga ningn problema . Un sistema secuencial tiene muchas aplicaciones un ejemplo es una mquina expendedora de caf. Este tipo de sistema se puede aplicar

En qu problema actual se puede aplicar un sistema como ste? Qu pasara si aplicara otro tipo de sensores, motores, implementacin del control, etc? Qu ideas puedo aportar en la elaboracin de sistemas de este tipo? Qu pasara si quisiera implementar un sistema como ste a gran escala? Recuerde que no debe redactarse como cuestionario, sino como texto informativo.

12. Referencias
[1] William I. Fletcher, An Engineering Approach to Digital Design, Ed. Prentice Hall, 1980, Englewood Cliffs N. J. [2] John F. Wakerly, Diseo Digital: Principios y Prcticas Tercera Edicin, Editorial Prentice Hall Pearson Educacin, 2001, Mxico [3] Nelson Victor P., Nagle H. Troy, Carroll Hill D., Irwin J. David, Anlisis y Diseo de Circuitos Lgicos Digitales Primera Edicin, Ed. Prentice Hall Hispanoamericana S. A., 1996, Mxico. [4] Winkel David E., Prosser Franklin P., The Art of Digital Design: An Introduction to Top-Down Design Segunda Edicin, Ed. Prentice Hall, 1987, Englewood Cliffs N. J. [5] http://www.intesc.mx/INGENIERIA/pdf/ManualAmibaRevA.pdf

13. Apndices
Apndice A:

Actividad Elaborar un diagrama de bloques preliminar Mejorar el diagrama de bloques especificando entradas y salidas

Responsable Magali Magali Javier

Fecha de entrega Lunes 13 hrs Mircoles 13 hrs

Cumpli? No llego pero lo envi. Si

Realizar los cdigos en VHDL a Todo el equipo partir del diagrama. Silvia Traer el reporte Michelle Traer el reporte corregido segn las observaciones hechas e impreso para entregarlo.

Jueves 15 hrs Jueves 13 hrs Lunes 9 hrs Si Si

Apndice B: Tarjeta de desarrollo

AMIBA tiene como ncleo un FPGA Spartan 3E XC3S250E.

Las s conexiones de los LEDs al FPGA se muestran en la tabla:

S-ar putea să vă placă și