PROCESADORES DIGITALES DE SEÑAL Práctica nº 1 Introducción al Entorno de Desarrollo VISUALDSP++ 1. OBJETIVO El objetivo de esta práctica es familiarizarse con el uso de las herramientas necesarias para el desarrollo y la simulación de un programa en ensamblador para el ADSP-21061. 2. PROCEDIMIENTO Los pasos a seguir para desarrollar un programa son los siguientes: 1. Crear un fichero de proyecto nuevo. 2. En las opciones del proyecto (Proyect Options) elige el procesador. 3. Añade y edita los ficheros fuente para el proyecto. 4. Adapta las opciones necesarias para el proyecto. 5. Construye una versión de proyecto para depuración. 6. Depura el proyecto. 7. Construye la versión definitiva del proyecto. Vamos a realizar los pasos anteriores de una manera progresiva con un ejemplo. Previamente en el directorio de trabajo GRUPOnn, en la carpeta practica1, copiar los ficheros que hay en el directorio ejemplos\practica1. 1. Dentro del entorno integrado de desarrollo VisualDSP++, crear un proyecto nuevo con Proyect>>New. Abrir la carpeta practica1 y dar el nombre DFT al proyecto. 2. Aparece Poyect Options. En la pestaña Proyect elige Processor ASDP-21061. Aceptar y a la pregunta “Would you like to add support for the VisualDSP++ kernel to this proyect” contesta NO. 3. En la ventana del proyecto (ventana de la izquierda) en “Source Files”, con el botón derecho pincha para añadir el fichero “dft.asm” que contiene el código fuente del programa en lenguaje ensamblador. En “Linker Files” añade el fichero “ez-kit.ldf” que contiene la descripción del mapa de memoria del EZ-KIT. Estos ficheros se pueden editar simplemente con pinchar dos veces en ellos (de momento no se deben modificar). 4. Las opciones necesarias para el proyecto se pueden fijar en Proyect>>Proyect Options. Por ejemplo en la pestaña Assemble señala “Generate debug information “ y “Output listing file”. 5. Salva el proyecto desde el menú Proyect>>Save. Construye el proyecto desde el menú Proyect>>Build Proyect, o pinchando en el botón derecho en la ventana de proyecto. Observa que en la ventana inferior “Output Window” el ensamblador ha detectado dos errores sintácticos. 6. Pinchando dos veces en cada mensaje de error, se abre una ventana con el fichero fuente y con el cursor en la línea en la que está el error. Corrígelos, salva el fichero desde el menú Procesadores Digitales de Señal. Práctica 1 1 File>>Save , o el icono de salvar y vuelve a construir el proyecto. Esta vez no debería dar ningún error. Espera hasta que aparezca el mensaje “Load Complete” para continuar con el siguiente paso. 7. Corre el programa paso a paso desde el menú Debug>>Step Into, o la tecla F11 hasta llegar al bucle de la subrutina. 8. En la ventana del fichero fuente en ensamblador, en el lado izquierdo pincha dos veces en la última línea para poner un punto de ruptura. Los puntos de ruptura quedan marcados con un círculo rojo tanto en la ventana del fichero fuente como en la ventana de código desensamblado. Para quitar un punto de ruptura basta con pinchar dos veces en la ventana de fichero fuente. Desde el menú Settings>>Breaakpoints es posible también añadir y eliminar puntos de ruptura. 9. Corre el programa desde el menú Debug>>Run o la tecla F5. El programa se parará en el breakpoint. 10. Volver a darle Run. El programa llegará hasta la instrucción IDLE y ahí seguirá funcionando. Para pararlo seleccionar Debug>>Halt o la combinación de teclas Shift+F5. 11. Para reiniciar el programa desde el menú Debug>>Restart (no Reset pues habría que volver a cargar el programa). 12. Es posible ver el contenido de los registros abriendo la ventana correspondiente desde el menú Register. 13. También es posible ver el contenido de la memoria. Desde el menú Memory>>Two Columns para mostrar la memoria de datos en 32 bits (dos columnas). Pinchando en la ventana de memoria con el botón derecho, se puede elegir el formato, elige el formato de coma flotante en 32 bits. 14. Para obtener el gráfico de una zona de memoria, selecciona en el menú View>>Debug Window>>Plot>>New. En la configuración del plot elige el tipo “Line Plot”. En título, por ejemplo “Input”. En el campo “Adress” elige con “Browse” “input” en memoria de datos. El número de valores “Count” será 64. El tipo de datos es “float”. Finalmente se pincha en “Add” y en “OK”. Después pinchando en el gráfico con el botón derecho es posible cambiar la configuración. Así mismo es posible hacer un zoom seleccionando dentro del gráfico una zona con el botón izquierdo del ratón. Añade otros dos gráficos para “Imag” y para “Real”. Es posible visualizar en un mismo gráfico varias curvas sin más que añadirlos en la configuración antes de cerrar. Pinchando en el gráfico con el botón derecho se puede imprimir la gráfica o guardarla en un fichero en formato JPEG. Procesadores Digitales de Señal. Práctica 1 2