数据写入方法、数据读取方法、装置、处理核和处理器制造方法及图纸

技术编号:36943209 阅读:12 留言:0更新日期:2023-03-22 19:04
本发明专利技术提供了一种数据写入方法、数据读取方法、装置、处理核和处理器,属于计算机技术领域,所述数据写入方法,应用于发送端处理核,所述方法包括:确定共享内存中的第一数据地址指针以及所述第一数据地址指针对应的第一消息长度存储区域;所述共享内存为所述发送端处理核和接收端处理核的共享内存;将目标消息数据写入所述第一数据地址指针指示的预设的第一存储区域,并将所述目标消息数据的消息长度写入所述第一消息长度存储区域。本发明专利技术方案,采用由共享内存保存数据地址指针和目标消息数据的消息长度的方式,相较于把目标消息数据直接写入共享内存中,减少多核通信时的数据处理量,提高核间通信的实时性。提高核间通信的实时性。提高核间通信的实时性。

【技术实现步骤摘要】
数据写入方法、数据读取方法、装置、处理核和处理器


[0001]本专利技术涉及计算机
,特别涉及一种数据写入方法、数据读取方法、装置、处理核和处理器。

技术介绍

[0002]车联万物(Vehicle to Everything,V2X)是指车辆到一切的无线通信。V2X系统旨在通过允许车与几乎所有可检测的东西进行通讯来提高车辆的安全性、舒适性和便利性。
[0003]在V2X车载设备中,系统级芯片(System on Chip,SOC)是通信芯片的核心零部件。由于半导体工艺的极限限制,继续制造高性能的单核处理器将成为一道难以跨越的坎。随之带来的功耗和散热问题也难以得到解决。在此情况下,越来越多的半导体厂商倾向于制造功耗更低、性能均衡的多核处理器以提高处理器的综合性能。按照内核架构是否相同,可以分为多核同构与多核异构。多核异构,可以实现芯片物尽其用,在多核异构方式下,一部分处理器用于管理调度,另外一部分处理器用于特定的性能加速,每个处理器的核针对不同的需求而设定,可以提高应用的计算性能和实时性能。
[0004]因此,V2X车载设备中的通信芯片SOC采用了多核处理器来支持V2X所需的算力,以支撑上层所进行的V2X应用实例的开发,其中,应用(Application,APP)和高层介质访问控制(Medium Access Control,MAC)协议处理运行在嵌入式处理器(Advanced RISC Machines,ARM)上,物理层处理运行在数字信号处理器(Digital Signal Processing,DSP)上。
[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]申请新的第一存储区域;
[0045]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据写入方法,其特征在于,应用于发送端处理核,所述方法包括:确定共享内存中的第一数据地址指针以及所述第一数据地址指针对应的第一消息长度存储区域;所述共享内存为所述发送端处理核和接收端处理核的共享内存;将目标消息数据写入所述第一数据地址指针指示的预设的第一存储区域,并将所述目标消息数据的消息长度写入所述第一消息长度存储区域。2.根据权利要求1所述的数据写入方法,其特征在于,所述共享内存包括共享内存帧头和消息数据存储区域;所述共享内存帧头包括最大消息数存储区域、互斥锁、读索引和写索引;所述消息数据存储区域包括目标个数的数据帧;每个所述数据帧包括一个数据地址指针和与所述数据地址指针对应的消息长度存储区域;所述目标个数为所述最大消息存储区域中存储的最大消息数;所述第一数据地址指针和所述第一消息长度存储区域为所述数据帧中的一个数据帧中的数据地址指针和与所述数据地址指针对应的消息长度存储区域。3.根据权利要求2所述的数据写入方法,其特征在于,所述确定共享内存中的第一数据地址指针以及所述第一数据地址指针对应的第一消息长度存储区域,包括:获取所述读索引和所述写索引;根据所述读索引的索引值和所述写索引的索引值,确定所述消息数据存储区域是否已满;在所述消息数据存储区域未满的情况下,根据所述写索引的索引值,确定所述写索引值对应的第一数据地址指针以及所述第一数据地址指针对应的第一消息长度存储区域。4.根据权利要求3所述的数据写入方法,其特征在于,所述方法还包括:在所述消息数据存储区域已满的情况下,生成告警信息。5.根据权利要求3所述的数据写入方法,其特征在于,所述将目标消息数据写入所述第一数据地址指针指示的预设的第一存储区域,并将所述目标消息数据的消息长度写入所述第一消息长度存储区域之后,所述方法还包括:根据所述最大消息数存储区域中存储的最大消息数,修改所述写索引的索引值。6.根据权利要求5所述的数据写入方法,其特征在于,所述确定共享内存中的第一数据地址指针以及所述第一数据地址指针对应的第一消息长度存储区域之前,所述方法还包括:获取所述互斥锁;所述根据所述最大消息数存储区域中存储的最大消息数,修改所述写索引的索引值之后,所述方法还包括:释放所述互斥锁。7.一种数据读取方法,其特征在于,应用于接收端处理核,所述方法包括:读取共享内存中的第一数据地址指针,以及所述第一数据地址指针对应的第一消息长度存储区域中写入的目标消息数据的消息长度;将所述第一数据地址指针和所述目标消息数据的消息长度发送给所述接收端处理核的上层用户;所述第一数据地址指针和所述目标消息数据的消息长度用于指示所述上层用户在预设的第一存储区域中获取所述目标消息数据。
8.根据权利要求7所述的数据读取方法,其特征在于,所述共享内存包括共享内存帧头和消息数据存储区域;所述共享内存帧头包括最大消息数存储区域、互斥锁、读索引和写索引;所述消息数据存储区域包括目标个数的数据帧;每个所述数据帧包括一个数据地址指针和与所述数据地址指针对应的消息长度存储区域;所述目标个数为所述最大消息存储区域中存储的最大消息数;所述读取共享内存中的第一数据地址指针,以及所述第一数据地址指针对应的第一消息长度存储区域中写入的目标消息数据的消息长度之前,所述方法还包括:对所述共享内存帧头进行初始化...

【专利技术属性】
技术研发人员:赵彩云王海坤
申请(专利权)人:中信科智联科技有限公司
类型:发明
国别省市:

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

1