数据处理方法、系统、电子设备和存储介质技术方案

技术编号:35156460 阅读:26 留言:0更新日期:2022-10-05 10:39
本公开涉及一种数据处理方法、系统、电子设备和存储介质,该方法包括:在存储单元中分配存储空间,包括离线数据缓存区域、输入队列和输出队列;将每次从数据处理模块相关联的输入队列和输出队列分别获取的预处理信息和结果存储地址信息封装为数据包,并通过数据处理模块的接口将数据包发送给数据处理模块;通过数据处理模块的接口,接收来自数据处理模块的数据处理完成状态报告,根据数据处理完成状态报告,从离线数据缓存区域中获取结果数据。本公开实现了多个数据处理模块对存储单元中的流水线数据的离线数据存取标准的统一,有利于芯片软件驱动编写,有利于减少或消除潜在的数据处理过程中的bug,提升了片上系统运行的稳定性。定性。定性。

【技术实现步骤摘要】
数据处理方法、系统、电子设备和存储介质


[0001]本公开涉及数据处理领域,特别涉及一种数据处理方法、系统、电子设备和存储介质。

技术介绍

[0002]片上系统(SoC,System

on

a

chip)是在单个芯片上集成一套完整的系统,对所有或部分必要的电子电路进行包分组的技术,其中,包分组是指传送的任一数据单位,一个数据单位的容量可大可小。片上系统内部包括多个电路模块,为了设计开发效率的提高,事先已经完成设计的具有特定功能的电路模块会被封装成IP核,并在片上系统的开发中直接使用这些已设计完成的IP核(Intellectual Property core,知识产权核),从而节省了大量相同电路模块的设计工作,缩短了设计时间。其中,IP核是指知识产权核或知识产权模块,用于ASIC(Application Specific Integrated Circuit,专用集成电路)或FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)中的预先设计好的电路功能模块,IP核把一些在数字电路中常用,但比较复杂的功能块,如FIR(Finite Impulse Response,有限脉冲响应)滤波器、SDRAM(Synchronous Dynamic Random Access Memory,同步动态随机存取内存)控制器等设计成可修改参数的模块。
[0003]数据传输的离线模式是片上系统中的各个功能模块之间进行数据传输的一种方式,离线模式是先将前级模块的输出数据缓存至独立的存储单元,后级模块再将存储单元中的前级模块的输出数据作为输入数据进行读取并处理。片上系统中的各个功能模块往往采用IP核的形式,各种IP核的开发都是由不同的开发主体执行,因此,片上系统中的各个功能模块之间的输入、输出模式存在差异,造成片上系统集成复杂、软件驱动编写复杂,以及潜在的bug难以及时发现造成片上系统运行稳定性差的问题。

技术实现思路

[0004]有鉴于此,本公开提供一种数据处理方法、系统、电子设备和存储介质,实现存储单元中针对多个数据处理模块的数据的存取的标准的统一,提升片上系统运行的稳定性。
[0005]本公开的技术方案是这样实现的:一种数据处理方法,包括:在存储单元中分配存储空间,所述存储空间中包括离线数据缓存区域、至少两个输入队列和至少两个输出队列,其中,每个所述输入队列分别与至少两个数据处理模块中的每个数据处理模块相关联,每个输出队列分别与所述至少两个数据处理模块中的每个数据处理模块相关联,所述至少两个数据处理模块的接口标准相同,所述输入队列被配置为以队列形式保存至少一条预处理信息,每条所述预处理信息均包括参数信息和预处理存储地址信息,所述输出队列被配置为以队列形式保存至少一条结果存储地址信息,所述离线数据缓存区域被配置为存储预处理数据和结果数据,所述预处理存储地址信息用于指示所述预处理数据在所述离线数据缓存区域中的存储地址,所述结果存储地址信息用于指示所
述结果数据在所述离线数据缓存区域中的存储地址;将每次从与所述至少两个数据处理模块中的任意一个数据处理模块相关联的所述输入队列和所述输出队列分别获取的所述预处理信息和所述结果存储地址信息封装为数据包,并通过所述任意一个数据处理模块的接口将所述数据包发送给所述任意一个数据处理模块;通过所述任意一个数据处理模块的接口,接收来自所述任意一个数据处理模块的数据处理完成状态报告,根据所述数据处理完成状态报告,从所述离线数据缓存区域中获取所述结果数据。
[0006]在一种可能的实施方式中,所述数据处理方法进一步包括:根据所述数据处理完成状态报告,将与所述数据处理完成状态报告相关联的预处理信息从与所述任意一个数据处理模块相关联的所述输入队列删除,并释放所删除的预处理信息中的预处理存储地址信息指示的存储地址的存储空间。
[0007]在一种可能的实施方式中,所述接收来自所述任意一个数据处理模块的数据处理完成状态报告,包括:响应于来自所述任意一个数据处理模块的中断信号,进入中断处理服务进程;通过所述中断处理服务进程,获取所述任意一个数据处理模块发送的所述数据处理完成状态报告。
[0008]在一种可能的实施方式中,所述任意一个数据处理模块被配置为:根据接收的所述预处理存储地址信息,从所述离线数据缓存区域获取所述预处理数据;根据接收的所述参数信息,对所获取所述预处理数据进行数据处理以得到所述结果数据;根据接收的所述结果存储地址信息,将所述结果数据输出至所述离线数据缓存区域存储,并发出所述数据处理完成状态报告。
[0009]在一种可能的实施方式中,所述任意一个数据处理模块进一步被配置为:利用第一先进先出队列保存所接收的所述预处理信息,利用第二先进先出队列保存所接收的所述结果存储地址信息;从所述第一先进先出队列取出最早保存的预处理信息;根据从所述第一先进先出队列取出的预处理信息中的预处理存储地址信息,从所述离线数据缓存区域获取所述预处理数据;利用从所述第一先进先出队列取出的预处理信息中的参数信息,对所述预处理数据进行数据处理,得到所述结果数据;从所述第二先进先出队列取出最早保存的结果存储地址信息;根据从所述第二先进先出队列取出的结果存储地址信息,将所述结果数据存储于所述离线数据缓存区域。
[0010]在一种可能的实施方式中,所述数据处理方法进一步包括:响应于所述离线数据缓存区域中的存储地址的入列调用,将所述存储地址置于列队等待状态,其中,处于列队等待状态的所述存储地址中存储有所述预处理数据,所述列队等待状态用于指示存储地址中的数据可被所述任意一个数据处理模块获取;
响应于数据包的发送,将所发送的数据包中的所述预处理存储地址信息指示的所述存储地址,由所述列队等待状态置为激活状态,使得所述存储地址存储的所述预处理数据可被所述任意一个数据处理模块获取;响应于处于所述激活状态的所述存储地址中的所述预处理数据被所述任意一个数据处理模块获取完成,将所述存储地址由所述激活状态置于完成状态;响应于第一释放指示,将处于所述完成状态的所述存储地址由所述完成状态置于出列状态,其中,处于所述出列状态的所述存储地址可存储新的预处理数据,处于所述出列状态的所述存储地址的存储空间处于释放状态。
[0011]在一种可能的实施方式中,所述数据处理方法进一步包括:响应于所述离线数据缓存区域中的存储地址的入列调用,将所述存储地址置于列队等待状态,其中,处于列队等待状态的所述存储地址中尚未存储所述结果数据,所述列队等待状态用于指示存储地址可存储所述结果数据;响应于所述任意一个数据处理模块发出的数据输出请求,将置于所述列队等待状态的所述存储地址,由所述列队等待状态置为激活状态,使得所述任意一个数据处理模块输出的所述结果数据可被存储于所述存储地址;响应于处于所述激活状态的所述存储地址的所述结果数据的存储完成,将所述存储地址由所述激活状态置于完成状态;响应于第二释放指示,将处于所述完成状态的所述存储地址由所述完成本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,包括:在存储单元中分配存储空间,所述存储空间中包括离线数据缓存区域、至少两个输入队列和至少两个输出队列,其中,每个所述输入队列分别与至少两个数据处理模块中的每个数据处理模块相关联,每个输出队列分别与所述至少两个数据处理模块中的每个数据处理模块相关联,所述至少两个数据处理模块的接口标准相同,所述输入队列被配置为以队列形式保存至少一条预处理信息,每条所述预处理信息均包括参数信息和预处理存储地址信息,所述输出队列被配置为以队列形式保存至少一条结果存储地址信息,所述离线数据缓存区域被配置为存储预处理数据和结果数据,所述预处理存储地址信息用于指示所述预处理数据在所述离线数据缓存区域中的存储地址,所述结果存储地址信息用于指示所述结果数据在所述离线数据缓存区域中的存储地址;将每次从与所述至少两个数据处理模块中的任意一个数据处理模块相关联的所述输入队列和所述输出队列分别获取的所述预处理信息和所述结果存储地址信息封装为数据包,并通过所述任意一个数据处理模块的接口将所述数据包发送给所述任意一个数据处理模块;通过所述任意一个数据处理模块的接口,接收来自所述数据处理模块的数据处理完成状态报告,根据所述数据处理完成状态报告,从所述离线数据缓存区域中获取所述结果数据。2.根据权利要求1所述的数据处理方法,其特征在于,所述数据处理方法进一步包括:根据所述数据处理完成状态报告,将与所述数据处理完成状态报告相关联的预处理信息从与所述数据处理模块相关联的所述输入队列删除,并释放所删除的预处理信息中的预处理存储地址信息指示的存储地址的存储空间。3.根据权利要求1所述的数据处理方法,其特征在于,所述接收来自所述数据处理模块的数据处理完成状态报告,包括:响应于来自所述任意一个数据处理模块的中断信号,进入中断处理服务进程;通过所述中断处理服务进程,获取所述任意一个数据处理模块发送的所述数据处理完成状态报告。4.根据权利要求1所述的数据处理方法,其特征在于,所述任意一个数据处理模块被配置为:根据接收的所述预处理存储地址信息,从所述离线数据缓存区域获取所述预处理数据;根据接收的所述参数信息,对所获取所述预处理数据进行数据处理以得到所述结果数据;根据接收的所述结果存储地址信息,将所述结果数据输出至所述离线数据缓存区域存储,并发出所述数据处理完成状态报告。5.根据权利要求4所述的数据处理方法,其特征在于,所述任意一个数据处理模块进一步被配置为:利用第一先进先出队列保存所接收的所述预处理信息,利用第二先进先出队列保存所接收的所述结果存储地址信息;从所述第一先进先出队列取出最早保存的预处理信息;
根据从所述第一先进先出队列取出的预处理信息中的预处理存储地址信息,从所述离线数据缓存区域获取所述预处理数据;利用从所述第一先进先出队列取出的预处理信息中的参数信息,对所述预处理数据进行数据处理,得到所述结果数据;从所述第二先进先出队列取出最早保存的结果存储地址信息;根据从所述第二先进先出队列取出的结果存储地址信息,将所述结果数据存储于所述离线数据缓存区域。6.根据权利要求1所述的数据处理方法,其特征在于,所述数据处理方法进一步包括:响应于所述离线数据缓存区域中的存储地址的入列调用,将所述存储地址置于列队等待状态,其中,处于列队等待状态的所述存储地址中存储有所述预处理数据,所述列队等待状态用于指示存储地址中的数据可被所述任意一个数据处理模块获取;响应于数据包的发送,将所发送的数据包中的所述预处理存储地址信息指示的所述存储地址,由所述列队等待状态置为激活状态,使得所述存储地址存储的所述预处理数据可被所述任意一个数据处理模块获取;响应于处于所述激活状态的所述存储地址中的所述预处理数据被所述任意一个数据处理模块获取完成,将所述存储地址由所述激活状态置于完成状态;响应于第一释放指示,将处于所述完成状态的所述存储地址由所述完成状态置于出列状态,其中,处于所述出列状态的所述存储地址可存储新的预处理数据,处于所述出列状态的所述存储地址的存储空间处于释放状态。7.根据权利要求1所述的数据处理方法,其特征在于,所述数据处理方法进一步包括:响应于所述离线数据缓存区域中的存储地址的入列调用,将所述存储地址置于列队等待状态,其中,处于列队等待状态的所述存储地址中尚未存储所述结果数据,所述列队等待状态用于指示存储地址可存储所述结果数据;响应于所述任意一个数据处理模...

【专利技术属性】
技术研发人员:王忠平万红星吕永志杨作兴
申请(专利权)人:深圳比特微电子科技有限公司
类型:发明
国别省市:

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

1