DSP / BIOS Link o DSPLINK es un esquema IPC (comunicaciones entre procesadores) para pasar mensajes y datos en sistemas multiprocesador. En el caso de la familia DaVinci DSP de Texas Instruments , este esquema permitiría pasar mensajes y datos entre un cliente ARM y un servidor DSP. DSPLINK se puede utilizar para implementar una capa de abstracción de software llamada RPC que permite que una función remota en el DSP aparezca como llamadas de función local en el código de la aplicación ARM. La capa de comunicación Codec Engine IPC se implementa mediante un esquema de llamadas RPC construido sobre DSP / BIOS LINK.
![](http://wikiimg.tojsiabtv.com/wikipedia/commons/thumb/7/7d/GStreamer_and_TI_DMAI.svg/220px-GStreamer_and_TI_DMAI.svg.png)
Descripción general
DSP / BIOS LINK se implementa utilizando memoria compartida e interrupciones internas [ aclaración necesaria ] desde el ARM al DSP y viceversa.
El protocolo de memoria compartida para IPC se implementa de la siguiente manera:
- El ARM y el DSP están programados en una dirección de memoria predeterminada donde se enviará un mensaje desde el ARM al DSP; y otro para los mensajes enviados desde el DSP al ARM.
- Un procesador envía mensajes al otro escribiendo el mensaje en la dirección predeterminada y luego enviando una interrupción para indicar al otro procesador que hay un nuevo mensaje disponible. Al transferir búferes de datos, solo se debe pasar un puntero a un búfer dado, ya que el búfer reside en una memoria compartida que es accesible para ambos procesadores. Las direcciones de búfer ARM deben traducirse en direcciones físicas cuando se presentan al DSP, ya que el DSP no tiene una MMU ni un concepto de direccionamiento virtual .
- Una vez que el procesador que recibe el mensaje lo ha leído, marca una bandera en la memoria compartida para indicar que la memoria del mensaje ahora está disponible para ser reescrita con otro mensaje.
El DSP incluido en muchos dispositivos basados en DaVinci generalmente ejecuta DSP / BIOS RTOS de TI . Cuando se incluyen varios núcleos heterogéneos en el dispositivo (por ejemplo, DM644x), los controladores DSP / BIOS Link se ejecutan tanto en el procesador ARM como en el DSP para proporcionar comunicación entre los dos.
Sistemas operativos
Varios sistemas operativos ARM9 admiten controladores DSP / BIOS Link: