OMAPL138双核系统的调试方案设计
②POOL,用于分配存储器一体电感缓冲区,将内存合理分块,使分配所需内存适合传输数据的尺寸。
利用这两个组件,将完成DSP程序的载入启动和内存池的分配。
MSGQ通信流程如图2所示。
GPP端按如下顺序开通消息队列:
①PROC_setup()。采用ARM端应用程序载入DSP程序到DSP中运行的方法启动DSP,由于PROC组件被用于模拟DSP,首先要针对PROC进行创建和初始化。
②PROC_attach(processorId,NULL)。在DSP端运行之前,需要建立与GPP端通信的DSP的关联,其中指定的processorId为与之通信的DSP的编号,防止ARM与多DSP通信时造成连接混乱。
③POOL_open(POOL_makePoolId(processorId,POOL_ID),&SamplePoolAttrs)。打开共享内存池,内存缓冲区同样需要电感单位一个ID来进行不同的分工。SamplePoolAttrs用来指定缓冲区大小、buffer个数等属性。
④MSGQ_open(SampleGppMsgqName,&SampleGppMsgq,NULL)。在进行MSGQ通信之前的一个前提是处理器双方都需要各自打开一个消息队列,每个消息队列拥有各自的name,只有当连接方提出的name与消息队列的name相吻合的时候,消息队列才得到建立。利用该API打开消息队列,SampleGppMsgqName指代的是GPP端消息队列的name。
⑤PROC_load(processorId,(Char8*)&imageInfo,numArgs,ar电感器厂家gs)。将编译好的DSP程序载入DSP中,相关参数为DSP的编号、DSP可运行程序名字、参数的个数和运行参数。
⑥PROC_start(processorId)。开始运行编号为processorId的DSP。
⑦MS绕行电感器GQ_locate(dspMsgqName,&SampleDspMsgq,&syncLocateAttrs)。等待需要建立的消息队列打开。由于通信时需要将一条消息队列的两个端口都关联到指定的处理器,只有name为dspMsgqName的消息队列一边已经打开后,才能连接指定要连接的消息队列,该消息队列才真正建立起来,并进行通信。该接口函数与MSGQ_open相呼应。syncLocateAttrs为指定等待的相关属性,例如指定功率电感器该属性为syncLocateAttr s.timeout=WAIT_FOREVER时,程序一旦运行到此函数处,如果另一方处理器还没有MSGQ_open的name为dspMsgqName的消息队列,便会阻塞在此处,直到打开为止。至此GPP端的消息队列已经完成设置,等待DSP端消息队列的建立。
DSP端按如下顺序开通队列:
①建立TASK任务。由于DSPLink是基于处理器两端操作系统进行的连接,因此,在DSP端同样必须采用操作系统作为通信的媒介,采用DSP/BIOS操作系统,以任务的形式运行程序。
②创建和初始化MSGQ传输属性。在进行MSGQ的创建打开之前,要先指定MSGQ的相关属性。
③MSGQ_open((String)dspMsgQName,&info->localMsgq,&msgqAttrs)创建DSP端消息队列,原理如同GPP端。
④MSGQ_locate(GPP_MSGQNAME,&info->locatedMsgq,&syncLocateAttrs)等待连接GPP端打开的消息队列,原理如同GPP端。
⑤当GPP和DSP端消息队列都建立完毕,并且关联,通信即建立,可以采用MSGQ_put和MSGQ_get发送和接收数据。
3 基于MSGQ双核调试方案
MSGQ组件在实际的应用中因其数据长度的可变性,对DSP端应用程序的调试提供了强大的解决方案。通过MSGQ的分析可以发现,采用ARM和DSP端联合,通过log打印的方式可以方便地对DSP端的运行情况进行一定的了解。
在GPP端和DSP端应用程序中建立独立线程和任务。由于只需要将DSP信息传输到GPP端而不需要GPP端的反馈信息,因此只需要设计单向传输,创建一条消息队列即可。当DSP端运行到需要打印的信息时,将消息暂存于指定的内存空间,当任务切换到调试任务时,将暂存的消息发送到GPP端,GPP端接收到消息后在终端打印。调试建立流程如图3所示。
3.1 DSP端
(4)释放内存
释放内存主要采用MSGQ_release(DebugMsgq),进行消息队列的释放。
3.2 GPP端
GPP端的消息结构与DSP端相同。
平面变压器厂家 | 平面电感厂家
[变压器]关于变压器屏蔽的问题求教大神关于这个变压器的问题。 绕法见图,三明治绕法。 1-7为原边。 14-8为副边,其他为辅助绕组。 副边绕组内外都加了一层铜箔屏蔽,铜箔没有接任何引脚,也没接地。 用LCR测试电感量与同样绕法但是没加屏蔽的要差很多,差一个数量级。 这是什么原因呢?求解PS:结贴是怎么结的?新手不会操作。 铜箔首尾不能接触,必须绝缘,否则就是一圈短
三相超快恢复二极管整流桥开关模块0 引言 模块化结构提高了产品的密集性、安全性和可靠性,同时也可降低装置的生产成本,缩短新产品进入市场的周期,提高企业的市场竞争力。由于电路的联线已在模块内部完成,因此,缩短了元器件之间的连线,可实现
新型永磁同步电机控制芯片IRMCK203及其应用 摘要:IRMCK203是IR公司最新推出的一款高性能无传感器永磁同步电机单片控制IC。它采用纯硬件电路来执行永磁同步电机的转子磁场定向控制算法,因而具有良好的动态性能,同时也具有高度灵活的可配置性能