ARM和DSP处理器如何协同工作,指令集是不同的,如何编写一个应该在DSP处理器上工作的代码,如FFT,视频处理等。它们之间如何互相切换?如果用一些示例进行解释,将会有所帮助。ARM和DSP处理器如何协同工作?
1
A
回答
4
在为具有不同指令集(ISA)的芯片编写软件时,与使用相同ISA编写两个芯片的多核软件并无太大区别。你最终所要做的就是将软件编译到不同的ISA。就像两个相同类型的处理器一样,它们通常通过某种共享内存进行通信。所以DSP可能会向存储器写入一串字节。然后,CPU将轮询内存,直到它发现新数据,然后处理它。请注意,这就是PC上所有外设的工作原理。他们运行固件(嵌入式软件)并通过系统的共享主存储器进行通信。 (并使用中断)。
请注意,即使您为同一个ISA的两个芯片编写软件,引导序列通常也会有一个主处理器,它可以从从器件运行不同的代码。
4
一个软件用于帮助ARM和DSP中的两个不同的操作系统相互通信。在OMAP的情况下,它被称为dspbridge(或另一个更简单的称为DSPlink)。
3
查看用于在arm和dsp之间进行通信的Syslink。你可以读到更多在:
1 Application calls RCM client object on local processor to request execution of a remote function.
2 RCM client object passes function request message to remote RCM server through local MessageQ.
3 Local MessageQ puts message in remote MessageQ's list of received messages.
4 Local MessageQ requests local Notify module to send notification to remote processor that a message has arrived.
5 Local Notify module notifies remote Notify module.
6 Remote Notify module tells Remote MessageQ object to check its list of received messages.
7 Remote MessageQ object gives remote RCM server the function request message it received.
8 Remote RCM Server calls remote function.
相关问题
- 1. 如何使用gdb转储ARM协处理器寄存器?
- 2. DSP处理器字大小
- 3. 任何ARM处理器的工具链
- 4. ARM/DSP Linux工具链内核设置
- 5. TCP/IP和HTTP如何协同工作?
- 6. HTML,JS和CSS如何协同工作
- 7. Apache httpd和Tomcat如何协同工作?
- 8. nhibernate和asp.net如何协同工作?
- 9. VLC和FFMPEG如何协同工作?
- 10. eclipse maven和ant如何协同工作?
- 11. Apache,PHP和MySQL如何协同工作?
- 12. OpenVR,SteamVR和Unity3D如何协同工作?
- 13. 继承和JAXB如何协同工作?
- 14. subq和cf如何协同工作?
- 15. Passenger,Capistrano和SVN如何协同工作
- 16. GroupBox和RadioButton如何协同工作?
- 17. GWT和PhoneGap如何协同工作?
- 18. HTTP和HTML如何协同工作?
- 19. SoapFormatter和FileStream如何协同工作/
- 20. HTTP/2和CNAME如何协同工作?
- 21. 音频节目,声音处理和DSP
- 22. Android DSP和图像处理加速
- 23. ARM处理器实现ARMv5TE和VFPv1?
- 24. Windows CE是否在ARM处理器上工作?
- 25. 使用dsp和图像处理的线跟随机器人
- 26. C++预处理器如何工作?
- 27. DSP与DMP之间的Cookie同步如何工作
- 28. 需要帮助理解ARM处理器
- 29. 如何在协同环境中处理捆绑器更新(Gemfile.lock)?
- 30. Arm处理器的Ada编译器
这片/板您使用的? –
我正在使用比格犬板,但这个问题本质上是一般性的 – kartik