System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于FT-M6678N的多核处理方法技术_技高网

一种基于FT-M6678N的多核处理方法技术

技术编号:39977266 阅读:9 留言:0更新日期:2024-01-09 01:15
本发明专利技术提供了一种基于FT‑M6678N的多核处理方法。包括初始化多核处理参数,然后通过多核事件表和中断回调函数实现任意核之间任务分配,最后利用消息队列实现核间数据传输。本发明专利技术能够近似实现原进口的C6678核间消息队列通信功能,在任意两个核之间以队列的结构传递信息,并且通过中断及时通知接收核处理信息,架构灵活、使用方便,软件工程师在其架构上可实现各种多核协同处理算法。

【技术实现步骤摘要】

本专利技术属国产芯片应用,具体涉及一种基于ft-m6678n的多核处理方法。


技术介绍

1、国产ft-m6678芯片作为进口tms32c6678的替代芯片,继承了原进口芯片的高实时性和多核处理能力,并且具有丰富的接口,如emif、ddr3、srio等,在雷达信号处理等关键领域起着重要的作用。

2、然而,ft-m6678在一些细节方面,不如c6678完善。例如其核间通信不支持消息队列,影响了多核并发处理功能实现,给软件设计人员带来一定困扰。


技术实现思路

1、为了克服国产ft-m6678核间通信机制的不足,本专利技术提供一种基于ft-m6678n的多核处理方法。包括初始化多核处理参数,然后通过多核事件表和中断回调函数实现任意核之间任务分配,最后利用消息队列实现核间数据传输。本专利技术能够近似实现原进口的c6678核间消息队列通信功能,在任意两个核之间以队列的结构传递信息,并且通过中断及时通知接收核处理信息,架构灵活、使用方便,软件工程师在其架构上可实现各种多核协同处理算法。

2、一种基于ft-m6678n的多核处理方法,其特征在于步骤如下:

3、步骤1,堆栈初始化:在多核共享内存初始化堆栈,根据应用需求设置堆栈大小;

4、步骤2,建立多核事件查找表:建立一个m行n列二维数组作为多核事件查找表event,数组中每个元素代表一个事件,event[m][n]表示核m的第n号事件,如果元素值为0,代表该事件不存在;其中,m=1,2,…,m,m设置范围为0~7,根据应用使用的dsp核总数量设置,n=1,2,…,n,n为事件数目,根据应用需求设置;

5、步骤3,信号量分配:根据多核事件查找表,建立二维数组的信号量表sem,其中的元素和多核事件查找表中的元素一一对应,表示多核事件查找表中元素的信号量;

6、步骤4,队列初始化:接收核查找当前核的事件,每个事件初始化一个用于存放核间传递数据的消息队列queue,每个队列大小l根据应用程序需求设置;

7、步骤5,发送核间中断:发送核向接收核发送核间中断;

8、步骤6,调用回调函数:每个核收到核间中断后调用回调函数,通过判断当前核号进入相关核的处理分支,然后根据中断发送方的核号和事件信息由多核事件查找表event中读取当前中断对应的事件,再由信号量表sem中读取事件的信号量;

9、步骤7,接收核处理:接收核接收事件信号量,读取事件对应的消息队列的数据,反馈给应用程序处理,处理完成后更新消息队列,通过消息队列回告发送核任务完成或者发送消息队列给下一个核执行新的任务。

10、本专利技术的有益效果是:

11、1、在ft-m6678n实现了新的核间通信方法:ft-m6678n支持核间中断,不支持核间消息队列通信,本专利技术在核间中断的基础上,利用消息队列实现了核间数据传输,弥补了现有ft-m6678n核间通信方法的不足;

12、2、多核处理方法灵活且通用:在核间消息队列的基础上,设计了多核并行工作架构,支持任意核之间消息互传,方便软件工程师在应用层实现多核多任务算法;

13、3、架构灵活、使用方便,可广泛用于ft-m6678n多核处理,提升ft-m6678n多核处理能力,具有良好的应用前景和综合效益。

本文档来自技高网...

【技术保护点】

1.一种基于FT-M6678N的多核处理方法,其特征在于步骤如下:

【技术特征摘要】

1.一种基于ft-m6678n的多...

【专利技术属性】
技术研发人员:张陆唯孙磊赵荣琦余承智马艳艳陈彦来张越梁兵李红虎
申请(专利权)人:中国船舶集团有限公司第七二三研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1