Title: IDSP:%20un%20framework%20distribuido%20para%20multicomputadores%20DSP%20TMS320C6000
1IDSP
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
2IDSP
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
3(No Transcript)
4Presentando IDSP...
- 1. Introducción
- 2. Descripción de IDSP
- 3. Estado actual
- 4. Conclusiones
5 6Introducció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
7Introducció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
8Introducción
- Soluciones distribuidas para DSP
9Introducció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
10 11Descripción de IDSP
- Estructura de un algoritmo DSP
IDSP
12Descripció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)
13Descripción de IDSP
- Destino del mensaje (gix , oix , oix)
- Estructura del mensaje
14Descripción de IDSP
- Resolución de direcciones mediante servidores RPC
del sistema
15Descripción de IDSP
16Descripció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)
17 18Estado 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
19Estado actual
- Portando a Sundance SMT310Q con 4 DPS
- DSPs TMS320C6201 (DMA, comm-ports, memoria,
cache, rendimiento) - Funciona con 2 procesadores, trabajamos en 3
20 21Conclusiones
- 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).
22Conclusiones
- 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
23Conclusiones
- 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
24Ruegos y preguntas