System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种数据处理方法、装置、片上系统和电子设备制造方法及图纸_技高网

一种数据处理方法、装置、片上系统和电子设备制造方法及图纸

技术编号:40541387 阅读:6 留言:0更新日期:2024-03-05 18:57
本申请涉及一种数据处理方法、装置、片上系统和电子设备,涉及电子技术领域。该方法由片上系统执行,片上系统包括处理器、外部设备和存储器,存储器中存储有待处理的数据,该方法包括:处理器根据数据在处理器中的第一虚拟地址查询数据在存储器中的物理地址。处理器向外部设备发送映射建立请求,映射建立请求包括:指示物理地址的标识。外部设备根据映射建立请求,建立物理地址与外部设备中的第二虚拟地址之间的关系,并根据第二虚拟地址访问存储器中的数据。如此,在处理器与外部设备之间进行数据传输时,不需要进行数据拷贝,可以减少处理器开销。

【技术实现步骤摘要】

本申请涉及电子,尤其涉及一种数据处理方法、装置、片上系统和电子设备


技术介绍

1、电子设备的片上系统包括中央处理单元(central processing unit,cpu)和其他外部设备,如图形处理单元(graphics processing unit,gpu)和神经网络处理单元(neural-network processing unit,npu)等处理器。在现有技术方案中,cpu向外部设备传输数据时,需要将存储在cpu所申请的内存空间中的数据,复制到外部设备申请的内存空间中。大量数据拷贝会导致cpu性能开销较大。


技术实现思路

1、本申请提供一种数据处理方法、装置、片上系统和电子设备,解决了现有技术中大量数据拷贝会导致cpu性能开销较大的问题。

2、为达到上述目的,本申请采用如下技术方案:

3、第一方面,提供一种数据处理方法,该方法由片上系统执行,片上系统包括处理器、外部设备和存储器,存储器中存储有待处理的数据,该方法包括:

4、处理器根据数据在处理器中的第一虚拟地址查询数据在存储器中的物理地址;

5、处理器向外部设备发送映射建立请求,映射建立请求包括:指示物理地址的标识;

6、外部设备根据映射建立请求,建立物理地址与外部设备中的第二虚拟地址之间的关系,并根据第二虚拟地址访问存储器中的数据。

7、上述技术方案中,在处理器已在存储器中申请存储空间存储待处理的数据后,处理器根据第一虚拟地址反查物理地址并发送给外部设备,以使外部设备建立物理地址和第二虚拟地址的关系,从而外部设备可以根据第二虚拟地址访问处理器在存储器申请的存储空间中的数据。一方面,在处理器与外部设备之间进行数据传输时,不需要将共享内存中的数据拷贝到外部设备申请的内存空间中,消除了数据拷贝过程,降低处理器利用率、减少处理器开销,在图形处理等领域提升图形帧率。另一方面,第三方应用可以使用原来的接口(如可移植操作系统接口)申请存储空间,无需第三方应用修改内部程序。再一方面,处理器在存储器中申请的存储空间可以先作为处理器运行的多个进程之间的共享内存,不对外部设备进行共享,在处理器需要外部设备协助处理数据时,才对外部设备进程共享,可以提升存储器中的存储空间的利用率。

8、在第一方面的一种可能的实现方式中,标识为对物理地址进行编码得到的值。上述可能的实现方式中,由于编码后的值的数据量小于物理地址本身的数据量,有利于减少映射建立请求所携带的数据量及通信时延,从而提高处理器和外部设备之间的通信效率。

9、在第一方面的一种可能的实现方式中,该方法还包括:处理器向外部设备发送数据的处理请求。外部设备响应处理请求,对读取到的数据执行数据处理操作,得到数据处理结果。上述可能的实现方式中,在外部设备访问存储器中的数据后,处理器可以请求外部设备对读取到的数据执行数据处理操作。由于外部设备获取数据无需拷贝,整个数据处理过程的时间更短。

10、在第一方面的一种可能的实现方式中,在外部设备得到数据处理结果之后,该方法还包括:外部设备向处理器发送数据处理结果。上述可能的实现方式中,外部设备在得到数据处理结果之后,向处理器返回数据处理结果。由于外部设备获取数据无需拷贝,整个数据处理过程的时间更短。

11、在第一方面的一种可能的实现方式中,在外部设备得到数据处理结果之后,该方法还包括:外部设备向处理器发送处理响应,处理响应指示外部设备已消费数据。上述可能的实现方式中,外部设备在得到数据处理结果之后,向处理器返回处理响应。由于外部设备获取数据无需拷贝,整个数据处理过程的时间更短。

12、在第一方面的一种可能的实现方式中,外部设备中设置有内存管理单元,内存管理单元用于建立物理地址与外部设备中的第二虚拟地址之间的关系。上述可能的实现方式中,外部设备通过其中的内存管理单元建立物理地址和和第二虚拟地址之间的第二映射关系。外部设备可以使用单独的内存管理单元,而不需要与处理器共用内存管理单元,本方案不需要改变片上系统中的硬件结构,实现方式简单、成本低。

13、在第一方面的一种可能的实现方式中,数据在存储器中的物理地址包括:多个连续的物理地址,或者,多个不连续的物理地址。上述可能的实现方式中,待处理的数据在存储器中的物理地址包括多个连续的物理地址,在申请存储空间时可以提高申请效率。待处理的数据在存储器中的物理地址包括多个不连续的物理地址,可以提高存储器的空间利用率。

14、在第一方面的一种可能的实现方式中,处理器为中央处理单元(centralprocessing unit,cpu),外部设备为图形处理单元(graphics processing unit,gpu),存储器为双倍数据率同步动态随机存取存储器(doubledata rate synchronous dynamicrandom access memory,ddr)存储空间。上述可能的实现方式中,可以实现cpu与gpu共同访问ddr存储空间,且无需进行数据拷贝,在图形处理时所需时间更短,可以降低cpu开销,提升图形帧率。

15、第二方面,提供了一种数据处理装置,该装置应用于片上系统,片上系统包括处理器、外部设备和存储器,存储器中存储有待处理的数据,该装置包括运行在处理器上的第一处理单元和运行在外部设备上的第二处理单元。第一处理单元,用于根据数据在处理器中的第一虚拟地址查询数据在存储器中的物理地址。第一处理单元,还用于向第二处理单元发送映射建立请求,映射建立请求包括:指示物理地址的标识;第二处理单元,用于根据映射建立请求,建立物理地址与外部设备中的第二虚拟地址之间的关系,并根据第二虚拟地址访问存储器中的数据。

16、在第二方面的一种可能的实现方式中,标识为对物理地址进行编码得到的值。

17、在第二方面的一种可能的实现方式中,第一处理单元,还用于向第二处理单元发送数据的处理请求。第二处理单元,还用于响应处理请求,对读取到的数据执行数据处理操作,得到数据处理结果。

18、在第二方面的一种可能的实现方式中,在外部设备得到数据处理结果之后,第二处理单元,还用于向第一处理单元发送数据处理结果。

19、在第二方面的一种可能的实现方式中,,在外部设备得到数据处理结果之后,第二处理单元,还用于向第一处理单元发送处理响应,处理响应指示第二处理单元已消费数据。

20、在第二方面的一种可能的实现方式中,第二处理单元包括内存管理单元。内存管理单元,用于建立物理地址与外部设备中的第二虚拟地址之间的关系。

21、在第二方面的一种可能的实现方式中,数据在存储器中的物理地址包括:多个连续的物理地址,或者,多个不连续的物理地址。

22、在第二方面的一种可能的实现方式中,处理器为cpu,外部设备为gpu,存储器为ddr存储空间。

23、第三方面,提供了一种片上系统,该片上系统包括处理器、外部设备和存储器,存储器中存储本文档来自技高网...

【技术保护点】

1.一种数据处理方法,其特征在于,所述方法由片上系统执行,所述片上系统包括处理器、外部设备和存储器,所述存储器中存储有待处理的数据,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述标识为:对所述物理地址进行编码得到的值。

3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,在所述外部设备得到数据处理结果之后,所述方法还包括:

5.根据权利要求3所述的方法,其特征在于,在所述外部设备得到数据处理结果之后,所述方法还包括:

6.根据权利要求1-5任一项所述的方法,其特征在于,所述外部设备中设置有内存管理单元,所述内存管理单元用于建立所述物理地址与所述外部设备中的第二虚拟地址之间的关系。

7.根据权利要求1-6任一项所述的方法,其特征在于,所述数据在所述存储器中的物理地址包括:多个连续的物理地址,或者,多个不连续的物理地址。

8.根据权利要求1-7任一项所述的方法,其特征在于,所述处理器为CPU,所述外部设备为GPU,所述存储器为DDR存储空间。

9.一种数据处理装置,其特征在于,所述装置应用于片上系统,所述片上系统包括处理器、外部设备和存储器,所述存储器中存储有待处理的数据,所述装置包括运行在所述处理器上的第一处理单元和运行在所述外部设备上的第二处理单元;

10.根据权利要求9所述的装置,其特征在于,所述标识为:对所述物理地址进行编码得到的值。

11.根据权利要求9或10所述的装置,其特征在于,

12.根据权利要求11所述的装置,其特征在于,在所述外部设备得到数据处理结果之后,所述第二处理单元,还用于向所述第一处理单元发送所述数据处理结果。

13.根据权利要求11所述的装置,其特征在于,在所述外部设备得到数据处理结果之后,所述第二处理单元,还用于向所述第一处理单元发送处理响应,所述处理响应指示所述第二处理单元已消费所述数据。

14.根据权利要求9-13任一项所述的装置,其特征在于,所述第二处理单元包括内存管理单元;

15.根据权利要求9-14任一项所述的装置,其特征在于,所述数据在所述存储器中的物理地址包括:多个连续的物理地址,或者,多个不连续的物理地址。

16.根据权利要求9-15任一项所述的装置,其特征在于,所述处理器为CPU,所述外部设备为GPU,所述存储器为DDR存储空间。

17.一种片上系统,其特征在于,所述片上系统包括处理器、外部设备和存储器,所述存储器中存储有待处理的数据,所述处理器和所述外部设备用于执行如权利要求1-8任一项所述的方法。

18.一种电子设备,其特征在于,所述电子设备包括接口电路和如权利要求17所述的片上系统,所述接口电路与所述片上系统耦合。

19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序代码,所述程序代码可被调用执行所述权利要求1-8任一项所述方法。

20.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,所述计算机程序产品用于使所述计算机执行如权利要求1-8任一项所述方法。

...

【技术特征摘要】

1.一种数据处理方法,其特征在于,所述方法由片上系统执行,所述片上系统包括处理器、外部设备和存储器,所述存储器中存储有待处理的数据,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述标识为:对所述物理地址进行编码得到的值。

3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:

4.根据权利要求3所述的方法,其特征在于,在所述外部设备得到数据处理结果之后,所述方法还包括:

5.根据权利要求3所述的方法,其特征在于,在所述外部设备得到数据处理结果之后,所述方法还包括:

6.根据权利要求1-5任一项所述的方法,其特征在于,所述外部设备中设置有内存管理单元,所述内存管理单元用于建立所述物理地址与所述外部设备中的第二虚拟地址之间的关系。

7.根据权利要求1-6任一项所述的方法,其特征在于,所述数据在所述存储器中的物理地址包括:多个连续的物理地址,或者,多个不连续的物理地址。

8.根据权利要求1-7任一项所述的方法,其特征在于,所述处理器为cpu,所述外部设备为gpu,所述存储器为ddr存储空间。

9.一种数据处理装置,其特征在于,所述装置应用于片上系统,所述片上系统包括处理器、外部设备和存储器,所述存储器中存储有待处理的数据,所述装置包括运行在所述处理器上的第一处理单元和运行在所述外部设备上的第二处理单元;

10.根据权利要求9所述的装置,其特征在于,所述标识为:对所述物理地址进行编码得到的值。

11.根据权利要求9或10所述的装置,其特征在于...

【专利技术属性】
技术研发人员:陈佳兴秦绍天陶岚
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1