多核微处理器的核间通信方法和多核微处理器技术

技术编号:32855486 阅读:11 留言:0更新日期:2022-03-30 19:25
本申请提供一种多核微处理器的核间通信方法和多核微处理器。该方法包括:当发送核需要发送消息时,该发送核可以向消息块处理核发送消息块获取请求。该消息块处理核可以根据该消息块获取请求中的参数从共享存储空间中选择目标消息块。消息块处理核可以将该目标消息块的地址反馈到发送核。发送核确定目标消息块的地址后,可以通过该地址访问该目标消息块,并将数据内容写入目标消息块中。该发送核可以将该目标消息块写入第一通信消息队列中。接收核从共享存储空间的第一通信消息队列中获取目标消息块。接收核读取并处理目标消息块中的数据内容。本申请的方法,提高了内存空间的利用率,提高了数据处理效率。提高了数据处理效率。提高了数据处理效率。

【技术实现步骤摘要】
多核微处理器的核间通信方法和多核微处理器


[0001]本申请涉及计算机领域,尤其涉及一种多核微处理器的核间通信方法和多核微处理器。

技术介绍

[0002]随着信息技术的发展和汽车生产的现实需求,提高微处理器的功能、算力和可靠性成为研究的重点。目前,单核微处理器已经无法满足汽车等产品中对数据处理的需求。为了满足汽车等产品中的数据处理需求,目前市面上出现了很多多核微处理器。在多核微处理器运转过程中,多核微处理器的多个核之间需要大量的信息交换以实现具体功能。
[0003]目前,多核微处理器的核间通信一般使用共享内存进行数据交换。通常多核微处理器会在共享存储空间中规划出一定的专属空间。在此专属空间内,多核微处理器可以预先设置多个固定大小的消息队列,消息队列中可以包括若干个固定大小的消息块。发送核可以把消息拷贝到接收核对应的消息队列的消息块中。接收核可以将数据从该消息队列的消息块中复制到本地空间,并进行数据处理。
[0004]然而,数据内容的长度通常较为随机,使用固定大小的消息块存容易导致内存空间的浪费,在内存使用效率低的问题。

技术实现思路

[0005]本申请提供一种多核微处理器的核间通信方法和多核微处理器,用以解决现有技术中,多核微处理器的核间通信时内存使用效率低的问题。
[0006]第一方面,本申请提供一种多核微处理器的核间通信方法,多核微处理器中包括至少一个发送核、至少一个接收核、一个消息块处理核和共享存储空间,所述方法应用于所述发送核,所述方法包括:
[0007]所述发送核向所述消息块处理核发送消息块获取请求,以使所述消息块处理核根据所述消息块获取请求从所述共享存储空间的空闲消息队列中获取目标消息块;
[0008]所述发送核根据所述消息块处理核反馈的所述目标消息块的地址,将数据内容写入所述目标消息块中;
[0009]所述发送核将所述目标消息块插入所述共享存储空间中所述接收核对应的第一通信消息队列中,以使所述接收核通过所述第一通信消息队列读取所述数据内容。
[0010]可选地,所述共享存储空间中包括消息块申请表,所述消息块申请表中的一行用于指示一个通信消息队列消息块的申请参数,每一通信消息队列唯一对应于一个发送核的标识和一个接收核的标识;
[0011]所述向所述消息块处理核发送消息块获取请求,包括:
[0012]所述发送核根据所述接收核的标识,确定所述第一通信消息队列;
[0013]所述发送核将所述消息块申请表中所述第一通信消息队列对应的申请参数修改为提交申请;
[0014]所述发送核将所述消息块申请表中所述第一通信消息队列对应的地址参数修改为空地址,所述空地址不指向任一消息块。
[0015]可选地,所述方法,还包括:
[0016]所述发送核根据所述数据内容的数据长度和预设长度阈值,确定目标消息块的消息类型,并将所述消息块申请表中所述第一通信消息队列对应的类型参数修改为所述目标消息块的消息类型。
[0017]可选地,所述根据所述数据内容的数据长度和预设长度阈值,确定目标消息块的消息类型,包括:
[0018]当所述数据内容的数据长度小于等于第一长度阈值时,所述发送核确定所述目标消息块的消息类型为数据型;
[0019]当所述数据内容的数据长度大于第一长度阈值,且小于等于所述第二长度阈值时,所述发送核确定所述目标消息块的消息类型为共享地址型;
[0020]当所述数据内容的数据长度大于第二长度阈值时,所述发送核确定所述目标消息块的消息类型为自定义地址型。
[0021]可选地,当目标消息块的消息类型为数据型时,所述将数据内容写入所述目标消息块中,包括:
[0022]所述发送核将所述数据内容写入所述目标消息块的内存空间中。
[0023]可选地,当目标消息块的消息类型为共享地址型时,所述将数据内容写入所述目标消息块中,包括:
[0024]所述发送核根据所述目标消息块的内存空间中地址,确定目标数据块;
[0025]所述发送核将所述数据内容写入所述目标数据块;
[0026]可选地,当目标消息块的消息类型为自定义地址型时,所述将数据内容写入所述目标消息块中,包括:
[0027]所述发送核将存储有所述数据内容的内存地址写入所述目标消息块对应的内存空间中,所述内存地址指向所述共享存储空间中所述发送核的专属存储空间中的内存。
[0028]可选地,所述方法,还包括:
[0029]当所述发送核从所述共享存储空间中所述发送核对应的第二通信消息队列中读取到所述目标消息块时,释放所述内存地址指向的内存空间;
[0030]所述发送核生成并发送消息块释放请求,以使所述消息块处理核将所述目标消息块重新插入所述共享存储空间的空闲消息队列中,以及以使所述发送核得以继续利用所述内存地址指向的所述内存空间。
[0031]可选地,所述共享存储空间中包括消息块释放表,所述消息块释放表中每一行的用于指示一个通信消息队列消息块的释放参数;
[0032]所述生成并发送消息块释放请求,包括:
[0033]所述发送核将所述消息块释放表中所述第一通信消息队列对应的释放参数修改为提交释放申请;
[0034]所述发送核将所述消息块释放表中所述第一通信消息队列对应的地址参数修改为所述目标消息块对应的地址。
[0035]第二方面,本申请提供一种多核微处理器的核间通信方法,多核微处理器中包括
至少一个发送核、至少一个接收核、一个消息块处理核和共享存储空间,所述方法应用于消息块处理核,所述方法包括:
[0036]所述消息块处理核接收所述发送核发送的消息块获取请求;
[0037]所述消息块处理核根据所述消息块获取请求,从所述共享存储空间的空闲消息队列中获取目标消息块;
[0038]所述消息块处理核将所述目标消息块的地址反馈到发送核,所述目标消息块的地址用于使发送核将数据内容写入所述目标消息块中,并将所述目标消息块插入所述共享存储空间中所述接收核对应的第一通信消息队列中,以使所述接收核通过所述第一通信消息队列读取所述数据内容。
[0039]可选地,所述共享存储空间中包括消息块申请表,所述消息块申请表中每一行用于指示一个通信消息队列消息块申请参数,所述消息块处理核根据所述消息块获取请求,从所述共享存储空间的空闲消息队列中获取目标消息块,包括:
[0040]所述消息块处理核读取所述消息块申请表;
[0041]当所述消息块申请表中存在一通信消息队列的申请参数为提交申请、地址参数为空地址时,所述消息块处理核从所述共享存储空间的空闲消息队列中获取目标消息块;
[0042]所述消息块处理核将所述消息块申请表中第一通信消息队列对应的地址参数修改为目标消息块的地址;
[0043]所述消息块处理核将所述消息块申请表中所述第一通信消息队列对应的申请参数修改为已分配。
[0044]可选地,所述共享存储空间中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种多核微处理器的核间通信方法,其特征在于,多核微处理器中包括至少一个发送核、至少一个接收核、一个消息块处理核和共享存储空间,所述方法应用于所述发送核,所述方法包括:所述发送核向所述消息块处理核发送消息块获取请求,以使所述消息块处理核根据所述消息块获取请求从所述共享存储空间的空闲消息队列中获取目标消息块;所述发送核根据所述消息块处理核反馈的所述目标消息块的地址,将数据内容写入所述目标消息块中;所述发送核将所述目标消息块插入所述共享存储空间中所述接收核对应的第一通信消息队列中,以使所述接收核通过所述第一通信消息队列读取所述数据内容。2.根据权利要求1所述的方法,其特征在于,所述共享存储空间中包括消息块申请表,所述消息块申请表中的一行用于指示一个通信消息队列消息块的申请参数,每一通信消息队列唯一对应于一个发送核的标识和一个接收核的标识;所述向所述消息块处理核发送消息块获取请求,包括:所述发送核根据所述接收核的标识,确定所述第一通信消息队列;所述发送核将所述消息块申请表中所述第一通信消息队列对应的申请参数修改为提交申请;所述发送核将所述消息块申请表中所述第一通信消息队列对应的地址参数修改为空地址,所述空地址不指向任一消息块。3.根据权利要求2所述的方法,其特征在于,所述方法,还包括:所述发送核根据所述数据内容的数据长度和预设长度阈值,确定目标消息块的消息类型,并将所述消息块申请表中所述第一通信消息队列对应的类型参数修改为所述目标消息块的消息类型。4.根据权利要求3所述的方法,其特征在于,所述根据所述数据内容的数据长度和预设长度阈值,确定目标消息块的消息类型,包括:当所述数据内容的数据长度小于等于第一长度阈值时,所述发送核确定所述目标消息块的消息类型为数据型;当所述数据内容的数据长度大于第一长度阈值,且小于等于所述第二长度阈值时,所述发送核确定所述目标消息块的消息类型为共享地址型;当所述数据内容的数据长度大于第二长度阈值时,所述发送核确定所述目标消息块的消息类型为自定义地址型。5.根据权利要求1

4中任一项所述的方法,其特征在于,当目标消息块的消息类型为数据型时,所述将数据内容写入所述目标消息块中,包括:所述发送核将所述数据内容写入所述目标消息块的内存空间中。6.根据权利要求1

4中任一项所述的方法,其特征在于,当目标消息块的消息类型为共享地址型时,所述将数据内容写入所述目标消息块中,包括:所述发送核根据所述目标消息块的内存空间中地址,确定目标数据块;所述发送核将所述数据内容写入所述目标数据块。7.根据权利要求1

4中任一项所述的方法,其特征在于,当目标消息块的消息类型为自定义地址型时,所述将数据内容写入所述目标消息块中,包括:
所述发送核将存储有所述数据内容的内存地址写入所述目标消息块对应的内存空间中,所述内存地址指向所述共享存储空间中所述发送核的专属存储空间中的内存。8.根据权利要求7所述的方法,其特征在于,所述方法,还包括:当所述发送核从所述共享存储空间中所述发送核对应的第二通信消息队列中读取到所述目标消息块时,释放所述内存地址指向的内存空间;所述发送核生成并发送消息块释放请求,以使所述消息块处理核将所述目标消息块重新插入所述共享存储空间的空闲消息队列中,以及以使所述发送核得以继续利用所述内存地址指向的所述内存空间。9.根据权利要求6所述的方法,其特征在于,所述共享存储空间中包括消息块释放表,所述消息块释放表中每一行的用于指示一个通信消息队列消息块的释放参数;所述生成并发送消息块释放请求,包括:所述发送核将所述消息块释放表中所述第一通信消息队列对应的释放参数修改为提交释放申请;所述发送核将所述消息块释放表中所述第一通信消息队列对应的地址参数修改为所述目标消息块对应的地址。10.一种多核微处理器的核间通信方法,其特征在于,多核微处理器中包括至少一个发送核、至少一个接收核、一个消息块处理核和共享存储空间,所述方法应用于消息块处理核,所述方法包括:所述消息块处理核接收所述发送核发送的消息块获取请求;所述消息块处理核根据所述消息块获取请求,从所述共享存储空间的空闲消息队列中获取目标消息块;所述消息块处理核将所述目标消息块的地址反馈到发送核,所述目标消息块的地址用于使发送核将数据内容写入所述目标消息块中,并将所述目标消息块插入所述共享存储空间中所述接收核对应的第一通信消息队列中,以使所述接收核通过所述第一通信消息队列读取所述数据内容。11.根据权利要求10所述的方法,其特征在于,所述共享存储空间中包括消息块申请表,所述消息块申请表中每一行用于指示一个通信消息队列消息块申请参数,所述消息块处理核根据所述消息块获取请求,从所述共享存储空间的空闲消息队列中获取目标消息块,包括:所述消息块处理核读取所述消息块申请表;当所述消息块申请表中存在一通信消息队列的申请参数为提交申请、地址参数为空地址时,所述消息块处理核从所述共享存储空间的空闲消息队列中获取目标消息块;所述消息块处理核将所述消息块申请表中第一通信消息队列对应的地址参数修改为目标消息块的地址;所述消息块处理核将所述消息块申请...

【专利技术属性】
技术研发人员:车忠勇
申请(专利权)人:国汽智控北京科技有限公司
类型:发明
国别省市:

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

1