Download - Practica 53

Transcript
Page 1: Practica 53

Practica 5Implementacion de una maquina de estados en la tarjeta

TerasIC

M.I. Marco Negrete

Entrega: 25-09-2014

1. Objetivos

Familiarizar al alumno con el diseno de maquinas de estados en CPLDs mediante ellenguaje VHDL.

Implementar en la tarjeta TerasIC, empleando el ambiente de desarrollo Quartus, unamaquina de estados para resolver un laberinto por algoritmo de mano izquierda.

2. Desarrollo

Disenar, empleando el lenguaje VHDL en el ambiente de desarrollo Quartus, la maquinade estados mostrada en la figura 1. Recuerde que en cada estado se indican las senales quese “prenden” en ese estado.

La maquina de estados de la figura 1 esta pensada para implementarse como control dealto nivel (toma de decisiones) en el robot de laberinto. Esta maquina se grabara en la tarjetaTerasIC y estara en constante interaccion con el control de bajo nivel implementado en elmicrocontrolador.

Las senales de entrada Si, Sf y Sd corresponden a las senales binarias de los tres sensoresdel robot: izquierda, frente y derecha. Si hay una pared cerca, la senal vale un 1 logico y 0en caso contrario. La senal TE es una senal enviada por el control de bajo nivel (control deposicion en el microcontrolador) para indicar que una tarea ha terminado de ejecutarse. Lassenales de salida son “comandos” para indicar al control de bajo nivel la tarea a ejecutar.Se sugiere el uso de dos pines para indicar el comando (avance, giro a la izquierda, giro ala derecha y media vuelta) y un tercero para indicar al microcontrolador que hay una tareanueva.

2.1. Implementacion en la tarjeta TerasIC

Las senales de entrada y de salida seran emuladas con los botones y leds de la tarjetaTerasIC de acuerdo con la tabla 1.

1

Page 2: Practica 53

Figura 1: Algoritmo de mano izquierda

2

Page 3: Practica 53

Boton/Led SenalBoton 0 Sensor izquierdoBoton 1 Sensor frontalBoton 2 Sensor derechoBoton 3 Tarea ejecutada (TE)LED 0 ... LED 2 Estado actualLED 4 Nueva tareaLED 6 .. LED 7 Comando

Tabla 1: Funciones de botones y leds para la maquina de estados

La frecuencia del reloj de la maquina de estados debe ser de aproximadamente 1 [Hz], estoes, se necesitara de un prescalador para poder usar el reloj de 50 [MHz] que incluye la tarjeta.

3. Elementos a evaluar

Se probaran varias combinaciones en las senales de entrada para comprobar que lamaquina sigue la secuencia correcta.

En el caso de los estados 011, 101 y 111, se debe observar el cambio de estado hastapresionar el boton que emula la senal de tarea ejecutada.

Tanto leds como botones, NO deben tener logica negada.

3