Технология DSP/BIOS LinkПеревод из англоязычной викиТехнология
DSP/BIOS Link или
DSPLINK это схема IPC (связи между процессами) для передачи сообщений и данных в многопроцессорных системах. В случае DSP
OMAP и
DaVinci производства
Texas Instruments, такая схема используется для передачи сообщений и данных между клиентом ARM и сервером DSP.
DSPLINK может быть использован для реализации уровня программной абстракции называемом RPC (удалённый вызов процедур), что позволяет вызывать в коде программы ARM удалённые функции на ядре DSP также как локальные функции. Уровень взаимодействия IPC реализован с использованием схемы вызовов RPC, основанной на
DSP/BIOS LINK.
Технология DSP/BIOS LINK реализована с использованием разделяемой памяти и внутренних прерываний от ARM ядра к DSP ядру и наоборот.
Протокол разделяемой памяти IPC реализован следующим образом:
- ARM и DSP ядра программируются с заранее определённым адресом памяти, по которому сообщения могут передаваться от ARM к DSP; другой адрес используется для передачи сообщений от DSP к ARM.
- Один процессор посылает сообщения другому, записывая их по заранее определённому адресу, и затем вызывает прерывание, чтобы сообщить другому процессору, что доступно новое сообщение. Когда пересылаемые данные записаны в буфер, требуется передать только указатель на буфер, т.к. буфер расположен в разделяемой памяти, которая доступна для обоих процессоров. Поскольку DSP не содержит MMU, то адрес буфера ARM перед передачей в DSP необходимо перевести в физический адрес.
- Как только процессор получает сообщение, оно отмечается флагом в разделяемой памяти, чтобы указать, что память сообщения доступна для перезаписи другим сообщением.
На DSP ядрах, входящих в состав большинства устройств на базе
DaVinci, как правило, запускается
DSP/BIOS RTOS от
Texas Instruments. Если устройство содержит несколько гетерогенных ядер (например, DM644x), то драйверы DSP/BIOS Link запускаются на ARM и DSP ядрах, чтобы обеспечить взаимодействие между ними.
Следующие операционные системы поддерживают технологию
DSP/BIOS Link:
- Montavista Linux
- QNX Neutrino
- Mentor Graphics Nucleus OS
- Windows CE
- Green Hills Software INTEGRITY RTOS