240 likes | 401 Views
IDSP. un framework distribuido para multicomputadores DSP TMS320C6000. Jesús M. Álvarez Llorente Juan C. Díaz Martín José M. Rodríguez García Juan L. García Zapata Juan A. Rico Gallego. Departamento de Informática Universidad de Extremadura. IDSP.
E N D
IDSP un framework distribuido para multicomputadores DSP TMS320C6000 Jesús M. Álvarez LlorenteJuan C. Díaz MartínJosé M. Rodríguez GarcíaJuan L. García ZapataJuan A. Rico Gallego Departamento de InformáticaUniversidad de Extremadura
IDSP un framework distribuido para multicomputadores DSP TMS320C6000 Jesús M. Álvarez LlorenteJuan C. Díaz MartínJosé M. Rodríguez GarcíaJuan L. García ZapataJuan A. Rico Gallego Departamento de InformáticaUniversidad de Extremadura
Presentando IDSP... 1. Introducción 2. Descripción de IDSP 3. Estado actual 4. Conclusiones
Introducción • API para programación distribuida • En procesadores DSP: • Procesamiento numérico de señal • Muchos procesos encadenados • Tiempo real • Poca memoria • Utilizamos DSP TMS320C6000 de Texas Instruments
Introducción • Texas Instruments ofrece DSP/BIOS: • Muy extendido • Pequeño (~25 KB.) • Tiempo real • Desarrollo complejo • No soporta distribución Diamond La distribución de tareas se configura en tiempo de compilación
RTOS Compañía Recomendado Diamond - HERON API Virtuoso Introducción • Soluciones distribuidas para DSP:
Introducción • Qué mejora IDSP: • Distribución de tareas en tiempo de ejecución según criterio de reparto de cargas • Mantiene la transparencia a la ubicación • Interfaz sencilla
Operador Canal Grupo Descripción de IDSP • Estructura de un algoritmo DSP IDSP
Operador Canal Grupo Descripción de IDSP • Direccionamiento: • Un grupo es una instancia de aplicación (gix) • Un operador es un hilo (oix) • El extremo de un canal en un operador es un comunicador (oix)
Descripción de IDSP • Destino del mensaje: (gix , oix , oix) • Estructura del mensaje:
Descripción de IDSP • Resolución de direcciones mediante servidores RPC del sistema
Descripción de IDSP • Arquitectura en capas
Descripción de IDSP Oper_t OPER_self (Void); Int OPER_upgrade(Void); Void OPER_degrade(Void); Int OPER_create (Oper_t *oper, Int operCode, Int appCode, Oper_Addr_t addr, Void *param ); Void OPER_destroy(Oper_t oper); Void OPER_exit (Void); Int OPER_start (Oper_t oper, Oper_Addr_t addr ); Int OPER_kill (Oper_t oper, Oper_Addr_t addr ); Int COMM_create (*ID, attr, addr); Int COMM_destroy (ID); Int COMM_receive (cix, Comm_Addr_t *src, char *buffer, Int *nbytes); Int COMM_send (Int cix, Comm_Addr_t dst, char *buffer, Int nbytes); Int COMM_sendrec (Int cix, Comm_Addr_t *addr, char *buffer, Int *nbytes); Int COMM_setTimeout(Int cix, Uns timeout); Int GROUP_self (Void); Int GROUP_create (Int *gix, Int appCode, Void *param[]); Int GROUP_kill (Int gix); Int GROUP_start (Int gix); Void GROUP_leave (Void);
Estado actual • Desarrollo inicial sobre DSK TMS320C6711 • Codificador de audio al MCBSP y DIARCA • Multiprocesador simulado mediante realimentación por el MCBSP • Probado 2 DSK iguales unidos por el MCBSP
Estado actual • Portando a Sundance SMT310Q con 4 DPS • DSPs TMS320C6201 (DMA, comm-ports, memoria, cache, rendimiento) • Funciona con 2 procesadores, trabajamos en 3
Conclusiones • IDSP es el primer intento conocido de desarrollar un framework distribuido para multicomputadores DSP con transparencia a la ubicación. • El diseño por capas facilita la migración a hardware diferente (es un sistema bien construido).
Conclusiones • Es sencillo, pequeño y rápido ( DIARCA) Díaz Martin, JC. Garcia Zapata, JL. Rodriguez Garcia, J.M., Alvarez Salgado, J.F., Espada Bueno, P. Gómez Vilda, P., DIARCA: A Component Approach to Voice Recognition, Proc. of 7th European Conference on Speech Communication and Technology, Eurospeech 2001, Aalborg, Denmark, 2001, V4, pp. 2393-2396
Conclusiones • Objetivos futuros para IDSP: • Base para memoria compartida distribuida, que apoyará una JVM distribuida para DSP. • Integrar IDSP con PONNHI, un núcleo POSIX para C6000, como alternativa a DSP/BIOS. Rodríguez García, J.M., Rico Gallego, J.A., Alvarez Llorente, J.M., Díaz Martín, J.C. PONNHI. Una nueva arquitectura microkernel Pthreads en espacio de usuario. Actas XII Jornadas de Paralelismo. Lleida, septiembre 2002
IDSP • Financiado por: • Junta de Extremadura IPR00C032 • CICYT TIC99-0609 (DIARCA) Ruegos y preguntas