Presentación Final

download Presentación Final

of 50

Transcript of Presentación Final

  • Proyecto cortoDesarrollo de Algoritmos mediante el Procesador Digital de Seales Texas Instruments TMS320C6713UNIVERSIDAD AUTONOMA DE NUEVO LEONFACULTAD DE INGENIERIA MECANICA Y ELECTRICADIVISION DE ESTUDIOS DE POSGRADOSan Nicols de los Garza Nuevo Len a 19 de Septiembre de 2007

  • OBJETIVO DEL PROYECTOEl principal objetivo del presente trabajo es el de mostrar una descripcin general de las caractersticas del software y del hardware con las que cuenta la tarjeta de procesamiento digital de seales TMS320C6713 de Texas Instruments.As como el de mostrar varias aplicaciones en el procesado de seales que hacen uso de las caractersticas ms relevantes con las que cuenta dicha tarjeta.

  • Procesadores Digitales TMS320C6xLos procesadores Digitales, TMS320, son utilizados en una amplia gama de aplicaciones, tales como:

    Filtros digitales Generador de seales Procesamiento de Audio Comunicaciones Controles Entre otras

  • Procesadores Digitales TMS320C6xTelfonos celularesCmaras digitalesTelevisiones de alta definicinRadioTransmisin de faxMdemsOtros dispositivos

    Dispositivos en los que se utiliza:

  • Procesadores Digitales TMS320C6xLa notacin C6x se utiliza para designar que es un miembro de la familia de procesadores digitales (TI) TMS320C6000 de Texas Instruments.

    La arquitectura del procesador digital C6x esta muy bien estudiada para calculaciones intensivas numricamente hablando.

    El procesador C6x es considerado a ser el mas poderoso procesador de TI.

    Han tenido un gran nmero de aplicaciones de consumo debido a que han tenido un costo muy efectivo.

  • DSP Starter Kit

    El Compositor de Cdigos (CCS) proporciona las herramientas necesarias de apoyo al software, reuniendo el compilador C, ensamblador, el ligador de archivos, depurador y dems.

    Un tablero que contiene el TMS320C6713 (C6713) procesador de seal digital de punto flotante as como un codificador stereo

    Un cable de bus sncrono universal USBque conecta el tablero a la PC.

    Una fuente de poder de 5 volts El paquete de inicio para el DSP o DSK ( DSP starter kit) es de un gran alcance con el Hardware y las herramientas de apoyo al software necesarias para un procesamiento de seal en tiempo real, e incluye:

  • Arquitectura VLIWVLIW (very-long-instruction-word o palabra de instruccin muy larga ) es una arquitectura del procesador que permite que varias instrucciones sean ejecutadas en un solo ciclo de reloj incluso en altas velocidades.

    Los procesadores con arquitecturas VLIW se caracterizan, como su nombre indica, por tener juegos de instrucciones muy simples pero muy grandes en cuanto al tamao de cada instruccin.

    Las arquitecturas VLIW pueden alcanzar altas tasas de procesamiento.

    Las herramientas de generacin de cdigos con las que cuenta el Compositor de Cdigo son fuertemente optimizadas por esta arquitectura.

  • Arquitectura VLIWAgregan mas carga en el compilador al momento de organizar las instrucciones ejecutadas.

    Libera de mucha carga de optimizacin durante la programacin, esto con el objetivo de simplificar el diseo del hardware al dejar todo el trabajo de planificar el cdigo en manos del programador.

    A diferencia de otros procesadores en donde es el hardware en su tiempo de ejecucin el que planifica las instrucciones.

    Permite la elaboracin de algoritmos intensos numricamente hablando.

  • Tarjeta 6713 DSKLa tarjeta 6713 DSK es un plataforma de desarrollo de bajo costo independiente que habilita a los usuarios la evaluacin y desarrollo de aplicaciones para la familia de procesadores de seales digitales TI C67XX DSP (Digital Signal processor).

  • Distribucin Fsica del HardwareEn la siguiente figura se muestra la distribucin de componentes que integran el hardware de la tarjeta de procesamiento digital de seales TMS320C6713.

  • Procesador Texas Instruments TM320C6713.

    El procesador TMS320C6713 (C6713) esta basado en la arquitectura VLIW, la cual esta muy bien estudiada para algoritmos intensos numricamente hablando.

    La memoria interna del programa esta estructurada de manera que es capaz de traer ocho instrucciones cada 4.44 ns. o 1/225MHz.

    Este tambin integra un nmero de circuitos internos que mejoran la funcionalidad y minimizan la complejidad del hardware.

    Capaz de procesar seales en tiempo real.

  • Mapa de memoria de la Tarjeta TMS32C6713 DSK La memoria interna es la primera en los espacios de direccionesEspacio reservado para registros perifricos. La interfaz de memoria externa EMIF se divide a su vez en 4 regiones de igual tamao y para cada regin existe un circuito integrado que cuenta con una seal de habilitacin:CE0CE1CE2CE3

  • Mapa de memoria de la Tarjeta TMS32C6713 DSKA continuacin se ilustra la distribucin del espacio de direcciones:

  • Interfase EMIFLa plataforma de desarrollo DSK utiliza una interfase de memoria externa EMIF (External Memory Interface) Todos los accesos a la memoria externa son hechos a travs de una interfase de memoria externa (EMIF).

    Cada EMIF tiene su espacio de direcciones dividido en 4 regiones de igual tamao, cuentan con su propio circuito integrado para permitir mediante una seal su habilitacin o deshabilitacin.

    Lo anterior permite que distintos tipos de memorias sean conectadas a la misma interfase.

    No intente cargar el cdigo de un programa dentro de un espacio de memoria externa hasta que el EMIF sea inicializado.

  • Dispositivo lgico de programacin compleja CPLD

    Los CPLD extienden el concepto de un PLD (del acrnimo ingls Programmable Logic Device) a un mayor nivel de integracin ya que permite implementar sistemas ms eficaces, utilizan menor espacio, mejoran la fiabilidad del diseo, y reducen costos.

    El C6713 DSK utiliza un dispositivo lgico de programacin compleja Altera EPM3128 TC100-10 (CPLD) para implementar:

  • Dispositivo lgico de programacin compleja CPLD

    Controla la interfase y las subtarjetas.

    4 memorias mapeadores de registro CPLD: permiten a los usuarios controlar las funciones del CPLD mediante software.

    En la tarjeta 6713 DSK los registros son principalmente usados para acceder a los LEDs y a los interruptores DIP y controlar la interfase de la tarjeta hija o subtarjeta.

  • Ejemplo de Registro

    La tarjeta 6713 DSK cuenta con una serie de registros que son importantes para la operacin de la misma.

    Ejemplo de registro:

    Registro CPLD USER_REG

    El registro USER_REG es utilizado para leer el estado de los 4 interruptores DIP y para encender o apagar los 4 LEDs, permite al usuario interactuar con el DSK.

  • SDRAMLa tarjeta 6713 DSK utiliza una memoria sncrona DRAM (SDRAM) de 16 Mega bytes SDRAM (del ingls, Single Data Rate Synchronous Dynamic Random Access Memory, es decir, memoria RAM dinmica de acceso sncrono de tasa de datos simple). Este tipo de memoria permite que la mitad del mdulo empiece un acceso mientras la otra mitad est terminando el anterior.

  • Memoria FlashLa memoria flash es una forma evolucionada de la memoria EEPROM que permite que mltiples posiciones de memoria sean escritas o borradas en una misma operacin de programacin La flash es un tipo de memoria la cual no pierde su contenido cuando la alimentacin es desconectada. Cuando lee datos se comporta como una simple memoria asncrona de solo lectura (ROM). La tarjeta 6713 DSK usa una memoria flash externa de 512 Kbytes

  • Codificador AIC 23El DSK usa un codificador estereo AIC23 (parte TLV320AIC23) de Texas Instruments para la entrada y salida de seales de audio.

    Muestrea seales Analgicas de entrada (input, mic)y las convierte en digitales para ser procesadas DSP.

    Al finalizar el procesamiento, el codec convierte las seales digitales a analgicas y las enruta a las salidas de audio (output, headpone).

    Rangos de muestreo que varan desde 8 a 96 KHz.

  • Estructura interna del codificador

  • Puertos McBSPs La tarjeta contiene 2 puertos McBSPs (Puerto serial multicanal protegido con memorias intermedias dinmicas). Cada McBSP puede ser usado para transmisin serial de datos de alta velocidad con dispositivos externos, tambin los puertos pueden ser reprogramados como entradas/salidas de propsito general.

    El McBSP1 es usado para transmitir y recibir datos de audio procedentes del codificador estereo AIC23.

    El McBSP0 es usado para controlar el codificador a travs de su puerto de control serial.

    Los puertos McBSP estn enrutados hacia el AIC23 o hacia los conectores de expansin.

  • Conectores de expansinCuatro conectores en el tablero proveen la entrada y la salida de seal hacia el Codec: MIC IN para la entrada del micrfonoLINE IN para la entrada de la seal, LINE OUT para la salida de la seal HEADPHONE para la salida de audfonos o altavoces (multiplexada con la lnea de salida).

  • LEDs Indicadores e Interruptores DIP

    La plataforma de desarrollo DSK incluye 4 LEDs y 4 interruptores DIP que permiten a los usuarios una interaccin con el hardware de una manera simple.

    Ambos son accesados a travs de los registros del CPLDLos cuatro LEDs configurables permiten una interaccin en las aplicaciones diseadas por el usuario. Estos son controlados escribiendo en el registro CPLD USER_REG como se menciono anteriormente.

  • Emulacin JTAGJTAG se refiere a un conjunto de reglas de diseo que acompaa a las pruebas, programacin y depuracin de circuitos integrados.

    La interfase JTAG permite al usuario examinar seales y registros en un circuito integrado a travs de una interfase externa.

  • Emulador USB Embebido

    La tarjeta 6713 DSK cuenta con un emulador embebido especial JTAG que trabaja especficamente con el hardware de la tarjeta 6713 DSK y con la versin del Compositor de Cdigo.

    El emulador embebido USB se comunica con una computadora anfitriona a travs de una interfase compatible USB.

    El emulador es el responsable de direccionar el trfico depurado entre el DSP y la computadora anfitriona.

  • Compositor de CdigosEl Compositor de cdigos provee un entorno para incorporar las herramientas de software.

    El CCS incluye herramientas para generacin de cdigos, tales como un compilador de lenguaje C, un ensamblador, un ligador de archivos.

    Tiene capacidades grficas y soporta depuraciones en tiempo real.

    Proporciona una herramienta de uso fcil para construir y depurar programas.

  • Compositor de CdigosCrea proyectos de aplicacinLas opciones Compilar/Enlazar pueden especificarse fcilmente. Un nmero de caractersticas de depuracin estn disponibles, incluyendo registros, una mezcla de cdigo de ensamblaje y lenguaje C, resultados grficos, entre otras.

  • DSP/BIOSDSP/BIOS es un sistema operativo en tiempo-real desarrollado por TI con caractersticas tales como:Un esquema de tareas con grados de prioridad.Comunicacin entre diferentes tareas y administracin de memoria. En muchas formas es como una librera de cdigos que realiza funciones de un sistema operativo.

  • Herramientas de DiagnsticoEsta utilidad te permite realizar simples pruebas de diagnostico en tu DSK 6713 para verificar que es completamente operacional.

  • Diagnstico de Codificacin

    Onda senoidal de 1KHz en el canal derecho (amarillo)

    Onda senoidal de 2KHz en el canal izquierdo (azul). Las salidas son dirigidas a travs de ambas salidas de lnea y de altavoces.

    El botn MUTE habilita la funcin de silencio del codificador.

    El botn de LOOPBACK habilita la trayectoria interna retroalimentacin antes que conduzca las salidas externas por el codificador.

  • Diagnstico de Codificacin

  • Carpetas de ApoyoUn gran nmero de archivos de apoyo se incluyen con el programa Compositor de Cdigos:

    My proyects: Una carpeta proveda nicamente para almacenamiento de tus proyectos.

    docs: contiene documentacin y manuales.

    c6000\cgtools : contiene herramientas para la generacin de cdigos

    c6000\bios : contiene archivos de soporte para el DSP/BIOS

  • Tipos de Archivos de ApoyoFile *pjt: Se utiliza para crear y construir un archivo llamado proyecto, es un archivo de almacenamiento de informacin.

    File *c: Programa fuente en lenguaje C.

    File *asm: Programa fuente de ensamblaje creado por el usuario o por el compilador de Lenguaje C o por el Optimizador.

    File *h: Archivo de apoyo principal o de cabecera.

    File *lib: archivo librera. Ejemplo el archivo de librera de apoyo en tiempo real rts6700.lib .

  • Tipos de Archivos de ApoyoFile *cmd: archivo ligador de comandos el cual mapea secciones para la memoria.

    File *obj: archivo objeto creado por el ensamblador.

    File *out: archivo ejecutable creado por el ligador para cargarse y correr en el procesador C6713.

  • Archivos de ApoyoC6713dskinit.c: Contiene funciones para inicializar el DSK, el codificador, los puertos seriales, as como el encendido y apagado del procesador.

    C6713dskinit.h: Archivo principal con funciones prototipo. Contiene caractersticas tales como, la ganancia de la seal de entrada y dems funciones obtenidas de este archivo principal (se modifica como un archivo incluido en el CCS).

    C6713dsk.cmd: Archivo de instrucciones para ligar muestras.

    Vectors_intr.asm: Una versin modificada del archivo vector incluido en el Code Composer Studio, para el manejo de interruptores.

    rts6700.lib, dsk6713bsl.lib, csl6713.lib: Archivos tipo librera de apoyo a tiempo de ejecucin, tablero y circuitos, respectivamente.

  • Para crear un Proyecto en el CCSEste archivo ejecutable representa un archivo formato objeto comn (COFF) muy popular en los sistemas basados en UNIX y adoptado por varios fabricantes de procesadores digitales de seales. Este archivo ejecutable puede cargarse y correr directamente en el procesador C6713.

  • Proyecto en el CCSSeleccione la opcin Project New. Capture el nombre del proyecto para su creacin.

    Esto crear un archivo *pjt de almacenamiento de informacin

  • Proyecto en el CCSPara agregar archivos al proyecto seleccione la opcin Project Add Files to Project. C:\My proyects\Support\c6713dskinit.c (inicializa DSK, encendido de DSP)C:\My proyects\Support\vectors_intr.asm (archivo ensamblador) C:\My proyects\Support\C6713dsk.cmd (para el enlace de archivos)

    Archivos de apoyo tipo librera:C:\ti\c6000\cgtools\lib\rts6700.lib ( Para procesamiento en tiempo real )C:\ti\c6000\dsk6713\lib\dsk6713bsl.lib (Para acceso a dispositivos de tarjeta)C:\ti\c6000\bios\lib\csl6713.lib (Para la inicializacin de circuitera de tarjeta)

  • Proyecto en el CCSValidar en la ventana del CCS que se hayan cargado los archivos.

    Agregar archivos de cabecera al proyecto (*.h):Proyect Scan All File Dependencies. c6713dskinit.h

  • Proyecto en el CCSSe incluye el archivo coeficiente bs2700.cof, el cual especifica las caractersticas del filtro de respuesta al impulso bandstop.Representa un filtro FIR centrado en una frecuencia de 2700 Hz y contiene 89 coeficientes, los cuales fueron designados utilizando la interfase grafica de usauario (GUI) para diseo de filtros de MATLAB

  • Proyecto en el CCS

  • Proyecto en el CCSOrganizacin de la memoria para Coeficientes y Muestras iniciales del filtro FIR.En un tiempo n la salida es: y(n) = h(0)x(n) + h(1)x(n 1)++h(N 1)x(n (N 1))

  • Proyecto en el CCSAsignacin de opciones para la compilacin:

    Es utilizado para enlazar el archivo fuente en lenguaje C (.c) con el archivo fuente ensamblador (.asm)

  • Proyecto en el CCSAsignacin de opciones para el enlace de archivos:

    Enlaza archivos para la creacin del archivo ejecutable en el DSP tipo *.out

  • Proyecto en el CCSConstruyendo y Corriendo el Proyecto:

    La opcin Project Rebuild All. compila y ensambla todos los archivos en Lenguaje C y ensambla el archivo de ensamble vectors_intr.asm.

    Los archivos objeto resultantes son enlazados con los archivos librera por medio del archivo de enlace C6713dsk.cmd . Esto crea un archivo ejecutable FIR.out que puede cargarse dentro del procesador C6713 y correrse.

    La opcin File Load Program para cargar el archivo FIR.out dando clic sobre el archivo (CCS incluye una opcin para cargar el programa automticamente despus de crearlo).

    Seleccione la opcin Debug Run. Para ejecutar el archivo *.out en el DSP

  • Proyecto en el CCSLa opcin View Graph Time/Frecuency nos da la opcin de graficar en frecuencia y Tiempo.

  • Proyecto en el CCS

  • ConclusionesHemos logrado exponer las bases para el desarrollo y ejecucin de algoritmos mediante el Procesador Digital de Seales Texas Instruments TMS320C6713Comprensin del procedimiento para la creacin de proyectos mediante el software Code Composer explicando el funcionamiento de sus libreras y archivos de apoyo.Explicar estructura de Hardware de la tarjeta DSK