System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及一种多处理器核间通信的系统及方法,具体为一种基于可编程逻辑门电路实现多处理器核间通信的系统及方法,属于数字信号处理。
技术介绍
1、随着信息技术的高速发展,人们对数字信号处理能力的需求也随之增加。当前越来越多的产品应用方案,倾向于通过多核多处理器组成大规模数字信号处理平台来提高产品性能,因此,如何提高核间通信效率和稳定性成为研究的重点。
2、现有技术中,处理器片内核间通信是基于操作系统实现的共享内存。具体而言,处理器片内核间通信基于网络交换,进而基于软件操作系统实现共享内存。这种实现共享内存的方式无法有效保证核间通信的实时性和稳定性。
技术实现思路
1、本专利技术的目的就在于为了解决上述至少一个技术问题而提供一种基于可编程逻辑门电路实现多处理器核间通信的系统及方法,通过可编程逻辑门阵列电路技术,减小处理器核间数据通信延时,提高处理器核间数据通信稳定性。
2、本专利技术通过以下技术方案来实现上述目的:一种基于可编程逻辑门电路实现多处理器核间通信的系统,该系统包括dsp处理器、可编程逻辑门电路和ddr颗粒;
3、其中,可编程逻辑门电路包括srio控制器模块、m-s-axi数据桥模块、s-m-axi数据桥模块、axi数据处理控制模块、存储介质控制模块、ram阵列和ddr控制器模块;
4、可编程逻辑门电路通过srio控制器模块与dsp处理器实现数据交互,可编程逻辑门电路通过ddr控制器模块挂载ddr颗粒。
5、作为本
6、其中,n个dsp处理器总共包含n个核,依次编号为核1、核2直至最后一个核n。
7、作为本专利技术更进一步的技术方案:srio控制器模块包括nwrite数据包、nread数据包和doorbell数据包;
8、m-s-axi数据桥模块用以仲裁多个srio控制器模块与axi数据处理控制模块之间的nwrite数据包和nread数据包;
9、s-m-axi数据桥模块用以仲裁axi数据处理控制模块与多个srio控制器模块之间的doorbell数据包;
10、axi数据处理控制模块用以处理nwrite数据包和nread数据包的解析、封装以及doorbell数据包的封装;
11、存储介质控制模块用以存储介质的策略选择和访问管理。
12、作为本专利技术更进一步的技术方案:可编程逻辑门电路的存储介质类型包括ddr颗粒和ram阵列,且可编程逻辑门电路的存储介质地址空间被划分为数据缓存区和状态缓存区;
13、其中,ddr颗粒用以存放dsp处理器核间通信低频大段数据,每个数据存储块空间大小划分为64kbyte,每个状态存储块空间大小划分为8byte;
14、ram阵列用以存放dsp处理器核间通信高频小段数据,每个数据存储块空间大小划分为128byte,每个状态存储块空间大小划分为4byte。
15、作为本专利技术更进一步的技术方案:数据缓存区包括n个数据存储块队列,依次编号为数据存储块队列1、数据存储块队列2直至最后一个数据存储块队列n;
16、其中,数据存储块队列1包含n个数据存储块,依次编号为数据存储块11、数据存储块12直至最后一个数据存储块1n;
17、数据存储块队列2包含n个数据存储块,依次编号为数据存储块21、数据存储块22直至最后一个数据存储块2n;
18、以此类推,数据存储块队列n包含n个数据存储块,依次编号为数据存储块n1、数据存储块n2直至最后一个数据存储块nn。
19、作为本专利技术更进一步的技术方案:状态缓存区包括n个状态存储块队列,依次编号为状态存储块队列1、状态存储块队列2直至最后一个状态存储块队列n;
20、其中,状态存储块队列1包含n个状态存储块,依次编号为状态存储块11、状态存储块12直至最后一个状态存储块1n;
21、状态存储块队列2包含n个状态存储块,依次编号为状态存储块21、状态存储块22直至最后一个状态存储块2n;
22、以此类推,状态存储块队列n包含n个状态存储块,依次编号为状态存储块n1、状态存储块n2直至最后一个状态存储块nn。
23、作为本专利技术更进一步的技术方案:数据存储块11用于缓存核1发给核1的数据,状态存储块11用于缓存核1发给核1的数据在存储介质中的地址和长度信息;
24、数据存储块12用于缓存核2发给核1的数据,状态存储块12用于缓存核2发给核1的数据在存储介质中的地址和长度信息;
25、以此类推,数据存储块1n用于缓存核n发给核1的数据,所述状态存储块1n用于缓存核n发给核1的数据在存储介质中的地址和长度信息。
26、作为本专利技术更进一步的技术方案:数据存储块21用于缓存核1发给核2的数据,状态存储块21用于缓存核1发给核2的数据在存储介质中的地址和长度信息;
27、数据存储块22用于缓存核2发给核2的数据,状态存储块22用于缓存核2发给核2的数据在存储介质中的地址和长度信息;
28、以此类推,数据存储块2n用于缓存核n发给核2的数据,状态存储块2n用于缓存核n发给核2的数据在存储介质中的地址和长度信息。
29、作为本专利技术更进一步的技术方案:数据存储块n1用于缓存核1发给核n的数据,状态存储块n1用于缓存核1发给核n的数据在存储介质中的地址和长度信息;
30、数据存储块n2用于缓存核2发给核n的数据,状态存储块n2用于缓存核2发给核n的数据在存储介质中的地址和长度信息;
31、以此类推,数据存储块nn用于缓存核n发给核n的数据,状态存储块nn用于缓存核n发给核n的数据在存储介质中的地址和长度信息。
32、一种基于可编程逻辑门电路实现多处理器核间通信的方法,该方法包括以下步骤:
33、步骤一、所述可编程逻辑门电路上电后对存储介质进行初始化,初始化后所有地址映射空间值为全1;
34、步骤二、核间通信源核查询可编程逻辑门电路中对应状态存储块的值,如果对应状态存储块的值为全1,则表示对应数据存储块能够写入数据,反之则不能,具体操作为:核间通信源核向可编程逻辑门电路发送nread数据包,可编程逻辑门电路解析命令后返回对应数值;
35、步骤三、核间通信源核向可编程逻辑门电路中对应数据存储块写入通信数据,具体操作为:核间通信源核向可编程逻辑门电路发送nwrite数据包,可编程逻辑门电路解析命令后将数据写到对应数据存储块,并将地址和长度信息更新到对应状态存储块,同时通过doorbell数据包告知核间通信目的核;
36、步骤四、核间通信目的核查询可编程逻辑门电路中对应状态存储块的值,获取通信数据地址和长度信息,具体操作为:核间通信目的核向可编程逻辑门电路发本文档来自技高网...
【技术保护点】
1.一种基于可编程逻辑门电路实现多处理器核间通信的系统,其特征在于:所述系统包括DSP处理器、可编程逻辑门电路和DDR颗粒;
2.根据权利要求1所述的系统,其特征在于:所述系统包括N个DSP处理器,依次编号为DSP处理器1、DSP处理器2直至最后一个DSP处理器n;
3.根据权利要求1所述的系统,其特征在于:所述SRIO控制器模块包括NWRITE数据包、NREAD数据包和doorbell数据包;
4.根据权利要求1所述的系统,其特征在于:所述可编程逻辑门电路的存储介质类型包括DDR颗粒和RAM阵列,且所述可编程逻辑门电路的存储介质地址空间被划分为数据缓存区和状态缓存区;
5.根据权利要求4所述的系统,其特征在于:所述数据缓存区包括N个数据存储块队列,依次编号为数据存储块队列1、数据存储块队列2直至最后一个数据存储块队列n;
6.根据权利要求5所述的系统,其特征在于:所述状态缓存区包括N个状态存储块队列,依次编号为状态存储块队列1、状态存储块队列2直至最后一个状态存储块队列n;
7.根据权利要求5所述的系统,其
8.根据权利要求7所述的系统,其特征在于:所述数据存储块21用于缓存核1发给核2的数据,所述状态存储块21用于缓存核1发给核2的数据在存储介质中的地址和长度信息;
9.根据权利要求8所述的系统,其特征在于:所述数据存储块n1用于缓存核1发给核n的数据,所述状态存储块n1用于缓存核1发给核n的数据在存储介质中的地址和长度信息;
10.一种基于可编程逻辑门电路实现多处理器核间通信的方法,包括权利要求1至权利要求9任一项所述的系统,其特征在于,所述方法包括以下步骤:
...【技术特征摘要】
1.一种基于可编程逻辑门电路实现多处理器核间通信的系统,其特征在于:所述系统包括dsp处理器、可编程逻辑门电路和ddr颗粒;
2.根据权利要求1所述的系统,其特征在于:所述系统包括n个dsp处理器,依次编号为dsp处理器1、dsp处理器2直至最后一个dsp处理器n;
3.根据权利要求1所述的系统,其特征在于:所述srio控制器模块包括nwrite数据包、nread数据包和doorbell数据包;
4.根据权利要求1所述的系统,其特征在于:所述可编程逻辑门电路的存储介质类型包括ddr颗粒和ram阵列,且所述可编程逻辑门电路的存储介质地址空间被划分为数据缓存区和状态缓存区;
5.根据权利要求4所述的系统,其特征在于:所述数据缓存区包括n个数据存储块队列,依次编号为数据存储块队列1、数据存储块队列2直至最后一个数据存储块队列n;
6.根据权利要求5所...
【专利技术属性】
技术研发人员:朱贤宝,
申请(专利权)人:中船凌久电子武汉有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。