DSP/BIOS 링크
DSP/BIOS LinkDSP/BIOS Link 또는 DSPLINK는 멀티프로세서 또는 프로세스 간 통신(IPC) 스킴으로 메시지와 데이터를 멀티프로세서시스템으로 전달합니다.Texas Instruments의 DaVinci Digital Signal Processor(DSP; 디지털 신호 프로세서) 패밀리의 경우 이 방식을 통해 ARM 클라이언트와 DSP 서버 간에 메시지 및 데이터를 전달할 수 있습니다.DSPLINK를 사용하면 DSP 상의 리모트함수가 ARM 어플리케이션코드에서 로컬함수 콜로서 인식되도록 하는 Remote Procedure Call(RPC; 리모트프로시저 콜)이라고 불리는 소프트웨어 추상화 레이어를 실장할 수 있습니다.코덱 엔진 IPC 통신 레이어는 DSP/BIOS LINK에 구축된 RPC 콜 방식을 사용하여 구현됩니다.
개요
DSP/BIOS LINK는 공유 메모리와 ARM에서 DSP로의 내부 인터럽트를[clarification needed] 사용하여 구현됩니다.
IPC용 공유 메모리 프로토콜은 다음과 같이 구현됩니다.
- ARM 및 DSP는 ARM에서 DSP로 메시지가 전송되는 메모리주소와 DSP에서 ARM으로 전송되는 메시지에 대해 미리 정해진 메모리주소로 프로그램 되어 있습니다.
- 한쪽 프로세서는 메시지를 미리 결정된 주소에 쓴 후 인터럽트를 보내 다른 쪽 프로세서에 새로운 메시지를 사용할 수 있음을 알립니다.데이터 버퍼를 전송할 때는 버퍼가 양쪽 프로세서에서 액세스할 수 있는 공유 메모리에 존재하기 때문에 지정된 버퍼로의 포인터만 전달하면 됩니다.ARM 버퍼 주소는 DSP에 제공할 때 물리 주소로 변환해야 합니다.DSP에는 MMU 또는 가상 주소 지정 개념이 없기 때문입니다.
- 메시지를 수신한 프로세서가 메시지를 읽으면 공유 메모리에 플래그를 표시하여 메시지메모리를 다른 메시지로 다시 쓸 수 있게 되었습니다.
많은 DaVinci 기반 장치에 포함된 DSP는 일반적으로 TI의 DSP/B를 실행합니다.IOS RTOS디바이스(DM644x 등)에 이종 코어가 여러 개 포함되어 있는 경우 ARM 프로세서와 DSP 양쪽에서 DSP/BIOS Link 드라이버가 실행되어 둘 사이의 통신을 제공합니다.
운영 체제
ARM9 운영체제는 DSP/BIOS Link 드라이버를 지원합니다.